;----------------------------------------------------------------------------- ; ; Table: BATAB ; ; Purpose: Driver table of BADRV ; ; Author: Han Lasance, Digital Equipment B.V., Utrecht, Holland ; ; Date: Nov-81 ; ; Language: MACRO-11 ; ; Assembly: MAC @BADRVASM.CMD ; Building: TKB @BADRVBLD.CMD ; ; Description: ; ; Modified By: Name Date Ident. Version ; Jan H. Belgraver 5-Dec-89 JB02 V2.0 ; For CP/RSX V1.0. ; ; Jan H. Belgraver 31-Mar-89 JB01 V1.1 ; This Doc-header. ;----------------------------------------------------------------------------- .TITLE BATAB .MCALL DCBDF$, HWDDF$, UCBDF$ DCBDF$ ; Define DCB offsets HWDDF$ ; Define Hardware registers offsets UCBDF$ ; ; $BADAT:: $BATBL=0 ; Loadable BADRV ; $BADCB:: .WORD 0 ; (D.LNK) Link to next DCB .WORD .BA0 ; (D.UCB) Pointer to first UCB .ASCII /BA/ ; (D.NAM) Device name .BYTE 0,0 ; (D.UNIT) Low, High unit .WORD BAND-BAST ; (D.UCBL) Length of each UCB in bytes .WORD $BATBL ; (D.DSP) Pointer to driver dispatch table .WORD 35 ; (D.MSK) Legal function mask codes: ; KIL, RLB, ATT, DET .WORD 30 ; Control functions (ATT, DET) .WORD 0 ; NOOP functions .WORD 0 ; ACP functions .WORD 14004 ; Legal function mask codes: RVB, CON, DIS .WORD 14000 ; Control (CON, DIS) .WORD 0 ; NOOP .WORD 4 ; ACP (RVB) .WORD 0 ; (D.PCB) Loadable driver PCB address ; ; BAST=. .WORD 0 ; (U.OWN) Owning terminal UCB address .BA0:: .WORD $BADCB ; (U.DCB) Pointer to DCB .WORD .-2 ; (U.RED) Redirect pointer .BYTE 0,0 ; (U.CTL,U.STS) Pass control on ATT/DET (0=NO), ; Unit status .BYTE 0,0 ; (U.UNIT,U.ST2) Physical unit number, ; unit status extension .WORD DV.REC ; (U.CW1) 1st device char. word (REC. or. DEV.) .WORD 0 ; (U.CW2) 2nd Dev Char word .WORD 0 ; (U.CW3) 3rd Dev Char word .WORD 4 ; (U.CW4) 4th Dev Char Word (dfLt buffer size) .WORD $BA0 ; (U.SCB) Pointer to SCB .WORD 0 ; (U.ATT) TCB address of attached task .WORD 0 ; (U.BUF) Reloc.bias of buffer of current I/O .WORD 0 ; (U.BUF+2) Addr. of buffer of current I/O req. .WORD 0 ; (U.CNT) Byte count of current I/O request BAND=. ; ; ;$BASCB:: $BA0:: .WORD 0,.-2 ; (S.LHD) I/O-queue Listhead (first entry) ; (last entry) .WORD 0,0,0,0 ; (S.FRK) FORK block allocation .WORD 0 ; (S.KS5) Driver/fork KISAR5 .WORD 0 ; (S.PKT) Address of current I/O packet .BYTE 0,0 ; (S.CTM,S.ITM) Current, initial timeout counts .BYTE 0,0 ; (S.STS,S.ST3) Controller resp. driver status .WORD 0 ; (S.ST2) Controller status extention .WORD 0 ; (S.KRB) No KRB, since no controller $BAEND:: ; ; .END