.TITLE XQTAB .IDENT /01/ ; THIS FILE CONTAINS THE NECESSARY DATA STRUCTURES FOR THE ; LOADABLE DRIVER FOR DEVICE XQ: ; VERSION 01 ; AUTHOR:PAUL ELKINS ; DATE:9-FEB-84 15:00 ; ; ; LOS ALAMOS NATIONAL LAB. ; PO BOX 1663 MS-J957 ; LOS ALAMOS NM 87545 ; 505 667 3502 ; ;COPYRIGHT, 1984,THE REGENTS OF THE UNIVERSITY OF CALIFORNIA. ;THIS SOFTWARE WAS PRODUCED UNDER A U.S. GOVERNMENT CONTRACT ;(W-7405-ENG-36) BY THE LOS ALAMOS NATIONAL LABORATORY,WHICH ;IS OPERATED BY THE UNIVERSITY OF CALIFORNIA FOR THE U.S. ;DEPARTMENT OF ENERGY. THE U.S. GOVERNMENT IS LICENSED TO USE, ;REPRODUCE, AND DISTRIBUTE THIS SOFTWARE. PERMISSION IS GRANTED ;TO THE PUBLIC TO COPY AND USE THIS SOFTWARE WITHOUT CHARGE, ;PROVIDED THAT THIS NOTICE AND ANY STATEMENT OF AUTHORSHIP ARE ;REPRODUCED ON ALL COPIES. NEITHER THE GOVERNMENT NOR THE ;UNIVERSITY MAKES ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ;ANY LIABILITY OR RESPONSIBILITY FOR THE USE OF THIS SOFTWARE. ; ; $XQDAT:: ;START OF LOADABLE DRIVER ;DATABASE ; DEVICE CONTROL BLOCK XQDCB: .WORD 0 ;D.LNK - POINTER TO NEXT DCB .WORD .XQ0 ;D.UCB - POINTER TO FIRST UCB .ASCII /XQ/ ;D.NAM - DEVICE NAME .BYTE 0,0 ;D.UNIT - LOW UNIT, HIGH UNIT .WORD XQND-XQST ;D.UCBL - LENGTH OF A UCB .WORD $XQTBL ;D.DSP - POINTER TO DRIVER ; DISPATCH TABLE .WORD 7 ;D.MSK - FUNCTION MASK(LO-WORD) .WORD 0 ; -CONTROL FUNCTIONS .WORD 0 ; -NOP FUNCTIONS .WORD 0 ; -ACP FUNCTIONS .WORD 20000 ; -FUNCTION MASK(HI-WORD) .WORD 0 ; -CONTROL FUNCTIONS .WORD 0 ; -NOP FUNCTIONS .WORD 0 ; -ACP FUNCTIONS .WORD 0 ;D.PCB - POINTER TO LOADABLE DRIVER ; PCB ; UNIT CONTROL BLOCKS XQST: .WORD 0 ;LOGIN UIC - MULTIUSER PROTECTION .XQ0:: .WORD XQDCB ;U.DCB - POINTER BACK TO DCB .WORD .-2 ;U.RED - POINTER TO REDIRECT UCB .BYTE UC.ALG!UC.PWF!UC.KIL!1 ;U.CTL - CONTROL FLAG(WORD ALIGN/PWF) .BYTE 0 ;U.STS - UNIT STATUS .BYTE 0 ;U.UNIT - PHYSICAL UNIT NUMBER .BYTE 0 ;U.ST2 - UNIT STATUS EXTENSION .WORD 0 ;U.CW1 - FIRST DEVICE CHAR WORD .WORD 0 ;U.CW2 .WORD 0 ;U.CW3 .WORD 0 ;U.CW4 .WORD $XQ0 ;U.SCB - SCB ADDRESS .WORD 0 ;U.ATT - TCB ADDRESS OF ATTACHED TASK .BLKW 2 ;U.BUF - CURRENT BUFFER ADDR DBLWORD .WORD 0 ;U.CNT - CURRENT REQUEST BYTE COUNT XQND=. ; STATUS CONTROL BLOCKS $XQ0:: .WORD 0 ;S.LHD - I/O QUEUE LISTHEAD .WORD .-2 ;LAST ENTRY IN I/O QUEUE .BYTE PR4 ;S.PRI - DEVICE PRIORITY .BYTE VECTOR/4 ;S.VCT - INTERRUPT VECTOR /4 .BYTE 0 ;S.CTM - CURRENT TIMEOUT COUNT .BYTE 0 ;S.ITM - TIMEOUT COUNT(NO TIMEOUT ALLOWED) .BYTE 0 ;S.CON - CONTROLLER INDEX .BYTE 0 ;S.STS - CONTROLLER STATUS .WORD XQCSR ;S.CSR - CSR ADDRESS .WORD 0 ;S.PKT - ADDRESS OF CURRENT I/O PACKET .BLKW 4 ;S.FRK - FORK BLOCK .WORD 0 ;FORK DRIVER RELOCATION BASE $XQEND:: .END