Specifications
Operating System Routines
IOC$LOADUBAMAP, IOC$LOADUBAMAPA
IOC$LOADUBAMAP, IOC$LOADUBAMAPA
Load a set of UNIBUS map registers or a set of the first 496 Q22–bus map
registers.
Module
LOADMREG
Macro
LOADUBA
Input
Location Contents
R5 Address of UCB
UCB$W_BCNT Number of bytes in transfer
UCB$W_BOFF Byte offset in first page of transfer
UCB$L_SVAPTE System virtual address of PTE for first page of
transfer
UCB$L_CRB Address of CRB
CRB$L_INTD+
VEC$B_NUMREG
Number of map registers allocated
CRB$L_INTD+
VEC$W_MAPREG
Number of first map register allocated
CRB$L_INTD+
VEC$B_DATAPATH
Data path specifier; VEC$V_LWAE set if longword
buffering is used, clear if quadword buffering is
used
CRB$L_INTD+
VEC$L_ADP
Address of ADP
UBA$L_MAP Address of first UNIBUS or Q22–bus map register
UCB$L_SVAPTE System virtual address of PTE for the first page of
the transfer
Output
Location Contents
R0, R1, R2 Destroyed
Synchronization
A driver fork process calls IOC$LOADUBAMAP or IOC$LOADUBAMAPA at
fork IPL, holding the corresponding fork lock in a multiprocessing environment.
Either routine returns control to its caller at the caller’s IPL. The caller retains
any spinlocks it held at the time of the call.
3–101