.NLIST ; ; This file defines the CSD "Special System Information" symbolics ; and data subpacket offsets. Designed to be a prefix file for AVD, ; DVD, ENABLE and DISABL. I did the structure defs the crude way because ; TKB squawked about "load address out of range" with .ASECT hax. ; ; Bob Denny 09-Aug-82 ; Bob Denny 10-Aug-82 Add ACP Service Message ; ; ; Define the "Special Information" Packet Type ; E$CSSI == 9. ; Code for E$HTYC == "Special System Info" ; ; Define the Special System Info Packet subtypes, in offset E$HTYS of ; the header subpacket. ; E$SAVD == 1 ; Assign Virtual Disk E$SDVD == 2 ; Deassign Virtual Disk E$SAC1 == 3 ; ACP Startup E$SAC2 == 4 ; ACP Shutdown E$SAC3 == 5 ; ACP Service Message ; ; Data Subpacket for Assign/Deassign Virtual Disk ; ; ** SUBTYPE = E$SAVD & E$SDVD ** ; ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; VD.VDS | Operation flags (AVD only) | (0) ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; VD.PDV | Physical Device/Unit | (2) ; |- -|- -| ; | (6 bytes ASCII) | ; |- -|- -| ; | | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; VD.PFL | Physical File Spec | (10) ; |- -|- -| ; | (32(10) bytes ASCII) | ; |- -|- -| ; | | ; \ \ ; \ \ ; | | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; VD.CRE | Creation size, blocks | (50) ; |- -| ; | (32-bits, only if VD.CR set) | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; VD.PLC | Placement LBN | (54) ; |- -| ; | (32-bits, only if VD.PL set) | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; ; Length of data subpacket = VD.LEN = 60(8) ; ; ; Define the data subpacket for E$SAVD and E$SDVD ; VD.VDS == 0 ; AVD operation flags (see below) VD.PDV == 2 ; Physical Device/Unit (6 bytes ASCII w/":") VD.PFL == 8. ; Physical File Spec (32 bytes) VD.CRE == 40. ; Creation Size (32 bits) (if VD.CR set) VD.PLC == 44. ; Placement LBN (32 bits) (if VD.PL set) VD.LEN == 48. ; Length of data subpacket ; ; Define bits for VD.VDS ; VD.RO == 000001 ; Assigned Read-Only VD.CR == 000002 ; File created by AVD VD.PL == 000004 ; File created with placement control ; ; Data subpacket for ACP startup and ACP shutdown ; ; ** SUBTYPES E$SAC1 and E$SAC2 ** ; ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; AC.NAM | ACP Name | ; |- -|- -| ; | (6 Char RAD50) | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; AC.MGL | Service Message length, bytes | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; | Service Message text, ASCII | ; AC.MSG |- -|- -| ; | (up to 80 characters) ; |- -|- -| ; | | ; \ \ ; \ \ ; | | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; ; Length of data subpacket = Variable ; ; ; Define the data subpacket for E$SAC1 and E$SAC2 ; AC.NAM == 0 ; ACP name (2 words RAD50) AC.LEN == 4 ; /PRM = "xx" message length, bytes (or 0) AC.MSG == 6 ; /PRM = "xx" message (ASCII) ; ; Data subpacket for ACP Service Message ; ; ** SUBTYPE E$SAC3 ** ; ; ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; AS.MGL | Service Message length, bytes | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; | Service Message text, ASCII | ; AS.MSG |- -|- -| ; | (up to 80 characters) ; |- -|- -| ; | | ; \ \ ; \ \ ; | | ; |-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-| ; ; Length of data subpacket = Variable ; ; ; Define the symbolic offsets crudely ; AS.MGL == 0 ; Message length, bytes AS.MSG == 2 ; Message, up to 80 bytes .LIST