.TITLE ZQTAB ZQ DRIVER DEVICE TABLES .IDENT /2.0/ ; ; DATE OF LAST UPDATE: 11/04/87 ; ; These are the device driver tables for the basiclly do ; nothing driver "ZQ" which provides an interface to ; the QUEACP. ; .MCALL UCBDF$ ; UCB DEFINITIONS .MCALL DCBDF$ ; DCB DEFINITIONS .MCALL SCBDF$ ; SCB DEFINITIONS .MCALL HWDDF$ ; HARDWARE DEFINITIONS .MCALL CTBDF$ ; CONTROLLER TABLE DEFINITIONS .MCALL KRBDF$ ; CONTROLLER REQUEST BLOCK UCBDF$ DCBDF$ SCBDF$ HWDDF$ CTBDF$ KRBDF$ ; ; MACRO FOR GENERATING A LINK TO THE KRB FROM THE CTB ; .MACRO KRBLNK,IKRB .WORD DVKRB'IKRB .ENDM .PAGE .LIST ME $ZQDAT:: ; GLOBAL FOR THE MCR "LOA" COMMAND ; ; ZQ DRIVER DEVICE CONTROL BLOCK - DCB ; $ZQDCB:: .WORD 0 ; LINK TO NEXT USER WRITTEN DRIVER DCB .WORD .ZQ0 ; D.UCB LINK TO UCB .ASCII /ZQ/ ; D.NAM DEVICE MNEMONIC .BYTE 0,0 ; D.UNIT LOWEST AND HIGHEST UNIT NUMBER .WORD ZQUCBL ; D.UCBL LENGTH OF EACH UCB .WORD 0 ; D.DSP DRIVER DISPATCH TABLE ; ; SYMBOLIC FUNCTION DESCRIPTION ; FUNCTION VALUE ; IO.KIL 0 CANCEL I/O ; IO.ATT 3 ATTACH DEVICE ; IO.DET 4 DETACH DEVICE ; IO.RNA 11 BACKUP RNA POINTER ; IO.ACR 13 CONNECT FOR READ FOR A MESSAGE ID ; IO.ACW 14 ACKNOWLEGE LAST READ MESSAGE ; IO.ACE 15 READ THE QUEUE HEADER INFORMATION (SEE QUEDEF) ; 164031= VALID FUNCTION BIT MASK ; ; IO.DAC 16 DISCONNECT (ONLY I/O PACKET THAT IS QUEUED) ; IO.RVB 17 READ MESSAGE ID FROM QUEUE ; IO.WVB 18 WRITE MESSAGE ID TO QUEUE ; IO.DEL 21 DELETE MESSAGES FROM QUEUE WITHOUT ACKNOWLEDGE ; IO.RAT 22 STATUS MESSAGE ID LISTHEAD (SEE MIDDEF) ; IO.APC 24 REQUEST DISMOUNT/MOUNT ; 000547= VALID FUNCTION BIT MASK ; .WORD 164031 ; LEGAL FUNCTION CODE 0-15 .WORD 1 ; CONTROL FUNCTION CODE 0-15 .WORD 30 ; NOOP FUNCTION CODE 0-15 .WORD 0 ; ACP FUNCTION CODE 0-15 .WORD 547;6 ; LEGAL FUNCTION CODE 16-31 .WORD 401;0 ; CONTROL FUNCTION CODE 16-31 .WORD 0 ; NOOP FUNCTION CODE 16-31 .WORD 0 ; ACP FUNCTION CODE 16-31 .WORD 0 ; DRIVER PARTITION CONTROL BLOCK ; ; ZQ DRIVER UNIT CONTROL BLOCK - UCB ; XSIZ: .BLKW 6 .ZQ0:: .WORD $ZQDCB ; U.DCB BACK LINK TO DCB .WORD .-2 ; U.RED REDIRECT POINTER .BYTE ; U.CTL CONTROL FLAGS .BYTE US.MNT!US.FOR ; U.STS NOT MOUNTED, FOREIGN .BYTE 0 ; U.UNIT .BYTE US.RED!US.OFL!US.PUB ; U.ST2 UNIT NUMBER, STATUS .WORD DV.MNT!DV.REC ; U.CW1 MOUNTABLE, RECORD ORIENTED .WORD 0 ; U.CW2 .WORD 0 ; U.CW3 .WORD 12. ; U.CW4 .WORD ZQSCB ; U.SCB LINK TO SCB .WORD 0 ; U.ATT .WORD 0 ; U.BUF .WORD 0 ; U.BUF+2 .WORD 0 ; U.CNT .WORD 0 .WORD 0 .WORD 0 ; U.ACP TCB ADDRESS OF ACP ; ZQUCBL=.-XSIZ ; SIZE OF A UCB ; ; ZQ DRIVER STATUS CONTROL BLOCK - SCB ; ZQSCB:: .WORD 0 ; S.LHD I/O PACKET LISTHEAD .WORD .-2 ; .WORD 0,0,0,0 ; S.FRK FORK BLOCK .WORD 0 ; EXTRA WORD FOR LOADABLE DRIVER .WORD 0 ; S.PKT .BYTE 0,0 ; S.CTM, S.ITM .BYTE 0,0 ; S.STS, S.ST3 .WORD 0 ; S.ST2 .WORD 0 ; S.KRB (NO CONTROLLER) $ZQEND:: .END