! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:56:10 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:56:07 $1$DGA7361:[STARLET.SRC]STARDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $ACCDEF *** literal ACC$K_TERMLEN = 84; ! TERMINATION MESSAGE LENGTH literal ACC$C_TERMLEN = 84; ! TERMINATION MESSAGE LENGTH ! AND ACCOUNTING RECORD FOR NON BATCH JOBS literal ACC$K_JOB_LEN = 108; ! LENGTH OF BATCH JOB ACCOUNTING RECORD literal ACC$C_JOB_LEN = 108; ! LENGTH OF BATCH JOB ACCOUNTING RECORD literal ACC$S_ACCDEF = 108; macro ACC$W_MSGTYP = 0,0,16,0 %; ! MESSAGE TYPE CODE macro ACC$W_MSGSIZ = 2,0,16,0 %; ! LENGTH OF DATA MESSAGE (VALID ONLY IN ACCLOG) macro ACC$L_FINALSTS = 4,0,32,0 %; ! FINAL EXIT STATUS macro ACC$L_PID = 8,0,32,0 %; ! PROCESS ID macro ACC$L_JOBID = 12,0,32,0 %; ! JOB IDENTIFICATION (VALID ONLY IN ACCLOG) macro ACC$Q_TERMTIME = 16,0,0,0 %; literal ACC$S_TERMTIME = 8; ! TERMINATION TIME (100NS UNITS) macro ACC$T_ACCOUNT = 24,0,0,0 %; literal ACC$S_ACCOUNT = 8; ! ACCOUNT NAME STRING (BLANK FILLED) macro ACC$T_USERNAME = 32,0,0,0 %; literal ACC$S_USERNAME = 12; ! USER NAME STRING (BLANK FILLED) macro ACC$L_CPUTIM = 44,0,32,0 %; ! CPUTIM IN 10MS UNITS macro ACC$L_PAGEFLTS = 48,0,32,0 %; ! TOTAL PAGE FAULTS macro ACC$L_PGFLPEAK = 52,0,32,0 %; ! PEAK PAGING FILE USAGE macro ACC$L_WSPEAK = 56,0,32,0 %; ! PEAK WORKING SET SIZE macro ACC$L_BIOCNT = 60,0,32,0 %; ! COUNT OF BUFFERED I/O OPERATIONS macro ACC$L_DIOCNT = 64,0,32,0 %; ! COUNT OF DIRECT I/O OPERATIONS macro ACC$L_VOLUMES = 68,0,32,0 %; ! COUNT OF VOLUMES MOUNTED macro ACC$Q_LOGIN = 72,0,0,0 %; literal ACC$S_LOGIN = 8; ! LOGIN TIME (100NS UNITS) macro ACC$L_OWNER = 80,0,32,0 %; ! PID OF SUBPROCESS OWNER ! END OF TERMINATION MESSAGE macro ACC$T_JOB_NAME = 84,0,0,0 %; literal ACC$S_JOB_NAME = 8; ! JOB NAME (BLANK FILLED) macro ACC$T_JOB_QUE = 92,0,0,0 %; literal ACC$S_JOB_QUE = 16; ! QUEUE NAME (.ASCIC) literal ACC$K_PRT_LEN = 88; ! LENGTH OF PRINT ACCOUNTING RECORD literal ACC$C_PRT_LEN = 88; ! LENGTH OF PRINT ACCOUNTING RECORD ! literal ACC$S_ACCDEF1 = 88; macro ACC$L_PAGCNT = 48,0,32,0 %; ! SYMBIONT PAGE COUNT macro ACC$L_QIOCNT = 52,0,32,0 %; ! SYMBIONT QIO COUNT macro ACC$L_GETCNT = 56,0,32,0 %; ! SYMBIONT GET COUNT macro ACC$Q_QUETIME = 60,0,0,0 %; literal ACC$S_QUETIME = 8; ! TIME JOB WAS QUEUED macro ACC$T_PRT_NAME = 68,0,0,0 %; literal ACC$S_PRT_NAME = 8; ! NAME OF PRINT JOB macro ACC$T_PRT_QUE = 76,0,0,0 %; literal ACC$S_PRT_QUE = 12; ! NAME OF PRINT QUEUE ! DEFINE USER ACCOUNTING MESSAGE DATA AREA ! literal ACC$K_INS_LEN = 176; ! LENGTH OF INSERT MESSAGE literal ACC$C_INS_LEN = 176; ! LENGTH OF INSERT MESSAGE ! literal ACC$K_PRCTRM = 1; ! JOB TERMINATION literal ACC$K_BATTRM = 2; ! BATCH JOB TERMINATION literal ACC$K_INTTRM = 3; ! INTERACTIVE JOB TERMINATION literal ACC$K_LOGTRM = 4; ! LOGIN FAILURE PROCESS TERMINATION literal ACC$K_IMGTRM = 5; ! IMAGE TERMINATION literal ACC$K_SUBTRM = 6; ! SUBPROCESS TERMINATION literal ACC$K_DETTRM = 7; ! DETACHED PROCESS TERMINATION literal ACC$K_NETTRM = 8; ! NETWORK PROCESS TERMINATION ! MISC ACCOUNTING RECORDS literal ACC$K_PRTJOB = 16; ! PRINT JOB ACCOUNTING literal ACC$K_INSMSG = 17; ! INSERTED MESSAGE ! literal ACC$K_INSMESG = 1; ! INSERT MESSAGE INTO ACCOUNTING FILE literal ACC$K_NEWFILE = 2; ! CREATE A NEW ACCOUNT FILE literal ACC$K_ENABACC = 3; ! ENABLE ACCOUNTING literal ACC$K_DISAACC = 4; ! DISABLE ACCOUNTING literal ACC$K_ENABSEL = 5; ! ENABLE SELECTIVE ACCOUNTING literal ACC$K_DISASEL = 6; ! DISABLE SELECTIVE ACCOUNTING literal ACC$S_ACCDEF2 = 176; macro ACC$T_USER_DATA = 44,0,0,0 %; literal ACC$S_USER_DATA = 132; ! ALLOW UP TO 132 BYTES OF USER DATA ! ASSIGN RECORD TYPE CODES FOR RECORDS IN THE ACCOUNT LOG FILE ! ! PROCESS ACCOUNTING RECORDS ! DEFINE ACCOUNTING MANAGER MESSAGE CODES ! ! !*** MODULE $ACCESSDEF *** ! ! Definitions for Acmode arugment to several MMG system services ! literal ACCESS$M_LOCK_IMAGE = %X'40'; literal ACCESS$M_LKWSET_EXACT = %X'80'; literal ACCESS$S_ACCESS = 8; macro ACCESS$R_ACCESS_UNION = 0,0,0,0 %; literal ACCESS$S_ACCESS_UNION = 8; macro ACCESS$Q_QUAD = 0,0,0,0 %; literal ACCESS$S_QUAD = 8; ! Combined acmode/arch/prot argument - full 64-bits macro ACCESS$B_MODE = 0,0,8,0 %; ! Access mode macro ACCESS$B_ARCH = 1,0,8,0 %; ! Architecture 3=IA64 macro ACCESS$W_PROT = 2,0,16,0 %; ! Page protection in architecture format macro ACCESS$L_RESERVED1 = 4,0,32,1 %; ! Reserved macro ACCESS$V_LOCK_IMAGE = 0,6,1,0 %; ! For $LKWSET_64 and $ULWSET_64 only macro ACCESS$V_LKWSET_EXACT = 0,7,1,0 %; ! For $LKWSET[_64] and $ULWSET[_64] IA64 only ! Alpha always performs exact literal ACCESS$C_IA64 = 3; ! IA64 !*** MODULE $ACEDEF *** ! + ! ! Access Control list Entry structure definitions ! ! - literal ACE$C_KEYID = 1; ! Key identifier entry literal ACE$C_RMSJNL_BI = 2; ! RMS BI journal literal ACE$C_RMSJNL_AI = 3; ! RMS AI journal literal ACE$C_RMSJNL_AT = 4; ! RMS AT journal literal ACE$C_AUDIT = 5; ! Security audit journal entry literal ACE$C_ALARM = 6; ! Security alarm entry literal ACE$C_INFO = 7; ! General purpose information literal ACE$C_RMSJNL_RU_DEFAULT = 8; ! RU journal default volume literal ACE$C_DIRDEF = 9; ! Directory default protection literal ACE$C_RMSJNL_RU = 10; ! RU journal (many per file) literal ACE$C_SUBSYSTEM_IDS = 11; ! Protected subsystem ids literal ACE$C_OIL = 12; ! Object Information Label literal ACE$C_NEW_OWNER = 13; ! Protection for owner ACE literal ACE$C_POSIX_OWNER = 14; ! Posix UID/GID (persona) from image literal ACE$C_MAX_CODE = 15; ! Maximum ACE type code plus 1 literal ACE$C_RESERVED = 255; ! Reserved ACE type literal ACE$C_APPLICATION = 7; ! Alternate application ACE code literal ACE$C_CUST = 1; ! Customer defined literal ACE$C_CSS = 2; ! CSS defined literal ACE$C_VMS = 3; ! VMS defined literal ACE$M_SUCCESS = %X'1'; literal ACE$M_FAILURE = %X'2'; literal ACE$M_DEFAULT = %X'100'; literal ACE$M_PROTECTED = %X'200'; literal ACE$M_HIDDEN = %X'400'; literal ACE$M_NOPROPAGATE = %X'800'; literal ACE$M_READ = %X'1'; literal ACE$M_WRITE = %X'2'; literal ACE$M_EXECUTE = %X'4'; literal ACE$M_DELETE = %X'8'; literal ACE$M_CONTROL = %X'10'; literal ACE$K_LENGTH = 8; ! Length of the overhead area literal ACE$C_LENGTH = 8; ! Length of the overhead area literal ACE$C_RMS_ATTRIBUTES = 0; ! variant of ACE for file attributes literal ACE$K_RMS_ATTRIBUTES = 0; ! variant of ACE for file attributes literal ACE$K_RMSATR_MINOR_V50 = 2; ! minor ID for VMS 5.0 literal ACE$K_RMSATR_MINOR_VDW = 2; ! minor ID for DECwindows V1.0 literal ACE$C_RMSATR_MINOR_ID = 2; ! current minor ID (obsolete symbol) literal ACE$K_RMSATR_MINOR_ID = 2; literal ACE$C_RMSATR_MAJOR_ID = 1; ! current major ID literal ACE$K_RMSATR_MAJOR_ID = 1; literal ACE$M_STATISTICS = %X'1'; literal ACE$M_XLATE_DEC = %X'2'; literal ACE$S_RMSATR = 20; ! size of RMS file attributes ACE (fixed fields) literal ACE$S_RMSATR_V50 = 20; ! size of RMS file attributes ACE (fixed fields) literal ACE$S_RMSATR_VDW = 20; ! size of RMS file attributes ACE (fixed fields) ! Beyond the fixed fields, variable length information will by stored literal ACE$_RMSATR_ORGANIZATION = 1; ! organizational extension object ID literal ACE$_RMSATR_SEMANTICS = 2; ! file semantics object ID literal ACE$K_RMSATR_ORG_MAX_LEN = 64; literal ACE$K_RMSATR_SEM_MAX_LEN = 64; literal ACE$S_RMSJNL_RU_DEFAULT = 17; ! length of RMSJNL RU default ACE literal ACE$M_JOURNAL_DISABLED = %X'1'; literal ACE$M_BACKUP_DONE = %X'2'; literal ACE$S_RMSJNL_RU = 38; ! length of RMSJNL RU ACE literal ACE$S_RMSJNL = 50; ! length of RMSJNL AI/BI/AT ACE literal ACE$S_OIL_S64I64 = 32; ! Length of Type 0 OIL ACE literal ACE$S_OIL_S128 = 32; ! Length of Type 1 OIL ACE literal ACE$S_OIL = 32; ! Maximum OIL ACE Size literal ACE$M_USERNAME_VALID = %X'1'; literal ACE$M_UIC_VALID = %X'2'; literal ACE$M_UID_VALID = %X'4'; literal ACE$M_GID_VALID = %X'8'; literal ACE$M_GROUP_MODE_VALID = %X'10'; literal ACE$M_OTHER = %X'7'; literal ACE$M_GROUP = %X'38'; literal ACE$M_USER = %X'1C0'; literal ACE$M_S_IXOTH = %X'1'; literal ACE$M_S_IWOTH = %X'2'; literal ACE$M_S_IROTH = %X'4'; literal ACE$M_S_IXGRP = %X'8'; literal ACE$M_S_IWGRP = %X'10'; literal ACE$M_S_IRGRP = %X'20'; literal ACE$M_S_IXUSR = %X'40'; literal ACE$M_S_IWUSR = %X'80'; literal ACE$M_S_IRUSR = %X'100'; literal ACE$M_S_ISGID = %X'400'; literal ACE$M_S_ISUID = %X'800'; literal ACE$S_POSIX_OWNER_LENGTH = 60; ! Length of POSIX_OWNER ACE literal ACE$S_ACEDEF = 60; macro ACE$B_SIZE = 0,0,8,0 %; ! Size of the entry macro ACE$B_TYPE = 1,0,8,0 %; ! Type of entry macro ACE$W_FLAGS = 2,0,16,0 %; ! Type dependent & independent flags macro ACE$V_INFO_TYPE = 2,0,4,0 %; literal ACE$S_INFO_TYPE = 4; ! INFO ACE subtype macro ACE$V_RESERVED = 2,0,4,0 %; literal ACE$S_RESERVED = 4; ! Count of reserved longwords macro ACE$V_SUCCESS = 2,0,1,0 %; ! Audit or alarm upon success macro ACE$V_FAILURE = 2,1,1,0 %; ! Audit ot alarm upon failure macro ACE$V_DEFAULT = 2,8,1,0 %; ! Directory default entry macro ACE$V_PROTECTED = 2,9,1,0 %; ! Protected ACE macro ACE$V_HIDDEN = 2,10,1,0 %; ! Hidden ACE macro ACE$V_NOPROPAGATE = 2,11,1,0 %; ! No propagation between versions macro ACE$L_ACCESS = 4,0,32,0 %; ! Access rights bitmask macro ACE$V_READ = 4,0,1,0 %; ! Allowed to read macro ACE$V_WRITE = 4,1,1,0 %; ! Allowed to write macro ACE$V_EXECUTE = 4,2,1,0 %; ! Allowed to execute macro ACE$V_DELETE = 4,3,1,0 %; ! Allowed to delete macro ACE$V_CONTROL = 4,4,1,0 %; ! All privileges of the owner macro ACE$L_KEY = 8,0,32,0 %; ! Start of the key fields macro ACE$T_AUDITNAME = 8,0,0,0 %; literal ACE$S_AUDITNAME = 16; ! Start of the security journal name macro ACE$L_INFO_FLAGS = 4,0,32,0 %; ! INFO type application flags macro ACE$W_APPLICATION_FLAGS = 4,0,16,0 %; ! VMS application flags word macro ACE$W_APPLICATION_FACILITY = 6,0,16,0 %; ! VMS application facility code macro ACE$T_INFO_START = 8,0,8,0 %; ! Start of the information macro ACE$W_RMSATR_VARIANT = 8,0,16,0 %; ! Which variant of the RMS attributes ACE macro ACE$B_RMSATR_FIXLEN = 10,0,8,0 %; ! length of fixed format fields ! (introduced at minor ID 3. Older ! ACE's are assumed to be all fixed form) macro ACE$W_RMSATR_MINOR_ID = 12,0,16,0 %; ! RMS file attributes ACE minor ID macro ACE$W_RMSATR_MAJOR_ID = 14,0,16,0 %; ! RMS file attributes ACE major ID macro ACE$L_RMS_ATTRIBUTE_FLAGS = 16,0,32,0 %; ! RMS file attributes flags definitions macro ACE$V_STATISTICS = 16,0,1,0 %; ! Statistics monitoring enabled on this file macro ACE$V_XLATE_DEC = 16,1,1,0 %; ! File semantics are DEC-local ! using a {field-type, length, value} scheme. This allows extensibility ! and compact representation. ! ! field types are: macro ACE$T_VOLNAM = 4,0,0,0 %; literal ACE$S_VOLNAM = 12; ! Volume name of journal file macro ACE$B_VOLNAM_LEN = 16,0,8,0 %; ! Length of volume name of journal file macro ACE$B_RJRVER = 17,0,8,0 %; ! RMS journal file structure level macro ACE$R_FID_OVERLAY = 18,0,0,0 %; ! File-id of journal file macro ACE$W_FID = 18,0,0,0 %; literal ACE$S_FID = 6; ! file id macro ACE$R_FID_FIELDS = 18,0,0,0 %; macro ACE$W_FID_NUM = 18,0,16,0 %; ! file number macro ACE$W_FID_SEQ = 20,0,16,0 %; ! sequence number macro ACE$R_FID_RVN_OVERLAY = 22,0,16,0 %; macro ACE$W_FID_RVN = 22,0,16,0 %; ! relative volume number macro ACE$R_FID_RVN_FIELDS = 22,0,16,0 %; macro ACE$B_FID_RVN = 22,0,8,0 %; ! alternate format RVN macro ACE$B_FID_NMX = 23,0,8,0 %; ! alternate format file number extension macro ACE$W_RMSJNL_FLAGS = 24,0,16,0 %; macro ACE$V_JOURNAL_DISABLED = 24,0,1,0 %; ! journaling disabled ! (AI, BI, AT only; set by BACKUP) macro ACE$V_BACKUP_DONE = 24,1,1,0 %; ! BACKUP done on this file; ! RMS needs to write a backup marker ! (AI, BI, AT only; set by BACKUP) macro ACE$L_JNLIDX = 26,0,32,0 %; ! journal stream index number macro ACE$Q_CDATE = 30,0,0,0 %; literal ACE$S_CDATE = 8; ! creation date/time of journal macro ACE$L_BACKUP_SEQNO = 38,0,32,0 %; ! BACKUP sequence number (to ! find where to start in journal). macro ACE$Q_MODIFICATION_TIME = 42,0,0,0 %; literal ACE$S_MODIFICATION_TIME = 8; ! timestamp of last backup or last ! journal entry recovered. macro ACE$L_SPARE1 = 4,0,32,0 %; ! For alignment macro ACE$L_SYS_PROT = 8,0,32,0 %; ! Default system protection macro ACE$L_OWN_PROT = 12,0,32,0 %; ! Default owner protection macro ACE$L_GRP_PROT = 16,0,32,0 %; ! Default group protection macro ACE$L_WOR_PROT = 20,0,32,0 %; ! Default world protection macro ACE$L_SPARE2 = 4,0,32,0 %; ! For alignment macro ACE$Q_IMAGE_IDS = 8,0,0,0 %; literal ACE$S_IMAGE_IDS = 8; ! Start of the image ids (a ! quadword for each identifier) macro ACE$L_OIL_FLAGS = 4,0,32,0 %; ! For Alignment macro ACE$L_BRAND_NAME = 8,0,32,0 %; ! OIL Type-Specific Info macro ACE$R_CLASS_PROT = 12,0,8,0 %; ! OIL Class Block ! - POSIX_OWNER ACE, Persona from Image - ! Process effective persona derived from image activation. ! Support for POSIX/COE effective UID/GID identities granted ! to a process if the image has this ACE and it is valid. ! The UID and GID are extensions to the Persona Security Block ! (PSBDEF). ! ! Currently, only the SUID, SGID, GID and POSIX_MODE (GROUP) ! fields are supported. VMS_GRP_PROT is also used internally. ! macro ACE$L_POSIX_FLAGS = 4,0,32,0 %; ! POSIX_OWNER Flags macro ACE$V_USERNAME_VALID = 4,0,1,0 %; ! Validates Posix username macro ACE$V_UIC_VALID = 4,1,1,0 %; ! Validates Posix UIC macro ACE$V_UID_VALID = 4,2,1,0 %; ! Validates Posix User ID macro ACE$V_GID_VALID = 4,3,1,0 %; ! Validates Posix Group ID macro ACE$V_GROUP_MODE_VALID = 4,4,1,0 %; ! Validates Posix mode for Group file protection macro ACE$T_POSIX_USERNAME = 8,0,0,0 %; literal ACE$S_POSIX_USERNAME = 32; ! Posix Username macro ACE$L_POSIX_UIC = 40,0,32,0 %; ! Posix UIC macro ACE$W_POSIX_MEM = 40,0,16,0 %; ! Member number in UIC macro ACE$W_POSIX_GRP = 42,0,16,0 %; ! Group number in UIC macro ACE$L_POSIX_UID = 44,0,32,0 %; ! Posix User ID macro ACE$L_POSIX_GID = 48,0,32,0 %; ! Posix Group ID macro ACE$L_POSIX_MODE = 52,0,32,0 %; ! Posix file protection (mode) macro ACE$V_OTHER = 52,0,3,0 %; literal ACE$S_OTHER = 3; ! Other Permissions macro ACE$V_GROUP = 52,3,3,0 %; literal ACE$S_GROUP = 3; ! Group Permissions macro ACE$V_USER = 52,6,3,0 %; literal ACE$S_USER = 3; ! User Permissions ! - Other Permissions - macro ACE$V_S_IXOTH = 52,0,1,0 %; ! Posix mode - other execute macro ACE$V_S_IWOTH = 52,1,1,0 %; ! Posix mode - other write macro ACE$V_S_IROTH = 52,2,1,0 %; ! Posix mode - other read ! - Group Permissions - macro ACE$V_S_IXGRP = 52,3,1,0 %; ! Posix mode - group execute macro ACE$V_S_IWGRP = 52,4,1,0 %; ! Posix mode - group write macro ACE$V_S_IRGRP = 52,5,1,0 %; ! Posix mode - group read ! - User Permissions - macro ACE$V_S_IXUSR = 52,6,1,0 %; ! Posix mode - user execute macro ACE$V_S_IWUSR = 52,7,1,0 %; ! Posix mode - user write macro ACE$V_S_IRUSR = 52,8,1,0 %; ! Posix mode - user read macro ACE$V_S_SPARE = 52,9,1,0 %; ! Blank bit field ! - SxID Bits - macro ACE$V_S_ISGID = 52,10,1,0 %; ! Posix set group ID on execution macro ACE$V_S_ISUID = 52,11,1,0 %; ! Posix set user ID on execution macro ACE$L_VMS_GRP_PROT = 56,0,32,0 %; ! Posix to VMS Group Prot. ! End - POSIX_OWNER ACE !*** MODULE $ACLDEF *** literal ACL$K_LENGTH = 12; ! Length of the overhead area literal ACL$C_LENGTH = 12; ! Length of the overhead area literal ACL$C_FILE = 1; ! Files literal ACL$C_DEVICE = 2; ! MBX, MT, TT, etc. literal ACL$C_JOBCTL_QUEUE = 3; ! Job controller queue literal ACL$C_COMMON_EF_CLUSTER = 4; ! Common event flag clusters literal ACL$C_LOGICAL_NAME_TABLE = 5; ! Logical name tables literal ACL$C_PROCESS = 6; ! Process literal ACL$C_GROUP_GLOBAL_SECTION = 7; ! Group global sections literal ACL$C_SYSTEM_GLOBAL_SECTION = 8; ! System global sections literal ACL$C_CAPABILITY = 9; ! Capability literal ACL$C_EVENT_FACILITY = 10; ! Event facility literal ACL$C_LOCK = 11; ! Lock block/resource literal ACL$C_VOLUME = 12; ! Disk volume (set) literal ACL$C_MAX_OBJECT = 13; ! max object code literal ACL$C_NUM_OBJECTS = 12; ! number of objects literal ACL$K_NUM_OBJECTS = 12; ! number of objects ! Action codes literal ACL$C_ADDACLENT = 1; ! Add an ACL entry literal ACL$C_DELACLENT = 2; ! Delete an ACL entry literal ACL$C_MODACLENT = 3; ! Modify an ACL entry literal ACL$C_FNDACLENT = 4; ! Locate an ACL entry literal ACL$C_FNDACETYP = 5; ! Locate specific ACE type literal ACL$C_DELETEACL = 6; ! Delete ACL, leaving protected literal ACL$C_READACL = 7; ! Read the ACL literal ACL$C_ACLLENGTH = 8; ! Get the ACL's length literal ACL$C_READACE = 9; ! Read a single ACE literal ACL$C_RLOCK_ACL = 10; ! Read lock on ACL literal ACL$C_WLOCK_ACL = 11; ! Write lock on ACL literal ACL$C_UNLOCK_ACL = 12; ! Release exclusive lock literal ACL$C_GRANT_ACE = 13; ! ACE granting access literal ACL$C_NEXT_ACE = 14; ! Increment ACE number literal ACL$C_DELETE_ALL = 15; ! Delete entire ACL literal ACL$C_RESERVED_ITEM_2 = 16; ! Reserved item code literal ACL$C_RESERVED_ITEM_3 = 17; ! Reserved item code literal ACL$S_ADDACLENT = 255; ! Add an ACL entry literal ACL$S_DELACLENT = 255; ! Delete an ACL entry literal ACL$S_MODACLENT = 255; ! Modify an ACL entry literal ACL$S_FNDACLENT = 255; ! Locate an ACL entry literal ACL$S_FNDACETYP = 255; ! Locate specific ACE type literal ACL$S_DELETEACL = 255; ! Delete ACL, leaving protected literal ACL$S_READACL = 512; ! Read the ACL literal ACL$S_ACLLENGTH = 4; ! Get the ACL's length literal ACL$S_READACE = 255; ! Read a single ACE literal ACL$S_RLOCK_ACL = 4; ! Read lock on ACL literal ACL$S_WLOCK_ACL = 4; ! Write lock on ACL literal ACL$S_UNLOCK_ACL = 4; ! Remove lock on ACL literal ACL$S_GRANT_ACE = 255; ! ACE granting access literal ACL$S_NEXT_ACE = 4; ! Increment ACE number literal ACL$S_DELETE_ALL = 255; ! Delete entire ACL literal ACL$S_RESERVED_ITEM_2 = 255; ! Reserved item code literal ACL$S_RESERVED_ITEM_3 = 255; ! Reserved item code literal ACL$C_MAX_SEGMENT_SIZE = 512; ! Maximum ACL segemnt size literal ACL$K_MAX_SEGMENT_SIZE = 512; ! Maximum ACL segemnt size literal ACL$S_ACLDEF = 16; macro ACL$L_FLINK = 0,0,32,0 %; ! Forward link to next list in the queue macro ACL$L_BLINK = 4,0,32,0 %; ! Back link to previous list in queue macro ACL$W_SIZE = 8,0,16,0 %; ! Total size of the list macro ACL$B_TYPE = 10,0,8,0 %; ! Structure type code macro ACL$L_LIST = 12,0,32,0 %; ! Start of the Access Control Entries ! Object types !*** MODULE $UTCBLKDEF *** ! + ! ! $UTCBLKDEF defines the STARLET structure for UTC based times. ! ! - literal UTCBLK$S_UTCBLK = 16; macro UTCBLK$O_TIME_BLOCK = 0,0,0,1 %; literal UTCBLK$S_TIME_BLOCK = 16; ! Double quad for entire time !*** MODULE $acmedef IDENT X-8 *** ! + ! ! Miscellaneous constants ! ! - literal acme$k_maxchar_ITEM = 16383; ! Maximum length (in characters) ! of an item literal acme$k_maxchar_doi_name = 32; ! Maximum length (in characters) ! of a DOI name string literal acme$k_maxchar_principal_name = 512; ! Maximum length (in characters) ! of a principal name string literal acme$k_max_num_agents = 32; ! Maximum number of ACME agents ! that can be loaded literal acme$k_max_cred_type = 32; ! Maximum number of credential ! types supported ! + ! ! ACME agent id ! ! An ACME agent id is a 32-bit unsigned value, encoded as follows: ! ! Remote host address type is a 16-bit unsigned value, encoded as follows: ! ! 3 2 2 1 1 ! 1 4 3 6 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^.............................^ ^ ^...........................^ ! | | | | | ! | | | +---------------------------+-- Bit [14:0] = ACME number ! | | | ! | | +-------------------------------- Bit [15] = 0 ==> Ancillary agent ! | | 1 ==> Registered DOI ! | | ! +-----------------------------+---------------------------------- Bit [31:16] = Server number ! ! - literal acmeid$m_acme_num = %X'7FFF'; literal acmeid$m_doi_designator = %X'8000'; literal acmeid$m_server_num = %X'FFFF0000'; literal acmeid$S_acmeid = 4; macro acmeid$l_agent_id = 0,0,32,0 %; ! Composite id macro acmeid$v_acme_num = 0,0,15,0 %; literal acmeid$s_acme_num = 15; ! ACME agent number macro acmeid$v_doi_designator = 0,15,1,0 %; ! Registered DOI macro acmeid$v_server_num = 0,16,16,0 %; literal acmeid$s_server_num = 16; ! Server number literal acmeid$k_length = 4; ! + ! ! $ACM Function Codes and Modifiers ! ! Function code plus modifiers form a 32-bit unsigned value, encoded ! as follows: ! ! 3 2 2 1 1 ! 1 4 3 6 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^.............................^ ^.................^ ^.........^ ! | | | | | | ! | | | | +---------+-- Bit [5:0] = function code ! | | | | ! | | +-----------------+-------------- Bit [15:06] = cross function modifiers ! | | ! +-----------------------------+---------------------------------- Bit [31:16] = function specific modifiers ! - ! ! Function codes ! ! Function code values literal acme$_authenticate_principal = 1; ! AUTHENTICATE_PRINCIPAL literal acme$_change_password = 2; ! CHANGE_PASSWORD literal acme$_release_credentials = 3; ! RELEASE_CREDENTIALS literal acme$_query = 4; ! QUERY literal acme$_event = 5; ! EVENT ! Function code value literal acme$_free_context = 63; ! FREE_CONTEXT ! Function code values literal acme$_fc_authenticate_principal = 1; ! AUTHENTICATE_PRINCIPAL literal acme$_fc_change_password = 2; ! CHANGE_PASSWORD literal acme$_fc_release_credentials = 3; ! RELEASE_CREDENTIALS literal acme$_fc_query = 4; ! QUERY literal acme$_fc_event = 5; ! EVENT ! Function code value literal acme$_fc_free_context = 63; ! FREE_CONTEXT literal acmefc$m_function = %X'3F'; literal acmefc$m_modifiers = %X'FFFFFFC0'; literal acme$m_noaudit = %X'40'; literal acme$m_timeout = %X'80'; literal acme$m_ucs2_4 = %X'8000'; literal acme$m_acquire_credentials = %X'10000'; literal acme$m_merge_persona = %X'20000'; literal acme$m_copy_persona = %X'40000'; literal acme$m_override_mapping = %X'80000'; literal acme$m_native_authentication = %X'100000'; literal acme$m_noauthorization = %X'200000'; literal acme$m_foreign_policy_hints = %X'400000'; literal acme$m_default_principal = %X'800000'; literal acmefc$S_acmefc = 4; ! ! Overall function code/modifiers structure ! macro acmefc$l_fcode_struct = 0,0,32,0 %; ! Composite field macro acmefc$v_function = 0,0,6,0 %; literal acmefc$s_function = 6; ! Function code macro acmefc$v_modifiers = 0,6,26,0 %; literal acmefc$s_modifiers = 26; ! Function modifiers ! ! Modifiers applicable to all function codes ! macro acme$v_noaudit = 0,6,1,0 %; ! Suppress auditing macro acme$v_timeout = 0,7,1,0 %; ! Timed operation macro acme$v_ucs2_4 = 0,15,1,0 %; ! Strings are in 4-byte UCS-2 format ! ! Modifiers applicable to AUTHENTICATE_PRINCIPAL/CHANGE_PASSWORD ! macro acme$v_acquire_credentials = 0,16,1,0 %; ! Acquire credentials macro acme$v_merge_persona = 0,17,1,0 %; ! Merge with base credentials macro acme$v_copy_persona = 0,18,1,0 %; ! Copy base credentials macro acme$v_override_mapping = 0,19,1,0 %; ! Override VMS username mapping checks macro acme$v_native_authentication = 0,20,1,0 %; ! Allow native DOI authentication macro acme$v_noauthorization = 0,21,1,0 %; ! Skip authorization checks macro acme$v_foreign_policy_hints = 0,22,1,0 %; ! Honor NOAUDIT and NOAUTHORIZATION ! for non-native authentications macro acme$v_default_principal = 0,23,1,0 %; ! Use principal name and DOI ! designator defined by the ! primary persona extension literal acmefc$k_length = 4; ! + ! ! $ACM Item Codes ! ! Item codes are 16-bit unsigned values, encoded as follows: ! ! 1 ! 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^ ^ ^ ^ ^ ! | | | | | ! | | | +-----------------------+-- Bit [12:0] = item ! | | | ! | | +---------------------------- Bit [13] = 0 ==> not subject to VTF-7 <-> UCS conversion ! | | 1 ==> subject to VTF-7 <-> UCS conversion ! | | ! | +------------------------------ Bit [14] = 0 ==> input item ! | 1 ==> output item ! | ! +-------------------------------- Bit [15] = 0 ==> common item ! 1 ==> ACME specific item ! ! - ! Specialty ! Cross function ! AUTHENTICATE_PRINCIPAL/CHANGE_PASSWORD ! RELEASE_CREDENTIALS ! QUERY ! EVENT literal acmeic$M_ITEM = %X'1FFF'; literal acmeic$m_ucs = %X'2000'; literal acmeic$m_output = %X'4000'; literal acmeic$m_acme_specific = %X'8000'; literal acmeic$S_acmeic = 2; macro acmeic$w_item_code = 0,0,16,0 %; ! Composite field macro acmeic$V_ITEM = 0,0,13,0 %; literal acmeic$S_ITEM = 13; ! Ranged value macro acmeic$v_ucs = 0,13,1,0 %; ! 0 ==> not subject to VTF-7 <-> UCS conversion ! 1 ==> subject to VTF-7 <-> UCS conversion macro acmeic$v_output = 0,14,1,0 %; ! 0 ==> input item ! 1 ==> output item macro acmeic$v_acme_specific = 0,15,1,0 %; ! 0 ==> common item ! 1 ==> ACME specific item literal acmeic$k_length = 2; ! ! Input item codes not subject to VTF-7 <-> UCS conversion ! literal acme$_min_spec_in = 1; ! Specialty items literal acme$_null = 1; ! Place holder item (skip entry in item list) literal acme$_chain = 2; ! Chain to another item list segment literal acme$_max_spec_in = 2; literal acme$_min_gen_in = 256; ! Generic items literal acme$_access_mode = 256; ! Access mode for persona operations literal acme$_dialogue_support = 257; ! Dialogue capabilities literal acme$_context_acme_id = 258; ! ID of ACME for specific context literal acme$_persona_handle_in = 259; ! Target persona literal acme$_target_doi_id = 260; ! ID of DOI for a directed call literal acme$_timeout_interval = 261; ! Timeout interval in seconds literal acme$_max_gen_in = 261; literal acme$_min_auth_pwd_in = 512; ! AUTHENTICATE_PRINCIPAL/CHANGE_PASSWORD items literal acme$_auth_mechanism = 512; ! Authentication mechanism literal acme$_challenge_data = 513; ! Challenge data literal acme$_logon_type = 514; ! Logon type literal acme$_new_password_flags = 515; ! New password request/control flags literal acme$_remote_host_address = 516; ! Remote host address literal acme$_remote_host_address_type = 517; ! Remote host address type/format literal acme$_response_data = 518; ! Response data literal acme$_max_auth_pwd_in = 518; literal acme$_min_rel_cred_in = 768; ! RELEASE_CREDENTIALS items literal acme$_credentials_type = 768; ! Index associated with persona extension literal acme$_max_rel_cred_in = 768; literal acme$_min_query_in = 1024; ! QUERY items literal acme$_query_key_type = 1024; ! Key type literal acme$_query_key_value = 1025; ! Key value literal acme$_query_type = 1026; ! Type of data to be returned via QUERY_DATA literal acme$_max_query_in = 1026; literal acme$_min_event_in = 1280; ! EVENT items literal acme$_event_data_in = 1280; ! Event function input data literal acme$_event_type = 1281; ! Event type literal acme$_max_event_in = 1281; ! ! Input item codes subject to VTF-7 <-> UCS conversion ! literal acme$_min_gen_in_ucs = 8448; ! Generic items literal acme$_context_acme_name = 8448; ! Name of ACME for specific context literal acme$_locale = 8449; ! Language specifier (location) literal acme$_target_doi_name = 8450; ! Name of DOI for a directed call literal acme$_server_name_in = 8451; ! ACME relative server name literal acme$_service_name = 8452; ! Caller's service name literal acme$_max_gen_in_ucs = 8452; literal acme$_min_auth_pwd_in_ucs = 8704; ! AUTHENTICATE_PRINCIPAL/CHANGE_PASSWORD items literal acme$_access_port = 8704; ! Access port name literal acme$_new_password_1 = 8705; ! New primary password literal acme$_new_password_2 = 8706; ! New secondary password literal acme$_new_password_system = 8707; ! New system password literal acme$_password_1 = 8708; ! Primary password literal acme$_password_2 = 8709; ! Secondary password literal acme$_password_system = 8710; ! System password literal acme$_principal_name_in = 8711; ! Principal name literal acme$_remote_host_fullname = 8712; ! Remote host expanded name literal acme$_remote_host_name = 8713; ! Remote host name literal acme$_remote_username = 8714; ! Remote username literal acme$_max_auth_pwd_in_ucs = 8714; literal acme$_min_rel_cred_in_ucs = 8960; ! RELEASE_CREDENTIALS items literal acme$_credentials_name = 8960; ! Name associated with persona extension literal acme$_max_rel_cred_in_ucs = 8960; ! ! Output item codes not subject to VTF-7 <-> UCS conversion ! literal acme$_min_spec_out = 16385; ! Specialty items literal acme$_phase_transition = 16385; literal acme$_max_spec_out = 16385; literal acme$_min_gen_out = 16640; ! Generic items literal acme$_persona_handle_out = 16640; ! Persona acted upon literal acme$_max_gen_out = 16640; literal acme$_min_auth_pwd_out = 16896; ! AUTHENTICATE_PRINCIPAL/CHANGE_PASSWORD items literal acme$_authenticating_doi_id = 16896; ! ID of DOI accepting principal literal acme$_logon_information = 16897; ! Logon information literal acme$_mapping_acme_id = 16898; ! ID of ACME mapping principal literal acme$_max_auth_pwd_out = 16898; literal acme$_min_query_out = 17408; ! QUERY items literal acme$_query_data = 17408; ! Query function output data literal acme$_max_query_out = 17408; literal acme$_min_event_out = 17664; ! EVENT items literal acme$_event_data_out = 17664; ! Event function output data literal acme$_max_event_out = 17664; ! ! Output item codes subject to VTF-7 <-> UCS conversion ! literal acme$_min_gen_out_ucs = 24832; ! Generic items literal acme$_server_name_out = 24832; ! ACME relative server name literal acme$_max_gen_out_ucs = 24832; literal acme$_min_auth_pwd_out_ucs = 25088; ! AUTHENTICATE_PRINCIPAL/CHANGE_PASSWORD items literal acme$_authenticating_doi_name = 25088; ! Name of DOI accepting principal literal acme$_mapped_vms_username = 25089; ! Resultant VMS Username literal acme$_mapping_acme_name = 25090; ! Name of ACME mapping principal literal acme$_principal_name_out = 25091; ! Processed principal name literal acme$_max_auth_pwd_out_ucs = 25091; ! ! Logon (Job) Type Values ! literal acme$k_network = 1; literal acme$k_batch = 2; literal acme$k_local = 3; literal acme$k_dialup = 4; literal acme$k_remote = 5; ! + ! ! Revision Level ! ! Revision level is a 16-bit unsigned value, encoded as follows: ! ! 1 ! 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^.............^ ^.............^ ! | | | | ! | | +-------------+-- Bit [7:0] = revision minor id ! | | ! +-------------+------------------ Bit [15:8] = revision major id ! ! - literal acmerevlvl$k_minor_id_bitpos = 0; literal acmerevlvl$k_major_id_bitpos = 8; literal acmerevlvl$S_acmerevlvl = 2; macro acmerevlvl$w_revision_level = 0,0,16,0 %; ! Composite field macro acmerevlvl$b_minor_id = 0,0,8,0 %; ! Revision level minor id macro acmerevlvl$b_major_id = 1,0,8,0 %; ! Revision level major id literal acmerevlvl$k_length = 2; ! + ! ! Authentication Mechanism ! ! Authentication mechanism is a 16-bit unsigned value, encoded as follows: ! ! 3 2 2 1 1 ! 1 4 3 6 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^.............................^ ^ ^...........................^ ! | | | | | ! | | | +---------------------------+-- Bit [14:0] = authentication mechanism ! | | | ! | | +-------------------------------- Bit [15] = 0 ==> standard mechanism ! | | 1 ==> vendor specific mechanism ! | | ! +-----------------------------+---------------------------------- Bit [31:16] = vendor's facility code ! ! - ! ! Standard mechanism types ! literal acmemech$k_password = 1; ! Username-Password literal acmemech$k_challenge_response = 2; ! Challenge-Response literal acmemech$m_mechanism_type = %X'7FFF'; literal acmemech$m_facility_specific = %X'8000'; literal acmemech$S_acmemech = 4; macro acmemech$w_mechanism = 0,0,16,0 %; ! Composite field macro acmemech$v_mechanism_type = 0,0,15,0 %; literal acmemech$s_mechanism_type = 15; ! Authentication mechanism macro acmemech$v_facility_specific = 0,15,1,0 %; ! 0 ==> standard mechanism ! 1 ==> facility specific mechanism macro acmemech$w_facility = 2,0,16,0 %; ! Vendor's assigned facility code literal acmemech$k_length = 4; ! + ! ! Remote Host Address Type ! ! Remote host address type is a 16-bit unsigned value, encoded as follows: ! ! 3 2 2 1 1 ! 1 4 3 6 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^.............................^ ^ ^...........................^ ! | | | | | ! | | | +---------------------------+-- Bit [14:0] = network protocol (address format) ! | | | ! | | +-------------------------------- Bit [15] = 0 ==> standard protocol ! | | 1 ==> vendor specific protocol ! | | ! +-----------------------------+---------------------------------- Bit [31:16] = vendor's facility code ! ! - ! ! Standard protocol types ! literal acmehat$k_decnet_iv = 1; ! DECnet Phase IV literal acmehat$k_decnet_osi = 2; ! DECnet OSI literal acmehat$k_ip_v4 = 3; ! Internet Protocol V4 literal acmehat$k_ip_v6 = 4; ! Internet Protocol V6 literal acmehat$m_protocol_type = %X'7FFF'; literal acmehat$m_facility_specific = %X'8000'; literal acmehat$S_acmehat = 4; macro acmehat$w_protocol = 0,0,16,0 %; ! Composite field macro acmehat$v_protocol_type = 0,0,15,0 %; literal acmehat$s_protocol_type = 15; ! Network protocol/address format macro acmehat$v_facility_specific = 0,15,1,0 %; ! 0 ==> standard protocol ! 1 ==> facility specific protocol macro acmehat$w_facility = 2,0,16,0 %; ! Vendor's assigned facility code literal acmehat$k_length = 4; ! + ! ! Password change request control flags ! ! - literal acmepwdflg$k_system = 0; literal acmepwdflg$m_system = %X'1'; literal acmepwdflg$k_password_1 = 1; literal acmepwdflg$m_password_1 = %X'2'; literal acmepwdflg$k_password_2 = 2; literal acmepwdflg$m_password_2 = %X'4'; literal acmepwdflg$k_max_flags = 3; literal acmepwdflg$k_specified = 31; literal acmepwdflg$m_specified = %X'80000000'; literal acmepwdflg$m_valid_flags = %X'7'; literal acmepwdflg$m_password_flags = %X'7FFFFFFF'; literal acmepwdflg$S_acmepwdflg = 4; macro acmepwdflg$l_flags_struct = 0,0,32,0 %; ! Composite field macro acmepwdflg$v_system = 0,0,1,0 %; ! Request system password change macro acmepwdflg$v_password_1 = 0,1,1,0 %; ! Request password 1 change macro acmepwdflg$v_password_2 = 0,2,1,0 %; ! Request password 2 change macro acmepwdflg$v_specified = 0,31,1,0 %; ! Used internally by the service ! to indicate flags reflect caller ! specified NEW_PASSWORD_FLAGS item ! Caller's setting is ignored macro acmepwdflg$v_valid_flags = 0,0,3,0 %; literal acmepwdflg$s_valid_flags = 3; ! Currently defined flags macro acmepwdflg$v_password_flags = 0,0,31,0 %; literal acmepwdflg$s_password_flags = 31; ! Non-reserved flags literal acmepwdflg$k_length = 4; ! + ! ! $ACM Item Set Message Category ! ! Message Categories are 16-bit unsigned values, encoded as follows: ! ! 1 ! 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^ ^ ^ ^ ! | | | | ! | | +-------------------------+-- Bit [13:0] = message type ! | | ! | +------------------------------ Bit [14] = 0 ==> not subject to VTF-7 <-> UCS conversion ! | = 1 ==> subject to VTF-7 <-> UCS conversion ! | ! +-------------------------------- Bit [15] = 0 ==> common item ! 1 ==> ACME specific item ! ! - literal acmemc$m_type = %X'3FFF'; literal acmemc$m_ucs = %X'4000'; literal acmemc$m_acme_specific = %X'8000'; literal acmemc$S_acmemc = 2; macro acmemc$w_msg_code = 0,0,16,0 %; ! Composite field macro acmemc$v_type = 0,0,14,0 %; literal acmemc$s_type = 14; ! Ranged value macro acmemc$v_ucs = 0,14,1,0 %; ! 0 ==> not subject to VTF-7 <-> UCS conversion ! 1 ==> subject to VTF-7 <-> UCS conversion macro acmemc$v_acme_specific = 0,15,1,0 %; ! 0 ==> common category ! 1 ==> ACME specific category literal acmemc$k_length = 2; ! ! Generic output message categories ! ! These are all subject to UCS conversion ! literal acmemc$k_min_gen_msg = 16384; literal acmemc$k_general = 16384; ! General text literal acmemc$k_header = 16385; ! Header text literal acmemc$k_trailer = 16386; ! Trailer text literal acmemc$k_selection = 16387; ! Acceptable choices literal acmemc$k_dialogue_alert = 16388; ! Alert (advisory) literal acmemc$k_max_gen_msg = 16388; ! ! LOGINOUT related output message categories ! ! These are all subject to UCS conversion ! literal acmemc$k_min_logon_msg = 16640; literal acmemc$k_system_identification = 16640; ! System identification text literal acmemc$k_system_notices = 16641; ! System notices literal acmemc$k_welcome_notices = 16642; ! Welcome notices, literal acmemc$k_logon_notices = 16643; ! Logon notices literal acmemc$k_password_notices = 16644; ! Password notices literal acmemc$k_mail_notices = 16645; ! MAIL notices literal acmemc$k_max_logon_msg = 16645; ! + ! ! ACMESB - ACM Status Block ! ! - literal acmesb$S_acmesb = 16; macro acmesb$l_status = 0,0,32,1 %; ! Primary status macro acmesb$l_secondary_status = 4,0,32,1 %; ! Auxillary (privileged) status macro acmesb$l_acme_id = 8,0,32,0 %; literal acmesb$s_acme_id = 4; ! ID of ACME/DOI reporting specific status macro acmesb$l_acme_status = 12,0,32,1 %; ! ACME/DOI specific status literal acmesb$k_length = 16; ! + ! ! ACMECB - ACM Communications Buffer ! ! - literal acmedlogflg$m_input = %X'1'; literal acmedlogflg$m_noecho = %X'2'; literal acmedlogflg$m_specified = %X'80000000'; literal acmedlogflg$m_valid_flags = %X'3'; literal acmedlogflg$m_dialogue_flags = %X'7FFFFFFF'; literal acmedlogflg$S_acmedlogflg = 4; macro acmedlogflg$l_flags_struct = 0,0,32,0 %; ! Composite field macro acmedlogflg$v_input = 0,0,1,0 %; ! Response required macro acmedlogflg$v_noecho = 0,1,1,0 %; ! When prompting, do not echo response macro acmedlogflg$v_specified = 0,31,1,0 %; ! Used internally by the service ! to indicate flags reflect caller ! specified DIALOGUE_SUPPORT item ! Caller's setting is ignored macro acmedlogflg$v_valid_flags = 0,0,2,0 %; literal acmedlogflg$s_valid_flags = 2; ! Currently defined flags macro acmedlogflg$v_dialogue_flags = 0,0,31,0 %; literal acmedlogflg$s_dialogue_flags = 31; ! Non-reserved flags literal acmedlogflg$k_length = 4; literal acmeis$S_acmeitmset = 24; macro acmeis$l_flags = 0,0,32,0 %; literal acmeis$s_flags = 4; ! Item set processing flags macro acmeis$w_item_code = 4,0,16,0 %; literal acmeis$s_item_code = 2; ! Item code reflecting the nature of ! information provided/requested macro acmeis$w_max_length = 6,0,16,0 %; ! Maximum length of an input data macro acmeis$w_msg_type = 6,0,16,0 %; literal acmeis$s_msg_type = 2; ! Message category for output data macro acmeis$q_data_1 = 8,0,0,0 %; literal acmeis$s_data_1 = 8; ! Data 1 (prompt text) macro acmeis$q_data_2 = 16,0,0,0 %; literal acmeis$s_data_2 = 8; ! Data 2 (default response) literal acmeis$k_length = 24; literal acmecb$k_minor_id_000 = 0; literal acmecb$k_minor_id = 0; literal acmecb$k_major_id_001 = 1; literal acmecb$k_major_id = 1; literal acmecb$k_revision = 256; literal acmecb$S_acmecb = 24; macro acmecb$q_context_id = 0,0,0,0 %; literal acmecb$s_context_id = 8; ! ID of associated ACM Request Block macro acmecb$w_size = 8,0,16,0 %; ! Structure size, in bytes macro acmecb$w_revision_level = 10,0,16,0 %; literal acmecb$s_revision_level = 2; ! Structure revision level macro acmecb$l_acme_id = 12,0,32,0 %; literal acmecb$s_acme_id = 4; ! ID of ACME/DOI requesting dialogue macro acmecb$l_item_set_count = 16,0,32,0 %; ! Number of item set entries macro acmecb$ps_item_set = 20,0,32,1 %; ! Pointer to item set array literal acmecb$k_length = 24; ! + ! ! ACMELI - ACM Logon Information Block ! ! - literal acmelgiflg$k_min_logon_flag = -1; literal acmelgiflg$k_new_mail_at_login = 0; literal acmelgiflg$m_new_mail_at_login = %X'1'; literal acmelgiflg$k_password_changed = 1; literal acmelgiflg$m_password_changed = %X'2'; literal acmelgiflg$k_password_expired = 2; literal acmelgiflg$m_password_expired = %X'4'; literal acmelgiflg$k_password_warning = 3; literal acmelgiflg$m_password_warning = %X'8'; literal acmelgiflg$k_password2_changed = 4; literal acmelgiflg$m_password2_changed = %X'10'; literal acmelgiflg$k_password2_expired = 5; literal acmelgiflg$m_password2_expired = %X'20'; literal acmelgiflg$k_password2_warning = 6; literal acmelgiflg$m_password2_warning = %X'40'; literal acmelgiflg$k_max_logon_flag = 6; literal acmelgiflg$S_acmelgiflg = 4; macro acmelgiflg$l_logon_flags = 0,0,32,0 %; ! Composite field macro acmelgiflg$v_new_mail_at_login = 0,0,1,0 %; ! User had new MAIL message(s) macro acmelgiflg$v_password_changed = 0,1,1,0 %; ! Primary password changed macro acmelgiflg$v_password_expired = 0,2,1,0 %; ! Primary password expired on login macro acmelgiflg$v_password_warning = 0,3,1,0 %; ! Primary password expiration imminent macro acmelgiflg$v_password2_changed = 0,4,1,0 %; ! Secondary password changed macro acmelgiflg$v_password2_expired = 0,5,1,0 %; ! Secondary password expired on login macro acmelgiflg$v_password2_warning = 0,6,1,0 %; ! Secondary password expiration imminent literal acmelgiflg$k_length = 4; literal acmelivms$k_minor_id_000 = 0; literal acmelivms$k_minor_id = 0; literal acmelivms$k_major_id_001 = 1; literal acmelivms$k_major_id = 1; literal acmelivms$k_revision = 256; literal acmelivms$S_acmelivms = 48; macro acmelivms$l_acme_id = 0,0,32,0 %; literal acmelivms$s_acme_id = 4; ! ID of ACME which reported logon information macro acmelivms$l_phase = 4,0,32,0 %; ! Phase during which information was reported macro acmelivms$w_size = 8,0,16,0 %; ! Structure size, in bytes macro acmelivms$w_revision_level = 10,0,16,0 %; literal acmelivms$s_revision_level = 2; ! Structure revision level macro acmelivms$l_logfail_count = 12,0,32,0 %; ! Number of failed logon attempts macro acmelivms$o_logon_int = 16,0,0,0 %; literal acmelivms$s_logon_int = 16; ! Time of last interactive logon macro acmelivms$o_logon_nonint = 32,0,0,0 %; literal acmelivms$s_logon_nonint = 16; ! Time of last non-interactive logon literal acmelivms$k_length = 48; literal acmelidoi$k_minor_id_000 = 0; literal acmelidoi$k_minor_id = 0; literal acmelidoi$k_major_id_001 = 1; literal acmelidoi$k_major_id = 1; literal acmelidoi$k_revision = 256; literal acmelidoi$S_acmelidoi = 112; macro acmelidoi$l_acme_id = 0,0,32,0 %; literal acmelidoi$s_acme_id = 4; ! ID of ACME which reported logon information macro acmelidoi$l_phase = 4,0,32,0 %; ! Phase during which information was reported macro acmelidoi$w_size = 8,0,16,0 %; ! Structure size, in bytes macro acmelidoi$w_revision_level = 10,0,16,0 %; literal acmelidoi$s_revision_level = 2; ! Structure revision level macro acmelidoi$l_logfail_count = 12,0,32,0 %; ! Number of failed logon attempts macro acmelidoi$o_logon = 16,0,0,0 %; literal acmelidoi$s_logon = 16; ! Time of last logon macro acmelidoi$o_logon_int = 32,0,0,0 %; literal acmelidoi$s_logon_int = 16; ! Time of last interactive logon macro acmelidoi$o_logon_nonint = 48,0,0,0 %; literal acmelidoi$s_logon_nonint = 16; ! Time of last non-interactive logon macro acmelidoi$o_logfail = 64,0,0,0 %; literal acmelidoi$s_logfail = 16; ! Time of last logon failure macro acmelidoi$o_logfail_int = 80,0,0,0 %; literal acmelidoi$s_logfail_int = 16; ! Time of last interactive logon failure macro acmelidoi$o_logfail_nonint = 96,0,0,0 %; literal acmelidoi$s_logfail_nonint = 16; ! Time of last non-interactive logon failure literal acmelidoi$k_length = 112; literal acmeli$k_minor_id_000 = 0; literal acmeli$k_minor_id = 0; literal acmeli$k_major_id_001 = 1; literal acmeli$k_major_id = 1; literal acmeli$k_revision = 256; literal acmeli$S_acmeli = 184; macro acmeli$pq_logon_info_doi64 = 0,0,0,1 %; literal acmeli$s_logon_info_doi64 = 8; ! Non-native (non-OpenVMS) logon information macro acmeli$ps_logon_info_doi32 = 0,0,32,1 %; ! Non-native (non-OpenVMS) logon information macro acmeli$l_logon_info_doi32se = 4,0,32,0 %; ! Sign extension field macro acmeli$w_size = 8,0,16,0 %; ! Structure size, in bytes macro acmeli$w_revision_level = 10,0,16,0 %; literal acmeli$s_revision_level = 2; ! Structure revision level macro acmeli$l_logon_flags = 12,0,32,0 %; literal acmeli$s_logon_flags = 4; ! Logon flags macro acmeli$pq_logon_info_vms64 = 16,0,0,1 %; literal acmeli$s_logon_info_vms64 = 8; ! Native (OpenVMS) logon information macro acmeli$ps_logon_info_vms32 = 16,0,32,1 %; ! Native (OpenVMS) logon information macro acmeli$l_logon_info_vms32se = 20,0,32,0 %; ! Sign extension field literal acmeli$k_length = 184; literal acme$k_query_revision_level = 1; ! Service revision level literal acme$k_query_acme_count = 2; ! Number of registered agents literal acme$k_query_acme_id = 3; ! Specify/report agent id literal acme$k_query_acme_name = 4; ! Specify/reprot agent name literal acme$k_service_revision_001_000 = 256; ! ! Pre-$ACM definitions... ! ! Definitions for the $AUTHENTICATE[W], $LOGON[W], and $SET_PASSWORD[W] ! system services. ! ! ! $LOGON[W] function codes. ! literal ACME$_MAP_TO_USERNAME = 1; ! Map userid to username literal ACME$_VERIFY_PASSWORD_ONLY = 2; ! Authenticate password literal ACME$_MAX_FUNCTION_CODE = 3; ! maximum legal function code + 1 ! ! Item codes. Codes specific to a particular service are noted: ! ! $AU = $AUTHENTICATE[W] ! $LO = $LOGON[W] ! $SP = $SET_PASSWORD[W] ! literal ACME$_DOMAIN = 2; ! Authentication domain literal ACME$_USERID = 3; ! User ID literal ACME$_PASSWORD = 4; ! Single password literal ACME$_PASSWORD_LIST = 5; ! Password list literal ACME$_NEW_PASSWORD = 6; ! New password ($SP) literal ACME$_OUTPUT_VMS_USERNAME = 7; ! Mapped OpenVMS username ($LO) literal ACME$_NOAUTHENTICATION = 8; ! No password authentication ($SP) literal ACME$_OVERRIDE_POLICY = 9; ! Override password policy ($SP) literal ACME$_SYNCHRONIZE = 10; ! Set password in all domains ($SP) literal ACME$_REASON_CODE = 11; ! ACME-specific reason code literal ACME$_VALIDATE_ONLY = 12; ! Validate user can login ($LO) literal ACME$_UAF_RECORD_LOCKED = 13; ! Advisory that UAF record is locked ($LO) literal ACME$_RESERVED_ITEM_1 = 14; ! Reserved 1 literal ACME$_RESERVED_ITEM_2 = 15; ! Reserved 2 literal ACME$_MAX_ITEM_CODE = 16; ! maximum legal item code + 1 ! ! Structures and constants. ! literal ACME$C_MAJOR_VERSION = 1; ! Major ACME version literal ACME$C_MINOR_VERSION = 0; ! Minor ACME version literal ACME$S_MAX_DOMAIN = 256; ! Maximum domain length literal ACME$S_MAX_USERID = 256; ! Maximum userid length literal ACME$S_MAX_PASSWORD = 256; ! Maximum password length ! ! The PASSWORD_LIST item code requires a list of password items with each ! item specified by a PWDITM structure definition. The list is terminated ! by a longword zero. ! literal ACME$S_PWDITM = 12; macro ACME$L_TERMINATOR = 0,0,32,0 %; ! Termination longword macro ACME$W_PWDNUM = 0,0,16,0 %; ! Password number (1=primary, etc.) macro ACME$W_RSRVD1 = 2,0,16,0 %; ! reserved for future use, MBZ macro ACME$A_OLDPWD = 4,0,32,0 %; ! Descriptor address for old password macro ACME$A_NEWPWD = 8,0,32,0 %; ! Descriptor address for new password ! ! Maximum password number to be used in password list ! literal ACME$C_MAX_PASSWORD_NUM = 8; !*** MODULE $acmevmsdef IDENT X-11 *** ! ! Item code biasing factors ! ! Backward-compatibility ! Not for initial call ! Contemporary supported ! $CREPRC argument items ! UAI data ! ! ACME-specific output data types ! ! These codes are provided by the VMS ACME for return ! in field MAX_LENGTH of an output Item Set. ! ! The field MAX_LENGTH is named for its purpose within ! Input Item Sets, but for Output Item Sets it allows ! SYS$ACM[W] clients to categorize the output they receive ! and dispatch to specialized handling. ! ! These ACME-specific values are provided only where the caller ! is one the VMS ACME knows can handle these particular binary ! codes, i.e. LOGINOUT. ! ! These data types are defined exclusively to provide backward compatibility ! with interface methods used prior to the introduction of SYS$ACM[W] by ! TNT$SERVER, LOGINOUT LGI-callouts and LOGINOUT DECwindows interfaces. ! They will not be provided to other clients which call SYS$ACM[W]. ! literal acmevms$k_min_msg_type = 32768; literal acmevms$k_old_decw_pwd_exp_1 = 32768; ! Binary expiration warning literal acmevms$k_old_decw_pwd_exp_2 = 32769; ! Binary expiration warning literal acmevms$k_old_decw_pwd_quality = 32770; ! Binary password quality status literal acmevms$k_old_sysuaf_070 = 32771; ! Authorization Record literal acmevms$k_old_auth_flags = 32772; ! Password requirement flags literal acmevms$k_old_terminal_connect = 32773; ! UIC, Username and Account literal acmevms$k_max_msg_type = 32773; ! ! ACME-specific Item Codes for the VMS ACME ! ! Items with these codes from the callr of SYS$ACM[W] will ! be provided to the VMS ACME (exclusively) if they follow ! an instance of General Item Code ACME_TARGET_ACME_ID which ! specifies the VMS ACME. ! ! ACME-specific Item Codes have the high bit (15) set, whereas ! General Item Codes have it clear. ! ! ! Input Item Codes ! ! While SYS$ACM does not specify semantics for the handling ! of multiple input item codes of the same value, the semantics ! of the VMS ACME are uniform for all input item codes -- ! the value associated with the last input item prevails. ! ! ! Input item codes not subject to VTF-7 <-> UCS conversion ! ! ! Backward-compatibility Input Item Codes ! ! These codes are defined exclusively to provide backward compatibility ! with interface methods used prior to the introduction of SYS$ACM[W] by ! TNT$SERVER, LOGINOUT LGI-callouts and LOGINOUT DECwindows interfaces. ! They will not be honored from other clients which call SYS$ACM[W]. ! literal acmevms$_min_old_in = 32768; literal acmevms$_old_decwindows_flag = 32768; ! old DECwindows authentication mechanism literal acmevms$_old_hashed_password_1 = 32769; ! old ARGUS authentication mechanism literal acmevms$_old_hashed_password_2 = 32770; ! old ARGUS authentication mechanism literal acmevms$_old_lgi_phase = 32771; ! old LGI-callout authentication mechanism literal acmevms$_old_lgi_status = 32772; ! old LGI-callout authentication mechanism literal acmevms$_max_old_in = 32772; ! ! Solicited Input Item Codes ! ! These codes support historic LOGINOUT behavour and in addition to ! being retricted to LOGINOUT are not honored on initial calls from ! LOGINOUT. They can only be provided in response to an Input Item Set. ! literal acmevms$_min_solicited_in = 33024; literal acmevms$_loginout_cli_flags = 33024; ! LOGINOUT received these qualifiers literal acmevms$_old_connection_flag = 33025; ! LOGINOUT did a reconnection literal acmevms$_old_process_name = 33026; ! the process name after LOGINOUT $SETPRN literal acmevms$_max_solicited_in = 33026; ! ! General Input Items ! ! These non-converting input item codes are permanent features ! of the VMS ACME, although some require particular privileges. ! ! LOGINOUT_CREPRC_FLAGS is only honored from LOGINOUT, although ! other clients can achieve the same results using other Item Codes. ! The reason LOGINOUT_CREPRC_FLAGS exists is to minimize coding ! changes for the transition of LOGINOUT to using SYS$ACM[W]. ! literal acmevms$_min_general_in = 33280; literal acmevms$_autologin_allowed_flag = 33280; ! autologin is allowed for this request literal acmevms$_spare_1 = 33281; ! originally default_principal_flag literal acmevms$_genpwd_count = 33282; ! desired number of generated passwords literal acmevms$_genpwd_mandatory_flag = 33283; ! generated password must be chosen literal acmevms$_genpwd_maxlength = 33284; ! maximum length of generated password literal acmevms$_genpwd_minlength = 33285; ! minimum length of generated password literal acmevms$_loginout_creprc_flags = 33286; ! CTL$GL_CREPRC_FLAGS from LOGINOUT literal acmevms$_requestor_pid = 33287; ! PID of client process (make spare after Kestrel) literal acmevms$_preauthentication_flag = 33288; ! preauthenticated request literal acmevms$_uses_system_password = 33289; ! this connection uses system passwords literal acmevms$_requestor_uic = 33290; ! UIC of client process (make spare after Kestrel) literal acmevms$_max_general_in = 33290; ! ! Input item codes subject to VTF-7 <-> UCS conversion ! literal acmevms$_min_general_in_ucs = 41472; literal acmevms$_net_proxy = 41472; ! network proxy username string from LOGINOUT literal acmevms$_requestor_username = 41473; ! Username of client process (make spare after Kestrel) literal acmevms$_confirm_password_sys = 41474; ! Reenter New System Password literal acmevms$_confirm_password_1 = 41475; ! Reenter New Primary Password literal acmevms$_confirm_password_2 = 41476; ! Reenter New Secondary Password literal acmevms$_max_general_in_ucs = 41476; ! ! Output Item Codes ! ! While SYS$ACM does not specify semantics for the handling ! of multiple output item codes of the same value, the semantics ! of the VMS ACME are uniform for all output item codes -- ! all such codes are honored independently. ! ! ! Output item codes not subject to VTF-7 <-> UCS conversion ! ! ! General Output Items ! ! These non-converting output item codes are permanent features ! of the VMS ACME. ! literal acmevms$_min_general_out = 49664; literal acmevms$_class_days = 49664; ! primary days for the scheduler class literal acmevms$_class_flags = 49665; ! flags for the scheduler class literal acmevms$_class_number = 49666; ! number of the scheduler class literal acmevms$_class_primeday_limit = 49667; ! hourly quantum percentage on primary day literal acmevms$_class_seconday_limit = 49668; ! hourly quantum percentage on secondary day literal acmevms$_max_general_out = 49668; ! ! CREPRC-based output items ! ! These Output Item Codes provide information in a format suitable ! for passing to the $CREPRC System service, freeing callers of any ! need to track the introduction of new VMS process quotas. ! literal acmevms$_min_creprc_out = 49920; literal acmevms$_creprc_baspri = 49920; ! Process base priority literal acmevms$_creprc_image = 49921; ! Image name (LOGINOUT) literal acmevms$_creprc_prcnam = 49922; ! Process name (blank) literal acmevms$_creprc_prvadr = 49923; ! Process privilege literal acmevms$_creprc_quota = 49924; ! Process quota list literal acmevms$_creprc_uic = 49925; ! UIC for detached process literal acmevms$_max_creprc_out = 49925; ! ! UAI-based output items ! ! These codes provide the same information returned by $GETUAI, ! but synchronized with the UAI data as used for authentication. ! ! Correspondence between these codes and those from UAIDEF is ! tested in the private part of module STARLET_WE_USE_ by arrays ! ENSURE_UAI_NO_BIGGER_THAN_ACMEVMS_UAI and also by the array ! ENSURE_ACMEVMS_UAI_NO_BIGGER_THAN_UAI. ! ! The UAI_BASE constant defined below, added to normal UAI$_ codes ! used for the $SETUAI and $GETUAI system services will produce ! the following values: ! literal acmevms$_min_uai_out = 50176; literal acmevms$_uai_rtype = 50176; ! UAF record type literal acmevms$_uai_version = 50177; ! UAF format version literal acmevms$_uai_usrdatoff = 50178; ! offset of counted string of user data literal acmevms$_uai_username = 50179; ! username literal acmevms$_uai_username_tag = 50180; ! tag to differentiate records literal acmevms$_uai_uic = 50181; ! user ID code literal acmevms$_uai_mem = 50182; ! member subfield literal acmevms$_uai_grp = 50183; ! group subfield literal acmevms$_uai_sub_id = 50184; ! user sub-identifier literal acmevms$_uai_parent_id = 50185; ! identifier of owner of this account literal acmevms$_uai_account = 50186; ! account name literal acmevms$_uai_owner = 50187; ! owner's name literal acmevms$_uai_defdev = 50188; ! default device literal acmevms$_uai_defdir = 50189; ! default directory literal acmevms$_uai_lgicmd = 50190; ! login command file literal acmevms$_uai_defcli = 50191; ! default command interpreter literal acmevms$_uai_clitables = 50192; ! user CLI tables literal acmevms$_uai_pwd = 50193; ! hashed password literal acmevms$_uai_pwd2 = 50194; ! second password literal acmevms$_uai_logfails = 50195; ! count of login failures literal acmevms$_uai_salt = 50196; ! random password salt literal acmevms$_uai_encrypt = 50197; ! primary password hash algorithm literal acmevms$_uai_encrypt2 = 50198; ! secondary password hash algorithm literal acmevms$_uai_pwd_length = 50199; ! minimum password length literal acmevms$_uai_expiration = 50200; ! expiration date for account literal acmevms$_uai_pwd_lifetime = 50201; ! password lifetime literal acmevms$_uai_pwd_date = 50202; ! date of password change literal acmevms$_uai_pwd2_date = 50203; ! date of 2nd password change literal acmevms$_uai_lastlogin_i = 50204; ! date of last interactive login literal acmevms$_uai_lastlogin_n = 50205; ! date of last non-interactive login literal acmevms$_uai_priv = 50206; ! process privilege vector literal acmevms$_uai_def_priv = 50207; ! default process privileges literal acmevms$_uai_min_class = 50208; ! minimum security class literal acmevms$_uai_max_class = 50209; ! maximum security class literal acmevms$_uai_flags = 50210; ! user flags longword literal acmevms$_uai_network_access_p = 50211; ! hourly network access, primary literal acmevms$_uai_network_access_s = 50212; ! hourly network access, secondary literal acmevms$_uai_batch_access_p = 50213; ! hourly batch access, primary literal acmevms$_uai_batch_access_s = 50214; ! hourly batch access, secondary literal acmevms$_uai_local_access_p = 50215; ! hourly local access, primary literal acmevms$_uai_local_access_s = 50216; ! hourly local access, secondary literal acmevms$_uai_dialup_access_p = 50217; ! hourly dialup access, primary literal acmevms$_uai_dialup_access_s = 50218; ! hourly dialup access, secondary literal acmevms$_uai_remote_access_p = 50219; ! hourly remote access, primary literal acmevms$_uai_remote_access_s = 50220; ! hourly remote access, secondary literal acmevms$_uai_primedays = 50221; ! bits representing primary days literal acmevms$_uai_pri = 50222; ! base process priority literal acmevms$_uai_quepri = 50223; ! maximum job queuing priority literal acmevms$_uai_maxjobs = 50224; ! maximum jobs for UIC allowed literal acmevms$_uai_maxacctjobs = 50225; ! maximum jobs for account allowed literal acmevms$_uai_maxdetach = 50226; ! maximum detached processes for UIC literal acmevms$_uai_prccnt = 50227; ! subprocess creation limit literal acmevms$_uai_biolm = 50228; ! buffered I/O limit literal acmevms$_uai_diolm = 50229; ! direct I/O limit literal acmevms$_uai_tqcnt = 50230; ! timer queue entry limit literal acmevms$_uai_astlm = 50231; ! AST queue limit literal acmevms$_uai_enqlm = 50232; ! enqueue limit literal acmevms$_uai_fillm = 50233; ! open file limit literal acmevms$_uai_shrfillm = 50234; ! shared file limit literal acmevms$_uai_wsquota = 50235; ! working set size quota literal acmevms$_uai_dfwscnt = 50236; ! default working set size literal acmevms$_uai_wsextent = 50237; ! working set size limit literal acmevms$_uai_pgflquota = 50238; ! page file quota literal acmevms$_uai_cputim = 50239; ! CPU time quota literal acmevms$_uai_bytlm = 50240; ! buffered I/O byte count limit literal acmevms$_uai_pbytlm = 50241; ! paged buffer I/O byte count limit literal acmevms$_uai_jtquota = 50242; ! job-wide logical name table creation quota literal acmevms$_uai_proxy_lim = 50243; ! number of proxies user can grant literal acmevms$_uai_proxies = 50244; ! number of proxies granted literal acmevms$_uai_account_lim = 50245; ! number of sub-accounts allowed literal acmevms$_uai_accounts = 50246; ! number of sub-accounts in use literal acmevms$_uai_user_data = 50247; ! user data area ! Next two codes not supported for output literal acmevms$_uai_password = 50248; ! plaintext primary password literal acmevms$_uai_password2 = 50249; ! plaintext secondary password ! Previous two codes not supported for output literal acmevms$_uai_def_class = 50250; ! default security classification literal acmevms$_uai_audit_flags = 50251; ! audit flags to be used when changing data literal acmevms$_max_uai_out = 50251; ! ! Output item codes subject to VTF-7 <-> UCS conversion ! literal acmevms$_min_general_out_ucs = 57856; literal acmevms$_class_name = 57856; ! name of the scheduler class literal acmevms$_max_general_out_ucs = 57856; ! + ! ! Bit mask types ! ! - ! ! Flags indicating CLI qualifiers were supplied ! ! Most of these are passed to the VMS ACME to possibly ! trigger (audited) rejection of the login attempt. ! literal acmevms$m_disk = %X'1'; literal acmevms$m_cli = %X'2'; literal acmevms$m_tables = %X'4'; literal acmevms$m_command = %X'8'; literal acmevms$m_connect = %X'10'; literal acmevms$m_new_password = %X'20'; literal acmevms$m_local_password = %X'40'; literal acmevms$S_cli_flags = 4; macro acmevms$v_disk = 0,0,1,0 %; ! /DISK= macro acmevms$v_cli = 0,1,1,0 %; ! /CLI= macro acmevms$v_tables = 0,2,1,0 %; ! /TABLES= macro acmevms$v_command = 0,3,1,0 %; ! /COMMAND= macro acmevms$v_connect = 0,4,1,0 %; ! /CONNECT[=] macro acmevms$v_new_password = 0,5,1,0 %; ! /NEW_PASSWORD macro acmevms$v_local_password = 0,6,1,0 %; ! /LOCAL_PASSWORD literal acmevms$k_length = 4; ! + ! ! Miscellaneous constants ! ! - ! Authentication mechanism for TNT$SERVER literal acmevms$k_auth_mech_argus = 13860864; ! Only for TNT$SERVER ! Base to which UAI$_ codes can be added for use in SYS$ACM[W] literal acmevms$k_uai_base = 50175; ! Item Code Base ! Maximum length (in characters) of a Mapped VMS Username literal acmevms$k_maxchar_vms_username = 32; ! in characters !*** MODULE $ACRDEF *** ! + ! ACRDEF - ACCOUNTING RECORD DEFINITIONS ! ! ********************************************************************** ! NOTE: IF ANY FIELDS CHANGE, A NEW VERSION NUMBER MUST BE ADDED AND * ! "ACR$K_CURVER" EQUATED TO IT. * ! ********************************************************************** ! ! - ! RECORD/PACKET VERSIONS (ACR$V_VERSION) literal ACR$K_VERSION2 = 0; ! VMS VERSION 2 ACCOUNTING FORMAT literal ACR$K_VERSION3T = 1; ! VMS VERSION 3 FIELD TEST literal ACR$K_VERSION3 = 2; ! VMS VERSION 3 ACCOUNTING FORMAT literal ACR$K_VERSION4 = 3; ! VMS VERSION 4 ACCOUNTING FORMAT literal ACR$K_CURVER = 3; ! CURRENT FORMAT VERSION NUMBER literal ACR$M_PACKET = %X'1'; literal ACR$M_TYPE = %X'FE'; literal ACR$M_SUBTYPE = %X'F00'; literal ACR$M_VERSION = %X'7000'; literal ACR$M_CUSTOMER = %X'8000'; literal ACR$K_PRCDEL = 1; ! PROCESS DELETE literal ACR$K_PRCPUR = 2; ! PROCESS PURGE literal ACR$K_IMGDEL = 3; ! IMAGE DELETE literal ACR$K_IMGPUR = 4; ! IMAGE PURGE literal ACR$K_SYSINIT = 5; ! SYSTEM INITIALIZATION literal ACR$K_SETTIME = 6; ! SET SYSTEM TIME literal ACR$K_LOGFAIL = 7; ! LOGIN VALIDATION FAILURE literal ACR$K_PRINT = 8; ! PRINT JOB literal ACR$K_USER = 9; ! USER SUPPLIED DATA literal ACR$K_ENABLE = 10; ! ACC. MANG. FUNCTION ENABLE literal ACR$K_DISABLE = 11; ! ACC. MANG. FUNCTION DISABLE literal ACR$K_ALTACM = 12; ! DECLARE ALTERNATE ACC. MANG. literal ACR$K_FILE_FL = 13; ! ACCOUNTING FILE - FORWARD LINK literal ACR$K_FILE_BL = 14; ! ACCOUNTING FILE - BACKWARD LINK ! RECORD SUBTYPE (ACR$V_SUBTYPE) CONSTANTS literal ACR$K_INTERACTIVE = 1; ! INTERACTIVE PROCESS literal ACR$K_SUBPROCESS = 2; ! SUBPROCESS literal ACR$K_DETACHED = 3; ! DETACHED PROCESS literal ACR$K_BATCH = 4; ! BATCH PROCESS literal ACR$K_NETWORK = 5; ! NETWORK PROCESS ! PACKET TYPE (ACR$V_TYPE) CONSTANTS literal ACR$K_ID = 1; ! IDENTIFICATION PACKET literal ACR$K_RESOURCE = 2; ! RESOURCE USAGE PACKET literal ACR$K_IMAGENAME = 3; ! IMAGENAME PACKET literal ACR$K_FILENAME = 4; ! FILENAME PACKET literal ACR$K_USER_DATA = 5; ! USER DATA PACKET literal ACR$S_ACRDEF = 4; macro ACR$W_TYPE = 0,0,16,0 %; ! RECORD/PACKET TYPE macro ACR$V_PACKET = 0,0,1,0 %; ! RECORD(0)/PACKET(1) macro ACR$V_TYPE = 0,1,7,0 %; literal ACR$S_TYPE = 7; ! RECORD/PACKET TYPE macro ACR$V_SUBTYPE = 0,8,4,0 %; literal ACR$S_SUBTYPE = 4; ! RECORD/PACKET SUBTYPE macro ACR$V_VERSION = 0,12,3,0 %; literal ACR$S_VERSION = 3; ! RECORD/PACKET VERSION NUMBER macro ACR$V_CUSTOMER = 0,15,1,0 %; ! DIGITAL(0)/CUSTOMER(1) ! RECORD TYPE (ACR$V_TYPE) CONSTANTS macro ACR$W_LENGTH = 2,0,16,0 %; ! RECORD OR PACKET LENGTH ! ! RECORD HEADER ! literal ACR$K_HDRLEN = 12; ! RECORD HEADER LENGTH literal ACR$C_HDRLEN = 12; ! RECORD HEADER LENGTH ! literal ACR$S_ACRDEF1 = 12; macro ACR$Q_SYSTIME = 4,0,0,0 %; literal ACR$S_SYSTIME = 8; ! EVENT SYSTEM TIME ! IDENTIFICATION PACKET ! literal ACR$M_FULLNAME = %X'1'; literal ACR$M_UIDGID = %X'2'; literal ACR$M_FILL_1 = %X'FC'; literal ACR$K_IDVAR = 58; ! BEGINNING OF VARIABLE STORAGE AREA literal ACR$C_IDVAR = 58; ! BEGINNING OF VARIABLE STORAGE AREA ! literal ACR$S_ACRDEF2 = 58; macro ACR$L_PID = 4,0,32,0 %; ! PROCESS ID macro ACR$L_OWNER = 8,0,32,0 %; ! OWNER PROCES ID macro ACR$L_UIC = 12,0,32,0 %; ! PROCESS UIC macro ACR$W_MEM = 12,0,16,0 %; ! MEMBER UIC macro ACR$W_GRP = 14,0,16,0 %; ! GROUP UIC macro ACR$Q_PRIV = 16,0,0,0 %; literal ACR$S_PRIV = 8; ! PROCESS PRIV macro ACR$B_PRI = 24,0,8,0 %; ! PROCESS PRIORITY macro ACR$B_IDFLGS = 25,0,8,0 %; ! FLAGS BIT MASK macro ACR$V_FULLNAME = 25,0,1,0 %; ! NOT PRESENT (0)/PRESENT(1) macro ACR$V_UIDGID = 25,1,1,0 %; ! NOT PRESENT (0)/PRESENT(1) macro ACR$V_FILL_1 = 25,2,6,0 %; literal ACR$S_FILL_1 = 6; ! SPARE BITS macro ACR$W_USERNAME = 26,0,16,0 %; ! USERNAME OFFSET macro ACR$W_ACCOUNT = 28,0,16,0 %; ! ACCOUNT NAME OFFSET macro ACR$W_NODENAME = 30,0,16,0 %; ! NODE NAME OFFSET macro ACR$W_TERMINAL = 32,0,16,0 %; ! TERMINAL NAME OFFSET macro ACR$W_JOBNAME = 34,0,16,0 %; ! JOB NAME OFFSET macro ACR$L_JOBID = 36,0,32,0 %; ! JOB ID macro ACR$W_QUEUE = 40,0,16,0 %; ! QUEUE NAME OFFSET macro ACR$W_NODEADDR = 42,0,16,0 %; ! REMOTE NODE ADDRESS macro ACR$W_REMOTEID = 44,0,16,0 %; ! REMOTE ID OFFSET macro ACR$W_FULLADDR = 46,0,16,0 %; ! REMOTE PHASE V ADDRESS macro ACR$W_FULLNAME = 48,0,16,0 %; ! REMOTE PHASE V FULLNAME macro ACR$L_POSIX_UID = 50,0,32,0 %; ! POSIX UID macro ACR$L_POSIX_GID = 54,0,32,0 %; ! POSIX GID ! RESOURCE PACKET ! literal ACR$S_ACRDEF3 = 56; macro ACR$Q_LOGIN = 4,0,0,0 %; literal ACR$S_LOGIN = 8; ! PROCESS/IMAGE START TIME macro ACR$L_STATUS = 12,0,32,0 %; ! PROCESS/IMAGE FINAL STATUS macro ACR$L_IMGCNT = 16,0,32,0 %; ! IMAGE EXECUTION COUNT/SEQUENCE NUMBER macro ACR$L_CPUTIME = 20,0,32,0 %; ! PROCESS/IMAGE CPU TIME macro ACR$L_FAULTS = 24,0,32,0 %; ! PROCESS/IMAGE PAGE FAULT COUNT macro ACR$L_FAULTIO = 28,0,32,0 %; ! PROCESS/IMAGE PAGE FAULT I/O COUNT macro ACR$L_WSPEAK = 32,0,32,0 %; ! PROCESS/IMAGE WORKING SET PEAK macro ACR$L_PAGEFL = 36,0,32,0 %; ! PROCESS/IMAGE PEAK PAGE FILE USAGE macro ACR$L_DIOCNT = 40,0,32,0 %; ! PROCESS/IMAGE DIRECT I/O COUNT macro ACR$L_BIOCNT = 44,0,32,0 %; ! PROCESS/IMAGE BUFFERED I/O COUNT macro ACR$L_VOLUMES = 48,0,32,0 %; ! PROCESS/IMAGE VOLUME MOUNT COUNT macro ACR$L_VP_CPUTIME = 52,0,32,0 %; ! PROCESS/IMAGE VECTOR CPU TIME ! ! IMAGENAME PACKET ! literal ACR$S_ACRDEF4 = 260; macro ACR$T_IMAGENAME = 4,0,0,0 %; literal ACR$S_IMAGENAME = 256; ! IMAGENAME ! ! PRINT RESOURCE PACKET ! literal ACR$S_ACRDEF5 = 40; macro ACR$L_PRINTSTS = 4,0,32,0 %; ! JOB STATUS macro ACR$Q_QUETIME = 8,0,0,0 %; literal ACR$S_QUETIME = 8; ! TIME JOB WAS QUEUED macro ACR$Q_BEGTIME = 16,0,0,0 %; literal ACR$S_BEGTIME = 8; ! TIME JOB WAS BEGUN macro ACR$L_SYMCPUTIM = 24,0,32,0 %; ! SYMBIONT CPU TIME macro ACR$L_PAGECNT = 28,0,32,0 %; ! TOTAL PAGES PRINTED macro ACR$L_QIOCNT = 32,0,32,0 %; ! TOTAL QIOS ISSUED macro ACR$L_GETCNT = 36,0,32,0 %; ! TOTAL GETS ISSUED ! ! FILENAME PACKET ! literal ACR$S_ACRDEF6 = 260; macro ACR$T_FILENAME = 4,0,0,0 %; literal ACR$S_FILENAME = 256; ! FILENAME ! ! USER DATA PACKET ! literal ACR$S_ACRDEF7 = 260; macro ACR$T_USER_DATA = 4,0,0,0 %; literal ACR$S_USER_DATA = 256; ! USER DATA !*** MODULE $AFRDEF *** literal AFR$K_USER_LENGTH = 16; ! Length of user entry literal AFR$C_USER_LENGTH = 16; ! Length of user entry literal AFR$K_VMS_LENGTH = 24; ! Length of VMS entry literal AFR$C_VMS_LENGTH = 24; ! Length of VMS entry literal AFR$K_EXTENDED_LENGTH = 296; ! Extended length literal AFR$C_EXTENDED_LENGTH = 296; ! Extended length literal AFR$C_UNINITIALIZED = 0; literal AFR$C_BUFFERED = 1; literal AFR$C_EXCEPTION = 2; ! Values passed to start system service literal AFR$S_AFRDEF = 296; macro AFR$Q_FAULT_PC = 0,0,0,0 %; literal AFR$S_FAULT_PC = 8; ! PC of alignment fault macro AFR$R_PC_DATA_LONGWORDS = 0,0,0,0 %; literal AFR$S_PC_DATA_LONGWORDS = 8; macro AFR$L_FAULT_PC_L = 0,0,32,0 %; macro AFR$L_FAULT_PC_H = 4,0,32,0 %; macro AFR$Q_FAULT_VA = 8,0,0,0 %; literal AFR$S_FAULT_VA = 8; ! Unaligned virtual address macro AFR$R_VA_DATA_LONGWORDS = 8,0,0,0 %; literal AFR$S_VA_DATA_LONGWORDS = 8; macro AFR$L_FAULT_VA_L = 8,0,32,0 %; macro AFR$L_FAULT_VA_H = 12,0,32,0 %; macro AFR$Q_RESERVED = 16,0,0,0 %; literal AFR$S_RESERVED = 8; ! Reserved for VMS macro AFR$R_RESERVED_LONGWORDS = 16,0,0,0 %; literal AFR$S_RESERVED_LONGWORDS = 8; macro AFR$L_RESERVED_L = 16,0,32,0 %; macro AFR$L_RESERVED_H = 20,0,32,0 %; macro AFR$T_IMAGE_NAME = 24,0,0,0 %; literal AFR$S_IMAGE_NAME = 256; ! Image name macro AFR$T_USER_NAME = 280,0,0,0 %; literal AFR$S_USER_NAME = 16; ! User name literal AFR$M_ENABLED = %X'1'; literal AFR$M_TEMP_ENABLED = %X'2'; literal AFR$M_PERM_ENABLED = %X'4'; literal AFR$M_DISABLED = 0; literal AFR$M_USER_INFO = %X'8'; literal AFR$S_AFREDEF = 1; macro AFR$V_ENABLED = 0,0,1,0 %; ! Enable bit macro AFR$V_TEMP_ENABLED = 0,1,1,0 %; ! TRUE if enabled image by image macro AFR$V_PERM_ENABLED = 0,2,1,0 %; ! TRUE if permanently enabled macro AFR$V_USER_INFO = 0,3,1,0 %; ! If set, user info is saved literal AME$M_KERNEL_MODE = %X'1'; literal AME$M_EXEC_MODE = %X'2'; literal AME$M_SUPER_MODE = %X'4'; literal AME$M_USER_MODE = %X'8'; literal AME$M_USER_VA = %X'10'; literal AME$M_SYSTEM_VA = %X'20'; literal AME$M_USER_PC = %X'40'; literal AME$M_SYSTEM_PC = %X'80'; literal AME$M_USER_VA_P0 = %X'100'; literal AME$M_USER_VA_P1 = %X'200'; literal AME$M_USER_VA_P2 = %X'400'; literal AME$C_SIZE = 4; ! Length in bytes for mask literal AME$K_SIZE = 4; ! Length in bytes for mask literal AME$S_AMEDEF = 2; macro AME$V_KERNEL_MODE = 0,0,1,0 %; macro AME$V_EXEC_MODE = 0,1,1,0 %; macro AME$V_SUPER_MODE = 0,2,1,0 %; macro AME$V_USER_MODE = 0,3,1,0 %; macro AME$V_USER_VA = 0,4,1,0 %; macro AME$V_SYSTEM_VA = 0,5,1,0 %; macro AME$V_USER_PC = 0,6,1,0 %; macro AME$V_SYSTEM_PC = 0,7,1,0 %; macro AME$V_USER_VA_P0 = 0,8,1,0 %; macro AME$V_USER_VA_P1 = 0,9,1,0 %; macro AME$V_USER_VA_P2 = 0,10,1,0 %; ! ! AFLDEF defines which region a VA lies in ! literal AFL$M_P0_VA = %X'1'; literal AFL$M_P1_VA = %X'2'; literal AFL$M_P2_VA = %X'4'; literal AFL$M_S0S1_VA = %X'8'; literal AFL$M_S2_VA = %X'10'; literal AFL$M_PROCESS_VA = %X'20'; literal AFL$M_SYSTEM_VA = %X'40'; literal AFL$S_AFLDEF = 4; ! Alignment fault location macro AFL$L_VA_LOC = 0,0,32,0 %; macro AFL$R_VA_LOC_BITDEFS = 0,0,8,0 %; literal AFL$S_VA_LOC_BITDEFS = 1; macro AFL$V_P0_VA = 0,0,1,0 %; ! Address is in P0 space macro AFL$V_P1_VA = 0,1,1,0 %; ! Address is in P1 space macro AFL$V_P2_VA = 0,2,1,0 %; ! Address is in P2 space macro AFL$V_S0S1_VA = 0,3,1,0 %; ! Address is in S0 or S1 space macro AFL$V_S2_VA = 0,4,1,0 %; ! Address is in S2 space macro AFL$V_PROCESS_VA = 0,5,1,0 %; ! Address is in P0,P1,or P2 (process space) macro AFL$V_SYSTEM_VA = 0,6,1,0 %; ! Address is in S0,S1,or S2 (system space) !*** MODULE $AGNDEF *** ! + ! $ASSIGN FLAGS bit definitions ! - literal AGN$M_READONLY = %X'1'; literal AGN$M_WRITEONLY = %X'2'; literal AGN$M_CLONE = %X'4'; literal AGN$S_AGNDEF = 4; macro AGN$V_READONLY = 0,0,1,0 %; ! Channel to be assigned to device is READ ONLY. macro AGN$V_WRITEONLY = 0,1,1,0 %; ! Channel to be assigned to device is WRITE ONLY. macro AGN$V_CLONE = 0,2,1,0 %; ! Channel will be cloned by POSIX fork(). !*** MODULE $ALPHADEF *** ! ! Not all of what you see here was built, shipped and/or announced. ! So-called Whitebox (Microsoft Windows-Only) systems are not listed. ! Various systems listed here are not supported by OpenVMS Alpha. ! literal ALPHA$K_NOT_A_VAX = 1024; ! A pseudo-SMM sometimes seen literal ALPHA$K_MIN_ALPHA = 1024; ! The smallest architecturally-permitted Alpha SMM literal ALPHA$K_MIN_SMM = 1025; ! The smallest Alpha SMM literal ALPHA$K_ID_BASE = 1025; literal ALPHA$K_A7000_610 = 1025; ! DEC 7000 Model 610 literal ALPHA$K_A7000_620 = 1026; ! DEC 7000 Model 620 literal ALPHA$K_A7000_630 = 1027; ! DEC 7000 Model 630 literal ALPHA$K_A7000_640 = 1028; ! DEC 7000 Model 640 literal ALPHA$K_A10000_610 = 1029; ! DEC 10000 Model 610 literal ALPHA$K_A10000_620 = 1030; ! DEC 10000 Model 620 literal ALPHA$K_A10000_630 = 1031; ! DEC 10000 Model 630 literal ALPHA$K_A10000_640 = 1032; ! DEC 10000 Model 640 literal ALPHA$K_A3000_500W = 1033; ! DEC 3000 Model 500 literal ALPHA$K_A3000_500S = 1034; ! DEC 3000 Model 500S literal ALPHA$K_A3000_400W = 1035; ! DEC 3000 Model 400 literal ALPHA$K_A3000_400S = 1036; ! DEC 3000 Model 400S literal ALPHA$K_A4000_610 = 1037; ! DEC 4000 Model 610 literal ALPHA$K_A4000_620 = 1038; ! DEC 4000 Model 620 literal ALPHA$K_A4000_810 = 1039; literal ALPHA$K_A4000_820 = 1040; literal ALPHA$K_AADU = 1041; literal ALPHA$K_A3000_300 = 1042; ! DEC 3000 Model 300 literal ALPHA$K_A3000_300L = 1043; ! DEC 3000 Model 300L literal ALPHA$K_A2000_300 = 1044; ! DEC 2000 Model 300 literal ALPHA$K_A2000_300S = 1045; ! DEC 2000 Model 300S literal ALPHA$K_A7000_650 = 1046; ! DEC 7000 Model 650 literal ALPHA$K_A7000_660 = 1047; ! DEC 7000 Model 660 literal ALPHA$K_A10000_650 = 1048; ! DEC 10000 Model 650 literal ALPHA$K_A10000_660 = 1049; ! DEC 10000 Model 660 literal ALPHA$K_A4000_630 = 1050; literal ALPHA$K_A4000_640 = 1051; literal ALPHA$K_A4000_650 = 1052; literal ALPHA$K_A4000_660 = 1053; literal ALPHA$K_A2000_200 = 1054; literal ALPHA$K_A2000_200S = 1055; literal ALPHA$K_A3000_500X = 1056; ! DEC 3000 Model 500X ! ! The following Alpha System entries have been added to this file for REFERENCE ONLY. ! Please note that the Alpha system model name string and System Marketing Model ! value (SMM) are now passed by the SRM console to the Operating System through a ! structure called the HWRPB (hardware restart parameter block); by the Dynamic ! System Recognition (DSR) support that is present within all but the most ancient ! of Alpha systems and the correspondingly ancient versions of the SRM console. ! ! The following symbol-naming convention was derived from the Alpha System Reference ! Manual (SRM) Registry of Alpha Platforms, Systems, and Processors: ! ! ASa1a2b1b2c1c2d1d2e1e2 ! ! AS = Alpha System ! a1a2 = Family ID (2 digit hex value), Example: 0C (TurboLaser family) ! b1b2 = Processor Type (2 digit hex value), Example: 02 (EV4) , 05 (EV5), 06 (EV45), 07(EV56) ! c1c2 = Member ID (2 digit hex value), Example: 04 (Rack Mount) ! d1d2 = SRM Variant (2 digit hex value) for each Family ID/Processor Type/Member ID. Used for ! differentiating between same platforms with different chip speed (MHz) and/or cache ! size and/or expansion capabilities and/or AlphaStation/AlphaServer variants. In ! specific cases, there is the potential for the CPU count to spill into this field. ! e1e2 = Number of CPUs (2 digit hex value), Example: 0A (10 cpus), or maximum number of CPUs ! literal ALPHA$K_AS0202020001 = 1057; ! DEC 4000 Model 710 literal ALPHA$K_AS0202020002 = 1058; ! DEC 4000 Model 720 literal ALPHA$K_AS0902020001 = 1059; ! AlphaServer 2100 4/200 (1cpu) literal ALPHA$K_AS0902020002 = 1060; ! AlphaServer 2100 4/200 (2cpu) literal ALPHA$K_AS0902020003 = 1061; ! AlphaServer 2100 4/200 (3cpu) literal ALPHA$K_AS0902020004 = 1062; ! AlphaServer 2100 4/200 (4cpu) literal ALPHA$K_AS0402040001 = 1063; ! DEC 3000 Model 800 literal ALPHA$K_AS0402060001 = 1064; ! DEC 3000 Model 600 literal ALPHA$K_AS0602010001 = 1065; ! DEC 2000 Model 500 literal ALPHA$K_AS0B04000001 = 1067; ! DECAXPpci33 literal ALPHA$K_AS0702020001 = 1068; ! DEC 3000 Model 300X literal ALPHA$K_AS0702030001 = 1069; ! DEC 3000 Model 300LX literal ALPHA$K_AS0406070001 = 1070; ! DEC 3000 Model 700 literal ALPHA$K_AS0406080001 = 1071; ! DEC 3000 Model 900 literal ALPHA$K_AS0706040001 = 1072; ! DEC 3000 series literal ALPHA$K_AS0706050001 = 1073; ! DEC 3000 series literal ALPHA$K_AS0306030001 = 1074; ! DEC 7000 Model 710 literal ALPHA$K_AS0306030002 = 1075; ! DEC 7000 Model 720 literal ALPHA$K_AS0306030003 = 1076; ! DEC 7000 Model 730 literal ALPHA$K_AS0306030004 = 1077; ! DEC 7000 Model 740 literal ALPHA$K_AS0306030005 = 1078; ! DEC 7000 Model 750 literal ALPHA$K_AS0306030006 = 1079; ! DEC 7000 Model 760 literal ALPHA$K_AS0D02010001 = 1086; ! AlphaStation 400 4/166 literal ALPHA$K_AS0D02020001 = 1087; ! AlphaStation 200 4/166 literal ALPHA$K_AS0D02030001 = 1088; ! AlphaStation 200 4/133 literal ALPHA$K_AS0F05010001 = 1089; ! AlphaStation 600 5/300 literal ALPHA$K_AS1102010001 = 1090; ! AlphaServer 1000 4/200 literal ALPHA$K_AS1106020001 = 1091; ! AlphaServer 1000 4/233 literal ALPHA$K_AS0C05000001 = 1093; ! AlphaServer 8200 5/300 (1cpu) literal ALPHA$K_AS0C05000002 = 1094; ! AlphaServer 8200 5/300 (2cpu) literal ALPHA$K_AS0C05000003 = 1095; ! AlphaServer 8200 5/300 (3cpu) literal ALPHA$K_AS0C05000004 = 1096; ! AlphaServer 8200 5/300 (4cpu) literal ALPHA$K_AS0C05000005 = 1097; ! AlphaServer 8200 5/300 (5cpu) literal ALPHA$K_AS0C05000006 = 1098; ! AlphaServer 8200 5/300 (6cpu) literal ALPHA$K_AS0C05010001 = 1099; ! AlphaServer 8400 5/300 (1cpu) literal ALPHA$K_AS0C05010002 = 1100; ! AlphaServer 8400 5/300 (2cpu) literal ALPHA$K_AS0C05010003 = 1101; ! AlphaServer 8400 5/300 (3cpu) literal ALPHA$K_AS0C05010004 = 1102; ! AlphaServer 8400 5/300 (4cpu) literal ALPHA$K_AS0C05010005 = 1103; ! AlphaServer 8400 5/300 (5cpu) literal ALPHA$K_AS0C05010006 = 1104; ! AlphaServer 8400 5/300 (6cpu) literal ALPHA$K_AS0C05010007 = 1105; ! AlphaServer 8400 5/300 (7cpu) literal ALPHA$K_AS0C05010008 = 1106; ! AlphaServer 8400 5/300 (8cpu) literal ALPHA$K_AS0C05010009 = 1107; ! AlphaServer 8400 5/300 (9cpu) literal ALPHA$K_AS0C0501000A = 1108; ! AlphaServer 8400 5/300 (10cpu) literal ALPHA$K_AS0C0501000B = 1109; ! AlphaServer 8400 5/300 (11cpu) literal ALPHA$K_AS0C0501000C = 1110; ! AlphaServer 8400 5/300 (12cpu) literal ALPHA$K_AS0906020001 = 1115; ! AlphaServer 2100 4/275 (1cpu) literal ALPHA$K_AS0906020002 = 1116; ! AlphaServer 2100 4/275 (2cpu) literal ALPHA$K_AS0906020003 = 1117; ! AlphaServer 2100 4/275 (3cpu) literal ALPHA$K_AS0906020004 = 1118; ! AlphaServer 2100 4/275 (4cpu) literal ALPHA$K_AS0905020001 = 1119; ! AlphaServer 2100 5/250 (1cpu) literal ALPHA$K_AS0905020002 = 1120; ! AlphaServer 2100 5/250 (2cpu) literal ALPHA$K_AS0905020003 = 1121; ! AlphaServer 2100 5/250 (3cpu) literal ALPHA$K_AS0905020004 = 1122; ! AlphaServer 2100 5/250 (4cpu) literal ALPHA$K_AS0902010001 = 1123; ! AlphaServer 2000 4/200 (1cpu) literal ALPHA$K_AS0902010002 = 1124; ! AlphaServer 2000 4/200 (2cpu) literal ALPHA$K_AS0902010003 = 1125; ! AlphaServer 2000 4/200 (3cpu) literal ALPHA$K_AS0902010004 = 1126; ! AlphaServer 2000 4/200 (4cpu) literal ALPHA$K_AS0906010001 = 1127; ! AlphaServer 2000 4/275 (1cpu) literal ALPHA$K_AS0906010002 = 1128; ! AlphaServer 2000 4/275 (2cpu) literal ALPHA$K_AS0906010003 = 1129; ! AlphaServer 2000 4/275 (3cpu) literal ALPHA$K_AS0906010004 = 1130; ! AlphaServer 2000 4/275 (4cpu) literal ALPHA$K_AS0905010001 = 1131; ! AlphaServer 2000 5/250 (1cpu) literal ALPHA$K_AS0905010002 = 1132; ! AlphaServer 2000 5/250 (2cpu) literal ALPHA$K_AS0905010003 = 1133; ! AlphaServer 2000 5/250 (3cpu) literal ALPHA$K_AS0905010004 = 1134; ! AlphaServer 2000 5/250 (4cpu) literal ALPHA$K_AS0902030001 = 1135; ! AlphaServer 2100 4/200 (1cpu) (rack) literal ALPHA$K_AS0902030002 = 1136; ! AlphaServer 2100 4/200 (2cpu) (rack) literal ALPHA$K_AS0902030003 = 1137; ! AlphaServer 2100 4/200 (3cpu) (rack) literal ALPHA$K_AS0902030004 = 1138; ! AlphaServer 2100 4/200 (4cpu) (rack) literal ALPHA$K_AS0906030001 = 1139; ! AlphaServer 2100 4/275 (1cpu) (rack) literal ALPHA$K_AS0906030002 = 1140; ! AlphaServer 2100 4/275 (2cpu) (rack) literal ALPHA$K_AS0906030003 = 1141; ! AlphaServer 2100 4/275 (3cpu) (rack) literal ALPHA$K_AS0906030004 = 1142; ! AlphaServer 2100 4/275 (4cpu) (rack) literal ALPHA$K_AS0905030001 = 1143; ! AlphaServer 2100 5/250 (1cpu) (rack) literal ALPHA$K_AS0905030002 = 1144; ! AlphaServer 2100 5/250 (2cpu) (rack) literal ALPHA$K_AS0905030003 = 1145; ! AlphaServer 2100 5/250 (3cpu) (rack) literal ALPHA$K_AS0905030004 = 1146; ! AlphaServer 2100 5/250 (4cpu) (rack) literal ALPHA$K_AS0D06040001 = 1151; ! AlphaStation 200 4/233 literal ALPHA$K_AS0D06050001 = 1152; ! AlphaStation 400 4/233 literal ALPHA$K_AS0D06060001 = 1153; ! AlphaStation 400 4/266 (2M) literal ALPHA$K_AS0D06070001 = 1154; ! AlphaStation 400 4/266 (512kb) literal ALPHA$K_AS0D06080001 = 1155; literal ALPHA$K_AS0D02090001 = 1156; ! AlphaStation 200 4/100 literal ALPHA$K_AS0D060A0001 = 1157; ! AlphaStation 200 4/300 literal ALPHA$K_AS0D060B0001 = 1158; ! AlphaStation 200 4/266, 512KB literal ALPHA$K_AS0D060C0001 = 1159; literal ALPHA$K_AS0D060D0001 = 1160; ! AlphaStation 400 4/300 literal ALPHA$K_AS0F05020001 = 1161; ! AlphaStation 600 5/266 literal ALPHA$K_AS1706010001 = 1167; literal ALPHA$K_AS0906010101 = 1171; ! AlphaServer 2000 4/233 (1cpu) literal ALPHA$K_AS0906010102 = 1172; ! AlphaServer 2000 4/233 (2cpu) literal ALPHA$K_AS0906010103 = 1173; ! AlphaServer 2000 4/233 (3cpu) literal ALPHA$K_AS0906010104 = 1174; ! AlphaServer 2000 4/233 (4cpu) literal ALPHA$K_AS0905010101 = 1175; ! AlphaServer 2000 5/300 (1cpu) literal ALPHA$K_AS0905010102 = 1176; ! AlphaServer 2000 5/300 (2cpu) literal ALPHA$K_AS0905010103 = 1177; ! AlphaServer 2000 5/300 (3cpu) literal ALPHA$K_AS0905010104 = 1178; ! AlphaServer 2000 5/300 (4cpu) literal ALPHA$K_AS0906020101 = 1179; ! AlphaServer 2100 4/233 (1cpu) literal ALPHA$K_AS0906020102 = 1180; ! AlphaServer 2100 4/233 (2cpu) literal ALPHA$K_AS0906020103 = 1181; ! AlphaServer 2100 4/233 (3cpu) literal ALPHA$K_AS0906020104 = 1182; ! AlphaServer 2100 4/233 (4cpu) literal ALPHA$K_AS0905020101 = 1183; ! AlphaServer 2100 5/300 (1cpu) literal ALPHA$K_AS0905020102 = 1184; ! AlphaServer 2100 5/300 (2cpu) literal ALPHA$K_AS0905020103 = 1185; ! AlphaServer 2100 5/300 (3cpu) literal ALPHA$K_AS0905020104 = 1186; ! AlphaServer 2100 5/300 (4cpu) literal ALPHA$K_AS0906030101 = 1187; ! AlphaServer 2100 4/233 (1cpu) (rack) literal ALPHA$K_AS0906030102 = 1188; ! AlphaServer 2100 4/233 (2cpu) (rack) literal ALPHA$K_AS0906030103 = 1189; ! AlphaServer 2100 4/233 (3cpu) (rack) literal ALPHA$K_AS0906030104 = 1190; ! AlphaServer 2100 4/233 (4cpu) (rack) literal ALPHA$K_AS0905030101 = 1191; ! AlphaServer 2100 5/300 (1cpu) (rack) literal ALPHA$K_AS0905030102 = 1192; ! AlphaServer 2100 5/300 (2cpu) (rack) literal ALPHA$K_AS0905030103 = 1193; ! AlphaServer 2100 5/300 (3cpu) (rack) literal ALPHA$K_AS0905030104 = 1194; ! AlphaServer 2100 5/300 (4cpu) (rack) literal ALPHA$K_AS1806010001 = 1195; ! AlphaServer 2000A 4/233 (1cpu) literal ALPHA$K_AS1806010002 = 1196; ! AlphaServer 2000A 4/233 (2cpu) literal ALPHA$K_AS1806010003 = 1197; ! AlphaServer 2000A 4/233 (3cpu) literal ALPHA$K_AS1806010004 = 1198; ! AlphaServer 2000A 4/233 (4cpu) literal ALPHA$K_AS1806010101 = 1199; ! AlphaServer 2000A 4/275 (1cpu) literal ALPHA$K_AS1806010102 = 1200; ! AlphaServer 2000A 4/275 (2cpu) literal ALPHA$K_AS1806010103 = 1201; ! AlphaServer 2000A 4/275 (3cpu) literal ALPHA$K_AS1806010104 = 1202; ! AlphaServer 2000A 4/275 (4cpu) literal ALPHA$K_AS1805010001 = 1203; ! AlphaServer 2000A 5/250 (1cpu) literal ALPHA$K_AS1805010002 = 1204; ! AlphaServer 2000A 5/250 (2cpu) literal ALPHA$K_AS1805010003 = 1205; ! AlphaServer 2000A 5/250 (3cpu) literal ALPHA$K_AS1805010004 = 1206; ! AlphaServer 2000A 5/250 (4cpu) literal ALPHA$K_AS1805010101 = 1207; ! AlphaServer 2000A 5/300 (1cpu) literal ALPHA$K_AS1805010102 = 1208; ! AlphaServer 2000A 5/300 (2cpu) literal ALPHA$K_AS1805010103 = 1209; ! AlphaServer 2000A 5/300 (3cpu) literal ALPHA$K_AS1805010104 = 1210; ! AlphaServer 2000A 5/300 (4cpu) literal ALPHA$K_AS1806020001 = 1211; ! AlphaServer 2100A 4/233 (1cpu) literal ALPHA$K_AS1806020002 = 1212; ! AlphaServer 2100A 4/233 (2cpu) literal ALPHA$K_AS1806020003 = 1213; ! AlphaServer 2100A 4/233 (3cpu) literal ALPHA$K_AS1806020004 = 1214; ! AlphaServer 2100A 4/233 (4cpu) literal ALPHA$K_AS1806020101 = 1215; ! AlphaServer 2100A 4/275 (1cpu) literal ALPHA$K_AS1806020102 = 1216; ! AlphaServer 2100A 4/275 (2cpu) literal ALPHA$K_AS1806020103 = 1217; ! AlphaServer 2100A 4/275 (3cpu) literal ALPHA$K_AS1806020104 = 1218; ! AlphaServer 2100A 4/275 (4cpu) literal ALPHA$K_AS1805020001 = 1219; ! AlphaServer 2100A 5/250 (1cpu) literal ALPHA$K_AS1805020002 = 1220; ! AlphaServer 2100A 5/250 (2cpu) literal ALPHA$K_AS1805020003 = 1221; ! AlphaServer 2100A 5/250 (3cpu) literal ALPHA$K_AS1805020004 = 1222; ! AlphaServer 2100A 5/250 (4cpu) literal ALPHA$K_AS1805020101 = 1223; ! AlphaServer 2100A 5/300 (1cpu) literal ALPHA$K_AS1805020102 = 1224; ! AlphaServer 2100A 5/300 (2cpu) literal ALPHA$K_AS1805020103 = 1225; ! AlphaServer 2100A 5/300 (3cpu) literal ALPHA$K_AS1805020104 = 1226; ! AlphaServer 2100A 5/300 (4cpu) literal ALPHA$K_AS1806030001 = 1227; ! AlphaServer 2100A 4/233 (1cpu) (rack) literal ALPHA$K_AS1806030002 = 1228; ! AlphaServer 2100A 4/233 (2cpu) (rack) literal ALPHA$K_AS1806030003 = 1229; ! AlphaServer 2100A 4/233 (3cpu) (rack) literal ALPHA$K_AS1806030004 = 1230; ! AlphaServer 2100A 4/233 (4cpu) (rack) literal ALPHA$K_AS1806030101 = 1231; ! AlphaServer 2100A 4/275 (1cpu) (rack) literal ALPHA$K_AS1806030102 = 1232; ! AlphaServer 2100A 4/275 (2cpu) (rack) literal ALPHA$K_AS1806030103 = 1233; ! AlphaServer 2100A 4/275 (3cpu) (rack) literal ALPHA$K_AS1806030104 = 1234; ! AlphaServer 2100A 4/275 (4cpu) (rack) literal ALPHA$K_AS1805030001 = 1235; ! AlphaServer 2100A 5/250 (1cpu) (rack) literal ALPHA$K_AS1805030002 = 1236; ! AlphaServer 2100A 5/250 (2cpu) (rack) literal ALPHA$K_AS1805030003 = 1237; ! AlphaServer 2100A 5/250 (3cpu) (rack) literal ALPHA$K_AS1805030004 = 1238; ! AlphaServer 2100A 5/250 (4cpu) (rack) literal ALPHA$K_AS1805030101 = 1239; ! AlphaServer 2100A 5/300 (1cpu) (rack) literal ALPHA$K_AS1805030102 = 1240; ! AlphaServer 2100A 5/300 (2cpu) (rack) literal ALPHA$K_AS1805030103 = 1241; ! AlphaServer 2100A 5/300 (3cpu) (rack) literal ALPHA$K_AS1805030104 = 1242; ! AlphaServer 2100A 5/300 (4cpu) (rack) literal ALPHA$K_AS1A05010001 = 1245; ! EB164 266 literal ALPHA$K_AS1A05020001 = 1246; ! EB164 300 literal ALPHA$K_AS0D06200001 = 1250; ! AlphaStation 205 4/133 literal ALPHA$K_AS0D06210001 = 1251; ! AlphaStation 205 4/166 literal ALPHA$K_AS0D06220001 = 1252; ! AlphaStation 205 4/200 literal ALPHA$K_AS0D06230001 = 1253; ! AlphaStation 205 4/233 literal ALPHA$K_AS0D06240001 = 1254; ! AlphaStation 205 4/266 literal ALPHA$K_AS0D06250001 = 1255; ! AlphaStation 205 4/300 literal ALPHA$K_AS0D06260001 = 1256; ! AlphaStation 205 4/333 literal ALPHA$K_AS0D06270001 = 1257; ! AlphaStation 255 4/133 literal ALPHA$K_AS0D06280001 = 1258; ! AlphaStation 255 4/166 literal ALPHA$K_AS0D06290001 = 1259; ! AlphaStation 255 4/200 literal ALPHA$K_AS0D062A0001 = 1260; ! AlphaStation 255 4/233 literal ALPHA$K_AS0D062B0001 = 1261; ! AlphaStation 255 4/266 literal ALPHA$K_AS0D062C0001 = 1262; ! AlphaStation 255 4/300 literal ALPHA$K_AS0D062D0001 = 1263; ! AlphaStation 255 4/333 literal ALPHA$K_AS1106030001 = 1264; ! AlphaServer 1000 4/266 literal ALPHA$K_AS1B06010001 = 1265; ! AlphaServer 1000A 4/266 literal ALPHA$K_AS0F05030001 = 1266; ! AlphaStation 500 5/266 literal ALPHA$K_AS0F05040001 = 1267; ! AlphaStation 500 5/300 literal ALPHA$K_AS0F05050001 = 1268; ! AlphaStation 500 5/333 literal ALPHA$K_AS1105040001 = 1269; ! AlphaServer 1000 5/300 literal ALPHA$K_AS1B05020001 = 1270; ! AlphaServer 1000A 5/300 literal ALPHA$K_AS0F05060001 = 1275; ! AlphaStation 600 5/333 literal ALPHA$K_AS0F05070001 = 1276; ! AlphaStation 600 5/366 literal ALPHA$K_AS0F05080001 = 1277; ! AlphaStation 600 5/400 literal ALPHA$K_AS0F05090001 = 1278; ! AlphaStation 600 5/433 literal ALPHA$K_AS0F050A0001 = 1279; ! AlphaStation 600 5/466 literal ALPHA$K_AS0F050B0001 = 1280; ! AlphaStation 600 5/500 literal ALPHA$K_AS0F070C0001 = 1281; ! AlphaStation 500/333 literal ALPHA$K_AS0F070D0001 = 1282; ! AlphaStation 500/366 literal ALPHA$K_AS0F070E0001 = 1283; ! AlphaStation 500/400 literal ALPHA$K_AS0F070F0001 = 1284; ! AlphaStation 500/433 literal ALPHA$K_AS0F07100001 = 1285; ! AlphaStation 500/466 literal ALPHA$K_AS0F07110001 = 1286; ! AlphaStation 500/500 literal ALPHA$K_AS0C05020001 = 1292; ! AlphaServer 8200 5/350 (1cpu) literal ALPHA$K_AS0C05020002 = 1293; ! AlphaServer 8200 5/350 (2cpu) literal ALPHA$K_AS0C05020003 = 1294; ! AlphaServer 8200 5/350 (3cpu) literal ALPHA$K_AS0C05020004 = 1295; ! AlphaServer 8200 5/350 (4cpu) literal ALPHA$K_AS0C05020005 = 1296; ! AlphaServer 8200 5/350 (5cpu) literal ALPHA$K_AS0C05020006 = 1297; ! AlphaServer 8200 5/350 (6cpu) literal ALPHA$K_AS0C05030001 = 1298; ! AlphaServer 8400 5/350 (1cpu) literal ALPHA$K_AS0C05030002 = 1299; ! AlphaServer 8400 5/350 (2cpu) literal ALPHA$K_AS0C05030003 = 1300; ! AlphaServer 8400 5/350 (3cpu) literal ALPHA$K_AS0C05030004 = 1301; ! AlphaServer 8400 5/350 (4cpu) literal ALPHA$K_AS0C05030005 = 1302; ! AlphaServer 8400 5/350 (5cpu) literal ALPHA$K_AS0C05030006 = 1303; ! AlphaServer 8400 5/350 (6cpu) literal ALPHA$K_AS0C05030007 = 1304; ! AlphaServer 8400 5/350 (7cpu) literal ALPHA$K_AS0C05030008 = 1305; ! AlphaServer 8400 5/350 (8cpu) literal ALPHA$K_AS0C05030009 = 1306; ! AlphaServer 8400 5/350 (9cpu) literal ALPHA$K_AS0C0503000A = 1307; ! AlphaServer 8400 5/350 (10cpu) literal ALPHA$K_AS0C0503000B = 1308; ! AlphaServer 8400 5/350 (11cpu) literal ALPHA$K_AS0C0503000C = 1309; ! AlphaServer 8400 5/350 (12cpu) literal ALPHA$K_AS1B07040001 = 1310; ! AlphaServer 600 5/333 literal ALPHA$K_AS1B07030001 = 1311; ! AlphaServer 1000A 5/400 literal ALPHA$K_AS1107050001 = 1312; ! AlphaServer 1000 5/400 literal ALPHA$K_AS1605020001 = 1313; ! AlphaServer 4100 5/266 0MB (1cpu) literal ALPHA$K_AS1605020002 = 1314; ! AlphaServer 4100 5/266 0MB (2cpu) literal ALPHA$K_AS1605020003 = 1315; ! AlphaServer 4100 5/266 0MB (3cpu) literal ALPHA$K_AS1605020004 = 1316; ! AlphaServer 4100 5/266 0MB (4cpu) literal ALPHA$K_AS1605010001 = 1317; ! AlphaServer 4100 5/266 0MB (1cpu) literal ALPHA$K_AS1605010002 = 1318; ! AlphaServer 4100 5/266 0MB (2cpu) literal ALPHA$K_AS1605010003 = 1319; ! AlphaServer 4100 5/266 0MB (3cpu) literal ALPHA$K_AS1605010004 = 1320; ! AlphaServer 4100 5/266 0MB (4cpu) literal ALPHA$K_AS1605020101 = 1321; ! AlphaServer 4100 5/300 0MB (1cpu) literal ALPHA$K_AS1605020102 = 1322; ! AlphaServer 4100 5/300 0MB (2cpu) literal ALPHA$K_AS1605020103 = 1323; ! AlphaServer 4100 5/300 0MB (3cpu) literal ALPHA$K_AS1605020104 = 1324; ! AlphaServer 4100 5/300 0MB (4cpu) literal ALPHA$K_AS1605010101 = 1325; ! AlphaServer 4100 5/300 0MB (1cpu) literal ALPHA$K_AS1605010102 = 1326; ! AlphaServer 4100 5/300 0MB (2cpu) literal ALPHA$K_AS1605010103 = 1327; ! AlphaServer 4100 5/300 0MB (3cpu) literal ALPHA$K_AS1605010104 = 1328; ! AlphaServer 4100 5/300 0MB (4cpu) literal ALPHA$K_AS1607020001 = 1329; ! AlphaServer 4100 5/400 0MB (1cpu) literal ALPHA$K_AS1607020002 = 1330; ! AlphaServer 4100 5/400 0MB (2cpu) literal ALPHA$K_AS1607020003 = 1331; ! AlphaServer 4100 5/400 0MB (3cpu) literal ALPHA$K_AS1607020004 = 1332; ! AlphaServer 4100 5/400 0MB (4cpu) literal ALPHA$K_AS1607010001 = 1333; ! AlphaServer 4100 5/400 0MB (1cpu) literal ALPHA$K_AS1607010002 = 1334; ! AlphaServer 4100 5/400 0MB (2cpu) literal ALPHA$K_AS1607010003 = 1335; ! AlphaServer 4100 5/400 0MB (3cpu) literal ALPHA$K_AS1607010004 = 1336; ! AlphaServer 4100 5/400 0MB (4cpu) literal ALPHA$K_AS1605020201 = 1337; ! AlphaServer 4100 5/266 1MB (1cpu) literal ALPHA$K_AS1605020202 = 1338; ! AlphaServer 4100 5/266 1MB (2cpu) literal ALPHA$K_AS1605020203 = 1339; ! AlphaServer 4100 5/266 1MB (3cpu) literal ALPHA$K_AS1605020204 = 1340; ! AlphaServer 4100 5/266 1MB (4cpu) literal ALPHA$K_AS1605010201 = 1341; ! AlphaServer 4100 5/266 1MB (1cpu) literal ALPHA$K_AS1605010202 = 1342; ! AlphaServer 4100 5/266 1MB (2cpu) literal ALPHA$K_AS1605010203 = 1343; ! AlphaServer 4100 5/266 1MB (3cpu) literal ALPHA$K_AS1605010204 = 1344; ! AlphaServer 4100 5/266 1MB (4cpu) literal ALPHA$K_AS1605020301 = 1345; ! AlphaServer 4100 5/300 1MB (1cpu) literal ALPHA$K_AS1605020302 = 1346; ! AlphaServer 4100 5/300 1MB (2cpu) literal ALPHA$K_AS1605020303 = 1347; ! AlphaServer 4100 5/300 1MB (3cpu) literal ALPHA$K_AS1605020304 = 1348; ! AlphaServer 4100 5/300 1MB (4cpu) literal ALPHA$K_AS1605010301 = 1349; ! AlphaServer 4100 5/300 1MB (1cpu) literal ALPHA$K_AS1605010302 = 1350; ! AlphaServer 4100 5/300 1MB (2cpu) literal ALPHA$K_AS1605010303 = 1351; ! AlphaServer 4100 5/300 1MB (3cpu) literal ALPHA$K_AS1605010304 = 1352; ! AlphaServer 4100 5/300 1MB (4cpu) literal ALPHA$K_AS1607020101 = 1353; ! AlphaServer 4100 5/400 1MB (1cpu) literal ALPHA$K_AS1607020102 = 1354; ! AlphaServer 4100 5/400 1MB (2cpu) literal ALPHA$K_AS1607020103 = 1355; ! AlphaServer 4100 5/400 1MB (3cpu) literal ALPHA$K_AS1607020104 = 1356; ! AlphaServer 4100 5/400 1MB (4cpu) literal ALPHA$K_AS1607010101 = 1357; ! AlphaServer 4100 5/400 1MB (1cpu) literal ALPHA$K_AS1607010102 = 1358; ! AlphaServer 4100 5/400 1MB (2cpu) literal ALPHA$K_AS1607010103 = 1359; ! AlphaServer 4100 5/400 1MB (3cpu) literal ALPHA$K_AS1607010104 = 1360; ! AlphaServer 4100 5/400 1MB (4cpu) literal ALPHA$K_AS1605020401 = 1361; ! AlphaServer 4100 5/266 2MB (1cpu) literal ALPHA$K_AS1605020402 = 1362; ! AlphaServer 4100 5/266 2MB (2cpu) literal ALPHA$K_AS1605020403 = 1363; ! AlphaServer 4100 5/266 2MB (3cpu) literal ALPHA$K_AS1605020404 = 1364; ! AlphaServer 4100 5/266 2MB (4cpu) literal ALPHA$K_AS1605010401 = 1365; ! AlphaServer 4100 5/266 2MB (1cpu) literal ALPHA$K_AS1605010402 = 1366; ! AlphaServer 4100 5/266 2MB (2cpu) literal ALPHA$K_AS1605010403 = 1367; ! AlphaServer 4100 5/266 2MB (3cpu) literal ALPHA$K_AS1605010404 = 1368; ! AlphaServer 4100 5/266 2MB (4cpu) literal ALPHA$K_AS1605020501 = 1369; ! AlphaServer 4100 5/300 2MB (1cpu) literal ALPHA$K_AS1605020502 = 1370; ! AlphaServer 4100 5/300 2MB (2cpu) literal ALPHA$K_AS1605020503 = 1371; ! AlphaServer 4100 5/300 2MB (3cpu) literal ALPHA$K_AS1605020504 = 1372; ! AlphaServer 4100 5/300 2MB (4cpu) literal ALPHA$K_AS1605010501 = 1373; ! AlphaServer 4100 5/300 2MB (1cpu) literal ALPHA$K_AS1605010502 = 1374; ! AlphaServer 4100 5/300 2MB (2cpu) literal ALPHA$K_AS1605010503 = 1375; ! AlphaServer 4100 5/300 2MB (3cpu) literal ALPHA$K_AS1605010504 = 1376; ! AlphaServer 4100 5/300 2MB (4cpu) literal ALPHA$K_AS1607020201 = 1377; ! AlphaServer 4100 5/400 2MB (1cpu) literal ALPHA$K_AS1607020202 = 1378; ! AlphaServer 4100 5/400 2MB (2cpu) literal ALPHA$K_AS1607020203 = 1379; ! AlphaServer 4100 5/400 2MB (3cpu) literal ALPHA$K_AS1607020204 = 1380; ! AlphaServer 4100 5/400 2MB (4cpu) literal ALPHA$K_AS1607010201 = 1381; ! AlphaServer 4100 5/400 2MB (1cpu) literal ALPHA$K_AS1607010202 = 1382; ! AlphaServer 4100 5/400 2MB (2cpu) literal ALPHA$K_AS1607010203 = 1383; ! AlphaServer 4100 5/400 2MB (3cpu) literal ALPHA$K_AS1607010204 = 1384; ! AlphaServer 4100 5/400 2MB (4cpu) literal ALPHA$K_AS1605020601 = 1385; ! AlphaServer 4100 5/266 4MB (1cpu) literal ALPHA$K_AS1605020602 = 1386; ! AlphaServer 4100 5/266 4MB (2cpu) literal ALPHA$K_AS1605020603 = 1387; ! AlphaServer 4100 5/266 4MB (3cpu) literal ALPHA$K_AS1605020604 = 1388; ! AlphaServer 4100 5/266 4MB (4cpu) literal ALPHA$K_AS1605010601 = 1389; ! AlphaServer 4100 5/266 4MB (1cpu) literal ALPHA$K_AS1605010602 = 1390; ! AlphaServer 4100 5/266 4MB (2cpu) literal ALPHA$K_AS1605010603 = 1391; ! AlphaServer 4100 5/266 4MB (3cpu) literal ALPHA$K_AS1605010604 = 1392; ! AlphaServer 4100 5/266 4MB (4cpu) literal ALPHA$K_AS1605020701 = 1393; ! AlphaServer 4100 5/300 4MB (1cpu) literal ALPHA$K_AS1605020702 = 1394; ! AlphaServer 4100 5/300 4MB (2cpu) literal ALPHA$K_AS1605020703 = 1395; ! AlphaServer 4100 5/300 4MB (3cpu) literal ALPHA$K_AS1605020704 = 1396; ! AlphaServer 4100 5/300 4MB (4cpu) literal ALPHA$K_AS1605010701 = 1397; ! AlphaServer 4100 5/300 4MB (1cpu) literal ALPHA$K_AS1605010702 = 1398; ! AlphaServer 4100 5/300 4MB (2cpu) literal ALPHA$K_AS1605010703 = 1399; ! AlphaServer 4100 5/300 4MB (3cpu) literal ALPHA$K_AS1605010704 = 1400; ! AlphaServer 4100 5/300 4MB (4cpu) literal ALPHA$K_AS1607020301 = 1401; ! AlphaServer 4100 5/400 4MB (1cpu) literal ALPHA$K_AS1607020302 = 1402; ! AlphaServer 4100 5/400 4MB (2cpu) literal ALPHA$K_AS1607020303 = 1403; ! AlphaServer 4100 5/400 4MB (3cpu) literal ALPHA$K_AS1607020304 = 1404; ! AlphaServer 4100 5/400 4MB (4cpu) literal ALPHA$K_AS1607010301 = 1405; ! AlphaServer 4100 5/400 4MB (1cpu) literal ALPHA$K_AS1607010302 = 1406; ! AlphaServer 4100 5/400 4MB (2cpu) literal ALPHA$K_AS1607010303 = 1407; ! AlphaServer 4100 5/400 4MB (3cpu) literal ALPHA$K_AS1607010304 = 1408; ! AlphaServer 4100 5/400 4MB (4cpu) literal ALPHA$K_AS1605040001 = 1409; ! AlphaServer 4000 5/266 0MB (1cpu) literal ALPHA$K_AS1605040002 = 1410; ! AlphaServer 4000 5/266 0MB (2cpu) literal ALPHA$K_AS1605030001 = 1411; ! AlphaServer 4000 5/266 0MB (1cpu) literal ALPHA$K_AS1605030002 = 1412; ! AlphaServer 4000 5/266 0MB (2cpu) literal ALPHA$K_AS1605040101 = 1413; ! AlphaServer 4000 5/300 0MB (1cpu) literal ALPHA$K_AS1605040102 = 1414; ! AlphaServer 4000 5/300 0MB (2cpu) literal ALPHA$K_AS1605030101 = 1415; ! AlphaServer 4000 5/300 0MB (1cpu) literal ALPHA$K_AS1605030102 = 1416; ! AlphaServer 4000 5/300 0MB (2cpu) literal ALPHA$K_AS1607040001 = 1417; ! AlphaServer 4000 5/400 0MB (1cpu) literal ALPHA$K_AS1607040002 = 1418; ! AlphaServer 4000 5/400 0MB (2cpu) literal ALPHA$K_AS1607030001 = 1419; ! AlphaServer 4000 5/400 0MB (1cpu) literal ALPHA$K_AS1607030002 = 1420; ! AlphaServer 4000 5/400 0MB (2cpu) literal ALPHA$K_AS1605040201 = 1421; ! AlphaServer 4000 5/266 1MB (1cpu) literal ALPHA$K_AS1605040202 = 1422; ! AlphaServer 4000 5/266 1MB (2cpu) literal ALPHA$K_AS1605030201 = 1423; ! AlphaServer 4000 5/266 1MB (1cpu) literal ALPHA$K_AS1605030202 = 1424; ! AlphaServer 4000 5/266 1MB (2cpu) literal ALPHA$K_AS1605040301 = 1425; ! AlphaServer 4000 5/300 1MB (1cpu) literal ALPHA$K_AS1605040302 = 1426; ! AlphaServer 4000 5/300 1MB (2cpu) literal ALPHA$K_AS1605030301 = 1427; ! AlphaServer 4000 5/300 1MB (1cpu) literal ALPHA$K_AS1605030302 = 1428; ! AlphaServer 4000 5/300 1MB (2cpu) literal ALPHA$K_AS1607040101 = 1429; ! AlphaServer 4000 5/400 1MB (1cpu) literal ALPHA$K_AS1607040102 = 1430; ! AlphaServer 4000 5/400 1MB (2cpu) literal ALPHA$K_AS1607030101 = 1431; ! AlphaServer 4000 5/400 1MB (1cpu) literal ALPHA$K_AS1607030102 = 1432; ! AlphaServer 4000 5/400 1MB (2cpu) literal ALPHA$K_AS1605040401 = 1433; ! AlphaServer 4000 5/266 2MB (1cpu) literal ALPHA$K_AS1605040402 = 1434; ! AlphaServer 4000 5/266 2MB (2cpu) literal ALPHA$K_AS1605030401 = 1435; ! AlphaServer 4000 5/266 2MB (1cpu) literal ALPHA$K_AS1605030402 = 1436; ! AlphaServer 4000 5/266 2MB (2cpu) literal ALPHA$K_AS1605040501 = 1437; ! AlphaServer 4000 5/300 2MB (1cpu) literal ALPHA$K_AS1605040502 = 1438; ! AlphaServer 4000 5/300 2MB (2cpu) literal ALPHA$K_AS1605030501 = 1439; ! AlphaServer 4000 5/300 2MB (1cpu) literal ALPHA$K_AS1605030502 = 1440; ! AlphaServer 4000 5/300 2MB (2cpu) literal ALPHA$K_AS1607040201 = 1441; ! AlphaServer 4000 5/400 2MB (1cpu) literal ALPHA$K_AS1607040202 = 1442; ! AlphaServer 4000 5/400 2MB (2cpu) literal ALPHA$K_AS1607030201 = 1443; ! AlphaServer 4000 5/400 2MB (1cpu) literal ALPHA$K_AS1607030202 = 1444; ! AlphaServer 4000 5/400 2MB (2cpu) literal ALPHA$K_AS1605040601 = 1445; ! AlphaServer 4000 5/266 4MB (1cpu) literal ALPHA$K_AS1605040602 = 1446; ! AlphaServer 4000 5/266 4MB (2cpu) literal ALPHA$K_AS1605030601 = 1447; ! AlphaServer 4000 5/266 4MB (1cpu) literal ALPHA$K_AS1605030602 = 1448; ! AlphaServer 4000 5/266 4MB (2cpu) literal ALPHA$K_AS1605040701 = 1449; ! AlphaServer 4000 5/300 4MB (1cpu) literal ALPHA$K_AS1605040702 = 1450; ! AlphaServer 4000 5/300 4MB (2cpu) literal ALPHA$K_AS1605030701 = 1451; ! AlphaServer 4000 5/300 4MB (1cpu) literal ALPHA$K_AS1605030702 = 1452; ! AlphaServer 4000 5/300 4MB (2cpu) literal ALPHA$K_AS1607040301 = 1453; ! AlphaServer 4000 5/400 4MB (1cpu) literal ALPHA$K_AS1607040302 = 1454; ! AlphaServer 4000 5/400 4MB (2cpu) literal ALPHA$K_AS1607030301 = 1455; ! AlphaServer 4000 5/400 4MB (1cpu) literal ALPHA$K_AS1607030302 = 1456; ! AlphaServer 4000 5/400 4MB (2cpu) literal ALPHA$K_AS1605060001 = 1457; ! AlphaServer 4000A 5/266 0MB (1cpu) literal ALPHA$K_AS1605060002 = 1458; ! AlphaServer 4000A 5/266 0MB (2cpu) literal ALPHA$K_AS1605050001 = 1459; ! AlphaServer 4000A 5/266 0MB (1cpu) literal ALPHA$K_AS1605050002 = 1460; ! AlphaServer 4000A 5/266 0MB (2cpu) literal ALPHA$K_AS1605060101 = 1461; ! AlphaServer 4000A 5/300 0MB (1cpu) literal ALPHA$K_AS1605060102 = 1462; ! AlphaServer 4000A 5/300 0MB (2cpu) literal ALPHA$K_AS1605050101 = 1463; ! AlphaServer 4000A 5/300 0MB (1cpu) literal ALPHA$K_AS1605050102 = 1464; ! AlphaServer 4000A 5/300 0MB (2cpu) literal ALPHA$K_AS1607060001 = 1465; ! AlphaServer 4000A 5/400 0MB (1cpu) literal ALPHA$K_AS1607060002 = 1466; ! AlphaServer 4000A 5/400 0MB (2cpu) literal ALPHA$K_AS1607050001 = 1467; ! AlphaServer 4000A 5/400 0MB (1cpu) literal ALPHA$K_AS1607050002 = 1468; ! AlphaServer 4000A 5/400 0MB (2cpu) literal ALPHA$K_AS1605060201 = 1469; ! AlphaServer 4000A 5/266 1MB (1cpu) literal ALPHA$K_AS1605060202 = 1470; ! AlphaServer 4000A 5/266 1MB (2cpu) literal ALPHA$K_AS1605050201 = 1471; ! AlphaServer 4000A 5/266 1MB (1cpu) literal ALPHA$K_AS1605050202 = 1472; ! AlphaServer 4000A 5/266 1MB (2cpu) literal ALPHA$K_AS1605060301 = 1473; ! AlphaServer 4000A 5/300 1MB (1cpu) literal ALPHA$K_AS1605060302 = 1474; ! AlphaServer 4000A 5/300 1MB (2cpu) literal ALPHA$K_AS1605050301 = 1475; ! AlphaServer 4000A 5/300 1MB (1cpu) literal ALPHA$K_AS1605050302 = 1476; ! AlphaServer 4000A 5/300 1MB (2cpu) literal ALPHA$K_AS1607060101 = 1477; ! AlphaServer 4000A 5/400 1MB (1cpu) literal ALPHA$K_AS1607060102 = 1478; ! AlphaServer 4000A 5/400 1MB (2cpu) literal ALPHA$K_AS1607050101 = 1479; ! AlphaServer 4000A 5/400 1MB (1cpu) literal ALPHA$K_AS1607050102 = 1480; ! AlphaServer 4000A 5/400 1MB (2cpu) literal ALPHA$K_AS1605060401 = 1481; ! AlphaServer 4000A 5/266 2MB (1cpu) literal ALPHA$K_AS1605060402 = 1482; ! AlphaServer 4000A 5/266 2MB (2cpu) literal ALPHA$K_AS1605050401 = 1483; ! AlphaServer 4000A 5/266 2MB (1cpu) literal ALPHA$K_AS1605050402 = 1484; ! AlphaServer 4000A 5/266 2MB (2cpu) literal ALPHA$K_AS1605060501 = 1485; ! AlphaServer 4000A 5/300 2MB (1cpu) literal ALPHA$K_AS1605060502 = 1486; ! AlphaServer 4000A 5/300 2MB (2cpu) literal ALPHA$K_AS1605050501 = 1487; ! AlphaServer 4000A 5/300 2MB (1cpu) literal ALPHA$K_AS1605050502 = 1488; ! AlphaServer 4000A 5/300 2MB (2cpu) literal ALPHA$K_AS1607060201 = 1489; ! AlphaServer 4000A 5/400 2MB (1cpu) literal ALPHA$K_AS1607060202 = 1490; ! AlphaServer 4000A 5/400 2MB (2cpu) literal ALPHA$K_AS1607050201 = 1491; ! AlphaServer 4000A 5/400 2MB (1cpu) literal ALPHA$K_AS1607050202 = 1492; ! AlphaServer 4000A 5/400 2MB (2cpu) literal ALPHA$K_AS1605060601 = 1493; ! AlphaServer 4000A 5/266 4MB (1cpu) literal ALPHA$K_AS1605060602 = 1494; ! AlphaServer 4000A 5/266 4MB (2cpu) literal ALPHA$K_AS1605050601 = 1495; ! AlphaServer 4000A 5/266 4MB (1cpu) literal ALPHA$K_AS1605050602 = 1496; ! AlphaServer 4000A 5/266 4MB (2cpu) literal ALPHA$K_AS1605060701 = 1497; ! AlphaServer 4000A 5/300 4MB (1cpu) literal ALPHA$K_AS1605060702 = 1498; ! AlphaServer 4000A 5/300 4MB (2cpu) literal ALPHA$K_AS1605050701 = 1499; ! AlphaServer 4000A 5/300 4MB (1cpu) literal ALPHA$K_AS1605050702 = 1500; ! AlphaServer 4000A 5/300 4MB (2cpu) literal ALPHA$K_AS1607060301 = 1501; ! AlphaServer 4000A 5/400 4MB (1cpu) literal ALPHA$K_AS1607060302 = 1502; ! AlphaServer 4000A 5/400 4MB (2cpu) literal ALPHA$K_AS1607050301 = 1503; ! AlphaServer 4000A 5/400 4MB (1cpu) literal ALPHA$K_AS1607050302 = 1504; ! AlphaServer 4000A 5/400 4MB (2cpu) literal ALPHA$K_AS0907010001 = 1505; ! AlphaServer 2000 5/375 (1cpu) literal ALPHA$K_AS0907010002 = 1506; ! AlphaServer 2000 5/375 (2cpu) literal ALPHA$K_AS0907010003 = 1507; ! AlphaServer 2000 5/375 (3cpu) literal ALPHA$K_AS0907010004 = 1508; ! AlphaServer 2000 5/375 (4cpu) literal ALPHA$K_AS0907020001 = 1509; ! AlphaServer 2100 5/375 (1cpu) literal ALPHA$K_AS0907020002 = 1510; ! AlphaServer 2100 5/375 (2cpu) literal ALPHA$K_AS0907020003 = 1511; ! AlphaServer 2100 5/375 (3cpu) literal ALPHA$K_AS0907020004 = 1512; ! AlphaServer 2100 5/375 (4cpu) literal ALPHA$K_AS0907030001 = 1513; ! AlphaServer 2100 5/375 (1cpu) (rack) literal ALPHA$K_AS0907030002 = 1514; ! AlphaServer 2100 5/375 (2cpu) (rack) literal ALPHA$K_AS0907030003 = 1515; ! AlphaServer 2100 5/375 (3cpu) (rack) literal ALPHA$K_AS0907030004 = 1516; ! AlphaServer 2100 5/375 (4cpu) (rack) literal ALPHA$K_AS0907010101 = 1517; ! AlphaServer 2000 5/400 (1cpu) literal ALPHA$K_AS0907010102 = 1518; ! AlphaServer 2000 5/400 (2cpu) literal ALPHA$K_AS0907010103 = 1519; ! AlphaServer 2000 5/400 (3cpu) literal ALPHA$K_AS0907010104 = 1520; ! AlphaServer 2000 5/400 (4cpu) literal ALPHA$K_AS0907020101 = 1521; ! AlphaServer 2100 5/400 (1cpu) literal ALPHA$K_AS0907020102 = 1522; ! AlphaServer 2100 5/400 (2cpu) literal ALPHA$K_AS0907020103 = 1523; ! AlphaServer 2100 5/400 (3cpu) literal ALPHA$K_AS0907020104 = 1524; ! AlphaServer 2100 5/400 (4cpu) literal ALPHA$K_AS0907030101 = 1525; ! AlphaServer 2100 5/400 (1cpu) (rack) literal ALPHA$K_AS0907030102 = 1526; ! AlphaServer 2100 5/400 (2cpu) (rack) literal ALPHA$K_AS0907030103 = 1527; ! AlphaServer 2100 5/400 (3cpu) (rack) literal ALPHA$K_AS0907030104 = 1528; ! AlphaServer 2100 5/400 (4cpu) (rack) literal ALPHA$K_AS1807010001 = 1529; ! AlphaServer 2000A 5/375 (1cpu) literal ALPHA$K_AS1807010002 = 1530; ! AlphaServer 2000A 5/375 (2cpu) literal ALPHA$K_AS1807010003 = 1531; ! AlphaServer 2000A 5/375 (3cpu) literal ALPHA$K_AS1807010004 = 1532; ! AlphaServer 2000A 5/375 (4cpu) literal ALPHA$K_AS1807020001 = 1533; ! AlphaServer 2100A 5/375 (1cpu) literal ALPHA$K_AS1807020002 = 1534; ! AlphaServer 2100A 5/375 (2cpu) literal ALPHA$K_AS1807020003 = 1535; ! AlphaServer 2100A 5/375 (3cpu) literal ALPHA$K_AS1807020004 = 1536; ! AlphaServer 2100A 5/375 (4cpu) literal ALPHA$K_AS1807030001 = 1537; ! AlphaServer 2100A 5/375 (1cpu) (rack) literal ALPHA$K_AS1807030002 = 1538; ! AlphaServer 2100A 5/375 (2cpu) (rack) literal ALPHA$K_AS1807030003 = 1539; ! AlphaServer 2100A 5/375 (3cpu) (rack) literal ALPHA$K_AS1807030004 = 1540; ! AlphaServer 2100A 5/375 (4cpu) (rack) literal ALPHA$K_AS1807010101 = 1541; ! AlphaServer 2000A 5/400 (1cpu) literal ALPHA$K_AS1807010102 = 1542; ! AlphaServer 2000A 5/400 (2cpu) literal ALPHA$K_AS1807010103 = 1543; ! AlphaServer 2000A 5/400 (3cpu) literal ALPHA$K_AS1807010104 = 1544; ! AlphaServer 2000A 5/400 (4cpu) literal ALPHA$K_AS1807020101 = 1545; ! AlphaServer 2100A 5/400 (1cpu) literal ALPHA$K_AS1807020102 = 1546; ! AlphaServer 2100A 5/400 (2cpu) literal ALPHA$K_AS1807020103 = 1547; ! AlphaServer 2100A 5/400 (3cpu) literal ALPHA$K_AS1807020104 = 1548; ! AlphaServer 2100A 5/400 (4cpu) literal ALPHA$K_AS1807030101 = 1549; ! AlphaServer 2100A 5/400 (1cpu) (rack) literal ALPHA$K_AS1807030102 = 1550; ! AlphaServer 2100A 5/400 (2cpu) (rack) literal ALPHA$K_AS1807030103 = 1551; ! AlphaServer 2100A 5/400 (3cpu) (rack) literal ALPHA$K_AS1807030104 = 1552; ! AlphaServer 2100A 5/400 (4cpu) (rack) literal ALPHA$K_AS1406030001 = 1553; ! AlphaPCI64 275, EV45 2MB Cache literal ALPHA$K_AS1E07010001 = 1554; ! Personal Workstation 433au literal ALPHA$K_AS1E07020001 = 1555; ! Personal Workstation 466au literal ALPHA$K_AS1E07030001 = 1556; ! Personal Workstation 500au literal ALPHA$K_AS1E07040001 = 1557; ! Personal Workstation 533au literal ALPHA$K_AS1B07030101 = 1558; ! AlphaServer 1000A 5/333 literal ALPHA$K_AS1107050101 = 1559; ! AlphaServer 1000 5/333 literal ALPHA$K_AS0C07040001 = 1560; ! AlphaServer 8200 5/440 (1cpu) literal ALPHA$K_AS0C07040002 = 1561; ! AlphaServer 8200 5/440 (2cpu) literal ALPHA$K_AS0C07040003 = 1562; ! AlphaServer 8200 5/440 (3cpu) literal ALPHA$K_AS0C07040004 = 1563; ! AlphaServer 8200 5/440 (4cpu) literal ALPHA$K_AS0C07040005 = 1564; ! AlphaServer 8200 5/440 (5cpu) literal ALPHA$K_AS0C07040006 = 1565; ! AlphaServer 8200 5/440 (6cpu) literal ALPHA$K_AS0C07050001 = 1566; ! AlphaServer 8400 5/440 (1cpu) literal ALPHA$K_AS0C07050002 = 1567; ! AlphaServer 8400 5/440 (2cpu) literal ALPHA$K_AS0C07050003 = 1568; ! AlphaServer 8400 5/440 (3cpu) literal ALPHA$K_AS0C07050004 = 1569; ! AlphaServer 8400 5/440 (4cpu) literal ALPHA$K_AS0C07050005 = 1570; ! AlphaServer 8400 5/440 (5cpu) literal ALPHA$K_AS0C07050006 = 1571; ! AlphaServer 8400 5/440 (6cpu) literal ALPHA$K_AS0C07050007 = 1572; ! AlphaServer 8400 5/440 (7cpu) literal ALPHA$K_AS0C07050008 = 1573; ! AlphaServer 8400 5/440 (8cpu) literal ALPHA$K_AS0C07050009 = 1574; ! AlphaServer 8400 5/440 (9cpu) literal ALPHA$K_AS0C0705000A = 1575; ! AlphaServer 8400 5/440 (10cpu) literal ALPHA$K_AS0C0705000B = 1576; ! AlphaServer 8400 5/440 (11cpu) literal ALPHA$K_AS0C0705000C = 1577; ! AlphaServer 8400 5/440 (12cpu) literal ALPHA$K_AS1F05010001 = 1578; ! XXM, EV5 266 MHz literal ALPHA$K_AS2007010001 = 1579; ! DIGITAL 21164 PICMG SBC literal ALPHA$K_AS1B07030201 = 1580; ! AlphaServer 1000A 5/500 2MB Cache literal ALPHA$K_AS1B07030301 = 1581; ! AlphaServer 1000A 5/500 8MB Cache literal ALPHA$K_AS1107050201 = 1582; ! AlphaServer 1000 5/500 2MB Cache literal ALPHA$K_AS1107050301 = 1583; ! AlphaServer 1000 5/500 8MB Cache literal ALPHA$K_AS1B07040101 = 1584; ! AlphaServer 800 5/400 2MB Cache literal ALPHA$K_AS1B07040201 = 1585; ! AlphaServer 800 5/500 2MB Cache literal ALPHA$K_AS1A07060001 = 1586; ! AlphaPC 164, EV56 466 MHz literal ALPHA$K_AS1A07070001 = 1587; ! AlphaPC 164, EV56 500 MHz literal ALPHA$K_AS2107000001 = 1588; ! AlphaVME 5/320, EV56 literal ALPHA$K_AS2107010001 = 1589; ! AlphaVME 5/480, EV56 literal ALPHA$K_AS1B07030401 = 1590; ! AlphaStation 600A 5/500 8MB Cache literal ALPHA$K_AS0C0705000D = 1591; ! AlphaServer 8400 5/440 (13cpu) literal ALPHA$K_AS0C0705000E = 1592; ! AlphaServer 8400 5/440 (14cpu) literal ALPHA$K_AS0D06080101 = 1593; ! AlphaServer 300 4/266 literal ALPHA$K_AS1607020401 = 1594; ! AlphaServer 4100 5/466 4MB (1cpu) (rack) literal ALPHA$K_AS1607020402 = 1595; ! AlphaServer 4100 5/466 4MB (2cpu) (rack) literal ALPHA$K_AS1607020403 = 1596; ! AlphaServer 4100 5/466 4MB (3cpu) (rack) literal ALPHA$K_AS1607020404 = 1597; ! AlphaServer 4100 5/466 4MB (4cpu) (rack) literal ALPHA$K_AS1607010401 = 1598; ! AlphaServer 4100 5/466 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607010402 = 1599; ! AlphaServer 4100 5/466 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607010403 = 1600; ! AlphaServer 4100 5/466 4MB (3cpu) (pedestal) literal ALPHA$K_AS1607010404 = 1601; ! AlphaServer 4100 5/466 4MB (4cpu) (pedestal) literal ALPHA$K_AS1607020501 = 1602; ! AlphaServer 4100 5/533 4MB (1cpu) (rack) literal ALPHA$K_AS1607020502 = 1603; ! AlphaServer 4100 5/533 4MB (2cpu) (rack) literal ALPHA$K_AS1607020503 = 1604; ! AlphaServer 4100 5/533 4MB (3cpu) (rack) literal ALPHA$K_AS1607020504 = 1605; ! AlphaServer 4100 5/533 4MB (4cpu) (rack) literal ALPHA$K_AS1607010501 = 1606; ! AlphaServer 4100 5/533 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607010502 = 1607; ! AlphaServer 4100 5/533 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607010503 = 1608; ! AlphaServer 4100 5/533 4MB (3cpu) (pedestal) literal ALPHA$K_AS1607010504 = 1609; ! AlphaServer 4100 5/533 4MB (4cpu) (pedestal) literal ALPHA$K_AS1607020601 = 1610; ! AlphaServer 4100 5/533 8MB (1cpu) (rack) literal ALPHA$K_AS1607020602 = 1611; ! AlphaServer 4100 5/533 8MB (2cpu) (rack) literal ALPHA$K_AS1607020603 = 1612; ! AlphaServer 4100 5/533 8MB (3cpu) (rack) literal ALPHA$K_AS1607020604 = 1613; ! AlphaServer 4100 5/533 8MB (4cpu) (rack) literal ALPHA$K_AS1607010601 = 1614; ! AlphaServer 4100 5/533 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607010602 = 1615; ! AlphaServer 4100 5/533 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607010603 = 1616; ! AlphaServer 4100 5/533 8MB (3cpu) (pedestal) literal ALPHA$K_AS1607010604 = 1617; ! AlphaServer 4100 5/533 8MB (4cpu) (pedestal) literal ALPHA$K_AS1607020701 = 1618; ! AlphaServer 4100 5/600 8MB (1cpu) (rack) literal ALPHA$K_AS1607020702 = 1619; ! AlphaServer 4100 5/600 8MB (2cpu) (rack) literal ALPHA$K_AS1607020703 = 1620; ! AlphaServer 4100 5/600 8MB (3cpu) (rack) literal ALPHA$K_AS1607020704 = 1621; ! AlphaServer 4100 5/600 8MB (4cpu) (rack) literal ALPHA$K_AS1607010701 = 1622; ! AlphaServer 4100 5/600 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607010702 = 1623; ! AlphaServer 4100 5/600 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607010703 = 1624; ! AlphaServer 4100 5/600 8MB (3cpu) (pedestal) literal ALPHA$K_AS1607010704 = 1625; ! AlphaServer 4100 5/600 8MB (4cpu) (pedestal) literal ALPHA$K_AS1607020801 = 1626; ! AlphaServer 4100 5/666 8MB (1cpu) (rack) literal ALPHA$K_AS1607020802 = 1627; ! AlphaServer 4100 5/666 8MB (2cpu) (rack) literal ALPHA$K_AS1607020803 = 1628; ! AlphaServer 4100 5/666 8MB (3cpu) (rack) literal ALPHA$K_AS1607020804 = 1629; ! AlphaServer 4100 5/666 8MB (4cpu) (rack) literal ALPHA$K_AS1607010801 = 1630; ! AlphaServer 4100 5/666 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607010802 = 1631; ! AlphaServer 4100 5/666 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607010803 = 1632; ! AlphaServer 4100 5/666 8MB (3cpu) (pedestal) literal ALPHA$K_AS1607010804 = 1633; ! AlphaServer 4100 5/666 8MB (4cpu) (pedestal) literal ALPHA$K_AS1607040401 = 1634; ! AlphaServer 4000 5/466 4MB (1cpu) (rack) literal ALPHA$K_AS1607040402 = 1635; ! AlphaServer 4000 5/466 4MB (2cpu) (rack) literal ALPHA$K_AS1607030401 = 1636; ! AlphaServer 4000 5/466 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607030402 = 1637; ! AlphaServer 4000 5/466 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607040501 = 1638; ! AlphaServer 4000 5/533 4MB (1cpu) (rack) literal ALPHA$K_AS1607040502 = 1639; ! AlphaServer 4000 5/533 4MB (2cpu) (rack) literal ALPHA$K_AS1607030501 = 1640; ! AlphaServer 4000 5/533 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607030502 = 1641; ! AlphaServer 4000 5/533 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607040601 = 1642; ! AlphaServer 4000 5/533 8MB (1cpu) (rack) literal ALPHA$K_AS1607040602 = 1643; ! AlphaServer 4000 5/533 8MB (2cpu) (rack) literal ALPHA$K_AS1607030601 = 1644; ! AlphaServer 4000 5/533 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607030602 = 1645; ! AlphaServer 4000 5/533 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607040701 = 1646; ! AlphaServer 4000 5/600 8MB (1cpu) (rack) literal ALPHA$K_AS1607040702 = 1647; ! AlphaServer 4000 5/600 8MB (2cpu) (rack) literal ALPHA$K_AS1607030701 = 1648; ! AlphaServer 4000 5/600 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607030702 = 1649; ! AlphaServer 4000 5/600 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607040801 = 1650; ! AlphaServer 4000 5/666 8MB (1cpu) (rack) literal ALPHA$K_AS1607040802 = 1651; ! AlphaServer 4000 5/666 8MB (2cpu) (rack) literal ALPHA$K_AS1607030801 = 1652; ! AlphaServer 4000 5/666 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607030802 = 1653; ! AlphaServer 4000 5/666 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607060401 = 1654; ! AlphaServer 4000 5/466 4MB (1cpu) (rack) literal ALPHA$K_AS1607060402 = 1655; ! AlphaServer 4000 5/466 4MB (2cpu) (rack) literal ALPHA$K_AS1607050401 = 1656; ! AlphaServer 4000 5/466 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607050402 = 1657; ! AlphaServer 4000 5/466 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607060501 = 1658; ! AlphaServer 4000 5/533 4MB (1cpu) (rack) literal ALPHA$K_AS1607060502 = 1659; ! AlphaServer 4000 5/533 4MB (2cpu) (rack) literal ALPHA$K_AS1607050501 = 1660; ! AlphaServer 4000 5/533 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607050502 = 1661; ! AlphaServer 4000 5/533 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607060601 = 1662; ! AlphaServer 4000 5/533 8MB (1cpu) (rack) literal ALPHA$K_AS1607060602 = 1663; ! AlphaServer 4000 5/533 8MB (2cpu) (rack) literal ALPHA$K_AS1607050601 = 1664; ! AlphaServer 4000 5/533 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607050602 = 1665; ! AlphaServer 4000 5/533 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607060701 = 1666; ! AlphaServer 4000 5/600 8MB (1cpu) (rack) literal ALPHA$K_AS1607060702 = 1667; ! AlphaServer 4000 5/600 8MB (2cpu) (rack) literal ALPHA$K_AS1607050701 = 1668; ! AlphaServer 4000 5/600 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607050702 = 1669; ! AlphaServer 4000 5/600 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607060801 = 1670; ! AlphaServer 4000 5/666 8MB (1cpu) (rack) literal ALPHA$K_AS1607060802 = 1671; ! AlphaServer 4000 5/666 8MB (2cpu) (rack) literal ALPHA$K_AS1607050801 = 1672; ! AlphaServer 4000 5/666 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607050802 = 1673; ! AlphaServer 4000 5/666 8MB (2cpu) (pedestal) literal ALPHA$K_AS0C07060001 = 1674; ! AlphaServer 8200 5/622 (1cpu) literal ALPHA$K_AS0C07060002 = 1674; ! AlphaServer 8200 5/622 (2cpu) literal ALPHA$K_AS0C07060003 = 1674; ! AlphaServer 8200 5/622 (3cpu) literal ALPHA$K_AS0C07060004 = 1674; ! AlphaServer 8200 5/622 (4cpu) literal ALPHA$K_AS0C07060005 = 1674; ! AlphaServer 8200 5/622 (5cpu) literal ALPHA$K_AS0C07060006 = 1674; ! AlphaServer 8200 5/622 (6cpu) literal ALPHA$K_AS0C07070001 = 1680; ! AlphaServer 8400 5/622 (1cpu) literal ALPHA$K_AS0C07070002 = 1681; ! AlphaServer 8400 5/622 (2cpu) literal ALPHA$K_AS0C07070003 = 1682; ! AlphaServer 8400 5/622 (3cpu) literal ALPHA$K_AS0C07070004 = 1683; ! AlphaServer 8400 5/622 (4cpu) literal ALPHA$K_AS0C07070005 = 1684; ! AlphaServer 8400 5/622 (5cpu) literal ALPHA$K_AS0C07070006 = 1685; ! AlphaServer 8400 5/622 (6cpu) literal ALPHA$K_AS0C07070007 = 1686; ! AlphaServer 8400 5/622 (7cpu) literal ALPHA$K_AS0C07070008 = 1687; ! AlphaServer 8400 5/622 (8cpu) literal ALPHA$K_AS0C07070009 = 1688; ! AlphaServer 8400 5/622 (9cpu) literal ALPHA$K_AS0C0707000A = 1689; ! AlphaServer 8400 5/622 (10cpu) literal ALPHA$K_AS0C0707000B = 1690; ! AlphaServer 8400 5/622 (11cpu) literal ALPHA$K_AS0C0707000C = 1691; ! AlphaServer 8400 5/622 (12cpu) literal ALPHA$K_AS0C0707000D = 1692; ! AlphaServer 8400 5/622 (13cpu) literal ALPHA$K_AS0C0707000E = 1693; ! AlphaServer 8400 5/622 (14cpu) literal ALPHA$K_AS1A07080001 = 1694; ! AlphaPC 164LX 400, EV56 400 MHz literal ALPHA$K_AS1A07090001 = 1695; ! AlphaPC 164LX 466, EV56 466 MHz literal ALPHA$K_AS1A070A0001 = 1696; ! AlphaPC 164LX 533, EV56 533 MHz literal ALPHA$K_AS1A070B0001 = 1697; ! AlphaPC 164LX 600, EV56 600 MHz literal ALPHA$K_AS1A070C0001 = 1698; ! AlphaPC 164SX 400, EV56 400 MHz literal ALPHA$K_AS1A070D0001 = 1699; ! AlphaPC 164SX 466, EV56 466 MHz literal ALPHA$K_AS1A070E0001 = 1700; ! AlphaPC 164SX 533, EV56 533 MHz literal ALPHA$K_AS1A070F0001 = 1701; ! AlphaPC 164SX 600, EV56 600 MHz literal ALPHA$K_AS1E07050001 = 1702; ! Personal Workstation 566au literal ALPHA$K_AS1E07060001 = 1703; ! Personal Workstation 600au literal ALPHA$K_AS1E07070001 = 1704; ! Personal Workstation 633au literal ALPHA$K_AS1E07080001 = 1705; ! Personal Workstation 666au literal ALPHA$K_AS1E07090001 = 1706; ! Personal Workstation 700au literal ALPHA$K_AS1E070A0001 = 1707; ! Personal Workstation 733au literal ALPHA$K_AS1E070B0001 = 1708; ! Personal Workstation 766au literal ALPHA$K_AS1E070C0001 = 1709; ! Personal Workstation 800au literal ALPHA$K_AS1E070D0001 = 1710; ! Personal Workstation 833au literal ALPHA$K_AS1E070E0001 = 1711; ! Personal Workstation 866au literal ALPHA$K_AS1E070F0001 = 1712; ! Personal Workstation 900au literal ALPHA$K_AS1E07100001 = 1713; ! Personal Workstation 933au literal ALPHA$K_AS1E07110001 = 1714; ! Personal Workstation 966au literal ALPHA$K_AS1E07120001 = 1715; ! Personal Workstation 1000au literal ALPHA$K_AS1E07130001 = 1716; ! Personal Workstation 466au literal ALPHA$K_AS1E07140001 = 1717; ! Personal Workstation 533au literal ALPHA$K_AS1E07150001 = 1718; ! Personal Workstation 600au literal ALPHA$K_AS1E07160001 = 1719; ! Personal Workstation 666au literal ALPHA$K_AS1E09140001 = 1720; ! Personal Workstation 466au literal ALPHA$K_AS1E09140101 = 1721; ! Personal Workstation 550au literal ALPHA$K_AS1605080001 = 1722; ! AlphaServer 1200 5/300 2MB (1cpu) (rack) literal ALPHA$K_AS1605080002 = 1723; ! AlphaServer 1200 5/300 2MB (2cpu) (rack) literal ALPHA$K_AS1605070001 = 1724; ! AlphaServer 1200 5/300 2MB (1cpu) (pedestal) literal ALPHA$K_AS1605070002 = 1725; ! AlphaServer 1200 5/300 2MB (2cpu) (pedestal) literal ALPHA$K_AS1607080101 = 1726; ! AlphaServer 1200 5/400 4MB (1cpu) (rack) literal ALPHA$K_AS1607080102 = 1727; ! AlphaServer 1200 5/400 4MB (2cpu) (rack) literal ALPHA$K_AS1607070101 = 1728; ! AlphaServer 1200 5/400 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607070102 = 1729; ! AlphaServer 1200 5/400 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607080201 = 1730; ! AlphaServer 1200 5/466 4MB (1cpu) (rack) literal ALPHA$K_AS1607080202 = 1731; ! AlphaServer 1200 5/466 4MB (2cpu) (rack) literal ALPHA$K_AS1607070201 = 1732; ! AlphaServer 1200 5/466 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607070202 = 1733; ! AlphaServer 1200 5/466 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607080301 = 1734; ! AlphaServer 1200 5/533 4MB (1cpu) (rack) literal ALPHA$K_AS1607080302 = 1735; ! AlphaServer 1200 5/533 4MB (2cpu) (rack) literal ALPHA$K_AS1607070301 = 1736; ! AlphaServer 1200 5/533 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607070302 = 1737; ! AlphaServer 1200 5/533 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607080401 = 1738; ! AlphaServer 1200 5/600 4MB (1cpu) (rack) literal ALPHA$K_AS1607080402 = 1739; ! AlphaServer 1200 5/600 4MB (2cpu) (rack) literal ALPHA$K_AS1607070401 = 1740; ! AlphaServer 1200 5/600 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607070402 = 1741; ! AlphaServer 1200 5/600 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607080501 = 1742; ! AlphaServer 1200 5/666 4MB (1cpu) (rack) literal ALPHA$K_AS1607080502 = 1743; ! AlphaServer 1200 5/666 4MB (2cpu) (rack) literal ALPHA$K_AS1607070501 = 1744; ! AlphaServer 1200 5/666 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607070502 = 1745; ! AlphaServer 1200 5/666 4MB (2cpu) (pedestal) literal ALPHA$K_AS1607080601 = 1746; ! AlphaServer 1200 5/533 8MB (1cpu) (rack) literal ALPHA$K_AS1607080602 = 1747; ! AlphaServer 1200 5/533 8MB (2cpu) (rack) literal ALPHA$K_AS1607070601 = 1748; ! AlphaServer 1200 5/533 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607070602 = 1749; ! AlphaServer 1200 5/533 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607080701 = 1750; ! AlphaServer 1200 5/600 8MB (1cpu) (rack) literal ALPHA$K_AS1607080702 = 1751; ! AlphaServer 1200 5/600 8MB (2cpu) (rack) literal ALPHA$K_AS1607070701 = 1752; ! AlphaServer 1200 5/600 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607070702 = 1753; ! AlphaServer 1200 5/600 8MB (2cpu) (pedestal) literal ALPHA$K_AS1607080801 = 1754; ! AlphaServer 1200 5/666 8MB (1cpu) (rack) literal ALPHA$K_AS1607080802 = 1755; ! AlphaServer 1200 5/666 8MB (2cpu) (rack) literal ALPHA$K_AS1607070801 = 1756; ! AlphaServer 1200 5/666 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607070802 = 1757; ! AlphaServer 1200 5/666 8MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0101 = 1758; ! AlphaStation 1200 5/400 4MB (1cpu) (rack) literal ALPHA$K_AS16070A0102 = 1759; ! AlphaStation 1200 5/400 4MB (2cpu) (rack) literal ALPHA$K_AS1607090101 = 1760; ! AlphaStation 1200 5/400 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607090102 = 1761; ! AlphaStation 1200 5/400 4MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0201 = 1762; ! AlphaStation 1200 5/466 4MB (1cpu) (rack) literal ALPHA$K_AS16070A0202 = 1763; ! AlphaStation 1200 5/466 4MB (2cpu) (rack) literal ALPHA$K_AS1607090201 = 1764; ! AlphaStation 1200 5/466 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607090202 = 1765; ! AlphaStation 1200 5/466 4MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0301 = 1766; ! AlphaStation 1200 5/533 4MB (1cpu) (rack) literal ALPHA$K_AS16070A0302 = 1767; ! AlphaStation 1200 5/533 4MB (2cpu) (rack) literal ALPHA$K_AS1607090301 = 1768; ! AlphaStation 1200 5/533 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607090302 = 1769; ! AlphaStation 1200 5/533 4MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0401 = 1770; ! AlphaStation 1200 5/600 4MB (1cpu) (rack) literal ALPHA$K_AS16070A0402 = 1771; ! AlphaStation 1200 5/600 4MB (2cpu) (rack) literal ALPHA$K_AS1607090401 = 1772; ! AlphaStation 1200 5/600 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607090402 = 1773; ! AlphaStation 1200 5/600 4MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0501 = 1774; ! AlphaStation 1200 5/666 4MB (1cpu) (rack) literal ALPHA$K_AS16070A0502 = 1775; ! AlphaStation 1200 5/666 4MB (2cpu) (rack) literal ALPHA$K_AS1607090501 = 1776; ! AlphaStation 1200 5/666 4MB (1cpu) (pedestal) literal ALPHA$K_AS1607090502 = 1777; ! AlphaStation 1200 5/666 4MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0601 = 1778; ! AlphaStation 1200 5/533 8MB (1cpu) (rack) literal ALPHA$K_AS16070A0602 = 1779; ! AlphaStation 1200 5/533 8MB (2cpu) (rack) literal ALPHA$K_AS1607090601 = 1780; ! AlphaStation 1200 5/533 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607090602 = 1781; ! AlphaStation 1200 5/533 8MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0701 = 1782; ! AlphaStation 1200 5/600 8MB (1cpu) (rack) literal ALPHA$K_AS16070A0702 = 1783; ! AlphaStation 1200 5/600 8MB (2cpu) (rack) literal ALPHA$K_AS1607090701 = 1784; ! AlphaStation 1200 5/600 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607090702 = 1785; ! AlphaStation 1200 5/600 8MB (2cpu) (pedestal) literal ALPHA$K_AS16070A0801 = 1786; ! AlphaStation 1200 5/666 8MB (1cpu) (rack) literal ALPHA$K_AS16070A0802 = 1787; ! AlphaStation 1200 5/666 8MB (2cpu) (rack) literal ALPHA$K_AS1607090801 = 1788; ! AlphaStation 1200 5/666 8MB (1cpu) (pedestal) literal ALPHA$K_AS1607090802 = 1789; ! AlphaStation 1200 5/666 8MB (2cpu) (pedestal) literal ALPHA$K_AS1E07190001 = 1790; ! Personal Workstation 433au literal ALPHA$K_AS1E071A0001 = 1791; ! Personal Workstation 500au literal ALPHA$K_AS1E071B0001 = 1792; ! Personal Workstation 600au literal ALPHA$K_AS0C07080001 = 1793; ! AlphaServer 8200 5/625 (1cpu) literal ALPHA$K_AS0C07080002 = 1794; ! AlphaServer 8200 5/625 (2cpu) literal ALPHA$K_AS0C07080003 = 1795; ! AlphaServer 8200 5/625 (3cpu) literal ALPHA$K_AS0C07080004 = 1796; ! AlphaServer 8200 5/625 (4cpu) literal ALPHA$K_AS0C07080005 = 1797; ! AlphaServer 8200 5/625 (5cpu) literal ALPHA$K_AS0C07080006 = 1798; ! AlphaServer 8200 5/625 (6cpu) literal ALPHA$K_AS0C07090001 = 1799; ! AlphaServer 8400 5/625 (1cpu) literal ALPHA$K_AS0C07090002 = 1800; ! AlphaServer 8400 5/625 (2cpu) literal ALPHA$K_AS0C07090003 = 1801; ! AlphaServer 8400 5/625 (3cpu) literal ALPHA$K_AS0C07090004 = 1802; ! AlphaServer 8400 5/625 (4cpu) literal ALPHA$K_AS0C07090005 = 1803; ! AlphaServer 8400 5/625 (5cpu) literal ALPHA$K_AS0C07090006 = 1804; ! AlphaServer 8400 5/625 (6cpu) literal ALPHA$K_AS0C07090007 = 1805; ! AlphaServer 8400 5/625 (7cpu) literal ALPHA$K_AS0C07090008 = 1806; ! AlphaServer 8400 5/625 (8cpu) literal ALPHA$K_AS0C07090009 = 1807; ! AlphaServer 8400 5/625 (9cpu) literal ALPHA$K_AS0C0709000A = 1808; ! AlphaServer 8400 5/625 (10cpu) literal ALPHA$K_AS0C0709000B = 1809; ! AlphaServer 8400 5/625 (11cpu) literal ALPHA$K_AS0C0709000C = 1810; ! AlphaServer 8400 5/625 (12cpu) literal ALPHA$K_AS0C0709000D = 1811; ! AlphaServer 8400 5/625 (13cpu) literal ALPHA$K_AS0C0709000E = 1812; ! AlphaServer 8400 5/625 (14cpu) literal ALPHA$K_AS2208050001 = 1813; ! AlphaServer ES40 6/500 (1cpu, 10-slot PCI, 8-slot MMB) literal ALPHA$K_AS2208050002 = 1814; ! AlphaServer ES40 6/500 (2cpu) literal ALPHA$K_AS2208050003 = 1815; ! AlphaServer ES40 6/500 (3cpu) literal ALPHA$K_AS2208050004 = 1816; ! AlphaServer ES40 6/500 (4cpu) literal ALPHA$K_AS2208050101 = 1817; ! AlphaServer ES40 6/667 (1cpu, 10-slot PCI, 8-slot MMB) literal ALPHA$K_AS2208050102 = 1818; ! AlphaServer ES40 6/667 (2cpu) literal ALPHA$K_AS2208050103 = 1819; ! AlphaServer ES40 6/667 (3cpu) literal ALPHA$K_AS2208050104 = 1820; ! AlphaServer ES40 6/667 (4cpu) literal ALPHA$K_AS2208050201 = 1821; ! Professional Workstation XP1000 6/500 literal ALPHA$K_AS220B090001 = 1822; ! Professional Workstation XP1000 67/667 literal ALPHA$K_AS1E071C0001 = 1823; ! Personal Workstation 466au literal ALPHA$K_AS1E071D0001 = 1824; ! Personal Workstation 533au literal ALPHA$K_AS1E071E0001 = 1825; ! Personal Workstation 600au literal ALPHA$K_AS1E071F0001 = 1826; ! Personal Workstation 666au literal ALPHA$K_AS1E07200001 = 1827; ! Personal Workstation 700au literal ALPHA$K_AS1E07210001 = 1828; ! Personal Workstation 733au literal ALPHA$K_AS1E07220001 = 1829; ! Personal Workstation 767au literal ALPHA$K_AS1E07230001 = 1830; ! Personal Workstation 800au literal ALPHA$K_AS1E07240001 = 1831; ! Personal Workstation 833au literal ALPHA$K_AS1E07250001 = 1832; ! Personal Workstation 867au literal ALPHA$K_AS1E07260001 = 1833; ! Personal Workstation 900au literal ALPHA$K_AS1E07270001 = 1834; ! Personal Workstation 933au literal ALPHA$K_AS1E07280001 = 1835; ! Personal Workstation 967au literal ALPHA$K_AS1E07290001 = 1836; ! Personal Workstation 1000au literal ALPHA$K_AS2508010001 = 1837; ! SMARTengine Alpha 21264 SBC literal ALPHA$K_AS2208060001 = 1838; ! AlphaServer DS20 6/500 literal ALPHA$K_AS2208070001 = 1839; ! AlphaServer DS10 6/466 literal ALPHA$K_AS2208080001 = 1840; ! AlphaServer DS20E 6/500 literal ALPHA$K_AS0C080A0001 = 1841; ! AlphaServer GS60 6/525 (1cpu) literal ALPHA$K_AS0C080A0002 = 1842; ! AlphaServer GS60 6/525 (2cpu) literal ALPHA$K_AS0C080A0003 = 1843; ! AlphaServer GS60 6/525 (3cpu) literal ALPHA$K_AS0C080A0004 = 1844; ! AlphaServer GS60 6/525 (4cpu) literal ALPHA$K_AS0C080A0005 = 1845; ! AlphaServer GS60 6/525 (5cpu) literal ALPHA$K_AS0C080A0006 = 1846; ! AlphaServer GS60 6/525 (6cpu) literal ALPHA$K_AS0C080B0001 = 1847; ! AlphaServer GS140 6/525 (1cpu) literal ALPHA$K_AS0C080B0002 = 1848; ! AlphaServer GS140 6/525 (2cpu) literal ALPHA$K_AS0C080B0003 = 1849; ! AlphaServer GS140 6/525 (3cpu) literal ALPHA$K_AS0C080B0004 = 1850; ! AlphaServer GS140 6/525 (4cpu) literal ALPHA$K_AS0C080B0005 = 1851; ! AlphaServer GS140 6/525 (5cpu) literal ALPHA$K_AS0C080B0006 = 1852; ! AlphaServer GS140 6/525 (6cpu) literal ALPHA$K_AS0C080B0007 = 1853; ! AlphaServer GS140 6/525 (7cpu) literal ALPHA$K_AS0C080B0008 = 1854; ! AlphaServer GS140 6/525 (8cpu) literal ALPHA$K_AS0C080B0009 = 1855; ! AlphaServer GS140 6/525 (9cpu) literal ALPHA$K_AS0C080B000A = 1856; ! AlphaServer GS140 6/525 (10cpu) literal ALPHA$K_AS0C080B000B = 1857; ! AlphaServer GS140 6/525 (11cpu) literal ALPHA$K_AS0C080B000C = 1858; ! AlphaServer GS140 6/525 (12cpu) literal ALPHA$K_AS0C080B000D = 1859; ! AlphaServer GS140 6/525 (13cpu) literal ALPHA$K_AS0C080B000E = 1860; ! AlphaServer GS140 6/525 (14cpu) literal ALPHA$K_AS2208050301 = 1861; ! AlphaServer ES40 6/500 (1cpu, 6-slot PCI, 8-slot MMB) literal ALPHA$K_AS2208050302 = 1862; ! AlphaServer ES40 6/500 (2cpu) literal ALPHA$K_AS2208050303 = 1863; ! AlphaServer ES40 6/500 (3cpu) literal ALPHA$K_AS2208050304 = 1864; ! AlphaServer ES40 6/500 (4cpu) literal ALPHA$K_AS2208050401 = 1865; ! AlphaServer ES40 6/667 (1cpu, 6-slot PCI, 8-slot MMB) literal ALPHA$K_AS2208050402 = 1866; ! AlphaServer ES40 6/667 (2cpu) literal ALPHA$K_AS2208050403 = 1867; ! AlphaServer ES40 6/667 (3cpu) literal ALPHA$K_AS2208050404 = 1868; ! AlphaServer ES40 6/667 (4cpu) literal ALPHA$K_AS2208050501 = 1869; ! AlphaServer ES40 6/500 (1cpu, 6-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050502 = 1870; ! AlphaServer ES40 6/500 (2cpu) literal ALPHA$K_AS2208050503 = 1871; ! AlphaServer ES40 6/500 (3cpu) literal ALPHA$K_AS2208050504 = 1872; ! AlphaServer ES40 6/500 (4cpu) literal ALPHA$K_AS2208050601 = 1873; ! AlphaServer ES40 6/667 (1cpu, 6-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050602 = 1874; ! AlphaServer ES40 6/667 (2cpu) literal ALPHA$K_AS2208050603 = 1875; ! AlphaServer ES40 6/667 (3cpu) literal ALPHA$K_AS2208050604 = 1876; ! AlphaServer ES40 6/667 (4cpu) literal ALPHA$K_AS2107040001 = 1877; ! AlphaVME 5/480A, 5/480U literal ALPHA$K_AS2107050001 = 1878; ! AlphaVME 5/320U literal ALPHA$K_AS2208070101 = 1879; ! AlphaStation XP900, DS10, 6/466 literal ALPHA$K_AS0C080C0001 = 1880; ! AlphaServer GS60e 6/525 (1cpu) literal ALPHA$K_AS0C080C0002 = 1881; ! AlphaServer GS60e 6/525 (2cpu) literal ALPHA$K_AS0C080C0003 = 1882; ! AlphaServer GS60e 6/525 (3cpu) literal ALPHA$K_AS0C080C0004 = 1883; ! AlphaServer GS60e 6/525 (4cpu) literal ALPHA$K_AS0C080C0005 = 1884; ! AlphaServer GS60e 6/525 (5cpu) literal ALPHA$K_AS0C080C0006 = 1885; ! AlphaServer GS60e 6/525 (6cpu) literal ALPHA$K_AS0C080C0007 = 1886; ! AlphaServer GS60e 6/525 (7cpu) literal ALPHA$K_AS0C080C0008 = 1887; ! AlphaServer GS60e 6/525 (8cpu) literal ALPHA$K_AS0C0B0D0001 = 1890; ! AlphaServer GS60 67/700 (1cpu) literal ALPHA$K_AS0C0B0D0002 = 1891; ! AlphaServer GS60 67/700 (2cpu) literal ALPHA$K_AS0C0B0D0003 = 1892; ! AlphaServer GS60 67/700 (3cpu) literal ALPHA$K_AS0C0B0D0004 = 1893; ! AlphaServer GS60 67/700 (4cpu) literal ALPHA$K_AS0C0B0D0005 = 1894; ! AlphaServer GS60 67/700 (5cpu) literal ALPHA$K_AS0C0B0D0006 = 1895; ! AlphaServer GS60 67/700 (6cpu) literal ALPHA$K_AS0C0B0E0001 = 1896; ! AlphaServer GS140 67/700 (1cpu) literal ALPHA$K_AS0C0B0E0002 = 1897; ! AlphaServer GS140 67/700 (2cpu) literal ALPHA$K_AS0C0B0E0003 = 1898; ! AlphaServer GS140 67/700 (3cpu) literal ALPHA$K_AS0C0B0E0004 = 1899; ! AlphaServer GS140 67/700 (4cpu) literal ALPHA$K_AS0C0B0E0005 = 1900; ! AlphaServer GS140 67/700 (5cpu) literal ALPHA$K_AS0C0B0E0006 = 1901; ! AlphaServer GS140 67/700 (6cpu) literal ALPHA$K_AS0C0B0E0007 = 1902; ! AlphaServer GS140 67/700 (7cpu) literal ALPHA$K_AS0C0B0E0008 = 1903; ! AlphaServer GS140 67/700 (8cpu) literal ALPHA$K_AS0C0B0E0009 = 1904; ! AlphaServer GS140 67/700 (9cpu) literal ALPHA$K_AS0C0B0E000A = 1905; ! AlphaServer GS140 67/700 (10cpu) literal ALPHA$K_AS0C0B0E000B = 1906; ! AlphaServer GS140 67/700 (11cpu) literal ALPHA$K_AS0C0B0E000C = 1907; ! AlphaServer GS140 67/700 (12cpu) literal ALPHA$K_AS0C0B0E000D = 1908; ! AlphaServer GS140 67/700 (13cpu) literal ALPHA$K_AS0C0B0E000E = 1909; ! AlphaServer GS140 67/700 (14cpu) literal ALPHA$K_AS0C0B0F0001 = 1910; ! AlphaServer GS60e 67/700 (1cpu) literal ALPHA$K_AS0C0B0F0002 = 1911; ! AlphaServer GS60e 67/700 (2cpu) literal ALPHA$K_AS0C0B0F0003 = 1912; ! AlphaServer GS60e 67/700 (3cpu) literal ALPHA$K_AS0C0B0F0004 = 1913; ! AlphaServer GS60e 67/700 (4cpu) literal ALPHA$K_AS0C0B0F0005 = 1914; ! AlphaServer GS60e 67/700 (5cpu) literal ALPHA$K_AS0C0B0F0006 = 1915; ! AlphaServer GS60e 67/700 (6cpu) literal ALPHA$K_AS0C0B0F0007 = 1916; ! AlphaServer GS60e 67/700 (7cpu) literal ALPHA$K_AS0C0B0F0008 = 1917; ! AlphaServer GS60e 67/700 (8cpu) literal ALPHA$K_AS2208060002 = 1920; ! AlphaServer DS20 6/500 (2cpu) (pedestal) literal ALPHA$K_AS2208080002 = 1921; ! AlphaServer DS20 6/500 (2cpu) (rack) literal ALPHA$K_AS220B050001 = 1822; ! Professional Workstation XP1000 67/750 literal ALPHA$K_AS2208050701 = 1923; ! AlphaServer ES40 6/500 (1cpu, 10-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050702 = 1924; ! AlphaServer ES40 6/500 (2cpu) literal ALPHA$K_AS2208050703 = 1925; ! AlphaServer ES40 6/500 (3cpu) literal ALPHA$K_AS2208050704 = 1926; ! AlphaServer ES40 6/500 (4cpu) literal ALPHA$K_AS2208050801 = 1927; ! AlphaServer ES40 6/667 (1cpu, 10-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050802 = 1928; ! AlphaServer ES40 6/667 (2cpu) literal ALPHA$K_AS2208050803 = 1929; ! AlphaServer ES40 6/667 (3cpu) literal ALPHA$K_AS2208050804 = 1930; ! AlphaServer ES40 6/667 (4cpu) literal ALPHA$K_AS2208050901 = 1931; ! AlphaServer ES40 6/500 (1cpu, 10-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050902 = 1932; ! AlphaServer ES40 6/500 (2cpu) literal ALPHA$K_AS2208050903 = 1933; ! AlphaServer ES40 6/500 (3cpu) literal ALPHA$K_AS2208050904 = 1934; ! AlphaServer ES40 6/500 (4cpu) literal ALPHA$K_AS2208050A01 = 1935; ! AlphaServer ES40 6/667 (1cpu, 10-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050A02 = 1936; ! AlphaServer ES40 6/667 (2cpu) literal ALPHA$K_AS2208050A03 = 1937; ! AlphaServer ES40 6/667 (3cpu) literal ALPHA$K_AS2208050A04 = 1938; ! AlphaServer ES40 6/667 (4cpu) literal ALPHA$K_AS220B080001 = 1939; ! AlphaServer DS20E 67/667 (1cpu) (rack) literal ALPHA$K_AS220B080002 = 1940; ! AlphaServer DS20E 67/667 (2cpu) (rack) literal ALPHA$K_AS2208080101 = 1941; ! AlphaStation DS20E 6/500 (1cpu) (rack) literal ALPHA$K_AS2208080102 = 1942; ! AlphaStation DS20E 6/500 (2cpu) (rack) literal ALPHA$K_AS220B080101 = 1943; ! AlphaStation DS20E 67/667 (1cpu) (rack) literal ALPHA$K_AS220B080102 = 1944; ! AlphaStation DS20E 67/667 (2cpu) (rack) literal ALPHA$K_AS2208050B01 = 1945; ! AlphaStation XP4000 6/500 (1cpu) (6-slot PCI, 4-slot MMB) literal ALPHA$K_AS2208050B02 = 1946; ! AlphaStation XP4000 6/500 (2cpu) literal ALPHA$K_AS2208050B03 = 1947; ! AlphaStation XP4000 6/500 (3cpu) literal ALPHA$K_AS2208050B04 = 1948; ! AlphaStation XP4000 6/500 (4cpu) literal ALPHA$K_AS220B050101 = 1949; ! AlphaStation ES40 67/667 (1cpu) (6-slot PCI, 4-slot MMB) literal ALPHA$K_AS220B050102 = 1950; ! AlphaStation ES40 67/667 (2cpu) literal ALPHA$K_AS220B050103 = 1951; ! AlphaStation ES40 67/667 (3cpu) literal ALPHA$K_AS220B050104 = 1952; ! AlphaStation ES40 67/667 (4cpu) literal ALPHA$K_AS2208050C01 = 1953; ! AlphaStation XP4000 6/500 (1cpu) (10-slot PCI, 8-slot MMB) literal ALPHA$K_AS2208050C02 = 1954; ! AlphaStation XP4000 6/500 (2cpu) literal ALPHA$K_AS2208050C03 = 1955; ! AlphaStation XP4000 6/500 (3cpu) literal ALPHA$K_AS2208050C04 = 1956; ! AlphaStation XP4000 6/500 (4cpu) literal ALPHA$K_AS220B050201 = 1957; ! AlphaStation ES40 67/667 (1cpu) (10-slot PCI, 8-slot MMB) literal ALPHA$K_AS220B050202 = 1958; ! AlphaStation ES40 67/667 (2cpu) literal ALPHA$K_AS220B050203 = 1959; ! AlphaStation ES40 67/667 (3cpu) literal ALPHA$K_AS220B050204 = 1960; ! AlphaStation ES40 67/667 (4cpu) literal ALPHA$K_AS2208070201 = 1961; ! AlphaServer DS10L 6/466 literal ALPHA$K_AS220B070001 = 1962; ! AlphaServer DS10L 67/616 literal ALPHA$K_AS220B070101 = 1962; ! AlphaStation DS10 67/616 literal ALPHA$K_AS220D080001 = 1964; ! AlphaServer DS20E 68A/833 (1cpu) (rack) literal ALPHA$K_AS220D080002 = 1965; ! AlphaServer DS20E 68A/833 (2cpu) (rack) literal ALPHA$K_AS230B080000 = 1966; ! AlphaServer GS40 67/728 literal ALPHA$K_AS230B080100 = 1967; ! AlphaServer GS80 67/728 literal ALPHA$K_AS230B080200 = 1968; ! AlphaServer GS160 67/728 literal ALPHA$K_AS230B080300 = 1969; ! AlphaServer GS320 67/728 literal ALPHA$K_AS220B070201 = 1970; ! AlphaServer DS10 67/616 literal ALPHA$K_AS260C010001 = 1971; ! AlphaServer ES45/3B 68CB/1000 (1cpu) literal ALPHA$K_AS260C010002 = 1972; ! AlphaServer ES45/3B 68CB/1000 (2cpu) literal ALPHA$K_AS260C010003 = 1973; ! AlphaServer ES45/3B 68CB/1000 (3cpu) literal ALPHA$K_AS260C010004 = 1974; ! AlphaServer ES45/3B 68CB/1000 (4cpu) literal ALPHA$K_AS260C010101 = 1975; ! AlphaServer ES45/2, 2B 68CB/1000 (1cpu) literal ALPHA$K_AS260C010102 = 1976; ! AlphaServer ES45/2, 2B 68CB/1000 (2cpu) literal ALPHA$K_AS260C010103 = 1977; ! AlphaServer ES45/2, 2B 68CB/1000 (3cpu) literal ALPHA$K_AS260C010104 = 1978; ! AlphaServer ES45/2, 2B 68CB/1000 (4cpu) literal ALPHA$K_AS260D020002 = 1979; ! AlphaServer TS202c 68A/933 (2cpu) literal ALPHA$K_AS260D030001 = 1980; ! AlphaServer TS212c 68A/933 (1cpu) literal ALPHA$K_AS260D030002 = 1981; ! AlphaServer TS212c 68A/933 (2cpu) literal ALPHA$K_AS220D080101 = 1982; ! AlphaServer DS20E 68A/833 (1cpu) (pedestal) literal ALPHA$K_AS220D080102 = 1983; ! AlphaServer DS20E 68A/833 (2cpu) (pedestal) literal ALPHA$K_AS220C050001 = 1984; ! AlphaStation ES40 68/833 (1cpu) (10-slot PCI) literal ALPHA$K_AS220C050002 = 1985; ! AlphaStation ES40 68/833 (2cpu) literal ALPHA$K_AS220C050003 = 1986; ! AlphaStation ES40 68/833 (3cpu) literal ALPHA$K_AS220C050004 = 1987; ! AlphaStation ES40 68/833 (4cpu) literal ALPHA$K_AS220C050101 = 1988; ! AlphaStation ES40 68/833 (1cpu) (6-slot PCI) literal ALPHA$K_AS220C050102 = 1989; ! AlphaStation ES40 68/833 (2cpu) literal ALPHA$K_AS220C050103 = 1990; ! AlphaStation ES40 68/833 (3cpu) literal ALPHA$K_AS220C050104 = 1991; ! AlphaStation ES40 68/833 (4cpu) literal ALPHA$K_AS260C040101 = 1992; ! AlphaServer DS25 68CB/1000 (1cpu) literal ALPHA$K_AS260C040201 = 1993; ! AlphaStation DS25 68CB/1000 (1cpu) literal ALPHA$K_AS260C040102 = 1994; ! AlphaServer DS25 68CB/1000 (1cpu) literal ALPHA$K_AS260C040202 = 1995; ! AlphaStation DS25 68CB/1000 (1cpu) literal ALPHA$K_AS260C010201 = 2002; ! AlphaServer ES45/1B 68CB/1000 (1cpu) literal ALPHA$K_AS260C010202 = 2003; ! AlphaServer ES45/1B 68CB/1000 (2cpu) literal ALPHA$K_AS260C010203 = 2004; ! AlphaServer ES45/1B 68CB/1000 (3cpu) literal ALPHA$K_AS260C010204 = 2005; ! AlphaServer ES45/1B 68CB/1000 (4cpu) literal ALPHA$K_AS220D0C0002 = 2006; ! AlphaServer DS20L, API CS20, 68A/833 (2cpu) literal ALPHA$K_AS260C020002 = 2007; ! AlphaServer TS202c 68CB/1250 (2cpu) literal ALPHA$K_AS220C050201 = 2008; ! AlphaStation TS40 68/833 (1cpu) (14-slot PCI) literal ALPHA$K_AS220C050202 = 2009; ! AlphaStation TS40 68/833 (2cpu) literal ALPHA$K_AS220C050203 = 2010; ! AlphaStation TS40 68/833 (3cpu) literal ALPHA$K_AS220C050204 = 2011; ! AlphaStation TS40 68/833 (4cpu) literal ALPHA$K_AS260C010301 = 2013; ! AlphaServer ES45/3B 68CB/1250 (1cpu) literal ALPHA$K_AS260C010302 = 2014; ! AlphaServer ES45/3B 68CB/1250 (2cpu) literal ALPHA$K_AS260C010303 = 2015; ! AlphaServer ES45/3B 68CB/1250 (3cpu) literal ALPHA$K_AS260C010304 = 2016; ! AlphaServer ES45/3B 68CB/1250 (4cpu) literal ALPHA$K_AS260C010401 = 2017; ! AlphaServer ES45/2, 2B 68CB/1250 (1cpu) literal ALPHA$K_AS260C010402 = 2018; ! AlphaServer ES45/2, 2B 68CB/1250 (2cpu) literal ALPHA$K_AS260C010403 = 2019; ! AlphaServer ES45/2, 2B 68CB/1250 (3cpu) literal ALPHA$K_AS260C010404 = 2020; ! AlphaServer ES45/2, 2B 68CB/1250 (4cpu) literal ALPHA$K_AS260C010501 = 2021; ! AlphaServer ES45/1B 68CB/1250 (1cpu) literal ALPHA$K_AS260C010502 = 2022; ! AlphaServer ES45/1B 68CB/1250 (2cpu) literal ALPHA$K_AS260C010503 = 2023; ! AlphaServer ES45/1B 68CB/1250 (3cpu) literal ALPHA$K_AS260C010504 = 2024; ! AlphaServer ES45/1B 68CB/1250 (4cpu) literal ALPHA$K_AS270F010000 = 2025; ! AlphaServer TS212c Series literal ALPHA$K_AS270F020000 = 2029; ! AlphaServer TS80 literal ALPHA$K_AS270F000104 = 2030; ! AlphaServer ES47 literal ALPHA$K_AS270F000208 = 2031; ! AlphaServer GS80 literal ALPHA$K_AS270F000008 = 2038; ! AlphaServer GS1280 (8cpu capable) literal ALPHA$K_AS270F000010 = 2039; ! AlphaServer GS1280 (16cpu capable) literal ALPHA$K_AS270F000020 = 2040; ! AlphaServer GS1280 (32cpu capable) literal ALPHA$K_AS270F000040 = 2041; ! AlphaServer GS1280 (64cpu capable) literal ALPHA$K_AS270F000080 = 2042; ! AlphaServer GS1280 (128cpu capable) literal ALPHA$K_AS260C050001 = 2047; ! AlphaServer DS15 68CB/1000 literal ALPHA$K_AS260C050101 = 2048; ! AlphaStation DS15 68CB/1000 literal ALPHA$K_AS260C050201 = 2049; ! AlphaServer TS15 68CB/1000 literal ALPHA$K_MAX_SMM = 2051; literal ALPHA$K_MAX_MODEL = 1056; literal ALPHA$K_MAX_ALPHA = 8191; !*** MODULE $ARMDEF *** ! + ! Access Rights Mask longword definitions ! - literal ARM$M_READ = %X'1'; literal ARM$M_WRITE = %X'2'; literal ARM$M_EXECUTE = %X'4'; literal ARM$M_DELETE = %X'8'; literal ARM$M_CONTROL = %X'10'; literal ARM$M_CREATE = %X'4'; literal ARM$M_LOCK = %X'4'; literal ARM$M_PHYSICAL = %X'4'; literal ARM$M_LOGICAL = %X'8'; literal ARM$M_ASSOCIATE = %X'1'; literal ARM$M_SUBMIT = %X'2'; literal ARM$M_MANAGE = %X'4'; literal ARM$S_ARMDEF = 4; macro ARM$V_READ = 0,0,1,0 %; ! Read access macro ARM$V_WRITE = 0,1,1,0 %; ! Write access macro ARM$V_EXECUTE = 0,2,1,0 %; ! Execute access macro ARM$V_DELETE = 0,3,1,0 %; ! Delete access macro ARM$V_CONTROL = 0,4,1,0 %; ! Control access macro ARM$V_FILL = 0,5,27,0 %; literal ARM$S_FILL = 27; ! [LOADSS]SYSACLSRV depends on this being here! macro ARM$V_CREATE = 0,2,1,0 %; ! Create access (volume) macro ARM$V_LOCK = 0,2,1,0 %; ! Lock access (resource domain) macro ARM$V_PHYSICAL = 0,2,1,0 %; ! Physical I/O access (device) macro ARM$V_LOGICAL = 0,3,1,0 %; ! Logical I/O access (device) macro ARM$V_ASSOCIATE = 0,0,1,0 %; ! Associate access (common event cluster) macro ARM$V_SUBMIT = 0,1,1,0 %; ! Submit access (queue) macro ARM$V_MANAGE = 0,2,1,0 %; ! Manage access (queue) !*** MODULE $ATRDEF *** ! ATTRIBUTE LIST DESCRIPTION. THE ATTRIBUTE CONTROL LIST IS USED TO READ AND ! WRITE FILE ATTRIBUTES. IT CONSISTS OF CONCATENATED ATTRIBUTE CONTROL BLOCKS ! TERMINATED BY A SINGLE ZERO LONGWORD. ! literal ATR$C_UCHAR = 3; ! 4 BYTE USER FILE CHARACTERISTICS literal ATR$C_RECATTR = 4; ! 32 BYTES RECORD ATTRIBUTES literal ATR$C_FILNAM = 5; ! 6 BYTE RAD-50 FILE NAME literal ATR$C_FILTYP = 6; ! 2 BYTE RAD-50 FILE TYPE literal ATR$C_FILVER = 7; ! 2 BYTE BINARY FILE VERSION literal ATR$C_EXPDAT = 8; ! 7 BYTE ASCII EXPIRATION DATE literal ATR$C_STATBLK = 9; ! 32 BYTE STATISTICS BLOCK literal ATR$C_HEADER = 10; ! 512 BYTE FILE HEADER literal ATR$C_BLOCKSIZE = 11; ! MAGTAPE BLOCK SIZE literal ATR$C_USERLABEL = 12; ! USER FILE LABEL literal ATR$C_ASCDATES = 13; ! REVISION COUNT THRU EXP DATE IN ASCII literal ATR$C_ALCONTROL = 14; ! COMPATIBILITY MODE ALLOCATION DATA literal ATR$C_ENDLBLAST = 15; ! END OF MAGTAPE LABEL PROCESSING AND SUPPLY AST CONTROL BLOCK literal ATR$C_ASCNAME = 16; ! FILE NAME, TYPE & VERSION IN ASCII literal ATR$C_CREDATE = 17; ! 64 BIT CREATION DATE literal ATR$C_REVDATE = 18; ! 64 BIT REVISION DATE literal ATR$C_EXPDATE = 19; ! 64 BIT EXPIRATION DATE literal ATR$C_BAKDATE = 20; ! 64 BIT BACKUP DATE literal ATR$C_UIC = 21; ! 4 BYTE FILE OWNER UIC literal ATR$C_FPRO = 22; ! 2 BYTE FILE PROTECTION literal ATR$C_RPRO = 23; ! 2 BYTE RECORD PROTECTION literal ATR$C_ACLEVEL = 24; ! 1 BYTE FILE ACCESS LEVEL literal ATR$C_SEMASK = 25; ! FILE SECURITY MASK AND LIMIT literal ATR$C_UIC_RO = 26; ! READ ONLY UIC literal ATR$C_DIRSEQ = 27; ! DIRECTORY UPDATE SEQUENCE COUNT literal ATR$C_BACKLINK = 28; ! FILE BACK LINK POINTER literal ATR$C_JOURNAL = 29; ! JOURNAL CONTROL FLAGS literal ATR$C_HDR1_ACC = 30; ! ANSI TAPE HEADER 1 ACCESSIBILITY ! CHARACTER literal ATR$C_ADDACLENT = 31; ! ADD AN ACCESS CONTROL ENTRY literal ATR$C_DELACLENT = 32; ! REMOVE AN ACCESS CONTROL ENTRY literal ATR$C_MODACLENT = 33; ! MODIFY AN ACL ENTRY literal ATR$C_FNDACLENT = 34; ! LOCATE AN ACL ENTRY literal ATR$C_FNDACLTYP = 35; ! FIND A SPECIFIC TYPE OF ACE literal ATR$C_DELETEACL = 36; ! DELETE ACL LEAVING PROTECTED literal ATR$C_READACL = 37; ! READ THE ENTIRE ACL literal ATR$C_ACLLENGTH = 38; ! RETURN THE LENGTH OF THE ACL literal ATR$C_READACE = 39; ! READ A SINGLE ACE literal ATR$C_RESERVED = 40; ! MODIFY RESERVED AREA literal ATR$C_HIGHWATER = 41; ! HIGHWATER MARK (USER READ ONLY) literal ATR$C_DUMMY_0 = 42; ! *** AVAILABLE CODE literal ATR$C_PRIVS_USED = 43; ! PRIVILEGES USED TO GAIN ACCESS literal ATR$C_MATCHING_ACE = 44; ! ACE USED TO GAIN ACCESS (IF ANY) literal ATR$C_ACCESS_MODE = 45; ! ACCESS MODE FOR FOLLOWING ATTRIBUTE DESCRIPTORS literal ATR$C_FILE_SPEC = 46; ! CONVERT FID TO FILE-SPEC literal ATR$C_CLASS_MASK = 47; ! Non-discretionary classification mask literal ATR$C_BUFFER_OFFSET = 48; ! For magnetic tape only length of buffer offset of block in file literal ATR$C_RU_ACTIVE = 49; ! Recoverable facility id number (if non-zero, means file has ! active recovery units managed by that facility) literal ATR$C_GRANT_ACE = 50; ! ACE granting access literal ATR$C_NEXT_ACE = 51; ! Increment ACE number literal ATR$C_DELETE_ALL = 52; ! Delete the entire ACL literal ATR$C_BACKUP_DONE = 53; ! Alter backup info in RMS journaling ACEs ! ISO 9660 Descriptors literal ATR$C_EFFDATE = 54; ! ISO 9660 Backup Date literal ATR$C_RCDDATE = 55; ! ISO 9660 Recorded Date literal ATR$C_VD = 56; ! Volume Descriptor literal ATR$C_PVD = 57; ! Primary Volume Descriptor literal ATR$C_SVD = 58; ! Supplementary Volume Descriptor literal ATR$C_VPD = 59; ! Volume Partition Descriptor literal ATR$C_VDST = 60; ! Volume Descriptor Set Terminator literal ATR$C_BOOT = 61; ! Boot Record literal ATR$C_PTR = 62; ! Path Table Record literal ATR$C_DIR = 63; ! Directory Record literal ATR$C_XAR = 64; ! Extended Attribute Record ! ISO 9660 Descriptors Fields literal ATR$C_VOLUME_ID = 65; ! Volume Identifier literal ATR$C_VOLUME_FLAGS = 66; ! Volume Flags literal ATR$C_ESCAPE_SEQUENCES = 67; ! Escape Sequences literal ATR$C_VOLUME_SET_ID = 68; ! Volume Set Identifier literal ATR$C_COPYRIGHT_FID = 69; ! Copyright File Identifier literal ATR$C_ABSTRACT_FID = 70; ! Abstract File Identifier literal ATR$C_BIBLIOGRAPHIC_FID = 71; ! Bibliographic File Identifier literal ATR$C_CACHE_SEQ = 72; ! Cache sequence number literal ATR$C_FILE_SYSTEM_INFO = 73; ! File system structure level literal ATR$C_FILE_ATTR_CACHING_POLICY = 74; ! F64 caching only literal ATR$C_FILE_DATA_CACHING_POLICY = 75; ! F64 caching only literal ATR$C_CACHING_OPTIONS = 76; ! Spiralog/VDC caching options literal ATR$C_POSIX_DATA = 77; ! POSIX private data area literal ATR$C_ACCDATE = 78; ! ODS-5 last access time literal ATR$C_ATTDATE = 79; ! ODS-5 last attribute mod time literal ATR$C_LENGTH_HINT = 80; ! ODS-5 file length hint area literal ATR$C_EX_RECATTR = 81; ! ODS-5 extended RMS attributes - Reserved ! to Digital for future use. Must be zero. literal ATR$C_EXTFLAGS = 82; ! PATHWORKS MS-DOS flags literal ATR$C_MODDATE = 83; ! ODS-5 last data mod time literal ATR$C_LINKCOUNT = 84; ! ODS-5 (hard) link count literal ATR$C_SYMLINK = 85; ! ODS-5 symlink data ! All new attributes should be ! added here before MAX_PLUS1 literal ATR$C_MAX_PLUS1 = 86; ! Maximum code plus one literal ATR$C_MAX_CODE = 85; literal ATR$C_FNDACETYP = 35; ! Valid values for ATR$C_CACHING_POLICY literal ATR$C_CACHE_POLICY_WRITETHRU = 1; literal ATR$C_CACHE_POLICY_WRITEBACK = 2; literal ATR$C_CACHE_POLICY_DEFAULT = 3; ! ATTRIBUTE MAXIMUM LENGTHS literal ATR$S_UCHAR = 4; ! 4 BYTE USER FILE CHARACTERISTICS literal ATR$S_RECATTR = 32; ! 32 BYTES RECORD ATTRIBUTES literal ATR$S_FILNAM = 6; ! 6 BYTE RAD-50 FILE NAME literal ATR$S_FILTYP = 2; ! 2 BYTE RAD-50 FILE TYPE literal ATR$S_FILVER = 2; ! 2 BYTE BINARY FILE VERSION literal ATR$S_EXPDAT = 7; ! 7 BYTE ASCII EXPIRATION DATE literal ATR$S_STATBLK = 32; ! 32 BYTE STATISTICS BLOCK literal ATR$S_HEADER = 512; ! 512 BYTE FILE HEADER literal ATR$S_BLOCKSIZE = 2; ! MAGTAPE BLOCK SIZE literal ATR$S_USERLABEL = 80; ! USER FILE LABEL literal ATR$S_ASCDATES = 35; ! REVISION COUNT THRU EXP DATE IN ASCII literal ATR$S_ALCONTROL = 14; ! COMPATIBILITY MODE ALLOCATION DATA literal ATR$S_ENDLBLAST = 4; ! END OF MAGTAPE LABEL PROCESSING AND SUPPLY AST CONTROL BLOCK literal ATR$S_ASCNAME = 252; ! FILE NAME, TYPE & VERSION literal ATR$S_CREDATE = 8; ! 64 BIT CREATION DATE literal ATR$S_REVDATE = 8; ! 64 BIT REVISION DATE literal ATR$S_EXPDATE = 8; ! 64 BIT EXPIRATION DATE literal ATR$S_BAKDATE = 8; ! 64 BIT BACKUP DATE literal ATR$S_UIC = 4; ! 4 BYTE FILE OWNER UIC literal ATR$S_FPRO = 2; ! 2 BYTE FILE PROTECTION literal ATR$S_RPRO = 2; ! 2 BYTE RECORD PROTECTION literal ATR$S_ACLEVEL = 1; ! 1 BYTE FILE ACCESS LEVEL literal ATR$S_SEMASK = 8; ! FILE SECURITY MASK AND LIMIT literal ATR$S_UIC_RO = 4; ! READ ONLY UIC literal ATR$S_DIRSEQ = 2; ! DIRECTORY UPDATE SEQUENCE COUNT literal ATR$S_BACKLINK = 6; ! FILE BACK LINK POINTER literal ATR$S_JOURNAL = 1; ! JOURNAL CONTROL FLAGS literal ATR$S_HDR1_ACC = 1; ! ANSI TAPE HEADER 1 ACCESSIBILITY ! CHARACTER literal ATR$S_ADDACLENT = 255; ! ADD AN ACCESS CONTROL ENTRY literal ATR$S_DELACLENT = 255; ! REMOVE AN ACCESS CONTROL ENTRY literal ATR$S_MODACLENT = 255; ! MODIFY AN ACL ENTRY literal ATR$S_FNDACLENT = 255; ! LOCATE AN ACL ENTRY literal ATR$S_FNDACLTYP = 255; ! FIND A SPECIFIC TYPE OF ACE literal ATR$S_FNDACETYP = 255; ! FIND A SPECIFIC TYPE OF ACE literal ATR$S_DELETEACL = 255; ! DELETE ACL LEAVING PROTECTED literal ATR$S_READACL = 512; ! READ THE ENTIRE ACL literal ATR$S_ACLLENGTH = 4; ! RETURN THE LENGTH OF THE ACL literal ATR$S_READACE = 255; ! READ A SINGLE ACE literal ATR$S_RESERVED = 380; ! MODIFY RESERVED AREA literal ATR$S_HIGHWATER = 4; ! FILE HIGH WATER MARK (USER READ ONLY) literal ATR$S_DUMMY_0 = 4; ! *** AVAILABLE CODE literal ATR$S_PRIVS_USED = 4; ! PRIVS USED TO GAIN ACCESS literal ATR$S_MATCHING_ACE = 255; ! ACE USED TO GAIN ACCESS literal ATR$S_ACCESS_MODE = 1; ! ACCESS MODE FOR FOLLOWING ATTRIBUTE DESCRIPTORS literal ATR$S_FILE_SPEC = 4098; ! CONVERT FID TO FILE-SPEC literal ATR$S_CLASS_MASK = 20; ! Non-discretionary classification mask literal ATR$S_BUFFER_OFFSET = 2; ! Buffer offset length field literal ATR$S_RU_ACTIVE = 1; ! Recoverable facility id if RUs active literal ATR$S_GRANT_ACE = 255; ! ACE granting access literal ATR$S_NEXT_ACE = 4; ! Increment ACE number literal ATR$S_DELETE_ALL = 255; ! Delete the entire ACL literal ATR$S_BACKUP_DONE = 1; ! Alter backup info in RMS journaling ACEs ! ISO 9660 Descriptors literal ATR$S_EFFDATE = 8; ! 64 BIT EFFECTIVE DATE literal ATR$S_RCDDATE = 8; ! 64 BIT RECORDED DATE literal ATR$S_VD = 7; ! Volume Descriptor literal ATR$S_PVD = 1395; ! Primary Volume Descriptor literal ATR$S_SVD = 1395; ! Supplementary Volume Descriptor literal ATR$S_VPD = 88; ! Volume Partition Descriptor literal ATR$S_VDST = 7; ! Volume Descriptor Set Terminator literal ATR$S_BOOT = 71; ! Boot Record literal ATR$S_PTR = 45; ! Path Table Record literal ATR$S_DIR = 512; ! Directory Record literal ATR$S_XAR = 512; ! Extended Attribute Record ! ISO 9660 Descriptors Fields literal ATR$S_VOLUME_ID = 32; ! Volume Identifier literal ATR$S_VOLUME_FLAGS = 1; ! Volume Flags literal ATR$S_ESCAPE_SEQUENCES = 32; ! Escape Sequences literal ATR$S_VOLUME_SET_ID = 128; ! Volume Set Identifier literal ATR$S_COPYRIGHT_FID = 37; ! Copyright File Identifier literal ATR$S_ABSTRACT_FID = 37; ! Abstract File Identifier literal ATR$S_BIBLIOGRAPHIC_FID = 37; ! Bibliographic File Identifier literal ATR$S_CACHE_SEQ = 8; ! Cache sequence number literal ATR$S_FILE_SYSTEM_INFO = 2; ! file system structure level literal ATR$S_FILE_ATTR_CACHING_POLICY = 1; ! F64 caching only literal ATR$S_FILE_DATA_CACHING_POLICY = 1; ! F64 caching only literal ATR$S_POSIX_DATA = 64; ! F64 caching only literal ATR$S_CACHING_OPTIONS = 4; ! Spiralog/VDC caching options literal ATR$S_ACCDATE = 8; ! ODS-5 last access time literal ATR$S_ATTDATE = 8; ! ODS-5 last attribute mod time literal ATR$S_LENGTH_HINT = 16; ! ODS-5 file length hint area literal ATR$S_EX_RECATTR = 8; ! ODS-5 extended RMS attributes literal ATR$S_EXTFLAGS = 2; ! PATHWORKS MS-DOS flags literal ATR$S_LINKCOUNT = 2; ! ODS-5 (hard) link count literal ATR$S_MODDATE = 8; ! ODS-5 last data mod time literal ATR$S_SYMLINK = 1024; ! ODS-5 symlink data literal ATR$S_ATRDEF = 8; macro ATR$W_SIZE = 0,0,16,0 %; ! SIZE OF ATTRIBUTE IN BYTES macro ATR$W_TYPE = 2,0,16,0 %; ! ATTRIBUTE TYPE CODE macro ATR$L_ADDR = 4,0,32,0 %; ! ADDRESS OF ATTRIBUTE TEXT ! ATTRIBUTE CODES ! Define fields and constant values for ATR$_CACHING_OPTIONS longword. ! These must match [STARLET]FIBDEF.SDL exactly literal ATR$M_FILE_ATTRIBUTES = %X'F'; literal ATR$M_FILE_CONTENTS = %X'F0'; literal ATR$C_DEFAULT = 0; literal ATR$C_WRITETHROUGH = 1; literal ATR$C_WRITEBEHIND = 2; literal ATR$C_NOCACHING = 3; literal ATR$M_FLUSH_ON_CLOSE = %X'F00'; literal ATR$C_FLUSH = 1; literal ATR$C_NOFLUSH = 2; literal ATR$M_CACHING_OPTIONS_MBZ = %X'FFFFF000'; literal ATR$S_ATR_CACHING_OPTIONS_FLAGS = 4; macro ATR$V_FILE_ATTRIBUTES = 0,0,4,0 %; literal ATR$S_FILE_ATTRIBUTES = 4; macro ATR$V_FILE_CONTENTS = 0,4,4,0 %; literal ATR$S_FILE_CONTENTS = 4; macro ATR$V_FLUSH_ON_CLOSE = 0,8,4,0 %; literal ATR$S_FLUSH_ON_CLOSE = 4; macro ATR$V_CACHING_OPTIONS_MBZ = 0,12,20,0 %; literal ATR$S_CACHING_OPTIONS_MBZ = 20; ! Define fields and constant values for ATR$_FILESYSTEM_INFO word. ! These must match [LIB]F11DEF.SDL exactly literal ATR$C_ODS1 = 1; literal ATR$C_ODS2 = 2; literal ATR$C_ODS64 = 64; literal ATR$S_ATR_FILESYSTEM_INFO_FIELDS = 2; macro ATR$B_STRUCVER = 0,0,8,0 %; macro ATR$B_STRUCLEV = 1,0,8,0 %; !*** MODULE $BREAKDEF *** ! + ! BREAK Immediate value definitions ! ! - ! BASE AND OFFSET OF 1 literal BREAK$C_ARCH_BASE = 0; literal BREAK$C_ARCH_UNKNOWN = 0; literal BREAK$C_ARCH_INTDIV = 1; literal BREAK$C_ARCH_INTOVR = 2; literal BREAK$C_ARCH_SUBRNG = 3; literal BREAK$C_ARCH_NULPTRERR = 4; literal BREAK$C_ARCH_BADALIGN = 5; literal BREAK$C_ARCH_DECOVF = 6; literal BREAK$C_ARCH_DECDIV = 7; literal BREAK$C_ARCH_PKDEC = 8; literal BREAK$C_ARCH_DECINV = 9; literal BREAK$C_ARCH_PKDECINV = 10; literal BREAK$C_ARCH_PPSTKOVF = 11; literal BREAK$C_ARCH_MAX = 262143; literal BREAK$C_APPL_BASE = 262144; ! Values in this range produce a signal of SS$_BREAKAPPL literal BREAK$C_APPL_MAX = 524287; literal BREAK$C_DBG_BASE = 524288; literal BREAK$C_DBG_PAL_BPT = 524288; literal BREAK$C_DBG_INSTRUCTION = 524289; literal BREAK$C_DBG_LINE = 524290; literal BREAK$C_DBG_INIBRK = 524291; ! Meanings in this range are defined by the debugger in use literal BREAK$C_DBG_MAX = 1048575; literal BREAK$C_SYS_BASE = 1048576; literal BREAK$C_SYS_UNUSED = 1048576; literal BREAK$C_SYS_GENTRAP = 1048577; literal BREAK$C_SYS_BUGCHECK = 1048578; literal BREAK$C_SYS_HALT = 1048579; literal BREAK$C_SYS_CHKASTS = 1048580; literal BREAK$C_SYS_RFI = 1048581; literal BREAK$C_SYS_SWIS_LOG = 1048582; ! The remainder of codes in this range are OS-defined literal BREAK$C_SYS_MAX = 2097151; !*** MODULE $BRKDEF *** ! + ! ! Breakthru system service input definitions. ! ! - literal BRK$C_DEVICE = 1; ! device name literal BRK$C_USERNAME = 2; ! user name literal BRK$C_ALLUSERS = 3; ! all users literal BRK$C_ALLTERMS = 4; ! all logged in users literal BRK$C_MAXSENDTYPE = 4; ! ! Requestor ID's, DEC use only (0-31) ! literal BRK$C_GENERAL = 0; ! GENERAL (OR UNSPECIFIED) literal BRK$C_PHONE = 1; ! PHONE literal BRK$C_MAIL = 2; ! MAIL literal BRK$C_QUEUE = 3; ! QUEUE MANAGER literal BRK$C_SHUTDOWN = 4; ! SYSTEM SHUTDOWN literal BRK$C_URGENT = 5; ! URGENT MESSAGE literal BRK$C_DCL = 6; ! DCL (control T) literal BRK$C_OPCOM = 7; ! OPERATOR MESSAGE ! Note that only first 16 are really stored by TTDRIVER now literal BRK$C_USER1 = 32; ! reserved to customer literal BRK$C_USER2 = 33; ! reserved to customer literal BRK$C_USER3 = 34; ! reserved to customer literal BRK$C_USER4 = 35; ! reserved to customer literal BRK$C_USER5 = 36; ! reserved to customer literal BRK$C_USER6 = 37; ! reserved to customer literal BRK$C_USER7 = 38; ! reserved to customer literal BRK$C_USER8 = 39; ! reserved to customer literal BRK$C_USER9 = 40; ! reserved to customer literal BRK$C_USER10 = 41; ! reserved to customer literal BRK$C_USER11 = 42; ! reserved to customer literal BRK$C_USER12 = 43; ! reserved to customer literal BRK$C_USER13 = 44; ! reserved to customer literal BRK$C_USER14 = 45; ! reserved to customer literal BRK$C_USER15 = 46; ! reserved to customer literal BRK$C_USER16 = 47; ! reserved to customer literal BRK$M_SCREEN = %X'100'; literal BRK$M_BOTTOM = %X'200'; literal BRK$M_NOREFRESH = %X'400'; literal BRK$M_CLUSTER = %X'800'; literal BRK$S_FLAGS_INPUT = 2; ! mimics $BRDCSTDEF macro BRK$V_ERASE_LINES = 0,0,8,0 %; literal BRK$S_ERASE_LINES = 8; ! number of lines to erase macro BRK$V_SCREEN = 0,8,1,0 %; ! Do screen formatted write macro BRK$V_BOTTOM = 0,9,1,0 %; ! "screen" message at bottom macro BRK$V_NOREFRESH = 0,10,1,0 %; ! Refresh an interrupted read macro BRK$V_CLUSTER = 0,11,1,0 %; ! broadcast to cluster !*** MODULE $CAPDEF *** ! + literal CAP$K_ALL_USER = -1; literal CAP$K_ALL_USER_ADD = -1; literal CAP$K_ALL_CPU_ADD = -1; literal CAP$K_ALL_ACTIVE_CPUS = -1; literal CAP$K_ALL_USER_REMOVE = 0; literal CAP$K_ALL_CPU_REMOVE = 0; literal CAP$K_GET_FREE_CAP = 0; ! ! Constants defining user capability numbers ! literal CAP$M_USER1 = %X'1'; literal CAP$M_USER2 = %X'2'; literal CAP$M_USER3 = %X'4'; literal CAP$M_USER4 = %X'8'; literal CAP$M_USER5 = %X'10'; literal CAP$M_USER6 = %X'20'; literal CAP$M_USER7 = %X'40'; literal CAP$M_USER8 = %X'80'; literal CAP$M_USER9 = %X'100'; literal CAP$M_USER10 = %X'200'; literal CAP$M_USER11 = %X'400'; literal CAP$M_USER12 = %X'800'; literal CAP$M_USER13 = %X'1000'; literal CAP$M_USER14 = %X'2000'; literal CAP$M_USER15 = %X'4000'; literal CAP$M_USER16 = %X'8000'; literal CAP$S_CAP = 4; macro CAP$L_CAP = 0,0,32,0 %; macro CAP$V_USER1 = 0,0,1,0 %; macro CAP$V_USER2 = 0,1,1,0 %; macro CAP$V_USER3 = 0,2,1,0 %; macro CAP$V_USER4 = 0,3,1,0 %; macro CAP$V_USER5 = 0,4,1,0 %; macro CAP$V_USER6 = 0,5,1,0 %; macro CAP$V_USER7 = 0,6,1,0 %; macro CAP$V_USER8 = 0,7,1,0 %; macro CAP$V_USER9 = 0,8,1,0 %; macro CAP$V_USER10 = 0,9,1,0 %; macro CAP$V_USER11 = 0,10,1,0 %; macro CAP$V_USER12 = 0,11,1,0 %; macro CAP$V_USER13 = 0,12,1,0 %; macro CAP$V_USER14 = 0,13,1,0 %; macro CAP$V_USER15 = 0,14,1,0 %; macro CAP$V_USER16 = 0,15,1,0 %; ! ! Constants defining user CPU numbers ! literal CAP$M_CPU0 = %X'1'; literal CAP$M_CPU1 = %X'2'; literal CAP$M_CPU2 = %X'4'; literal CAP$M_CPU3 = %X'8'; literal CAP$M_CPU4 = %X'10'; literal CAP$M_CPU5 = %X'20'; literal CAP$M_CPU6 = %X'40'; literal CAP$M_CPU7 = %X'80'; literal CAP$M_CPU8 = %X'100'; literal CAP$M_CPU9 = %X'200'; literal CAP$M_CPU10 = %X'400'; literal CAP$M_CPU11 = %X'800'; literal CAP$M_CPU12 = %X'1000'; literal CAP$M_CPU13 = %X'2000'; literal CAP$M_CPU14 = %X'4000'; literal CAP$M_CPU15 = %X'8000'; literal CAP$M_CPU16 = %X'10000'; literal CAP$M_CPU17 = %X'20000'; literal CAP$M_CPU18 = %X'40000'; literal CAP$M_CPU19 = %X'80000'; literal CAP$M_CPU20 = %X'100000'; literal CAP$M_CPU21 = %X'200000'; literal CAP$M_CPU22 = %X'400000'; literal CAP$M_CPU23 = %X'800000'; literal CAP$M_CPU24 = %X'1000000'; literal CAP$M_CPU25 = %X'2000000'; literal CAP$M_CPU26 = %X'4000000'; literal CAP$M_CPU27 = %X'8000000'; literal CAP$M_CPU28 = %X'10000000'; literal CAP$M_CPU29 = %X'20000000'; literal CAP$M_CPU30 = %X'40000000'; literal CAP$M_CPU31 = %X'80000000'; literal CAP$S_CAP_CPUS = 4; macro CAP$L_CAP_CPUS = 0,0,32,0 %; macro CAP$V_CPU0 = 0,0,1,0 %; macro CAP$V_CPU1 = 0,1,1,0 %; macro CAP$V_CPU2 = 0,2,1,0 %; macro CAP$V_CPU3 = 0,3,1,0 %; macro CAP$V_CPU4 = 0,4,1,0 %; macro CAP$V_CPU5 = 0,5,1,0 %; macro CAP$V_CPU6 = 0,6,1,0 %; macro CAP$V_CPU7 = 0,7,1,0 %; macro CAP$V_CPU8 = 0,8,1,0 %; macro CAP$V_CPU9 = 0,9,1,0 %; macro CAP$V_CPU10 = 0,10,1,0 %; macro CAP$V_CPU11 = 0,11,1,0 %; macro CAP$V_CPU12 = 0,12,1,0 %; macro CAP$V_CPU13 = 0,13,1,0 %; macro CAP$V_CPU14 = 0,14,1,0 %; macro CAP$V_CPU15 = 0,15,1,0 %; macro CAP$V_CPU16 = 0,16,1,0 %; macro CAP$V_CPU17 = 0,17,1,0 %; macro CAP$V_CPU18 = 0,18,1,0 %; macro CAP$V_CPU19 = 0,19,1,0 %; macro CAP$V_CPU20 = 0,20,1,0 %; macro CAP$V_CPU21 = 0,21,1,0 %; macro CAP$V_CPU22 = 0,22,1,0 %; macro CAP$V_CPU23 = 0,23,1,0 %; macro CAP$V_CPU24 = 0,24,1,0 %; macro CAP$V_CPU25 = 0,25,1,0 %; macro CAP$V_CPU26 = 0,26,1,0 %; macro CAP$V_CPU27 = 0,27,1,0 %; macro CAP$V_CPU28 = 0,28,1,0 %; macro CAP$V_CPU29 = 0,29,1,0 %; macro CAP$V_CPU30 = 0,30,1,0 %; macro CAP$V_CPU31 = 0,31,1,0 %; literal CAP$M_IMPLICIT_AFFINITY_CLEAR = %X'1'; literal CAP$M_IMPLICIT_AFFINITY_SET = %X'2'; literal CAP$M_IMPLICIT_DEFAULT_ONLY = %X'4'; literal CAP$M_IMPLICIT_ALL_THREADS = %X'8'; literal CAP$S_IMP_FLAGS = 1; macro CAP$V_IMPLICIT_AFFINITY_CLEAR = 0,0,1,0 %; ! Shut implicit affinity off macro CAP$V_IMPLICIT_AFFINITY_SET = 0,1,1,0 %; ! Turn implicit affinity on macro CAP$V_IMPLICIT_DEFAULT_ONLY = 0,2,1,0 %; ! Only system default changed macro CAP$V_IMPLICIT_ALL_THREADS = 0,3,1,0 %; ! Change affects all kernel threads in process ! ! Note: the following flags structure must mimic that of [LIB]CPBDEF.SDL ! literal CAP$M_FLAG_CHECK_CPU = %X'1'; literal CAP$M_FLAG_PERMANENT = %X'2'; literal CAP$M_FLAG_CHECK_CPU_ACTIVE = %X'8'; literal CAP$M_FLAG_DEFAULT_ONLY = %X'10'; literal CAP$M_ALL_THREADS = %X'20'; literal CAP$M_PURGE_WS_IF_NEW_RAD = %X'40'; literal CAP$S_CAP_FLAGS = 1; macro CAP$V_FLAG_CHECK_CPU = 0,0,1,0 %; ! Check that process can run macro CAP$V_FLAG_PERMANENT = 0,1,1,0 %; ! Affect permanent mask macro CAP$V_FLAG_CHECK_CPU_ACTIVE = 0,3,1,0 %; ! Check all selected CPUs active macro CAP$V_FLAG_DEFAULT_ONLY = 0,4,1,0 %; ! Only system default changed macro CAP$V_ALL_THREADS = 0,5,1,0 %; ! Change affects all kernel threads in process macro CAP$V_PURGE_WS_IF_NEW_RAD = 0,6,1,0 %; ! If the home RAD was changed, purge the working set !*** MODULE $CBODEF *** ! + ! Define Create Buffer Object bits ! - literal CBO$M_RETSVA = %X'1'; literal CBO$M_EXMAXLIM = %X'2'; literal CBO$M_SVA_32 = %X'4'; literal CBO$M_NOSVA = %X'8'; literal CBO$M_SYSBUFOBJ = %X'10'; literal CBO$S_CREATE_BUFFER_OBJECT_FLAGS = 4; macro CBO$V_RETSVA = 0,0,1,0 %; ! (Priv) Return SVA, not PVA, of object macro CBO$V_EXMAXLIM = 0,1,1,0 %; ! (Priv) Bypass MAXBOBMEM check (VMS development use only) macro CBO$V_SVA_32 = 0,2,1,0 %; ! Allocate SVA from S0 space, $CREATE_BUFOBJ_64 only macro CBO$V_NOSVA = 0,3,1,0 %; ! Do not allocate any system space macro CBO$V_SYSBUFOBJ = 0,4,1,0 %; ! System buffer object (no process ties) !*** MODULE $CHFDEF *** ! ! CONDITION HANDLING ARGUMENT LIST OFFSETS ! THERE ARE FOUR CONDITIONAL HANDLING STRUCTURES: THE PRIMARY ARGUMENT ! LIST, THE SIGNAL AND MECHANISM ARRAYS AND THE ALPHA EXCEPTION RECORD ! ALL ARE IDENTIFIED BY THE SAME BLOCK PREFIX. ! literal CHF$S_CHFDEF = 12; macro CHF$L_SIGARGLST = 4,0,32,1 %; ! ADDRESS OF SIGNAL ARGUMENTS macro CHF$L_MCHARGLST = 8,0,32,1 %; ! ADDRESS OF MECHANISM ARGUMENTS literal CHF$S_CHFDEF1 = 12; macro CHF$IS_SIG_ARGS = 0,0,32,1 %; ! NUMBER OF SIGNAL ARGUMENTS macro CHF$L_SIG_ARGS = 0,0,32,1 %; ! obsolete def macro CHF$IS_SIG_NAME = 4,0,32,1 %; ! SIGNAL NAME macro CHF$L_SIG_NAME = 4,0,32,1 %; ! obsolete def macro CHF$IS_SIG_ARG1 = 8,0,32,1 %; ! FIRST SIGNAL SPECIFIC ARGUMENT macro CHF$L_SIG_ARG1 = 8,0,32,1 %; ! obsolete def literal CHF$M_FPREGS_VALID = %X'1'; literal CHF$M_FPREGS2_VALID = %X'2'; literal CHF$S_CHFDEF2 = 592; macro CHF$IS_MCH_ARGS = 0,0,32,1 %; ! NUMBER OF MECHANISM ARGUMENTS macro CHF$IS_MCH_FLAGS = 4,0,32,1 %; ! Flags macro CHF$R_MCH_FLAGS_BITS = 4,0,8,0 %; ! Flags bits. macro CHF$V_FPREGS_VALID = 4,0,1,0 %; ! FP registers stored in MCH. macro CHF$V_FPREGS2_VALID = 4,1,1,0 %; macro CHF$PH_MCH_FRAME = 8,0,0,1 %; literal CHF$S_MCH_FRAME = 8; ! ESTABLISHER FRAME ADDRESS macro CHF$IS_MCH_DEPTH = 16,0,32,1 %; ! FRAME DEPTH OF ESTABLISHER macro CHF$IH_MCH_DEPTH = 16,0,32,1 %; ! temp macro CHF$IS_MCH_RESVD1 = 20,0,32,1 %; ! reserved, paired with DEPTH macro CHF$PH_MCH_DADDR = 24,0,0,1 %; literal CHF$S_MCH_DADDR = 8; ! ESTABLISHER HANDLER DATA CELL macro CHF$PH_MCH_ESF_ADDR = 32,0,0,1 %; literal CHF$S_MCH_ESF_ADDR = 8; ! ESTABLISHER EXCEPTION STACK FRAME macro CHF$PH_MCH_SIG_ADDR = 40,0,0,1 %; literal CHF$S_MCH_SIG_ADDR = 8; ! ESTABLISHER EXCEPTION STACK FRAME macro CHF$IH_MCH_RETVAL = 48,0,0,1 %; literal CHF$S_MCH_RETVAL = 8; macro CHF$IH_MCH_SAVR0 = 48,0,0,1 %; literal CHF$S_MCH_SAVR0 = 8; ! SAVED REGISTER R0 macro CHF$IL_MCH_SAVR0_LOW = 48,0,32,1 %; ! LOW ORDER 32 BITS macro CHF$IL_MCH_SAVR0_HIGH = 52,0,32,0 %; ! HIGH ORDER 32 BITS macro CHF$IH_MCH_RETVAL2 = 56,0,0,1 %; literal CHF$S_MCH_RETVAL2 = 8; macro CHF$IH_MCH_SAVR1 = 56,0,0,1 %; literal CHF$S_MCH_SAVR1 = 8; ! SAVED REGISTER R1 macro CHF$IL_MCH_SAVR1_LOW = 56,0,32,1 %; ! LOW ORDER 32 BITS macro CHF$IL_MCH_SAVR1_HIGH = 60,0,32,0 %; ! HIGH ORDER 32 BITS macro CHF$PH_MCH_SIG64_ADDR = 64,0,0,1 %; literal CHF$S_MCH_SIG64_ADDR = 8; ! 64-bit sig array ptr macro CHF$PH_MCH_SAVF32_SAVF127 = 72,0,0,1 %; literal CHF$S_MCH_SAVF32_SAVF127 = 8; macro CHF$FH_MCH_RETVAL_FLOAT = 80,0,0,0 %; literal CHF$S_MCH_RETVAL_FLOAT = 16; macro CHF$FH_MCH_RETVAL2_FLOAT = 96,0,0,0 %; literal CHF$S_MCH_RETVAL2_FLOAT = 16; macro CHF$FH_MCH_SAVF2 = 112,0,0,0 %; literal CHF$S_MCH_SAVF2 = 16; macro CHF$FH_MCH_SAVF3 = 128,0,0,0 %; literal CHF$S_MCH_SAVF3 = 16; macro CHF$FH_MCH_SAVF4 = 144,0,0,0 %; literal CHF$S_MCH_SAVF4 = 16; macro CHF$FH_MCH_SAVF5 = 160,0,0,0 %; literal CHF$S_MCH_SAVF5 = 16; macro CHF$FH_MCH_SAVF12 = 176,0,0,0 %; literal CHF$S_MCH_SAVF12 = 16; macro CHF$FH_MCH_SAVF13 = 192,0,0,0 %; literal CHF$S_MCH_SAVF13 = 16; macro CHF$FH_MCH_SAVF14 = 208,0,0,0 %; literal CHF$S_MCH_SAVF14 = 16; macro CHF$FH_MCH_SAVF15 = 224,0,0,0 %; literal CHF$S_MCH_SAVF15 = 16; macro CHF$FH_MCH_SAVF16 = 240,0,0,0 %; literal CHF$S_MCH_SAVF16 = 16; macro CHF$FH_MCH_SAVF17 = 256,0,0,0 %; literal CHF$S_MCH_SAVF17 = 16; macro CHF$FH_MCH_SAVF18 = 272,0,0,0 %; literal CHF$S_MCH_SAVF18 = 16; macro CHF$FH_MCH_SAVF19 = 288,0,0,0 %; literal CHF$S_MCH_SAVF19 = 16; macro CHF$FH_MCH_SAVF20 = 304,0,0,0 %; literal CHF$S_MCH_SAVF20 = 16; macro CHF$FH_MCH_SAVF21 = 320,0,0,0 %; literal CHF$S_MCH_SAVF21 = 16; macro CHF$FH_MCH_SAVF22 = 336,0,0,0 %; literal CHF$S_MCH_SAVF22 = 16; macro CHF$FH_MCH_SAVF23 = 352,0,0,0 %; literal CHF$S_MCH_SAVF23 = 16; macro CHF$FH_MCH_SAVF24 = 368,0,0,0 %; literal CHF$S_MCH_SAVF24 = 16; macro CHF$FH_MCH_SAVF25 = 384,0,0,0 %; literal CHF$S_MCH_SAVF25 = 16; macro CHF$FH_MCH_SAVF26 = 400,0,0,0 %; literal CHF$S_MCH_SAVF26 = 16; macro CHF$FH_MCH_SAVF27 = 416,0,0,0 %; literal CHF$S_MCH_SAVF27 = 16; macro CHF$FH_MCH_SAVF28 = 432,0,0,0 %; literal CHF$S_MCH_SAVF28 = 16; macro CHF$FH_MCH_SAVF29 = 448,0,0,0 %; literal CHF$S_MCH_SAVF29 = 16; macro CHF$FH_MCH_SAVF30 = 464,0,0,0 %; literal CHF$S_MCH_SAVF30 = 16; macro CHF$FH_MCH_SAVF31 = 480,0,0,0 %; literal CHF$S_MCH_SAVF31 = 16; macro CHF$IH_MCH_SAVB1 = 496,0,0,1 %; literal CHF$S_MCH_SAVB1 = 8; macro CHF$IH_MCH_SAVB2 = 504,0,0,1 %; literal CHF$S_MCH_SAVB2 = 8; macro CHF$IH_MCH_SAVB3 = 512,0,0,1 %; literal CHF$S_MCH_SAVB3 = 8; macro CHF$IH_MCH_SAVB4 = 520,0,0,1 %; literal CHF$S_MCH_SAVB4 = 8; macro CHF$IH_MCH_SAVB5 = 528,0,0,1 %; literal CHF$S_MCH_SAVB5 = 8; macro CHF$IH_MCH_AR_LC = 536,0,0,1 %; literal CHF$S_MCH_AR_LC = 8; macro CHF$IH_MCH_AR_EC = 544,0,0,1 %; literal CHF$S_MCH_AR_EC = 8; macro CHF$PH_MCH_OSSD = 552,0,0,1 %; literal CHF$S_MCH_OSSD = 8; macro CHF$Q_MCH_INVO_HANDLE = 560,0,0,0 %; literal CHF$S_MCH_INVO_HANDLE = 8; macro CHF$PH_MCH_UWR_START = 568,0,0,1 %; literal CHF$S_MCH_UWR_START = 8; macro CHF$IH_MCH_FPSR = 576,0,0,0 %; literal CHF$S_MCH_FPSR = 8; macro CHF$IH_MCH_FPSS = 584,0,0,0 %; literal CHF$S_MCH_FPSS = 8; literal CHF$M_CALEXT_CANCEL = %X'1'; literal CHF$M_CALEXT_LAST = %X'2'; literal CHF$K_CALEXT_LENGTH = 16; ! LENGTH OF CATCH-ALL DESC BLOCK literal CHF$C_CALEXT_LENGTH = 16; ! LENGTH OF CATCH-ALL DESC BLOCK literal CHF$S_CHFDEF3 = 16; macro CHF$L_CALEXT_LINK = 0,0,32,1 %; ! CATCH-ALL EXTENSION LINK macro CHF$L_CALEXT_ADDRESS = 4,0,32,1 %; ! ADDRESS OF CATCH-ALL EXTENSION macro CHF$L_CALEXT_FLAGS = 8,0,32,0 %; ! FLAGS macro CHF$V_CALEXT_CANCEL = 8,0,1,0 %; ! REMOVE CATCH-ALL EXTENSION macro CHF$V_CALEXT_LAST = 8,1,1,0 %; ! LAST CATCH-ALL EXTENSION macro CHF$L_CALEXT_RESERVED = 12,0,32,0 %; ! RESERVED literal CHF64$S_CHFDEF6 = 24; macro CHF64$L_SIG_ARGS = 0,0,32,1 %; ! Longword including count & options macro CHF64$W_SIG_ARG_COUNT = 0,0,16,1 %; ! Word holding count itself macro CHF64$W_SIG_MSG_OPTIONS = 2,0,16,1 %; ! Word containing message options macro CHF64$L_SIGNAL64 = 4,0,32,1 %; ! 64-bit array tag: overlays sig_name of 32b version macro CHF64$Q_SIG_NAME = 8,0,0,1 %; literal CHF64$S_SIG_NAME = 8; ! Signal value macro CHF64$Q_SIG_ARG1 = 16,0,0,1 %; literal CHF64$S_SIG_ARG1 = 8; ! First signal argument !*** MODULE $CHKPNTDEF *** ! - ! ! Define flags for calls to create checkpointable processes ! + literal CHKPNT$M_AUTO_RESTART = %X'1'; literal CHKPNT$M_DEBUG = %X'2'; literal CHKPNT$M_ASYNC = %X'4'; literal CHKPNT$S_CHKPNTDEF = 1; macro CHKPNT$V_AUTO_RESTART = 0,0,1,0 %; ! auto-restart detached process macro CHKPNT$V_DEBUG = 0,1,1,0 %; ! merge in DEBUG macro CHKPNT$V_ASYNC = 0,2,1,0 %; ! asynchronous checkpoint process !*** MODULE $CHPDEF *** ! ! Item code definition for the $CHKPRO (check protection) system service. ! literal CHP$_END = 0; ! list end literal CHP$_ACCESS = 1; ! intended access literal CHP$_FLAGS = 2; ! read / write flags literal CHP$_PRIV = 3; ! privilege mask literal CHP$_ACMODE = 4; ! accessor access mode literal CHP$_ACCLASS = 5; ! accessor security classification literal CHP$_RIGHTS = 6; ! rights list literal CHP$_ADD_RIGHTS = 7; ! additional rights list segments literal CHP$_MODE = 8; ! simple access mode literal CHP$_MODES = 9; ! per action access mode literal CHP$_MIN_CLASS = 10; ! minimum security classification literal CHP$_MAX_CLASS = 11; ! maximum security classification literal CHP$_OWNER = 12; ! object owner UIC literal CHP$_PROT = 13; ! protection mask literal CHP$_ACL = 14; ! access control list segment literal CHP$_AUDIT_NAME = 15; ! audit names returned literal CHP$_ALARM_NAME = 16; ! alarm names returned literal CHP$_MATCHED_ACE = 17; ! address of matching ACE literal CHP$_PRIVUSED = 18; ! address of mask of privileges used literal CHP$_AUDIT_LIST = 19; ! address of supplemental audit item list literal CHP$_OBJECT_NAME = 20; ! object name descriptor literal CHP$_OBJECT_CLASS = 21; ! object class name descriptor literal CHP$_UIC = 22; ! accessor UIC literal CHP$_OBJECT_SPECIFIC = 23; ! object specific longword (for OSR) ! add new item codes before here literal CHP$_MAX_CODE = 24; ! highest CHP$ item code literal CHP$_ADDRIGHTS = 7; literal CHP$_MINCLASS = 10; literal CHP$_MAXCLASS = 11; literal CHP$_AUDITNAME = 15; literal CHP$_ALARMNAME = 16; literal CHP$_MATCHEDACE = 17; literal CHP$_CLASS = 5; literal CHP$K_MATCHED_ACE_LENGTH = 255; literal CHP$K_ALARM_LENGTH = 768; literal CHP$K_AUDIT_LENGTH = 1560; literal CHP$M_SYSPRV = %X'1'; literal CHP$M_BYPASS = %X'2'; literal CHP$M_UPGRADE = %X'4'; literal CHP$M_DOWNGRADE = %X'8'; literal CHP$M_GRPPRV = %X'10'; literal CHP$M_READALL = %X'20'; literal CHP$M_OPER = %X'40'; literal CHP$M_GRPNAM = %X'80'; literal CHP$M_SYSNAM = %X'100'; literal CHP$M_GROUP = %X'200'; literal CHP$M_WORLD = %X'400'; literal CHP$M_PRMCEB = %X'800'; literal CHP$K_NUMBER_OF_PRIVS = 12; literal CHP$S_PRIVS_USED_BITS = 2; macro CHP$V_SYSPRV = 0,0,1,0 %; ! access via SYSPRV privilege macro CHP$V_BYPASS = 0,1,1,0 %; ! access via BYPASS privilege macro CHP$V_UPGRADE = 0,2,1,0 %; ! access via UPGRADE privilege macro CHP$V_DOWNGRADE = 0,3,1,0 %; ! access via DOWNGRADE privilege macro CHP$V_GRPPRV = 0,4,1,0 %; ! access via GRPPRV privilege macro CHP$V_READALL = 0,5,1,0 %; ! access via READALL privilege macro CHP$V_OPER = 0,6,1,0 %; ! access via OPER privilege macro CHP$V_GRPNAM = 0,7,1,0 %; ! access via GRPNAM privilege macro CHP$V_SYSNAM = 0,8,1,0 %; ! access via SYSNAM privilege macro CHP$V_GROUP = 0,9,1,0 %; ! access via GROUP privilege macro CHP$V_WORLD = 0,10,1,0 %; ! access via WORLD privilege macro CHP$V_PRMCEB = 0,11,1,0 %; ! access via PRMCEB privilege literal CHP$M_OBSERVE = %X'1'; literal CHP$M_ALTER = %X'2'; literal CHP$M_READ = %X'1'; literal CHP$M_WRITE = %X'2'; literal CHP$M_USEREADALL = %X'4'; literal CHP$M_AUDIT = %X'8'; literal CHP$M_NOFAILAUD = %X'10'; literal CHP$M_NOSUCCAUD = %X'20'; literal CHP$M_DELETE = %X'40'; literal CHP$M_MANDATORY = %X'80'; literal CHP$M_FLUSH = %X'100'; literal CHP$M_CREATE = %X'200'; literal CHP$M_INTERNAL = %X'400'; literal CHP$M_SERVER = %X'800'; literal CHP$S_FLAG_BITS = 2; macro CHP$V_OBSERVE = 0,0,1,0 %; ! non-discretionary read access macro CHP$V_ALTER = 0,1,1,0 %; ! non-discretionary write access macro CHP$V_READ = 0,0,1,0 %; ! non-discretionary read access macro CHP$V_WRITE = 0,1,1,0 %; ! non-discretionary write access macro CHP$V_USEREADALL = 0,2,1,0 %; ! READALL privilege applies macro CHP$V_AUDIT = 0,3,1,0 %; ! access audit requested macro CHP$V_NOFAILAUD = 0,4,1,0 %; ! do not perform failed access audit macro CHP$V_NOSUCCAUD = 0,5,1,0 %; ! do not perform successful access audit macro CHP$V_DELETE = 0,6,1,0 %; ! perform audit as delete event type macro CHP$V_MANDATORY = 0,7,1,0 %; ! perform mandatory audit macro CHP$V_FLUSH = 0,8,1,0 %; ! force buffer flush in AUDIT_SERVER macro CHP$V_CREATE = 0,9,1,0 %; ! perform audit as create event type macro CHP$V_INTERNAL = 0,10,1,0 %; ! audit on behalf of VMS TCB macro CHP$V_SERVER = 0,11,1,0 %; ! audit originates in TCB server process literal CHP$M_NOACCESS = %X'1'; literal CHP$M_REMDUPID = %X'2'; literal CHP$M_INCSYSID = %X'4'; literal CHP$M_INCIMGID = %X'8'; literal CHP$M_DEFPRIV = %X'10'; literal CHP$M_DEFCLASS = %X'20'; literal CHP$S_PROFILE_FLAGS = 1; macro CHP$V_NOACCESS = 0,0,1,0 %; ! do not access UAF to build profile macro CHP$V_REMDUPID = 0,1,1,0 %; ! remove duplicate system rights IDs macro CHP$V_INCSYSID = 0,2,1,0 %; ! include system rights IDs macro CHP$V_INCIMGID = 0,3,1,0 %; ! include image rights IDs macro CHP$V_DEFPRIV = 0,4,1,0 %; ! initialize privs from default mask macro CHP$V_DEFCLASS = 0,5,1,0 %; ! initialize class from default mask !*** MODULE CIADEF IDENT x-4 *** literal CIA$K_SCAN = 1; literal CIA$K_DELETE = 2; literal CIA$K_SHOW = 3; literal CIA$K_PERFORMANCE = 4; literal CIA$K_ZERO_PERFORMANCE = 5; literal CIA$K_SCAN_EXTENDED = 6; literal CIA$K_DELETE_EXTENDED = 7; literal CIA$K_SHOW_EXTENDED = 8; literal CIA$K_MAX_CIA_CODE = 9; literal CIA$K_PERFORMANCE_LENGTH = 40; literal CIA$S_PERFORMANCE = 40; macro CIA$L_TOTAL_MESSAGES = 0,0,32,0 %; macro CIA$L_TOTAL_EXCEPTIONS = 4,0,32,0 %; macro CIA$L_SHOWS = 8,0,32,0 %; macro CIA$L_SCANS = 12,0,32,0 %; macro CIA$L_DELETES = 16,0,32,0 %; macro CIA$L_PERFORMANCE = 20,0,32,0 %; macro CIA$L_AUDITS = 24,0,32,0 %; macro CIA$L_INVALID_MESSAGES = 28,0,32,0 %; macro CIA$L_INTRUDERS = 32,0,32,0 %; macro CIA$L_SUSPECTS = 36,0,32,0 %; literal CIA$K_SOURCE_TERMINAL_LENGTH = 64; literal CIA$K_SOURCE_NODE_MAX_LENGTH = 1024; literal CIA$K_USER_SPEC_MAX_LENGTH = 1058; literal CIA$K_USER_STRING_MAX_LENGTH = 32; literal CIA$K_PASSWORD_MAX_LENGTH = 32; literal CIA$K_SOURCE_ADDRESS_MAX_LENGTH = 128; literal CIA$K_SCSNODE_LENGTH = 8; literal CIA$K_SCSNODE_REPLY_LENGTH = 12; literal CIA$K_USERDATA_LENGTH = 256; literal CIA$S_CIA$GENERIC_DESC = 5; macro CIA$W_DESC_LENGTH = 0,0,16,0 %; macro CIA$T_DESC_DATA = 4,0,8,0 %; literal CIAEXT$S_PACKET = 4; literal CIAEXT$S_EXTENSION_PACKET = 4; macro CIAEXT$W_TYPE = 0,0,16,0 %; ! packet type macro CIAEXT$W_LENGTH = 2,0,16,0 %; ! packet length NOT including T/L words macro CIAEXT$R_VALUE = 4,0,0,0 %; ! start of data literal CIAEXT$_USER_DATA = 100; literal CIAEXT$_SCSNODE = 101; literal CIAEXT$_SCSNODE_REPLY = 102; literal CIAEXT$_IMAGE_NAME = 103; literal CIAEXT$_MAX_CIAEXT_CODE = 104; literal CIA$_SCSNODE_LIST = 200; ! List of nodes for which to act literal CIA$_SCSNODE = 201; ! Single node for SCAN literal CIA$_OUTPUT_LIST = 202; ! List of nodes records occured on literal CIA$_USER_DATA = 203; ! Opaque Data. We don't use it. literal CIA$_USER_CRITERIAL = 204; ! Existing argument passed by item list literal CIA$_FAILED_USERNAME = 205; ! Existing argument passsed by item list literal CIA$_IMAGE_NAME = 206; ! Image name performing scan literal CIA$_MAX_CIA_ITEM = 207; literal CIA$K_IMAGE_NAME_MAX_SIZE = 4096; literal CIA$S_IMAGE_NAME = 4100; macro CIA$W_IMAGE_LENGTH = 0,0,16,0 %; macro CIA$T_IMAGE_STRING = 4,0,0,0 %; literal CIA$S_IMAGE_STRING = 4096; literal CIA$M_IGNORE_RETURN = %X'1'; literal CIA$M_RESERVED_1 = %X'FE'; literal CIA$M_SUSPECTS = %X'100'; literal CIA$M_INTRUDERS = %X'200'; literal CIA$M_SECONDARY_PASSWORD = %X'400'; literal CIA$M_NOAUDIT = %X'800'; literal CIA$M_REAL_USERNAME = %X'1000'; literal CIA$M_SHOW_NODE = %X'2000'; literal CIA$M_ITEMLIST = %X'4000'; literal CIA$M_FILL_1 = %X'FFFF8000'; literal CIA$K_HEADER_LENGTH = 8; literal CIA$S_HEADER = 8; macro CIA$L_CONTEXT = 0,0,32,0 %; macro CIA$L_HEADER_FLAGS = 4,0,32,0 %; macro CIA$V_IGNORE_RETURN = 4,0,1,0 %; macro CIA$V_RESERVED_1 = 4,1,7,0 %; literal CIA$S_RESERVED_1 = 7; macro CIA$V_SUSPECTS = 4,8,1,0 %; macro CIA$V_INTRUDERS = 4,9,1,0 %; macro CIA$V_SECONDARY_PASSWORD = 4,10,1,0 %; macro CIA$V_NOAUDIT = 4,11,1,0 %; macro CIA$V_REAL_USERNAME = 4,12,1,0 %; macro CIA$V_SHOW_NODE = 4,13,1,0 %; macro CIA$V_ITEMLIST = 4,14,1,0 %; macro CIA$V_FILL_1 = 4,15,17,0 %; literal CIA$S_FILL_1 = 17; literal CIA$K_SHOW_INPUT_LENGTH = 1062; literal CIA$K_DELETE_INPUT_LENGTH = 1062; literal CIA$S_CONTENTS = 1062; macro CIA$W_LENGTH = 0,0,16,0 %; macro CIA$T_NAME = 4,0,0,0 %; literal CIA$S_NAME = 1058; literal CIA$K_SCAN_CONTENTS_LENGTH = 1386; literal CIA$S_SCAN_CONTENTS = 1386; macro CIA$L_PARENT_ID = 0,0,32,0 %; macro CIA$L_JOB_TYPE = 4,0,32,0 %; macro CIA$L_LOGIN_STATUS = 8,0,32,0 %; macro CIA$T_SOURCE_TERMINAL = 12,0,0,0 %; literal CIA$S_SOURCE_TERMINAL = 68; macro CIA$W_SOURCE_TERM_LENGTH = 12,0,16,0 %; macro CIA$T_SOURCE_TERM_NAME = 16,0,0,0 %; literal CIA$S_SOURCE_TERM_NAME = 64; macro CIA$T_SOURCE_USER = 80,0,0,0 %; literal CIA$S_SOURCE_USER = 36; macro CIA$W_SOURCE_USER_LENGTH = 80,0,16,0 %; macro CIA$T_SOURCE_USER_NAME = 84,0,0,0 %; literal CIA$S_SOURCE_USER_NAME = 32; macro CIA$T_SOURCE_ADDRESS = 116,0,0,0 %; literal CIA$S_SOURCE_ADDRESS = 132; macro CIA$W_SOURCE_ADDR_LENGTH = 116,0,16,0 %; macro CIA$T_SOURCE_ADDRESS_NAME = 120,0,0,0 %; literal CIA$S_SOURCE_ADDRESS_NAME = 128; macro CIA$R_FAILED_USER = 250,0,0,0 %; literal CIA$S_FAILED_USER = 36; macro CIA$W_FAILED_USER_LENGTH = 250,0,16,0 %; macro CIA$T_FAILED_USER_NAME = 254,0,0,0 %; literal CIA$S_FAILED_USER_NAME = 32; macro CIA$T_FAILED_PASSWORD = 286,0,0,0 %; literal CIA$S_FAILED_PASSWORD = 36; macro CIA$W_FAILED_PASS_LENGTH = 286,0,16,0 %; macro CIA$T_FAILED_PASS_NAME = 290,0,0,0 %; literal CIA$S_FAILED_PASS_NAME = 32; macro CIA$T_PARENT_USER = 322,0,0,0 %; literal CIA$S_PARENT_USER = 36; macro CIA$W_PARENT_USER_LENGTH = 322,0,16,0 %; macro CIA$T_PARENT_USER_NAME = 326,0,0,0 %; literal CIA$S_PARENT_USER_NAME = 32; macro CIA$T_SOURCE_NODE = 358,0,0,0 %; literal CIA$S_SOURCE_NODE = 1028; macro CIA$W_SOURCE_NODE_LENGTH = 358,0,16,0 %; macro CIA$T_SOURCE_NODE_NAME = 362,0,0,0 %; literal CIA$S_SOURCE_NODE_NAME = 1024; literal CIA$M_INTRUDER = %X'1'; literal CIA$M_SUSPECT = %X'2'; literal CIA$M_NETWORK = %X'4'; literal CIA$M_TERM_USER = %X'8'; literal CIA$M_TERMINAL = %X'10'; literal CIA$M_USERNAME = %X'20'; literal CIA$M_FILL_2 = %X'FFFFFFC0'; literal CIA$K_SHOW_OUTPUT_LENGTH = 1086; literal CIA$S_SHOW_OUTPUT = 1086; macro CIA$L_STATUS = 0,0,32,0 %; macro CIA$L_RETURNED_CONTEXT = 4,0,32,0 %; macro CIA$Q_EXPIRATION_TIME = 8,0,0,0 %; literal CIA$S_EXPIRATION_TIME = 8; macro CIA$L_FLAGS = 16,0,32,0 %; macro CIA$V_INTRUDER = 16,0,1,0 %; macro CIA$V_SUSPECT = 16,1,1,0 %; macro CIA$V_NETWORK = 16,2,1,0 %; macro CIA$V_TERM_USER = 16,3,1,0 %; macro CIA$V_TERMINAL = 16,4,1,0 %; macro CIA$V_USERNAME = 16,5,1,0 %; macro CIA$L_ATTEMPT_COUNT = 20,0,32,0 %; macro CIA$T_USER_SPEC = 24,0,0,0 %; literal CIA$S_USER_SPEC = 1062; macro CIA$W_USER_SPEC_LENGTH = 24,0,16,0 %; macro CIA$T_USER_SPEC_NAME = 28,0,0,0 %; literal CIA$S_USER_SPEC_NAME = 1058; literal CIA$S_BREAKIN_BLOCK = 16; macro CIA$L_BREAK_FLAGS = 0,0,32,0 %; macro CIA$L_BREAK_COUNT = 4,0,32,0 %; macro CIA$Q_BREAK_TIME = 8,0,0,0 %; literal CIA$S_BREAK_TIME = 8; literal CIA$S_CIA$GENERIC_REPLY = 4; macro CIA$L_REPLY_STATUS = 0,0,32,0 %; ! status of request !*** MODULE $CLIDEF *** ! ++ ! ! $CLIDEF --- COMMAND LAGUAGE INTERFACE DEFINITIONS ! ! THIS MODULE DEFINES THE OFFSET VALUES FOR THE DATA STRUCTURES ! USED TO COMMUNICATED COMMAND INFORMATION BETWEEN THE CLI AND ! THE UTILITY THAT WAS REQUESTED TO PERFORM THE OPERATION. ! ! -- literal CLI$M_DEBUG = %X'1'; literal CLI$M_DBGTRU = %X'2'; literal CLI$M_VERIFY = %X'4'; literal CLI$M_BATCH = %X'8'; literal CLI$M_INDIRECT = %X'10'; literal CLI$M_VFYINP = %X'20'; literal CLI$M_TRMVRBLV = %X'300'; literal CLI$M_DBGEXCP = %X'10000'; literal CLI$S_CLIDEF = 32; macro CLI$L_INIARGCNT = 0,0,32,0 %; ! INITIAL ARG COUNT macro CLI$A_PROGXFER = 4,0,32,0 %; ! PROGRAM TRANSFER VECTOR ADDRESS macro CLI$A_UTILSERV = 8,0,32,0 %; ! ADDRESS OF CLI UTILITY SERVICE macro CLI$A_IMGHDADR = 12,0,32,0 %; ! ADDRESS OF IMAGE HEADER macro CLI$A_IMGFILED = 16,0,32,0 %; ! ADDRESS OF IMAGE FILE DATA macro CLI$L_LINKFLAG = 20,0,32,0 %; ! LINK FLAG LONGWORD macro CLI$L_CLIFLAG = 24,0,32,0 %; ! CLI FLAG LONGWORD macro CLI$V_DEBUG = 24,0,1,0 %; ! DEBUG QUALIFIER SEEN macro CLI$V_DBGTRU = 24,1,1,0 %; ! DEBUG WAS TRUE macro CLI$V_VERIFY = 24,2,1,0 %; ! VERIFY IS ON macro CLI$V_BATCH = 24,3,1,0 %; ! THIS PROCESS IS A BATCH JOB macro CLI$V_INDIRECT = 24,4,1,0 %; ! INDIRECT LEVEL NOT EQUAL TO ZERO macro CLI$V_VFYINP = 24,5,1,0 %; ! UTILITY SHOULD VERFIY INPUT macro CLI$V_TRMVRBLV = 24,8,2,0 %; literal CLI$S_TRMVRBLV = 2; ! TERMINAL VERBOSITY LEVEL macro CLI$V_DBGEXCP = 24,16,1,0 %; ! DEBUGGER CALLED VIA "DEBUG" EXCEPTION ! THE FOLLOWING ARGUMENTS ARE OPTIONAL DEPENDING ON INIARGCNT macro CLI$L_ARGLIST = 28,0,32,1 %; ! ADDRESS OF APPLICATION ARGUMENT LIST ! (USED FOR MERGED IMAGE ARG. PASSING) ! ! DEFINE CLI COMMAND INTERFACE REQUEST BLOCK ! literal CLI$M_PARMREQ = %X'1'; literal CLI$M_ABSADR = %X'2'; literal CLI$M_EXPNAM = %X'4'; literal CLI$M_LASTVAL = %X'1'; literal CLI$M_DUMMY = %X'2'; literal CLI$M_PARMPRS = %X'1'; literal CLI$M_CONCATINP = %X'2'; literal CLI$M_MOREINP = %X'4'; literal CLI$M_PARMDEF = %X'8'; literal CLI$M_MOREVALS = %X'1'; literal CLI$M_KEYVALU = %X'2'; literal CLI$K_REQDESC = 28; ! SIZE OF THE STRUCTURE literal CLI$C_REQDESC = 28; ! SIZE OF THE STRUCTURE ! literal CLI$S_CLIDEF1 = 28; macro CLI$B_RQTYPE = 0,0,8,0 %; ! TYPE OF REQUEST BEING MADE macro CLI$V_SUBTYP = 0,0,4,0 %; literal CLI$S_SUBTYP = 4; ! SUB TYPE VIELD macro CLI$V_PRITYP = 0,4,4,0 %; literal CLI$S_PRITYP = 4; ! PRIMARY TYPYE macro CLI$W_SERVCOD = 1,0,16,0 %; ! CLI SERVICE CODE macro CLI$B_RQINDX = 1,0,8,0 %; ! OFFSET FOR VALUE KEYWORD INDEX macro CLI$B_BITNUM = 1,0,8,0 %; ! BIT TO SET IF REQUEST IS SUCESSFUL macro CLI$B_RQFLGS = 2,0,8,0 %; ! INPUT FLAGS CONCERNING REQUEST macro CLI$V_PARMREQ = 2,0,1,0 %; ! PARAMATER IS REQUIRED macro CLI$V_ABSADR = 2,1,1,0 %; ! ALL ADDRESS ARE ABSOLUTE macro CLI$V_EXPNAM = 2,2,1,0 %; ! RETURN EXPLICIT NAMES ONLY macro CLI$V_LASTVAL = 2,0,1,0 %; ! LAST VALUE ALLOWED macro CLI$V_DUMMY = 2,1,1,0 %; ! *** SAVE PLACE FOR ABS ADR *** macro CLI$B_RQSTAT = 3,0,8,0 %; ! OUTPUT STATUS FLAGS macro CLI$V_PARMPRS = 3,0,1,0 %; ! PARAMETER IS PRESENT macro CLI$V_CONCATINP = 3,1,1,0 %; ! INPUT CONCATONATION EXISTS macro CLI$V_MOREINP = 3,2,1,0 %; ! ANOTHER SET OF INPUT PARAMETERS macro CLI$V_PARMDEF = 3,3,1,0 %; ! PARAMETER WAS DEFAULTED PRESENT macro CLI$V_MOREVALS = 3,0,1,0 %; ! UNPROCESSED VALUES REMAIN macro CLI$V_KEYVALU = 3,1,1,0 %; ! SUBSEQUENT TOKEN IS VALUE FOR KEY macro CLI$A_ERRACT = 4,0,32,0 %; ! ADDRESS OF ERROR ACTION ROUTINE macro CLI$Q_RQDESC = 8,0,0,0 %; literal CLI$S_RQDESC = 8; ! QUADWORD REQUEST DESCRIPTOR macro CLI$W_RQSIZE = 8,0,16,0 %; ! RESULTANT SIZE OF PARAMETER macro CLI$L_RQVALU = 12,0,32,0 %; ! ACTUAL VALUE IN VALUE CONVERSTION macro CLI$A_RQADDR = 12,0,32,0 %; ! ADDRESS OF RESULTANT PARAMETER macro CLI$A_PRSACT = 16,0,32,0 %; ! PARAMETER PRESENT ACTION ROUTINE macro CLI$A_ABSACT = 20,0,32,0 %; ! PARAMETER ABSENT ACTION ROUTINE macro CLI$A_QUALST = 24,0,32,0 %; ! ADDRESS OF QUALIFIERS ! Define the Descriptor Used by Symbol and Logical-name Callbacks ! literal CLI$S_CLIDEF2 = 36; macro CLI$Q_NAMDESC = 4,0,0,0 %; literal CLI$S_NAMDESC = 8; ! Logical name or symbol name macro CLI$Q_VALDESC = 12,0,0,0 %; literal CLI$S_VALDESC = 8; ! Equivalence name or symbol value macro CLI$Q_TABDESC = 20,0,0,0 %; literal CLI$S_TABDESC = 8; ! Name of logical name table macro CLI$L_ITMLST = 28,0,32,1 %; ! Address of item list macro CLI$L_ATTR = 32,0,32,1 %; ! Address of attribute longword ! ! Define the Descriptor Locations Used for the Old/New ! Out-of-Band Character(s) Masks ! literal CLI$S_CLIDEF3 = 12; macro CLI$L_NEW_MASK = 4,0,32,0 %; ! Enable/disable mask macro CLI$L_OLD_MASK = 8,0,32,0 %; ! Previous enabled values mask ! ! Define the descriptor used for ATTACH callback ! literal CLI$S_CLIDEF4 = 8; macro CLI$L_PID = 4,0,32,0 %; ! PID of "destination" process ! ! Define the descriptor used for SPAWN callback ! literal CLI$M_NOWAIT = %X'1'; literal CLI$M_NOCLISYM = %X'2'; literal CLI$M_NOLOGNAM = %X'4'; literal CLI$M_NOKEYPAD = %X'8'; literal CLI$M_NOTIFY = %X'10'; literal CLI$M_NOCONTROL = %X'20'; literal CLI$M_TRUSTED = %X'40'; literal CLI$M_AUTHPRIV = %X'80'; literal CLI$M_SUBSYSTEM = %X'100'; literal CLI$M_DETACHED = %X'200'; literal CLI$K_SPAWN_VERSION = 1; ! Latest version literal CLI$C_SPAWN_VERSION = 1; ! Latest version literal CLI$K_SRVDESC = 88; ! Length of longest "service" callback literal CLI$C_SRVDESC = 88; ! Length of longest "service" callback ! literal CLI$S_CLIDEF5 = 88; macro CLI$B_FLAGS = 4,0,8,0 %; ! Flags (as byte) macro CLI$W_FLAGS = 4,0,16,0 %; ! Flags (as word) macro CLI$V_NOWAIT = 4,0,1,0 %; ! Do not wait for subprocess completion macro CLI$V_NOCLISYM = 4,1,1,0 %; ! Do not copy CLI symbols to subprocess macro CLI$V_NOLOGNAM = 4,2,1,0 %; ! Do not copy logical names to subprocess macro CLI$V_NOKEYPAD = 4,3,1,0 %; ! Do not copy keypad state to subprocess macro CLI$V_NOTIFY = 4,4,1,0 %; ! Output notification message macro CLI$V_NOCONTROL = 4,5,1,0 %; ! Do not put CR/LF in front of prompt string macro CLI$V_TRUSTED = 4,6,1,0 %; ! Allow spawn regardless of UAF CAPTIVE flag macro CLI$V_AUTHPRIV = 4,7,1,0 %; ! Propagate AUTHPRIV to subprocess macro CLI$V_SUBSYSTEM = 4,8,1,0 %; ! Copy protected subsystem IDs to subprocess macro CLI$V_DETACHED = 4,9,1,0 %; ! Spawn a detached process macro CLI$L_OUTPID = 8,0,32,0 %; ! PID of subprocess on return macro CLI$L_LSTSTATUS = 12,0,32,1 %; ! Address to store final subprocess status macro CLI$Q_CMDSTR = 16,0,0,0 %; literal CLI$S_CMDSTR = 8; ! Descriptor of command string macro CLI$Q_INPUT = 24,0,0,0 %; literal CLI$S_INPUT = 8; ! Descriptor of input filespec macro CLI$Q_OUTPUT = 32,0,0,0 %; literal CLI$S_OUTPUT = 8; ! Descriptor of output filespec macro CLI$Q_PRCNAM = 40,0,0,0 %; literal CLI$S_PRCNAM = 8; ! Descriptor of name for subprocess macro CLI$L_ASTADR = 48,0,32,1 %; ! Address of termination AST routine macro CLI$L_ASTPRM = 52,0,32,1 %; ! Address of AST routine parameter macro CLI$B_EFN = 56,0,8,0 %; ! Event flag to set on termination macro CLI$B_VERSION = 57,0,8,0 %; ! Data structure version macro CLI$Q_PROMPT = 60,0,0,0 %; literal CLI$S_PROMPT = 8; ! Descriptor of prompt string macro CLI$Q_CLI = 68,0,0,0 %; literal CLI$S_CLI = 8; ! Descriptor of cli name macro CLI$Q_TABLE = 76,0,0,0 %; literal CLI$S_TABLE = 8; ! Descriptor of cli table name macro CLI$L_KT_LIMIT = 84,0,32,1 %; ! Kernel thread limit ! ! Define the length of the longest "supervisor-mode service" request block, ! so that programs can allocate a fixed amount of space for the block. ! ! DEFINE THE PARAMETER QUALIFIER DESCRIPTOR ! literal CLI$M_ALLOCCUR = %X'1'; literal CLI$M_QDUSRV = %X'2'; literal CLI$M_QDEXPA = %X'4'; literal CLI$M_QUALTRU = %X'1'; literal CLI$M_QUALEXP = %X'2'; literal CLI$K_QUALDEF = 20; ! SIZE OF FIXED PART OF STRUCTURE literal CLI$C_QUALDEF = 20; ! SIZE OF FIXED PART OF STRUCTURE literal CLI$K_QDBITS = 20; ! START OF BIT LISTS(VARIALBLE LENGTH) literal CLI$C_QDBITS = 20; ! START OF BIT LISTS(VARIALBLE LENGTH) literal CLI$S_CLIDEF6 = 24; macro CLI$B_QDBLKSIZ = 0,0,8,0 %; ! SIZE OF THE FINAL BLOCK macro CLI$B_QDCODE = 1,0,8,0 %; ! ID CODE FOR THE QUALIFIER macro CLI$B_QDFLGS = 2,0,8,0 %; ! FLAGS BYTE macro CLI$V_ALLOCCUR = 2,0,1,0 %; ! TAKE ACTION ON ALL OCCURANCES macro CLI$V_QDUSRV = 2,1,1,0 %; ! USER CONTEX VALUE IS PRESENT macro CLI$V_QDEXPA = 2,2,1,0 %; ! TAKE ACTION ON EXPLICIT OCCURANCES macro CLI$B_QDSTAT = 3,0,8,0 %; ! QUALIFIER STATUS macro CLI$V_QUALTRU = 3,0,1,0 %; ! QUALIFIER IS TRUE macro CLI$V_QUALEXP = 3,1,1,0 %; ! QUALIFIER EXPLICITLY STATED macro CLI$Q_QDVALDESC = 4,0,0,0 %; literal CLI$S_QDVALDESC = 8; ! QUALIFIER VALUE DESCRIPTOR macro CLI$W_QDVALSIZ = 4,0,16,0 %; ! SIZE OF VALUE macro CLI$A_QDVALADR = 8,0,32,0 %; ! ADDRESS OF VALUE STRING macro CLI$A_TRUACT = 12,0,32,0 %; ! QUALIFIER TRUE ACTION ROUTINE macro CLI$A_FLSACT = 16,0,32,0 %; ! QUALIFIER FALSE ACTION ROUTINE macro CLI$L_USRVAL = 20,0,32,0 %; ! OPTION USER VALUE IF PRESENT ! ! DEFINE SPACE FOR THE RESULT PARSE WORK AREA ! literal CLI$K_WORKAREA = 128; ! SIZE OF HEADER literal CLI$C_WORKAREA = 128; ! SIZE OF HEADER ! literal CLI$K_UTILOPR = 0; ! UTILITY OPERATIONS literal CLI$K_INPSPEC = 1; ! REQUEST FOR AN INPUT SPECIFICATION literal CLI$K_OUTSPEC = 2; ! AN OUTPUT FILE SPECIFICATION literal CLI$K_PARDONE = 3; ! PARAMETER DONE REQUEST literal CLI$K_VALCONV = 4; ! REQUEST A VALUE CONVERSION literal CLI$K_CLINT = 5; ! CLINT OPERATIONS ! literal CLI$K_INITPRS = 0; ! REQUEST INITIALIZATION OF PARSE literal CLI$K_GETCMD = 1; ! GET COMMAND BUFFER LIMITS literal CLI$K_GETQUAL = 2; ! OPTAIN STATE OF QUALIFIERS literal CLI$K_GETOPT = 3; ! DECODE COMMAND OPTION literal CLI$K_GETLINE = 4; ! GET COMMAND LINE ! ! THE CLISERV REQUEST TYPE APPEARS HERE, INSTEAD OF WITH THE OTHER REQUEST ! TYPES, BECAUSE IT HAS NO SUBFUNCTIONS ASSOCIATED WITH IT, AND BECAUSE A ! DAY 1 CODING ERROR CAUSES DCL TO EXPECT THAT THIS REQUEST NUMBER WILL ! APPEAR IN THE SUBFUNCTION BITS. THIS MEANS THAT NO UTILITY OPERATION ! CAN BE DEFINED WITH THE SUBFUNCTION NUMBER 5. ! literal CLI$K_CLISERV = 5; ! REQUEST A SERVICE FROM THE CLI ! literal CLI$K_INPUT1 = 16; ! PRIMARY INPUT literal CLI$K_INPUT2 = 17; ! SECONDARY INPUT literal CLI$K_INPUT3 = 18; ! THIRD, literal CLI$K_INPUT4 = 19; ! ETC,ETC,ETC ! literal CLI$K_OUTPUT1 = 32; ! FIRST OUTPUT literal CLI$K_OUTPUT2 = 33; ! SECOND OUTPUT literal CLI$K_OUTPUT3 = 34; ! THIRD,- literal CLI$K_OUTPUT4 = 35; ! ETC,ETC,ETC ! literal CLI$K_ENDPRM1 = 48; ! COMPLETED PARAMETER SET 1 literal CLI$K_ENDPRM2 = 49; ! COMPLETED PARAMETER SET 2 literal CLI$K_ENDPRM3 = 50; ! COMPLETED PARAMETER SET 3 literal CLI$K_ENDPRM4 = 51; ! COMPLETED PARAMETER SET 4 ! literal CLI$K_NUMERVAL = 64; ! NUMBERIC VALUE literal CLI$K_ASCIIVAL = 65; ! ASCII VALUE literal CLI$K_KEYWORD = 66; ! KEYWORD VALUE literal CLI$K_KEYVAL = 67; ! KEYWORD WITH VALUE literal CLI$K_FILSPEC = 68; ! VALUE IS A FILESPEC ! literal CLI$K_PRESENT = 80; ! DETERMINE IF ENTITY IS PRESENT literal CLI$K_GETVALUE = 81; ! GET VALUE OF ENTITY literal CLI$K_ENDPARSE = 82; ! CLEAN UP AFTER PARSING COMMAND literal CLI$K_DCLPARSE = 83; ! PARSE USER COMMAND LINE literal CLI$K_DISPATCH = 84; ! DISPATCH TO ACTION ROUTINE literal CLI$K_NEXTQUAL = 85; ! PROCESS NEXT QUALIFIER ! literal CLI$S_CLIDEF7 = 128; macro CLI$L_WORKAREA = 0,0,0,0 %; literal CLI$S_WORKAREA = 128; ! ALLOCATE 32 LONG WORDS ! DEFINE CLI UTILITY REQUEST CODES ! ! CODES ARE 8 BITS, CONSISTING OF 2 4 BIT FIELDS ! THE LEAST 4 BITS ARE SUBFUCTION DEFINITONS ! AND THE MOST SIGNIFICANT 4 BITS ARE REQUEST TYPE ! ! DEFINE REQUEST TYPE CODES ! DEFINE COMPLETE CODES FOR UTILITY OPERATIONS ! ! DEFINE COMPLETE CODES FOR INPUT SPECIFICATIONS ! ! DEFINE COMPLETE CODES FOR OUTPUT SPECIFICATIONS ! ! DEFINE CODES FOR RESULT PARSE PARAMETER COMPLETION ! ! DEFINE CODES FOR VALUE CONVERSION REQUESTS ! ! DEFINE COMPLETE CODES FOR UTILITY OPERATIONS ! ! DEFINE SET CODE SET REQUEST BLOCK ! literal CLI$S_CLIDEF8 = 8; macro CLI$L_CODESET = 4,0,32,0 %; ! CODE SET VALUE !*** MODULE $CLISERVDEF *** ! ! DEFINE CLI SERVICE REQUEST CODES ! ! DEFINE CLI SERVICE CODES literal CLI$K_PAUSE = 1; ! PAUSE THE IMAGE literal CLI$K_DEFLOCAL = 2; ! DEFINE A SYMBOL IN THE LOCAL TABLE literal CLI$K_DEFGLOBAL = 3; ! DEFINE A SYMBOL IN THE GLOBAL TABLE literal CLI$K_CHAIN = 4; ! PASS AN IMAGE TO RUN AFTER THIS ONE literal CLI$K_COMMAND = 5; ! PASS A COMMAND LINE TO LATER EXECUTE literal CLI$K_CREALOG = 6; ! DEFINE A PROCESS LOGICAL NAME literal CLI$K_DELELOG = 7; ! DELETE A PROCESS LOGICAL NAME literal CLI$K_DISACTRLY = 8; ! DISABLE DCL CONTROL Y PROCESSING literal CLI$K_ENABCTRLY = 9; ! ENABLE DCL CONTROL Y PROCESSING literal CLI$K_GETSYM = 10; ! RETURN VALUE OF A SYMBOL literal CLI$K_DELELCL = 11; ! DELETE A LOCAL SYMBOL literal CLI$K_DELEGBL = 12; ! DELETE A GLOBAL SYMBOL literal CLI$K_DISAOOB = 13; ! DISABLE OUT-OF-BAND CHARACTER(S) literal CLI$K_ENABOOB = 14; ! RE-ENABLE OUT-OF-BAND CHARACTER(S) literal CLI$K_SPAWN = 15; ! SPAWN A SUBPROCESS literal CLI$K_ATTACH = 16; ! ATTACH TO A PROCESS literal CLI$K_LIBDEFLOCAL = 17; ! DEFINE A SYMBOL IN LOCAL TABLE USING LIB$SET_SYMBOL literal CLI$K_LIBDEFGLOBAL = 18; ! DEFINE A SYMBOL IN GLOBAL TABLE USING LIB$SET_SYMBOL literal CLI$K_LIBGETSYM = 19; ! GET A SYMBOL VALUE USING LIB$GET_SYMBOL literal CLI$K_LIBDELELCL = 20; ! DELETE A SYMBOL USING LIB$DELETE_SYMBOL literal CLI$K_LIBDELEGBL = 21; ! DELETE A GLOBAL SYMBOL USING LIB$DELETE_SYMBOL literal CLI$K_SETCODESET = 22; ! SET CODE SET ! ! Define local/global symbol flag returned by GETSYM ! literal CLI$K_LOCAL_SYM = 1; ! Local symbol literal CLI$K_GLOBAL_SYM = 2; ! Global symbol !*** MODULE $CLIVERBDEF *** ! ! DEFINE GENERIC CODES FOR VERBS ! ! DEFINE VERB QENERIC CODES literal CLI$K_VERB_ALLO = 1; ! ALLOCATE literal CLI$K_VERB_ANAL = 2; ! ANALIZE literal CLI$K_VERB_ASSI = 3; ! ASSIGN literal CLI$K_VERB_BASI = 4; ! BASIC literal CLI$K_VERB_BLIS = 5; ! BLISS literal CLI$K_VERB_COBO = 6; ! COBOL literal CLI$K_VERB_CONT = 7; ! CONTINUE literal CLI$K_VERB_COPY = 8; ! COPY literal CLI$K_VERB_CREA = 9; ! CREATE literal CLI$K_VERB_DATA = 10; ! DATA literal CLI$K_VERB_DEAL = 11; ! DEALLOCATE literal CLI$K_VERB_DEAS = 12; ! DEASSIGN literal CLI$K_VERB_DEBU = 13; ! DEBUG literal CLI$K_VERB_DEFI = 14; ! DEFINE literal CLI$K_VERB_DELE = 15; ! DELETE literal CLI$K_VERB_DEPO = 16; ! DEPOSIT literal CLI$K_VERB_DIFF = 17; ! DIFFERENCE COMMAND literal CLI$K_VERB_DIRE = 18; ! DIRECTORY literal CLI$K_VERB_DISM = 19; ! DISMOUNT literal CLI$K_VERB_EDIT = 20; ! EDIT literal CLI$K_VERB_EOD = 21; ! EOD literal CLI$K_VERB_EXAM = 22; ! EXAMINE literal CLI$K_VERB_EXIT = 23; ! EXIT literal CLI$K_VERB_FORT = 24; ! FORTRAN literal CLI$K_VERB_GOTO = 25; ! GOTO literal CLI$K_VERB_HELP = 26; ! HELP literal CLI$K_VERB_IF = 27; ! IF literal CLI$K_VERB_INIT = 28; ! INITIALIZE literal CLI$K_VERB_INQU = 29; ! INQUIRE literal CLI$K_VERB_LINK = 30; ! LINK literal CLI$K_VERB_LOGO = 31; ! LOGOUT literal CLI$K_VERB_MACR = 32; ! MACRO literal CLI$K_VERB_MCR = 33; ! MCR literal CLI$K_VERB_ON = 34; ! ON literal CLI$K_VERB_PRIN = 35; ! PRINT literal CLI$K_VERB_RUN = 36; ! RUN literal CLI$K_VERB_SET = 37; ! SET literal CLI$K_VERB_SHOW = 38; ! SHOW literal CLI$K_VERB_STAR = 39; ! START literal CLI$K_VERB_STOP = 40; ! STOP literal CLI$K_VERB_SUBM = 41; ! SUBMIT literal CLI$K_VERB_TYPE = 42; ! TYPE literal CLI$K_VERB_MOUN = 43; ! MOUNT literal CLI$K_VERB_PATC = 44; ! PATCH literal CLI$K_VERB_REPL = 45; ! REPLAY literal CLI$K_VERB_UNLO = 46; ! UNLOCK literal CLI$K_VERB_APPE = 47; ! APPEND COMMAND literal CLI$K_VERB_DUMP = 48; ! DUMP literal CLI$K_VERB_PURG = 49; ! PURGE literal CLI$K_VERB_RENA = 50; ! RENAME literal CLI$K_VERB_CANC = 51; ! CANCEL literal CLI$K_VERB_LIBR = 52; ! LIBRARY literal CLI$K_VERB_SORT = 53; ! SORT literal CLI$K_VERB_REQU = 54; ! REQUEST literal CLI$K_VERB_SYNC = 55; ! SYNCRONIZE literal CLI$K_VERB_CORA = 56; ! CORAL literal CLI$K_VERB_PASC = 57; ! PASCAL literal CLI$K_VERB_PLI = 58; ! PL/1 literal CLI$K_VERB_MESS = 59; ! MESSAGE ! DEFINE VERB QENERIC CODES literal CLI$K_VERB_FORE = 255; ! FOREIGN COMMAND !*** MODULE $CLSDEF *** ! + ! ! Security classification block. Contains secrecy and integrity ! level and categories for non-discretionary (mandatory) access controls. ! ! - literal CLS$S_CLSDEF_TLVRNG = 4; ! Preserve previous size symbol literal CLS$S_CLS_TLVRNG = 4; ! Range specifier field references macro CLS$W_RANGE_LOW = 0,0,16,0 %; ! Range low limit macro CLS$W_RANGE_HIGH = 2,0,16,0 %; ! Range high limit literal CLS$K_END = 0; ! List terminator literal CLS$K_SC_ENUMERATE = 1; ! Secrecy category enumerated list literal CLS$K_SC_RANGE = 2; ! Secrecy category range list literal CLS$K_SC_MASK = 3; ! Secrecy category bitmask literal CLS$K_IC_ENUMERATE = 17; ! Integrity category enumerated list literal CLS$K_IC_RANGE = 18; ! Integirty category range list literal CLS$K_IC_MASK = 19; ! Integrity category bitmask literal CLS$K_VOID = 255; ! Voided entry literal CLS$S_CLSDEF_TLV = 8; ! Preserve previous size symbol literal CLS$S_CLS_TLV = 8; ! TLV entry field references macro CLS$B_TAG = 0,0,8,0 %; ! Format code macro CLS$B_LENGTH = 1,0,8,0 %; literal CLS$S_LENGTH = 1; ! Field length, intrepretation format ! dependent: macro CLS$B_COUNT = 1,0,8,0 %; ! # entries in an enumerated list ! # range pairs in a range list ! # longwords following voided entry macro CLS$B_MASK_SIZE = 1,0,8,0 %; ! # longwords in a bitmask macro CLS$R_VALUE_SET = 2,0,0,0 %; literal CLS$S_VALUE_SET = 6; ! Value set. macro CLS$W_CATLST = 2,0,16,0 %; literal CLS$S_CATLST = 2; ! Vector of enumerated cat. macro CLS$L_RNGLST = 4,0,32,0 %; literal CLS$S_RNGLST = 4; ! Vector of high:low word ! range pairs macro CLS$W_BASE = 2,0,16,0 %; ! Bias value macro CLS$L_MASK = 4,0,32,0 %; literal CLS$S_MASK = 4; ! <32 * MASK_SIZE> bit mask macro CLS$W_VOID = 2,0,16,0 %; literal CLS$S_VOID = 2; ! words literal CLS$K_MIN_SEC_LEV = 0; ! Minimum secrecy level literal CLS$K_MIN_INT_LEV = 0; ! Minimum integrity level literal CLS$K_MAX_SEC_LEV = 255; ! Maximum secrecy level literal CLS$K_MAX_INT_LEV = 255; ! Maximum integrity level literal CLS$K_MIN_SEC_CAT = 1; ! Minimum secrecy category literal CLS$K_MIN_INT_CAT = 1; ! Minimum integrity category literal CLS$K_MAX_SEC_CAT = 65536; ! Maximum supported secrecy category literal CLS$K_MAX_INT_CAT = 65536; ! Maximum supported integrity category literal CLS$K_MAX_SEC_CAT_S64I64 = 64; ! Maximum type 0 secrecy category literal CLS$K_MAX_INT_CAT_S64I64 = 64; ! Maximum type 0 integrity category literal CLS$K_MAX_SEC_CAT_S128 = 128; ! Maximum type 1 secrecy category literal CLS$K_MAX_SEC_CAT_DYN_CAT = 65536; ! Maximum type 2 secrecy category literal CLS$K_MAX_INT_CAT_DYN_CAT = 65536; ! Maximum type 2 integrity category literal CLS$K_TYP_S64I64 = 0; ! Type 0 class block identifier literal CLS$K_TYP_S128 = 1; ! Type 1 class block identifier literal CLS$K_TYP_DYN_CAT = 2; ! Type 2 class blook identifier literal CLS$K_LENGTH_HDR = 4; ! Size of common header literal CLS$K_LENGTH_S64I64 = 20; ! Size of type 0 class block literal CLS$K_LENGTH_S128 = 20; ! Size of type 1 class block literal CLS$K_LENGTH_DYN_CAT = 4; ! Size of type 2 class block ! fixed portion literal CLS$S_CLSDEF = 20; ! Preserve previous size definition literal CLS$K_LENGTH = 20; ! length of structure literal CLS$S_CLS = 20; macro CLS$B_SEC_LEV = 0,0,8,0 %; ! Secrecy level macro CLS$B_INT_LEV = 1,0,8,0 %; ! Integrity level macro CLS$B_TYPE = 2,0,8,0 %; ! Class block type ! Class block type identifiers macro CLS$B_TLVLST_SIZE = 3,0,8,0 %; ! Size in longwords of TLV list in ! a type 2 class block. ! ! Usage of the ..._S64I64 and ..._S128 symbolic name forms is preferred. ! Previous name forms have been retained for backwards compatibility only. ! macro CLS$Q_SEC_CAT_S64I64 = 4,0,0,0 %; literal CLS$S_SEC_CAT_S64I64 = 8; ! Secrecy category mask macro CLS$Q_INT_CAT_S64I64 = 12,0,0,0 %; literal CLS$S_INT_CAT_S64I64 = 8; ! Integrity category mask macro CLS$O_SEC_CAT_S128 = 4,0,0,0 %; literal CLS$S_SEC_CAT_S128 = 16; ! Secrecy category mask macro CLS$L_TLVLST = 4,0,32,0 %; literal CLS$S_TLVLST = 4; ! Tag-Length-Value_set list ! ! The following definitions have been superseded and are being retained for backwards compatibility only. ! Usage of the ..._S64I64 and ..._S128 symbolic names is preferred. ! macro CLS$Q_SEC_CAT_0 = 4,0,0,0 %; literal CLS$S_SEC_CAT_0 = 8; ! Secrecy category mask - Usage of CLS$Q_SEC_CAT_S64I64 preferred macro CLS$Q_INT_CAT_0 = 12,0,0,0 %; literal CLS$S_INT_CAT_0 = 8; ! Integrity category mask - Usage of CLS$Q_INT_CAT_S64I64 preferred macro CLS$O_SEC_CAT_1 = 4,0,0,0 %; literal CLS$S_SEC_CAT_1 = 16; ! Secrecy category mask - Usage of CLS$O_SEC_CAT_S128 preferred ! ! The following definitions have been superseded and are being retained for backwards compatibility only. ! Usage of the ..._S64I64 and ..._S128 symbolic names is preferred. ! macro CLS$B_SECUR_LEV = 0,0,8,0 %; ! Security level - Usage of CLS$B_SEC_LEV preferred macro CLS$B_INTEG_LEV = 1,0,8,0 %; ! Integrity level - Usage of CLS$B_INT_LEV preferred macro CLS$Q_SECUR_CAT = 4,0,0,0 %; literal CLS$S_SECUR_CAT = 8; ! Security category mask - Usage of CLS$Q_SEC_CAT_S64I64/CLS$O_SEC_CAT_S128 preferred macro CLS$Q_INTEG_CAT = 12,0,0,0 %; literal CLS$S_INTEG_CAT = 8; ! Integrity category mask - Usage of CLS$Q_INT_CAT_S64I64 preferred ! ! The CLS$S_CLSDEF definition is provided for backwards compatibility only. ! Usage of the CLS$K_LENGTH_S64I64, CLS$K_LENGTH_S128 and CLS$K_LENGTH_DYN_CAT definitions is preferred. ! ! ! $CHANGE_CLASS, PARSE_CLASS, FORMAT_CLASS system service item codes ! literal CLS$_SECSTR = 1; ! Textual secrecy/security string literal CLS$_INTSTR = 2; ! Textual integrity string literal CLS$_CLSBLK = 3; ! Simple classification block literal CLS$_MINCLSBLK = 4; ! Minimum classification block literal CLS$_MAXCLSBLK = 5; ! Maximum classification block literal CLS$_WIDTH = 6; ! Width of display for $FORMAT_CLASS literal CLS$_TRMDSC = 7; ! Line terminator for $FORMAT_CLASS literal CLS$_INDENT = 8; ! Line indenting for $FORMAT_CLASS literal CLS$_OLDCLSBLK = 9; ! Previous classification block literal CLS$_OLDMINCLS = 10; ! Previous minimum class block literal CLS$_OLDMAXCLS = 11; ! Previous maximum class block literal CLS$_TRANQUIL = 12; ! Override tranquility checks - Usage reserved to Digital literal CLS$_FLAGS = 13; ! Formatting control flags ! ADD ITEM-CODES BEFORE THIS COMMENT literal CLS$_MIN_ITEM_CODE = 1; literal CLS$_MAX_ITEM_CODE = 13; literal CLS$M_COMPRESS = %X'1'; literal CLS$M_EXPAND = %X'2'; literal CLS$S_FILL_112_ = 4; macro CLS$L_FLAGS = 0,0,32,0 %; ! $FORMAT_CLASS control flags macro CLS$V_COMPRESS = 0,0,1,0 %; ! Compress category range strings macro CLS$V_EXPAND = 0,1,1,0 %; ! Expande category range strings !*** MODULE $CLUEVTDEF *** literal CLUEVTHNDL$K_LENGTH = 8; ! Length of block. literal CLUEVTHNDL$C_LENGTH = 8; ! Length of block. literal cluevthndl$S_CLUEVTHNDL = 8; macro cluevthndl$l_cluacb_addr = 0,0,32,0 %; macro cluevthndl$l_seq_num = 4,0,32,0 %; literal CLUEVT$C_ADD = 1; literal CLUEVT$C_REMOVE = 2; !*** MODULE $CMBDEF *** ! + ! $CREMBX FLAGS bit definitions ! - literal CMB$M_READONLY = %X'1'; literal CMB$M_WRITEONLY = %X'2'; literal CMB$S_CMBDEF = 4; macro CMB$V_READONLY = 0,0,1,0 %; ! Channel to be assigned to mailbox is READ ONLY. macro CMB$V_WRITEONLY = 0,1,1,0 %; ! Channel to be assigned to mailbox is WRITE ONLY. !*** MODULE $CPUIDEF *** literal CPUI$K_TICKS = 1; ! Get CPU's tick info ! + ! CPUI Flags Definitions ! - literal CPUI$M_SEARCH = %X'1'; literal CPUI$M_RESERVED = %X'FFFFFFFE'; literal CPUI$S_CPUI_FLAGS = 4; macro CPUI$L_FLAGS = 0,0,32,0 %; macro CPUI$V_SEARCH = 0,0,1,0 %; ! If CPU not active, search for next CPU macro CPUI$V_RESERVED = 0,1,31,0 %; literal CPUI$S_RESERVED = 31; ! No other flags defined at this time literal CPUI$K_KERNEL_TICKS_INDEX = 0; ! 0 - kernel mode literal CPUI$K_EXEC_TICKS_INDEX = 1; ! 1 - exec mode literal CPUI$K_SUPER_TICKS_INDEX = 2; ! 2 - super mode literal CPUI$K_USER_TICKS_INDEX = 3; ! 3 - user mode literal CPUI$K_INT_TICKS_INDEX = 4; ! 4 - interrupt literal CPUI$K_MPSYNCH_TICKS_INDEX = 5; ! 5 - mpsynch literal CPUI$K_IDLE_TICKS_INDEX = 6; ! 6 - idle literal CPUI$K_TICKS_ENTRIES = 7; ! 7 - Total number of entries !*** MODULE $CRDEF *** ! + ! CARD READER STATUS BITS ! - literal CR$M_TMODE = %X'F'; literal CR$K_T026 = 0; ! 026 PUNCH CODE TRANSLATION literal CR$K_T029 = 1; ! 029 PUNCH CODE TRANSLATION literal CR$S_CRDEF = 1; macro CR$V_TMODE = 0,0,4,0 %; literal CR$S_TMODE = 4; ! TRANSLATION MODE ! ! TRANSLATION MODE DEFINITIONS ! ! !*** MODULE CSHDEF IDENT X-1 *** ! $SCHED function codes literal CSH$_READ_ALL = 23; ! Read data on all processes literal CSH$_READ_NEW = 24; ! Read data on new processes literal CSH$_SET_CLASS = 25; ! Place process(es) into class(es) literal CSH$_RES1 = 26; literal CSH$_RES2 = 27; literal CSH$_RES3 = 28; literal CSH$_RES4 = 29; literal CSH$_SET_NEW = 30; ! Define this process as "new" literal CSH$_SET_TIMEOUT = 31; ! Set deadman timer literal CSH$_RES5 = 32; literal CSH$_RES6 = 33; literal CSH$_RES7 = 34; literal CSH$_RES8 = 35; literal CSH$_READ_QUANT = 36; ! Read per-class quanta remaining literal CSH$_SET_QUANT = 37; ! Define per-class quanta literal CSH$_RES9 = 38; literal CSH$_RESA = 39; literal CSH$_RESB = 40; literal CSH$_RESC = 41; literal CSH$_SET_ATTN_AST = 42; ! Establish attention AST literal CSH$_RSED = 43; literal CSH$_RESE = 44; literal CSH$_RESF = 45; literal CSH$_RES0 = 46; literal CSH$_CLEAR_ATTN_AST = 47; ! Clear attention AST literal CSH$_MAX_SCHED_FUNC = 48; ! AST reason mask literal CSH$V_NEW_PROC = 1; ! Possible new process ! CSHC -- Class ScHeduler Class block ! ! Used to communicate from user to system, defining process/class mapping literal CSHC$K_LENGTH = 8; literal CSHC$C_LENGTH = 8; literal CSHC$S_CSHC = 8; macro CSHC$L_EPID = 0,0,32,0 %; ! EPID of target process macro CSHC$W_CLASS = 4,0,16,1 %; ! Class number, 0-N, %X'FFFF' means ! `Take out of class scheduling' macro CSHC$W_WINDFALL = 6,0,16,0 %; ! Windfall ticks to grant ! CSHP -- Class ScHeduler data block for Processes ! ! Used to communicate from system to user, showing various characteristics ! of processes. literal CSHP$K_LENGTH = 24; literal CSHP$C_LENGTH = 24; literal CSHP$S_CSHP = 24; macro CSHP$L_STATUS = 0,0,32,0 %; ! Copy of PCB$L_STS macro CSHP$W_PIX = 4,0,16,0 %; ! Process index slot macro CSHP$B_PRI = 6,0,8,1 %; ! Current priority (internal) macro CSHP$B_PRIB = 7,0,8,1 %; ! Current base priority (internal) macro CSHP$L_EPID = 8,0,32,0 %; ! The official PID macro CSHP$T_ACCOUNT = 12,0,0,0 %; literal CSHP$S_ACCOUNT = 8; ! Account string from PCB macro CSHP$L_CPUTIM = 20,0,32,0 %; ! CPU time charged !*** MODULE $CSTDEF *** ! + ! ! Constants defining single-transition operations ! literal CST$K_CPU_STOP = 1; literal CST$K_CPU_MIGRATE = 2; literal CST$K_CPU_START = 3; literal CST$K_CPU_ASSIGN = 4; literal CST$K_CPU_DEASSIGN = 5; literal CST$K_CPU_FAILOVER = 6; literal CST$K_CPU_POWER_OFF = 7; literal CST$K_CPU_POWER_ON = 8; ! ! Constants defining multiple operation masks. The starting ! position of these values must be in the upper word to save ! space for future single-operation codes ! literal CST$m_reserved1 = %X'FF'; literal CST$M_CPU_STOP = %X'100'; literal CST$M_CPU_MIGRATE = %X'200'; literal CST$M_CPU_START = %X'400'; literal CST$M_CPU_ASSIGN = %X'800'; literal CST$M_CPU_DEASSIGN = %X'1000'; literal CST$M_CPU_FAILOVER = %X'2000'; literal CST$M_CPU_POWER_OFF = %X'4000'; literal CST$M_CPU_POWER_ON = %X'8000'; literal CST$S_CST_MASK = 2; macro CST$v_reserved1 = 0,0,8,0 %; literal CST$s_reserved1 = 8; macro CST$V_CPU_STOP = 0,8,1,0 %; macro CST$V_CPU_MIGRATE = 0,9,1,0 %; macro CST$V_CPU_START = 0,10,1,0 %; macro CST$V_CPU_ASSIGN = 0,11,1,0 %; macro CST$V_CPU_DEASSIGN = 0,12,1,0 %; macro CST$V_CPU_FAILOVER = 0,13,1,0 %; macro CST$V_CPU_POWER_OFF = 0,14,1,0 %; macro CST$V_CPU_POWER_ON = 0,15,1,0 %; ! ! Constants defining target software nodes for reassignment ! literal CST$K_PARTITION = -1; literal CST$K_COMMUNITY = -2; literal CST$K_HARD_PARTITION = -3; literal CST$K_SW_ROOT = -4; ! ! Constants defining CPU types ! literal CST$K_ANY_OWNED_CPU = -1; literal CST$K_ANY_ACTIVE_CPU = -2; literal CST$K_ANY_STOPPED_CPU = -3; literal CST$K_ANY_UNOWNED_CPU = -4; ! ! Constants defining flag parameter characteristics ! literal CST$M_CPU_DEFAULT_CAPABILITIES = %X'1'; literal CST$M_CPU_ALLOW_ORPHANS = %X'2'; literal CST$M_CPU_DECONFIGURE = %X'4'; literal CST$S_CST_FLAGS = 1; macro CST$V_CPU_DEFAULT_CAPABILITIES = 0,0,1,0 %; macro CST$V_CPU_ALLOW_ORPHANS = 0,1,1,0 %; macro CST$V_CPU_DECONFIGURE = 0,2,1,0 %; !*** MODULE $DCDEF *** ! ! DEVICE ADAPTER, CLASS, AND TYPE DEFINITIONS ! ! ! DEFINE ADAPTER TYPES ! When adding a new adapter type, make sure a corresponding entry is added ! to the ADP_TBL_UP and ADP_TBL_DWN tables in any affected [SYSLOA]ERRSUB*.MAR ! modules. ! ! *************************************************************************** ! FURTHERMORE, when altering the list of AT$_ symbols, you MUST update the ! module [MANAGE]SMIIOGEN-UTILS.C. ! *************************************************************************** ! DEFINE ADAPTER TYPES literal AT$_MBA = 0; ! MASSBUS ADAPTER literal AT$_UBA = 1; ! UNIBUS ADAPTER literal AT$_DR = 2; ! DR32 ADAPTER literal AT$_MPM = 3; ! MULTI-PORT MEMORY literal AT$_CI = 4; ! CI BUS literal AT$_NULL = 5; ! NULL (SOFTWARE) ADAPTER literal AT$_BDA = 6; ! BI DISK ADAPTER(KDB50) literal AT$_DMB32 = 7; ! DMB32 ADAPTER literal AT$_DRB32 = 8; ! DRB32 ADAPTER literal AT$_BVP = 9; ! BVP GENERIC ADAPTER literal AT$_BVP_SSP = 10; ! BVP STORAGE SYSTEMS PORT literal AT$_BVP_NIP = 11; ! BVP NI PORT literal AT$_KA410 = 12; ! VAXstar system literal AT$_KA420 = 12; ! PVAX/CVAXstar system literal AT$_GENBI = 13; ! Generic BI device literal AT$_NBI = 14; ! NBIB on BI. literal AT$_DISK9 = 15; literal AT$_XBI = 16; literal AT$_TERM9 = 17; literal AT$_TAPE9 = 18; literal AT$_PRTR9 = 19; literal AT$_SFUN9 = 20; literal AT$_USER9 = 21; literal AT$_MBUSIO = 22; literal AT$_MBUSGFX = 23; literal AT$_KA640 = 24; literal AT$_XWATCH = 25; literal AT$_XBI_PLUS_XMI = 26; literal AT$_XBI_PLUS_BI = 27; literal AT$_XJA = 28; literal AT$_HSX50 = 29; literal AT$_KDM70 = 29; literal AT$_NI = 30; literal AT$_KA43 = 31; literal AT$_SJA = 32; literal AT$_GENXMI = 33; literal AT$_KA440 = 34; literal AT$_KA46 = 34; literal AT$_KA520 = 35; literal AT$_XSA = 36; literal AT$_XZA = 37; literal AT$_XZA_SCSI = 37; literal AT$_VME = 38; literal AT$_IOP = 39; literal AT$_LAMB = 40; literal AT$_KA49 = 41; literal AT$_TC = 42; literal AT$_X1303 = 43; literal AT$_XMI = 44; literal AT$_FBUS = 45; literal AT$_COREIO = 46; literal AT$_KA0202 = 47; literal AT$_KA0202_LBUS = 48; literal AT$_KA0302 = 49; literal AT$_KA0402 = 50; literal AT$_TURBO_SCSI = 51; literal AT$_CIMNA = 52; literal AT$_XZA_DSSI = 53; literal AT$_DEMNA = 54; literal AT$_FFA = 55; literal AT$_KA0602 = 56; literal AT$_EISA = 57; literal AT$_VTI_COMBO = 58; literal AT$_KA0702 = 64; literal AT$_TC_MULTI_NI = 65; literal AT$_AHA_1742A = 66; literal AT$_KA0902 = 67; literal AT$_PCI = 68; literal AT$_KA0802 = 69; literal AT$_MULTIFUNCTION_PCI = 70; literal AT$_ISA = 71; literal AT$_XBUS = 72; literal AT$_KA0C05 = 73; literal AT$_KA0E04 = 74; literal AT$_KA0D02 = 75; literal AT$_THIRDPARTY0 = 76; literal AT$_THIRDPARTY1 = 77; literal AT$_THIRDPARTY2 = 78; literal AT$_THIRDPARTY3 = 79; literal AT$_THIRDPARTY4 = 80; literal AT$_THIRDPARTY5 = 81; literal AT$_THIRDPARTY6 = 82; literal AT$_THIRDPARTY7 = 83; literal AT$_MULTIFUNCTION_ISA = 84; literal AT$_KA0F05 = 85; literal AT$_LMCP = 86; literal AT$_TIOP = 87; literal AT$_ITIOP = 88; literal AT$_KA1102 = 89; literal AT$_KA1504 = 90; literal AT$_HPC = 91; literal AT$_PCMCIA = 92; literal AT$_KA1402 = 93; literal AT$_KA0905 = 94; literal AT$_KA1802 = 95; literal AT$_KA1805 = 96; literal AT$_MEMCHAN = 97; literal AT$_KA1B02 = 98; literal AT$_KA1B05 = 99; literal AT$_KA1A05 = 100; literal AT$_KA1605 = 101; literal AT$_MC_BUS = 102; literal AT$_KA1105 = 103; literal AT$_KA1702 = 104; literal AT$_KA1E07 = 105; literal AT$_KA2005 = 106; literal AT$_KA2405 = 107; literal AT$_KA2208 = 108; literal AT$_KA2508 = 109; literal AT$_KA2308 = 110; literal AT$_WFQBB = 111; literal AT$_WFIOP = 112; literal AT$_WFPCA = 113; literal AT$_KA2608 = 114; literal AT$_KA270F = 115; literal AT$_IO7 = 116; literal AT$_I2000 = 117; literal AT$_ACPI_IA64_PLTFRM = 118; literal AT$_ACPI_IA64_CONTAIN = 119; literal AT$_ACPI_IA64_SYSBUS = 120; literal AT$_ACPI_IA64_BUSLESS = 121; literal AT$_ACPI_IA64_IOC = 122; literal AT$_PCIE = 123; ! ! DEFINE DEVICE CLASSES ! ! DEFINE DEVICE CLASSES literal DC$_ANY = 0; ! ANY ! NOTE: This "special" device class ! is only used by [SYS]SYSGETDVI.MAR for ! item code validation. It should not be ! used for anything else, especially for ! device creation by driver writers! literal DC$_DISK = 1; ! DISK literal DC$_TAPE = 2; ! TAPES literal DC$_SCOM = 32; ! SYNCHRONOUS COMMUNICATIONS DEVICES literal DC$_CARD = 65; ! CARD READER literal DC$_TERM = 66; ! TERMINAL literal DC$_LP = 67; ! LINE PRINTER literal DC$_WORKSTATION = 70; ! WORKSTATIONS literal DC$_REALTIME = 96; ! REAL-TIME literal DC$_DECVOICE = 97; ! DECVOICE products literal DC$_AUDIO = 98; ! General audio literal DC$_VIDEO = 99; ! General video literal DC$_BUS = 128; ! BUSES, E.G, CI literal DC$_MAILBOX = 160; ! MAILBOX literal DC$_REMCSL_STORAGE = 170; ! REMOTE CONSOLE STORAGE literal DC$_MISC = 200; ! MISCELLANEOUS DEVICES ! ! DEFINE DEVICE TYPES ! ! ! DISK DEVICES ! literal DT$_RK06 = 1; ! RK06 DISK literal DT$_RK07 = 2; ! RK07 DISK literal DT$_RP04 = 3; ! RP04 DISK literal DT$_RP05 = 4; ! RP05 DISK literal DT$_RP06 = 5; ! RP06 DISK literal DT$_RM03 = 6; ! RM03 DISK literal DT$_RP07 = 7; ! RP07 DISK literal DT$_RP07HT = 8; ! RP07 DISK WITH HEAD/TRACK literal DT$_RL01 = 9; ! RL01 DISK literal DT$_RL02 = 10; ! RL02 DISK literal DT$_RX02 = 11; ! RX02 DISK literal DT$_RX04 = 12; ! RX04 DISK literal DT$_RM80 = 13; ! RM80 DISK literal DT$_TU58 = 14; ! TU58 literal DT$_RM05 = 15; ! RM05 DISK literal DT$_RX01 = 16; ! RX01 DISK literal DT$_ML11 = 17; ! ML11 disk literal DT$_RB02 = 18; ! R02 ON RB730 literal DT$_RB80 = 19; ! R80 ON RB730 literal DT$_RA80 = 20; ! R80 ON INTELLIGENT CONTROLLER literal DT$_RA81 = 21; ! R81 ON INTELLIGENT CONTROLLER literal DT$_RA60 = 22; ! PINON ON INTELLIGENT CONTROLLER literal DT$_RZ01 = 23; ! AZTEC REMOVABLE (Old name) literal DT$_RC25 = 23; ! AZTEC REMOVABLE (New name) literal DT$_RZF01 = 24; ! AZTEC FIXED (Old name) literal DT$_RCF25 = 24; ! AZTEC FIXED (New name) literal DT$_RD51 = 25; ! RD51 FIXED DISK DRIVE literal DT$_RX50 = 26; ! RX50 FLOPPY DISK DRIVE literal DT$_RD52 = 27; ! RD52 FIXED DISK DRIVE literal DT$_RD53 = 28; ! RD53 FIXED DISK DRIVE literal DT$_RD26 = 29; ! RD26 FIXED DISK DRIVE literal DT$_RA82 = 30; ! RA82 FIXED DISK DRIVE literal DT$_RD31 = 31; ! RD31 FIXED DISK DRIVE literal DT$_RD54 = 32; ! RD54 FIXED DISK DRIVE literal DT$_CRX50 = 33; ! Console RX50 literal DT$_RRD50 = 34; ! RRD50 literal DT$_GENERIC_DU = 35; ! Brand X Disk literal DT$_RX33 = 36; ! RX33 DISKETTE DRIVE literal DT$_RX18 = 37; ! RX18 literal DT$_RA70 = 38; literal DT$_RA90 = 39; literal DT$_RD32 = 40; literal DT$_DISK9 = 41; literal DT$_RX35 = 42; literal DT$_RF30 = 43; literal DT$_RF70 = 44; literal DT$_RF71 = 44; literal DT$_RD33 = 45; literal DT$_ESE20 = 46; literal DT$_TU56 = 47; literal DT$_RZ22 = 48; literal DT$_RZ23 = 49; literal DT$_RZ24 = 50; literal DT$_RZ55 = 51; literal DT$_RRD40S = 52; literal DT$_RRD40 = 53; literal DT$_GENERIC_DK = 54; literal DT$_RX23 = 55; literal DT$_RF31 = 56; literal DT$_RF72 = 57; literal DT$_RAM_DISK = 58; literal DT$_RZ25 = 59; literal DT$_RZ56 = 60; literal DT$_RZ57 = 61; literal DT$_RX23S = 62; literal DT$_RX33S = 63; literal DT$_RA92 = 64; literal DT$_SSTRIPE = 65; literal DT$_RZ23L = 66; literal DT$_RX26 = 67; literal DT$_RZ57I = 68; literal DT$_RZ31 = 69; literal DT$_RZ58 = 70; literal DT$_SCSI_MO = 71; literal DT$_RWZ01 = 71; literal DT$_RRD42 = 72; literal DT$_CD_LOADER_1 = 73; literal DT$_ESE25 = 74; literal DT$_RFH31 = 75; literal DT$_RFH72 = 76; literal DT$_RF73 = 77; literal DT$_RFH73 = 78; literal DT$_RA72 = 79; literal DT$_RA71 = 80; literal DT$_RAH72 = 80; literal DT$_RF32 = 81; literal DT$_RF35 = 81; literal DT$_RFH32 = 82; literal DT$_RFH35 = 82; literal DT$_RFF31 = 83; literal DT$_RF31F = 83; literal DT$_RZ72 = 84; literal DT$_RZ73 = 85; literal DT$_RZ35 = 86; literal DT$_RZ24L = 87; literal DT$_RZ25L = 88; literal DT$_RZ55L = 89; literal DT$_RZ56L = 90; literal DT$_RZ57L = 91; literal DT$_RA73 = 92; literal DT$_RZ26 = 93; literal DT$_RZ36 = 94; literal DT$_RZ74 = 95; literal DT$_ESE52 = 96; literal DT$_ESE56 = 97; literal DT$_ESE58 = 98; literal DT$_RZ27 = 99; literal DT$_RZ37 = 100; literal DT$_RZ34L = 101; literal DT$_RZ35L = 102; literal DT$_RZ36L = 103; literal DT$_RZ38 = 104; literal DT$_RZ75 = 105; literal DT$_RZ59 = 106; literal DT$_RZ13 = 107; literal DT$_RZ14 = 108; literal DT$_RZ15 = 109; literal DT$_RZ16 = 110; literal DT$_RZ17 = 111; literal DT$_RZ18 = 112; literal DT$_EZ51 = 113; literal DT$_EZ52 = 114; literal DT$_EZ53 = 115; literal DT$_EZ54 = 116; literal DT$_EZ58 = 117; literal DT$_EF51 = 118; literal DT$_EF52 = 119; literal DT$_EF53 = 120; literal DT$_EF54 = 121; literal DT$_EF58 = 122; literal DT$_RF36 = 123; literal DT$_RF37 = 124; literal DT$_RF74 = 125; literal DT$_RF75 = 126; literal DT$_HSZ10 = 127; literal DT$_RZ28 = 128; literal DT$_GENERIC_RX = 180; literal DT$_FD1 = 129; ! FOREIGN DISK TYPE 1 literal DT$_FD2 = 130; ! FOREIGN DISK TYPE 2 literal DT$_FD3 = 131; ! FOREIGN DISK TYPE 3 literal DT$_FD4 = 132; ! FOREIGN DISK TYPE 4 literal DT$_FD5 = 133; ! FOREIGN DISK TYPE 5 literal DT$_FD6 = 134; ! FOREIGN DISK TYPE 6 literal DT$_FD7 = 135; ! FOREIGN DISK TYPE 7 literal DT$_FD8 = 136; ! FOREIGN DISK TYPE 8 literal DT$_RZ29 = 137; literal DT$_RZ26L = 138; literal DT$_RRD43 = 139; literal DT$_RRD44 = 140; literal DT$_HSX00 = 141; literal DT$_HSX01 = 142; literal DT$_RZ26B = 143; literal DT$_RZ27B = 144; literal DT$_RZ28B = 145; literal DT$_RZ29B = 146; literal DT$_RZ73B = 147; literal DT$_RZ74B = 148; literal DT$_RZ75B = 149; literal DT$_RWZ21 = 150; literal DT$_RZ27L = 151; literal DT$_HSZ20 = 152; literal DT$_HSZ40 = 153; literal DT$_HSZ15 = 154; literal DT$_RZ26M = 155; literal DT$_RW504 = 156; literal DT$_RW510 = 157; literal DT$_RW514 = 158; literal DT$_RW516 = 159; literal DT$_RWZ52 = 160; literal DT$_RWZ53 = 161; literal DT$_RWZ54 = 162; literal DT$_RWZ31 = 163; literal DT$_EZ31 = 164; literal DT$_EZ32 = 165; literal DT$_EZ33 = 166; literal DT$_EZ34 = 167; literal DT$_EZ35 = 168; literal DT$_EZ31L = 169; literal DT$_EZ32L = 170; literal DT$_EZ33L = 171; literal DT$_RZ28L = 172; literal DT$_RWZ51 = 173; literal DT$_EZ56R = 174; literal DT$_RAID0 = 175; literal DT$_RAID5 = 176; literal DT$_CONSOLE_CALLBACK = 177; literal DT$_FILES_64 = 178; literal DT$_SWXCR = 179; literal DT$_SNAPPY_DISK = 180; literal DT$_SNAPPY_POOL = 181; literal DT$_USB_CB_DISK = 182; ! ! TAPE DEVICES ! literal DT$_TE16 = 1; ! TE16 MAGTAPE literal DT$_TU45 = 2; ! TU45 MAGTAPE literal DT$_TU77 = 3; ! TU77 MAGTAPE literal DT$_TS11 = 4; ! TS11 MAGTAPE literal DT$_TU78 = 5; ! TU78 MAGTAPE literal DT$_TA78 = 6; ! TA78 MAGTAPE literal DT$_TU80 = 7; ! TU80 MAGTAPE literal DT$_TU81 = 8; ! TU81 MAGTAPE literal DT$_TA81 = 9; literal DT$_TK50 = 10; ! TK50 CARTRIDGE TAPE literal DT$_MR_TU70 = 11; ! TU70 STC TAPE (DX20) literal DT$_MR_TU72 = 12; ! TU72 STC TAPE literal DT$_MW_TSU05 = 13; ! TSU05 TAPE (CSS) literal DT$_MW_TSV05 = 14; ! TSV05 TAPE (CSS) literal DT$_TK70 = 15; ! TK70 CARTRIDGE TAPE literal DT$_RV20 = 16; literal DT$_RV80 = 16; literal DT$_TK60 = 17; ! TK60 CARTRIDGE TAPE literal DT$_GENERIC_TU = 18; ! Brand X Tape literal DT$_TA79 = 19; ! TA79 literal DT$_TAPE9 = 20; literal DT$_TA90 = 21; literal DT$_TF30 = 22; literal DT$_TF85 = 22; literal DT$_TF70 = 23; literal DT$_RV60 = 24; literal DT$_TZ30 = 25; literal DT$_TM32 = 26; literal DT$_TZX0 = 27; literal DT$_TSZ05 = 27; literal DT$_GENERIC_MK = 28; literal DT$_TK50S = 29; literal DT$_TZ30S = 30; literal DT$_TK70L = 31; literal DT$_TLZ04 = 32; literal DT$_TZK10 = 33; literal DT$_TSZ07 = 34; literal DT$_TSZ08 = 35; literal DT$_TA90E = 36; literal DT$_TZK11 = 37; literal DT$_TZ85 = 38; literal DT$_TZ86 = 39; literal DT$_TZ87 = 40; literal DT$_TZ857 = 41; literal DT$_EXABYTE = 42; literal DT$_TAPE_LOADER_1 = 43; literal DT$_TA91 = 44; literal DT$_TLZ06 = 45; literal DT$_TA85 = 46; literal DT$_TKZ60 = 47; literal DT$_TLZ6 = 48; literal DT$_TZ867 = 49; literal DT$_TZ877 = 50; literal DT$_TAD85 = 51; literal DT$_TF86 = 52; literal DT$_TKZ09 = 53; literal DT$_TA86 = 54; literal DT$_TA87 = 55; literal DT$_TD34 = 56; literal DT$_TD44 = 57; literal DT$_HST00 = 58; literal DT$_HST01 = 59; literal DT$_TLZ07 = 60; literal DT$_TLZ7 = 61; literal DT$_TZ88 = 62; literal DT$_TZ885 = 63; literal DT$_TZ887 = 64; literal DT$_TZ89 = 65; literal DT$_TZ895 = 66; literal DT$_TZ897 = 67; literal DT$_TZ875 = 68; literal DT$_TL810 = 69; literal DT$_TL820 = 70; literal DT$_TZ865 = 71; ! ! TERMINAL DEVICE TYPES ! ! new definitions for terminal types should be placed in $ttdef only ! this table remains around for compatibility only ! ! **** MATCHES $TTDEF ***** literal DT$_TTYUNKN = 0; ! UNKNOWN TERMINAL literal DT$_VT05 = 1; ! VT05 literal DT$_FT1 = 16; ! FOREIGN TERMINAL TYPES literal DT$_FT2 = 17; literal DT$_FT3 = 18; literal DT$_FT4 = 19; literal DT$_FT5 = 20; literal DT$_FT6 = 21; literal DT$_FT7 = 22; literal DT$_FT8 = 23; ! END OF FOREIGN TYPES ! RESERVE REST UP TO 32 FOR EXTENSIONS literal DT$_LAX = 32; ! LA TYPE TERMINAL literal DT$_LA36 = 32; ! LA36 literal DT$_LA120 = 33; literal DT$_VT5X = 64; ! VT5X TYPE literal DT$_VT52 = 64; ! VT52 literal DT$_VT55 = 65; ! VT55 literal DT$_TQ_BTS = 4; ! TQ_BTS literal DT$_TEK401X = 10; ! TEK401X series literal DT$_VT100 = 96; ! VT100 literal DT$_VK100 = 2; literal DT$_VT173 = 3; literal DT$_LA34 = 34; literal DT$_LA38 = 35; literal DT$_LA12 = 36; literal DT$_LA24 = 37; literal DT$_LA100 = 37; literal DT$_LQP02 = 38; literal DT$_VT101 = 97; literal DT$_VT102 = 98; literal DT$_VT105 = 99; literal DT$_VT125 = 100; literal DT$_VT131 = 101; literal DT$_VT132 = 102; literal DT$_DZ11 = 66; ! DZ11 CONTROLLER literal DT$_DZ32 = 67; ! DZ32 CONTROLLER literal DT$_DZ730 = 68; ! DZ730 (COMBO) CONTROLLER literal DT$_DMZ32 = 69; ! DMZ32 CONTROLLER literal DT$_DHV = 70; ! DHV CONTROLLER literal DT$_DHU = 71; ! DHU CONTROLLER literal DT$_SLU = 72; ! Onboard Serial Line Unit literal DT$_TERM9 = 73; ! Terminal on 009 literal DT$_LAT = 74; ! LAT terminals ! ! Terminal WORKSTATIONS ! literal DT$_VS100 = 1; ! VAXstation 100 literal DT$_VS125 = 2; ! VAXstation 125 literal DT$_VL_VS8200 = 3; ! VAXstation 8200 (Lynx) literal DT$_VD = 4; ! VAXstation Vir. Device literal DT$_DECW_OUTPUT = 5; literal DT$_DECW_INPUT = 6; literal DT$_DECW_PSEUDO = 7; ! ! SYNCHRONOUS COMMUNICATIONS DEVICE TYPES ! literal DT$_DMC11 = 1; ! DMC11 literal DT$_DMR11 = 2; ! DMR11 literal DT$_XK_3271 = 3; ! DUP-11 FOR 3271 PROTOCOL EMULATOR literal DT$_XJ_2780 = 4; ! DUP-11 FOR 2780 " " literal DT$_NW_X25 = 5; ! X25 PROTOCOL EMULATOR literal DT$_NV_X29 = 6; ! X29 " " literal DT$_SB_ISB11 = 7; ! ISB-11 DEC dataway literal DT$_MX_MUX200 = 8; ! MUX-200 PROTOCOL EMULATOR literal DT$_DMP11 = 9; ! DMP11 literal DT$_DMF32 = 10; ! DMF32 literal DT$_XV_3271 = 11; ! DV-11 3271 PROTOCOL EMULATOR literal DT$_CI = 12; ! CI - Computer Interconnect literal DT$_NI = 13; ! NI - Network Interconnect literal DT$_UNA11 = 14; ! UNIBUS to NI adapter literal DT$_DEUNA = 14; ! UNIBUS to NI adapter literal DT$_YN_X25 = 15; ! KMS11 X.25 P. E. literal DT$_YO_X25 = 16; ! " " " literal DT$_YP_ADCCP = 17; ! " ADCCP P.E. literal DT$_YQ_3271 = 18; ! " " " literal DT$_YR_DDCMP = 19; ! " DDCMP literal DT$_YS_SDLC = 20; ! " SDLC literal DT$_UK_KTC32 = 21; ! " KTC32 literal DT$_DEQNA = 22; ! Q-BUS to NI adapter literal DT$_DMV11 = 23; ! DMV11 literal DT$_ES_LANCE = 24; ! SCORPIO to NI adapter literal DT$_DELUA = 25; ! LSI version of DEUNA literal DT$_NQ_3271 = 26; ! DHCF literal DT$_DMB32 = 27; ! DMB32 (BICombo) literal DT$_YI_KMS11K = 28; ! not a product, used by field service literal DT$_ET_DEBNT = 29; ! DEBNT (DEBNA grandpa) literal DT$_ET_DEBNA = 29; ! DEBNA (BI-NI adapter) literal DT$_SJ_DSV11 = 30; ! DSV11 Q-BUS sync adapter literal DT$_SL_DSB32 = 31; ! DSB32 BI sync adaptor literal DT$_ZS_DST32 = 32; ! DST32, X25 literal DT$_XQ_DELQA = 33; ! DELQA - Q-BUS to NI adaptor literal DT$_ET_DEBNI = 34; ! DEBNI (BI-NI adapter) literal DT$_EZ_SGEC = 35; ! SGEC CVAX to ethernet chip literal DT$_EX_DEMNA = 36; literal DT$_DIV32 = 37; literal DT$_XQ_DEQTA = 38; literal DT$_FT_NI = 39; literal DT$_EP_LANCE = 40; literal DT$_KWV32 = 41; literal DT$_SM_DSF32 = 42; literal DT$_FX_DEMFA = 43; literal DT$_SF_DSF32 = 44; ! FT unit for DSF32 CIRRUS sync comm literal DT$_SE_DUP11 = 45; ! SEDRIVER common DUP11 sync comm literal DT$_SE_DPV11 = 46; ! SEDRIVER common DPV11 sync comm literal DT$_ZT_DSW = 47; ! Generic DSW sync com literal DT$_FC_DEFZA = 48; ! Turbochannel to FDDI literal DT$_EC_PMAD = 49; ! Turbochannel to Ethernet literal DT$_EZ_TGEC = 50; ! TGEC ethernet chip literal DT$_EA_DEANA = 51; ! Futurebus to Ethernet literal DT$_EY_NITC2 = 52; ! Turbochannel to Ethernet literal DT$_ER_DE422 = 53; ! EISA bus to Ethernet literal DT$_ER_DE200 = 54; ! ISA bus to Ethernet literal DT$_EW_TULIP = 55; ! Integral PCI bus to TULIP Ethernet literal DT$_FA_DEFAA = 56; ! Futurebus to FDDI literal DT$_FC_DEFTA = 57; ! Turbochannel to FDDI literal DT$_FQ_DEFQA = 58; ! Q-bus to FDDI literal DT$_FR_DEFEA = 59; ! EISA bus to FDDI literal DT$_FW_DEFPA = 60; ! PCI bus to FDDI literal DT$_IC_DETRA = 61; ! Turbochannel to Token Ring literal DT$_IQ_DEQRA = 62; ! Q-bus to Token Ring literal DT$_IR_DW300 = 63; ! EISA bus to Token Ring literal DT$_ZR_SCC = 64; ! SCC on AXP workstations literal DT$_ZY_DSYT1 = 65; ! Turbo channel sync interface literal DT$_ZE_DNSES = 66; ! EISA sync interface literal DT$_ER_DE425 = 67; ! EISA bus to TULIP Ethernet literal DT$_EW_DE435 = 68; ! PCI bus to TULIP Ethernet literal DT$_ER_DE205 = 69; ! ISA bus to LEMAC Ethernet literal DT$_HC_OTTO = 70; ! Turbochannel to ATM literal DT$_ZS_PBXDI = 71; ! ISA sync comms card literal DT$_EL_ELAN = 72; ! Emulated CSMACD LAN for ATM literal DT$_HW_OTTO = 73; ! PCI to ATM literal DT$_EO_3C598 = 74; ! PCMCIA to Ethernet literal DT$_IW_TC4048 = 75; ! PCI to TokenRing literal DT$_EW_DE450 = 76; ! PCI to DC21040 Ethernet literal DT$_EW_DE500 = 77; ! PCI to DC21140 Ethernet literal DT$_CL_CLIP = 78; ! Classical IP over ATM literal DT$_ZW_PBXDP = 79; ! PCI sync comms card literal DT$_HW_METEOR = 80; ! PCI-ATM ATMworks 351 literal DT$_ER_DE305 = 81; ! ISA bus to Ethernet literal DT$_EW_DEGPA = 82; ! PCI to Gigabit Ethernet (DEGPA) literal DT$_IW_RACORE = 83; ! PCI to TokenRing (Racore) literal DT$_EB_SMLAN = 84; ! Shared Memory (Galaxy) literal DT$_EI_82558 = 85; ! PCI to Fast Ethernet (82558) literal DT$_EI_82559 = 86; ! PCI to Fast Ethernet (82559) literal DT$_HW_HE622 = 87; ! PCI to ATM (HE622) literal DT$_HW_HE155 = 88; ! PCI to ATM (HE155) literal DT$_EW_BCM5703 = 89; ! PCI/PCIX to GBE (Broadcom 5703) literal DT$_EW_BCM5704 = 90; ! PCI/PCIX to GBE (Broadcom 5704) literal DT$_EW_XFRAME = 91; ! PCI/PCIX 10 GBE (S2io) literal DT$_EW_BCM5701 = 92; ! PCI/PCIX to GBE (Broadcom 5701) literal DT$_LL_LLAN = 93; ! Logical LAN (failover) literal DT$_EG_ELP_FC = 94; ! Emulex LP Fibre Channel literal DT$_EG_Q_FC = 95; ! Qlogic Fibre Channel literal DT$_EI_82540 = 96; ! Intel Gigabit (8254x) literal DT$_VL_VLAN = 97; ! VLAN literal DT$_EW_BCM5715 = 98; ! PCIE to GBE (Broadcom 5715) literal DT$_EI_AVIO = 99; ! HPVM AVIO LAN Device literal DT$_ER_BCM57711 = 100; ! PCIX 10 GBE (Broadcom 57711-LOM) literal DT$_EW_BCM57711 = 101; ! PCIX 10 GBE (Broadcom 57711) ! ! LINE PRINTER AND CARD READER DEVICE TYPES ! literal DT$_LP11 = 1; ! LP11 literal DT$_LA11 = 2; ! LA11 literal DT$_LA180 = 3; ! LA180 literal DT$_LC_DMF32 = 4; ! DMF32 literal DT$_LI_DMB32 = 5; ! DMB32 literal DT$_PRTR9 = 6; ! Printer on 009 literal DT$_SCSI_SCANNER_1 = 7; ! SCSI Scanner literal DT$_PC_PRINTER = 8; ! PC Printer literal DT$_CR11 = 1; ! CR11 CARD READER ! ! MAILBOX DEVICE TYPES ! literal DT$_MBX = 1; ! LOCAL MEMORY MAILBOX literal DT$_SHRMBX = 2; ! SHARED MEMORY MAILBOX literal DT$_NULL = 3; ! The NULL DEVICE literal DT$_PIPE = 4; ! PIPE DEVICE ! ! REMOTE CONSOLE STORAGE DEVICE TYPES ! literal DT$_DAP_DEVICE = 1; ! DAP-ACCESSED DEVICE ! ! REALTIME DEVICE TYPES ! literal DT$_LPA11 = 1; ! LPA-11 literal DT$_DR780 = 2; ! DR780 literal DT$_DR750 = 3; ! DR750 literal DT$_DR11W = 4; ! DR11W literal DT$_PCL11R = 5; ! PCL11 RECEIVER (CSS) literal DT$_PCL11T = 6; ! PCL11 TRANSMTTER (CSS) literal DT$_DR11C = 7; ! DR11C PARALLEL INTERFACE literal DT$_BS_DT07 = 8; ! UNIBUS SWITCH literal DT$_XP_PCL11B = 9; ! PCL-11B (DECNET and NONDECNET mode CSS) literal DT$_IX_IEX11 = 10; ! IEEE-488 to UNIBUS INTERFACE literal DT$_FP_FEPCM = 11; ! FEPCM CSS frontend processor literal DT$_TK_FCM = 12; ! FEPCM CSS frontend processor literal DT$_XI_DR11C = 13; ! PARALLEL INTERFACE ON DMF-32 literal DT$_XA_DRV11WA = 14; ! DMA Parallel Interface literal DT$_DRB32 = 15; ! DRB32 (or MFA) literal DT$_HX_DRQ3B = 16; ! DRQ3B PARALLEL INTERFACE ! ! DECVOICE DEVICES ! literal DT$_DECVOICE = 1; ! VQ- DECVOICE class driver literal DT$_DTC04 = 2; ! VX DECvoice 1 M7132 port driver literal DT$_DTC05 = 3; ! VM Decvoice III M3135 port driver literal DT$_DTCN5 = 4; ! VN Decvoice III M3136 port driver ! ! AUDIO DEVICES ! literal DT$_AMD79C30A = 1; ! AMD79C30A on VLC/PMARIAH literal DT$_CMI8738 = 2; ! CMI8738 sound chip bearing HP Part no AD317A ! ! BUS CLASS DEVICES ! literal DT$_CI780 = 1; ! CI780 literal DT$_CI750 = 2; ! CI750 literal DT$_UQPORT = 3; ! UQPORT is generic UDA literal DT$_UDA50 = 3; ! UDA50 literal DT$_UDA50A = 4; ! UDA50A literal DT$_LESI = 5; ! Low end storage literal DT$_TU81P = 6; ! TU81 port literal DT$_RDRX = 7; ! RDRX port literal DT$_TK50P = 8; ! TK50 port literal DT$_RUX50P = 9; ! RUX50 port literal DT$_RC26P = 10; ! RC26P port literal DT$_QDA50 = 11; ! KDA50 port (old name) literal DT$_KDA50 = 11; ! KDA50 port literal DT$_BDA50 = 12; ! KDB50 port (old name) literal DT$_KDB50 = 12; ! KDB50 port (alias BDA50) literal DT$_RRD50P = 13; ! RRD50 port literal DT$_QDA25 = 14; ! KDA25 port (old name) literal DT$_KDA25 = 14; ! KDA25 port literal DT$_BCI750 = 15; ! BI-CI750 port literal DT$_BCA = 16; ! BI-CI port literal DT$_RQDX3 = 17; ! RQDX3 port literal DT$_NISCA = 18; ! NI-SCA port literal DT$_AIO = 19; ! BVP SSP port literal DT$_KFBTA = 19; ! BVP SSP port literal DT$_AIE = 20; ! BVP multi-port literal DT$_DEBNT = 20; ! BVP multi-port literal DT$_BSA = 21; literal DT$_KSB50 = 21; literal DT$_TK70P = 22; ! TK70 port literal DT$_RV20P = 23; literal DT$_RV80P = 23; literal DT$_TK60P = 24; ! TK60 port literal DT$_SII = 25; literal DT$_KFSQSA = 26; literal DT$_KFQSA = 26; literal DT$_SHAC = 27; literal DT$_CIXCD = 28; literal DT$_N5380 = 29; literal DT$_SCSII = 30; literal DT$_HSX50 = 31; literal DT$_KDM70 = 31; literal DT$_TM32P = 32; literal DT$_TK7LP = 33; literal DT$_SWIFT = 34; literal DT$_N53C94 = 35; literal DT$_KFMSA = 36; literal DT$_SCSI_XTENDR = 37; literal DT$_FT_TRACE_RAM = 38; literal DT$_XVIB = 39; literal DT$_XZA_SCSI = 40; literal DT$_XZA_DSSI = 41; literal DT$_N710_SCSI = 42; literal DT$_N710_DSSI = 43; literal DT$_AHA1742A = 44; literal DT$_TZA_SCSI = 45; literal DT$_N810_SCSI = 46; literal DT$_CIPCA = 47; literal DT$_ISP1020 = 48; literal DT$_MC_SPUR = 49; literal DT$_PZA_SCSI = 50; literal DT$_MCSCA = 51; ! MC-SCA port pmdriver literal DT$_SMCI = 52; ! SMCI port (pbdriver) literal DT$_KZPCM_SCSI = 53; literal DT$_SYM896_SCSI = 54; literal DT$_FCP_SCSI = 55; literal DT$_LP7000_FC = 56; literal DT$_SYM895_SCSI = 57; literal DT$_KZPCA_SCSI = 58; literal DT$_ADAPTEC7892_SCSI = 59; literal DT$_ADAPTEC7895_SCSI = 60; literal DT$_ADAPTEC7897_SCSI = 61; literal DT$_ADAPTEC7899_SCSI = 62; literal DT$_CISS = 63; literal DT$_ISP23XX_FC = 64; literal DT$_LSI1010_SCSI = 65; literal DT$_LSI1030_SCSI = 66; literal DT$_ISP24XX_FC = 67; literal DT$_LSI106X_SAS = 68; literal DT$_SW_ISCSI = 69; literal DT$_LP8000_FC = 70; literal DT$_LP9000_FC = 71; literal DT$_LP9802_FC = 72; literal DT$_LP10000_FC = 73; literal DT$_LP11002_FC = 74; literal DT$_ISP243X_FC = 75; literal DT$_EP2422_FC = 76; literal DT$_ISP253X_FC = 77; literal DT$_GSP = 78; literal DT$_ICH10_AHCI = 79; ! ! MISCELLANEOUS DEVICES ! literal DT$_DN11 = 1; ! AUTODIALER literal DT$_PV = 2; ! Pseudo keyboard literal DT$_SFUN9 = 3; literal DT$_USER9 = 4; literal DT$_GENERIC_SCSI = 5; literal DT$_DMA_520 = 6; literal DT$_T3270 = 7; literal DT$_IPMI = 9; literal DT$_ACPI_SE = 10; !*** MODULE $DDTMDEF *** ! ! Transaction Manager services structure definitions ! macro DDTM$X_TRANSACTION_ID = 0,0,0,0 %; literal DDTM$S_TRANSACTION_ID = 16; ! Transaction Id type macro DDTM$X_UTC_DATE_TIME = 0,0,0,0 %; literal DDTM$S_UTC_DATE_TIME = 16; ! UTC type literal DDTM$S_TID = 16; ! Size of a transaction id ! ! System services modifier flags ! literal DDTM$M_SYNC = %X'1'; literal DDTM$M_NONDEFAULT = %X'2'; literal DDTM$M_PROCESS = %X'4'; literal DDTM$M_VOLATILE = %X'8'; literal DDTM$M_RUNDOWN = %X'10'; literal DDTM$M_CANCEL = %X'20'; literal DDTM$M_FULL_STATE = %X'40'; literal DDTM$M_BRANCH_UNSYNCHED = %X'80'; literal DDTM$M_COORDINATOR = %X'100'; literal DDTM$M_NOWAIT = %X'200'; literal DDTM$M_FINAL_STATE = %X'400'; literal DDTM$M_LATE = %X'80000000'; literal DDTM$S_FLAGS = 4; macro DDTM$V_SYNC = 0,0,1,0 %; ! Synchronous status requested macro DDTM$V_NONDEFAULT = 0,1,1,0 %; ! Not the default transaction macro DDTM$V_PROCESS = 0,2,1,0 %; ! Process-permanent RM macro DDTM$V_VOLATILE = 0,3,1,0 %; ! volatile-only state macro DDTM$V_RUNDOWN = 0,4,1,0 %; ! forget all RMs macro DDTM$V_CANCEL = 0,5,1,0 %; ! Cancel GET operation macro DDTM$V_FULL_STATE = 0,6,1,0 %; ! Full state information macro DDTM$V_BRANCH_UNSYNCHED = 0,7,1,0 %; ! Don't need to sync branch macro DDTM$V_COORDINATOR = 0,8,1,0 %; ! Join Coordinating RM macro DDTM$V_NOWAIT = 0,9,1,0 %; ! Don't wait for termination macro DDTM$V_FINAL_STATE = 0,10,1,0 %; ! Get final transaction outcome macro DDTM$V_LATE = 0,31,1,0 %; ! Phase one branch or join ! ! Resource manager event request options ! literal DDTM$M_EV_PREPARE = %X'1'; literal DDTM$M_EV_ABORT = %X'2'; literal DDTM$M_EV_COMMIT = %X'4'; literal DDTM$M_EV_DEFAULT_TRANS = %X'8'; literal DDTM$M_EV_TRANS_START = %X'10'; literal DDTM$S_EVENT_MASK = 4; macro DDTM$V_EV_PREPARE = 0,0,1,0 %; ! Vote request required macro DDTM$V_EV_ABORT = 0,1,1,0 %; ! Abort notificiation macro DDTM$V_EV_COMMIT = 0,2,1,0 %; ! Commit notificiation macro DDTM$V_EV_DEFAULT_TRANS = 0,3,1,0 %; ! New default TID macro DDTM$V_EV_TRANS_START = 0,4,1,0 %; ! Request transaction start events ! ! $TRANS_EVENT system service event types ! literal DDTM$K_TX_PREPARE = 1; ! Prepare transaction request literal DDTM$K_TX_COMMIT = 2; ! Commit transaction order literal DDTM$K_TX_ABORT = 3; ! Abort transaction order literal DDTM$K_TX_RECOVER_COMMIT = 4; ! Commit order on recovery literal DDTM$K_TX_RECOVER_ABORT = 5; ! Abort order on recovery ! ! Resource manager event report types ! literal DDTM$K_PREPARE = 1; ! Prepare operation literal DDTM$K_COMMIT = 2; ! Commit operation literal DDTM$K_ABORT = 3; ! Abort operation literal DDTM$K_ONE_PHASE_COMMIT = 4; ! One-phase commit literal DDTM$K_DEFAULT_CLEARED = 5; ! Tid no longer default literal DDTM$K_DEFAULT_SET = 6; ! Tid now process default literal DDTM$K_STARTED_DEFAULT = 7; ! New process default transaction literal DDTM$K_STARTED_NONDEFAULT = 8; ! New nondefault transaction literal DDTM$K_RECOVER_COMMITTED = 9; ! Transaction committed literal DDTM$K_RECOVER_ERROR = 10; ! Error during recovery literal DDTM$K_RECOVER_INDOUBT = 11; ! Transaction is indoubt literal DDTM$K_RECOVER_RESOLVE = 12; ! RM resposible for resolution ! ! Transaction report structure (DECdtm V1.0) ! literal DDTM$S_ASTDEF = 56; ! Transaction event AST parameter macro DDTM$L_ARGLEN = 0,0,32,0 %; ! Structure length macro DDTM$A_TID = 4,0,32,0 %; ! Transaction id macro DDTM$L_PART_ID = 8,0,32,0 %; ! Participant identifier macro DDTM$L_RM_CTX = 12,0,32,0 %; ! RM event ASTPRM macro DDTM$L_OPTYPE = 16,0,32,0 %; ! Operation type macro DDTM$L_REASON = 20,0,32,0 %; ! Abort extended reason code macro DDTM$O_UTC_CMT_TIME = 24,0,0,0 %; literal DDTM$S_UTC_CMT_TIME = 16; ! Reserved to Digital macro DDTM$O_UTC_LATEST = 40,0,0,0 %; literal DDTM$S_UTC_LATEST = 16; ! Reserved to Digital ! ! Transaction report structure ! literal DDTM$S_REPORTDEF = 72; macro DDTM$L_REPORT_LEN = 0,0,32,0 %; ! Structure length macro DDTM$A_TID_PTR = 4,0,32,0 %; ! Transaction id macro DDTM$L_REPORT_ID = 8,0,32,0 %; ! Report identifier macro DDTM$L_RM_CONTEXT = 12,0,32,0 %; ! RM event ASTPRM macro DDTM$L_EVENT_TYPE = 16,0,32,0 %; ! Event report type macro DDTM$L_ABORT_REASON = 20,0,32,0 %; ! Abort extended reason code macro DDTM$O_COMMIT_TIME = 24,0,0,0 %; literal DDTM$S_COMMIT_TIME = 16; ! Reserved to Digital macro DDTM$O_LATEST_TIME = 40,0,0,0 %; literal DDTM$S_LATEST_TIME = 16; ! Reserved to Digital macro DDTM$Q_TX_CLASS = 56,0,0,0 %; literal DDTM$S_TX_CLASS = 8; ! Transaction class descriptor macro DDTM$Q_PART_NAME = 64,0,0,0 %; literal DDTM$S_PART_NAME = 8; ! RM Instance descriptor !*** MODULE $DELPRCSYMDEF *** ! + ! ! $DELPRCSYMDEF - $DELPRC symbol definitions ! ! - literal DELPRC$M_EXIT = %X'4'; literal DELPRC$M_NOEXIT = %X'8'; literal DELPRC$S_DELPRCFLAGS = 4; macro DELPRC$V_MODE = 0,0,2,0 %; literal DELPRC$S_MODE = 2; ! Access mode to start exit functionality with macro DELPRC$V_EXIT = 0,2,1,0 %; ! Enable exit functionality macro DELPRC$V_NOEXIT = 0,3,1,0 %; ! Do not enable exit functionality !*** MODULE $DEVDEF *** ! ! THE FOLLOWING BITS DEFINE THE DEVICE CHARACTERISTICS FOR ! BOTH THE UCBS AND RMS. ! literal DEV$M_REC = %X'1'; literal DEV$M_CCL = %X'2'; literal DEV$M_TRM = %X'4'; literal DEV$M_DIR = %X'8'; literal DEV$M_SDI = %X'10'; literal DEV$M_SQD = %X'20'; literal DEV$M_SPL = %X'40'; literal DEV$M_OPR = %X'80'; literal DEV$M_RCT = %X'100'; literal DEV$M_QSVD = %X'200'; literal DEV$M_QSVBL = %X'400'; literal DEV$M_MPDEV_SECONDARY = %X'800'; literal DEV$M_MPDEV_MEMBER = %X'1000'; literal DEV$M_NET = %X'2000'; literal DEV$M_FOD = %X'4000'; literal DEV$M_DUA = %X'8000'; literal DEV$M_SHR = %X'10000'; literal DEV$M_GEN = %X'20000'; literal DEV$M_AVL = %X'40000'; literal DEV$M_MNT = %X'80000'; literal DEV$M_MBX = %X'100000'; literal DEV$M_DMT = %X'200000'; literal DEV$M_ELG = %X'400000'; literal DEV$M_ALL = %X'800000'; literal DEV$M_FOR = %X'1000000'; literal DEV$M_SWL = %X'2000000'; literal DEV$M_IDV = %X'4000000'; literal DEV$M_ODV = %X'8000000'; literal DEV$M_RND = %X'10000000'; literal DEV$M_RTM = %X'20000000'; literal DEV$M_RCK = %X'40000000'; literal DEV$M_WCK = %X'80000000'; literal DEV$M_CLU = %X'1'; literal DEV$M_DET = %X'2'; literal DEV$M_RTT = %X'4'; literal DEV$M_CDP = %X'8'; literal DEV$M_2P = %X'10'; literal DEV$M_MSCP = %X'20'; literal DEV$M_SSM = %X'40'; literal DEV$M_SRV = %X'80'; literal DEV$M_RED = %X'100'; literal DEV$M_NNM = %X'200'; literal DEV$M_WBC = %X'400'; literal DEV$M_WTC = %X'800'; literal DEV$M_HOC = %X'1000'; literal DEV$M_LOC = %X'2000'; literal DEV$M_DFS = %X'4000'; literal DEV$M_DAP = %X'8000'; literal DEV$M_NLT = %X'10000'; literal DEV$M_SEX = %X'20000'; literal DEV$M_SHD = %X'40000'; literal DEV$M_VRT = %X'80000'; literal DEV$M_LDR = %X'100000'; literal DEV$M_NOLB = %X'200000'; literal DEV$M_NOCLU = %X'400000'; literal DEV$M_VMEM = %X'800000'; literal DEV$M_SCSI = %X'1000000'; literal DEV$M_WLG = %X'2000000'; literal DEV$M_NOFE = %X'4000000'; literal DEV$M_FILL_2 = %X'8000000'; literal DEV$M_CRAMIO = %X'10000000'; literal DEV$M_DTN = %X'20000000'; literal DEV$M_FILL_3 = %X'40000000'; literal DEV$M_POOL_MBR = %X'80000000'; literal DEV$S_DEVDEF = 4; macro DEV$V_REC = 0,0,1,0 %; ! DEVICE RECORD ORIENTED macro DEV$V_CCL = 0,1,1,0 %; ! CARRIAGE CONTROL DEVICE macro DEV$V_TRM = 0,2,1,0 %; ! DEVICE IS A TERMINAL macro DEV$V_DIR = 0,3,1,0 %; ! DEVICE IS DIRECTORY STRUCTURED macro DEV$V_SDI = 0,4,1,0 %; ! DEVICE IS SINGLE DIRECTORY STRUCTURED macro DEV$V_SQD = 0,5,1,0 %; ! SEQUENTIAL BLOCK-ORIENTED DEVICE (I.E., MAGTAPE) macro DEV$V_SPL = 0,6,1,0 %; ! DEVICE BEING SPOOLED macro DEV$V_OPR = 0,7,1,0 %; ! DEVICE IS AN OPERATOR macro DEV$V_RCT = 0,8,1,0 %; ! DISK CONTAINS RCT (DEC STANDARD 166 DISK) macro DEV$V_QSVD = 0,9,1,0 %; ! Client device is served by QIOserver macro DEV$V_QSVBL = 0,10,1,0 %; ! Server device is servable by QIOserver macro DEV$V_MPDEV_SECONDARY = 0,11,1,0 %; ! Indicates secondary unit in a multipath set macro DEV$V_MPDEV_MEMBER = 0,12,1,0 %; ! Device is part of a multipath set. macro DEV$V_NET = 0,13,1,0 %; ! NETWORK DEVICE macro DEV$V_FOD = 0,14,1,0 %; ! FILES-ORIENTED DEVICE (I.E., DISK AND MT) macro DEV$V_DUA = 0,15,1,0 %; ! DEVICE IS DUAL PORTED macro DEV$V_SHR = 0,16,1,0 %; ! DEVICE SHAREABLE macro DEV$V_GEN = 0,17,1,0 %; ! DEVICE IS A GENERIC DEVICE macro DEV$V_AVL = 0,18,1,0 %; ! DEVICE AVAILABLE FOR USE macro DEV$V_MNT = 0,19,1,0 %; ! DEVICE IS MOUNTED macro DEV$V_MBX = 0,20,1,0 %; ! DEVICE IS A MAILBOX macro DEV$V_DMT = 0,21,1,0 %; ! DEVICE MARKED FOR DISMOUNT macro DEV$V_ELG = 0,22,1,0 %; ! DEVICE HAS ERROR LOGGING ENABLED macro DEV$V_ALL = 0,23,1,0 %; ! DEVICE IS ALLOCATED macro DEV$V_FOR = 0,24,1,0 %; ! DEVICE IS MOUNTED FOREIGN (I.E., NON-FILE STRUCTURED) macro DEV$V_SWL = 0,25,1,0 %; ! DEVICE IS SOFTWARE WRITE LOCKED macro DEV$V_IDV = 0,26,1,0 %; ! DEVICE CAPABLE OF PROVIDING INPUT macro DEV$V_ODV = 0,27,1,0 %; ! DEVICE CAPABLE OF PROVIDING OUTPUT macro DEV$V_RND = 0,28,1,0 %; ! DEVICE ALLOWS RANDOM ACCESS macro DEV$V_RTM = 0,29,1,0 %; ! DEVICE IS REALTIME IN NATURE macro DEV$V_RCK = 0,30,1,0 %; ! DEVICE HAS READ CHECKING ENABLED macro DEV$V_WCK = 0,31,1,0 %; ! DEVICE HAS WRITE CHECKING ENABLED macro DEV$V_CLU = 0,0,1,0 %; ! DEVICE IS AVAILABLE CLUSTER-WIDE macro DEV$V_DET = 0,1,1,0 %; ! DEVICE IS DETACHED TERMINAL macro DEV$V_RTT = 0,2,1,0 %; ! DEVICE HAS REMOTE TERMINAL UCB EXTENSION macro DEV$V_CDP = 0,3,1,0 %; ! DUAL PATH DEVICE WITH 2 UCBs macro DEV$V_2P = 0,4,1,0 %; ! TWO PATHS ARE KNOWN TO THIS DEVICE macro DEV$V_MSCP = 0,5,1,0 %; ! DEVICE ACCESSED USING MSCP (disk or tape) macro DEV$V_SSM = 0,6,1,0 %; ! this bit was set for Phase I (controller-based) ! shadowing only. This bit is not set for ! Phase II (host-based) shadowing; Phase II ! sets the SHD bit (see below). macro DEV$V_SRV = 0,7,1,0 %; ! DEVICE IS SERVED VIA THE MSCP SERVER macro DEV$V_RED = 0,8,1,0 %; ! DEVICE IS redirected terminal macro DEV$V_NNM = 0,9,1,0 %; ! DEVICE HAS "node$" PREFIX macro DEV$V_WBC = 0,10,1,0 %; ! DEVICE SUPPORTS WRITE-BACK CACHING macro DEV$V_WTC = 0,11,1,0 %; ! DEVICE SUPPORTS WRITE-THROUGH CACHING macro DEV$V_HOC = 0,12,1,0 %; ! DEVICE SUPPORTS HOST CACHING macro DEV$V_LOC = 0,13,1,0 %; ! DEVICE ACCESSIBLE VIA LOCAL (NON-EMULATED) CONTROLLER macro DEV$V_DFS = 0,14,1,0 %; ! DEVICE IS DFS-SERVED macro DEV$V_DAP = 0,15,1,0 %; ! DEVICE IS DAP ACCESSED macro DEV$V_NLT = 0,16,1,0 %; ! DEVICE IS NOT-LAST-TRACK (I.E. IT HAS NO BAD BLOCK ! INFORMATION ON ITS LAST TRACK) macro DEV$V_SEX = 0,17,1,0 %; ! DEVICE (tape) SUPPORTS SERIOUS EXCEPTION HANDLING macro DEV$V_SHD = 0,18,1,0 %; ! DEVICE IS A MEMBER OF A HOST BASED SHADOW SET macro DEV$V_VRT = 0,19,1,0 %; ! DEVICE IS A SHADOW SET VIRTUAL UNIT macro DEV$V_LDR = 0,20,1,0 %; ! LOADER PRESENT (TAPES) macro DEV$V_NOLB = 0,21,1,0 %; ! DEVICE IGNORES SERVER LOAD BALANCING REQUESTS macro DEV$V_NOCLU = 0,22,1,0 %; ! DEVICE WILL NEVER BE AVAILABLE CLUSTER-WIDE macro DEV$V_VMEM = 0,23,1,0 %; ! Virtual member of a constituent set macro DEV$V_SCSI = 0,24,1,0 %; ! DEVICE IS A SCSI DEVICE macro DEV$V_WLG = 0,25,1,0 %; ! DEVICE HAS MSCP Based (Phase I) WRITE LOGGING CAPABILITY macro DEV$V_NOFE = 0,26,1,0 %; ! DEVICE DOESN'T SUPPORT FORCED ERROR macro DEV$V_FILL_2 = 0,27,1,0 %; ! Reserved for: Allocation in progress (MME) macro DEV$V_CRAMIO = 0,28,1,0 %; ! Performs Mailbox I/O macro DEV$V_DTN = 0,29,1,0 %; ! Device has DDR Device Type Name available macro DEV$V_POOL_MBR = 0,31,1,0 %; ! Unit is bound to a storage pool !*** MODULE $DIBDEF *** ! + ! DEVICE INFORMATION BLOCK DEFINITIONS ! - literal DIB$K_LENGTH = 116; ! LENGTH OF TOTAL BUFFER literal DIB$C_LENGTH = 116; ! LENGTH OF TOTAL BUFFER literal DIB$S_DIBDEF = 116; macro DIB$L_DEVCHAR = 0,0,32,0 %; ! DEVICE CHARACTERISTICS macro DIB$B_DEVCLASS = 4,0,8,0 %; ! DEVICE CLASS macro DIB$B_DEVTYPE = 5,0,8,0 %; ! DEVICE TYPE macro DIB$W_DEVBUFSIZ = 6,0,16,0 %; ! DEVICE BUFFER SIZE macro DIB$L_DEVDEPEND = 8,0,32,0 %; ! DEVICE DEPENDENT INFORMATION macro DIB$B_SECTORS = 8,0,8,0 %; ! (DISK ONLY) SECTORS PER TRACK macro DIB$B_TRACKS = 9,0,8,0 %; ! " TRACKS PER CYLINDER macro DIB$W_CYLINDERS = 10,0,16,0 %; ! " NUMBER OF CYLINDERS macro DIB$W_UNIT = 12,0,16,0 %; ! DEVICE UNIT NUMBER macro DIB$W_DEVNAMOFF = 14,0,16,0 %; ! OFFSET TO DEVICE NAME COUNTED STRING macro DIB$L_PID = 16,0,32,0 %; ! DEVICE OWNER PROCESS IDENTIFICATION macro DIB$L_OWNUIC = 20,0,32,0 %; ! DEVICE OWNER USER IDENTIFICATION CODE macro DIB$W_VPROT = 24,0,16,0 %; ! DEVICE PROTECTION MASK macro DIB$W_ERRCNT = 26,0,16,0 %; ! DEVICE ERROR COUNT macro DIB$L_OPCNT = 28,0,32,0 %; ! DEVICE OPERATIONS COUNT macro DIB$W_VOLNAMOFF = 32,0,16,0 %; ! OFFSET TO VOLUME LABEL COUNTED STRING macro DIB$W_RECSIZ = 34,0,16,0 %; ! BLOCKED RECORD SIZE macro DIB$T_DEVNAME = 36,0,0,0 %; literal DIB$S_DEVNAME = 76; ! SPACE FOR DEVNAME AND LABEL (64+12) macro DIB$L_MAXBLOCK = 112,0,32,0 %; ! DISK VOLUME SIZE IN BLOCKS !*** MODULE $DIRENTDEF *** literal dirent$k_name = 1; literal dirent$k_version = 2; literal dirent$S_dirent = 4; macro dirent$iw_size = 0,0,16,1 %; macro dirent$iw_type = 2,0,16,1 %; literal dirent_nam$S_dirent_nam = 13; macro dirent_nam$iw_size = 0,0,16,1 %; macro dirent_nam$iw_type = 2,0,16,1 %; macro dirent_nam$iw_version_limit = 4,0,16,1 %; macro dirent_nam$il_name_length = 8,0,32,1 %; macro dirent_nam$t_name = 12,0,8,0 %; literal dirent_nam$s_name = 1; literal dirent$k_file = 1; literal dirent$k_directory = 2; literal dirent_ver$S_dirent_ver = 16; macro dirent_ver$iw_size = 0,0,16,1 %; macro dirent_ver$iw_type = 2,0,16,1 %; macro dirent_ver$iw_version = 4,0,16,1 %; macro dirent_ver$iw_obj_type = 6,0,16,1 %; macro dirent_ver$iw_fid = 10,0,0,0 %; literal dirent_ver$s_fid = 6; macro dirent_ver$iw_fid_num = 10,0,16,0 %; macro dirent_ver$iw_fid_seq = 12,0,16,0 %; macro dirent_ver$iw_fid_rvn = 14,0,16,0 %; macro dirent_ver$ib_fid_rvn = 14,0,8,0 %; macro dirent_ver$ib_fid_nmx = 15,0,8,0 %; !*** MODULE $DMTDEF *** ! ! FLAG BITS FOR THE $DISMOU (DISMOUNT) SYSTEM SERVICE. ! literal DMT$M_NOUNLOAD = %X'1'; literal DMT$M_UNIT = %X'2'; literal DMT$M_ABORT = %X'4'; literal DMT$M_CLUSTER = %X'8'; literal DMT$M_UNLOAD = %X'10'; literal DMT$M_OVR_CHECKS = %X'20'; literal DMT$M_CHECK_ONLY = %X'40'; literal DMT$M_REMOTE = %X'80'; literal DMT$M_MINICOPY_REQUIRED = %X'100'; literal DMT$M_MINICOPY_OPTIONAL = %X'200'; literal DMT$M_FORCE = %X'400'; literal DMT$S_DMTDEF = 2; macro DMT$V_NOUNLOAD = 0,0,1,0 %; ! DO NOT UNLOAD (SPIN DOWN) THE VOLUME macro DMT$V_UNIT = 0,1,1,0 %; ! DISMOUNT ONLY THE SPECIFIED VOLUME macro DMT$V_ABORT = 0,2,1,0 %; ! FORCED DISMOUNT macro DMT$V_CLUSTER = 0,3,1,0 %; ! CLUSTER-WIDE DISMOUNT macro DMT$V_UNLOAD = 0,4,1,0 %; ! EXPLICIT UNLOAD (OVERRIDE UCB$x_UNLOAD) macro DMT$V_OVR_CHECKS = 0,5,1,0 %; ! OVERRIDE OPEN FILE CHECKS macro DMT$V_CHECK_ONLY = 0,6,1,0 %; ! CHECK ONLY FOR OPEN FILES - DON'T DISMOUNT macro DMT$V_REMOTE = 0,7,1,0 %; ! CURRENT DISMOUNTER IS REMOTE WITH RESPECT TO ORIGINATOR macro DMT$V_MINICOPY_REQUIRED = 0,8,1,0 %; ! BITMAP REQUIRED macro DMT$V_MINICOPY_OPTIONAL = 0,9,1,0 %; ! BITMAP OPTIONAL macro DMT$V_FORCE = 0,10,1,0 %; ! FORCE dismount of SSM !*** MODULE $DPSDEF *** ! + ! ! Get Device path information ! ! **** NOTE **** ! ! New items must always be added at the END of the list so that ! users will not have to rebuild. ! ! - literal DPS$_MP_PATHNAME = 1; ! Device path name ! ! *** ADD NEW ITEM-CODES IMMEDIATELY BEFORE THIS COMMENT ***** ! !*** MODULE $DTIDEF *** ! ! DTI flag definitions ! ! Item list definitions literal DTI$_ENDITEM = 0; ! End of item list code literal DTI$_TRANSACTION_INFORMATION = 1; ! Active transaction list literal DTI$_CURRENT_TID = 2; ! Current transaction identifier literal DTI$_MEMBERSHIP_COUNT = 3; ! # members still in transaction literal DTI$_BRANCH_COUNT = 4; ! # branches still in transaction literal DTI$_ROOT_NODE_NAME = 5; ! Root node literal DTI$_STARTING_TIME = 6; ! Transaction start time literal dti$K_MAX_ITEM_CODE = 6; ! Transaction states literal DTI$K_NULL = 0; literal DTI$K_STARTING = 1; ! Starting state literal DTI$K_ACTIVE = 2; ! Active state literal DTI$K_ONE_P_COMMITTING = 3; ! Committing (one-phase) literal DTI$K_PREPARING = 4; ! Preparing state literal DTI$K_PREPARED = 5; ! Prepared state literal DTI$K_COMMITTING = 6; ! Committing state literal DTI$K_COMMITTED = 7; ! Committed state literal DTI$K_ONE_P_COMMITTED = 8; ! Committed (one-phase) literal DTI$K_ABORTING = 9; ! Aborting state literal DTI$K_ABORTED = 10; ! Aborted or forgotten state literal DTI$K_IN_DOUBT = 11; ! Transaction has prepared and RM is ! coordinator; resolution must come ! from external entity ! SET item codes literal DTI$K_ILLEGAL = 0; ! Make code 0 illegal literal DTI$K_DELETE_TRANSACTION = 1; ! Delete transaction literal DTI$K_DELETE_RM_NAME = 2; ! Delete resource manager literal DTI$K_MODIFY_STATE = 3; ! Modify transaction state literal DTI$K_DELETE_BRANCH_NODE = 4; ! Delete branch node literal DTI$K_SET_CURRENT_TID = 5; ! Set the current transaction identifier literal DTI$K_MAX_SET_CODE = 5; literal DTI$M_SEARCH_STARTING = %X'1'; literal DTI$M_SEARCH_ACTIVE = %X'2'; literal DTI$M_SEARCH_1P_COMITTING = %X'4'; literal DTI$M_SEARCH_PREPARING = %X'8'; literal DTI$M_SEARCH_PREPARED = %X'10'; literal DTI$M_SEARCH_COMMITTING = %X'20'; literal DTI$M_SEARCH_COMMITTED = %X'40'; literal DTI$M_SEARCH_1P_COMMITTED = %X'80'; literal DTI$M_SEARCH_ABORTING = %X'100'; literal DTI$M_SEARCH_ABORTED = %X'200'; literal DTI$_ENDSEARCH = 0; ! End of search list literal DTI$_SEARCH_AS_NODE = 1; ! Search as node literal DTI$_SEARCH_CURRENT_TID = 2; ! Search current transaction identifier literal DTI$_SEARCH_TID = 3; ! Search transaction identifier literal DTI$_SEARCH_RM_NAME = 4; ! Search resource manager literal DTI$_SEARCH_BRANCH_NAME = 5; ! Search branch node names literal DTI$_SEARCH_STATE = 6; ! Search state literal DTI$_SEARCH_RESOLVED_STATE = 7; ! Search resolved state literal DTI$K_MAX_SEARCH_CODE = 7; literal DTI$S_DTISEARCHDEF = 2; ! Search list codes macro DTI$V_SEARCH_STARTING = 0,0,1,0 %; ! Starting state macro DTI$V_SEARCH_ACTIVE = 0,1,1,0 %; ! Active state macro DTI$V_SEARCH_1P_COMITTING = 0,2,1,0 %; ! 1P Committing state macro DTI$V_SEARCH_PREPARING = 0,3,1,0 %; ! Preparing state macro DTI$V_SEARCH_PREPARED = 0,4,1,0 %; ! Prepared state macro DTI$V_SEARCH_COMMITTING = 0,5,1,0 %; ! Committing state macro DTI$V_SEARCH_COMMITTED = 0,6,1,0 %; ! Committed state macro DTI$V_SEARCH_1P_COMMITTED = 0,7,1,0 %; ! 1P Committed state macro DTI$V_SEARCH_ABORTING = 0,8,1,0 %; ! Aborting state macro DTI$V_SEARCH_ABORTED = 0,9,1,0 %; ! Aborted state ! Search item list definitions literal DTI$M_UPDATE = %X'1'; literal DTI$M_LOCAL_RM = %X'2'; literal DTI$S_TRANSACTION_INFORMATION = 84; ! length of transaction information record literal DTI$S_DTIRECDEF = 84; ! Transaction information record definitions macro DTI$W_FLAGS = 0,0,16,0 %; ! Modifier flags macro DTI$V_UPDATE = 0,0,1,0 %; ! Delete resource manager from transaction macro DTI$V_LOCAL_RM = 0,1,1,0 %; ! Participant type (1 = RM, 0 = node) macro DTI$B_STATE = 2,0,8,0 %; ! Transaction state macro DTI$B_PART_NAME_LEN = 3,0,8,0 %; ! Length of participant name macro DTI$T_PART_NAME = 4,0,0,0 %; literal DTI$S_PART_NAME = 32; ! Participant name macro DTI$T_PART_LOG_ID = 36,0,0,0 %; literal DTI$S_PART_LOG_ID = 16; ! Participant log id macro DTI$T_TID = 52,0,0,0 %; literal DTI$S_TID = 16; ! Transaction ID macro DTI$O_UTC_COMMIT_TIME = 68,0,0,0 %; literal DTI$S_UTC_COMMIT_TIME = 16; ! UTC commit time !*** MODULE $DVIDEF *** ! + ! ! Get Device and Volume Information Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added at the END of the list so that ! users will not have to rebuild. ! ! - literal DVI$_DEVCHAR = 2; ! Device characteristics - VALUE - 4 bytes literal DVI$_DEVCLASS = 4; ! Device class - VALUE - 1 byte literal DVI$_DEVTYPE = 6; ! Device type - VALUE - 1 byte literal DVI$_DEVBUFSIZ = 8; ! Device buffer size - VALUE - 2 bytes literal DVI$_DEVDEPEND = 10; ! Device dependent information - VALUE - 4 bytes literal DVI$_UNIT = 12; ! Unit number - VALUE - 4 bytes literal DVI$_PID = 14; ! Process identification of device owner - VALUE - 4 bytes literal DVI$_OWNUIC = 16; ! UIC of device owner - VALUE - 4 bytes literal DVI$_VPROT = 18; ! Volume protection mask - VALUE - 2 bytes literal DVI$_ERRCNT = 20; ! Error count - VALUE - 2 bytes literal DVI$_OPCNT = 22; ! Operation count - VALUE - 4 bytes literal DVI$_RECSIZ = 24; ! Blocked record size - VALUE - 2 bytes literal DVI$_MAXBLOCK = 26; ! Number of logical blocks on the volume (disk) - VALUE - 4 bytes literal DVI$_DEVDEPEND2 = 28; ! Additional device dependent data - VALUE - 4 bytes literal DVI$_REFCNT = 30; ! Reference count of processes - VALUE - 2 bytes literal DVI$_DEVNAM = 32; ! Device name - STRING - 64 bytes literal DVI$_VOLNAM = 34; ! Volume name - STRING - 12 bytes literal DVI$_SECTORS = 36; ! Number of sectors per track (disk) - VALUE - 1 byte literal DVI$_TRACKS = 38; ! Number of tracks per cylinder (disk) - VALUE - 1 byte literal DVI$_CYLINDERS = 40; ! Number of cylinders on the volume (disk) - VALUE - 2 bytes literal DVI$_FREEBLOCKS = 42; ! Number of free blocks on the volume (disk) - VALUE - 4 bytes literal DVI$_LOGVOLNAM = 44; ! Logical volume name - STRING - 64 bytes literal DVI$_VOLNUMBER = 46; ! Number of this volume in volume set (disk) - VALUE - 4 byte literal DVI$_VOLCOUNT = 48; ! Count of volumes in volume set (disk) - VALUE - 4 byte literal DVI$_ROOTDEVNAM = 50; ! Device name of root volume in volume set (disk) - STRING - 64 bytes literal DVI$_NEXTDEVNAM = 52; ! Device name of next volume in volume set (disk) - STRING - 64 bytes literal DVI$_TRANSCNT = 54; ! Volume Transaction Count - VALUE - 2 bytes literal DVI$_MOUNTCNT = 56; ! Mount count - VALUE - 2 bytes literal DVI$_CLUSTER = 58; ! Volume Cluster Size (disk) - VALUE - 2 bytes literal DVI$_MAXFILES = 60; ! Maximum Files on Volume (disk) - VALUE - 4 bytes literal DVI$_SERIALNUM = 62; ! Volume Serial Number (disk) - VALUE - 4 bytes literal DVI$_ACPPID = 64; ! ACP Process ID - VALUE - 4 bytes literal DVI$_ACPTYPE = 66; ! ACP type code - VALUE - 1 byte literal DVI$_CONCEALED = 68; ! Device is a concealed device - BOOLEAN - 1 byte ! ! * THE FOLLOWING CODES ARE THE INDIVIDUAL BITS OF THE DEVCHAR LONGWORD ! literal DVI$_REC = 70; ! DEVICE RECORD ORIENTED literal DVI$_CCL = 72; ! CARRIAGE CONTROL DEVICE literal DVI$_TRM = 74; ! DEVICE IS A TERMINAL literal DVI$_DIR = 76; ! DEVICE IS DIRECTORY STRUCTURED literal DVI$_SDI = 78; ! DEVICE IS SINGLE DIRECTORY STRUCTURED literal DVI$_SQD = 80; ! SEQUENTIAL BLOCK-ORIENTED DEVICE (I.E., MAGTAPE) literal DVI$_SPL = 82; ! DEVICE BEING SPOOLED literal DVI$_OPR = 84; ! DEVICE IS AN OPERATOR literal DVI$_RCT = 86; ! DISK CONTAINS RCT (DEC STANDARD 166 DISK) literal DVI$_NET = 88; ! NETWORK DEVICE literal DVI$_FOD = 90; ! FILES-ORIENTED DEVICE (I.E., DISK AND MT) literal DVI$_DUA = 92; ! DEVICE IS DUAL PORTED literal DVI$_SHR = 94; ! DEVICE SHAREABLE literal DVI$_GEN = 96; ! DEVICE IS A GENERIC DEVICE literal DVI$_AVL = 98; ! DEVICE AVAILABLE FOR USE literal DVI$_MNT = 100; ! DEVICE IS MOUNTED literal DVI$_MBX = 102; ! DEVICE IS A MAILBOX literal DVI$_DMT = 104; ! DEVICE MARKED FOR DISMOUNT literal DVI$_ELG = 106; ! DEVICE HAS ERROR LOGGING ENABLED literal DVI$_ALL = 108; ! DEVICE IS ALLOCATED literal DVI$_FOR = 110; ! DEVICE IS MOUNTED FOREIGN (I.E., NON-FILE STRUCTURED) literal DVI$_SWL = 112; ! DEVICE IS SOFTWARE WRITE LOCKED literal DVI$_IDV = 114; ! DEVICE CAPABLE OF PROVIDING INPUT literal DVI$_ODV = 116; ! DEVICE CAPABLE OF PROVIDING OUTPUT literal DVI$_RND = 118; ! DEVICE ALLOWS RANDOM ACCESS literal DVI$_RTM = 120; ! DEVICE IS REALTIME IN NATURE literal DVI$_RCK = 122; ! DEVICE HAS READ CHECKING ENABLED literal DVI$_WCK = 124; ! DEVICE HAS WRITE CHECKING ENABLED ! ! * THE FOLLOWING CODES ARE THE INDIVIDUAL BITS OF THE DEVDEPEND LONGWORD ! * (AS DEFINED FOR TERMINALS: TTDEF IN STARDEFQZ.SDL) ! literal DVI$_TT_PASSALL = 126; literal DVI$_TT_NOECHO = 128; literal DVI$_TT_NOTYPEAHD = 130; literal DVI$_TT_ESCAPE = 132; literal DVI$_TT_HOSTSYNC = 134; literal DVI$_TT_TTSYNC = 136; literal DVI$_TT_SCRIPT = 138; literal DVI$_TT_LOWER = 140; literal DVI$_TT_MECHTAB = 142; literal DVI$_TT_WRAP = 144; literal DVI$_TT_CRFILL = 146; literal DVI$_TT_LFFILL = 148; literal DVI$_TT_SCOPE = 150; literal DVI$_TT_REMOTE = 152; literal DVI$_TT_EIGHTBIT = 154; literal DVI$_TT_MBXDSABL = 156; literal DVI$_TT_NOBRDCST = 158; literal DVI$_TT_READSYNC = 160; literal DVI$_TT_MECHFORM = 162; literal DVI$_TT_HALFDUP = 164; literal DVI$_TT_MODEM = 166; literal DVI$_TT_OPER = 168; literal DVI$_TT_PAGE = 170; ! ! * THE FOLLOWING CODES ARE THE INDIVIDUAL BITS OF THE DEVDEPEND2 LONGWORD ! * (AS DEFINED FOR TERMINALS: TT2DEF IN STARDEFQZ.SDL) ! literal DVI$_TT_LOCALECHO = 172; literal DVI$_TT_AUTOBAUD = 174; literal DVI$_TT_HANGUP = 176; literal DVI$_TT_MODHANGUP = 178; literal DVI$_TT_BRDCSTMBX = 180; literal DVI$_TT_DMA = 182; literal DVI$_TT_ALTYPEAHD = 184; literal DVI$_TT_SETSPEED = 186; literal DVI$_TT_DCL_MAILBX = 188; ! TEMP DEFINITIONS FOR DCL SPAWN literal DVI$_TT_EDITING = 190; literal DVI$_TT_INSERT = 192; literal DVI$_TT_FALLBACK = 194; literal DVI$_TT_DIALUP = 196; literal DVI$_TT_SECURE = 198; literal DVI$_TT_DISCONNECT = 200; literal DVI$_TT_PASTHRU = 202; literal DVI$_TT_SIXEL = 204; literal DVI$_TT_DRCS = 206; literal DVI$_TT_PRINTER = 208; literal DVI$_TT_APP_KEYPAD = 210; literal DVI$_TT_SYSPWD = 212; literal DVI$_TT_ANSICRT = 214; literal DVI$_TT_REGIS = 216; literal DVI$_TT_BLOCK = 218; literal DVI$_TT_AVO = 220; literal DVI$_TT_EDIT = 222; literal DVI$_TT_DECCRT = 224; ! ! * THE FOLLOWING CODES ARE REGULAR ITEMS ! literal DVI$_STS = 226; ! STATUS LONGWORD literal DVI$_DEVSTS = 228; ! DEVICE STATUS WORD literal DVI$_DEVCHAR2 = 230; ! Second device characteristics longword - VALUE - 4 bytes literal DVI$_FULLDEVNAM = 232; ! Fully qualified device name literal DVI$_LOCKID = 234; ! Device lock id - VALUE - 4 bytes literal DVI$_ALLDEVNAM = 236; ! Allocation class + device name literal DVI$_VOLSETMEM = 238; ! Volume set member literal DVI$_DEVLOCKNAM = 240; ! Device lock name ! ! * THE FOLLOWING CODES SUPPORT FEATURES OF DUAL-PATH AND SHADOW-SET DEVICES ! literal DVI$_ALLOCLASS = 242; ! Allocation class of host(s) literal DVI$_ALT_HOST_AVAIL = 244; ! Alternate host is active literal DVI$_ALT_HOST_NAME = 246; ! Name of host serving alternate path literal DVI$_ALT_HOST_TYPE = 248; ! Type of alternate host literal DVI$_HOST_AVAIL = 250; ! Primary host is active literal DVI$_HOST_COUNT = 252; ! Number of paths to the device literal DVI$_HOST_NAME = 254; ! Name of host serving the primary path literal DVI$_HOST_TYPE = 256; ! Type of primary host (today one of "V785", "V780", "V750" or "HS50") literal DVI$_REMOTE_DEVICE = 258; ! Device is not connected to local node literal DVI$_SERVED_DEVICE = 260; ! Device is served to the cluster literal DVI$_SHDW_CATCHUP_COPYING = 262; ! Catch-up copy is in progress literal DVI$_SHDW_MASTER = 264; ! Device is "virtual" master device for shadow set literal DVI$_SHDW_MASTER_NAME = 266; ! Name of the "virtual" master device for a shadow set literal DVI$_SHDW_MEMBER = 268; ! Device is one of the volumes making a shadow set literal DVI$_SHDW_MERGE_COPYING = 270; ! Merge copy is in progress literal DVI$_SHDW_NEXT_MBR_NAME = 272; ! Name of the next device in shadow set ! ! * THE FOLLOWING CODES ARE REGULAR ITEMS ! literal DVI$_TT_PHYDEVNAM = 274; ! Terminal physical device name - STRING - 64 bytes literal DVI$_TT_DECCRT2 = 276; ! DEC_CRT level 2 part of devdepend2 longword for ! terminals. literal DVI$_MEDIA_NAME = 278; ! Decoded media name from UCB$L_MEDIA_ID field (ie. RK07 ) literal DVI$_MEDIA_TYPE = 280; ! Decoded media type from UCB$L_MEDIA_ID field (ie. DM ) literal DVI$_MEDIA_ID = 282; ! NONdecoded media id from UCB$L_MEDIA_ID ! literal DVI$_SHDW_FAILED_MEMBER = 284; ! Member unit has been failed out from shadow set literal DVI$_MSCP_UNIT_NUMBER = 286; ! MSCP unit number of device (internal hash ! value, not useful for customers or applications) literal DVI$_DISPLAY_DEVNAM = 288; ! A displayable device name, useful for user ! displays but not for $ASSIGN literal DVI$_TT_ACCPORNAM = 290; ! Name of local port on remote system. Counted ! string in remote native format, ie: LAT, X.29 literal DVI$_DEVDEPEND3 = 292; ! Device dependent longword 3 literal DVI$_TT_MULTISESSION = 294; ! Multi-session terminal literal DVI$_TT_DECCRT3 = 296; ! VT3xx series terminal literal DVI$_SET_HOST_TERMINAL = 298; ! SET HOST session terminal literal DVI$_DFS_ACCESS = 300; ! DFS client access point device literal DVI$_DAPDEVNAM = 302; ! DAP device name, used to store the remote ! name string of a device that is accessed via ! the DAP protocol (without DECnet), such as ! certain console disks. literal DVI$_TT_DECCRT4 = 304; ! VT4xx series terminal literal DVI$_TT_CHARSET = 306; ! Terminal character set information ! ! * The following codes are the individual bits of the TT_CHARSET longword ! * in the terminal UCB (as defined in TTCDEF) ! literal DVI$_TT_CS_KANA = 308; ! Support Kana character set literal DVI$_TT_CS_KANJI = 310; ! Support Kanji character set literal DVI$_TT_CS_HANZI = 312; ! Support Hanzi character set literal DVI$_TT_CS_HANGUL = 314; ! Support Hangul character set literal DVI$_TT_CS_HANYU = 316; ! Support Hanyu character set literal DVI$_TT_CS_THAI = 318; ! Support Thai character set ! ! * THE FOLLOWING CODES ARE REGULAR ITEMS ! literal DVI$_DEVDEPEND4 = 320; ! Device dependent longword 4 literal DVI$_DEVICE_TYPE_NAME = 322; ! DDR Device type name literal DVI$_TT_ASIAN_MODE = 324; ! Asian terminal I/O characteristics literal DVI$_PREFERRED_CPU = 326; ! Return CPU affinity of device literal DVI$_TT_DECCRT5 = 328; ! VT5xx series terminal literal DVI$_TT_ANSI_COLOR = 330; ! Terminal supports ANSI color escape sequences literal DVI$_MT3_SUPPORTED = 332; ! Tape UCB owned by an MTD enhanced ! driver? (longword) literal DVI$_MT3_DENSITY = 334; ! Tape density. (longword) literal DVI$_DRIVER_IMAGE_NAME = 336; ! Driver image name -- STRING literal DVI$_CLIENT_DEVICE = 338; ! Client device flag -- BOOLEAN literal DVI$_FC_PORT_NAME = 340; ! Fibre Channel Port Name -- STRING literal DVI$_FC_NODE_NAME = 342; ! Fibre Channel Node Name -- STRING literal DVI$_WWID = 344; ! SCSI Fibre Channel Device (Disk, Tape, etc.) ! World Wide Identifier -- STRING literal DVI$_VOLCHAR = 346; ! Volume Characteristics (16 bytes) literal DVI$_HBVS_MASTER_MEMBER = 348; ! This device is master member of of shadow set literal DVI$_MULTIPATH = 350; ! this device is a member of a multipath set literal DVI$_MPDEV_CURRENT_PATH = 352; ! the current path of the multipath set literal DVI$_VOLSIZE = 354; ! the current logical volume size literal DVI$_EXPSIZE = 356; ! the growth limit of the volume literal DVI$_QLEN = 358; ! the queue length on the device literal DVI$_SHDW_SITE = 360; ! the shadowing site-specific value for the device literal DVI$_SHDW_MBR_COUNT = 362; ! the number of full members in a virtual unit literal DVI$_SHDW_DEVICE_COUNT = 364; ! the number of members in a virtual unit literal DVI$_SHDW_MBR_READ_COST = 366; ! the read cost for a member literal DVI$_SHDW_READ_SOURCE = 368; ! the name of the member from which reads occur literal DVI$_SHDW_TIMEOUT = 370; ! the timeout value for the device literal DVI$_DVI_UNUSED_1 = 372; ! Had been shdw_start_delay literal DVI$_SHDW_GENERATION = 374; ! the generation number literal DVI$_SHDW_STATUS = 376; ! the status of either the member or virtual unit literal DVI$_SHDW_MBR_COPY_DONE = 378; ! the percent done of a copy operation literal DVI$_SHDW_MBR_MERGE_DONE = 380; ! the percent done of a full merge operation literal DVI$_SHDW_MINIMERGE_ENABLE = 382; ! is this virtual unit enabled for mini-merge? literal DVI$_DVI_UNUSED_2 = 384; ! had been shdw_minimerge_capable literal DVI$_SHDW_COPIER_NODE = 386; ! the node on which the copy is being done literal DVI$_SHDW_MASTER_MBR = 388; ! the device that is the master member of the virtual unit literal DVI$_MPDEV_AUTO_PATH_SW_CNT = 390; ! number of times the device switched paths due to an I/O error literal DVI$_MPDEV_MAN_PATH_SW_CNT = 392; ! number of times the device switched paths due to $SET DEVICE /PATH= /SWITCH literal DVI$_WRITETHRU_CACHE_ENABLED = 394; ! vcb$v_writethru literal DVI$_NOCACHE_ON_VOLUME = 396; ! vcb$v_nocache literal DVI$_MOUNTVER_ELIGIBLE = 398; ! vcb$v_mountver literal DVI$_ERASE_ON_DELETE = 400; ! vcb$v_erase literal DVI$_NOHIGHWATER = 402; ! vcb$v_nohighwater literal DVI$_NOSHARE_MOUNTED = 404; ! vcb$v_noshare literal DVI$_CLUSLOCK = 406; ! vcb$v_cluslock literal DVI$_ODS2_SUBSET0 = 408; ! vcb$v_subset0 literal DVI$_PROT_SUBSYSTEM_ENABLED = 410; ! vcb$v_subsystem literal DVI$_ODS5 = 412; ! vcb$v_struc_ods5 literal DVI$_ACCESSTIMES_RECORDED = 414; ! vcb$v_accesstimes literal DVI$_HARDLINKS_SUPPORTED = 416; ! vcb$v_hardlinks literal DVI$_SCSI_DEVICE_FIRMWARE_REV = 418; ! firmware revision level for SCSI devices literal DVI$_TOTAL_PATH_COUNT = 420; ! number of configured multipath paths literal DVI$_AVAILABLE_PATH_COUNT = 422; ! number of working and enabled paths literal DVI$_VOLUME_EXTEND_QUANTITY = 424; ! default volume extend quantity literal DVI$_MOUNT_TIME = 426; ! time the volume was mounted literal DVI$_VOLUME_MOUNT_SYS = 428; ! vcb$v_system literal DVI$_VOLUME_MOUNT_GROUP = 430; ! vcb$v_group literal DVI$_PATH_AVAILABLE = 432; ! literal DVI$_PATH_USER_DISABLED = 434; ! literal DVI$_PATH_NOT_RESPONDING = 436; ! sud$v_not_responding literal DVI$_PATH_POLL_ENABLED = 438; ! literal DVI$_MVSUPMSG = 440; ! sud$v_mvsupmsg_auto literal DVI$_PATH_SWITCH_TO_TIME = 442; literal DVI$_PATH_SWITCH_FROM_TIME = 444; literal DVI$_ERROR_RESET_TIME = 446; literal DVI$_DEVICE_MAX_IO_SIZE = 448; literal DVI$_VOLUME_RETAIN_MAX = 450; literal DVI$_VOLUME_RETAIN_MIN = 452; literal DVI$_PREFERRED_CPU_BITMAP = 454; ! Bitmap indicating Fast Path CPU literal DVI$_MAILBOX_INITIAL_QUOTA = 456; literal DVI$_MAILBOX_BUFFER_QUOTA = 458; literal DVI$_VOLUME_WINDOW = 460; literal DVI$_VOLUME_SPOOLED_DEV_CNT = 462; literal DVI$_VOLUME_PENDING_WRITE_ERR = 464; literal DVI$_LAN_SPEED = 466; literal DVI$_LAN_LINK_UP = 468; literal DVI$_LAN_DEFAULT_MAC_ADDRESS = 470; literal DVI$_LAN_MAC_ADDRESS = 472; literal DVI$_LAN_FULL_DUPLEX = 474; literal DVI$_LAN_ALL_MULTICAST_MODE = 476; literal DVI$_LAN_PROMISCUOUS_MODE = 478; literal DVI$_LAN_JUMBO_FRAMES_ENABLED = 480; literal DVI$_LAN_AUTONEG_ENABLED = 482; literal DVI$_LAN_PROTOCOL_TYPE = 484; literal DVI$_LAN_PROTOCOL_NAME = 486; literal DVI$_LAN_LINK_STATE_VALID = 488; literal DVI$_FC_HBA_FIRMWARE_REV = 490; literal DVI$_ADAPTER_IDENT = 492; literal DVI$_MOUNTCNT_CLUSTER = 494; literal DVI$_SHDW_HBMM_RESET_COUNT = 496; literal DVI$_SHDW_HBMM_RESET_TIME = 498; literal DVI$_SPECIAL_FILES = 500; ! vcb$v_special_files literal DVI$_NOXFCCACHE_ON_VOLUME = 502; ! vcb$v_noxfccache literal DVI$_XFC_DEPOSING = 504; ! vcb$v_xfc_deposing ! ! *** ADD NEW ITEM-CODES IMMEDIATELY BEFORE THIS COMMENT ***** ! ! ! Define flag bits in the item code. ! literal DVI$M_SECONDARY = %X'1'; literal DVI$M_NOREDIRECT = %X'8000'; literal DVI$S_DVIDEF = 2; macro DVI$V_SECONDARY = 0,0,1,0 %; ! Use secondary device characteristics macro DVI$V_ITEM_CODE = 0,1,14,0 %; literal DVI$S_ITEM_CODE = 14; ! Space for item code ! Define additional flags here, subtracting the space out of the ! above item code. (The item code must contain all the unused bits ! for proper validation in the service.) macro DVI$V_NOREDIRECT = 0,15,1,0 %; ! Don't redirect to virtual terminal ! ! Define flag bits in the volume characteristics item code. ! literal DVI$M_VOL_READDIR = %X'F'; literal DVI$C_READDIR_NONE = 0; ! directory cannot be read (scan with repeated IO$_ACCESS) literal DVI$C_READDIR_VIO = 1; ! read directory via IO$_READVBLK literal DVI$C_READDIR_IO = 2; ! read directory via IO$_READDIR literal DVI$C_READDIR_ACP = 3; ! read directory via IO$_ACPCNTRL literal DVI$M_VOL_LENGTH_HINT = %X'10'; literal DVI$M_VOL_CACHING_ATTR = %X'20'; literal DVI$M_VOL_ACCESS_DATE = %X'40'; literal DVI$M_VOL_HARDLINK = %X'80'; literal DVI$M_VOL_SET_SECURITY = %X'100'; literal DVI$M_VOL_FID_TO_NAME = %X'200'; literal DVI$M_VOL_ODS1_STYLE_PURGE = %X'400'; literal DVI$M_VOL_SHARED_TRUNCATE = %X'800'; literal DVI$M_VOL_WRITE_BARRIER = %X'1000'; literal DVI$M_VOL_DIRSEQ_QIO = %X'2000'; literal DVI$M_VOL_EFS = %X'4000'; literal DVI$M_VOL_UCS2 = %X'8000'; literal DVI$M_VOL_CASE_VARIANT = %X'10000'; literal DVI$M_VOL_MODDATE = %X'20000'; literal DVI$M_VOL_SPECIAL_FILE = %X'40000'; literal DVI$M_VOL_SSIO = %X'80000'; literal DVI$M_VOL_LOOKUP_SPECIAL = %X'100000'; literal DVI$S_DVIVOLDEF = 16; macro DVI$V_VOL_READDIR = 0,0,4,0 %; literal DVI$S_VOL_READDIR = 4; ! Read/scan a directory (4 bit field): macro DVI$V_VOL_LENGTH_HINT = 0,4,1,0 %; ! file length hint macro DVI$V_VOL_CACHING_ATTR = 0,5,1,0 %; ! support 'caching attribute' (contents, atttribute, on_close) macro DVI$V_VOL_ACCESS_DATE = 0,6,1,0 %; ! access date macro DVI$V_VOL_HARDLINK = 0,7,1,0 %; ! hardlink macro DVI$V_VOL_SET_SECURITY = 0,8,1,0 %; ! set volume security profile support macro DVI$V_VOL_FID_TO_NAME = 0,9,1,0 %; ! ATR$C_FILE_SPEC attribute (lib$fid_to_name) macro DVI$V_VOL_ODS1_STYLE_PURGE = 0,10,1,0 %; ! post ODS1 style purge operation macro DVI$V_VOL_SHARED_TRUNCATE = 0,11,1,0 %; ! Support truncate when open shared (Spiralog only?) macro DVI$V_VOL_WRITE_BARRIER = 0,12,1,0 %; ! Support IO$M_WRITE_BARRIER (vs IO$M_BARRIER) macro DVI$V_VOL_DIRSEQ_QIO = 0,13,1,0 %; ! read/arm DIRSEQ by QIO macro DVI$V_VOL_EFS = 0,14,1,0 %; ! extended file specification macro DVI$V_VOL_UCS2 = 0,15,1,0 %; ! ucs2 file names macro DVI$V_VOL_CASE_VARIANT = 0,16,1,0 %; ! case variant names macro DVI$V_VOL_MODDATE = 0,17,1,0 %; ! support for modification date (ATR$C_MODDATE). macro DVI$V_VOL_SPECIAL_FILE = 0,18,1,0 %; ! special file support including symbolic links (SYMLINK) macro DVI$V_VOL_SSIO = 0,19,1,0 %; ! support for shared stream I/O (SSIO) macro DVI$V_VOL_LOOKUP_SPECIAL = 0,20,1,0 %; ! support for special file detection in file lookup ! ! Constant form of name for past compatibility. ! literal DVI$C_SECONDARY = 1; ! ! The following ACP type codes are formally defined in $AQBDEF ! These synonyms are available to user programs and they are ! guaranteed to be consistent by ASSUME's in SYSGETDVI. Additions ! to the ACP type codes in $AQBDEF should be reflected here and ! in the ASSUMES in SYSGETDVI. ! ! If you add ACP codes here, you must also update the ACP_TYPES ! text translation table embedded over in [lib]liblexica.bli. ! literal DVI$C_ACP_F11V1 = 1; ! FILES-11 STRUCTURE LEVEL 1 literal DVI$C_ACP_F11V2 = 2; ! FILES-11 STRUCTURE LEVEL 2 literal DVI$C_ACP_MTA = 3; ! MAGTAPE literal DVI$C_ACP_NET = 4; ! NETWORKS literal DVI$C_ACP_REM = 5; ! REMOTE I/O literal DVI$C_ACP_HBS = 6; ! HOST BASED SHADOWING literal DVI$C_ACP_F11V3 = 7; ! Files-11 presentation of ISO 9660 literal DVI$C_ACP_F11V4 = 8; ! Files-11 presentation of High Sierra literal DVI$C_ACP_F64 = 9; ! Files 64 support for Dollar literal DVI$C_ACP_UCX = 10; ! ACP for TCP/IP Services for OpenVMS literal DVI$C_ACP_F11V5 = 11; ! FILES-11 STRUCTURE LEVEL 5 literal DVI$C_ACP_F11V6 = 12; ! FILES-11 STRUCTURE LEVEL 6 literal DVI$C_ACP_HBVS = 13; ! Host Based Volume Shadowing SCP !*** MODULE $DVSDEF *** ! + ! ! Device Scan Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added at the END of the list so that ! users will not have to rebuild. ! ! - literal DVS$_DEVCLASS = 1; ! Device class - VALUE - 4 bytes (only one used) literal DVS$_DEVTYPE = 2; ! Device type - VALUE - 4 bytes (only one used) !*** MODULE $EFNDEF *** literal EFN$C_ENF = 128; ! Event No Flag (no stored state) literal EFN$C_CTX = 129; ! Wait for context !*** MODULE ELFDATYP IDENT X-4 *** macro Elf64_Addr = 0,0,0,1 %; literal S_Elf64_Addr = 8; macro Elf64_Off = 0,0,0,0 %; literal S_Elf64_Off = 8; macro Elf64_Half = 0,0,16,0 %; macro Elf64_Word = 0,0,32,0 %; macro Elf64_Sword = 0,0,32,1 %; macro Elf64_Xword = 0,0,0,0 %; literal S_Elf64_Xword = 8; macro Elf64_Sxword = 0,0,0,1 %; literal S_Elf64_Sxword = 8; macro Elf64_Section = 0,0,32,0 %; macro Elf64_Symndx = 0,0,32,0 %; literal S_subsys_majmin = 4; macro ver$w_minor_id = 0,0,16,0 %; macro ver$w_major_id = 2,0,16,0 %; literal S_sysver_majmin = 4; macro ver$v_minor_id = 0,0,24,0 %; literal ver$s_minor_id = 24; macro ver$v_major_id = 0,24,8,0 %; literal ver$s_major_id = 8; literal lnkg_desc1$m_type = %X'1'; literal lnkg_desc1$m_notused0 = %X'2'; literal lnkg_desc1$M_GP = %X'4'; literal lnkg_desc1$m_notused1 = %X'8'; literal lnkg_desc1$M_R2 = %X'30'; literal lnkg_desc1$M_R3 = %X'C0'; literal lnkg_desc1$M_R4 = %X'300'; literal lnkg_desc1$M_R5 = %X'C00'; literal lnkg_desc1$M_R6 = %X'3000'; literal lnkg_desc1$M_R7 = %X'C000'; literal lnkg_desc1$M_R8 = %X'30000'; literal lnkg_desc1$M_R9 = %X'C0000'; literal lnkg_desc1$M_R10 = %X'300000'; literal lnkg_desc1$M_R11 = %X'C00000'; literal lnkg_desc1$M_R12 = %X'3000000'; literal lnkg_desc1$M_R13 = %X'C000000'; literal lnkg_desc1$M_R14 = %X'30000000'; literal lnkg_desc1$M_R15 = %X'C0000000'; literal lnkg_desc1$M_R16 = %X'300000000'; literal lnkg_desc1$M_R17 = %X'C00000000'; literal lnkg_desc1$M_R18 = %X'3000000000'; literal lnkg_desc1$M_R19 = %X'C000000000'; literal lnkg_desc1$M_R20 = %X'30000000000'; literal lnkg_desc1$M_R21 = %X'C0000000000'; literal lnkg_desc1$M_R22 = %X'300000000000'; literal lnkg_desc1$M_R23 = %X'C00000000000'; literal lnkg_desc1$M_R24 = %X'3000000000000'; literal lnkg_desc1$M_AI = %X'4000000000000'; literal lnkg_desc1$m_notused25 = %X'8000000000000'; literal lnkg_desc1$M_R26 = %X'30000000000000'; literal lnkg_desc1$M_R27 = %X'C0000000000000'; literal lnkg_desc1$M_R28 = %X'300000000000000'; literal lnkg_desc1$M_R29 = %X'C00000000000000'; literal lnkg_desc1$M_R30 = %X'3000000000000000'; literal lnkg_desc1$M_R31 = %X'C000000000000000'; literal LNKG_DESC1$K_SIZE = 8; literal LNKG_DESC1$C_SIZE = 8; literal lnkg_desc1$S_vms_lnkg_desc1 = 8; macro lnkg_desc1$v_type = 0,0,1,0 %; macro lnkg_desc1$v_notused0 = 0,1,1,0 %; macro lnkg_desc1$V_GP = 0,2,1,0 %; macro lnkg_desc1$v_notused1 = 0,3,1,0 %; macro lnkg_desc1$V_R2 = 0,4,2,0 %; literal lnkg_desc1$S_R2 = 2; macro lnkg_desc1$V_R3 = 0,6,2,0 %; literal lnkg_desc1$S_R3 = 2; macro lnkg_desc1$V_R4 = 0,8,2,0 %; literal lnkg_desc1$S_R4 = 2; macro lnkg_desc1$V_R5 = 0,10,2,0 %; literal lnkg_desc1$S_R5 = 2; macro lnkg_desc1$V_R6 = 0,12,2,0 %; literal lnkg_desc1$S_R6 = 2; macro lnkg_desc1$V_R7 = 0,14,2,0 %; literal lnkg_desc1$S_R7 = 2; macro lnkg_desc1$V_R8 = 0,16,2,0 %; literal lnkg_desc1$S_R8 = 2; macro lnkg_desc1$V_R9 = 0,18,2,0 %; literal lnkg_desc1$S_R9 = 2; macro lnkg_desc1$V_R10 = 0,20,2,0 %; literal lnkg_desc1$S_R10 = 2; macro lnkg_desc1$V_R11 = 0,22,2,0 %; literal lnkg_desc1$S_R11 = 2; macro lnkg_desc1$V_R12 = 0,24,2,0 %; literal lnkg_desc1$S_R12 = 2; macro lnkg_desc1$V_R13 = 0,26,2,0 %; literal lnkg_desc1$S_R13 = 2; macro lnkg_desc1$V_R14 = 0,28,2,0 %; literal lnkg_desc1$S_R14 = 2; macro lnkg_desc1$V_R15 = 0,30,2,0 %; literal lnkg_desc1$S_R15 = 2; macro lnkg_desc1$V_R16 = 4,0,2,0 %; literal lnkg_desc1$S_R16 = 2; macro lnkg_desc1$V_R17 = 4,2,2,0 %; literal lnkg_desc1$S_R17 = 2; macro lnkg_desc1$V_R18 = 4,4,2,0 %; literal lnkg_desc1$S_R18 = 2; macro lnkg_desc1$V_R19 = 4,6,2,0 %; literal lnkg_desc1$S_R19 = 2; macro lnkg_desc1$V_R20 = 4,8,2,0 %; literal lnkg_desc1$S_R20 = 2; macro lnkg_desc1$V_R21 = 4,10,2,0 %; literal lnkg_desc1$S_R21 = 2; macro lnkg_desc1$V_R22 = 4,12,2,0 %; literal lnkg_desc1$S_R22 = 2; macro lnkg_desc1$V_R23 = 4,14,2,0 %; literal lnkg_desc1$S_R23 = 2; macro lnkg_desc1$V_R24 = 4,16,2,0 %; literal lnkg_desc1$S_R24 = 2; macro lnkg_desc1$V_AI = 4,18,1,0 %; macro lnkg_desc1$v_notused25 = 4,19,1,0 %; macro lnkg_desc1$V_R26 = 4,20,2,0 %; literal lnkg_desc1$S_R26 = 2; macro lnkg_desc1$V_R27 = 4,22,2,0 %; literal lnkg_desc1$S_R27 = 2; macro lnkg_desc1$V_R28 = 4,24,2,0 %; literal lnkg_desc1$S_R28 = 2; macro lnkg_desc1$V_R29 = 4,26,2,0 %; literal lnkg_desc1$S_R29 = 2; macro lnkg_desc1$V_R30 = 4,28,2,0 %; literal lnkg_desc1$S_R30 = 2; macro lnkg_desc1$V_R31 = 4,30,2,0 %; literal lnkg_desc1$S_R31 = 2; !*** MODULE ELFDEF IDENT X-39 *** literal EHDR$K_EI_NIDENT = 16; literal EHDR$SC_EF_VMS_COMCOD = 0; literal ehdr$m_ef_vms_comcod = %X'3'; literal EHDR$SC_EF_VMS_LINKAGES = 2; literal ehdr$m_ef_vms_linkages = %X'4'; literal ehdr$m_ef_fill_1 = %X'8'; literal EHDR$SC_EF_IA_64_ABI64 = 4; literal ehdr$m_ef_ia_64_abi64 = %X'10'; literal EHDR$SC_EF_IA_64_REDUCEDFP = 5; literal ehdr$m_ef_ia_64_reducedfp = %X'20'; literal EHDR$SC_EF_IA_64_CONS_GP = 6; literal ehdr$m_ef_ia_64_cons_gp = %X'40'; literal EHDR$SC_EF_IA_64_NOFD_CONS_GP = 7; literal ehdr$m_ef_ia_64_nofd_cons_gp = %X'80'; literal EHDR$SC_EF_IA_64_ABSOLUTE = 8; literal ehdr$m_ef_ia_64_absolute = %X'100'; literal ehdr$m_ef_fill_2 = %X'FFFE00'; literal EHDR$SC_EF_IA_64_ARCH = 24; literal ehdr$m_ef_ia_64_arch = %X'FF000000'; literal EHDR$SC_EF_IA_64_LOOS = 0; literal ehdr$m_ef_ia_64_loos = %X'F'; literal ehdr$m_ef_fill_1a = %X'FFF0'; literal EHDR$SC_EF_IA_64_HIOS = 16; literal ehdr$m_ef_ia_64_hios = %X'FF0000'; literal ELF64_EHDR$K_E_SIZE = 64; literal ELF64_EHDR$C_E_SIZE = 64; literal ELF64_EHDR$S_VMS_OBJECT_V1 = 64; literal ELF64_EHDR$S_VMS_IMAGE_V1 = 72; literal ehdr$S_Elf64_Ehdr = 72; macro ehdr$r_ident = 0,0,0,0 %; literal ehdr$s_ident = 16; macro ehdr$t_e_ident = 0,0,0,0 %; literal ehdr$s_e_ident = 16; macro ehdr$b_ei_mag0 = 0,0,8,0 %; macro ehdr$b_ei_mag1 = 1,0,8,0 %; macro ehdr$b_ei_mag2 = 2,0,8,0 %; macro ehdr$b_ei_mag3 = 3,0,8,0 %; macro ehdr$b_ei_class = 4,0,8,0 %; macro ehdr$b_ei_data = 5,0,8,0 %; macro ehdr$b_ei_version = 6,0,8,0 %; macro ehdr$b_ei_osabi = 7,0,8,0 %; macro ehdr$b_ei_abiversion = 8,0,8,0 %; macro ehdr$b_ei_pad = 9,0,0,0 %; literal ehdr$s_ei_pad = 7; macro ehdr$w_e_type = 16,0,16,0 %; macro ehdr$w_e_machine = 18,0,16,0 %; macro ehdr$l_e_version = 20,0,32,1 %; macro ehdr$pq_e_entry = 24,0,0,0 %; literal ehdr$s_e_entry = 8; macro ehdr$q_e_phoff = 32,0,0,0 %; literal ehdr$s_e_phoff = 8; macro ehdr$q_e_shoff = 40,0,0,0 %; literal ehdr$s_e_shoff = 8; macro ehdr$l_e_flags = 48,0,32,1 %; macro ehdr$v_ef_vms_comcod = 48,0,2,0 %; literal ehdr$s_ef_vms_comcod = 2; macro ehdr$v_ef_vms_linkages = 48,2,1,0 %; macro ehdr$v_ef_fill_1 = 48,3,1,0 %; macro ehdr$v_ef_ia_64_abi64 = 48,4,1,0 %; macro ehdr$v_ef_ia_64_reducedfp = 48,5,1,0 %; macro ehdr$v_ef_ia_64_cons_gp = 48,6,1,0 %; macro ehdr$v_ef_ia_64_nofd_cons_gp = 48,7,1,0 %; macro ehdr$v_ef_ia_64_absolute = 48,8,1,0 %; macro ehdr$v_ef_fill_2 = 48,9,15,0 %; literal ehdr$s_ef_fill_2 = 15; macro ehdr$v_ef_ia_64_arch = 48,24,8,0 %; literal ehdr$s_ef_ia_64_arch = 8; macro ehdr$v_ef_ia_64_loos = 48,0,4,0 %; literal ehdr$s_ef_ia_64_loos = 4; macro ehdr$v_ef_fill_1a = 48,4,12,0 %; literal ehdr$s_ef_fill_1a = 12; macro ehdr$v_ef_ia_64_hios = 48,16,8,0 %; literal ehdr$s_ef_ia_64_hios = 8; macro ehdr$w_e_ehsize = 52,0,16,0 %; macro ehdr$w_e_phentsize = 54,0,16,0 %; macro ehdr$w_e_phnum = 56,0,16,0 %; macro ehdr$w_e_shentsize = 58,0,16,0 %; macro ehdr$w_e_shnum = 60,0,16,0 %; macro ehdr$w_e_shstrndx = 62,0,16,0 %; macro ehdr$q_e_vms_needed_cnt = 64,0,0,1 %; literal ehdr$s_e_vms_needed_cnt = 8; literal EHDR$K_EI_MAG0 = 0; literal EHDR$K_EI_MAG1 = 1; literal EHDR$K_EI_MAG2 = 2; literal EHDR$K_EI_MAG3 = 3; literal EHDR$K_EI_CLASS = 4; literal EHDR$K_EI_DATA = 5; literal EHDR$K_EI_VERSION = 6; literal EHDR$K_EI_OSABI = 7; literal EHDR$K_EI_ABIVERSION = 8; literal EHDR$K_EI_PAD = 9; literal EHDR$K_ELFMAG0 = 127; literal EHDR$K_ELFMAG1 = 69; literal EHDR$K_ELFMAG2 = 76; literal EHDR$K_ELFMAG3 = 70; literal EHDR$K_ELFCLASSNONE = 0; literal EHDR$K_ELFCLASS32 = 1; literal EHDR$K_ELFCLASS64 = 2; literal EHDR$K_ELFDATANONE = 0; literal EHDR$K_ELFDATA2LSB = 1; literal EHDR$K_ELFDATA2MSB = 2; literal EHDR$K_ELFOSABI_NONE = 0; literal EHDR$K_ELFOSABI_OPENVMS = 13; literal EHDR$K_ELFABIVERSION_VMS_CURR = 2; literal EHDR$K_ELFABIVERSION_VMS_OBJ = 2; literal EHDR$K_ELFABIVERSION_VMS_IMG = 2; literal EHDR$K_ET_NONE = 0; literal EHDR$K_ET_REL = 1; literal EHDR$K_ET_EXEC = 2; literal EHDR$K_ET_DYN = 3; literal EHDR$K_ET_CORE = 4; literal EHDR$K_ET_LOOS = 65024; literal EHDR$K_ET_HIOS = 65279; literal EHDR$K_ET_LOPROC = 65280; literal EHDR$K_ET_HIPROC = 65535; literal EHDR$K_ET_VMS_LINK_STB = 65024; literal EHDR$K_ET_VMS_DSF = 65025; literal EHDR$K_EM_NONE = 0; literal EHDR$K_EM_IA_64 = 50; literal IIHA$K_VMSXFER_SIZE = 48; literal IIHA$C_VMSXFER_SIZE = 48; literal iiha$S_transfer_address = 48; macro iiha$l_size = 0,0,32,1 %; macro iiha$l_spare = 4,0,32,1 %; macro iiha$ar_tfradr = 8,0,0,0 %; literal iiha$s_tfradr = 40; macro iiha$pq_tfradr1 = 8,0,0,0 %; literal iiha$s_tfradr1 = 8; macro iiha$pq_tfradr2 = 16,0,0,0 %; literal iiha$s_tfradr2 = 8; macro iiha$pq_tfradr3 = 24,0,0,0 %; literal iiha$s_tfradr3 = 8; macro iiha$pq_tfradr4 = 32,0,0,0 %; literal iiha$s_tfradr4 = 8; macro iiha$pq_tfradr5 = 40,0,0,0 %; literal iiha$s_tfradr5 = 8; literal IIHA$C_INIT = 1; literal IIHA$C_MAIN = 2; literal IIHA$C_EXE_INIT = 3; literal EHDR$K_EV_NONE = 0; literal EHDR$K_EV_CURRENT = 1; literal EHDR$K_VMS_COMCOD_SUCCESS = 0; literal EHDR$K_VMS_COMCOD_WARNING = 1; literal EHDR$K_VMS_COMCOD_ERROR = 2; literal EHDR$K_VMS_COMCOD_ABORT = 3; literal EHDR$K_EF_IA_64_MASKOS = 16711695; literal EHDR$K_EF_IA_64_ARCHVERSION = 1; literal SHDR$SC_SHF_WRITE = 0; literal shdr$m_shf_write = %X'1'; literal SHDR$SC_SHF_ALLOC = 1; literal shdr$m_shf_alloc = %X'2'; literal SHDR$SC_SHF_EXECINSTR = 2; literal shdr$m_shf_execinstr = %X'4'; literal shdr$m_shf_f64_bitfill_1 = %X'8'; literal SHDR$SC_SHF_MERGE = 4; literal shdr$m_shf_merge = %X'10'; literal SHDR$SC_SHF_STRINGS = 5; literal shdr$m_shf_strings = %X'20'; literal SHDR$SC_SHF_INFO_LINK = 6; literal shdr$m_shf_info_link = %X'40'; literal SHDR$SC_SHF_LINK_ORDER = 7; literal shdr$m_shf_link_order = %X'80'; literal SHDR$SC_SHF_OS_NONCONFORMING = 8; literal shdr$m_shf_os_nonconforming = %X'100'; literal SHDR$SC_SHF_GROUP = 9; literal shdr$m_shf_group = %X'200'; literal SHDR$SC_SHF_TLS = 10; literal shdr$m_shf_tls = %X'400'; literal shdr$m_shf_f64_bitfill_2 = %X'FFFF800'; literal SHDR$SC_SHF_IA_64_SHORT = 28; literal shdr$m_shf_ia_64_short = %X'10000000'; literal SHDR$SC_SHF_IA_64_NORECOV = 29; literal shdr$m_shf_ia_64_norecov = %X'20000000'; literal shdr$m_shf_f64_bitfill_3 = %X'C0000000'; literal SHDR$SC_SHF_VMS_GLOBAL = 32; literal shdr$m_shf_vms_global = %X'100000000'; literal SHDR$SC_SHF_VMS_OVERLAID = 33; literal shdr$m_shf_vms_overlaid = %X'200000000'; literal SHDR$SC_SHF_VMS_SHARED = 34; literal shdr$m_shf_vms_shared = %X'400000000'; literal SHDR$SC_SHF_VMS_VECTOR = 35; literal shdr$m_shf_vms_vector = %X'800000000'; literal SHDR$SC_SHF_VMS_ALLOC_64BIT = 36; literal shdr$m_shf_vms_alloc_64bit = %X'1000000000'; literal SHDR$SC_SHF_VMS_PROTECTED = 37; literal shdr$m_shf_vms_protected = %X'2000000000'; literal shdr$m_shf_f64_bitfill_4 = %X'FFFFFFC000000000'; literal shdr$m_shf_f64_osfill_1 = %X'FFFFF'; literal SHDR$SC_SHF_MASK_LOOS = 20; literal shdr$m_shf_mask_loos = %X'FF00000'; literal shdr$m_shf_f64_osfill_2 = %X'F0000000'; literal SHDR$SC_SHF_MASK_HIOS = 32; literal shdr$m_shf_mask_hios = %X'FFFFFFFF00000000'; literal shdr$m_shf_f64_procfill_1 = %X'FFFFFFF'; literal SHDR$SC_SHF_MASKLOPROC = 28; literal shdr$m_shf_maskloproc = %X'F0000000'; literal SHDR$SC_SHF_MASKHIPROC = 32; literal shdr$m_shf_maskhiproc = %X'FFFFFFFF00000000'; literal ELF64_SHDR$K_SH_SIZE = 64; literal ELF64_SHDR$C_SH_SIZE = 64; literal shdr$S_Elf64_Shdr = 64; macro shdr$l_sh_name = 0,0,32,1 %; macro shdr$l_sh_type = 4,0,32,1 %; macro shdr$q_sh_flags = 8,0,0,1 %; literal shdr$s_sh_flags = 8; macro shdr$v_shf_write = 8,0,1,0 %; macro shdr$v_shf_alloc = 8,1,1,0 %; macro shdr$v_shf_execinstr = 8,2,1,0 %; macro shdr$v_shf_f64_bitfill_1 = 8,3,1,0 %; macro shdr$v_shf_merge = 8,4,1,0 %; macro shdr$v_shf_strings = 8,5,1,0 %; macro shdr$v_shf_info_link = 8,6,1,0 %; macro shdr$v_shf_link_order = 8,7,1,0 %; macro shdr$v_shf_os_nonconforming = 8,8,1,0 %; macro shdr$v_shf_group = 8,9,1,0 %; macro shdr$v_shf_tls = 8,10,1,0 %; macro shdr$v_shf_f64_bitfill_2 = 8,11,17,0 %; literal shdr$s_shf_f64_bitfill_2 = 17; macro shdr$v_shf_ia_64_short = 8,28,1,0 %; macro shdr$v_shf_ia_64_norecov = 8,29,1,0 %; macro shdr$v_shf_f64_bitfill_3 = 8,30,2,0 %; literal shdr$s_shf_f64_bitfill_3 = 2; macro shdr$v_shf_vms_global = 12,0,1,0 %; macro shdr$v_shf_vms_overlaid = 12,1,1,0 %; macro shdr$v_shf_vms_shared = 12,2,1,0 %; macro shdr$v_shf_vms_vector = 12,3,1,0 %; macro shdr$v_shf_vms_alloc_64bit = 12,4,1,0 %; macro shdr$v_shf_vms_protected = 12,5,1,0 %; macro shdr$v_shf_f64_bitfill_4 = 12,6,26,0 %; literal shdr$s_shf_f64_bitfill_4 = 26; macro shdr$v_shf_f64_osfill_1 = 8,0,20,0 %; literal shdr$s_shf_f64_osfill_1 = 20; macro shdr$v_shf_mask_loos = 8,20,8,0 %; literal shdr$s_shf_mask_loos = 8; macro shdr$v_shf_f64_osfill_2 = 8,28,4,0 %; literal shdr$s_shf_f64_osfill_2 = 4; macro shdr$v_shf_mask_hios = 12,0,32,0 %; literal shdr$s_shf_mask_hios = 32; macro shdr$v_shf_f64_procfill_1 = 8,0,28,0 %; literal shdr$s_shf_f64_procfill_1 = 28; macro shdr$v_shf_maskloproc = 8,28,4,0 %; literal shdr$s_shf_maskloproc = 4; macro shdr$v_shf_maskhiproc = 12,0,32,0 %; literal shdr$s_shf_maskhiproc = 32; macro shdr$pq_sh_addr = 16,0,0,0 %; literal shdr$s_sh_addr = 8; macro shdr$q_sh_offset = 24,0,0,0 %; literal shdr$s_sh_offset = 8; macro shdr$q_sh_size = 32,0,0,1 %; literal shdr$s_sh_size = 8; macro shdr$l_sh_link = 40,0,32,1 %; macro shdr$l_sh_info = 44,0,32,1 %; macro shdr$q_sh_addralign = 48,0,0,1 %; literal shdr$s_sh_addralign = 8; macro shdr$q_sh_entsize = 56,0,0,1 %; literal shdr$s_sh_entsize = 8; literal SHDR$K_SHN_UNDEF = 0; literal SHDR$K_SHN_LORESERVE = 65280; literal SHDR$K_SHN_LOPROC = 65280; literal SHDR$K_SHN_HIPROC = 65311; literal SHDR$K_SHN_LOOS = 65312; literal SHDR$K_SHN_VMS_SYMVEC = 65312; literal SHDR$K_SHN_HIOS = 65343; literal SHDR$K_SHN_ABS = 65521; literal SHDR$K_SHN_COMMON = 65522; literal SHDR$K_SHN_XINDEX = 65535; literal SHDR$K_SHN_HIRESERVE = 65535; literal SHDR$K_SHT_NULL = 0; literal SHDR$K_SHT_PROGBITS = 1; literal SHDR$K_SHT_SYMTAB = 2; literal SHDR$K_SHT_STRTAB = 3; literal SHDR$K_SHT_RELA = 4; literal SHDR$K_SHT_HASH = 5; literal SHDR$K_SHT_DYNAMIC = 6; literal SHDR$K_SHT_NOTE = 7; literal SHDR$K_SHT_NOBITS = 8; literal SHDR$K_SHT_REL = 9; literal SHDR$K_SHT_SHLIB = 10; literal SHDR$K_SHT_DYNSYM = 11; literal SHDR$K_SHT_UNUSED_12 = 12; literal SHDR$K_SHT_UNUSED_13 = 13; literal SHDR$K_SHT_INIT_ARRAY = 14; literal SHDR$K_SHT_FINI_ARRAY = 15; literal SHDR$K_SHT_PREINIT_ARRAY = 16; literal SHDR$K_SHT_GROUP = 17; literal SHDR$K_SHT_SYMTAB_SHNDX = 18; literal GRPSEC$M_COMDAT_FLAG = 1; literal SHDR$K_SHT_LOOS = 1610612736; literal SHDR$K_SHT_HIOS = 1879048191; literal SHDR$K_SHT_LOPROC = 1879048192; literal SHDR$K_SHT_HIPROC = 2147483647; literal SHDR$K_SHT_LOUSER = -2147483648; literal SHDR$K_SHT_HIUSER = -1; literal SHDR$K_SHT_VMS_TRACE = 1610612736; literal SHDR$K_SHT_VMS_TIE_SIGNATURES = 1610612737; literal SHDR$K_SHT_VMS_DEBUG = 1610612738; literal SHDR$K_SHT_VMS_DEBUG_STR = 1610612739; literal SHDR$K_SHT_VMS_LINKAGES = 1610612740; literal SHDR$K_SHT_VMS_SYMBOL_VECTOR = 1610612741; literal SHDR$K_SHT_VMS_FIXUP = 1610612742; literal SHDR$K_SHT_VMS_DISPLAY_NAME_INF = 1610612743; literal SHDR$K_SHT_IA_64_LOPSREG = 2013265920; literal SHDR$K_SHT_IA_64_HIPSREG = 2147483647; literal SHDR$K_SHT_IA_64_EXT = 1879048192; literal SHDR$K_SHT_IA_64_UNWIND = 1879048193; literal SHDR$K_SHT_IA_64_PRIORITY_INIT = 2030043136; literal VMSSIG$$K_SIZE = 8; literal VMSSIG$$C_SIZE = 8; literal vmssig$S_VMSSigEntry = 8; macro vmssig$l_se_symbol = 0,0,32,1 %; macro vmssig$l_se_offset = 4,0,32,1 %; literal UNWIND$K_SIZE = 24; literal UNWIND$C_SIZE = 24; literal unwind$S_IA_64_Unwind_Entry = 24; macro unwind$pq_ue_start = 0,0,0,0 %; literal unwind$s_ue_start = 8; macro unwind$pq_ue_end = 8,0,0,0 %; literal unwind$s_ue_end = 8; macro unwind$pq_ue_info = 16,0,0,0 %; literal unwind$s_ue_info = 8; literal ELF64_NHDR$K_NH_SIZE = 24; literal ELF64_NHDR$C_NH_SIZE = 24; literal nhdr$S_Elf64_Nhdr = 24; macro nhdr$q_nh_namesz = 0,0,0,1 %; literal nhdr$s_nh_namesz = 8; macro nhdr$q_nh_descsz = 8,0,0,1 %; literal nhdr$s_nh_descsz = 8; macro nhdr$q_nh_type = 16,0,0,1 %; literal nhdr$s_nh_type = 8; literal ELF64_MHDR$K_MH_SIZE = 34; literal ELF64_MHDR$C_MH_SIZE = 34; literal mhdr$S_Elf64_Mhdr = 40; macro mhdr$b_mh_create_date = 0,0,0,0 %; literal mhdr$s_mh_create_date = 17; macro mhdr$b_mh_patch_date = 17,0,0,0 %; literal mhdr$s_mh_patch_date = 17; macro mhdr$b_mh_name_version = 34,0,8,0 %; literal ELF64_ORIGDYN$K_MAJOR_ID = 1; literal ELF64_ORIGDYN$K_MINOR_ID = 3; literal origdyn$S_Elf64_OrigDyn = 40; macro origdyn$l_major_id = 0,0,32,0 %; macro origdyn$l_minor_id = 4,0,32,0 %; macro origdyn$q_manipulation_date = 8,0,0,0 %; literal origdyn$s_manipulation_date = 8; macro origdyn$q_link_flags = 16,0,0,0 %; literal origdyn$s_link_flags = 8; macro origdyn$l_elf_flags = 24,0,32,0 %; macro origdyn$b_imgid = 32,0,8,0 %; literal origdyn$s_imgid = 1; literal NHDR$K_NT_VMS_MHD = 1; literal NHDR$K_NT_VMS_LNM = 2; literal NHDR$K_NT_VMS_SRC = 3; literal NHDR$K_NT_VMS_TITLE = 4; literal NHDR$K_NT_VMS_EIDC = 5; literal NHDR$K_NT_VMS_FPMODE = 6; literal NHDR$K_NT_VMS_LINKTIME = 101; literal NHDR$K_NT_VMS_IMGNAM = 102; literal NHDR$K_NT_VMS_IMGID = 103; literal NHDR$K_NT_VMS_LINKID = 104; literal NHDR$K_NT_VMS_IMGBID = 105; literal NHDR$K_NT_VMS_GSTNAM = 106; literal NHDR$K_NT_VMS_ORIG_DYN = 107; literal NHDR$K_NT_VMS_PATCHTIME = 108; literal NHDR$K_VMS_EIDC_ERRSEV_WARNING = 0; literal NHDR$K_VMS_EIDC_ERRSEV_SUCCESS = 1; literal NHDR$K_VMS_EIDC_ERRSEV_ERROR = 2; literal NHDR$K_VMS_EIDC_ERRSEV_SEVERE = 4; literal ELF64_SYM$K_ST_SIZE = 24; literal ELF64_SYM$C_ST_SIZE = 24; literal symtab$S_Elf64_Sym = 24; macro symtab$l_st_name = 0,0,32,1 %; macro symtab$b_st_info = 4,0,8,0 %; macro symtab$b_st_other = 5,0,8,0 %; macro symtab$w_st_shndx = 6,0,16,0 %; macro symtab$pq_st_value = 8,0,0,0 %; literal symtab$s_st_value = 8; macro symtab$q_st_size = 16,0,0,1 %; literal symtab$s_st_size = 8; literal SYMTAB$K_STB_LOCAL = 0; literal SYMTAB$K_STB_GLOBAL = 1; literal SYMTAB$K_STB_WEAK = 2; literal SYMTAB$K_STB_LOOS = 10; literal SYMTAB$K_STB_VMS_WEAK = 11; literal SYMTAB$K_STB_VMS_SYSTEM = 12; literal SYMTAB$K_STB_HIOS = 12; literal SYMTAB$K_STB_LOPROC = 13; literal SYMTAB$K_STB_HIPROC = 15; literal SYMTAB$K_STT_NOTYPE = 0; literal SYMTAB$K_STT_OBJECT = 1; literal SYMTAB$K_STT_FUNC = 2; literal SYMTAB$K_STT_SECTION = 3; literal SYMTAB$K_STT_FILE = 4; literal SYMTAB$K_STT_COMMON = 5; literal SYMTAB$K_STT_TLS = 6; literal SYMTAB$K_STT_LOOS = 10; literal SYMTAB$K_STT_HIOS = 12; literal SYMTAB$K_STT_LOPROC = 13; literal SYMTAB$K_STT_HIPROC = 15; literal SYMTAB$K_STV_DEFAULT = 0; literal SYMTAB$K_STV_INTERNAL = 1; literal SYMTAB$K_STV_HIDDEN = 2; literal SYMTAB$K_STV_PROTECTED = 3; literal SYMTAB$K_STV_UNIVERSAL = 3; literal SYMTAB$K_VMS_STO_VISIBILITY = 3; literal SYMTAB$K_VMS_STO_FUNC_TYPE = 48; literal SYMTAB$K_VMS_STO_LINKAGE = 192; literal SYMTAB$K_VMS_SFT_CODE_ADDR = 0; literal SYMTAB$K_VMS_SFT_SYMV_IDX = 1; literal SYMTAB$K_VMS_SFT_FD = 2; literal SYMTAB$K_VMS_SFT_RESERVE = 3; literal SYMTAB$K_VMS_STL_IGNORE = 0; literal SYMTAB$K_VMS_STL_RESERVED = 1; literal SYMTAB$K_VMS_STL_STD = 2; literal SYMTAB$K_VMS_STL_LNK = 3; literal ELF64_RELA64$K_R_SIZE = 24; literal ELF64_RELA64$C_R_SIZE = 24; literal rela$S_Elf64_Rela64 = 24; macro rela$pq_r_offset = 0,0,0,0 %; literal rela$s_r_offset = 8; macro rela$q_r_info = 8,0,0,1 %; literal rela$s_r_info = 8; macro rela$l_r_type = 8,0,32,1 %; macro rela$l_r_sym = 12,0,32,1 %; macro rela$q_r_addend = 16,0,0,0 %; literal rela$s_r_addend = 8; literal RELA$K_R_IA_64_NONE = 0; literal RELA$K_R_IA_64_IMM14 = 33; literal RELA$K_R_IA_64_IMM22 = 34; literal RELA$K_R_IA_64_IMM64 = 35; literal RELA$K_R_IA_64_DIR32MSB = 36; literal RELA$K_R_IA_64_DIR32LSB = 37; literal RELA$K_R_IA_64_DIR64MSB = 38; literal RELA$K_R_IA_64_DIR64LSB = 39; literal RELA$K_R_IA_64_GPREL22 = 42; literal RELA$K_R_IA_64_GPREL64I = 43; literal RELA$K_R_IA_64_GPREL32MSB = 44; literal RELA$K_R_IA_64_GPREL32LSB = 45; literal RELA$K_R_IA_64_GPREL64MSB = 46; literal RELA$K_R_IA_64_GPREL64LSB = 47; literal RELA$K_R_IA_64_LTOFF22 = 50; literal RELA$K_R_IA_64_LTOFF64I = 51; literal RELA$K_R_IA_64_PLTOFF22 = 58; literal RELA$K_R_IA_64_PLTOFF64I = 59; literal RELA$K_R_IA_64_PLTOFF64MSB = 62; literal RELA$K_R_IA_64_PLTOFF64LSB = 63; literal RELA$K_R_IA_64_FPTR64I = 67; literal RELA$K_R_IA_64_FPTR32MSB = 68; literal RELA$K_R_IA_64_FPTR32LSB = 69; literal RELA$K_R_IA_64_FPTR64MSB = 70; literal RELA$K_R_IA_64_FPTR64LSB = 71; literal RELA$K_R_IA_64_PCREL60B = 72; literal RELA$K_R_IA_64_PCREL21B = 73; literal RELA$K_R_IA_64_PCREL21M = 74; literal RELA$K_R_IA_64_PCREL21F = 75; literal RELA$K_R_IA_64_PCREL32MSB = 76; literal RELA$K_R_IA_64_PCREL32LSB = 77; literal RELA$K_R_IA_64_PCREL64MSB = 78; literal RELA$K_R_IA_64_PCREL64LSB = 79; literal RELA$K_R_IA_64_LTOFF_FPTR22 = 82; literal RELA$K_R_IA_64_LTOFF_FPTR64I = 83; literal RELA$K_R_IA_64_LTOFF_FPTR32MSB = 84; literal RELA$K_R_IA_64_LTOFF_FPTR32LSB = 85; literal RELA$K_R_IA_64_LTOFF_FPTR64MSB = 86; literal RELA$K_R_IA_64_LTOFF_FPTR64LSB = 87; literal RELA$K_R_IA_64_SEGREL32MSB = 92; literal RELA$K_R_IA_64_SEGREL32LSB = 93; literal RELA$K_R_IA_64_SEGREL64MSB = 94; literal RELA$K_R_IA_64_SEGREL64LSB = 95; literal RELA$K_R_IA_64_SECREL32MSB = 100; literal RELA$K_R_IA_64_SECREL32LSB = 101; literal RELA$K_R_IA_64_SECREL64MSB = 102; literal RELA$K_R_IA_64_SECREL64LSB = 103; literal RELA$K_R_IA_64_REL32MSB = 108; literal RELA$K_R_IA_64_REL32LSB = 109; literal RELA$K_R_IA_64_REL64MSB = 110; literal RELA$K_R_IA_64_REL64LSB = 111; literal RELA$K_R_IA_64_LTV32MSB = 116; literal RELA$K_R_IA_64_LTV32LSB = 117; literal RELA$K_R_IA_64_LTV64MSB = 118; literal RELA$K_R_IA_64_LTV64LSB = 119; literal RELA$K_R_IA_64_PCREL21BI = 121; literal RELA$K_R_IA_64_PCREL22 = 122; literal RELA$K_R_IA_64_PCREL64I = 123; literal RELA$K_R_IA_64_IPLTMSB = 128; literal RELA$K_R_IA_64_IPLTLSB = 129; literal RELA$K_R_IA_64_COPY = 132; literal RELA$K_R_IA_64_SUB = 133; literal RELA$K_R_IA_64_LTOFF22X = 134; literal RELA$K_R_IA_64_LDXMOV = 135; literal RELA$K_R_IA_64_TPREL14 = 145; literal RELA$K_R_IA_64_TPREL22 = 146; literal RELA$K_R_IA_64_TPREL64I = 147; literal RELA$K_R_IA_64_TPREL64MSB = 150; literal RELA$K_R_IA_64_TPREL64LSB = 151; literal RELA$K_R_IA_64_LTOFF_TP22 = 154; literal RELA$K_R_IA_64_DTPMOD64MSB = 166; literal RELA$K_R_IA_64_DTPMOD64LSB = 167; literal RELA$K_R_IA_64_LTOFF_DTPMOD22 = 170; literal RELA$K_R_IA_64_DTPREL14 = 177; literal RELA$K_R_IA_64_DTPREL22 = 178; literal RELA$K_R_IA_64_DTPREL64I = 179; literal RELA$K_R_IA_64_DTPREL32MSB = 180; literal RELA$K_R_IA_64_DTPREL32LSB = 181; literal RELA$K_R_IA_64_DTPREL64MSB = 182; literal RELA$K_R_IA_64_DTPREL64LSB = 183; literal RELA$K_R_IA_64_LTOFF_DTPREL22 = 186; literal RELA$K_R_IA_64_LOOS = 1879048192; literal RELA$K_R_IA_64_HIOS = -1; literal RELA$K_R_IA_64_DIR8 = 1879048192; literal RELA$K_R_IA_64_DIR16LSB = 1879048193; literal RELA$K_R_IA_64_VMS_CALL_SIG = 1879048194; literal RELA$K_R_IA_64_VMS_EXECLET_FUNC = 1879048195; literal RELA$K_R_IA_64_VMS_EXECLET_DATA = 1879048196; literal RELA$K_R_IA_64_VMS_FIX8 = 1879048197; literal RELA$K_R_IA_64_VMS_FIX16 = 1879048198; literal RELA$K_R_IA_64_VMS_FIX32 = 1879048199; literal RELA$K_R_IA_64_VMS_FIX64 = 1879048200; literal RELA$K_R_IA_64_VMS_FIXFD = 1879048201; literal RELA$K_R_IA_64_VMS_ACC_LOAD = 1879048202; literal RELA$K_R_IA_64_VMS_ACC_ADD = 1879048203; literal RELA$K_R_IA_64_VMS_ACC_SUB = 1879048204; literal RELA$K_R_IA_64_VMS_ACC_MUL = 1879048205; literal RELA$K_R_IA_64_VMS_ACC_DIV = 1879048206; literal RELA$K_R_IA_64_VMS_ACC_AND = 1879048207; literal RELA$K_R_IA_64_VMS_ACC_IOR = 1879048208; literal RELA$K_R_IA_64_VMS_ACC_EOR = 1879048209; literal RELA$K_R_IA_64_VMS_ACC_ASH = 1879048210; literal RELA$K_R_IA_64_VMS_ACC_STO8 = 1879048212; literal RELA$K_R_IA_64_VMS_ACC_STO16LSB = 1879048213; literal RELA$K_R_IA_64_VMS_ACC_STO32LSB = 1879048214; literal RELA$K_R_IA_64_VMS_ACC_STO64LSB = 1879048215; ! Display Name Info (dni) - aka Demangler info - entries ! Internally some more structures and names are used. However, a ! developer should only use the types Elf64_vms_dni32 and ! Elf64_vms_dni64, both contain all necessary fields. In C notation ! all the necesary 32 bit fields are: ! dni32$l_dni_format ! dni32$l_fmt1_info[i].fmt1$l_dni_demangler ! dni32$l_fmt1_info[i].fmt1$l_dni_symbol ! dni32$l_fmt1_info[i].fmt1$l_dni_data ! dni32$l_fmt2_info[i].fmt2$l_dni_symbol ! dni32$l_fmt2_info[i].fmt2$l_dni_data ! dni32$l_fmt3.fmt3$l_dni_demangler ! dni32$l_fmt4.fmt4$l_dni_demangler ! dni32$l_fmt4_info[i].fmt4$l_dni_symbol ! dni32$l_fmt4_info[i].fmt4$l_dni_data literal DNI$_SUCCESS = 1; literal DNI$_NORMAL = 1; ! demangled string is in result buffer literal DNI$_ERROR = 2; ! error in demangling literal DNI$_ALTERNATE_SUCCESS = 9; literal DNI$_SAME = 9; ! demangled string identical to input string ! Data representations (0,4,8) literal DNI$_DATA_ULEB = 0; ! ULEBs (see DWARF spec) literal DNI$_DATA_WORD = 4; ! ELF64_Word, VMS Longword literal DNI$_DATA_XWORD = 8; ! ELF64_Xword, VMS Quadword ! DNI formats (1, ..., 4) literal DNI$_FMT1 = 1; literal DNI$_FMT2 = 2; literal DNI$_FMT3 = 3; literal DNI$_FMT4 = 4; ! ! 32 bit variants ! literal fmt1$S_Elf64_vms_dni32_fmt1 = 12; macro fmt1$l_dni_demangler = 0,0,32,1 %; macro fmt1$l_dni_symbol = 4,0,32,1 %; macro fmt1$l_dni_data = 8,0,32,1 %; literal fmt2$S_Elf64_vms_dni32_fmt2 = 8; macro fmt2$l_dni_symbol = 0,0,32,1 %; macro fmt2$l_dni_data = 4,0,32,1 %; literal fmt3$S_Elf64_vms_dni32_fmt3 = 4; macro fmt3$l_dni_demangler = 0,0,32,1 %; literal fmt4$S_Elf64_vms_dni32_fmt4 = 4; macro fmt4$l_dni_demangler = 0,0,32,1 %; literal fmt4$S_Elf64_vms_dni32_fmt4_sub = 8; macro fmt4$l_dni_symbol = 0,0,32,1 %; macro fmt4$l_dni_data = 4,0,32,1 %; literal dni32$S_Elf64_vms_dni32 = 16; macro dni32$l_dni_format = 0,0,32,1 %; macro dni32$r_entry32 = 4,0,0,0 %; literal dni32$s_entry32 = 12; macro dni32$r_format_l1 = 4,0,0,0 %; literal dni32$s_format_l1 = 12; macro dni32$l_fmt1_info = 4,0,0,0 %; literal dni32$s_fmt1_info = 12; macro dni32$r_format_l2 = 4,0,0,0 %; literal dni32$s_format_l2 = 8; macro dni32$l_fmt2_info = 4,0,0,0 %; literal dni32$s_fmt2_info = 8; macro dni32$r_format_l3 = 4,0,32,0 %; literal dni32$s_format_l3 = 4; macro dni32$l_fmt3 = 4,0,32,0 %; literal dni32$s_fmt3 = 4; macro dni32$r_format_l4 = 4,0,0,0 %; literal dni32$s_format_l4 = 12; macro dni32$l_fmt4 = 4,0,32,0 %; literal dni32$s_fmt4 = 4; macro dni32$l_fmt4_info = 8,0,0,0 %; literal dni32$s_fmt4_info = 8; ! ! 64 bit variants ! literal fmt1$S_Elf64_vms_dni64_fmt1 = 24; macro fmt1$q_dni_demangler = 0,0,0,1 %; literal fmt1$s_dni_demangler = 8; macro fmt1$q_dni_symbol = 8,0,0,1 %; literal fmt1$s_dni_symbol = 8; macro fmt1$q_dni_data = 16,0,0,1 %; literal fmt1$s_dni_data = 8; literal fmt2$S_Elf64_vms_dni64_fmt2 = 16; macro fmt2$q_dni_symbol = 0,0,0,1 %; literal fmt2$s_dni_symbol = 8; macro fmt2$q_dni_data = 8,0,0,1 %; literal fmt2$s_dni_data = 8; literal fmt3$S_Elf64_vms_dni64_fmt3 = 8; macro fmt3$q_dni_demangler = 0,0,0,1 %; literal fmt3$s_dni_demangler = 8; literal fmt4$S_Elf64_vms_dni64_fmt4 = 8; macro fmt4$q_dni_demangler = 0,0,0,1 %; literal fmt4$s_dni_demangler = 8; literal fmt4$S_Elf64_vms_dni64_fmt4_sub = 16; macro fmt4$q_dni_symbol = 0,0,0,1 %; literal fmt4$s_dni_symbol = 8; macro fmt4$q_dni_data = 8,0,0,1 %; literal fmt4$s_dni_data = 8; literal dni64$S_Elf64_vms_dni64 = 32; macro dni64$q_dni_format = 0,0,0,1 %; literal dni64$s_dni_format = 8; macro dni64$r_entry64 = 8,0,0,0 %; literal dni64$s_entry64 = 24; macro dni64$r_format_q1 = 8,0,0,0 %; literal dni64$s_format_q1 = 24; macro dni64$q_fmt1_info = 8,0,0,0 %; literal dni64$s_fmt1_info = 24; macro dni64$r_format_q2 = 8,0,0,0 %; literal dni64$s_format_q2 = 16; macro dni64$q_fmt2_info = 8,0,0,0 %; literal dni64$s_fmt2_info = 16; macro dni64$r_format_q3 = 8,0,0,0 %; literal dni64$s_format_q3 = 8; macro dni64$q_fmt3 = 8,0,0,0 %; literal dni64$s_fmt3 = 8; macro dni64$r_format_q4 = 8,0,0,0 %; literal dni64$s_format_q4 = 24; macro dni64$q_fmt4 = 8,0,0,0 %; literal dni64$s_fmt4 = 8; macro dni64$q_fmt4_info = 16,0,0,0 %; literal dni64$s_fmt4_info = 16; literal PHDR$SC_PF_X = 0; literal phdr$m_pf_x = %X'1'; literal PHDR$SC_PF_W = 1; literal phdr$m_pf_w = %X'2'; literal PHDR$SC_PF_R = 2; literal phdr$m_pf_r = %X'4'; literal phdr$m_pf_fill_3to19 = %X'FFFF8'; literal PHDR$SC_PF_VMS_NOWRIT_RELOC = 20; literal phdr$m_pf_vms_nowrit_reloc = %X'100000'; literal PHDR$SC_PF_VMS_INITIALCODE = 21; literal phdr$m_pf_vms_initialcode = %X'200000'; literal PHDR$SC_PF_VMS_RESIDENT = 22; literal phdr$m_pf_vms_resident = %X'400000'; literal PHDR$SC_PF_VMS_VECTOR = 23; literal phdr$m_pf_vms_vector = %X'800000'; literal PHDR$SC_PF_VMS_PROTECT = 24; literal phdr$m_pf_vms_protect = %X'1000000'; literal PHDR$SC_PF_VMS_NOWRIT_FIXUP = 25; literal phdr$m_pf_vms_nowrit_fixup = %X'2000000'; literal PHDR$SC_PF_VMS_SHORT = 26; literal phdr$m_pf_vms_short = %X'4000000'; literal PHDR$SC_PF_VMS_SHARED = 27; literal phdr$m_pf_vms_shared = %X'8000000'; literal PHDR$SC_PF_IA_64_NORECOV = 31; literal phdr$m_pf_ia_64_norecov = %X'80000000'; literal phdr$m_fill_1 = %X'FFFFF'; literal PHDR$SC_PF_MASKOS = 20; literal phdr$m_pf_maskos = %X'FF00000'; literal PHDR$SC_PF_MASKPROC = 28; literal phdr$m_pf_maskproc = %X'F0000000'; literal ELF64_PHDR$K_SIZE = 56; literal ELF64_PHDR$C_SIZE = 56; literal phdr$S_Elf64_Phdr = 56; macro phdr$l_p_type = 0,0,32,1 %; macro phdr$l_p_flags = 4,0,32,1 %; macro phdr$v_pf_x = 4,0,1,0 %; macro phdr$v_pf_w = 4,1,1,0 %; macro phdr$v_pf_r = 4,2,1,0 %; macro phdr$v_pf_fill_3to19 = 4,3,17,0 %; literal phdr$s_pf_fill_3to19 = 17; macro phdr$v_pf_vms_nowrit_reloc = 4,20,1,0 %; macro phdr$v_pf_vms_initialcode = 4,21,1,0 %; macro phdr$v_pf_vms_resident = 4,22,1,0 %; macro phdr$v_pf_vms_vector = 4,23,1,0 %; macro phdr$v_pf_vms_protect = 4,24,1,0 %; macro phdr$v_pf_vms_nowrit_fixup = 4,25,1,0 %; macro phdr$v_pf_vms_short = 4,26,1,0 %; macro phdr$v_pf_vms_shared = 4,27,1,0 %; macro phdr$v_pf_fill_24to30 = 4,28,3,0 %; literal phdr$s_pf_fill_24to30 = 3; macro phdr$v_pf_ia_64_norecov = 4,31,1,0 %; macro phdr$v_fill_1 = 4,0,20,0 %; literal phdr$s_fill_1 = 20; macro phdr$v_pf_maskos = 4,20,8,0 %; literal phdr$s_pf_maskos = 8; macro phdr$v_pf_maskproc = 4,28,4,0 %; literal phdr$s_pf_maskproc = 4; macro phdr$q_p_offset = 8,0,0,0 %; literal phdr$s_p_offset = 8; macro phdr$pq_p_vaddr = 16,0,0,0 %; literal phdr$s_p_vaddr = 8; macro phdr$pq_p_paddr = 24,0,0,0 %; literal phdr$s_p_paddr = 8; macro phdr$q_p_filesz = 32,0,0,1 %; literal phdr$s_p_filesz = 8; macro phdr$q_p_memsz = 40,0,0,1 %; literal phdr$s_p_memsz = 8; macro phdr$q_p_align = 48,0,0,1 %; literal phdr$s_p_align = 8; literal PHDR$K_PT_NULL = 0; literal PHDR$K_PT_LOAD = 1; literal PHDR$K_PT_DYNAMIC = 2; literal PHDR$K_PT_INTERP = 3; literal PHDR$K_PT_NOTE = 4; literal PHDR$K_PT_SHLIB = 5; literal PHDR$K_PT_PHDR = 6; literal PHDR$K_PT_TLS = 7; literal PHDR$K_PT_LOOS = 1610612736; literal PHDR$K_PT_HIOS = 1879048191; literal PHDR$K_PT_LOPROC = 1879048192; literal PHDR$K_PT_HIPROC = 2147483647; literal DYNSEG$SC_DT_VMS_LF_CALL_DEBUG = 0; literal dynseg$m_dt_vms_lf_call_debug = %X'1'; literal DYNSEG$SC_DT_VMS_LF_NOP0BUFS = 1; literal dynseg$m_dt_vms_lf_nop0bufs = %X'2'; literal DYNSEG$SC_DT_VMS_LF_P0IMAGE = 2; literal dynseg$m_dt_vms_lf_p0image = %X'4'; literal DYNSEG$SC_DT_VMS_LF_MKTHREADS = 3; literal dynseg$m_dt_vms_lf_mkthreads = %X'8'; literal DYNSEG$SC_DT_VMS_LF_UPCALLS = 4; literal dynseg$m_dt_vms_lf_upcalls = %X'10'; literal DYNSEG$SC_DT_VMS_LF_IMGSTA = 5; literal dynseg$m_dt_vms_lf_imgsta = %X'20'; literal DYNSEG$SC_DT_VMS_LF_INITIALIZE = 6; literal dynseg$m_dt_vms_lf_initialize = %X'40'; literal DYNSEG$SC_DT_VMS_LF_MAIN = 7; literal dynseg$m_dt_vms_lf_main = %X'80'; literal DYNSEG$SC_DT_VMS_LF_UNUSED = 8; literal dynseg$m_dt_vms_lf_unused = %X'100'; literal DYNSEG$SC_DT_VMS_LF_EXE_INIT = 9; literal dynseg$m_dt_vms_lf_exe_init = %X'200'; literal DYNSEG$SC_DT_VMS_LF_TBK_IN_IMG = 10; literal dynseg$m_dt_vms_lf_tbk_in_img = %X'400'; literal DYNSEG$SC_DT_VMS_LF_DBG_IN_IMG = 11; literal dynseg$m_dt_vms_lf_dbg_in_img = %X'800'; literal DYNSEG$SC_DT_VMS_LF_TBK_IN_DSF = 12; literal dynseg$m_dt_vms_lf_tbk_in_dsf = %X'1000'; literal DYNSEG$SC_DT_VMS_LF_DBG_IN_DSF = 13; literal dynseg$m_dt_vms_lf_dbg_in_dsf = %X'2000'; literal DYNSEG$SC_DT_VMS_LF_SIGNATURES = 14; literal dynseg$m_dt_vms_lf_signatures = %X'4000'; literal DYNSEG$SC_DT_VMS_LF_REL_SEG_OFF = 15; literal dynseg$m_dt_vms_lf_rel_seg_off = %X'8000'; literal DYNSEG$SC_DT_VMS_LF_SSI_INCAP = 16; literal dynseg$m_dt_vms_lf_ssi_incap = %X'10000'; literal DYNSEG$K_SIZE = 16; literal DYNSEG$C_SIZE = 16; literal dynseg$S_Elf64_Dyn = 16; macro dynseg$q_d_tag = 0,0,0,0 %; literal dynseg$s_d_tag = 8; macro dynseg$q_d_val = 8,0,0,1 %; literal dynseg$s_d_val = 8; macro dynseg$pq_d_ptr = 8,0,0,0 %; literal dynseg$s_d_ptr = 8; macro dynseg$v_dt_vms_lf_call_debug = 8,0,1,0 %; macro dynseg$v_dt_vms_lf_nop0bufs = 8,1,1,0 %; macro dynseg$v_dt_vms_lf_p0image = 8,2,1,0 %; macro dynseg$v_dt_vms_lf_mkthreads = 8,3,1,0 %; macro dynseg$v_dt_vms_lf_upcalls = 8,4,1,0 %; macro dynseg$v_dt_vms_lf_imgsta = 8,5,1,0 %; macro dynseg$v_dt_vms_lf_initialize = 8,6,1,0 %; macro dynseg$v_dt_vms_lf_main = 8,7,1,0 %; macro dynseg$v_dt_vms_lf_exe_init = 8,9,1,0 %; macro dynseg$v_dt_vms_lf_tbk_in_img = 8,10,1,0 %; macro dynseg$v_dt_vms_lf_dbg_in_img = 8,11,1,0 %; macro dynseg$v_dt_vms_lf_tbk_in_dsf = 8,12,1,0 %; macro dynseg$v_dt_vms_lf_dbg_in_dsf = 8,13,1,0 %; macro dynseg$v_dt_vms_lf_signatures = 8,14,1,0 %; macro dynseg$v_dt_vms_lf_rel_seg_off = 8,15,1,0 %; macro dynseg$v_dt_vms_lf_ssi_incap = 8,16,1,0 %; literal DYNSEG$K_DT_NULL = 0; literal DYNSEG$K_DT_NEEDED = 1; literal DYNSEG$K_DT_STRSZ = 10; literal DYNSEG$K_DT_IA_64_PLT_RESERVE = 1879048192; literal DYNSEG$K_DT_LOOS = 1610612749; literal DYNSEG$K_DT_VMS_SUBTYPE = 1610612749; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_1 = 1610612750; literal DYNSEG$K_DT_VMS_IMGIOCNT = 1610612751; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_3 = 1610612752; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_4 = 1610612753; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_5 = 1610612754; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_6 = 1610612755; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_7 = 1610612756; literal DYNSEG$K_DT_VMS_LNKFLAGS = 1610612757; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_9 = 1610612758; literal DYNSEG$K_DT_VMS_VIR_MEM_BLK_SIZ = 1610612759; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_11 = 1610612760; literal DYNSEG$K_DT_VMS_IDENT = 1610612761; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_13 = 1610612762; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_14 = 1610612763; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_15 = 1610612764; literal DYNSEG$K_DT_VMS_NEEDED_IDENT = 1610612765; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_17 = 1610612766; literal DYNSEG$K_DT_VMS_IMG_RELA_CNT = 1610612767; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_19 = 1610612768; literal DYNSEG$K_DT_VMS_SEG_RELA_CNT = 1610612769; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_21 = 1610612770; literal DYNSEG$K_DT_VMS_FIXUP_RELA_CNT = 1610612771; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_23 = 1610612772; literal DYNSEG$K_DT_VMS_FIXUP_NEEDED = 1610612773; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_25 = 1610612774; literal DYNSEG$K_DT_VMS_SYMVEC_CNT = 1610612775; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_27 = 1610612776; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_28 = 1610612777; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_29 = 1610612778; literal DYNSEG$K_DT_VMS_XLATED = 1610612779; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_31 = 1610612780; literal DYNSEG$K_DT_VMS_STACKSIZE = 1610612781; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_33 = 1610612782; literal DYNSEG$K_DT_VMS_UNWINDSZ = 1610612783; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_35 = 1610612784; literal DYNSEG$K_DT_VMS_UNWIND_CODSEG = 1610612785; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_37 = 1610612786; literal DYNSEG$K_DT_VMS_UNWIND_INFOSEG = 1610612787; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_39 = 1610612788; literal DYNSEG$K_DT_VMS_LINKTIME = 1610612789; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_41 = 1610612790; literal DYNSEG$K_DT_VMS_SEG_NO = 1610612791; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_43 = 1610612792; literal DYNSEG$K_DT_VMS_SYMVEC_OFFSET = 1610612793; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_45 = 1610612794; literal DYNSEG$K_DT_VMS_SYMVEC_SEG = 1610612795; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_47 = 1610612796; literal DYNSEG$K_DT_VMS_UNWIND_OFFSET = 1610612797; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_49 = 1610612798; literal DYNSEG$K_DT_VMS_UNWIND_SEG = 1610612799; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_51 = 1610612800; literal DYNSEG$K_DT_VMS_STRTAB_OFFSET = 1610612801; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_53 = 1610612802; literal DYNSEG$K_DT_VMS_SYSVER_OFFSET = 1610612803; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_55 = 1610612804; literal DYNSEG$K_DT_VMS_IMG_RELA_OFF = 1610612805; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_57 = 1610612806; literal DYNSEG$K_DT_VMS_SEG_RELA_OFF = 1610612807; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_59 = 1610612808; literal DYNSEG$K_DT_VMS_FIXUP_RELA_OFF = 1610612809; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_61 = 1610612810; literal DYNSEG$K_DT_VMS_PLTGOT_OFFSET = 1610612811; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_63 = 1610612812; literal DYNSEG$K_DT_VMS_PLTGOT_SEG = 1610612813; literal DYNSEG$K_DT_VMS_DTLOOSPLUS_65 = 1610612814; literal DYNSEG$K_DT_VMS_FPMODE = 1610612815; literal DYNSEG$K_DT_VMS_SUBTYPE_CLI = 1; literal IDENTS_vms_ident = 8; macro IDENTl_minor_id = 0,0,32,0 %; macro IDENTw_major_id = 4,0,16,0 %; macro IDENTb_match = 6,0,8,0 %; macro IDENTb_unused = 7,0,8,0 %; literal TBK$K_RECTYPE_HDR32 = 1; literal TBK$K_RECTYPE_RTN32 = 2; literal TBK$K_RECTYPE_FIL = 3; literal TBK$K_RECTYPE_LN1 = 4; literal TBK$K_RECTYPE_LN2 = 5; literal TBK$K_RECTYPE_LN4 = 6; literal TBK$K_RECTYPE_PC1 = 7; literal TBK$K_RECTYPE_PC2 = 8; literal TBK$K_RECTYPE_PC4 = 9; literal TBK$K_RECTYPE_VERSION = 10; literal TBK$K_RECTYPE_HDR64 = 11; literal TBK$K_RECTYPE_RTN64 = 12; literal TBK$K_RECTYPE_PC8 = 13; literal sysver$S_system_version_array = 132; macro sysver$v_subsystem_mask = 0,0,32,0 %; literal sysver$s_subsystem_mask = 32; ! Bit mask of valid array entries macro sysver$r_system_ver = 4,0,32,0 %; literal sysver$s_system_ver = 4; ! Version of sys$base_image macro sysver$r_subsys_ver = 8,0,0,0 %; literal sysver$s_subsys_ver = 124; ! Version of various subsystems literal SYSVER$K_LENGTH = 33; literal SYSVER$C_LENGTH = 33; literal IMF$K_SIZE = 32; literal IMF$C_SIZE = 32; literal imf$S_image_fixup = 32; macro imf$q_fixup_offset = 0,0,0,1 %; literal imf$s_fixup_offset = 8; macro imf$l_type = 8,0,32,1 %; macro imf$l_fixup_seg = 12,0,32,1 %; macro imf$q_addend = 16,0,0,0 %; literal imf$s_addend = 8; macro imf$l_symvec_index = 24,0,32,1 %; macro imf$l_data_type = 28,0,32,1 %; literal IMR$K_SIZE = 40; literal IMR$C_SIZE = 40; literal imr$S_image_rela = 40; macro imr$q_rela_offset = 0,0,0,1 %; literal imr$s_rela_offset = 8; macro imr$l_type = 8,0,32,1 %; macro imr$l_rela_seg = 12,0,32,1 %; macro imr$q_addend = 16,0,0,0 %; literal imr$s_addend = 8; macro imr$q_sym_offset = 24,0,0,1 %; literal imr$s_sym_offset = 8; macro imr$l_sym_seg = 32,0,32,1 %; macro imr$l_fill_1 = 36,0,32,1 %; literal SGR$K_SIZE = 32; literal SGR$C_SIZE = 32; literal sgr$S_segment_rela = 32; macro sgr$q_rela_offset = 0,0,0,1 %; literal sgr$s_rela_offset = 8; macro sgr$l_type = 8,0,32,1 %; macro sgr$l_rela_seg = 12,0,32,1 %; macro sgr$q_addend = 16,0,0,0 %; literal sgr$s_addend = 8; macro sgr$q_gp_offset = 24,0,0,0 %; literal sgr$s_gp_offset = 8; macro sgr$l_symvec_index = 24,0,32,1 %; macro sgr$l_needed_index = 28,0,32,1 %; literal VMS_FIXUP$K_SIZE = 24; literal VMS_FIXUP$C_SIZE = 24; literal vms_fixup$S_vms_fixup = 24; macro vms_fixup$pq_offset = 0,0,0,0 %; literal vms_fixup$s_offset = 8; macro vms_fixup$q_addend = 8,0,0,0 %; literal vms_fixup$s_addend = 8; macro vms_fixup$l_symindx = 16,0,32,1 %; macro vms_fixup$l_type = 20,0,32,1 %; literal LNKG$K_SIZE = 8; literal LNKG$C_SIZE = 8; literal lnkg$S_vms_linkages_header = 8; macro lnkg$l_type = 0,0,32,1 %; macro lnkg$l_decl_count = 4,0,32,1 %; literal LNKG_ENTRY1$K_SIZE = 12; literal LNKG_ENTRY1$C_SIZE = 12; literal lnkg_entry1$S_vms_lnkg_entry1 = 12; macro lnkg_entry1$l_symidx = 0,0,32,1 %; macro lnkg_entry1$ps_desc = 4,0,0,0 %; literal lnkg_entry1$s_desc = 8; macro lnkg_entry1$q_vms_linkage_qw = 4,0,0,1 %; literal lnkg_entry1$s_vms_linkage_qw = 8; literal VMSLNKG$K_VMS_LINKAGE_TYPE1 = 1; literal VMSLNKG$K_REG_POL_VOL = 0; literal VMSLNKG$K_REG_POL_SCR = 1; literal VMSLNKG$K_REG_POL_OUT = 2; literal VMSLNKG$K_REG_POL_PRE = 3; literal fd$S_func_descr = 16; macro fd$pq_entryVA = 0,0,0,0 %; literal fd$s_entryVA = 8; macro fd$pq_GPtr = 8,0,0,0 %; literal fd$S_GPtr = 8; literal UNWIND$K_DESC_VERSION = 1; literal unwind$m_unw_length = %X'FFFFFFFF'; literal UNWIND$SC_UNW_FLAG_EHANDLER = 32; literal unwind$m_unw_flag_ehandler = %X'100000000'; literal UNWIND$SC_UNW_FLAG_UHANDLER = 33; literal unwind$m_unw_flag_uhandler = %X'200000000'; literal unwind$m_unw_flag_rsvd_43_34 = %X'FFC00000000'; literal UNWIND$SC_UNW_FLAG_VMS_OSDA = 44; literal unwind$m_unw_flag_vms_osda = %X'100000000000'; literal UNWIND$SC_UNW_FLAG_VMS_HANDLER = 45; literal unwind$m_unw_flag_vms_handler = %X'200000000000'; literal UNWIND$SC_UNW_FLAG_MASK = 32; literal unwind$m_unw_flag_mask = %X'FFFF00000000'; literal unwind$m_osmask_unused = %X'FFFFFFFFFFF'; literal UNWIND$SC_UNW_FLAG_OSMASK = 44; literal unwind$m_unw_flag_osmask = %X'F00000000000'; literal unwind$m_ivmsmode_unused = %X'FFFFFFFFFFF'; literal UNWIND$SC_UNW_IVMS_MODE = 44; literal unwind$m_unw_ivms_mode = %X'300000000000'; literal unwind$m_version_unused = %X'FFFFFFFFFFFF'; literal UNWIND$SC_UNW_VERSION = 48; literal unwind$m_unw_version = %X'FFFF000000000000'; literal UNWIND$K_DESC_SIZE = 8; literal UNWIND$C_DESC_SIZE = 8; literal unwind$S_exceptn_unwind = 8; macro unwind$l_unw_length = 0,0,32,1 %; macro unwind$v_unw_length = 0,0,32,0 %; literal unwind$s_unw_length = 32; macro unwind$w_unw_flags = 4,0,16,0 %; macro unwind$w_unw_version = 6,0,16,0 %; macro unwind$v_unused_31_0 = 0,0,32,0 %; literal unwind$s_unused_31_0 = 32; macro unwind$v_unw_flag_ehandler = 4,0,1,0 %; macro unwind$v_unw_flag_uhandler = 4,1,1,0 %; macro unwind$v_unw_flag_vms_osda = 4,12,1,0 %; macro unwind$v_unw_flag_vms_handler = 4,13,1,0 %; macro unwind$v_unw_flag_mask = 4,0,16,0 %; literal unwind$s_unw_flag_mask = 16; macro unwind$v_unw_flag_osmask = 4,12,4,0 %; literal unwind$s_unw_flag_osmask = 4; macro unwind$v_unw_ivms_mode = 4,12,2,0 %; literal unwind$s_unw_ivms_mode = 2; macro unwind$v_unw_version = 4,16,16,0 %; literal unwind$s_unw_version = 16; literal UNWIND$K_FLAGS_UNUSED0 = 0; literal UNWIND$K_FLAGS_UNUSED1 = 1; literal UNWIND$K_FLAGS_SEMANTICS = 2; literal UNWIND$K_FLAGS_SEMANTICS_DATA = 3; literal UNWIND$K_ABI_UNIX = 0; literal UNWIND$K_ABI_HPUX = 1; literal UNWIND$K_ABI_WNT = 2; literal UNWIND$K_ABI_VMS = 3; literal UNWIND$K_HDR_PATTERN = 0; literal UNWIND$M_HDR_MASK = 128; literal UNWIND$K_R1_PATTERN = 0; literal UNWIND$M_R1_MASK = 192; literal UNWIND$K_R2_PATTERN = 64; literal UNWIND$M_R2_MASK = 248; literal UNWIND$K_R3_PATTERN = 96; literal UNWIND$M_R3_MASK = 252; literal UNWIND$K_P1_PATTERN = 128; literal UNWIND$M_P1_MASK = 224; literal UNWIND$K_P2_PATTERN = 160; literal UNWIND$M_P2_MASK = 240; literal UNWIND$K_P3_PATTERN = 176; literal UNWIND$M_P3_MASK = 248; literal UNWIND$K_P4_PATTERN = 184; literal UNWIND$M_P4_MASK = 255; literal UNWIND$K_P5_PATTERN = 185; literal UNWIND$M_P5_MASK = 255; literal UNWIND$K_P6_PATTERN = 192; literal UNWIND$M_P6_MASK = 224; literal UNWIND$K_P7_PATTERN = 224; literal UNWIND$M_P7_MASK = 240; literal UNWIND$K_P8_PATTERN = 240; literal UNWIND$M_P8_MASK = 255; literal UNWIND$K_P9_PATTERN = 241; literal UNWIND$M_P9_MASK = 255; literal UNWIND$K_P10_PATTERN = 255; literal UNWIND$M_P10_MASK = 255; literal UNWIND$K_B1_PATTERN = 128; literal UNWIND$M_B1_MASK = 192; literal UNWIND$K_B2_PATTERN = 192; literal UNWIND$M_B2_MASK = 224; literal UNWIND$K_B3_PATTERN = 224; literal UNWIND$M_B3_MASK = 255; literal UNWIND$K_B4_PATTERN = 240; literal UNWIND$M_B4_MASK = 247; literal UNWIND$K_X1_PATTERN = 249; literal UNWIND$M_X1_MASK = 255; literal UNWIND$K_X2_PATTERN = 250; literal UNWIND$M_X2_MASK = 255; literal UNWIND$K_X3_PATTERN = 251; literal UNWIND$M_X3_MASK = 255; literal UNWIND$K_X4_PATTERN = 252; literal UNWIND$M_X4_MASK = 255; literal UNWIND$K_P10_ABI_UNIX = 0; literal UNWIND$K_P10_ABI_HPUX = 1; literal UNWIND$K_P10_ABI_WNT = 2; literal UNWIND$K_P10_ABI_VMS = 3; !*** MODULE $ERADEF *** ! ! ! Define erase type codes. The codes LODUMMY and HIDUMMY are ! used as placeholders, to make the definition of the upper and ! lower bound erase type symbols automatic. New erase type codes ! should be added at the end of the list, but before HIDUMMY. ! ! literal ERA$K_LODUMMY = 0; ! literal ERA$K_MEMORY = 1; ! Erase main memory literal ERA$K_DISK = 2; ! Erase disk mass storage literal ERA$K_TAPE = 3; ! Erase magnetic tape mass storage literal ERA$K_HIDUMMY = 4; ! literal ERA$K_MINTYPE = 1; ! Lower bound of erase type codes literal ERA$K_MAXTYPE = 3; ! Upper bound of erase type codes !*** MODULE ESFDEF *** ! ! Enumerate Item Codes for the various types of Environmental Sensor FRUs. ! literal ESF$K_TEMP = 4096; literal ESF$K_POWER = 4097; literal ESF$K_FAN = 4098; ! ! The sys$get_env_sensors system service will populate the user's buffer ! with an array of the following structure. The dimension of the array is ! determined by the number of sensors corresponding to the item code by a ! run-time call to sys$get_env_sensors() with a buffer address of zero or ! buffer size of zero. sys$get_env_sensors() will pass the dimensions back ! to the caller so he can allocate buffers to contain the arrays for ! subsequent calls to sys$get_env_sensors() with valid buffer pointers and ! sizes. ! See [SYS]SYS_GET_ENV_SENSORS.C ! literal esf$m_valid_status = %X'1'; literal esf$m_valid_value = %X'2'; literal esf$m_feat_reserved = %X'FC'; literal esf$S_esfitem = 32; macro esf$b_type = 0,0,8,0 %; ! CFG_NODE config type field macro esf$b_subtype = 1,0,8,0 %; ! CFG_NODE config subtype field macro esf$B_VALUE = 2,0,8,0 %; ! Value byte macro esf$b_status = 3,0,8,0 %; ! Status byte macro esf$r_features_overlay = 4,0,8,0 %; literal esf$s_features_overlay = 1; macro esf$b_features = 4,0,8,0 %; ! Features of the Sensor FRU macro esf$v_valid_status = 4,0,1,0 %; macro esf$v_valid_value = 4,1,1,0 %; macro esf$v_feat_reserved = 4,2,6,0 %; literal esf$s_feat_reserved = 6; ! ! Pad out to next quad word ! macro esf$b_reserved_1 = 5,0,24,0 %; literal esf$s_reserved_1 = 3; ! ! fru_node_id contains FRU Descriptor Node ID information to help ! identify the location of the associated sensor. See "Alpha Systems ! Configuration Tree Implementation Specification" Table 1-79 on Page 50. ! The byte fields in this 8-byte structure are declared in CFGDEF.H as ! struct cfg$_cfg_node_id_fru_desc in the CFG_NODE structure. ! macro esf$q_fru_node_id = 8,0,0,0 %; literal esf$s_fru_node_id = 8; ! ! fru_flags contains the Node Flags for the FRU. See "Alpha Configuration ! Tree Specification" Release T6.0-0023 page 7-45. ! See also cfg$iq_node_flags in CFGDEF.H. ! macro esf$q_fru_flags = 16,0,0,0 %; literal esf$s_fru_flags = 8; ! ! console_id is a quadword that contains the offset and bitfield elements ! to be used to access the low-level hardware status or value information ! macro esf$r_cid_overlay = 24,0,0,0 %; literal esf$s_cid_overlay = 8; macro esf$q_console_id = 24,0,0,0 %; literal esf$s_console_id = 8; ! Whole Console ID macro esf$l_offset = 24,0,32,0 %; ! Offset part of Console ID macro esf$L_BITFIELD = 28,0,32,0 %; ! Bitfield part of Console ID !*** MODULE $EVENTDEF *** ! EVSB - Event Status Block ! The Event Status Block receives $EVENT service VMS and NT completion status literal EVT$S_EVSB = 8; macro EVT$L_VMS_STATUS = 0,0,32,0 %; ! VMS completion status macro EVT$L_NT_STATUS = 4,0,32,0 %; ! NT completion status literal EVSB$K_LENGTH = 8; ! Length of EVSB literal EVSB$C_LENGTH = 8; ! Length of EVSB ! ! +-------------------------------------------------------------------+ ! | function codes ! +-------------------------------------------------------------------+ ! literal EVT$FC_REGISTER_EVENT_SOURCE = 1; ! register event source literal EVT$FC_REPORT_EVENT = 2; ! report event literal EVT$FC_DEREGISTER_EVENT_SOURCE = 3; ! deregister event source literal EVT$FC_FUNCTION_CODE_TOO_BIG = 4; ! Always keep as last function code ! ! +-------------------------------------------------------------------+ ! | item codes ! +-------------------------------------------------------------------+ ! literal EVT$_SERVER_NAME = 1; ! PW server name - currently ignored literal EVT$_SOURCE = 2; ! Event source id literal EVT$_HANDLE = 3; ! handle of registered event channel literal EVT$_EVENT_TYPE = 4; ! info, warning or error literal EVT$_EVENT_CATEGORY = 5; ! Event category literal EVT$_EVENT_ID = 6; ! Event ID literal EVT$_USER_SID = 7; ! NT security ID literal EVT$_NUMSTRINGS = 8; ! # counted strings in STRING_ARRAY literal EVT$_DATASIZE = 9; ! # bytes in RAW_DATA literal EVT$_STRING_ARRAY = 10; ! event log string data literal EVT$_RAW_DATA = 11; ! event log non-string data literal EVT$_ITEM_CODE_TOO_BIG = 12; ! Always keep as last item code ! ! max length of SERVER_NAME string is 8 wchars, 32 bytes (4 * 8) ! literal EVT$_MAX_SERVER_NAME_LEN = 32; ! ! Values for EVT$_EVENT_TYPE. NOTE! These values must be kept in sync with ! the corresponding values in Microsoft's winnt.h ! literal EVT$_SUCCESS = 0; ! MS EVENTLOG_SUCCESS literal EVT$_ERROR = 1; ! MS EVENTLOG_ERROR_TYPE literal EVT$_WARNING = 2; ! MS EVENTLOG_WARNING_TYPE literal EVT$_INFO = 4; ! MS EVENTLOG_INFORMATION_TYPE literal EVT$_AUDIT_SUCCESS = 8; ! MS EVENTLOG_AUDIT_SUCCESS literal EVT$_AUDIT_FAILURE = 16; ! MS EVENTLOG_AUDIT_FAILURE !*** MODULE $SDVDEF *** ! + ! ! Switch, enable/disable device path information ! ! **** NOTE **** ! ! New items must always be added at the END of the list so that ! users will not have to rebuild. ! ! - literal SDV$_MP_SWITCH_PATH = 1; ! Switch device path literal SDV$_MP_ENABLE_PATH = 2; ! Enable device path literal SDV$_MP_DISABLE_PATH = 3; ! Disable device path ! ! *** ADD NEW ITEM-CODES IMMEDIATELY BEFORE THIS COMMENT ***** ! !*** MODULE $FDLDEF *** ! + ! Define the version level of the FDL file structure ! - literal FDL$C_VERSION = 2; literal FDL$K_VERSION = 2; ! + ! FDL CALL INTERFACE CONTROL FLAGS ! - literal FDL$M_SIGNAL = %X'1'; literal FDL$M_FDL_STRING = %X'2'; literal FDL$M_DEFAULT_STRING = %X'4'; literal FDL$M_FULL_OUTPUT = %X'8'; literal FDL$M_$CALLBACK = %X'10'; literal FDL$M_LONG_NAMES = %X'20'; literal FDL$S_FDLDEF = 1; macro FDL$V_SIGNAL = 0,0,1,0 %; ! SIGNAL ERRORS, DON'T RETURN macro FDL$V_FDL_STRING = 0,1,1,0 %; ! MAIN FDL SPEC IS A CHAR STRING macro FDL$V_DEFAULT_STRING = 0,2,1,0 %; ! DEFAULT FDL SPEC IS A CHAR STRING macro FDL$V_FULL_OUTPUT = 0,3,1,0 %; ! PRODUCE A 'COMPLETE' FDL SPEC macro FDL$V_$CALLBACK = 0,4,1,0 %; ! USED BY EDF ON INPUT (DEC ONLY) macro FDL$V_LONG_NAMES = 0,5,1,0 %; ! Allocate and use NAML for FDL$PARSE !*** MODULE $FDSCDEF *** ! ! Function descriptor offset definitions for the IA64 VMS calling ! standard. This definition includes the offsets and fields for ! local, official, translated/native, and bound function descriptors. ! ! Function descriptor kind quadwords in FD ! ! Local FD w/o translated image support 2 ! Local FD with translated image support 4 ! Official FD w/o translated image support 2 or 3 (see note) ! Official FD with translated image support 3 ! Bound FD 6 ! ! Note: the official FD w/o translated image support could be 2 ! quadwords if the linker knows it's not a universal symbol and ! that no module exports its address. Until there's a way for ! compilers to notify the linker of this, all such FDs are 3 ! quadwords in length. ! literal FDSC$K_BOUND_SIZE = 48; ! Size of bound procedure descriptor literal FDSC$S_FDSCDEF = 48; macro FDSC$Q_ENTRY = 0,0,0,1 %; literal FDSC$S_ENTRY = 8; ! Simple FD: Entry code address macro FDSC$L_ENTRY = 0,0,32,1 %; macro FDSC$Q_OTS_ENTRY = 0,0,0,1 %; literal FDSC$S_OTS_ENTRY = 8; ! Bound FD: Entry code address of OTS$JUMP_TO_BPV macro FDSC$L_OTS_ENTRY = 0,0,32,1 %; macro FDSC$Q_GP = 8,0,0,1 %; literal FDSC$S_GP = 8; ! Simple FD: Global pointer macro FDSC$L_GP = 8,0,32,1 %; macro FDSC$Q_OTS_PSEUDO_GP = 8,0,0,1 %; literal FDSC$S_OTS_PSEUDO_GP = 8; ! Bound FD: Global pointer for OTS$JUMP_TO_BPV (ie. address of this FD) macro FDSC$L_OTS_PSEUDO_GP = 8,0,32,1 %; macro FDSC$Q_SIGNATURE = 16,0,0,0 %; literal FDSC$S_SIGNATURE = 8; ! Signature information field macro FDSC$L_SIGNATURE_L = 16,0,32,0 %; macro FDSC$L_SIGNATURE_H = 20,0,32,0 %; macro FDSC$Q_TARGET_ENTRY = 24,0,0,1 %; literal FDSC$S_TARGET_ENTRY = 8; ! PD address of translated routine or entry code address of bound procedure macro FDSC$L_TARGET_ENTRY = 24,0,32,1 %; macro FDSC$Q_TARGET_GP = 32,0,0,1 %; literal FDSC$S_TARGET_GP = 8; ! Global pointer for bound procedure macro FDSC$L_TARGET_GP = 32,0,32,1 %; macro FDSC$Q_TARGET_ENVIR = 40,0,0,1 %; literal FDSC$S_TARGET_ENVIR = 8; ! Environment value for bound procedure (uplevel-addressing pointer) macro FDSC$L_TARGET_ENVIR = 40,0,32,1 %; !*** MODULE $FIBDEF *** ! ---- ! ! LAYOUT OF THE FILE IDENTIFICATION BLOCK (FIB) ! ! **** ! ! NOTE: If the size of the FIB is changed the following must be changed ! to reflect the change: ! ! In Module: [RMS.SRC]RMSFWADEF.SDL ! ! Field: FWA$T_FIBBUF ! ! Constant: FWA$C_FIBLEN ! ! Both the field and constant must be GEQ to the size of ! the FIB, i.e. FIB$C_LENGTH. FIB length is currently 96. ! ! **** ! literal FIB$M_NOWRITE = %X'1'; literal FIB$M_DLOCK = %X'2'; literal FIB$M_BLK_LOCK = %X'4'; literal FIB$M_FASTRDSQNOS = %X'8'; literal FIB$M_SPOOL = %X'10'; literal FIB$M_WRITECK = %X'20'; literal FIB$M_SEQONLY = %X'40'; literal FIB$M_SEQNO = %X'80'; literal FIB$M_WRITE = %X'100'; literal FIB$M_READCK = %X'200'; literal FIB$M_NOREAD = %X'400'; literal FIB$M_NOTRUNC = %X'800'; literal FIB$M_CONTROL = %X'1000'; literal FIB$M_NO_READ_DATA = %X'2000'; literal FIB$M_SSIO = %X'4000'; literal FIB$M_EXECUTE = %X'10000'; literal FIB$M_PRSRV_ATR = %X'20000'; literal FIB$M_RMSLOCK = %X'40000'; literal FIB$M_WRITETHRU = %X'80000'; literal FIB$M_NOLOCK = %X'100000'; literal FIB$M_NORECORD = %X'200000'; literal FIB$M_NOVERIFY = %X'400000'; literal FIB$M_CHANGE_VOL = %X'800000'; literal FIB$M_REWIND = %X'8'; literal FIB$M_CURPOS = %X'10'; literal FIB$M_UPDATE = %X'40'; literal FIB$K_ACCDATA = 10; ! ABOVE DATA NECESSARY FOR ACCESS literal FIB$C_ACCDATA = 10; ! ABOVE DATA NECESSARY FOR ACCESS literal FIB$K_DIRDATA = 22; ! ABOVE DATA NECESSARY FOR DIRECTORY OPS literal FIB$C_DIRDATA = 22; ! ABOVE DATA NECESSARY FOR DIRECTORY OPS literal FIB$M_NAMES_8BIT = %X'1'; literal FIB$M_NAMES_16BIT = %X'2'; literal FIB$M_PERCENT_LITERAL = %X'4'; literal FIB$M_ALLVER = %X'8'; literal FIB$M_ALLTYP = %X'10'; literal FIB$M_ALLNAM = %X'20'; literal FIB$M_CASE_SENSITIVE = %X'40'; literal FIB$M_SEARCH = %X'80'; literal FIB$M_WILD = %X'100'; literal FIB$M_NEWVER = %X'200'; literal FIB$M_SUPERSEDE = %X'400'; literal FIB$M_FINDFID = %X'800'; literal FIB$M_FINDDIR = %X'1000'; literal FIB$M_CASE_VARIANT = %X'2000'; literal FIB$M_LOWVER = %X'4000'; literal FIB$M_HIGHVER = %X'8000'; literal FIB$M_ALCON = %X'1'; literal FIB$M_ALCONB = %X'2'; literal FIB$M_FILCON = %X'4'; literal FIB$M_ALDEF = %X'8'; literal FIB$M_ALLOCATR = %X'10'; literal FIB$M_EXTEND = %X'80'; literal FIB$M_TRUNC = %X'100'; literal FIB$M_NOHDREXT = %X'200'; literal FIB$M_MARKBAD = %X'400'; literal FIB$M_NOPLACE = %X'4000'; literal FIB$M_NOCHARGE = %X'8000'; literal FIB$K_EXTDATA = 32; ! ABOVE NECESSARY FOR BASIC FILE EXTENSION literal FIB$C_EXTDATA = 32; ! ABOVE NECESSARY FOR BASIC FILE EXTENSION literal FIB$M_EXACT = %X'1'; literal FIB$M_ONCYL = %X'2'; literal FIB$C_CYL = 1; ! CYLINDER ADDRESS SPECIFIED literal FIB$C_LBN = 2; ! LBN SPECIFIED literal FIB$C_VBN = 3; ! PROXIMATE VBN SPECIFIED literal FIB$C_RFI = 4; ! RELATED FILE ID SPECIFIED literal FIB$K_ALCDATA = 44; ! ABOVE DATA NECESSARY FOR PLACEMENT literal FIB$C_ALCDATA = 44; ! ABOVE DATA NECESSARY FOR PLACEMENT literal FIB$M_ALT_REQ = %X'1'; literal FIB$M_ALT_GRANTED = %X'2'; literal FIB$M_DIRACL = %X'4'; literal FIB$M_PROPAGATE = %X'8'; literal FIB$M_NOCOPYACL = %X'10'; literal FIB$M_NOCOPYOWNER = %X'20'; literal FIB$M_NOCOPYPROT = %X'40'; literal FIB$M_EXCLPREVIOUS = %X'80'; literal FIB$M_ALIAS_ENTRY = %X'100'; literal FIB$M_WILDFID_FLAG = %X'200'; literal FIB$M_DID_FILESPEC = %X'400'; literal FIB$M_IS_SPECIAL = %X'800'; literal FIB$M_CHECK_SPECIAL = %X'1000'; literal FIB$K_MOVEFILE = 72; ! end of FIB required by MOVEFILE literal FIB$C_MOVEFILE = 72; ! end of FIB required by MOVEFILE literal FIB$M_FILE_ATTRIBUTES = %X'F'; literal FIB$M_FILE_CONTENTS = %X'F0'; literal FIB$C_DEFAULT = 0; ! Use default caching policy literal FIB$C_WRITETHROUGH = 1; ! Use writethrough caching literal FIB$C_WRITEBEHIND = 2; ! Use writebehind caching literal FIB$C_NOCACHING = 3; ! Do not cache file literal FIB$M_FLUSH_ON_CLOSE = %X'F00'; literal FIB$C_FLUSH = 1; ! Flush file from cache when file closed literal FIB$C_NOFLUSH = 2; ! Retain file in cache when file closed literal FIB$M_CACHING_OPTIONS_MBZ = %X'FFFFF000'; literal FIB$C_ODS2 = 0; ! Name is ODS-2 legal ASCII encoded literal FIB$C_ISL1 = 1; ! Name is 8-bit (ISO Latin 1) literal FIB$C_ISO_LATIN = 1; ! Synonym for ISL1 ! NOTE - Name format type 2 reserved (was UTF8) literal FIB$C_UCS2 = 3; ! Name is UCS-2 encoded (both) literal FIB$C_NAMETYPE_LEN = 96; ! Length of FIB including NAMETYPE fields literal FIB$K_LENGTH = 96; literal FIB$C_LENGTH = 96; literal FIB$K_F64LEN = 96; literal FIB$C_F64LEN = 96; literal FIB$S_FIBDEF = 96; macro FIB$L_ACCTL = 0,0,32,0 %; ! ACCESS CONTROL BITS macro FIB$V_NOWRITE = 0,0,1,0 %; ! NO OTHER WRITERS macro FIB$V_DLOCK = 0,1,1,0 %; ! ENABLE DEACCESS LOCK macro FIB$V_BLK_LOCK = 0,2,1,0 %; ! ENABLE RMS-11 BLOCK LOCKING macro FIB$V_FASTRDSQNOS = 0,3,1,0 %; ! READ HDRSEQ AND DATASEQ VALS macro FIB$V_SPOOL = 0,4,1,0 %; ! SPOOL FILE ON CLOSE macro FIB$V_WRITECK = 0,5,1,0 %; ! ENABLE WRITE CHECK macro FIB$V_SEQONLY = 0,6,1,0 %; ! SEQUENTIAL ONLY ACCESS macro FIB$V_SEQNO = 0,7,1,0 %; ! STORE SEQNOS FOR THIS FILE macro FIB$V_WRITE = 0,8,1,0 %; ! WRITE ACCESS macro FIB$V_READCK = 0,9,1,0 %; ! ENABLE READ CHECK macro FIB$V_NOREAD = 0,10,1,0 %; ! NO OTHER READERS macro FIB$V_NOTRUNC = 0,11,1,0 %; ! FILE MAY NOT BE TRUNCATED macro FIB$V_CONTROL = 0,12,1,0 %; ! CONTROL ACCESS TO FILE macro FIB$V_NO_READ_DATA = 0,13,1,0 %; ! NO READ ACCESS TO FILE DATA macro FIB$V_SSIO = 0,14,1,0 %; ! File is opened for SSIO access ! THE HIGH 8 BITS CANNOT BE COPIED ! INTO THE ACCESS MODE WORD IN THE WINDOW macro FIB$V_EXECUTE = 0,16,1,0 %; ! ACCESS FOR EXECUTE (USE EXECUTE PROTECTION) macro FIB$V_PRSRV_ATR = 0,17,1,0 %; ! PRESERVE ORIGINAL ATTRIBUTES OF FILE macro FIB$V_RMSLOCK = 0,18,1,0 %; ! OPEN WITH RMS RECORD LOCKING macro FIB$V_WRITETHRU = 0,19,1,0 %; ! FORCE CACHE WRITE-THROUGH ON OPERATION macro FIB$V_NOLOCK = 0,20,1,0 %; ! OVERRIDE ACCESS INTERLOCKS macro FIB$V_NORECORD = 0,21,1,0 %; ! DO NOT RECORD FILE ACCESS macro FIB$V_NOVERIFY = 0,22,1,0 %; ! Do not perform compare on move. macro FIB$V_CHANGE_VOL = 0,23,1,0 %; ! Allow Movefile move between volumes in a set. macro FIB$V_REWIND = 0,3,1,0 %; ! REWIND TAPE macro FIB$V_CURPOS = 0,4,1,0 %; ! CREATE AT CURRENT TAPE POSITION macro FIB$V_UPDATE = 0,6,1,0 %; ! UPDATE MODE (POSITION TO START OF FILE) macro FIB$B_WSIZE = 3,0,8,1 %; ! WINDOW SIZE macro FIB$W_FID = 4,0,0,0 %; literal FIB$S_FID = 6; ! FILE ID macro FIB$W_FID_NUM = 4,0,16,0 %; ! FILE NUMBER macro FIB$W_FID_SEQ = 6,0,16,0 %; ! FILE SEQUENCE NUMBER macro FIB$W_FID_RVN = 8,0,16,0 %; ! RELATIVE VOLUME NUMBER macro FIB$B_FID_RVN = 8,0,8,0 %; ! SHORT FORM RVN macro FIB$B_FID_NMX = 9,0,8,0 %; ! EXTENDED FILE NUMBER macro FIB$W_FID_DIRNUM = 4,0,16,0 %; ! Directory number of File-Id macro FIB$L_FID_RECNUM = 6,0,32,0 %; ! Record number of File-ID macro FIB$W_DID = 10,0,0,0 %; literal FIB$S_DID = 6; ! DIRECTORY ID macro FIB$W_DID_NUM = 10,0,16,0 %; ! FILE NUMBER macro FIB$W_DID_SEQ = 12,0,16,0 %; ! FILE SEQUENCE NUMBER macro FIB$W_DID_RVN = 14,0,16,0 %; ! RELATIVE VOLUME NUMBER macro FIB$B_DID_RVN = 14,0,8,0 %; ! SHORT FORM RVN macro FIB$B_DID_NMX = 15,0,8,0 %; ! EXTENDED FILE NUMBER macro FIB$W_DID_DIRNUM = 10,0,16,0 %; ! Directory number of File-Id macro FIB$L_DID_RECNUM = 12,0,32,0 %; ! Record number of File-ID macro FIB$L_WCC = 16,0,32,0 %; ! WILD CARD CONTEXT macro FIB$W_NMCTL = 20,0,16,0 %; ! NAME CONTROL BITS macro FIB$V_NAMES_8BIT = 20,0,1,0 %; ! RETURN 8BIT FILENAMES (HFS) macro FIB$V_NAMES_16BIT = 20,1,1,0 %; ! RETURN 16BIT FILENAMES (HFS) macro FIB$V_PERCENT_LITERAL = 20,2,1,0 %; ! PERCENT IS LITERAL (HFS) macro FIB$V_ALLVER = 20,3,1,0 %; ! MATCH ALL VERSIONS macro FIB$V_ALLTYP = 20,4,1,0 %; ! MATCH ALL TYPES macro FIB$V_ALLNAM = 20,5,1,0 %; ! MATCH ALL NAMES macro FIB$V_CASE_SENSITIVE = 20,6,1,0 %; ! case sensitive lookup macro FIB$V_SEARCH = 20,7,1,0 %; ! Match names in purely case blind manner. ! (intended for search operations; normal file ! access should give preference to exact match) macro FIB$V_WILD = 20,8,1,0 %; ! WILD CARDS IN FILE NAME macro FIB$V_NEWVER = 20,9,1,0 %; ! MAXIMIZE VERSION NUMBER macro FIB$V_SUPERSEDE = 20,10,1,0 %; ! SUPERSEDE EXISTING FILE macro FIB$V_FINDFID = 20,11,1,0 %; ! SEARCH FOR FILE ID macro FIB$V_FINDDIR = 20,12,1,0 %; ! SEARCH FOR DIR EXTENTION (Internal use only) ! the following bits are output, not input macro FIB$V_CASE_VARIANT = 20,13,1,0 %; ! A case variant of this filename exists macro FIB$V_LOWVER = 20,14,1,0 %; ! LOWER VERSION OF FILE EXISTS macro FIB$V_HIGHVER = 20,15,1,0 %; ! HIGHER VERSION OF FILE EXISTS macro FIB$W_EXCTL = 22,0,16,0 %; ! EXTEND CONTROL macro FIB$V_ALCON = 22,0,1,0 %; ! ALLOCATE CONTIGUOUS macro FIB$V_ALCONB = 22,1,1,0 %; ! CONTIGUOUS BEST EFFORT macro FIB$V_FILCON = 22,2,1,0 %; ! MARK FILE CONTIGUOUS macro FIB$V_ALDEF = 22,3,1,0 %; ! ALLOCATE DEFAULT AMOUNT macro FIB$V_ALLOCATR = 22,4,1,0 %; ! PLACEMENT DATA PRESENT IN ATTRIBUTE LIST macro FIB$V_EXTEND = 22,7,1,0 %; ! ENABLE EXTENSION macro FIB$V_TRUNC = 22,8,1,0 %; ! ENABLE TRUNCATION macro FIB$V_NOHDREXT = 22,9,1,0 %; ! INHIBIT EXTENSION HEADERS macro FIB$V_MARKBAD = 22,10,1,0 %; ! MARK BLOCKS BAD macro FIB$V_NOPLACE = 22,14,1,0 %; ! DON'T ADD PLACEMENT POINTERS IN MOVEFILE macro FIB$V_NOCHARGE = 22,15,1,0 %; ! DON'T CHARGE DISKQUOTA macro FIB$L_EXSZ = 24,0,32,0 %; ! EXTEND SIZE macro FIB$L_EXVBN = 28,0,32,0 %; ! EXTENSION VBN macro FIB$B_ALOPTS = 32,0,8,0 %; ! ALLOCATION OPTIONS macro FIB$V_EXACT = 32,0,1,0 %; ! EXACT PLACEMENT REQUIRED macro FIB$V_ONCYL = 32,1,1,0 %; ! PUT ALLOCATION ON ONE CYLINDER macro FIB$B_ALALIGN = 33,0,8,0 %; ! ALLOCATION ALIGNMENT macro FIB$W_ALLOC = 34,0,0,0 %; literal FIB$S_ALLOC = 10; ! ALLOCATION LOCATION macro FIB$W_LOC_FID = 34,0,0,0 %; literal FIB$S_LOC_FID = 6; ! RELATED FILE ID macro FIB$W_LOC_NUM = 34,0,16,0 %; ! RELATED FILE NUMBER macro FIB$W_LOC_SEQ = 36,0,16,0 %; ! FILE SEQUENCE NUMBER macro FIB$W_LOC_RVN = 38,0,16,0 %; ! RELATED RVN macro FIB$B_LOC_RVN = 38,0,8,0 %; ! SHORT FORM RVN macro FIB$B_LOC_NMX = 39,0,8,0 %; ! EXTENDED FILE NUMBER macro FIB$L_LOC_ADDR = 40,0,32,0 %; ! LOCATION ADDRESS (VBN, LBN, CYL) macro FIB$W_VERLIMIT = 44,0,16,0 %; ! DIRECTORY ENTRY VERSION LIMIT macro FIB$B_AGENT_MODE = 46,0,8,0 %; ! AGENTS ACCESS MODE macro FIB$B_RU_FACILITY = 47,0,8,0 %; ! RECOVERABLE-FACILITY CODE macro FIB$L_ACLCTX = 48,0,32,0 %; ! ACL CONTEXT FOR READ macro FIB$L_ACL_STATUS = 52,0,32,0 %; ! RETURN STATUS FROM ACL OPERATION macro FIB$L_STATUS = 56,0,32,0 %; ! GENERAL STATUS LONGWORD macro FIB$V_ALT_REQ = 56,0,1,0 %; ! ALTERNATE ACCESS REQUIRED macro FIB$V_ALT_GRANTED = 56,1,1,0 %; ! ALTERNATE ACCESS GRANTED macro FIB$V_DIRACL = 56,2,1,0 %; ! DO DIRECTORY ACL PROPAGATION macro FIB$V_PROPAGATE = 56,3,1,0 %; ! DO PROPAGATION ON ENTER/MODIFY macro FIB$V_NOCOPYACL = 56,4,1,0 %; ! DON'T PROPAGATE THE ACL macro FIB$V_NOCOPYOWNER = 56,5,1,0 %; ! DON'T PROPAGATE THE OWNER UIC macro FIB$V_NOCOPYPROT = 56,6,1,0 %; ! DON'T PROPAGATE THE SOGW PROTECTION macro FIB$V_EXCLPREVIOUS = 56,7,1,0 %; ! EXCLUDE THE PREVIOUS VERSION FROM PROPAGATION macro FIB$V_ALIAS_ENTRY = 56,8,1,0 %; ! FILE ACCESSED VIA AN ALIAS DIRECTORY ENTRY macro FIB$V_WILDFID_FLAG = 56,9,1,0 %; ! WILDCARD FID FLAG macro FIB$V_DID_FILESPEC = 56,10,1,0 %; ! FILESPEC HAD BEEN DID'ED macro FIB$V_IS_SPECIAL = 56,11,1,0 %; ! Special file detected and handled macro FIB$V_CHECK_SPECIAL = 56,12,1,0 %; ! Check for special files macro FIB$L_ALT_ACCESS = 60,0,32,0 %; ! ALTERNATE ACCESS MASK macro FIB$L_MOV_SVBN = 64,0,32,0 %; ! starting VBN (MOVEFILE) macro FIB$L_MOV_VBNCNT = 68,0,32,0 %; ! count of VBNs (MOVEFILE) macro FIB$W_FILE_HDRSEQ_INCR = 72,0,16,0 %; ! header seq no increment for indiv file macro FIB$W_DIR_HDRSEQ_INCR = 74,0,16,0 %; ! header seq no increment for directory file macro FIB$W_FILE_DATASEQ_INCR = 76,0,16,0 %; ! data seq no increment for indiv file macro FIB$W_DIR_DATASEQ_INCR = 78,0,16,0 %; ! data seq no increment for driectory file ! Define fields and constant values for FIB$L_CACHING_OPTIONS longword. ! These must match [STARLET]ATRDEF.SDL exactly macro FIB$L_CACHING_OPTIONS = 80,0,32,0 %; ! F64XQP cache control bitvector macro FIB$V_FILE_ATTRIBUTES = 80,0,4,0 %; literal FIB$S_FILE_ATTRIBUTES = 4; ! File attributes caching field macro FIB$V_FILE_CONTENTS = 80,4,4,0 %; literal FIB$S_FILE_CONTENTS = 4; ! File contents caching field macro FIB$V_FLUSH_ON_CLOSE = 80,8,4,0 %; literal FIB$S_FLUSH_ON_CLOSE = 4; ! Flush file on close field macro FIB$V_CACHING_OPTIONS_MBZ = 80,12,20,0 %; literal FIB$S_CACHING_OPTIONS_MBZ = 20; ! Must be zero macro FIB$W_SD_FID = 84,0,0,0 %; literal FIB$S_SD_FID = 6; ! FILE ID macro FIB$W_SD_FID_NUM = 84,0,16,0 %; ! FILE NUMBER macro FIB$W_SD_FID_SEQ = 86,0,16,0 %; ! FILE SEQUENCE NUMBER macro FIB$W_SD_FID_RVN = 88,0,16,0 %; ! RELATIVE VOLUME NUMBER macro FIB$B_SD_FID_RVN = 88,0,8,0 %; ! SHORT FORM RVN macro FIB$B_SD_FID_NMX = 89,0,8,0 %; ! EXTENDED FILE NUMBER macro FIB$B_NAME_FORMAT_IN = 92,0,8,0 %; ! Inbound file name encoding macro FIB$B_NAME_FORMAT_OUT = 93,0,8,0 %; ! Returned file name encoding macro FIB$B_ASCNAME_FORMAT = 94,0,8,0 %; ! ASCNAME attribute encoding macro FIB$B_RESERVED_2 = 95,0,8,0 %; ! For alignment. NOTE - Must be zero. literal FIB$C_REWINDVOL = 1; ! REWIND VOLUME SET literal FIB$C_POSEND = 2; ! POSITION TO END OF VOLUME SET literal FIB$C_NEXTVOL = 3; ! FORCE NEXT VOLUME literal FIB$C_SPACE = 4; ! SPACE MAGNETIC TAPE literal FIB$C_ILLEGAL = 5; ! literal FIB$C_REWINDFIL = 6; ! REWIND FILE literal FIB$C_LOCK_VOL = 7; ! LOCK VOLUME AGAINST ALLOCATION literal FIB$C_UNLK_VOL = 8; ! UNLOCK VOLUME ! QUOTA FILE OPERATIONS literal FIB$C_ENA_QUOTA = 9; ! ENABLE QUOTA FILE literal FIB$C_DSA_QUOTA = 10; ! DISABLE QUOTA FILE literal FIB$C_ADD_QUOTA = 11; ! ADD QUOTA FILE ENTRY literal FIB$C_EXA_QUOTA = 12; ! EXAMINE QUOTA FILE ENTRY literal FIB$C_MOD_QUOTA = 13; ! MODIFY QUOTA FILE ENTRY literal FIB$C_REM_QUOTA = 14; ! REMOVE QUOTA FILE ENTRY literal FIB$C_USEREOT = 15; ! ENABLE USER END OF TAPE HANDLING literal FIB$C_REMAP = 16; ! REMAP FILE WINDOW literal FIB$C_CLSEREXCP = 17; ! ALLOW THE USER TO CLEAR A SERIOUS EXCP FROM A TAPE DRIVE literal FIB$C_FLUSH_CACHE = 18; ! FLUSH SELECTED CACHE literal FIB$C_FORCE_MV = 19; ! FORCE MOUNT VERIFICATION TO OCCUR literal FIB$C_VALIDATE_VOLUME = 20; ! VALIDATE VOLUME SET FOLLOWING SNAPSHOT FILE BOOT literal FIB$C_VALIDATE_FILE = 21; ! VALIDATE FILE FOLLOWING SNAPSHOT FILE BOOT literal FIB$C_UPDATE_VOL_PROFILE = 22; ! UPDATE A VOLUME'S (PERMANENT) SECURITY PROFILE literal FIB$C_UPDATE_FIL_PROFILE = 23; ! UPDATE A FILE'S (PERMANENT) SECURITY PROFILE literal FIB$C_CHECK_PROTECTION = 24; ! PERFORM FILE OR VOLUME PROTECTION CHECK literal FIB$C_ADD_THREAD = 25; ! ADD A NEW THREAD literal FIB$C_REM_THREAD = 26; ! REMOVE A THREAD literal FIB$C_EXA_THREAD = 27; ! INQUIRE ABOUT THREADS literal FIB$C_CHECK_PATH = 28; ! FIND DIRSEQ VAL AND ARM BLKAST literal FIB$C_ENA_DW = 29; ! ENABLE DEFERRED WRITE literal FIB$C_DSA_DW = 30; ! DISABLE DEFERRED WRITE literal FIB$C_WRITEBACK_CACHE = 31; ! F64 caching literal FIB$C_WRITETHRU_CACHE = 32; ! F64 caching literal FIB$C_FILE_SYNCH = 33; ! VDC/Spiralog flush file to disk literal FIB$C_CACHING_OPTIONS = 34; ! VDC/Spiralog select caching mode literal FIB$C_WRITE_BARRIER = 35; ! VDC/Spiralog barrier writes to this point literal FIB$C_VOL_FLUSH = 36; ! VDC volume flush local node only literal FIB$C_VOL_FLUSH_ALL = 37; ! VDC flush all volumes local node only literal FIB$C_CLONE_FIL_PROFILE = 38; ! RETURN A COPY OF A FILE'S CURRENT SECURITY PROFILE literal FIB$C_STRUC_LEVEL2 = 39; ! Set the vcb to ods2 literal FIB$C_STRUC_LEVEL5 = 40; ! Set the vcb to ods5 literal FIB$C_EXPAND_VOLUME = 41; ! Expand the volume size literal FIB$C_EXPAND_BITMAP = 42; ! Increase the BITMAP.SYS size literal FIB$K_MTALEN = 28; ! LENGTH OF MTAACP DATA literal FIB$C_MTALEN = 28; ! LENGTH OF MTAACP DATA ! literal FIB$C_FID_CACHE = 1; ! FLUSH THE FID CACHE literal FIB$C_EXTENT_CACHE = 2; ! FLUSH THE EXTENT CACHE literal FIB$C_QUOTA_CACHE = 3; ! FLUSH THE QUOTA CACHE literal FIB$C_BFRD_CACHE = 4; ! FLUSH THE BFRD CACHE literal FIB$C_VBN_CACHE = 5; ! FLUSH THE VBN CACHE ! literal FIB$C_FLUSH_FILE_ATTRIBUTES = 1; ! Only flush file attributes literal FIB$C_FLUSH_FILE_CONTENTS = 2; ! Only flush file contents literal FIB$C_FLUSH_FILE = 3; ! Flush all of file ! literal FIB$M_ALL_MEM = %X'1'; literal FIB$M_ALL_GRP = %X'2'; literal FIB$M_MOD_USE = %X'4'; literal FIB$M_MOD_PERM = %X'8'; literal FIB$M_MOD_OVER = %X'10'; literal FIB$S_FIBDEF1 = 28; macro FIB$W_CNTRLFUNC = 22,0,16,0 %; ! ACP CONTROL FUNCTION ! DEFINE ACP CONTROL FUNCTION CODES ! macro FIB$L_CNTRLVAL = 24,0,32,0 %; ! ACP CONTROL FUNCTION VALUE PARAMETER ! CACHE IDENTIFIER CODES FOR FLUSH_CACHE ! ! Files-64 CACHE IDENTIFIER CODES FOR FILE_SYNC ! ! CONTROL BITS FOR QUOTA FILE OPERATIONS ! macro FIB$V_ALL_MEM = 24,0,1,0 %; ! MATCH ALL MEMBER NUMBERS macro FIB$V_ALL_GRP = 24,1,1,0 %; ! MATCH ALL GROUP NUMBERS macro FIB$V_MOD_USE = 24,2,1,0 %; ! MODIFY USAGE DATA macro FIB$V_MOD_PERM = 24,3,1,0 %; ! MODIFY PERMANENT QUOTA macro FIB$V_MOD_OVER = 24,4,1,0 %; ! MODIFY OVERDRAFT LIMIT ! Add a synonym for FIB$C_FILE_SYNCH to keep naming consistency literal FIB$C_FILE_FLUSH = 33; !*** MODULE $FIDDEF *** ! ! STRUCTURE OF A FILE ID (FID) ! literal FID$K_LENGTH = 6; literal FID$C_LENGTH = 6; literal FID$C_INDEXF = 1; ! INDEX FILE literal FID$C_BITMAP = 2; ! STORAGE MAP FILE literal FID$C_BADBLK = 3; ! BAD BLOCK FILE literal FID$C_MFD = 4; ! MASTER FILE DIRECTORY literal FID$C_CORIMG = 5; ! CORE IMAGE FILE literal FID$C_VOLSET = 6; ! VOLUME SET LIST FILE literal FID$C_CONTIN = 7; ! STANRARD CONTINUATION FILE literal FID$C_BACKUP = 8; ! BACKUP LOG FILE literal FID$C_BADLOG = 9; ! BAD BLOCK LOG FILE literal FID$C_SECURITY = 10; ! SECURITY FILE literal FID$C_GPT = 11; ! GPT FILE literal FID$C_FREFIL = 10; ! FREE SPACE FILE literal FID$S_FIDDEF = 6; macro FID$W_FID = 0,0,0,0 %; literal FID$S_FID = 6; ! File Identification Number macro FID$W_NUM = 0,0,16,0 %; ! FILE NUMBER macro FID$W_SEQ = 2,0,16,0 %; ! FILE SEQUENCE NUMBER macro FID$W_RVN = 4,0,16,0 %; ! RELATIVE VOLUME NUMBER macro FID$B_RVN = 4,0,8,0 %; ! BYTE FORM OF RVN macro FID$B_NMX = 5,0,8,0 %; ! FILE NUMBER EXTENSION ! FILE ID'S OF THE RESERVED FILES macro FID$W_DIRNUM = 0,0,16,0 %; ! Directory number of File-Id macro FID$L_RECNUM = 2,0,32,0 %; ! Record number of File-ID !*** MODULE $FLTDEF *** ! ! FLAG BITS FOR THE $SETFLT SYSTEM SERVICE. ! literal FLT$M_NO_EXECUTE = %X'1'; literal FLT$M_EXECUTE_ONLY = %X'2'; literal FLT$M_PERM = %X'4'; literal FLT$M_EXECUTABLE = %X'8'; literal FLT$S_FLTDEF = 1; macro FLT$V_NO_EXECUTE = 0,0,1,0 %; ! No Execute macro FLT$V_EXECUTE_ONLY = 0,1,1,0 %; ! Execute Only (for future use) macro FLT$V_PERM = 0,2,1,0 %; ! Permanent (for future use) macro FLT$V_EXECUTABLE = 0,3,1,0 %; ! Set page to executable !*** MODULE $GEN64DEF *** ! + ! Define the generic quadword structure. ! - literal GEN64$S_GENERIC_64 = 8; macro GEN64$Q_QUADWORD = 0,0,0,0 %; literal GEN64$S_QUADWORD = 8; ! ...a single 64-bit value, or macro GEN64$L_LONGWORD = 0,0,0,0 %; literal GEN64$S_LONGWORD = 8; ! ...two 32-bit values, or macro GEN64$W_WORD = 0,0,0,0 %; literal GEN64$S_WORD = 8; ! ...four 16-bit values literal GEN64$K_LENGTH = 8; ! Length of GEN64 structure literal GEN64$C_LENGTH = 8; ! Length of GEN64 structure !*** MODULE $GETSPIDEF *** ! + ! Get System Performance Information Data Identifier Definitions ! ! The following constants define the items which can be collected ! with the Get System Performance Information service (GETSPI). ! The item numbers are defined as follows: ! ! 16 12 0 ! +------------------+-------------+ ! | Structure number | Item number | ! +------------------+-------------+ ! ! The top four bits represent the structure of the item and the last 12 ! bits represent the item within the structure. ! ! Caution! ! The SPIDEF in the [montor] facility contained the following ! instructions on adding new symbols. With this interface being added ! to STARLET, changing any item number is unacceptable. Some spare item ! number exist in each range; if these are ever exhausted, new ranges must ! be defined and support added, rather than changing item numbers. ! ! * The item numbers start ! * at 0 and increase sequentially to the last item (even across tables). ! * If new items are added to a table, programs MUST be relinked to allow ! * the old definitions to change. This was done to simplify some table ! * lookups in the Monitor Utility. To get around this, new items can be ! * added at the end of the list. ! * ! * Each table has one item at the end to act as a place holder. It should ! * have the same item number as the first item of the next table. These ! * items are not counters in the total number of SPI items GETSPI$_TABLESIZE. ! - ! DEFINE TABLE TYPES literal GETSPI$C_EXETYPE = 1; ! Executive cells literal GETSPI$C_EWSTYPE = 2; ! Executive writable storage area literal GETSPI$C_MONTYPE = 3; ! Monitor specific items literal GETSPI$C_RMSTYPE = 4; ! Monitor RMS specific items literal GETSPI$C_LISTEND = 0; ! End of table list ! ! The following section defines items which are collected during initialization. ! There items include general system information, and server version number. ! The server version number is also defined here. ! literal GETSPI$_initial = -1; ! Initialization item list literal GETSPI$_data_collection = -2; ! Data collection item list literal GETSPI$_sysinfo = -3; ! System information item literal GETSPI$_version_number = -4; ! Monitor version number literal GETSPI$_rms_file = -5; ! Parse file name literal GETSPI$_rms_gs = -6; ! Get global section address literal GETSPI$_last_type = -7; literal GETSPI$_server_version = 5; ! ! Define bits in the PMS flags field PMS$GL_FLAGS. These are used to ! synchronize access to some PMS field and enable other activity. ! literal GETSPI$S_getspi$pms_flags = 4; macro GETSPI$l_flags = 0,0,32,0 %; literal GETSPI$s_flags = 4; ! Class qualifier flags for CDB (Active) macro GETSPI$v_disk_enable = 0,0,1,0 %; ! YES => Enable disk queue length collection ! This field must be accessed via an interlocked ! bit instruction. macro GETSPI$v_filler1 = 0,1,7,0 %; literal GETSPI$s_filler1 = 7; ! Fill out remainder of first byte macro GETSPI$v_disk_sync = 0,8,1,0 %; ! YES => Synchronize access to several PMS counters ! used in the collection of disk queue length. ! This field must be accessed via an interlocked ! bit instruction, AND MUST BE IN A SEPARATE ! BYTE from the disk_enable bit (required by ! the architecture to maintain synchronization). macro GETSPI$v_filler2 = 0,9,23,0 %; literal GETSPI$s_filler2 = 23; ! Fill out remainder of field ! ! Define two contants to handle help handle large lookaside lists. The ! maximum number that SPISHR will count to is defined with ! GETSPI$K_MAX_PACKET and the value returned when this threshold is ! reached is defined as GETSPI$K_POOL_OVF. ! literal GETSPI$k_max_packet = 500; literal GETSPI$k_pool_ovf = -2147483647; ! ! Define item identifier numbers. Each data item has an associated ! value which is used to find its entry in the EXETBL. The item table ! is defined by the macros SPI_GENERATE_TABLE which makes multiple calls ! to the macro SPI_ITEM_CODE defined in the SYSGETSPI module. ! literal GETSPI$_MODES = 4096; ! All modes counters on all CPU's literal GETSPI$_INTERRUPT = 4097; ! time on interrupt stack -- primary literal GETSPI$_KERNEL = 4098; ! time in kernel mode -- primary literal GETSPI$_EXEC = 4099; ! time in exec mode -- primary literal GETSPI$_SUPER = 4100; ! time in supervisor mode -- primary literal GETSPI$_USER = 4101; ! time in user mode -- primary literal GETSPI$_COMPAT = 4102; ! time in compat. mode -- primary literal GETSPI$_INTERRUPT_BUSY = 4103; ! Time spent spinning on the interrupt stack literal GETSPI$_KERNEL_BUSY = 4104; ! Time spent spinning on the lernel stack literal GETSPI$_IDLE = 4105; ! idle time -- primary literal GETSPI$_CPUBUSY = 4106; ! RETIRED ITEM - RETURNS 0 literal GETSPI$_COLPG = 4107; ! collided page wait literal GETSPI$_MWAIT = 4108; ! memory wait literal GETSPI$_CEF = 4109; ! common event flag wait literal GETSPI$_PFW = 4110; ! page wait literal GETSPI$_LEF = 4111; ! local event flag wait literal GETSPI$_LEFO = 4112; ! lef wait out of bal. set literal GETSPI$_HIB = 4113; ! hibernating literal GETSPI$_HIBO = 4114; ! hibernating outswapped literal GETSPI$_SUSP = 4115; ! suspended literal GETSPI$_SUSPO = 4116; ! suspended outswapped literal GETSPI$_FPG = 4117; ! free page wait literal GETSPI$_COM = 4118; ! computing literal GETSPI$_COMO = 4119; ! computable outswapped literal GETSPI$_CUR = 4120; ! current literal GETSPI$_OTHSTAT = 4121; ! RETIRED ITEM - RETURNS 0 literal GETSPI$_PROCS = 4122; ! process count for SYSTEM class literal GETSPI$_PROC = 4123; ! collect all process information literal GETSPI$_FRLIST = 4124; ! size of free list literal GETSPI$_MODLIST = 4125; ! size of modified list literal GETSPI$_FAULTS = 4126; ! page fault count literal GETSPI$_PREADS = 4127; ! page reads literal GETSPI$_PWRITES = 4128; ! page writes literal GETSPI$_PWRITIO = 4129; ! physical page write I/O's literal GETSPI$_PREADIO = 4130; ! physical page read I/O's literal GETSPI$_GVALFLTS = 4131; ! global valid faults literal GETSPI$_WRTINPROG = 4132; ! faults from write in progress literal GETSPI$_FREFLTS = 4133; ! faults from free list literal GETSPI$_MFYFLTS = 4134; ! faults from modified list literal GETSPI$_DZROFLTS = 4135; ! demand zero faults literal GETSPI$_SYSFAULTS = 4136; ! system page faults literal GETSPI$_LRPCNT = 4137; ! number of LRP packets available literal GETSPI$_LRPINUSE = 4138; ! number of LRPs in use literal GETSPI$_IRPCNT = 4139; ! number of IRP packets available literal GETSPI$_IRPINUSE = 4140; ! number of IRPs in use literal GETSPI$_SRPCNT = 4141; ! number of SRP packets available literal GETSPI$_SRPINUSE = 4142; ! number of SRPs in use literal GETSPI$_HOLECNT = 4143; ! number of blocks in dyn. memory literal GETSPI$_BIGHOLE = 4144; ! largest hole literal GETSPI$_SMALLHOLE = 4145; ! smallest hole literal GETSPI$_HOLESUM = 4146; ! total space in dyn. memory available literal GETSPI$_DYNINUSE = 4147; ! dynamic memory space in use literal GETSPI$_SMALLCNT = 4148; ! number of blocks < 32 bytes in size literal GETSPI$_ISWPCNT = 4149; ! total inswaps literal GETSPI$_DIRIO = 4150; ! count of direct I/Os literal GETSPI$_BUFIO = 4151; ! count of buffered I/Os literal GETSPI$_MBREADS = 4152; ! total mailbox reads literal GETSPI$_MBWRITES = 4153; ! total mailbox writes literal GETSPI$_LOGNAM = 4154; ! logical name translations literal GETSPI$_FCPCALLS = 4155; ! total fcp calls literal GETSPI$_FCPREAD = 4156; ! number of disk reads by FCP literal GETSPI$_FCPWRITE = 4157; ! number of disk writes by FCP literal GETSPI$_FCPCACHE = 4158; ! number of FCP cache hits literal GETSPI$_FCPCPU = 4159; ! number of CPU tics by FCP literal GETSPI$_FCPHIT = 4160; ! number of window hits literal GETSPI$_FCPSPLIT = 4161; ! number of split transfers literal GETSPI$_FCPFAULT = 4162; ! number of FCP page faults literal GETSPI$_ENQNEW = 4163; ! number of ENQ's (new) literal GETSPI$_ENQCVT = 4164; ! number of ENQ's (conversions) literal GETSPI$_DEQ = 4165; ! number of DEQ's literal GETSPI$_BLKAST = 4166; ! number of blocking AST's literal GETSPI$_ENQWAIT = 4167; ! number of ENQ's forced to wait literal GETSPI$_ENQNOTQD = 4168; ! number of ENQ's not queued literal GETSPI$_DLCKSRCH = 4169; ! number of deadlock searches literal GETSPI$_DLCKFND = 4170; ! number of deadlocks found literal GETSPI$_NUMLOCKS = 4171; ! total locks literal GETSPI$_NUMRES = 4172; ! total resources literal GETSPI$_ARRLOCPK = 4173; ! arriving local packets literal GETSPI$_DEPLOCPK = 4174; ! departing local packets literal GETSPI$_ARRTRAPK = 4175; ! arriving transit packets literal GETSPI$_TRCNGLOS = 4176; ! transit congestion loss literal GETSPI$_RCVBUFFL = 4177; ! receiver buffer failures literal GETSPI$_RESERVED1 = 4178; ! Reserved PMS location 1 literal GETSPI$_RESERVED2 = 4179; ! Reserved PMS location 2 literal GETSPI$_RESERVED3 = 4180; ! Reserved PMS location 3 literal GETSPI$_RESERVED4 = 4181; ! Reserved PMS location 4 literal GETSPI$_RESERVED5 = 4182; ! Reserved PMS location 5 literal GETSPI$_RESERVED6 = 4183; ! Reserved PMS location 6 literal GETSPI$_RESERVED7 = 4184; ! Reserved PMS location 7 literal GETSPI$_RESERVED8 = 4185; ! Reserved PMS location 8 literal GETSPI$_RESERVED9 = 4186; ! Reserved PMS location 9 literal GETSPI$_RESERVED10 = 4187; ! Reserved PMS location 10 literal GETSPI$_RESERVED11 = 4188; ! Reserved PMS location 11 literal GETSPI$_RESERVED12 = 4189; ! Reserved PMS location 12 literal GETSPI$_RESERVED13 = 4190; ! Reserved PMS location 13 literal GETSPI$_RESERVED14 = 4191; ! Reserved PMS location 14 literal GETSPI$_RESERVED15 = 4192; ! Reserved PMS location 15 literal GETSPI$_RESERVED16 = 4193; ! Reserved PMS location 16 literal GETSPI$_RESERVED17 = 4194; ! Reserved PMS location 17 literal GETSPI$_RESERVED18 = 4195; ! Reserved PMS location 18 literal GETSPI$_FID_TRIES = 4196; ! count of File Id cache attempts literal GETSPI$_FILHDR_TRIES = 4197; ! count of File header cache attempts literal GETSPI$_DIRFCB_TRIES = 4198; ! count of Directory block cache attempts literal GETSPI$_DIRDATA_TRIES = 4199; ! count of Directory data cache attempts literal GETSPI$_EXT_TRIES = 4200; ! count of Extent cache attempts literal GETSPI$_QUO_TRIES = 4201; ! count of Quota cache attempts literal GETSPI$_STORAGMAP_TRIES = 4202; ! count of storage bitmap cache attempts literal GETSPI$_DISKS = 4203; ! all disk data literal GETSPI$_TOTAL_LOCKS = 4204; ! Total of all locking activity - NOT COLLECTED BY SPI - COMPUTED BY MONITOR literal GETSPI$_ENQNEWLOC = 4205; ! new lock requests (local) literal GETSPI$_ENQNEWIN = 4206; ! new lock requests (incoming) literal GETSPI$_ENQNEWOUT = 4207; ! new lock requests (outgoing) literal GETSPI$_ENQCVTLOC = 4208; ! lock conversion requests (local) literal GETSPI$_ENQCVTIN = 4209; ! lock conversion requests (incoming) literal GETSPI$_ENQCVTOUT = 4210; ! lock conversion requests (outgoing) literal GETSPI$_DEQLOC = 4211; ! dequeues (local) literal GETSPI$_DEQIN = 4212; ! dequeues (incoming) literal GETSPI$_DEQOUT = 4213; ! dequeues (outgoing) literal GETSPI$_BLKLOC = 4214; ! blocking ASTs queued (local) literal GETSPI$_BLKIN = 4215; ! blocking ASTs queued (incoming) literal GETSPI$_BLKOUT = 4216; ! blocking ASTs queued (outgoing) literal GETSPI$_DIRIN = 4217; ! directory operations (incoming) literal GETSPI$_DIROUT = 4218; ! directory operations (outgoing) literal GETSPI$_DLCKMSGS = 4219; ! deadlock detection messages (in & out) literal GETSPI$_SCS = 4220; ! All SCS information literal GETSPI$_SYSTIME = 4221; ! Current system time literal GETSPI$_MSCP_REQUEST = 4222; ! IO request rate to the MSCP server literal GETSPI$_MSCP_READ = 4223; ! Read request rate to the MSCP server literal GETSPI$_MSCP_WRITE = 4224; ! Write request rate to the MSCP server literal GETSPI$_MSCP_FRAGMENT = 4225; ! Rate at which I/O's are fragmented literal GETSPI$_MSCP_SPLIT = 4226; ! Rate at which I/O's are split literal GETSPI$_MSCP_BUFWAIT = 4227; ! Rate at which incoming requests have to wait for a buffer literal GETSPI$_MSCP_SIZE1 = 4228; ! I/O rate for sizes 1-2 blocks literal GETSPI$_MSCP_SIZE2 = 4229; ! I/O rate for sizes 2-3 blocks literal GETSPI$_MSCP_SIZE3 = 4230; ! I/O rate for sizes 4-7 blocks literal GETSPI$_MSCP_SIZE4 = 4231; ! I/O rate for sizes 8-15 blocks literal GETSPI$_MSCP_SIZE5 = 4232; ! I/O rate for sizes 16-31 blocks literal GETSPI$_MSCP_SIZE6 = 4233; ! I/O rate for sizes 32-63 blocks literal GETSPI$_MSCP_SIZE7 = 4234; ! I/O rate for sizes 64-127 blocks literal GETSPI$_MSCP_ALL = 4235; ! Dummy item to collect all MSCP server class items literal GETSPI$_DDTM_STARTS = 4236; ! Local Transaction starts literal GETSPI$_DDTM_PREPARES = 4237; ! Local Transaction prepare event literal GETSPI$_DDTM_ONE_PHASE = 4238; ! Transaction ONE_PHASE commit event literal GETSPI$_DDTM_COMMITS = 4239; ! Local Transaction commit event literal GETSPI$_DDTM_ABORTS = 4240; ! Local Transaction abort event literal GETSPI$_DDTM_ENDS = 4241; ! Local Transaction ends literal GETSPI$_DDTM_BRANCHS = 4242; ! Start branch event literal GETSPI$_DDTM_ADDS = 4243; ! Add branch event literal GETSPI$_DDTM_BUCKETS1 = 4244; ! TPS rate for < 1 literal GETSPI$_DDTM_BUCKETS2 = 4245; ! TPS rate for 1-2 literal GETSPI$_DDTM_BUCKETS3 = 4246; ! TPS rate for 2-3 literal GETSPI$_DDTM_BUCKETS4 = 4247; ! TPS rate for 3-4 literal GETSPI$_DDTM_BUCKETS5 = 4248; ! TPS rate for 4-5 literal GETSPI$_DDTM_BUCKETS6 = 4249; ! TPS rate for > 6 literal GETSPI$_DDTM_ALL = 4250; ! Dummy item to collect all TRANSACTION class items literal GETSPI$_VECTORP = 4251; ! Vector Processor tics scheduled literal GETSPI$_VBYTE_READ = 4252; ! VBS bytes read literal GETSPI$_VBYTE_WRITE = 4253; ! VBS bytes written literal GETSPI$_VVBS_TRAN = 4254; literal GETSPI$_VRBS_TRAN = 4255; literal GETSPI$_VDIO_SEL = 4256; literal GETSPI$_VDIOMAP_ALLOC = 4257; literal GETSPI$_VRBS_AVAIL = 4258; literal GETSPI$_VSEL_FAIL = 4259; literal GETSPI$_VVBSM_HIT = 4260; literal GETSPI$_VVBSM_CACHE = 4261; literal GETSPI$_VFLUIDBAL = 4262; literal GETSPI$_VRECOPY = 4263; literal GETSPI$_VCPUTICKS = 4264; literal GETSPI$_RESERVEDEXE1 = 4265; ! Reserved EXE items literal GETSPI$_RESERVEDEXE2 = 4266; ! Reserved EXE items literal GETSPI$_RESERVEDEXE3 = 4267; ! Reserved EXE items literal GETSPI$_RESERVEDEXE4 = 4268; ! Reserved EXE items literal GETSPI$_RESERVEDEXE5 = 4269; ! Reserved EXE items literal GETSPI$_RESERVEDEXE6 = 4270; ! Reserved EXE items literal GETSPI$_RESERVEDEXE7 = 4271; ! Reserved EXE items literal GETSPI$_RESERVEDEXE8 = 4272; ! Reserved EXE items literal GETSPI$_RESERVEDEXE9 = 4273; ! Reserved EXE items literal GETSPI$_RESERVEDEXE10 = 4274; ! Reserved EXE items literal GETSPI$_RESERVEDEXE11 = 4275; ! Reserved EXE items literal GETSPI$_RESERVEDEXE12 = 4276; ! Reserved EXE items literal GETSPI$_RESERVEDEXE13 = 4277; ! Reserved EXE items literal GETSPI$_RESERVEDEXE14 = 4278; ! Reserved EXE items literal GETSPI$_RESERVEDEXE15 = 4279; ! Reserved EXE items literal GETSPI$_RESERVEDEXE16 = 4280; ! Reserved EXE items literal GETSPI$_RESERVEDEXE17 = 4281; ! Reserved EXE items literal GETSPI$_RESERVEDEXE18 = 4282; ! Reserved EXE items literal GETSPI$_RESERVEDEXE19 = 4283; ! Reserved EXE items literal GETSPI$_RESERVEDEXE20 = 4284; ! Reserved EXE items literal GETSPI$_RESERVEDEXE21 = 4285; ! Reserved EXE items literal GETSPI$_RESERVEDEXE22 = 4286; ! Reserved EXE items literal GETSPI$_RESERVEDEXE23 = 4287; ! Reserved EXE items literal GETSPI$_RESERVEDEXE24 = 4288; ! Reserved EXE items literal GETSPI$_RESERVEDEXE25 = 4289; ! Reserved EXE items literal GETSPI$_RESERVEDEXE26 = 4290; ! Reserved EXE items literal GETSPI$_RESERVEDEXE27 = 4291; ! Reserved EXE items literal GETSPI$_RESERVEDEXE28 = 4292; ! Reserved EXE items literal GETSPI$_RESERVEDEXE29 = 4293; ! Reserved EXE items literal GETSPI$_RESERVEDEXE30 = 4294; ! Reserved EXE items literal GETSPI$_RESERVEDEXE31 = 4295; ! Reserved EXE items literal GETSPI$_RESERVEDEXE32 = 4296; ! Reserved EXE items literal GETSPI$_RESERVEDEXE33 = 4297; ! Reserved EXE items literal GETSPI$_RESERVEDEXE34 = 4298; ! Reserved EXE items literal GETSPI$_RESERVEDEXE35 = 4299; ! Reserved EXE items literal GETSPI$_RESERVEDEXE36 = 4300; ! Reserved EXE items literal GETSPI$_RESERVEDEXE37 = 4301; ! Reserved EXE items literal GETSPI$_RESERVEDEXE38 = 4302; ! Reserved EXE items literal GETSPI$_RESERVEDEXE39 = 4303; ! Reserved EXE items literal GETSPI$_RESERVEDEXE40 = 4304; ! Reserved EXE items literal GETSPI$_RESERVEDEXE41 = 4305; ! Reserved EXE items literal GETSPI$_RESERVEDEXE42 = 4306; ! Reserved EXE items literal GETSPI$_RESERVEDEXE43 = 4307; ! Reserved EXE items literal GETSPI$_RESERVEDEXE44 = 4308; ! Reserved EXE items literal GETSPI$_RESERVEDEXE45 = 4309; ! Reserved EXE items literal GETSPI$_RESERVEDEXE46 = 4310; ! Reserved EXE items literal GETSPI$_RESERVEDEXE47 = 4311; ! Reserved EXE items literal GETSPI$_RESERVEDEXE48 = 4312; ! Reserved EXE items literal GETSPI$_RESERVEDEXE49 = 4313; ! Reserved EXE items literal GETSPI$_RESERVEDEXE50 = 4314; ! Reserved EXE items literal GETSPI$_RESERVEDEXE51 = 4315; ! Reserved EXE items literal GETSPI$_RESERVEDEXE52 = 4316; ! Reserved EXE items literal GETSPI$_RESERVEDEXE53 = 4317; ! Reserved EXE items literal GETSPI$_RESERVEDEXE54 = 4318; ! Reserved EXE items literal GETSPI$_RESERVEDEXE55 = 4319; ! Reserved EXE items literal GETSPI$_RESERVEDEXE56 = 4320; ! Reserved EXE items literal GETSPI$_RESERVEDEXE57 = 4321; ! Reserved EXE items literal GETSPI$_RESERVEDEXE58 = 4322; ! Reserved EXE items literal GETSPI$_RESERVEDEXE59 = 4323; ! Reserved EXE items literal GETSPI$_RESERVEDEXE60 = 4324; ! Reserved EXE items literal GETSPI$_RESERVEDEXE61 = 4325; ! Reserved EXE items literal GETSPI$_RESERVEDEXE62 = 4326; ! Reserved EXE items literal GETSPI$_RESERVEDEXE63 = 4327; ! Reserved EXE items literal GETSPI$_RESERVEDEXE64 = 4328; ! Reserved EXE items literal GETSPI$_RESERVEDEXE65 = 4329; ! Reserved EXE items literal GETSPI$_RESERVEDEXE66 = 4330; ! Reserved EXE items literal GETSPI$_RESERVEDEXE67 = 4331; ! Reserved EXE items literal GETSPI$_RESERVEDEXE68 = 4332; ! Reserved EXE items literal GETSPI$_RESERVEDEXE69 = 4333; ! Reserved EXE items literal GETSPI$_RESERVEDEXE70 = 4334; ! Reserved EXE items literal GETSPI$_RESERVEDEXE71 = 4335; ! Reserved EXE items literal GETSPI$_LASTEXE = 4336; ! Last item in the EXE table ! ! These next items are located in an executive writable page in memory ! literal GETSPI$_ACCESS = 8432; ! number of file accesses literal GETSPI$_ALLOC = 8433; ! number of file extends literal GETSPI$_FCPCREATE = 8434; ! number of file creations literal GETSPI$_VOLWAIT = 8435; ! # of times XQP waited for volume lock literal GETSPI$_FCPTURN = 8436; ! number of window turns literal GETSPI$_FCPERASE = 8437; ! number of erase calls literal GETSPI$_OPENS = 8438; ! number of file opens literal GETSPI$_FIDHIT = 8439; ! count of File Id cache hits literal GETSPI$_FIDMISS = 8440; ! count of File Id cache misses literal GETSPI$_FILHDR_HIT = 8441; ! count of File header cache hits literal GETSPI$_DIRFCB_HIT = 8442; ! count of Directory block cache hits literal GETSPI$_DIRFCB_MISS = 8443; ! count of Directory block cache misses literal GETSPI$_DIRDATA_HIT = 8444; ! count of Directory data cache hits literal GETSPI$_EXTHIT = 8445; ! count of Extent cache hits literal GETSPI$_EXTMISS = 8446; ! count of Extent cache misses literal GETSPI$_QUOHIT = 8447; ! count of Quota cache hits literal GETSPI$_QUOMISS = 8448; ! count of Quota cache misses literal GETSPI$_STORAGMAP_HIT = 8449; ! count of storage bitmap cache hits literal GETSPI$_VOLLCK = 8450; ! Volume synch locks literal GETSPI$_SYNCHLCK = 8451; ! directory and file synch locks literal GETSPI$_SYNCHWAIT = 8452; ! # of times XQP waited for a directory or file synch lock literal GETSPI$_ACCLCK = 8453; ! access locks literal GETSPI$_XQPCACHEWAIT = 8454; ! # of times XQP had to wait for free space in a cache literal GETSPI$_RESERVEDEWS1 = 8455; ! Reserved EWS items literal GETSPI$_RESERVEDEWS2 = 8456; ! Reserved EWS items literal GETSPI$_RESERVEDEWS3 = 8457; ! Reserved EWS items literal GETSPI$_RESERVEDEWS4 = 8458; ! Reserved EWS items literal GETSPI$_RESERVEDEWS5 = 8459; ! Reserved EWS items literal GETSPI$_RESERVEDEWS6 = 8460; ! Reserved EWS items literal GETSPI$_RESERVEDEWS7 = 8461; ! Reserved EWS items literal GETSPI$_RESERVEDEWS8 = 8462; ! Reserved EWS items literal GETSPI$_RESERVEDEWS9 = 8463; ! Reserved EWS items literal GETSPI$_RESERVEDEWS10 = 8464; ! Reserved EWS items literal GETSPI$_RESERVEDEWS11 = 8465; ! Reserved EWS items literal GETSPI$_RESERVEDEWS12 = 8466; ! Reserved EWS items literal GETSPI$_RESERVEDEWS13 = 8467; ! Reserved EWS items literal GETSPI$_RESERVEDEWS14 = 8468; ! Reserved EWS items literal GETSPI$_RESERVEDEWS15 = 8469; ! Reserved EWS items literal GETSPI$_RESERVEDEWS16 = 8470; ! Reserved EWS items literal GETSPI$_RESERVEDEWS17 = 8471; ! Reserved EWS items literal GETSPI$_RESERVEDEWS18 = 8472; ! Reserved EWS items literal GETSPI$_RESERVEDEWS19 = 8473; ! Reserved EWS items literal GETSPI$_RESERVEDEWS20 = 8474; ! Reserved EWS items literal GETSPI$_RESERVEDEWS21 = 8475; ! Reserved EWS items literal GETSPI$_RESERVEDEWS22 = 8476; ! Reserved EWS items literal GETSPI$_RESERVEDEWS23 = 8477; ! Reserved EWS items literal GETSPI$_RESERVEDEWS24 = 8478; ! Reserved EWS items literal GETSPI$_RESERVEDEWS25 = 8479; ! Reserved EWS items literal GETSPI$_RESERVEDEWS26 = 8480; ! Reserved EWS items literal GETSPI$_RESERVEDEWS27 = 8481; ! Reserved EWS items literal GETSPI$_RESERVEDEWS28 = 8482; ! Reserved EWS items literal GETSPI$_RESERVEDEWS29 = 8483; ! Reserved EWS items literal GETSPI$_RESERVEDEWS30 = 8484; ! Reserved EWS items literal GETSPI$_RESERVEDEWS31 = 8485; ! Reserved EWS items literal GETSPI$_RESERVEDEWS32 = 8486; ! Reserved EWS items literal GETSPI$_RESERVEDEWS33 = 8487; ! Reserved EWS items literal GETSPI$_RESERVEDEWS34 = 8488; ! Reserved EWS items literal GETSPI$_RESERVEDEWS35 = 8489; ! Reserved EWS items literal GETSPI$_RESERVEDEWS36 = 8490; ! Reserved EWS items literal GETSPI$_RESERVEDEWS37 = 8491; ! Reserved EWS items literal GETSPI$_RESERVEDEWS38 = 8492; ! Reserved EWS items literal GETSPI$_RESERVEDEWS39 = 8493; ! Reserved EWS items literal GETSPI$_RESERVEDEWS40 = 8494; ! Reserved EWS items literal GETSPI$_RESERVEDEWS41 = 8495; ! Reserved EWS items literal GETSPI$_RESERVEDEWS42 = 8496; ! Reserved EWS items literal GETSPI$_RESERVEDEWS43 = 8497; ! Reserved EWS items literal GETSPI$_RESERVEDEWS44 = 8498; ! Reserved EWS items literal GETSPI$_RESERVEDEWS45 = 8499; ! Reserved EWS items literal GETSPI$_RESERVEDEWS46 = 8500; ! Reserved EWS items literal GETSPI$_RESERVEDEWS47 = 8501; ! Reserved EWS items literal GETSPI$_RESERVEDEWS48 = 8502; ! Reserved EWS items literal GETSPI$_RESERVEDEWS49 = 8503; ! Reserved EWS items literal GETSPI$_RESERVEDEWS50 = 8504; ! Reserved EWS items literal GETSPI$_RESERVEDEWS51 = 8505; ! Reserved EWS items literal GETSPI$_RESERVEDEWS52 = 8506; ! Reserved EWS items literal GETSPI$_RESERVEDEWS53 = 8507; ! Reserved EWS items literal GETSPI$_RESERVEDEWS54 = 8508; ! Reserved EWS items literal GETSPI$_RESERVEDEWS55 = 8509; ! Reserved EWS items literal GETSPI$_RESERVEDEWS56 = 8510; ! Reserved EWS items literal GETSPI$_RESERVEDEWS57 = 8511; ! Reserved EWS items literal GETSPI$_RESERVEDEWS58 = 8512; ! Reserved EWS items literal GETSPI$_RESERVEDEWS59 = 8513; ! Reserved EWS items literal GETSPI$_RESERVEDEWS60 = 8514; ! Reserved EWS items literal GETSPI$_RESERVEDEWS61 = 8515; ! Reserved EWS items literal GETSPI$_RESERVEDEWS62 = 8516; ! Reserved EWS items literal GETSPI$_RESERVEDEWS63 = 8517; ! Reserved EWS items literal GETSPI$_RESERVEDEWS64 = 8518; ! Reserved EWS items literal GETSPI$_RESERVEDEWS65 = 8519; ! Reserved EWS items literal GETSPI$_RESERVEDEWS66 = 8520; ! Reserved EWS items literal GETSPI$_RESERVEDEWS67 = 8521; ! Reserved EWS items literal GETSPI$_RESERVEDEWS68 = 8522; ! Reserved EWS items literal GETSPI$_RESERVEDEWS69 = 8523; ! Reserved EWS items literal GETSPI$_RESERVEDEWS70 = 8524; ! Reserved EWS items literal GETSPI$_RESERVEDEWS71 = 8525; ! Reserved EWS items literal GETSPI$_RESERVEDEWS72 = 8526; ! Reserved EWS items literal GETSPI$_RESERVEDEWS73 = 8527; ! Reserved EWS items literal GETSPI$_RESERVEDEWS74 = 8528; ! Reserved EWS items literal GETSPI$_RESERVEDEWS75 = 8529; ! Reserved EWS items literal GETSPI$_RESERVEDEWS76 = 8530; ! Reserved EWS items literal GETSPI$_RESERVEDEWS77 = 8531; ! Reserved EWS items literal GETSPI$_RESERVEDEWS78 = 8532; ! Reserved EWS items literal GETSPI$_RESERVEDEWS79 = 8533; ! Reserved EWS items literal GETSPI$_RESERVEDEWS80 = 8534; ! Reserved EWS items literal GETSPI$_RESERVEDEWS81 = 8535; ! Reserved EWS items literal GETSPI$_RESERVEDEWS82 = 8536; ! Reserved EWS items literal GETSPI$_RESERVEDEWS83 = 8537; ! Reserved EWS items literal GETSPI$_RESERVEDEWS84 = 8538; ! Reserved EWS items literal GETSPI$_RESERVEDEWS85 = 8539; ! Reserved EWS items literal GETSPI$_RESERVEDEWS86 = 8540; ! Reserved EWS items literal GETSPI$_RESERVEDEWS87 = 8541; ! Reserved EWS items literal GETSPI$_RESERVEDEWS88 = 8542; ! Reserved EWS items literal GETSPI$_RESERVEDEWS89 = 8543; ! Reserved EWS items literal GETSPI$_RESERVEDEWS90 = 8544; ! Reserved EWS items literal GETSPI$_RESERVEDEWS91 = 8545; ! Reserved EWS items literal GETSPI$_RESERVEDEWS92 = 8546; ! Reserved EWS items literal GETSPI$_RESERVEDEWS93 = 8547; ! Reserved EWS items literal GETSPI$_RESERVEDEWS94 = 8548; ! Reserved EWS items literal GETSPI$_RESERVEDEWS95 = 8549; ! Reserved EWS items literal GETSPI$_RESERVEDEWS96 = 8550; ! Reserved EWS items literal GETSPI$_RESERVEDEWS97 = 8551; ! Reserved EWS items literal GETSPI$_RESERVEDEWS98 = 8552; ! Reserved EWS items literal GETSPI$_RESERVEDEWS99 = 8553; ! Reserved EWS items literal GETSPI$_RESERVEDEWS100 = 8554; ! Reserved EWS items literal GETSPI$_LASTEWS = 8555; ! Last item in the exec writable table ! ! Begin monitor specific data items. The items listed below are ! NOT collected by the SPI as individual items. Some are NOT collected ! at all but are computed by MONITOR. ! literal GETSPI$_FIDHITPCNT = 12651; ! percentage of file id cache hits/hits+misses literal GETSPI$_FILHDR_HITPCNT = 12652; ! percentage of file header cache hits/hits+misses literal GETSPI$_DIRFCB_HITPCNT = 12653; ! percentage of directory block cache hits/hits+misses literal GETSPI$_DIRDATA_HITPCNT = 12654; ! percentage of directory data cache hits/hits+misses literal GETSPI$_EXTHITPCNT = 12655; ! percentage of extent cache hits/hits+misses literal GETSPI$_QUOHITPCNT = 12656; ! percentage of quota cache hits/hits+misses literal GETSPI$_STORAGMAP_HITPCNT = 12657; ! percentage of storage map cache hits/hits+misses literal GETSPI$_OPCNT = 12658; ! disk io operation count literal GETSPI$_IOQUELEN = 12659; ! disk io queue length literal GETSPI$_IOAQUELEN = 12660; ! Accurate disk io queue length literal GETSPI$_DISKRESPTIM = 12661; ! disk io response time literal GETSPI$_JNLIOCNT = 12662; ! journaling io operation count (for disks) literal GETSPI$_JDNQLEN = 12663; ! jdevice normal io queue length literal GETSPI$_JDWQLEN = 12664; ! jdevice wait irp queue length literal GETSPI$_JDFQLEN = 12665; ! jdevice force io queue length literal GETSPI$_JDEXCNT = 12666; ! jdevice extend count literal GETSPI$_JNLWRTSS = 12667; ! obsolete literal GETSPI$_JNLBUFWR = 12668; ! obsolete literal GETSPI$_DGSENT = 12669; ! SCS application datagrams sent literal GETSPI$_DGRCVD = 12670; ! SCS application datagrams received literal GETSPI$_DGDISCARD = 12671; ! SCS application datagrams discarded literal GETSPI$_MSGSENT = 12672; ! SCS application messages sent literal GETSPI$_MSGRCVD = 12673; ! SCS application messages received literal GETSPI$_SNDATS = 12674; ! SCS block send datas initiated literal GETSPI$_KBYTSENT = 12675; ! SCS kbytes sent via send datas literal GETSPI$_REQDATS = 12676; ! SCS block request datas initiated literal GETSPI$_KBYTREQD = 12677; ! SCS kbytes received via request datas literal GETSPI$_KBYTMAPD = 12678; ! SCS kbytes mapped for block transfer literal GETSPI$_QCR_CNT = 12679; ! SCS times connection queued for send credit literal GETSPI$_QBDT_CNT = 12680; ! SCS times connection queued for buffer descriptor literal GETSPI$_DIRLOOK = 12681; ! directory lookups literal GETSPI$_DIRINS = 12682; ! directory inserts literal GETSPI$_DIRDEL = 12683; ! directory deletes literal GETSPI$_PACKETS = 12684; ! Ethernet packets/second literal GETSPI$_KBYTES = 12685; ! Kbytes/second literal GETSPI$_PACKETSIZE = 12686; ! Packets size (bytes) literal GETSPI$_MPACKETS = 12687; ! Multicast packets/second literal GETSPI$_MKBYTES = 12688; ! Multicast Kbytes/second literal GETSPI$_MPACKETSIZE = 12689; ! Multicast packet size (bytes) literal GETSPI$_SINGLECOLL = 12690; ! Transmit single collision detected literal GETSPI$_MULTICOLL = 12691; ! Transmit multi collisions detected literal GETSPI$_INITDEFER = 12692; ! Transmit initially deferred literal GETSPI$_INTERNALBUFERR = 12693; ! Receive internal buffer error literal GETSPI$_LOCBUFERR = 12694; ! Receive local buffer error literal GETSPI$_BUFFUNAVAIL = 12695; ! System buffer unavailable literal GETSPI$_FILLER = 12696; ! Dummy pad item literal GETSPI$_RESERVEDMON1 = 12697; ! Reserved MON items literal GETSPI$_RESERVEDMON2 = 12698; ! Reserved MON items literal GETSPI$_RESERVEDMON3 = 12699; ! Reserved MON items literal GETSPI$_RESERVEDMON4 = 12700; ! Reserved MON items literal GETSPI$_RESERVEDMON5 = 12701; ! Reserved MON items literal GETSPI$_RESERVEDMON6 = 12702; ! Reserved MON items literal GETSPI$_RESERVEDMON7 = 12703; ! Reserved MON items literal GETSPI$_RESERVEDMON8 = 12704; ! Reserved MON items literal GETSPI$_RESERVEDMON9 = 12705; ! Reserved MON items literal GETSPI$_RESERVEDMON10 = 12706; ! Reserved MON items literal GETSPI$_RESERVEDMON11 = 12707; ! Reserved MON items literal GETSPI$_RESERVEDMON12 = 12708; ! Reserved MON items literal GETSPI$_RESERVEDMON13 = 12709; ! Reserved MON items literal GETSPI$_RESERVEDMON14 = 12710; ! Reserved MON items literal GETSPI$_RESERVEDMON15 = 12711; ! Reserved MON items literal GETSPI$_RESERVEDMON16 = 12712; ! Reserved MON items literal GETSPI$_RESERVEDMON17 = 12713; ! Reserved MON items literal GETSPI$_RESERVEDMON18 = 12714; ! Reserved MON items literal GETSPI$_RESERVEDMON19 = 12715; ! Reserved MON items literal GETSPI$_RESERVEDMON20 = 12716; ! Reserved MON items literal GETSPI$_RESERVEDMON21 = 12717; ! Reserved MON items literal GETSPI$_RESERVEDMON22 = 12718; ! Reserved MON items literal GETSPI$_RESERVEDMON23 = 12719; ! Reserved MON items literal GETSPI$_RESERVEDMON24 = 12720; ! Reserved MON items literal GETSPI$_RESERVEDMON25 = 12721; ! Reserved MON items literal GETSPI$_RESERVEDMON26 = 12722; ! Reserved MON items literal GETSPI$_RESERVEDMON27 = 12723; ! Reserved MON items literal GETSPI$_RESERVEDMON28 = 12724; ! Reserved MON items literal GETSPI$_RESERVEDMON29 = 12725; ! Reserved MON items literal GETSPI$_RESERVEDMON30 = 12726; ! Reserved MON items literal GETSPI$_RESERVEDMON31 = 12727; ! Reserved MON items literal GETSPI$_RESERVEDMON32 = 12728; ! Reserved MON items literal GETSPI$_RESERVEDMON33 = 12729; ! Reserved MON items literal GETSPI$_RESERVEDMON34 = 12730; ! Reserved MON items literal GETSPI$_RESERVEDMON35 = 12731; ! Reserved MON items literal GETSPI$_RESERVEDMON36 = 12732; ! Reserved MON items literal GETSPI$_RESERVEDMON37 = 12733; ! Reserved MON items literal GETSPI$_RESERVEDMON38 = 12734; ! Reserved MON items literal GETSPI$_RESERVEDMON39 = 12735; ! Reserved MON items literal GETSPI$_RESERVEDMON40 = 12736; ! Reserved MON items literal GETSPI$_RESERVEDMON41 = 12737; ! Reserved MON items literal GETSPI$_RESERVEDMON42 = 12738; ! Reserved MON items literal GETSPI$_RESERVEDMON43 = 12739; ! Reserved MON items literal GETSPI$_RESERVEDMON44 = 12740; ! Reserved MON items literal GETSPI$_RESERVEDMON45 = 12741; ! Reserved MON items literal GETSPI$_RESERVEDMON46 = 12742; ! Reserved MON items literal GETSPI$_RESERVEDMON47 = 12743; ! Reserved MON items literal GETSPI$_RESERVEDMON48 = 12744; ! Reserved MON items literal GETSPI$_RESERVEDMON49 = 12745; ! Reserved MON items literal GETSPI$_RESERVEDMON50 = 12746; ! Reserved MON items literal GETSPI$_RESERVEDMON51 = 12747; ! Reserved MON items literal GETSPI$_RESERVEDMON52 = 12748; ! Reserved MON items literal GETSPI$_RESERVEDMON53 = 12749; ! Reserved MON items literal GETSPI$_RESERVEDMON54 = 12750; ! Reserved MON items literal GETSPI$_RESERVEDMON55 = 12751; ! Reserved MON items literal GETSPI$_RESERVEDMON56 = 12752; ! Reserved MON items literal GETSPI$_RESERVEDMON57 = 12753; ! Reserved MON items literal GETSPI$_RESERVEDMON58 = 12754; ! Reserved MON items literal GETSPI$_RESERVEDMON59 = 12755; ! Reserved MON items literal GETSPI$_RESERVEDMON60 = 12756; ! Reserved MON items literal GETSPI$_RESERVEDMON61 = 12757; ! Reserved MON items literal GETSPI$_RESERVEDMON62 = 12758; ! Reserved MON items literal GETSPI$_RESERVEDMON63 = 12759; ! Reserved MON items literal GETSPI$_RESERVEDMON64 = 12760; ! Reserved MON items literal GETSPI$_RESERVEDMON65 = 12761; ! Reserved MON items literal GETSPI$_RESERVEDMON66 = 12762; ! Reserved MON items literal GETSPI$_RESERVEDMON67 = 12763; ! Reserved MON items literal GETSPI$_RESERVEDMON68 = 12764; ! Reserved MON items literal GETSPI$_RESERVEDMON69 = 12765; ! Reserved MON items literal GETSPI$_RESERVEDMON70 = 12766; ! Reserved MON items literal GETSPI$_RESERVEDMON71 = 12767; ! Reserved MON items literal GETSPI$_RESERVEDMON72 = 12768; ! Reserved MON items literal GETSPI$_RESERVEDMON73 = 12769; ! Reserved MON items literal GETSPI$_RESERVEDMON74 = 12770; ! Reserved MON items literal GETSPI$_RESERVEDMON75 = 12771; ! Reserved MON items literal GETSPI$_RESERVEDMON76 = 12772; ! Reserved MON items literal GETSPI$_RESERVEDMON77 = 12773; ! Reserved MON items literal GETSPI$_RESERVEDMON78 = 12774; ! Reserved MON items literal GETSPI$_RESERVEDMON79 = 12775; ! Reserved MON items literal GETSPI$_RESERVEDMON80 = 12776; ! Reserved MON items literal GETSPI$_RESERVEDMON81 = 12777; ! Reserved MON items literal GETSPI$_RESERVEDMON82 = 12778; ! Reserved MON items literal GETSPI$_RESERVEDMON83 = 12779; ! Reserved MON items literal GETSPI$_RESERVEDMON84 = 12780; ! Reserved MON items literal GETSPI$_RESERVEDMON85 = 12781; ! Reserved MON items literal GETSPI$_RESERVEDMON86 = 12782; ! Reserved MON items literal GETSPI$_RESERVEDMON87 = 12783; ! Reserved MON items literal GETSPI$_RESERVEDMON88 = 12784; ! Reserved MON items literal GETSPI$_RESERVEDMON89 = 12785; ! Reserved MON items literal GETSPI$_RESERVEDMON90 = 12786; ! Reserved MON items literal GETSPI$_RESERVEDMON91 = 12787; ! Reserved MON items literal GETSPI$_RESERVEDMON92 = 12788; ! Reserved MON items literal GETSPI$_RESERVEDMON93 = 12789; ! Reserved MON items literal GETSPI$_RESERVEDMON94 = 12790; ! Reserved MON items literal GETSPI$_RESERVEDMON95 = 12791; ! Reserved MON items literal GETSPI$_RESERVEDMON96 = 12792; ! Reserved MON items literal GETSPI$_RESERVEDMON97 = 12793; ! Reserved MON items literal GETSPI$_RESERVEDMON98 = 12794; ! Reserved MON items literal GETSPI$_RESERVEDMON99 = 12795; ! Reserved MON items literal GETSPI$_RESERVEDMON100 = 12796; ! Reserved MON items literal GETSPI$_LASTMON = 12797; ! Last item in the monitor specific table ! ! Begin items specific to the Monitor RMS class. These items are maintained ! by RMS and collected from a global section with the following naming scheme: ! _RMS$xxxxxxxxyyyyyy where x is the volume lock id and y is the fid of the ! file being monitored. ! literal GETSPI$_RMS_STATS = 16893; ! All of the following rms statistics literal GETSPI$_SEQGETS = 16894; ! Total # of sequential gets literal GETSPI$_KEYGETS = 16895; ! Total # of keyed gets literal GETSPI$_RFAGETS = 16896; ! Total # of gets by RFA literal GETSPI$_GETBYTES = 16897; ! Total size in bytes of all GETS literal GETSPI$_SEQPUTS = 16898; ! Total # of sequential puts literal GETSPI$_KEYPUTS = 16899; ! Total # of puts by key literal GETSPI$_PUTBYTES = 16900; ! Total # of bytes put to file literal GETSPI$_UPDATES = 16901; ! Total # of updates to the file literal GETSPI$_UPDATEBYTES = 16902; ! Total # of bytes updated in file literal GETSPI$_DELETES = 16903; ! Total # of deletes to file literal GETSPI$_TRUNCATES = 16904; ! Total # of times file has been truncated literal GETSPI$_TRUNCBLKS = 16905; ! Total # of blocks file has been truncated literal GETSPI$_SEQFINDS = 16906; ! Total # of sequential finds literal GETSPI$_KEYFINDS = 16907; ! Total # of keyed finds literal GETSPI$_RFAFINDS = 16908; ! Total # of RFA finds literal GETSPI$_READS = 16909; ! Total # of $READS literal GETSPI$_READBYTES = 16910; ! Total # of bytes read from $READS literal GETSPI$_CONNECTS = 16911; ! Total connect requests literal GETSPI$_DISCONNECTS = 16912; ! Total disconnect requests literal GETSPI$_EXTENDS = 16913; ! Total extends literal GETSPI$_EXTBLOCKS = 16914; ! Total number of blocks file has been extended literal GETSPI$_FLUSHES = 16915; ! Total number of calls to flush literal GETSPI$_REWINDS = 16916; ! Total number of calls to REWIND literal GETSPI$_WRITES = 16917; ! Total number of calls to $WRITE literal GETSPI$_WRITEBYTES = 16918; ! Total bytes written using $WRITE literal GETSPI$_FLCKENQS = 16919; ! Total number of file lock ENQ's literal GETSPI$_FLCKDEQS = 16920; ! Total number of file lock DEQ's literal GETSPI$_FLCKCNVS = 16921; ! Total number of file lock conversions literal GETSPI$_LBLCKENQS = 16922; ! Total number of local buffer lock ENQ's literal GETSPI$_LBLCKDEQS = 16923; ! Total number of local buffer lock DEQ's literal GETSPI$_LBLCKCNVS = 16924; ! Total number of local buffer lock conversions literal GETSPI$_GBLCKENQS = 16925; ! Total number of global buffer lock ENQ's literal GETSPI$_GBLCKDEQS = 16926; ! Total number of global buffer lock DEQ's literal GETSPI$_GBLCKCNVS = 16927; ! Total number of global buffer lock conversions literal GETSPI$_GSLCKENQS = 16928; ! Total number of global section lock ENQ's literal GETSPI$_GSLCKDEQS = 16929; ! Total number of global section lock DEQ's literal GETSPI$_GSLCKCNVS = 16930; ! Total number of global section lock conversions literal GETSPI$_RLCKENQS = 16931; ! Total number of record lock ENQ's literal GETSPI$_RLCKDEQS = 16932; ! Total number of record lock DEQ's literal GETSPI$_RLCKCNVS = 16933; ! Total number of record lock conversions literal GETSPI$_APPLCKENQS = 16934; ! Total number of append lock ENQ's literal GETSPI$_APPLCKDEQS = 16935; ! Total number of append lock DEQ's literal GETSPI$_APPLCKCNVS = 16936; ! Total number of append lock conversions literal GETSPI$_FLBLKASTS = 16937; ! Total number of file lock blocking ASTs literal GETSPI$_LBLBLKASTS = 16938; ! Total number of local buffer lock blocking ASTs literal GETSPI$_GBLBLKASTS = 16939; ! Total number of global buffer lock blocking ASTs literal GETSPI$_APPBLKASTS = 16940; ! Total number of shared append lock blocking ASTs literal GETSPI$_LCACHEHITS = 16941; ! Total cache hits on buckets in local buffers literal GETSPI$_LCACHETRIES = 16942; ! Total cache attempts on buckets in local buffers literal GETSPI$_GCACHEHITS = 16943; ! Total cache hits on buckets in global buffers literal GETSPI$_GCACHETRIES = 16944; ! Total cache attempts on buckets in global buffers literal GETSPI$_GBRDIRIOS = 16945; ! Total direct IO's causes by global buffer cache reads literal GETSPI$_GBWDIRIOS = 16946; ! Total direct IO's causes by global buffer cache writes literal GETSPI$_LBRDIRIOS = 16947; ! Total direct IO's causes by local buffer cache reads literal GETSPI$_LBWDIRIOS = 16948; ! Total direct IO's causes by local buffer cache writes literal GETSPI$_BKTSPLT = 16949; ! Total number of 2 bucket splits done for this file literal GETSPI$_MBKTSPLT = 16950; ! Total number of multi-bucket splits done for this file literal GETSPI$_RMSOPENS = 16951; ! Total number of times file has been opened literal GETSPI$_CLOSES = 16952; ! Total number of times file has been closed literal GETSPI$_GSBLKASTS = 16953; ! Global Section Blocking ASTS literal GETSPI$_FLWAITS = 16954; ! File lock ENQs forced to wait literal GETSPI$_LBWAITS = 16955; ! Local buffer ENQs forced to wait literal GETSPI$_GBWAITS = 16956; ! Global buffer ENQs forced to wait literal GETSPI$_GSWAITS = 16957; ! Global section ENQs forced to wait literal GETSPI$_RLWAITS = 16958; ! Record lock ENQs forced to wait literal GETSPI$_APWAITS = 16959; ! Append lock ENQs forced to wait literal GETSPI$_TOTWAITS = 16960; ! Total ENQs forced to wait literal GETSPI$_OUTBUFQUO = 16961; ! Number of times a process runs out of buffer quota literal GETSPI$_RMSDEV1 = 16962; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV2 = 16963; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV3 = 16964; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV4 = 16965; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV5 = 16966; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV6 = 16967; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV7 = 16968; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV8 = 16969; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV9 = 16970; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV10 = 16971; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV11 = 16972; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV12 = 16973; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV13 = 16974; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV14 = 16975; ! Reserved for RMS development private monitoring literal GETSPI$_RMSDEV15 = 16976; ! Reserved for RMS development private monitoring literal GETSPI$_XQPQIOS = 16977; ! Number of XQP operations for this file by RMS literal GETSPI$_LCACHEHITPCNT = 16978; ! Local RMS buffer hit percent literal GETSPI$_GCACHEHITPCNT = 16979; ! Global RMS buffer hit percent literal GETSPI$_TOTALGET = 16980; ! Total $GET call rate literal GETSPI$_TOTALPUT = 16981; ! Total $PUT call rate literal GETSPI$_TOTALFIND = 16982; ! Total $FIND call rate literal GETSPI$_BYTESGET = 16983; ! Bytes per $GET literal GETSPI$_BYTESPUT = 16984; ! Bytes per $PUT literal GETSPI$_BYTESUPDATE = 16985; ! Bytes per $UPDATE literal GETSPI$_BYTESREAD = 16986; ! Bytes per $READ literal GETSPI$_BYTESWRITE = 16987; ! Bytes per $WRITE literal GETSPI$_BLOCKSTRUNCATE = 16988; ! Bytes per $TRUNCATE literal GETSPI$_BLOCKSEXTEND = 16989; ! Bytes per $EXTEND literal GETSPI$_ACTIVE_STREAMS = 16990; ! Active connects to file literal GETSPI$_TOTAL_ENQS = 16991; ! Total new ENQs literal GETSPI$_TOTAL_DEQS = 16992; ! Total DEQs literal GETSPI$_TOTAL_CNVS = 16993; ! Total ENQ conversions literal GETSPI$_TOTAL_BLKAST = 16994; ! Total blocking ASTs literal GETSPI$_RMS_ORG = 16995; ! RMS File org literal GETSPI$_INTCOL_HSHTBL = 16996; ! Interlock collision on global buffer hash table literal GETSPI$_INTCOL_GBH = 16997; ! Interlock Collision on global buffer header literal GETSPI$_INTRES_SETIMR = 16998; ! Interlock Collision resolved by call to $SETIMR literal GETSPI$_INTNOTRES = 16999; ! Interlock collision not resolved by call to $SETIMR literal GETSPI$_RESERVEDRMS5 = 17000; ! Reserved RMS items literal GETSPI$_RESERVEDRMS6 = 17001; ! Reserved RMS items literal GETSPI$_RESERVEDRMS7 = 17002; ! Reserved RMS items literal GETSPI$_RESERVEDRMS8 = 17003; ! Reserved RMS items literal GETSPI$_RESERVEDRMS9 = 17004; ! Reserved RMS items literal GETSPI$_RESERVEDRMS10 = 17005; ! Reserved RMS items literal GETSPI$_RESERVEDRMS11 = 17006; ! Reserved RMS items literal GETSPI$_RESERVEDRMS12 = 17007; ! Reserved RMS items literal GETSPI$_RESERVEDRMS13 = 17008; ! Reserved RMS items literal GETSPI$_RESERVEDRMS14 = 17009; ! Reserved RMS items literal GETSPI$_RESERVEDRMS15 = 17010; ! Reserved RMS items literal GETSPI$_RESERVEDRMS16 = 17011; ! Reserved RMS items literal GETSPI$_RESERVEDRMS17 = 17012; ! Reserved RMS items literal GETSPI$_RESERVEDRMS18 = 17013; ! Reserved RMS items literal GETSPI$_RESERVEDRMS19 = 17014; ! Reserved RMS items literal GETSPI$_RESERVEDRMS20 = 17015; ! Reserved RMS items literal GETSPI$_RESERVEDRMS21 = 17016; ! Reserved RMS items literal GETSPI$_RESERVEDRMS22 = 17017; ! Reserved RMS items literal GETSPI$_RESERVEDRMS23 = 17018; ! Reserved RMS items literal GETSPI$_RESERVEDRMS24 = 17019; ! Reserved RMS items literal GETSPI$_RESERVEDRMS25 = 17020; ! Reserved RMS items literal GETSPI$_RESERVEDRMS26 = 17021; ! Reserved RMS items literal GETSPI$_RESERVEDRMS27 = 17022; ! Reserved RMS items literal GETSPI$_RESERVEDRMS28 = 17023; ! Reserved RMS items literal GETSPI$_RESERVEDRMS29 = 17024; ! Reserved RMS items literal GETSPI$_RESERVEDRMS30 = 17025; ! Reserved RMS items literal GETSPI$_RESERVEDRMS31 = 17026; ! Reserved RMS items literal GETSPI$_RESERVEDRMS32 = 17027; ! Reserved RMS items literal GETSPI$_RESERVEDRMS33 = 17028; ! Reserved RMS items literal GETSPI$_RESERVEDRMS34 = 17029; ! Reserved RMS items literal GETSPI$_RESERVEDRMS35 = 17030; ! Reserved RMS items literal GETSPI$_RESERVEDRMS36 = 17031; ! Reserved RMS items literal GETSPI$_RESERVEDRMS37 = 17032; ! Reserved RMS items literal GETSPI$_RESERVEDRMS38 = 17033; ! Reserved RMS items literal GETSPI$_RESERVEDRMS39 = 17034; ! Reserved RMS items literal GETSPI$_RESERVEDRMS40 = 17035; ! Reserved RMS items literal GETSPI$_RESERVEDRMS41 = 17036; ! Reserved RMS items literal GETSPI$_RESERVEDRMS42 = 17037; ! Reserved RMS items literal GETSPI$_RESERVEDRMS43 = 17038; ! Reserved RMS items literal GETSPI$_RESERVEDRMS44 = 17039; ! Reserved RMS items literal GETSPI$_RESERVEDRMS45 = 17040; ! Reserved RMS items literal GETSPI$_RESERVEDRMS46 = 17041; ! Reserved RMS items literal GETSPI$_RESERVEDRMS47 = 17042; ! Reserved RMS items literal GETSPI$_RESERVEDRMS48 = 17043; ! Reserved RMS items literal GETSPI$_RESERVEDRMS49 = 17044; ! Reserved RMS items literal GETSPI$_RESERVEDRMS50 = 17045; ! Reserved RMS items literal GETSPI$_RESERVEDRMS51 = 17046; ! Reserved RMS items literal GETSPI$_RESERVEDRMS52 = 17047; ! Reserved RMS items literal GETSPI$_RESERVEDRMS53 = 17048; ! Reserved RMS items literal GETSPI$_RESERVEDRMS54 = 17049; ! Reserved RMS items literal GETSPI$_RESERVEDRMS55 = 17050; ! Reserved RMS items literal GETSPI$_RESERVEDRMS56 = 17051; ! Reserved RMS items literal GETSPI$_RESERVEDRMS57 = 17052; ! Reserved RMS items literal GETSPI$_RESERVEDRMS58 = 17053; ! Reserved RMS items literal GETSPI$_RESERVEDRMS59 = 17054; ! Reserved RMS items literal GETSPI$_RESERVEDRMS60 = 17055; ! Reserved RMS items literal GETSPI$_RESERVEDRMS61 = 17056; ! Reserved RMS items literal GETSPI$_RESERVEDRMS62 = 17057; ! Reserved RMS items literal GETSPI$_RESERVEDRMS63 = 17058; ! Reserved RMS items literal GETSPI$_RESERVEDRMS64 = 17059; ! Reserved RMS items literal GETSPI$_RESERVEDRMS65 = 17060; ! Reserved RMS items literal GETSPI$_RESERVEDRMS66 = 17061; ! Reserved RMS items literal GETSPI$_RESERVEDRMS67 = 17062; ! Reserved RMS items literal GETSPI$_RESERVEDRMS68 = 17063; ! Reserved RMS items literal GETSPI$_RESERVEDRMS69 = 17064; ! Reserved RMS items literal GETSPI$_RESERVEDRMS70 = 17065; ! Reserved RMS items literal GETSPI$_RESERVEDRMS71 = 17066; ! Reserved RMS items literal GETSPI$_RESERVEDRMS72 = 17067; ! Reserved RMS items literal GETSPI$_RESERVEDRMS73 = 17068; ! Reserved RMS items literal GETSPI$_RESERVEDRMS74 = 17069; ! Reserved RMS items literal GETSPI$_RESERVEDRMS75 = 17070; ! Reserved RMS items literal GETSPI$_RESERVEDRMS76 = 17071; ! Reserved RMS items literal GETSPI$_RESERVEDRMS77 = 17072; ! Reserved RMS items literal GETSPI$_RESERVEDRMS78 = 17073; ! Reserved RMS items literal GETSPI$_RESERVEDRMS79 = 17074; ! Reserved RMS items literal GETSPI$_RESERVEDRMS80 = 17075; ! Reserved RMS items literal GETSPI$_RESERVEDRMS81 = 17076; ! Reserved RMS items literal GETSPI$_RESERVEDRMS82 = 17077; ! Reserved RMS items literal GETSPI$_RESERVEDRMS83 = 17078; ! Reserved RMS items literal GETSPI$_RESERVEDRMS84 = 17079; ! Reserved RMS items literal GETSPI$_RESERVEDRMS85 = 17080; ! Reserved RMS items literal GETSPI$_RESERVEDRMS86 = 17081; ! Reserved RMS items literal GETSPI$_RESERVEDRMS87 = 17082; ! Reserved RMS items literal GETSPI$_RESERVEDRMS88 = 17083; ! Reserved RMS items literal GETSPI$_RESERVEDRMS89 = 17084; ! Reserved RMS items literal GETSPI$_RESERVEDRMS90 = 17085; ! Reserved RMS items literal GETSPI$_RESERVEDRMS91 = 17086; ! Reserved RMS items literal GETSPI$_RESERVEDRMS92 = 17087; ! Reserved RMS items literal GETSPI$_RESERVEDRMS93 = 17088; ! Reserved RMS items literal GETSPI$_RESERVEDRMS94 = 17089; ! Reserved RMS items literal GETSPI$_RESERVEDRMS95 = 17090; ! Reserved RMS items literal GETSPI$_RESERVEDRMS96 = 17091; ! Reserved RMS items literal GETSPI$_RESERVEDRMS97 = 17092; ! Reserved RMS items literal GETSPI$_RESERVEDRMS98 = 17093; ! Reserved RMS items literal GETSPI$_RESERVEDRMS99 = 17094; ! Reserved RMS items literal GETSPI$_RESERVEDRMS100 = 17095; ! Reserved RMS items literal GETSPI$_LASTRMS = 17096; ! Last item in the monitor specific table ! ! Add new data items specific to MONITOR (not collected by the SPI on a per ! item basis) above this point. ! literal GETSPI$_TABLESIZE = 712; literal GETSPI$S_getspi$scs_offsets = 56; ! SCS class information macro GETSPI$q_scs_nodename = 0,0,0,1 %; literal GETSPI$s_scs_nodename = 8; ! System node name macro GETSPI$l_scs_dgsent = 8,0,32,1 %; ! Application datagrams sent macro GETSPI$l_scs_dgrcvd = 12,0,32,1 %; ! Application datagrams received macro GETSPI$l_scs_dgdiscard = 16,0,32,1 %; ! Application datagrams discarded macro GETSPI$l_scs_msgsent = 20,0,32,1 %; ! Application messages sent macro GETSPI$l_scs_msgrcvd = 24,0,32,1 %; ! Application messages received macro GETSPI$l_scs_snddats = 28,0,32,1 %; ! Block send datas initiated macro GETSPI$l_scs_kbytsent = 32,0,32,1 %; ! Kbytes sent via send datas macro GETSPI$l_scs_reqdats = 36,0,32,1 %; ! Block request datas initiated macro GETSPI$l_scs_kbytreqd = 40,0,32,1 %; ! Kbytes received via request datas macro GETSPI$l_scs_kbytmapd = 44,0,32,1 %; ! Kbytes mapped for block transfers macro GETSPI$l_scs_qcr_cnt = 48,0,32,1 %; ! Times connection queued for send credit macro GETSPI$l_scs_qbdt_cnt = 52,0,32,1 %; ! Times connection queued for buffer descriptor literal GETSPI$c_scs_minsize = 56; ! Size of one collection block for scs class literal GETSPI$S_getspi$disk_offsets = 37; ! DISK class information for ! the current revision level macro GETSPI$w_disk_alloclass = 0,0,16,1 %; ! Allocation class macro GETSPI$l_disk_devname = 2,0,32,1 %; ! Device name macro GETSPI$w_disk_unitnum = 6,0,16,1 %; ! Unit number macro GETSPI$b_disk_flags = 8,0,8,1 %; ! Flags byte (low bit indicates served disk macro GETSPI$q_disk_nodename = 9,0,0,1 %; literal GETSPI$s_disk_nodename = 8; ! Nodename macro GETSPI$q_disk_volnamel = 17,0,0,1 %; literal GETSPI$s_disk_volnamel = 8; ! Volume name (low) macro GETSPI$l_disk_volnameh = 25,0,32,1 %; ! Volume name (high) macro GETSPI$l_disk_optcnt = 29,0,32,1 %; ! Operation count macro GETSPI$l_disk_qcount = 33,0,32,1 %; ! Queue length accumulator literal GETSPI$c_disk_minsize = 37; ! Size of one block literal GETSPI$S_getspi$disk_offsets_rev4 = 36; ! DISK class information ! for "revision level 4" macro GETSPI$b_disk_alloclass_rev4 = 0,0,8,1 %; ! Allocation class macro GETSPI$l_disk_devname_rev4 = 1,0,32,1 %; ! Device name macro GETSPI$w_disk_unitnum_rev4 = 5,0,16,1 %; ! Unit number macro GETSPI$b_disk_flags_rev4 = 7,0,8,1 %; ! Flags byte (low bit indicates served disk macro GETSPI$q_disk_nodename_rev4 = 8,0,0,1 %; literal GETSPI$s_disk_nodename_rev4 = 8; ! Nodename macro GETSPI$q_disk_volnamel_rev4 = 16,0,0,1 %; literal GETSPI$s_disk_volnamel_rev4 = 8; ! Volume name (low) macro GETSPI$l_disk_volnameh_rev4 = 24,0,32,1 %; ! Volume name (high) macro GETSPI$l_disk_optcnt_rev4 = 28,0,32,1 %; ! Operation count macro GETSPI$l_disk_qcount_rev4 = 32,0,32,1 %; ! Queue length accumulator literal GETSPI$c_disk_minsize_rev4 = 36; ! Size of one block literal GETSPI$S_getspi$proc_class = 67; ! PROCESSES Class Data Block macro GETSPI$l_proc_ipid = 0,0,32,1 %; ! Internal PID macro GETSPI$l_proc_uic = 4,0,32,1 %; ! UIC (Member is low-order word) macro GETSPI$w_proc_state = 8,0,16,1 %; ! State value macro GETSPI$b_proc_pri = 10,0,8,1 %; ! Priority (negative value) macro GETSPI$o_proc_lname = 11,0,0,1 %; literal GETSPI$s_proc_lname = 16; ! Process name (counted string) macro GETSPI$l_proc_gpgcnt = 27,0,32,1 %; ! Global page count macro GETSPI$l_proc_ppgcnt = 31,0,32,1 %; ! Process page count macro GETSPI$l_proc_sts = 35,0,32,1 %; ! PCB Status Vector ! (PCB$V_RES bit clear => swapped out) macro GETSPI$l_proc_diocnt = 39,0,32,1 %; ! Direct I/O count macro GETSPI$l_proc_pageflts = 43,0,32,1 %; ! Page fault count macro GETSPI$l_proc_cputim = 47,0,32,1 %; ! Accumulated CPU time (in ticks) macro GETSPI$l_proc_biocnt = 51,0,32,1 %; ! Buffered I/O count macro GETSPI$l_proc_epid = 55,0,32,1 %; ! Extended PID macro GETSPI$l_proc_efwm = 59,0,32,1 %; ! Event flag wait mask (for MWAITs) macro GETSPI$l_proc_rbstran = 63,0,32,1 %; ! Real balance slot transitions ! Size of process data block literal GETSPI$c_proc_minsize = 67; !*** MODULE $GLOCKDEF *** literal glock$c_nowait = 1; ! $acquire_lock will not auto-wait literal glock$c_nospin = 2; ! $acquire_lock will not spin literal glock$c_nobreak = 4; ! $acquire_lock will not break lock ownership literal glock$c_auto_wait = 8; ! kernel mode code waints an automatic wait literal glock$c_num_nodes = 64; ! max number of gnodes supported literal glcktbl$c_process = 0; ! lock region is mapped in P2 space literal glcktbl$c_system = 1; ! lock region is mapped in S2 space literal glcktbl$c_private = 2; ! lock region is pre-allocated literal glock_hist$S_glock_hist = 12; macro glock_hist$l_pc = 0,0,32,1 %; macro glock_hist$q_lock = 4,0,0,0 %; literal glock_hist$s_lock = 8; literal glock_hist$c_entries = 10; literal glock$m_owned = %X'1'; literal glock$m_broken = %X'2'; literal glock$m_waiters = %X'4'; literal glock$m_process = %X'8'; literal glock$m_reserved_4_7 = %X'F0'; literal glock$m_owner_count = %X'FF00'; literal glock$m_node = %X'FF0000'; literal glock$m_node_seq = %X'FFFF000000'; literal glock$m_owner = %X'FFFFFF0000000000'; literal glock$S_GLOCK = 192; macro glock$l_flink = 0,0,32,0 %; ! Forward link (lock handle) macro glock$l_spare1 = 4,0,32,0 %; ! not used macro glock$w_size = 8,0,16,0 %; ! size of structure macro glock$b_type = 10,0,8,0 %; ! Structure type macro glock$b_subtype = 11,0,8,0 %; ! subtype macro glock$b_ipl = 12,0,8,0 %; ! IPL to raise to on acquire macro glock$b_prev_ipl = 13,0,8,0 %; ! IPL to lower to on release macro glock$b_rank = 14,0,8,0 %; ! Rank of lock macro glock$b_spare2 = 15,0,8,0 %; ! not used macro glock$q_lock = 16,0,0,0 %; literal glock$s_lock = 8; ! the lock macro glock$b_flags = 16,0,8,0 %; literal glock$s_flags = 8; ! lock flags macro glock$v_owned = 16,0,1,0 %; ! lock is owned macro glock$v_broken = 16,1,1,0 %; ! lock ownership is broken macro glock$v_waiters = 16,2,1,0 %; ! there are waiters macro glock$v_process = 16,3,1,0 %; ! lock is owned in process context macro glock$v_reserved_4_7 = 16,4,4,0 %; literal glock$s_reserved_4_7 = 4; ! the unused bits macro glock$b_owner_count = 16,8,8,0 %; literal glock$s_owner_count = 8; ! nested owner count macro glock$b_node = 16,16,8,0 %; literal glock$s_node = 8; ! node where lock is owned macro glock$w_node_seq = 16,24,16,0 %; literal glock$s_node_seq = 16; ! node sequence number macro glock$v_owner = 20,8,24,0 %; literal glock$s_owner = 24; ! owner EPID or CPU # macro glock$q_thread_id = 24,0,0,0 %; literal glock$s_thread_id = 8; ! thread id of lock owner macro glock$q_waiters = 32,0,0,0 %; literal glock$s_waiters = 8; ! bitmask of waiters macro glock$l_timeout = 40,0,32,0 %; ! wait timeout macro glock$t_name = 44,0,0,0 %; literal glock$s_name = 16; ! lock name macro glock$l_spare4 = 60,0,32,0 %; ! not used macro glock$l_spare5 = 64,0,32,0 %; ! not used macro glock$l_history_idx = 68,0,32,0 %; ! next history longword to be used macro glock$r_history = 72,0,0,0 %; literal glock$s_history = 120; ! acquire - release history literal glock$c_length = 64; ! Length literal glock$k_length = 64; ! Length literal glock$c_max_length = 192; ! max length literal glock$k_max_length = 192; ! max length literal glock_lock$m_owned = %X'1'; literal glock_lock$m_broken = %X'2'; literal glock_lock$m_waiters = %X'4'; literal glock_lock$m_process = %X'8'; literal glock_lock$m_reserved_4_7 = %X'F0'; literal glock_lock$m_owner_count = %X'FF00'; literal glock_lock$m_node = %X'FF0000'; literal glock_lock$m_node_seq = %X'FFFF000000'; literal glock_lock$m_owner = %X'FFFFFF0000000000'; literal glock_lock$S_glock_lock = 8; macro glock_lock$q_lock = 0,0,0,0 %; literal glock_lock$s_lock = 8; ! the lock macro glock_lock$b_flags = 0,0,8,0 %; literal glock_lock$s_flags = 8; ! lock flags macro glock_lock$v_owned = 0,0,1,0 %; ! lock is owned macro glock_lock$v_broken = 0,1,1,0 %; ! lock ownership is broken macro glock_lock$v_waiters = 0,2,1,0 %; ! there are waiters macro glock_lock$v_process = 0,3,1,0 %; ! lock is owned in process context macro glock_lock$v_reserved_4_7 = 0,4,4,0 %; literal glock_lock$s_reserved_4_7 = 4; ! the unused bits macro glock_lock$b_owner_count = 0,8,8,0 %; literal glock_lock$s_owner_count = 8; ! nested owner count macro glock_lock$b_node = 0,16,8,0 %; literal glock_lock$s_node = 8; ! node where lock is owned macro glock_lock$w_node_seq = 0,24,16,0 %; literal glock_lock$s_node_seq = 16; ! node sequence number macro glock_lock$v_owner = 4,8,24,0 %; literal glock_lock$s_owner = 24; ! owner EPID or CPU # literal glcktbl$m_valid = %X'1'; literal glcktbl$m_private = %X'2'; literal glcktbl$m_space = %X'4'; literal glcktbl$m_reserved_3_7 = %X'F8'; literal glcktbl$S_GLCKTBL = 256; macro glcktbl$l_flink = 0,0,32,0 %; ! Forward link (region offset) macro glcktbl$w_lock_size = 4,0,16,0 %; ! size of locks for the table macro glcktbl$b_flags = 6,0,8,0 %; ! lock table flags macro glcktbl$v_valid = 6,0,1,0 %; ! lock table is valid macro glcktbl$v_private = 6,1,1,0 %; ! user allocated lock memory macro glcktbl$v_space = 6,2,1,0 %; ! clear for process, set for system macro glcktbl$v_reserved_3_7 = 6,3,5,0 %; literal glcktbl$s_reserved_3_7 = 5; ! the unused bits macro glcktbl$b_accmode = 7,0,8,0 %; ! access mode of global section macro glcktbl$q_reg_id = 8,0,0,0 %; literal glcktbl$s_reg_id = 8; ! ID of shared memory region macro glcktbl$q_reg_phys_size = 16,0,0,0 %; literal glcktbl$s_reg_phys_size = 8; ! physical size of shared memory region macro glcktbl$q_reg_virt_size = 24,0,0,0 %; literal glcktbl$s_reg_virt_size = 8; ! virtual size of shared memory region macro glcktbl$q_num_locks = 32,0,0,0 %; literal glcktbl$s_num_locks = 8; ! number of locks in the region macro glcktbl$l_free_list = 40,0,32,0 %; ! free glock list macro glcktbl$l_used_list = 44,0,32,0 %; ! used glock list macro glcktbl$q_nodes = 48,0,0,0 %; literal glcktbl$s_nodes = 8; ! bitmask of connected nodes macro glcktbl$q_glock_handle = 56,0,0,0 %; literal glcktbl$s_glock_handle = 8; ! handle of embedded glock macro glcktbl$b_glock = 64,0,0,1 %; literal glcktbl$s_glock = 64; ! embedded GLOCK macro glcktbl$w_ref_counts = 128,0,0,0 %; literal glcktbl$s_ref_counts = 128; ! per-node ref counters literal glcktbl$c_length = 256; ! Length literal glcktbl$k_length = 256; ! Length literal glock_nodeb$S_glock_nodeb = 32; macro glock_nodeb$q_lock_handle = 0,0,0,0 %; literal glock_nodeb$s_lock_handle = 8; ! lockhandle for ipint macro glock_nodeb$b_spares = 8,0,0,1 %; literal glock_nodeb$s_spares = 24; ! pad to 32 bytes literal glock_nodeb$c_length = 32; ! length literal gmdb_glock$S_gmdb_glock = 2576; macro gmdb_glock$q_nodes = 0,0,0,0 %; literal gmdb_glock$s_nodes = 8; ! connected nodes macro gmdb_glock$q_max_nodes = 8,0,0,0 %; literal gmdb_glock$s_max_nodes = 8; ! max nodes supported macro gmdb_glock$q_flags = 16,0,0,0 %; literal gmdb_glock$s_flags = 8; ! flags macro gmdb_glock$q_handle = 24,0,0,0 %; literal gmdb_glock$s_handle = 8; ! lock handle macro gmdb_glock$b_lock = 32,0,0,1 %; literal gmdb_glock$s_lock = 64; ! GLOCK for the locking portion of the GMDB macro gmdb_glock$b_lcktbl = 96,0,0,1 %; literal gmdb_glock$s_lcktbl = 256; ! embedded GLCKTBL for locks in the GMDB macro gmdb_glock$q_num_tables = 352,0,0,0 %; literal gmdb_glock$s_num_tables = 16; ! number of locktables in the regions macro gmdb_glock$l_free_list = 368,0,0,0 %; literal gmdb_glock$s_free_list = 8; ! lists of free lock tables macro gmdb_glock$l_used_list = 376,0,0,0 %; literal gmdb_glock$s_used_list = 8; ! lists of used lock tables macro gmdb_glock$q_reg_handle = 384,0,0,0 %; literal gmdb_glock$s_reg_handle = 16; ! lock handles for locktable list locks macro gmdb_glock$b_prc_lock = 400,0,0,1 %; literal gmdb_glock$s_prc_lock = 64; ! GLOCK for process locktable lists macro gmdb_glock$b_sys_lock = 464,0,0,1 %; literal gmdb_glock$s_sys_lock = 64; ! GLOCK for system locktable lists macro gmdb_glock$r_nodeb = 528,0,0,0 %; literal gmdb_glock$s_nodeb = 2048; ! per node cells literal gmdb_glock$c_length = 2576; ! Length !*** MODULE $HWDEF *** literal HW$_VAX = 1; ! VAX architecture literal HW$_ALPHA = 2; ! Alpha architecture !*** MODULE $IA64REGDEF *** ! Special Registers literal IA64_REG$_IP = 1016; ! getReg only literal IA64_REG$_PSR_UM = 1017; literal IA64_REG$_PSR = 1019; literal IA64_REG$_PSR_L = 1019; ! General Integer Registers literal IA64_REG$_GP = 1025; ! R1 literal IA64_REG$_SP = 1036; ! R12 literal IA64_REG$_TP = 1037; ! R13 ! Constants for 'hint' instruction literal IA64_REG$HINT_PAUSE = 0; literal IA64_REG$HINT_WAIT = 64; ! Application Registers literal IA64_REG$_AR_KR0 = 3072; literal IA64_REG$_AR_KR1 = 3073; literal IA64_REG$_AR_KR2 = 3074; literal IA64_REG$_AR_KR3 = 3075; literal IA64_REG$_AR_KR4 = 3076; literal IA64_REG$_AR_KR5 = 3077; literal IA64_REG$_AR_KR6 = 3078; literal IA64_REG$_AR_KR7 = 3079; literal IA64_REG$_AR_RSC = 3088; literal IA64_REG$_AR_BSP = 3089; literal IA64_REG$_AR_BSPSTORE = 3090; literal IA64_REG$_AR_RNAT = 3091; literal IA64_REG$_AR_FCR = 3093; literal IA64_REG$_AR_EFLAG = 3096; literal IA64_REG$_AR_CSD = 3097; literal IA64_REG$_AR_SSD = 3098; literal IA64_REG$_AR_CFLAG = 3099; literal IA64_REG$_AR_FSR = 3100; literal IA64_REG$_AR_FIR = 3101; literal IA64_REG$_AR_FDR = 3102; literal IA64_REG$_AR_CCV = 3104; literal IA64_REG$_AR_UNAT = 3108; literal IA64_REG$_AR_FPSR = 3112; literal IA64_REG$_AR_ITC = 3116; literal IA64_REG$_AR_RUC = 3117; literal IA64_REG$_AR_PFS = 3136; literal IA64_REG$_AR_LC = 3137; literal IA64_REG$_AR_EC = 3138; ! Control Registers literal IA64_REG$_CR_DCR = 4096; literal IA64_REG$_CR_ITM = 4097; literal IA64_REG$_CR_IVA = 4098; literal IA64_REG$_CR_PTA = 4104; literal IA64_REG$_CR_IPSR = 4112; literal IA64_REG$_CR_ISR = 4113; literal IA64_REG$_CR_IIP = 4115; literal IA64_REG$_CR_IFA = 4116; literal IA64_REG$_CR_ITIR = 4117; literal IA64_REG$_CR_IIPA = 4118; literal IA64_REG$_CR_IFS = 4119; literal IA64_REG$_CR_IIM = 4120; literal IA64_REG$_CR_IHA = 4121; literal IA64_REG$_CR_IIB0 = 4122; ! getReg only literal IA64_REG$_CR_IIB1 = 4123; ! getReg only literal IA64_REG$_CR_LID = 4160; literal IA64_REG$_CR_IVR = 4161; ! getReg only literal IA64_REG$_CR_TPR = 4162; literal IA64_REG$_CR_EOI = 4163; literal IA64_REG$_CR_IRR0 = 4164; ! getReg only literal IA64_REG$_CR_IRR1 = 4165; ! getReg only literal IA64_REG$_CR_IRR2 = 4166; ! getReg only literal IA64_REG$_CR_IRR3 = 4167; ! getReg only literal IA64_REG$_CR_ITV = 4168; literal IA64_REG$_CR_PMV = 4169; literal IA64_REG$_CR_CMCV = 4170; literal IA64_REG$_CR_LRR0 = 4176; literal IA64_REG$_CR_LRR1 = 4177; ! Indirect Registers for getIndReg() and setIndReg() literal IA64_REG$_INDR_CPUID = 9000; ! getIndReg only literal IA64_REG$_INDR_DBR = 9001; literal IA64_REG$_INDR_IBR = 9002; literal IA64_REG$_INDR_PKR = 9003; literal IA64_REG$_INDR_PMC = 9004; literal IA64_REG$_INDR_PMD = 9005; literal IA64_REG$_INDR_RR = 9006; !*** MODULE $IACDEF *** ! + ! IMAGE ACTIVATION CONTROL FLAGS ! - literal IAC$M_NOACT = %X'1'; literal IAC$M_WRITABLE = %X'2'; literal IAC$M_SHAREABLE = %X'4'; literal IAC$M_PRIVILEGE = %X'8'; literal IAC$M_MERGE = %X'10'; literal IAC$M_EXPREG = %X'20'; literal IAC$M_P1MERGE = %X'40'; literal IAC$M_PARANOID = %X'80'; literal IAC$M_LASTCLU = %X'100'; literal IAC$M_LIM = %X'200'; literal IAC$M_RETRY = %X'400'; literal IAC$M_NOCMKRNL = %X'800'; literal IAC$M_SEQDEVLOD = %X'1000'; literal IAC$M_XLINKER = %X'2000'; literal IAC$M_KP_RESHDR = %X'4000'; literal IAC$M_IS_RESHDR = %X'8000'; literal IAC$M_NOTSHARED = %X'10000'; literal IAC$M_GBLCLUSTR = %X'20000'; literal IAC$M_SHMIDENT = %X'40000'; literal IAC$M_NOCOPY = %X'80000'; literal IAC$M_P1MERG_P0 = %X'100000'; literal IAC$M_SETVECTOR = %X'200000'; literal IAC$M_PROTECTED = %X'400000'; literal IAC$M_P1DIRECT = %X'800000'; literal IAC$M_DEBUG = %X'1000000'; literal IAC$M_PERMANENT = %X'2000000'; literal IAC$M_NOTRANS = %X'4000000'; literal IAC$M_NO_SHARE_LINKAGE = %X'8000000'; literal IAC$M_PAGE_PROTECT = %X'10000000'; literal IAC$C_LARGEST = 6; ! LARGEST FLAG CALLER MAY SPECIFY literal IAC$S_IACDEF = 4; macro IAC$V_NOACT = 0,0,1,0 %; ! DO NOT ACTIVATE THE IMAGE (FOR INSTALL) macro IAC$V_WRITABLE = 0,1,1,0 %; ! MAKE IMAGE FILE WRITABLE macro IAC$V_SHAREABLE = 0,2,1,0 %; ! ACT. SHAREABLE IMAGE FOR EXECUTABLE IMG macro IAC$V_PRIVILEGE = 0,3,1,0 %; ! ACT. SHARE. IMG FOR PRIV EXECUTABLE IMG macro IAC$V_MERGE = 0,4,1,0 %; ! ACT 2ND EXECUTABLE IMG INTO ADR SPACE macro IAC$V_EXPREG = 0,5,1,0 %; ! MAP IMAGE INTO NEXT FREE VA SPACE macro IAC$V_P1MERGE = 0,6,1,0 %; ! P1 MERGED ACTIVATION (LEGAL INPUT FLAG) macro IAC$V_PARANOID = 0,7,1,0 %; ! GO INTO PARANOIA MODE macro IAC$V_LASTCLU = 0,8,1,0 %; ! LAST CLUSTER FLAG macro IAC$V_LIM = 0,9,1,0 %; ! LINKABLE IMAGE macro IAC$V_RETRY = 0,10,1,0 %; ! RETRY IMAGE ACTIVATION macro IAC$V_NOCMKRNL = 0,11,1,0 %; ! SHUT OFF CMKRNL,CMEXEC-SYSVER DIFF macro IAC$V_SEQDEVLOD = 0,12,1,0 %; ! LOADING FROM SEQUENTIAL DEVICE (NET) macro IAC$V_XLINKER = 0,13,1,0 %; ! CROSS LINKER FORMAT macro IAC$V_KP_RESHDR = 0,14,1,0 %; ! MAKE IMAGE HEADER RESIDENT macro IAC$V_IS_RESHDR = 0,15,1,0 %; ! IMAGE HEADER IS RESIDENT macro IAC$V_NOTSHARED = 0,16,1,0 %; ! DO NOT SET IS_SHARED IN KFI ENTRY macro IAC$V_GBLCLUSTR = 0,17,1,0 %; ! CURRENTLY PROCESSING GBL ISD CLUSTER macro IAC$V_SHMIDENT = 0,18,1,0 %; ! SHARED MEMORY IDENT USED FOR GBL SEC macro IAC$V_NOCOPY = 0,19,1,0 %; ! NO PRIVATE COPY OF SECTION IN EXEC IMG macro IAC$V_P1MERG_P0 = 0,20,1,0 %; ! P1 MERGED ACTIVATION WITH P0 ADDRESS ! RANGE (INTERNAL FLAG ONLY) macro IAC$V_SETVECTOR = 0,21,1,0 %; ! SIGNAL ATLERNATE ENTRY TO SET VECTORS macro IAC$V_PROTECTED = 0,22,1,0 %; ! REQUIRE SHAREABLES BE /PROTECTED macro IAC$V_P1DIRECT = 0,23,1,0 %; ! DIRECT P1 MERGE macro IAC$V_DEBUG = 0,24,1,0 %; ! DEBUG SPECIFIED WITH ACTIVATION macro IAC$V_PERMANENT = 0,25,1,0 %; ! MAKE P1 IMAGE PERMANENT macro IAC$V_NOTRANS = 0,26,1,0 %; ! DO LOOKUP ON UNTRANSLATED IMAGE NAME macro IAC$V_NO_SHARE_LINKAGE = 0,27,1,0 %; ! Activate without shared linkage macro IAC$V_PAGE_PROTECT = 0,28,1,0 %; ! Protect image pages according to acmode !*** MODULE $ICCDEF IDENT X-4 *** ! ! ICC IOSB data structure for data transfer routines ! ! Past the 1st longword, the IOC_ICC fields vary depending on the type of ! request/operation. The diagram attempts to picture those relationships ! below. Longwords 2-5 are done in columns, each column representing the ! value of that longword for that type of request/operation. ! ! +4 +2 +0 ! +---------------------------------------------------------+ ! L1: | Undefined | Return status code | ! |---------------------------------------------------------| ! |---------------------------------------------------------| ! | | | | | ! | RECEIVE | REPLY | TRANSCEIVE | CONNECT | ! | | | | | ! L2: | rcv_len | replyto_handle| txrcv_len | RemStat | ! |---------------|---------------|---------------|---------| ! L3: | req_handle | Unused | | Unused | ! |---------------|---------------| reply_buffer | | ! L4: | reply_len | Unused | | | ! |---------------|---------------|---------------| | ! L5: | Unused | Unused | txreply_len | | ! |---------------+---------------+---------------+---------| ! literal IOS_ICC$S_IOS_ICC = 20; macro IOS_ICC$w_status = 0,0,16,0 %; ! return status macro IOS_ICC$w_reserved = 2,0,16,0 %; ! reserved macro IOS_ICC$r_parameters = 4,0,0,0 %; literal IOS_ICC$s_parameters = 16; macro IOS_ICC$r_connect = 4,0,0,0 %; literal IOS_ICC$s_connect = 16; macro IOS_ICC$l_remstat = 4,0,32,0 %; ! remote status (returned) macro IOS_ICC$r_receive = 4,0,0,0 %; literal IOS_ICC$s_receive = 16; macro IOS_ICC$l_rcv_len = 4,0,32,0 %; ! return len (returned) macro IOS_ICC$l_req_handle = 8,0,32,0 %; ! request handle (returned) macro IOS_ICC$l_reply_len = 12,0,32,0 %; ! reply len (returned) macro IOS_ICC$r_reply = 4,0,0,0 %; literal IOS_ICC$s_reply = 16; macro IOS_ICC$l_replyto_handle = 4,0,32,0 %; ! request_handle (input) macro IOS_ICC$r_transceive = 4,0,0,0 %; literal IOS_ICC$s_transceive = 16; macro IOS_ICC$l_txrcv_len = 4,0,32,0 %; ! return length (returned) macro IOS_ICC$A_reply_buffer = 8,0,0,1 %; literal IOS_ICC$s_reply_buffer = 8; ! 64-bit bfr addr (Alpha) macro IOS_ICC$l_txreply_len = 16,0,32,0 %; ! reply len (input) literal ICC$C_receive_len = 16; literal ICC$C_reply_len = 8; literal ICC$C_transceive_len = 20; ! ! Length constants ! literal ICC$C_MAX_ASSOC_LEN = 31; literal ICC$C_MAX_CONN_DATA_LEN = 1000; ! ! Connection flag bit definitions (for connect/accept services) ! literal ICC$M_Synch_Mode = %X'1'; literal ICC$S_ICC_CONNECTION_FLAGS = 1; macro ICC$V_Synch_Mode = 0,0,1,0 %; ! Set (1) if data transfer routines ! are allowed to return SS$_SYNCH ! to the user. ! ! ICC event codes (first parameter) for the connect/disconnect routines ! literal ICC$C_EV_CONNECT = 0; literal ICC$C_EV_DISCONNECT = 1; literal ICC$C_min_event = 0; literal ICC$C_max_event = 1; ! ! Default ICC association handle ! literal ICC$C_DFLT_ASSOC_HANDLE = 1; ! ! Default flow control value ! literal ICC$C_DEFAULT_MAXFLOWBUFCNT = 5; ! Pending inbound msgs !*** MODULE $IEEEDEF *** literal IEEE$K_VERSION_NUMBER = 2; ! ! IEEE Floating Point control definitions. ! ! ! The following values are used to set the precision control and rounding control fields via ! SYS$IEEE_SET_PRECISION_MODE and SYS$IEEE_SET_ROUNDING_MODE. (Note that one can not set ! precision mode on Alpha). ! literal IEEE$C_PM_NO_CHANGE = -1; ! No change. Just get previous value literal IEEE$C_PM_SINGLE = 0; ! Single Precision literal IEEE$C_PM_UNUSED = 1; ! This value has no meaning literal IEEE$C_PM_DOUBLE = 2; ! Double Precision literal IEEE$C_PM_DOUBLE_EXTENDED = 3; ! Double-Extended Precision literal IEEE$C_PM_MAX = 3; ! Maximum legal value literal IEEE$C_RM_NO_CHANGE = -1; ! No change. Just get previous value literal IEEE$C_RM_NEAREST = 0; ! Nearest (or even) literal IEEE$C_RM_DOWN = 1; ! -Infinity (down) literal IEEE$C_RM_UP = 2; ! +Infinity (up) literal IEEE$C_RM_TRUNCATE = 3; ! Zero (truncate/chop) literal IEEE$C_RM_MAX = 3; ! Maximum legal value ! ! The following structure defines bits for the (software) IEEE Floating Point ! control register on Alpha, and for the values passed to SYS$IEEE_SET_FP_CONTROL ! on all architectures (except VAX where it does not exist). ! literal IEEE$M_TRAP_ENABLE_INV = %X'2'; literal IEEE$M_TRAP_ENABLE_DZE = %X'4'; literal IEEE$M_TRAP_ENABLE_OVF = %X'8'; literal IEEE$M_TRAP_ENABLE_UNF = %X'10'; literal IEEE$M_TRAP_ENABLE_INE = %X'20'; literal IEEE$M_TRAP_ENABLE_DNOE = %X'40'; literal IEEE$M_MAP_DNZ = %X'2000'; literal IEEE$M_MAP_UMZ = %X'4000'; literal IEEE$M_INHERIT = %X'8000'; literal IEEE$M_STATUS_INV = %X'20000'; literal IEEE$M_STATUS_DZE = %X'40000'; literal IEEE$M_STATUS_OVF = %X'80000'; literal IEEE$M_STATUS_UNF = %X'100000'; literal IEEE$M_STATUS_INE = %X'200000'; literal IEEE$M_STATUS_DNO = %X'400000'; literal IEEE$M_PC = %X'1800000'; literal IEEE$M_RC = %X'6000000'; literal IEEE$M_WPFP = %X'8000000'; literal IEEE$S_IEEE = 8; macro IEEE$Q_FLAGS = 0,0,0,0 %; literal IEEE$S_FLAGS = 8; ! Internal flags ! Trap enable flags macro IEEE$V_TRAP_ENABLE_INV = 0,1,1,0 %; ! invalid operation macro IEEE$V_TRAP_ENABLE_DZE = 0,2,1,0 %; ! divide by zero macro IEEE$V_TRAP_ENABLE_OVF = 0,3,1,0 %; ! overflow macro IEEE$V_TRAP_ENABLE_UNF = 0,4,1,0 %; ! underflow macro IEEE$V_TRAP_ENABLE_INE = 0,5,1,0 %; ! inexact macro IEEE$V_TRAP_ENABLE_DNOE = 0,6,1,0 %; ! denormal operand exception enable macro IEEE$V_MAP_DNZ = 0,13,1,0 %; ! denormal operands mapped to 0.0 macro IEEE$V_MAP_UMZ = 0,14,1,0 %; ! underflows mapped to 0.0 macro IEEE$V_INHERIT = 0,15,1,0 %; ! inherit FP state on thread create macro IEEE$V_STATUS_INV = 0,17,1,0 %; ! invalid operation macro IEEE$V_STATUS_DZE = 0,18,1,0 %; ! divide by zero macro IEEE$V_STATUS_OVF = 0,19,1,0 %; ! overflow macro IEEE$V_STATUS_UNF = 0,20,1,0 %; ! underflow macro IEEE$V_STATUS_INE = 0,21,1,0 %; ! inexact macro IEEE$V_STATUS_DNO = 0,22,1,0 %; ! denormal operand ! Precision, rounding, and WPFP are not currently supported on Alpha. macro IEEE$V_PC = 0,23,2,0 %; literal IEEE$S_PC = 2; ! Precision control macro IEEE$V_RC = 0,25,2,0 %; literal IEEE$S_RC = 2; ! Rounding control macro IEEE$V_WPFP = 0,27,1,0 %; ! Whole program floating point mode !*** MODULE $ILEDEF *** ! + ! Define the 32-bit Item List Entry 3 structure ! - literal ILE3$S_ILE3 = 12; macro ILE3$W_LENGTH = 0,0,16,0 %; ! Length of buffer in bytes macro ILE3$W_CODE = 2,0,16,0 %; ! Item code value macro ILE3$PS_BUFADDR = 4,0,32,1 %; ! Buffer address macro ILE3$PS_RETLEN_ADDR = 8,0,32,1 %; ! Address of word for returned length literal ILE3$K_LENGTH = 12; ! Length of ILE3 literal ILE3$C_LENGTH = 12; ! Length of ILE3 ! + ! Define the 64-Bit Item List Entry B structure. This is the 64-bit ! counterpart of the 32-bit item list 3 structure. ! - literal ILEB_64$S_ILEB_64 = 32; macro ILEB_64$W_MBO = 0,0,16,0 %; ! Must be One field macro ILEB_64$W_CODE = 2,0,16,0 %; ! Item code value macro ILEB_64$L_MBMO = 4,0,32,1 %; ! Must be Minus One field macro ILEB_64$Q_LENGTH = 8,0,0,0 %; literal ILEB_64$S_LENGTH = 8; ! Length of buffer in bytes macro ILEB_64$PQ_BUFADDR = 16,0,0,1 %; literal ILEB_64$S_BUFADDR = 8; ! Buffer address macro ILEB_64$PQ_RETLEN_ADDR = 24,0,0,1 %; literal ILEB_64$S_RETLEN_ADDR = 8; ! Address of quadword for returned length literal ILEB_64$K_LENGTH = 32; ! Length of ILEB literal ILEB_64$C_LENGTH = 32; ! Length of ILEB ! + ! Define the 32-bit Item List Entry 2 structure ! - literal ILE2$S_ILE2 = 8; macro ILE2$W_LENGTH = 0,0,16,0 %; ! Length of buffer in bytes macro ILE2$W_CODE = 2,0,16,0 %; ! Item code value macro ILE2$PS_BUFADDR = 4,0,32,1 %; ! Buffer address literal ILE2$K_LENGTH = 8; ! Length of ILE2 literal ILE2$C_LENGTH = 8; ! Length of ILE2 ! + ! Define the 64-Bit Item List Entry 2 structure. This is the 64-bit ! counterpart of the 32-bit item list 2 structure. ! - literal ILEA_64$S_ILEA_64 = 24; macro ILEA_64$W_MBO = 0,0,16,0 %; ! Must be One field macro ILEA_64$W_CODE = 2,0,16,0 %; ! Item code value macro ILEA_64$L_MBMO = 4,0,32,1 %; ! Must be Minus One field macro ILEA_64$Q_LENGTH = 8,0,0,0 %; literal ILEA_64$S_LENGTH = 8; ! Length of buffer in bytes macro ILEA_64$PQ_BUFADDR = 16,0,0,1 %; literal ILEA_64$S_BUFADDR = 8; ! Buffer address literal ILEA_64$K_LENGTH = 24; ! Length of ILEA literal ILEA_64$C_LENGTH = 24; ! Length of ILEA !*** MODULE $INDICTDEF *** ! + ! ! Object Indictment Definitions ! ! This file is in [STARLET] to allow other outside developers call the ! sys$indict_object call properly. Today the only group who calls that ! object is Compaq Analyze. ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! so that users will not have to relink. ! ! - literal INDICT$_VERSION = 1; ! Request information version literal INDICT$_OBJTYPE = 2; ! Indictment Object type literal INDICT$_HANDLE = 3; ! Indicted object or failing PFN Page literal INDICT$_COMPONENT_ID = 4; ! Component Handle ID literal INDICT$_COMPONENT_TYPE = 5; ! Component Handle Type literal INDICT$_COMPONENT_SUBTYPE = 6; ! Component Handle Subtype literal INDICT$_MODULE_ID = 7; ! Module Handle Id literal INDICT$_MODULE_TYPE = 8; ! Module Handle Type literal INDICT$_MODULE_SUBTYPE = 9; ! Module Handle Subtype literal INDICT$_URGENCY = 10; ! Urgency of the indictment request literal INDICT$_PROBABILITY = 11; ! Probability of correct fault literal INDICT$_TOTALINDICTMENTS = 12; ! Total number to be indicted literal INDICT$_DESCRIPTION = 13; ! Readable description of the problem literal INDICT$_REPORTHANDLE = 14; ! report_handle program name literal INDICT$_INITIATOR = 15; ! Who called us (e.g. Compaq Analyze). !*** MODULE $INITDEF *** ! ! Values for INIT$_DENSITY item code. ! literal INIT$K_DENSITY_800_BPI = 1; ! 800 bpi tape literal INIT$K_DENSITY_1600_BPI = 2; ! 1600 bpi tape literal INIT$K_DENSITY_6250_BPI = 3; ! 6250 bpi tape literal INIT$K_DENSITY_SINGLE_DISK = 4; ! Single-density RX02 literal INIT$K_DENSITY_DOUBLE_DISK = 5; ! RX33 or double-density RX02 literal INIT$K_DENSITY_DD_DISK = 6; ! "Double density" (lower than "High Density") literal INIT$K_DENSITY_HD_DISK = 7; ! High density diskette literal INIT$K_DENSITY_COMPACT = 8; ! TA90 with data compaction on literal INIT$K_DENSITY_ED_DISK = 9; ! New density for RX26 ! ! Values for INIT$_HOMEBLOCKS item code. ! literal INIT$K_HOMEBLOCKS_GEOMETRY = 1; ! geometry dependent literal INIT$K_HOMEBLOCKS_FIXED = 2; ! fixed position literal INIT$K_HOMEBLOCKS_CONTIGUOUS = 3; ! contiguous ! ! Item codes for $INIT_VOL parameters. ! literal INIT$S_BADBLOCKS_LBN_DEF = 8; macro INIT$L_BADBLOCKS_LBN = 0,0,32,0 %; ! LBN of first block macro INIT$L_BADBLOCKS_LBN_COUNT = 4,0,32,0 %; ! Count of blocks to be marked literal INIT$S_BADBLOCKS_SEC_DEF = 16; macro INIT$L_BADBLOCKS_SECTOR = 0,0,32,0 %; ! Sector of first block macro INIT$L_BADBLOCKS_SEC_COUNT = 4,0,32,0 %; ! Count of blocks to be marked macro INIT$L_BADBLOCKS_TRACK = 8,0,32,0 %; ! Track of first block macro INIT$L_BADBLOCKS_CYLINDER = 12,0,32,0 %; ! Cylinder of first block ! Define codes as constants literal INIT$_ACCESSED = 1; ! Number of directories in system space literal INIT$_BADBLOCKS_LBN = 2; ! Bad block areas by logical block number literal INIT$_BADBLOCKS_SEC = 3; ! Bad block areas by sector, track, cylinder literal INIT$_CLUSTERSIZE = 4; ! Minimum allocation unit literal INIT$_COMPACTION = 5; ! Data compaction for TA90 literal INIT$_NO_COMPACTION = 6; ! No data compaction literal INIT$_DENSITY = 7; ! Format literal INIT$_DIRECTORIES = 8; ! Preallocated entries for directories literal INIT$_ERASE = 9; ! Destroy data on volume literal INIT$_NO_ERASE = 10; ! Do not destroy data on volume literal INIT$_EXTENSION = 11; ! Default extension size for files literal INIT$_FPROT = 12; ! Default protection for files literal INIT$_HEADERS = 13; ! Number of file headers for index file literal INIT$_HIGHWATER = 14; ! Set the file highwater mark attribute literal INIT$_NO_HIGHWATER = 15; ! Do not set the file highwater mark attribute literal INIT$_INDEX_BEGINNING = 16; ! Place index file at beginning of volume literal INIT$_INDEX_BLOCK = 17; ! LBN for index file literal INIT$_INDEX_END = 18; ! Place index file at end of volume literal INIT$_INDEX_MIDDLE = 19; ! Place index file at middle of volume literal INIT$_INTERCHANGE = 20; ! Do not write VMS-specific information literal INIT$_NO_INTERCHANGE = 21; ! Write VMS-specific information literal INIT$_LABEL_ACCESS = 22; ! Character for ANSI accessability field literal INIT$_LABEL_VOLO = 23; ! Text for ANSI owner ID field literal INIT$_MAXFILES = 24; ! Maximum number of files on volume literal INIT$_OVR_ACCESS = 25; ! Override ANSI accessability field literal INIT$_NO_OVR_ACCESS = 26; ! Do not override ANSI accessability field literal INIT$_OVR_EXP = 27; ! Override expiration date literal INIT$_NO_OVR_EXP = 28; ! Do not override expiration date literal INIT$_OVR_VOLO = 29; ! Override ANSI owner ID field literal INIT$_NO_OVR_VOLO = 30; ! Do not override ANSI owner ID field literal INIT$_OWNER = 31; ! UIC for volume literal INIT$_READCHECK = 32; ! Check all read operations literal INIT$_NO_READCHECK = 33; ! Do not check all read operations literal INIT$_SIZE = 34; ! Size of RAM disk literal INIT$_STRUCTURE_LEVEL_1 = 35; ! Format in Files-11 level 1 literal INIT$_STRUCTURE_LEVEL_2 = 36; ! Format in Files-11 level 2 literal INIT$_STRUCTURE_LEVEL_2_SUB_0 = 37; ! Format in subset of Files-11 level 2 literal INIT$_USER_NAME = 38; ! User name for volume literal INIT$_VERIFIED = 39; ! Use bad block data on volume literal INIT$_NO_VERIFIED = 40; ! Ignore bad block data on volume literal INIT$_VPROT = 41; ! Volume protection literal INIT$_WINDOW = 42; ! Number of mapping pointers for file windows literal INIT$_WRITECHECK = 43; ! Check all write operations literal INIT$_NO_WRITECHECK = 44; ! Do not check all write operations literal INIT$_MIN_CLASS = 45; ! Minimum security classfication literal INIT$_MAX_CLASS = 46; ! Maximum security classfication literal INIT$_NO_PROTECTION = 47; ! No default security classification literal INIT$_HOMEBLOCKS = 48; ! Homeblock placement strategy to use literal INIT$_STRUCTURE_LEVEL_5 = 49; ! Format in Files-11 level 5 literal INIT$_SHADOW = 50; ! Format disks with Shadowing SCBs literal INIT$_HARDLINKS = 51; ! Use a linkcount in creating files (ODS-5 only) literal INIT$_ACCESS_DATES = 52; ! Use access dates for attributes (ODS-5 only) literal INIT$_SPARE = 53; literal INIT$_VOLUME_LIMIT = 54; ! Maximum logical volume size literal INIT$_GPT = 55; ! Create a GUID Partition Table Structure. literal INIT$_NO_GPT = 56; ! Do not create a GPT literal INIT$_ERASE_ON_DELETE = 57; ! Set HM2$V_ERASE bit literal INIT$_ERASE_ON_INIT = 58; ! Perform DSE erase now literal INIT$_STRUCTURE_LEVEL_6 = 59; ! Format in Files-11 level 6 (CFS container) literal INIT$_LOGSIZE = 60; ! CFS log file size literal INIT$_SPECIAL_FILES = 61; ! Volume supports special files (ODS-5 only) literal INIT$_NO_SPECIAL_FILES = 62; ! Volume does not support special files literal INIT$_LAST_INIT_ITEM = 63; ! Note add all new INIT items before this one. literal INIT$_MAX_ITEM_CODE = 62; ! Maximum item code. literal INIT$S_USER_NAME = 12; ! Max size of user name on volume literal INIT$S_DEVICE_NAME = 64; ! Max size of device names literal INIT$C_MIN_SECURITY_BLKCNT = 6; ! Min size of SECURITY.SYS literal INIT$C_MIN_GPT_BLKCNT = 34; ! Min size of GPT.SYS !*** MODULE $IODEF *** ! + ! I/O FUNCTION CODE DEFINITIONS ! - ! ! *** START PHYSICAL I/O FUNCTION CODES *** ! literal IO$_NOP = 0; ! NO OPERATION literal IO$_UNLOAD = 1; ! UNLOAD DRIVE literal IO$_LOADMCODE = 1; ! LOAD MICROCODE literal IO$_START_BUS = 1; ! START LAVC BUS literal IO$_SEEK = 2; ! SEEK CYLINDER literal IO$_SPACEFILE = 2; ! SPACE FILES literal IO$_STARTMPROC = 2; ! START MICROPROCESSOR literal IO$_STOP_BUS = 2; ! STOP LAVC BUS literal IO$_RECAL = 3; ! RECALIBRATE DRIVE literal IO$_DUPLEX = 3; ! ENTER DUPLEX MODE literal IO$_STOP = 3; ! STOP literal IO$_DEF_COMP = 3; ! DEFINE NETWORK COMPONENT literal IO$_DRVCLR = 4; ! DRIVE CLEAR literal IO$_INITIALIZE = 4; ! INITIALIZE literal IO$_MIMIC = 4; ! ENTER MIMIC MODE literal IO$_DEF_COMP_LIST = 4; ! DEFINE NETWORK COMPONENT LIST literal IO$_FLUSH_ERROR = 4; ! FLUSH SCSI ERRORS literal IO$_RELEASE = 5; ! RELEASE PORT literal IO$_SETCLOCKP = 5; ! SET CLOCK (PHYSICAL) literal IO$_START_ANALYSIS = 5; ! START LAVC FAILURE ANALYSIS literal IO$_BIND = 5; ! BIND UNITS INTO A STORAGE POOL literal IO$_PATH_VERIFY = 5; ! VERIFY PATH TO DEVICE literal IO$_OFFSET = 6; ! OFFSET READ HEADS literal IO$_ERASETAPE = 6; ! ERASE TAPE literal IO$_STARTDATAP = 6; ! START DATA TRANSFER (PHYSICAL) literal IO$_STOP_ANALYSIS = 6; ! STOP LAVC FAILURE ANALYSIS literal IO$_UNBIND = 6; ! REMOVE UNITS FROM A STORAGE POOL literal IO$_RETCENTER = 7; ! RETURN TO CENTERLINE literal IO$_QSTOP = 7; ! QUEUE STOP REQUEST literal IO$_START_MONITOR = 7; ! START LAVC CHANNEL MONITOR. literal IO$_CREDISK = 7; ! CREATE A DISK IN A STORAGE POOL literal IO$_LOCAL_DRAIN = 7; ! DRAIN LOCAL IO literal IO$_PACKACK = 8; ! PACK ACKNOWLEDGE literal IO$_STOP_MONITOR = 8; ! STOP LAVC CHANNEL MONITOR. literal IO$_SEARCH = 9; ! SEARCH FOR SECTOR literal IO$_SPACERECORD = 9; ! SPACE RECORDS literal IO$_READRCT = 9; ! READ REPLACEMENT & CACHING TABLE literal IO$_REMDISK = 9; ! REMOVE A DISK FROM A STORAGE POOL literal IO$_WRITECHECK = 10; ! WRITE CHECK DATA literal IO$_EXPORT = 10; ! EXPORT A DISK FROM A STORAGE POOL literal IO$_WRITEPBLK = 11; ! WRITE PHYSICAL BLOCK literal IO$_READPBLK = 12; ! READ PHYSICAL BLOCK literal IO$_WRITEHEAD = 13; ! WRITE HEADER AND DATA literal IO$_RDSTATS = 13; ! READ STATISTICS literal IO$_CRESHAD = 13; ! CREATE A SHADOW SET literal IO$_READHEAD = 14; ! READ HEADER AND DATA literal IO$_ADDSHAD = 14; ! ADD MEMBER TO SHADOW SET literal IO$_WRITETRACKD = 15; ! WRITE TRACK DATA literal IO$_COPYSHAD = 15; ! PERFORM SHADOW SET COPY OPERATIONS literal IO$_READTRACKD = 16; ! READ TRACK DATA literal IO$_REMSHAD = 16; ! REMOVE MEMBER FROM SHADOW SET literal IO$_AVAILABLE = 17; ! AVAILABLE (DISK AND TAPE CLASS) literal IO$_SETPRFPATH = 18; ! SET PREFERRED PATH literal IO$_DISPLAY = 19; ! DISPLAY VOLUME LABEL literal IO$_REMSHADMBR = 20; ! REMOVE MEMBER FROM SHADOW SET literal IO$_DSE = 21; ! DATA SECURITY ERASE (AND REWIND) literal IO$_REREADN = 22; ! REREAD NEXT literal IO$_DISK_COPY_DATA = 22; ! DISK_COPY_DATA literal IO$_MOUNTSHAD = 23; ! CREATE A SHADOW SET literal IO$_REREADP = 23; ! REREAD PREVIOUS literal IO$_WHM = 23; ! WRITE HISTORY MANAGEMENT literal IO$_AS_SETCHAR = 23; ! ASIAN SET CHARACTERISTICS literal IO$_WRITERET = 24; ! WRITE RETRY literal IO$_WRITECHECKH = 24; ! WRITE CHECK HEADER AND DATA literal IO$_AS_SENSECHAR = 24; ! ASIAN SENSE CHARACTERISTICS literal IO$_ADDSHADMBR = 25; ! ADD MEMBER TO SHADOW SET literal IO$_READPRESET = 25; ! READIN PRESET literal IO$_STARTSPNDL = 25; ! START SPINDLE literal IO$_SETCHAR = 26; ! SET CHARACTERISTICS literal IO$_SENSECHAR = 27; ! SENSE TAPE CHARACTERISTICS literal IO$_WRITEMARK = 28; ! WRITE TAPE MARK literal IO$_COPYMEM = 28; ! COPY MEMORY literal IO$_PSXSETCHAR = 28; ! POSIX SET CHARACTERISTICS literal IO$_WRTTMKR = 29; ! WRITE TAPE MARK RETRY literal IO$_DIAGNOSE = 29; ! DIAGNOSE literal IO$_SHADMV = 29; ! PREFORM MOUNT VER. ON SHADOW SET literal IO$_PSXSENSECHAR = 29; ! POSIX SENSE CHARACTERISTICS literal IO$_FORMAT = 30; ! FORMAT literal IO$_CLEAN = 30; ! CLEAN TAPE literal IO$_UPSHAD = 30; ! UPDATE SHADOW SYSDEVICE literal IO$_PHYSICAL = 31; ! HIGHEST PHYSICAL I/O FUNCTION CODE ! ! *** START LOGICAL I/O FUNCTION CODES *** ! literal IO$_WRITELBLK = 32; ! WRITE LOGICAL BLOCK literal IO$_READLBLK = 33; ! READ LOGICAL BLOCK literal IO$_REWINDOFF = 34; ! REWIND AND SET OFFLINE literal IO$_READRCTL = 34; ! READ RCT SECTOR ZERO literal IO$_SETMODE = 35; ! SET MODE literal IO$_REWIND = 36; ! REWIND TAPE literal IO$_SKIPFILE = 37; ! SKIP FILES literal IO$_PSXSETMODE = 37; ! POSIX SET MODE literal IO$_SKIPRECORD = 38; ! SKIP RECORDS literal IO$_PSXSENSEMODE = 38; ! POSIX SENSE MODE literal IO$_SENSEMODE = 39; ! SENSE TAPE MODE literal IO$_WRITEOF = 40; ! WRITE END OF FILE literal IO$_TTY_PORT_BUFIO = 40; ! BUFFERED I/O TERMINAL PORT FDT ROUTINE literal IO$_TTY_PORT = 41; ! TERMINAL PORT FDT ROUTINE literal IO$_FREECAP = 41; ! RETURN FREE CAPACITY literal IO$_FLUSH = 42; ! FLUSH CONTROLLER CACHE literal IO$_AS_SETMODE = 42; ! ASIAN SET MODE literal IO$_READLCHUNK = 43; ! READ LARGE LOGICAL BLOCK literal IO$_AS_SENSEMODE = 43; ! ASIAN SENSE MODE literal IO$_WRITELCHUNK = 44; ! WRITE LARGE LOGICAL BLOCK literal IO$_LOGICAL = 47; ! HIGHEST LOGICAL I/O FUNCTION CODE ! ! *** START VIRTUAL I/O FUNCTION CODES ! ! NOTE: ! Virtual IO operations to a non-file oriented device require that the process ! has READ access priviledges for that device. Specificly, EXE$QIO calls ! EXE$CHECK_DEVICE_ACCESS for the following virtual IO function codes to ! verify that the the process has read access rights: ! READPBLK,READLBLK,READVBLK, READHEAD,READTRACKD,REREADN,REREADP, ! READPROMPT,TTYREADALL,TTYREADPALL literal IO$_WRITEVBLK = 48; ! WRITE VIRTUAL BLOCK literal IO$_READVBLK = 49; ! READ VIRTUAL BLOCK literal IO$_ACCESS = 50; ! ACCESS FILE literal IO$_PSXWRITEVBLK = 50; ! POSIX WRITE VIRTUAL literal IO$_CREATE = 51; ! CREATE FILE literal IO$_DEACCESS = 52; ! DEACCESS FILE literal IO$_PSXREADVBLK = 52; ! POSIX READ VIRTUAL literal IO$_DELETE = 53; ! DELETE FILE literal IO$_MODIFY = 54; ! MODIFY FILE literal IO$_NETCONTROL = 54; ! X25 NETWORK CONTROL FUNCTION literal IO$_READPROMPT = 55; ! READ TERMINAL WITH PROMPT literal IO$_SETCLOCK = 55; ! SET CLOCK literal IO$_AUDIO = 55; ! CD-ROM AUDIO literal IO$_ACPCONTROL = 56; ! MISCELLANEOUS ACP CONTROL literal IO$_STARTDATA = 56; ! START DATA literal IO$_IOCTLV = 56; ! GENERIC UNIX IOCTL FUNCTIONS literal IO$_MANAGE = 56; ! MANAGE DEVICE literal IO$_MOUNT = 57; ! MOUNT VOLUME literal IO$_TTYREADALL = 58; ! TERMINAL READ PASSALL literal IO$_DISMOUNT = 58; ! F64 dismount literal IO$_TTYREADPALL = 59; ! TERM READ W/PROMPT PASSALL literal IO$_USBATTR = 59; ! USB device attributes literal IO$_CONINTREAD = 60; ! Connect to interrupt readonly literal IO$_CONINTWRITE = 61; ! Connect to interrupt with write literal IO$_READDIR = 62; ! READ DIRECTORY CONTENTS literal IO$_VIRTUAL = 63; ! HIGHEST VIRTUAL I/O FUNCTION ! ! FUNCTION MODIFIER BIT DEFINITIONS ! literal IO$M_FCODE = %X'3F'; literal IO$M_FMODIFIERS = %X'FFC0'; literal IO$M_INHERLOG = %X'800'; literal IO$M_ERASE = %X'400'; literal IO$M_EXFUNC = %X'2000'; literal IO$M_DATACHECK = %X'4000'; literal IO$M_INHRETRY = %X'8000'; literal IO$M_SYNCSTS = %X'10000'; literal IO$M_NOVCACHE = %X'20000'; literal IO$M_BUFOBJ = %X'40000'; literal IO$M_TRUSTED = %X'80000'; literal IO$M_FILE_FLUSH = %X'100000'; literal IO$M_BARRIER = %X'200000'; literal IO$M_RAH_HINT = %X'400000'; literal IO$M_INHSEEK = %X'1000'; literal IO$M_READ_TO_EOF = %X'200000'; literal IO$M_REVERSE = %X'40'; literal IO$M_NOWAIT = %X'80'; literal IO$M_INHEXTGAP = %X'1000'; literal IO$M_RETENSION = %X'2000'; literal IO$M_ALLOWFAST = %X'4000'; literal IO$M_MT3_DENSITY = %X'8000'; literal IO$M_MSCPMODIFS = %X'100'; literal IO$M_SHADOW = %X'40'; literal IO$M_LOCATE = %X'80'; literal IO$M_MSCP_FORMAT = %X'40'; literal IO$M_ALLHOSTS = %X'40'; literal IO$M_DISSOLVE = %X'80'; literal IO$M_NOCLEANUP = %X'100'; literal IO$M_SPINDOWN = %X'40'; literal IO$M_EST_COM_PATH = %X'40'; literal IO$M_LCL_SRC_UNIT = %X'80'; literal IO$M_RTN_COM_PATH = %X'100'; literal IO$M_DEALC_ALL = %X'40'; literal IO$M_DEALC_HRN = %X'80'; literal IO$M_DEALC_ENTLOC = %X'100'; literal IO$M_DECR_AFC = %X'200'; literal IO$M_READ_ALL = %X'400'; literal IO$M_READ_HRN = %X'800'; literal IO$M_BREAK_CONN = %X'1000'; literal IO$M_STEPOVER = %X'40'; literal IO$M_COPYOP = %X'100'; literal IO$M_EXISTS = %X'40'; literal IO$M_CBS = %X'80'; literal IO$M_BOOTING = %X'100'; literal IO$M_REQ_MINICOPY = %X'200'; literal IO$M_OPT_MINICOPY = %X'400'; literal IO$M_NOMINICOPY = %X'800'; literal IO$M_EXPECT_MOUNT_DONE = %X'2000'; literal IO$M_VUEX_FC = %X'200'; literal IO$M_WRITE_SCB = %X'200'; literal IO$M_UPD_SCBLBN = %X'2000'; literal IO$M_FORCEPATH = %X'40'; literal IO$M_PREFERRED_CPU = %X'80'; literal IO$M_SYS_ASSIGNABLE = %X'100'; literal IO$M_COMMOD = %X'40'; literal IO$M_MOVETRACKD = %X'80'; literal IO$M_DIAGNOSTIC = %X'100'; literal IO$M_SKPSECINH = %X'200'; literal IO$M_DELDATA = %X'40'; literal IO$M_NOMRSP = %X'40'; literal IO$M_SWAP = %X'100'; literal IO$M_OPPOSITE = %X'200'; literal IO$M_CLSEREXCP = %X'200'; literal IO$M_CHUNKDIAG = %X'40'; literal IO$M_TBC = %X'400'; literal IO$M_ENAREP = %X'40'; literal IO$M_ACCESS = %X'40'; literal IO$M_CREATE = %X'80'; literal IO$M_DELETE = %X'100'; literal IO$M_MOUNT = %X'200'; literal IO$M_DMOUNT = %X'400'; literal IO$M_REMOUNT = %X'800'; literal IO$M_MOVEFILE = %X'1000'; literal IO$M_RWSHELVED = %X'4000'; literal IO$M_SETDIR = %X'8000'; literal IO$M_BINARY = %X'40'; literal IO$M_PACKED = %X'80'; literal IO$M_NOW = %X'40'; literal IO$M_STREAM = %X'80'; literal IO$M_READERCHECK = %X'100'; literal IO$M_WRITERCHECK = %X'200'; literal IO$M_NORSWAIT = %X'400'; literal IO$M_MB_ROOM_NOTIFY = %X'40'; literal IO$M_READATTN = %X'80'; literal IO$M_WRTATTN = %X'100'; literal IO$M_SETPROT = %X'200'; literal IO$M_READERWAIT = %X'400'; literal IO$M_WRITERWAIT = %X'800'; literal IO$M_NOECHO = %X'40'; literal IO$M_TIMED = %X'80'; literal IO$M_CVTLOW = %X'100'; literal IO$M_NOFILTR = %X'200'; literal IO$M_DSABLMBX = %X'400'; literal IO$M_PURGE = %X'800'; literal IO$M_TRMNOECHO = %X'1000'; literal IO$M_REFRESH = %X'2000'; literal IO$M_ESCAPE = %X'4000'; literal IO$M_EXTEND = %X'8000'; literal IO$M_CANCTRLO = %X'40'; literal IO$M_ENABLMBX = %X'80'; literal IO$M_NOFORMAT = %X'100'; literal IO$M_BREAKTHRU = %X'200'; literal IO$M_NEWLINE = %X'400'; literal IO$M_TYPEAHDCNT = %X'40'; literal IO$M_MAINT = %X'40'; literal IO$M_CTRLYAST = %X'80'; literal IO$M_CTRLCAST = %X'100'; literal IO$M_HANGUP = %X'200'; literal IO$M_OUTBAND = %X'400'; literal IO$M_TT_CONNECT = %X'800'; literal IO$M_TT_DISCON = %X'1000'; literal IO$M_TT_PROCESS = %X'2000'; literal IO$M_BRDCST = %X'4000'; literal IO$M_LOOP = %X'80'; literal IO$M_UNLOOP = %X'100'; literal IO$M_LINE_OFF = %X'200'; literal IO$M_SET_MODEM = %X'400'; literal IO$M_LINE_ON = %X'800'; literal IO$M_LOOP_EXT = %X'1000'; literal IO$M_AUTXOF_ENA = %X'2000'; literal IO$M_AUTXOF_DIS = %X'4000'; literal IO$M_INCLUDE = %X'800'; literal IO$M_TT_ABORT = %X'1000'; literal IO$M_POSIXINIT = %X'40'; literal IO$M_POSIXFLOW = %X'80'; literal IO$M_SET_POSIX = %X'80'; literal IO$M_CLEAR_POSIX = %X'100'; literal IO$M_SET_TERMIOS = %X'200'; literal IO$M_SET_PTC = %X'400'; literal IO$M_CLEAR_PTC = %X'800'; literal IO$M_FLUSH_TAB = %X'1000'; literal IO$M_FLUSH_OUTPUT = %X'2000'; literal IO$M_UPDATE_PTC = %X'4000'; literal IO$M_OUT_XOFF = %X'100'; literal IO$M_OUT_XON = %X'200'; literal IO$M_IN_XOFF = %X'400'; literal IO$M_IN_XON = %X'800'; literal IO$M_O_NONBLOCK = %X'40'; literal IO$M_INTERRUPT = %X'40'; literal IO$M_MULTIPLE = %X'80'; literal IO$M_LOCKBUF = %X'100'; literal IO$M_NOBLOCK = %X'200'; literal IO$M_ABORT = %X'100'; literal IO$M_SYNCH = %X'200'; literal IO$M_RESPONSE = %X'40'; literal IO$M_STARTUP = %X'40'; literal IO$M_SHUTDOWN = %X'80'; literal IO$M_ATTNAST = %X'100'; literal IO$M_CTRL = %X'200'; literal IO$M_SET_MAC = %X'800'; literal IO$M_UPDATE_MAP = %X'1000'; literal IO$M_ROUTE = %X'2000'; literal IO$M_RD_MEM = %X'40'; literal IO$M_RD_MODEM = %X'80'; literal IO$M_RD_COUNT = %X'100'; literal IO$M_CLR_COUNT = %X'400'; literal IO$M_SENSE_MAC = %X'800'; literal IO$M_SHOW_MAP = %X'1000'; literal IO$M_SHOW_ROUTE = %X'2000'; literal IO$K_SRRUNOUT = 0; ! Send or rcv until cnt runout literal IO$K_PTPBSC = 8192; ! Point to point BSC control literal IO$K_LOOPTEST = 57344; ! Loop test ! X25 driver WRITEBLK function modifier bits. literal IO$M_MORE = %X'40'; literal IO$M_QUALIFIED = %X'80'; literal IO$M_REDIRECT = %X'40'; literal IO$M_ACCEPT = %X'80'; literal IO$M_SETEVF = %X'40'; literal IO$M_WORD = %X'40'; literal IO$M_SETFNCT = %X'200'; literal IO$M_DATAPATH = %X'400'; literal IO$M_CYCLE = %X'1000'; literal IO$M_RESET = %X'2000'; literal IO$M_SETCUADR = %X'100'; literal IO$M_SETBSIZE = %X'200'; literal IO$M_SETPOOLSZ = %X'400'; literal IO$M_SETENQCNT = %X'800'; literal IO$M_CLEAR = %X'1000'; literal IO$M_LPBEXT = %X'2000'; literal IO$M_LPBINT = %X'4000'; literal IO$M_READCSR = %X'8000'; literal IO$M_NOCTSWAIT = %X'40'; literal IO$M_SLAVLOOP = %X'80'; literal IO$M_NODSRWAIT = %X'100'; literal IO$M_MAINTLOOP = %X'200'; literal IO$M_LASTBLOCK = %X'400'; literal IO$M_INTCLOCK = %X'1000'; literal IO$M_LT_CONNECT = %X'40'; literal IO$M_LT_DISCON = %X'80'; literal IO$M_LT_READPORT = %X'100'; literal IO$M_LT_MAP_PORT = %X'200'; literal IO$M_LT_RATING = %X'400'; literal IO$M_LT_SOL_INFO = %X'800'; literal IO$M_LT_RCV_INFO = %X'1000'; literal IO$M_LT_SETMODE = %X'2000'; literal IO$M_LT_SENSEMODE = %X'4000'; literal IO$M_LT_QUE_CHG_NOTIF = %X'8000'; literal IO$M_LT_MAP_FILLER = %X'1'; literal IO$M_LT_MAP_NODNAM = %X'2'; literal IO$M_LT_MAP_PORNAM = %X'4'; literal IO$M_LT_MAP_SRVNAM = %X'8'; literal IO$M_LT_MAP_LNKNAM = %X'10'; literal IO$M_LT_MAP_NETADR = %X'20'; literal IO$M_FLUSH = %X'40'; literal IO$M_WRITE_BARRIER = %X'80'; literal IO$M_MKFILL1 = %X'40'; literal IO$M_ALLOWFAST_NEVER = %X'80'; literal IO$M_ALLOWFAST_PER_IO = %X'100'; literal IO$M_ALLOWFAST_ALWAYS = %X'200'; literal IO$M_ADD = %X'40'; literal IO$M_IDSTRING = %X'40'; literal IO$M_SERIALNUM = %X'80'; literal IO$M_BYPASS_VALID_CHK = %X'80'; literal IO$S_IODEF = 3; ! Basic I/O function code/modifiers structure macro IO$V_FCODE = 0,0,6,0 %; literal IO$S_FCODE = 6; ! Function Code Field macro IO$V_FMODIFIERS = 0,6,10,0 %; literal IO$S_FMODIFIERS = 10; ! Function Modifiers Field ! Function modifiers common to all drivers which do error logging macro IO$V_INHERLOG = 0,11,1,0 %; ! Inhibit error logging ! General disk and tape function code modifiers macro IO$V_ERASE = 0,10,1,0 %; ! Erase data macro IO$V_EXFUNC = 0,13,1,0 %; ! func<31:16> are valid macro IO$V_DATACHECK = 0,14,1,0 %; ! Write check data after transfer macro IO$V_INHRETRY = 0,15,1,0 %; ! Inhibit error retry ! the following are only valid if EXFUNC is set macro IO$V_SYNCSTS = 0,16,1,0 %; ! allow synchronous completion macro IO$V_NOVCACHE = 0,17,1,0 %; ! do not use VBN cache macro IO$V_BUFOBJ = 0,18,1,0 %; ! Buffer object I/O macro IO$V_TRUSTED = 0,19,1,0 %; ! I/O from trusted component macro IO$V_FILE_FLUSH = 0,20,1,0 %; ! Flush file to disk macro IO$V_BARRIER = 0,21,1,0 %; ! Insert a barrier after the write macro IO$V_RAH_HINT = 0,22,1,0 %; ! Readahead hint (used by XFC) ! General disk function code modifiers macro IO$V_INHSEEK = 0,12,1,0 %; ! Inhibit implied seek on physical functions ! General disk READ function code modifiers ! the following are only valid if EXFUNC is set macro IO$V_READ_TO_EOF = 0,21,1,0 %; ! Reserved for Internal Use only. ! General tape function code modifiers macro IO$V_REVERSE = 0,6,1,0 %; ! Reverse operation macro IO$V_NOWAIT = 0,7,1,0 %; ! No wait for rewind to complete macro IO$V_INHEXTGAP = 0,12,1,0 %; ! Inhibit extended inter-record gap macro IO$V_RETENSION = 0,13,1,0 %; ! Traverse the entire tape to uniformly set the tape's tension. ! Applies only to IO$_REWIND/REWINDOFF functions macro IO$V_ALLOWFAST = 0,14,1,0 %; ! Allow fast skip by filemarks when enabled ! Applies only to IO$_SKIPFILE/SPACEFILE functions macro IO$V_MT3_DENSITY = 0,15,1,0 %; ! Density Setmode and Sensemode for MTD enhanced tape drivers. ! DU & TU, disk & tape class driver transfer function modifier bits macro IO$V_MSCPMODIFS = 0,8,1,0 %; ! Use MSCP modifiers in P5 macro IO$V_SHADOW = 0,6,1,0 %; ! Shadowing SENSECHAR macro IO$V_LOCATE = 0,7,1,0 %; ! Shadowing Locate function macro IO$V_MSCP_FORMAT = 0,6,1,0 %; ! PACKACK media for formatting macro IO$V_ALLHOSTS = 0,6,1,0 %; ! Do available as for all class drivers macro IO$V_DISSOLVE = 0,7,1,0 %; ! Dissolve shadow set macro IO$V_NOCLEANUP = 0,8,1,0 %; ! Normal shadow set cleanup not necessary macro IO$V_SPINDOWN = 0,6,1,0 %; ! Spin down removed member macro IO$V_EST_COM_PATH = 0,6,1,0 %; ! Establish Communication Path macro IO$V_LCL_SRC_UNIT = 0,7,1,0 %; ! Local Source Unit macro IO$V_RTN_COM_PATH = 0,8,1,0 %; ! Retain Communication Path macro IO$V_DEALC_ALL = 0,6,1,0 %; ! Deallocate All macro IO$V_DEALC_HRN = 0,7,1,0 %; ! Deallocate by Host Reference Number macro IO$V_DEALC_ENTLOC = 0,8,1,0 %; ! Deallocate by Entry Locator macro IO$V_DECR_AFC = 0,9,1,0 %; ! Decrement Allocation Failure Count macro IO$V_READ_ALL = 0,10,1,0 %; ! Read All macro IO$V_READ_HRN = 0,11,1,0 %; ! Read by Host Reference Number macro IO$V_BREAK_CONN = 0,12,1,0 %; ! Break Connection ! HBS driver transfer function modifier bits ! Make sure that IO$V_SHADOW .ne. IO$V_LOCATE .ne. IO$V_COPYOP macro IO$V_STEPOVER = 0,6,1,0 %; ! Stepover SCBLBN. macro IO$V_COPYOP = 0,8,1,0 %; ! Shad Server Cpy Operation macro IO$V_EXISTS = 0,6,1,0 %; ! VU already exists. macro IO$V_CBS = 0,7,1,0 %; ! Controller based shadowing. macro IO$V_BOOTING = 0,8,1,0 %; ! Creshad for system disk. macro IO$V_REQ_MINICOPY = 0,9,1,0 %; ! MINICOPY required macro IO$V_OPT_MINICOPY = 0,10,1,0 %; ! MINICOPY optional macro IO$V_NOMINICOPY = 0,11,1,0 %; ! NOMINICOPY macro IO$V_EXPECT_MOUNT_DONE = 0,13,1,0 %; ! All SSMs on command line sent to HBVS macro IO$V_VUEX_FC = 0,9,1,0 %; ! Exclude Full copy members macro IO$V_WRITE_SCB = 0,9,1,0 %; ! Write the SCB macro IO$V_UPD_SCBLBN = 0,13,1,0 %; ! Update HVBS on new location of the SCB ! Function modifier bits for Set Preferred Path. ! No modifiers set, passes in a preferred path (DUDRIVER) macro IO$V_FORCEPATH = 0,6,1,0 %; ! Make path change happen (DUDRIVER) macro IO$V_PREFERRED_CPU = 0,7,1,0 %; ! Set Fast Path CPU affinity of port (port driver) macro IO$V_SYS_ASSIGNABLE = 0,8,1,0 %; ! system assignable port ! DR driver function modifier bits. macro IO$V_COMMOD = 0,6,1,0 %; ! Diagnostic command macro IO$V_MOVETRACKD = 0,7,1,0 %; ! Move track descriptor macro IO$V_DIAGNOSTIC = 0,8,1,0 %; ! Diagnostic function macro IO$V_SKPSECINH = 0,9,1,0 %; ! Skip sector inhibit ! DY driver function modifier bits. macro IO$V_DELDATA = 0,6,1,0 %; ! Write deleted data mark ! DD driver (TU58) function modifier bits. macro IO$V_NOMRSP = 0,6,1,0 %; ! Do not use MRSP for this operation ! Magnetic tape I/O function modifier bits for the TS11. macro IO$V_SWAP = 0,8,1,0 %; ! Swap byte (TS11) macro IO$V_OPPOSITE = 0,9,1,0 %; ! Opposite bit for rereads (TS11) ! TU driver function modifier bits macro IO$V_CLSEREXCP = 0,9,1,0 %; ! Clear serious exception condition ! Tape class driver segmented and large transfer modifier bits macro IO$V_CHUNKDIAG = 0,6,1,0 %; ! Allow diagnostic buffers macro IO$V_TBC = 0,10,1,0 %; ! To be continued modifier ! TUDRIVER SETMODE function modifier bits. macro IO$V_ENAREP = 0,6,1,0 %; ! Enable media quality ! reporting. ! ACP function modifier bits. macro IO$V_ACCESS = 0,6,1,0 %; ! Access file macro IO$V_CREATE = 0,7,1,0 %; ! Create file macro IO$V_DELETE = 0,8,1,0 %; ! Delete file macro IO$V_MOUNT = 0,9,1,0 %; ! Mount volume macro IO$V_DMOUNT = 0,10,1,0 %; ! Dismount volume macro IO$V_REMOUNT = 0,11,1,0 %; ! Remount volume macro IO$V_MOVEFILE = 0,12,1,0 %; ! Move a file macro IO$V_RWSHELVED = 0,14,1,0 %; ! Access shelved files macro IO$V_SETDIR = 0,15,1,0 %; ! Set file as a directory ! Bit 19 used for TRUSTED ! CR (card reader) driver function modifier bits. macro IO$V_BINARY = 0,6,1,0 %; ! Binary read macro IO$V_PACKED = 0,7,1,0 %; ! Packed read ! MB (mailbox) driver function modifier bits. ! The following modifers are for the QIO READ, WRITE and SENSEMODE ! functions. macro IO$V_NOW = 0,6,1,0 %; ! Do not wait for operation complete macro IO$V_STREAM = 0,7,1,0 %; ! Perform stream mode operation (vs. record mode) macro IO$V_READERCHECK = 0,8,1,0 %; ! Perform operation if no read channel is assigned to the mailbox. macro IO$V_WRITERCHECK = 0,9,1,0 %; ! Perform operation if no write channel is assigned to the mailbox. macro IO$V_NORSWAIT = 0,10,1,0 %; ! Do not allow resource waits ! Bit 13 used for EXFUNC ! Bit 19 used for TRUSTED ! More MB (mailbox) driver function modifier bits. ! Mailbox QIO SETMODE function modifiers. macro IO$V_MB_ROOM_NOTIFY = 0,6,1,0 %; ! Notify when some (any) space in the mailbox is available. macro IO$V_READATTN = 0,7,1,0 %; ! Request ast on waiting reader macro IO$V_WRTATTN = 0,8,1,0 %; ! Request ast on waiting writer macro IO$V_SETPROT = 0,9,1,0 %; ! Set volume protection macro IO$V_READERWAIT = 0,10,1,0 %; ! Wait for a read channel to be assigned to the mailbox. macro IO$V_WRITERWAIT = 0,11,1,0 %; ! Wait for a write channel to be assigned to the mailbox. ! TT driver READ function modifier bits. macro IO$V_NOECHO = 0,6,1,0 %; ! Noecho macro IO$V_TIMED = 0,7,1,0 %; ! Timed macro IO$V_CVTLOW = 0,8,1,0 %; ! Convert lower case macro IO$V_NOFILTR = 0,9,1,0 %; ! No filter macro IO$V_DSABLMBX = 0,10,1,0 %; ! Disable mailbox macro IO$V_PURGE = 0,11,1,0 %; ! Purge typeahead macro IO$V_TRMNOECHO = 0,12,1,0 %; ! Terminators are not echoed macro IO$V_REFRESH = 0,13,1,0 %; ! Control-R interrupted read macro IO$V_ESCAPE = 0,14,1,0 %; ! Terminate read on escape sequence macro IO$V_EXTEND = 0,15,1,0 %; ! Used by alternate class drivers ! TT driver WRITE function modifier bits. macro IO$V_CANCTRLO = 0,6,1,0 %; ! Cancel control O macro IO$V_ENABLMBX = 0,7,1,0 %; ! Enable mailbox macro IO$V_NOFORMAT = 0,8,1,0 %; ! Do not format output macro IO$V_BREAKTHRU = 0,9,1,0 %; ! Broadcast I/O macro IO$V_NEWLINE = 0,10,1,0 %; ! Output a newline ! TT driver SENSEMODE function modifier bits. macro IO$V_TYPEAHDCNT = 0,6,1,0 %; ! Sense typeahead information ! TT driver SETMODE subfunction modifier bits. macro IO$V_MAINT = 0,6,1,0 %; ! Enable maint sub modifiers macro IO$V_CTRLYAST = 0,7,1,0 %; ! Set control Y AST macro IO$V_CTRLCAST = 0,8,1,0 %; ! Set Control C macro IO$V_HANGUP = 0,9,1,0 %; ! Set mode and hang up line macro IO$V_OUTBAND = 0,10,1,0 %; ! Set out of band AST macro IO$V_TT_CONNECT = 0,11,1,0 %; ! Connect to detached terminal macro IO$V_TT_DISCON = 0,12,1,0 %; ! Disconnect detached terminal macro IO$V_TT_PROCESS = 0,13,1,0 %; ! Define controlling process macro IO$V_BRDCST = 0,14,1,0 %; ! Define broadcast mask ! TT driver MAINTIANCE subfunction submodifier bits. macro IO$V_LOOP = 0,7,1,0 %; ! Diagnostic loopback macro IO$V_UNLOOP = 0,8,1,0 %; ! Diagnostic reset loopback macro IO$V_LINE_OFF = 0,9,1,0 %; ! Disable line macro IO$V_SET_MODEM = 0,10,1,0 %; ! Diagnostic modem control macro IO$V_LINE_ON = 0,11,1,0 %; ! Enable line macro IO$V_LOOP_EXT = 0,12,1,0 %; ! Diagnostic external loopback macro IO$V_AUTXOF_ENA = 0,13,1,0 %; ! Enable auto XOFF macro IO$V_AUTXOF_DIS = 0,14,1,0 %; ! Disable auto XOFF ! TT driver out-of-band modifier bits. macro IO$V_INCLUDE = 0,11,1,0 %; ! Include character in stream macro IO$V_TT_ABORT = 0,12,1,0 %; ! Abort current I/O ! Posix terminal driver SETMODE subfunction modifier bits. macro IO$V_POSIXINIT = 0,6,1,0 %; ! Enable initialization subfunctions macro IO$V_POSIXFLOW = 0,7,1,0 %; ! Enable flow control subfunctions ! Posix terminal driver INIT subfunction submodifier bits. macro IO$V_SET_POSIX = 0,7,1,0 %; ! Set TT3$M_POSIX and set up PTC macro IO$V_CLEAR_POSIX = 0,8,1,0 %; ! Clear TT3$M_POSIX (opt. delete PTC) macro IO$V_SET_TERMIOS = 0,9,1,0 %; ! Set up termios macro IO$V_SET_PTC = 0,10,1,0 %; ! Set up all of PTC macro IO$V_CLEAR_PTC = 0,11,1,0 %; ! clear PTC macro IO$V_FLUSH_TAB = 0,12,1,0 %; ! flush typeahead buffer macro IO$V_FLUSH_OUTPUT = 0,13,1,0 %; ! flush outstanding writes macro IO$V_UPDATE_PTC = 0,14,1,0 %; ! update PTC ! Posix terminal driver FLOW subfunction submodifier bits. macro IO$V_OUT_XOFF = 0,8,1,0 %; ! Simulate output XOFF macro IO$V_OUT_XON = 0,9,1,0 %; ! Simulate output XON macro IO$V_IN_XOFF = 0,10,1,0 %; ! Simulate input XOFF macro IO$V_IN_XON = 0,11,1,0 %; ! Simulate input XON ! Posix terminal driver READ function modifier bits. macro IO$V_O_NONBLOCK = 0,6,1,0 %; ! Nonblock ! Network WRITE and READ VIRTUAL function modifier bits. macro IO$V_INTERRUPT = 0,6,1,0 %; ! Interrupt message macro IO$V_MULTIPLE = 0,7,1,0 %; ! Multiple write/read request macro IO$V_LOCKBUF = 0,8,1,0 %; ! Direct I/O request macro IO$V_NOBLOCK = 0,9,1,0 %; ! Segment message w/o blocking ! Bit 13 used for EXFUNC ! Bit 19 used for TRUSTED ! Network ACCESS/DEACCESS function modifier bits. macro IO$V_ABORT = 0,8,1,0 %; ! Disconnect abort/connect reject macro IO$V_SYNCH = 0,9,1,0 %; ! Synchronous disconnect ! DATALINK driver WRITE subfunction modifier bits. macro IO$V_RESPONSE = 0,6,1,0 %; ! Transmit this packet as a response ! DATALINK driver SETMODE subfunction modifier bits. macro IO$V_STARTUP = 0,6,1,0 %; ! Start protocol macro IO$V_SHUTDOWN = 0,7,1,0 %; ! Stop protocol macro IO$V_ATTNAST = 0,8,1,0 %; ! Attention AST macro IO$V_CTRL = 0,9,1,0 %; ! Controller (ie. not station) function macro IO$V_SET_MAC = 0,11,1,0 %; ! Set MAC parameters macro IO$V_UPDATE_MAP = 0,12,1,0 %; ! Functional Addr Map macro IO$V_ROUTE = 0,13,1,0 %; ! Source Routing Ops ! DATALINK driver SENSEMODE subfunction modifier bits. macro IO$V_RD_MEM = 0,6,1,0 %; ! Read device memory macro IO$V_RD_MODEM = 0,7,1,0 %; ! Read modem status macro IO$V_RD_COUNT = 0,8,1,0 %; ! Read counters macro IO$V_CLR_COUNT = 0,10,1,0 %; ! Clear counters macro IO$V_SENSE_MAC = 0,11,1,0 %; ! Sense MAC parameters macro IO$V_SHOW_MAP = 0,12,1,0 %; ! Functional Addr Map macro IO$V_SHOW_ROUTE = 0,13,1,0 %; ! Source Routing Ops macro IO$V_MORE = 0,6,1,0 %; ! More data follows (M-bit) macro IO$V_QUALIFIED = 0,7,1,0 %; ! Use qualified sub-channel (Q-bit) ! X25 driver ACCESS function modifier bits. macro IO$V_REDIRECT = 0,6,1,0 %; ! Redirect virtual call macro IO$V_ACCEPT = 0,7,1,0 %; ! Accept virtual call ! LPA-11 driver STARTDATA modifier bits. macro IO$V_SETEVF = 0,6,1,0 %; ! Set event flag ! XA (DR11-W) driver function modifier bits. macro IO$V_WORD = 0,6,1,0 %; ! Word (interrupt)/block (DMA) mode specifier macro IO$V_SETFNCT = 0,9,1,0 %; ! Set "FNCT" bits in device CSR macro IO$V_DATAPATH = 0,10,1,0 %; ! Change UBA datapath (direct/buffered) macro IO$V_CYCLE = 0,12,1,0 %; ! Set "cycle" bit in device CSR macro IO$V_RESET = 0,13,1,0 %; ! Device reset specifier ! 3271 driver function modifier bits. macro IO$V_SETCUADR = 0,8,1,0 %; ! Set a new CU address macro IO$V_SETBSIZE = 0,9,1,0 %; ! Set a new maximum buffer size macro IO$V_SETPOOLSZ = 0,10,1,0 %; ! Set a new pool size macro IO$V_SETENQCNT = 0,11,1,0 %; ! Set a new ENQ threshold macro IO$V_CLEAR = 0,12,1,0 %; ! Zero status counters macro IO$V_LPBEXT = 0,13,1,0 %; ! Loopback is external loopback macro IO$V_LPBINT = 0,14,1,0 %; ! Loopback is internal loopback (DUP11) macro IO$V_READCSR = 0,15,1,0 %; ! Read CSRs on DUP11 ! XW driver function modifier bits. macro IO$V_NOCTSWAIT = 0,6,1,0 %; ! Diagnostic function macro IO$V_SLAVLOOP = 0,7,1,0 %; ! Diagnostic function macro IO$V_NODSRWAIT = 0,8,1,0 %; ! Do not wait for DSR (diag) macro IO$V_MAINTLOOP = 0,9,1,0 %; ! Internal maint loop macro IO$V_LASTBLOCK = 0,10,1,0 %; ! Last block of message macro IO$V_INTCLOCK = 0,12,1,0 %; ! Internal clock ! LAT driver function modifier bits. macro IO$V_LT_CONNECT = 0,6,1,0 %; ! Solicit connection to remote LAT device macro IO$V_LT_DISCON = 0,7,1,0 %; ! Disconnect LAT session macro IO$V_LT_READPORT = 0,8,1,0 %; ! Read LAT device info macro IO$V_LT_MAP_PORT = 0,9,1,0 %; ! Map application port macro IO$V_LT_RATING = 0,10,1,0 %; ! Set service rating macro IO$V_LT_SOL_INFO = 0,11,1,0 %; ! Request solicit info macro IO$V_LT_RCV_INFO = 0,12,1,0 %; ! Setup to recive reply macro IO$V_LT_SETMODE = 0,13,1,0 %; ! SETMODE on LTA device macro IO$V_LT_SENSEMODE = 0,14,1,0 %; ! SENSEMODE on LTA device macro IO$V_LT_QUE_CHG_NOTIF = 0,15,1,0 %; ! Queue change AST ! LAT item list definitions for MAP_PORT macro IO$V_LT_MAP_FILLER = 0,0,1,0 %; ! Item 0 not used macro IO$V_LT_MAP_NODNAM = 0,1,1,0 %; ! Server node name macro IO$V_LT_MAP_PORNAM = 0,2,1,0 %; ! Server port name macro IO$V_LT_MAP_SRVNAM = 0,3,1,0 %; ! Server service name macro IO$V_LT_MAP_LNKNAM = 0,4,1,0 %; ! Link name macro IO$V_LT_MAP_NETADR = 0,5,1,0 %; ! Server Ethernet Add. ! FSDRIVER function modifiers for Dollar. macro IO$V_FLUSH = 0,6,1,0 %; ! Flush writes macro IO$V_WRITE_BARRIER = 0,7,1,0 %; ! Barrier writes to this point ! MKDRIVER function modifiers for SETMODE macro IO$V_MKFILL1 = 0,6,1,0 %; ! Filler to not coincide with TU modifier (for safety) macro IO$V_ALLOWFAST_NEVER = 0,7,1,0 %; ! Disable all skip by filemarks macro IO$V_ALLOWFAST_PER_IO = 0,8,1,0 %; ! Enable skip by filemarks with i/o fcn modifier macro IO$V_ALLOWFAST_ALWAYS = 0,9,1,0 %; ! Default all IO$_SKIPFILE to use skip by filemarks ! Snapshot-capable disk (SD) driver function modifier bits. macro IO$V_ADD = 0,6,1,0 %; ! Add UNIT to an existing pool ! USB usbattr modifiers macro IO$V_IDSTRING = 0,6,1,0 %; ! Request for printer's 1284 device ID string macro IO$V_SERIALNUM = 0,7,1,0 %; ! Request for printer's serial number (if supported) ! Disk-specific PACKACK modifiers macro IO$V_BYPASS_VALID_CHK = 0,7,1,0 %; ! Send PACKACK to driver even if UCB$M_VALID is set (LCLDSKVALID) !*** MODULE $IOSADEF *** ! + ! Define I/O Status Area ! - literal IOSA$K_LENGTH = 32; ! Length of IOSA literal IOSA$C_LENGTH = 32; ! Length of IOSA literal IOSA$S_IOSADEF = 32; ! Size of IOSA literal IOSA$S_IOSA = 32; macro IOSA$R_IOSB = 0,0,0,0 %; literal IOSA$S_IOSB = 8; macro IOSA$W_IOSB_STATUS = 0,0,16,0 %; ! Final I/O status macro IOSA$W_IOSB_BCNT = 2,0,16,0 %; ! 16-bit byte count macro IOSA$r_l = 4,0,32,0 %; literal IOSA$s_l = 4; macro IOSA$L_IOSB_DEV_DEPEND = 4,0,32,0 %; ! 32-bit device dependent info macro IOSA$L_IOSB_PID = 4,0,32,0 %; ! 32-bit pid macro IOSA$L_IOSB_BCNT = 2,0,32,0 %; ! 32-bit byte count (unaligned) macro IOSA$W_IOSB_DEV_DEPEND_HIGH = 6,0,16,0 %; ! 16-bit device dependent info macro IOSA$R_STATUSQ = 0,0,0,0 %; literal IOSA$S_STATUSQ = 8; macro IOSA$L_STATUS = 0,0,32,0 %; ! Status macro IOSA$L_RESD = 4,0,32,0 %; ! Reserved (driver) macro IOSA$Q_COUNT_Q = 8,0,0,1 %; literal IOSA$S_COUNT_Q = 8; ! Force size macro IOSA$IH_COUNT = 8,0,0,1 %; literal IOSA$S_COUNT = 8; ! Number of bytes macro IOSA$Q_CONTEXT_Q = 16,0,0,1 %; literal IOSA$S_CONTEXT_Q = 8; ! Force size macro IOSA$PH_CONTEXT_P = 16,0,0,1 %; literal IOSA$S_CONTEXT_P = 8; ! User context area macro IOSA$IH_CONTEXT = 16,0,0,1 %; literal IOSA$S_CONTEXT = 8; ! User context area macro IOSA$PH_UPDSEC_NOWRT_VA = 16,0,0,1 %; literal IOSA$S_UPDSEC_NOWRT_VA = 8; ! First VA not written by $UPDSEC_64 macro IOSA$L_RESL = 24,0,0,0 %; literal IOSA$S_RESL = 8; ! in the future some macro IOSA$Q_RESQ = 24,0,0,1 %; literal IOSA$S_RESQ = 8; ! additional space macro IOSA$Q_CONTEXT_ID = 24,0,0,1 %; literal IOSA$S_CONTEXT_ID = 8; ! User context ID ! + ! $IO_SETUP flag bits ! - literal FIO$M_EXPEDITE = %X'1'; literal FIO$M_AST_NOFLOAT = %X'2'; literal FIO$M_CTX = %X'4'; literal FIO$S_SETUP_FLAGS = 4; macro FIO$L_FLAGS_LONGWORD = 0,0,32,1 %; macro FIO$V_EXPEDITE = 0,0,1,0 %; ! Make this a high-priority I/O macro FIO$V_AST_NOFLOAT = 0,1,1,0 %; ! The AST routine does not use f.p. regs macro FIO$V_CTX = 0,2,1,0 %; ! Completion notification done via EFN$C_CTX !*** MODULE $IOSBDEF *** ! + ! Define I/O Status Block ! - literal IOSB$S_IOSB = 8; macro IOSB$W_STATUS = 0,0,16,0 %; ! Final I/O status macro IOSB$W_BCNT = 2,0,16,0 %; ! 16-bit byte count macro IOSB$r_l = 4,0,32,0 %; literal IOSB$s_l = 4; macro IOSB$L_DEV_DEPEND = 4,0,32,0 %; ! 32-bit device dependent info macro IOSB$L_PID = 4,0,32,0 %; ! 32-bit pid macro IOSB$L_BCNT = 2,0,32,0 %; ! 32-bit byte count (unaligned) macro IOSB$W_DEV_DEPEND_HIGH = 6,0,16,0 %; ! 16-bit device dependent info macro IOSB$L_GETXXI_STATUS = 0,0,32,0 %; ! Final GETxxI status macro IOSB$L_REG_STATUS = 0,0,32,0 %; ! Final $Registry status literal IOSB$K_LENGTH = 8; ! Length of IOSB literal IOSB$C_LENGTH = 8; ! Length of IOSB !*** MODULE $ISSDEF *** ! + ! $PERSONA_CREATE, $PERSONA_CREATE_INT itemlist item codes ! These item codes must match the TLV item codes in [LIB]PSBDEF.SDL ! ! - ! + ! At the time of this modules creation there are four CHP$ item codes which ! must have the same value as their ISS$ counterparts. They are as follows: ! ! ISS$_WORKPRIV = CHP$_PRIV = 3 ! ISS$_CLASS = CHP$_CLASS = 5 ! ISS$_ADD_RIGHTS = CHP$_ADD_RIGHTS = 7 ! ISS$_UIC = CHP$_UIC = 22 ! ! This is to preserve backward comptibility with $CREATE_USER_PROFILE. ! - literal ISS$_FLAGS = 1; ! 1 Persona flags literal ISS$_ARBFLAGS = 2; ! 2 Unused literal ISS$_WORKPRIV = 3; ! 3 Working privileges literal ISS$_MODE = 4; ! 4 Access mode literal ISS$_WORKCLASS = 5; ! 5 Working classification literal ISS$_RIGHTS = 6; ! 6 Rights literal ISS$_ADD_RIGHTS = 7; ! 7 Add to the Rights literal ISS$_ADD_AUTHRIGHTS = 8; ! 8 Add to the AuthRights literal ISS$_USERNAME = 9; ! 9 Username literal ISS$_ACCOUNT = 10; ! 10 Account literal ISS$_NOAUDIT = 11; ! 11 No Audit setting literal ISS$_AUTHPRIV = 12; ! 12 Authorized privileges literal ISS$_PERMPRIV = 13; ! 13 Permanent privileges literal ISS$_IMAGE_WORKPRIV = 14; ! 14 Image working privileges literal ISS$_ENABLED = 15; ! 15 Rights enabled mask literal ISS$_AUTHRIGHTS = 16; ! 16 Authorized rights literal ISS$_MINCLASS = 17; ! 17 Minimum classification literal ISS$_MAXCLASS = 18; ! 18 Maximum classification literal ISS$_UID = 19; ! 19 UID literal ISS$_PERSONA_ID = 20; ! 20 Persona ID literal ISS$_PRINCIPAL = 21; ! 21 Principal Name literal ISS$_UIC = 22; ! 22 UIC literal ISS$_SWITCH_EXTENSION = 23; ! 23 Switch Extension directive literal ISS$_PRIMARY_EXTENSION = 24; ! 24 PSB Primary Extension literal ISS$_EXTENSION_COUNT = 25; ! 25 Count of valid extensions literal ISS$_EXTENSION_ARRAY = 26; ! 26 Array of valid extension IDs literal ISS$_RIGHTS_INDEX = 27; ! 27 Rights Chain Index - sets the ! chain for all rights list ! operations. literal ISS$_INPUT_DATA = 28; ! 28 Generic buffer for IN/OUT query literal ISS$_POSIX_UID = 29; ! 29 POSIX User ID literal ISS$_POSIX_GID = 30; ! 30 POSIX Group ID literal ISS$_MIN_ITEM_CODE = 1; literal ISS$_MAX_ITEM_CODE = 30; ! + ! Bits within item code ISS$_FLAGS ! - literal ISS$M_FLAG_PERMANENT = %X'1'; literal ISS$M_FLAG_SECAUDIT = %X'2'; literal ISS$S_ISSFLAGSDEF = 4; macro ISS$V_FLAG_PERMANENT = 0,0,1,0 %; macro ISS$V_FLAG_SECAUDIT = 0,1,1,0 %; ! Codes that represent common attributes that are normally ! present in all persona extensions literal ISS$_COMMON_FLAGS = 1024; ! Flags literal ISS$_COMMON_USERNAME = 1025; ! Username literal ISS$_COMMON_ACCOUNT = 1026; ! Account literal ISS$_DOMAIN = 1027; ! Domain literal ISS$_COMMON_PRINCIPAL = 1028; ! principal literal ISS$_DOI = 1029; literal ISS$_EXTENSION = 1030; ! Extension name literal ISS$_MAKE_TLV = 1031; ! For NSA$MAKE_TLV literal ISS$_MIN_COMMON_ITEM_CODE = 1024; literal ISS$_MAX_COMMON_ITEM_CODE = 1031; ! Codes that represent attributes specific to each persona extension. ! These codes are shared by all extensions. ! NT Persona extension item codes literal ISS$_NT_TOKEN = 8192; ! token literal ISS$_NT_SECURITY_SUBJECT = 8193; ! securtiy context literal ISS$_NT_FLAGS = 8194; literal ISS$_NT_USER_REFCOUNT = 8195; literal ISS$_NT_PRINCIPAL = 8196; literal ISS$_NT_CREDENTIALS = 8197; ! access token + security context literal ISS$_NT_NT_OWF_PASSWORD = 8198; ! literal ISS$_NT_LM_OWF_PASSWORD = 8199; ! literal ISS$_NT_UNPACK_CRED_SIZE = 8200; literal ISS$_NT_TOKEN_TOKENID = 8201; literal ISS$_NT_TOKEN_IMPERSONATELEVEL = 8202; literal ISS$_NT_TOKEN_AUTHENTICATIONID = 8203; literal ISS$_NT_TOKEN_USERANDGROUPCOUNT = 8204; literal ISS$_NT_TOKEN_VARIABLELENGTH = 8205; literal ISS$_NT_TOKEN_USERANDGROUPS = 8206; literal ISS$_NT_TOKEN_USERANDGROUPS_SID = 8207; literal ISS$_NT_TOKEN_PRIMARYGROUP = 8208; literal ISS$_NT_TOKEN_PRIVILEGES = 8209; literal ISS$_NT_TOKEN_DEFAULTDACL = 8210; literal ISS$_NT_TOKEN_UNIXUID = 8211; literal ISS$_NT_TOKEN_UNIXGID = 8212; literal ISS$_NT_TOKEN_GIDINFO = 8213; literal ISS$_NT_TOKEN_GIDINFO_GIDS = 8214; literal ISS$_NT_TOKEN_UNIXNAME = 8215; literal ISS$_NT_TOKEN_DOMAINNAME = 8216; literal ISS$_NT_TOKEN_USERNAME = 8217; literal ISS$_NT_TOKEN_USERSESSIONKEY = 8218; literal ISS$_NT_TOKEN_LMSESSIONKEY = 8219; literal ISS$_NT_TOKEN_VARIABLEPART = 8220; literal ISS$_NT_TOKEN_GROUP_LIST = 8221; literal ISS$_NT_TOKEN_PRIVILEGES_LIST = 8222; literal ISS$_NT_SECURITY_SIGNATURE = 8223; literal ISS$_NT_SECURITY_SMBUID = 8224; literal ISS$_NT_SECURITY_PROCESSAUDITID = 8225; literal ISS$_NT_SECURITY_PROCESSID = 8226; literal ISS$_NT_SECURITY_LOGONID = 8227; literal ISS$_NT_SECURITY_LOGONTYPE = 8228; literal ISS$_NT_SECURITY_SUBJECTFLAGS = 8229; literal ISS$_NT_SECURITY_CONTEXT_OTHER = 8230; literal ISS$_MIN_NT_ITEM_CODE = 8192; literal ISS$_MAX_NT_ITEM_CODE = 8230; ! + ! Bits within item code ISS$_ENABLED ! - literal ISS$M_ENABLED_PERSONA = %X'1'; literal ISS$M_ENABLED_SUBSYSTEM = %X'2'; literal ISS$M_ENABLED_IMAGE = %X'4'; literal ISS$M_ENABLED_SYSTEM = %X'8'; literal ISS$M_ENABLED_TEMPORARY = %X'10'; literal ISS$S_ISSENABLEDDEF = 4; macro ISS$V_ENABLED_PERSONA = 0,0,1,0 %; macro ISS$V_ENABLED_SUBSYSTEM = 0,1,1,0 %; macro ISS$V_ENABLED_IMAGE = 0,2,1,0 %; macro ISS$V_ENABLED_SYSTEM = 0,3,1,0 %; macro ISS$V_ENABLED_TEMPORARY = 0,4,1,0 %; ! ARB_SUPPORT constants literal ISS$C_ARB_UNSPECIFIED = -1; literal ISS$C_ARB_NONE = 0; literal ISS$C_ARB_CLEAR = 1; literal ISS$C_ARB_READ_ONLY = 2; literal ISS$C_ARB_FULL = 3; literal ISS$C_ARB_FORCE = 4; ! Ignore multiple usermode persona check literal ISS$C_ARB_MAX_CODE = 4; literal ISS$C_ARB_MIN_CODE = 0; ! Reserved Persona Ids literal ISS$C_ID_NATURAL = 1; literal ISS$C_ID_POSIX_REAL = -2; literal ISS$C_ID_IMAGE_PERSONA = -2; ! + ! Persona services control flags ! - literal ISS$M_IMP_FLAGS = %X'7F'; literal ISS$M_ASSUME_NODEREF_OLD = %X'10000'; literal ISS$M_ASSUME_NOREF_NEW = %X'20000'; literal ISS$M_CREATE_DEFPRIV = %X'8'; literal ISS$M_CREATE_DEFCLASS = %X'10'; literal ISS$M_CREATE_AUTHPRIV = %X'20'; literal ISS$M_NOACCESS = %X'100000'; literal ISS$S_ISSSRVCFLG = 4; ! ! Common flags ! macro ISS$V_IMP_FLAGS = 0,0,7,0 %; literal ISS$S_IMP_FLAGS = 7; ! Previously defined IMP flags ! ! ASSUME service control flags ! macro ISS$R_ASSUME_FLAGS = 0,0,32,0 %; literal ISS$S_ASSUME_FLAGS = 4; macro ISS$V_ASSUME_NODEREF_OLD = 0,16,1,0 %; ! Do not drop a reference to ! the old (pre-ASSUME) persona macro ISS$V_ASSUME_NOREF_NEW = 0,17,1,0 %; ! Do not add a reference to ! the new (post-ASSUME) persona ! ! CREATE service control flags ! macro ISS$R_CREATE_FLAGS = 0,0,32,0 %; literal ISS$S_CREATE_FLAGS = 4; macro ISS$V_CREATE_DEFPRIV = 0,3,1,0 %; ! Create psb w/ def. privs. macro ISS$V_CREATE_DEFCLASS = 0,4,1,0 %; ! Create psb w/ def. class. macro ISS$V_CREATE_AUTHPRIV = 0,5,1,0 %; ! Create psb w/ auth. privs. ! and the assume flags. macro ISS$V_NOACCESS = 0,20,1,0 %; ! When set, do not access ! the SYSUAF or RIGHTSLIST. ! This is similar to ! CREATE_USER_PROFILE. ! NT TLV version number literal ISS$K_NT_VERSION_1 = 1; !*** MODULE $JPIDEF *** ! + ! ! Get Job Process Information Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! (preceeding the ENDlistname item) so that users will not have ! to relink. ! - ! Scheduler policy definitions literal JPI$K_DEFAULT_POLICY = 0; ! Native VMS scheduling policy literal JPI$K_PSX_FIFO_POLICY = 1; ! POSIX fifo policy literal JPI$K_PSX_RR_POLICY = 2; ! POSIX round-robbin policy literal JPI$K_ALL_THREADS = -2147483648; ! policy affectsall kernel threads ! DEFINE TABLE NUMBERS ! STRUCTURE CODES MUST START AT 1 literal JPI$C_ADRTYPE = 1; ! ITEM IS ADDRESS OF DATA literal JPI$C_CTLTYPE = 2; ! ITEM IS IN CONTROL REGION literal JPI$C_PCBTYPE = 3; ! ITEM IN PCB literal JPI$C_PHDTYPE = 4; ! ITEM IN PHD literal JPI$C_PCBFLDTYPE = 5; ! ITEM IS BIT FIELD literal JPI$C_PHDFLDTYPE = 6; ! ITEM IS BIT FIELD literal JPI$C_JIBTYPE = 7; ! ITEM IN JIB (SUBTYPE) ! NOTE: The PSB replaces the ARB within this context! literal JPI$C_PSBTYPE = 8; ! ITEM IN PSB (SUBTYPE) literal JPI$C_KTBTYPE = 9; ! ITEM IN KTB (SUBTYPE) literal JPI$C_MAXSTRUC = 6; ! TOTAL OF 6 TABLES literal JPI$C_LISTEND = 0; ! DEFINE ITMLST TERMINATOR literal JPI$_CHAIN = -1; ! CHAIN INDICATOR literal JPI$_GETJPI_CONTROL_FLAGS = -2; ! SPECIAL CONTROL ITEMS literal JPI$M_NO_TARGET_INSWAP = %X'1'; literal JPI$M_NO_TARGET_AST = %X'2'; literal JPI$M_IGNORE_TARGET_STATUS = %X'4'; literal JPI$M_THREAD = %X'8'; literal JPI$M_NATURAL_PERSONA = %X'10'; literal JPI$M_FILL1 = %X'7FE0'; literal JPI$M_NEED_THREAD_CAP = %X'8000'; literal JPI$S_JPICTLDEF = 4; macro JPI$V_NO_TARGET_INSWAP = 0,0,1,0 %; ! Do not inswap the target process, (do deliver ASTs if it is resident) macro JPI$V_NO_TARGET_AST = 0,1,1,0 %; ! Do not send AST to target macro JPI$V_IGNORE_TARGET_STATUS = 0,2,1,0 %; ! Don't check target state macro JPI$V_THREAD = 0,3,1,0 %; ! Return information about each thread for multithreaded processes macro JPI$V_NATURAL_PERSONA = 0,4,1,0 %; ! Select natural persona when processing security profile item codes macro JPI$V_FILL1 = 0,5,10,0 %; literal JPI$S_FILL1 = 10; ! Filler so NEED_THREAD_CAP bit is in bit 15 ! NOTE: This bit is used internally by $GETJPI in cluster environments. It is not specified by the user. macro JPI$V_NEED_THREAD_CAP = 0,15,1,0 %; ! Indicates that target node in a cluster needs to know about kernel ! threads ! NOTE: the following constants must match values in $JIBDEF! literal JPI$K_OTHER = 0; ! JPI$_Mode values literal JPI$K_NETWORK = 1; ! JPI$_Mode values literal JPI$K_BATCH = 2; ! JPI$_Mode values literal JPI$K_INTERACTIVE = 3; ! JPI$_Mode values literal JPI$K_DETACHED = 0; ! JPI$_JOBTYPE values literal JPI$K_LOCAL = 3; ! JPI$_JOBTYPE values literal JPI$K_DIALUP = 4; ! JPI$_JOBTYPE values literal JPI$K_REMOTE = 5; ! JPI$_JOBTYPE values ! (also BATCH & INTERACTIVE) literal JPI$M_NEW_MAIL_AT_LOGIN = %X'1'; literal JPI$M_PASSWORD_CHANGED = %X'2'; literal JPI$M_PASSWORD_EXPIRED = %X'4'; literal JPI$M_PASSWORD_WARNING = %X'8'; literal JPI$M_PASSWORD2_CHANGED = %X'10'; literal JPI$M_PASSWORD2_EXPIRED = %X'20'; literal JPI$M_PASSWORD2_WARNING = %X'40'; literal JPI$S_JPILGIDEF = 4; macro JPI$V_NEW_MAIL_AT_LOGIN = 0,0,1,0 %; ! User had new MAIL message(s) macro JPI$V_PASSWORD_CHANGED = 0,1,1,0 %; ! Primary password changed macro JPI$V_PASSWORD_EXPIRED = 0,2,1,0 %; ! Primary password expired on login macro JPI$V_PASSWORD_WARNING = 0,3,1,0 %; ! Primary password expiration imminent macro JPI$V_PASSWORD2_CHANGED = 0,4,1,0 %; ! Secondary password changed macro JPI$V_PASSWORD2_EXPIRED = 0,5,1,0 %; ! Secondary password expired on login macro JPI$V_PASSWORD2_WARNING = 0,6,1,0 %; ! Secondary password expiration imminent ! NOTE: Symlink search mode encodings are coordinated across $JPIDEF, $LIBCQDEF, ! $LIBFILDEF, $PPROPDEF, and $NAMLDEF. literal JPI$K_SEARCH_SYMLINK_NONE = 1; ! JPI$_SEARCH_SYMLINK_xxx values literal JPI$K_SEARCH_SYMLINK_ALL = 2; ! JPI$_SEARCH_SYMLINK_xxx values literal JPI$K_SEARCH_SYMLINK_NOELLIPS = 3; ! JPI$_SEARCH_SYMLINK_xxx values ! ITEM IDENTIFIERS FOR PCB literal JPI$_ASTACT = 768; ! ACCESS MODES WITH ACTIVE ASTS literal JPI$_ASTEN = 769; ! ACCESS MODES WITH ASTS ENABLED literal JPI$_PRI = 770; ! CURRENT PROCESS PRIORITY literal JPI$_OWNER = 771; ! Epid of owner process, if this is a subprocess literal JPI$_UIC = 772; ! UIC OF PROCESS literal JPI$_STS = 773; ! PROCESS STATUS literal JPI$_STATE = 774; ! PROCESS STATE literal JPI$_MEM = 775; ! MEMBER FIELD OF UIC literal JPI$_GRP = 776; ! GROUP FIELD OF UIC literal JPI$_PRIB = 777; ! PROCESS BASE PRIORITY literal JPI$_APTCNT = 778; ! ACTIVE PAGE TABLE COUNT literal JPI$_TMBU = 779; ! TERMINATION MAILBOX UNIT literal JPI$_GPGCNT = 780; ! GLOBAL PAGE COUNT IN WORKING SET literal JPI$_PPGCNT = 781; ! PROCESS PAGE COUNT IN WORKING SET literal JPI$_ASTCNT = 782; ! AST COUNT REMAINING literal JPI$_BIOCNT = 783; ! BUFFERED I/O COUNT REMAINING literal JPI$_BIOLM = 784; ! BUFFERED I/O LIMIT literal JPI$_BYTCNT = 785; ! BYTE COUNT REMAINING FOR BUFFERED I/O literal JPI$_DIOCNT = 786; ! DIRECT I/O COUNT REMAINING literal JPI$_DIOLM = 787; ! DIRECT I/O COUNT LIMIT literal JPI$_FILCNT = 788; ! COUNT REMAINING OF OPEN FILES literal JPI$_TQCNT = 789; ! COUNT REMAINING OF TIMER QUEUE ENTRIES literal JPI$_EFWM = 790; ! EVENT FLAG WAIT MASK literal JPI$_EFCS = 791; ! LOCAL EVENT FLAGS 0-31 literal JPI$_EFCU = 792; ! LOCAL EVENT FLAGS 32-63 literal JPI$_PID = 793; ! PROCESS IDENTIFICATION literal JPI$_BYTLM = 794; ! BUFFERED I/0 BYTE COUNT LIMIT literal JPI$_PRCCNT = 795; ! SUBPROCESS COUNT literal JPI$_PRCNAM = 796; ! PROCESS NAME literal JPI$_TERMINAL = 797; ! LOGIN TERMINAL NAME literal JPI$_JOBPRCCNT = 798; ! TOTAL COUNT OF SUBPROCESSES IN A JOB literal JPI$_ENQCNT = 799; ! ENQUEUE COUNT REMAINING literal JPI$_ENQLM = 800; ! ENQUEUE COUNT LIMIT literal JPI$_SWPFILLOC = 801; ! SWAP FILE BACKING STORE ADDRESS literal JPI$_MODE = 802; ! MODE VALUE (FROM STS) - DEFINED ABOVE literal JPI$_JOBTYPE = 803; ! JOB TYPE CODE literal JPI$_PROC_INDEX = 804; ! PROCESS INDEX literal JPI$_MASTER_PID = 805; ! MASTER PROCESS PID literal JPI$_RIGHTSLIST = 806; ! PSB composite rights literal JPI$_CPU_ID = 807; ! CPU ID literal JPI$_STS2 = 808; ! Second process status longword literal JPI$_NODENAME = 809; ! Name of node on which process is running literal JPI$_NODE_CSID = 810; ! CSID of node on which process is running literal JPI$_NODE_VERSION = 811; ! VMS version of node on which process is running literal JPI$_TT_PHYDEVNAM = 812; ! Physical device name of terminal literal JPI$_TT_ACCPORNAM = 813; ! Access port name of terminal literal JPI$_PROCESS_RIGHTS = 814; ! PSB persona rights literal JPI$_SYSTEM_RIGHTS = 815; ! PSB system rights literal JPI$_IMAGE_RIGHTS = 816; ! PSB protected sub-system rights literal JPI$_RIGHTS_SIZE = 817; ! Approximate size (in bytes) of all PSB rights lists literal JPI$_CLASSIFICATION = 818; ! PSB current MAC classification literal JPI$_SCHED_POLICY = 819; ! Scheduler policy literal JPI$_RMS_FILEPROT = 820; ! Process default file protection for RMS literal JPI$_MULTITHREAD = 821; ! Kernel threads - max thread count literal JPI$_KT_COUNT = 822; ! Kernel threads - thread count literal JPI$_INITIAL_THREAD_PID = 823; ! Kernel threads - initial thread PID literal JPI$_THREAD_INDEX = 824; ! Kernel threads - thread index literal JPI$_CURRENT_USERCAP_MASK = 825; ! KTB current user capabilities mask literal JPI$_PERMANENT_USERCAP_MASK = 826; ! KTB permanent user capabilities mask literal JPI$_CURRENT_AFFINITY_MASK = 827; ! KTB current affinity mask literal JPI$_PERMANENT_AFFINITY_MASK = 828; ! KTB permanent affinity mask literal JPI$_PERSONA_ID = 829; ! Persona (PSB) id literal JPI$_PERSONA_AUTHPRIV = 830; ! PSB authorized privilege mask literal JPI$_PERSONA_PERMPRIV = 831; ! PSB permanent (default) privilege mask literal JPI$_PERSONA_WORKPRIV = 832; ! PSB working (active) privilege mask literal JPI$_IMAGE_WORKPRIV = 833; ! PSB installed image working (active) privilege mask literal JPI$_PERSONA_RIGHTS_SIZE = 834; ! Approximate size (in bytes) of PSB persona rights literal JPI$_PERSONA_RIGHTS = 835; ! PSB persona rights literal JPI$_SUBSYSTEM_RIGHTS_SIZE = 836; ! Approximate size (in bytes) of PSB protected sub-system rights literal JPI$_SUBSYSTEM_RIGHTS = 837; ! PSB protected sub-system rights literal JPI$_INSTALL_RIGHTS_SIZE = 838; ! Approximate size (in bytes) of PSB installed image rights literal JPI$_INSTALL_RIGHTS = 839; ! PSB installed image rights literal JPI$_SYSTEM_RIGHTS_SIZE = 840; ! Approximate size (in bytes) of PSB system rights literal JPI$_CURRENT_CAP_MASK = 841; ! KTB current capabilities mask literal JPI$_PERMANENT_CAP_MASK = 842; ! KTB permanent capabilities mask literal JPI$_SCHED_CLASS_NAME = 843; ! Scheduling class name literal JPI$_HOME_RAD = 844; ! KTB Home RAD literal JPI$_POSIX_SID = 845; ! Session ID for POSIX and COE literal JPI$_POSIX_PGID = 846; ! Process Group ID for POSIX and COE literal JPI$_CREATOR = 847; ! Epid of creator process (Unix-style parent) literal JPI$_KRNLTIM = 848; ! Kernel mode cpu time literal JPI$_EXECTIM = 849; ! Executive mode cpu time literal JPI$_SUPRTIM = 850; ! Supervisor mode cpu time literal JPI$_USERTIM = 851; ! User mode cpu time literal JPI$_ORG_BYTLM = 852; ! Original buffered I/O byte count limit literal JPI$_DEADLOCK_WAIT = 853; ! Per-process sub-second deadlock wait value literal JPI$_KT_LIMIT = 854; ! Per-process multiple kernel threads limit ! ADD NEW ITEM-CODES BEFORE THIS COMMENT literal JPI$_LASTPCB = 855; ! MAX INDEX IN PCB TABLE ! ITEM IDENTIFIERS FOR PHD literal JPI$_CURPRIV = 1024; ! CURRENT PROCESS PRIVILEGE MASK literal JPI$_WSAUTH = 1025; ! AUTHORIZED WORKING SET SIZE literal JPI$_WSQUOTA = 1026; ! QUOTA ON WORKING SET SIZE literal JPI$_DFWSCNT = 1027; ! DEFAULT WORKING SET SIZE literal JPI$_FREP0VA = 1028; ! FIRST FREE VIRTUAL ADDR. AT END OF P0 SPACE literal JPI$_FREP1VA = 1029; ! FIRST FREE ADDR. AT END OF P1 SPACE literal JPI$_DFPFC = 1030; ! DEFAULT PAGE FAULT CLUSTER literal JPI$_CPUTIM = 1031; ! ACCUMULATED CPU TIME literal JPI$_PRCLM = 1032; ! SUBPROCESS QUOTA literal JPI$_ASTLM = 1033; ! AST LIMIT literal JPI$_PAGEFLTS = 1034; ! COUNT OF PAGE FAULTS literal JPI$_DIRIO = 1035; ! PROCESS DIRECT I/O OPERATIONS literal JPI$_BUFIO = 1036; ! PROCESS BUFFERED I/O OPERATIONS literal JPI$_CPULIM = 1037; ! LIMIT ON CPUTIM FOR PROCESS literal JPI$_PGFLQUOTA = 1038; ! MAX. VIRTUAL PAGE COUNT literal JPI$_FILLM = 1039; ! OPEN FILE LIMIT literal JPI$_TQLM = 1040; ! TIMER QUEUE LIMIT literal JPI$_WSSIZE = 1041; ! CURRENT WORKING SET SIZE literal JPI$_AUTHPRIV = 1042; ! PSB authorized privilege mask literal JPI$_IMAGPRIV = 1043; ! PHD installed image permanent (default) privilege mask literal JPI$_PAGFILCNT = 1044; ! Remaining paging file quota of the process literal JPI$_FREPTECNT = 1045; ! ROOM FOR EXPANSION OF P0 OR P1 SPACE literal JPI$_WSEXTENT = 1046; ! EXTENT OF WORKING SET SIZE literal JPI$_WSAUTHEXT = 1047; ! MAX EXTENT OF WORKING SET SIZE literal JPI$_AUTHPRI = 1048; ! AUTHORIZED PRIORITY FOR $SETPRI literal JPI$_PAGFILLOC = 1049; ! PAGE FILE BACKING STORE ADDRESS literal JPI$_IMAGECOUNT = 1050; ! IMAGE COUNTER (CLOCKED BY RUNDOWN) literal JPI$_PHDFLAGS = 1051; ! PROCESS HEADER FLAGS WORD literal JPI$_VP_CPUTIM = 1052; ! VECTOR CPU TIME literal JPI$_VP_CONSUMER = 1053; ! Flag -- is this process a vector consumer? literal JPI$_P0_FIRST_FREE_VA_64 = 1054; ! First free VA in P0 space literal JPI$_P1_FIRST_FREE_VA_64 = 1055; ! First free VA in P1 space literal JPI$_P2_FIRST_FREE_VA_64 = 1056; ! First free VA in P2 space literal JPI$_IMAGE_AUTHPRIV = 1057; ! PHD installed image authorized privilege mask literal JPI$_IMAGE_PERMPRIV = 1058; ! PHD installed image permanent (default) privilege mask ! ADD NEW ITEM-CODES BEFORE THIS COMMENT literal JPI$_LASTPHD = 1059; ! MAX INDEX IN PROCESS HEADER ! ITEM IDENTIFIERS FOR CONTROL REGION literal JPI$_VIRTPEAK = 512; ! PEAK VIRTUAL SIZE literal JPI$_WSPEAK = 513; ! PEAK WORKING SET SIZE literal JPI$_USERNAME = 514; ! PSB username string literal JPI$_ACCOUNT = 515; ! PSB account name string literal JPI$_PROCPRIV = 516; ! PSB permanent (default) privilege mask literal JPI$_VOLUMES = 517; ! VOLUMES MOUNTED literal JPI$_LOGINTIM = 518; ! TIME OF LOGIN OR PROCESS CREATION literal JPI$_IMAGNAME = 519; ! CURRENT IMAGE FILE NAME literal JPI$_SITESPEC = 520; ! PER-PROCESS SITE-SPECIFIC CELL literal JPI$_MSGMASK = 521; ! PROCESS DEFAULT MESSAGE FLAGS literal JPI$_CLINAME = 522; ! COMMAND LANGUAGE INTERPRETER NAME literal JPI$_TABLENAME = 523; ! COMMAND LANGUAGE INTERPRETER TABLE NAME literal JPI$_CREPRC_FLAGS = 524; ! $CREPRC FLAGS USED TO CREATE THIS PROCESS literal JPI$_UAF_FLAGS = 525; ! FLAGS FROM UAF RECORD literal JPI$_MAXDETACH = 526; ! MAXIMUM DETACHED PROCESSES FOR SINGLE USER literal JPI$_MAXJOBS = 527; ! MAXIMUM ACTIVE PROCESSES FOR SINGLE USER literal JPI$_SHRFILLM = 528; ! MAXIMUM OPEN SHARED FILES literal JPI$_FAST_VP_SWITCH = 529; ! NUMBER OF FAST VECTOR CONTEXT SWITCHES literal JPI$_SLOW_VP_SWITCH = 530; ! NUMBER OF SLOW VECTOR CONTEXT SWITCHES literal JPI$_LAST_LOGIN_I = 531; ! Last interactive login literal JPI$_LAST_LOGIN_N = 532; ! Last non-interactive login literal JPI$_LOGIN_FAILURES = 533; ! Number of login failures at login literal JPI$_LOGIN_FLAGS = 534; ! Miscellaneous login flags literal JPI$_RMS_DFMBC = 535; ! RMS default: multi-block count literal JPI$_RMS_DFMBFSDK = 536; ! " " multi-buffer count for disk (SEQ) literal JPI$_RMS_DFMBFSMT = 537; ! " " multi-buffer count for tape literal JPI$_RMS_DFMBFSUR = 538; ! " " multi-buffer count for unit record literal JPI$_RMS_DFMBFREL = 539; ! " " multi-buffer count for REL files literal JPI$_RMS_DFMBFIDX = 540; ! " " multi-buffer count for ISAM files literal JPI$_RMS_PROLOGUE = 541; ! " " prolog literal JPI$_RMS_EXTEND_SIZE = 542; ! " " file extend quantity literal JPI$_RMS_DFNBC = 543; ! " " network block count literal JPI$_RMS_DFLRL = 544; ! " " Heuristic default LRL literal JPI$_RMS_HEURISTIC = 545; ! " " Heuristic enable/disable setting literal JPI$_PARSE_STYLE_PERM = 546; ! Parse style for life of process literal JPI$_PARSE_STYLE_IMAGE = 547; ! Parse style for life of image literal JPI$_RMSD6 = 548; ! RMS dynamic parameter RMSD6 literal JPI$_RMS_QUERY_LOCK = 549; ! RMS QUERY_LOCK enable/disable setting literal JPI$_CASE_LOOKUP_PERM = 550; ! Case lookup mode for life of process literal JPI$_CASE_LOOKUP_IMAGE = 551; ! Case lookup mode for life of image literal JPI$_UNITS = 552; ! Bytes or Blocks literal JPI$_TOKEN = 553; ! Small or Large Token literal JPI$_SEARCH_SYMLINK_PERM = 554; ! Symlink search mode for life of process literal JPI$_SEARCH_SYMLINK_TEMP = 555; ! Symlink search mode for life of image ! ADD NEW ITEM-CODES BEFORE THIS COMMENT literal JPI$_LASTCTL = 556; ! MAX INDEX IN CONTROL REGION ! ITEM IDENTIFIERS FOR ADDRESS DATA literal JPI$_EXCVEC = 256; ! ADDRESS OF "EXCEPTION VECTOR" VECTOR literal JPI$_FINALEXC = 257; ! ADDRESS OF LAST CHANCE EXCEPTION VECTORS ! ADD NEW ITEM-CODES BEFORE THIS COMMENT literal JPI$_LASTADR = 258; ! MAX INDEX IN ADDRESS TABLE ! ITEM IDENTIFIERS FOR PCBFLD ! ADD ITEM-CODES BEFORE THIS COMMENT literal JPI$_LASTPCBFLD = 1280; ! MAX INDEX IN PCBFLD TABLE ! ITEM IDENTIFIERS FOR PHDFLD ! ADD ITEM-CODES BEFORE THIS COMMENT literal JPI$_LASTPHDFLD = 1536; ! MAX INDEX IN PHDFLD TABLE !*** MODULE $JPIFDEF *** ! + ! ! Get Job Process Information "Fast" Data Identifier Definitions ! ! - literal JPIF$M_UASTACT = %X'1'; literal JPIF$C_UASTACT = 0; literal JPIF$M_RMS_DFMBC = %X'2'; literal JPIF$C_RMS_DFMBC = 1; literal JPIF$M_PARSE_STYLE_PERM = %X'4'; literal JPIF$C_PARSE_STYLE_PERM = 2; literal JPIF$M_PARSE_STYLE_IMAGE = %X'8'; literal JPIF$C_PARSE_STYLE_IMAGE = 3; literal JPIF$M_LOGINTIM_L = %X'10'; literal JPIF$C_LOGINTIM_L = 4; literal JPIF$M_LOGINTIM_H = %X'20'; literal JPIF$C_LOGINTIM_H = 5; literal JPIF$M_CPUTIM = %X'40'; literal JPIF$C_CPUTIM = 6; literal JPIF$S_JPIFDEF = 8; macro JPIF$V_UASTACT = 0,0,1,0 %; ! User mode AST active macro JPIF$V_RMS_DFMBC = 0,1,1,0 %; ! RMS default multi-block count macro JPIF$V_PARSE_STYLE_PERM = 0,2,1,0 %; ! Permanent parse style macro JPIF$V_PARSE_STYLE_IMAGE = 0,3,1,0 %; ! Image parse style macro JPIF$V_LOGINTIM_L = 0,4,1,0 %; ! Login time - low LW macro JPIF$V_LOGINTIM_H = 0,5,1,0 %; ! Login time - high LW macro JPIF$V_CPUTIM = 0,6,1,0 %; ! Process accumulated CPU time !*** MODULE $KGBDEF *** ! ++ ! Key Grant Block definitions: Format of records in the rights database ! file. These records (1) associate identifier codes with names, and ! (2) list the holders of all identifiers in the system. ! -- ! WARNING : If you add attributes, you must change the following modules: ! ! [AUDSRV]FORMATBL.B32 - add name to id_attr_table ! ! Changing these modules is necessary so that auditing will reflect the new attr name ! ! ! WARNING : If you add any fields, or change the size of the ! NAME, the HOLDER, or the SYS_ID, be sure to update ! the contents at the bottom of this file. ! literal KGB$M_RESOURCE = %X'1'; literal KGB$M_DYNAMIC = %X'2'; literal KGB$M_NOACCESS = %X'4'; literal KGB$M_SUBSYSTEM = %X'8'; literal KGB$M_IMPERSONATE = %X'10'; literal KGB$M_HOLDER_HIDDEN = %X'20'; literal KGB$M_NAME_HIDDEN = %X'40'; literal KGB$K_HOLD_RECORD = 16; ! End of holder record literal KGB$K_IDENT_RECORD = 48; ! End of identifier record literal KGB$K_LEVEL1 = 257; ! Version 1 structure level literal KGB$K_MAINT_RECORD = 64; ! End of maintenance record literal KGB$K_NUMBER_OF_ATTRIBUTES = 7; literal KGB$S_KGBDEF = 64; macro KGB$L_IDENTIFIER = 0,0,32,0 %; ! Binary identifier code macro KGB$L_ATTRIBUTES = 4,0,32,0 %; ! Attribute bit definitions macro KGB$V_RESOURCE = 4,0,1,0 %; ! Resource may be charged to identifier macro KGB$V_DYNAMIC = 4,1,1,0 %; ! Identifier may be enabled or disabled macro KGB$V_NOACCESS = 4,2,1,0 %; ! Identifier will not be used in protection checks macro KGB$V_SUBSYSTEM = 4,3,1,0 %; ! Identifier denotes active protected subsystem macro KGB$V_IMPERSONATE = 4,4,1,0 %; ! Identifier can be used for impersonation macro KGB$V_HOLDER_HIDDEN = 4,5,1,0 %; ! Holder records are restricted macro KGB$V_NAME_HIDDEN = 4,6,1,0 %; ! $IDTOASC or $ASCTOID translation is restricted macro KGB$Q_HOLDER = 8,0,0,0 %; literal KGB$S_HOLDER = 8; ! Holder identifier macro KGB$T_NAME = 16,0,0,0 %; literal KGB$S_NAME = 32; ! Identifier name (blank filled string) macro KGB$W_LEVEL = 48,0,16,0 %; ! File structure level macro KGB$Q_SYS_ID = 52,0,0,0 %; literal KGB$S_SYS_ID = 8; ! System identifier macro KGB$L_NEXT_ID = 60,0,32,0 %; ! Next available identifier ! ++ ! Define the environmental rights ID values ! -- literal KGB$K_BATCH_ID = -2147483647; ! Batch ID value literal KGB$K_DIALUP_ID = -2147483646; ! Dialup ID value literal KGB$K_INTERACTIVE_ID = -2147483645; ! Interactive ID value literal KGB$K_LOCAL_ID = -2147483644; ! Local ID value literal KGB$K_NETWORK_ID = -2147483643; ! Network ID value literal KGB$K_REMOTE_ID = -2147483642; ! Remote ID value literal KGB$K_DECWINDOWS_ID = -2147483641; ! Decwindows ID value literal KGB$K_BOBUSER_ID = -2147483640; ! Buffer Object User ID value literal KGB$K_MRES_USER_ID = -2147483639; ! Memory Resident Section User ID value literal KGB$K_SAT_ACCESS_ID = -2147483638; ! VMS$SATELLITE_ACCESS id value literal KGB$K_LAST_ENV_ID = -2147483637; ! NOTE: Add all new ones before this ! ! Define the range of environmental identifiers ! literal KGB$K_BASE_ENV_ID = -2147483647; literal KGB$K_NUMBER_OF_ENV_IDS = 10; ! ! Define the restricted range of system identifiers as lowest id (%x800000000) ! to %x80010000. ! literal KGB$K_RESTRICTED_RANGE = -2147418112; ! ! Define the various access class ranges. ! literal KGB$K_SEC_LEVEL_BASE = -2147482648; literal KGB$K_INT_LEVEL_BASE = -2147482392; literal KGB$K_SEC_CATEGORY_BASE = -2147482136; literal KGB$K_INT_CATEGORY_BASE = -2147482072; literal KGB$K_SEC_ACCESS_CLASS_BASE = -2147482648; literal KGB$K_SEC_ACCESS_CLASS_END = -2147482008; ! ! Define the values for the optional $GRANTID/$REVOKID FLAGS argument. ! literal KGB$K_PROCESS = 0; ! local rights literal KGB$K_SYSTEM = 1; ! system rights literal KGB$K_EXTENDED = 2; ! local rights (extended) literal KGB$K_IMAGE = 3; ! image (protected subsystem) rights literal KGB$K_MAX_SEG = 4; literal KGB$K_SUBSYSTEM = 3; ! image (protected subsystem) rights !*** MODULE $LADEF *** ! + ! ! LPA-11 CHARACTERISTICS DEFINITIONS ! ! - ! MICROCODE TYPE VALUES literal LA$K_MRMCODE = 1; ! MULTIREQUEST MICROCODE literal LA$K_ADMCODE = 2; ! DEDICATED A/D MICROCODE literal LA$K_DAMCODE = 3; ! DEDICATED D/A MICROCODE literal LA$M_MCVALID = %X'1'; literal LA$M_CLOCKA = %X'8'; literal LA$M_CLOCKB = %X'10'; literal LA$M_AD1 = %X'20'; literal LA$M_AD2 = %X'40'; literal LA$M_DA = %X'80'; literal LA$M_DIO1 = %X'100'; literal LA$M_DIO2 = %X'200'; literal LA$M_DIO3 = %X'400'; literal LA$M_DIO4 = %X'800'; literal LA$M_DIO5 = %X'1000'; literal LA$M_BFROVRN = %X'800000'; literal LA$S_LADEF = 4; macro LA$V_MCVALID = 0,0,1,0 %; ! MICROCODE VALID macro LA$V_MCTYPE = 0,1,2,0 %; literal LA$S_MCTYPE = 2; ! MICROCODE TYPE macro LA$V_CONFIG = 0,3,10,0 %; literal LA$S_CONFIG = 10; ! DEVICE CONFIGURATION BITS macro LA$V_RATE = 0,13,3,0 %; literal LA$S_RATE = 3; ! CLOCK RATE macro LA$V_PRESET = 0,16,16,0 %; literal LA$S_PRESET = 16; ! CLOCK PRESET macro LA$V_CLOCKA = 0,3,1,0 %; ! CLOCK A macro LA$V_CLOCKB = 0,4,1,0 %; ! CLOCK B macro LA$V_AD1 = 0,5,1,0 %; ! A/D ! 1 macro LA$V_AD2 = 0,6,1,0 %; ! A/D ! 2 macro LA$V_DA = 0,7,1,0 %; ! D/A macro LA$V_DIO1 = 0,8,1,0 %; ! DIGITAL I/O ! 1 macro LA$V_DIO2 = 0,9,1,0 %; ! DIGITAL I/O ! 2 macro LA$V_DIO3 = 0,10,1,0 %; ! DIGITAL I/O ! 3 macro LA$V_DIO4 = 0,11,1,0 %; ! DIGITAL I/O ! 4 macro LA$V_DIO5 = 0,12,1,0 %; ! DIGITAL I/O ! 5 macro LA$V_BFROVRN = 0,23,1,0 %; ! BUFFER OVERRUN NON-FATAL BIT !*** MODULE $latdef *** literal LAT$M_ETYPE = %X'FFFF'; literal LAT$C_ENT_NODE = 1; literal LAT$C_ENT_SERVICE = 2; literal LAT$C_ENT_LINK = 3; literal LAT$C_ENT_PORT = 4; literal LAT$C_ENT_CONNECTION = 5; literal LAT$C_ENT_QUEUE_ENTRY = 6; literal LAT$C_MAXETYPE = 6; literal LAT$M_ESTATUS = %X'F'; literal LAT$C_ENTS_OLD = 0; ! Must already exist literal LAT$C_ENTS_NEW = 1; ! Must NOT exist. Create it. literal LAT$C_ENTS_UNK = 2; ! Create if it does not exist literal LAT$C_ENTS_DEL = 3; ! Must exist. Delete it. literal LAT$M_SENSE_NEXT = %X'1'; literal LAT$M_SENSE_FULL = %X'2'; literal LAT$M_READ_HISTORY = %X'4'; literal LAT$S_ENTITY = 3; macro LAT$V_ETYPE = 0,0,16,0 %; literal LAT$S_ETYPE = 16; macro LAT$R_ESTATFLAGS = 2,0,8,0 %; literal LAT$S_ESTATFLAGS = 1; macro LAT$V_ESTATUS = 2,0,4,0 %; literal LAT$S_ESTATUS = 4; macro LAT$R_EFLAG = 2,0,8,0 %; literal LAT$S_EFLAG = 1; macro LAT$B_EFLAGS = 2,0,8,0 %; ! Flags for SENSEmode macro LAT$R_EFLAGBITS = 2,0,8,0 %; literal LAT$S_EFLAGBITS = 1; macro LAT$V_SENSE_NEXT = 2,0,1,0 %; ! Wildcard flag macro LAT$V_SENSE_FULL = 2,1,1,0 %; ! Full (vs. summary) flag macro LAT$V_READ_HISTORY = 2,2,1,0 %; ! Used for history buffer literal LAT$M_ITEMINDEX = %X'3FFF'; literal LAT$M_STRING = %X'4000'; literal LAT$M_CLEAR = %X'8000'; literal LAT$_ITM_STATE = 1; ! Entity (node or port) state literal LAT$_ITM_CIRCUIT_TIMER = 2; ! Circuit timer value literal LAT$_ITM_KEEPALIVE_TIMER = 3; ! Keepalive timer value literal LAT$_ITM_MULTICAST_TIMER = 4; ! Multicast timer value literal LAT$_ITM_NODE_LIMIT = 5; ! Maximum number of nodes literal LAT$_ITM_RETRANSMIT_LIMIT = 6; ! Retransmit limit value literal LAT$_ITM_SERVER_MODE = 7; ! Enable LAT master flag literal LAT$_ITM_OUTGOING_SES_LIMIT = 8; ! Outgoing sessions limit literal LAT$_ITM_INCOMING_SES_LIMIT = 9; ! Incoming sessions limit literal LAT$_ITM_CONNECTIONS = 10; ! Enable LAT slave flag literal LAT$_ITM_DECNET_ADDRESS = 11; ! Use DECnet address flag literal LAT$_ITM_RATING = 12; ! Static LAT rating value literal LAT$_ITM_RATING_TYPE = 13; ! Dynamic/static rating flag literal LAT$_ITM_NODE_TYPE = 14; ! Local/remote node type flag literal LAT$_ITM_NODE_STATUS = 15; ! Reachable/unreachable flag literal LAT$_ITM_SERVICE_STATUS = 16; ! Available/unavailable flag literal LAT$_ITM_PORT_TYPE = 17; ! Port type value literal LAT$_ITM_QUEUED = 18; ! Queued/nonqueued access flag literal LAT$_ITM_DISCONNECT_REASON = 19; ! Reason for last disconnect literal LAT$_ITM_CONNECTED_COUNT = 20; ! Number of current sessions literal LAT$_ITM_SERVICE_TYPE = 21; ! Service type value literal LAT$_ITM_CTNOD_SSZ = 22; ! (node) Seconds since zeroed literal LAT$_ITM_CTNOD_MSGR = 23; ! (node) Messages received literal LAT$_ITM_CTNOD_MSGT = 24; ! (node) Messages transmitted literal LAT$_ITM_CTNOD_SLTR = 25; ! (node) Slots received literal LAT$_ITM_CTNOD_SLTT = 26; ! (node) Slots transmitted literal LAT$_ITM_CTNOD_BYTR = 27; ! (node) Bytes received literal LAT$_ITM_CTNOD_BYTT = 28; ! (node) Bytes transmitted literal LAT$_ITM_CTNOD_MNA = 29; ! (node) Multiple node addresses literal LAT$_ITM_CTNOD_DUP = 30; ! (node) Duplicates received literal LAT$_ITM_CTNOD_MRT = 31; ! (node) Messages retransmitted literal LAT$_ITM_CTNOD_ILM = 32; ! (node) Illegal messages received literal LAT$_ITM_CTNOD_ILS = 33; ! (node) Illegal slots received literal LAT$_ITM_CTNOD_SLCA = 34; ! (node) Solicitations accepted literal LAT$_ITM_CTNOD_SLCR = 35; ! (node) Solicitations rejected literal LAT$_ITM_CTNOD_TER = 36; ! (node) Transmit errors literal LAT$_ITM_CTNOD_RES = 37; ! (node) Resource errors literal LAT$_ITM_CTNOD_NTB = 38; ! (node) No transmit buffer literal LAT$_ITM_CTNOD_TMO = 39; ! (node) Virtual circuit timeouts literal LAT$_ITM_CTNOD_DOB = 40; ! (node) Discarded output bytes literal LAT$_ITM_CTNOD_LSTER = 41; ! (node) Last transmit error literal LAT$_ITM_CTNOD_PROTO = 42; ! (node) Protocol error count literal LAT$_ITM_CTPRO_IVM = 43; ! (protocol) Invalid message type received literal LAT$_ITM_CTPRO_ISM = 44; ! (protocol) Invalid start message received literal LAT$_ITM_CTPRO_IVS = 45; ! (protocol) Invalid sequence number literal LAT$_ITM_CTPRO_NIZ = 46; ! (protocol) Zero node index received literal LAT$_ITM_CTPRO_ICI = 47; ! (protocol) Invalid server slot index literal LAT$_ITM_CTPRO_CSI = 48; ! (protocol) Circuit sequence invalid literal LAT$_ITM_CTPRO_NLV = 49; ! (protocol) Circuit index no longer valid literal LAT$_ITM_CTPRO_HALT = 50; ! (protocol) Circuit forced to halt literal LAT$_ITM_CTPRO_MIZ = 51; ! (protocol) Invalid master slot index literal LAT$_ITM_CTPRO_SIZ = 52; ! (protocol) Invalid slave slot index literal LAT$_ITM_CTPRO_CRED = 53; ! (protocol) Invalid credit field literal LAT$_ITM_CTPRO_RCSM = 54; ! (protocol) Repeat master slot create literal LAT$_ITM_CTPRO_RDSM = 55; ! (protocol) Repeat master slot disconnect literal LAT$_ITM_CTSRV_SSZ = 56; ! (service) Seconds since zeroed literal LAT$_ITM_CTSRV_MCNA = 57; ! (service) Connections attempted literal LAT$_ITM_CTSRV_MCNC = 58; ! (service) Connections completed literal LAT$_ITM_CTSRV_SCNA = 59; ! (service) Connections accepted literal LAT$_ITM_CTSRV_SCNR = 60; ! (service) Connections rejected literal LAT$_ITM_CTPRT_SSZ = 61; ! (port) Seconds since zeroed literal LAT$_ITM_CTPRT_RMT = 62; ! (port) Remote accesses literal LAT$_ITM_CTPRT_BYTR = 63; ! (port) Bytes received literal LAT$_ITM_CTPRT_BYTT = 64; ! (port) Bytes transmitted literal LAT$_ITM_MAXIMUM_UNITS = 65; ! Maximum LTA device unit number literal LAT$_ITM_SERVICE_CLASS = 66; ! Port service class item literal LAT$_ITM_DISPLAY_NUMBER = 67; ! X Display Number (Binary) literal LAT$_ITM_CPU_RATING = 68; ! CPU rating literal LAT$_ITM_SERVICE_RESPONDER = 69; ! Service responder literal LAT$_ITM_CTNOD_MCBXMT = 70; ! (node) Multicast bytes xmt literal LAT$_ITM_CTNOD_MCBRCV = 71; ! (node) Multicast bytes rcv literal LAT$_ITM_CTNOD_MCMXMT = 72; ! (node) Multicast msgs xmt literal LAT$_ITM_CTNOD_MCMRCV = 73; ! (node) Multicast msgs rcv literal LAT$_ITM_CTNOD_SOLFAIL = 74; ! (node) Solicit failures literal LAT$_ITM_CTNOD_ATLOS = 75; ! (node) Attention slot lost literal LAT$_ITM_CTNOD_DATLOS = 76; ! (node) User data lost literal LAT$_ITM_CTNOD_NOREJ = 77; ! (node) No reject slot sent literal LAT$_ITM_CTNOD_LOSCT = 78; ! (node) Node counter lost literal LAT$_ITM_CTNOD_LOSSAM = 79; ! (node) s.a.m. lossage literal LAT$_ITM_CTNOD_NOSAM = 80; ! (node) Couldn't send s.a.m. literal LAT$_ITM_CTNOD_NOSTS = 81; ! (node) Lost node status literal LAT$_ITM_CTNOD_NOXMT = 82; ! (node) No link to send on literal LAT$_ITM_HISTORY = 83; ! (node) History buffer enable literal LAT$_ITM_CTNOD_CTLERR = 84; ! (node) Controller errors literal LAT$_ITM_CTNOD_CERRCOD = 85; ! (node) Last controller error literal LAT$_ITM_CTNOD_ISOLA = 86; ! (node) (Incoming) solicits accepted literal LAT$_ITM_CTNOD_ISOLR = 87; ! (node) (Incoming) solicits rejected literal LAT$_ITM_CONNECTED_SESSIONS = 88; ! Connected session count literal LAT$_ITM_CONNECT_TYPE = 89; ! Connection type literal LAT$_ITM_CONNECTION_SESS_LIM = 90; ! Connection session limit literal LAT$_ITM_CTCON_MSGRCV = 91; ! (conn) msgs received literal LAT$_ITM_CTCON_DUPRCV = 92; ! (conn) dup msgs rcvd literal LAT$_ITM_CTCON_MSGXMT = 93; ! (conn) msgs xmtd literal LAT$_ITM_CTCON_MSGILL = 94; ! (conn) illegal msgs rcvd literal LAT$_ITM_CTCON_MSGRXT = 95; ! (conn) msgs retransmitted literal LAT$_ITM_CTCON_SLTILL = 96; ! (conn) ill slots rcvd literal LAT$_ITM_CTCON_DUPNOD = 97; ! (conn) duplicate node literal LAT$_ITM_CTCON_SECZER = 98; ! (conn) seconds since zero literal LAT$_ITM_CTCON_BYTRCV = 99; ! (conn) bytes received literal LAT$_ITM_CTCON_BYTXMT = 100; ! (conn) bytes xmtd literal LAT$_ITM_CTCON_SLTRCV = 101; ! (conn) slots rcvd literal LAT$_ITM_CTCON_SLTXMT = 102; ! (conn) slots transmitted literal LAT$_ITM_CTCON_SOLACP = 103; ! (conn) solicits accepted literal LAT$_ITM_CTCON_SOLREJ = 104; ! (conn) solicits rejected literal LAT$_ITM_CTCON_XERR = 105; ! (conn) last transmit error literal LAT$_ITM_CTCON_XERRCOD = 106; ! (conn) last xmt error code literal LAT$_ITM_CTCON_ATTLOS = 107; ! (conn) attention slot loss literal LAT$_ITM_CTCON_DATLOS = 108; ! (conn) data loss literal LAT$_ITM_CTCON_CANTREJ = 109; ! (conn) reject slot loss literal LAT$_ITM_SESSION_NUMBER = 110; ! (conn) session number for subblock literal LAT$_ITM_FORWARD_SESSION_LIMIT = 111; ! (node) forward session limit literal LAT$_ITM_EXTRA_DATALINK_BUFFERS = 112; ! Extra datalink buffers literal LAT$_ITM_TRANSMIT_BUFFERS_INUSE = 113; ! Transmit buffers in use literal LAT$_ITM_QUE_POS_OBSOLETE = 114; ! Queue position for entry ! Obsolete - node queue and ! service queue position are ! now implemented. literal LAT$_ITM_QUEUE_DEPTH_LIMIT = 115; ! (node) queue depth limit literal LAT$_ITM_DEVICE_SEED = 116; ! (node) device seed literal LAT$_ITM_NODE_QUEUE_POSITION = 117; ! (port) minimum queue position literal LAT$_ITM_SERVICE_QUEUE_POSITION = 118; ! (port) maximum queue position literal LAT$_ITM_DIALUP = 119; ! (port) dialup characteristic literal LAT$_ITM_AUTOPROMPT = 120; ! (port) autoprompt char literal LAT$_ITM_RATING_LOAD_OBSOLETE = 121; ! obsolete - portion of rating for load literal LAT$_ITM_CTPRT_LCL = 122; ! (port) local accesses literal LAT$_ITM_CTPRT_SLCA = 123; ! (port) Solicitations accepted literal LAT$_ITM_CTPRT_SLCR = 124; ! (port) Solicitations rejected literal LAT$_ITM_CTPRT_ISOLA = 125; ! (node) (Incoming) solicits accepted literal LAT$_ITM_CTPRT_ISOLR = 126; ! (node) (Incoming) solicits rejected ! ! This next item code is only returned (it cannot be supplied as a ! SETMODE item). It indicates whether or not a service on the local ! node is password protected. ! literal LAT$_ITM_PASSWORD = 127; ! (svc) Password enabled/disabled literal LAT$_ITM_HI_CIRCUITS = 128; ! (node) Hi circuit count literal LAT$_ITM_CUR_CIRCUITS = 129; ! (node) Current circuit count literal LAT$_ITM_MAX_CIRCUITS = 130; ! (node) Maximum virtual circuits literal LAT$_ITM_HI_SESSIONS = 131; ! (node) Hi session count literal LAT$_ITM_CUR_SESSIONS = 132; ! (node) Current session count literal LAT$_ITM_MAX_SESSIONS = 133; ! (node) Maximum session count literal LAT$_ITM_HI_OUT_QUEUE = 134; ! (node) Hi outgoing queue entries literal LAT$_ITM_CUR_OUT_QUEUE = 135; ! (node) Current outgoing q entries literal LAT$_ITM_MAX_OUT_QUEUE = 136; ! (node) Maximum outgoing q entries literal LAT$_ITM_HI_IN_QUEUE = 137; ! (node) Hi incoming queue entries literal LAT$_ITM_CUR_IN_QUEUE = 138; ! (node) Current incoming q entries literal LAT$_ITM_MAX_IN_QUEUE = 139; ! (node) Maximum incoming q entries literal LAT$_ITM_HI_SAMS_QUEUED = 140; ! (node) Hi unprocessed SAMs literal LAT$_ITM_CUR_SAMS_QUEUED = 141; ! (node) Current unprocessed SAMs literal LAT$_ITM_MAX_SAMS_QUEUED = 142; ! (node) Maximum unprocessed SAMs literal LAT$_ITM_HI_SOL_QUEUED = 143; ! (node) Hi unprocessed sol infos literal LAT$_ITM_CUR_SOL_QUEUED = 144; ! (node) Current unprocessed sol infos literal LAT$_ITM_MAX_SOL_QUEUED = 145; ! (node) Maximum unprocessed sol infos literal LAT$_ITM_HI_AVAIL_SVCS = 146; ! (node) Hi available services literal LAT$_ITM_CUR_AVAIL_SVCS = 147; ! (node) Current available services literal LAT$_ITM_MAX_AVAIL_SVCS = 148; ! (node) Maximum available services literal LAT$_ITM_HI_REACH_NODES = 149; ! (node) Hi reachable nodes literal LAT$_ITM_CUR_REACH_NODES = 150; ! (node) Current reachable nodes literal LAT$_ITM_MAX_REACH_NODES = 151; ! (node) Maximum reachable nodes literal LAT$_ITM_HI_LCL_SVCS = 152; ! (node) Hi local services literal LAT$_ITM_CUR_LCL_SVCS = 153; ! (node) Current local services literal LAT$_ITM_MAX_LCL_SVCS = 154; ! (node) Maximum local services literal LAT$_ITM_DISCARDED_NODES = 155; ! (node) Discarded nodes literal LAT$_ITM_MAX_DL_BUFFERS = 156; ! (conn) Maximum datalink buffers literal LAT$_ITM_PRODUCT_TYPE = 157; ! (conn) Product type literal LAT$_ITM_REM_PRODUCT_VERSION = 158; ! (conn) Remote product version literal LAT$_ITM_CTPRT_FRAMERR = 159; ! (port) Framing errors literal LAT$_ITM_CTPRT_PARERR = 160; ! (port) Parity errors literal LAT$_ITM_CTPRT_OVERRUN = 161; ! (port) Data overruns literal LAT$_ITM_CTPRO_INVCLASS = 162; ! (protocol) protocol error invalid service class literal LAT$_ITM_CTPRO_EXCSTART = 163; ! (protocol) protocol error (excessive start slots) literal LAT$_ITM_CTNOD_XSTR = 164; ! (node) Remote node too many START slots literal LAT$_ITM_PASSWORD_FAILURES = 165; ! (service,port) Password failures literal LAT$_ITM_CTPRO_ILLSAM = 166; ! (protocol) Illegal SAMs literal LAT$_ITM_TYPEAHEAD = 167; ! (port) 1 = typeahd present literal LAT$_ITM_CTLAT_RMSG = 168; ! (link) LAT msgs rcvd literal LAT$_ITM_CTLAT_RBYT = 169; ! (link) LAT bytes rcvd literal LAT$_ITM_CTLAT_XMSG = 170; ! (link) LAT msgs xmt literal LAT$_ITM_CTLAT_XBYT = 171; ! (link) LAT bytes xmt literal LAT$_ITM_CTLAT_MUL_RMSG = 172; ! (link) LAT multicast msgs rcvd literal LAT$_ITM_CTLAT_MUL_RBYT = 173; ! (link) LAT multicast bytes rcvd literal LAT$_ITM_CTLAT_MUL_XMSG = 174; ! (link) LAT multicast msgs xmt literal LAT$_ITM_CTLAT_MUL_XBYT = 175; ! (link) LAT multicast bytes xmt literal LAT$_ITM_PATH_STATE = 176; ! Datalink path state literal LAT$_ITM_LARGE_BUFFERS = 177; ! Use of large buffers by default literal LAT$_ITM_ANNOUNCEMENTS = 178; ! (node) Transmit service announcements literal LAT$_ITM_PORT_STATE = 179; ! (port) Current state literal LAT$_ITM_CTPRO_BADUID = 180; ! (protocol) Invalid node UID event literal LAT$C_ITM_MAXSCALAR = 180; literal LAT$_ITM_IDENTIFICATION = 16640; ! Entity (node or service) identification literal LAT$_ITM_SERVICE_NAME = 16641; ! Service name literal LAT$_ITM_NODE_NAME = 16642; ! Node name literal LAT$_ITM_PORT_NAME = 16643; ! Port name literal LAT$_ITM_CONNECTED_SERVICE_NAME = 16644; ! Port's connected service name literal LAT$_ITM_CONNECTED_NODE_NAME = 16645; ! Port's connected node name literal LAT$_ITM_CONNECTED_PORT_NAME = 16646; ! Port's connected port name literal LAT$_ITM_TARGET_SERVICE_NAME = 16647; ! Port's target service name literal LAT$_ITM_TARGET_NODE_NAME = 16648; ! Port's target node name literal LAT$_ITM_TARGET_PORT_NAME = 16649; ! Port's target port name literal LAT$_ITM_SERVICE_GROUPS = 16650; ! Enabled service groups bitmask literal LAT$_ITM_USER_GROUPS = 16651; ! Enabled user groups bitmask literal LAT$_ITM_LINK_NAME = 16652; ! Link name literal LAT$_ITM_SERVICE_PASSWORD = 16653; ! Service password literal LAT$_ITM_DEVICE_NAME = 16654; ! Link's device name literal LAT$_ITM_DATALINK_ADDRESS = 16655; ! 6-byte binary Ethernet address literal LAT$_ITM_PROTOCOL_VERSION = 16656; ! LAT protocol version string literal LAT$_ITM_SVC_NODE_BLOCK = 16657; ! Subblock for SENSE SERVICE literal LAT$_ITM_NODE_SVC_BLOCK = 16658; ! Subblock for SENSE NODE literal LAT$_ITM_DED_PORT_BLOCK = 16659; ! Subblock for dedicated ports literal LAT$_ITM_COUNTERS = 16660; ! Subblock for counters literal LAT$_ITM_PROTOCOL_ERRORS = 16661; ! Subblock for protocol errors literal LAT$_ITM_CONNECTED_LINK_NAME = 16662; ! Port's connected link name literal LAT$_ITM_HISTORY_ENTRY = 16663; ! Node history buffer entry literal LAT$_ITM_CONNECT_ID = 16664; ! Connect ID name literal LAT$_ITM_SESSION_BLOCK = 16665; ! Subblock for SENSE CONNECTION literal LAT$_ITM_QUEUED_ENTRY_ID = 16666; ! Queued entry ID string literal LAT$_ITM_LIM_PORT_BLOCK = 16667; ! subblock for limited ports literal LAT$_ITM_SERVICE_CLASSES = 16668; ! service class bitmask for node literal LAT$_ITM_LAT_DEV_CTR_BLOCK = 16669; ! link LAT only counters literal LAT$_ITM_PATH_BLOCK = 16670; ! Datalink path information literal LAT$C_ITM_MAXSTRING = 16670; literal LAT$S_ITEM_ENTRY = 6; macro LAT$R_ITM_CODE = 0,0,16,0 %; literal LAT$S_ITM_CODE = 2; macro LAT$W_ITEMCODE = 0,0,16,0 %; macro LAT$R_ITM_BITS = 0,0,16,0 %; macro LAT$V_ITEMINDEX = 0,0,14,0 %; literal LAT$S_ITEMINDEX = 14; macro LAT$V_STRING = 0,14,1,0 %; macro LAT$V_CLEAR = 0,15,1,0 %; macro LAT$B_ITEM_BCNT = 2,0,8,0 %; macro LAT$T_ITEM_STRING_VALUE = 3,0,8,0 %; literal LAT$S_ITEM_STRING_VALUE = 1; macro LAT$L_ITEM_SCALAR_VALUE = 2,0,32,0 %; literal LAT$C_DISABLED = 0; literal LAT$C_ENABLED = 1; literal LAT$C_OFF = 0; literal LAT$C_ON = 1; literal LAT$C_SHUT = 2; literal LAT$M_FLUSH_DATA = 1; literal LAT$C_PT_FORWARD = 0; ! "Forward" connection port literal LAT$C_PT_INTERACTIVE = 1; ! Interactive incoming port literal LAT$C_PT_APPLICATION = 2; ! Application port literal LAT$C_PT_DEDICATED = 3; ! Dedicated port literal LAT$C_PT_LIMITED = 4; ! Limited port literal LAT$C_PT_STATE_INACTIVE = 0; ! Idle, no connection literal LAT$C_PT_STATE_CONNECTING = 1; ! Connection in progress, not done literal LAT$C_PT_STATE_ACTIVE = 2; ! Fully connected literal LAT$C_PT_STATE_DISCONNECTING = 3; ! In the disconnect process literal LAT$C_NT_LOCAL = 0; ! My own node literal LAT$C_NT_REMOTE = 1; ! The other guy literal LAT$C_ST_GENERAL = 0; ! General timesharing service literal LAT$C_ST_APPLICATION = 1; ! Application service literal LAT$C_ST_LIMITED = 2; ! Limited service literal LAT$C_DYNAMIC = 0; ! Dynamic calculation literal LAT$C_STATIC = 1; ! Fixed rating literal LAT$C_PS_WORKING = 0; literal LAT$C_PS_SUSPECT = 1; literal LAT$C_PS_FAILED = 2; literal LAT$C_CN_UNKNOWN = 0; ! Unknown connection type literal LAT$C_CN_INCOMING = 1; ! Slave connection literal LAT$C_CN_OUTGOING = 2; ! Master connection literal LAT$C_UNREACHABLE = 0; ! Known not there literal LAT$C_UNKNOWN = 1; ! Haven't heard in a while literal LAT$C_REACHABLE = 2; ! I heard from him literal LAT$C_UNAVAILABLE = 0; ! Can't get it literal LAT$C_AVAILABLE = 1; ! It IS there literal LAT$C_SERVCLASS_INTERACTIVE = 1; ! SC1 = TTDRIVER literal LAT$C_SERVCLASS_TESTSERVICE = 2; ! SC2 = TEST SERVICE literal LAT$C_SERVCLASS_XTRANSPORT = 3; ! SC3 = X Transport literal LAT$C_SERVCLASS_FONT = 4; ! SC4 = X Fonts literal LAT$S_LATSETBITS = 1; macro LAT$T_FILLER = 0,0,0,0 %; macro LAT$T_FILLER2 = 0,0,8,0 %; literal LAT$C_RATING_VECTOR_LENGTH = 56; ! Size of vector literal LAT$S_RATING_VEC = 56; macro LAT$A_CONTROL_INIT_RTN = 0,0,32,0 %; ! Address of controller init macro LAT$A_UNIT_INIT_RTN = 4,0,32,0 %; ! Address of init init macro LAT$A_RATING_INIT_RTN = 8,0,32,0 %; ! Address of initial call from LTDRIVER macro LAT$A_TIMER_RTN = 12,0,32,0 %; ! Routine called each second macro LAT$A_CALC_RATING_RTN = 16,0,32,0 %; ! Routine that calculates rating macro LAT$A_STOP_RTN = 20,0,32,0 %; ! Routine called at LAT shutdown macro LAT$A_SPARE1_RTN = 24,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE2_RTN = 28,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE3_RTN = 32,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE4_RTN = 36,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE5_RTN = 40,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE6_RTN = 44,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE7_RTN = 48,0,32,0 %; ! Expansion placeholder macro LAT$A_SPARE8_RTN = 52,0,32,0 %; ! Expansion placeholder !*** MODULE $LCKDEF *** ! + ! LOCK MANAGER DEFINITIONS ! - literal LCK$M_VALBLK = %X'1'; literal LCK$M_CONVERT = %X'2'; literal LCK$M_NOQUEUE = %X'4'; literal LCK$M_SYNCSTS = %X'8'; literal LCK$M_SYSTEM = %X'10'; literal LCK$M_NOQUOTA = %X'20'; literal LCK$M_CVTSYS = %X'40'; literal LCK$M_RECOVER = %X'80'; literal LCK$M_PROTECT = %X'100'; literal LCK$M_NODLCKWT = %X'200'; literal LCK$M_NODLCKBLK = %X'400'; literal LCK$M_EXPEDITE = %X'800'; literal LCK$M_QUECVT = %X'1000'; literal LCK$M_BYPASS = %X'2000'; literal LCK$M_NOIOLOCK8 = %X'4000'; literal LCK$M_NOFORK = %X'8000'; literal LCK$M_XVALBLK = %X'10000'; literal LCK$M_DEQALL = %X'1'; literal LCK$M_CANCEL = %X'2'; literal LCK$M_INVVALBLK = %X'4'; literal LCK$M_RESV_NOIOLOCK8 = %X'4000'; literal LCK$M_RESV_NOFORK = %X'8000'; literal LCK$M_RESV_XVALBLK = %X'10000'; literal LCK$K_NLMODE = 0; ! NULL literal LCK$K_CRMODE = 1; ! CONCURRENT READ literal LCK$K_CWMODE = 2; ! CONCURRENT WRITE literal LCK$K_PRMODE = 3; ! PROTECTED READ literal LCK$K_PWMODE = 4; ! PROTECTED WRITE literal LCK$K_EXMODE = 5; ! EXCLUSIVE literal LCK$S_LCKDEF = 3; macro LCK$V_VALBLK = 0,0,1,0 %; ! VALUE BLOCK INCLUDED macro LCK$V_CONVERT = 0,1,1,0 %; ! CONVERSION REQUEST macro LCK$V_NOQUEUE = 0,2,1,0 %; ! DO NOT QUEUE REQUEST macro LCK$V_SYNCSTS = 0,3,1,0 %; ! SYNCHRONOUS STATUS REQUESTED macro LCK$V_SYSTEM = 0,4,1,0 %; ! SYSTEM LOCK macro LCK$V_NOQUOTA = 0,5,1,0 %; ! DON'T CHARGE QUOTA macro LCK$V_CVTSYS = 0,6,1,0 %; ! CONVERT TO SYSTEM macro LCK$V_RECOVER = 0,7,1,0 %; ! RECOVER LOCK DURING FAILOVER macro LCK$V_PROTECT = 0,8,1,0 %; ! PROTECT LOCK DURING FAILOVER macro LCK$V_NODLCKWT = 0,9,1,0 %; ! NO DEADLOCK WAITING macro LCK$V_NODLCKBLK = 0,10,1,0 %; ! NO DEADLOCK BLOCKING macro LCK$V_EXPEDITE = 0,11,1,0 %; ! EXPEDITE NLMODE REQUEST macro LCK$V_QUECVT = 0,12,1,0 %; ! FORCE CONVERSION TO QUEUE macro LCK$V_BYPASS = 0,13,1,0 %; ! BYPASS WAITING REQUESTS macro LCK$V_NOIOLOCK8 = 0,14,1,0 %; ! DO NOT LOCK IOLOCK8 FOR CALLBACK macro LCK$V_NOFORK = 0,15,1,0 %; ! SAFE TO PERFORM OPERATION WITHOUT FORK macro LCK$V_XVALBLK = 0,16,1,0 %; ! LONG VALUE BLOCK INCLUDED ! ! IFBLKING bitfield mask; /* PERFORM CONVERSION IF BLOCKING ! macro LCK$V_DEQALL = 0,0,1,0 %; ! DEQUEUE ALL LOCKS macro LCK$V_CANCEL = 0,1,1,0 %; ! CANCEL REQUEST macro LCK$V_INVVALBLK = 0,2,1,0 %; ! INVALIDATE VALUE BLOCK ! LOCK MODES !*** MODULE $LDDEF *** literal IO$_LD_CONTROL = 20; literal LDIO$K_CONNECT = 0; literal LDIO$K_DISCONNECT = 1; literal LDIO$K_ENABLE_TRACE = 2; literal LDIO$K_DISABLE_TRACE = 3; literal LDIO$K_GET_TRACE = 4; literal LDIO$K_RESET_TRACE = 5; literal LDIO$K_GET_CONNECTION = 6; literal LDIO$K_SET_SEED = 7; literal LDIO$K_ENABLE_WATCH = 8; literal LDIO$K_DISABLE_WATCH = 9; literal LDIO$K_GET_WATCH = 10; literal LDIO$K_RESUME_WATCH = 11; literal LDIO$K_GET_SUSPEND_LIST = 12; literal LDIO$K_ENABLE_PROTECT = 13; literal LDIO$K_DISABLE_PROTECT = 14; literal LDIO$K_SET_ALLOCLASS = 15; literal LDIO$K_GET_TRACE_PARAMETERS = 16; literal LDIO$K_GET_VERSION = 17; literal LDIO$M_REPLACE = %X'100'; literal LDIO$M_ABORT = %X'200'; literal LDIO$M_INQUIRE = %X'400'; literal LDIO$M_NOWAIT = %X'800'; literal LDIO$M_RESET = %X'1000'; literal LDIO$M_SHARE = %X'2000'; literal LDIO$M_ACCURATE = %X'4000'; literal LDIO$M_FDTTRACE = %X'8000'; literal LDIO$M_LBN = %X'10000'; literal LDIO$M_OVERRIDE = %X'20000'; literal LDIO$M_LOCK = %X'40000'; literal LDIO$M_NOFE = %X'80000'; literal LDIO$S_LDIO = 3; macro LDIO$V_FUNC = 0,0,8,0 %; literal LDIO$S_FUNC = 8; macro LDIO$V_REPLACE = 0,8,1,0 %; macro LDIO$V_ABORT = 0,9,1,0 %; macro LDIO$V_INQUIRE = 0,10,1,0 %; macro LDIO$V_NOWAIT = 0,11,1,0 %; macro LDIO$V_RESET = 0,12,1,0 %; macro LDIO$V_SHARE = 0,13,1,0 %; macro LDIO$V_ACCURATE = 0,14,1,0 %; macro LDIO$V_FDTTRACE = 0,15,1,0 %; macro LDIO$V_LBN = 0,16,1,0 %; macro LDIO$V_OVERRIDE = 0,17,1,0 %; macro LDIO$V_LOCK = 0,18,1,0 %; macro LDIO$V_NOFE = 0,19,1,0 %; literal LDRSN$K_NOTSHARED = 1; literal LDRSN$K_NOSHARE = 2; literal LDRSN$K_ALLOCLASS = 3; literal LDRSN$K_UNITNUMBER = 4; literal LDRSN$K_TRACKS = 5; literal LDRSN$K_SECTORS = 6; literal LDRSN$K_CYLINDERS = 7; literal LDRSN$K_MAXBLOCK = 8; literal LDRSN$K_NOLBNMAP = 9; literal LDRSN$K_STARTLBN = 10; literal LDRSN$K_DEVICENAME = 11; literal LDRSN$K_NOTREPLACED = 12; literal LDRSN$K_RANGEINUSE = 13; literal LDRSN$K_FILEIDINUSE = 14; literal LDRSN$K_INCMPPROT = 15; literal LDRSN$K_INCMPDEVTYPE = 16; literal LDTRC$C_LENGTH = 88; literal LDTRC$K_LENGTH = 88; literal LDTRC$S_TRACE_ENT = 88; macro LDTRC$L_PID = 0,0,32,0 %; macro LDTRC$L_LBN = 4,0,32,0 %; macro LDTRC$L_BCNT = 8,0,32,0 %; macro LDTRC$W_FUNC = 12,0,16,0 %; macro LDTRC$W_RESERVED = 14,0,16,0 %; macro LDTRC$L_IOSB = 16,0,0,0 %; literal LDTRC$S_IOSB = 8; macro LDTRC$Q_START_TIME = 24,0,0,0 %; literal LDTRC$S_START_TIME = 8; macro LDTRC$L_START_TIME = 24,0,32,0 %; macro LDTRC$Q_END_TIME = 32,0,0,0 %; literal LDTRC$S_END_TIME = 8; macro LDTRC$L_END_TIME = 32,0,32,0 %; macro LDTRC$Q_START_SCC = 40,0,0,0 %; literal LDTRC$S_START_SCC = 8; macro LDTRC$Q_END_SCC = 48,0,0,0 %; literal LDTRC$S_END_SCC = 8; macro LDTRC$L_STARTCPU = 56,0,32,0 %; macro LDTRC$L_ENDCPU = 60,0,32,0 %; macro LDTRC$Q_ELAPSED = 64,0,0,0 %; literal LDTRC$S_ELAPSED = 8; macro LDTRC$L_ELAPSED = 64,0,32,0 %; macro LDTRC$Q_START_USEC = 72,0,0,0 %; literal LDTRC$S_START_USEC = 8; macro LDTRC$Q_END_USEC = 80,0,0,0 %; literal LDTRC$S_END_USEC = 8; literal LDWTC$M_CHARS = %X'7F'; literal LDWTC$M_NOLBN = %X'1'; literal LDWTC$M_FILE = %X'2'; literal LDWTC$M_REMOVE_ALL = %X'80'; literal LDWTC$C_SUSPEND = 0; literal LDWTC$C_CRASH = 1; literal LDWTC$C_ERROR = 2; literal LDWTC$C_OPCOM = 3; literal LDWTC$C_MAX = 3; literal LDWTC$C_LENGTH = 22; literal LDWTC$K_LENGTH = 22; literal LDWTC$S_WATCHPT = 22; macro LDWTC$L_LBN = 0,0,32,0 %; macro LDWTC$W_FLAGS = 4,0,16,0 %; macro LDWTC$V_CHARS = 4,0,7,0 %; literal LDWTC$S_CHARS = 7; macro LDWTC$V_NOLBN = 4,0,1,0 %; macro LDWTC$V_FILE = 4,1,1,0 %; macro LDWTC$V_RESERVED = 4,2,5,0 %; literal LDWTC$S_RESERVED = 5; macro LDWTC$V_REMOVE_ALL = 4,7,1,0 %; macro LDWTC$W_ACTION = 6,0,16,0 %; macro LDWTC$W_FUNC = 8,0,16,0 %; macro LDWTC$W_RETCODE = 10,0,16,0 %; macro LDWTC$A_SBK = 12,0,32,0 %; macro LDWTC$A_FCB = 12,0,32,0 %; macro LDWTC$W_FID = 16,0,0,0 %; literal LDWTC$S_FID = 6; macro LDWTC$W_FID_NUM = 16,0,16,0 %; macro LDWTC$W_FID_SEQ = 18,0,16,0 %; macro LDWTC$W_FID_RVN = 20,0,16,0 %; literal LDSUSP$C_LENGTH = 16; literal LDSUSP$K_LENGTH = 16; literal LDSUSP$S_SUSPEND_LIST = 16; macro LDSUSP$L_PID = 0,0,32,0 %; macro LDSUSP$L_LBN = 4,0,32,0 %; macro LDSUSP$W_FLAGS = 8,0,16,0 %; macro LDSUSP$W_ACTION = 10,0,16,0 %; macro LDSUSP$W_FUNC = 12,0,16,0 %; macro LDSUSP$W_RETCODE = 14,0,16,0 %; !*** MODULE $LIBFILDEF *** ! Interface definitions for LIB$*_FILE ! ! LIB$FIND_FILE flag definitions literal LIB$M_FIL_NOWILD = 1; ! No wild carding allow literal LIB$M_FIL_MULTIPLE = 2; ! Multiple input files ! LIB$RENAME_FILE flag definitions literal LIB$M_FIL_CUR_VER = 1; ! Current version used literal LIB$M_FIL_INH_SECUR = 2; ! Inherit security ! LIB$DELETE_FILE & LIB$FIND_FILE & LIB$RENAME_FILE flag definition literal LIB$M_FIL_LONG_NAMES = 4; ! Handle long file names literal LIB$M_FIL_IGNORE_ACCESS = 8; ! Ignore write access on delete literal LIB$M_FIL_OPEN_SPECIAL = 16; ! Correspands to NAML$V_OPEN_SPECIAL ! NOTE: Symlink search mode encodings are coordinated across $JPIDEF, $LIBCQDEF, ! $LIBFILDEF, $PPROPDEF, and $NAMLDEF. literal LIB$M_FIL_SYMLINK_DEFAULT = 0; ! use process default literal LIB$M_FIL_SYMLINK_NONE = 32; ! use no symlinks literal LIB$M_FIL_SYMLINK_ALL = 64; ! use symlinks always literal LIB$M_FIL_SYMLINK_NOELLIPS = 96; ! use symlinks except in ellipsis !*** MODULE $LIBFISDEF *** ! Interface definitions for LIB$FIND_IMAGE_SYMBOL ! ! LIB$FIND_IMAGE_SYMBOL flag definitions literal LIB$M_FIS_PARANOID = %X'1'; literal LIB$M_FIS_NOTRANSLOG = %X'8'; literal LIB$M_FIS_MIXEDCASE = %X'10'; literal LIB$M_FIS_TV_AV = %X'20'; literal LIB$S_LIB$FIS_FLAGS = 1; macro LIB$V_FIS_PARANOID = 0,0,1,0 %; ! Force paranoid bit on for $IMGACT macro LIB$V_FIS_NOTRANSLOG = 0,3,1,0 %; ! $IMGACT lookup on untranslated logical macro LIB$V_FIS_MIXEDCASE = 0,4,1,0 %; ! Mixed case symbols macro LIB$V_FIS_TV_AV = 0,5,1,0 %; ! Append "_TV_AV" to the image name !*** MODULE $LIBWAITDEF *** ! Interface definitions for LIB$WAIT ! ! LIB$WAIT floating-point format codes (must equal CVT$K_VAX_F,... codes) literal LIB$K_VAX_F = 0; ! VAX F Floating point data literal LIB$K_VAX_D = 1; ! VAX D Floating point data literal LIB$K_VAX_G = 2; ! VAX G Floating point data literal LIB$K_VAX_H = 3; ! VAX H Floating point data literal LIB$K_IEEE_S = 4; ! IEEE S Floating point data literal LIB$K_IEEE_T = 5; ! IEEE T Floating point data ! LIB$WAIT option definitions literal LIB$K_WAKE = 0; ! WAKE option, interruptable literal LIB$K_NOWAKE = 1; ! NOWAKE option, non-interruptable !*** MODULE $LOGTYPDEF *** ! ! Entry type definitions ! literal LOGTYP$C_SS_ENTRY = 0; ! Standard service entry literal LOGTYP$C_SS_EXIT = 1; ! Standard service exit literal LOGTYP$C_PS_ENTRY = 2; ! Protected service entry literal LOGTYP$C_PS_EXIT = 3; ! Protected service exit literal LOGTYP$C_STARTUP = 4; ! Startup logging literal LOGTYP$C_STOP = 5; ! Stop logging literal LOGTYP$C_UNLOAD = 6; ! Stop logging and delete buffers literal LOGTYP$C_FILE_OPENED = 7; ! Internal file open kernel mode part literal LOGTYP$C_EOBUF = -1; literal LOGTYP$M_ARGS = %X'1'; literal LOGTYP$M_FILE = %X'2'; literal LOGTYP$S_logtyp$flags = 4; macro LOGTYP$V_ARGS = 0,0,1,0 %; macro LOGTYP$V_FILE = 0,1,1,0 %; !*** MODULE $LKIDEF *** ! + ! ! Get Lock Information Data Identifier Definitions ! ! **** NOTE **** ! The LKIDEF structure is defined multiple times to accomidate C! ! ! New items can not be added to the end of LKIDEF or LKIDEF_BR ! since this require all users to re-link. GETLKI can return ! multiples of these structures concatenated and thus any ! new items returned should really be placed in a new structure. ! - literal LKI$K_LENGTH = 24; ! LENGTH OF LIST BLOCK WITHOUT BYTE RANGE INFO literal LKI$C_LENGTH = 24; ! LENGTH OF LIST BLOCK WITHOUT BYTE RANGE INFO literal LKI$K_BR_LENGTH = 56; ! LENGTH OF LIST BLOCK WITH BYTE RANGE INFO literal LKI$C_BR_LENGTH = 56; ! LENGTH OF LIST BLOCK WITH BYTE RANGE INFO literal LKI$S_LKIDEF = 56; macro LKI$L_MSTLKID = 0,0,32,0 %; ! LOCK ID ON MASTER macro LKI$L_LOCKID = 0,0,32,0 %; ! OLD SYMBOL macro LKI$L_PID = 4,0,32,0 %; ! PROCESS ID macro LKI$L_MSTCSID = 8,0,32,0 %; ! CSID OF MASTER macro LKI$L_SYSID = 8,0,32,0 %; ! OLD SYMBOL macro LKI$B_RQMODE = 12,0,8,0 %; ! REQUEST MODE macro LKI$B_GRMODE = 13,0,8,0 %; ! GRANTED MODE macro LKI$B_QUEUE = 14,0,8,1 %; ! LOCK QUEUE macro LKI$L_LKID = 16,0,32,0 %; ! LOCK ID ON PROCESS NODE macro LKI$L_REMLKID = 16,0,32,0 %; ! OLD SYMBOL macro LKI$L_CSID = 20,0,32,0 %; ! CSID OF PROCESS NODE macro LKI$L_REMSYSID = 20,0,32,0 %; ! OLD SYMBOL macro LKI$Q_RQSTART = 24,0,0,0 %; literal LKI$S_RQSTART = 8; ! REQUEST RANGE START macro LKI$Q_RQLENGTH = 32,0,0,0 %; literal LKI$S_RQLENGTH = 8; ! REQUEST RANGE LENGTH macro LKI$Q_GRSTART = 40,0,0,0 %; literal LKI$S_GRSTART = 8; ! GRANTED RANGE START macro LKI$Q_GRLENGTH = 48,0,0,0 %; literal LKI$S_GRLENGTH = 8; ! GRANTED RANGE LENGTH ! DEFINE NAMSPACE FIELDS literal LKI$M_SYSNAM = %X'80000000'; literal LKI$S_NAMSPACE = 4; macro LKI$W_GROUP = 0,0,16,0 %; ! GROUP OF OWNER UIC macro LKI$B_RMOD = 2,0,8,0 %; ! ACCESS MODE OF REQUEST macro LKI$B_STATUS = 3,0,8,0 %; ! STATUS OF RESOURCE macro LKI$R_STATUS_BITS = 0,0,32,0 %; macro LKI$V_SYSNAM = 0,31,1,0 %; ! SYSTEM WIDE RSB ! DEFINE STATE FIELDS literal LKI$S_STATEF = 3; macro LKI$B_STATE_RQMODE = 0,0,8,0 %; ! REQUEST MODE macro LKI$B_STATE_GRMODE = 1,0,8,0 %; ! GRANTED MODE macro LKI$B_STATE_QUEUE = 2,0,8,1 %; ! LOCK STATE CODE literal LKIUSR$K_LENGTH = 20; literal LKIUSR$C_LENGTH = 20; literal LKIUSR$K_BLOCKER_START = 20; ! OFFSET TO THE START OF THE RETURNED INFORMATION literal LKIUSR$S_LKIUSRDEF = 20; macro LKIUSR$Q_START = 0,0,0,0 %; literal LKIUSR$S_START = 8; ! START OF THE REQUESTED RANGE macro LKIUSR$Q_LENGTH = 8,0,0,0 %; literal LKIUSR$S_LENGTH = 8; ! LENGTH OF THE REQUESTED RANGE macro LKIUSR$B_RQMODE = 16,0,8,0 %; ! REQUESTED MODE macro LKIUSR$B_IGNORE_OWN = 17,0,8,0 %; ! FLAG TO IGNORE LOCKS OWNED BY THE CALLING PROCESS literal LKI$_RNG_S_RNGDEF = 32; macro LKI$_RNG_Q_RQSTART = 0,0,0,0 %; literal LKI$_RNG_S_RQSTART = 8; ! REQUEST RANGE START macro LKI$_RNG_Q_RQLENGTH = 8,0,0,0 %; literal LKI$_RNG_S_RQLENGTH = 8; ! REQUEST RANGE LENGTH macro LKI$_RNG_Q_GRSTART = 16,0,0,0 %; literal LKI$_RNG_S_GRSTART = 8; ! GRANTED RANGE START macro LKI$_RNG_Q_GRLENGTH = 24,0,0,0 %; literal LKI$_RNG_S_GRLENGTH = 8; ! GRANTED RANGE LENGTH ! LOCK STATE CODE VALUES literal LKI$C_GRANTED = 1; ! GRANTED literal LKI$C_CONVERT = 0; ! CONVERSION literal LKI$C_WAITING = -1; ! WAITING literal LKI$C_RETRY = -2; ! RETRY REQUEST literal LKI$C_SCSWAIT = -3; ! SCS WAIT literal LKI$C_RSPNOTQED = -4; ! RESPONSE NOT QUEUED literal LKI$C_RSPQUEUED = -5; ! RESPONSE QUEUED literal LKI$C_RSPGRANTD = -6; ! RESPONSE GRANTED literal LKI$C_RSPDOLOCL = -7; ! RESPONSE DO LOCALLY literal LKI$C_RSPRESEND = -8; ! RESPONSE RESEND ! DEFINE TABLE NUMBERS ! STRUCTURE CODES MUST START AT 1 literal LKI$C_LKBTYPE = 1; ! ITEM IN LKB literal LKI$C_RSBTYPE = 2; ! ITEM IN RSB literal LKI$C_LISTEND = 0; ! DEFINE ITMLST TERMINATOR ! ITEM IDENTIFIERS FOR LKB literal LKI$_PID = 256; ! PROCESS ID literal LKI$_STATE = 257; ! CURRENT LOCK STATE literal LKI$_PARENT = 258; ! ID OF PARENT LOCK literal LKI$_LCKREFCNT = 259; ! SUB-LOCK REFERENCE COUNT literal LKI$_LOCKID = 260; ! LOCK ID literal LKI$_REMLKID = 261; ! REMOTE LOCK ID literal LKI$_MSTLKID = 262; ! LOCK ID ON RESOURCE MASTER literal LKI$_LKID = 263; ! LOCK ID ON PROCESS NODE literal LKI$_CSID = 264; ! CSID OF PROCESS NODE literal LKI$_BRL = 265; ! IS THE LOCK A BYTE RANGE LOCK ! * , TSKID /* TASK ID FOR MULTITASK literal LKI$_RANGE = 266; ! Range of request literal LKI$_LASTLKB = 267; ! MAX INDEX IN LKB TABLE ! ITEM IDENTIFIERS FOR RSB literal LKI$_NAMSPACE = 512; ! RESOURCE NAME SPACE literal LKI$_RESNAM = 513; ! RESOURCE NAME literal LKI$_RSBREFCNT = 514; ! SUB-RESOURCE REFERENCE COUNT literal LKI$_VALBLK = 515; ! VALUE BLOCK literal LKI$_SYSTEM = 516; ! SYSTEM ID OF SYSTEM WITH RESOURCE literal LKI$_LCKCOUNT = 517; ! COUNT OF LOCKS ON RESOURCE literal LKI$_BLOCKEDBY = 518; ! LIST OF LOCKS BLOCKED BY CURRENT LOCK literal LKI$_BLOCKING = 519; ! LIST OF LOCKS BLOCKING CURRENT LOCK literal LKI$_LOCKS = 520; ! LIST OF ALL LOCKS ON RESOURCE literal LKI$_CVTCOUNT = 521; ! COUNT OF LOCKS ON CONVERSION QUEUE literal LKI$_WAITCOUNT = 522; ! COUNT OF LOCKS ON WAIT QUEUE literal LKI$_GRANTCOUNT = 523; ! COUNT OF LOCKS ON GRANT QUEUE literal LKI$_MSTCSID = 524; ! CSID OF RESOURCE MASTER literal LKI$_VALBLKST = 525; ! VALUE BLOCK STATUS literal LKI$_BLOCKEDBY_BR = 526; ! LIST OF LOCKS BLOCKED BY CURRENT LOCK WITH BYTE RANGES literal LKI$_BLOCKING_BR = 527; ! LIST OF LOCKS BLOCKING THE CURRENT LOCK WITH BYTE RANGES literal LKI$_LOCKS_BR = 528; ! LIST OF LOCKS ALL LOCKS ON A RESOURCE WITH BYTE RANGES literal LKI$_BLOCKER_BR = 529; ! LOCK THAT WILL BLOCK THE REQUESTED RANGE AND MODE literal LKI$_XVALBLK = 530; ! EXTENDED VALUE BLOCK literal LKI$_XVALNOTVALID = 531; ! VALIDITY OF EXTENDED VALUE BLOCK literal LKI$_LASTRSB = 532; ! MAX INDEX IN RSB (MUST BE LAST internal use only) literal LKISND$K_HDRLEN = 16; ! LENGTH OF HEADER literal LKISND$C_HDRLEN = 16; ! LENGTH OF HEADER literal LKISND$S_LKISNDDEF = 16; ! Format for local system buffer header when sending an information request ! to a remote system. macro LKISND$W_RETSIZE = 0,0,16,0 %; ! size of return info macro LKISND$W_STATUS = 2,0,16,0 %; ! status of operation macro LKISND$W_FLAGS = 4,0,16,0 %; ! flags macro LKISND$W_SEQNUM = 6,0,16,0 %; ! rebuild seqnm macro LKISND$W_SIZE = 8,0,16,0 %; ! size of structure macro LKISND$B_TYPE = 10,0,8,0 %; ! type of stucture macro LKISND$B_FILL_2 = 11,0,8,0 %; ! macro LKISND$B_ITEM_LENGTH = 12,0,8,0 %; ! len of item info macro LKISND$B_FILL_3 = 13,0,8,0 %; ! macro LKISND$W_FILL_4 = 14,0,16,0 %; ! !*** MODULE $LKSBDEF *** ! + ! Define Lock Status Block ! - literal LKSB$S_LKSB = 24; macro LKSB$W_STATUS = 0,0,16,0 %; ! Status macro LKSB$W_RESERVED = 2,0,16,0 %; ! Reserved macro LKSB$L_LKID = 4,0,32,0 %; ! Lock identification macro LKSB$B_VALBLK = 8,0,0,0 %; literal LKSB$S_VALBLK = 16; ! Lock value block literal LKSB$K_LENGTH = 24; ! Length of LKSB literal LKSB$C_LENGTH = 24; ! Length of LKSB literal XLKSB$S_XLKSB = 72; macro XLKSB$W_STATUS = 0,0,16,0 %; ! Status macro XLKSB$W_RESERVED = 2,0,16,0 %; ! Reserved macro XLKSB$L_LKID = 4,0,32,0 %; ! Lock identification macro XLKSB$B_XVALBLK = 8,0,0,0 %; literal XLKSB$S_XVALBLK = 64; ! Lock value block literal XLKSB$K_LENGTH = 72; ! Length of XLKSB literal XLKSB$C_LENGTH = 72; ! Length of XLKSB !*** MODULE $LMFDEF *** literal LMF$_PROD_TOKEN = 1; literal LMF$_HW_ID = 2; literal LMF$_PROD_VERSION = 3; literal LMF$_PROD_DATE = 4; literal LMF$_CHARGE_TYPE = 5; literal LMF$_UNITS_IN_USE = 6; literal LMF$_USERNAME = 7; literal LMF$_CHECK_TOKEN = 8; literal LMF$_CHECK_HWID = 9; literal LMF$_NO_RELEASE = 10; literal LMF$C_PRDNAMLEN = 24; literal LMF$K_PRDNAMLEN = 24; literal LMF$C_PRDUCERLEN = 24; literal LMF$K_PRDUCERLEN = 24; literal LMF$C_CONTEXTLEN = 16; literal LMF$K_CONTEXTLEN = 16; literal LMF$C_TOKENLEN = 31; literal LMF$K_TOKENLEN = 31; literal LMF$C_HW_IDLEN = 31; literal LMF$K_HW_IDLEN = 31; literal LMF$C_VERSIONLEN = 4; literal LMF$K_VERSIONLEN = 4; literal LMF$K_DATELEN = 8; literal LMF$C_DATELEN = 8; literal LMF$M_RETURN_FAILURES = %X'1'; literal LMF$M_BROADCAST_FAILURES = %X'2'; literal LMF$M_OUTPUT_FAILURES = %X'4'; literal LMF$M_KERNEL_GRANT = %X'8'; literal LMF$M_LOOKUP_LICENSE_SPARE = %X'FFFFFFF0'; literal LMF$S_dvspm_masks = 4; macro LMF$V_RETURN_FAILURES = 0,0,1,0 %; ! return status .vs. signal macro LMF$V_BROADCAST_FAILURES = 0,1,1,0 %; ! do an OPCOM macro LMF$V_OUTPUT_FAILURES = 0,2,1,0 %; ! do a PUTMSG macro LMF$V_KERNEL_GRANT = 0,3,1,0 %; ! grant in kernel mode macro LMF$V_LOOKUP_LICENSE_SPARE = 0,4,28,0 %; literal LMF$S_LOOKUP_LICENSE_SPARE = 28; ! spare area !*** MODULE $LNMDEF *** literal LNM$M_NO_ALIAS = %X'1'; literal LNM$M_CONFINE = %X'2'; literal LNM$M_CRELOG = %X'4'; literal LNM$M_TABLE = %X'8'; literal LNM$M_CONCEALED = %X'100'; literal LNM$M_TERMINAL = %X'200'; literal LNM$M_EXISTS = %X'400'; literal LNM$M_SHAREABLE = %X'10000'; literal LNM$M_CLUSTERWIDE = %X'20000'; literal LNM$M_DCL_REQUEST = %X'40000'; literal LNM$M_CREATE_IF = %X'1000000'; literal LNM$M_CASE_BLIND = %X'2000000'; literal LNM$M_INTERLOCKED = %X'4000000'; literal LNM$M_LOCAL_ACTION = %X'8000000'; literal LNM$S_LNMDEF = 4; ! Logical name attributes -- bits 0-7 macro LNM$V_NO_ALIAS = 0,0,1,0 %; ! Do not allow outer mode alias macro LNM$V_CONFINE = 0,1,1,0 %; ! Do not copy into subprocess macro LNM$V_CRELOG = 0,2,1,0 %; ! Created with old $CRELOG service macro LNM$V_TABLE = 0,3,1,0 %; ! This is a table name ! Logical name translation attributes -- bits 8-15 macro LNM$V_CONCEALED = 0,8,1,0 %; ! Do not display result of translation macro LNM$V_TERMINAL = 0,9,1,0 %; ! Do not retranslate result of translation macro LNM$V_EXISTS = 0,10,1,0 %; ! Translation does exist at this index ! Logical name table characteristics -- bits 16-23 macro LNM$V_SHAREABLE = 0,16,1,0 %; ! Logical name table is shareable (S0 space) macro LNM$V_CLUSTERWIDE = 0,17,1,0 %; ! This is a clusterwide table (or name) ! Only supported as returned $TRNLNM attribute macro LNM$V_DCL_REQUEST = 0,18,1,0 %; ! $CRELNM or $CRELNT request made by DCL ! System service options -- bits 24-31 macro LNM$V_CREATE_IF = 0,24,1,0 %; ! May map to existing logical name table macro LNM$V_CASE_BLIND = 0,25,1,0 %; ! Perform case-insensitive translation macro LNM$V_INTERLOCKED = 0,26,1,0 %; ! Translate clusterwide name with LNM$CWLOGICALS locked macro LNM$V_LOCAL_ACTION = 0,27,1,0 %; ! A local operation on a clusterwide name ! done in response to a request from another node ! Only supported from kernel mode literal LNM$C_TABNAMLEN = 31; ! Maximum length of a name contained within a directory table literal LNM$C_NAMLENGTH = 255; ! Maximum logical name / translation length literal LNM$C_MAXDEPTH = 10; ! Maximum logical name recursion depth literal LNM$_INDEX = 1; ! Translation index literal LNM$_STRING = 2; ! Translation string literal LNM$_ATTRIBUTES = 3; ! Attribute bits literal LNM$_TABLE = 4; ! Logical name table name literal LNM$_LENGTH = 5; ! Length of translation string literal LNM$_ACMODE = 6; ! Access mode of name literal LNM$_MAX_INDEX = 7; ! Maximum translation index literal LNM$_PARENT = 8; ! Parent logical name table name literal LNM$_LNMB_ADDR = 9; ! Return LNM block address ! internal use by MTL ! and mailbox UCB literal LNM$_AGENT_ACMODE = 10; ! Probes to be done at a different access mode ! Define item list codes literal LNM$_CHAIN = -1; ! Chain to next list !*** MODULE $LPDEF *** ! + ! LINE PRINTER CHARACTERISTICS DEFINITIONS ! - literal LP$M_CR = %X'1'; literal LP$M_MECHFORM = %X'2'; literal LP$M_PRINTALL = %X'4'; literal LP$M_DAVFU = %X'8'; literal LP$M_WRAP = %X'10'; literal LP$M_TRUNCATE = %X'20'; literal LP$M_TAB = %X'40'; literal LP$M_LOWER = %X'80'; literal LP$M_PASSALL = %X'100'; literal LP$M_FALLBACK = %X'200'; literal LP$M_SIXELS = %X'400'; literal LP$M_BITMAPPED = %X'800'; literal LP$M_POLLED = %X'1000'; literal LP$M_BIDIRECTIONAL = %X'2000'; literal LP$M_PAGE_L = %X'FF000000'; literal LP$_LP11 = 1; literal LP$_LA11 = 2; literal LP$_LA180 = 3; literal LP$_PC_PRINTER = 8; literal LP$S_LPDEF = 4; macro LP$V_CR = 0,0,1,0 %; ! CARRIAGE RETURN NEEDED macro LP$V_MECHFORM = 0,1,1,0 %; ! MECHANICAL FORM FEED macro LP$V_PRINTALL = 0,2,1,0 %; ! NON PRINTABLE CHAR. ACCEPT(DMF-32) macro LP$V_DAVFU = 0,3,1,0 %; ! DAVFU AVAIL. macro LP$V_WRAP = 0,4,1,0 %; ! CHAR. WRAP MODE macro LP$V_TRUNCATE = 0,5,1,0 %; ! TRUNCATE output at carriage width macro LP$V_TAB = 0,6,1,0 %; ! TAB needed macro LP$V_LOWER = 0,7,1,0 %; ! PRINTER HAS LOWER CASE macro LP$V_PASSALL = 0,8,1,0 %; ! PASSALL MODE macro LP$V_FALLBACK = 0,9,1,0 %; ! FALLBACK MODE macro LP$V_SIXELS = 0,10,1,0 %; ! HANDLES SIXELS macro LP$V_BITMAPPED = 0,11,1,0 %; ! HANDLES BIT MAPS macro LP$V_POLLED = 0,12,1,0 %; ! Printer will poll device macro LP$V_BIDIRECTIONAL = 0,13,1,0 %; ! Bidirectional USB printer macro LP$V_PAGE_L = 0,24,8,0 %; literal LP$S_PAGE_L = 8; ! PAGE LENGTH !*** MODULE $MACIDDEF *** ! + ! ! Module $UICDEF defines the rightslist identifier space from %XA0000000 ! thru %XA3FFFFFF as being reserved for use by SEVMS. ! ! This space has been segmented as: ! ! %XA0000000 thru %XA000FFFF for MAC secrecy level identifiers ! %XA0010000 thru %XA001FFFF for MAC secrecy category identifiers ! %XA0020000 thru %XA002FFFF for MAC integrity level identifiers ! %XA0030000 thru %XA003FFFF for MAC integrity category identifiers ! ! to provide 64K identifiers within each grouping. This allows for growth ! consistent with variable format (i.e. type DYN_CAT) class blocks. ! ! - literal MACID$M_ID_NUM = %X'FFFF'; literal MACID$M_LVL_CAT_SEL = %X'10000'; literal MACID$K_LVL = 0; ! Level ID sub-group literal MACID$K_CAT = 1; ! Category ID sub-group literal MACID$M_SEC_INT_SEL = %X'20000'; literal MACID$K_SEC = 0; ! Secrecy ID group literal MACID$K_INT = 1; ! Integrity ID group literal MACID$M_MBZ = %X'3FC0000'; literal MACID$M_FMT_SEL = %X'FC000000'; literal MACID$K_SEVMS_ID = 40; ! Format specifier for SEVMS ! identifiers as defined by $UICDEF literal MACID$S_FILL_209_ = 4; macro MACID$L_MACIDDEF = 0,0,32,0 %; macro MACID$V_ID_NUM = 0,0,16,0 %; literal MACID$S_ID_NUM = 16; ! Group relative ID number macro MACID$V_LVL_CAT_SEL = 0,16,1,0 %; ! Level/Category ID sub-group selector macro MACID$V_SEC_INT_SEL = 0,17,1,0 %; ! Secrecy/Integrity ID group selector macro MACID$V_MBZ = 0,18,8,0 %; literal MACID$S_MBZ = 8; macro MACID$V_FMT_SEL = 0,26,6,0 %; literal MACID$S_FMT_SEL = 6; ! Composite overlay of $UICDEF ! ID_TYPE + ASSIGN_CODE fields !*** MODULE $MAILDEF *** ! ! Definitions needed for callable mail. ! ! ! NOTE: New item codes must be appended to the end of ! each category so users will not have to relink. ! We allow 1024 entries in eatch category. ! ! ! Send input codes ! literal mail$_send_spare_0 = 1; literal mail$_send_foreign = 2; ! Send foreign format message literal mail$_send_cc_line = 3; ! CC text specification literal mail$_send_default_name = 4; ! Default file name for send literal mail$_send_default_transport = 5; ! Default transport used for addressees literal mail$_send_error_entry = 6; ! Entry point for send error routine literal mail$_send_filename = 7; ! Specification of file name to send literal mail$_send_from_line = 8; ! From text specification literal mail$_send_no_default_transport = 9; ! Don't use any default transport on send literal mail$_send_pers_name = 10; ! Personal name text for message literal mail$_send_record = 11; ! Record to be sent literal mail$_send_resultspec = 12; ! Resultant filespec bodypart literal mail$_send_server = 13; ! Operate in server mode (signal success) literal mail$_send_subject = 14; ! Subject text specification literal mail$_send_success_entry = 15; ! Entry point for send success routine literal mail$_send_to_line = 16; ! To line text specification literal mail$_send_uflags = 17; ! User flags (for header) to send literal mail$_send_user_data = 18; ! User specified context for action routines literal mail$_send_username = 19; ! Username to add to the "To" list literal mail$_send_username_type = 20; ! Username type - TO or CC literal mail$_send_fid = 21; ! FID of file to send literal mail$_send_no_pers_name = 22; ! Send message without personal name literal mail$_send_sigfile = 23; ! Signature file literal mail$_send_no_sigfile = 24; ! Signature file literal mail$_send_parse_quotes = 25; ! Reply String Parsing Quotes ! ! Send output codes ! literal mail$_send_copy_reply = 26; ! Copy self reply set in profile literal mail$_send_copy_send = 27; ! Copy self send set in profile literal mail$_send_user = 28; ! Username of caller literal mail$_send_copy_forward = 29; ! Copy self forward set in profile literal mail$_send_recip_folder = 30; ! Recipient folder name to send the mail to literal mail$_send_out_spare3 = 31; literal mail$_send_out_spare4 = 32; literal mail$_send_out_spare5 = 33; literal mail$k_send_min_item = 1; literal mail$k_send_max_item = 33; literal mail$k_send_items = 33; ! ! file input codes ! literal mail$_mailfile_spare_0 = 1025; literal mail$_mailfile_default_name = 1026; ! Default filespec to open literal mail$_mailfile_folder_routine = 1027; ! Entry point of routine to process foldernames literal mail$_mailfile_full_close = 1028; ! Do a PURGE, CONVERT/RECLAIM if necessary on close literal mail$_mailfile_name = 1029; ! File spec to open literal mail$_mailfile_reclaim = 1030; ! Do RECLAIM on PURGE command literal mail$_mailfile_user_data = 1031; ! User specified context for action routines literal mail$_mailfile_wastebasket_name = 1032; ! New wastebasket name for file literal mail$_mailfile_collate_seq = 1033; ! I18N collating sequence literal mail$_mailfile_in_spare2 = 1034; literal mail$_mailfile_in_spare3 = 1035; literal mail$_mailfile_in_spare4 = 1036; literal mail$_mailfile_in_spare5 = 1037; literal mail$_mailfile_in_spare6 = 1038; literal mail$_mailfile_in_spare7 = 1039; literal mail$_mailfile_in_spare8 = 1040; literal mail$_mailfile_in_spare9 = 1041; literal mail$_mailfile_in_spare10 = 1042; literal mail$_mailfile_in_spare11 = 1043; literal mail$_mailfile_in_spare12 = 1044; literal mail$_mailfile_in_spare13 = 1045; literal mail$_mailfile_in_spare14 = 1046; literal mail$_mailfile_in_spare15 = 1047; literal mail$_mailfile_in_spare16 = 1048; literal mail$_mailfile_in_spare17 = 1049; literal mail$_mailfile_in_spare18 = 1050; literal mail$_mailfile_in_spare19 = 1051; literal mail$_mailfile_in_spare20 = 1052; ! ! file output codes ! literal mail$_mailfile_data_reclaim = 1053; ! Number of data buckets reclaimed literal mail$_mailfile_data_scan = 1054; ! Number of data buckets scanned literal mail$_mailfile_deleted_bytes = 1055; ! Number of free bytes in mail file literal mail$_mailfile_index_reclaim = 1056; ! Number of index buckets reclaimed literal mail$_mailfile_mail_directory = 1057; ! Mail sub-directory specification literal mail$_mailfile_messages_deleted = 1058; ! Number of messages deleted literal mail$_mailfile_resultspec = 1059; ! Resultant file spec literal mail$_mailfile_total_reclaim = 1060; ! Total buckets reclaimed literal mail$_mailfile_wastebasket = 1061; ! Wastebasket name literal mail$_mailfile_indexed = 1062; ! ISAM file literal mail$_mailfile_out_spare2 = 1063; literal mail$_mailfile_out_spare3 = 1064; literal mail$_mailfile_out_spare4 = 1065; literal mail$_mailfile_out_spare5 = 1066; literal mail$_mailfile_out_spare6 = 1067; literal mail$_mailfile_out_spare7 = 1068; literal mail$_mailfile_out_spare8 = 1069; literal mail$_mailfile_out_spare9 = 1070; literal mail$_mailfile_out_spare10 = 1071; literal mail$_mailfile_out_spare11 = 1072; literal mail$_mailfile_out_spare12 = 1073; literal mail$_mailfile_out_spare13 = 1074; literal mail$_mailfile_out_spare14 = 1075; literal mail$_mailfile_out_spare15 = 1076; literal mail$_mailfile_out_spare16 = 1077; literal mail$_mailfile_out_spare17 = 1078; literal mail$_mailfile_out_spare18 = 1079; literal mail$_mailfile_out_spare19 = 1080; literal mail$_mailfile_out_spare20 = 1081; literal mail$k_mailfile_min_item = 1025; literal mail$k_mailfile_max_item = 1081; literal mail$k_mailfile_items = 57; ! ! message input codes ! literal mail$_message_spare_0 = 2048; literal mail$_message_back = 2049; ! Get previous message literal mail$_message_before = 2050; ! Select messages BEFORE date literal mail$_message_cc_substring = 2051; ! Select messages containing CC substring literal mail$_message_continue = 2052; ! Read next record literal mail$_message_file_action = 2053; ! File create action routine literal mail$_message_folder_action = 2054; ! Folder create action routine literal mail$_message_default_name = 2055; ! Default file name literal mail$_message_delete = 2056; ! Delete message literal mail$_message_erase = 2057; ! Erase message literal mail$_message_file_ctx = 2058; ! File level context literal mail$_message_filename = 2059; ! File name specification literal mail$_message_flags = 2060; ! Header flags specification literal mail$_message_folder = 2061; ! Folder name specification literal mail$_message_from_substring = 2062; ! Select messages containing FROM substring literal mail$_message_id = 2063; ! ID of message literal mail$_message_next = 2064; ! Retrive NEXT message literal mail$_message_since = 2065; ! Select messages SINCE date literal mail$_message_subj_substring = 2066; ! Select messages containing SUBJ substring literal mail$_message_to_substring = 2067; ! Select messages containing TO substring literal mail$_message_uflags = 2068; ! User flags specification literal mail$_message_auto_newmail = 2069; ! Move newmail to MAIL auto literal mail$_message_user_data = 2070; ! User context for action routines literal mail$_message_flags_mbz = 2071; ! Select messages with these flags set at zero literal mail$_message_min_class = 2072; ! Min access class for message literal mail$_message_max_class = 2073; ! Max access class for message literal mail$_message_in_spare1 = 2074; literal mail$_message_in_spare2 = 2075; literal mail$_message_in_spare3 = 2076; literal mail$_message_in_spare4 = 2077; literal mail$_message_in_spare5 = 2078; literal mail$_message_in_spare6 = 2079; literal mail$_message_in_spare7 = 2080; literal mail$_message_in_spare8 = 2081; literal mail$_message_in_spare9 = 2082; literal mail$_message_in_spare10 = 2083; literal mail$_message_in_spare11 = 2084; literal mail$_message_in_spare12 = 2085; literal mail$_message_in_spare13 = 2086; literal mail$_message_in_spare14 = 2087; literal mail$_message_in_spare15 = 2088; literal mail$_message_in_spare16 = 2089; literal mail$_message_in_spare17 = 2090; literal mail$_message_in_spare18 = 2091; literal mail$_message_in_spare19 = 2092; literal mail$_message_in_spare20 = 2093; ! ! message output codes ! literal mail$_message_cc = 2094; ! CC text of message literal mail$_message_current_id = 2095; ! ID of current message literal mail$_message_date = 2096; ! Date of current message literal mail$_message_extid = 2097; ! Filespec of external message literal mail$_message_file_created = 2098; ! Mailfile created... literal mail$_message_folder_created = 2099; ! Folder created... literal mail$_message_from = 2100; ! From text of message literal mail$_message_record = 2101; ! Record from message literal mail$_message_record_type = 2102; ! Type of record, header or text literal mail$_message_reply_path = 2103; ! Reply path of sender literal mail$_message_resultspec = 2104; ! Resultant file spec literal mail$_message_return_flags = 2105; ! Message header system flags literal mail$_message_return_uflags = 2106; ! Message header user flags literal mail$_message_selected = 2107; ! Number of messages selected literal mail$_message_sender = 2108; ! Sender name literal mail$_message_size = 2109; ! Size of the current message literal mail$_message_subject = 2110; ! Subject text of the message literal mail$_message_to = 2111; ! To text of the message literal mail$_message_buffer = 2112; ! Buffer address literal mail$_message_return_class = 2113; ! Class of current message literal mail$_message_binary_date = 2114; ! Binary date/time quadword literal mail$_message_spare4 = 2115; literal mail$_message_parse_quotes = 2116; ! Reply String Parsing Quotes literal mail$_message_spare6 = 2117; literal mail$_message_spare7 = 2118; literal mail$_message_spare8 = 2119; literal mail$_message_spare9 = 2120; literal mail$_message_spare10 = 2121; literal mail$_message_spare11 = 2122; literal mail$_message_spare12 = 2123; literal mail$_message_spare13 = 2124; literal mail$_message_spare14 = 2125; literal mail$_message_spare15 = 2126; literal mail$_message_spare16 = 2127; literal mail$_message_spare17 = 2128; literal mail$_message_spare18 = 2129; literal mail$_message_spare19 = 2130; ! ! Constants returned ! literal mail$_message_null = 2131; ! Null bodypart literal mail$_message_header = 2132; ! Header record returned literal mail$_message_text = 2133; ! Text record returned literal mail$_message_spare20 = 2134; literal mail$k_message_min_item = 2048; literal mail$k_message_max_item = 2134; literal mail$k_message_items = 87; ! ! user input codes ! literal mail$_user_spare_0 = 3072; literal mail$_user_first = 3073; ! Retrive first user record literal mail$_user_next = 3074; ! Retrive next user record literal mail$_user_username = 3075; ! Retrive record for username literal mail$_user_set_auto_purge = 3076; ! Set auto-purge literal mail$_user_set_no_auto_purge = 3077; ! Clear auto-purge literal mail$_user_set_sub_directory = 3078; ! Set sub-dir field literal mail$_user_set_no_sub_directory = 3079; ! Clear sub-dir field literal mail$_user_set_forwarding = 3080; ! Set forwarding address literal mail$_user_set_no_forwarding = 3081; ! Clear forwarding address literal mail$_user_set_personal_name = 3082; ! Set personal name literal mail$_user_set_no_personal_name = 3083; ! Clear personal name literal mail$_user_set_copy_send = 3084; ! Set copy-send literal mail$_user_set_no_copy_send = 3085; ! Clear copy send literal mail$_user_set_copy_reply = 3086; ! Set copy reply literal mail$_user_set_no_copy_reply = 3087; ! Clear copy reply literal mail$_user_set_new_messages = 3088; ! Set new message count literal mail$_user_create_if = 3089; ! Create record if does not exist literal mail$_user_set_mailplus = 3090; ! Set M+ literal mail$_user_set_no_mailplus = 3091; ! Clear M+ literal mail$_user_set_transport = 3092; ! Set transport field literal mail$_user_set_no_transport = 3093; ! Clear transport field literal mail$_user_set_editor = 3094; ! Set editor field literal mail$_user_set_no_editor = 3095; ! Clear editor field literal mail$_user_set_queue = 3096; ! Set queue field literal mail$_user_set_no_queue = 3097; ! Clear queue field literal mail$_user_set_user1 = 3098; ! Set user1 field literal mail$_user_set_no_user1 = 3099; ! Clear user1 field literal mail$_user_set_user2 = 3100; ! Set user2 field literal mail$_user_set_no_user2 = 3101; ! Clear user2 field literal mail$_user_set_user3 = 3102; ! Set user3 field literal mail$_user_set_no_user3 = 3103; ! Clear user3 field literal mail$_user_set_form = 3104; ! Set form field literal mail$_user_set_no_form = 3105; ! Clear form field literal mail$_user_set_copy_forward = 3106; ! Set copy self forward literal mail$_user_set_no_copy_forward = 3107; ! Clear copy self forward literal mail$_user_set_cc_prompt = 3108; ! Set CC prompting literal mail$_user_set_no_cc_prompt = 3109; ! Clear CC prompting literal mail$_user_set_sigfile = 3110; ! Set signature file literal mail$_user_set_no_sigfile = 3111; ! Clear signature file literal mail$_user_in_spare1 = 3112; literal mail$_user_in_spare2 = 3113; literal mail$_user_in_spare3 = 3114; literal mail$_user_in_spare4 = 3115; literal mail$_user_in_spare5 = 3116; literal mail$_user_in_spare6 = 3117; literal mail$_user_in_spare7 = 3118; literal mail$_user_in_spare8 = 3119; literal mail$_user_in_spare9 = 3120; literal mail$_user_in_spare10 = 3121; literal mail$_user_in_spare11 = 3122; literal mail$_user_in_spare12 = 3123; literal mail$_user_in_spare13 = 3124; literal mail$_user_in_spare14 = 3125; literal mail$_user_in_spare15 = 3126; literal mail$_user_in_spare16 = 3127; literal mail$_user_in_spare17 = 3128; literal mail$_user_in_spare18 = 3129; literal mail$_user_in_spare19 = 3130; literal mail$_user_in_spare20 = 3131; ! ! Output item parameters ! literal mail$_user_mailplus = 3132; ! M+ field literal mail$_user_transport = 3133; ! Transport field literal mail$_user_editor = 3134; ! Editor field literal mail$_user_queue = 3135; ! Queue field literal mail$_user_user1 = 3136; ! User1 field literal mail$_user_user2 = 3137; ! User2 field literal mail$_user_user3 = 3138; ! User3 field literal mail$_user_form = 3139; ! Form field literal mail$_user_copy_forward = 3140; ! Copy forward flag literal mail$_user_sigfile = 3141; ! Signature file literal mail$_user_return_username = 3142; ! Username of current record literal mail$_user_auto_purge = 3143; ! Auto purge flag literal mail$_user_sub_directory = 3144; ! Sub-dir spec literal mail$_user_full_directory = 3145; ! Full directory spec literal mail$_user_new_messages = 3146; ! New message count literal mail$_user_forwarding = 3147; ! Forwarding field literal mail$_user_personal_name = 3148; ! Personal name field literal mail$_user_copy_send = 3149; ! Copy send flag literal mail$_user_copy_reply = 3150; ! Copy reply flag literal mail$_user_captive = 3151; ! User is captive literal mail$_user_cc_prompt = 3152; ! CC prompting flag literal mail$_user_out_spare2 = 3153; literal mail$_user_out_spare3 = 3154; literal mail$_user_out_spare4 = 3155; literal mail$_user_out_spare5 = 3156; literal mail$_user_out_spare6 = 3157; literal mail$_user_out_spare7 = 3158; literal mail$_user_out_spare8 = 3159; literal mail$_user_out_spare9 = 3160; literal mail$_user_out_spare10 = 3161; literal mail$_user_out_spare11 = 3162; literal mail$_user_out_spare12 = 3163; literal mail$_user_out_spare13 = 3164; literal mail$_user_out_spare14 = 3165; literal mail$_user_out_spare15 = 3166; literal mail$_user_out_spare16 = 3167; literal mail$_user_out_spare17 = 3168; literal mail$_user_out_spare18 = 3169; literal mail$_user_out_spare19 = 3170; literal mail$_user_out_spare20 = 3171; literal mail$k_user_min_item = 3072; literal mail$k_user_max_item = 3171; literal mail$k_user_items = 100; ! ! Special items ! literal mail$_noop = 4097; ! Do nothing - used for testing literal mail$_nosignal = 4098; ! Don't signal errors literal mail$_noprobe = 4099; ! Don't probe the item list buffers literal mail$_tld_input = 4100; ! This item is a tld to be used as input literal mail$_tld_output = 4101; ! This item describes a buffer to fill ! ! Username types for mail$send_add_address ! literal mail$_to = 1; ! Address part of the TO line literal mail$_cc = 2; ! Address part of the CC line literal mail$_spare1 = 3; literal mail$_spare2 = 4; ! ! Define the flag values for mail system flags ! literal MAIL$m_newmsg = %X'1'; literal MAIL$m_replied = %X'2'; literal MAIL$m_dwmail = %X'4'; literal MAIL$m_extmsg = %X'8'; literal MAIL$m_extfnf = %X'10'; literal MAIL$m_notrans = %X'20'; literal MAIL$m_extnstd = %X'40'; literal MAIL$m_marked = %X'80'; literal MAIL$m_recmode = %X'100'; literal MAIL$S_flagsdef = 2; macro MAIL$w_flags = 0,0,16,0 %; ! Flags word macro MAIL$v_newmsg = 0,0,1,0 %; ! This is a new message macro MAIL$v_replied = 0,1,1,0 %; ! This message has been replied to macro MAIL$v_dwmail = 0,2,1,0 %; ! DW mail flag macro MAIL$v_extmsg = 0,3,1,0 %; ! Message text in external file macro MAIL$v_extfnf = 0,4,1,0 %; ! External message file not found macro MAIL$v_notrans = 0,5,1,0 %; ! No translator for this message macro MAIL$v_extnstd = 0,6,1,0 %; ! External file is not var-seq file macro MAIL$v_marked = 0,7,1,0 %; ! This message has been marked macro MAIL$v_recmode = 0,8,1,0 %; ! This message should be read in record mode !*** MODULE $MAPPINGDEF IDENT X-2 *** literal MAPPING$K_ADD = 1; literal MAPPING$K_CREATE = 2; literal MAPPING$K_DEFINE = 3; literal MAPPING$K_DELETE = 4; literal MAPPING$K_MODIFY = 5; literal MAPPING$K_SCAN = 6; literal MAPPING$K_LOOKUP = 7; literal MAPPING$K_PERFORMANCE = 8; literal MAPPING$K_ZERO_PERFORMANCE = 9; literal MAPPING$K_STOP = 10; literal MAPPING$K_START = 11; literal MAPPING$K_MAX_MAPPING_CODE = 12; literal MAPPING$K_END = 100; literal MAPPING$K_TYPE = 101; literal MAPPING$K_REMOTE_AREA = 102; literal MAPPING$K_REMOTE_NAME = 103; literal MAPPING$K_LOCAL_NAME = 104; literal MAPPING$K_FLAGS = 105; literal MAPPING$K_USER_DATA = 106; literal MAPPING$K_USER_DATA_LENGTH = 107; literal MAPPING$K_WILDCARD_MC = 108; literal MAPPING$K_WILDCARD_SC = 109; literal MAPPING$K_WILDCARD_TC = 110; literal MAPPING$K_WILDCARD_TS = 111; literal MAPPING$K_DEFINE_NAME = 112; literal MAPPING$K_DEFINE_FLAGS = 113; literal MAPPING$K_SCAN_BUFFER = 114; literal MAPPING$K_PROPOSED_NAME = 115; literal MAPPING$K_WC_RESOLUTION = 116; literal MAPPING$K_MAX_MAPPING_ITEMS = 117; literal MAPPING$K_WC_MUST_BE_UNIQUE = 200; literal MAPPING$K_WC_MATCH_LONGEST = 201; literal MAPPING$K_WC_MATCH_SHORTEST = 202; literal MAPPING$K_WC_MATCH_MOST_TERMS = 203; literal MAPPING$K_WC_MATCH_FEWEST_TERMS = 204; literal MAPPING$K_WC_MATCH_LEFTMOST = 205; literal MAPPING$K_WC_MATCH_RIGHTMOST = 206; literal MAPPING$K_MAX_MAPPING_WC = 207; literal MAPPING$K_ANY_TYPE = -2147483648; literal MAPPING$K_TCP_USER = -2147483391; literal MAPPING$K_TCP_GROUP = -2147483390; literal MAPPING$K_TCP_PROXY = -2147483389; literal MAPPING$K_DCE_MAPPING = -2147483135; literal MAPPING$K_DCE_PROXY = -2147483134; literal MAPPING$K_PATHWORKS_PROXY = -2147482879; literal MAPPING$K_DECNET_PROXY = -2147482623; literal MAPPING$K_KERBEROS_MAPPING = -2147482367; literal MAPPING$K_PERFORMANCE_LENGTH = 56; literal MAPPING$S_PERFORMANCE = 56; macro MAPPING$L_TOTAL_MESSAGES = 0,0,32,0 %; macro MAPPING$L_TOTAL_EXCEPTIONS = 4,0,32,0 %; macro MAPPING$L_ADDS = 8,0,32,0 %; macro MAPPING$L_CREATES = 12,0,32,0 %; macro MAPPING$L_DEFINES = 16,0,32,0 %; macro MAPPING$L_DELETES = 20,0,32,0 %; macro MAPPING$L_MODIFYS = 24,0,32,0 %; macro MAPPING$L_SCANS = 28,0,32,0 %; macro MAPPING$L_LOOKUPS = 32,0,32,0 %; macro MAPPING$L_PERFORMANCE = 36,0,32,0 %; macro MAPPING$L_STOPS = 40,0,32,0 %; macro MAPPING$L_STARTS = 44,0,32,0 %; macro MAPPING$L_AUDITS = 48,0,32,0 %; macro MAPPING$L_INVALID_MESSAGES = 52,0,32,0 %; literal MAPPING$M_LOCAL_UNIQUE = %X'1'; literal MAPPING$M_REMOTE_UNIQUE = %X'2'; literal MAPPING$M_DEFAULT_IN = %X'4'; literal MAPPING$M_DEFAULT_OUT = %X'8'; literal MAPPING$M_NO_DEFAULT_IN = %X'10'; literal MAPPING$M_NO_DEFAULT_OUT = %X'20'; literal MAPPING$M_MODIFY = %X'40'; literal MAPPING$M_DEFINITION = %X'80'; literal MAPPING$M_CASE_BLIND = %X'100'; literal MAPPING$M_WILDCARD = %X'200'; literal MAPPING$M_FIND_LOCAL = %X'400'; literal MAPPING$M_FIND_REMOTE = %X'800'; literal MAPPING$M_FILL_1 = %X'FFFFF000'; literal MAPPING$K_HEADER_LENGTH = 40; literal MAPPING$S_HEADER = 40; macro MAPPING$L_LENGTH = 0,0,32,0 %; macro MAPPING$L_CONTEXT = 4,0,32,0 %; macro MAPPING$L_FLAGS = 8,0,32,0 %; macro MAPPING$V_LOCAL_UNIQUE = 8,0,1,0 %; macro MAPPING$V_REMOTE_UNIQUE = 8,1,1,0 %; macro MAPPING$V_DEFAULT_IN = 8,2,1,0 %; macro MAPPING$V_DEFAULT_OUT = 8,3,1,0 %; macro MAPPING$V_NO_DEFAULT_IN = 8,4,1,0 %; macro MAPPING$V_NO_DEFAULT_OUT = 8,5,1,0 %; macro MAPPING$V_MODIFY = 8,6,1,0 %; macro MAPPING$V_DEFINITION = 8,7,1,0 %; macro MAPPING$V_CASE_BLIND = 8,8,1,0 %; macro MAPPING$V_WILDCARD = 8,9,1,0 %; macro MAPPING$V_FIND_LOCAL = 8,10,1,0 %; macro MAPPING$V_FIND_REMOTE = 8,11,1,0 %; macro MAPPING$V_FILL_1 = 8,12,20,0 %; literal MAPPING$S_FILL_1 = 20; macro MAPPING$L_TYPE = 12,0,32,0 %; macro MAPPING$L_WILDFLAGS = 16,0,32,0 %; macro MAPPING$L_WILDMULTI = 20,0,32,0 %; macro MAPPING$L_WILDSINGLE = 24,0,32,0 %; macro MAPPING$L_WILDTERM = 28,0,32,0 %; macro MAPPING$L_TERMSEP = 32,0,32,0 %; macro MAPPING$L_UNUSED = 36,0,32,0 %; literal MAPPING$S_MAPPING$GENERIC_DESC1 = 5; macro MAPPING$W_DESC_LENGTH = 0,0,16,0 %; macro MAPPING$T_DESC_DATA = 4,0,8,0 %; !*** MODULE MMEDEF IDENT X-3 *** literal MME$_UNLOAD = 1; literal MME$_ALLOC = 2; literal MME$_BACKUP_FILE = 3; literal MME$_CLOSE_READ = 4; literal MME$_CLOSE_WRITE = 5; literal MME$_CONTINUATION_VOLUME = 6; literal MME$_DEALLOCATE = 7; literal MME$_DEVICE_AVAIL = 8; literal MME$_DEVICE_UNAVAIL = 9; literal MME$_DISMOUNT = 10; literal MME$_DISPLAY_MESSAGE = 11; literal MME$_EOV_READ = 12; literal MME$_EOV_WRITE = 13; literal MME$_INITIALIZE = 14; literal MME$_MOUNT = 15; literal MME$_MOUNT_REQUEST = 16; literal MME$_NEWVOL_REQUEST = 17; literal MME$_NOTIFY_DEVICE = 18; literal MME$_OPCOM_ACP = 19; literal MME$_OPCOM_MOUNT = 20; literal MME$_OPEN_READ = 21; literal MME$_OPEN_WRITE = 22; literal MME$_VOLUME_ONLINE = 23; literal MME$_BACKUP_END = 24; literal MME$_BACKUP_START = 25; literal MME$_WRITE_REQUEST = 26; literal MME$_MOUNT_END = 27; literal MME$_INIT_END = 28; literal MME$_NEWVOL_END = 29; literal MME$_DISMNT_PROC_DEL = 30; literal MME$S_ACMODE = 4; literal MME$S_BLOCKSIZE = 4; literal MME$S_DENSITY = 4; literal MME$S_DEVICE_CONTEXT = 4; literal MME$S_DMT_FLAGS = 4; literal MME$S_ERASE = 4; literal MME$S_EXPIRATION = 8; literal MME$S_FILESEQNO = 4; literal MME$S_FILESECNO = 4; literal MME$S_IO_FUNCTION = 4; literal MME$S_LABEL_ACCESS = 1; literal MME$S_MOUNT_CONTEXT = 4; literal MME$S_MNT_FLAGS = 8; literal MME$S_OBJCNT = 4; literal MME$S_OVR_ACCESS = 4; literal MME$S_OVR_EXP = 4; literal MME$S_OVR_VOLO = 4; literal MME$S_OWNER_UIC = 4; literal MME$S_PID = 4; literal MME$S_RECORDSIZ = 4; literal MME$S_RESPONSEREQ = 4; literal MME$S_SETNEW1 = 4; literal MME$S_SETNEW2 = 4; literal MME$S_VPROT = 4; literal MME$S_FILE_ID = 6; literal MME$S_GROUPSIZE = 4; literal MME$S_PROTECTION = 4; literal MME$S_STATUS = 4; literal MME$S_ASSIGNMENT_UNIT = 4; literal MME$S_CARTRIDGE_SIDE = 4; literal MME$S_DISPOSITION = 4; literal MME$S_RECFORMAT = 1; ! MME action routine argument item codes literal MME$_ACMODE = 1; literal MME$_BLOCKSIZE = 2; literal MME$_COMMENT = 3; literal MME$_DENSITY = 4; literal MME$_DEVICE_CONTEXT = 5; literal MME$_DMT_FLAGS = 6; literal MME$_EOF1 = 7; literal MME$_EOF2 = 8; literal MME$_EOF3 = 9; literal MME$_EOF4 = 10; literal MME$_EOV1 = 11; literal MME$_EOV2 = 12; literal MME$_EOV3 = 13; literal MME$_EOV4 = 14; literal MME$_ERASE = 15; literal MME$_FIB = 16; literal MME$_FILESEQNO = 17; literal MME$_HDR1 = 18; literal MME$_HDR2 = 19; literal MME$_HDR3 = 20; literal MME$_HDR4 = 21; literal MME$_IO_FUNCTION = 22; literal MME$_LABEL_ACCESS = 23; literal MME$_LABEL_VOLO = 24; literal MME$_MOUNT_CONTEXT = 25; literal MME$_MNT_FLAGS = 26; literal MME$_MSG1 = 27; literal MME$_MSG2 = 28; literal MME$_NEWDEVNAM = 29; literal MME$_NEWMSG1 = 30; literal MME$_NEWMSG2 = 31; literal MME$_NEWVOLNAM = 32; literal MME$_NXTVOL = 33; literal MME$_OBJCNT = 34; literal MME$_OVR_ACCESS = 35; literal MME$_OVR_EXP = 36; literal MME$_OVR_VOLO = 37; literal MME$_OWNER_UIC = 38; literal MME$_PHYDEVNAM = 39; literal MME$_PID = 40; literal MME$_PREV_VOL = 41; literal MME$_PROCESSOR = 42; literal MME$_RECORDSIZ = 43; literal MME$_REQDEVNAM = 44; literal MME$_RESPONSEREQ = 45; literal MME$_SETNEW1 = 46; literal MME$_SETNEW2 = 47; literal MME$_VOL1 = 48; literal MME$_VOL2 = 49; literal MME$_VOLNAM = 50; literal MME$_VPROT = 51; literal MME$_BACKUP_FILE_FLAGS = 52; literal MME$_BACKUP_FLAGS = 53; literal MME$_EXPIRATION = 54; literal MME$_FILENAME = 55; literal MME$_FILE_ID = 56; literal MME$_GROUPSIZE = 57; literal MME$_IN_SAVE = 58; literal MME$_IN_SPECIFICATION = 59; literal MME$_IN_VOLUME = 60; literal MME$_OUT_SAVE = 61; literal MME$_PROTECTION = 62; literal MME$_STATUS = 63; literal MME$_ASSIGNMENT_UNIT = 64; literal MME$_CART_MEDIA_NAME = 65; literal MME$_CARTRIDGE_NAME = 66; literal MME$_CARTRIDGE_SIDE = 67; literal MME$_COLLECTION = 68; literal MME$_DEVICE_TYPE = 69; literal MME$_DISPOSITION = 70; literal MME$_LOCATION = 71; literal MME$_MEDIA_NAME = 72; literal MME$_LABEL_TYPE = 73; literal MME$_EXPDATE = 74; literal MME$_CREDATE = 75; literal MME$_RECFORMAT = 76; literal MME$_FILESECNO = 77; literal MME$_REPLY = 78; literal MME$M_IMAGE = %X'1'; literal MME$M_CRC = %X'2'; literal MME$M_DELETE = %X'4'; literal MME$M_IGN_INTERLOCK = %X'8'; literal MME$M_IGN_LABEL = %X'10'; literal MME$M_IGN_NOBACKUP = %X'20'; literal MME$M_INTERCHANGE = %X'40'; literal MME$M_RECORD = %X'80'; literal MME$M_REWIND = %X'100'; literal MME$M_VERIFY = %X'200'; literal MME$M_PHYSICAL = %X'400'; literal MME$M_COMPACTION = %X'800'; literal MME$S_BACKUP_FLAGS = 4; macro MME$L_FLAGS_MASK = 0,0,32,0 %; macro MME$V_IMAGE = 0,0,1,0 %; macro MME$V_CRC = 0,1,1,0 %; macro MME$V_DELETE = 0,2,1,0 %; macro MME$V_IGN_INTERLOCK = 0,3,1,0 %; macro MME$V_IGN_LABEL = 0,4,1,0 %; macro MME$V_IGN_NOBACKUP = 0,5,1,0 %; macro MME$V_INTERCHANGE = 0,6,1,0 %; macro MME$V_RECORD = 0,7,1,0 %; macro MME$V_REWIND = 0,8,1,0 %; macro MME$V_VERIFY = 0,9,1,0 %; macro MME$V_PHYSICAL = 0,10,1,0 %; macro MME$V_COMPACTION = 0,11,1,0 %; literal MME$M_VERIF_ERR = %X'1'; literal MME$M_NOBACKUP = %X'2'; literal MME$M_FILE_OPEN = %X'4'; literal MME$M_ACC_CONF = %X'8'; literal MME$S_BACKUP_FILE_FLAGS = 4; macro MME$L_FILE_FLAGS_MASK = 0,0,32,0 %; macro MME$V_VERIF_ERR = 0,0,1,0 %; macro MME$V_NOBACKUP = 0,1,1,0 %; macro MME$V_FILE_OPEN = 0,2,1,0 %; macro MME$V_ACC_CONF = 0,3,1,0 %; macro MME$v_fill1 = 0,4,28,0 %; literal MME$s_fill1 = 28; literal MME$C_ANSI_1 = 1; literal MME$C_ANSI_2 = 2; literal MME$C_ANSI_3 = 3; literal MME$C_ANSI_4 = 4; literal MME$C_IBM_STD = 5; literal MME$C_UNLABELLED = 6; literal MME$C_ODS1 = 7; literal MME$C_ODS2 = 8; !*** MODULE $MMIDEF IDENT X-1 *** literal MMI$_FACILITY = 1; literal MMI$_MBUNIT = 2; literal MMI$_PID = 3; literal MMI$_MBXUCB = 4; literal MMI$_UNLOAD = 5; literal MMI$_ALLOC = 6; literal MMI$_BACKUP_END = 7; literal MMI$_BACKUP_FILE = 8; literal MMI$_BACKUP_START = 9; literal MMI$_CLOSE_READ = 10; literal MMI$_CLOSE_WRITE = 11; literal MMI$_CONTINUATION_VOLUME = 12; literal MMI$_DEALLOCATE = 13; literal MMI$_DEVICE_AVAIL = 14; literal MMI$_DEVICE_UNAVAIL = 15; literal MMI$_DISMOUNT = 16; literal MMI$_DISPLAY_MESSAGE = 17; literal MMI$_EOV_READ = 18; literal MMI$_EOV_WRITE = 19; literal MMI$_INITIALIZE = 20; literal MMI$_MOUNT = 21; literal MMI$_MOUNT_REQUEST = 22; literal MMI$_NEWVOL_REQUEST = 23; literal MMI$_NOTIFY_DEVICE = 24; literal MMI$_OPCOM_ACP = 25; literal MMI$_OPCOM_MOUNT = 26; literal MMI$_OPEN_READ = 27; literal MMI$_OPEN_WRITE = 28; literal MMI$_VOLUME_ONLINE = 29; literal MMI$_WRITE_REQUEST = 30; literal MMI$_MOUNT_END = 31; literal MMI$_INIT_END = 32; literal MMI$_NEWVOL_END = 33; !*** MODULE $MNTDEF *** ! + ! ! FLAG BITS FOR THE $MOUNT SYSTEM SERVICE. ! ! - literal MNT$M_FOREIGN = %X'1'; literal MNT$M_GROUP = %X'2'; literal MNT$M_NOASSIST = %X'4'; literal MNT$M_NODISKQ = %X'8'; literal MNT$M_NOHDR3 = %X'10'; literal MNT$M_NOLABEL = %X'20'; literal MNT$M_NOWRITE = %X'40'; literal MNT$M_OVR_ACCESS = %X'80'; literal MNT$M_OVR_EXP = %X'100'; literal MNT$M_OVR_IDENT = %X'200'; literal MNT$M_OVR_SETID = %X'400'; literal MNT$M_READCHECK = %X'800'; literal MNT$M_SHARE = %X'1000'; literal MNT$M_MESSAGE = %X'2000'; literal MNT$M_SYSTEM = %X'4000'; literal MNT$M_WRITECHECK = %X'8000'; literal MNT$M_WRITETHRU = %X'10000'; literal MNT$M_NOCACHE = %X'20000'; literal MNT$M_OVR_LOCK = %X'40000'; literal MNT$M_NOMNTVER = %X'80000'; literal MNT$M_NOUNLOAD = %X'100000'; literal MNT$M_TAPE_DATA_WRITE = %X'200000'; literal MNT$M_NOCOPY = %X'400000'; literal MNT$M_NOAUTO = %X'800000'; literal MNT$M_INIT_ALL = %X'1000000'; literal MNT$M_INIT_CONT = %X'2000000'; literal MNT$M_OVR_VOLO = %X'4000000'; literal MNT$M_INTERCHG = %X'8000000'; literal MNT$M_CLUSTER = %X'10000000'; literal MNT$M_NOREBUILD = %X'20000000'; literal MNT$M_OVR_SHAMEM = %X'40000000'; literal MNT$M_MULTI_VOL = %X'80000000'; literal MNT2$M_DISKQ = %X'1'; literal MNT2$M_COMPACTION = %X'2'; literal MNT2$M_INCLUDE = %X'4'; literal MNT2$M_PASS2 = %X'8'; literal MNT2$M_OVR_NOFE = %X'10'; literal MNT2$M_SCRATCH = %X'20'; literal MNT2$M_CDROM = %X'40'; literal MNT2$M_XAR = %X'80'; literal MNT2$M_DSI = %X'100'; literal MNT2$M_SUBSYSTEM = %X'200'; literal MNT2$M_NOCOMPACTION = %X'400'; literal MNT2$M_OVR_SECURITY = %X'800'; literal MNT2$M_OVR_LIMITED_SEARCH = %X'1000'; literal MNT2$M_POOL = %X'2000'; literal MNT2$M_WLG_ENABLE = %X'4000'; literal MNT2$M_WLG_DISABLE = %X'8000'; literal MNT2$M_REQUIRE_MEMBERS = %X'10000'; literal MNT2$M_VERIFY_LABEL = %X'20000'; literal MNT2$M_FULL_MERGE = %X'40000'; literal MNT2$M_WRITE_FIRST = %X'80000'; literal MNT2$M_DCD = %X'100000'; literal MNT2$M_NODCD = %X'200000'; literal MNT2$M_LOCAL_HOST = %X'400000'; literal MNT2$M_FACTOR = %X'800000'; literal MNT2$M_PRIORITY = %X'1000000'; literal MNT$_DEVNAM = 1; ! DEVICE NAME literal MNT$_VOLNAM = 2; ! VOLUME NAME literal MNT$_LOGNAM = 3; ! LOGICAL NAME literal MNT$_FLAGS = 4; ! MOUNT FLAGS literal MNT$_ACCESSED = 5; ! ACCESSED VALUE literal MNT$_PROCESSOR = 6; ! PROCESSOR NAME literal MNT$_VOLSET = 7; ! VOLUME SET NAME literal MNT$_BLOCKSIZE = 8; ! BLOCKSIZE VALUE literal MNT$_DENSITY = 9; ! TAPE DENSITY VALUE literal MNT$_EXTENT = 10; ! NUMBER OF EXTENT CACHE ENTRIES literal MNT$_FILEID = 11; ! FILE ID CACHE SIZE literal MNT$_LIMIT = 12; ! EXTENT CACHE LIMIT literal MNT$_OWNER = 13; ! VOLUME OWNER UIC literal MNT$_VPROT = 14; ! VOLUME PROTECTION literal MNT$_QUOTA = 15; ! QUOTA CACHE SIZE literal MNT$_RECORDSIZ = 16; ! RECORD SIZE VALUE literal MNT$_WINDOW = 17; ! NUMBER OF WINDOWS literal MNT$_EXTENSION = 18; ! DEFAULT FILE EXTENSION literal MNT$_VISUAL_ID = 19; ! VISUAL IDENTIFICATION literal MNT$_COMMENT = 20; ! USER COMMENT literal MNT$_CLASS = 21; ! SECURITY CLASSFICATION literal MNT$_UNUSED2 = 22; ! SPARE (was used for now obsolete journaling-related items) literal MNT$_ACCPTNAM = 23; ! ACCESS POINT NAME (DECdfs) literal MNT$_SHACOPY_BUF = 24; ! SHADOW COPY BUFFER literal MNT$_SHANAM = 25; ! SHADOW SET VIRTUAL UNIT NAME literal MNT$_SHAMEM = 26; ! SHADOW SET MEMBER UNIT NAME literal MNT$_SHAMEM_MGCOPY = 27; ! SHADOW SET MEMBER UNIT NAME (MERGE COPY) literal MNT$_SHAMEM_COPY = 28; ! SHADOW SET MEMBER UNIT NAME (FULL COPY) literal MNT$_PRFD_PATH = 29; ! PREFERRED DSA PATH literal MNT$_ASSIGNMENT_UNIT = 30; ! Assignment unit (MME) literal MNT$_CART_MEDIA_NAME = 31; ! Cartridge Media Name (MME) literal MNT$_CARTRIDGE_NAME = 32; ! Cartridge Name (MME) literal MNT$_CARTRIDGE_SIDE = 33; ! Cartridge Side (MME) literal MNT$_COLLECTION = 34; ! Collection name (MME) literal MNT$_DEVICE_TYPE = 35; ! Device Selection criteria (MME) literal MNT$_DISPOSITION = 36; ! Dismount Disposition (MME) literal MNT$_LOCATION = 37; ! Cartridge Location (MME) literal MNT$_MEDIA_NAME = 38; ! Media Name (MME) literal MNT$_UNUSED4 = 39; ! SPARE literal MNT$_UNDEFINED_FAT = 40; ! Undefined File Attributes literal MNT$_UCS = 41; ! Universal Character Set string literal MNT$_TAPE_EXPIRATION = 42; ! Date Tape Expires (MME) literal MNT$_PRIORITY = 43; ! SHDRIVER merge priority literal MNT$_FACTOR = 44; ! SHDRIVER IO completion factor for merges literal MNT$_WBM_SIZE = 45; ! MINICOPY size literal MNT$_DATA = 46; ! Enable data (XFC) cache literal MNT$_NODATA = 47; ! Disable data (XFC) cache ! ! Add new item codes before this line ! literal MNT$_LAST_ITEM_CODE = 48; ! last item code plus 1 literal MNT$C_BASE_CARTRIDGE = 1; ! Assign a whole cartridge literal MNT$C_COMPOUND_CARTRIDGE = 2; ! Assign a magazine literal MNT$C_PREASSIGNED_SIDE = 3; ! Assign a pre-assigned cartridge side literal MNT$C_SIDE = 4; ! Assign a single cartridge side literal MNT$C_KEEP = 1; ! Keep the media assigned literal MNT$C_RELEASE = 2; ! Release the media literal MNT$S_MNTDEF = 8; macro MNT$V_FOREIGN = 0,0,1,0 %; ! FOREIGN OPTION SELECTED macro MNT$V_GROUP = 0,1,1,0 %; ! GROUP OPTION SELECTED macro MNT$V_NOASSIST = 0,2,1,0 %; ! NOASSIST OPTION SELECTED macro MNT$V_NODISKQ = 0,3,1,0 %; ! NODISKQ OPTION SELECTED macro MNT$V_NOHDR3 = 0,4,1,0 %; ! NOHDR3 OPTION SELECTED macro MNT$V_NOLABEL = 0,5,1,0 %; ! NOLABEL OPTION SELECTED macro MNT$V_NOWRITE = 0,6,1,0 %; ! NOWRITE OPTION SELECTED macro MNT$V_OVR_ACCESS = 0,7,1,0 %; ! OVERRIDE ACCESSIBLITY OPTION SELECTED macro MNT$V_OVR_EXP = 0,8,1,0 %; ! OVERRIDE EXPIRATON OPTION SELECTED macro MNT$V_OVR_IDENT = 0,9,1,0 %; ! OVERRIDE VOLUME LABEL macro MNT$V_OVR_SETID = 0,10,1,0 %; ! OVERRIDE VOLUME SET IDENT OPTION SELECTIED macro MNT$V_READCHECK = 0,11,1,0 %; ! READCHECK OPTION SELECTED macro MNT$V_SHARE = 0,12,1,0 %; ! SHARE OPTION SELECTED macro MNT$V_MESSAGE = 0,13,1,0 %; ! ALLOW $MOUNT TO PRINT MESSAGES macro MNT$V_SYSTEM = 0,14,1,0 %; ! SYSTEM OPTION SELECTED macro MNT$V_WRITECHECK = 0,15,1,0 %; ! WRITECHECK OPTION SELECTED macro MNT$V_WRITETHRU = 0,16,1,0 %; ! WRITETHRU OPTION SELECTED macro MNT$V_NOCACHE = 0,17,1,0 %; ! TURN OFF ALL CACHING macro MNT$V_OVR_LOCK = 0,18,1,0 %; ! OVERRIDE AUTOMATIC WRITE-LOCK macro MNT$V_NOMNTVER = 0,19,1,0 %; ! DISABLE MOUNT VERIFICATION macro MNT$V_NOUNLOAD = 0,20,1,0 %; ! DO NOT UNLOAD VOLUME AT DISMOUNT macro MNT$V_TAPE_DATA_WRITE = 0,21,1,0 %; ! ENABLE WRITE-BACK CACHE ON TAPE macro MNT$V_NOCOPY = 0,22,1,0 %; ! DO NOT ALLOW SHADOW COPY OPERATION macro MNT$V_NOAUTO = 0,23,1,0 %; ! DO NOT SET THE MTAACP INTO AVR AND AVL MODE macro MNT$V_INIT_ALL = 0,24,1,0 %; ! INITIALIZE ALL VOLUMES IN SET BEFORE WRITING macro MNT$V_INIT_CONT = 0,25,1,0 %; ! INITIALIZE CONTINUATION VOLUMES BEFORE WRITING macro MNT$V_OVR_VOLO = 0,26,1,0 %; ! OVERRIDE VOL1 VOLUME IDENTIFIER FIELD macro MNT$V_INTERCHG = 0,27,1,0 %; ! VOL FOR INTERCHG NO VMS SPECIFIC INFO WRITTEN TO TAPE macro MNT$V_CLUSTER = 0,28,1,0 %; ! CLUSTER-WIDE MOUNT OPTION SELECTED macro MNT$V_NOREBUILD = 0,29,1,0 %; ! DO NOT REBUILD VOLUME macro MNT$V_OVR_SHAMEM = 0,30,1,0 %; ! OVERRIDE SHADOW MEMBERSHIP RESTRICTION macro MNT$V_MULTI_VOL = 0,31,1,0 %; ! MULTI_VOLUME TAPE SET macro MNT$V_DISKQ = 4,0,1,0 %; ! QUOTA EXPLICITLY SELECTED macro MNT$V_COMPACTION = 4,1,1,0 %; ! MAGTAPE DATA COMPACTION ON macro MNT$V_INCLUDE = 4,2,1,0 %; ! INCLUDE PREVIOUS SHADOWSET MEMBERS macro MNT$V_PASS2 = 4,3,1,0 %; ! PASS2 of /INCLUDE/CONFIRM PROCESSING macro MNT$V_OVR_NOFE = 4,4,1,0 %; ! /OVERRIDE=NO_FORCED_ERROR macro MNT$V_SCRATCH = 4,5,1,0 %; ! Scratch tape requested flag macro MNT$V_CDROM = 4,6,1,0 %; ! Force mounting of a Files-11 C/D Volume macro MNT$V_XAR = 4,7,1,0 %; ! Enable protection based on XARs macro MNT$V_DSI = 4,8,1,0 %; ! Enable protection based on Digital System Id in XARs macro MNT$V_SUBSYSTEM = 4,9,1,0 %; ! /SUBSYSTEM macro MNT$V_NOCOMPACTION = 4,10,1,0 %; ! MAGTAPE DATA COMPACTION OFF macro MNT$V_OVR_SECURITY = 4,11,1,0 %; ! /OVERRIDE=SECURITY macro MNT$V_OVR_LIMITED_SEARCH = 4,12,1,0 %; ! /OVERRIDE=LIMITIED_SEARCH macro MNT$V_POOL = 4,13,1,0 %; ! /POOL operation for snapshot pool member macro MNT$V_WLG_ENABLE = 4,14,1,0 %; ! /POLICY=ENABLE_WLG macro MNT$V_WLG_DISABLE = 4,15,1,0 %; ! /POLICY=DISABLE_WLG macro MNT$V_REQUIRE_MEMBERS = 4,16,1,0 %; ! /POLICY=REQUIRE_MEMBERS macro MNT$V_VERIFY_LABEL = 4,17,1,0 %; ! /VERIFY_LABEL macro MNT$V_FULL_MERGE = 4,18,1,0 %; ! /POLICY=MERGE macro MNT$V_WRITE_FIRST = 4,19,1,0 %; ! /POLCIY=WRITE_FIRST macro MNT$V_DCD = 4,20,1,0 %; ! /POLICY=DCD macro MNT$V_NODCD = 4,21,1,0 %; ! /POLICY=NODCD macro MNT$V_LOCAL_HOST = 4,22,1,0 %; ! /POLICY=LOCAL_HOST macro MNT$V_FACTOR = 4,23,1,0 %; ! /POLICY=FACTOR macro MNT$V_PRIORITY = 4,24,1,0 %; ! /POLICY=PRIORITY macro MNT$V_MINICOPY_REQUIRED = 4,25,1,0 %; ! /POLICY=MINICOPY=REQ macro MNT$V_MINICOPY_OPTIONAL = 4,26,1,0 %; ! /POLICY=MINICOPY=OPT macro MNT$V_NOMINICOPY = 4,27,1,0 %; ! /POLICY=NOMINICOPY macro MNT2$V_DISKQ = 0,0,1,0 %; ! QUOTA EXPLICITLY SELECTED macro MNT2$V_COMPACTION = 0,1,1,0 %; ! MAGTAPE DATA COMPACTION ON macro MNT2$V_INCLUDE = 0,2,1,0 %; ! INCLUDE PREVIOUS SHADOWSET MEMBERS macro MNT2$V_PASS2 = 0,3,1,0 %; ! PASS2 of /INCLUDE/CONFIRM PROCESSING macro MNT2$V_OVR_NOFE = 0,4,1,0 %; ! /OVERRIDE=NO_FORCED_ERROR macro MNT2$V_SCRATCH = 0,5,1,0 %; ! Scratch tape requested flag macro MNT2$V_CDROM = 0,6,1,0 %; ! Force mounting of a Files-11 C/D Volume macro MNT2$V_XAR = 0,7,1,0 %; ! Enable protection based on XARs macro MNT2$V_DSI = 0,8,1,0 %; ! Enable protection based on Digital System Id in XARs macro MNT2$V_SUBSYSTEM = 0,9,1,0 %; ! /SUBSYSTEM macro MNT2$V_NOCOMPACTION = 0,10,1,0 %; ! MAGTAPE DATA COMPACTION OFF macro MNT2$V_OVR_SECURITY = 0,11,1,0 %; ! /OVERRIDE=SECURITY macro MNT2$V_OVR_LIMITED_SEARCH = 0,12,1,0 %; ! /OVERRIDE=LIMITIED_SEARCH macro MNT2$V_POOL = 0,13,1,0 %; ! /POOL operation for snapshot pool member macro MNT2$V_WLG_ENABLE = 0,14,1,0 %; ! /POLICY=ENABLE_WLG macro MNT2$V_WLG_DISABLE = 0,15,1,0 %; ! /POLICY=DISABLE_WLG macro MNT2$V_REQUIRE_MEMBERS = 0,16,1,0 %; ! /POLICY=REQUIRE_MEMBERS macro MNT2$V_VERIFY_LABEL = 0,17,1,0 %; ! /VERIFY_LABEL macro MNT2$V_FULL_MERGE = 0,18,1,0 %; ! /POLICY=MERGE macro MNT2$V_WRITE_FIRST = 0,19,1,0 %; ! /POLCIY=WRITE_FIRST macro MNT2$V_DCD = 0,20,1,0 %; ! /POLICY=DCD macro MNT2$V_NODCD = 0,21,1,0 %; ! /POLICY=NODCD macro MNT2$V_LOCAL_HOST = 0,22,1,0 %; ! /POLICY=LOCAL_HOST macro MNT2$V_FACTOR = 0,23,1,0 %; ! /POLICY=FACTOR macro MNT2$V_PRIORITY = 0,24,1,0 %; ! /POLICY=PRIORITY macro MNT2$V_MINICOPY = 0,25,1,0 %; ! /POLICY=MINICOPY macro MNT2$V_MINICOPY_OPTIONAL = 0,26,1,0 %; ! /POLICY=MINICOPY=OPT macro MNT2$V_NOMINICOPY = 0,27,1,0 %; ! /POLICY=NOMINICOPY ! ! Item codes for mount parameters. ! ! DEFINE CODES AS CONSTANTS ! ! Define format of the /UNDEFINED_FAT block ! literal UNFAT$S_UNDEFINED_FAT = 4; macro UNFAT$W_MRS = 0,0,16,0 %; ! FAT Maximum Record Size macro UNFAT$B_RAT = 2,0,8,0 %; ! FAT Record Attributes macro UNFAT$B_RFM = 3,0,8,0 %; ! FAT Record Format !*** MODULE $MSGDEF *** ! + ! ! SYSTEM WIDE MAILBOX MESSAGE TYPES ! ! - ! DEFINE CODES AS CONSTANTS literal MSG$_TRMUNSOLIC = 1; ! UNSOLICITED TERMINAL DATA literal MSG$_CRUNSOLIC = 2; ! UNSOLICTED CARD READER DATA literal MSG$_DELPROC = 3; ! DELETE PROCESS literal MSG$_SNDSMB = 4; ! SEND TO SYMBIONT MANAGER literal MSG$_DEVOFFLIN = 5; ! DEVICE OFFLINE literal MSG$_TRMHANGUP = 6; ! TERMINAL HANG UP literal MSG$_DEVONLIN = 7; ! DEVICE ONLINE literal MSG$_OPRQST = 8; ! OPERATOR REQUEST *** OVERLAPPED CODE *** literal MSG$_OPREPLY = 9; ! OPERATOR REPLY *** OVERLAPPED CODE *** ! DEFINE SYMBIONT RESPONSE MESSAGES literal MSG$_SMBINI = 8; ! SYMBIONT HAS INITED literal MSG$_SMBDON = 9; ! SYMBIONT FINISHED literal MSG$_SNDACC = 10; ! SEND MESSAGE TO ACCOUNTING MANAGER literal MSG$_PURPROC = 11; ! PURGE PROCESS *** OVERLAPPED CODE *** literal MSG$_DELIMAG = 12; ! DELETE IMAGE *** OVERLAPPED CODE *** literal MSG$_PURIMAG = 13; ! PURGE IMAGE *** OVERLAPPED CODE *** literal MSG$_SYSFUNC = 14; ! SYSTEM FUNCTION *** OVERLAPPED CODE *** literal MSG$_SNDJBC = 15; ! Send message to job controller literal MSG$_GETQUI = 16; ! Get queue information (from job controller) ! DEFINE DMC MESSAGES literal MSG$_XM_DATAVL = 11; ! DMC UNSOLICITED DATA literal MSG$_XM_SHUTDN = 12; ! DMC LINE DOWN literal MSG$_XM_ATTN = 13; ! DMC ATTENTION MESSAGE ! SYMBIONT COMMAND MESSAGES literal MSG$_INIOPR = 16; ! INITIATE PRINTING A FILE literal MSG$_ABOOPR = 17; ! ABORT PRINTING A FILE literal MSG$_SUSOPR = 18; ! PAUSE PRINTING THE FILE literal MSG$_RESOPR = 19; ! RESUME PRINTING THE FILE literal MSG$_DELSMB = 20; ! SYMBIONT SHOULD DELETE ITSELF literal MSG$_REQUE = 21; ! REQUEUE A FILE FOR PRINTING ! literal MSG$_SMBRSP = 32; ! SYMBIONT MANAGER RESPONSE literal MSG$_ACCRSP = 33; ! ACCOUNTING MANAGER RESPONSE ! FILE ACP MESSAGES literal MSG$_SCANBAD = 40; ! SCAN FILE FOR BAD BLOCKS literal MSG$_SCANRSP = 41; ! RESPONSE FROM FILE SCANNER ! NETWORK ATTENTION CODES literal MSG$_ABORT = 48; ! PARTNER ABORTED LINK literal MSG$_CONFIRM = 49; ! CONNECT CONFIRM literal MSG$_CONNECT = 50; ! INBOUND CONNECT INITIATE literal MSG$_DISCON = 51; ! PARTNER DISCONNECTED - HANGUP literal MSG$_EXIT = 52; ! PARTNER EXITED PREMATURELY literal MSG$_INTMSG = 53; ! INTERRUPT MESSAGE - UNSOLICITED DATA literal MSG$_PATHLOST = 54; ! NFW - PATH LOST TO PARTNER literal MSG$_PROTOCOL = 55; ! PROTOCOL ERROR literal MSG$_REJECT = 56; ! CONNECT REJECT literal MSG$_THIRDPARTY = 57; ! THIRD PARTY DISCONNECT literal MSG$_TIMEOUT = 58; ! CONNECT TIMEOUT literal MSG$_NETSHUT = 59; ! Network shutting down literal MSG$_NODEACC = 60; ! Node has become accessible literal MSG$_NODEINACC = 61; ! Node has become inaccessible literal MSG$_EVTAVL = 62; ! Events are available to EVL literal MSG$_EVTRCVCHG = 63; ! Event receiver database change literal MSG$_INCDAT = 64; ! X25 INCOMING DATA literal MSG$_RESET = 65; ! X25 CIRCUIT RESET literal MSG$_LINUP = 66; ! X25 PVC LINE UP literal MSG$_LINDWN = 67; ! X25 PVC LINE DOWN literal MSG$_EVTXMTCHG = 68; ! Event transmitter database change ! MOUNT VERIFICATION MESSAGES literal MSG$_DEVOFFLINX = 80; ! DEVICE OFFLINE literal MSG$_WRONGVOL = 81; ! WRONG VOLUME IN DEVICE literal MSG$_DEVWRTLCK = 82; ! DEVICE HAS BEEN WRITE LOCKED literal MSG$_TRMBRDCST = 83; ! TERMINAL BROADCAST literal MSG$_MVCOMPLETE = 84; ! MOUNT VERIFICATION COMPLETED literal MSG$_MVABORTED = 85; ! MOUNT VERIFICATION ABORTED literal MSG$_DISMOUNTED = 86; ! VOLUME DISMOUNTED literal MSG$_UDA50MVER = 87; ! UDA50 MICORCODE NOT UPTO REV literal MSG$_DUPUNITNO = 88; ! MSCP CONTROLLER - DUPLICATE UNIT ! literal MSG$_CLUMBX = 89; ! CNXMGR to OPCOM messages literal MSG$_TM78MVER = 90; ! TM78 Microcode not up to rev level literal MSG$_SHAMEMFAL = 91; ! Member failed out of shadow set literal MSG$_SHARDUCED = 92; ! Shadow set reduced literal MSG$_RC25MVER = 93; ! RC25 MICORCODE NOT UPTO REV literal MSG$_RDRXMVER = 94; ! RDRX MICORCODE NOT UPTO REV literal MSG$_TU81MVER = 95; ! TU81 MICORCODE NOT UPTO REV literal MSG$_MAYAMVER = 96; ! MAYA MICORCODE NOT UPTO REV literal MSG$_SHACHASTA = 97; ! Shadow set has changed state literal MSG$_SHACOPCOM = 98; ! Shadow copy operation has completed literal MSG$_SHAREDZER = 99; ! Shadow set reduced to zero members literal MSG$_SHAPOSMEM = 100; ! Possible shadow set member literal MSG$_SHAALLCOM = 101; ! All shadow set copy operations completed literal MSG$_SHACOPBEG = 102; ! Shadow copy operation begun literal MSG$_SHAWROMEM = 103; ! Shadow member contains wrong volume literal MSG$_SHAORGMEM = 104; ! Shadow system disk missing VMB R3 member literal MSG$_TRMLOSE_KB = 105; ! terminal lost physical KB literal MSG$_TRMGAIN_KB = 106; ! terminal gained physical KB literal MSG$_TRMSHRINK = 107; ! terminal window shrunk to icon literal MSG$_TRMEXPAND = 108; ! terminal window icon expanded literal MSG$_TRMRESIZE = 109; ! terminal window resized literal MSG$_TRMMOVE = 110; ! terminal window moved literal MSG$_SNDMME = 111; ! message to media management extensions literal MSG$_RETMME = 112; ! message returned from media management software literal MSG$_SHAADPBAD = 113; ! Shadow VMB R3 member not currently connected to original boot adapter type (PA versus PU) literal MSG$_SHAEMUPTH = 114; ! Shadow VMB R3 member not currently connected to original boot adapter - on an emulated pa literal MSG$_SHABENODMP = 115; ! Shadow VMB R3 member not on original adapter, current type unknown literal MSG$_SHABNODMP = 116; ! Shadow VMB R3 member not the master of set or not on PATH named to VMB literal MSG$_SHALOCDEV = 117; ! A Satellites shadow master member is now on a local device, no reboot or dumps possible literal MSG$_SHANOBPOK = 118; ! Shadow VMB R3 member is not a member of the set literal MSG$_SHABDMPOK = 119; ! Shadow VMB R3 member is on the original adapter literal MSG$_BOOTDMPOK = 120; ! System dump will has been redirected to the current master member literal MSG$_SHABDBCK = 121; ! Shadow VMB R3 member has returned to the original adapter literal MSG$_SHANODMP = 122; ! Shadow master changed. Dump will NOT be written if system crashes. literal MSG$_SHADMPOK = 123; ! Shadow master changed. Dump WILL be written if system crashes. literal MSG$_OPCFAO = 124; ! Message contains dynamic FAO parameters to format the message literal MSG$_INSAMCVP = 125; ! Shadowing - not all requested bitmaps were converted literal MSG$_HBMMRESET = 126; ! Shadowing - HBMM bitmap was reset literal MSG$_SHADISSOLVED = 127; ! Shadowing -- virtual unit has been vapourized literal MSG$_SHAMEMEXPEL = 128; ! Shadowing -- a member device has been expelled literal MSG$_SHAMEMDMT = 129; ! Shadowing -- a member device has been dismounted from shadow set ! DEFINE MESSAGES FOR USE BY QMAN literal MSG$_QMAN_INTERNAL = 200; ! QMAN internal message !*** MODULE $MSGHLPDEF IDENT X-4 *** literal MSGHLP$M_NOSORT = %X'1'; literal MSGHLP$M_BRIEF = %X'2'; literal MSGHLP$M_MACHINE = %X'4'; literal MSGHLP$M_NOSUBSTRING = %X'8'; literal MSGHLP$S_MSGHLPDEF = 4; macro MSGHLP$V_NOSORT = 0,0,1,0 %; ! Do *NOT* sort the output macro MSGHLP$V_BRIEF = 0,1,1,0 %; ! Give only the names of the messages macro MSGHLP$V_MACHINE = 0,2,1,0 %; ! Return the text in machine-readable format macro MSGHLP$V_NOSUBSTRING = 0,3,1,0 %; ! Match only entire words, no abreviations macro MSGHLP$B_WORK_FILES = 3,0,8,1 %; ! How many workfiles for /SORT? !*** MODULE $MTADEF *** ! + ! MAGTAPE ACCESSIBILTY ROUTINE CODES ! - ! DEFINITIONS FOR ACCESS_SPEC literal MTA$K_NOCHAR = 0; ! ACCESS CHAR IS NOVALID literal MTA$K_CHARVALID = 1; ! ACCESS CHAR IS VALID ! DEFINITIONS FOR TYPE literal MTA$K_INVOL1 = 0; ! INPUT A VOL1 ACCESS CODE literal MTA$K_INHDR1 = 1; ! INPUT A HDR1 ACCESS CODE literal MTA$K_OUTVOL1 = 2; ! OUTPUT A VOL1 ACCESS CODE literal MTA$K_OUTHDR1 = 3; ! OUTPUT A HDR1 ACCESS CODE !*** MODULE $MTDEF *** ! + ! MAGTAPE STATUS BITS ! - literal MT$M_SEREXCP = %X'1'; literal MT$M_ENAUTOPACK = %X'2'; literal MT$M_ENSEREXCP = %X'4'; literal MT$M_PARITY = %X'8'; literal MT$M_FORMAT = %X'F0'; literal MT$M_DENSITY = %X'1F00'; literal MT$M_FASTSKIP_USED = %X'2000'; literal MT$M_LOGSOFT = %X'4000'; literal MT$M_LOGSOFTOG = %X'8000'; literal MT$M_BOT = %X'10000'; literal MT$M_EOF = %X'20000'; literal MT$M_EOT = %X'40000'; literal MT$M_HWL = %X'80000'; literal MT$M_LOST = %X'100000'; literal MT$M_SUP_NRZI = %X'200000'; literal MT$M_SUP_PE = %X'400000'; literal MT$M_SUP_GCR = %X'800000'; literal MT$M_SPEED = %X'FF000000'; literal MT$K_DEFAULT = 0; ! DEFAULT FORMAT literal MT$K_NORMAL11 = 12; ! PDP-11 NORMAL literal MT$K_CORDMP11 = 13; ! PDP-11 CORE DUMP literal MT$K_NORMAL15 = 14; ! PDP-15 NORMAL ! literal MT$K_NRZI_800 = 3; ! NRZI 800 BPI literal MT$K_PE_1600 = 4; ! PE 1600 BPI literal MT$K_GCR_6250 = 5; ! GCR 6250 BPI literal MT$K_WOD_6250 = 8; ! RV80 6250 BPI EQUIVALENT literal MT$K_SCSI_DC1 = 10; ! Data Compaction algorithm 1 literal MT$K_HPC_40K = 12; ! HPC 39872 BPI literal MT$K_HPC_COMP = 13; ! HPC 39872 compacted literal MT$K_XPC_80K = 14; ! literal MT$K_XPC_COMP = 15; ! literal MT$K_BLK_833 = 17; ! BLOCK (TK50) 833 BPI literal MT$K_BLK_1250 = 18; ! BLOCK (TK70) 1250 BPI literal MT$K_BLK_10K = 19; ! BLOCK (TF85) 10625 BPI literal MT$K_BLK_20K = 20; ! BLOCK (TF86) 10626 literal MT$K_BLK_60K = 21; ! BLOCK (Tx87) 62500 literal MT$K_BLK_COMP = 22; ! BLOCK (Tx87) COMPRESSED 62501 literal MT$K_DAT_61K = 24; ! DAT CARTRIDGE 61000 BPI EQUIVALENT ! literal MT$K_SPEED_DEF = 0; ! DEFAULT SPEED literal MT$K_SPEED_25 = 25; ! 25 IPS literal MT$K_SPEED_75 = 75; ! 75 IPS literal MT$S_MTDEF = 4; macro MT$V_SEREXCP = 0,0,1,0 %; ! SERIOUS EXCEPTION PRESENT macro MT$V_ENAUTOPACK = 0,1,1,0 %; ! ENABLE AUTO PACKACK macro MT$V_ENSEREXCP = 0,2,1,0 %; ! ENABLE SERIOUS EXCEPTION MODE macro MT$V_PARITY = 0,3,1,0 %; ! PARITY SELECT (0=ODD, 1=EVEN) macro MT$V_FORMAT = 0,4,4,0 %; literal MT$S_FORMAT = 4; ! RECORDING FORMAT macro MT$V_DENSITY = 0,8,5,0 %; literal MT$S_DENSITY = 5; ! RECORDING DENSITY AND METHOD macro MT$V_FASTSKIP_USED = 0,13,1,0 %; ! IO$_SKIPFILE USED SKIP BY FILEMARKS macro MT$V_LOGSOFT = 0,14,1,0 %; ! LOG SOFT (TU78) ERRORS (0=NO, 1=YES) macro MT$V_LOGSOFTOG = 0,15,1,0 %; ! TOGGLE TO REVERSE LOGSOFT STATE BIT macro MT$V_BOT = 0,16,1,0 %; ! AT BEGINNING OF TAPE macro MT$V_EOF = 0,17,1,0 %; ! AT END OF FILE macro MT$V_EOT = 0,18,1,0 %; ! AT END OF TAPE macro MT$V_HWL = 0,19,1,0 %; ! TAPE IS HARDWARE WRITELOCKED macro MT$V_LOST = 0,20,1,0 %; ! TAPE POSITION LOST macro MT$V_SUP_NRZI = 0,21,1,0 %; ! DRIVE SUPPORTS NRZI (800 BPI) macro MT$V_SUP_PE = 0,22,1,0 %; ! DRIVE SUPPORTS PE (1600 BPI) macro MT$V_SUP_GCR = 0,23,1,0 %; ! DRIVE SUPPORTS GCR (6250 BPI) macro MT$V_SPEED = 0,24,8,0 %; literal MT$S_SPEED = 8; ! TAPE SPEED ! ! RECORDING FORMAT DEFINTIONS ! ! ! RECORDING DENSITY AND METHOD DEFINITIONS ! ! Default 0 ! 9 Track 1 - 7 ! Optical Disk 8 - 9 ! SCSI Compaction codes 10 - 11 ! High Performance Cartridge 12 - 15 ! Block Mode 16 - 23 ! Reserved 24 - 31 ! ! ! DEFAULT,0 /* DEFAULT DENSITY (SAME AS ABOVE) ! TAPE SPEED VALUE DEFINITIONS ! !*** MODULE $MT2DEF *** ! + ! EXTENDED MAGTAPE CHARACTERISTICS BITS ! - literal MT2$M_SUP_DENS = %X'FFFF'; literal MT2$M_WBC_ENABLE = %X'10000'; literal MT2$M_RDC_DISABLE = %X'20000'; literal MT2$M_CACHED_DATA = %X'40000'; literal MT2$M_CD_LOST = %X'80000'; literal MT2$M_TAPE_MARK = %X'100000'; literal MT2$M_COMP_SUP = %X'200000'; literal MT2$M_COMP_ENA = %X'400000'; literal MT2$M_MT3_SUPPORTED = %X'800000'; literal MT2$M_ALLOWFAST_SUP = %X'1000000'; literal MT2$M_ALLOWFAST_ALWAYS = %X'2000000'; literal MT2$M_ALLOWFAST_PER_IO = %X'4000000'; literal MT2$M_ALLOWFAST_NEVER = %X'8000000'; literal MT2$S_MT2DEF = 4; macro MT2$V_SUP_DENS = 0,0,16,0 %; literal MT2$S_SUP_DENS = 16; ! SUPPORTED DENSITIES macro MT2$V_WBC_ENABLE = 0,16,1,0 %; ! WRITE-BACK CACHING IS ENABLED macro MT2$V_RDC_DISABLE = 0,17,1,0 %; ! READ CACHING IS DISABLED macro MT2$V_CACHED_DATA = 0,18,1,0 %; ! CLASS DRIVER DETECTED DATA IN CACHE macro MT2$V_CD_LOST = 0,19,1,0 %; ! CLASS DRIVER DETECTED CACHED DATA LOST macro MT2$V_TAPE_MARK = 0,20,1,0 %; ! TAPE MARK HAS BEEN WRITTEN macro MT2$V_COMP_SUP = 0,21,1,0 %; ! COMPACTION supported macro MT2$V_COMP_ENA = 0,22,1,0 %; ! COMPACTION enabled macro MT2$V_MT3_SUPPORTED = 0,23,1,0 %; ! Driver supports Multiple Tape Densities. macro MT2$V_ALLOWFAST_SUP = 0,24,1,0 %; ! SCSI Fast Search supported macro MT2$V_ALLOWFAST_ALWAYS = 0,25,1,0 %; ! ALWAYS use Fast Search macro MT2$V_ALLOWFAST_PER_IO = 0,26,1,0 %; ! PER_IO use of Fast Search macro MT2$V_ALLOWFAST_NEVER = 0,27,1,0 %; ! NEVER use Fast Search !*** MODULE $MT3DEF *** ! + ! MAGNETIC TAPE DENSITY/COMPRESSION DEFINITIONS ! ! These values are used only for MTD enhanced tape drivers ! and are not found in MTDEF. ! literal MT3$K_DEFAULT = 0; ! DEFAULT DENSITY/COMPRESSION literal MT3$K_NRZI_800 = 257; ! NRZI 800 BPI literal MT3$K_PE_1600 = 258; ! PE 1600 BPI literal MT3$K_GCR_6250 = 260; ! GCR 6250 BPI literal MT3$K_TK50 = 513; ! DLT TK50: 833 BPI literal MT3$K_TK70 = 514; ! DLT TK70: 1250 BPI literal MT3$K_3480 = 769; ! IBM 3480 HPC 39872 BPI literal MT3$K_3490E = 770; ! IBM 3480: compressed literal MT3$K_3480_COMP = 772; ! IBM 3490 density literal MT3$K_3490E_COMP = 776; ! IBM 3490: compressed literal MT3$K_WOD_6250 = 1025; ! RV80 6250 BPI EQUIVALENT literal MT3$K_DAT = 1281; ! DAT - 61000 bpi literal MT3$K_DAT_COMP = 1282; ! DAT Compressed ! Only the Symbols to here are understood by pre-Raven TMSCP / TUDRIVER code. literal MT3$K_DENSITY_INVALID = 31; ! Indicates,, DEVDEPEND density is invalid. literal MT3$K_8200 = 1537; ! Exa-Byte 8200 literal MT3$K_8500 = 1538; ! Exa-Byte 8500 literal MT3$K_8500_COMP = 1540; ! Exa-Byte 8500 Compressed literal MT3$K_8200_COMP = 1544; ! Exa-Byte 8200 Compressed literal MT3$K_8900 = 1552; ! Exa-Byte 8900 literal MT3$K_8900_COMP = 1568; ! Exa-Byte 8900 Compressed literal MT3$K_QIC = 1793; ! All QIC drives are drive settable only. literal MT3$K_TK85 = 2052; ! DLT Tx85: 10625 BPI -- Cmpt III literal MT3$K_TK86 = 2056; ! DLT Tx86: 10626 BPI -- Cmpt III literal MT3$K_TK87 = 2064; ! DLT Tx87: 62500 BPI -- Cmpt III literal MT3$K_TK87_COMP = 2080; ! DLT Tx87: Compressed 62501 BPI literal MT3$K_TK89 = 2305; ! DLT Tx89: (Quantum 7000) -- Cmpt IV literal MT3$K_TK89_COMP = 2306; ! DLT Tx89: Compressed -- Cmpt IV literal MT3$K_TK88 = 2368; ! DLT Tx88: (Quantum 4000) -- Cmpt IV literal MT3$K_TK88_COMP = 2432; ! DLT Tx88: Compressed -- Cmpt IV literal MT3$K_DLT8000 = 3588; ! DLT8000 literal MT3$K_DLT8000_COMP = 3592; ! DLT8000 Compressed literal MT3$K_SDLT = 3600; ! Super DLT literal MT3$K_SDLT_COMP = 3616; ! Super DLT Compressed literal MT3$K_SDLT320 = 3648; ! Super DLT320 literal MT3$K_SDLT320_COMP = 3712; ! Super DLT320 Compressed literal MT3$K_AIT1 = 2561; ! Sony Advanced Intelligent Tapes literal MT3$K_AIT1_COMP = 2562; ! Sony Advanced Intelligent Tapes Compressed literal MT3$K_AIT2 = 2564; ! AIT2 literal MT3$K_AIT2_COMP = 2568; ! AIT2 Compressed literal MT3$K_AIT3 = 2576; ! AIT3 literal MT3$K_AIT3_COMP = 2592; ! AIT3 Compressed literal MT3$K_AIT4 = 2624; ! AIT4 literal MT3$K_AIT4_COMP = 2688; ! AIT4 Compressed literal MT3$K_DDS2 = 2817; ! Digital Data Storage 2 literal MT3$K_DDS2_COMP = 2818; ! Digital Data Storage 2 Compressed literal MT3$K_DDS3 = 3073; ! Digital Data Storage 3 literal MT3$K_DDS3_COMP = 3074; ! Digital Data Storage 3 Compressed literal MT3$K_DDS4 = 3329; ! Digital Data Storage 4 literal MT3$K_DDS4_COMP = 3330; ! Digital Data Storage 4 Compressed literal MT3$K_DAT72 = 3332; ! DAT72 literal MT3$K_DAT72_COMP = 3336; ! DAT72 Compressed literal MT3$K_DAT160 = 3344; ! DAT160 literal MT3$K_DAT160_COMP = 3360; ! DAT160 Compressed literal MT3$K_SDLT600 = 3585; ! Super DLT600 literal MT3$K_SDLT600_COMP = 3586; ! Super DLT600 Compressed literal MT3$K_LTO2 = 3841; ! Ultrium460 literal MT3$K_LTO2_COMP = 3842; ! Ultrium460 Compressed literal MT3$K_LTO3 = 3844; ! Ultrium960 literal MT3$K_LTO3_COMP = 3848; ! Ultrium960 Compressed literal MT3$K_LTO4 = 3856; ! Ultrium 1840 literal MT3$K_LTO4_COMP = 3872; ! Ultrium 1840 Compressed ! Compression Only codes. ! The X%FFxx codes below are layed out so that future compression enhancments ! may take advantage of multiple compression types. literal MT3$K_NO_COMP = 65280; ! All Compression OFF literal MT3$K_COMP = 65281; ! Compression ON !*** MODULE $NETDEF *** ! + ! DECnet-VAX definitions ! - literal NET$S_NETDEF = 4; macro NET$B_USER_ECO = 0,0,8,0 %; ! User ECO of DECnet macro NET$B_DEC_ECO = 1,0,8,0 %; ! Digital ECO of DECnet macro NET$B_DEC_VERSION = 2,0,8,0 %; ! DECnet Version macro NET$B_RESERVED = 3,0,8,0 %; ! Reserved to Digital !*** MODULE $NSADEF *** ! ! Define the packet header and record types used for security auditing. ! literal NSA$C_MSG_SERVER = 1; ! Audit server control message literal NSA$C_MSG_AUDIT = 2; ! Change in auditable events literal NSA$C_MSG_BREAKIN = 3; ! Breakin attempt literal NSA$C_MSG_INSTALL = 4; ! Change to INSTALLed database literal NSA$C_MSG_LOGFAIL = 5; ! Login failure literal NSA$C_MSG_LOGIN = 6; ! Successful login literal NSA$C_MSG_LOGOUT = 7; ! Successful logout literal NSA$C_MSG_MOUNT = 8; ! Volume mount or dismount literal NSA$C_MSG_NETPROXY = 9; ! Network proxy data base change literal NSA$C_MSG_ACCESS = 10; ! Object access *** obsolete *** literal NSA$C_MSG_SYSUAF = 11; ! UAF change literal NSA$C_MSG_RIGHTSDB = 12; ! Rights database change literal NSA$C_MSG_CUSTOMER = 13; ! Customer application event literal NSA$C_MSG_CSS = 14; ! CSS application event literal NSA$C_MSG_LP = 15; ! Layered product event literal NSA$C_MSG_PRVAUD = 16; ! Privilege audit literal NSA$C_MSG_RESERVED_1 = 17; ! Reserved message type code literal NSA$C_MSG_RESERVED_2 = 18; ! Reserved message type code literal NSA$C_MSG_RESERVED_3 = 19; ! Reserved message type code literal NSA$C_MSG_RESERVED_4 = 20; ! Reserved message type code literal NSA$C_MSG_SYSTIME = 21; ! System time modification literal NSA$C_MSG_SYSGEN = 22; ! SYSGEN parameter modification literal NSA$C_MSG_OBJ_CREATE = 23; ! Object creation literal NSA$C_MSG_OBJ_DELETE = 24; ! Object deletion literal NSA$C_MSG_OBJ_DEACCESS = 25; ! Object deaccess literal NSA$C_MSG_OBJ_ACCESS = 26; ! Object access literal NSA$C_MSG_CONNECTION = 27; ! Connection literal NSA$C_MSG_RESERVED_5 = 28; ! Reserved Message type code literal NSA$C_MSG_NCP = 29; ! NCP command line auditing literal NSA$C_MSG_PROCESS = 30; ! Process control auditing literal NSA$C_MSG_OBJECT_SERVICE = 31; ! Cluster visable object processing literal NSA$C_MSG_AUTHENTICATE = 32; ! Distributed authentication literal NSA$C_MSG_PERSONA = 33; ! Persona event literal NSA$C_MSG_MAX_CODE = 34; ! Last type code (plus one) literal NSA$M_MANDATORY = %X'1'; literal NSA$M_ACL = %X'2'; literal NSA$M_INTERNAL = %X'4'; literal NSA$M_ALARM = %X'8'; literal NSA$M_AUDIT = %X'10'; literal NSA$M_FOREIGN = %X'20'; literal NSA$M_FLUSH = %X'40'; literal NSA$M_SERVER = %X'80'; literal NSA$M_DEACCESS = %X'100'; literal NSA$M_SYNCH = %X'200'; literal NSA$M_IDENTIFIER = %X'400'; literal NSA$M_PROCPRIV = %X'800'; literal NSA$M_AUTHPRIV = %X'1000'; literal NSA$M_NOEVTCHECK = %X'2000'; literal NSA$M_NOFAILAUD = %X'4000'; literal NSA$M_NOSUCCAUD = %X'8000'; literal NSA$C_VERSION_1 = 1; ! First version of auditing literal NSA$C_VERSION_2 = 2; ! Second version of auditing literal NSA$C_VERSION_3 = 3; ! Third version of auditing (support facility code) literal NSA$C_V1_MSG_HDR_LENGTH = 12; ! For version 1 messages literal NSA$K_V1_MSG_HDR_LENGTH = 12; literal NSA$C_MSG_HDR_LENGTH = 20; ! For latest version messages literal NSA$K_MSG_HDR_LENGTH = 20; literal NSA$S_NSAMSGDEF = 21; ! Define the packet header macro NSA$W_RECORD_TYPE = 0,0,16,0 %; ! Audit event type macro NSA$W_RECORD_SUBTYPE = 2,0,16,0 %; ! Audit event subtype macro NSA$W_FLAGS = 4,0,16,0 %; ! Auditing flags macro NSA$V_MANDATORY = 4,0,1,0 %; ! Event must be logged macro NSA$V_ACL = 4,1,1,0 %; ! Event results from ACE macro NSA$V_INTERNAL = 4,2,1,0 %; ! Event generated by TCB macro NSA$V_ALARM = 4,3,1,0 %; ! Event is an alarm macro NSA$V_AUDIT = 4,4,1,0 %; ! Event is an audit macro NSA$V_FOREIGN = 4,5,1,0 %; ! Event outside of TCB macro NSA$V_FLUSH = 4,6,1,0 %; ! Force audit server buffer flush macro NSA$V_SERVER = 4,7,1,0 %; ! Override process no-audit bit macro NSA$V_DEACCESS = 4,8,1,0 %; ! Deaccess audit required macro NSA$V_SYNCH = 4,9,1,0 %; ! Synchronous return if possible macro NSA$V_IDENTIFIER = 4,10,1,0 %; ! Privilege check via identifier macro NSA$V_PROCPRIV = 4,11,1,0 %; ! Privilege check against process privileges macro NSA$V_AUTHPRIV = 4,12,1,0 %; ! Privilege check against authorized privileges macro NSA$V_NOEVTCHECK = 4,13,1,0 %; ! Bypass event check macro NSA$V_NOFAILAUD = 4,14,1,0 %; ! Do not audit failed privilege checks macro NSA$V_NOSUCCAUD = 4,15,1,0 %; ! Do not audit successful privilege checks macro NSA$W_PACKET_COUNT = 6,0,16,0 %; ! Number of data packets macro NSA$W_REC_SIZE = 8,0,16,0 %; macro NSA$W_RECORD_SIZE = 8,0,16,0 %; ! Total size (header + data packets) macro NSA$B_VERSION = 11,0,8,0 %; ! Security auditing version number macro NSA$W_SPARE_4 = 12,0,0,0 %; literal NSA$S_SPARE_4 = 6; ! Spare words macro NSA$W_FACILITY = 18,0,16,0 %; ! VMS facility code macro NSA$R_PACKET_LIST = 20,0,8,0 %; ! Start of packets ! Server control message types literal NSA$C_SRV_ADD_JOURNAL = 1; ! Add a new audit journal literal NSA$C_SRV_REM_JOURNAL = 2; ! Remove an existing audit journal literal NSA$C_SRV_FLUSH_JOURNAL = 3; ! Flush specified journal literal NSA$C_SRV_FLUSH_ALL_JOURNALS = 4; ! Flush all audit journals literal NSA$C_SRV_FLUSH_INTERVAL = 5; ! Journal flushing time interval literal NSA$C_SRV_ARCHIVE_DEVICE = 6; ! Specify archiving device literal NSA$C_SRV_ARCHIVE_ENABLE = 7; ! Archiving enable flags literal NSA$C_SRV_ARCHIVE_DISABLE = 8; ! Archiving disable flags literal NSA$C_SRV_ARCHIVE_INTERVAL = 9; ! Guaranteed archinving interval literal NSA$C_SRV_BADJNL_INTERVAL = 10; ! Bad journal scan interval literal NSA$C_SRV_BADJNL_LIMIT = 11; ! Maximum number of bad journals to keep track of literal NSA$C_SRV_EXIT = 12; ! Shut down the server literal NSA$C_SRV_CREATE_SYSTEM_LOG = 13; ! Create a new system audit log file literal NSA$C_SRV_AUDIT_CHANGE = 14; ! Change state of system auditing/alarming literal NSA$C_SRV_REDIRECT_SYSTEM_LOG = 15; ! Open the latest version of the system audit log file literal NSA$C_SRV_REM_ENABLE = 16; ! Enable resource monitoring on a journal literal NSA$C_SRV_REM_DISABLE = 17; ! Disable resource monitoring on a journal literal NSA$C_SRV_REM_MONITOR_INTERVAL = 18; ! Resource monitor interval literal NSA$C_SRV_REM_RESUME_INTERVAL = 19; ! Resource resume monitor interval literal NSA$C_SRV_REM_MONITOR_MODE = 20; ! Specify new resource monitor mode literal NSA$C_SRV_REM_FINAL_ACTION = 21; ! Specify final resource exhaustion action literal NSA$C_SRV_REM_WARN_THRESHOLD = 22; ! Resource warning threshold literal NSA$C_SRV_REM_ACTION_THRESHOLD = 23; ! Resource exhaustion action threshold literal NSA$C_SRV_REM_RESUME_THRESHOLD = 24; ! Resource resumption threshold literal NSA$C_SRV_REM_RESUME = 25; ! Force resource re-evaluation literal NSA$C_SRV_REM_ADD_EXCLUDE = 26; ! Add process to exclusion list literal NSA$C_SRV_REM_DEL_EXCLUDE = 27; ! Remove process from exclusion list literal NSA$C_SRV_LISTENER_ENABLE = 28; ! Specify listener device literal NSA$C_SRV_LISTENER_DISABLE = 29; ! Cancel listener device literal NSA$C_SRV_NEW_LOG = 30; ! Create new cluster-wide system audit log file literal NSA$C_SRV_RESTART = 31; ! Restart audit server literal NSA$C_SRV_LOCK_SERVER = 32; ! Lock audit server to prevent change literal NSA$C_SRV_RESERVED_1 = 33; ! Reserved server code literal NSA$C_SRV_RESERVED_2 = 34; ! Reserved server code literal NSA$C_SRV_RESERVED_3 = 35; ! Reserved server code literal NSA$C_SRV_RESERVED_4 = 36; ! Reserved server code literal NSA$C_SRV_FAILURE_MODE = 37; ! Change security auditing failure mode literal NSA$C_SRV_SNAPSHOT = 38; ! System snapshot in progress literal NSA$C_SRV_BACKLOG_TOTAL = 39; ! Flow control total backlog literal NSA$C_SRV_BACKLOG_PROCESS = 40; ! Flow control process backlog literal NSA$C_SRV_INITIATE = 41; ! Initiate event logging literal NSA$C_SRV_RESTART_ALL = 42; ! Restart all audit servers literal NSA$C_SRV_RESTART_OBJECT = 43; ! Restart object server literal NSA$C_SRV_MAX_CODE = 44; ! Last message code (plus one) ! Define resource exhaustion monitor modes. literal NSA$C_REM_SPACE = 1; ! # blocks to keep free on volume literal NSA$C_REM_PERCENTAGE = 2; ! % of volume to keep free literal NSA$C_REM_COUNT = 3; ! # msgs to reserve space for literal NSA$C_REM_TIME = 4; ! # secs to reserve ave. msg space for literal NSA$C_REM_MAX_MODE = 5; ! Last resource monitor mode (plus one) ! Define final action to take when process buffer space exhausted. literal NSA$C_REM_PURGE_OLD = 1; ! Purge oldest entry from queue literal NSA$C_REM_IGNORE_NEW = 2; ! Ignore newest (current) message literal NSA$C_REM_RESTART = 3; ! Restart server - create process dump literal NSA$C_REM_CRASH = 4; ! Shutdown VMS (BUG_CHECK) literal NSA$C_REM_MAX_FINAL = 5; ! Last final action mode (plus one) ! Define security auditing state modification codes. literal NSA$C_AUDIT_DISABLED = 1; literal NSA$C_AUDIT_ENABLED = 2; literal NSA$C_AUDIT_TERMINATE = 3; literal NSA$C_AUDIT_INITIATE = 4; literal NSA$C_SNAPSHOT_SAVE = 5; ! System snapshot save in progress literal NSA$C_SNAPSHOT_ABORT = 6; ! System snapshot attempt has aborted literal NSA$C_SNAPSHOT_STARTUP = 7; ! System booted from a snapshot file literal NSA$C_SNAPSHOT_ACCESS = 8; ! Snapshot file access/deaccess literal NSA$C_AUDIT_STATE = 9; ! New state of audit flags literal NSA$C_ALARM_STATE = 10; ! New state of alarm flags literal NSA$C_AUDIT_LOG_FINAL = 11; ! Final entry in audit log (forward link) literal NSA$C_AUDIT_LOG_FIRST = 12; ! First entry in audit log (back link) literal NSA$C_AUDIT_BAD_TCB_AUDIT = 13; ! An internal (TCB) audit was ill-formed literal NSA$C_AUDIT_MAX_CODE = 14; ! Define security auditing failure mode codes. literal NSA$C_FAIL_WAIT = 1; ! Wait for resource (if possible) literal NSA$C_FAIL_CRASH = 2; ! Crash system on failure literal NSA$C_FAIL_IGNORE = 3; ! Ignore failing audit literal NSA$C_FAIL_MAX_MODE = 4; ! Last failure mode (plus one) ! Define BREAKIN, LOGIN, LOGOUT, and LOGIN failure codes. literal NSA$C_BATCH = 1; literal NSA$C_DETACHED = 2; literal NSA$C_DIALUP = 3; literal NSA$C_LOCAL = 4; literal NSA$C_NETWORK = 5; literal NSA$C_REMOTE = 6; literal NSA$C_SUBPROCESS = 7; literal NSA$C_SERVER = 8; literal NSA$C_JOBTYPE_MAX_CODE = 9; ! Define INSTALLed file database state modification codes. literal NSA$C_INSTALL_ADD = 1; literal NSA$C_INSTALL_REMOVE = 2; literal NSA$C_INSTALL_MAX_CODE = 3; ! Define INSTALLed file database state modification qualifier codes. Also, the ! codes used by the audit message formatting tables. literal NSA$M_INS_SPARE_0 = %X'1'; literal NSA$M_INS_OPEN = %X'2'; literal NSA$M_INS_HEADER_RESIDENT = %X'4'; literal NSA$M_INS_SHARED = %X'8'; literal NSA$M_INS_EXECUTE_ONLY = %X'10'; literal NSA$M_INS_WRITEABLE = %X'20'; literal NSA$M_INS_PRIVILEGED = %X'40'; literal NSA$M_INS_PROTECTED = %X'80'; literal NSA$M_INS_NOPURGE = %X'100'; literal NSA$M_INS_ACCOUNTING = %X'200'; literal NSA$M_INS_AUTHORIZED = %X'400'; literal NSA$M_INS_SIGNAL = %X'800'; literal NSA$S_FILL_223_ = 4; macro NSA$V_INS_SPARE_0 = 0,0,1,0 %; macro NSA$V_INS_OPEN = 0,1,1,0 %; macro NSA$V_INS_HEADER_RESIDENT = 0,2,1,0 %; macro NSA$V_INS_SHARED = 0,3,1,0 %; macro NSA$V_INS_EXECUTE_ONLY = 0,4,1,0 %; macro NSA$V_INS_WRITEABLE = 0,5,1,0 %; macro NSA$V_INS_PRIVILEGED = 0,6,1,0 %; macro NSA$V_INS_PROTECTED = 0,7,1,0 %; macro NSA$V_INS_NOPURGE = 0,8,1,0 %; macro NSA$V_INS_ACCOUNTING = 0,9,1,0 %; macro NSA$V_INS_AUTHORIZED = 0,10,1,0 %; macro NSA$V_INS_SIGNAL = 0,11,1,0 %; literal NSA$C_INS_SPARE_0 = 1; literal NSA$C_INS_OPEN = 2; literal NSA$C_INS_HEADER_RESIDENT = 3; literal NSA$C_INS_SHARED = 4; literal NSA$C_INS_EXECUTE_ONLY = 5; literal NSA$C_INS_WRITEABLE = 6; literal NSA$C_INS_PRIVILEGED = 7; literal NSA$C_INS_PROTECTED = 8; literal NSA$C_INS_NOPURGE = 9; literal NSA$C_INS_ACCOUNTING = 10; literal NSA$C_INS_AUTHORIZED = 11; literal NSA$C_INS_SIGNAL = 12; literal NSA$C_INS_MAX_CODE = 13; ! Define volume state modification codes. literal NSA$C_VOL_DISMOUNT = 1; literal NSA$C_VOL_MOUNT = 2; literal NSA$C_VOL_MAX_CODE = 3; ! Define volume state modification qualifier codes. literal NSA$M_MNT_FOREIGN = %X'1'; literal NSA$M_MNT_GROUP = %X'2'; literal NSA$M_MNT_NOASSIST = %X'4'; literal NSA$M_MNT_NODISKQ = %X'8'; literal NSA$M_MNT_NOHDR3 = %X'10'; literal NSA$M_MNT_NOLABEL = %X'20'; literal NSA$M_MNT_NOWRITE = %X'40'; literal NSA$M_MNT_OVR_ACCESS = %X'80'; literal NSA$M_MNT_OVR_EXP = %X'100'; literal NSA$M_MNT_OVR_IDENT = %X'200'; literal NSA$M_MNT_OVR_SETID = %X'400'; literal NSA$M_MNT_READCHECK = %X'800'; literal NSA$M_MNT_SHARE = %X'1000'; literal NSA$M_MNT_MESSAGE = %X'2000'; literal NSA$M_MNT_SYSTEM = %X'4000'; literal NSA$M_MNT_WRITECHECK = %X'8000'; literal NSA$M_MNT_WRITETHRU = %X'10000'; literal NSA$M_MNT_NOCACHE = %X'20000'; literal NSA$M_MNT_OVR_LOCK = %X'40000'; literal NSA$M_MNT_NOMNTVER = %X'80000'; literal NSA$M_MNT_NOUNLOAD = %X'100000'; literal NSA$M_MNT_TAPE_DATA_WRITE = %X'200000'; literal NSA$M_MNT_NOCOPY = %X'400000'; literal NSA$M_MNT_NOAUTO = %X'800000'; literal NSA$M_MNT_INIT_ALL = %X'1000000'; literal NSA$M_MNT_INIT_CONT = %X'2000000'; literal NSA$M_MNT_OVR_VOLO = %X'4000000'; literal NSA$M_MNT_INTERCHG = %X'8000000'; literal NSA$M_MNT_CLUSTER = %X'10000000'; literal NSA$M_MNT_NOREBUILD = %X'20000000'; literal NSA$M_MNT_OVR_SHAMEM = %X'40000000'; literal NSA$M_MNT_MULTI_VOL = %X'80000000'; literal NSA$S_FILL_226_ = 8; macro NSA$V_MNT_FOREIGN = 0,0,1,0 %; macro NSA$V_MNT_GROUP = 0,1,1,0 %; macro NSA$V_MNT_NOASSIST = 0,2,1,0 %; macro NSA$V_MNT_NODISKQ = 0,3,1,0 %; macro NSA$V_MNT_NOHDR3 = 0,4,1,0 %; macro NSA$V_MNT_NOLABEL = 0,5,1,0 %; macro NSA$V_MNT_NOWRITE = 0,6,1,0 %; macro NSA$V_MNT_OVR_ACCESS = 0,7,1,0 %; macro NSA$V_MNT_OVR_EXP = 0,8,1,0 %; macro NSA$V_MNT_OVR_IDENT = 0,9,1,0 %; macro NSA$V_MNT_OVR_SETID = 0,10,1,0 %; macro NSA$V_MNT_READCHECK = 0,11,1,0 %; macro NSA$V_MNT_SHARE = 0,12,1,0 %; macro NSA$V_MNT_MESSAGE = 0,13,1,0 %; macro NSA$V_MNT_SYSTEM = 0,14,1,0 %; macro NSA$V_MNT_WRITECHECK = 0,15,1,0 %; macro NSA$V_MNT_WRITETHRU = 0,16,1,0 %; macro NSA$V_MNT_NOCACHE = 0,17,1,0 %; macro NSA$V_MNT_OVR_LOCK = 0,18,1,0 %; macro NSA$V_MNT_NOMNTVER = 0,19,1,0 %; macro NSA$V_MNT_NOUNLOAD = 0,20,1,0 %; macro NSA$V_MNT_TAPE_DATA_WRITE = 0,21,1,0 %; macro NSA$V_MNT_NOCOPY = 0,22,1,0 %; macro NSA$V_MNT_NOAUTO = 0,23,1,0 %; macro NSA$V_MNT_INIT_ALL = 0,24,1,0 %; macro NSA$V_MNT_INIT_CONT = 0,25,1,0 %; macro NSA$V_MNT_OVR_VOLO = 0,26,1,0 %; macro NSA$V_MNT_INTERCHG = 0,27,1,0 %; macro NSA$V_MNT_CLUSTER = 0,28,1,0 %; macro NSA$V_MNT_NOREBUILD = 0,29,1,0 %; macro NSA$V_MNT_OVR_SHAMEM = 0,30,1,0 %; macro NSA$V_MNT_MULTI_VOL = 0,31,1,0 %; macro NSA$V_MNT_DISKQ = 4,0,1,0 %; macro NSA$V_MNT_COMPACTION = 4,1,1,0 %; macro NSA$V_MNT_INCLUDE = 4,2,1,0 %; macro NSA$V_MNT_PASS2 = 4,3,1,0 %; macro NSA$V_MNT_OVR_NOFE = 4,4,1,0 %; macro NSA$V_MNT_SCRATCH = 4,5,1,0 %; macro NSA$V_MNT_CDROM = 4,6,1,0 %; macro NSA$V_MNT_XAR = 4,7,1,0 %; macro NSA$V_MNT_DSI = 4,8,1,0 %; macro NSA$V_MNT_SUBSYSTEM = 4,9,1,0 %; macro NSA$V_MNT_NOCOMPACTION = 4,10,1,0 %; macro NSA$V_MNT_OVR_SECURITY = 4,11,1,0 %; macro NSA$V_MNT_OVR_LIMITED_SEARCH = 4,12,1,0 %; macro NSA$V_MNT_POOL = 4,13,1,0 %; literal NSA$C_MNT_MAX_CODE = 47; ! # of mount bits (plus one) ! Define dismount flags. literal NSA$C_DMT_MAX_CODE = 5; ! # of dismount bits (plus one) literal NSA$M_DMT_NOUNLOAD = %X'1'; literal NSA$M_DMT_UNIT = %X'2'; literal NSA$M_DMT_ABORT = %X'4'; literal NSA$M_DMT_CLUSTER = %X'8'; literal NSA$S_FILL_229_ = 4; macro NSA$V_DMT_NOUNLOAD = 0,0,1,0 %; macro NSA$V_DMT_UNIT = 0,1,1,0 %; macro NSA$V_DMT_ABORT = 0,2,1,0 %; macro NSA$V_DMT_CLUSTER = 0,3,1,0 %; ! Define network authorization file modification codes. literal NSA$C_NETPROXY_ADD = 1; literal NSA$C_NETPROXY_DELETE = 2; literal NSA$C_NETPROXY_MODIFY = 3; literal NSA$C_NETPROXY_NCP = 4; literal NSA$C_NETPROXY_SHUTDOWN = 5; literal NSA$C_NETPROXY_STARTUP = 6; literal NSA$C_NETPROXY_CREATE = 7; literal NSA$C_NETPROXY_MAX_CODE = 8; ! Define persona event codes literal NSA$C_PERSONA_CREATE = 1; literal NSA$C_PERSONA_DELETE = 2; literal NSA$C_PERSONA_MODIFY = 3; literal NSA$C_PERSONA_MAX_CODE = 4; ! Define object access codes. This table must parallel the object type codes ! defined in $ACEDEF (in STARDEFAE.SDL). Any additional objects must appear ! in both places. These same subtype codes are shared for all of the other ! object message type codes (CREATE, DELETE, MODIFY, DEACCESS). literal NSA$C_FILE_ACCESS = 1; literal NSA$C_DEVICE_ACCESS = 2; literal NSA$C_QUEUE_ACCESS = 3; literal NSA$C_CEF_ACCESS = 4; literal NSA$C_LNM_ACCESS = 5; literal NSA$C_PROCESS_ACCESS = 6; literal NSA$C_GRPGBL_ACCESS = 7; literal NSA$C_SYSGBL_ACCESS = 8; literal NSA$C_CAPABILITY_ACCESS = 9; literal NSA$C_EVENT_ACCESS = 10; literal NSA$C_LOCK_ACCESS = 11; literal NSA$C_VOLUME_ACCESS = 12; literal NSA$C_OBJECT_MAX_CODE = 13; ! Define system authorization file modification codes. literal NSA$C_SYSUAF_ADD = 1; literal NSA$C_SYSUAF_COPY = 2; literal NSA$C_SYSUAF_DELETE = 3; literal NSA$C_SYSUAF_MODIFY = 4; literal NSA$C_SYSUAF_RENAME = 5; literal NSA$C_SYSUAF_MAX_CODE = 6; ! Define rights database modification codes. literal NSA$C_RDB_ADD_ID = 1; literal NSA$C_RDB_CREATE = 2; literal NSA$C_RDB_GRANT_ID = 3; literal NSA$C_RDB_MOD_HOLDER = 4; literal NSA$C_RDB_MOD_ID = 5; literal NSA$C_RDB_REM_ID = 6; literal NSA$C_RDB_REVOKE_ID = 7; literal NSA$C_RDB_MAX_CODE = 8; ! Define enhanced privilege audit codes. literal NSA$C_PRVAUD_SUCCESS = 1; ! Successful use of privilege literal NSA$C_PRVAUD_FAILURE = 2; ! Event due to privilege failure literal NSA$C_PRVAUD_MAX_CODE = 3; ! Define system time audit codes. literal NSA$C_SYSTIM_SET = 1; ! Explicit setting of time literal NSA$C_SYSTIM_CAL = 2; ! Calibration from todr literal NSA$C_SYSTIM_MAX_CODE = 3; ! Define SYSGEN audit codes. literal NSA$C_SYSGEN_SET = 1; ! Sysgen parameter modification literal NSA$C_SYSGEN_MAX_CODE = 2; ! Define the create object event subtypes. literal NSA$C_OBJ_CREATE = 1; ! Create object literal NSA$C_CREATE_MAX_CODE = 2; ! Define the delete object event subtypes. literal NSA$C_OBJ_DELETE = 1; ! Delete object literal NSA$C_DELETE_MAX_CODE = 2; ! Define the access object event subtypes. literal NSA$C_OBJ_ACCESS = 1; ! Access object literal NSA$C_ACCESS_MAX_CODE = 2; ! Define the deaccess object event subtypes. literal NSA$C_OBJ_DEACCESS = 1; ! Deaccess object literal NSA$C_DEACCESS_MAX_CODE = 2; ! Define connection message event subtypes. literal NSA$C_CNX_REQUEST = 1; ! Connection request literal NSA$C_CNX_ACCEPT = 2; ! Connection accepted literal NSA$C_CNX_REJECT = 3; ! Connection rejected literal NSA$C_CNX_DISCONNECT = 4; ! Connection disconnected literal NSA$C_CNX_ABORT = 5; ! Connection aborted by third-party literal NSA$C_CNX_DECNET_CREATE = 6; ! DECnet logical link created literal NSA$C_CNX_DECNET_DELETE = 7; ! DECnet logical link disconnected literal NSA$C_CNX_IPC_OPEN = 8; ! IPC association opened literal NSA$C_CNX_IPC_CLOSE = 9; ! IPC association closed literal NSA$C_CNX_INC_REQUEST = 10; ! Incomming connection request literal NSA$C_CNX_INC_ACCEPT = 11; ! Connection request accepted literal NSA$C_CNX_INC_REJECT = 12; ! Connection request rejected literal NSA$C_CNX_INC_DISCONNECT = 13; ! Incoming connection disconnected literal NSA$C_CNX_INC_ABORT = 14; ! Incoming connection aborted by third-party literal NSA$C_CNX_MAX_CODE = 15; literal NSA$C_NCP_COMMAND = 1; ! NCP command issued literal NSA$C_NCP_MAX_CODE = 2; literal NSA$C_PRC_CREPRC = 1; ! Create process literal NSA$C_PRC_DELPRC = 2; ! Delete process literal NSA$C_PRC_SCHDWK = 3; ! Schedule process wakeup literal NSA$C_PRC_CANWAK = 4; ! Cancel process wakeup literal NSA$C_PRC_WAKE = 5; ! Wake process literal NSA$C_PRC_SUSPND = 6; ! Suspend process literal NSA$C_PRC_RESUME = 7; ! Resume process literal NSA$C_PRC_GRANTID = 8; ! Grant identifier literal NSA$C_PRC_REVOKID = 9; ! Revoke identifier literal NSA$C_PRC_GETJPI = 10; ! Get job or process information literal NSA$C_PRC_FORCEX = 11; ! Force image exit literal NSA$C_PRC_SIGPRC = 12; ! Signal process (undocumented) literal NSA$C_PRC_SETPRI = 13; ! Set process priority literal NSA$C_PRC_PRCTERM = 14; ! Detect process termination (undocumented) literal NSA$C_PRC_CPU_CAPABILITIES = 15; ! Change in CPU capability literal NSA$C_PRC_PROCESS_CAPABILITIES = 16; ! Change in process capability literal NSA$C_PRC_PROCESS_AFFINITY = 17; ! Change in process affinity literal NSA$C_PRC_SET_IMPLICIT_AFFINITY = 18; ! Change in implicit affinity literal NSA$C_PRC_MAX_CODE = 19; literal NSA$C_INSTANTIATE_ORB = 1; ! Create an instance of an ORB ! the profile may, or may not, ! present in the database. literal NSA$C_DISTRIBUTE_ORB = 2; ! ORB distribution literal NSA$C_OBJECT_AUDIT_CHANGE = 3; ! Change in audit/alarm vectors literal NSA$C_DISTRIBUTE_NOTICE = 4; ! Notify agents of change ! used for objects which ! provide permanent storage literal NSA$C_OBJSRV_MAX_CODE = 5; ! Define distributed authentication subtypes here. literal NSA$C_AUTH_NETWORK_LOGIN = 2; ! authenticated network login literal NSA$C_AUTH_RENEW_LOGIN = 3; ! authentication credential renewal literal NSA$C_AUTH_INIT_SEC_CTX = 4; ! initiate security context literal NSA$C_AUTH_ACC_SEC_CTX = 5; ! accept security context literal NSA$C_AUTH_INSTALL_DEF_CRED = 6; ! install application credential handle literal NSA$C_AUTH_ACQUIRE_CRED = 7; ! acquire credential handle literal NSA$C_AUTH_GRANT_CRED = 8; ! grant credential to another process literal NSA$C_AUTH_RELEASE_CRED = 9; ! release credential handle literal NSA$C_AUTH_DEL_SEC_CTX = 10; ! delete security context literal NSA$C_AUTH_PROC_CTX_TOKEN = 11; ! process context token literal NSA$C_AUTH_VERIFY = 12; ! verify signature literal NSA$C_AUTH_SIGN = 13; ! sign a message literal NSA$C_AUTH_SEAL = 14; ! seal a message literal NSA$C_AUTH_UNSEAL = 15; ! unseal a message literal NSA$C_CA_STARTUP = 16; ! the certification authority has been started literal NSA$C_CA_EXIT = 17; ! the certification authority has exited literal NSA$C_CA_ADD_DIRECTORY = 18; ! a name directory has been added literal NSA$C_CA_ADD_PRINCIPAL = 19; ! a principal has been added literal NSA$C_CA_LINK_DIRECTORY = 20; ! two directories have been linked literal NSA$C_CA_CHANGE_LINK = 21; ! a link between two directories has been changed literal NSA$C_CA_CHANGE_PRINCIPAL = 22; ! a principal's keypair/password or duration has been changed literal NSA$C_CA_REMOVE_DIRECTORY = 23; ! a name directory has been removed literal NSA$C_CA_REMOVE_PRINCIPAL = 24; ! a principal has been removed literal NSA$C_CA_CERTIFICATE_DELETED = 25; ! a certificate has been deleted literal NSA$C_CA_REVOKED_CERT_FOUND = 26; ! a revoked certificate has been read from the CSS literal NSA$C_CA_PASSWORD_CHANGE = 27; ! the password to the CA has been changed literal NSA$C_CSS_OBJECT_CREATED = 28; ! a CSS object has been created literal NSA$C_CSS_OBJECT_DELETED = 29; ! a CSS object has been deleted literal NSA$C_CSS_CERTIFICATE_DELETED = 30; ! a certificate has been deleted literal NSA$C_CSS_CREDENTIAL_READ = 31; ! a principal's permanent credential has been read literal NSA$C_CSS_CERTIFICATE_ADDED = 32; ! a certificate has been added to an object literal NSA$C_CSS_CREDENTIAL_WRITTEN = 33; ! an encrypted permanent credential has been added to an object literal NSA$C_CSS_USER_CHANGED_PASSWORD = 34; ! a principal has changed his/her password literal NSA$C_CSS_UPDATED_SECONDARY = 35; ! a CSS secondary has been updated from the local database literal NSA$C_CSS_DATABASE_UPDATED = 36; ! a secondary CSS has updated its database from a primary literal NSA$C_CSS_STARTED = 37; ! the CSS server has been successfully started literal NSA$C_CSS_WINDOW_OPEN = 38; ! the CSS access window has been opened literal NSA$C_CSS_WINDOW_CLOSED = 39; ! the CSS access window has been closed literal NSA$C_CSS_LOCTABLE_UPDATED = 40; ! the CSS location table has been updated literal NSA$C_AUTH_MAX_CODE = 41; ! Define data packet format literal NSA$C_PKT_ACCESS_DESIRED = 1; ! Access requested literal NSA$C_PKT_ACCOUNT = 2; ! Account name literal NSA$C_PKT_ALARM_NAME = 3; ! Alarm journal name literal NSA$C_PKT_APPL_DATA = 4; ! Application supplied data literal NSA$C_PKT_AUDIT_FLAGS = 5; ! Audit flags literal NSA$C_PKT_AUDIT_NAME = 6; ! Audit journal name literal NSA$C_PKT_SYSTEM_NAME = 7; ! SCS system node name literal NSA$C_PKT_SYSTEM_ID = 8; ! SCS system node identification literal NSA$C_PKT_DEVICE_NAME = 9; ! Primary device name on which the volume resides literal NSA$C_PKT_DISMOUNT_FLAGS = 10; ! Volume dismount flags literal NSA$C_PKT_HOLDER_NAME = 11; ! Holder name literal NSA$C_PKT_HOLDER_OWNER = 12; ! Holder owner ID literal NSA$C_PKT_ID_ATTRIBUTES = 13; ! Identifier attributes literal NSA$C_PKT_ID_NAME = 14; ! Identifier name literal NSA$C_PKT_ID_NEW_NAME = 15; ! Identifer new name literal NSA$C_PKT_ID_VALUE = 16; ! Identifier value literal NSA$C_PKT_ID_NEW_VALUE = 17; ! Identifier new value literal NSA$C_PKT_IDENTIFIERS_USED = 18; ! Identifiers used to gain access literal NSA$C_PKT_IMAGE_NAME = 19; ! Name of the image being executed literal NSA$C_PKT_INSTALL_FILE = 20; ! Installed file literal NSA$C_PKT_INSTALL_FLAGS = 21; ! INSTALL flags literal NSA$C_PKT_INSTALL_PRIVS = 22; ! INSTALL privileges literal NSA$C_PKT_LOGICAL_NAME = 23; ! Logical name associated with the device. literal NSA$C_PKT_MOUNT_FLAGS = 24; ! Volume mount flags literal NSA$C_PKT_NEW_DATA = 25; ! Data after modification literal NSA$C_PKT_FILE_ID = 26; ! File identification (FID) literal NSA$C_PKT_OBJECT_MIN_CLASS = 27; ! Minimum object access classification literal NSA$C_PKT_OBJECT_MAX_CLASS = 28; ! Maximum object access classification literal NSA$C_PKT_OBJECT_NAME = 29; ! The object's name literal NSA$C_PKT_OBJECT_NAME_2 = 30; ! Secondary (path) object name literal NSA$C_PKT_OBJECT_OWNER = 31; ! Owner identifier (UIC) of the process literal NSA$C_PKT_OBJECT_PROTECTION = 32; ! UIC based protection of the object literal NSA$C_PKT_OBJECT_TYPE = 33; ! Object's type code literal NSA$C_PKT_ORIGINAL_DATA = 34; ! Data before modification literal NSA$C_PKT_PARENT_ID = 35; ! PID of the parent process literal NSA$C_PKT_PARENT_NAME = 36; ! Parent process name literal NSA$C_PKT_PARENT_OWNER = 37; ! Parent process owner (UIC) literal NSA$C_PKT_PARENT_USERNAME = 38; ! Parent process username literal NSA$C_PKT_PASSWORD = 39; ! Breakin password literal NSA$C_PKT_PRIVS_USED = 40; ! Privileges used to gain access literal NSA$C_PKT_PROCESS_ID = 41; ! Current process PID literal NSA$C_PKT_PROCESS_NAME = 42; ! Current process name literal NSA$C_PKT_REMOTE_NODE_ID = 43; ! Node ID of network source literal NSA$C_PKT_REMOTE_NODENAME = 44; ! Remote nodename literal NSA$C_PKT_REMOTE_USERNAME = 45; ! Remote username literal NSA$C_PKT_SUBJECT_CLASS = 46; ! Process current access class literal NSA$C_PKT_SUBJECT_OWNER = 47; ! Process owner (UIC) literal NSA$C_PKT_FINAL_STATUS = 48; ! Completion status literal NSA$C_PKT_TERMINAL = 49; ! Process terminal name literal NSA$C_PKT_TIME_STAMP = 50; ! When the event took place literal NSA$C_PKT_UAF_ADD = 51; ! UAF record added literal NSA$C_PKT_UAF_DELETE = 52; ! UAF record removed literal NSA$C_PKT_UAF_MODIFY = 53; ! UAF record modified literal NSA$C_PKT_UAF_COPY = 54; ! UAF record copied literal NSA$C_PKT_UAF_FIELDS = 55; ! UAF fields modified literal NSA$C_PKT_USERNAME = 56; ! Requestor username literal NSA$C_PKT_UAF_SOURCE = 57; ! UAF source username literal NSA$C_PKT_UAF_RENAME = 58; ! UAF record renamed literal NSA$C_PKT_VOLUME_NAME = 59; ! Mount/dismount volume name literal NSA$C_PKT_VOLUME_SET_NAME = 60; ! Volume set name literal NSA$C_PKT_SERVER_ACCOUNT = 61; ! Server account literal NSA$C_PKT_SERVER_SYSTEM_ID = 62; ! Server system id literal NSA$C_PKT_SERVER_SYSTEM_NAME = 63; ! Server system name literal NSA$C_PKT_SERVER_FINAL_STATUS = 64; ! Server status literal NSA$C_PKT_SERVER_IMAGE_NAME = 65; ! Server image name literal NSA$C_PKT_SERVER_PARENT_ID = 66; ! Server parent id literal NSA$C_PKT_SERVER_PARENT_OWNER = 67; ! Server parent owner (UIC) literal NSA$C_PKT_SERVER_PARENT_NAME = 68; ! Server parent process name literal NSA$C_PKT_SERVER_PROCESS_ID = 69; ! Server process id literal NSA$C_PKT_SERVER_PROCESS_NAME = 70; ! Server process name literal NSA$C_PKT_SERVER_SUBJECT_CLASS = 71; ! Server classification literal NSA$C_PKT_SERVER_SUBJECT_OWNER = 72; ! Server owner (UIC) literal NSA$C_PKT_SERVER_TERMINAL = 73; ! Server terminal literal NSA$C_PKT_SERVER_TIME_STAMP = 74; ! Server timestamp literal NSA$C_PKT_SERVER_USERNAME = 75; ! Server username literal NSA$C_PKT_AUDIT_DISABLE = 76; ! Audit event disable mask literal NSA$C_PKT_AUDIT_ENABLE = 77; ! Audit event enable mask literal NSA$C_PKT_ALARM_DISABLE = 78; ! Alarm event disable mask literal NSA$C_PKT_ALARM_ENABLE = 79; ! Alarm event enable mask literal NSA$C_PKT_NOP = 80; ! Nop (for static item lists) literal NSA$C_PKT_REPLY_MAILBOX = 81; ! Message acknowledge mailbox literal NSA$C_PKT_DEFAULT_USERNAME = 82; ! NETPROXY default proxy account literal NSA$C_PKT_LOCAL_USERNAME = 83; ! NETPROXY local proxy account literal NSA$C_PKT_FIELD_NAME = 84; ! Name of (NEW_DATA/ORIGINAL_DATA) field literal NSA$C_PKT_LISTENER_DEVICE = 85; ! Listener device name literal NSA$C_PKT_FIELD_TITLE_STR = 86; ! Field title string literal NSA$C_PKT_FIELD_DATA_STR = 87; ! Field data string literal NSA$C_PKT_MESSAGE_TYPE_STR = 88; ! Event message type string literal NSA$C_PKT_EVENT_TYPE = 89; ! Event message type ($AUDIT_EVENT) literal NSA$C_PKT_EVENT_SUBTYPE = 90; ! Event message subtype ($AUDIT_EVENT) literal NSA$C_PKT_EVENT_FACILITY = 91; ! Event facility ($AUDIT_EVENT) literal NSA$C_PKT_DIRECTORY_ENTRY = 92; ! Directory entry associated with XQP operation literal NSA$C_PKT_DIRECTORY_ID = 93; ! Directory file-id ! The following three blocks of codes are obsolete with V5.4. With V5.4, one ! should use the NSA$W_FACILITY field for layered product and/or customer ! audit messages. These symbols must not be reused as versions of SeVMS (and ! fiends) depend on their existence. literal NSA$C_PKT_CUSTOMER_1 = 94; ! obsolete codes literal NSA$C_PKT_CUSTOMER_2 = 95; literal NSA$C_PKT_CUSTOMER_3 = 96; literal NSA$C_PKT_CUSTOMER_4 = 97; literal NSA$C_PKT_CUSTOMER_5 = 98; literal NSA$C_PKT_CUSTOMER_6 = 99; literal NSA$C_PKT_CUSTOMER_7 = 100; literal NSA$C_PKT_CUSTOMER_8 = 101; literal NSA$C_PKT_CSS_1 = 102; ! obsolete codes literal NSA$C_PKT_CSS_2 = 103; literal NSA$C_PKT_CSS_3 = 104; literal NSA$C_PKT_CSS_4 = 105; literal NSA$C_PKT_CSS_5 = 106; literal NSA$C_PKT_CSS_6 = 107; literal NSA$C_PKT_CSS_7 = 108; literal NSA$C_PKT_CSS_8 = 109; literal NSA$C_PKT_LP_1 = 110; ! obsolete codes literal NSA$C_PKT_LP_2 = 111; literal NSA$C_PKT_LP_3 = 112; literal NSA$C_PKT_LP_4 = 113; literal NSA$C_PKT_LP_5 = 114; literal NSA$C_PKT_LP_6 = 115; literal NSA$C_PKT_LP_7 = 116; literal NSA$C_PKT_LP_8 = 117; ! End of obsolete codes. literal NSA$C_PKT_ALARM_FAILURE = 118; ! Alarm failure mode literal NSA$C_PKT_AUDIT_FAILURE = 119; ! Audit failure mode literal NSA$C_PKT_SEVMS_0 = 120; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_1 = 121; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_2 = 122; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_3 = 123; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_4 = 124; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_5 = 125; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_6 = 126; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_7 = 127; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_8 = 128; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_9 = 129; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_10 = 130; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_11 = 131; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_12 = 132; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_13 = 133; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_14 = 134; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_15 = 135; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_16 = 136; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_17 = 137; ! Reserved for SeVMS literal NSA$C_PKT_SEVMS_18 = 138; ! Reserved for SeVMS literal NSA$C_PKT_SNAPSHOT_TIME = 139; ! Snapshot time literal NSA$C_PKT_TRANSPORT_NAME = 140; ! Transport name (IPC, DECnet, SMI) literal NSA$C_PKT_DECNET_LINK_ID = 141; ! DECnet logical link ID literal NSA$C_PKT_DECNET_OBJECT_NAME = 142; ! DECnet object name literal NSA$C_PKT_DECNET_OBJECT_NUMBER = 143; ! DECnet object number literal NSA$C_PKT_REMOTE_LINK_ID = 144; ! Remote logical link ID literal NSA$C_PKT_COMMAND_LINE = 145; ! Command line literal NSA$C_PKT_ASSOCIATION_NAME = 146; ! IPC association name literal NSA$C_PKT_REM_ASSOCIATION_NAME = 147; ! IPC remote association name literal NSA$C_PKT_CONNECTION_ID = 148; ! IPC connection ID literal NSA$C_PKT_MESSAGE = 149; ! Associated message code literal NSA$C_PKT_MSGFILNAM = 150; ! Associated message file name literal NSA$C_PKT_OBJECT_POINTER = 151; ! Object container (Directory) literal NSA$C_PKT_ID_NEW_ATTRIBUTES = 152; ! Identifier new attributes literal NSA$C_PKT_SYSTIM_NEW = 153; ! New system time literal NSA$C_PKT_SYSTIM_OLD = 154; ! Old system time literal NSA$C_PKT_PARAMS_WRITE = 155; ! SYSGEN filename for WRITE command literal NSA$C_PKT_PARAMS_INUSE = 156; ! SYSGEN parameter set name for USE command literal NSA$C_PKT_MATCHING_ACE = 157; ! ACE granting or denying access literal NSA$C_PKT_SNAPSHOT_SAVE_FILNAM = 158; ! Snapshot save file name literal NSA$C_PKT_MAILBOX_UNIT = 159; ! Mailbox unit number literal NSA$C_PKT_NEW_OWNER = 160; ! New process owner (UIC) literal NSA$C_PKT_NEW_PRIORITY = 161; ! New process priority literal NSA$C_PKT_OLD_PRIORITY = 162; ! Old process priority literal NSA$C_PKT_DIAG_FUNC = 163; ! Diagnostic function literal NSA$C_PKT_RESOURCE_NAME = 164; ! Lock resource name literal NSA$C_PKT_LNM_TABLE_NAME = 165; ! Logical name table name literal NSA$C_PKT_LNM_PARENT_NAME = 166; ! Parent logical name table name literal NSA$C_PKT_EFC_NAME = 167; ! Event Flag Cluster name literal NSA$C_PKT_TARGET_PROCESS_CLASS = 168; ! Target process classification literal NSA$C_PKT_TARGET_PROCESS_ID = 169; ! Target process PID literal NSA$C_PKT_TARGET_PROCESS_NAME = 170; ! Target process name literal NSA$C_PKT_TARGET_PROCESS_OWNER = 171; ! Target process owner (UIC) literal NSA$C_PKT_TARGET_USERNAME = 172; ! Target username literal NSA$C_PKT_NEW_PRIVILEGES = 173; ! New privileges literal NSA$C_PKT_OLD_PRIVILEGES = 174; ! Old privileges literal NSA$C_PKT_REMOTE_NODE_FULLNAME = 175; ! Remote node fullname literal NSA$C_PKT_UID = 176; ! UID of object literal NSA$C_PKT_UNUSED_3 = 177; ! Unused packet literal NSA$C_PKT_UNUSED_4 = 178; ! Unused packet literal NSA$C_PKT_UNUSED_5 = 179; ! Unused packet literal NSA$C_PKT_UNUSED_6 = 180; ! Unused packet literal NSA$C_PKT_UNUSED_7 = 181; ! Unused packet literal NSA$C_PKT_UNUSED_8 = 182; ! Unused packet literal NSA$C_PKT_UNUSED_9 = 183; ! Unused packet literal NSA$C_PKT_UNUSED_10 = 184; ! Unused packet literal NSA$C_PKT_PRIVS_MISSING = 185; ! Privileges missing literal NSA$C_PKT_TARGET_DEVICE_NAME = 186; ! Target device name literal NSA$C_PKT_SECTION_NAME = 187; ! Global section name literal NSA$C_PKT_ID_VALUE_ASCII = 188; ! ID value via $IDTOASC literal NSA$C_PKT_OBJECT_CLASS = 189; ! Object class name literal NSA$C_PKT_SUPPRESS = 190; ! Suppress supplied items literal NSA$C_PKT_SNAPSHOT_BOOTFILE = 191; ! Snapshot boot file name literal NSA$C_PKT_SOURCE_PROCESS_ID = 192; ! Source process ID (impersonation) literal NSA$C_PKT_REQUEST_NUMBER = 193; ! Request number literal NSA$C_PKT_ACCESS_MODE = 194; ! Access mode literal NSA$C_PKT_SYSTEM_SERVICE_NAME = 195; ! System service name literal NSA$C_PKT_NEW_AUTH_PRIVILEGES = 196; ! New authorized privileges literal NSA$C_PKT_OLD_AUTH_PRIVILEGES = 197; ! Old authorized privileges literal NSA$C_PKT_NEW_DEF_PRIVILEGES = 198; ! New default privileges literal NSA$C_PKT_OLD_DEF_PRIVILEGES = 199; ! Old default privileges literal NSA$C_PKT_NEW_PROCESS_ID = 200; ! New process ID literal NSA$C_PKT_NEW_PROCESS_OWNER = 201; ! New process owner (UIC) literal NSA$C_PKT_NEW_PROCESS_NAME = 202; ! New process name literal NSA$C_PKT_NEW_IMAGE_NAME = 203; ! New image name literal NSA$C_PKT_NEW_USERNAME = 204; ! New username literal NSA$C_PKT_DEACCESS_KEY = 205; ! Deaccess audit key literal NSA$C_PKT_OBJECT_RIGHTS_BLOCK = 206; ! Object Rights Block literal NSA$C_PKT_OBJSRV_COMPLETE = 207; ! Object service processing completion routine literal NSA$C_PKT_TLV_ORB = 208; ! Object distribution literal NSA$C_PKT_FILE_NAME = 209; ! File name (volume auditing) literal NSA$C_PKT_DIRECTORY_NAME = 210; ! Directory file name literal NSA$C_PKT_SEQUENCE_KEY = 211; ! Sequence key (XQP auditing) ! DAS item codes. literal NSA$C_PKT_PRINCIPAL_FULLNAME = 212; literal NSA$C_PKT_TARGET_FULLNAME = 213; literal NSA$C_PKT_SOURCE_FULLNAME = 214; literal NSA$C_PKT_DESIRED_FULLNAME = 215; literal NSA$C_PKT_CLAIMED_USERNAME = 216; literal NSA$C_PKT_CLAIMED_FULLNAME = 217; literal NSA$C_PKT_CLAIMED_NODENAME = 218; literal NSA$C_PKT_TIME_REQ = 219; literal NSA$C_PKT_TIME_REC = 220; literal NSA$C_PKT_REQ_FLAGS = 221; literal NSA$C_PKT_RET_FLAGS = 222; literal NSA$C_PKT_LIFETIME_REQ = 223; literal NSA$C_PKT_LIFETIME_REC = 224; literal NSA$C_PKT_CRED_USAGE = 225; literal NSA$C_PKT_CONTEXT_HANDLE = 226; literal NSA$C_PKT_QOP_STATE = 227; literal NSA$C_PKT_CONF_STATE = 228; literal NSA$C_PKT_DELEG_CRED_HANDLE = 229; literal NSA$C_PKT_MAJOR_STATUS = 230; literal NSA$C_PKT_DAS_1 = 231; literal NSA$C_PKT_DAS_2 = 232; literal NSA$C_PKT_DAS_3 = 233; literal NSA$C_PKT_DAS_4 = 234; literal NSA$C_PKT_DAS_5 = 235; literal NSA$C_PKT_DAS_6 = 236; literal NSA$C_PKT_DAS_7 = 237; literal NSA$C_PKT_DAS_8 = 238; literal NSA$C_PKT_DAS_9 = 239; literal NSA$C_PKT_DAS_10 = 240; literal NSA$C_PKT_STATE_FILE_NAME = 241; literal NSA$C_PKT_DIRECTORY_FULLNAME = 242; literal NSA$C_PKT_FROM_DIR_FULLNAME = 243; literal NSA$C_PKT_TO_DIR_FULLNAME = 244; literal NSA$C_PKT_ISSUER_FULLNAME = 245; literal NSA$C_PKT_SUBJECT_FULLNAME = 246; literal NSA$C_PKT_CERTIF_TYPE = 247; literal NSA$C_PKT_CSS_SECONDARY_NAME = 248; literal NSA$C_PKT_CSS_OBJECT_FULLNAME = 249; literal NSA$C_PKT_CSS_REQUEST_FROM = 250; literal NSA$C_PKT_CSS_PRIMARY_NAME = 251; literal NSA$C_PKT_CERTIF_SERIAL_NUMBER = 252; literal NSA$C_PKT_WINDOW_END_TIME = 253; literal NSA$C_PKT_LOG_CLOSED = 254; ! log file closed literal NSA$C_PKT_LOG_OPENED = 255; ! log file opened literal NSA$C_PKT_IDENTIFIERS_MISSING = 256; ! identifiers missing literal NSA$C_PKT_SENSITIVE_FIELD_NAME = 257; literal NSA$C_PKT_SENSITIVE_ORIG_DATA = 258; literal NSA$C_PKT_SENSITIVE_NEW_DATA = 259; literal NSA$C_PKT_SENSITIVE_FIELD_TITLE = 260; literal NSA$C_PKT_SENSITIVE_FIELD_DATA = 261; literal NSA$C_PKT_INSTALL_AUTHPRIVS = 262; ! installed image authorized privs literal NSA$C_PKT_PERSONA_FLAGS = 263; ! persona flags literal NSA$C_PKT_PERSONA_UID = 264; ! persona UID literal NSA$C_PKT_PERSONA_MODE = 265; ! persona creation mode literal NSA$C_PKT_PERSONA_USERNAME = 266; ! persona username literal NSA$C_PKT_PERSONA_ACCOUNT = 267; ! persona account literal NSA$C_PKT_PERSONA_NOAUDIT = 268; ! persona noaudit counter literal NSA$C_PKT_PERSONA_UIC = 269; ! persona UIC literal NSA$C_PKT_PERSONA_AUTHPRIV = 270; ! persona authorized privs literal NSA$C_PKT_PERSONA_PERMPRIV = 271; ! persona permanent privs literal NSA$C_PKT_PERSONA_WORKPRIV = 272; ! persona working privs literal NSA$C_PKT_PERSONA_ENABLED = 273; ! persona rights enabled flags literal NSA$C_PKT_PERSONA_RIGHTS = 274; ! persona rights literal NSA$C_PKT_PERSONA_MINCLASS = 275; ! persona minimum classification literal NSA$C_PKT_PERSONA_MAXCLASS = 276; ! persona maximum classification literal NSA$C_PKT_PERSONA_WORKCLASS = 277; ! persona working classification literal NSA$C_PKT_PERSONA_ID = 278; ! persona Id literal NSA$C_PKT_PERSONA_POSIX_UID = 279; literal NSA$C_PKT_PERSONA_POSIX_GID = 280; literal NSA$C_PKT_PARENT_POSIX_UID = 281; literal NSA$C_PKT_PARENT_POSIX_GID = 282; literal NSA$C_PKT_MAX_CODE = 283; ! Must be last literal NSA$C_PKT_HDR_LENGTH = 4; literal NSA$K_PKT_HDR_LENGTH = 4; literal NSA$_ACCESS_DESIRED = 1; ! Access requested literal NSA$_ACCOUNT = 2; ! Account name literal NSA$_ALARM_NAME = 3; ! Alarm journal name literal NSA$_APPL_DATA = 4; ! Application supplied data literal NSA$_AUDIT_FLAGS = 5; ! Audit flags literal NSA$_AUDIT_NAME = 6; ! Audit journal name literal NSA$_SYSTEM_NAME = 7; ! SCS system node name literal NSA$_SYSTEM_ID = 8; ! SCS system node identification literal NSA$_DEVICE_NAME = 9; ! Primary device name on which the volume resides literal NSA$_DISMOUNT_FLAGS = 10; ! Volume dismount flags literal NSA$_HOLDER_NAME = 11; ! Holder name literal NSA$_HOLDER_OWNER = 12; ! Holder owner ID literal NSA$_ID_ATTRIBUTES = 13; ! Identifier attributes literal NSA$_ID_NAME = 14; ! Identifier name literal NSA$_ID_NEW_NAME = 15; ! Identifer new name literal NSA$_ID_VALUE = 16; ! Identifier value literal NSA$_ID_NEW_VALUE = 17; ! Identifier new value literal NSA$_IDENTIFIERS_USED = 18; ! Identifiers used to gain access literal NSA$_IMAGE_NAME = 19; ! Name of the image being executed literal NSA$_INSTALL_FILE = 20; ! Installed file literal NSA$_INSTALL_FLAGS = 21; ! INSTALL flags literal NSA$_INSTALL_PRIVS = 22; ! INSTALL privileges literal NSA$_LOGICAL_NAME = 23; ! Logical name associated with the device. literal NSA$_MOUNT_FLAGS = 24; ! Volume mount flags literal NSA$_NEW_DATA = 25; ! Data after modification literal NSA$_FILE_ID = 26; ! File identification (FID) literal NSA$_OBJECT_MIN_CLASS = 27; ! Minimum object access classification literal NSA$_OBJECT_MAX_CLASS = 28; ! Maximum object access classification literal NSA$_OBJECT_NAME = 29; ! The object's name literal NSA$_OBJECT_NAME_2 = 30; ! Secondary (path) object name literal NSA$_OBJECT_OWNER = 31; ! Owner identifier (UIC) of the process literal NSA$_OBJECT_PROTECTION = 32; ! UIC based protection of the object literal NSA$_OBJECT_TYPE = 33; ! Object's type code literal NSA$_ORIGINAL_DATA = 34; ! Data before modification literal NSA$_PARENT_ID = 35; ! PID of the parent process literal NSA$_PARENT_NAME = 36; ! Parent process name literal NSA$_PARENT_OWNER = 37; ! Parent process owner (UIC) literal NSA$_PARENT_USERNAME = 38; ! Parent process username literal NSA$_PASSWORD = 39; ! Breakin password literal NSA$_PRIVS_USED = 40; ! Privileges used to gain access literal NSA$_PROCESS_ID = 41; ! Current process PID literal NSA$_PROCESS_NAME = 42; ! Current process name literal NSA$_REMOTE_NODE_ID = 43; ! Node ID of network source literal NSA$_REMOTE_NODENAME = 44; ! Remote nodename literal NSA$_REMOTE_USERNAME = 45; ! Remote username literal NSA$_SUBJECT_CLASS = 46; ! Process current access class literal NSA$_SUBJECT_OWNER = 47; ! Process owner (UIC) literal NSA$_FINAL_STATUS = 48; ! Completion status literal NSA$_TERMINAL = 49; ! Process terminal name literal NSA$_TIME_STAMP = 50; ! When the event took place literal NSA$_UAF_ADD = 51; ! UAF record added literal NSA$_UAF_DELETE = 52; ! UAF record removed literal NSA$_UAF_MODIFY = 53; ! UAF record modified literal NSA$_UAF_COPY = 54; ! UAF record copied literal NSA$_UAF_FIELDS = 55; ! UAF fields modified literal NSA$_USERNAME = 56; ! Requestor username literal NSA$_UAF_SOURCE = 57; ! Secondary username literal NSA$_UAF_RENAME = 58; ! UAF record renamed literal NSA$_VOLUME_NAME = 59; ! Mount/dismount volume name literal NSA$_VOLUME_SET_NAME = 60; ! Volume set name literal NSA$_SERVER_ACCOUNT = 61; ! Server account literal NSA$_SERVER_SYSTEM_ID = 62; ! Server system id literal NSA$_SERVER_SYSTEM_NAME = 63; ! Server system name literal NSA$_SERVER_FINAL_STATUS = 64; ! Server status literal NSA$_SERVER_IMAGE_NAME = 65; ! Server image name literal NSA$_SERVER_PARENT_ID = 66; ! Server parent id literal NSA$_SERVER_PARENT_OWNER = 67; ! Server parent owner literal NSA$_SERVER_PARENT_NAME = 68; ! Server parent process name literal NSA$_SERVER_PROCESS_ID = 69; ! Server process id literal NSA$_SERVER_PROCESS_NAME = 70; ! Server process name literal NSA$_SERVER_SUBJECT_CLASS = 71; ! Server classification literal NSA$_SERVER_SUBJECT_OWNER = 72; ! Server owner ('UIC') literal NSA$_SERVER_TERMINAL = 73; ! Server terminal literal NSA$_SERVER_TIME_STAMP = 74; ! Server timestamp literal NSA$_SERVER_USERNAME = 75; ! Server username literal NSA$_AUDIT_DISABLE = 76; ! Audit event disable mask literal NSA$_AUDIT_ENABLE = 77; ! Audit event enable mask literal NSA$_ALARM_DISABLE = 78; ! Alarm event disable mask literal NSA$_ALARM_ENABLE = 79; ! Alarm event enable mask literal NSA$_NOP = 80; ! Nop (for static item lists) literal NSA$_REPLY_MAILBOX = 81; ! Message acknowledge mailbox literal NSA$_DEFAULT_USERNAME = 82; ! NETPROXY proxy default account literal NSA$_LOCAL_USERNAME = 83; ! NETPROXY proxy local account literal NSA$_FIELD_NAME = 84; ! Name of (NEW_DATA/ORIGINAL_DATA) field literal NSA$_LISTENER_DEVICE = 85; ! Listener device name literal NSA$_FIELD_TITLE_STR = 86; ! Field title string literal NSA$_FIELD_DATA_STR = 87; ! Field data string literal NSA$_MESSAGE_TYPE_STR = 88; ! Event message type string literal NSA$_EVENT_TYPE = 89; ! Event message type ($AUDIT_EVENT) literal NSA$_EVENT_SUBTYPE = 90; ! Event message subtype ($AUDIT_EVENT) literal NSA$_EVENT_FACILITY = 91; ! Event facility ($AUDIT_EVENT) literal NSA$_DIRECTORY_ENTRY = 92; ! Directory entry associated with XQP operation literal NSA$_DIRECTORY_ID = 93; ! Directory file-id literal NSA$_CUSTOMER_1 = 94; ! obsolete codes literal NSA$_CUSTOMER_2 = 95; literal NSA$_CUSTOMER_3 = 96; literal NSA$_CUSTOMER_4 = 97; literal NSA$_CUSTOMER_5 = 98; literal NSA$_CUSTOMER_6 = 99; literal NSA$_CUSTOMER_7 = 100; literal NSA$_CUSTOMER_8 = 101; literal NSA$_CSS_1 = 102; ! obsolete codes literal NSA$_CSS_2 = 103; literal NSA$_CSS_3 = 104; literal NSA$_CSS_4 = 105; literal NSA$_CSS_5 = 106; literal NSA$_CSS_6 = 107; literal NSA$_CSS_7 = 108; literal NSA$_CSS_8 = 109; literal NSA$_LP_1 = 110; ! obsolete codes literal NSA$_LP_2 = 111; literal NSA$_LP_3 = 112; literal NSA$_LP_4 = 113; literal NSA$_LP_5 = 114; literal NSA$_LP_6 = 115; literal NSA$_LP_7 = 116; literal NSA$_LP_8 = 117; literal NSA$_ALARM_FAILURE = 118; ! Alarm failure mode literal NSA$_AUDIT_FAILURE = 119; ! Audit failure mode literal NSA$_SEVMS_0 = 120; ! Reserved for SeVMS literal NSA$_SEVMS_1 = 121; ! Reserved for SeVMS literal NSA$_SEVMS_2 = 122; ! Reserved for SeVMS literal NSA$_SEVMS_3 = 123; ! Reserved for SeVMS literal NSA$_SEVMS_4 = 124; ! Reserved for SeVMS literal NSA$_SEVMS_5 = 125; ! Reserved for SeVMS literal NSA$_SEVMS_6 = 126; ! Reserved for SeVMS literal NSA$_SEVMS_7 = 127; ! Reserved for SeVMS literal NSA$_SEVMS_8 = 128; ! Reserved for SeVMS literal NSA$_SEVMS_9 = 129; ! Reserved for SeVMS literal NSA$_SEVMS_10 = 130; ! Reserved for SeVMS literal NSA$_SEVMS_11 = 131; ! Reserved for SeVMS literal NSA$_SEVMS_12 = 132; ! Reserved for SeVMS literal NSA$_SEVMS_13 = 133; ! Reserved for SeVMS literal NSA$_SEVMS_14 = 134; ! Reserved for SeVMS literal NSA$_SEVMS_15 = 135; ! Reserved for SeVMS literal NSA$_SEVMS_16 = 136; ! Reserved for SeVMS literal NSA$_SEVMS_17 = 137; ! Reserved for SeVMS literal NSA$_SEVMS_18 = 138; ! Reserved for SeVMS literal NSA$_SNAPSHOT_TIME = 139; ! Snapshot time literal NSA$_TRANSPORT_NAME = 140; ! Transport name (DECwindows) literal NSA$_DECNET_LINK_ID = 141; ! DECnet logical link ID literal NSA$_DECNET_OBJECT_NAME = 142; ! DECnet object name literal NSA$_DECNET_OBJECT_NUMBER = 143; ! DECnet object number literal NSA$_REMOTE_LINK_ID = 144; ! Remote logical link ID literal NSA$_COMMAND_LINE = 145; ! Command line literal NSA$_ASSOCIATION_NAME = 146; ! IPC association name literal NSA$_REM_ASSOCIATION_NAME = 147; ! IPC remote association name literal NSA$_CONNECTION_ID = 148; ! IPC connection ID literal NSA$_MESSAGE = 149; ! Associated message code literal NSA$_MSGFILNAM = 150; ! Associated message file name literal NSA$_OBJECT_POINTER = 151; ! Object container (Directory) literal NSA$_ID_NEW_ATTRIBUTES = 152; ! Identifier new attributes literal NSA$_SYSTIM_NEW = 153; ! New system time literal NSA$_SYSTIM_OLD = 154; ! Old system time literal NSA$_PARAMS_WRITE = 155; literal NSA$_PARAMS_INUSE = 156; literal NSA$_MATCHING_ACE = 157; ! ACE granting or denying access literal NSA$_SNAPSHOT_SAVE_FILNAM = 158; ! Snapshot save file name literal NSA$_MAILBOX_UNIT = 159; ! Mailbox unit number literal NSA$_NEW_OWNER = 160; ! New process owner (UIC) literal NSA$_NEW_PRIORITY = 161; ! New process priority literal NSA$_OLD_PRIORITY = 162; ! Old process priority literal NSA$_DIAG_FUNC = 163; ! Diagnostic function literal NSA$_RESOURCE_NAME = 164; ! Lock resource name literal NSA$_LNM_TABLE_NAME = 165; ! Logical name table name literal NSA$_LNM_PARENT_NAME = 166; ! Parent logical name table name literal NSA$_EFC_NAME = 167; ! Event Flag Cluster name literal NSA$_TARGET_PROCESS_CLASS = 168; ! Target process classification literal NSA$_TARGET_PROCESS_ID = 169; ! Target process PID literal NSA$_TARGET_PROCESS_NAME = 170; ! Target process name literal NSA$_TARGET_PROCESS_OWNER = 171; ! Target process owner (UIC) literal NSA$_TARGET_USERNAME = 172; ! Target username literal NSA$_NEW_PRIVILEGES = 173; ! New privileges literal NSA$_OLD_PRIVILEGES = 174; ! Old privileges literal NSA$_REMOTE_NODE_FULLNAME = 175; ! Remote node fullname literal NSA$_UID = 176; ! UID of object literal NSA$_UNUSED_3 = 177; ! Unused item code literal NSA$_UNUSED_4 = 178; ! Unused item code literal NSA$_UNUSED_5 = 179; ! Unused item code literal NSA$_UNUSED_6 = 180; ! Unused item code literal NSA$_UNUSED_7 = 181; ! Unused item code literal NSA$_UNUSED_8 = 182; ! Unused item code literal NSA$_UNUSED_9 = 183; ! Unused item code literal NSA$_UNUSED_10 = 184; ! Unused item code literal NSA$_PRIVS_MISSING = 185; ! Privileges missing literal NSA$_TARGET_DEVICE_NAME = 186; ! Target device name literal NSA$_SECTION_NAME = 187; ! Global section name literal NSA$_ID_VALUE_ASCII = 188; ! ID value via $IDTOASC literal NSA$_OBJECT_CLASS = 189; ! Object class name literal NSA$_SUPPRESS = 190; ! Suppress supplied items literal NSA$_SNAPSHOT_BOOTFILE = 191; ! Snapshot boot file name literal NSA$_SOURCE_PROCESS_ID = 192; ! Source process ID (impersonation) literal NSA$_REQUEST_NUMBER = 193; ! Request number literal NSA$_ACCESS_MODE = 194; ! Access mode literal NSA$_SYSTEM_SERVICE_NAME = 195; ! System service name literal NSA$_NEW_AUTH_PRIVILEGES = 196; ! New authorized privileges literal NSA$_OLD_AUTH_PRIVILEGES = 197; ! Old authorized privileges literal NSA$_NEW_DEF_PRIVILEGES = 198; ! New default privileges literal NSA$_OLD_DEF_PRIVILEGES = 199; ! Old default privileges literal NSA$_NEW_PROCESS_ID = 200; ! New process ID literal NSA$_NEW_PROCESS_OWNER = 201; ! New process owner (UIC) literal NSA$_NEW_PROCESS_NAME = 202; ! New process name literal NSA$_NEW_IMAGE_NAME = 203; ! New image name literal NSA$_NEW_USERNAME = 204; ! New username literal NSA$_DEACCESS_KEY = 205; ! Deaccess audit key literal NSA$_OBJECT_RIGHTS_BLOCK = 206; ! Object Rights Block literal NSA$_OBJSRV_COMPLETE = 207; ! Object service processing completion routine literal NSA$_TLV_ORB = 208; ! Object distribution literal NSA$_FILE_NAME = 209; ! File name (volume auditing) literal NSA$_DIRECTORY_NAME = 210; ! Directory file name literal NSA$_SEQUENCE_KEY = 211; ! Sequence key (XQP auditing) ! DAS item codes. literal NSA$_PRINCIPAL_FULLNAME = 212; literal NSA$_TARGET_FULLNAME = 213; literal NSA$_SOURCE_FULLNAME = 214; literal NSA$_DESIRED_FULLNAME = 215; literal NSA$_CLAIMED_USERNAME = 216; literal NSA$_CLAIMED_FULLNAME = 217; literal NSA$_CLAIMED_NODENAME = 218; literal NSA$_TIME_REQ = 219; literal NSA$_TIME_REC = 220; literal NSA$_REQ_FLAGS = 221; literal NSA$_RET_FLAGS = 222; literal NSA$_LIFETIME_REQ = 223; literal NSA$_LIFETIME_REC = 224; literal NSA$_CRED_USAGE = 225; literal NSA$_CONTEXT_HANDLE = 226; literal NSA$_QOP_STATE = 227; literal NSA$_CONF_STATE = 228; literal NSA$_DELEG_CRED_HANDLE = 229; literal NSA$_MAJOR_STATUS = 230; literal NSA$_DAS_1 = 231; literal NSA$_DAS_2 = 232; literal NSA$_DAS_3 = 233; literal NSA$_DAS_4 = 234; literal NSA$_DAS_5 = 235; literal NSA$_DAS_6 = 236; literal NSA$_DAS_7 = 237; literal NSA$_DAS_8 = 238; literal NSA$_DAS_9 = 239; literal NSA$_DAS_10 = 240; literal NSA$_STATE_FILE_NAME = 241; literal NSA$_DIRECTORY_FULLNAME = 242; literal NSA$_FROM_DIRECTORY_FULLNAME = 243; literal NSA$_TO_DIRECTORY_FULLNAME = 244; literal NSA$_ISSUER_FULLNAME = 245; literal NSA$_SUBJECT_FULLNAME = 246; literal NSA$_CERTIF_TYPE = 247; literal NSA$_CSS_SECONDARY_NAME = 248; literal NSA$_CSS_OBJECT_FULLNAME = 249; literal NSA$_CSS_REQUEST_FROM = 250; literal NSA$_CSS_PRIMARY_NAME = 251; literal NSA$_CERTIF_SERIAL_NUMBER = 252; literal NSA$_WINDOW_END_TIME = 253; literal NSA$_LOG_CLOSED = 254; ! log file closed literal NSA$_LOG_OPENED = 255; ! log file opened literal NSA$_IDENTIFIERS_MISSING = 256; ! identifiers missing literal NSA$_SENSITIVE_FIELD_NAME = 257; literal NSA$_SENSITIVE_ORIG_DATA = 258; literal NSA$_SENSITIVE_NEW_DATA = 259; literal NSA$_SENSITIVE_FIELD_TITLE = 260; literal NSA$_SENSITIVE_FIELD_DATA = 261; literal NSA$_INSTALL_AUTHPRIVS = 262; ! installed image authorized privs literal NSA$_PERSONA_FLAGS = 263; ! persona flags literal NSA$_PERSONA_UID = 264; ! persona UID literal NSA$_PERSONA_MODE = 265; ! persona creation mode literal NSA$_PERSONA_USERNAME = 266; ! persona username literal NSA$_PERSONA_ACCOUNT = 267; ! persona account literal NSA$_PERSONA_NOAUDIT = 268; ! persona noaudit counter literal NSA$_PERSONA_UIC = 269; ! persona UIC literal NSA$_PERSONA_AUTHPRIV = 270; ! persona authorized privs literal NSA$_PERSONA_PERMPRIV = 271; ! persona permanent privs literal NSA$_PERSONA_WORKPRIV = 272; ! persona working privs literal NSA$_PERSONA_ENABLED = 273; ! persona rights enabled flags literal NSA$_PERSONA_RIGHTS = 274; ! persona rights literal NSA$_PERSONA_MINCLASS = 275; ! persona minimum classification literal NSA$_PERSONA_MAXCLASS = 276; ! persona maximum classification literal NSA$_PERSONA_WORKCLASS = 277; ! persona working classification literal NSA$_PERSONA_ID = 278; ! persona Id literal NSA$_PERSONA_POSIX_UID = 279; literal NSA$_PERSONA_POSIX_GID = 280; literal NSA$_PARENT_POSIX_UID = 281; literal NSA$_PARENT_POSIX_GID = 282; literal NSA$_MAX_ITM_CODE = 283; ! Must be last literal NSA$_CHAIN = 65535; ! For $AUDIT_EVENT item list chaining literal NSA$_CLIENT_ACCOUNT = 2; literal NSA$_CLIENT_SYSTEM_ID = 8; literal NSA$_CLIENT_SYSTEM_NAME = 7; literal NSA$_CLIENT_FINAL_STATUS = 48; literal NSA$_CLIENT_IMAGE_NAME = 19; literal NSA$_CLIENT_PARENT_ID = 35; literal NSA$_CLIENT_PARENT_OWNER = 37; literal NSA$_CLIENT_PARENT_NAME = 36; literal NSA$_CLIENT_PROCESS_ID = 41; literal NSA$_CLIENT_PROCESS_NAME = 42; literal NSA$_CLIENT_SUBJECT_CLASS = 46; literal NSA$_CLIENT_SUBJECT_OWNER = 47; literal NSA$_CLIENT_TERMINAL = 49; literal NSA$_CLIENT_TIME_STAMP = 50; literal NSA$_CLIENT_USERNAME = 56; literal NSA$S_NSADATADEF = 5; macro NSA$W_PACKET_SIZE = 0,0,16,0 %; ! Data packet size macro NSA$W_PACKET_TYPE = 2,0,16,0 %; ! Data packet type macro NSA$R_PACKET_DATA = 4,0,8,0 %; ! Start of packet data ! Define $AUDIT_EVENT item codes. ! Define flag masks for NSA$EVENT_AUDIT supplied parameter. ! Each bit set tells NSA$EVENT_AUDIT *not* to default that ! corresponding packet from the current process. literal NSA$M_ACCOUNT_NAME = %X'1'; literal NSA$M_SYSTEM_ID = %X'2'; literal NSA$M_SYSTEM_NAME = %X'4'; literal NSA$M_FINAL_STATUS = %X'8'; literal NSA$M_IMAGE_NAME = %X'10'; literal NSA$M_PARENT_ID = %X'20'; literal NSA$M_PARENT_OWNER = %X'40'; literal NSA$M_PARENT_NAME = %X'80'; literal NSA$M_PROCESS_ID = %X'100'; literal NSA$M_PROCESS_NAME = %X'200'; literal NSA$M_SUBJECT_CLASS = %X'400'; literal NSA$M_SUBJECT_OWNER = %X'800'; literal NSA$M_TERMINAL = %X'1000'; literal NSA$M_TIME_STAMP = %X'2000'; literal NSA$M_USERNAME = %X'4000'; literal NSA$M_PARENT_USERNAME = %X'8000'; literal NSA$M_POSIX_UID = %X'10000'; literal NSA$M_POSIX_GID = %X'20000'; literal NSA$M_PARENT_POSIX_UID = %X'40000'; literal NSA$M_PARENT_POSIX_GID = %X'80000'; literal NSA$S_FILL_232_ = 4; macro NSA$V_ACCOUNT_NAME = 0,0,1,0 %; ! account macro NSA$V_SYSTEM_ID = 0,1,1,0 %; ! system id macro NSA$V_SYSTEM_NAME = 0,2,1,0 %; ! system name macro NSA$V_FINAL_STATUS = 0,3,1,0 %; ! status macro NSA$V_IMAGE_NAME = 0,4,1,0 %; ! image name macro NSA$V_PARENT_ID = 0,5,1,0 %; ! parent id macro NSA$V_PARENT_OWNER = 0,6,1,0 %; ! parent owner macro NSA$V_PARENT_NAME = 0,7,1,0 %; ! parent process name macro NSA$V_PROCESS_ID = 0,8,1,0 %; ! process id macro NSA$V_PROCESS_NAME = 0,9,1,0 %; ! process name macro NSA$V_SUBJECT_CLASS = 0,10,1,0 %; ! classification macro NSA$V_SUBJECT_OWNER = 0,11,1,0 %; ! owner ('UIC') macro NSA$V_TERMINAL = 0,12,1,0 %; ! terminal macro NSA$V_TIME_STAMP = 0,13,1,0 %; ! timestamp macro NSA$V_USERNAME = 0,14,1,0 %; ! username macro NSA$V_PARENT_USERNAME = 0,15,1,0 %; ! parent username macro NSA$V_POSIX_UID = 0,16,1,0 %; macro NSA$V_POSIX_GID = 0,17,1,0 %; macro NSA$V_PARENT_POSIX_UID = 0,18,1,0 %; macro NSA$V_PARENT_POSIX_GID = 0,19,1,0 %; ! Define the format of an audit server reply message. This defines the ! format of the message written to any supplied reply mailbox. literal NSA$C_REPLY_LENGTH = 4; literal NSA$K_REPLY_LENGTH = 4; literal NSA$S_NSAREPLYDEF = 4; macro NSA$L_REPLY_STATUS = 0,0,32,0 %; ! condition status value ! ! Define the structure of a message formating table entry. These entries define ! the order in which the data packets are displayed, and the manner in which they ! are formatted. ! literal NSA$C_FMTINF_NONE = 0; ! No value to format literal NSA$C_FMTINF_LONG_VALUE = 1; ! Value is supplied as a longword literal NSA$C_FMTINF_IDENTIFIER = 2; ! Value supplied is an identifier literal NSA$C_FMTINF_DATE = 3; ! Value supplied is address of quadword date literal NSA$C_FMTINF_STRING = 4; ! String size (count) and address supplied to FAO literal NSA$C_FMTINF_CLASSIFICATION = 5; ! Vector represents a classification literal NSA$C_FMTINF_UID = 6; ! Value supplied is address of UID literal NSA$C_FMTINF_RIGHTS = 7; ! Value supplied is address of rights info literal NSA$C_FMTINF_SPECIAL = 8; ! Special processing required literal NSA$M_FMTINF_CHECK_PREVIOUS = %X'1'; literal NSA$M_FMTINF_NTH_NEW_LINE = %X'2'; literal NSA$M_FMTINF_NOFORMAT = %X'4'; literal NSA$M_FMTINF_SENSITIVE = %X'8'; literal NSA$K_FMTINF_LENGTH = 28; literal NSA$C_FMTINF_LENGTH = 28; ! Define the format style codes. literal NSA$C_FORMAT_STYLE_BRIEF = 1; ! Single line briefly formatted message literal NSA$C_FORMAT_STYLE_FULL = 2; ! Fully formatted message literal NSA$C_FORMAT_STYLE_PACKET_TYPE = 3; ! Packet type format ! Define classification string format constants literal NSA$C_FMTINF_MAX_SINGLE_SEC_STR = 3895; ! Simple secrecy string literal NSA$C_FMTINF_MAX_SINGLE_INT_STR = 1977; ! Simple integrity string literal NSA$C_FMTINF_MAX_RANGE_SEC_STR = 7801; ! Compound secrecy string literal NSA$C_FMTINF_MAX_RANGE_INT_STR = 3963; ! Compound integrity string literal NSA$S_FMTTBLDEF = 28; macro NSA$L_FMTINF_PACKET_NAME = 0,0,32,1 %; ! Address of the packet name descriptor macro NSA$W_FMTINF_PACKET_TYPE = 4,0,16,0 %; ! Define the type of packet represented by this entry (NSA$C_PKT_xxx) macro NSA$W_FMTINF_OUTPUT_ORDER = 6,0,16,0 %; ! Define the order in the output buffer macro NSA$L_FMTINF_FAO_CTRSTR = 8,0,32,1 %; ! Normal FAO control string macro NSA$L_FMTINF_CLIENT_FAO_CTRSTR = 12,0,32,1 %; ! FAO control string for client/server combination macro NSA$L_FMTINF_NTH_FAO_CTRSTR = 16,0,32,1 %; ! FAO control string for the Nth packet of the same type macro NSA$B_FMTINF_DATA_TYPE = 20,0,8,0 %; ! Type of data to format macro NSA$B_FMTINF_FMT_FLAGS = 21,0,8,0 %; macro NSA$V_FMTINF_CHECK_PREVIOUS = 21,0,1,0 %; ! Check adjacency with previous output item macro NSA$V_FMTINF_NTH_NEW_LINE = 21,1,1,0 %; ! Force duplicate packets to a new line macro NSA$V_FMTINF_NOFORMAT = 21,2,1,0 %; ! Don't format the packet(s) macro NSA$V_FMTINF_SENSITIVE = 21,3,1,0 %; ! Packet contains sensitive information macro NSA$W_FMTINF_SERVER_PKT = 22,0,16,0 %; ! Associated (server) packet macro NSA$W_FMTINF_INDENT = 24,0,16,0 %; ! Indent for multi-line packets ! ! Define the structure of the format image callout block. This block is used to determine ! which routines should be used to format event messages and event message data packets that ! are unknown to the base VMS operating system. ! literal NSA$K_IMGXFR_LENGTH = 53; literal NSA$C_IMGXFR_LENGTH = 53; literal NSA$S_FMTCALLDEF = 53; macro NSA$L_IMGXFR_FLINK = 0,0,32,1 %; ! Address of next entry (must be first) macro NSA$L_IMGXFR_BLINK = 4,0,32,1 %; ! Address of previous entry (must be secomd) macro NSA$W_IMGXFR_SIZE = 8,0,16,0 %; ! Size of entry block macro NSA$W_IMGXFR_FACILITY = 10,0,16,0 %; ! Facility code for image macro NSA$L_IMGXFR_BASE_ORDER_OFFSET = 12,0,32,0 %; ! Base output order offset ! Start of sharable image routine addresses macro NSA$A_IMGXFR_MESSAGE_INFO = 16,0,32,0 %; ! Message information routine macro NSA$A_IMGXFR_VALIDATE_PACKET = 20,0,32,0 %; ! Packet validation routine macro NSA$A_IMGXFR_DISPLAY_INFO = 24,0,32,0 %; ! Packet display information routine macro NSA$A_IMGXFR_LINE_BREAK = 28,0,32,0 %; ! Line break processing routine macro NSA$A_IMGXFR_FORMAT_SPECIAL = 32,0,32,0 %; ! Special packet formatting routine macro NSA$A_IMGXFR_FORMAT_INFO = 36,0,32,0 %; ! Normal packet formatting routine macro NSA$A_IMGXFR_FORMAT_BRIEF = 40,0,32,0 %; ! Brief format routine macro NSA$A_IMGXFR_FORMAT_PACKET_TYPE = 44,0,32,0 %; ! Packet type format routine macro NSA$A_IMGXFR_FORMAT_EVENT_TYPE = 48,0,32,0 %; ! Message type/subtype format routine ! End of sharable image routine addresses macro NSA$T_IMGXFR_IMAGE_NAME = 52,0,8,0 %; literal NSA$S_IMGXFR_IMAGE_NAME = 1; ! Start of image name ! The following structure defines the common argument block passed to all the ! various formatting routines (which actually format information). literal NSA$M_FMTARG_SENSITIVE = %X'1'; literal NSA$M_FMTARG_DISPLAY_TITLE = %X'2'; literal NSA$M_FMTARG_CHECK_PREVIOUS = %X'1'; literal NSA$M_FMTARG_NTH_NEW_LINE = %X'2'; literal NSA$M_FMTARG_NOFORMAT = %X'4'; literal NSA$K_FMTARG_LENGTH = 36; literal NSA$C_FMTARG_LENGTH = 36; literal NSA$S_FMTARGDEF = 36; macro NSA$Q_FMTARG_BUFFER = 0,0,0,1 %; literal NSA$S_FMTARG_BUFFER = 8; macro NSA$W_FMTARG_BUFFER_SIZE = 0,0,16,0 %; ! Output buffer size macro NSA$A_FMTARG_BUFFER_POINTER = 4,0,32,1 %; ! Output buffer address macro NSA$W_FMTARG_BUFFER_OFFSET = 8,0,16,0 %; ! Current position in output buffer macro NSA$W_FMTARG_BOL_OFFSET = 10,0,16,0 %; ! Offset to beginning of current line macro NSA$Q_FMTARG_TERMINATOR = 12,0,0,1 %; literal NSA$S_FMTARG_TERMINATOR = 8; macro NSA$W_FMTARG_TERM_SIZE = 12,0,16,0 %; ! Size of line terminator macro NSA$A_FMTARG_TERM_TEXT = 16,0,32,1 %; ! Address of terminator text macro NSA$W_FMTARG_LINE_WIDTH = 20,0,16,0 %; ! Output display width macro NSA$W_FMTARG_LINE_INDENT = 22,0,16,0 %; ! Positions to indent (when needed) macro NSA$A_FMTARG_OUTPUT_ROUTINE = 24,0,32,1 %; ! Address of an output routine macro NSA$L_FMTARG_FLAGS = 28,0,32,0 %; macro NSA$W_FMTARG_FLAGS_LOW = 28,0,16,0 %; macro NSA$V_FMTARG_SENSITIVE = 28,0,1,0 %; ! Packet contains sensitive information macro NSA$V_FMTARG_DISPLAY_TITLE = 28,1,1,0 %; ! Display title macro NSA$W_FMTARG_FLAGS_HIGH = 30,0,16,0 %; macro NSA$V_FMTARG_CHECK_PREVIOUS = 30,0,1,0 %; ! Check adjacency with previous output item macro NSA$V_FMTARG_NTH_NEW_LINE = 30,1,1,0 %; ! Force duplicate packets to a new line macro NSA$V_FMTARG_NOFORMAT = 30,2,1,0 %; ! Don't format the packet(s) macro NSA$L_FMTARG_USER_CONTEXT = 32,0,32,0 %; ! User context cell ! The following structure defines the transfer vector area for the format image. literal NSA$C_IMGXFR_MESSAGE_INFO = 0; ! Message information routine literal NSA$C_IMGXFR_VALIDATE_PACKET = 1; ! Packet validation routine literal NSA$C_IMGXFR_DISPLAY_INFO = 2; ! Packet display information routine literal NSA$C_IMGXFR_LINE_BREAK = 3; ! Line break processing routine literal NSA$C_IMGXFR_FORMAT_SPECIAL = 4; ! Special packet formatting routine literal NSA$C_IMGXFR_FORMAT_INFO = 5; ! Normal packet formatting routine literal NSA$C_IMGXFR_FORMAT_BRIEF = 6; ! Brief format routine literal NSA$C_IMGXFR_FORMAT_PACKET_TYPE = 7; ! Packet type format routine literal NSA$C_IMGXFR_FORMAT_EVENT_TYPE = 8; ! Message type/subtype format routine literal NSA$S_FMTXFERDEF = 72; macro NSA$R_IMGXFR_MESSAGE_INFO = 0,0,0,0 %; literal NSA$S_IMGXFR_MESSAGE_INFO = 8; ! Message information routine macro NSA$R_IMGXFR_VALIDATE_PACKET = 8,0,0,0 %; literal NSA$S_IMGXFR_VALIDATE_PACKET = 8; ! Packet validation routine macro NSA$R_IMGXFR_DISPLAY_INFO = 16,0,0,0 %; literal NSA$S_IMGXFR_DISPLAY_INFO = 8; ! Packet display information routine macro NSA$R_IMGXFR_LINE_BREAK = 24,0,0,0 %; literal NSA$S_IMGXFR_LINE_BREAK = 8; ! Line break processing routine macro NSA$R_IMGXFR_FORMAT_SPECIAL = 32,0,0,0 %; literal NSA$S_IMGXFR_FORMAT_SPECIAL = 8; ! Special packet formatting routine macro NSA$R_IMGXFR_FORMAT_INFO = 40,0,0,0 %; literal NSA$S_IMGXFR_FORMAT_INFO = 8; ! Normal packet formatting routine macro NSA$R_IMGXFR_FORMAT_BRIEF = 48,0,0,0 %; literal NSA$S_IMGXFR_FORMAT_BRIEF = 8; ! Brief format routine macro NSA$R_IMGXFR_FORMAT_PACKET_TYPE = 56,0,0,0 %; literal NSA$S_IMGXFR_FORMAT_PACKET_TYPE = 8; ! Packet type format routine macro NSA$R_IMGXFR_FORMAT_EVENT_TYPE = 64,0,0,0 %; literal NSA$S_IMGXFR_FORMAT_EVENT_TYPE = 8; ! Message type/subtype format routine ! The following list of constants is used to index into the transfer vector area ! defined above. The structure definition and constant list must parallel each other. ! ! Define block to hold access bitname information for a particular object ! literal NSA$K_ACCNAM_LENGTH = 139; ! Length of block literal NSA$C_ACCNAM_LENGTH = 139; literal NSA$S_FMTACCNAMDEF = 139; macro NSA$L_ACCNAM_FLINK = 0,0,32,1 %; ! Address of next entry (must be first) macro NSA$L_ACCNAM_BLINK = 4,0,32,1 %; ! Address of previous entry (must be secomd) macro NSA$W_ACCNAM_SIZE = 8,0,16,0 %; ! Size of entry block macro NSA$L_ACCNAM_CODES = 10,0,0,1 %; literal NSA$S_ACCNAM_CODES = 128; ! 32 pointers to access name descriptors macro NSA$T_ACCNAM_OBJECT_TYPE = 138,0,8,0 %; literal NSA$S_ACCNAM_OBJECT_TYPE = 1; ! Start of object name ! ! Define the format of the message information block. This block defines some general ! characteristics of messages for a particular facility. ! literal NSA$K_MSGINF_LENGTH = 8; literal NSA$C_MSGINF_LENGTH = 8; literal NSA$S_MSGINFODEF = 8; macro NSA$L_MSGINF_MAX_ORDER_OFFSET = 0,0,32,0 %; ! Maximum (output) line index macro NSA$A_MSGINF_BRIEF_TITLE = 4,0,32,1 %; ! Address of brief format titleline ! ! Define the structure of a formatting table subtype entry. This entry consists of ! a description of the subtype as well as the name of the subtype. ! literal NSA$K_SUBTBL_LENGTH = 8; literal NSA$C_SUBTBL_LENGTH = 8; literal NSA$S_SUBFMTTBLDEF = 8; macro NSA$L_SUBTBL_DESCRIPTION = 0,0,32,1 %; ! Address of the description string macro NSA$L_SUBTBL_TABLE_SIZE = 0,0,32,0 %; ! Number of entries in the subtable macro NSA$L_SUBTBL_MNEMONIC = 4,0,32,0 %; ! Mnemonic name for the entry ! Define obsolete message types and subtypes here. literal NSA$C_MSG_NETUAF = 9; literal NSA$C_MSG_PRIV_AUDIT = 16; literal NSA$C_PRIV_AUDIT = 1; literal NSA$C_JOBCTL_QUEUE_ACCESS = 3; literal NSA$C_NETUAF_ADD = 1; literal NSA$C_NETUAF_DELETE = 2; literal NSA$C_NETUAF_MODIFY = 3; literal NSA$C_NETUAF_NCP = 4; literal NSA$C_NETUAF_MAX_CODE = 8; ! Define obsolete packet types and item code equivalents here. literal NSA$C_PKT_OBJECT_ID = 26; literal NSA$_OBJECT_ID = 26; ! Define packet pseudonyms here. literal NSA$C_PKT_PRIV_MASK = 22; literal NSA$_PRIV_MASK = 22; literal NSA$C_PKT_PRIVILEGES = 22; literal NSA$_PRIVILEGES = 22; literal NSA$C_PKT_SNAPSHOT_FILNAM = 158; literal NSA$_SNAPSHOT_FILNAM = 158; literal NSA$C_PKT_PERFORMANCE_NOP = 80; literal NSA$_PERFORMANCE_NOP = 80; literal NSA$C_PKT_SUPPLIED_FLAGS = 190; literal NSA$_SUPPLIED_FLAGS = 190; !*** MODULE $NSARECDEF *** ! + ! Security Auditing record definitions ! - literal NSA$C_REC_MAXLENGTH = 1024; ! Maximum record size literal NSA$K_REC_MAXLENGTH = 1024; ! Maximum record size literal NSA$S_REC_MAXLENGTH = 1024; ! Maximum record size ! + ! Audit record type definitions ! - literal NSA$K_RECTYP_FIL = 1; ! File access literal NSA$K_RECTYP_SYSUAF = 2; ! System UAF literal NSA$K_RECTYP_NETUAF = 3; ! Network UAF literal NSA$K_RECTYP_LOGB = 4; ! Login breakin detection literal NSA$K_RECTYP_LOGI = 5; ! Successful login literal NSA$K_RECTYP_LOGF = 6; ! Login failure literal NSA$K_RECTYP_LOGO = 7; ! Logout literal NSA$K_RECTYP_VOL = 8; ! Volume operations literal NSA$K_RECTYP_GBL = 9; ! Global section access literal NSA$K_RECTYP_INSTAL = 10; ! INSTALL operations literal NSA$K_RECTYP_RIGHTS = 11; ! Rights database operations literal NSA$K_RECTYP_AUDIT = 12; ! SET AUDIT operations literal NSA$K_RECTYPNUM = 12; ! + ! Audit record subtype and ID definitions ! - ! File access literal NSA$K_RECTYP_FIL_SUCC = 1; ! Successful file access literal NSA$K_RECTYP_FIL_FAIL = 2; ! File access failure literal NSA$K_RECTYPNUM_FIL = 2; literal NSA$K_RECID_FIL_SUCC = 65537; literal NSA$K_RECID_FIL_FAIL = 131073; ! Global section access literal NSA$K_RECTYP_GBL_SUCC = 1; ! Successful Global section access literal NSA$K_RECTYP_GBL_FAIL = 2; ! Global section access failure literal NSA$K_RECTYPNUM_GBL = 2; literal NSA$K_RECID_GBL_SUCC = 65545; literal NSA$K_RECID_GBL_FAIL = 131081; ! System UAF literal NSA$K_RECTYP_SYSUAF_ADD = 1; ! System UAF record addition literal NSA$K_RECTYP_SYSUAF_DEL = 2; ! System UAF record deletion literal NSA$K_RECTYP_SYSUAF_MOD = 3; ! System UAF record modification literal NSA$K_RECTYP_SYSUAF_COP = 4; ! System UAF record copied literal NSA$K_RECTYP_SYSUAF_REN = 5; ! System UAF record renamed literal NSA$K_RECTYPNUM_SYSUAF = 5; literal NSA$K_RECID_SYSUAF_ADD = 65538; literal NSA$K_RECID_SYSUAF_DEL = 131074; literal NSA$K_RECID_SYSUAF_MOD = 196610; literal NSA$K_RECID_SYSUAF_COP = 262146; literal NSA$K_RECID_SYSUAF_REN = 327682; ! Network UAF literal NSA$K_RECTYP_NETUAF_ADD = 1; ! Network UAF record addition literal NSA$K_RECTYP_NETUAF_DEL = 2; ! Network UAF record deletion literal NSA$K_RECTYP_NETUAF_MOD = 3; ! Network UAF record modification literal NSA$K_RECTYPNUM_NETUAF = 3; literal NSA$K_RECID_NETUAF_ADD = 65539; literal NSA$K_RECID_NETUAF_DEL = 131075; literal NSA$K_RECID_NETUAF_MOD = 196611; ! Login breakin detection literal NSA$K_RECTYP_LOGB_DIA = 1; ! Dialup interactive breakin detection literal NSA$K_RECTYP_LOGB_LOC = 2; ! Local interactive breakin detection literal NSA$K_RECTYP_LOGB_REM = 3; ! Remote interactive breakin detection literal NSA$K_RECTYP_LOGB_NET = 4; ! Network breakin detection literal NSA$K_RECTYP_LOGB_DET = 5; ! Detached process breakin detection literal NSA$K_RECTYPNUM_LOGB = 5; literal NSA$K_RECID_LOGB_DIA = 65540; literal NSA$K_RECID_LOGB_LOC = 131076; literal NSA$K_RECID_LOGB_REM = 196612; literal NSA$K_RECID_LOGB_NET = 262148; literal NSA$K_RECID_LOGB_DET = 327684; ! Successful login literal NSA$K_RECTYP_LOGI_BAT = 1; ! Batch process login literal NSA$K_RECTYP_LOGI_DIA = 2; ! Dialup interactive login literal NSA$K_RECTYP_LOGI_LOC = 3; ! Local interactive login literal NSA$K_RECTYP_LOGI_REM = 4; ! Remote interactive login literal NSA$K_RECTYP_LOGI_NET = 5; ! Network login literal NSA$K_RECTYP_LOGI_SUB = 6; ! Subprocess login literal NSA$K_RECTYP_LOGI_DET = 7; ! Detached process login literal NSA$K_RECTYPNUM_LOGI = 7; literal NSA$K_RECID_LOGI_BAT = 65541; literal NSA$K_RECID_LOGI_DIA = 131077; literal NSA$K_RECID_LOGI_LOC = 196613; literal NSA$K_RECID_LOGI_REM = 262149; literal NSA$K_RECID_LOGI_NET = 327685; literal NSA$K_RECID_LOGI_SUB = 393221; literal NSA$K_RECID_LOGI_DET = 458757; ! Login failure literal NSA$K_RECTYP_LOGF_BAT = 1; ! Batch process login failure literal NSA$K_RECTYP_LOGF_DIA = 2; ! Dialup interactive login failure literal NSA$K_RECTYP_LOGF_LOC = 3; ! Local interactive login failure literal NSA$K_RECTYP_LOGF_REM = 4; ! Remote interactive login failure literal NSA$K_RECTYP_LOGF_NET = 5; ! Network login failure literal NSA$K_RECTYP_LOGF_SUB = 6; ! Subprocess login failure literal NSA$K_RECTYP_LOGF_DET = 7; ! Detached process login failure literal NSA$K_RECTYPNUM_LOGF = 7; literal NSA$K_RECID_LOGF_BAT = 65542; literal NSA$K_RECID_LOGF_DIA = 131078; literal NSA$K_RECID_LOGF_LOC = 196614; literal NSA$K_RECID_LOGF_REM = 262150; literal NSA$K_RECID_LOGF_NET = 327686; literal NSA$K_RECID_LOGF_SUB = 393222; literal NSA$K_RECID_LOGF_DET = 458758; ! Logout literal NSA$K_RECTYP_LOGO_BAT = 1; ! Batch process logout literal NSA$K_RECTYP_LOGO_DIA = 2; ! Dialup interactive logout literal NSA$K_RECTYP_LOGO_LOC = 3; ! Local interactive logout literal NSA$K_RECTYP_LOGO_REM = 4; ! Remote interactive logout literal NSA$K_RECTYP_LOGO_NET = 5; ! Network logout literal NSA$K_RECTYP_LOGO_SUB = 6; ! Subprocess logout literal NSA$K_RECTYP_LOGO_DET = 7; ! Detached process logout literal NSA$K_RECTYPNUM_LOGO = 7; literal NSA$K_RECID_LOGO_BAT = 65543; literal NSA$K_RECID_LOGO_DIA = 131079; literal NSA$K_RECID_LOGO_LOC = 196615; literal NSA$K_RECID_LOGO_REM = 262151; literal NSA$K_RECID_LOGO_NET = 327687; literal NSA$K_RECID_LOGO_SUB = 393223; literal NSA$K_RECID_LOGO_DET = 458759; ! Volume operations literal NSA$K_RECTYP_VOL_MOU = 1; ! Volume mounts literal NSA$K_RECTYP_VOL_DMOU = 2; ! Volume dismounts literal NSA$K_RECTYPNUM_VOL = 2; literal NSA$K_RECID_VOL_MOU = 65544; literal NSA$K_RECID_VOL_DMOU = 131080; ! INSTALL operations literal NSA$K_RECTYP_INSTAL_ADD = 1; ! Add known file literal NSA$K_RECTYP_INSTAL_REM = 2; ! Remove known file literal NSA$K_RECTYPNUM_INSTAL = 2; ! Rights database operations literal NSA$K_RECTYP_RIGHTS_CRE = 1; ! Create rights database literal NSA$K_RECTYP_RIGHTS_ADD = 2; ! Add identifier literal NSA$K_RECTYP_RIGHTS_REM = 3; ! Remove identifier literal NSA$K_RECTYP_RIGHTS_MOD_ID = 4; ! Modify identifier literal NSA$K_RECTYP_RIGHTS_MOD_HO = 5; ! Modify identifier holder literal NSA$K_RECTYP_RIGHTS_GRANT = 6; ! Grant identifier literal NSA$K_RECTYP_RIGHTS_REVOK = 7; ! Revoke identifier literal NSA$K_RECTYPNUM_RIGHTS = 7; ! SET AUDIT operations literal NSA$K_RECTYP_AUDIT_ENA_AL = 1; ! Enable alarm literal NSA$K_RECTYP_AUDIT_DIS_AL = 2; ! Disable alarm literal NSA$K_RECTYP_AUDIT_ENA_JL = 3; ! Enable journal literal NSA$K_RECTYP_AUDIT_DIS_JL = 4; ! Disable journal literal NSA$K_RECTYPNUM_AUDIT = 4; ! + ! SYSUAFF stuff ! - literal nsa$S_sysuaff_bits = 8; macro nsa$q_sysuaff = 0,0,0,0 %; literal nsa$s_sysuaff = 8; ! SYSUAFF flags: macro nsa$v_access = 0,0,1,0 %; ! ACCESS modified macro nsa$v_account = 0,1,1,0 %; ! ACCOUNT modified macro nsa$v_astlm = 0,2,1,0 %; ! ASTLM modified macro nsa$v_batch = 0,3,1,0 %; ! BATCH modified macro nsa$v_biolm = 0,4,1,0 %; ! BIOLM modified macro nsa$v_bytlm = 0,5,1,0 %; ! BYTLM modified macro nsa$v_cli = 0,6,1,0 %; ! CLI modified macro nsa$v_clitables = 0,7,1,0 %; ! CLITABLES modified macro nsa$v_cputime = 0,8,1,0 %; ! CPUTIME modified macro nsa$v_defprivileges = 0,9,1,0 %; ! DEFPRIVILEGES modified macro nsa$v_device = 0,10,1,0 %; ! DEVICE modified macro nsa$v_dialup = 0,11,1,0 %; ! DIALUP modified macro nsa$v_diolm = 0,12,1,0 %; ! DIOLM modified macro nsa$v_directory = 0,13,1,0 %; ! DIRECTORY modified macro nsa$v_enqlm = 0,14,1,0 %; ! ENQLM modified macro nsa$v_expiration = 0,15,1,0 %; ! EXPIRATION modified macro nsa$v_fillm = 0,16,1,0 %; ! FILLM modified macro nsa$v_flags = 0,17,1,0 %; ! FLAGS modified macro nsa$v_interactive = 0,18,1,0 %; ! INTERACTIVE modified macro nsa$v_jtquota = 0,19,1,0 %; ! JTQUOTA modified macro nsa$v_lgicmd = 0,20,1,0 %; ! LGICMD modified macro nsa$v_local = 0,21,1,0 %; ! LOCAL modified macro nsa$v_maxdetach = 0,22,1,0 %; ! MAXDETACH modified macro nsa$v_maxjobs = 0,23,1,0 %; ! MAXJOBS modified macro nsa$v_maxacctjobs = 0,24,1,0 %; ! MAXACCTJOBS modified macro nsa$v_network = 0,25,1,0 %; ! NETWORK modified macro nsa$v_owner = 0,26,1,0 %; ! OWNER modified macro nsa$v_password = 0,27,1,0 %; ! PASSWORD modified macro nsa$v_pbytlm = 0,28,1,0 %; ! PBYTLM modified macro nsa$v_pflags = 0,29,1,0 %; ! PFLAGS modified macro nsa$v_p_restrict = 0,30,1,0 %; ! P_RESTRICT modified macro nsa$v_pgflquota = 0,31,1,0 %; ! PGFLQUOTA modified macro nsa$v_prclm = 4,0,1,0 %; ! PRCLM modified macro nsa$v_primedays = 4,1,1,0 %; ! PRIMEDAYS modified macro nsa$v_priority = 4,2,1,0 %; ! PRIORITY modified macro nsa$v_privileges = 4,3,1,0 %; ! PRIVILEGES modified macro nsa$v_pwdlifetime = 4,4,1,0 %; ! PWDLIFETIME modified macro nsa$v_pwdminimum = 4,5,1,0 %; ! PWDMINIMUM modified macro nsa$v_quepriority = 4,6,1,0 %; ! QUEPRIORITY modified macro nsa$v_remote = 4,7,1,0 %; ! REMOTE modified macro nsa$v_sflags = 4,8,1,0 %; ! SFLAGS modified macro nsa$v_s_restrict = 4,9,1,0 %; ! S_RESTRICT modified macro nsa$v_shrfillm = 4,10,1,0 %; ! SHRFILLM modified macro nsa$v_tqelm = 4,11,1,0 %; ! TQELM modified macro nsa$v_uic = 4,12,1,0 %; ! UIC modified macro nsa$v_wsdefault = 4,13,1,0 %; ! WSDEFAULT modified macro nsa$v_wsextent = 4,14,1,0 %; ! WSEXTENT modified macro nsa$v_wsquota = 4,15,1,0 %; ! WSQUOTA modified ! + ! Record header offset definitions ! - literal NSA$M_REC_FLAGS_PKTCON = %X'1'; literal NSA$C_RECHDR_LENGTH = 76; literal NSA$K_RECHDR_LENGTH = 76; literal NSA$S_NSARECHDRDEF = 76; macro NSA$L_REC_ID = 0,0,32,0 %; ! Record identification longword macro NSA$W_REC_TYPE = 0,0,16,0 %; ! Record type macro NSA$W_REC_SUBTYPE = 2,0,16,0 %; ! Record subtype macro NSA$B_REC_SEQNUM = 4,0,8,0 %; ! This records sequence number macro NSA$B_REC_SEQLAST = 5,0,8,0 %; ! Last records sequence number macro NSA$B_REC_FLAGS = 6,0,8,0 %; ! Record flags byte macro NSA$V_REC_FLAGS_PKTCON = 6,0,1,0 %; ! Last packet in record is ! continued in next record macro NSA$B_REC_PKTNUM = 7,0,8,0 %; ! Number of data packets in record macro NSA$W_REC_PKTOFF = 8,0,16,0 %; ! Offset to first packet macro NSA$W_REC_PKTHDRSIZ = 10,0,16,0 %; ! Data packet header size macro NSA$L_REC_EPID = 12,0,32,0 %; ! Extended PID macro NSA$Q_REC_TIME = 16,0,0,0 %; literal NSA$S_REC_TIME = 8; ! Event time (EXE$GQ_SYSTIME) macro NSA$T_REC_CLUSNAM = 24,0,0,0 %; literal NSA$S_REC_CLUSNAM = 16; ! Cluster node name macro NSA$T_REC_PROCNAM = 40,0,0,0 %; literal NSA$S_REC_PROCNAM = 16; ! Process name macro NSA$T_REC_USERNAM = 56,0,0,0 %; literal NSA$S_REC_USERNAM = 12; ! username macro NSA$T_REC_ACCTNAM = 68,0,0,0 %; literal NSA$S_REC_ACCTNAM = 8; ! Account name ! + ! Data packet type definitions ! - literal NSA$K_PKTTYP_IMGNAM = 1; ! Image name packet literal NSA$K_PKTTYP_FACMOD = 2; ! File access mode literal NSA$K_PKTTYP_PRIVUSED = 3; ! Privilege used to access file literal NSA$K_PKTTYP_FILNAM = 4; ! File name literal NSA$K_PKTTYP_DEVNAM = 5; ! Device name literal NSA$K_PKTTYP_LOGNAM = 6; ! Logical name literal NSA$K_PKTTYP_VOLNAM = 7; ! Volume name literal NSA$K_PKTTYP_VOLSNAM = 8; ! Volume set name literal NSA$K_PKTTYP_NODENAM = 9; ! Node name literal NSA$K_PKTTYP_USERNAM = 10; ! User name literal NSA$K_PKTTYP_PASSWORD = 11; ! Password literal NSA$K_PKTTYP_UIC = 12; ! User identification code literal NSA$K_PKTTYP_VOLPRO = 13; ! Volume protection literal NSA$K_PKTTYP_MOUFLG = 14; ! Mount flags literal NSA$K_PKTTYP_DMOUFLG = 15; ! Dismount flags literal NSA$K_PKTTYP_NODEID = 16; ! Node ID literal NSA$K_PKTTYP_EPID = 17; ! Extended PID literal NSA$K_PKTTYP_SYSUAFF = 18; ! System UAF record fields literal NSA$K_PKTTYP_STATUS = 19; ! Status longword literal NSA$K_PKTTYP_SECNAM = 20; ! Global section name literal NSA$K_PKTTYP_PRIVS = 21; ! Full privilege mask literal NSA$K_PKTTYP_INSFLG = 22; ! Install flags literal NSA$K_PKTTYP_IDNAME = 23; ! Identifier name literal NSA$K_PKTTYP_IDVAL = 24; ! Identifier value literal NSA$K_PKTTYP_IDATTR = 25; ! Identifier attributes literal NSA$K_PKTTYP_HOLDER = 26; ! Identifier holder literal NSA$K_PKTTYP_AUDIT = 27; ! Audit item literal NSA$K_PKTTYP_DEFUSERNAM = 28; ! Default proxy name literal NSA$K_PKTTYP_OLDUSERNAM = 29; ! Old proxy name literal NSA$K_PKTTYP_OLDDEFUNAM = 30; ! Old default local proxy name literal NSA$K_PKTTYP_OLDNODENAM = 31; ! Old remote node name literal NSA$K_PKTTYPNUM = 31; ! + ! Data packet offset definitions ! - literal NSA$C_PKTHDR_LENGTH = 4; literal NSA$K_PKTHDR_LENGTH = 4; literal NSA$M_PKT_INS_OPEN = %X'2'; literal NSA$M_PKT_INS_HDR = %X'4'; literal NSA$M_PKT_INS_SHARE = %X'8'; literal NSA$M_PKT_INS_EXEC = %X'10'; literal NSA$M_PKT_INS_WRITE = %X'20'; literal NSA$M_PKT_INS_PRIV = %X'40'; literal NSA$M_PKT_INS_PROT = %X'80'; literal NSA$M_PKT_INS_NOPRG = %X'100'; literal NSA$M_PKT_INS_ACC = %X'200'; literal NSA$M_PKT_INS_RESIDENT = %X'400'; literal NSA$S_NSAPKTDEF = 448; macro NSA$W_PKT_TYPE = -4,0,16,0 %; ! Packet data type macro NSA$W_PKT_SIZE = -2,0,16,0 %; ! Packet size macro NSA$T_PKT_DATA = 0,0,0,0 %; macro NSA$T_PKT_IMGNAM = 0,0,0,0 %; literal NSA$S_PKT_IMGNAM = 444; ! Image name macro NSA$L_PKT_FACMOD = 0,0,32,0 %; ! File access mode macro NSA$L_PKT_PRIVUSED = 0,0,32,0 %; ! Privilege used to access file macro NSA$T_PKT_FILNAM = 0,0,0,0 %; literal NSA$S_PKT_FILNAM = 444; ! File name macro NSA$T_PKT_DEVNAM = 0,0,0,0 %; literal NSA$S_PKT_DEVNAM = 64; ! Device and access port name macro NSA$T_PKT_LOGNAM = 0,0,0,0 %; literal NSA$S_PKT_LOGNAM = 255; ! Logical name macro NSA$T_PKT_VOLNAM = 0,0,0,0 %; literal NSA$S_PKT_VOLNAM = 12; ! Volume name macro NSA$T_PKT_VOLSNAM = 0,0,0,0 %; literal NSA$S_PKT_VOLSNAM = 12; ! Volume set name macro NSA$T_PKT_NODENAM = 0,0,0,0 %; literal NSA$S_PKT_NODENAM = 6; ! Node name macro NSA$T_PKT_USERNAM = 0,0,0,0 %; literal NSA$S_PKT_USERNAM = 32; ! User name macro NSA$T_PKT_PASSWORD = 0,0,0,0 %; literal NSA$S_PKT_PASSWORD = 32; ! Password macro NSA$L_PKT_UIC = 0,0,32,0 %; ! Volume UIC macro NSA$W_PKT_VOLPRO = 0,0,16,0 %; ! Volume protection macro NSA$L_PKT_MOUFLG = 0,0,32,0 %; ! Mount flags macro NSA$W_PKT_DMOUFLG = 0,0,16,0 %; ! Dismount flags macro NSA$Q_PKT_NODEID = 0,0,0,0 %; literal NSA$S_PKT_NODEID = 8; ! Node ID macro NSA$L_PKT_EPID = 0,0,32,0 %; ! Extended PID macro NSA$Q_PKT_SYSUAFF = 0,0,0,0 %; literal NSA$S_PKT_SYSUAFF = 8; ! System UAF record fields macro NSA$L_PKT_STATUS = 0,0,32,0 %; ! Status longword macro NSA$T_PKT_SECNAM = 0,0,0,0 %; literal NSA$S_PKT_SECNAM = 54; ! Global section name macro NSA$Q_PKT_PRIVS = 0,0,0,0 %; literal NSA$S_PKT_PRIVS = 8; ! Full privilege mask macro NSA$L_PKT_INSFLG = 0,0,32,0 %; ! Install flags macro NSA$V_PKT_INS_OPEN = 0,1,1,0 %; ! /OPEN macro NSA$V_PKT_INS_HDR = 0,2,1,0 %; ! /HEADER_RESIDENT macro NSA$V_PKT_INS_SHARE = 0,3,1,0 %; ! /SHARE macro NSA$V_PKT_INS_EXEC = 0,4,1,0 %; ! /EXECUTE macro NSA$V_PKT_INS_WRITE = 0,5,1,0 %; ! /WRITE macro NSA$V_PKT_INS_PRIV = 0,6,1,0 %; ! /PRIVILEGE macro NSA$V_PKT_INS_PROT = 0,7,1,0 %; ! /PROTECTED macro NSA$V_PKT_INS_NOPRG = 0,8,1,0 %; ! /NOPURGE macro NSA$V_PKT_INS_ACC = 0,9,1,0 %; ! /ACCOUNTING macro NSA$V_PKT_INS_RESIDENT = 0,10,1,0 %; ! /RESIDENT macro NSA$T_PKT_IDNAME = 0,0,0,0 %; literal NSA$S_PKT_IDNAME = 32; ! Identifier name macro NSA$L_PKT_IDVAL = 0,0,32,0 %; ! Identifier value macro NSA$L_PKT_IDATTR = 0,0,32,0 %; ! Identifier attributes macro NSA$Q_PKT_HOLDER = 0,0,0,0 %; literal NSA$S_PKT_HOLDER = 8; ! Identifier holder macro NSA$R_PKT_AUDIT = 0,0,0,0 %; ! Audit item (not used) macro NSA$T_PKT_DEFUSERNAM = 0,0,0,0 %; literal NSA$S_PKT_DEFUSERNAM = 32; ! Default proxy name macro NSA$T_PKT_OLDUSERNAM = 0,0,0,0 %; literal NSA$S_PKT_OLDUSERNAM = 32; ! Old proxy name macro NSA$T_PKT_OLDDEFUNAM = 0,0,0,0 %; literal NSA$S_PKT_OLDDEFUNAM = 32; ! Old default local proxy name macro NSA$T_PKT_OLDNODENAM = 0,0,0,0 %; literal NSA$S_PKT_OLDNODENAM = 6; ! Old remote node name !*** MODULE $OPRDEF *** ! + ! OPERATOR COMMUNICATIONS MESSAGE TYPES AND VALUES These are now obsolete. ! - ! OPERATOR MESSAGE TYPES literal OPR$_TERMENABL = 1; ! ENABLE TERMINAL literal OPR$_LOGINIT = 2; ! INITIALIZE THE LOG literal OPR$_OPRQST = 3; ! OPERATOR REQUEST literal OPR$_OPREPLY = 4; ! OPERATOR REPLY literal OPR$M_CENTRAL = %X'1'; literal OPR$M_PRINTER = %X'2'; literal OPR$M_TAPES = %X'4'; literal OPR$M_DISKS = %X'8'; literal OPR$M_DEVICES = %X'10'; literal OPR$M_USER1 = %X'1FFE0'; literal OPR$M_USER2 = %X'20000'; literal OPR$M_USER3 = %X'40000'; literal OPR$M_USER4 = %X'80000'; literal OPR$M_USER5 = %X'100000'; literal OPR$M_USER6 = %X'200000'; literal OPR$M_USER7 = %X'400000'; literal OPR$M_USER8 = %X'800000'; literal OPR$M_USER9 = %X'1000000'; literal OPR$M_USER10 = %X'2000000'; literal OPR$M_USER11 = %X'4000000'; literal OPR$M_USER12 = %X'8000000'; literal OPR$S_OPRDEF = 4; ! Obsolete. macro OPR$V_CENTRAL = 0,0,1,0 %; ! Obsolete. macro OPR$V_PRINTER = 0,1,1,0 %; ! Obsolete. macro OPR$V_TAPES = 0,2,1,0 %; ! Obsolete. macro OPR$V_DISKS = 0,3,1,0 %; ! Obsolete. macro OPR$V_DEVICES = 0,4,1,0 %; ! Obsolete. macro OPR$V_USER1 = 0,5,12,0 %; literal OPR$S_USER1 = 12; ! Obsolete. macro OPR$V_USER2 = 0,17,1,0 %; ! Obsolete. macro OPR$V_USER3 = 0,18,1,0 %; ! Obsolete. macro OPR$V_USER4 = 0,19,1,0 %; ! Obsolete. macro OPR$V_USER5 = 0,20,1,0 %; ! Obsolete. macro OPR$V_USER6 = 0,21,1,0 %; ! Obsolete. macro OPR$V_USER7 = 0,22,1,0 %; ! Obsolete. macro OPR$V_USER8 = 0,23,1,0 %; ! Obsolete. macro OPR$V_USER9 = 0,24,1,0 %; ! Obsolete. macro OPR$V_USER10 = 0,25,1,0 %; ! Obsolete. macro OPR$V_USER11 = 0,26,1,0 %; ! Obsolete. macro OPR$V_USER12 = 0,27,1,0 %; ! Obsolete. !*** MODULE $OSSDDEF *** ! ! Operating System Specific Data area offset definitions for the IA64 ! VMS calling standard. ! ! ! Spill Data triple ! literal OSSD$M_REG = %X'1F'; literal OSSD$M_MBZ_5_7 = %X'E0'; literal OSSD$M_TREG = %X'7F00'; literal OSSD$M_MBZ_15 = %X'8000'; literal OSSD$S_OSSD_SPILL_DATA = 3; macro OSSD$V_REG = 0,0,5,0 %; literal OSSD$S_REG = 5; ! Static general register being saved macro OSSD$V_MBZ_5_7 = 0,5,3,0 %; literal OSSD$S_MBZ_5_7 = 3; ! MBZ macro OSSD$V_TREG = 0,8,7,0 %; literal OSSD$S_TREG = 7; ! Target register for save or zero for restore macro OSSD$V_MBZ_15 = 0,15,1,0 %; ! MBZ macro OSSD$B_REG_BYTE = 0,0,8,0 %; ! Byte containing 5-bit REG field macro OSSD$B_TREG_BYTE = 1,0,8,0 %; ! Byte containing 7-bit TREG field macro OSSD$T_T = 2,0,8,0 %; literal OSSD$S_T = 1; ! ULEB128 slot offset to save/restore instruction ! ! OSSD layout for general and caller spill register information segments ! literal OSSD$M_TYPE = %X'7FFF'; literal OSSD$K_GENERAL_INFO = 1; ! General info (always one quadword) literal OSSD$K_CALL_SPILL_INFO = 2; ! Caller spill info (variable length) literal OSSD$K_CONTEXT_INFO = 3; ! Context info (always one quadword) literal OSSD$M_S = %X'8000'; literal OSSD$M_EXCEPTION_MODE = %X'70000'; literal OSSD$K_EXC_MODE_SIGNAL = 0; ! Signal literal OSSD$K_EXC_MODE_SIGNAL_ALL = 1; ! Signal all literal OSSD$K_EXC_MODE_SIGNAL_SILENT = 2; ! Signal silent literal OSSD$K_EXC_MODE_FULL_IEEE = 3; ! Signal full IEEE literal OSSD$K_EXC_MODE_CALLER = 4; ! Use caller's mode literal OSSD$M_TARGET_INVO = %X'80000'; literal OSSD$M_BASE_FRAME = %X'100000'; literal OSSD$M_HANDLER_REINVOKABLE = %X'200000'; literal OSSD$M_AST_FRAME = %X'400000'; literal OSSD$M_EXCEPTION_FRAME = %X'800000'; literal OSSD$M_TIE_FRAME = %X'1000000'; literal OSSD$M_BOTTOM_OF_STACK = %X'2000000'; literal OSSD$M_HANDLER_DATA_VALID = %X'4000000'; literal OSSD$M_SS_DISPATCH_FRAME = %X'8000000'; literal OSSD$M_KP_START_FRAME = %X'10000000'; literal OSSD$M_FRAMELESS_HELPER = %X'20000000'; literal OSSD$M_MBZ_30_63 = %X'FFFFFFFFC0000000'; literal OSSD$K_GENERAL_INFO_LENGTH = 8; ! Size of general data segment literal OSSD$M_CONTEXT_TYPE = %X'FF0000'; literal OSSD$K_CTX_TYPED = 0; ! A VMS typed data structure literal OSSD$K_CTX_CHFCTX = 1; ! A CHFCTX block literal OSSD$M_CONTEXT_GR = %X'FF000000'; literal OSSD$M_CONTEXT_OFFSET = %X'FFFFFF00000000'; literal OSSD$M_CONTEXT_HINT = %X'FF00000000000000'; literal OSSD$K_HINT_EXCEPTION = 1; ! Exception dispatcher literal OSSD$K_HINT_SS = 2; ! System Service dispatcher literal OSSD$K_HINT_AST = 3; ! AST dispatcher literal OSSD$K_HINT_KP_START = 4; ! KP_START frame literal OSSD$K_CONTEXT_INFO_LENGTH = 8; ! Size of context info segment literal OSSD$S_OSSDDEF = 8; macro OSSD$Q_GENERAL_INFO_SEGMENT = 0,0,0,0 %; literal OSSD$S_GENERAL_INFO_SEGMENT = 8; ! Entire general info segment macro OSSD$V_TYPE = 0,0,15,0 %; literal OSSD$S_TYPE = 15; ! OSSD segment type macro OSSD$V_S = 0,15,1,0 %; ! Continuation marker macro OSSD$V_EXCEPTION_MODE = 0,16,3,0 %; literal OSSD$S_EXCEPTION_MODE = 3; ! Desired exception-reporting behavior macro OSSD$V_TARGET_INVO = 0,19,1,0 %; ! Invoke handler when unwind target macro OSSD$V_BASE_FRAME = 0,20,1,0 %; ! Logical base frame of stack macro OSSD$V_HANDLER_REINVOKABLE = 0,21,1,0 %; ! Handler may be invoked when already active macro OSSD$V_AST_FRAME = 0,22,1,0 %; ! AST dispatch frame macro OSSD$V_EXCEPTION_FRAME = 0,23,1,0 %; ! Exception dispatch frame macro OSSD$V_TIE_FRAME = 0,24,1,0 %; ! Frame created by Translated Image Executive macro OSSD$V_BOTTOM_OF_STACK = 0,25,1,0 %; ! End of call stack (no predecessors) macro OSSD$V_HANDLER_DATA_VALID = 0,26,1,0 %; ! Exception handler data field exists in unwind info macro OSSD$V_SS_DISPATCH_FRAME = 0,27,1,0 %; ! System Service dispatch frame macro OSSD$V_KP_START_FRAME = 0,28,1,0 %; ! Used to tag EXE$KP_START macro OSSD$V_FRAMELESS_HELPER = 0,29,1,0 %; ! Tags code executing in context of another routine whose IP is in B0 macro OSSD$V_MBZ_30_63 = 0,30,34,0 %; literal OSSD$S_MBZ_30_63 = 34; ! MBZ macro OSSD$W_LENGTH = 2,0,16,0 %; ! # quadwords in this segment macro OSSD$T_SPILL_DATA = 4,0,24,0 %; literal OSSD$S_SPILL_DATA = 3; ! Start of first spill data triple macro OSSD$Q_CONTEXT_INFO_SEGMENT = 0,0,0,0 %; literal OSSD$S_CONTEXT_INFO_SEGMENT = 8; ! Entire context info segment macro OSSD$V_CONTEXT_TYPE = 0,16,8,0 %; literal OSSD$S_CONTEXT_TYPE = 8; ! Type of context block described macro OSSD$V_CONTEXT_GR = 0,24,8,0 %; literal OSSD$S_CONTEXT_GR = 8; ! GR containing pointer to context block macro OSSD$V_CONTEXT_OFFSET = 4,0,24,1 %; literal OSSD$S_CONTEXT_OFFSET = 24; ! Offset (in octawords) from SP, or GR macro OSSD$V_CONTEXT_HINT = 4,24,8,0 %; literal OSSD$S_CONTEXT_HINT = 8; ! Hint as to purpose of context block ! Hints: (0 = no hint) ! The following macro can be used in IAS code to create a context info OSSD ! segment. Cut and paste to your IAS module ! ! #define __CONTEXT_OSSD(type,gr,offset,hint) \ ! .vms_ossd ((hint) << OSSD$V_CONTEXT_HINT) | \ ! (((offset) & 0xFFFFFF) << OSSD$V_CONTEXT_OFFSET) | \ ! ((gr) << OSSD$V_CONTEXT_GR) | \ ! ((type) << OSSD$V_CONTEXT_TYPE) | OSSD$K_CONTEXT_INFO ! !*** MODULE $OSSDEF *** ! + ! Object Security Service processing flag ! and itemcode definitions. ! - literal OSS$M_WLOCK = %X'1'; literal OSS$M_RELCTX = %X'2'; literal OSS$M_LOCAL = %X'4'; literal OSS$S_OSSDEF = 1; macro OSS$V_WLOCK = 0,0,1,0 %; ! Maintain Write lock macro OSS$V_RELCTX = 0,1,1,0 %; ! Release context macro OSS$V_LOCAL = 0,2,1,0 %; ! update local profile only literal OSS$_ACCESS_NAMES = 1; ! literal OSS$_ACCESS_NAMES_LENGTH = 2; ! literal OSS$_ACL_ADD_ENTRY = 3; ! literal OSS$_ACL_DELETE_ENTRY = 4; ! literal OSS$_ACL_DELETE = 5; ! literal OSS$_ACL_DELETE_ALL = 6; ! literal OSS$_ACL_FIND_ENTRY = 7; ! literal OSS$_ACL_FIND_NEXT = 8; ! literal OSS$_ACL_FIND_TYPE = 9; ! literal OSS$_ACL_GRANT_ACE = 10; ! literal OSS$_ACL_LENGTH = 11; ! literal OSS$_ACL_MODIFY_ENTRY = 12; ! literal OSS$_ACL_POSITION = 13; ! literal OSS$_ACL_POSITION_TOP = 14; ! literal OSS$_ACL_POSITION_BOTTOM = 15; ! literal OSS$_ACL_READ_ENTRY = 16; ! literal OSS$_ACL_READ = 17; ! literal OSS$_MAX_CLASS = 18; ! literal OSS$_MIN_CLASS = 19; ! literal OSS$_NEXT_OBJECT = 20; ! literal OSS$_OWNER = 21; ! literal OSS$_PROTECTION = 22; ! literal OSS$_SYS_PROT = 23; ! literal OSS$_OWN_PROT = 24; ! literal OSS$_GRP_PROT = 25; ! literal OSS$_WOR_PROT = 26; ! literal OSS$_CLASS_NAME = 27; ! literal OSS$_FIRST_TEMPLATE = 28; ! literal OSS$_NEXT_TEMPLATE = 29; ! literal OSS$_OBJECT_NAME = 30; ! literal OSS$_ACCESS_CLASS_NAME = 31; ! literal OSS$_DAMAGED_ACL = 32; ! literal OSS$_IN_TRANSITION = 33; ! literal OSS$_TRANQUILITY_COUNT = 34; literal OSS$_POSIX_GID = 35; ! Posix Group ID literal OSS$_POSIX_GRP_MODE = 36; ! Posix Group Mode Permission literal OSS$_POSIX_MODE = 37; ! Posix Mode Permissions (all) literal OSS$_POSIX_SGID = 38; ! Posix SETGID Effective Group ID literal OSS$_POSIX_SUID = 39; ! Posix SETUID Effective User ID literal OSS$_ACCESS_BITNAMES = 1; literal OSS$_ACCESS_BITNAMES_LENGTH = 2; literal OSS$_ACL_ADDACE = 3; literal OSS$_ACL_DELACE = 4; literal OSS$_ACL_FNDACE = 7; literal OSS$_ACL_FNDNXT = 8; literal OSS$_ACL_FNDTYP = 9; literal OSS$_ACL_MODACE = 12; literal OSS$_ACL_READACE = 16; !*** MODULE PAGEDEF *** literal MMG$C_VAX_PAGE_SIZE = 512; ! SIZE OF VAX PAGE literal MMG$C_ALPHA_MAX_PAGE_SIZE = 65536; ! MAX. PAGE SIZE literal IOC$C_DISK_BLKSIZ = 512; ! STANDARD DISK BLOCK SIZE literal IOC$C_CD_DVD_BLKSIZ = 2048; ! Typical CD and DVD sector size literal IOC$M_BLOCK_BYTEMASK = %X'1FF'; literal IOC$M_BLOCK_BLKNUM = %X'FFFFFE00'; literal IOC$S_BLOCKDEF = 4; macro IOC$V_BLOCK_BYTEMASK = 0,0,9,0 %; literal IOC$S_BLOCK_BYTEMASK = 9; ! BYTE VIELD macro IOC$V_BLOCK_BLKNUM = 0,9,23,0 %; literal IOC$S_BLOCK_BLKNUM = 23; ! BLOCK NUMBER literal IOC$M_DVDBLK_BYTEMASK = %X'7FF'; literal IOC$M_DVDBLK_BLKNUM = %X'FFFFF800'; literal IOC$S_DVDBLKDEF = 4; macro IOC$V_DVDBLK_BYTEMASK = 0,0,11,0 %; literal IOC$S_DVDBLK_BYTEMASK = 11; ! CD/DVD Vield macro IOC$V_DVDBLK_BLKNUM = 0,11,21,0 %; literal IOC$S_DVDBLK_BLKNUM = 21; ! CD/DVD Block Number !*** MODULE $PCCDEF *** ! + ! PRINTER/TERMINAL CARRIAGE CONTROL SPECIFIERS ! -- literal PCC$M_CHAR = %X'1F'; literal PCC$M_EIGHTBIT = %X'40'; literal PCC$M_SINGLE = %X'80'; literal PCC$M_LINECNT = %X'7F'; literal PCC$_FTN_SINGLE = 32; ! SINGLE SPACE literal PCC$_FTN_DOUBLE = 48; ! DOUBLE SPACE literal PCC$_FTN_PAGE = 49; ! PAGE SPACE literal PCC$_FTN_OVRPRT = 43; ! OVER PRINT literal PCC$_FTN_PROMPT = 36; ! PROMPT literal PCC$S_PCCDEF = 4; macro PCC$W_FORTRAN = 0,0,16,0 %; ! FORTRAN FIELD macro PCC$B_PREFIX = 2,0,8,0 %; macro PCC$B_POSTFIX = 3,0,8,0 %; ! POSTFIX FIELD macro PCC$V_CHAR = 3,0,5,0 %; literal PCC$S_CHAR = 5; ! CHARACTER FIELD macro PCC$V_EIGHTBIT = 3,6,1,0 %; ! EIGHTBIT CHARACTER SET macro PCC$V_SINGLE = 3,7,1,0 %; ! SINGLE CHARACTER macro PCC$V_LINECNT = 3,0,7,0 %; literal PCC$S_LINECNT = 7; ! LINE COUNT FOR NEWLINES ! FORTRAN CONSTANTS !*** MODULE $PDSCDEF *** ! ! Procedure descriptor offset definitions for the Alpha-32 calling standard. ! This definition includes the offsets and fields for stack frame (SF) and ! register frame (RF) procedure descriptors. ! literal PDSC$K_KIND_BOUND = 0; ! bound procedure literal PDSC$K_KIND_NULL = 8; ! null procedure literal PDSC$K_KIND_FP_STACK = 9; ! SF procedure literal PDSC$K_KIND_FP_REGISTER = 10; ! RF procedure literal PDSC$M_HANDLER_VALID = %X'10'; literal PDSC$M_HANDLER_REINVOKABLE = %X'20'; literal PDSC$M_HANDLER_DATA_VALID = %X'40'; literal PDSC$M_BASE_REG_IS_FP = %X'80'; literal PDSC$M_REI_RETURN = %X'100'; literal PDSC$M_STACK_RETURN_VALUE = %X'200'; literal PDSC$M_BASE_FRAME = %X'400'; literal PDSC$M_TARGET_INVO = %X'800'; literal PDSC$M_NATIVE = %X'1000'; literal PDSC$M_NO_JACKET = %X'2000'; literal PDSC$M_TIE_FRAME = %X'4000'; literal PDSC$M_FUNC_RETURN = %X'F'; literal PDSC$M_EXCEPTION_MODE = %X'70'; literal PDSC$K_EXC_MODE_SIGNAL = 0; ! signal literal PDSC$K_EXC_MODE_SIGNAL_ALL = 1; ! signal all literal PDSC$K_EXC_MODE_SIGNAL_SILENT = 2; ! signal silent literal PDSC$K_EXC_MODE_FULL_IEEE = 3; ! signal full ieee literal PDSC$K_EXC_MODE_CALLER = 4; ! use caller's mode literal PDSC$K_NULL_SIZE = 16; ! length of NULL descriptor literal PDSC$K_BOUND_SIZE = 24; ! length of the basic bound precedure descriptor literal PDSC$K_MIN_BOUND_SIZE = 24; ! minimum size of the basic bound procedure descriptor literal PDSC$K_MIN_LENGTH_SF = 32; ! length of required portion of SF descriptor literal PDSC$K_MIN_STACK_SIZE = 32; ! min size of SF descriptor literal PDSC$K_MAX_STACK_SIZE = 48; ! max size of SF descriptor literal PDSC$K_MIN_LENGTH_RF = 24; ! length of required portion of RF descriptor literal PDSC$K_MIN_REGISTER_SIZE = 24; ! min size of RF descriptor literal PDSC$K_MAX_REGISTER_SIZE = 40; ! max size of RF descriptor literal PDSC$K_BOUND_ENVIRONMENT_SIZE = 32; ! length of the bound precedure descriptor with environment literal PDSC$S_PDSCDEF = 48; macro PDSC$W_FLAGS = 0,0,16,0 %; ! flags including procedure kind bitfield macro PDSC$V_KIND = 0,0,4,0 %; literal PDSC$S_KIND = 4; ! kind of procedure macro PDSC$V_HANDLER_VALID = 0,4,1,0 %; ! optional STACK_HANDLER or REG_HANDLER is present and valid macro PDSC$V_HANDLER_REINVOKABLE = 0,5,1,0 %; ! exception handler is reinvokable macro PDSC$V_HANDLER_DATA_VALID = 0,6,1,0 %; ! optional STACK_HANDLER_DATA or REG_HANDLER_DATA is present and valid macro PDSC$V_BASE_REG_IS_FP = 0,7,1,0 %; ! FP is also base register (vs. SP) macro PDSC$V_REI_RETURN = 0,8,1,0 %; ! exit from procedure via REI macro PDSC$V_STACK_RETURN_VALUE = 0,9,1,0 %; ! function value returned on stack macro PDSC$V_BASE_FRAME = 0,10,1,0 %; ! base frame indicator macro PDSC$V_TARGET_INVO = 0,11,1,0 %; ! unwind target invo handler to be called macro PDSC$V_NATIVE = 0,12,1,0 %; ! set to 1 for compiled code macro PDSC$V_NO_JACKET = 0,13,1,0 %; ! set to 1 for compiled code macro PDSC$V_TIE_FRAME = 0,14,1,0 %; ! must be 0 for compiled code macro PDSC$W_RSA_OFFSET = 2,0,16,1 %; ! offset to register save area from base (SF only) macro PDSC$B_SAVE_FP = 2,0,8,0 %; ! register number for saved FP (RF only) macro PDSC$B_SAVE_RA = 3,0,8,0 %; ! register number for saved return address (RF only) macro PDSC$B_ENTRY_RA = 4,0,8,1 %; ! register in which return address is passed macro PDSC$V_FUNC_RETURN = 5,0,4,0 %; literal PDSC$S_FUNC_RETURN = 4; ! register specificatons for function value return macro PDSC$V_EXCEPTION_MODE = 5,4,3,0 %; literal PDSC$S_EXCEPTION_MODE = 3; ! the caller's desired exception reporting behavior macro PDSC$W_SIGNATURE_OFFSET = 6,0,16,1 %; ! offset from procedure descriptor to signature macro PDSC$Q_ENTRY = 8,0,0,1 %; literal PDSC$S_ENTRY = 8; ! address of start of procedure code macro PDSC$L_ENTRY = 8,0,32,1 %; ! first longword is sign extended to quadword macro PDSC$L_SIZE = 16,0,32,0 %; ! size of fixed portion of stack macro PDSC$Q_PROC_VALUE = 16,0,0,1 %; literal PDSC$S_PROC_VALUE = 8; ! for bound procedure descriptor, macro PDSC$L_PROC_VALUE = 16,0,32,1 %; ! this value is a procedure descriptor. macro PDSC$R_KIND_SPECIFIC = 24,0,0,0 %; literal PDSC$S_KIND_SPECIFIC = 24; macro PDSC$L_IREG_MASK = 24,0,32,0 %; ! integer register save mask macro PDSC$L_FREG_MASK = 28,0,32,0 %; ! floating register save mask macro PDSC$Q_STACK_HANDLER = 32,0,0,1 %; literal PDSC$S_STACK_HANDLER = 8; ! absolute pointer to procedure descriptor (opt) macro PDSC$Q_STACK_HANDLER_DATA = 40,0,0,1 %; literal PDSC$S_STACK_HANDLER_DATA = 8; ! data for stack handler (opt) macro PDSC$Q_REG_HANDLER = 24,0,0,1 %; literal PDSC$S_REG_HANDLER = 8; ! absolute pointer to procedure descriptor (opt) macro PDSC$Q_REG_HANDLER_DATA = 32,0,0,1 %; literal PDSC$S_REG_HANDLER_DATA = 8; ! data for handler (opt) macro PDSC$L_ENVIRONMENT = 24,0,32,1 %; macro PDSC$Q_ENVIRONMENT = 24,0,0,1 %; literal PDSC$S_ENVIRONMENT = 8; literal PDSC$K_LKP_LENGTH = 16; ! Linkage pair size literal PDSC$S_PDSC_LKPDEF = 16; ! Linkage pair def macro PDSC$Q_LKP_ENTRY = 0,0,0,1 %; literal PDSC$S_LKP_ENTRY = 8; ! Entry point addr macro PDSC$PS_LKP_ENTRY = 0,0,32,1 %; macro PDSC$Q_LKP_PROC_VALUE = 8,0,0,1 %; literal PDSC$S_LKP_PROC_VALUE = 8; ! Proc desc addr macro PDSC$PS_LKP_PROC_VALUE = 8,0,32,1 %; literal LKP$K_SIZE = 16; ! Linkage pair size literal LKP$S_LKPDEF = 16; ! Linkage pair def macro LKP$Q_ENTRY = 0,0,0,1 %; literal LKP$S_ENTRY = 8; macro LKP$PS_ENTRY = 0,0,32,1 %; macro LKP$Q_PROC_VALUE = 8,0,0,1 %; literal LKP$S_PROC_VALUE = 8; macro LKP$PS_PROC_VALUE = 8,0,32,1 %; !*** MODULE $PMMDEF *** ! + ! PFN memory data structure definition. This structure is used to access the ! fields within the PFN memory map returned by $GETSYI. $GETSYI copies the ! contents of the pool packet stored at MMG$GL_SYI_PFN_MEMORY_MAP to a ! user-supplied buffer. ! - literal PMM$m_console = %X'1'; literal PMM$m_openvms = %X'2'; literal PMM$m_available = %X'4'; literal PMM$m_base = %X'8'; literal PMM$m_galaxy_shared = %X'10'; literal PMM$m_undefined_5_15 = %X'FFE0'; literal PMM$C_LENGTH = 12; ! Length of structure literal PMM$K_LENGTH = 12; ! Length of structure literal PMM$S_PMM = 12; macro PMM$W_LENGTH = 0,0,16,1 %; ! Size of a PMM structure macro PMM$w_flags = 2,0,16,0 %; macro PMM$v_console = 2,0,1,0 %; ! Used by Console macro PMM$v_openvms = 2,1,1,0 %; ! Used by OpenVMS macro PMM$v_available = 2,2,1,0 %; ! Available for Other Uses macro PMM$v_base = 2,3,1,0 %; ! Galaxy base memory segment macro PMM$v_galaxy_shared = 2,4,1,0 %; ! Galaxy shared memory macro PMM$v_undefined_5_15 = 2,5,11,0 %; literal PMM$s_undefined_5_15 = 11; ! Undefined bits should be zero macro PMM$l_start_pfn = 4,0,32,0 %; ! First PFN in this cluster macro PMM$l_pfn_count = 8,0,32,0 %; ! Number of PFNs in this cluster ! Expanded version for larger PFNs literal PMM64$m_console = %X'1'; literal PMM64$m_openvms = %X'2'; literal PMM64$m_available = %X'4'; literal PMM64$m_base = %X'8'; literal PMM64$m_galaxy_shared = %X'10'; literal PMM64$m_undefined_5_15 = %X'FFE0'; literal PMM64$C_LENGTH = 24; ! Length of structure literal PMM64$K_LENGTH = 24; ! Length of structure literal PMM64$S_PMM64 = 24; macro PMM64$W_LENGTH = 0,0,16,1 %; ! Size of a PMM structure macro PMM64$w_flags = 2,0,16,0 %; macro PMM64$v_console = 2,0,1,0 %; ! Used by Console macro PMM64$v_openvms = 2,1,1,0 %; ! Used by OpenVMS macro PMM64$v_available = 2,2,1,0 %; ! Available for Other Uses macro PMM64$v_base = 2,3,1,0 %; ! Galaxy base memory segment macro PMM64$v_galaxy_shared = 2,4,1,0 %; ! Galaxy shared memory macro PMM64$v_undefined_5_15 = 2,5,11,0 %; literal PMM64$s_undefined_5_15 = 11; ! Undefined bits should be zero macro PMM64$l_reserved = 4,0,32,0 %; ! padding macro PMM64$q_start_pfn = 8,0,0,0 %; literal PMM64$s_start_pfn = 8; ! First PFN in this cluster macro PMM64$q_pfn_count = 16,0,0,0 %; literal PMM64$s_pfn_count = 8; ! Number of PFNs in this cluster !*** MODULE $POSIX_SERVICEDEF *** ! The following definitions are passed in the ctrl parameter. literal POSIX$C_BLOCK_FORK = 1; ! block fork execution literal POSIX$C_UNBLOCK_FORK = 2; ! unblock fork execution literal POSIX$C_DISABLE_FORK = 3; ! disable fork literal POSIX$C_SETUP_CALLBACK = 4; ! setup image callback literal POSIX$C_SYSTEM_CALLBACK = 5; ! setup system callback literal POSIX$C_PROCESS_CALLBACK = 6; ! setup process permanent callback literal POSIX$C_CANCEL_CALLBACK = 7; ! cancel a callback literal POSIX$C_CONTINUE = 8; ! continue callbacks literal POSIX$C_TEST_CALLS = 9; ! temporary value for testing literal POSIX$C_MAX_CNTRL = 9; literal POSIX$K_MAX_CNTRL = 9; ! ! The following definitions are for the 'when' mask. They define when ! callbacks are to be made. ! literal POSIX$V_CALL_BEFORE_COPY = 0; literal POSIX$V_CALL_IN_CHILD = 1; literal POSIX$V_CALL_AFTER_CHILD = 2; literal POSIX$V_CALL_ON_FAILURE = 3; literal POSIX$V_CALL_BEFORE_COPY_FAIL = 4; literal POSIX$V_CALL_IN_CHILD_FAIL = 5; literal POSIX$V_CALL_AFTER_CHILD_FAIL = 6; literal POSIX$M_CALL_BEFORE_COPY = 1; literal POSIX$M_CALL_IN_CHILD = 2; literal POSIX$M_CALL_AFTER_CHILD = 4; literal POSIX$M_CALL_ON_FAILURE = 8; literal POSIX$M_CALL_BEFORE_COPY_FAIL = 16; literal POSIX$M_CALL_IN_CHILD_FAIL = 32; literal POSIX$M_CALL_AFTER_CHILD_FAIL = 64; !*** MODULE $POWERDEF *** ! + ! ! Power Control Definitions ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! (preceeding the ENDlistname item) so that users will not have ! to recompile. ! - literal POWER$C_HIGH_PERF = 0; literal POWER$C_LOW_POWER = 1; literal POWER$C_EFFICIENCY = 2; literal POWER$C_OS_CONTROL = 3; ! Only works from kernel mode literal POWER$M_OS_CONTROL_OFF = 4; ! OR with the above. Only works from kernel mode !*** MODULE $PPROPDEF *** ! + ! ! Set Process Properties Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! (preceeding the ENDlistname item) so that users will not have ! to relink. ! - ! Property definitions literal PPROP$C_PARSE_STYLE_TEMP = 0; ! Change the parse style for the life of an image literal PPROP$C_PARSE_STYLE_PERM = 1; ! Change the parse style for the life of the process literal PPROP$C_HOME_RAD = 2; ! Change the home rad of the thread literal PPROP$C_CASE_LOOKUP_TEMP = 3; ! Change the case lookup mode for the life of an image literal PPROP$C_CASE_LOOKUP_PERM = 4; ! Change the case lookup mode for the life of the process literal PPROP$C_MEDDLE_ENABLE = 5; ! Record the fact of alterations to process logical ! names or symbols literal PPROP$C_MEDDLE = 6; ! Process logical names or symbols have been altered literal PPROP$C_UNITS = 7; ! Change the units for the life of the process (blocks/bytes) literal PPROP$C_SS_LOG_ENABLE = 8; ! Enable system service logging for the process literal PPROP$C_SS_LOG_DISABLE = 9; ! Disable system service logging for the process literal PPROP$C_SS_LOG_UNLOAD = 10; ! Stop system service logging & delete buffers literal PPROP$C_TOKEN = 11; ! Change the DCL token size for the life of the process literal PPROP$C_DEADLOCK_WAIT = 12; ! Change per-process deadlock wait (in 10msec units) literal PPROP$C_SEARCH_SYMLINK_TEMP = 13; ! Change the symlink search mode for the life of an image literal PPROP$C_SEARCH_SYMLINK_PERM = 14; ! Change the symlink search mode for the life of the process literal PPROP$C_KERNEL_THREAD_LIMIT = 15; ! Change per-process kernel thread limit ! Parse style definitions literal PARSE_STYLE$C_ODS2 = 0; ! Values for the above properties (old name) literal PARSE_STYLE$C_ODS5 = 1; ! Values for the above properties (old name) literal PARSE_STYLE$C_TRADITIONAL = 0; ! Values for the above properties (new name) literal PARSE_STYLE$C_EXTENDED = 1; ! Values for the above properties (new name) ! case lookup definitions literal PPROP$K_CASE_BLIND = 0; ! case blind operation literal PPROP$K_CASE_SENSITIVE = 1; ! case sensitive operation ! symlink search mode definitions ! NOTE: Symlink search mode encodings are coordinated across $JPIDEF, $LIBCQDEF, ! $LIBFILDEF, $PPROPDEF, and $NAMLDEF. literal PPROP$K_SEARCH_SYMLINK_NONE = 1; ! use no symlinks literal PPROP$K_SEARCH_SYMLINK_ALL = 2; ! use symlinks always literal PPROP$K_SEARCH_SYMLINK_NOELLIPS = 3; ! use symlinks except in ellipsis !*** MODULE $PQLDEF *** ! + ! PROCESS QUOTA LIST CODES ! - literal PQL$_LISTEND = 0; ! LIST END CODE (MUST BE FIRST) literal PQL$_ASTLM = 1; ! AST LIMIT literal PQL$_BIOLM = 2; ! BUFFERED I/O LIMIT literal PQL$_BYTLM = 3; ! BYTE LIMIT FOR BUFFERED I/O literal PQL$_CPULM = 4; ! CPU TIME LIMIT literal PQL$_DIOLM = 5; ! DIRECT I/O LIMIT literal PQL$_FILLM = 6; ! OPEN FILE LIMIT literal PQL$_PGFLQUOTA = 7; ! PAGING FILE QUOTA literal PQL$_PRCLM = 8; ! SUB-PROCESS LIMIT literal PQL$_TQELM = 9; ! TIMER QUEUE ENTRY LIMIT literal PQL$_WSQUOTA = 10; ! WORKING SET QUOTA literal PQL$_WSDEFAULT = 11; ! WORKING SET DEFAULT literal PQL$_ENQLM = 12; ! ENQUEUE LIMIT literal PQL$_WSEXTENT = 13; ! WORKING SET EXTENT LIMIT literal PQL$_JTQUOTA = 14; ! JOB-WIDE LOGICAL NAME TABLE CREATION QUOTA literal PQL$_LENGTH = 15; ! NUMBER OF QUOTAS (MUST BE LAST) !*** MODULE $PRCDEF *** ! + ! $CREPRC STATUS FLAGS AND ITEM CODES ! - literal PRC$M_SSRWAIT = %X'1'; literal PRC$M_SSFEXCU = %X'2'; literal PRC$M_PSWAPM = %X'4'; literal PRC$M_NOACNT = %X'8'; literal PRC$M_BATCH = %X'10'; literal PRC$M_HIBER = %X'20'; literal PRC$M_NOUAF = %X'40'; literal PRC$M_NETWRK = %X'80'; literal PRC$M_DISAWS = %X'100'; literal PRC$M_DETACH = %X'200'; literal PRC$M_INTER = %X'400'; literal PRC$M_IMGDMP = %X'800'; literal PRC$M_CLISPEC = %X'1000'; literal PRC$M_NOPASSWORD = %X'2000'; literal PRC$M_DEBUG = %X'4000'; literal PRC$M_DBGTRU = %X'8000'; literal PRC$M_SUBSYSTEM = %X'10000'; literal PRC$M_TCB = %X'20000'; literal PRC$M_NO_IMAGE_PRIVS = %X'40000'; literal PRC$M_PERM_SUBSYSTEM = %X'80000'; literal PRC$M_PARSE_EXTENDED = %X'100000'; literal PRC$M_INHERIT_PERSONA = %X'200000'; literal PRC$M_HOME_RAD = %X'400000'; literal PRC$M_CASE_SENSITIVE = %X'800000'; literal PRC$M_SPAWN_DETACHED = %X'1000000'; literal PRC$M_SSLOG_ENABLE = %X'2000000'; literal PRC$M_KT_LIMIT = %X'4000000'; literal PRC$M_LOGIN = %X'40'; literal PRC$S_PRCDEF = 4; macro PRC$V_SSRWAIT = 0,0,1,0 %; ! RESOURCE WAIT DISABLE macro PRC$V_SSFEXCU = 0,1,1,0 %; ! SYSTEM SERVICE FAIL EXCEPTION MODE macro PRC$V_PSWAPM = 0,2,1,0 %; ! PROCESS SWAP MODE macro PRC$V_NOACNT = 0,3,1,0 %; ! ACCOUNTING MESSAGE DISABLE macro PRC$V_BATCH = 0,4,1,0 %; ! BATCH INDICATOR macro PRC$V_HIBER = 0,5,1,0 %; ! HIBERNATE BEFORE CALLING INITIAL IMAGE macro PRC$V_NOUAF = 0,6,1,0 %; ! BYPASS LOGIN VERIFICATION FOR DETACHED PROC. macro PRC$V_NETWRK = 0,7,1,0 %; ! NETWORK INDICATOR macro PRC$V_DISAWS = 0,8,1,0 %; ! DISABLE WORKING SET ADJUST macro PRC$V_DETACH = 0,9,1,0 %; ! DETACHED PROCESS macro PRC$V_INTER = 0,10,1,0 %; ! INTERACTIVE INDICATOR macro PRC$V_IMGDMP = 0,11,1,0 %; ! IMAGE DUMP REQUESTED macro PRC$V_CLISPEC = 0,12,1,0 %; ! PASS CLI SPECIFICATIONS macro PRC$V_NOPASSWORD = 0,13,1,0 %; ! DON'T PROMPT FOR USERNAME AND PASSWORD macro PRC$V_DEBUG = 0,14,1,0 %; ! /DEBUG desired macro PRC$V_DBGTRU = 0,15,1,0 %; ! debugger present macro PRC$V_SUBSYSTEM = 0,16,1,0 %; ! inherit protected subsystem identifiers macro PRC$V_TCB = 0,17,1,0 %; ! process is part of TCB macro PRC$V_NO_IMAGE_PRIVS = 0,18,1,0 %; ! image privileges not to be propagated macro PRC$V_PERM_SUBSYSTEM = 0,19,1,0 %; ! make subsystem rights permanent macro PRC$V_PARSE_EXTENDED = 0,20,1,0 %; ! make new process have parse_style extended macro PRC$V_INHERIT_PERSONA = 0,21,1,0 %; ! process gets persona of caller macro PRC$V_HOME_RAD = 0,22,1,0 %; ! Home RAD specified by creator macro PRC$V_CASE_SENSITIVE = 0,23,1,0 %; ! Use CASE_LOOKUP = SENSITIVE macro PRC$V_SPAWN_DETACHED = 0,24,1,0 %; ! Spawn a detached process macro PRC$V_SSLOG_ENABLE = 0,25,1,0 %; ! Enable system service logging macro PRC$V_KT_LIMIT = 0,26,1,0 %; ! Kernel thread limit specified by creator macro PRC$V_LOGIN = 0,6,1,0 %; ! BYPASS LOGIN VERIFICATION FOR DETACHED PROC. literal PRC$M_IMPERSONATE = 512; ! Impersonate other - synonym for DETACH - 0x200 ! + ! ! Create Process Item List Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added at the END of the list so that ! users will not have to relink or reassemble. ! ! - literal PRC$_LISTEND = 0; ! End of list (must be first code) literal PRC$_PGFLCHAR = 1; ! Page file characteristics literal PRC$_PGFLINDEX = 2; ! Page file index literal PRC$_INPUT_ATT = 3; ! SYS$INPUT attributes literal PRC$_OUTPUT_ATT = 4; ! SYS$OUTPUT attributes literal PRC$_ERROR_ATT = 5; ! SYS$ERROR attributes literal PRC$_CLASS = 6; ! Process classification literal PRC$_SSLOG_FLAGS = 7; ! System service logging flags literal PRC$_SSLOG_BUFSIZE = 8; ! System service logging buffer size literal PRC$_SSLOG_BUFCNT = 9; ! System service logging buffer count !*** MODULE $PRDEF *** ! + ! PROCESSOR REGISTER DEFINITIONS ! ! The following IPR symbols are provided for the convenience ! of common Macro-32 code using the VAX MFPR/MTPR instructions ! to operate against IPRs that exist in both architectures ! architectures. Even Alpha-specific Macro-32 code would benefit ! since the compiler can calculate register live-ness around the ! VAX MFPR/MTPR instructions. ! ! The assigned values for the PR$_ipr symbols match the VAX ! IPR numbers themselves wherever possible. VAX IPR numbers that ! are extremely unlikely ever to be encountered are otherwise used. ! The compiler uses the VAX values to validate the invocation of ! MTPR/MFPR instructions. ! - literal PR$_ESP = 1; ! Executive Stack Pointer literal PR$_SSP = 2; ! Supervisor Stack Pointer literal PR$_USP = 3; ! User Stack Pointer literal PR$_ASN = 6; ! Address Space Number literal PR$_ASTEN = 48; ! AST Enabled Register (MFPR only) literal PR$_ASTSR = 49; ! AST Summary Register (MFPR only) literal PR$_DATFX = 23; ! Data Alignment Trap Fixup in PALcode Enable literal PR$_IPIR = 22; ! Interprocess Interrupt Request literal PR$_IPL = 18; ! Interrupt Priority Level literal PR$_MCES = 38; ! Machine Check Error Summary literal PR$_PCBB = 16; ! Privileged Context Block Base literal PR$_PME = 61; ! Performance Monitor Enable literal PR$_PRBR = 15; ! Processor Base Register literal PR$_SCBB = 17; ! System Control Block Base literal PR$_SIRR = 20; ! Software Interrupt Request literal PR$_SISR = 21; ! Software Interrupt Summary literal PR$_TBIA = 57; ! Translation Buffer Invalidate All literal PR$_TBIAP = 50; ! Translation Buffer Invalidate All Process literal PR$_TBIS = 58; ! Translation Buffer Invalidate Single - 32 bit VA literal PR$_TBIS_64 = 60; ! Translation Buffer Invalidate Single - 64 bit VA literal PR$_TBISD = 59; ! Translation Buffer Invalidate Single - 64 bit VA - D-stream only literal PR$_TBISI = 47; ! Translation Buffer Invalidate Single - 64 bit VA - I-stream only literal PR$_VPTB = 12; ! Virtual Page Table Base Register ! + ! PROCESSOR REGISTER FIELD DEFINITIONS ! - literal PR$_SID_TYP780 = 1; ! VAX 11/780 literal PR$_SID_TYP750 = 2; ! VAX 11/750 literal PR$_SID_TYP730 = 3; ! VAX 11/730 literal PR$_SID_TYP790 = 4; ! VAX 11/790 literal PR$_SID_TYP8SS = 5; ! Scorpio for now literal PR$_SID_TYP8NN = 6; ! Nautilus for now literal PR$_SID_TYPUV1 = 7; ! MicroVAX I literal PR$_SID_TYPUV2 = 8; ! MicroVAX II literal PR$_SID_TYP410 = 8; ! VAXstar literal PR$_SID_TYP009 = 9; ! Virtual VAX literal PR$_SID_TYP420 = 10; ! PVAX literal PR$_SID_TYP520 = 10; ! Cirrus I literal PR$_SID_TYP650 = 10; ! Mayfair literal PR$_SID_TYP9CC = 10; ! Calypso/XCP literal PR$_SID_TYP9CI = 10; literal PR$_SID_TYP60 = 10; ! Firefox literal PR$_SID_TYP670 = 11; ! KA670 (Pele) literal PR$_SID_TYP9RR = 11; ! XRP literal PR$_SID_TYP43 = 11; ! KA43 (RigelMAX) literal PR$_SID_TYP9AQ = 14; ! Aquarius literal PR$_SID_TYP8PS = 17; ! Polarstar literal PR$_SID_TYP1202 = 18; ! Mariah/XMP literal PR$_SID_TYP46 = 18; ! PV-Mariah literal PR$_SID_TYP600 = 19; literal PR$_SID_TYP690 = 19; literal PR$_SID_TYP700 = 19; literal PR$_SID_TYP1302 = 19; literal PR$_SID_TYP49 = 19; literal PR$_SID_TYP1303 = 19; literal PR$_SID_TYP660 = 20; ! KA660 (Spitfire) literal PR$_SID_TYP440 = 20; ! PVAX2 literal PR$_SID_TYP4A = 20; ! PCVAX literal PR$_SID_TYP550 = 20; ! Cirrus II literal PR$_SID_TYP1701 = 23; ! Laser/Neon literal PR$_SID_TYPMAX = 23; ! MAX LEGAL CPU TYPE literal PR$_SID_TYP_NOTAVAX = 128; ! Not a VAX (i.e. Alpha or some such) ! Chip CPU types literal PR$_SID_TYPUV = 8; ! MicroVAX chip ! MicroVAX chip CPU Subtypes literal PR$_XSID_UV_UV = 0; ! Generic MicroVAX (unused subtype) literal PR$_XSID_UV_UV2 = 1; ! MicroVAX II literal PR$_XSID_UV_410 = 4; ! VAXstar literal PR$_SID_TYPCV = 10; ! CVAX chip ! CVAX chip CPU Subtypes literal PR$_XSID_CV_CV = 0; ! Generic CVAX (unused subtype) literal PR$_XSID_CV_650 = 1; ! Mayfair literal PR$_XSID_CV_9CC = 2; ! Calypso/XCP literal PR$_XSID_CV_60 = 3; ! Firefox literal PR$_XSID_CV_420 = 4; ! PVAX literal PR$_XSID_CV_9CI = 5; literal PR$_XSID_CV_520 = 7; ! CIRRUS I literal PR$_SID_TYPRV = 11; ! Rigel chip ! Rigel chip CPU Subtypes literal PR$_XSID_RV_RV = 0; ! Generic Rigel (unused subtype) literal PR$_XSID_RV_670 = 1; ! KA670 (Pele) literal PR$_XSID_RV_9RR = 2; ! Calypso/XRP literal PR$_XSID_RV_43 = 4; ! KA43 (RigelMAX) literal PR$_SID_TYPV12 = 18; ! Mariah chip set ! Mariah chip CPU Subtypes literal PR$_XSID_V12_V12 = 0; ! Generic Mariah (unused subtype) literal PR$_XSID_V12_1202 = 2; ! MARIAH/XMP literal PR$_XSID_V12_46 = 4; ! PVAX- mariah subtype literal PR$_SID_TYPV13 = 19; literal PR$_XSID_V13_V13 = 0; literal PR$_XSID_V13_690 = 1; literal PR$_XSID_V13_1302 = 2; literal PR$_XSID_V13_1303 = 3; literal PR$_XSID_V13_49 = 4; literal PR$_XSID_V13_700 = 5; literal PR$_XSID_V13_600 = 6; literal PR$_SID_TYPV14 = 20; ! SOC Chip SID ! SOC chip CPU subtypes literal PR$_XSID_V14_V14 = 0; ! unused subtype literal PR$_XSID_V14_660 = 1; ! KA660 (Spitfire) literal PR$_XSID_V14_440 = 4; ! PVAX2 subtype literal PR$_XSID_V14_4A = 5; ! PCVAX subtype literal PR$_XSID_V14_550 = 7; ! CIRRUS II literal PR$_SID_TYPV17 = 23; ! NVAX+ Chip SID ! NVAX+ chip CPU subtypes literal PR$_XSID_V17_V17 = 0; ! unused subtype literal PR$_XSID_V17_1701 = 1; ! Laser/Neon ! Nautilus CPU Subtypes literal PR$_XSID_N8800 = 0; ! VAX 8800 literal PR$_XSID_N8700 = 1; ! VAX 8700 literal PR$_XSID_N2 = 2; ! Undefined Nautilus CPU literal PR$_XSID_N3 = 3; ! Undefined Nautilus CPU literal PR$_XSID_N4 = 4; ! Undefined Nautilus CPU literal PR$_XSID_N5 = 5; ! Undefined Nautilus CPU literal PR$_XSID_N8550 = 6; ! VAX 8550 literal PR$_XSID_N8500 = 7; ! VAX 8500 literal PR$_XSID_N8NNN = -1; ! Unknown Nautilus CPU ! ------------------------------------------------------------------- literal PR$M_ASTEN = %X'F'; literal PR$M_ASTEN_KEN = %X'1'; literal PR$M_ASTEN_EEN = %X'2'; literal PR$M_ASTEN_SEN = %X'4'; literal PR$M_ASTEN_UEN = %X'8'; literal PR$M_ASTEN_DSBL_ALL = 0; ! Disable all ASTs literal PR$M_ASTEN_ENBL_ALL = 255; ! Enable all ASTs literal PR$M_ASTEN_ENBL_K = 17; ! Enable kernel ASTs literal PR$M_ASTEN_ENBL_E = 34; ! Enable executive ASTs literal PR$M_ASTEN_ENBL_S = 68; ! Enable supervisor ASTs literal PR$M_ASTEN_ENBL_U = 136; ! Enable user ASTs literal PR$M_ASTEN_PRSRV_ALL = 15; ! Preserve all enable/disable states literal PR$M_ASTEN_PRSRV_K = 1; ! Preserve kernel enable/disable literal PR$M_ASTEN_PRSRV_E = 2; ! Preserve executive enable/disable literal PR$M_ASTEN_PRSRV_S = 4; ! Preserve supervisor enable/disable literal PR$M_ASTEN_PRSRV_U = 8; ! Preserve user enable/disable ! ------------------------------------------------------------------- literal PR$M_ASTSR = %X'F'; literal PR$M_ASTSR_KPD = %X'1'; literal PR$M_ASTSR_EPD = %X'2'; literal PR$M_ASTSR_SPD = %X'4'; literal PR$M_ASTSR_UPD = %X'8'; literal PR$M_ASTSR_CLR_ALL = 0; ! Clear pending ASTs literal PR$M_ASTSR_SET_ALL = 255; ! Set all ASTs pending literal PR$M_ASTSR_SET_K = 17; ! Set kernel AST pending literal PR$M_ASTSR_SET_E = 34; ! Set executive AST pending literal PR$M_ASTSR_SET_S = 68; ! Set supervisor AST pending literal PR$M_ASTSR_SET_U = 136; ! Set user AST pending literal PR$M_ASTSR_PRSRV_ALL = 15; ! Preserve all pending bits literal PR$M_ASTSR_PRSRV_K = 1; ! Preserve kernel pending literal PR$M_ASTSR_PRSRV_E = 2; ! Preserve executive pending literal PR$M_ASTSR_PRSRV_S = 4; ! Preserve supervisor pending literal PR$M_ASTSR_PRSRV_U = 8; ! Preserve user pending ! ------------------------------------------------------------------- literal PR$M_FEN_FEN = %X'1'; literal PR$M_DATFX_DATFX = %X'1'; literal PR$M_IPL_IPL = %X'1F'; literal PR$M_MCES_MCK = %X'1'; literal PR$M_MCES_SCE = %X'2'; literal PR$M_MCES_PCE = %X'4'; literal PR$M_MCES_DPC = %X'8'; literal PR$M_MCES_DSC = %X'10'; literal PR$V_PCBB_PA = 0; ! HWPCB Physical Address literal PR$S_PCBB_PA = 48; ! HWPCB Physical Address ! ------------------------------------------------------------------- literal PR$M_PS_SW = %X'3'; literal PR$M_PS_PRVMOD = %X'3'; literal PR$M_PS_SYSSTATE = %X'4'; literal PR$M_PS_CURMOD = %X'18'; literal PR$M_PS_VMM = %X'80'; literal PR$M_PS_IPL = %X'1F00'; literal PR$M_PS_SP_ALIGN = %X'3F00000000000000'; literal PR$M_PS_MBZ_62 = %X'4000000000000000'; literal PR$M_PS_MBZ_63 = %X'8000000000000000'; literal PR$V_PS_MAX_PS_REG_BIT = 13; ! literal PR$C_PS_KERNEL = 0; ! Kernel Mode literal PR$C_PS_EXEC = 1; ! Executive Mode literal PR$C_PS_SUPER = 2; ! Supervisor Mode literal PR$C_PS_USER = 3; ! User Mode ! ------------------------------------------------------------------- literal PR$M_PTBR_PFN = %X'FFFFFFFF'; literal PR$M_SCBB_PFN = %X'FFFFFFFF'; literal PR$M_SIRR_LVL = %X'F'; literal PR$M_SISR_SUMMARY = %X'FFFF'; literal PR$M_SISR_RAZ = %X'1'; literal PR$M_SISR_IR1 = %X'2'; literal PR$M_SISR_IR2 = %X'4'; literal PR$M_SISR_IR3 = %X'8'; literal PR$M_SISR_IR4 = %X'10'; literal PR$M_SISR_IR5 = %X'20'; literal PR$M_SISR_IR6 = %X'40'; literal PR$M_SISR_IR7 = %X'80'; literal PR$M_SISR_IR8 = %X'100'; literal PR$M_SISR_IR9 = %X'200'; literal PR$M_SISR_IR10 = %X'400'; literal PR$M_SISR_IR11 = %X'800'; literal PR$M_SISR_IR12 = %X'1000'; literal PR$M_SISR_IR13 = %X'2000'; literal PR$M_SISR_IR14 = %X'4000'; literal PR$M_SISR_IR15 = %X'8000'; literal PR$M_TBCHK_VA_PRESENT = %X'1'; literal PR$M_IEEE_DNOD = %X'800000000000'; literal PR$M_IEEE_DNZ = %X'1000000000000'; literal PR$M_IEEE_INVD = %X'2000000000000'; literal PR$M_IEEE_DZED = %X'4000000000000'; literal PR$M_IEEE_OVFD = %X'8000000000000'; literal PR$M_IEEE_INV = %X'10000000000000'; literal PR$M_IEEE_DZE = %X'20000000000000'; literal PR$M_IEEE_OVF = %X'40000000000000'; literal PR$M_IEEE_UNF = %X'80000000000000'; literal PR$M_IEEE_INE = %X'100000000000000'; literal PR$M_IEEE_IOV = %X'200000000000000'; literal PR$M_IEEE_UNDZ = %X'1000000000000000'; literal PR$M_IEEE_UNFD = %X'2000000000000000'; literal PR$M_IEEE_INED = %X'4000000000000000'; literal PR$M_IEEE_SUMMARY = %X'8000000000000000'; literal PR$S_PRDEF = 8; macro PR$Q_QUAD_ACCESS = 0,0,0,0 %; literal PR$S_QUAD_ACCESS = 8; ! Access to register as a quadword macro PR$L_LONG_ACCESS = 0,0,0,0 %; literal PR$S_LONG_ACCESS = 8; ! Access to register as a quadword macro PR$V_SID_SN = 0,0,12,0 %; literal PR$S_SID_SN = 12; ! SERIAL NUMBER FIELD macro PR$V_SID_PL = 0,12,3,0 %; literal PR$S_SID_PL = 3; ! PLANT ID macro PR$V_SID_ECO = 0,15,9,0 %; literal PR$S_SID_ECO = 9; ! ECO LEVEL macro PR$V_SID_TYPE = 0,24,8,0 %; literal PR$S_SID_TYPE = 8; ! CPU TYPE CODE macro PR$V_XSID_TYPE = 0,24,8,0 %; literal PR$S_XSID_TYPE = 8; ! CPU SUBTYPE CODE ! SYSTEM ID REGISTER CPU TYPES ! Number assignments are ! based upon the jumpers ! read by the console from ! the MPS backplane ! ASTEN - AST Enabled Register ! ! NOTE WELL: These bit symbols are to be used only when interfacing to the ! ASTEN internal processor register. They are NOT to be used when ! interfacing to the copy of ASTEN which is stored in the Hardware ! Privileged Context Block (HWPCB). See the HWPCB-specific symbols ! for how to refer to the ASTEN field in the HWPCB. ! macro PR$V_ASTEN = 0,0,4,0 %; literal PR$S_ASTEN = 4; ! Enabled AST mask macro PR$V_ASTEN_KEN = 0,0,1,0 %; ! Kernel AST Enabled macro PR$V_ASTEN_EEN = 0,1,1,0 %; ! Executive AST Enabled macro PR$V_ASTEN_SEN = 0,2,1,0 %; ! Supervisor AST Enabled macro PR$V_ASTEN_UEN = 0,3,1,0 %; ! User AST Enabled ! ASTSR - AST Summary Register ! ! NOTE WELL: These bit symbols are to be used only when interfacing to the ! ASTSR internal processor register. They are NOT to be used when ! interfacing to the copy of ASTSR which is stored in the Hardware ! Privileged Context Block (HWPCB). See the HWPCB-specific symbols ! for how to refer to the ASTSR field in the HWPCB. ! macro PR$V_ASTSR = 0,0,4,0 %; literal PR$S_ASTSR = 4; ! AST pending summary mask macro PR$V_ASTSR_KPD = 0,0,1,0 %; ! Kernel AST Pending macro PR$V_ASTSR_EPD = 0,1,1,0 %; ! Executive AST Pending macro PR$V_ASTSR_SPD = 0,2,1,0 %; ! Supervisor AST Pending macro PR$V_ASTSR_UPD = 0,3,1,0 %; ! User AST Pending ! FEN - Floating Point Enable ! ! NOTE WELL: These bit symbols are to be used only when interfacing to the ! FEN internal processor register. They are NOT to be used when ! interfacing to the copy of FEN which is stored in the Hardware ! Privileged Context Block (HWPCB). See the HWPCB-specific symbols ! for how to refer to the FEN field in the HWPCB. ! macro PR$V_FEN_FEN = 0,0,1,0 %; ! Floating point enabled = 1 ! ------------------------------------------------------------------- ! DATFX - Data Alignment Trap Fixup ! macro PR$V_DATFX_DATFX = 0,0,1,0 %; ! Data Alignment Trap Fixup ! ------------------------------------------------------------------- ! IPL - Interrupt Priority Level ! macro PR$V_IPL_IPL = 0,0,5,0 %; literal PR$S_IPL_IPL = 5; ! Interrupt Priority Level ! ------------------------------------------------------------------- ! MCES - Machine Check Error Summary Register ! macro PR$V_MCES_MCK = 0,0,1,0 %; ! Machine Check (W1C) macro PR$V_MCES_SCE = 0,1,1,0 %; ! System Correctable Error (W1C) macro PR$V_MCES_PCE = 0,2,1,0 %; ! Processor Correctable Error (W1C) macro PR$V_MCES_DPC = 0,3,1,0 %; ! Disable Processor Correctable Error report macro PR$V_MCES_DSC = 0,4,1,0 %; ! Disable System Correctable Error report ! ------------------------------------------------------------------- ! PCBB - Privileged Context Block Base ! ! PS - Processor Status ! ! The PS is not an IPR in the sense that it isn't read/written using ! the MxPR operators. However, the bitfields of the PS are defined ! here since this is the repository for bitfields of architected IPRs, ! hence it's convenient to define them here. ! ! Although the 'software' field of the PS is not privileged state and ! may be used by users as they see fit in User mode, VMS imposes a ! privileged interpretation on the bits when used in any of the three ! inner processor modes (Kernel, Executive, Supervisor). There are ! consequences of this: ! ! 1) Should User mode code be using the software field bits, it ! must be assumed that the User mode setting of these ! bits are entirely ignored by inner mode software. ! ! 2) VMS reserves the right to redefine its privileged (inner ! mode) interpretation of these bits at any time. ! macro PR$V_PS_SW = 0,0,2,0 %; literal PR$S_PS_SW = 2; ! Software Bits macro PR$V_PS_PRVMOD = 0,0,2,0 %; literal PR$S_PS_PRVMOD = 2; ! Previous Processor Mode macro PR$V_PS_SYSSTATE = 0,2,1,0 %; ! System State Indicator macro PR$V_PS_CURMOD = 0,3,2,0 %; literal PR$S_PS_CURMOD = 2; ! Current Processor Mode macro PR$V_PS_VMM = 0,7,1,0 %; ! Virtual Machine Monitor macro PR$V_PS_IPL = 0,8,5,0 %; literal PR$S_PS_IPL = 5; ! Interrupt Priority Level macro PR$V_PS_SP_ALIGN = 4,24,6,0 %; literal PR$S_PS_SP_ALIGN = 6; ! Stack Pointer Alignment macro PR$V_PS_MBZ_62 = 4,30,1,0 %; ! Reserved bit above SP alignment macro PR$V_PS_MBZ_63 = 4,31,1,0 %; ! Reserved bit above SP alignment ! ! Maximum bit number used in the PS register ! ! MODE SYMBOL DEFINITIONS ! ! PTBR - Page Table Base Register ! macro PR$V_PTBR_PFN = 0,0,32,0 %; literal PR$S_PTBR_PFN = 32; ! PFN of current L1PT ! ------------------------------------------------------------------- ! SCBB - System Control Block Base ! macro PR$V_SCBB_PFN = 0,0,32,0 %; literal PR$S_SCBB_PFN = 32; ! PFN of SCB ! ------------------------------------------------------------------- ! SIRR - Software Interrupt Request Register ! macro PR$V_SIRR_LVL = 0,0,4,0 %; literal PR$S_SIRR_LVL = 4; ! Software Interrupt Request Level ! ------------------------------------------------------------------- ! SISR - Software Interrupt Summary Register ! macro PR$V_SISR_SUMMARY = 0,0,16,0 %; literal PR$S_SISR_SUMMARY = 16; ! Sofware Interrupt Summary macro PR$V_SISR_IR1 = 0,1,1,0 %; ! Softint 1 pending macro PR$V_SISR_IR2 = 0,2,1,0 %; ! Softint 2 pending macro PR$V_SISR_IR3 = 0,3,1,0 %; ! Softint 3 pending macro PR$V_SISR_IR4 = 0,4,1,0 %; ! Softint 4 pending macro PR$V_SISR_IR5 = 0,5,1,0 %; ! Softint 5 pending macro PR$V_SISR_IR6 = 0,6,1,0 %; ! Softint 6 pending macro PR$V_SISR_IR7 = 0,7,1,0 %; ! Softint 7 pending macro PR$V_SISR_IR8 = 0,8,1,0 %; ! Softint 8 pending macro PR$V_SISR_IR9 = 0,9,1,0 %; ! Softint 9 pending macro PR$V_SISR_IR10 = 0,10,1,0 %; ! Softint 10 pending macro PR$V_SISR_IR11 = 0,11,1,0 %; ! Softint 11 pending macro PR$V_SISR_IR12 = 0,12,1,0 %; ! Softint 12 pending macro PR$V_SISR_IR13 = 0,13,1,0 %; ! Softint 13 pending macro PR$V_SISR_IR14 = 0,14,1,0 %; ! Softint 14 pending macro PR$V_SISR_IR15 = 0,15,1,0 %; ! Softint 15 pending ! ------------------------------------------------------------------- ! TBCHK - Translation Buffer Check ! ! This IPR may always be referenced with MFPR without causing an error ! to occur (unlike VAX), but the feature provided by TBCHK may or may ! not be implemented. If not, then =1 and ! should be ignored. If TBCHK's function IS implemented, then ! =0 and returns the desired data. ! macro PR$V_TBCHK_VA_PRESENT = 0,0,1,0 %; ! VA in TB = 1 macro PR$V_TBCHK_NO_TBCHK = 4,31,1,0 %; ! Not implemented = 1 ! ------------------------------------------------------------------- ! FPCR - Floating Point Control Register ! ! NOTE WELL: These bit symbols are to be used only when interfacing to the ! hardware FPCR internal processor register. They are NOT to be used when ! interfacing to the software floating point control register pointed to ! by CTL$GQ_IEEE_FP_CONTROL/PKTA$Q_IEEE_FP_CONTROL. ! ! The hardware FPCR should only be manipulated via the system service, ! SYS$IEEE_FP_CONTROL, rather than directly. ! macro PR$V_IEEE_DNOD = 4,15,1,0 %; ! Denormal operand exception disable macro PR$V_IEEE_DNZ = 4,16,1,0 %; ! Denormal operands to 0.0 macro PR$V_IEEE_INVD = 4,17,1,0 %; ! Invalid operation disable macro PR$V_IEEE_DZED = 4,18,1,0 %; ! Division by zero disable macro PR$V_IEEE_OVFD = 4,19,1,0 %; ! Overflow disable macro PR$V_IEEE_INV = 4,20,1,0 %; ! Invalid operation. macro PR$V_IEEE_DZE = 4,21,1,0 %; ! Division by zero occured. macro PR$V_IEEE_OVF = 4,22,1,0 %; ! Overflow occured. macro PR$V_IEEE_UNF = 4,23,1,0 %; ! Underflow occured. macro PR$V_IEEE_INE = 4,24,1,0 %; ! Inexact result occured. macro PR$V_IEEE_IOV = 4,25,1,0 %; ! Integer overflow occured macro PR$V_IEEE_DYN_RND = 4,26,2,0 %; literal PR$S_IEEE_DYN_RND = 2; ! Dynamic Rounding mode macro PR$V_IEEE_UNDZ = 4,28,1,0 %; ! Underflow to zero macro PR$V_IEEE_UNFD = 4,29,1,0 %; ! Underflow disable macro PR$V_IEEE_INED = 4,30,1,0 %; ! Inexact disable macro PR$V_IEEE_SUMMARY = 4,31,1,0 %; ! Bitwise OR of FPCR exception bits !*** MODULE $PRTDEF *** ! + ! Protection field definitions ! - literal PRT$C_NA = 0; ! No Access literal PRT$C_KR = 3; ! Kernel Read only literal PRT$C_KW = 2; ! Kernel Write literal PRT$C_ER = 7; ! Exec Read only literal PRT$C_EW = 5; ! Exec Write literal PRT$C_SR = 11; ! Super Read only literal PRT$C_SW = 8; ! Super Write literal PRT$C_UR = 15; ! User Read only literal PRT$C_UW = 4; ! User Write literal PRT$C_ERKW = 6; ! Exec Read Kernel Write literal PRT$C_SRKW = 10; ! Super Read Kernel Write literal PRT$C_SREW = 9; ! Super Read Exec Write literal PRT$C_URKW = 14; ! User Read Kernel Write literal PRT$C_UREW = 13; ! User Read Exec Write literal PRT$C_URSW = 12; ! User Read Super Write literal PRT$C_RESERVED = 1; ! Reserved ! ! These protections are not VAX / Alpha compatible: ! literal PRT$C_KRO = 16; ! Kernel Read Only literal PRT$C_ERO = 17; ! Exec Read Only literal PRT$C_SRO = 18; ! Super Read Only literal PRT$C_URO = 19; ! User Read Only literal PRT$C_KWX = 20; ! Kernel Write+Execute literal PRT$C_EWX = 21; ! Exec Write+Execute literal PRT$C_SWX = 22; ! Super Write+Execute literal PRT$C_UWX = 23; ! User Write+Execute literal PRT$C_KPX = 24; ! Kernel promote, execute only literal PRT$C_EPX = 25; ! Exec promote, execute only literal PRT$C_SPX = 26; ! Super promote, execute only literal PRT$C_UX = 27; ! User execute only !*** MODULE $PRVDEF *** ! ! PRIVILEGE BIT DEFINITIONS ! literal PRV$M_CMKRNL = %X'1'; literal PRV$M_CMEXEC = %X'2'; literal PRV$M_SYSNAM = %X'4'; literal PRV$M_GRPNAM = %X'8'; literal PRV$M_ALLSPOOL = %X'10'; literal PRV$M_IMPERSONATE = %X'20'; literal PRV$M_DIAGNOSE = %X'40'; literal PRV$M_LOG_IO = %X'80'; literal PRV$M_GROUP = %X'100'; literal PRV$M_NOACNT = %X'200'; literal PRV$M_PRMCEB = %X'400'; literal PRV$M_PRMMBX = %X'800'; literal PRV$M_PSWAPM = %X'1000'; literal PRV$M_SETPRI = %X'2000'; literal PRV$M_SETPRV = %X'4000'; literal PRV$M_TMPMBX = %X'8000'; literal PRV$M_WORLD = %X'10000'; literal PRV$M_MOUNT = %X'20000'; literal PRV$M_OPER = %X'40000'; literal PRV$M_EXQUOTA = %X'80000'; literal PRV$M_NETMBX = %X'100000'; literal PRV$M_VOLPRO = %X'200000'; literal PRV$M_PHY_IO = %X'400000'; literal PRV$M_BUGCHK = %X'800000'; literal PRV$M_PRMGBL = %X'1000000'; literal PRV$M_SYSGBL = %X'2000000'; literal PRV$M_PFNMAP = %X'4000000'; literal PRV$M_SHMEM = %X'8000000'; literal PRV$M_SYSPRV = %X'10000000'; literal PRV$M_BYPASS = %X'20000000'; literal PRV$M_SYSLCK = %X'40000000'; literal PRV$M_SHARE = %X'80000000'; literal PRV$M_UPGRADE = %X'100000000'; literal PRV$M_DOWNGRADE = %X'200000000'; literal PRV$M_GRPPRV = %X'400000000'; literal PRV$M_READALL = %X'800000000'; literal PRV$M_IMPORT = %X'1000000000'; literal PRV$M_AUDIT = %X'2000000000'; literal PRV$M_SECURITY = %X'4000000000'; literal PRV$K_NUMBER_OF_PRIVS = 39; ! Total number of privilege bits. literal PRV$M_ACNT = %X'200'; literal PRV$M_ALTPRI = %X'2000'; literal PRV$M_DETACH = %X'20'; literal PRV$S_PRVDEF = 8; macro PRV$V_CMKRNL = 0,0,1,0 %; ! MAY CHANGE MODE TO KERNEL macro PRV$V_CMEXEC = 0,1,1,0 %; ! MAY CHANGE MODE TO EXEC macro PRV$V_SYSNAM = 0,2,1,0 %; ! MAY INSERT IN SYSTEM LOGICAL NAME TABLE macro PRV$V_GRPNAM = 0,3,1,0 %; ! MAY INSERT IN GROUP LOGICAL NAME TABLE macro PRV$V_ALLSPOOL = 0,4,1,0 %; ! MAY ALLOCATE SPOOLED DEVICE macro PRV$V_IMPERSONATE = 0,5,1,0 %; ! Replacement name for DETACH (synonyms) macro PRV$V_DIAGNOSE = 0,6,1,0 %; ! MAY DIAGNOSE DEVICES macro PRV$V_LOG_IO = 0,7,1,0 %; ! MAY DO LOGICAL I/O macro PRV$V_GROUP = 0,8,1,0 %; ! MAY AFFECT OTHER PROCESSES IN SAME GROUP macro PRV$V_NOACNT = 0,9,1,0 %; ! MAY SUPPRESS ACCOUNTING MESSAGE macro PRV$V_PRMCEB = 0,10,1,0 %; ! MAY CREATE PERMANENT COMMON EVENT CLUSTERS macro PRV$V_PRMMBX = 0,11,1,0 %; ! MAY CREATE PERMANENT MAILBOX macro PRV$V_PSWAPM = 0,12,1,0 %; ! MAY CHANGE PROCESS SWAP MODE macro PRV$V_SETPRI = 0,13,1,0 %; ! MAY SET ANY PRIORITY VALUE macro PRV$V_SETPRV = 0,14,1,0 %; ! MAY SET ANY PRIVILEGE BIT macro PRV$V_TMPMBX = 0,15,1,0 %; ! MAY CREATE TEMPORARY MAILBOX macro PRV$V_WORLD = 0,16,1,0 %; ! MAY AFFECT OTHER PROCESSES IN THE WORLD macro PRV$V_MOUNT = 0,17,1,0 %; ! MAY EXECUTE MOUNT ACP FUNCTIONS macro PRV$V_OPER = 0,18,1,0 %; ! OPERATOR PRIVILEGE macro PRV$V_EXQUOTA = 0,19,1,0 %; ! MAY EXCEED QUOTAS macro PRV$V_NETMBX = 0,20,1,0 %; ! MAY CREATE NETWORK DEVICE macro PRV$V_VOLPRO = 0,21,1,0 %; ! MAY OVERRIDE VOLUME PROTECTION macro PRV$V_PHY_IO = 0,22,1,0 %; ! MAY DO PHYSICAL I/O macro PRV$V_BUGCHK = 0,23,1,0 %; ! MAY MAKE BUG CHECK ERROR LOG ENTRIES macro PRV$V_PRMGBL = 0,24,1,0 %; ! MAY CREATE PERMANENT GLOBAL SECTIONS macro PRV$V_SYSGBL = 0,25,1,0 %; ! MAY CREATE SYSTEM WIDE GLOBAL SECTIONS macro PRV$V_PFNMAP = 0,26,1,0 %; ! MAY MAP TO SECTION BY PFN macro PRV$V_SHMEM = 0,27,1,0 %; ! MAY ALLOCATE STRUCTURES IN SHARED MEMORY macro PRV$V_SYSPRV = 0,28,1,0 %; ! ELIGIBLE FOR SYSTEM PROTECTION FIELD macro PRV$V_BYPASS = 0,29,1,0 %; ! MAY BYPASS UIC BASED PROTECTION macro PRV$V_SYSLCK = 0,30,1,0 %; ! MAY CREATE SYSTEM WIDE LOCKS macro PRV$V_SHARE = 0,31,1,0 %; ! MAY ASSIGN CHANNEL TO NON-SHARED DEVICE macro PRV$V_UPGRADE = 4,0,1,0 %; ! May upgrade object integrity macro PRV$V_DOWNGRADE = 4,1,1,0 %; ! May downgrade object secrecy macro PRV$V_GRPPRV = 4,2,1,0 %; ! May access group objects via system protection field macro PRV$V_READALL = 4,3,1,0 %; ! May read any object macro PRV$V_IMPORT = 4,4,1,0 %; ! May set classification for unlabeled object macro PRV$V_AUDIT = 4,5,1,0 %; ! May direct audit to system security audit log macro PRV$V_SECURITY = 4,6,1,0 %; ! May perform security functions ! XXXXXX bitfield mask; /* Reserved for SEVMS macro PRV$V_ACNT = 0,9,1,0 %; ! MAY SUPPRESS ACCOUNTING MESSAGES (NOACNT) macro PRV$V_ALTPRI = 0,13,1,0 %; ! MAY SET ANY PRIORITY VALE (SETPRI) macro PRV$L_L1_BITS = 0,0,32,0 %; ! Bits in first longword macro PRV$L_L2_BITS = 4,0,32,0 %; ! Bits in second longword macro PRV$V_DETACH = 0,5,1,0 %; ! MAY CREATE DETACHED PROCESSES literal PRV$M_SORTED = %X'1'; literal PRV$M_BRIEF = %X'2'; literal PRV$M_FILLED = %X'4'; literal PRV$S_PRVDSP_BITS = 1; macro PRV$V_SORTED = 0,0,1,0 %; ! sort privilege list macro PRV$V_BRIEF = 0,1,1,0 %; ! display only privilege names macro PRV$V_FILLED = 0,2,1,0 %; ! display names in columns literal PRV$K_PRVMASK_WORKING = 0; ! Working (Temporary) privs to be modified literal PRV$K_PRVMASK_PERMANENT = 1; ! Permanent privs to be modified literal PRV$K_PRVMASK_IMAGE = 2; ! Image privs to be modified !*** MODULE $PRXDEF IDENT X-9 *** literal PRX$K_ADD = 1; literal PRX$K_DELETE = 2; literal PRX$K_SHOW = 3; literal PRX$K_VERIFY = 4; literal PRX$K_PERFORMANCE = 5; literal PRX$K_ZERO_PERFORMANCE = 6; literal PRX$K_CREATE = 7; literal PRX$K_STOP = 8; literal PRX$K_START = 9; literal PRX$K_MAX_PROXY_CODE = 10; literal PRX$K_PERFORMANCE_LENGTH = 48; literal PRX$S_PERFORMANCE = 48; macro PRX$L_TOTAL_MESSAGES = 0,0,32,0 %; macro PRX$L_TOTAL_EXCEPTIONS = 4,0,32,0 %; macro PRX$L_SHOWS = 8,0,32,0 %; macro PRX$L_ADDS = 12,0,32,0 %; macro PRX$L_DELETES = 16,0,32,0 %; macro PRX$L_VERIFYS = 20,0,32,0 %; macro PRX$L_PERFORMANCE = 24,0,32,0 %; macro PRX$L_CREATES = 28,0,32,0 %; macro PRX$L_STOPS = 32,0,32,0 %; macro PRX$L_STARTS = 36,0,32,0 %; macro PRX$L_AUDITS = 40,0,32,0 %; macro PRX$L_INVALID_MESSAGES = 44,0,32,0 %; literal PRX$M_IGNORE_RETURN = %X'1'; literal PRX$M_BYPASS_EXPAND = %X'2'; literal PRX$M_RESERVE_1 = %X'FC'; literal PRX$M_DEFAULT = %X'100'; literal PRX$M_EXACT = %X'200'; literal PRX$M_DELETE_ALLOWED = %X'400'; literal PRX$M_FILL_1 = %X'FFFFF800'; literal PRX$K_HEADER_LENGTH = 8; literal PRX$S_HEADER = 8; macro PRX$L_CONTEXT = 0,0,32,0 %; macro PRX$L_FLAGS = 4,0,32,0 %; macro PRX$V_IGNORE_RETURN = 4,0,1,0 %; macro PRX$V_BYPASS_EXPAND = 4,1,1,0 %; macro PRX$V_DEFAULT = 4,8,1,0 %; macro PRX$V_EXACT = 4,9,1,0 %; macro PRX$V_DELETE_ALLOWED = 4,10,1,0 %; macro PRX$V_FILL_1 = 4,11,21,0 %; literal PRX$S_FILL_1 = 21; literal PRX$S_PRX$GENERIC_DESC1 = 5; macro PRX$W_DESC_LENGTH = 0,0,16,0 %; macro PRX$T_DESC_DATA = 4,0,8,0 %; literal PRX$K_USER_NAME_LENGTH = 32; literal PRX$K_REMOTE_NODE_NAME_LENGTH = 1024; literal PRX$K_MAX_LOCAL_USERS = 16; literal PRX$K_LOCAL_USER_ENTRY = 36; literal PRX$S_DATA = 1100; macro PRX$W_LOCAL_USER_LENGTH = 0,0,16,0 %; macro PRX$T_LOCAL_USER_NAME = 4,0,0,0 %; literal PRX$S_LOCAL_USER_NAME = 32; macro PRX$W_REMOTE_USER_LENGTH = 36,0,16,0 %; macro PRX$T_REMOTE_USER_NAME = 40,0,0,0 %; literal PRX$S_REMOTE_USER_NAME = 32; macro PRX$W_REMOTE_NODE_LENGTH = 72,0,16,0 %; macro PRX$T_REMOTE_NODE_NAME = 76,0,0,0 %; literal PRX$S_REMOTE_NODE_NAME = 1024; literal PRX$K_DATA_LENGTH = 1100; literal PRX$S_BUFSIZ_SUMMARY = 8; macro PRX$W_BUFSIZ_USER = 0,0,16,0 %; ! proxy user length macro PRX$W_BUFSIZ_NODE = 2,0,16,0 %; ! proxy node length macro PRX$W_BUFSIZ_LOCAL_COUNT = 4,0,16,0 %; ! number of local users macro PRX$W_BUFSIZ_DEF_USER = 6,0,16,0 %; ! length of default user literal PRX$K_MAX_REPLY = 1692; literal PRX$S_REPLY_UNION = 88; macro PRX$L_REPLY_STATUS = 0,0,32,0 %; ! status of request macro PRX$W_VALID_USER = 4,0,16,0 %; ! length of proxy user_name macro PRX$T_VALID_USER = 8,0,0,0 %; literal PRX$S_VALID_USER = 32; ! proxy usernname macro PRX$L_SHOW_CONTEXT = 4,0,32,0 %; ! returned context macro PRX$W_SHOW_DEF_USER = 8,0,16,0 %; ! length of default user_name macro PRX$T_SHOW_DEF_USER = 12,0,0,0 %; literal PRX$S_SHOW_DEF_USER = 32; ! default user_name macro PRX$W_SHOW_REM_USER = 44,0,16,0 %; ! length of remote user_name macro PRX$T_SHOW_REM_USER = 48,0,0,0 %; literal PRX$S_SHOW_REM_USER = 32; ! remote user_name macro PRX$W_SHOW_LOCAL_COUNT = 80,0,16,0 %; ! count of local user_names macro PRX$W_SHOW_LOCAL_SIZE = 82,0,16,0 %; ! size of local user_name (bytes) macro PRX$R_SHOW_LOCAL_DATA = 84,0,32,0 %; literal PRX$S_SHOW_LOCAL_DATA = 4; ! start of local user_names literal PRX$K_MAX_LENGTH = 1108; !*** MODULE $PSCANDEF *** ! + ! ! Process_Scan item code definitions ! ! - ! Item code definitions literal pscan$_BEGIN = 0; literal pscan$_ACCOUNT = 1; ! Match on account name literal pscan$_AUTHPRI = 2; ! Match on authorized priority literal pscan$_CURPRIV = 3; ! Match on current privs literal pscan$_GRP = 4; ! Match on GRP field literal pscan$_HW_MODEL = 5; ! Match on system's HW_MODEL literal pscan$_HW_NAME = 6; ! Match on system's HW_NAME literal pscan$_JOBPRCCNT = 7; ! Match on job subprocess count literal pscan$_JOBTYPE = 8; ! Match on job origin type field literal pscan$_MASTER_PID = 9; ! Match on PID of master process literal pscan$_MEM = 10; ! Match on MEM field literal pscan$_MODE = 11; ! Match on process mode literal pscan$_NODE_CSID = 12; ! Match on system's CSID literal pscan$_NODENAME = 13; ! Match on system's nodename literal pscan$_OWNER = 14; ! Match on PID of owner literal pscan$_PRCCNT = 15; ! Match on subprocess count literal pscan$_PRCNAM = 16; ! Match on process name literal pscan$_PRI = 17; ! Match on current priority literal pscan$_PRIB = 18; ! Match on base priority literal pscan$_STATE = 19; ! Match on process state literal pscan$_STS = 20; ! Match on process status literal pscan$_TERMINAL = 21; ! Match on terminal name literal pscan$_UIC = 22; ! Match on UIC field literal pscan$_USERNAME = 23; ! Match on username literal pscan$_GETJPI_BUFFER_SIZE = 24; ! Buffer for blocking literal pscan$_PSCAN_CONTROL_FLAGS = 25; ! Control Flags literal pscan$_KT_COUNT = 26; ! Current count of kernel threads literal pscan$_MULTITHREAD = 27; ! Maximum number of kernel threads literal pscan$_SCHED_CLASS_NAME = 28; ! Match on name of process' scheduling class literal pscan$_END = 29; literal pscan$k_type = 129; literal PSCAN$M_THREAD = %X'1'; literal PSCAN$S_PSCANCTLDEF = 4; macro PSCAN$V_THREAD = 0,0,1,0 %; ! Return information about each thread for multithreaded processes literal pscan$M_OR = %X'1'; literal pscan$M_BIT_ALL = %X'2'; literal pscan$M_BIT_ANY = %X'4'; literal pscan$M_GEQ = %X'8'; literal pscan$M_GTR = %X'10'; literal pscan$M_LEQ = %X'20'; literal pscan$M_LSS = %X'40'; literal pscan$M_PREFIX_MATCH = %X'80'; literal pscan$M_WILDCARD = %X'100'; literal pscan$M_CASE_BLIND = %X'200'; literal pscan$M_EQL = %X'400'; literal pscan$M_NEQ = %X'800'; literal pscan$S_item_specific_flags = 2; macro pscan$V_OR = 0,0,1,0 %; ! Logical OR of items macro pscan$V_BIT_ALL = 0,1,1,0 %; ! All bits set in pattern macro pscan$V_BIT_ANY = 0,2,1,0 %; ! Any bit set in pattern macro pscan$V_GEQ = 0,3,1,0 %; macro pscan$V_GTR = 0,4,1,0 %; macro pscan$V_LEQ = 0,5,1,0 %; macro pscan$V_LSS = 0,6,1,0 %; macro pscan$V_PREFIX_MATCH = 0,7,1,0 %; ! Match on leading substring macro pscan$V_WILDCARD = 0,8,1,0 %; ! Wildcard pattern macro pscan$V_CASE_BLIND = 0,9,1,0 %; ! Ignore case of text strings macro pscan$V_EQL = 0,10,1,0 %; macro pscan$V_NEQ = 0,11,1,0 %; !*** MODULE $PSIGDEF *** ! ! Signature block offset definitions for the Alpha/IA64 calling standard. ! literal PSIG$K_FR_I64 = 0; ! 64 bit in R0 ! or - No function result provided literal PSIG$K_FR_D64 = 1; ! 32 bit low in R0, 32 bit high in r1 - sign extended literal PSIG$K_FR_I32 = 2; ! 32 bit sign extended in R0 literal PSIG$K_FR_U32 = 3; ! 32 bit unsigned in R0 literal PSIG$K_FR_FF = 4; ! F floating in F0 literal PSIG$K_FR_FD = 5; ! D floating in F0 literal PSIG$K_FR_FG = 6; ! G floating in F0 literal PSIG$K_FR_FS = 7; ! S floating in F0 literal PSIG$K_FR_FT = 8; ! T floating in F0 literal PSIG$K_FR_FFC = 11; ! F floating complex in F0 and F1 literal PSIG$K_FR_FDC = 12; ! D floating complex in F0 and F1 literal PSIG$K_FR_FGC = 13; ! G floating complex in F0 and F1 literal PSIG$K_FR_FSC = 14; ! S floating complex in F0 and F1 literal PSIG$K_FR_FTC = 15; ! T floating complex in F0 and F1 ! literal PSIG$M_CTRL = %X'7'; literal PSIG$M_X = %X'F8'; literal PSIG$M_FUNC_RETURN = %X'F00'; literal PSIG$M_REG_ARG_INFO = %X'FFFFFFFF000000'; literal PSIG$M_SU_VLIST = %X'4000'; literal PSIG$K_MIN_LENGTH = 8; ! Minimum length literal PSIG$K_MAX_LENGTH = 72; ! Maximum length literal PSIG$K_MIN_SIZE = 8; ! Minimum size literal PSIG$K_MAX_SIZE = 72; ! Maximum size literal PSIG$S_PSIGDEF = 8; ! or - First parameter mechanism used ! First quadword of signature block ! macro PSIG$Q_REGISTER_INFO = 0,0,0,0 %; literal PSIG$S_REGISTER_INFO = 8; macro PSIG$V_CTRL = 0,0,3,0 %; literal PSIG$S_CTRL = 3; ! Control information field macro PSIG$V_X = 0,3,5,0 %; literal PSIG$S_X = 5; ! Not used. Must be zero macro PSIG$V_FUNC_RETURN = 0,8,4,0 %; literal PSIG$S_FUNC_RETURN = 4; ! Function return signature encoding macro PSIG$V_SUMMARY = 0,12,4,0 %; literal PSIG$S_SUMMARY = 4; ! Entire summary field macro PSIG$B_ARG_COUNT = 2,0,8,0 %; ! Argument count macro PSIG$V_REG_ARG_INFO = 0,24,32,0 %; literal PSIG$S_REG_ARG_INFO = 32; ! Register argument signature encodings macro PSIG$V_MEMORY_ARG_INFO = 4,24,8,0 %; literal PSIG$S_MEMORY_ARG_INFO = 8; ! Minimum length for memory argument information ! ! Summary bits which are contained in the high bits of the first word ! macro PSIG$Q_SUMMARY_INFO = 0,0,0,0 %; literal PSIG$S_SUMMARY_INFO = 8; macro PSIG$V_FILL = 0,0,12,0 %; literal PSIG$S_FILL = 12; macro PSIG$V_SU_ASUM = 0,12,2,0 %; literal PSIG$S_SU_ASUM = 2; ! summary of arguments 9 through arg_count macro PSIG$V_SU_VLIST = 0,14,1,0 %; ! VAX style argument list expected macro PSIG$V_UNUSED = 0,15,1,0 %; literal RASE$M_SIG_ENC = %X'F'; literal RASE$K_RA_I64 = 0; ! (obsolete) literal RASE$K_RA_NOARG = 0; ! Argument is not present literal RASE$K_RA_Q = 1; ! 64 bit in Rxx literal RASE$K_RA_I32 = 2; ! 32 bit sign extended in Rxx literal RASE$K_RA_U32 = 3; ! 32 bit unsigned in Rxx literal RASE$K_RA_FF = 4; ! F floating passed in Fxx literal RASE$K_RA_FD = 5; ! D floating passed in Fxx literal RASE$K_RA_FG = 6; ! G floating passed in Fxx literal RASE$K_RA_FS = 7; ! S floating passed in Fxx literal RASE$K_RA_FT = 8; ! T floating passed in Fxx literal RASE$S_RASEDEF = 1; macro RASE$V_SIG_ENC = 0,0,4,0 %; literal RASE$S_SIG_ENC = 4; ! per register signature encoding literal MASE$K_MA_I64 = 0; ! (obsolete) literal MASE$K_MA_Q = 0; ! 64 bit argument literal MASE$K_MA_I32 = 2; ! 32 bit signed argument literal MASE$S_MASEDEF = 1; macro MASE$V_SIG_ENC = 0,0,2,0 %; literal MASE$S_SIG_ENC = 2; ! per memory location signature encoding ! ! Argument Information structure definition for the Alpha/IA64 calling standard. ! literal AI$K_AR_I64 = 0; ! Integer argument literal AI$K_AR_FF = 1; ! VAX F float argument literal AI$K_AR_FD = 2; ! VAX D float argument literal AI$K_AR_FG = 3; ! VAX G float argument literal AI$K_AR_FS = 4; ! IEEE S float argument literal AI$K_AR_FT = 5; ! IEEE T float argument literal AI$K_AR_RESERVED_6 = 6; ! Reserved value 6 literal AI$K_AR_RESERVED_7 = 7; ! Reserved value 7 literal AI$M_ARG_REG_INFO = %X'700'; literal AI$K_AI_SIZE = 8; ! Minimum length literal AI$K_REGNO = 25; ! The AI register number literal AI$S_AIDEF = 8; macro AI$B_ARG_COUNT = 0,0,8,0 %; macro AI$V_ARG_REG_INFO = 0,8,3,0 %; literal AI$S_ARG_REG_INFO = 3; ! per arg type info for up to 8 arguments !*** MODULE $PSLDEF *** ! + ! PROCESSOR STATUS LONGWORD MASK AND FIELD DEFINITIONS ! ! This definition file provides PSL$xxxx symbols ! strictly for the purpose of providing compatibility ! for code being ported from VAX which refers to the ! fields of the PSL. Only those fields that exist in ! both architectures are defined. ! ! The preferred approach for code that DOES NOT run ! on VAX is to use the symbols defined by the $PRDEF ! macro instead. ! - literal PSL$M_PRVMOD = %X'3'; literal PSL$M_CURMOD = %X'18'; literal PSL$M_IPL = %X'1F00'; literal PSL$V_MAX_PS_REG_BIT = 13; ! literal PSL$C_KERNEL = 0; ! Kernel Mode literal PSL$C_EXEC = 1; ! Executive Mode literal PSL$C_SUPER = 2; ! Supervisor Mode literal PSL$C_USER = 3; ! User Mode literal PSL$S_PSLDEF = 2; macro PSL$V_PRVMOD = 0,0,2,0 %; literal PSL$S_PRVMOD = 2; ! Previous Processor Mode macro PSL$V_CURMOD = 0,3,2,0 %; literal PSL$S_CURMOD = 2; ! Current Processor Mode macro PSL$V_IPL = 0,8,5,0 %; literal PSL$S_IPL = 5; ! Interrupt Priority Level ! ! Maximum bit number used in the PS register ! ! MODE SYMBOL DEFINITIONS ! !*** MODULE $PTDDEF *** ! + ! ! Pseudo terminal driver notification AST type definitions. ! ! N.B. ! These definitions are in a specific order and must not be changed ! without matching changes to FTUCBDEF, and FTDRIVER. ! ! - literal PTD$C_SEND_XON = 0; ! Enable or disable XON AST literal PTD$C_SEND_BELL = 1; ! Enable or disable BELL AST literal PTD$C_SEND_XOFF = 2; ! Enable or disable XOFF AST literal PTD$C_STOP_OUTPUT = 3; ! Enable or disable stop output AST literal PTD$C_RESUME_OUTPUT = 4; ! Enable or disable resume output AST literal PTD$C_CHAR_CHANGED = 5; ! Enable or disable characteristics change AST literal PTD$C_ABORT_OUTPUT = 6; ! Enable or disable abort output AST literal PTD$C_START_READ = 7; ! Enable or disable start read AST literal PTD$C_MIDDLE_READ = 8; ! Enable or disable middle read AST literal PTD$C_END_READ = 9; ! Enable or disable end read AST literal PTD$C_ENABLE_READ = 10; ! Enable read ASTs literal PTD$C_DISABLE_READ = 11; ! Disable read ASTs literal PTD$C_MAX_EVENTS = 12; !*** MODULE $QUIDEF *** ! ! Get Queue Information Service ($GETQUI) definitions. ! ! NOTE: New items must always be added at the end so users will not have to relink. ! ! NOTE: Update [VMSLIB.SRC]QUITABLE.MAR to reflect changes in $QUIDEF. ! ! ! Function codes ! literal QUI$_CANCEL_OPERATION = 1; ! Cancel a wildcard operation literal QUI$_DISPLAY_CHARACTERISTIC = 2; ! Return characteristic attributes literal QUI$_DISPLAY_FILE = 3; ! Return file attributes literal QUI$_DISPLAY_FORM = 4; ! Return form attributes literal QUI$_DISPLAY_JOB = 5; ! Return job attributes literal QUI$_DISPLAY_QUEUE = 6; ! Return queue attributes literal QUI$_TRANSLATE_QUEUE = 7; ! Validate and translate queue name literal QUI$_DISPLAY_ENTRY = 8; ! Return entry (job) attributes (without first having to establish queue context) literal QUI$_DISPLAY_QMAN = 9; ! Reserved for Digital (used by job control to get qman information) literal QUI$_DISPLAY_MANAGER = 10; ! Return queue manager attributes literal QUI$K_MIN_FUNC = 1; ! Minimum GETQUI function code literal QUI$K_MAX_FUNC = 10; ! Maximum GETQUI function code ! ! Item codes ! literal QUI$_ACCOUNT_NAME = 1; ! Job: Submitter's account name literal QUI$_AFTER_TIME = 2; ! Job: /AFTER=time literal QUI$_ASSIGNED_QUEUE_NAME = 3; ! Queue: ASSIGN/QUEUE target literal QUI$_BASE_PRIORITY = 4; ! Queue: /BASE_PRIORITY=n literal QUI$_CHARACTERISTIC_NAME = 5; ! Characteristic: Name literal QUI$_CHARACTERISTIC_NUMBER = 6; ! Characteristic: Number literal QUI$_CHARACTERISTICS = 7; ! Job, queue: /CHARACTERISTICS=(c,...) literal QUI$_CHECKPOINT_DATA = 8; ! Job: Checkpoint data literal QUI$_CLI = 9; ! Job: /CLI=filename literal QUI$_COMPLETED_BLOCKS = 10; ! Job: Completed blocks including checkpoint literal QUI$_CONDITION_VECTOR = 11; ! Job: Completion status literal QUI$_CPU_DEFAULT = 12; ! Queue: /CPUDEFAULT=t literal QUI$_CPU_LIMIT = 13; ! Job, queue: /CPUMAXIMUM=t literal QUI$_DEVICE_NAME = 14; ! Queue: /ON=device literal QUI$_ENTRY_NUMBER = 15; ! Job: Entry number literal QUI$_FILE_COPIES = 16; ! File: /COPIES=n literal QUI$_FILE_COPIES_CHKPT = 17; ! File: File copies checkpoint (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_FILE_COPIES_DONE = 18; ! File: File copies completed literal QUI$_FILE_FLAGS = 19; ! File: Boolean information literal QUI$_FILE_SETUP_MODULES = 20; ! File: /SETUP=(module,...) literal QUI$_FILE_SPECIFICATION = 21; ! File: Full file specification literal QUI$_FILE_STATUS = 22; ! File: Status information literal QUI$_FIRST_PAGE = 23; ! File: /PAGES=(n,"") literal QUI$_FORM_DESCRIPTION = 24; ! Form: /DESCRIPTION=string literal QUI$_FORM_FLAGS = 25; ! Form: Boolean information literal QUI$_FORM_LENGTH = 26; ! Form: /LENGTH=n literal QUI$_FORM_MARGIN_BOTTOM = 27; ! Form: /MARGIN=BOTTOM=n literal QUI$_FORM_MARGIN_LEFT = 28; ! Form: /MARGIN=LEFT=n literal QUI$_FORM_MARGIN_RIGHT = 29; ! Form: /MARGIN=RIGHT=n literal QUI$_FORM_MARGIN_TOP = 30; ! Form: /MARGIN=TOP=n literal QUI$_FORM_NAME = 31; ! Form, job, queue: Form name literal QUI$_FORM_NUMBER = 32; ! Form: Number literal QUI$_FORM_SETUP_MODULES = 33; ! Form: /SETUP=(module,...) literal QUI$_FORM_STOCK = 34; ! Form: /STOCK=stock-name literal QUI$_FORM_WIDTH = 35; ! Form: /WIDTH=n literal QUI$_GENERIC_TARGET = 36; ! Queue: /GENERIC=(queue-name,...) literal QUI$_INTERVENING_BLOCKS = 37; ! Job: Intervening pending blocks literal QUI$_INTERVENING_JOBS = 38; ! Job: Intervening pending jobs literal QUI$_JOB_COPIES = 39; ! Job: /JOB_COUNT=n literal QUI$_JOB_COPIES_CHKPT = 40; ! Job: Job copies checkpoint (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_JOB_COPIES_DONE = 41; ! Job: Job copies completed literal QUI$_JOB_FLAGS = 42; ! Job: Boolean information literal QUI$_JOB_LIMIT = 43; ! Queue: /JOB_LIMIT=n literal QUI$_JOB_NAME = 44; ! Job: Name literal QUI$_JOB_RESET_MODULES = 45; ! Queue: /SEPARATE=RESET=(module,...) literal QUI$_JOB_SIZE = 46; ! Job: Total blocks in job literal QUI$_JOB_SIZE_MAXIMUM = 47; ! Queue: /BLOCK_LIMIT=n literal QUI$_JOB_SIZE_MINIMUM = 48; ! Queue: /BLOCK_LIMIT=(n,"") literal QUI$_JOB_STATUS = 49; ! Job: Status information literal QUI$_LAST_PAGE = 50; ! File: /PAGES=n literal QUI$_LIBRARY_SPECIFICATION = 51; ! Queue: /LIBRARY=file-specification literal QUI$_LOG_QUEUE = 52; ! Job: /PRINTER=queue-name literal QUI$_LOG_SPECIFICATION = 53; ! Job: /LOG_FILE=file-specification literal QUI$_NOTE = 54; ! Job: /NOTE=string literal QUI$_OPERATOR_REQUEST = 55; ! Job: /OPERATOR=string literal QUI$_OWNER_UIC = 56; ! Queue: /OWNER=uic literal QUI$_PAGE_SETUP_MODULES = 57; ! Form: /PAGE_SETUP=(module,...) literal QUI$_PARAMETER_1 = 58; ! Job: /PARAMETER=string literal QUI$_PARAMETER_2 = 59; literal QUI$_PARAMETER_3 = 60; literal QUI$_PARAMETER_4 = 61; literal QUI$_PARAMETER_5 = 62; literal QUI$_PARAMETER_6 = 63; literal QUI$_PARAMETER_7 = 64; literal QUI$_PARAMETER_8 = 65; literal QUI$_PRIORITY = 66; ! Job: /PRIORITY=n literal QUI$_PROCESSOR = 67; ! Queue: /PROCESSOR=filename literal QUI$_PROTECTION = 68; ! Queue: /PROTECTION=mask literal QUI$_QUEUE_FLAGS = 69; ! Queue: Boolean information literal QUI$_QUEUE_NAME = 70; ! Job, queue: Queue name literal QUI$_QUEUE_STATUS = 71; ! Queue: Status information literal QUI$_REFUSAL_REASON = 72; ! Job: Reason symbiont refused job (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_REQUEUE_PRIORITY = 73; ! Job: Priority after requeue (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_REQUEUE_QUEUE_NAME = 74; ! Job: Queue after requeue literal QUI$_SCSNODE_NAME = 75; ! Queue: /ON=node:: literal QUI$_SEARCH_FLAGS = 76; ! Flags to control search literal QUI$_SEARCH_NAME = 77; ! Object name to search for literal QUI$_SEARCH_NUMBER = 78; ! Object number to search for literal QUI$_SUBMISSION_TIME = 79; ! Job: Submission time literal QUI$_UIC = 80; ! Job: Submitter's UIC literal QUI$_USERNAME = 81; ! Job: Submitter's username literal QUI$_WSDEFAULT = 82; ! Job, queue: /WSDEFAULT=n literal QUI$_WSEXTENT = 83; ! Job, queue: /WSEXTENT=n literal QUI$_WSQUOTA = 84; ! Job, queue: /WSQUOTA=n literal QUI$_RAD = 85; ! RAD assigned to queue or batch job literal QUI$_RESERVED_OUTPUT_86 = 86; ! Reserved for Digital use (name may change) literal QUI$_JOB_CONTROL_GQC = 87; ! Reserved for Digital (Use to send GQC to job control process) literal QUI$_SEARCH_USERNAME = 88; ! Username of owner of job to modify search literal QUI$_DEFAULT_FORM_NAME = 89; ! Default form name on queue literal QUI$_DEFAULT_FORM_NUMBER = 90; ! Default form number on queue literal QUI$_DEFAULT_FORM_STOCK = 91; ! Stock name for default form literal QUI$_JOB_PID = 92; ! Pid of batch job literal QUI$_FILE_IDENTIFICATION = 93; ! File identification (From RMS NAM block) literal QUI$_PENDING_JOB_BLOCK_COUNT = 94; ! Total number of blocks for all pending jobs literal QUI$_JOB_RETENTION_TIME = 95; ! The amount of time the job should be retained (may be delta or absolute) literal QUI$_JOB_COMPLETION_TIME = 96; ! The time the job completed execution literal QUI$_JOB_COMPLETION_QUEUE = 97; ! The name of the queue the job completed execution on literal QUI$_RESERVED_OUTPUT_98 = 98; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_99 = 99; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_100 = 100; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_101 = 101; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_102 = 102; ! Reserved for Digital use (name may change) literal QUI$_SEARCH_BATCH_EPID = 103; ! Batch job EPID to search for literal QUI$_SEARCH_JOB_NAME = 104; ! Job name to search for literal QUI$_RESERVED_INPUT_105 = 105; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_106 = 106; ! Reserved for Digital use (name may change) literal QUI$_EXECUTING_JOB_COUNT = 107; ! Number of jobs that are executing literal QUI$_HOLDING_JOB_COUNT = 108; ! Number of holding jobs literal QUI$_TIMED_RELEASE_JOB_COUNT = 109; ! Number of jobs specified with /AFTER_TIME literal QUI$_PENDING_JOB_REASON = 110; ! Secondary status describing why job is pending literal QUI$_ORB = 111; ! ORB data in TLV format ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_QUEUE_DESCRIPTION = 112; ! Queue: /DESCRIPTION literal QUI$_SYMBIONT_FLAGS = 113; ! Symbiont options (requests) passed to job controller ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_JOB_ACCESS_CLASS = 114; ! Job access class information (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_ORB_LOCK_KEY = 115; ! Key value for locking of in-memory ORB data structure (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal QUI$_CHECKPOINT_FREQUENCY = 116; ! Number of pages in interval at which symbiont takes chkpts literal QUI$_PENDING_JOB_COUNT = 117; ! Number of pending jobs literal QUI$_RETAINED_JOB_COUNT = 118; ! Number of retained jobs literal QUI$_RESTART_QUEUE_NAME = 119; ! Name of queue into which a job would be restarted, if appropriate literal QUI$_FILE_COUNT = 120; ! Count of files in job literal QUI$_ATTRIBUTES = 121; ! Keywds and values of extens attribs associated with queue, job, or file literal QUI$_ATTRIBUTES_SIZE = 122; ! Length of list of extens attribs associated with queue, job, or file literal QUI$_QUEUE_SUPPORT = 123; ! Queue Support Images defined on this queue literal QUI$_QUEUE_ATTRIBUTES = 124; ! Valid keywords for operations that alter the queue literal QUI$_QUEUE_ATTRIBUTES_SIZE = 125; ! Length of list of keywords for queue-oriented extens attribs literal QUI$_JOB_ATTRIBUTES = 126; ! Valid keywords for operations that create or alter jobs literal QUI$_JOB_ATTRIBUTES_SIZE = 127; ! Length of list of keywords for job-oriented extens attribs literal QUI$_FILE_ATTRIBUTES = 128; ! Valid keywords for file submissions or alter_file's literal QUI$_FILE_ATTRIBUTES_SIZE = 129; ! Length of list of keywords for file-oriented extens attribs literal QUI$_AUTOSTART_ON = 130; ! Node(s) (and for print queues, device(s)) on which queue can be auto started literal QUI$_AGENT_PROFILE = 131; ! Security information literal QUI$_MANAGER_NAME = 132; ! Queue manager name literal QUI$_MANAGER_STATUS = 133; ! Queue manager state and status information literal QUI$_RESERVED_OUTPUT_134 = 134; ! Reserved for Digital use (name may change) literal QUI$_MANAGER_NODES = 135; ! Preferred node listed specified on start queue manager literal QUI$_MANAGER_AUTOSTART = 136; ! List of nodes that are autostart enabled literal QUI$_QUEUE_DIRECTORY = 137; ! Directory specification provided when queue manager was started literal QUI$_RESERVED_OUTPUT_138 = 138; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_139 = 139; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_140 = 140; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_141 = 141; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_142 = 142; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_143 = 143; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_144 = 144; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_145 = 145; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_146 = 146; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_147 = 147; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_148 = 148; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_149 = 149; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_150 = 150; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_151 = 151; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_152 = 152; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_153 = 153; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_154 = 154; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_155 = 155; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_156 = 156; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_157 = 157; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_158 = 158; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_OUTPUT_159 = 159; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_160 = 160; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_161 = 161; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_162 = 162; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_163 = 163; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_164 = 164; ! Reserved for Digital use (name may change) literal QUI$_RESERVED_INPUT_165 = 165; ! Reserved for Digital use (name may change) literal QUI$K_MIN_ITEM = 1; ! Minimum GETQUI item code literal QUI$K_MAX_ITEM = 165; ! Maximum GETQUI item code literal QUI$_CHARGE_CODE = 1; ! synonym for QUI$_ACCOUNT_NAME ! ! Subfields of FILE_FLAGS item code. ! literal QUI$M_FILE_BURST = %X'1'; literal QUI$M_FILE_BURST_EXP = %X'2'; literal QUI$M_FILE_DELETE = %X'4'; literal QUI$M_FILE_DOUBLE_SPACE = %X'8'; literal QUI$M_FILE_FLAG = %X'10'; literal QUI$M_FILE_FLAG_EXP = %X'20'; literal QUI$M_FILE_TRAILER = %X'40'; literal QUI$M_FILE_TRAILER_EXP = %X'80'; literal QUI$M_FILE_PAGE_HEADER = %X'100'; literal QUI$M_FILE_PAGINATE = %X'200'; literal QUI$M_FILE_PASSALL = %X'400'; literal QUI$M_FILE_PAGINATE_EXP = %X'800'; literal QUI$M_FILE_DELETE_ALWAYS = %X'1000'; literal QUI$S_FILE_FLAGS = 4; macro QUI$V_FILE_BURST = 0,0,1,0 %; ! /BURST macro QUI$V_FILE_BURST_EXP = 0,1,1,0 %; ! /[NO]BURST explicit (intentionally not documented) macro QUI$V_FILE_DELETE = 0,2,1,0 %; ! /DELETE macro QUI$V_FILE_DOUBLE_SPACE = 0,3,1,0 %; ! /SPACE macro QUI$V_FILE_FLAG = 0,4,1,0 %; ! /FLAG macro QUI$V_FILE_FLAG_EXP = 0,5,1,0 %; ! /[NO]FLAG explicit (intentionally not documented) macro QUI$V_FILE_TRAILER = 0,6,1,0 %; ! /TRAILER macro QUI$V_FILE_TRAILER_EXP = 0,7,1,0 %; ! /[NO]TRAILER explicit (intentionally not documented) macro QUI$V_FILE_PAGE_HEADER = 0,8,1,0 %; ! /HEADER macro QUI$V_FILE_PAGINATE = 0,9,1,0 %; ! /FEED macro QUI$V_FILE_PASSALL = 0,10,1,0 %; ! /PASSALL macro QUI$V_FILE_PAGINATE_EXP = 0,11,1,0 %; ! /[NO]FEED explicit (intentionally not documented) macro QUI$V_FILE_DELETE_ALWAYS = 0,12,1,0 %; ! /DELETE_ALWAYS ! ! Subfields of FILE_STATUS item code. ! literal QUI$M_FILE_CHECKPOINTED = %X'1'; literal QUI$M_FILE_EXECUTING = %X'2'; literal QUI$S_FILE_STATUS = 4; macro QUI$V_FILE_CHECKPOINTED = 0,0,1,0 %; ! File checkpointed macro QUI$V_FILE_EXECUTING = 0,1,1,0 %; ! File currently executing ! ! Subfields of FORM_FLAGS item code. ! literal QUI$M_FORM_SHEET_FEED = %X'1'; literal QUI$M_FORM_TRUNCATE = %X'2'; literal QUI$M_FORM_WRAP = %X'4'; literal QUI$S_FORM_FLAGS = 4; macro QUI$V_FORM_SHEET_FEED = 0,0,1,0 %; ! /SHEET_FEED macro QUI$V_FORM_TRUNCATE = 0,1,1,0 %; ! /TRUNCATE macro QUI$V_FORM_WRAP = 0,2,1,0 %; ! /WRAP ! ! Subfields of JOB_FLAGS item code. ! literal QUI$M_JOB_CPU_LIMIT = %X'1'; literal QUI$M_JOB_FILE_BURST = %X'2'; literal QUI$M_JOB_FILE_BURST_ONE = %X'4'; literal QUI$M_JOB_FILE_BURST_EXP = %X'8'; literal QUI$M_JOB_FILE_FLAG = %X'10'; literal QUI$M_JOB_FILE_FLAG_ONE = %X'20'; literal QUI$M_JOB_FILE_FLAG_EXP = %X'40'; literal QUI$M_JOB_FILE_TRAILER = %X'80'; literal QUI$M_JOB_FILE_TRAILER_ONE = %X'100'; literal QUI$M_JOB_FILE_TRAILER_EXP = %X'200'; literal QUI$M_JOB_LOG_DELETE = %X'400'; literal QUI$M_JOB_LOG_NULL = %X'800'; literal QUI$M_JOB_LOG_SPOOL = %X'1000'; literal QUI$M_JOB_LOWERCASE = %X'2000'; literal QUI$M_JOB_NOTIFY = %X'4000'; literal QUI$M_JOB_RESTART = %X'8000'; literal QUI$M_JOB_WSDEFAULT = %X'10000'; literal QUI$M_JOB_WSEXTENT = %X'20000'; literal QUI$M_JOB_WSQUOTA = %X'40000'; literal QUI$M_JOB_FILE_PAGINATE = %X'80000'; literal QUI$M_JOB_FILE_PAGINATE_EXP = %X'100000'; literal QUI$M_JOB_RETENTION = %X'200000'; literal QUI$M_JOB_ERROR_RETENTION = %X'400000'; literal QUI$M_JOB_RAD = %X'800000'; literal QUI$S_JOB_FLAGS = 4; macro QUI$V_JOB_CPU_LIMIT = 0,0,1,0 %; ! /CPUTIME explicit macro QUI$V_JOB_FILE_BURST = 0,1,1,0 %; ! /BURST=ALL macro QUI$V_JOB_FILE_BURST_ONE = 0,2,1,0 %; ! /BURST=ONE macro QUI$V_JOB_FILE_BURST_EXP = 0,3,1,0 %; ! /[NO]BURST explicit (intentionally not documented) macro QUI$V_JOB_FILE_FLAG = 0,4,1,0 %; ! /FLAG=ALL macro QUI$V_JOB_FILE_FLAG_ONE = 0,5,1,0 %; ! /FLAG=ONE macro QUI$V_JOB_FILE_FLAG_EXP = 0,6,1,0 %; ! /[NO]FLAG explicit (intentionally not documented) macro QUI$V_JOB_FILE_TRAILER = 0,7,1,0 %; ! /TRAILER=ALL macro QUI$V_JOB_FILE_TRAILER_ONE = 0,8,1,0 %; ! /TRAILER=ONE macro QUI$V_JOB_FILE_TRAILER_EXP = 0,9,1,0 %; ! /[NO]TRAILER explicit (intentionally not documented) macro QUI$V_JOB_LOG_DELETE = 0,10,1,0 %; ! /NOKEEP macro QUI$V_JOB_LOG_NULL = 0,11,1,0 %; ! /NOLOG_FILE macro QUI$V_JOB_LOG_SPOOL = 0,12,1,0 %; ! /PRINTER macro QUI$V_JOB_LOWERCASE = 0,13,1,0 %; ! /LOWERCASE macro QUI$V_JOB_NOTIFY = 0,14,1,0 %; ! /NOTIFY macro QUI$V_JOB_RESTART = 0,15,1,0 %; ! /RESTART macro QUI$V_JOB_WSDEFAULT = 0,16,1,0 %; ! /WSDEFAULT explicit macro QUI$V_JOB_WSEXTENT = 0,17,1,0 %; ! /WSEXTENT explicit macro QUI$V_JOB_WSQUOTA = 0,18,1,0 %; ! /WSQUOTA explicit macro QUI$V_JOB_FILE_PAGINATE = 0,19,1,0 %; ! /FEED macro QUI$V_JOB_FILE_PAGINATE_EXP = 0,20,1,0 %; ! /[NO]FEED explicit (intentionally not documented) macro QUI$V_JOB_RETENTION = 0,21,1,0 %; ! /RETAIN=ALWAYS macro QUI$V_JOB_ERROR_RETENTION = 0,22,1,0 %; ! /RETAIN=ERROR macro QUI$V_JOB_RAD = 0,23,1,0 %; ! /RAD explicit ! ! Subfields of JOB_STATUS item code. ! literal QUI$M_JOB_ABORTING = %X'1'; literal QUI$M_JOB_EXECUTING = %X'2'; literal QUI$M_JOB_HOLDING = %X'4'; literal QUI$M_JOB_INACCESSIBLE = %X'8'; literal QUI$M_JOB_REFUSED = %X'10'; literal QUI$M_JOB_REQUEUE = %X'20'; literal QUI$M_JOB_RESTARTING = %X'40'; literal QUI$M_JOB_RETAINED = %X'80'; literal QUI$M_JOB_STARTING = %X'100'; literal QUI$M_JOB_TIMED_RELEASE = %X'200'; literal QUI$M_JOB_SUSPENDED = %X'400'; literal QUI$M_JOB_PENDING = %X'800'; literal QUI$M_JOB_UNDEFINED = %X'1000'; literal QUI$M_JOB_STALLED = %X'2000'; literal QUI$M_JOB_INCOMPLETE = %X'4000'; literal QUI$M_JOB_COMPLETING = %X'8000'; literal QUI$S_JOB_STATUS = 4; macro QUI$V_JOB_ABORTING = 0,0,1,0 %; ! Job is aborting macro QUI$V_JOB_EXECUTING = 0,1,1,0 %; ! Job is executing macro QUI$V_JOB_HOLDING = 0,2,1,0 %; ! Job is holding for /HOLD macro QUI$V_JOB_INACCESSIBLE = 0,3,1,0 %; ! Job is inaccessible macro QUI$V_JOB_REFUSED = 0,4,1,0 %; ! Job was refused by symbiont macro QUI$V_JOB_REQUEUE = 0,5,1,0 %; ! Job will requeue after abort (intentionally not documented) macro QUI$V_JOB_RESTARTING = 0,6,1,0 %; ! Job started execution at least once (intentionally not documented) macro QUI$V_JOB_RETAINED = 0,7,1,0 %; ! Job was retained by /RETAIN macro QUI$V_JOB_STARTING = 0,8,1,0 %; ! Job is starting macro QUI$V_JOB_TIMED_RELEASE = 0,9,1,0 %; ! Job is holding for /AFTER macro QUI$V_JOB_SUSPENDED = 0,10,1,0 %; ! Job is suspended by STOP/QUEUE command macro QUI$V_JOB_PENDING = 0,11,1,0 %; ! Job is pending (see QUI$_JOB_PENDING_REASON for more information) macro QUI$V_JOB_UNDEFINED = 0,12,1,0 %; ! Job does not yet exist in db or is being removed from db macro QUI$V_JOB_STALLED = 0,13,1,0 %; ! Current job on stalled queue macro QUI$V_JOB_INCOMPLETE = 0,14,1,0 %; ! Job was processed by the symbiont but further processing is necessary macro QUI$V_JOB_COMPLETING = 0,15,1,0 %; ! Job has been completely processed literal QUI$V_JOB_TIMED = 9; ! Synonym for QUI$V_JOB_TIMED_RELEASE for V4 compatibility literal QUI$M_JOB_TIMED = 512; ! Synonym for QUI$M_JOB_TIMED_RELEASE for V4 compatibility ! ! Subfields of PENDING_JOB_REASON. ! ! Note that in the descriptions below "queue" refers to the execution queue in which a job resides, or to the set of execution ! queues that is the target of the generic queue in which a job resides. ! literal QUI$M_PEND_CHAR_MISMATCH = %X'1'; literal QUI$M_PEND_JOB_SIZE_MAX = %X'2'; literal QUI$M_PEND_JOB_SIZE_MIN = %X'4'; literal QUI$M_PEND_LOWERCASE_MISMATCH = %X'8'; literal QUI$M_PEND_NO_ACCESS = %X'10'; literal QUI$M_PEND_QUEUE_BUSY = %X'20'; literal QUI$M_PEND_QUEUE_STATE = %X'40'; literal QUI$M_PEND_STOCK_MISMATCH = %X'80'; literal QUI$S_PENDING_JOB_REASON = 4; macro QUI$V_PEND_CHAR_MISMATCH = 0,0,1,0 %; ! Queue's characteristics do not match job's requirements macro QUI$V_PEND_JOB_SIZE_MAX = 0,1,1,0 %; ! Print job's block size is too large to execute on queue (print job only) macro QUI$V_PEND_JOB_SIZE_MIN = 0,2,1,0 %; ! Print job's block size is too small to execute on queue (print job only) macro QUI$V_PEND_LOWERCASE_MISMATCH = 0,3,1,0 %; ! Queue's lowercase attribute does not match job's requirements (print job only) macro QUI$V_PEND_NO_ACCESS = 0,4,1,0 %; ! User does not have access to queue macro QUI$V_PEND_QUEUE_BUSY = 0,5,1,0 %; ! Job is ready to execute but must wait until other jobs ahead of it in the queue ! complete execution (this is a normal state that requires no user intervention) macro QUI$V_PEND_QUEUE_STATE = 0,6,1,0 %; ! Queue state prevents job from executing (see QUI$_QUEUE_STATUS for more info) macro QUI$V_PEND_STOCK_MISMATCH = 0,7,1,0 %; ! Stock type of mounted form on output execution queue does not match ! stock stock type required by form associated with job (print job only) ! ! Subfields of QUEUE_FLAGS item code. ! literal QUI$M_QUEUE_BATCH = %X'1'; literal QUI$M_QUEUE_CPU_DEFAULT = %X'2'; literal QUI$M_QUEUE_CPU_LIMIT = %X'4'; literal QUI$M_QUEUE_FILE_BURST = %X'8'; literal QUI$M_QUEUE_FILE_BURST_ONE = %X'10'; literal QUI$M_QUEUE_FILE_FLAG = %X'20'; literal QUI$M_QUEUE_FILE_FLAG_ONE = %X'40'; literal QUI$M_QUEUE_FILE_TRAILER = %X'80'; literal QUI$M_QUEUE_FILE_TRAILER_ONE = %X'100'; literal QUI$M_QUEUE_GENERIC = %X'200'; literal QUI$M_QUEUE_GENERIC_SELECTION = %X'400'; literal QUI$M_QUEUE_JOB_BURST = %X'800'; literal QUI$M_QUEUE_JOB_FLAG = %X'1000'; literal QUI$M_QUEUE_JOB_SIZE_SCHED = %X'2000'; literal QUI$M_QUEUE_JOB_TRAILER = %X'4000'; literal QUI$M_QUEUE_RETAIN_ALL = %X'8000'; literal QUI$M_QUEUE_RETAIN_ERROR = %X'10000'; literal QUI$M_QUEUE_SWAP = %X'20000'; literal QUI$M_QUEUE_TERMINAL = %X'40000'; literal QUI$M_QUEUE_WSDEFAULT = %X'80000'; literal QUI$M_QUEUE_WSEXTENT = %X'100000'; literal QUI$M_QUEUE_WSQUOTA = %X'200000'; literal QUI$M_QUEUE_FILE_PAGINATE = %X'400000'; literal QUI$M_QUEUE_RECORD_BLOCKING = %X'800000'; literal QUI$M_QUEUE_PRINTER = %X'1000000'; literal QUI$M_QUEUE_ACL_SPECIFIED = %X'2000000'; literal QUI$M_QUEUE_NOTIFY_ON_INTERRUPT = %X'4000000'; literal QUI$M_QUEUE_CHECKPOINT_FREQ = %X'8000000'; literal QUI$M_QUEUE_AUTOSTART = %X'10000000'; literal QUI$M_SECURITY_INACCESSIBLE = %X'20000000'; literal QUI$M_QUEUE_NO_INITIAL_FF = %X'40000000'; literal QUI$M_QUEUE_RAD = %X'80000000'; literal QUI$S_QUEUE_FLAGS = 4; macro QUI$V_QUEUE_BATCH = 0,0,1,0 %; ! /BATCH macro QUI$V_QUEUE_CPU_DEFAULT = 0,1,1,0 %; ! /CPUDEFAULT specified macro QUI$V_QUEUE_CPU_LIMIT = 0,2,1,0 %; ! /CPUMAXIMUM specified macro QUI$V_QUEUE_FILE_BURST = 0,3,1,0 %; ! /DEFAULT=BURST=ALL macro QUI$V_QUEUE_FILE_BURST_ONE = 0,4,1,0 %; ! /DEFAULT=BURST=ONE macro QUI$V_QUEUE_FILE_FLAG = 0,5,1,0 %; ! /DEFAULT=FLAG=ALL macro QUI$V_QUEUE_FILE_FLAG_ONE = 0,6,1,0 %; ! /DEFAULT=FLAG=ONE macro QUI$V_QUEUE_FILE_TRAILER = 0,7,1,0 %; ! /DEFAULT=TRAILER=ALL macro QUI$V_QUEUE_FILE_TRAILER_ONE = 0,8,1,0 %; ! /DEFAULT=TRAILER=ONE macro QUI$V_QUEUE_GENERIC = 0,9,1,0 %; ! /GENERIC macro QUI$V_QUEUE_GENERIC_SELECTION = 0,10,1,0 %; ! /ENABLE_GENERIC macro QUI$V_QUEUE_JOB_BURST = 0,11,1,0 %; ! /SEPARATE=BURST macro QUI$V_QUEUE_JOB_FLAG = 0,12,1,0 %; ! /SEPARATE=FLAG macro QUI$V_QUEUE_JOB_SIZE_SCHED = 0,13,1,0 %; ! /SCHEDULE=SIZE macro QUI$V_QUEUE_JOB_TRAILER = 0,14,1,0 %; ! /SEPARATE=TRAILER macro QUI$V_QUEUE_RETAIN_ALL = 0,15,1,0 %; ! /RETAIN=ALL macro QUI$V_QUEUE_RETAIN_ERROR = 0,16,1,0 %; ! /RETAIN=ERROR macro QUI$V_QUEUE_SWAP = 0,17,1,0 %; ! /NODISABLE_SWAPPING macro QUI$V_QUEUE_TERMINAL = 0,18,1,0 %; ! /DEVICE=TERMINAL or terminal device type reported by symbiont macro QUI$V_QUEUE_WSDEFAULT = 0,19,1,0 %; ! /WSDEFAULT specified macro QUI$V_QUEUE_WSEXTENT = 0,20,1,0 %; ! /WSEXTENT specified macro QUI$V_QUEUE_WSQUOTA = 0,21,1,0 %; ! /WSQUOTA specified macro QUI$V_QUEUE_FILE_PAGINATE = 0,22,1,0 %; ! /DEFAULT=FEED macro QUI$V_QUEUE_RECORD_BLOCKING = 0,23,1,0 %; ! /RECORD_BLOCKING macro QUI$V_QUEUE_PRINTER = 0,24,1,0 %; ! /DEVICE=PRINTER or printer device type reported by symbiont macro QUI$V_QUEUE_ACL_SPECIFIED = 0,25,1,0 %; ! ACL has been specified for queue macro QUI$V_QUEUE_NOTIFY_ON_INTERRUPT = 0,26,1,0 %; ! /NOTIFY=INTERRUPTION macro QUI$V_QUEUE_CHECKPOINT_FREQ = 0,27,1,0 %; ! /CHECKPOINT_FREQUENCY specified macro QUI$V_QUEUE_AUTOSTART = 0,28,1,0 %; ! /AUTOSTART_ON specified macro QUI$V_SECURITY_INACCESSIBLE = 0,29,1,0 %; ! Requestor does not have access to security information macro QUI$V_QUEUE_NO_INITIAL_FF = 0,30,1,0 %; ! /NO_INITIAL_FF macro QUI$V_QUEUE_RAD = 0,31,1,0 %; ! /RAD specified ! ! Subfields of QUEUE_STATUS item code. ! literal QUI$M_QUEUE_ALIGNING = %X'1'; literal QUI$M_QUEUE_IDLE = %X'2'; literal QUI$M_QUEUE_LOWERCASE = %X'4'; literal QUI$M_QUEUE_OPERATOR_REQUEST = %X'8'; literal QUI$M_QUEUE_PAUSED = %X'10'; literal QUI$M_QUEUE_PAUSING = %X'20'; literal QUI$M_QUEUE_REMOTE = %X'40'; literal QUI$M_QUEUE_RESETTING = %X'80'; literal QUI$M_QUEUE_RESUMING = %X'100'; literal QUI$M_QUEUE_SERVER = %X'200'; literal QUI$M_QUEUE_STALLED = %X'400'; literal QUI$M_QUEUE_STARTING = %X'800'; literal QUI$M_QUEUE_STOPPED = %X'1000'; literal QUI$M_QUEUE_STOPPING = %X'2000'; literal QUI$M_QUEUE_UNAVAILABLE = %X'4000'; literal QUI$M_QUEUE_CLOSED = %X'8000'; literal QUI$M_QUEUE_BUSY = %X'10000'; literal QUI$M_QUEUE_UNDEFINED = %X'20000'; literal QUI$M_QUEUE_AVAILABLE = %X'40000'; literal QUI$M_QUEUE_DISABLED = %X'80000'; literal QUI$M_QUEUE_AUTOSTART_INACTIVE = %X'100000'; literal QUI$M_QUEUE_STOP_PENDING = %X'200000'; literal QUI$S_QUEUE_STATUS = 4; macro QUI$V_QUEUE_ALIGNING = 0,0,1,0 %; ! Queue is aligning macro QUI$V_QUEUE_IDLE = 0,1,1,0 %; ! Queue is idle: no jobs executing and none available for execution macro QUI$V_QUEUE_LOWERCASE = 0,2,1,0 %; ! Lowercase device macro QUI$V_QUEUE_OPERATOR_REQUEST = 0,3,1,0 %; ! Queue is doing /OPERATOR (intentionally not documented) macro QUI$V_QUEUE_PAUSED = 0,4,1,0 %; ! Queue is paused macro QUI$V_QUEUE_PAUSING = 0,5,1,0 %; ! Queue is pausing macro QUI$V_QUEUE_REMOTE = 0,6,1,0 %; ! Remote device macro QUI$V_QUEUE_RESETTING = 0,7,1,0 %; ! Incomplete remote request to reset (OBSOLETE) macro QUI$V_QUEUE_RESUMING = 0,8,1,0 %; ! Queue is resuming from paused state macro QUI$V_QUEUE_SERVER = 0,9,1,0 %; ! /DEVICE=SERVER or reported to be a served queue by the symbiont macro QUI$V_QUEUE_STALLED = 0,10,1,0 %; ! Device is stalled macro QUI$V_QUEUE_STARTING = 0,11,1,0 %; ! Queue is starting macro QUI$V_QUEUE_STOPPED = 0,12,1,0 %; ! Queue is stopped macro QUI$V_QUEUE_STOPPING = 0,13,1,0 %; ! Queue is stopping macro QUI$V_QUEUE_UNAVAILABLE = 0,14,1,0 %; ! Device is unavailable macro QUI$V_QUEUE_CLOSED = 0,15,1,0 %; ! Queue is closed macro QUI$V_QUEUE_BUSY = 0,16,1,0 %; ! Queue is executing as many jobs as it is capable of executing macro QUI$V_QUEUE_UNDEFINED = 0,17,1,0 %; ! Queue does not yet exist in db or is being removed from db macro QUI$V_QUEUE_AVAILABLE = 0,18,1,0 %; ! At least one job is executing, but the queue is capable of executing more macro QUI$V_QUEUE_DISABLED = 0,19,1,0 %; ! Queue is not able to accept or process jobs; its QSIs are inactive macro QUI$V_QUEUE_AUTOSTART_INACTIVE = 0,20,1,0 %; ! AUTOSTART queue explicitly stopped macro QUI$V_QUEUE_STOP_PENDING = 0,21,1,0 %; ! Queue will be stopped when work currently in progress has completed ! ! Subfields of SEARCH_FLAGS item code. ! literal QUI$M_SEARCH_ALL_JOBS = %X'1'; literal QUI$M_SEARCH_WILDCARD = %X'2'; literal QUI$M_SEARCH_BATCH = %X'4'; literal QUI$M_SEARCH_SYMBIONT = %X'8'; literal QUI$M_SEARCH_THIS_JOB = %X'10'; literal QUI$M_SEARCH_PRINTER = %X'20'; literal QUI$M_SEARCH_SERVER = %X'40'; literal QUI$M_SEARCH_TERMINAL = %X'80'; literal QUI$M_SEARCH_GENERIC = %X'100'; literal QUI$M_SEARCH_GENERIC_TARGET = %X'200'; literal QUI$M_SEARCH_PENDING_JOBS = %X'400'; literal QUI$M_SEARCH_EXECUTING_JOBS = %X'800'; literal QUI$M_SEARCH_TIMED_RELEASE_JOBS = %X'1000'; literal QUI$M_SEARCH_HOLDING_JOBS = %X'2000'; literal QUI$M_SEARCH_RETAINED_JOBS = %X'4000'; literal QUI$M_SEARCH_FREEZE_CONTEXT = %X'8000'; literal QUI$M_SEARCH_OPEN_JOBS = %X'10000'; literal QUI$M_SEARCH_RESERVED_BIT1 = %X'20000'; literal QUI$M_SEARCH_RESERVED_BIT2 = %X'40000'; literal QUI$S_SEARCH_FLAGS = 4; macro QUI$V_SEARCH_ALL_JOBS = 0,0,1,0 %; ! Select all jobs (else only those with same username as caller) macro QUI$V_SEARCH_WILDCARD = 0,1,1,0 %; ! Force a wildcard operation macro QUI$V_SEARCH_BATCH = 0,2,1,0 %; ! Select batch queues macro QUI$V_SEARCH_SYMBIONT = 0,3,1,0 %; ! Select symbiont (output) queues (note that QUI$V_SEARCH_SYMBIONT is equivalent ! to setting QUI$V_SEARCH_PRINTER, QUI$V_SEARCH_SERVER, and QUI$V_SEARCH_TERMINAL) macro QUI$V_SEARCH_THIS_JOB = 0,4,1,0 %; ! Select only caller's batch job (forcing new context) macro QUI$V_SEARCH_PRINTER = 0,5,1,0 %; ! Select printer queues macro QUI$V_SEARCH_SERVER = 0,6,1,0 %; ! Select server queues macro QUI$V_SEARCH_TERMINAL = 0,7,1,0 %; ! Select terminal queues macro QUI$V_SEARCH_GENERIC = 0,8,1,0 %; ! Select generic queues macro QUI$V_SEARCH_GENERIC_TARGET = 0,9,1,0 %; ! Select generic target queues after selecting generic queue (for internal use) ! (note this option is NOT supported; it is intentionally not documented and ! reserved for Digital use) macro QUI$V_SEARCH_PENDING_JOBS = 0,10,1,0 %; ! Select only pending jobs macro QUI$V_SEARCH_EXECUTING_JOBS = 0,11,1,0 %; ! Select only executing jobs macro QUI$V_SEARCH_TIMED_RELEASE_JOBS = 0,12,1,0 %; ! Select only timed release jobs macro QUI$V_SEARCH_HOLDING_JOBS = 0,13,1,0 %; ! Select only holding jobs macro QUI$V_SEARCH_RETAINED_JOBS = 0,14,1,0 %; ! Select only retained jobs macro QUI$V_SEARCH_FREEZE_CONTEXT = 0,15,1,0 %; ! Do not advance wildcard context to next object in list at end of operation macro QUI$V_SEARCH_OPEN_JOBS = 0,16,1,0 %; ! Select only open jobs macro QUI$V_SEARCH_RESERVED_BIT1 = 0,17,1,0 %; ! Reserved to Compaq macro QUI$V_SEARCH_RESERVED_BIT2 = 0,18,1,0 %; ! Reserved to Compaq ! ! Subfields of SYMBIONT_FLAGS item code. ! ! Note: this item code is intentionally not documented and reserved for Digital use. ! literal QUI$M_SYM_NOTIFIES = %X'1'; literal QUI$M_SYM_REQUESTS_OPER = %X'2'; literal QUI$M_SYM_COPIES_FILE = %X'4'; literal QUI$M_SYM_COPIES_JOB = %X'8'; literal QUI$M_SYM_ACCEPTS_ALL_FORMS = %X'10'; literal QUI$M_SYM_NO_JOB_CHECKPOINT = %X'20'; literal QUI$S_SYMBIONT_FLAGS = 4; macro QUI$V_SYM_NOTIFIES = 0,0,1,0 %; ! Symbiont notifies for job completions macro QUI$V_SYM_REQUESTS_OPER = 0,1,1,0 %; ! Symbiont generates operator messages macro QUI$V_SYM_COPIES_FILE = 0,2,1,0 %; ! Symbiont generates multiple file copies macro QUI$V_SYM_COPIES_JOB = 0,3,1,0 %; ! Symbiont generates multiple job copies macro QUI$V_SYM_ACCEPTS_ALL_FORMS = 0,4,1,0 %; ! Symbiont processes all form types macro QUI$V_SYM_NO_JOB_CHECKPOINT = 0,5,1,0 %; ! Always reprocess full job on a restart ! ! Subfields of MANAGER_STATUS item code. ! literal QUI$M_MANAGER_START_PENDING = %X'1'; literal QUI$M_MANAGER_STARTING = %X'2'; literal QUI$M_MANAGER_RUNNING = %X'4'; literal QUI$M_MANAGER_FAILOVER = %X'8'; literal QUI$M_MANAGER_STOPPING = %X'10'; literal QUI$M_MANAGER_STOPPED = %X'20'; literal QUI$S_MANAGER_STATUS = 4; macro QUI$V_MANAGER_START_PENDING = 0,0,1,0 %; ! Queue manager will start when a node is available macro QUI$V_MANAGER_STARTING = 0,1,1,0 %; ! Queue manager is starting macro QUI$V_MANAGER_RUNNING = 0,2,1,0 %; ! Queue manager is processing work macro QUI$V_MANAGER_FAILOVER = 0,3,1,0 %; ! Queue manager is failing over to pick up new startup values macro QUI$V_MANAGER_STOPPING = 0,4,1,0 %; ! Queue manager is shutting down macro QUI$V_MANAGER_STOPPED = 0,5,1,0 %; ! Queue manager is stopped !*** MODULE $QSRVDEF IDENT X-9 *** ! ! QIOserver Control and Information ($QIOSERVER) definitions. ! ! NOTE: New items must always be added at the end so users will not have to relink. ! ! ! Function codes ! literal QSRV$_CANCEL_OPERATION = 1; ! Cancel a wildcard operation literal QSRV$_COMMIT_VOLATILE = 2; ! Commit the volatile configuration to permanent literal QSRV$_SET_CLIENT = 3; ! Set client configuration controls literal QSRV$_SET_DEVICE = 4; ! Set device configuration controls literal QSRV$_SET_LOGGING = 5; ! Set logging literal QSRV$_SET_SERVER = 6; ! Set server configuration controls literal QSRV$_SET_SERVICE = 7; ! Set client-server path service literal QSRV$_SHOW_CLIENT = 8; ! Show client configuration and operational data literal QSRV$_SHOW_DEVICE = 9; ! Show device configuration literal QSRV$_SHOW_LOGGING = 10; ! Show logging literal QSRV$_SHOW_SERVER = 11; ! Show server configuration and operational data literal QSRV$_SHOW_SERVICE = 12; ! Show client-server path service literal QSRV$K_MIN_FUNC = 1; ! Minimum QIOSERVER function code literal QSRV$K_MAX_FUNC = 12; ! Maximum QIOSERVER function code ! ! Item codes ! ! Item codes are limited to a byte value for use with the context block validation ! literal QSRV$_ADD_FILTER = 1; ! Add message event filter 3 tuple literal QSRV$_ADD_POOL = 2; ! Add a block of memory for server I/O use literal QSRV$_AUTO_ADD_NPP = 3; ! T/F auto add NPP for server I/O literal QSRV$_CLEAR_FILTERS = 4; ! Clear all message event filters literal QSRV$_CLIENT_NAME = 5; ! Client SCSNODE name - SYSGEN SCSNODE literal QSRV$_CLIENT_SCSSYSTEMID = 6; ! Client SCS system id - SYSGEN SCSSYSTEMID literal QSRV$_DEFAULT_PRIORITY = 7; ! The default path priority literal QSRV$_DELETE_POOL_BLOCK = 8; ! Remove an allocated pool block literal QSRV$_DEVICE_NAME = 9; ! Full device name literal QSRV$_FLAGS = 10; ! System service control flags literal QSRV$_KCC_COUNTERS = 11; ! KClient connection counter data literal QSRV$_KCD_COUNTERS = 12; ! KClient device counter data literal QSRV$_KCR_COUNTERS = 13; ! KClient root counter data literal QSRV$_KSC_COUNTERS = 14; ! KServer connection counter data literal QSRV$_KSD_COUNTERS = 15; ! KServer device counter data literal QSRV$_KSR_COUNTERS = 16; ! KServer root counter data literal QSRV$_KSR_FUNCTION_HISTOGRAM = 17; ! KServer function code histogram literal QSRV$_KSR_IO_BUFFER_HISTOGRAM = 18; ! KServer histogram of I/O buffer sizes literal QSRV$_LIST_FILTERS = 19; ! List all message event filters literal QSRV$_LIST_POOL_BLOCKS = 20; ! Display server I/O pool blocks literal QSRV$_LIST_POOL_STATS = 21; ! Display server I/O pool statistics literal QSRV$_LOG_MODE = 22; ! Logging modes literal QSRV$_LOG_NODE = 23; ! Logging SCSNODE name literal QSRV$_LOG_RESTART = 24; ! Restart data logging literal QSRV$_NBR_ALTERNATE_PATHS = 25; ! Number of client resident alternate paths literal QSRV$_NBR_CLIENTS = 26; ! Number of clients seen by server literal QSRV$_NBR_CLIENT_THREADS = 27; ! Number of client configure threads literal QSRV$_NBR_CREDITS = 28; ! Number of SCS credits literal QSRV$_NBR_DEVICES = 29; ! Number of devices seen and available literal QSRV$_NBR_FILTERS = 30; ! Number of message event filters in list literal QSRV$_NBR_IO_FRAGMENTS = 31; ! Max number of I/O fragments per transfer literal QSRV$_NBR_SERVERS = 32; ! Number of servers seen by client literal QSRV$_NBR_SERVER_THREADS = 33; ! Number of server configure threads literal QSRV$_PATH_STATE = 34; ! Path state literal QSRV$_POOL_WAIT_TMO = 35; ! Number of seconds KServer Pool hold literal QSRV$_QSLUN_AUTO = 36; ! T/F KClient to get QSLUN automatically literal QSRV$_QSRV_COMPONENT = 37; ! Component of the QIOserver sub-system literal QSRV$_REMOVE_FILTER = 38; ! Remove message event filter 3 tuple literal QSRV$_SEARCH_NAME = 39; ! Node or device name for wildcard search literal QSRV$_SEQUENTIAL_ORDER = 40; ! T/F Order IRPs by sequence #, def - priority literal QSRV$_SERVER_NAME = 41; ! Server SCS node name - SYSGEN SCSNODE literal QSRV$_SERVER_SCSSYSTEMID = 42; ! Server SCS system id - SYSGEN SCSSYSTEMID literal QSRV$_SERVICE_STATE = 43; ! Device serve/noserve state literal QSRV$_UCC_COUNTERS = 44; ! UClient connection counter data literal QSRV$_UCR_COUNTERS = 45; ! UClient root counter data literal QSRV$_USC_COUNTERS = 46; ! UServer connection counter data literal QSRV$_USR_COUNTERS = 47; ! UServer root counter data literal QSRV$K_MIN_ITEM = 1; ! Minimum documented item code literal QSRV$K_MAX_ITEM = 47; ! Maximum documented item code ! ! The following structure defines the bit masks for the QSRV$_FLAGS item code. ! literal QSRV$M_PERMANENT = %X'1'; literal QSRV$M_VOLATILE = %X'2'; literal QSRV$M_ADD = %X'4'; literal QSRV$M_CLIENT_CONFIG = %X'10000'; literal QSRV$M_SERVER_CONFIG = %X'20000'; literal QSRV$M_CLIENT_SEARCH = %X'40000'; literal QSRV$M_DEVICE_SEARCH = %X'80000'; literal QSRV$M_SERVER_SEARCH = %X'100000'; literal QSRV$M_SEARCH_DONE = %X'200000'; literal QSRV$M_CTX_ALLOCATED = %X'400000'; literal QSRV$S_QSRV_FLAGS = 4; macro QSRV$L_FLAGS = 0,0,32,0 %; macro QSRV$V_PERMANENT = 0,0,1,0 %; ! Applies to permanent database macro QSRV$V_VOLATILE = 0,1,1,0 %; ! Applies to volatile database macro QSRV$V_ADD = 0,2,1,0 %; ! Allow volatile database structure creation ! The following flags are reserved for Compaq internal use. macro QSRV$V_CLIENT_CONFIG = 0,16,1,0 %; ! Use the client configuration macro QSRV$V_SERVER_CONFIG = 0,17,1,0 %; ! Use the server configuration macro QSRV$V_CLIENT_SEARCH = 0,18,1,0 %; ! Search name is for clients macro QSRV$V_DEVICE_SEARCH = 0,19,1,0 %; ! Search name is for devices macro QSRV$V_SERVER_SEARCH = 0,20,1,0 %; ! Search name is for servers macro QSRV$V_SEARCH_DONE = 0,21,1,0 %; ! Search is done macro QSRV$V_CTX_ALLOCATED = 0,22,1,0 %; ! Allocated context block literal QSRV_FLAGS$C_LENGTH = 4; literal QSRV_FLAGS$K_LENGTH = 4; ! ! The following structure defines the bit masks for the QSRV$_LOG_MODE item code. ! literal QSRV_LOG$M_ACTIV_UCLOG = %X'10000'; literal QSRV_LOG$M_ACTIV_USLOG = %X'20000'; literal QSRV_LOG$M_ACTIV_KCLOG = %X'40000'; literal QSRV_LOG$M_ACTIV_KSLOG = %X'80000'; literal QSRV_LOG$M_ACTIV_MSG = %X'100000'; literal QSRV_LOG$M_ACTIV_EVT = %X'200000'; literal QSRV_LOG$M_ACTIV_CNT = %X'400000'; literal QSRV_LOG$M_ACTIV_HST = %X'800000'; literal QSRV_LOG$M_ACTIV_VBS = %X'1000000'; literal QSRV_LOG$S_QSRV_LOG = 4; macro QSRV_LOG$L_FLAGS = 0,0,32,0 %; macro QSRV_LOG$v_filler1 = 0,0,16,0 %; literal QSRV_LOG$s_filler1 = 16; ! Reserved Compaq internal use macro QSRV_LOG$V_ACTIV_UCLOG = 0,16,1,0 %; ! Turn on Uclient logging macro QSRV_LOG$V_ACTIV_USLOG = 0,17,1,0 %; ! Turn on Userver logging macro QSRV_LOG$V_ACTIV_KCLOG = 0,18,1,0 %; ! Turn on Kclient logging macro QSRV_LOG$V_ACTIV_KSLOG = 0,19,1,0 %; ! Turn on Kserver logging macro QSRV_LOG$V_ACTIV_MSG = 0,20,1,0 %; ! Turn on message logging macro QSRV_LOG$V_ACTIV_EVT = 0,21,1,0 %; ! Turn on event logging macro QSRV_LOG$V_ACTIV_CNT = 0,22,1,0 %; ! Turn on counter logging macro QSRV_LOG$V_ACTIV_HST = 0,23,1,0 %; ! Turn on histogram logging macro QSRV_LOG$V_ACTIV_VBS = 0,24,1,0 %; ! Turn on QIO$CONFIGURE verbose macro QSRV_LOG$v_filler2 = 0,25,7,0 %; literal QSRV_LOG$s_filler2 = 7; ! Reserved Compaq internal use literal QSRV_LOG$C_LENGTH = 4; literal QSRV_LOG$K_LENGTH = 4; ! ! Message logging type codes ! literal QSRV$K_MSG_SCS = 1; ! SCS messages literal QSRV$K_MSG_QSP = 2; ! QSP messages literal QSRV$K_MSG_ICC_CONN = 3; ! ICC messages - connection management literal QSRV$K_MSG_ICC_DATA = 4; ! ICC messages - data transfer literal QSRV$K_MIN_MSG = 1; ! Minimum documented message filter type code literal QSRV$K_MAX_MSG = 4; ! Minimum documented message filter type code ! ! The following structure defines the data required to specify or receive ! a logging data filter tuple. Associated with QSRV$_ADD_FILTER, ! QSV$_LIST_FILTERS, and QSRV$_REMOVE_FILTER item codes. ! literal QSRV_FILTER$S_QSRV_FILTER = 84; macro QSRV_FILTER$t_node = 0,0,0,0 %; literal QSRV_FILTER$s_node = 16; ! Message source node macro QSRV_FILTER$l_type = 16,0,32,0 %; ! Message source type macro QSRV_FILTER$t_device = 20,0,0,0 %; literal QSRV_FILTER$s_device = 64; ! Message source device literal QSRV_FILTER$C_LENGTH = 84; literal QSRV_FILTER$K_LENGTH = 84; ! ! The following structure is used to receive histogram data ! with QSRV$_KSR_FUNCTION_HISTOGRAM and QSRV$_KSR_IO_BUFFER_HISTOGRAM ! item codes. ! ! The bucket_count is within the range 1 to 64. data[1] to data[64] ! will hold the in range histogram data. data[0] will hold the ! underflow data and data[65] will hold the overflow data. This ! structure is for reporting predefined histograms via item code. The ! low value is in bucket_base and the high value is bucket_base plus ! bucket_range. ! literal QSRV_HISTOGRAM$S_QSRV_HISTOGRAM = 552; macro QSRV_HISTOGRAM$L_BUCKET_COUNT = 0,0,32,0 %; ! Number of buckets - 2 macro QSRV_HISTOGRAM$Q_BUCKET_BASE = 8,0,0,0 %; literal QSRV_HISTOGRAM$S_BUCKET_BASE = 8; ! Base value macro QSRV_HISTOGRAM$Q_BUCKET_RANGE = 16,0,0,0 %; literal QSRV_HISTOGRAM$S_BUCKET_RANGE = 8; ! Value range macro QSRV_HISTOGRAM$Q_DATA = 24,0,0,0 %; literal QSRV_HISTOGRAM$S_DATA = 528; ! Histogram data literal QSRV_HISTOGRAM$C_UNDERFLOW = 0; literal QSRV_HISTOGRAM$C_OVERFLOW = 65; literal QSRV_HISTOGRAM$C_LENGTH = 552; literal QSRV_HISTOGRAM$K_LENGTH = 552; ! ! The following structure is used for the IOSB declaration. The IOSB is a ! 2 longword structure which is initialized to zero by the QIOSERVER system ! service as part of request initialization. The first longword will receive ! the final condition code for the request as determined by QIO$CONFIGURE. ! literal QSRV_IOSB$S_QSRV_IOSB = 8; macro QSRV_IOSB$l_pri_status = 0,0,32,0 %; ! Primary request status macro QSRV_IOSB$l_sec_status = 4,0,32,0 %; ! Secondary request status literal QSRV_IOSB$C_LENGTH = 8; literal QSRV_IOSB$K_LENGTH = 8; ! ! The following structure defines the bit masks for the QSRV$_DEFAULT_PRIORITY ! and QSRV$_PATH_STATE item codes. ! ! For the QSRV$_DEFAULT_PRIORITY item code only the priority mask is valid. ! ! For the QSRV$_PATH_STATE item code an array of two of these structures is ! used. The first entry contains a mask of the associated bits in the value ! component (second entry) which are valid for the operation during a SET ! function. Only the value component is filled for a SHOW function. ! literal QSRV_PATH$M_PRIORITY = %X'FF'; literal QSRV_PATH$M_LOCAL2SERVER = %X'4000000'; literal QSRV_PATH$M_QVALID = %X'8000000'; literal QSRV_PATH$M_VALID = %X'10000000'; literal QSRV_PATH$M_SERVED = %X'20000000'; literal QSRV_PATH$M_EXCLUSIVE = %X'40000000'; literal QSRV_PATH$M_CURRENT = %X'80000000'; literal QSRV_PATH$m_filler2 = %X'3FFFFFF'; literal QSRV_PATH$M_USEABLE_PATH = %X'3C000000'; literal QSRV_PATH$m_filler3 = %X'C0000000'; literal QSRV_PATH$S_QSRV_PATH = 4; macro QSRV_PATH$L_PATH_STATE = 0,0,32,0 %; ! Path state macro QSRV_PATH$V_PRIORITY = 0,0,8,0 %; literal QSRV_PATH$S_PRIORITY = 8; ! Path priority macro QSRV_PATH$V_LOCAL2SERVER = 0,26,1,0 %; ! Device is local to the server macro QSRV_PATH$V_QVALID = 0,27,1,0 %; ! Path QSLUN is valid macro QSRV_PATH$V_VALID = 0,28,1,0 %; ! Path is valid macro QSRV_PATH$V_SERVED = 0,29,1,0 %; ! Path is served macro QSRV_PATH$V_EXCLUSIVE = 0,30,1,0 %; ! Path exclusivity macro QSRV_PATH$V_CURRENT = 0,31,1,0 %; ! This path is the current path macro QSRV_PATH$v_filler2 = 0,0,26,0 %; literal QSRV_PATH$s_filler2 = 26; macro QSRV_PATH$V_USEABLE_PATH = 0,26,4,0 %; literal QSRV_PATH$S_USEABLE_PATH = 4; ! Mask for Qvalid,valid,and served macro QSRV_PATH$v_filler3 = 0,30,2,0 %; literal QSRV_PATH$s_filler3 = 2; literal QSRV_PATH$C_LENGTH = 4; literal QSRV_PATH$K_LENGTH = 4; ! ! The following structure defines bit masks for the QSRV$_ADD_POOL item ! code and a structure for the QSRV$_DELETE_POOL_BLOCK item code. ! literal QSRV_POOL$M_SIZE = %X'7FFFFFFF'; literal QSRV_POOL$M_NPP = %X'80000000'; literal QSRV_POOL$S_QSRV_POOL = 4; macro QSRV_POOL$L_BLOCK_ID = 0,0,32,0 %; ! ID of pool block to delete macro QSRV_POOL$V_SIZE = 0,0,31,0 %; literal QSRV_POOL$S_SIZE = 31; ! Number of bytes macro QSRV_POOL$V_NPP = 0,31,1,0 %; ! From non-paged pool and ! from S2 space if not set macro QSRV_POOL$L_MODIFY = 0,0,32,0 %; ! Change to pool literal QSRV_POOL$C_LENGTH = 4; literal QSRV_POOL$K_LENGTH = 4; ! ! The following structure defines the data for the QSRV$_LIST_POOL_STATS ! item code. ! literal QSRV_PLST$S_QSRV_PLST = 56; macro QSRV_PLST$R_POOL_STAT = 0,0,0,0 %; literal QSRV_PLST$S_POOL_STAT = 56; macro QSRV_PLST$L_TOT_SIZE = 0,0,32,0 %; ! Total number of bytes for type macro QSRV_PLST$L_FREE_SIZE = 4,0,32,0 %; ! Amount of free space in bytes macro QSRV_PLST$L_NBR_BLOCKs = 8,0,32,0 %; ! Number of active additions macro QSRV_PLST$L_NBR_FRAGMENTS = 12,0,32,0 %; ! Total number of fragments macro QSRV_PLST$L_MAX_FRAG_SIZE = 16,0,32,0 %; ! Size in bytes of largest fragment macro QSRV_PLST$L_NPP_ADD_REQS = 20,0,32,0 %; ! Count of requests to add NPP macro QSRV_PLST$L_MAX_NPP_ADD_REQ = 24,0,32,0 %; ! Max NPP request size ! ! The following constants may be used to reference the pool statistics ! data defined previously. ! literal QSRV_PLST$K_S2 = 0; ! S2 Space pool literal QSRV_PLST$K_NPP = 1; ! Non-paged pool literal QSRV_PLST$C_LENGTH = 56; literal QSRV_PLST$K_LENGTH = 56; ! ! The following structure defines the data for the QSRV$_LIST_POOL_BLOCKS ! item code. ! literal QSRV_PLBLK$M_SIZE = %X'7FFFFFFF'; literal QSRV_PLBLK$M_NPP = %X'80000000'; literal QSRV_PLBLK$S_QSRV_PLBLK = 20; macro QSRV_PLBLK$L_BLOCK_ID = 0,0,32,0 %; ! Block identifier macro QSRV_PLBLK$L_BLOCK_SIZE_TYPE = 4,0,32,0 %; macro QSRV_PLBLK$V_SIZE = 4,0,31,0 %; literal QSRV_PLBLK$S_SIZE = 31; ! Number of bytes in block macro QSRV_PLBLK$V_NPP = 4,31,1,0 %; ! From non-paged pool if set macro QSRV_PLBLK$L_FREE_SIZE = 8,0,32,0 %; ! Amount of free space in bytes macro QSRV_PLBLK$L_NBR_FRAGMENTS = 12,0,32,0 %; ! Total number of fragments macro QSRV_PLBLK$L_MAX_FRAG_SIZE = 16,0,32,0 %; ! Size in bytes of largest fragment literal QSRV_PLBLK$C_LENGTH = 20; literal QSRV_PLBLK$K_LENGTH = 20; ! ! The following structure defines the data for the QSRV$_KCR_COUNTERS ! item code. It will receive QIOServer Client root data. ! literal QSRV_KCRC$S_QSRV_KCRC = 40; macro QSRV_KCRC$L_DRIVERS = 0,0,32,0 %; ! Number of drivers configured macro QSRV_KCRC$L_DEVICES = 4,0,32,0 %; ! Number of devices configured macro QSRV_KCRC$L_ACT_SERVER_CONNS = 8,0,32,0 %; ! Number of active server connections macro QSRV_KCRC$L_TOT_SERVERS_SEEN = 12,0,32,0 %; ! Total number of servers ever seen macro QSRV_KCRC$Q_CYCLES_PER_SEC = 16,0,0,0 %; literal QSRV_KCRC$S_CYCLES_PER_SEC = 8; ! Number of cycle ticks per second macro QSRV_KCRC$Q_TOT_SIO_TICS = 24,0,0,0 %; literal QSRV_KCRC$S_TOT_SIO_TICS = 8; ! Accumulated CPU time per simple I/O macro QSRV_KCRC$Q_TOT_SIO = 32,0,0,0 %; literal QSRV_KCRC$S_TOT_SIO = 8; ! Total simple I/Os literal QSRV_KCRC$C_LENGTH = 40; literal QSRV_KCRC$K_LENGTH = 40; ! ! The following structure defines the data for the QSRV$_KCC_COUNTERS ! item code. It will receive QIOServer Client connection event data. ! ! QSRV_KCRC$L_SERVERS indicates the number of active connections. ! literal QSRV_KCCC$S_QSRV_KCCC = 64; macro QSRV_KCCC$Q_SCSSYSTEMID = 0,0,0,0 %; literal QSRV_KCCC$S_SCSSYSTEMID = 8; ! SCSSYSTEMID of server for this connection macro QSRV_KCCC$Q_IO_COUNT = 8,0,0,0 %; literal QSRV_KCCC$S_IO_COUNT = 8; ! Overall I/O operations on this connection macro QSRV_KCCC$Q_COMPLEX_COUNT = 16,0,0,0 %; literal QSRV_KCCC$S_COMPLEX_COUNT = 8; ! Total complex I/O operations on this connection macro QSRV_KCCC$Q_CONTROL_COUNT = 24,0,0,0 %; literal QSRV_KCCC$S_CONTROL_COUNT = 8; ! Total control I/O operations on this connection macro QSRV_KCCC$Q_NBR_CONN = 32,0,0,0 %; literal QSRV_KCCC$S_NBR_CONN = 8; ! Number of times a connection has been made to this server macro QSRV_KCCC$Q_CONN_TIME = 40,0,0,0 %; literal QSRV_KCCC$S_CONN_TIME = 8; ! Time of last connection macro QSRV_KCCC$Q_NBR_DEVICES = 48,0,0,0 %; literal QSRV_KCCC$S_NBR_DEVICES = 8; ! Number of devices using this connection as current path macro QSRV_KCCC$L_OPS_STALLED = 56,0,32,0 %; ! Total operations stalled in Kclient for this connection macro QSRV_KCCC$W_CREDIT_WAIT = 60,0,16,0 %; ! SCS credit waits for this connection from the CDT macro QSRV_KCCC$w_reserved_1 = 62,0,16,0 %; ! Reserved for alignment literal QSRV_KCCC$C_LENGTH = 64; literal QSRV_KCCC$K_LENGTH = 64; ! ! The following structure defines the data for the QSRV$_KCD_COUNTERS ! item code. It will receive QIOServer Client device data. ! ! QSRV_KCRC$L_DEVICES indicates the number of devices. ! literal QSRV_KCDC$S_QSRV_KCDC = 64; macro QSRV_KCDC$T_NAME = 0,0,0,0 %; literal QSRV_KCDC$S_NAME = 16; ! Device name in ASCIC form macro QSRV_KCDC$B_NAME_LEN = 0,0,8,0 %; macro QSRV_KCDC$IB_NAME_LEN = 0,0,8,0 %; ! Character count macro QSRV_KCDC$T_NAME_STR = 1,0,0,0 %; literal QSRV_KCDC$S_NAME_STR = 15; ! Character string macro QSRV_KCDC$Q_IO_COUNT = 16,0,0,0 %; literal QSRV_KCDC$S_IO_COUNT = 8; ! Overall I/O operations to this device macro QSRV_KCDC$Q_COMPLEX_COUNT = 24,0,0,0 %; literal QSRV_KCDC$S_COMPLEX_COUNT = 8; ! Total complex I/O operations to this device macro QSRV_KCDC$Q_CONTROL_COUNT = 32,0,0,0 %; literal QSRV_KCDC$S_CONTROL_COUNT = 8; ! Total control I/O operations to this device macro QSRV_KCDC$Q_RT_TIME = 40,0,0,0 %; literal QSRV_KCDC$S_RT_TIME = 8; ! Overall round-trip time macro QSRV_KCDC$L_OPS_IN_SERVER = 48,0,32,0 %; ! Current operations in server for this device macro QSRV_KCDC$L_OPS_STALLED = 52,0,32,0 %; ! Total operations stalled in Kclient for this device macro QSRV_KCDC$L_PATHS = 56,0,32,0 %; ! Total paths configured for this device macro QSRV_KCDC$l_reserved = 60,0,32,0 %; literal QSRV_KCDC$C_LENGTH = 64; literal QSRV_KCDC$K_LENGTH = 64; ! ! The following structure defines the data for the QSRV$_KSR_COUNTERS ! item code. It will receive QIOServer Server root data. ! literal QSRV_KSRC$S_QSRV_KSRC = 88; macro QSRV_KSRC$L_DEVICES = 0,0,32,0 %; ! Number of devices configured macro QSRV_KSRC$L_ACT_CLIENT_CONNS = 4,0,32,0 %; ! Number of active connections with clients macro QSRV_KSRC$L_TOT_CLIENTS_SEEN = 8,0,32,0 %; ! Total number of clients ever seen macro QSRV_KSRC$Q_CYCLES_PER_SEC = 16,0,0,0 %; literal QSRV_KSRC$S_CYCLES_PER_SEC = 8; ! Number of cycle ticks per second macro QSRV_KSRC$Q_PEAK_BUFFER = 24,0,0,0 %; literal QSRV_KSRC$S_PEAK_BUFFER = 8; ! Peak buffer pool usage in KB macro QSRV_KSRC$Q_BUFFER_WAIT = 32,0,0,0 %; literal QSRV_KSRC$S_BUFFER_WAIT = 8; ! Number of times I/Os waited for buffer space macro QSRV_KSRC$Q_FRAGMENTS = 40,0,0,0 %; literal QSRV_KSRC$S_FRAGMENTS = 8; ! Number of I/O fragments performed macro QSRV_KSRC$Q_FRAG_IO = 48,0,0,0 %; literal QSRV_KSRC$S_FRAG_IO = 8; ! Number of I/O operations fragmented macro QSRV_KSRC$Q_QSMQE_EXP = 56,0,0,0 %; literal QSRV_KSRC$S_QSMQE_EXP = 8; ! Number of times Kserver expanded QSMQE list macro QSRV_KSRC$Q_PEAK_QSMQE = 64,0,0,0 %; literal QSRV_KSRC$S_PEAK_QSMQE = 8; ! Max number of QSMQEs ever allocated macro QSRV_KSRC$Q_TOT_SIO_TICS = 72,0,0,0 %; literal QSRV_KSRC$S_TOT_SIO_TICS = 8; ! Accumulated CPU time per simple I/O macro QSRV_KSRC$Q_TOT_SIO = 80,0,0,0 %; literal QSRV_KSRC$S_TOT_SIO = 8; ! Total simple I/O operations literal QSRV_KSRC$C_LENGTH = 88; literal QSRV_KSRC$K_LENGTH = 88; ! ! The following structure defines the data for the QSRV$_KSC_COUNTERS ! item code. It will receive QIOServer Server connection event data. ! ! QSRV_KSRC$L_CLIENTS indicates the number of connections. ! literal QSRV_KSCC$S_QSRV_KSCC = 64; macro QSRV_KSCC$Q_SCSSYSTEMID = 0,0,0,0 %; literal QSRV_KSCC$S_SCSSYSTEMID = 8; ! SCSSYSTEMID of client for this connection macro QSRV_KSCC$Q_IO_COUNT = 8,0,0,0 %; literal QSRV_KSCC$S_IO_COUNT = 8; ! Overall I/O operations on this connection macro QSRV_KSCC$Q_COMPLEX_COUNT = 16,0,0,0 %; literal QSRV_KSCC$S_COMPLEX_COUNT = 8; ! Total complex I/O operations on this connection macro QSRV_KSCC$Q_CONTROL_COUNT = 24,0,0,0 %; literal QSRV_KSCC$S_CONTROL_COUNT = 8; ! Total control I/O operations on this connection macro QSRV_KSCC$Q_NBR_CONN = 32,0,0,0 %; literal QSRV_KSCC$S_NBR_CONN = 8; ! Number of times a connection has been made to this client macro QSRV_KSCC$Q_CONN_TIME = 40,0,0,0 %; literal QSRV_KSCC$S_CONN_TIME = 8; ! Time of last connection macro QSRV_KSCC$Q_BAD_MSGS = 48,0,0,0 %; literal QSRV_KSCC$S_BAD_MSGS = 8; ! Number of bad messages received on this connection macro QSRV_KSCC$W_CREDIT_WAIT = 56,0,16,0 %; ! SCS credit waits for this connection macro QSRV_KSCC$W_BDLT_WAIT = 58,0,16,0 %; ! SCS BDLT waits for this connection macro QSRV_KSCC$l_reserved = 60,0,32,0 %; literal QSRV_KSCC$C_LENGTH = 64; literal QSRV_KSCC$K_LENGTH = 64; ! ! The following structure defines the data for the QSRV$_KSD_COUNTERS ! item code. It will receive QIOServer server device data. ! ! QSRV_KSRC$L_DEVICES indicates the number of devices. ! literal QSRV_KSDC$S_QSRV_KSDC = 56; macro QSRV_KSDC$T_NAME = 0,0,0,0 %; literal QSRV_KSDC$S_NAME = 16; ! Device name in ASCIC form macro QSRV_KSDC$B_NAME_LEN = 0,0,8,0 %; macro QSRV_KSDC$IB_NAME_LEN = 0,0,8,0 %; ! Character count macro QSRV_KSDC$T_NAME_STR = 1,0,0,0 %; literal QSRV_KSDC$S_NAME_STR = 15; ! Character string macro QSRV_KSDC$Q_IO_COUNT = 16,0,0,0 %; literal QSRV_KSDC$S_IO_COUNT = 8; ! Overall I/O operations to this device macro QSRV_KSDC$Q_COMPLEX_COUNT = 24,0,0,0 %; literal QSRV_KSDC$S_COMPLEX_COUNT = 8; ! Total complex I/O operations to this device macro QSRV_KSDC$Q_CONTROL_COUNT = 32,0,0,0 %; literal QSRV_KSDC$S_CONTROL_COUNT = 8; ! Total control I/O operations to this device macro QSRV_KSDC$Q_SIO_DEV_TIME = 40,0,0,0 %; literal QSRV_KSDC$S_SIO_DEV_TIME = 8; ! Total time spent in the device for simple I/O operations macro QSRV_KSDC$L_QUEUE_LENGTH = 48,0,32,0 %; ! Number of operations in the device now from Kserver macro QSRV_KSDC$L_OPS_STALLED = 52,0,32,0 %; ! Number of operations stalled literal QSRV_KSDC$C_LENGTH = 56; literal QSRV_KSDC$K_LENGTH = 56; ! ! The following structure defines the data for the QSRV$_UCR_COUNTERS ! item code. It will receive QIO$CONFIGURE Client root data. ! literal QSRV_UCRC$S_QSRV_UCRC = 40; macro QSRV_UCRC$L_DEVICES = 0,0,32,0 %; ! Number of configured devices macro QSRV_UCRC$L_PATHS = 4,0,32,0 %; ! Total number of configured paths macro QSRV_UCRC$L_SERVERS = 8,0,32,0 %; ! Total number of configured servers macro QSRV_UCRC$L_PK_DC_THREADS = 12,0,32,0 %; ! Peak device configuration threads macro QSRV_UCRC$L_PK_SRV_THREAD = 16,0,32,0 %; ! Peak servers per thread macro QSRV_UCRC$Q_SYSMGT_RQSTS = 24,0,0,0 %; literal QSRV_UCRC$S_SYSMGT_RQSTS = 8; ! Total system management requests macro QSRV_UCRC$Q_UBUF_WAITS = 32,0,0,0 %; literal QSRV_UCRC$S_UBUF_WAITS = 8; ! Total waits for Ubuf/Uapibuf literal QSRV_UCRC$C_LENGTH = 40; literal QSRV_UCRC$K_LENGTH = 40; ! ! The following structure defines the data for the QSRV$_UCC_COUNTERS ! item code. It will receive QIO$CONFIGURE Client connection event data. ! ! QSRV_UCRC$L_SERVERS indicates the number of connections. ! ! Note that Uclient does not maintain an active connection to a server; ! it establishes a connection only when Uclient wants something. These ! counters count all events since Uclient discovered the server. ! literal QSRV_UCCC$S_QSRV_UCCC = 40; macro QSRV_UCCC$Q_SCSSYSTEMID = 0,0,0,0 %; literal QSRV_UCCC$S_SCSSYSTEMID = 8; ! SCSSYSTEMID of this server macro QSRV_UCCC$Q_CONNECTIONS = 8,0,0,0 %; literal QSRV_UCCC$S_CONNECTIONS = 8; ! Number of ICC connections made to a server macro QSRV_UCCC$Q_CONN_TIME = 16,0,0,0 %; literal QSRV_UCCC$S_CONN_TIME = 8; ! Time of last ICC connection macro QSRV_UCCC$Q_DC_MSGS = 24,0,0,0 %; literal QSRV_UCCC$S_DC_MSGS = 8; ! Number of device config messages macro QSRV_UCCC$Q_CM_MSGS = 32,0,0,0 %; literal QSRV_UCCC$S_CM_MSGS = 8; ! Number of connection management messages literal QSRV_UCCC$C_LENGTH = 40; literal QSRV_UCCC$K_LENGTH = 40; ! ! The following structure defines the data for the QSRV$_USR_COUNTERS ! item code. It will receive QIO$CONFIGURE Server root data. ! literal QSRV_USRC$S_QSRV_USRC = 32; macro QSRV_USRC$L_DEVICES = 0,0,32,0 %; ! Number of configured devices macro QSRV_USRC$L_CLIENTS = 4,0,32,0 %; ! Total number of configured servers macro QSRV_USRC$L_PK_DC_THREADS = 8,0,32,0 %; ! Peak device configuration threads macro QSRV_USRC$L_PK_CLT_THREAD = 12,0,32,0 %; ! Peak clients per thread macro QSRV_USRC$Q_SYSMGT_RQSTS = 16,0,0,0 %; literal QSRV_USRC$S_SYSMGT_RQSTS = 8; ! Total system management requests macro QSRV_USRC$Q_UBUF_WAITS = 24,0,0,0 %; literal QSRV_USRC$S_UBUF_WAITS = 8; ! Total waits for Ubuf/Uapibuf literal QSRV_USRC$C_LENGTH = 32; literal QSRV_USRC$K_LENGTH = 32; ! ! The following structure defines the data for the QSRV$_USC_COUNTERS ! item code. It will receive QIO$CONFIGURE Server connection event data. ! ! QSRV_USRC$L_CLIENTS indicates the number of connections. ! ! These counters count all events since Userver was connected to the client. ! literal QSRV_USCC$S_QSRV_USCC = 40; macro QSRV_USCC$Q_SCSSYSTEMID = 0,0,0,0 %; literal QSRV_USCC$S_SCSSYSTEMID = 8; ! SCSSYSTEMID of this client macro QSRV_USCC$Q_CONNECTIONS = 8,0,0,0 %; literal QSRV_USCC$S_CONNECTIONS = 8; ! Number of ICC connections made to a client macro QSRV_USCC$Q_CONN_TIME = 16,0,0,0 %; literal QSRV_USCC$S_CONN_TIME = 8; ! Time of last ICC connection macro QSRV_USCC$Q_DC_MSGS = 24,0,0,0 %; literal QSRV_USCC$S_DC_MSGS = 8; ! Number of device config messages macro QSRV_USCC$Q_CM_MSGS = 32,0,0,0 %; literal QSRV_USCC$S_CM_MSGS = 8; ! Number of connection management messages literal QSRV_USCC$C_LENGTH = 40; literal QSRV_USCC$K_LENGTH = 40; ! ! QIOserver Counters Buffer. This defines the buffer header, ! and contains a union of all the various counter types included. ! ! ! The following structure defines the data for the common portion of ! each of the counter item codes and forms the root structure. ! literal QSRV_COUNTERS$M_RESERVED_FLAGS = %X'FFFF'; literal QSRV_COUNTERS$S_QSRV_CNTR_ROOT = 24; macro QSRV_COUNTERS$L_KC_VERS = 0,0,32,0 %; ! KClient version identifier macro QSRV_COUNTERS$L_KS_VERS = 4,0,32,0 %; ! KServer version identifier macro QSRV_COUNTERS$W_COUNTERS_TYPE = 8,0,16,0 %; ! Counter type -- value matches the system service item code macro QSRV_COUNTERS$W_FLAGS = 10,0,16,0 %; macro QSRV_COUNTERS$V_RESERVED_FLAGS = 10,0,16,0 %; literal QSRV_COUNTERS$S_RESERVED_FLAGS = 16; ! No flags currently defined macro QSRV_COUNTERS$L_SIZE = 12,0,32,0 %; ! Size in bytes of counters structure returned from QIO$CONFIGURE macro QSRV_COUNTERS$Q_TIME = 16,0,0,0 %; literal QSRV_COUNTERS$S_TIME = 8; ! System Time when the counters obtained literal QSRV_CNTR_ROOT$C_LENGTH = 24; literal QSRV_CNTR_ROOT$K_LENGTH = 24; ! Note changes to this structure will need to be matched in ! [LIB]QSMQEDEF literal QSRV_COUNTERS$K_KCROOT_LENGTH = 64; literal QSRV_COUNTERS$K_KCCONN_LENGTH = 88; literal QSRV_COUNTERS$K_KCDEV_LENGTH = 88; literal QSRV_COUNTERS$K_KSROOT_LENGTH = 112; literal QSRV_COUNTERS$K_KSCONN_LENGTH = 88; literal QSRV_COUNTERS$K_KSDEV_LENGTH = 80; literal QSRV_COUNTERS$K_UCROOT_LENGTH = 64; literal QSRV_COUNTERS$K_UCCONN_LENGTH = 64; literal QSRV_COUNTERS$K_USROOT_LENGTH = 56; literal QSRV_COUNTERS$K_USCONN_LENGTH = 64; literal QSRV_COUNTERS$S_QSRV_COUNTERS = 112; macro QSRV_COUNTERS$R_KCROOT = 24,0,0,0 %; literal QSRV_COUNTERS$S_KCROOT = 40; ! Kclient root counters macro QSRV_COUNTERS$R_KCCONN = 24,0,0,0 %; literal QSRV_COUNTERS$S_KCCONN = 64; ! Kclient connection counters macro QSRV_COUNTERS$R_KCDEV = 24,0,0,0 %; literal QSRV_COUNTERS$S_KCDEV = 64; ! Kclient device counters macro QSRV_COUNTERS$R_KSROOT = 24,0,0,0 %; literal QSRV_COUNTERS$S_KSROOT = 88; ! Kserver root counters macro QSRV_COUNTERS$R_KSCONN = 24,0,0,0 %; literal QSRV_COUNTERS$S_KSCONN = 64; ! Kserver connection counters macro QSRV_COUNTERS$R_KSDEV = 24,0,0,0 %; literal QSRV_COUNTERS$S_KSDEV = 56; ! Kserver device counters macro QSRV_COUNTERS$R_UCROOT = 24,0,0,0 %; literal QSRV_COUNTERS$S_UCROOT = 40; ! Uclient root counters macro QSRV_COUNTERS$R_UCCONN = 24,0,0,0 %; literal QSRV_COUNTERS$S_UCCONN = 40; ! Uclient connection counters macro QSRV_COUNTERS$R_USROOT = 24,0,0,0 %; literal QSRV_COUNTERS$S_USROOT = 32; ! Userver root counters macro QSRV_COUNTERS$R_USCONN = 24,0,0,0 %; literal QSRV_COUNTERS$S_USCONN = 40; ! Userver connection counters literal QSRV_COUNTERS$C_LENGTH = 112; literal QSRV_COUNTERS$K_LENGTH = 112; !*** MODULE $RMIDEF *** ! + ! Get System Performance Information Data Identifier Definitions ! ! The following constants define the items which can be collected ! with the Get System Performance Information service (GETRMI). ! The item numbers are defined as follows: ! ! 16 12 0 ! +------------------+-------------+ ! | Structure number | Item number | ! +------------------+-------------+ ! ! The top four bits represent the structure of the item and the last 12 ! bits represent the item within the structure. ! ! ****** Caution! ! ****** This file is no longer intended to be modified. ! ****** ! The following had been guidelines for adding symbols to RMIDEF. ! This interface is now defined in [STARLET]GETSYIDEF.SDL. ! Therefore, changing any item number is unacceptable. Some spare item ! number exist in each range; if these are ever exhausted, new ranges must ! be defined and support added, rather than changing item numbers. ! ! As any enhancements are mode to $GETRMI, changes should be made to ! STARLET, and modules should be changed to use the new GETRMI$ symbols ! to replace RMI$ symbols. ! ! * The item numbers start ! * at 0 and increase sequentially to the last item (even across tables). ! * If new items are added to a table, programs MUST be relinked to allow ! * the old definitions to change. This was done to simplify some table ! * lookups in the Monitor Utility. To get around this, new items can be ! * added at the end of the list. ! * ! * Each table has one item at the end to act as a place holder. It should ! * have the same item number as the first item of the next table. These ! * items are not counters in the total number of RMI items GETRMI$_TABLESIZE. ! - ! DEFINE TABLE TYPES literal RMI$C_EXETYPE = 1; ! Executive cells literal RMI$C_EWSTYPE = 2; ! Executive writable storage area literal RMI$C_MONTYPE = 3; ! Monitor specific items literal RMI$C_RMSTYPE = 4; ! Monitor RMS specific items literal RMI$C_EX2TYPE = 5; ! Ececutive cells extension literal RMI$C_LISTEND = 0; ! End of table list ! ! The following section defines items which are collected during initialization. ! There items include general system information, and server version number. ! The server version number is also defined here. ! literal RMI$_initial = -1; ! Initialization item list literal RMI$_data_collection = -2; ! Data collection item list literal RMI$_sysinfo = -3; ! System information item literal RMI$_version_number = -4; ! Monitor version number literal RMI$_rms_file = -5; ! Parse file name literal RMI$_rms_gs = -6; ! Get global section address literal RMI$_last_type = -7; literal RMI$_server_version = 5; ! ! Define bits in the PMS flags field PMS$GL_FLAGS. These are used to ! synchronize access to some PMS field and enable other activity. ! literal RMI$S_rmi$pms_flags = 4; macro RMI$l_flags = 0,0,32,0 %; literal RMI$s_flags = 4; ! Class qualifier flags for CDB (Active) macro RMI$v_disk_enable = 0,0,1,0 %; ! YES => Enable disk queue length collection ! This field must be accessed via an interlocked ! bit instruction. macro RMI$v_filler1 = 0,1,7,0 %; literal RMI$s_filler1 = 7; ! Fill out remainder of first byte macro RMI$v_disk_sync = 0,8,1,0 %; ! YES => Synchronize access to several PMS counters ! used in the collection of disk queue length. ! This field must be accessed via an interlocked ! bit instruction, AND MUST BE IN A SEPARATE ! BYTE from the disk_enable bit (required by ! the architecture to maintain synchronization). macro RMI$v_filler2 = 0,9,23,0 %; literal RMI$s_filler2 = 23; ! Fill out remainder of field ! ! Define two contants to handle help handle large lookaside lists. The ! maximum number that RMISHR will count to is defined with ! RMI$K_MAX_PACKET and the value returned when this threshold is ! reached is defined as RMI$K_POOL_OVF. ! literal RMI$k_max_packet = 500; literal RMI$k_pool_ovf = -2147483647; ! ! Define item identifier numbers. Each data item has an associated ! value which is used to find its entry in the EXETBL. The item table ! is defined by the macros RMI_GENERATE_TABLE which makes multiple calls ! to the macro RMI_ITEM_CODE defined in the SYSGETRMI module. ! literal RMI$_MODES = 4096; ! All modes counters on all CPU's literal RMI$_INTERRUPT = 4097; ! time on interrupt stack -- primary literal RMI$_KERNEL = 4098; ! time in kernel mode -- primary literal RMI$_EXEC = 4099; ! time in exec mode -- primary literal RMI$_SUPER = 4100; ! time in supervisor mode -- primary literal RMI$_USER = 4101; ! time in user mode -- primary literal RMI$_COMPAT = 4102; ! time in compat. mode -- primary literal RMI$_INTERRUPT_BUSY = 4103; ! Time spent RMInning on the interrupt stack literal RMI$_KERNEL_BUSY = 4104; ! Time spent RMInning on the lernel stack literal RMI$_IDLE = 4105; ! idle time -- primary literal RMI$_CPUBUSY = 4106; ! RETIRED ITEM - RETURNS 0 literal RMI$_COLPG = 4107; ! collided page wait literal RMI$_MWAIT = 4108; ! memory wait literal RMI$_CEF = 4109; ! common event flag wait literal RMI$_PFW = 4110; ! page wait literal RMI$_LEF = 4111; ! local event flag wait literal RMI$_LEFO = 4112; ! lef wait out of bal. set literal RMI$_HIB = 4113; ! hibernating literal RMI$_HIBO = 4114; ! hibernating outswapped literal RMI$_SUSP = 4115; ! suspended literal RMI$_SUSPO = 4116; ! suspended outswapped literal RMI$_FPG = 4117; ! free page wait literal RMI$_COM = 4118; ! computing literal RMI$_COMO = 4119; ! computable outswapped literal RMI$_CUR = 4120; ! current literal RMI$_OTHSTAT = 4121; ! RETIRED ITEM - RETURNS 0 literal RMI$_PROCS = 4122; ! process count for SYSTEM class literal RMI$_PROC = 4123; ! collect all process information literal RMI$_FRLIST = 4124; ! size of free list literal RMI$_MODLIST = 4125; ! size of modified list literal RMI$_FAULTS = 4126; ! page fault count literal RMI$_PREADS = 4127; ! page reads literal RMI$_PWRITES = 4128; ! page writes literal RMI$_PWRITIO = 4129; ! physical page write I/O's literal RMI$_PREADIO = 4130; ! physical page read I/O's literal RMI$_GVALFLTS = 4131; ! global valid faults literal RMI$_WRTINPROG = 4132; ! faults from write in progress literal RMI$_FREFLTS = 4133; ! faults from free list literal RMI$_MFYFLTS = 4134; ! faults from modified list literal RMI$_DZROFLTS = 4135; ! demand zero faults literal RMI$_SYSFAULTS = 4136; ! system page faults literal RMI$_LRPCNT = 4137; ! number of LRP packets available literal RMI$_LRPINUSE = 4138; ! number of LRPs in use literal RMI$_IRPCNT = 4139; ! number of IRP packets available literal RMI$_IRPINUSE = 4140; ! number of IRPs in use literal RMI$_SRPCNT = 4141; ! number of SRP packets available literal RMI$_SRPINUSE = 4142; ! number of SRPs in use literal RMI$_HOLECNT = 4143; ! number of blocks in dyn. memory literal RMI$_BIGHOLE = 4144; ! largest hole literal RMI$_SMALLHOLE = 4145; ! smallest hole literal RMI$_HOLESUM = 4146; ! total space in dyn. memory available literal RMI$_DYNINUSE = 4147; ! dynamic memory space in use literal RMI$_SMALLCNT = 4148; ! number of blocks < 32 bytes in size literal RMI$_ISWPCNT = 4149; ! total inswaps literal RMI$_DIRIO = 4150; ! count of direct I/Os literal RMI$_BUFIO = 4151; ! count of buffered I/Os literal RMI$_MBREADS = 4152; ! total mailbox reads literal RMI$_MBWRITES = 4153; ! total mailbox writes literal RMI$_LOGNAM = 4154; ! logical name translations literal RMI$_FCPCALLS = 4155; ! total fcp calls literal RMI$_FCPREAD = 4156; ! number of disk reads by FCP literal RMI$_FCPWRITE = 4157; ! number of disk writes by FCP literal RMI$_FCPCACHE = 4158; ! number of FCP cache hits literal RMI$_FCPCPU = 4159; ! number of CPU tics by FCP literal RMI$_FCPHIT = 4160; ! number of window hits literal RMI$_FCPSPLIT = 4161; ! number of split transfers literal RMI$_FCPFAULT = 4162; ! number of FCP page faults literal RMI$_ENQNEW = 4163; ! number of ENQ's (new) literal RMI$_ENQCVT = 4164; ! number of ENQ's (conversions) literal RMI$_DEQ = 4165; ! number of DEQ's literal RMI$_BLKAST = 4166; ! number of blocking AST's literal RMI$_ENQWAIT = 4167; ! number of ENQ's forced to wait literal RMI$_ENQNOTQD = 4168; ! number of ENQ's not queued literal RMI$_DLCKSRCH = 4169; ! number of deadlock searches literal RMI$_DLCKFND = 4170; ! number of deadlocks found literal RMI$_NUMLOCKS = 4171; ! total locks literal RMI$_NUMRES = 4172; ! total resources literal RMI$_ARRLOCPK = 4173; ! arriving local packets literal RMI$_DEPLOCPK = 4174; ! departing local packets literal RMI$_ARRTRAPK = 4175; ! arriving transit packets literal RMI$_TRCNGLOS = 4176; ! transit congestion loss literal RMI$_RCVBUFFL = 4177; ! receiver buffer failures literal RMI$_RESERVED1 = 4178; ! Reserved PMS location 1 literal RMI$_RESERVED2 = 4179; ! Reserved PMS location 2 literal RMI$_RESERVED3 = 4180; ! Reserved PMS location 3 literal RMI$_RESERVED4 = 4181; ! Reserved PMS location 4 literal RMI$_RESERVED5 = 4182; ! Reserved PMS location 5 literal RMI$_RESERVED6 = 4183; ! Reserved PMS location 6 literal RMI$_RESERVED7 = 4184; ! Reserved PMS location 7 literal RMI$_RESERVED8 = 4185; ! Reserved PMS location 8 literal RMI$_RESERVED9 = 4186; ! Reserved PMS location 9 literal RMI$_RESERVED10 = 4187; ! Reserved PMS location 10 literal RMI$_RESERVED11 = 4188; ! Reserved PMS location 11 literal RMI$_RESERVED12 = 4189; ! Reserved PMS location 12 literal RMI$_RESERVED13 = 4190; ! Reserved PMS location 13 literal RMI$_RESERVED14 = 4191; ! Reserved PMS location 14 literal RMI$_RESERVED15 = 4192; ! Reserved PMS location 15 literal RMI$_RESERVED16 = 4193; ! Reserved PMS location 16 literal RMI$_RESERVED17 = 4194; ! Reserved PMS location 17 literal RMI$_RESERVED18 = 4195; ! Reserved PMS location 18 literal RMI$_FID_TRIES = 4196; ! count of File Id cache attempts literal RMI$_FILHDR_TRIES = 4197; ! count of File header cache attempts literal RMI$_DIRFCB_TRIES = 4198; ! count of Directory block cache attempts literal RMI$_DIRDATA_TRIES = 4199; ! count of Directory data cache attempts literal RMI$_EXT_TRIES = 4200; ! count of Extent cache attempts literal RMI$_QUO_TRIES = 4201; ! count of Quota cache attempts literal RMI$_STORAGMAP_TRIES = 4202; ! count of storage bitmap cache attempts literal RMI$_DISKS = 4203; ! all disk data literal RMI$_TOTAL_LOCKS = 4204; ! Total of all locking activity - NOT COLLECTED BY RMI - COMPUTED BY MONITOR literal RMI$_ENQNEWLOC = 4205; ! new lock requests (local) literal RMI$_ENQNEWIN = 4206; ! new lock requests (incoming) literal RMI$_ENQNEWOUT = 4207; ! new lock requests (outgoing) literal RMI$_ENQCVTLOC = 4208; ! lock conversion requests (local) literal RMI$_ENQCVTIN = 4209; ! lock conversion requests (incoming) literal RMI$_ENQCVTOUT = 4210; ! lock conversion requests (outgoing) literal RMI$_DEQLOC = 4211; ! dequeues (local) literal RMI$_DEQIN = 4212; ! dequeues (incoming) literal RMI$_DEQOUT = 4213; ! dequeues (outgoing) literal RMI$_BLKLOC = 4214; ! blocking ASTs queued (local) literal RMI$_BLKIN = 4215; ! blocking ASTs queued (incoming) literal RMI$_BLKOUT = 4216; ! blocking ASTs queued (outgoing) literal RMI$_DIRIN = 4217; ! directory operations (incoming) literal RMI$_DIROUT = 4218; ! directory operations (outgoing) literal RMI$_DLCKMSGS = 4219; ! deadlock detection messages (in & out) literal RMI$_SCS = 4220; ! All SCS information literal RMI$_SYSTIME = 4221; ! Current system time literal RMI$_MSCP_REQUEST = 4222; ! IO request rate to the MSCP server literal RMI$_MSCP_READ = 4223; ! Read request rate to the MSCP server literal RMI$_MSCP_WRITE = 4224; ! Write request rate to the MSCP server literal RMI$_MSCP_FRAGMENT = 4225; ! Rate at which I/O's are fragmented literal RMI$_MSCP_SPLIT = 4226; ! Rate at which I/O's are split literal RMI$_MSCP_BUFWAIT = 4227; ! Rate at which incoming requests have to wait for a buffer literal RMI$_MSCP_SIZE1 = 4228; ! I/O rate for sizes 1-2 blocks literal RMI$_MSCP_SIZE2 = 4229; ! I/O rate for sizes 2-3 blocks literal RMI$_MSCP_SIZE3 = 4230; ! I/O rate for sizes 4-7 blocks literal RMI$_MSCP_SIZE4 = 4231; ! I/O rate for sizes 8-15 blocks literal RMI$_MSCP_SIZE5 = 4232; ! I/O rate for sizes 16-31 blocks literal RMI$_MSCP_SIZE6 = 4233; ! I/O rate for sizes 32-63 blocks literal RMI$_MSCP_SIZE7 = 4234; ! I/O rate for sizes 64-127 blocks literal RMI$_MSCP_ALL = 4235; ! Dummy item to collect all MSCP server class items literal RMI$_DDTM_STARTS = 4236; ! Local Transaction starts literal RMI$_DDTM_PREPARES = 4237; ! Local Transaction prepare event literal RMI$_DDTM_ONE_PHASE = 4238; ! Transaction ONE_PHASE commit event literal RMI$_DDTM_COMMITS = 4239; ! Local Transaction commit event (sum of phase 1 and 2 commits) literal RMI$_DDTM_ABORTS = 4240; ! Local Transaction abort event literal RMI$_DDTM_ENDS = 4241; ! Local Transaction ends literal RMI$_DDTM_BRANCHS = 4242; ! Start branch event literal RMI$_DDTM_ADDS = 4243; ! Add branch event literal RMI$_DDTM_BUCKETS1 = 4244; ! TPS rate for < 1 literal RMI$_DDTM_BUCKETS2 = 4245; ! TPS rate for 1-2 literal RMI$_DDTM_BUCKETS3 = 4246; ! TPS rate for 2-3 literal RMI$_DDTM_BUCKETS4 = 4247; ! TPS rate for 3-4 literal RMI$_DDTM_BUCKETS5 = 4248; ! TPS rate for 4-5 literal RMI$_DDTM_BUCKETS6 = 4249; ! TPS rate for > 6 literal RMI$_DDTM_ALL = 4250; ! Dummy item to collect all TRANSACTION class items literal RMI$_VECTORP = 4251; ! Vector Processor tics scheduled literal RMI$_VBYTE_READ = 4252; ! VBS bytes read literal RMI$_VBYTE_WRITE = 4253; ! VBS bytes written literal RMI$_VVBS_TRAN = 4254; literal RMI$_VRBS_TRAN = 4255; literal RMI$_VDIO_SEL = 4256; literal RMI$_VDIOMAP_ALLOC = 4257; literal RMI$_VRBS_AVAIL = 4258; literal RMI$_VSEL_FAIL = 4259; literal RMI$_VVBSM_HIT = 4260; literal RMI$_VVBSM_CACHE = 4261; literal RMI$_VFLUIDBAL = 4262; literal RMI$_VRECOPY = 4263; literal RMI$_VCPUTICKS = 4264; literal RMI$_MSCP_EVERYTHING = 4265; ! All MSCP server class items including the NEW items not in MSCP_ALL literal RMI$_TMSCP_EVERYTHING = 4266; ! All TMSCP server class items literal RMI$_DDTM_TWOPHASE_ACKRCV = 4267; ! # of 2 PHASE commit ack msg rcvd literal RMI$_DDTM_TWOPHASE_ACKSNT = 4268; ! # of 2 PHASE commit ack msg sent literal RMI$_DDTM_TWOPHASE_CANRCV = 4269; ! # of 2 PHASE commit cancel msg rcvd literal RMI$_DDTM_TWOPHASE_CANSNT = 4270; ! # of 2 PHASE commit cancel msg sent literal RMI$_DDTM_TWOPHASE_RDYRCV = 4271; ! # of 2 PHASE commit ready msg rcvd literal RMI$_DDTM_TWOPHASE_RDYSNT = 4272; ! # of 2 PHASE commit ready msg sent literal RMI$_DDTM_TWOPHASE_REQRCV = 4273; ! # of 2 PHASE commit request msg rcvd literal RMI$_DDTM_TWOPHASE_REQSNT = 4274; ! # of 2 PHASE commit request msg sent literal RMI$_DDTM_TWOPHASE_COMMITS = 4275; ! Total # of phase 2 transitions literal RMI$_DDTM_DECLARES = 4276; ! Total # of $DECLARE_RMs literal RMI$_DDTM_JOINS = 4277; ! Total # of $JOIN_RMs literal RMI$_DDTM_FORGETS = 4278; ! Total # of $FORGET_RMs literal RMI$_DDTM_SEQNO = 4279; ! Total # of XCBs created literal RMI$_DDTM_LOG_COMMITS = 4280; ! # of Commit records written literal RMI$_DDTM_LOG_PREPARES = 4281; ! # of Prepare records written literal RMI$_DDTM_LOG_FORGETS = 4282; ! # of Forget records written literal RMI$_DDTM_WRITES_STARTED = 4283; ! # of Writes started literal RMI$_DDTM_WRITES_FORKED = 4284; ! # of forked writes literal RMI$_DDTM_BAD_TYPECODE = 4285; ! # of bad msg typecodes rcvd literal RMI$_DDTM_BAD_LINKS = 4286; ! # of bad msg links rcvd literal RMI$_DDTM_FOR_UNLINKS = 4287; ! # of forced unlinks literal RMI$_DDTM_VOL_UNLINKS = 4288; ! # of voluntary unlinks literal RMI$_DDTM_DISC_COMP = 4289; ! # of disconnect complete events literal RMI$_DDTM_BAD_PARTS = 4290; ! # of invalid part ids found literal RMI$_LCKMGR_CPU = 4291; ! The ID of the cpu on which the lock manager runs. literal RMI$_LCKMGR_PID = 4292; ! Process ID of the lock manager process. literal RMI$_LCKMGR_REQCNT = 4293; ! Accumulated count of requests handled by the lock manager. literal RMI$_LCKMGR_REQTIME = 4294; ! Accumulated time spent by the lock manager servicing requests. literal RMI$_LCKMGR_SPINCNT = 4295; ! The number of times the lock manager entered a spinloop. literal RMI$_LCKMGR_SPINTIME = 4296; ! Spin time in cycles, the lock manager spent in spinloop. literal RMI$_LOCK_MAX = 4297; ! The length of the Lock ID Table. literal RMI$_LPZ_PAKSIZ = 4298; ! Its the lock manager's pool zone packet size. literal RMI$_LPZ_PAGCNT = 4299; ! Number of pages currently in the lock manager's pool zone. literal RMI$_LPZ_MAXPAG = 4300; ! Its the maximum number of pages in the lock manager's pool zone. literal RMI$_LPZ_FREEPGCNT = 4301; ! The number of free pages currently in the lock manager's pool zone. literal RMI$_LPZ_HITS = 4302; ! The number of hits for the lock manager's pool zone. literal RMI$_LPZ_MISSES = 4303; ! The number of misses for the lock manager's pool zone. literal RMI$_LPZ_EXPCNT = 4304; ! The number of expansions of the lock manager's pool zone. literal RMI$_LPZ_ALLOCF = 4305; ! The number of failed allocations from the lock manager's pool zone. literal RMI$_LPZ_ALLOC2 = 4306; ! The number of allocations from other than the first page of the lock manager's pool zone. literal RMI$_LPZ_EMPTY = 4307; ! Its the number of empty pages in the lock manager's pool zone. literal RMI$_RML_ACQUIRE = 4308; ! System-wide count of lock trees moved to this node. literal RMI$_RML_BETTER = 4309; ! Count of lock trees moved from this node to a cluster node with a higher value for SYSGEN literal RMI$_RML_MORE_ACT = 4310; ! Count of lock trees moved from this node due to a higher locking activity on another node literal RMI$_RML_MSGRCV = 4311; ! Count of remaster messages received by this node. literal RMI$_RML_MSGSENT = 4312; ! Count of remaster messages sent from this node. literal RMI$_RML_NOQUOTA = 4313; ! Count of remaster operations which failed due to a lack of quota. literal RMI$_RML_NOTAKER = 4314; ! Count of remaster operations which were proposed and declined. literal RMI$_RML_OPCNT = 4315; ! Count of remaster operations which have been completed. literal RMI$_RML_RBLDMSGRCV = 4316; ! Count of remaster rebuild messages received by this node. literal RMI$_RML_RBLDMSGSENT = 4317; ! Count of remaster rebuild messages sent from this node. literal RMI$_RML_SINGLE = 4318; ! Count of lock trees moved from this node to another cluster node which is the only node w literal RMI$_RML_UNLOAD = 4319; ! Count of lock trees moved from this node. literal RMI$_RESERVEDEXE1 = 4320; ! Reserved EXE items literal RMI$_RESERVEDEXE2 = 4321; ! Reserved EXE items literal RMI$_RESERVEDEXE3 = 4322; ! Reserved EXE items literal RMI$_RESERVEDEXE4 = 4323; ! Reserved EXE items literal RMI$_RESERVEDEXE5 = 4324; ! Reserved EXE items literal RMI$_RESERVEDEXE6 = 4325; ! Reserved EXE items literal RMI$_RESERVEDEXE7 = 4326; ! Reserved EXE items literal RMI$_RESERVEDEXE8 = 4327; ! Reserved EXE items literal RMI$_RESERVEDEXE9 = 4328; ! Reserved EXE items literal RMI$_RESERVEDEXE10 = 4329; ! Reserved EXE items literal RMI$_RESERVEDEXE11 = 4330; ! Reserved EXE items literal RMI$_RESERVEDEXE12 = 4331; ! Reserved EXE items literal RMI$_RESERVEDEXE13 = 4332; ! Reserved EXE items literal RMI$_RESERVEDEXE14 = 4333; ! Reserved EXE items literal RMI$_RESERVEDEXE15 = 4334; ! Reserved EXE items literal RMI$_RESERVEDEXE16 = 4335; ! Reserved EXE items literal RMI$_LASTEXE = 4336; ! Last item in the EXE table ! ! These next items are located in an executive writable page in memory ! literal RMI$_ACCESS = 8432; ! number of file accesses literal RMI$_ALLOC = 8433; ! number of file extends literal RMI$_FCPCREATE = 8434; ! number of file creations literal RMI$_VOLWAIT = 8435; ! # of times XQP waited for volume lock literal RMI$_FCPTURN = 8436; ! number of window turns literal RMI$_FCPERASE = 8437; ! number of erase calls literal RMI$_OPENS = 8438; ! number of file opens literal RMI$_FIDHIT = 8439; ! count of File Id cache hits literal RMI$_FIDMISS = 8440; ! count of File Id cache misses literal RMI$_FILHDR_HIT = 8441; ! count of File header cache hits literal RMI$_DIRFCB_HIT = 8442; ! count of Directory block cache hits literal RMI$_DIRFCB_MISS = 8443; ! count of Directory block cache misses literal RMI$_DIRDATA_HIT = 8444; ! count of Directory data cache hits literal RMI$_EXTHIT = 8445; ! count of Extent cache hits literal RMI$_EXTMISS = 8446; ! count of Extent cache misses literal RMI$_QUOHIT = 8447; ! count of Quota cache hits literal RMI$_QUOMISS = 8448; ! count of Quota cache misses literal RMI$_STORAGMAP_HIT = 8449; ! count of storage bitmap cache hits literal RMI$_VOLLCK = 8450; ! Volume synch locks literal RMI$_SYNCHLCK = 8451; ! directory and file synch locks literal RMI$_SYNCHWAIT = 8452; ! # of times XQP waited for a directory or file synch lock literal RMI$_ACCLCK = 8453; ! access locks literal RMI$_XQPCACHEWAIT = 8454; ! # of times XQP had to wait for free space in a cache literal RMI$_DIRDATA_MISS = 8455; ! count of Directory data cache misses literal RMI$_FILHDR_MISS = 8456; ! count of File header cache misses literal RMI$_STORAGMAP_MISS = 8457; ! count of storage bitmap cache misses literal RMI$_RESERVEDEWS1 = 8458; ! Reserved EWS items literal RMI$_RESERVEDEWS2 = 8459; ! Reserved EWS items literal RMI$_RESERVEDEWS3 = 8460; ! Reserved EWS items literal RMI$_RESERVEDEWS4 = 8461; ! Reserved EWS items literal RMI$_RESERVEDEWS5 = 8462; ! Reserved EWS items literal RMI$_RESERVEDEWS6 = 8463; ! Reserved EWS items literal RMI$_RESERVEDEWS7 = 8464; ! Reserved EWS items literal RMI$_RESERVEDEWS8 = 8465; ! Reserved EWS items literal RMI$_RESERVEDEWS9 = 8466; ! Reserved EWS items literal RMI$_RESERVEDEWS10 = 8467; ! Reserved EWS items literal RMI$_RESERVEDEWS11 = 8468; ! Reserved EWS items literal RMI$_RESERVEDEWS12 = 8469; ! Reserved EWS items literal RMI$_RESERVEDEWS13 = 8470; ! Reserved EWS items literal RMI$_RESERVEDEWS14 = 8471; ! Reserved EWS items literal RMI$_RESERVEDEWS15 = 8472; ! Reserved EWS items literal RMI$_RESERVEDEWS16 = 8473; ! Reserved EWS items literal RMI$_RESERVEDEWS17 = 8474; ! Reserved EWS items literal RMI$_RESERVEDEWS18 = 8475; ! Reserved EWS items literal RMI$_RESERVEDEWS19 = 8476; ! Reserved EWS items literal RMI$_RESERVEDEWS20 = 8477; ! Reserved EWS items literal RMI$_RESERVEDEWS21 = 8478; ! Reserved EWS items literal RMI$_RESERVEDEWS22 = 8479; ! Reserved EWS items literal RMI$_RESERVEDEWS23 = 8480; ! Reserved EWS items literal RMI$_RESERVEDEWS24 = 8481; ! Reserved EWS items literal RMI$_RESERVEDEWS25 = 8482; ! Reserved EWS items literal RMI$_RESERVEDEWS26 = 8483; ! Reserved EWS items literal RMI$_RESERVEDEWS27 = 8484; ! Reserved EWS items literal RMI$_RESERVEDEWS28 = 8485; ! Reserved EWS items literal RMI$_RESERVEDEWS29 = 8486; ! Reserved EWS items literal RMI$_RESERVEDEWS30 = 8487; ! Reserved EWS items literal RMI$_RESERVEDEWS31 = 8488; ! Reserved EWS items literal RMI$_RESERVEDEWS32 = 8489; ! Reserved EWS items literal RMI$_RESERVEDEWS33 = 8490; ! Reserved EWS items literal RMI$_RESERVEDEWS34 = 8491; ! Reserved EWS items literal RMI$_RESERVEDEWS35 = 8492; ! Reserved EWS items literal RMI$_RESERVEDEWS36 = 8493; ! Reserved EWS items literal RMI$_RESERVEDEWS37 = 8494; ! Reserved EWS items literal RMI$_RESERVEDEWS38 = 8495; ! Reserved EWS items literal RMI$_RESERVEDEWS39 = 8496; ! Reserved EWS items literal RMI$_RESERVEDEWS40 = 8497; ! Reserved EWS items literal RMI$_RESERVEDEWS41 = 8498; ! Reserved EWS items literal RMI$_RESERVEDEWS42 = 8499; ! Reserved EWS items literal RMI$_RESERVEDEWS43 = 8500; ! Reserved EWS items literal RMI$_RESERVEDEWS44 = 8501; ! Reserved EWS items literal RMI$_RESERVEDEWS45 = 8502; ! Reserved EWS items literal RMI$_RESERVEDEWS46 = 8503; ! Reserved EWS items literal RMI$_RESERVEDEWS47 = 8504; ! Reserved EWS items literal RMI$_RESERVEDEWS48 = 8505; ! Reserved EWS items literal RMI$_RESERVEDEWS49 = 8506; ! Reserved EWS items literal RMI$_RESERVEDEWS50 = 8507; ! Reserved EWS items literal RMI$_RESERVEDEWS51 = 8508; ! Reserved EWS items literal RMI$_RESERVEDEWS52 = 8509; ! Reserved EWS items literal RMI$_RESERVEDEWS53 = 8510; ! Reserved EWS items literal RMI$_RESERVEDEWS54 = 8511; ! Reserved EWS items literal RMI$_RESERVEDEWS55 = 8512; ! Reserved EWS items literal RMI$_RESERVEDEWS56 = 8513; ! Reserved EWS items literal RMI$_RESERVEDEWS57 = 8514; ! Reserved EWS items literal RMI$_RESERVEDEWS58 = 8515; ! Reserved EWS items literal RMI$_RESERVEDEWS59 = 8516; ! Reserved EWS items literal RMI$_RESERVEDEWS60 = 8517; ! Reserved EWS items literal RMI$_RESERVEDEWS61 = 8518; ! Reserved EWS items literal RMI$_RESERVEDEWS62 = 8519; ! Reserved EWS items literal RMI$_RESERVEDEWS63 = 8520; ! Reserved EWS items literal RMI$_RESERVEDEWS64 = 8521; ! Reserved EWS items literal RMI$_RESERVEDEWS65 = 8522; ! Reserved EWS items literal RMI$_RESERVEDEWS66 = 8523; ! Reserved EWS items literal RMI$_RESERVEDEWS67 = 8524; ! Reserved EWS items literal RMI$_RESERVEDEWS68 = 8525; ! Reserved EWS items literal RMI$_RESERVEDEWS69 = 8526; ! Reserved EWS items literal RMI$_RESERVEDEWS70 = 8527; ! Reserved EWS items literal RMI$_RESERVEDEWS71 = 8528; ! Reserved EWS items literal RMI$_RESERVEDEWS72 = 8529; ! Reserved EWS items literal RMI$_RESERVEDEWS73 = 8530; ! Reserved EWS items literal RMI$_RESERVEDEWS74 = 8531; ! Reserved EWS items literal RMI$_RESERVEDEWS75 = 8532; ! Reserved EWS items literal RMI$_RESERVEDEWS76 = 8533; ! Reserved EWS items literal RMI$_RESERVEDEWS77 = 8534; ! Reserved EWS items literal RMI$_RESERVEDEWS78 = 8535; ! Reserved EWS items literal RMI$_RESERVEDEWS79 = 8536; ! Reserved EWS items literal RMI$_RESERVEDEWS80 = 8537; ! Reserved EWS items literal RMI$_RESERVEDEWS81 = 8538; ! Reserved EWS items literal RMI$_RESERVEDEWS82 = 8539; ! Reserved EWS items literal RMI$_RESERVEDEWS83 = 8540; ! Reserved EWS items literal RMI$_RESERVEDEWS84 = 8541; ! Reserved EWS items literal RMI$_RESERVEDEWS85 = 8542; ! Reserved EWS items literal RMI$_RESERVEDEWS86 = 8543; ! Reserved EWS items literal RMI$_RESERVEDEWS87 = 8544; ! Reserved EWS items literal RMI$_RESERVEDEWS88 = 8545; ! Reserved EWS items literal RMI$_RESERVEDEWS89 = 8546; ! Reserved EWS items literal RMI$_RESERVEDEWS90 = 8547; ! Reserved EWS items literal RMI$_RESERVEDEWS91 = 8548; ! Reserved EWS items literal RMI$_RESERVEDEWS92 = 8549; ! Reserved EWS items literal RMI$_RESERVEDEWS93 = 8550; ! Reserved EWS items literal RMI$_RESERVEDEWS94 = 8551; ! Reserved EWS items literal RMI$_RESERVEDEWS95 = 8552; ! Reserved EWS items literal RMI$_RESERVEDEWS96 = 8553; ! Reserved EWS items literal RMI$_RESERVEDEWS97 = 8554; ! Reserved EWS items literal RMI$_LASTEWS = 8555; ! Last item in the exec writable table ! ! Begin monitor specific data items. The items listed below are ! NOT collected by the RMI as individual items. Some are NOT collected ! at all but are computed by MONITOR. ! literal RMI$_FIDHITPCNT = 12651; ! percentage of file id cache hits/hits+misses literal RMI$_FILHDR_HITPCNT = 12652; ! percentage of file header cache hits/hits+misses literal RMI$_DIRFCB_HITPCNT = 12653; ! percentage of directory block cache hits/hits+misses literal RMI$_DIRDATA_HITPCNT = 12654; ! percentage of directory data cache hits/hits+misses literal RMI$_EXTHITPCNT = 12655; ! percentage of extent cache hits/hits+misses literal RMI$_QUOHITPCNT = 12656; ! percentage of quota cache hits/hits+misses literal RMI$_STORAGMAP_HITPCNT = 12657; ! percentage of storage map cache hits/hits+misses literal RMI$_OPCNT = 12658; ! disk io operation count literal RMI$_IOQUELEN = 12659; ! disk io queue length literal RMI$_IOAQUELEN = 12660; ! Accurate disk io queue length literal RMI$_DISKRESPTIM = 12661; ! disk io response time literal RMI$_JNLIOCNT = 12662; ! journaling io operation count (for disks) literal RMI$_JDNQLEN = 12663; ! jdevice normal io queue length literal RMI$_JDWQLEN = 12664; ! jdevice wait irp queue length literal RMI$_JDFQLEN = 12665; ! jdevice force io queue length literal RMI$_JDEXCNT = 12666; ! jdevice extend count literal RMI$_JNLWRTSS = 12667; ! obsolete literal RMI$_JNLBUFWR = 12668; ! obsolete literal RMI$_DGSENT = 12669; ! SCS application datagrams sent literal RMI$_DGRCVD = 12670; ! SCS application datagrams received literal RMI$_DGDISCARD = 12671; ! SCS application datagrams discarded literal RMI$_MSGSENT = 12672; ! SCS application messages sent literal RMI$_MSGRCVD = 12673; ! SCS application messages received literal RMI$_SNDATS = 12674; ! SCS block send datas initiated literal RMI$_KBYTSENT = 12675; ! SCS kbytes sent via send datas literal RMI$_REQDATS = 12676; ! SCS block request datas initiated literal RMI$_KBYTREQD = 12677; ! SCS kbytes received via request datas literal RMI$_KBYTMAPD = 12678; ! SCS kbytes mapped for block transfer literal RMI$_QCR_CNT = 12679; ! SCS times connection queued for send credit literal RMI$_QBDT_CNT = 12680; ! SCS times connection queued for buffer descriptor literal RMI$_DIRLOOK = 12681; ! directory lookups literal RMI$_DIRINS = 12682; ! directory inserts literal RMI$_DIRDEL = 12683; ! directory deletes literal RMI$_PACKETS = 12684; ! Ethernet packets/second literal RMI$_KBYTES = 12685; ! Kbytes/second literal RMI$_PACKETSIZE = 12686; ! Packets size (bytes) literal RMI$_MPACKETS = 12687; ! Multicast packets/second literal RMI$_MKBYTES = 12688; ! Multicast Kbytes/second literal RMI$_MPACKETSIZE = 12689; ! Multicast packet size (bytes) literal RMI$_SINGLECOLL = 12690; ! Transmit single collision detected literal RMI$_MULTICOLL = 12691; ! Transmit multi collisions detected literal RMI$_INITDEFER = 12692; ! Transmit initially deferred literal RMI$_INTERNALBUFERR = 12693; ! Receive internal buffer error literal RMI$_LOCBUFERR = 12694; ! Receive local buffer error literal RMI$_BUFFUNAVAIL = 12695; ! System buffer unavailable literal RMI$_FILLER = 12696; ! Dummy pad item literal RMI$_RESERVEDMON1 = 12697; ! Reserved MON items literal RMI$_RESERVEDMON2 = 12698; ! Reserved MON items literal RMI$_RESERVEDMON3 = 12699; ! Reserved MON items literal RMI$_RESERVEDMON4 = 12700; ! Reserved MON items literal RMI$_RESERVEDMON5 = 12701; ! Reserved MON items literal RMI$_RESERVEDMON6 = 12702; ! Reserved MON items literal RMI$_RESERVEDMON7 = 12703; ! Reserved MON items literal RMI$_RESERVEDMON8 = 12704; ! Reserved MON items literal RMI$_RESERVEDMON9 = 12705; ! Reserved MON items literal RMI$_RESERVEDMON10 = 12706; ! Reserved MON items literal RMI$_RESERVEDMON11 = 12707; ! Reserved MON items literal RMI$_RESERVEDMON12 = 12708; ! Reserved MON items literal RMI$_RESERVEDMON13 = 12709; ! Reserved MON items literal RMI$_RESERVEDMON14 = 12710; ! Reserved MON items literal RMI$_RESERVEDMON15 = 12711; ! Reserved MON items literal RMI$_RESERVEDMON16 = 12712; ! Reserved MON items literal RMI$_RESERVEDMON17 = 12713; ! Reserved MON items literal RMI$_RESERVEDMON18 = 12714; ! Reserved MON items literal RMI$_RESERVEDMON19 = 12715; ! Reserved MON items literal RMI$_RESERVEDMON20 = 12716; ! Reserved MON items literal RMI$_RESERVEDMON21 = 12717; ! Reserved MON items literal RMI$_RESERVEDMON22 = 12718; ! Reserved MON items literal RMI$_RESERVEDMON23 = 12719; ! Reserved MON items literal RMI$_RESERVEDMON24 = 12720; ! Reserved MON items literal RMI$_RESERVEDMON25 = 12721; ! Reserved MON items literal RMI$_RESERVEDMON26 = 12722; ! Reserved MON items literal RMI$_RESERVEDMON27 = 12723; ! Reserved MON items literal RMI$_RESERVEDMON28 = 12724; ! Reserved MON items literal RMI$_RESERVEDMON29 = 12725; ! Reserved MON items literal RMI$_RESERVEDMON30 = 12726; ! Reserved MON items literal RMI$_RESERVEDMON31 = 12727; ! Reserved MON items literal RMI$_RESERVEDMON32 = 12728; ! Reserved MON items literal RMI$_RESERVEDMON33 = 12729; ! Reserved MON items literal RMI$_RESERVEDMON34 = 12730; ! Reserved MON items literal RMI$_RESERVEDMON35 = 12731; ! Reserved MON items literal RMI$_RESERVEDMON36 = 12732; ! Reserved MON items literal RMI$_RESERVEDMON37 = 12733; ! Reserved MON items literal RMI$_RESERVEDMON38 = 12734; ! Reserved MON items literal RMI$_RESERVEDMON39 = 12735; ! Reserved MON items literal RMI$_RESERVEDMON40 = 12736; ! Reserved MON items literal RMI$_RESERVEDMON41 = 12737; ! Reserved MON items literal RMI$_RESERVEDMON42 = 12738; ! Reserved MON items literal RMI$_RESERVEDMON43 = 12739; ! Reserved MON items literal RMI$_RESERVEDMON44 = 12740; ! Reserved MON items literal RMI$_RESERVEDMON45 = 12741; ! Reserved MON items literal RMI$_RESERVEDMON46 = 12742; ! Reserved MON items literal RMI$_RESERVEDMON47 = 12743; ! Reserved MON items literal RMI$_RESERVEDMON48 = 12744; ! Reserved MON items literal RMI$_RESERVEDMON49 = 12745; ! Reserved MON items literal RMI$_RESERVEDMON50 = 12746; ! Reserved MON items literal RMI$_RESERVEDMON51 = 12747; ! Reserved MON items literal RMI$_RESERVEDMON52 = 12748; ! Reserved MON items literal RMI$_RESERVEDMON53 = 12749; ! Reserved MON items literal RMI$_RESERVEDMON54 = 12750; ! Reserved MON items literal RMI$_RESERVEDMON55 = 12751; ! Reserved MON items literal RMI$_RESERVEDMON56 = 12752; ! Reserved MON items literal RMI$_RESERVEDMON57 = 12753; ! Reserved MON items literal RMI$_RESERVEDMON58 = 12754; ! Reserved MON items literal RMI$_RESERVEDMON59 = 12755; ! Reserved MON items literal RMI$_RESERVEDMON60 = 12756; ! Reserved MON items literal RMI$_RESERVEDMON61 = 12757; ! Reserved MON items literal RMI$_RESERVEDMON62 = 12758; ! Reserved MON items literal RMI$_RESERVEDMON63 = 12759; ! Reserved MON items literal RMI$_RESERVEDMON64 = 12760; ! Reserved MON items literal RMI$_RESERVEDMON65 = 12761; ! Reserved MON items literal RMI$_RESERVEDMON66 = 12762; ! Reserved MON items literal RMI$_RESERVEDMON67 = 12763; ! Reserved MON items literal RMI$_RESERVEDMON68 = 12764; ! Reserved MON items literal RMI$_RESERVEDMON69 = 12765; ! Reserved MON items literal RMI$_RESERVEDMON70 = 12766; ! Reserved MON items literal RMI$_RESERVEDMON71 = 12767; ! Reserved MON items literal RMI$_RESERVEDMON72 = 12768; ! Reserved MON items literal RMI$_RESERVEDMON73 = 12769; ! Reserved MON items literal RMI$_RESERVEDMON74 = 12770; ! Reserved MON items literal RMI$_RESERVEDMON75 = 12771; ! Reserved MON items literal RMI$_RESERVEDMON76 = 12772; ! Reserved MON items literal RMI$_RESERVEDMON77 = 12773; ! Reserved MON items literal RMI$_RESERVEDMON78 = 12774; ! Reserved MON items literal RMI$_RESERVEDMON79 = 12775; ! Reserved MON items literal RMI$_RESERVEDMON80 = 12776; ! Reserved MON items literal RMI$_RESERVEDMON81 = 12777; ! Reserved MON items literal RMI$_RESERVEDMON82 = 12778; ! Reserved MON items literal RMI$_RESERVEDMON83 = 12779; ! Reserved MON items literal RMI$_RESERVEDMON84 = 12780; ! Reserved MON items literal RMI$_RESERVEDMON85 = 12781; ! Reserved MON items literal RMI$_RESERVEDMON86 = 12782; ! Reserved MON items literal RMI$_RESERVEDMON87 = 12783; ! Reserved MON items literal RMI$_RESERVEDMON88 = 12784; ! Reserved MON items literal RMI$_RESERVEDMON89 = 12785; ! Reserved MON items literal RMI$_RESERVEDMON90 = 12786; ! Reserved MON items literal RMI$_RESERVEDMON91 = 12787; ! Reserved MON items literal RMI$_RESERVEDMON92 = 12788; ! Reserved MON items literal RMI$_RESERVEDMON93 = 12789; ! Reserved MON items literal RMI$_RESERVEDMON94 = 12790; ! Reserved MON items literal RMI$_RESERVEDMON95 = 12791; ! Reserved MON items literal RMI$_RESERVEDMON96 = 12792; ! Reserved MON items literal RMI$_RESERVEDMON97 = 12793; ! Reserved MON items literal RMI$_RESERVEDMON98 = 12794; ! Reserved MON items literal RMI$_RESERVEDMON99 = 12795; ! Reserved MON items literal RMI$_RESERVEDMON100 = 12796; ! Reserved MON items literal RMI$_LASTMON = 12797; ! Last item in the monitor specific table ! ! Begin items specific to the Monitor RMS class. These items are maintained ! by RMS and collected from a global section with the following naming scheme: ! _RMS$xxxxxxxxyyyyyy where x is the volume lock id and y is the fid of the ! file being monitored. ! literal RMI$_RMS_STATS = 16893; ! All of the following rms statistics literal RMI$_SEQGETS = 16894; ! Total # of sequential gets literal RMI$_KEYGETS = 16895; ! Total # of keyed gets literal RMI$_RFAGETS = 16896; ! Total # of gets by RFA literal RMI$_GETBYTES = 16897; ! Total size in bytes of all GETS literal RMI$_SEQPUTS = 16898; ! Total # of sequential puts literal RMI$_KEYPUTS = 16899; ! Total # of puts by key literal RMI$_PUTBYTES = 16900; ! Total # of bytes put to file literal RMI$_UPDATES = 16901; ! Total # of updates to the file literal RMI$_UPDATEBYTES = 16902; ! Total # of bytes updated in file literal RMI$_DELETES = 16903; ! Total # of deletes to file literal RMI$_TRUNCATES = 16904; ! Total # of times file has been truncated literal RMI$_TRUNCBLKS = 16905; ! Total # of blocks file has been truncated literal RMI$_SEQFINDS = 16906; ! Total # of sequential finds literal RMI$_KEYFINDS = 16907; ! Total # of keyed finds literal RMI$_RFAFINDS = 16908; ! Total # of RFA finds literal RMI$_READS = 16909; ! Total # of $READS literal RMI$_READBYTES = 16910; ! Total # of bytes read from $READS literal RMI$_CONNECTS = 16911; ! Total connect requests literal RMI$_DISCONNECTS = 16912; ! Total disconnect requests literal RMI$_EXTENDS = 16913; ! Total extends literal RMI$_EXTBLOCKS = 16914; ! Total number of blocks file has been extended literal RMI$_FLUSHES = 16915; ! Total number of calls to flush literal RMI$_REWINDS = 16916; ! Total number of calls to REWIND literal RMI$_WRITES = 16917; ! Total number of calls to $WRITE literal RMI$_WRITEBYTES = 16918; ! Total bytes written using $WRITE literal RMI$_FLCKENQS = 16919; ! Total number of file lock ENQ's literal RMI$_FLCKDEQS = 16920; ! Total number of file lock DEQ's literal RMI$_FLCKCNVS = 16921; ! Total number of file lock conversions literal RMI$_LBLCKENQS = 16922; ! Total number of local buffer lock ENQ's literal RMI$_LBLCKDEQS = 16923; ! Total number of local buffer lock DEQ's literal RMI$_LBLCKCNVS = 16924; ! Total number of local buffer lock conversions literal RMI$_GBLCKENQS = 16925; ! Total number of global buffer lock ENQ's literal RMI$_GBLCKDEQS = 16926; ! Total number of global buffer lock DEQ's literal RMI$_GBLCKCNVS = 16927; ! Total number of global buffer lock conversions literal RMI$_GSLCKENQS = 16928; ! Total number of global section lock ENQ's literal RMI$_GSLCKDEQS = 16929; ! Total number of global section lock DEQ's literal RMI$_GSLCKCNVS = 16930; ! Total number of global section lock conversions literal RMI$_RLCKENQS = 16931; ! Total number of record lock ENQ's literal RMI$_RLCKDEQS = 16932; ! Total number of record lock DEQ's literal RMI$_RLCKCNVS = 16933; ! Total number of record lock conversions literal RMI$_APPLCKENQS = 16934; ! Total number of append lock ENQ's literal RMI$_APPLCKDEQS = 16935; ! Total number of append lock DEQ's literal RMI$_APPLCKCNVS = 16936; ! Total number of append lock conversions literal RMI$_FLBLKASTS = 16937; ! Total number of file lock blocking ASTs literal RMI$_LBLBLKASTS = 16938; ! Total number of local buffer lock blocking ASTs literal RMI$_GBLBLKASTS = 16939; ! Total number of global buffer lock blocking ASTs literal RMI$_APPBLKASTS = 16940; ! Total number of shared append lock blocking ASTs literal RMI$_LCACHEHITS = 16941; ! Total cache hits on buckets in local buffers literal RMI$_LCACHETRIES = 16942; ! Total cache attempts on buckets in local buffers literal RMI$_GCACHEHITS = 16943; ! Total cache hits on buckets in global buffers literal RMI$_GCACHETRIES = 16944; ! Total cache attempts on buckets in global buffers literal RMI$_GBRDIRIOS = 16945; ! Total direct IO's causes by global buffer cache reads literal RMI$_GBWDIRIOS = 16946; ! Total direct IO's causes by global buffer cache writes literal RMI$_LBRDIRIOS = 16947; ! Total direct IO's causes by local buffer cache reads literal RMI$_LBWDIRIOS = 16948; ! Total direct IO's causes by local buffer cache writes literal RMI$_BKTSPLT = 16949; ! Total number of 2 bucket splits done for this file literal RMI$_MBKTSPLT = 16950; ! Total number of multi-bucket splits done for this file literal RMI$_RMSOPENS = 16951; ! Total number of times file has been opened literal RMI$_CLOSES = 16952; ! Total number of times file has been closed literal RMI$_GSBLKASTS = 16953; ! Global Section Blocking ASTS literal RMI$_FLWAITS = 16954; ! File lock ENQs forced to wait literal RMI$_LBWAITS = 16955; ! Local buffer ENQs forced to wait literal RMI$_GBWAITS = 16956; ! Global buffer ENQs forced to wait literal RMI$_GSWAITS = 16957; ! Global section ENQs forced to wait literal RMI$_RLWAITS = 16958; ! Record lock ENQs forced to wait literal RMI$_APWAITS = 16959; ! Append lock ENQs forced to wait literal RMI$_TOTWAITS = 16960; ! Total ENQs forced to wait literal RMI$_OUTBUFQUO = 16961; ! Number of times a process runs out of buffer quota literal RMI$_RMSDEV1 = 16962; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV2 = 16963; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV3 = 16964; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV4 = 16965; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV5 = 16966; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV6 = 16967; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV7 = 16968; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV8 = 16969; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV9 = 16970; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV10 = 16971; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV11 = 16972; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV12 = 16973; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV13 = 16974; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV14 = 16975; ! Reserved for RMS development private monitoring literal RMI$_RMSDEV15 = 16976; ! Reserved for RMS development private monitoring literal RMI$_XQPQIOS = 16977; ! Number of XQP operations for this file by RMS literal RMI$_LCACHEHITPCNT = 16978; ! Local RMS buffer hit percent literal RMI$_GCACHEHITPCNT = 16979; ! Global RMS buffer hit percent literal RMI$_TOTALGET = 16980; ! Total $GET call rate literal RMI$_TOTALPUT = 16981; ! Total $PUT call rate literal RMI$_TOTALFIND = 16982; ! Total $FIND call rate literal RMI$_BYTESGET = 16983; ! Bytes per $GET literal RMI$_BYTESPUT = 16984; ! Bytes per $PUT literal RMI$_BYTESUPDATE = 16985; ! Bytes per $UPDATE literal RMI$_BYTESREAD = 16986; ! Bytes per $READ literal RMI$_BYTESWRITE = 16987; ! Bytes per $WRITE literal RMI$_BLOCKSTRUNCATE = 16988; ! Bytes per $TRUNCATE literal RMI$_BLOCKSEXTEND = 16989; ! Bytes per $EXTEND literal RMI$_ACTIVE_STREAMS = 16990; ! Active connects to file literal RMI$_TOTAL_ENQS = 16991; ! Total new ENQs literal RMI$_TOTAL_DEQS = 16992; ! Total DEQs literal RMI$_TOTAL_CNVS = 16993; ! Total ENQ conversions literal RMI$_TOTAL_BLKAST = 16994; ! Total blocking ASTs literal RMI$_RMS_ORG = 16995; ! RMS File org literal RMI$_INTCOL_GBHSH = 16996; ! Interlock collision on global buffer hash table literal RMI$_INTCOL_GBH = 16997; ! Interlock Collision on global buffer header literal RMI$_INTRNDWN_GBHSH = 16998; ! Interlock still held at rundown on GBHSH literal RMI$_INTRNDWN_GBH = 16999; ! Interlock still held at rundown on GBH literal RMI$_RESERVEDRMS5 = 17000; ! Reserved RMS items literal RMI$_RESERVEDRMS6 = 17001; ! Reserved RMS items literal RMI$_RESERVEDRMS7 = 17002; ! Reserved RMS items literal RMI$_RESERVEDRMS8 = 17003; ! Reserved RMS items literal RMI$_RESERVEDRMS9 = 17004; ! Reserved RMS items literal RMI$_RESERVEDRMS10 = 17005; ! Reserved RMS items literal RMI$_RESERVEDRMS11 = 17006; ! Reserved RMS items literal RMI$_RESERVEDRMS12 = 17007; ! Reserved RMS items literal RMI$_RESERVEDRMS13 = 17008; ! Reserved RMS items literal RMI$_RESERVEDRMS14 = 17009; ! Reserved RMS items literal RMI$_RESERVEDRMS15 = 17010; ! Reserved RMS items literal RMI$_RESERVEDRMS16 = 17011; ! Reserved RMS items literal RMI$_RESERVEDRMS17 = 17012; ! Reserved RMS items literal RMI$_RESERVEDRMS18 = 17013; ! Reserved RMS items literal RMI$_RESERVEDRMS19 = 17014; ! Reserved RMS items literal RMI$_RESERVEDRMS20 = 17015; ! Reserved RMS items literal RMI$_RESERVEDRMS21 = 17016; ! Reserved RMS items literal RMI$_RESERVEDRMS22 = 17017; ! Reserved RMS items literal RMI$_RESERVEDRMS23 = 17018; ! Reserved RMS items literal RMI$_RESERVEDRMS24 = 17019; ! Reserved RMS items literal RMI$_RESERVEDRMS25 = 17020; ! Reserved RMS items literal RMI$_RESERVEDRMS26 = 17021; ! Reserved RMS items literal RMI$_RESERVEDRMS27 = 17022; ! Reserved RMS items literal RMI$_RESERVEDRMS28 = 17023; ! Reserved RMS items literal RMI$_RESERVEDRMS29 = 17024; ! Reserved RMS items literal RMI$_RESERVEDRMS30 = 17025; ! Reserved RMS items literal RMI$_RESERVEDRMS31 = 17026; ! Reserved RMS items literal RMI$_RESERVEDRMS32 = 17027; ! Reserved RMS items literal RMI$_RESERVEDRMS33 = 17028; ! Reserved RMS items literal RMI$_RESERVEDRMS34 = 17029; ! Reserved RMS items literal RMI$_RESERVEDRMS35 = 17030; ! Reserved RMS items literal RMI$_RESERVEDRMS36 = 17031; ! Reserved RMS items literal RMI$_RESERVEDRMS37 = 17032; ! Reserved RMS items literal RMI$_RESERVEDRMS38 = 17033; ! Reserved RMS items literal RMI$_RESERVEDRMS39 = 17034; ! Reserved RMS items literal RMI$_RESERVEDRMS40 = 17035; ! Reserved RMS items literal RMI$_RESERVEDRMS41 = 17036; ! Reserved RMS items literal RMI$_RESERVEDRMS42 = 17037; ! Reserved RMS items literal RMI$_RESERVEDRMS43 = 17038; ! Reserved RMS items literal RMI$_RESERVEDRMS44 = 17039; ! Reserved RMS items literal RMI$_RESERVEDRMS45 = 17040; ! Reserved RMS items literal RMI$_RESERVEDRMS46 = 17041; ! Reserved RMS items literal RMI$_RESERVEDRMS47 = 17042; ! Reserved RMS items literal RMI$_RESERVEDRMS48 = 17043; ! Reserved RMS items literal RMI$_RESERVEDRMS49 = 17044; ! Reserved RMS items literal RMI$_RESERVEDRMS50 = 17045; ! Reserved RMS items literal RMI$_RESERVEDRMS51 = 17046; ! Reserved RMS items literal RMI$_RESERVEDRMS52 = 17047; ! Reserved RMS items literal RMI$_RESERVEDRMS53 = 17048; ! Reserved RMS items literal RMI$_RESERVEDRMS54 = 17049; ! Reserved RMS items literal RMI$_RESERVEDRMS55 = 17050; ! Reserved RMS items literal RMI$_RESERVEDRMS56 = 17051; ! Reserved RMS items literal RMI$_RESERVEDRMS57 = 17052; ! Reserved RMS items literal RMI$_RESERVEDRMS58 = 17053; ! Reserved RMS items literal RMI$_RESERVEDRMS59 = 17054; ! Reserved RMS items literal RMI$_RESERVEDRMS60 = 17055; ! Reserved RMS items literal RMI$_RESERVEDRMS61 = 17056; ! Reserved RMS items literal RMI$_RESERVEDRMS62 = 17057; ! Reserved RMS items literal RMI$_RESERVEDRMS63 = 17058; ! Reserved RMS items literal RMI$_RESERVEDRMS64 = 17059; ! Reserved RMS items literal RMI$_RESERVEDRMS65 = 17060; ! Reserved RMS items literal RMI$_RESERVEDRMS66 = 17061; ! Reserved RMS items literal RMI$_RESERVEDRMS67 = 17062; ! Reserved RMS items literal RMI$_RESERVEDRMS68 = 17063; ! Reserved RMS items literal RMI$_RESERVEDRMS69 = 17064; ! Reserved RMS items literal RMI$_RESERVEDRMS70 = 17065; ! Reserved RMS items literal RMI$_RESERVEDRMS71 = 17066; ! Reserved RMS items literal RMI$_RESERVEDRMS72 = 17067; ! Reserved RMS items literal RMI$_RESERVEDRMS73 = 17068; ! Reserved RMS items literal RMI$_RESERVEDRMS74 = 17069; ! Reserved RMS items literal RMI$_RESERVEDRMS75 = 17070; ! Reserved RMS items literal RMI$_RESERVEDRMS76 = 17071; ! Reserved RMS items literal RMI$_RESERVEDRMS77 = 17072; ! Reserved RMS items literal RMI$_RESERVEDRMS78 = 17073; ! Reserved RMS items literal RMI$_RESERVEDRMS79 = 17074; ! Reserved RMS items literal RMI$_RESERVEDRMS80 = 17075; ! Reserved RMS items literal RMI$_RESERVEDRMS81 = 17076; ! Reserved RMS items literal RMI$_RESERVEDRMS82 = 17077; ! Reserved RMS items literal RMI$_RESERVEDRMS83 = 17078; ! Reserved RMS items literal RMI$_RESERVEDRMS84 = 17079; ! Reserved RMS items literal RMI$_RESERVEDRMS85 = 17080; ! Reserved RMS items literal RMI$_RESERVEDRMS86 = 17081; ! Reserved RMS items literal RMI$_RESERVEDRMS87 = 17082; ! Reserved RMS items literal RMI$_RESERVEDRMS88 = 17083; ! Reserved RMS items literal RMI$_RESERVEDRMS89 = 17084; ! Reserved RMS items literal RMI$_RESERVEDRMS90 = 17085; ! Reserved RMS items literal RMI$_RESERVEDRMS91 = 17086; ! Reserved RMS items literal RMI$_RESERVEDRMS92 = 17087; ! Reserved RMS items literal RMI$_RESERVEDRMS93 = 17088; ! Reserved RMS items literal RMI$_RESERVEDRMS94 = 17089; ! Reserved RMS items literal RMI$_RESERVEDRMS95 = 17090; ! Reserved RMS items literal RMI$_RESERVEDRMS96 = 17091; ! Reserved RMS items literal RMI$_RESERVEDRMS97 = 17092; ! Reserved RMS items literal RMI$_RESERVEDRMS98 = 17093; ! Reserved RMS items literal RMI$_RESERVEDRMS99 = 17094; ! Reserved RMS items literal RMI$_RESERVEDRMS100 = 17095; ! Reserved RMS items literal RMI$_LASTRMS = 17096; ! Last item in the monitor specific table ! EX2TABLE : Extended EXE table ! Define item identifier numbers. Each data item has an associated ! value which is used to find its entry in the EXETBL. The item table ! is defined by the macros RMI_GENERATE_TABLE which makes multiple calls ! to the macro RMI_ITEM_CODE defined in the SYSGETRMI module. ! literal RMI$_CPUID = 21192; ! Primary cpu id literal RMI$_CPUCOMPAT = 21193; ! time in compat. mode literal RMI$_CPUINTSTK = 21194; ! time on interrupt stack literal RMI$_CPUMPSYNCH = 21195; ! time spent in synch mode literal RMI$_CPUKERNEL = 21196; ! time in kernel mode literal RMI$_CPUEXEC = 21197; ! time in exec mode literal RMI$_CPUSUPER = 21198; ! time in supervisor mode literal RMI$_CPUUSER = 21199; ! time in user mode literal RMI$_CPUIDLE = 21200; ! idle time literal RMI$_PROCCNTMAX = 21201; ! Maximum number of concurrent processes seen by the system literal RMI$_PROCBATCNT = 21202; ! Total number of batch processes in the system literal RMI$_PROCINTCNT = 21203; ! Total number of interactive processes in the system literal RMI$_PROCNETCNT = 21204; ! Total number of network processes in the system literal RMI$_PROCSWITCHCNT = 21205; ! Total count of switches from the then-currently executing process literal RMI$_PROCBALSETCNT = 21206; ! Total number of processe in the balance set. literal RMI$_PROCLOADCNT = 21207; ! Total count of process context load operations. literal RMI$_BADFLTS = 21208; ! Number of bad_list faults literal RMI$_EXEFAULTS = 21209; ! Number of execute page faults. literal RMI$_HDRINSWAPS = 21210; ! Count of system wide process header inswap operations. literal RMI$_HDROUTSWAPS = 21211; ! Count of system wide process header outswap operations. literal RMI$_IOPAGCNT = 21212; ! Count of pages in transit to disk from the modified page list (system wide ). literal RMI$_ISWPCNTPG = 21213; ! Accumulated system wide count of pages in-swapped. literal RMI$_OSWPCNT = 21214; ! Accumulated system wide count of process owtswap operations. literal RMI$_OSWPCNTPG = 21215; ! Accumulated system-wide count of pages out-swapped literal RMI$_RDFAULTS = 21216; ! Count of fault-on-read page faults. literal RMI$_TRANSFLTS = 21217; ! Accumulated system-wide count of transition faults. literal RMI$_WRTFAULTS = 21218; ! Count of fault-on-write page faults. literal RMI$_USERPAGES = 21219; ! Number of pages available for use by applications. literal RMI$_VMSPAGES = 21220; ! Number of pages actually allocated to OpenVMS. literal RMI$_LOGNAMCRE = 21221; ! Count of logical name creations. literal RMI$_LOGNAMDEL = 21222; ! Count of logical name deletions. literal RMI$_LOGNAMFAIL = 21223; ! Count of logical name translations that failed. literal RMI$_LOGNAMTBLCRE = 21224; ! Count of logical name tables created. literal RMI$_TTREADCNT = 21225; ! Accumulated system wide count of characters read from terminals. literal RMI$_TTREADS = 21226; ! Accumulated system wide count of reads from terminals. literal RMI$_TTWRITECNT = 21227; ! Accumulated system wide count of characters written to terminals. literal RMI$_TTWRITES = 21228; ! Accumulated system wide count of writes to terminals. literal RMI$_BUFOBJPAG = 21229; ! Count of buffer object physical pages currently allocated. literal RMI$_BUFOBJPAGPEAK = 21230; ! Maximum number of buffer object physical pages currently allocated. literal RMI$_BUFOBJPAGS01 = 21231; ! Number of buffer object pages currently allocated in S0/S1 space. literal RMI$_BUFOBJPAGS2 = 21232; ! Max number of buffer object pages currently allocated in S2 space. literal RMI$_BUFOBJPAGMAXS01 = 21233; ! Max number of buffer object pages in S0/S1 space. literal RMI$_BUFOBJPAGMAXS2 = 21234; ! Maximum number of buffer object physical pages in S2 space. literal RMI$_BUFOBJPAGPEAKS01 = 21235; ! Max number of buffer object pages currently allocated in S0/S1 space. literal RMI$_BUFOBJPAGPEAKS2 = 21236; ! Maximum number of buffer object physical pages currently allocated in S2 space. literal RMI$_BUFOBJPGLTMAXS01 = 21237; ! Number of available buffer object pagelets in S0/S1 space. literal RMI$_BUFOBJPGLTMAXS2 = 21238; ! Number of available buffer object pagelets in S2 space. literal RMI$_DLCK_INCMPLT = 21239; ! System-wide count of incomplete deadlock searches. literal RMI$_DLCKMSGS_IN = 21240; ! System-wide count of incoming deadlock detection messages. literal RMI$_DLCKMSGS_OUT = 21241; ! System-wide count of of outgoing deadlock detection messages. literal RMI$_TQETOTAL = 21242; ! Count of timer requests. literal RMI$_TQESYSUB = 21243; ! Count of timer requests made by OpenVMS operating system. literal RMI$_TQEUSRTIMR = 21244; ! Count of timer requests made by application programs through $SETIMR system service. literal RMI$_TQEUSRWAKE = 21245; ! Count of timer requests made by application programs through $SCHDWK system service. literal RMI$_CWPSBYTESIN = 21246; ! Count of Cluster-wide process services "CWPS" message bytes received by the system. literal RMI$_CWPSBYTESOUT = 21247; ! Count of CWPS message bytes sent by the system. literal RMI$_CWPSJPISIN = 21248; ! Count of CWPS $GETJPI requests received by the system. literal RMI$_CWPSJPISOUT = 21249; ! Count of CWPS $GETJPI requests sent by the system. literal RMI$_CWPSMSGSIN = 21250; ! Count of CWPS messages received by the system. literal RMI$_CWPSMSGSOUT = 21251; ! Count of CWPS messages sent by the system. literal RMI$_CWPSPCNTRLIN = 21252; ! Count of CWPS PCNTRL requests received by the system. literal RMI$_CWPSPCNTRLOUT = 21253; ! Count of CWPS PCNTRL requests sent by the system. literal RMI$_CWPSRSRCIN = 21254; ! Count of CWPS resource-fail messages received by the system. literal RMI$_CWPSRSRCOUT = 21255; ! Count of CWPS resource-fail messages sent by the system. literal RMI$_CHME = 21256; ! Count of $CMEXEC service calls. literal RMI$_CHMK = 21257; ! Count of $CMKRNL service calls. literal RMI$_MCHKERRS = 21258; ! Count of machine checks since the system was booted. literal RMI$_MEMERRS = 21259; ! Count of memory errors since the system was booted. literal RMI$_RESMASK = 21260; ! A bit mask summarizing the system resources for which processes in the MWAIT state are cu literal RMI$_CACHE_STATE = 21261; ! Cache stats bits literal RMI$_CACHE_MEMORY = 21262; ! Pages of memory currently held by the cache literal RMI$_CACHE_FREE = 21263; ! Pages of memory held by the cache but not currently in use literal RMI$_CACHE_READ_HITS = 21264; ! Read hits literal RMI$_CACHE_VIRT_READS = 21265; ! Virtual reads to cacheable files literal RMI$_CACHE_VIRT_WRITES = 21266; ! Virtual writes to cacheable files literal RMI$_CACHE_R_ARND_MOD = 21267; ! Read arounds due to modifier bits literal RMI$_CACHE_R_ARND_SIZ = 21268; ! Read arounds due to size too large literal RMI$_CACHE_W_ARND_MOD = 21269; ! Write arounds due to modifier bits literal RMI$_CACHE_W_ARND_SIZ = 21270; ! Write arounds due to size too large literal RMI$_CACHE_LIMBO_LEN = 21271; ! Length of limbo queue literal RMI$_CACHE_MIN_SIZE = 21272; ! Minimum cache size in Pages literal RMI$_CACHE_MAX_SIZE = 21273; ! Current maximum cache size in Pages literal RMI$_CACHE_MAX_LIMIT = 21274; ! Maximum ever cache size in Pages (limited by boot-time VA allocation) literal RMI$_CACHE_MAX_IO_SIZE = 21275; ! Value of VCC_MAX_IO_SIZE literal RMI$_CACHE_MAX_LOCKS = 21276; ! Value of VCC_MAX_LOCKS literal RMI$_CACHE_READAHEAD = 21277; ! Value of VCC_READAHEAD literal RMI$_CACHE_WRITEBEHIND = 21278; ! Value of VCC_WRITEBEHIND literal RMI$_CACHE_WRITEDELAY = 21279; ! Value of VCC_WRITE_DELAY literal RMI$_CACHE_VOLS_FXFC_MODE = 21280; ! Count of volumes in Full XFC mode literal RMI$_CACHE_VOLS_RXFC_MODE = 21281; ! Count of volumes in VIOC compatability mode literal RMI$_CACHE_VOLS_NC_MODE = 21282; ! Count of volumes in No Caching mode literal RMI$_CACHE_VOLS_PNC_MODE = 21283; ! Count of volumes in Permanent No Caching mode literal RMI$_CACHE_OPEN_FILES = 21284; ! Number of open files literal RMI$_CACHE_UNSYNCHED_IOS = 21285; ! Number of physical/logical unsynched IOs literal RMI$_CACHE_DELAYED_WRITES = 21286; ! Number of write-behind writes literal RMI$_CACHE_LOST_WRITES = 21287; ! Writes lost due to disk errors literal RMI$_CACHE_FULL_BARRIERS = 21288; ! Number of full barriers in dep graph literal RMI$_CACHE_PARTIAL_BARRIERS = 21289; ! Number of partial barriers in dep graph literal RMI$_CACHE_READS_AROUND = 21290; ! Total number of reads around the cache literal RMI$_CACHE_WRITES_AROUND = 21291; ! Total number of writes around the cache literal RMI$_CACHE_CURRENT_LOCKS = 21292; ! Number of locks currently held by cache literal RMI$_CACHE_BARRIER_COUNT = 21293; ! Number of barrier calls made since boot-time literal RMI$_CACHE_SUPER_WRITES = 21294; ! Number of writes that supersede dirty data literal RMI$_CACHE_NON_PAGED_POOL = 21295; ! Amount of non-paged pool cuurrently held by the cache literal RMI$_CACHE_EVERYTHING = 21296; ! Dummy item to collect everything about cache literal RMI$_GBP_CURMAP = 21297; ! Count of global pages currently mapped. literal RMI$_GBP_CURMAP_GRP = 21298; ! Count of group global pages currently mapped. literal RMI$_GBP_CURMAP_GRPWRT = 21299; ! Count of writable group global pages currently mapped. literal RMI$_GBP_CURMAP_SYS = 21300; ! Count of system global pages currently mapped. literal RMI$_GBP_CURMAP_SYSWRT = 21301; ! Count of writable system global pages currently mapped. literal RMI$_GBP_MAXMAP = 21302; ! Maximum count of global pages simultaneouly mapped. literal RMI$_GBS_CURMAP = 21303; ! Count of global sections currently mapped. literal RMI$_GBS_CURMAP_GRP = 21304; ! Count of group global sections currently mapped. literal RMI$_GBS_CURMAP_GRPWRT = 21305; ! Count of writable group global sections currently mapped. literal RMI$_GBS_CURMAP_SYS = 21306; ! Count of system global sections currently mapped. literal RMI$_GBS_CURMAP_SYSWRT = 21307; ! Count of writable system global sections currently mapped. literal RMI$_GBS_MAXMAP = 21308; ! Maximum count of global sections simutaneously mapped. literal RMI$_GBS_NOREF = 21309; ! Count of global sections not mapped to a process. literal RMI$_NP_POOL_ALLOC = 21310; ! Accumulated count of non-paged pool allocation requests. literal RMI$_NP_POOL_ALLOCF = 21311; ! Count of unsuccessful non-paged pool allocation requests. literal RMI$_NP_POOL_EXP = 21312; ! Count of successful expansions on non-paged pool. literal RMI$_NP_POOL_EXPF = 21313; ! Count of unsuccessful attempts to expand non-paged pool. literal RMI$_PG_POOL_ALLOC = 21314; ! Count of paged pool allocation requests. literal RMI$_PG_POOL_ALLOCF = 21315; ! Count of unsuccessful paged pool allocation requests. literal RMI$_PG_POOL_EXPF = 21316; ! Count of unsuccessful attempts to expand paged pool. literal RMI$_SMP_CURMAP = 21317; ! Count of global pages currently mapped for galaxy shared memory. literal RMI$_SMP_CURMAP_GRP = 21318; ! Count of group global pages currently mapped for galaxy shared memory. literal RMI$_SMP_CURMAP_GRPWRT = 21319; ! Count of writable group global pages currently mapped for galaxy shared memory. literal RMI$_SMP_CURMAP_SYS = 21320; ! Count of system global pages currently mapped for galaxy shared memory. literal RMI$_SMP_CURMAP_SYSWRT = 21321; ! Count of writable system global pages currently mapped for galaxy shared memory. literal RMI$_SMS_CURMAP = 21322; ! Count of global sections currently mapped for galaxy shared memory. literal RMI$_SMS_CURMAP_GRP = 21323; ! Count of group global sections currently mapped for galaxy shared memory. literal RMI$_SMS_CURMAP_GRPWRT = 21324; ! Count of writable group global sections currently mapped for galaxy shared memory. literal RMI$_SMS_CURMAP_SYS = 21325; ! Count of system global sections currently mapped for galaxy shared memory. literal RMI$_SMS_CURMAP_SYSWRT = 21326; ! Count of writable system global sections currently mapped for galaxy shared memory. literal RMI$_SMS_NOREF = 21327; ! Current count of global sections for galaxy shared memory which are not mapped to a proce literal RMI$_RESERVEDEXT1 = 21328; ! Reserved EXE items literal RMI$_RESERVEDEXT2 = 21329; ! Reserved EXE items literal RMI$_RESERVEDEXT3 = 21330; ! Reserved EXE items literal RMI$_RESERVEDEXT4 = 21331; ! Reserved EXE items literal RMI$_RESERVEDEXT5 = 21332; ! Reserved EXE items literal RMI$_RESERVEDEXT6 = 21333; ! Reserved EXE items literal RMI$_RESERVEDEXT7 = 21334; ! Reserved EXE items literal RMI$_RESERVEDEXT8 = 21335; ! Reserved EXE items literal RMI$_RESERVEDEXT9 = 21336; ! Reserved EXE items literal RMI$_RESERVEDEXT10 = 21337; ! Reserved EXE items literal RMI$_RESERVEDEXT11 = 21338; ! Reserved EXE items literal RMI$_RESERVEDEXT12 = 21339; ! Reserved EXE items literal RMI$_RESERVEDEXT13 = 21340; ! Reserved EXE items literal RMI$_RESERVEDEXT14 = 21341; ! Reserved EXE items literal RMI$_RESERVEDEXT15 = 21342; ! Reserved EXE items literal RMI$_RESERVEDEXT16 = 21343; ! Reserved EXE items literal RMI$_RESERVEDEXT17 = 21344; ! Reserved EXE items literal RMI$_RESERVEDEXT18 = 21345; ! Reserved EXE items literal RMI$_RESERVEDEXT19 = 21346; ! Reserved EXE items literal RMI$_RESERVEDEXT20 = 21347; ! Reserved EXE items literal RMI$_RESERVEDEXT21 = 21348; ! Reserved EXE items literal RMI$_RESERVEDEXT22 = 21349; ! Reserved EXE items literal RMI$_RESERVEDEXT23 = 21350; ! Reserved EXE items literal RMI$_RESERVEDEXT24 = 21351; ! Reserved EXE items literal RMI$_RESERVEDEXT25 = 21352; ! Reserved EXE items literal RMI$_RESERVEDEXT26 = 21353; ! Reserved EXE items literal RMI$_RESERVEDEXT27 = 21354; ! Reserved EXE items literal RMI$_RESERVEDEXT28 = 21355; ! Reserved EXE items literal RMI$_RESERVEDEXT29 = 21356; ! Reserved EXE items literal RMI$_RESERVEDEXT30 = 21357; ! Reserved EXE items literal RMI$_RESERVEDEXT31 = 21358; ! Reserved EXE items literal RMI$_RESERVEDEXT32 = 21359; ! Reserved EXE items literal RMI$_RESERVEDEXT33 = 21360; ! Reserved EXE items literal RMI$_RESERVEDEXT34 = 21361; ! Reserved EXE items literal RMI$_RESERVEDEXT35 = 21362; ! Reserved EXE items literal RMI$_RESERVEDEXT36 = 21363; ! Reserved EXE items literal RMI$_RESERVEDEXT37 = 21364; ! Reserved EXE items literal RMI$_RESERVEDEXT38 = 21365; ! Reserved EXE items literal RMI$_RESERVEDEXT39 = 21366; ! Reserved EXE items literal RMI$_RESERVEDEXT40 = 21367; ! Reserved EXE items literal RMI$_RESERVEDEXT41 = 21368; ! Reserved EXE items literal RMI$_RESERVEDEXT42 = 21369; ! Reserved EXE items literal RMI$_RESERVEDEXT43 = 21370; ! Reserved EXE items literal RMI$_RESERVEDEXT44 = 21371; ! Reserved EXE items literal RMI$_RESERVEDEXT45 = 21372; ! Reserved EXE items literal RMI$_RESERVEDEXT46 = 21373; ! Reserved EXE items literal RMI$_RESERVEDEXT47 = 21374; ! Reserved EXE items literal RMI$_RESERVEDEXT48 = 21375; ! Reserved EXE items literal RMI$_RESERVEDEXT49 = 21376; ! Reserved EXE items literal RMI$_RESERVEDEXT50 = 21377; ! Reserved EXE items literal RMI$_RESERVEDEXT51 = 21378; ! Reserved EXE items literal RMI$_RESERVEDEXT52 = 21379; ! Reserved EXE items literal RMI$_RESERVEDEXT53 = 21380; ! Reserved EXE items literal RMI$_RESERVEDEXT54 = 21381; ! Reserved EXE items literal RMI$_RESERVEDEXT55 = 21382; ! Reserved EXE items literal RMI$_RESERVEDEXT56 = 21383; ! Reserved EXE items literal RMI$_RESERVEDEXT57 = 21384; ! Reserved EXE items literal RMI$_RESERVEDEXT58 = 21385; ! Reserved EXE items literal RMI$_RESERVEDEXT59 = 21386; ! Reserved EXE items literal RMI$_RESERVEDEXT60 = 21387; ! Reserved EXE items literal RMI$_RESERVEDEXT61 = 21388; ! Reserved EXE items literal RMI$_RESERVEDEXT62 = 21389; ! Reserved EXE items literal RMI$_RESERVEDEXT63 = 21390; ! Reserved EXE items literal RMI$_RESERVEDEXT64 = 21391; ! Reserved EXE items literal RMI$_RESERVEDEXT65 = 21392; ! Reserved EXE items literal RMI$_RESERVEDEXT66 = 21393; ! Reserved EXE items literal RMI$_RESERVEDEXT67 = 21394; ! Reserved EXE items literal RMI$_RESERVEDEXT68 = 21395; ! Reserved EXE items literal RMI$_RESERVEDEXT69 = 21396; ! Reserved EXE items literal RMI$_RESERVEDEXT70 = 21397; ! Reserved EXE items literal RMI$_RESERVEDEXT71 = 21398; ! Reserved EXE items literal RMI$_RESERVEDEXT72 = 21399; ! Reserved EXE items literal RMI$_RESERVEDEXT73 = 21400; ! Reserved EXE items literal RMI$_RESERVEDEXT74 = 21401; ! Reserved EXE items literal RMI$_RESERVEDEXT75 = 21402; ! Reserved EXE items literal RMI$_RESERVEDEXT76 = 21403; ! Reserved EXE items literal RMI$_RESERVEDEXT77 = 21404; ! Reserved EXE items literal RMI$_RESERVEDEXT78 = 21405; ! Reserved EXE items literal RMI$_RESERVEDEXT79 = 21406; ! Reserved EXE items literal RMI$_RESERVEDEXT80 = 21407; ! Reserved EXE items literal RMI$_RESERVEDEXT81 = 21408; ! Reserved EXE items literal RMI$_RESERVEDEXT82 = 21409; ! Reserved EXE items literal RMI$_RESERVEDEXT83 = 21410; ! Reserved EXE items literal RMI$_RESERVEDEXT84 = 21411; ! Reserved EXE items literal RMI$_RESERVEDEXT85 = 21412; ! Reserved EXE items literal RMI$_RESERVEDEXT86 = 21413; ! Reserved EXE items literal RMI$_RESERVEDEXT87 = 21414; ! Reserved EXE items literal RMI$_RESERVEDEXT88 = 21415; ! Reserved EXE items literal RMI$_RESERVEDEXT89 = 21416; ! Reserved EXE items literal RMI$_RESERVEDEXT90 = 21417; ! Reserved EXE items literal RMI$_RESERVEDEXT91 = 21418; ! Reserved EXE items literal RMI$_RESERVEDEXT92 = 21419; ! Reserved EXE items literal RMI$_RESERVEDEXT93 = 21420; ! Reserved EXE items literal RMI$_RESERVEDEXT94 = 21421; ! Reserved EXE items literal RMI$_RESERVEDEXT95 = 21422; ! Reserved EXE items literal RMI$_RESERVEDEXT96 = 21423; ! Reserved EXE items literal RMI$_RESERVEDEXT97 = 21424; ! Reserved EXE items literal RMI$_RESERVEDEXT98 = 21425; ! Reserved EXE items literal RMI$_RESERVEDEXT99 = 21426; ! Reserved EXE items literal RMI$_RESERVEDEXT100 = 21427; ! Reserved EXE items literal RMI$_RESERVEDEXT101 = 21428; ! Reserved EXE items literal RMI$_RESERVEDEXT102 = 21429; ! Reserved EXE items literal RMI$_RESERVEDEXT103 = 21430; ! Reserved EXE items literal RMI$_RESERVEDEXT104 = 21431; ! Reserved EXE items literal RMI$_RESERVEDEXT105 = 21432; ! Reserved EXE items literal RMI$_RESERVEDEXT106 = 21433; ! Reserved EXE items literal RMI$_RESERVEDEXT107 = 21434; ! Reserved EXE items literal RMI$_RESERVEDEXT108 = 21435; ! Reserved EXE items literal RMI$_RESERVEDEXT109 = 21436; ! Reserved EXE items literal RMI$_RESERVEDEXT110 = 21437; ! Reserved EXE items literal RMI$_RESERVEDEXT111 = 21438; ! Reserved EXE items literal RMI$_RESERVEDEXT112 = 21439; ! Reserved EXE items literal RMI$_RESERVEDEXT113 = 21440; ! Reserved EXE items literal RMI$_RESERVEDEXT114 = 21441; ! Reserved EXE items literal RMI$_RESERVEDEXT115 = 21442; ! Reserved EXE items literal RMI$_RESERVEDEXT116 = 21443; ! Reserved EXE items literal RMI$_RESERVEDEXT117 = 21444; ! Reserved EXE items literal RMI$_RESERVEDEXT118 = 21445; ! Reserved EXE items literal RMI$_RESERVEDEXT119 = 21446; ! Reserved EXE items literal RMI$_RESERVEDEXT120 = 21447; ! Reserved EXE items literal RMI$_RESERVEDEXT121 = 21448; ! Reserved EXE items literal RMI$_RESERVEDEXT122 = 21449; ! Reserved EXE items literal RMI$_RESERVEDEXT123 = 21450; ! Reserved EXE items literal RMI$_RESERVEDEXT124 = 21451; ! Reserved EXE items literal RMI$_RESERVEDEXT125 = 21452; ! Reserved EXE items literal RMI$_RESERVEDEXT126 = 21453; ! Reserved EXE items literal RMI$_RESERVEDEXT127 = 21454; ! Reserved EXE items literal RMI$_RESERVEDEXT128 = 21455; ! Reserved EXE items literal RMI$_RESERVEDEXT129 = 21456; ! Reserved EXE items literal RMI$_RESERVEDEXT130 = 21457; ! Reserved EXE items literal RMI$_RESERVEDEXT131 = 21458; ! Reserved EXE items literal RMI$_RESERVEDEXT132 = 21459; ! Reserved EXE items literal RMI$_RESERVEDEXT133 = 21460; ! Reserved EXE items literal RMI$_RESERVEDEXT134 = 21461; ! Reserved EXE items literal RMI$_RESERVEDEXT135 = 21462; ! Reserved EXE items literal RMI$_RESERVEDEXT136 = 21463; ! Reserved EXE items literal RMI$_RESERVEDEXT137 = 21464; ! Reserved EXE items literal RMI$_RESERVEDEXT138 = 21465; ! Reserved EXE items literal RMI$_RESERVEDEXT139 = 21466; ! Reserved EXE items literal RMI$_RESERVEDEXT140 = 21467; ! Reserved EXE items literal RMI$_RESERVEDEXT141 = 21468; ! Reserved EXE items literal RMI$_RESERVEDEXT142 = 21469; ! Reserved EXE items literal RMI$_RESERVEDEXT143 = 21470; ! Reserved EXE items literal RMI$_RESERVEDEXT144 = 21471; ! Reserved EXE items literal RMI$_RESERVEDEXT145 = 21472; ! Reserved EXE items literal RMI$_RESERVEDEXT146 = 21473; ! Reserved EXE items literal RMI$_RESERVEDEXT147 = 21474; ! Reserved EXE items literal RMI$_RESERVEDEXT148 = 21475; ! Reserved EXE items literal RMI$_RESERVEDEXT149 = 21476; ! Reserved EXE items literal RMI$_RESERVEDEXT150 = 21477; ! Reserved EXE items literal RMI$_RESERVEDEXT151 = 21478; ! Reserved EXE items literal RMI$_RESERVEDEXT152 = 21479; ! Reserved EXE items literal RMI$_RESERVEDEXT153 = 21480; ! Reserved EXE items literal RMI$_RESERVEDEXT154 = 21481; ! Reserved EXE items literal RMI$_RESERVEDEXT155 = 21482; ! Reserved EXE items literal RMI$_RESERVEDEXT156 = 21483; ! Reserved EXE items literal RMI$_RESERVEDEXT157 = 21484; ! Reserved EXE items literal RMI$_RESERVEDEXT158 = 21485; ! Reserved EXE items literal RMI$_RESERVEDEXT159 = 21486; ! Reserved EXE items literal RMI$_RESERVEDEXT160 = 21487; ! Reserved EXE items literal RMI$_RESERVEDEXT161 = 21488; ! Reserved EXE items literal RMI$_RESERVEDEXT162 = 21489; ! Reserved EXE items literal RMI$_RESERVEDEXT163 = 21490; ! Reserved EXE items literal RMI$_RESERVEDEXT164 = 21491; ! Reserved EXE items literal RMI$_RESERVEDEXT165 = 21492; ! Reserved EXE items literal RMI$_RESERVEDEXT166 = 21493; ! Reserved EXE items literal RMI$_RESERVEDEXT167 = 21494; ! Reserved EXE items literal RMI$_RESERVEDEXT168 = 21495; ! Reserved EXE items literal RMI$_RESERVEDEXT169 = 21496; ! Reserved EXE items literal RMI$_RESERVEDEXT170 = 21497; ! Reserved EXE items literal RMI$_RESERVEDEXT171 = 21498; ! Reserved EXE items literal RMI$_RESERVEDEXT172 = 21499; ! Reserved EXE items literal RMI$_RESERVEDEXT173 = 21500; ! Reserved EXE items literal RMI$_RESERVEDEXT174 = 21501; ! Reserved EXE items literal RMI$_RESERVEDEXT175 = 21502; ! Reserved EXE items literal RMI$_RESERVEDEXT176 = 21503; ! Reserved EXE items literal RMI$_RESERVEDEXT177 = 21504; ! Reserved EXE items literal RMI$_RESERVEDEXT178 = 21505; ! Reserved EXE items literal RMI$_RESERVEDEXT179 = 21506; ! Reserved EXE items literal RMI$_RESERVEDEXT180 = 21507; ! Reserved EXE items literal RMI$_RESERVEDEXT181 = 21508; ! Reserved EXE items literal RMI$_RESERVEDEXT182 = 21509; ! Reserved EXE items literal RMI$_RESERVEDEXT183 = 21510; ! Reserved EXE items literal RMI$_RESERVEDEXT184 = 21511; ! Reserved EXE items literal RMI$_RESERVEDEXT185 = 21512; ! Reserved EXE items literal RMI$_RESERVEDEXT186 = 21513; ! Reserved EXE items literal RMI$_RESERVEDEXT187 = 21514; ! Reserved EXE items literal RMI$_RESERVEDEXT188 = 21515; ! Reserved EXE items literal RMI$_RESERVEDEXT189 = 21516; ! Reserved EXE items literal RMI$_RESERVEDEXT190 = 21517; ! Reserved EXE items literal RMI$_RESERVEDEXT191 = 21518; ! Reserved EXE items literal RMI$_RESERVEDEXT192 = 21519; ! Reserved EXE items literal RMI$_RESERVEDEXT193 = 21520; ! Reserved EXE items literal RMI$_RESERVEDEXT194 = 21521; ! Reserved EXE items literal RMI$_RESERVEDEXT195 = 21522; ! Reserved EXE items literal RMI$_RESERVEDEXT196 = 21523; ! Reserved EXE items literal RMI$_RESERVEDEXT197 = 21524; ! Reserved EXE items literal RMI$_RESERVEDEXT198 = 21525; ! Reserved EXE items literal RMI$_RESERVEDEXT199 = 21526; ! Reserved EXE items literal RMI$_RESERVEDEXT200 = 21527; ! Reserved EXE items literal RMI$_RESERVEDEXT201 = 21528; ! Reserved EXE items literal RMI$_RESERVEDEXT202 = 21529; ! Reserved EXE items literal RMI$_RESERVEDEXT203 = 21530; ! Reserved EXE items literal RMI$_RESERVEDEXT204 = 21531; ! Reserved EXE items literal RMI$_RESERVEDEXT205 = 21532; ! Reserved EXE items literal RMI$_RESERVEDEXT206 = 21533; ! Reserved EXE items literal RMI$_RESERVEDEXT207 = 21534; ! Reserved EXE items literal RMI$_RESERVEDEXT208 = 21535; ! Reserved EXE items literal RMI$_RESERVEDEXT209 = 21536; ! Reserved EXE items literal RMI$_RESERVEDEXT210 = 21537; ! Reserved EXE items literal RMI$_RESERVEDEXT211 = 21538; ! Reserved EXE items literal RMI$_RESERVEDEXT212 = 21539; ! Reserved EXE items literal RMI$_RESERVEDEXT213 = 21540; ! Reserved EXE items literal RMI$_RESERVEDEXT214 = 21541; ! Reserved EXE items literal RMI$_RESERVEDEXT215 = 21542; ! Reserved EXE items literal RMI$_RESERVEDEXT216 = 21543; ! Reserved EXE items literal RMI$_RESERVEDEXT217 = 21544; ! Reserved EXE items literal RMI$_RESERVEDEXT218 = 21545; ! Reserved EXE items literal RMI$_RESERVEDEXT219 = 21546; ! Reserved EXE items literal RMI$_RESERVEDEXT220 = 21547; ! Reserved EXE items literal RMI$_RESERVEDEXT221 = 21548; ! Reserved EXE items literal RMI$_RESERVEDEXT222 = 21549; ! Reserved EXE items literal RMI$_RESERVEDEXT223 = 21550; ! Reserved EXE items literal RMI$_RESERVEDEXT224 = 21551; ! Reserved EXE items literal RMI$_RESERVEDEXT225 = 21552; ! Reserved EXE items literal RMI$_RESERVEDEXT226 = 21553; ! Reserved EXE items literal RMI$_RESERVEDEXT227 = 21554; ! Reserved EXE items literal RMI$_RESERVEDEXT228 = 21555; ! Reserved EXE items literal RMI$_RESERVEDEXT229 = 21556; ! Reserved EXE items literal RMI$_RESERVEDEXT230 = 21557; ! Reserved EXE items literal RMI$_RESERVEDEXT231 = 21558; ! Reserved EXE items literal RMI$_RESERVEDEXT232 = 21559; ! Reserved EXE items literal RMI$_RESERVEDEXT233 = 21560; ! Reserved EXE items literal RMI$_RESERVEDEXT234 = 21561; ! Reserved EXE items literal RMI$_RESERVEDEXT235 = 21562; ! Reserved EXE items literal RMI$_RESERVEDEXT236 = 21563; ! Reserved EXE items literal RMI$_RESERVEDEXT237 = 21564; ! Reserved EXE items literal RMI$_RESERVEDEXT238 = 21565; ! Reserved EXE items literal RMI$_RESERVEDEXT239 = 21566; ! Reserved EXE items literal RMI$_RESERVEDEXT240 = 21567; ! Reserved EXE items literal RMI$_RESERVEDEXT241 = 21568; ! Reserved EXE items literal RMI$_RESERVEDEXT242 = 21569; ! Reserved EXE items literal RMI$_RESERVEDEXT243 = 21570; ! Reserved EXE items literal RMI$_RESERVEDEXT244 = 21571; ! Reserved EXE items literal RMI$_RESERVEDEXT245 = 21572; ! Reserved EXE items literal RMI$_RESERVEDEXT246 = 21573; ! Reserved EXE items literal RMI$_RESERVEDEXT247 = 21574; ! Reserved EXE items literal RMI$_RESERVEDEXT248 = 21575; ! Reserved EXE items literal RMI$_RESERVEDEXT249 = 21576; ! Reserved EXE items literal RMI$_RESERVEDEXT250 = 21577; ! Reserved EXE items literal RMI$_RESERVEDEXT251 = 21578; ! Reserved EXE items literal RMI$_RESERVEDEXT252 = 21579; ! Reserved EXE items literal RMI$_RESERVEDEXT253 = 21580; ! Reserved EXE items literal RMI$_RESERVEDEXT254 = 21581; ! Reserved EXE items literal RMI$_RESERVEDEXT255 = 21582; ! Reserved EXE items literal RMI$_RESERVEDEXT256 = 21583; ! Reserved EXE items literal RMI$_RESERVEDEXT257 = 21584; ! Reserved EXE items literal RMI$_RESERVEDEXT258 = 21585; ! Reserved EXE items literal RMI$_RESERVEDEXT259 = 21586; ! Reserved EXE items literal RMI$_RESERVEDEXT260 = 21587; ! Reserved EXE items literal RMI$_RESERVEDEXT261 = 21588; ! Reserved EXE items literal RMI$_RESERVEDEXT262 = 21589; ! Reserved EXE items literal RMI$_RESERVEDEXT263 = 21590; ! Reserved EXE items literal RMI$_RESERVEDEXT264 = 21591; ! Reserved EXE items literal RMI$_RESERVEDEXT265 = 21592; ! Reserved EXE items literal RMI$_RESERVEDEXT266 = 21593; ! Reserved EXE items literal RMI$_RESERVEDEXT267 = 21594; ! Reserved EXE items literal RMI$_RESERVEDEXT268 = 21595; ! Reserved EXE items literal RMI$_RESERVEDEXT269 = 21596; ! Reserved EXE items literal RMI$_RESERVEDEXT270 = 21597; ! Reserved EXE items literal RMI$_RESERVEDEXT271 = 21598; ! Reserved EXE items literal RMI$_RESERVEDEXT272 = 21599; ! Reserved EXE items literal RMI$_RESERVEDEXT273 = 21600; ! Reserved EXE items literal RMI$_RESERVEDEXT274 = 21601; ! Reserved EXE items literal RMI$_RESERVEDEXT275 = 21602; ! Reserved EXE items literal RMI$_RESERVEDEXT276 = 21603; ! Reserved EXE items literal RMI$_RESERVEDEXT277 = 21604; ! Reserved EXE items literal RMI$_RESERVEDEXT278 = 21605; ! Reserved EXE items literal RMI$_RESERVEDEXT279 = 21606; ! Reserved EXE items literal RMI$_RESERVEDEXT280 = 21607; ! Reserved EXE items literal RMI$_RESERVEDEXT281 = 21608; ! Reserved EXE items literal RMI$_RESERVEDEXT282 = 21609; ! Reserved EXE items literal RMI$_RESERVEDEXT283 = 21610; ! Reserved EXE items literal RMI$_RESERVEDEXT284 = 21611; ! Reserved EXE items literal RMI$_RESERVEDEXT285 = 21612; ! Reserved EXE items literal RMI$_RESERVEDEXT286 = 21613; ! Reserved EXE items literal RMI$_RESERVEDEXT287 = 21614; ! Reserved EXE items literal RMI$_RESERVEDEXT288 = 21615; ! Reserved EXE items literal RMI$_RESERVEDEXT289 = 21616; ! Reserved EXE items literal RMI$_RESERVEDEXT290 = 21617; ! Reserved EXE items literal RMI$_RESERVEDEXT291 = 21618; ! Reserved EXE items literal RMI$_RESERVEDEXT292 = 21619; ! Reserved EXE items literal RMI$_RESERVEDEXT293 = 21620; ! Reserved EXE items literal RMI$_RESERVEDEXT294 = 21621; ! Reserved EXE items literal RMI$_RESERVEDEXT295 = 21622; ! Reserved EXE items literal RMI$_RESERVEDEXT296 = 21623; ! Reserved EXE items literal RMI$_RESERVEDEXT297 = 21624; ! Reserved EXE items literal RMI$_RESERVEDEXT298 = 21625; ! Reserved EXE items literal RMI$_RESERVEDEXT299 = 21626; ! Reserved EXE items literal RMI$_RESERVEDEXT300 = 21627; ! Reserved EXE items literal RMI$_LASTEX2 = 21628; ! Last item in the exec writable table ! ! Add new data items specific to MONITOR (not collected by the RMI on a per ! item basis) above this point. ! literal RMI$_tablesize = 1148; ! ! End of MONITOR specific data items. ! literal RMI$S_rmi$scs_offsets = 56; ! SCS class information macro RMI$q_scs_nodename = 0,0,0,1 %; literal RMI$s_scs_nodename = 8; ! System node name macro RMI$l_scs_dgsent = 8,0,32,1 %; ! Application datagrams sent macro RMI$l_scs_dgrcvd = 12,0,32,1 %; ! Application datagrams received macro RMI$l_scs_dgdiscard = 16,0,32,1 %; ! Application datagrams discarded macro RMI$l_scs_msgsent = 20,0,32,1 %; ! Application messages sent macro RMI$l_scs_msgrcvd = 24,0,32,1 %; ! Application messages received macro RMI$l_scs_snddats = 28,0,32,1 %; ! Block send datas initiated macro RMI$l_scs_kbytsent = 32,0,32,1 %; ! Kbytes sent via send datas macro RMI$l_scs_reqdats = 36,0,32,1 %; ! Block request datas initiated macro RMI$l_scs_kbytreqd = 40,0,32,1 %; ! Kbytes received via request datas macro RMI$l_scs_kbytmapd = 44,0,32,1 %; ! Kbytes mapped for block transfers macro RMI$l_scs_qcr_cnt = 48,0,32,1 %; ! Times connection queued for send credit macro RMI$l_scs_qbdt_cnt = 52,0,32,1 %; ! Times connection queued for buffer descriptor literal RMI$c_scs_minsize = 56; ! Size of one collection block for scs class literal RMI$S_rmi$disk_offsets = 37; ! DISK class information for ! current revision level macro RMI$w_disk_alloclass = 0,0,16,1 %; ! Allocation class macro RMI$l_disk_devname = 2,0,32,1 %; ! Device name macro RMI$w_disk_unitnum = 6,0,16,1 %; ! Unit number macro RMI$b_disk_flags = 8,0,8,1 %; ! Flags byte (low bit indicates served disk macro RMI$q_disk_nodename = 9,0,0,1 %; literal RMI$s_disk_nodename = 8; ! Nodename macro RMI$q_disk_volnamel = 17,0,0,1 %; literal RMI$s_disk_volnamel = 8; ! Volume name (low) macro RMI$l_disk_volnameh = 25,0,32,1 %; ! Volume name (high) macro RMI$l_disk_optcnt = 29,0,32,1 %; ! Operation count macro RMI$l_disk_qcount = 33,0,32,1 %; ! Queue length accumulator literal RMI$c_disk_minsize = 37; ! Size of one block literal RMI$S_rmi$disk_offsets_rev4 = 36; ! DISK class information ! for "revision level 4" macro RMI$b_disk_alloclass_rev4 = 0,0,8,1 %; ! Allocation class macro RMI$l_disk_devname_rev4 = 1,0,32,1 %; ! Device name macro RMI$w_disk_unitnum_rev4 = 5,0,16,1 %; ! Unit number macro RMI$b_disk_flags_rev4 = 7,0,8,1 %; ! Flags byte (low bit indicates served disk macro RMI$q_disk_nodename_rev4 = 8,0,0,1 %; literal RMI$s_disk_nodename_rev4 = 8; ! Nodename macro RMI$q_disk_volnamel_rev4 = 16,0,0,1 %; literal RMI$s_disk_volnamel_rev4 = 8; ! Volume name (low) macro RMI$l_disk_volnameh_rev4 = 24,0,32,1 %; ! Volume name (high) macro RMI$l_disk_optcnt_rev4 = 28,0,32,1 %; ! Operation count macro RMI$l_disk_qcount_rev4 = 32,0,32,1 %; ! Queue length accumulator literal RMI$c_disk_minsize_rev4 = 36; ! Size of one block literal RMI$S_rmi$proc_class = 67; ! PROCESSES Class Data Block macro RMI$l_proc_ipid = 0,0,32,1 %; ! Internal PID macro RMI$l_proc_uic = 4,0,32,1 %; ! UIC (Member is low-order word) macro RMI$w_proc_state = 8,0,16,1 %; ! State value macro RMI$b_proc_pri = 10,0,8,1 %; ! Priority (negative value) macro RMI$o_proc_lname = 11,0,0,1 %; literal RMI$s_proc_lname = 16; ! Process name (counted string) macro RMI$l_proc_gpgcnt = 27,0,32,1 %; ! Global page count macro RMI$l_proc_ppgcnt = 31,0,32,1 %; ! Process page count macro RMI$l_proc_sts = 35,0,32,1 %; ! PCB Status Vector ! (PCB$V_RES bit clear => swapped out) macro RMI$l_proc_diocnt = 39,0,32,1 %; ! Direct I/O count macro RMI$l_proc_pageflts = 43,0,32,1 %; ! Page fault count macro RMI$l_proc_cputim = 47,0,32,1 %; ! Accumulated CPU time (in ticks) macro RMI$l_proc_biocnt = 51,0,32,1 %; ! Buffered I/O count macro RMI$l_proc_epid = 55,0,32,1 %; ! Extended PID macro RMI$l_proc_efwm = 59,0,32,1 %; ! Event flag wait mask (for MWAITs) macro RMI$l_proc_rbstran = 63,0,32,1 %; ! Real balance slot transitions ! Size of process data block literal RMI$c_proc_minsize = 67; !*** MODULE $REGDEF *** ! ! +===================================================================+ ! | ! | REG - Registry system service ($REGISTRY) definition ! | ! +===================================================================+ ! ! +-------------------------------------------------------------------+ ! | Function codes ! +-------------------------------------------------------------------+ ! literal REG$FC_CLOSE_KEY = 1; ! Releases the resources for a given key literal REG$FC_CREATE_KEY = 2; ! Either creates a specified key or opens it if it already exists literal REG$FC_DELETE_KEY = 3; ! Removes a specified key from the registry literal REG$FC_DELETE_VALUE = 4; ! Deletes the specified value from a given key literal REG$FC_ENUM_KEY = 5; ! Retrieves information about a subkey literal REG$FC_ENUM_VALUE = 6; ! Retrieves information about a value literal REG$FC_FLUSH_KEY = 7; ! Write all the information of a specified key to disk literal REG$FC_LOAD_KEY = 8; ! Create a subkey and store information from a given file literal REG$FC_MODIFY_KEY = 9; ! Modifies information about a specified key literal REG$FC_MODIFY_TREE_KEY = 10; ! Modifies information about a specified key and all its subkeys literal REG$FC_NOTIFY_CHANGE_KEY_VALUE = 11; ! Notifies the calling process when a specified key has changed literal REG$FC_OPEN_KEY = 12; ! Opens a specified key literal REG$FC_QUERY_KEY = 13; ! Retrieves information about a specified key literal REG$FC_QUERY_VALUE = 14; ! Retrieves information about a specified value literal REG$FC_REPLACE_KEY = 15; ! Replaces a key and all its subkeys with information in a specified file literal REG$FC_RESTORE_KEY = 16; ! Restores a key from a specified file literal REG$FC_SAVE_KEY = 17; ! Saves a key and its subkeys to a specified file literal REG$FC_SEARCH_TREE_DATA = 18; ! Scan a key and its subkeys for a given data component literal REG$FC_SEARCH_TREE_KEY = 19; ! Scan a key and its subkeys for a given subkey literal REG$FC_SEARCH_TREE_VALUE = 20; ! Scan a key and its subkeys for a given value literal REG$FC_SET_VALUE = 21; ! Sets value infornation literal REG$FC_UNLOAD_KEY = 22; ! Removes a key tree form the registry literal REG$FC_GET_KEY_SECURITY = 23; ! Retrieves a key security profile literal REG$FC_SET_KEY_SECURITY = 24; ! Sets a key security profile literal REG$FC_GET_PERFORMANCE = 25; ! Retrieves performance information literal REG$FC_GET_FILE_INFO = 26; ! Retrieves file statistics literal REG$FC_GET_FILE_UPDATE = 27; ! Retrieves segment allocation information literal REG$FC_CREATE_DATABASE = 28; ! Creates the registry database literal REG$FC_MAKE_SNAPSHOT = 29; ! Take a snpashot of the Registry database literal REG$FC_ARCHIVE = 30; ! Archive the registry database literal REG$FC_LAST = 31; ! Always last ! ! +-------------------------------------------------------------------+ ! | Item Code Modifiers ! +-------------------------------------------------------------------+ ! literal REG$M_UNICODE_STRING = 8192; ! 0x2000 string is Unicode ! ! +-------------------------------------------------------------------+ ! | Item Codes ! +-------------------------------------------------------------------+ ! literal REG$_TERMINATOR = 0; ! network packet terminator literal REG$_SEPARATOR = 1; ! item code list seperator literal REG$_SECPROFILE = 514; ! security profile literal REG$_REQUEST = 515; ! TLV of item code TLVs (request) literal REG$_ACMODE = 1284; ! access mode literal REG$_ACTIONCODE = 1285; ! action code for performance & space literal REG$_CACHEACTION = 1286; ! cache action (thru/behind ) literal REG$_CANCELNOTIFICATION = 519; ! Cancel notify key change notify literal REG$_CLASSNAME = 264; ! class name literal REG$_CLASSNAMEMAX = 1289; ! longest class name length literal REG$_CLASSNAMESIZE = 1290; ! destination's class name buffer size literal REG$_DATAFLAGS = 1547; ! data flags literal REG$_DATATYPE = 1292; ! data type literal REG$_DISPOSITION = 1293; ! createnewkey/openexistingkey literal REG$_FILEINFODATA = 526; ! File info data literal REG$_FILELOAD = 1807; ! OpenVMS file name to load literal REG$_FILESAVE = 1808; ! OpenVMS file name to save literal REG$_FILEUPDATEDATA = 529; ! File update data literal REG$_FLAGOPCODE = 1298; ! how data flags is used literal REG$_FLAGSUBKEY = 1299; ! report (sub)key changes literal REG$_KEYID = 1300; ! input key id in longword format literal REG$_KEYID_INTERNAL = 533; ! internal key id in UID/FSO/LH format literal REG$_KEYFLAGS = 1302; ! KEY flags literal REG$_KEYPATH = 279; ! Path to key object literal REG$_KEYRESULT = 1304; ! output key id in longword format literal REG$_KEYRESULT_INTERNAL = 537; ! internal key id in UID/FSO/LH format literal REG$_LASTWRITE = 1562; ! time key was last written literal REG$_LINKCOUNT = 1307; ! Count of links refer to item literal REG$_LINKPATH = 284; ! key path a key is linked to literal REG$_LINKPATHSIZE = 1309; ! destination's link path buffer size literal REG$_LINKTYPE = 1310; ! Link type (logical/physical) literal REG$_LOCK = 1311; ! what lock on open/create key literal REG$_NEWNAME = 288; ! new name of a key create/rename literal REG$_NOTIFYFILTER = 1313; ! which key changes to reported literal REG$_PATHBUFFER = 546; ! set of paths separated by null byte literal REG$_PERFORMANCEDATA = 547; ! Performance data literal REG$_REQLENGTH = 1316; ! required buffer size literal REG$_RETURNSTATUS = 1317; ! return status for a given operation literal REG$_SECACCESS = 1318; ! security access for a new key literal REG$_SECONDSTATUS = 1319; ! secondary status for a given operation literal REG$_SECURITYPOLICY = 1320; ! Security policy to enforce for a key literal REG$_SEGMENTNUMBER = 1321; ! Segment Number for locating space info literal REG$_SNAPSHOTDESTINATION = 1834; ! Snapshot destination directory literal REG$_SNAPSHOTVERSIONS = 1323; ! Snapshot versions to maintain literal REG$_SUBKEYINDEX = 1324; ! Index of the subkey to retrieve literal REG$_SUBKEYNAME = 301; ! name of a subkey literal REG$_SUBKEYNAMEMAX = 1326; ! longest subkey name for a given key literal REG$_SUBKEYNAMESIZE = 1327; ! destination's subkey name buffer size literal REG$_SUBKEYSNUMBER = 1328; ! Number of subkeys in a given key literal REG$_SECURITYINFORMATION = 1329; ! NT Security information literal REG$_SECURITYDESCRIPTOR = 562; ! NT Security descriptor literal REG$_VALUEINDEX = 1331; ! index of the value to retrieve literal REG$_VALUEDATA = 564; ! value data component literal REG$_VALUEDATAMAX = 1333; ! longest value data for a given key literal REG$_VALUEDATASIZE = 1334; ! destination's value data buffer size literal REG$_VALUENAME = 311; ! specifies the name of a value literal REG$_VALUENAMEMAX = 1336; ! longest value name for a given key literal REG$_VALUENAMESIZE = 1337; ! destination's value name buffer size literal REG$_VALUENUMBER = 1338; ! number of values in a given key literal REG$_VOLATILE = 1339; ! Identifies volatility of an object literal REG$_WILDASTERISK = 316; ! char to replace asterisk wildcard literal REG$_WILDPERCENT = 317; ! char to replace percent wildcard literal REG$_WILDPERIODS = 318; ! char to replace periods wildcard literal REG$_INSTRUMENTFILE = 575; ! unknown literal REG$_INSTRUMENTKEY = 576; ! unknown literal REG$_INSTRUMENTDATA = 577; ! unknown literal REG$_FILENAME = 1858; ! file requested for space monitoring literal REG$_COUNTER = 1347; ! a counter index literal REG$_SECDESCRIPTORLEN = 1348; ! Length of security descriptor literal REG$_SECDESCLEN_INTERNAL = 1349; ! Internal length of security descriptor literal REG$_VALUEDATASIZE_INTERNAL = 1350; ! Internal dest value data buffer size literal REG$_SAMDESIRED = 1351; ! SamDesired - for AS & Bristol only literal REG$_DATABASE_VERSION = 1352; ! Database version for Create Database literal REG$_LAST = 73; ! Always last ! ! +-------------------------------------------------------------------+ ! | Item Code Values ! +-------------------------------------------------------------------+ ! literal REG$K_NONE = 0; ! The item is not volatile literal REG$K_CLUSTER = 1; ! The item is removed when the cluster reboots literal REG$K_SYSTEM = 2; ! The item is removed when the system reboots literal REG$K_PROCESS = 3; ! The item is removed when the creating process terminates literal REG$K_IMAGE = 4; ! The item is removes when the creating image terminates literal REG$K_WRITEBEHIND = 5; ! The information on the given object can be written to disk at a later time literal REG$K_WRITETHRU = 6; ! The information on the given object must be written to disk immediately literal REG$K_CREATENEWKEY = 7; ! Created a new key literal REG$K_OPENEXISTINGKEY = 8; ! Opened an existing key literal REG$K_POLICY_OPENVMS = 9; ! Access is required to all keys in the key path literal REG$K_POLICY_NT_40 = 10; ! Access is required to the first key and the requested key literal REG$K_INTERNAL = 11; ! literal REG$K_HARDLINK = 12; ! Hard (physical) link literal REG$K_SYMBOLICLINK = 13; ! Symbolic (logical) link literal REG$K_BINARY = 14; ! Binary data literal REG$K_DWORD = 15; ! A 32 bit number literal REG$K_DWLITTLEENDIAN = 16; ! A 32 bit number in little endian format literal REG$K_DWBIGENDIAN = 17; ! A 32 bit number in bi endian format literal REG$K_EXPAND_SZ = 18; ! A string of ISO-1 Latin characters containing environment variables literal REG$K_LINK = 19; ! A link to another value literal REG$K_MULTI_SZ = 20; ! A concatenated array of REG$K_SZ strings literal REG$K_QWORD = 21; ! A 64 bit number literal REG$K_RESOURCELIST = 22; ! A device driver resource list literal REG$K_SZ = 23; ! A null terminated string literal REG$K_START_FILE = 24; ! literal REG$K_START_PERF = 25; ! literal REG$K_STOP_FILE = 26; ! literal REG$K_STOP_PERF = 27; ! literal REG$K_ZERO_FILE = 28; ! literal REG$K_ZERO_PERF = 29; ! literal REG$K_SHOW_CTR_FILE = 30; ! literal REG$K_SHOW_CTR_PERF = 31; ! literal REG$K_SHOW_FILE = 32; ! literal REG$K_NORMAL = 33; ! String size <= 8K literal REG$K_LARGE = 34; ! String size > 8K literal REG$K_EXACTMATCH = 35; ! literal REG$K_INCLUDE = 36; ! literal REG$K_EXCLUDE = 37; ! literal REG$K_ANY = 38; ! literal REG$K_NOTANY = 39; ! ! ! +-------------------------------------------------------------------+ ! | Function Code Modifiers ! +-------------------------------------------------------------------+ ! literal REG$M_FC = %X'3FF'; literal REG$M_CASE_SENSITIVE = %X'400'; literal REG$M_DISABLE_WILDCARDS = %X'800'; literal REG$M_IGNORE_LINKS = %X'1000'; literal REG$M_NOW = %X'2000'; literal REG$M_NOWAIT = %X'4000'; literal REG$M_UNICODE_VALUES = %X'8000'; literal REG$M_BYPASS = %X'10000'; literal REG$M_INTERNAL = %X'20000'; literal REG$S_REGDEF = 3; macro REG$V_FC = 0,0,10,0 %; literal REG$S_FC = 10; macro REG$V_CASE_SENSITIVE = 0,10,1,0 %; ! Indicates that the case sensitivity of keys be uses for matches macro REG$V_DISABLE_WILDCARDS = 0,11,1,0 %; ! Indicates that wildcards characters should be traited as normal characters macro REG$V_IGNORE_LINKS = 0,12,1,0 %; ! Indicates that symbolic links should not be followed macro REG$V_NOW = 0,13,1,0 %; ! Indicates whether or not an operation should be written to disk immediately macro REG$V_NOWAIT = 0,14,1,0 %; ! Indicates that operation should be aborted rather than stalled macro REG$V_UNICODE_VALUES = 0,15,1,0 %; ! Indicates that data is an UNICODE string macro REG$V_BYPASS = 0,16,1,0 %; ! macro REG$V_INTERNAL = 0,17,1,0 %; ! Indicates internal operation ! ! +-------------------------------------------------------------------+ ! | Key Change Notify Flags ! +-------------------------------------------------------------------+ ! literal REG$M_CHANGENAME = %X'1'; literal REG$M_CHANGEATTRIBUTES = %X'2'; literal REG$M_CHANGELASTSET = %X'4'; literal REG$M_CHANGESECURITY = %X'8'; literal REG$S_KEYCHANGEDEF = 1; macro REG$V_CHANGENAME = 0,0,1,0 %; ! A key name change, includes creation and deletion of its subkeys. macro REG$V_CHANGEATTRIBUTES = 0,1,1,0 %; ! Attribute change of key or subkeys macro REG$V_CHANGELASTSET = 0,2,1,0 %; ! Last write time change of key or subkeys macro REG$V_CHANGESECURITY = 0,3,1,0 %; ! Security descriptor change of key or subkeys ! ! +-------------------------------------------------------------------+ ! | Security access Mask ! +-------------------------------------------------------------------+ ! literal REG$M_ALLACCESS = %X'1'; literal REG$M_CREATELINK = %X'2'; literal REG$M_CREATESUBKEY = %X'4'; literal REG$M_ENUMSUBKEYS = %X'8'; literal REG$M_EXECUTE = %X'10'; literal REG$M_NOTIFY = %X'20'; literal REG$M_QUERYVALUE = %X'40'; literal REG$M_READ = %X'80'; literal REG$M_SETVALUE = %X'100'; literal REG$M_WRITE = %X'200'; literal REG$M_DELETEACCESS = %X'400'; literal REG$M_READCONTROL = %X'800'; literal REG$M_WRITEDAC = %X'1000'; literal REG$M_WRITEOWNER = %X'2000'; literal REG$M_SYNCHRONIZE = %X'4000'; literal REG$M_ACCESSSYSTEMSECURITY = %X'8000'; literal REG$M_MAXIMUMALLOWED = %X'10000'; literal REG$M_GENERICALL = %X'20000'; literal REG$M_GENERICEXECUTE = %X'40000'; literal REG$M_GENERICWRITE = %X'80000'; literal REG$M_GENERICREAD = %X'100000'; literal REG$S_SECACCESSDEF = 3; ! NT equivalent macro REG$V_ALLACCESS = 0,0,1,0 %; ! KEY_ALL_ACCESS macro REG$V_CREATELINK = 0,1,1,0 %; ! KEY_CREATE_LINK macro REG$V_CREATESUBKEY = 0,2,1,0 %; ! KEY_CREATE_SUB_KEY macro REG$V_ENUMSUBKEYS = 0,3,1,0 %; ! KEY_ENUMERATE_SUB_KEYS macro REG$V_EXECUTE = 0,4,1,0 %; ! KEY_EXECUTE macro REG$V_NOTIFY = 0,5,1,0 %; ! KEY_NOTIFY macro REG$V_QUERYVALUE = 0,6,1,0 %; ! KEY_QUERY_VALUE macro REG$V_READ = 0,7,1,0 %; ! READ_CONTROL|KEY_QUERY_VALUE|KEY_ENUMERATE_SUB_KEYS|KEY_NOTIFY macro REG$V_SETVALUE = 0,8,1,0 %; ! KEY_SET_VALUE macro REG$V_WRITE = 0,9,1,0 %; ! READ_CONTROL|KEY_SET_VALUE|KEY_CREATE_SUB_KEY macro REG$V_DELETEACCESS = 0,10,1,0 %; ! DELETE_ACCESS macro REG$V_READCONTROL = 0,11,1,0 %; ! READ_CONTROL macro REG$V_WRITEDAC = 0,12,1,0 %; ! WRITE_DAC macro REG$V_WRITEOWNER = 0,13,1,0 %; ! WRITE_OWNER macro REG$V_SYNCHRONIZE = 0,14,1,0 %; ! SYNCHRONIZE macro REG$V_ACCESSSYSTEMSECURITY = 0,15,1,0 %; ! ACCESS_SYSTEM_SECURITY macro REG$V_MAXIMUMALLOWED = 0,16,1,0 %; ! MAXIMUM_ALLOWED macro REG$V_GENERICALL = 0,17,1,0 %; ! GENERIC_ALL macro REG$V_GENERICEXECUTE = 0,18,1,0 %; ! GENERIC_EXECUTE macro REG$V_GENERICWRITE = 0,19,1,0 %; ! GENERIC_WRITE macro REG$V_GENERICREAD = 0,20,1,0 %; ! GENERIC_READ ! ! +-------------------------------------------------------------------+ ! | HKEY Definitions ! +-------------------------------------------------------------------+ ! literal REG$_HKEY_NONE = 0; ! %x00000000 literal REG$_HKEY_CLASSES_ROOT = -2147483648; ! %x80000000 literal REG$_HKEY_CURRENT_USER = -2147483647; ! %x80000001 literal REG$_HKEY_LOCAL_MACHINE = -2147483646; ! %x80000002 literal REG$_HKEY_USERS = -2147483645; ! %x80000003 literal REG$_HKEY_PERFORMANCE_DATA = -2147483644; ! %x80000004 literal REG$_HKEY_LAST_ROOT_KEY = 5; ! !*** MODULE $RNHBLKDEF *** literal rnhblk$k_LENGTH = 20; ! length of overhead literal rnhblk$c_LENGTH = 20; ! length of overhead literal RNHBLK$S_RNHBLKDEF = 20; macro RNHBLK$L_FLNK = 0,0,32,0 %; ! forward link macro RNHBLK$L_HANDLER = 4,0,32,0 %; ! handler address macro RNHBLK$L_ARGCNT = 12,0,32,0 %; ! argument count macro RNHBLK$L_EVENT = 16,0,32,0 %; ! address of the event code !*** MODULE $RSDMDEF *** literal RSDM$_JOIN_SYSTEM = 1; ! System RD Join function literal RSDM$_JOIN_DEFAULT = 2; ! Process default RD Join function literal RSDM$_JOIN_DOMAIN = 3; ! Other RD Join function literal RSDM$_LEAVE = 4; ! Leave RD function literal RSDM$K_SYSTEM_RSDM_ID = 1; ! System RSDM_ID literal RSDM$K_PROCESS_RSDM_ID = 2; ! Process RSDM_ID ! + ! RSDM$ bitfields ! - literal RSDM$M_READ = %X'1'; literal RSDM$M_WRITE = %X'2'; literal RSDM$M_LOCK = %X'4'; literal RSDM$S_RSDMBITS = 4; macro RSDM$V_READ = 0,0,1,0 %; ! Read access macro RSDM$V_WRITE = 0,1,1,0 %; ! Write access macro RSDM$V_LOCK = 0,2,1,0 %; ! Lock access !*** MODULE $SBKDEF *** ! + ! ! Statistics block. This block is used to report various data regarding ! an open file to the requesting program. ! ! - ! ! The first two longwords are presented in inverted form for compatibility ! with the old RSX-11 statistics block. ! literal SBK$K_LENGTH = 32; literal SBK$C_LENGTH = 32; literal SBK$S_SBKDEF = 32; macro SBK$L_STLBN = 0,0,32,0 %; ! starting LBN if contiguous macro SBK$W_STLBNH = 0,0,16,0 %; ! high order word macro SBK$W_STLBNL = 2,0,16,0 %; ! low order word macro SBK$L_FILESIZE = 4,0,32,0 %; ! file size macro SBK$W_FILESIZH = 4,0,16,0 %; ! high order word macro SBK$W_FILESIZL = 6,0,16,0 %; ! low order word ! ! The following two fields are for RSX-11 compatibility ! macro SBK$B_ACNT = 8,0,8,0 %; ! low byte of access count macro SBK$B_LCNT = 9,0,8,0 %; ! low byte of lock count macro SBK$L_FCB = 10,0,32,0 %; ! address of file control block macro SBK$W_ACNT = 16,0,16,0 %; ! access count macro SBK$W_LCNT = 18,0,16,0 %; ! lock count (against writers) macro SBK$W_WCNT = 20,0,16,0 %; ! writer count macro SBK$W_TCNT = 22,0,16,0 %; ! truncate lock count macro SBK$L_READS = 24,0,32,0 %; ! count of reads executed on channel macro SBK$L_WRITES = 28,0,32,0 %; ! count of writes executed on channel !*** MODULE $S2DGBDEF *** literal S2DGB$K_OP_XCDB32 = 1; ! Diagnose opcode for 32-bit buffers literal S2DGB$K_OP_XCDB64 = 2; ! Diagnose opcode for 64-bit buffers literal S2DGB$M_READ = %X'1'; literal S2DGB$M_DISCPRIV = %X'2'; literal S2DGB$M_SYNCHRONOUS = %X'4'; literal S2DGB$M_OBSOLETE1 = %X'8'; literal S2DGB$M_TAGGED_REQ = %X'10'; literal S2DGB$M_TAG = %X'E0'; literal S2DGB$K_TAG_POSITION = 5; ! Bit offset of TAG bitfield literal S2DGB$K_SIMPLE = 0; ! Simple queue tag literal S2DGB$K_ORDERED = 1; ! Ordered queue tag literal S2DGB$K_EXPRESS = 2; ! Head of Queue queue tag literal S2DGB$M_AUTOSENSE = %X'100'; literal S2DGB$M_EXT_LUN = %X'200'; literal S2DGB$K_XCDB32_LENGTH = 60; ! Diagnose buffer length, 32-bit buffers literal S2DGB$K_XCDB64_LENGTH = 60; ! Diagnose buffer length, 64-bit buffers literal S2DGB$K_XCDB_MIN_LENGTH = 60; ! Minimum s2gdb length literal S2DGB$K_EXT_XCDB_MIN_LENGTH = 68; ! Length w/external LUN literal S2DGB$S_S2DGB = 72; macro S2DGB$L_OPCODE = 0,0,32,0 %; ! Diagnose opcode macro S2DGB$L_FLAGS = 4,0,32,0 %; macro S2DGB$V_READ = 4,0,1,0 %; ! Read operation macro S2DGB$V_DISCPRIV = 4,1,1,0 %; ! DiscPriv val in Identigy msg macro S2DGB$V_SYNCHRONOUS = 4,2,1,0 %; ! Synchronous xfers permitted macro S2DGB$V_OBSOLETE1 = 4,3,1,0 %; ! (Ignored) macro S2DGB$V_TAGGED_REQ = 4,4,1,0 %; ! Use TCQ macro S2DGB$V_TAG = 4,5,3,0 %; literal S2DGB$S_TAG = 3; ! Queue tag value type macro S2DGB$V_AUTOSENSE = 4,8,1,0 %; ! Return Autosense data macro S2DGB$V_EXT_LUN = 4,9,1,0 %; ! Use externally-supplied LUN ! Fields in this structure are valid if and ! only if s2dgb$l_opcode = S2DGB$K_OP_XCDB32 macro S2DGB$L_32CDBADDR = 8,0,32,1 %; ! 32-bit addr of Cmd Desc Blk macro S2DGB$L_32CDBLEN = 12,0,32,0 %; ! Length of CDB in bytes macro S2DGB$L_32DATADDR = 16,0,32,1 %; ! 32-bit addr of DATAIN or DATAOUT address macro S2DGB$L_32DATLEN = 20,0,32,0 %; ! Length of DATAIN or DATAOUT buffer in bytes macro S2DGB$L_32PADCNT = 24,0,32,0 %; ! Number of pad bytes required. macro S2DGB$L_32PHSTMO = 28,0,32,0 %; ! Phase timeout value in seconds macro S2DGB$L_32DSCTMO = 32,0,32,0 %; ! Disconnect timeout value in seconds macro S2DGB$L_32SENSEADDR = 36,0,32,1 %; ! 32-bit addr of Autosense buffer macro S2DGB$L_32SENSELEN = 40,0,32,0 %; ! Length of Autosense buffer in bytes macro S2DGB$L_RESERVED1 = 44,0,32,0 %; ! Reserved field macro S2DGB$L_RESERVED2 = 48,0,32,0 %; ! Reserved field macro S2DGB$L_RESERVED3 = 52,0,32,0 %; ! Reserved field macro S2DGB$L_RESERVED4 = 56,0,32,0 %; ! Reserved field ! Fields in this structure are valid if and ! only if s2dgb$l_opcode = S2DGB$K_OP_XCDB64 macro S2DGB$PQ_64CDBADDR = 8,0,0,1 %; literal S2DGB$S_64CDBADDR = 8; ! 64-bit addr of Cmd Desc Blk macro S2DGB$PQ_64DATADDR = 16,0,0,1 %; literal S2DGB$S_64DATADDR = 8; ! 64-bit addr of DATAIN or DATAOUT address macro S2DGB$PQ_64SENSEADDR = 24,0,0,1 %; literal S2DGB$S_64SENSEADDR = 8; ! 64-bit addr of Autosense buffer macro S2DGB$L_64CDBLEN = 32,0,32,0 %; ! Length of CDB in bytes macro S2DGB$L_64DATLEN = 36,0,32,0 %; ! Length of DATAIN or DATAOUT buffer in bytes macro S2DGB$L_64SENSELEN = 40,0,32,0 %; ! Length of Autosense buffer in bytes macro S2DGB$L_64PADCNT = 44,0,32,0 %; ! Number of pad bytes required. macro S2DGB$L_64PHSTMO = 48,0,32,0 %; ! Phase timeout value in seconds macro S2DGB$L_64DSCTMO = 52,0,32,0 %; ! Disconnect timeout value in seconds macro S2DGB$L_RESERVED_1 = 56,0,32,0 %; ! Reserved field macro S2DGB$Q_EXT_LUN = 60,0,0,0 %; literal S2DGB$S_EXT_LUN = 8; ! External LUN !*** MODULE $SDBDEF *** ! + ! SDB Function Codes ! ! - ! BASE AND OFFSET OF 1 literal SDB$C_MODE_KERNEL = 0; literal SDB$C_MODE_EXEC = 1; literal SDB$C_MODE_SUPER = 2; literal SDB$C_MODE_USER = 3; literal SDB$M_MODE_KERNEL = 1; literal SDB$M_MODE_EXEC = 2; literal SDB$M_MODE_SUPER = 4; literal SDB$M_MODE_USER = 8; literal SDB$C_FUNC_GET_DSDB = 0; literal SDB$C_FUNC_FREE_DSDB = 1; literal SDB$C_FUNC_GET_ISDB = 2; literal SDB$C_FUNC_FREE_ISDB = 3; literal SDB$C_FUNC_SET_SDB = 4; literal SDB$M_ACC_WRITE = 1; literal SDB$M_ACC_READ = 2; literal SDB$V_ACC_WRITE = 0; literal SDB$V_ACC_READ = 1; !*** MODULE $SDDEF *** ! ! item codes for sd$xxx calls ! literal SD$_MAJOR_ID = 1; ! longword (major ODS version number) literal SD$_MINOR_ID = 2; ! longword (minor ODS version number) literal SD$_POOL_ID = 3; ! UID (16 bytes) (Pool identifier) literal SD$_CREATION_DATE = 4; ! Date/time (8 bytes) (Date pool was created) literal SD$_MODIFIED_DATE = 5; ! Date/time (8 bytes) (Date pool membership was last changed) literal SD$_SEGMENT_SIZE = 6; ! longword (Size of segment in pool # blocks) literal SD$_MAX_UNITS = 7; ! longword (Maximum # members allowed in pool) literal SD$_UNIT_COUNT = 8; ! longword (Number of members currently in pool) literal SD$_POOL_OPTIONS = 9; ! longword (Pool flags) literal SD$_UNIT_ID = 10; ! UID (16 bytes) (Identifier of storage unit) literal SD$_UNIT_NUMBER = 11; ! longword (Storage unit number) literal SD$_UNIT_OPTIONS = 12; ! longword (Storage unit flags) literal SD$_SEQUENCE_NUMBER = 13; ! longword (Homeblock sequence number) literal SD$_HIGHEST_UNIT = 14; ! longword (Number of highest member in pool) literal SD$_LOWEST_UNIT = 15; ! longword (Number of lowest member in pool) literal SD$_TOTAL_SEGMENTS = 16; ! longword (Total # of segment in pool) literal SD$_FREE_SEGMENTS = 17; ! longword (Total # of free segments in pool) literal SD$_MAX_FAMILY = 18; ! longword (Maximum # of families allowed in pool) literal SD$_MAX_DISK = 19; ! longword (Maximum # members in a family) literal SD$_META_LBN = 20; ! longword (Start of SD metadata on member) literal SD$_META_SIZE = 21; ! longword (Size of SD metadata on member) literal SD$_DATA_LBN = 22; ! longword (Start of pool space on member) literal SD$_DATA_SIZE = 23; ! longword (Size of pool space on member) literal SD$_POOL_DEVICE = 24; ! character string (Name of pool device) literal SD$_FAMILY_NUMBER = 25; ! longword (Familiy number of a SnapDisk) literal SD$_MEMBER_NUMBER = 26; ! longword (Number within family of a SnapDisk) literal SD$_DISK_NAME = 27; ! character string (Name of SnapDisk) literal SD$_DISK_CAPACITY = 28; ! longword (Size/capacity of a SnapDisk) literal SD$_DELSPACE = 29; ! longword (# segments that can be recovered by deleting SnapDisk) literal SD$_DISK_DEVICE = 30; ! character string (Name of device as bound to OpenVMS) literal SD$_BACKUP_DATE = 31; ! Date/time (8 bytes) (Date that recorded snap was last created) literal SD$_READS = 32; ! longword (Number of read received from user) literal SD$_WRITES = 33; ! longword (Number of writes received from user) literal SD$_SPLIT_READS = 34; ! longword (Number of reads that were split by SD) literal SD$_SPLIT_WRITES = 35; ! longword (Number of writes that were split by SD) literal SD$_DISK_READS = 36; ! longword (Number of reads to underlying pool units) literal SD$_DISK_WRITES = 37; ! longword (Number of writes to underlying pool units) literal SD$_COPY_OUTS = 38; ! longword (Number of copy-on-write operations) literal SD$_CONVERT_CANCELS = 39; ! longword (Number of cancelled lock requests) literal SD$_POOL_FULL_STALLS = 40; ! longword (NUmber of requests stalled by pool full) literal SD$_SPARE1 = 41; ! longword literal SD$_SPARE2 = 42; ! longword literal SD$_SPARE3 = 43; ! longword literal SD$_SPARE4 = 44; ! longword literal SD$_SPARE5 = 45; ! longword literal SD$_SPARE6 = 46; ! longword literal SD$_SPARE7 = 47; ! longword literal SD$_SPARE8 = 48; ! longword literal SD$_COPY_STATS = 49; ! Array of SD$K_COPYCOUNTERS longwords literal SD$_DEV_LOCKID = 50; ! longword (LockId of device name consistancy lock) literal SD$_UID_LOCKID = 51; ! longword (LockId of UID name consistancy lock) literal SD$K_COPYCOUNTERS = 24; ! ! options and flags for RTL routines ! literal SD$M_CONTAINER_DISK = 1; literal SD$M_CONVERTED_DISK = 2; ! ! Function codes for cluster-server requests ! literal SD$K_CLU_BIND_POOL = 1; literal SD$K_CLU_BIND_DISK = 2; literal SD$K_CLU_UNBIND = 3; ! ! Define structures used by QIO interface to SD management functions ! ! ++ ! Device list ! ! This structure is used to pass information between ! the runtime library, the FDT routines and the start ! I/O routines ! -- literal sd$S_SDDEVLIST = 88; macro sd$l_start_lbn = 0,0,32,0 %; ! Starting LBN of data space macro sd$l_lbn_count = 4,0,32,0 %; ! Size of data space macro sd$l_meta_lbn = 8,0,32,0 %; ! Location of SnapDisk metadata macro sd$l_meta_count = 12,0,32,0 %; ! Size of metadata area macro sd$ps_ucb = 16,0,32,0 %; ! UCB of pool unit macro sd$l_name_length = 20,0,32,0 %; ! Length of device name macro sd$t_name = 24,0,0,0 %; literal sd$s_name = 64; ! Device name ! ! SD Parameter list - This is used to pass Snapshot Services ! parameters/characteristics between the runtime library ! and the I/O functions ! literal sd$m_stall = %X'1'; literal sd$m_redundant = %X'2'; literal sd$m_record = %X'4'; literal sd$m_cluster = %X'8'; literal sd$m_partial = %X'10'; literal sd$S_SDPARAMLIST = 8; macro sd$l_segment_size = 0,0,32,0 %; ! Segment size for copy-on-write macro sd$l_disk_size = 0,0,32,0 %; ! Disk size for create/disk macro sd$l_flags = 4,0,32,0 %; ! Miscellaneous flags macro sd$v_stall = 4,0,1,0 %; ! Stall/Fail on pool full macro sd$v_redundant = 4,1,1,0 %; ! Use redundancy for SnapDisk metadata macro sd$v_record = 4,2,1,0 %; ! Record snapshot creation time macro sd$v_cluster = 4,3,1,0 %; ! Operation is cluster-wide macro sd$v_partial = 4,4,1,0 %; ! Partial bind on pool ! ! IOCTL function codes - miscellaneous functions ! literal SD$K_GET_DISK = 1; literal SD$K_GET_STATS = 2; literal SD$K_GET_UNIT = 3; literal SD$K_POOL_DISK = 4; literal SD$K_POOL_INFO = 5; literal SD$K_POOL_UNIT = 6; literal SD$K_CLU_TEST = 7; literal SD$K_STORE_LOCKIDS = 8; literal SD$K_RETRIEVE_LOCKIDS = 9; literal SD$K_RETRIEVE_MEMBERLIST = 10; literal SD$K_SET_TRACE_LEVEL = 11; literal SD$K_GET_TRACE_LEVEL = 12; ! ! Define Snapshot Services runtime library functions ! ! ! ++ ! ! ROUTINE: ! ! sd$add_units POOL_DEVICE, UNIT_LIST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Add additional storage units to an existing pool ! This function takes care of all the creation of container ! files etc. for the storage units being added. ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of device to add members ! UNIT_LIST (IN) : Item List 3 containing Device list ! FLAGS (IN) : Indicates temporary or permanent pool member ! ! ! PRE-CONDITIONS: ! ! The set of devices must be mounted as Files-11 devices ! ! POST-CONDITIONS: ! ! The new storage units are added as new members to the pool. ! All current and new members are stamped with a new membership list ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! %if not %declared(%quote SDL$$SDDEF_REQ) %then ! MACRO to emit warning and default to 0 if required argument is missing ! macro SDL$$SDDEF_REQ(ARG1, arg2) = %IF not %NULL(ARG1) %THEN ARG1 %else %warn(%string('REQUIRED ARGUMENT ', %NAME(ARG2), ' MISSING')) 0 %FI %; %fi %if not %declared(%quote SDL$$SDDEF_OPT) %then ! Defaults omitted arguments to 0 if followed by additional arguments ! macro SDL$$SDDEF_OPT[ARG] = %IF %NULL(ARG) %THEN %IF NOT %NULL(%REMAINING) %THEN 0 %FI %ELSE ARG %FI %; %fi %if not %declared(%quote SDL$$SDDEF_LIST_0_REQ) %then ! Handles LIST parameters that are also OPTIONAL ! macro SDL$$SDDEF_LIST_0_REQ(ARG) = %IF NOT %NULL(ARG) %THEN %REMOVE(ARG) %FI %; %fi %if not %declared(%quote SDL$$SDDEF_LIST_1_REQ) %then ! Handles LIST parameters that are not OPTIONAL ! Emits warning and defaults to 0 if required argument is missing ! macro SDL$$SDDEF_LIST_1_REQ(ARG, ARG2) = %IF %NULL(ARG) %THEN %warn(%string('REQUIRED ARGUMENT ', %NAME(ARG2), ' MISSING')) 0 %ELSE SDL$$SDDEF_LIST_0_REQ(ARG) %FI %; %fi %if not %declared(%quote SDL$$SDDEF_CONCAT) %then ! Eliminates trailing null arguments ! macro SDL$$SDDEF_CONCAT[ARG] = %IF NOT %NULL(ARG) %THEN ARG %FI %; %fi ! *********************************** KEYWORDMACRO $sd_add_units (POOL_DEVICE,UNIT_LIST,FLAGS) = BEGIN EXTERNAL ROUTINE sd$add_units : BLISS ADDRESSING_MODE (GENERAL); sd$add_units (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(UNIT_LIST, %QUOTE UNIT_LIST) , SDL$$SDDEF_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$bind_disk DISK_DEVICE, POOL_DEVICE, DISK_NAME, FLAGS ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Export a SnappyDisk from the pool as an OpenVMS device ! ! FORMAL PARAMETERS: ! ! DISK_DEVICE (IN) : Name of disk device to create ! POOL_DEVICE (IN) : Name of pool device to use ! DISK_NAME (IN) : Name of disk to export from pool ! FLAGS (IN) : Optional flags SD$M_CLUSTER ! ! PRE-CONDITIONS: ! ! The pool must be bound. ! The SnappyDisk name must exist in the pool. ! The SnappyDisk must not be bound to a device on another computer in the ! cluster. ! Another SnappyDisk must not be bound to the specified device on any ! computer in the cluster. ! ! POST-CONDITIONS: ! ! The SnappyDisk is exposed as an OpenVMS device ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_bind_disk (DISK_DEVICE,POOL_DEVICE,DISK_NAME ,FLAGS) = BEGIN EXTERNAL ROUTINE sd$bind_disk : BLISS ADDRESSING_MODE (GENERAL); sd$bind_disk (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(DISK_DEVICE, %QUOTE DISK_DEVICE) , SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(DISK_NAME, %QUOTE DISK_NAME) , SDL$$SDDEF_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$bind_pool POOL_DEVICE, UNIT_LIST, FLAGS ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Rebind a pool from a set of devices that have been ! previously created as a pool. ! This function takes care of all the location of container ! files, driver loading. ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of device to create ! UNIT_LIST (IN) : Itemlist3 containing list of storage units ! FLAGS (IN) : Optional flags SD$M_CLUSTER ! ! PRE-CONDITIONS: ! ! The storage units must be mounted as Files-11 devices. ! The storage units must have been previously used to create a pool. ! The list of storage units must not include storage units in another ! pool. ! The list of storage units must not include a SnappyDisk bound to a ! device. ! ! POST-CONDITIONS: ! ! A pool is rebound and exported as the specified pool_device. ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_bind_pool (POOL_DEVICE,UNIT_LIST,FLAGS) = BEGIN EXTERNAL ROUTINE sd$bind_pool : BLISS ADDRESSING_MODE (GENERAL); sd$bind_pool (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(UNIT_LIST, %QUOTE UNIT_LIST) , SDL$$SDDEF_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$create_disk POOL_DEVICE, DISK_NAME, DISK_CAPACITY ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Create a SnappyDisk in a pool ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of pool device to use ! DISK_NAME (IN) : Name of SnappyDisk to create ! DISK_CAPACITY (IN) : Size in blocks of SnappyDisk to create ! ! PRE-CONDITIONS: ! ! The pool must be bound. ! The SnappyDisk name must not already exist in the pool. ! The pool must have enough free space to create a SnappyDisk of the size ! specified. ! ! POST-CONDITIONS: ! ! A new SnappyDisk, named disk_name, is created in the pool ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_create_disk (POOL_DEVICE,DISK_NAME,DISK_CAPACITY) = BEGIN EXTERNAL ROUTINE sd$create_disk : BLISS ADDRESSING_MODE (GENERAL); sd$create_disk (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(DISK_NAME, %QUOTE DISK_NAME) , SDL$$SDDEF_REQ(DISK_CAPACITY, %QUOTE DISK_CAPACITY) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$create_pool UNIT_LIST, SEGMENT_SIZE, FLAGS ! ! FUNCTIONAL DESCRIPTION: ! ! Create a pool from a set of storage units. ! This function takes care of all the creation of container ! files and driver loading that needs to be done before calling ! the IO$_BIND function. ! ! FORMAL PARAMETERS: ! ! UNIT_LIST (IN) : Item list 3 containing list of storage units ! SEGMENT_SIZE (IN) : Size of segments in pool (blocks) ! FLAGS (IN) : Optional flags SD$M_STALL, SD$M_FAIL ! ! PRE-CONDITIONS: ! ! The storage units must be initialised and mounted as Files-11 devices. ! The list of storage units must not include storage units in another ! pool. ! The list of storage units must not include a SnappyDisk bound to a ! device. ! ! POST-CONDITIONS: ! ! A new pool is created on the storage units. ! The storage units are stamped as belonging to the same pool. ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_create_pool (UNIT_LIST,SEGMENT_SIZE,FLAGS) = BEGIN EXTERNAL ROUTINE sd$create_pool : BLISS ADDRESSING_MODE (GENERAL); sd$create_pool (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(UNIT_LIST, %QUOTE UNIT_LIST) , SDL$$SDDEF_REQ(SEGMENT_SIZE, %QUOTE SEGMENT_SIZE) , SDL$$SDDEF_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$create_snap POOL_DEVICE, DISK_DEVICE, DISK_NAME, FLAGS ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Create a snap of an existing SnappyDisk ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of pool device to use ! DISK_DEVICE (IN) : Name of SnappyDisk device to use as basis ! for snap ! DISK_NAME (IN) : Name of SnappyDisk to create ! FLAGS (IN) : Should we record time snap was taken ! for incremental backup purposes, SD$M_RECORD ! ! PRE-CONDITIONS: ! ! The pool must be bound ! The original SnappyDisk must be exported as a device ! ! POST-CONDITIONS: ! ! A new SnappyDisk is created in the pool. That SnappyDisk will be a snap ! of the original SnappyDisk specified in the call. ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_create_snap (POOL_DEVICE,DISK_DEVICE,DISK_NAME ,FLAGS) = BEGIN EXTERNAL ROUTINE sd$create_snap : BLISS ADDRESSING_MODE (GENERAL); sd$create_snap (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(DISK_DEVICE, %QUOTE DISK_DEVICE) , SDL$$SDDEF_REQ(DISK_NAME, %QUOTE DISK_NAME) , SDL$$SDDEF_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$delete_disk POOL_DEVICE, DISK_NAME ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Delete a SnapDisk from a pool ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of pool device to use ! DISK_NAME (IN) : Name of SnappyDisk to delete ! ! PRE-CONDITIONS: ! ! The pool must be bound ! The SnappyDisk name must exist in the pool ! The SnappyDisk named must not be bound to a device on the local computer ! ! POST-CONDITIONS: ! ! The SnappyDisk is deleted from the pool ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_delete_disk (POOL_DEVICE,DISK_NAME) = BEGIN EXTERNAL ROUTINE sd$delete_disk : BLISS ADDRESSING_MODE (GENERAL); sd$delete_disk (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(DISK_NAME, %QUOTE DISK_NAME) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$remove_units POOL_DEVICE, UNIT_LIST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Removes members from a pool. ! If the members are successfully removed, the metadata files are ! removed from the devices. ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of device to remove members ! UNIT_LIST (IN) : Item list 3 containing list of storage units ! ! PRE-CONDITIONS: ! ! The list of storage units must be part of the specified pool. ! The pool must contain enough free space to allow data on the outgoing ! storage units to be copied to other storage units in the pool. ! The list of storage units must not be the complete set of units in ! the pool. ! ! POST-CONDITIONS: ! ! The remaining members are updated with the new pool ! membership list. ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_remove_units (POOL_DEVICE,UNIT_LIST) = BEGIN EXTERNAL ROUTINE sd$remove_units : BLISS ADDRESSING_MODE (GENERAL); sd$remove_units (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(UNIT_LIST, %QUOTE UNIT_LIST) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$unbind VIRTUAL_DEVICE, FLAGS ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Unbind a pool or SnapDisk. ! ! FORMAL PARAMETERS: ! ! VIRTUAL_DEVICE (IN) : Name of device to unbind ! FLAGS (IN) : Optional flags SD$M_CLUSTER ! ! PRE-CONDITIONS: ! ! The pool or SnappyDisk must be bound to the device on the local computer ! ! POST-CONDITIONS: ! ! The pool or SnappyDisk is unbound from the device ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_unbind (VIRTUAL_DEVICE,FLAGS) = BEGIN EXTERNAL ROUTINE sd$unbind : BLISS ADDRESSING_MODE (GENERAL); sd$unbind (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(VIRTUAL_DEVICE, %QUOTE VIRTUAL_DEVICE) , SDL$$SDDEF_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_disk DISK_DEVICE, ITMLST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Get information about an exported disk. ! The information is returned using a standard OpenVMS ! itemlist mechanism. ! NOTE: The itemlist must be zero terminated ! ! Valid item codes are: ! ! SD$_BACKUP_DATE ! SD$_CREATION_DATE ! SD$_DELSPACE ! SD$_DISK_CAPACITY ! SD$_DISK_DEVICE ! SD$_DISK_NAME ! SD$_FAMILY_NUMBER ! SD$_MEMBER_NUMBER ! SD$_POOL_DEVICE ! ! FORMAL PARAMETERS: ! ! DISK_DEVICE (IN) : Name of SnappyDisk device ! ITMLST (IN): Address of items to return ! ! PRE-CONDITIONS: ! ! The device must be a SnappyDisk device ! ! POST-CONDITIONS: ! ! The information requested is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Member info returned ! SS$_ACCVIO - Parameters not accessible ! SS$_BADPARAM - One or more item codes are invalid ! SS$_IVBUFLEN - one or more buffer lengths are invalid ! SS$_IVDEVNAM - ucb is not that of a pool member ! SS$_NOTBOUND - the member is not bound into a pool ! SS$_SDDISABLED - Snap-capable disk not loaded ! -- ! KEYWORDMACRO $sd_get_disk (DISK_DEVICE,ITMLST) = BEGIN EXTERNAL ROUTINE sd$get_disk : BLISS ADDRESSING_MODE (GENERAL); sd$get_disk (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(DISK_DEVICE, %QUOTE DISK_DEVICE) , SDL$$SDDEF_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_pool POOL_DEVICE, ITMLST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Get pool-wide information ! The information is returned using a standard OpenVMS ! itemlist mechanism. ! NOTE: The itemlist must be zero terminated ! ! Valid item codes are: ! ! SD$_CREATION_DATE ! SD$_FREE_SEGMENTS ! SD$_HIGHEST_UNIT ! SD$_LOWEST_UNIT ! SD$_MAJOR_ID ! SD$_MAX_DISK ! SD$_MAX_FAMILY ! SD$_MAX_UNITS ! SD$_MINOR_ID ! SD$_MODIFIED_DATE ! SD$_POOL_ID ! SD$_POOL_OPTIONS ! SD$_SEGMENT_SIZE ! SD$_SEQUENCE_NUMBER ! SD$_TOTAL_SEGMENTS ! SD$_UNIT_COUNT ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of storage pool ! ITMLST (IN) : Address of items to return ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_pool_begin ! ! POST-CONDITIONS: ! ! The information requested is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Next member returned ! SS$_BADPARAM - One or more item codes are invalid ! SS$_IVBUFLEN - One or more buffer lengths are invalid ! SS$_SDDISABLED - Snap-capable disk not loaded ! -- ! KEYWORDMACRO $sd_get_pool (POOL_DEVICE,ITMLST) = BEGIN EXTERNAL ROUTINE sd$get_pool : BLISS ADDRESSING_MODE (GENERAL); sd$get_pool (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_pool_begin POOL_DEVICE, POOL_CONTEXT ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to setup context to read SnapDisk pool ! parameters from a pool device. ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE (IN) : Name of pool device to query ! POOL_CONTEXT (IN) : Address of context to return ! ! PRE-CONDITIONS: ! ! The pool device must exist ! ! POST-CONDITIONS: ! ! A context is setup to allow sd$get_pool and sd$get_pooldevice ! to be called to return the pool parameters. ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_get_pool_begin (POOL_DEVICE,POOL_CONTEXT) = BEGIN EXTERNAL ROUTINE sd$get_pool_begin : BLISS ADDRESSING_MODE (GENERAL); sd$get_pool_begin (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(POOL_CONTEXT, %QUOTE POOL_CONTEXT) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_pool_disk POOL_CONTEXT, ITMLST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to return the information for the next SnappyDisk in the pool. ! ! For example: ! ! status = sd$get_pool_begin(raw_device, context) ! while (success(status)) ! status = sd$get_pool_disk(context, itmlst) ! status = sd$get_pool_end(context) ! ! Valid item code are: ! ! SD$_BACKUP_DATE ! SD$_CREATION_DATE ! SD$_DELSPACE ! SD$_DISK_CAPACITY ! SD$_DISK_DEVICE ! SD$_DISK_NAME ! SD$_FAMILY_NUMBER ! SD$_MEMBER_NUMBER ! SD$_POOL_DEVICE ! ! FORMAL PARAMETERS: ! ! POOL_CONTEXT (IN) : Address of pool context ! ITMLST (IN): Address of items to return ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_pool_begin ! ! POST-CONDITIONS: ! ! The next member is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Next member returned ! SS$_NOMOREDEV - No more diks in pool ! -- ! KEYWORDMACRO $sd_get_pool_disk (POOL_CONTEXT,ITMLST) = BEGIN EXTERNAL ROUTINE sd$get_pool_disk : BLISS ADDRESSING_MODE (GENERAL); sd$get_pool_disk (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_CONTEXT, %QUOTE POOL_CONTEXT) , SDL$$SDDEF_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_pool_end POOL_CONTEXT ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to tidy up the context associated with a ! sd$get_pool_begin. ! ! FORMAL PARAMETERS: ! ! POOL_CONTEXT (IN) : Address of context to delete ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_pool_begin ! ! POST-CONDITIONS: ! ! The context is deleted ! ! RETURN VALUE: ! ! SS$_NORMAL ! ! -- ! KEYWORDMACRO $sd_get_pool_end (POOL_CONTEXT) = BEGIN EXTERNAL ROUTINE sd$get_pool_end : BLISS ADDRESSING_MODE (GENERAL); sd$get_pool_end (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_CONTEXT, %QUOTE POOL_CONTEXT) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_pool_unit POOL_CONTEXT, NEXT_UNIT ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to return the next member device making up the pool. ! This routine is designed to be called in a loop to return ! all the members making up the pool. ! For example: ! ! status = sd$get_pool_begin(raw_device, context) ! while (success(status)) ! status = sd$get_pool_unit(context, unit_device) ! status = sd$get_pool_end ! ! FORMAL PARAMETERS: ! ! POOL_CONTEXT (IN) : Address of context ! NEXT_UNIT (OUT) : Address of descriptor to return ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_pool_begin ! ! POST-CONDITIONS: ! ! The next member is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Next member returned ! SS$_NOMOREDEV - No more devices ! SS$_BADPARAM - Invalid context ! SS$_SDDISABLED - Snap-capable disk not loaded ! ! -- ! KEYWORDMACRO $sd_get_pool_unit (POOL_CONTEXT,NEXT_UNIT) = BEGIN EXTERNAL ROUTINE sd$get_pool_unit : BLISS ADDRESSING_MODE (GENERAL); sd$get_pool_unit (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_CONTEXT, %QUOTE POOL_CONTEXT) , SDL$$SDDEF_REQ(NEXT_UNIT, %QUOTE NEXT_UNIT) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_raw_begin UNIT_DEVICE, UNIT_CONTEXT ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to setup context to read SnappyDisk pool ! parameters from a raw (mounted but not bound) storage unit. ! ! FORMAL PARAMETERS: ! ! UNIT_DEVICE (IN) : Name of storage unit to query ! UNIT_CONTEXT (IN) : Address of context to return ! ! PRE-CONDITIONS: ! ! The member device must be mounted but not bound ! ! POST-CONDITIONS: ! ! A context is setup to allow sd$get_raw_info and sd$get_unitdevice ! to be called to return pool parameters stored on the member. ! ! RETURN VALUE: ! ! Various statuses ! ! -- ! KEYWORDMACRO $sd_get_raw_begin (UNIT_DEVICE,UNIT_CONTEXT) = BEGIN EXTERNAL ROUTINE sd$get_raw_begin : BLISS ADDRESSING_MODE (GENERAL); sd$get_raw_begin (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(UNIT_DEVICE, %QUOTE UNIT_DEVICE) , SDL$$SDDEF_REQ(UNIT_CONTEXT, %QUOTE UNIT_CONTEXT) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_raw_end UNIT_CONTEXT ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to tidy up the context associated with a ! sd$get_raw_begin. ! ! FORMAL PARAMETERS: ! ! UNIT_CONTEXT (IN) : Address of context ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_raw_begin ! ! POST-CONDITIONS: ! ! The context is deleted ! ! RETURN VALUE: ! ! SS$_NORMAL ! ! -- ! KEYWORDMACRO $sd_get_raw_end (UNIT_CONTEXT) = BEGIN EXTERNAL ROUTINE sd$get_raw_end : BLISS ADDRESSING_MODE (GENERAL); sd$get_raw_end (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(UNIT_CONTEXT, %QUOTE UNIT_CONTEXT) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_raw_next UNIT_CONTEXT, NEXT_UNIT ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Routine to return the next member device making up the pool. ! This routine is designed to be called in a loop to return ! all the members in the pool making up the device. ! For example: ! ! status = sd$get_raw_begin(raw_device, context) ! while (success(status)) ! status = sd$get_raw_next(context, unit_device) ! status = sd$get_raw_end ! ! FORMAL PARAMETERS: ! ! UNIT_CONTEXT (IN) : Address of context ! NEXT_UNIT(OUT) : Address of descriptor to return ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_raw_begin ! ! POST-CONDITIONS: ! ! The next member is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Next member returned ! SS$_NOMOREDEV - No more devices ! ! -- ! KEYWORDMACRO $sd_get_raw_next (UNIT_CONTEXT,NEXT_UNIT) = BEGIN EXTERNAL ROUTINE sd$get_raw_next : BLISS ADDRESSING_MODE (GENERAL); sd$get_raw_next (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(UNIT_CONTEXT, %QUOTE UNIT_CONTEXT) , SDL$$SDDEF_REQ(NEXT_UNIT, %QUOTE NEXT_UNIT) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_raw_info UNIT_CONTEXT, ITMLST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Get information from the member ! The information is returned using a standard OpenVMS ! itemlist mechanism. ! NOTE: The itemlist must be zero terminated ! ! Valid item codes are: ! ! SD$_CREATION_DATE ! SD$_HIGHEST_UNIT ! SD$_LOWEST_UNIT ! SD$_MAJOR_ID ! SD$_MAX_DISK ! SD$_MAX_FAMILY ! SD$_MAX_UNITS ! SD$_MINOR_ID ! SD$_MODIFIED_DATE ! SD$_POOL_ID ! SD$_POOL_OPTIONS ! SD$_SEGMENT_SIZE ! SD$_SEQUENCE_NUMBER ! SD$_UNIT_COUNT ! SD$_UNIT_ID ! SD$_UNIT_NUMBER ! SD$_UNIT_OPTIONS ! ! FORMAL PARAMETERS: ! ! UNIT_CONTEXT (IN) : Address of context ! ITMLST (IN) : Address of items to return ! ! PRE-CONDITIONS: ! ! A context must have been started with sd$get_raw_begin ! ! POST-CONDITIONS: ! ! The information requested is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Next member returned ! SS$_BADPARAM - One or more item codes are invalid ! SS$_IVBUFLEN - One or more buffer lengths are invalid ! -- ! KEYWORDMACRO $sd_get_raw_info (UNIT_CONTEXT,ITMLST) = BEGIN EXTERNAL ROUTINE sd$get_raw_info : BLISS ADDRESSING_MODE (GENERAL); sd$get_raw_info (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(UNIT_CONTEXT, %QUOTE UNIT_CONTEXT) , SDL$$SDDEF_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_stats POOL_DEVICE, ITMLST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Get monitor-type runtime statistics on a system-wide ! or per-pool basis. ! ! If POOL_DEVICE is NULL, this call returns the system-wide ! statistics otherwise it returns the statistics for the ! specified pool. ! ! The information is returned using a standard OpenVMS ! itemlist mechanism. ! NOTE: The itemlist must be zero terminated ! ! Valid item codes are: ! ! SD$_COPY_OUTS ! SD$_DISK_READS ! SD$_DISK_WRITES ! SD$_READS ! SD$_SPLIT_READS ! SD$_SPLIT_WRITES ! SD$_WRITES ! ! FORMAL PARAMETERS: ! ! POOL_DEVICE(IN) : Pool device name ! ITMLST (IN) : Address of items to return ! ! PRE-CONDITIONS: ! ! The SnappyDisk driver must be loaded and enabled. ! For a non NULL pool_device, the pool must be bound to the device on ! the local computer. ! ! POST-CONDITIONS: ! ! The information requested is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Stats returned ! SS$_ACCVIO - Parameters not accessible ! SS$_BADPARAM - One or more item codes are invalid ! SS$_IVBUFLEN - one or more buffer lengths are invalid ! SS$_IVDEVNAM - Device is not a pool device ! SS$_NOSUCHDEV - No such pool device ! SS$_SDDISABLED - Snap-capable disk not loaded ! -- ! KEYWORDMACRO $sd_get_stats (POOL_DEVICE,ITMLST) = BEGIN EXTERNAL ROUTINE sd$get_stats : BLISS ADDRESSING_MODE (GENERAL); sd$get_stats (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(POOL_DEVICE, %QUOTE POOL_DEVICE) , SDL$$SDDEF_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! ! ++ ! ! ROUTINE: ! ! sd$get_unit UNIT_DEVICE, ITMLST ! ! FUNCTIONAL DESCRIPTION: ! ! Runtime library routine ! Get information about a pool member ! The information is returned using a standard OpenVMS ! itemlist mechanism. ! NOTE: The itemlist must be zero terminated ! ! Valid item codes are: ! ! SD$_DATA_LBN ! SD$_DATA_SIZE ! SD$_FREE_SEGMENTS ! SD$_META_LBN ! SD$_META_SIZE ! SD$_POOL_DEVICE ! SD$_TOTAL_SEGMENTS ! SD$_UNIT_ID ! SD$_UNIT_NUMBER ! SD$_UNIT_OPTIONS ! ! FORMAL PARAMETERS: ! ! UNIT_DEVICE (IN) : Name of storage unit ! ITMLST (IN) : Address of items to return ! ! PRE-CONDITIONS: ! ! The storage unit must exist on the local computer ! ! POST-CONDITIONS: ! ! The information requested is returned ! ! RETURN VALUE: ! ! SS$_NORMAL - Member info returned ! SS$_ACCVIO - Parameters not accessible ! SS$_BADPARAM - One or more item codes are invalid ! SS$_IVBUFLEN - one or more buffer lengths are invalid ! SS$_IVDEVNAM - ucb is not that of a pool member ! SS$_NOTBOUND - the member is not bound into a pool ! SS$_SDDISABLED - Snap-capable disk not loaded ! -- ! KEYWORDMACRO $sd_get_unit (UNIT_DEVICE,ITMLST) = BEGIN EXTERNAL ROUTINE sd$get_unit : BLISS ADDRESSING_MODE (GENERAL); sd$get_unit (SDL$$SDDEF_CONCAT( SDL$$SDDEF_REQ(UNIT_DEVICE, %QUOTE UNIT_DEVICE) , SDL$$SDDEF_REQ(ITMLST, %QUOTE ITMLST) )) END %; !*** MODULE $SECDEF *** ! + ! PROCESS OR GLOBAL SECTION DEFINITIONS ! - ! ! ***** L_VBN, L_WINDOW, and L_PFC must be the same offset values as the ! ***** equivalently named offsets in $PFLDEF. ! literal SEC$M_GBL = %X'1'; literal SEC$M_CRF = %X'2'; literal SEC$M_DZRO = %X'4'; literal SEC$M_WRT = %X'8'; literal SEC$M_SHMGS = %X'10'; literal SEC$M_ARGS64 = %X'20'; literal SEC$M_WRTMOD = %X'C0'; literal SEC$M_AMOD = %X'300'; literal SEC$M_UNCACHED = %X'400'; literal SEC$M_READ_ONLY_SHPT = %X'800'; literal SEC$M_SHARED_PTS = %X'1000'; literal SEC$M_MRES = %X'2000'; literal SEC$M_PERM = %X'4000'; literal SEC$M_SYSGBL = %X'8000'; literal SEC$M_PFNMAP = %X'10000'; literal SEC$M_EXPREG = %X'20000'; literal SEC$M_PROTECT = %X'40000'; literal SEC$M_PAGFIL = %X'80000'; literal SEC$M_EXECUTE = %X'100000'; literal SEC$M_NOPROTCHK = %X'200000'; literal SEC$M_NO_OVERMAP = %X'400000'; literal SEC$M_INPROG = %X'800000'; literal SEC$M_PARANOID = %X'1000000'; literal SEC$M_GRANHINT = %X'2000000'; literal SEC$M_MRES_ALLOC = %X'4000000'; literal SEC$M_RAD_HINT = %X'8000000'; literal SEC$S_SECDEF = 48; macro SEC$L_GSD = 0,0,32,1 %; ! GLOBAL SECTION DESCRIPTOR ADDRESS macro SEC$L_CCB = 0,0,32,1 %; ! CHANNEL CONTROL BLOCK ADDRESS IF PROCESS SECTION macro SEC$L_SECXFL = 4,0,32,0 %; ! SECTION INDEX FORWARD LINK macro SEC$L_SECXBL = 8,0,32,0 %; ! SECTION INDEX BACKWARD LINK macro SEC$L_PFC = 12,0,32,0 %; ! PFC - Page Fault Cluster macro SEC$R_MRES_FILE_OVERLAY = 16,0,0,0 %; macro SEC$Q_MRES_REFCNT = 16,0,0,1 %; literal SEC$S_MRES_REFCNT = 8; ! REFERENCE COUNT FOR MRES/SHMGS SECTIONS macro SEC$R_FILE_FIELDS = 16,0,0,0 %; macro SEC$L_VBN = 16,0,32,0 %; macro SEC$Q_VBN = 16,0,0,0 %; literal SEC$S_VBN = 8; macro SEC$L_WINDOW = 24,0,32,1 %; ! WINDOW CONTROL BLOCK ! ! ***** NOTE ***** ! All flags in sec$l_flags must be kept in sync with flags in the ! SECFLG structure defined further in this module. ! **************** ! macro SEC$L_FLAGS = 28,0,32,0 %; ! VARIOUS CONTROL FLAGS IN LOW WORD macro SEC$V_GBL = 28,0,1,0 %; ! GLOBAL SECTION macro SEC$V_CRF = 28,1,1,0 %; ! COPY ON REFERENCE macro SEC$V_DZRO = 28,2,1,0 %; ! DEMAND ZERO macro SEC$V_WRT = 28,3,1,0 %; ! WRITABLE macro SEC$V_SHMGS = 28,4,1,0 %; ! SHARED MEMORY GLOBAL SECTION macro SEC$V_ARGS64 = 28,5,1,0 %; ! Arguments passed as quads macro SEC$V_WRTMOD = 28,6,2,0 %; literal SEC$S_WRTMOD = 2; ! WRITE ACCESS MODE FOR SECTION macro SEC$V_AMOD = 28,8,2,0 %; literal SEC$S_AMOD = 2; ! ACCESS MODE OF SECTION macro SEC$V_UNCACHED = 28,10,1,0 %; ! PFN-map I/O space uncached. macro SEC$V_READ_ONLY_SHPT = 28,11,1,0 %; ! Shared page tables map section read-only macro SEC$V_SHARED_PTS = 28,12,1,0 %; ! Section is a shared PT section macro SEC$V_MRES = 28,13,1,0 %; ! MEMORY RESIDENT SECTION macro SEC$V_PERM = 28,14,1,0 %; ! PERMANENT SECTION macro SEC$V_SYSGBL = 28,15,1,0 %; ! 1 = SYSTEM GLOBAL, 0 = GROUP GLOBAL ! ! ***** THE FOLLOWING FLAGS ARE INDICATORS FOR PRIVATE AND GLOBAL SECTION ! ***** SYSTEM SERVICE REQUESTS AND ARE NOT STORED IN THE FLAGS LONGWORD ! ***** FIELD. ! macro SEC$V_PFNMAP = 28,16,1,0 %; ! MAP TO SPECIFIC PFN'S macro SEC$V_EXPREG = 28,17,1,0 %; ! MAP INTO FIRST FREE ADDRESS SPACE macro SEC$V_PROTECT = 28,18,1,0 %; ! CHECK WRITE ACCESS MODE (WRTMOD) macro SEC$V_PAGFIL = 28,19,1,0 %; ! GLOBAL SECTION HAS PAGE FILE BACKING STORE macro SEC$V_EXECUTE = 28,20,1,0 %; ! CHECK FOR EXECUTE ACCESS macro SEC$V_NOPROTCHK = 28,21,1,0 %; ! INHIBIT PROTECTION CHECK macro SEC$V_NO_OVERMAP = 28,22,1,0 %; ! DON'T OVERMAP ADDRESS SPACE macro SEC$V_INPROG = 28,23,1,0 %; ! Section creation in progress macro SEC$V_PARANOID = 28,24,1,0 %; ! Go into paranoia mode macro SEC$V_GRANHINT = 28,25,1,0 %; ! Allow enhanced GH regions macro SEC$V_MRES_ALLOC = 28,26,1,0 %; ! Allocate memory resident pages during create macro SEC$V_RAD_HINT = 28,27,1,0 %; ! Allocate pages based on RAD hint macro SEC$L_REFCNT = 32,0,32,1 %; ! COUNT OF PTE'S REFERENCING THIS SECTION (unless MRES/SHMGS) ! ! UNIT_CNT contains the number of pagelets (512 byte units) in the section, except for ! PFN-mapped sections. In that case, UNIT_CNT contains the number of PFNs mapped by the section. ! macro SEC$L_VPX = 36,0,32,0 %; ! Starting virtual page index macro SEC$L_UNIT_CNT = 40,0,32,0 %; macro SEC$Q_UNIT_CNT = 40,0,0,0 %; literal SEC$S_UNIT_CNT = 8; ! ! ***** NOTE THAT NUMBER OF LONG WORDS MUST BE EVEN ! literal SEC$K_LENGTH = 48; ! SIZE OF PSTE/GSTE literal SEC$C_LENGTH = 48; ! SIZE OF PSTE/GSTE ! ! ***** NOTE ***** ! All flags in the SECFLG structure must be kept in sync with flags in ! sec$l_flags defined in the SECDEF structure. ! **************** ! literal SECFLG$M_GBL = %X'1'; literal SECFLG$M_CRF = %X'2'; literal SECFLG$M_DZRO = %X'4'; literal SECFLG$M_WRT = %X'8'; literal SECFLG$M_SHMGS = %X'10'; literal SECFLG$M_ARGS64 = %X'20'; literal SECFLG$M_WRTMOD = %X'C0'; literal SECFLG$M_AMOD = %X'300'; literal SECFLG$M_UNCACHED = %X'400'; literal SECFLG$M_READ_ONLY_SHPT = %X'800'; literal SECFLG$M_SHARED_PTS = %X'1000'; literal SECFLG$M_MRES = %X'2000'; literal SECFLG$M_PERM = %X'4000'; literal SECFLG$M_SYSGBL = %X'8000'; literal SECFLG$M_PFNMAP = %X'10000'; literal SECFLG$M_EXPREG = %X'20000'; literal SECFLG$M_PROTECT = %X'40000'; literal SECFLG$M_PAGFIL = %X'80000'; literal SECFLG$M_EXECUTE = %X'100000'; literal SECFLG$M_NOPROTCHK = %X'200000'; literal SECFLG$M_NO_OVERMAP = %X'400000'; literal SECFLG$M_INPROG = %X'800000'; literal SECFLG$M_PARANOID = %X'1000000'; literal SECFLG$M_GRANHINT = %X'2000000'; literal SECFLG$M_MRES_ALLOC = %X'4000000'; literal SECFLG$M_RAD_HINT = %X'8000000'; literal SECFLG$S_SECDEF_FLAGS = 4; macro SECFLG$W_SAVED_FLAGS = 0,0,16,0 %; ! FLAGS SAVED IN SECTION TABLE ENTRY macro SECFLG$L_FLAGS = 0,0,32,0 %; ! VARIOUS CONTROL FLAGS IN LOW WORD macro SECFLG$V_GBL = 0,0,1,0 %; ! GLOBAL SECTION macro SECFLG$V_CRF = 0,1,1,0 %; ! COPY ON REFERENCE macro SECFLG$V_DZRO = 0,2,1,0 %; ! DEMAND ZERO macro SECFLG$V_WRT = 0,3,1,0 %; ! WRITABLE macro SECFLG$V_SHMGS = 0,4,1,0 %; ! SHARED MEMORY GLOBAL SECTION macro SECFLG$V_ARGS64 = 0,5,1,0 %; ! Arguments passed as quads macro SECFLG$V_WRTMOD = 0,6,2,0 %; literal SECFLG$S_WRTMOD = 2; ! WRITE ACCESS MODE FOR SECTION macro SECFLG$V_AMOD = 0,8,2,0 %; literal SECFLG$S_AMOD = 2; ! ACCESS MODE OF SECTION macro SECFLG$V_UNCACHED = 0,10,1,0 %; ! PFN-map I/O space uncached. macro SECFLG$V_READ_ONLY_SHPT = 0,11,1,0 %; ! Shared page tables map section read-only macro SECFLG$V_SHARED_PTS = 0,12,1,0 %; ! Section is a shared PT section macro SECFLG$V_MRES = 0,13,1,0 %; ! MEMORY RESIDENT SECTION macro SECFLG$V_PERM = 0,14,1,0 %; ! PERMANENT SECTION macro SECFLG$V_SYSGBL = 0,15,1,0 %; ! 1 = SYSTEM GLOBAL, 0 = GROUP GLOBAL ! ! ***** THE FOLLOWING FLAGS ARE INDICATORS FOR PRIVATE AND GLOBAL SECTION ! ***** SYSTEM SERVICE REQUESTS AND ARE NOT STORED IN THE FLAGS LONGWORD ! ***** FIELD. ! macro SECFLG$V_PFNMAP = 0,16,1,0 %; ! MAP TO SPECIFIC PFN'S macro SECFLG$V_EXPREG = 0,17,1,0 %; ! MAP INTO FIRST FREE ADDRESS SPACE macro SECFLG$V_PROTECT = 0,18,1,0 %; ! CHECK WRITE ACCESS MODE (WRTMOD) macro SECFLG$V_PAGFIL = 0,19,1,0 %; ! GLOBAL SECTION HAS PAGE FILE BACKING STORE macro SECFLG$V_EXECUTE = 0,20,1,0 %; ! CHECK FOR EXECUTE ACCESS macro SECFLG$V_NOPROTCHK = 0,21,1,0 %; ! INHIBIT PROTECTION CHECK macro SECFLG$V_NO_OVERMAP = 0,22,1,0 %; ! DON'T OVERMAP ADDRESS SPACE macro SECFLG$V_INPROG = 0,23,1,0 %; ! Section creation in progress macro SECFLG$V_PARANOID = 0,24,1,0 %; ! Go into paranoia mode macro SECFLG$V_GRANHINT = 0,25,1,0 %; ! Allow enhanced GH regions macro SECFLG$V_MRES_ALLOC = 0,26,1,0 %; ! Allocate memory resident pages during create macro SECFLG$V_RAD_HINT = 0,27,1,0 %; ! Allocate pages based on RAD hint literal SEC$K_MATALL = 0; ! MATCH ALWAYS, USE GLOBAL SECTION literal SEC$K_MATEQU = 1; ! MATCH IF ISD$L_IDENT EQU GBL ID literal SEC$K_MATLEQ = 2; ! MATCH IF ISD$L_IDENT LEQ GBL ID literal SEC$S_SECDEF1 = 26; macro SEC$B_AMOD = 25,0,8,0 %; ! ACCESS MODE OF SECTION ! + ! MATCH CONTROL VIELD VALUES ! - ! BASE OF ZERO , INCR 1 ! ! Definitions for $GETSECI service ! literal SECI$_CHAIN = 1; ! Chained item block literal SECI$_GSMODE = 2; ! Access mode of section literal SECI$_GSFLAGS = 3; ! Flags literal SECI$_GSNAME = 4; ! Global section name literal SECI$_GSIDENT = 5; ! Global section ident literal SECI$_GSRELPAG = 6; ! Relative page number ! ! Definitions for $UPDEC(W) AND $UPDSEC_64(W) system services ! literal UPDFLG$M_WRT_MODIFIED = %X'1'; literal UPDFLG$S_UPDSEC_FLAGS = 4; macro UPDFLG$L_FLAGS = 0,0,32,0 %; ! Flags macro UPDFLG$V_WRT_MODIFIED = 0,0,1,0 %; ! Write pages only if modified !*** MODULE $SECIDDEF *** ! + ! Define the global section identification structure. ! - literal SECID$M_MINOR_ID = %X'FFFFFF'; literal SECID$M_MAJOR_ID = %X'FF000000'; literal SECID$S_SECID = 8; macro SECID$L_MATCH = 0,0,32,0 %; ! Match control value, see secdef.h macro SECID$L_VERSION = 4,0,32,0 %; ! Version number macro SECID$V_MINOR_ID = 4,0,24,0 %; literal SECID$S_MINOR_ID = 24; ! Minor ID of version number macro SECID$V_MAJOR_ID = 4,24,8,0 %; literal SECID$S_MAJOR_ID = 8; ! Minor ID of version number literal SECID$K_LENGTH = 8; ! Length of SECID literal SECID$C_LENGTH = 8; ! Length of SECID !*** MODULE $SECSRVDEF IDENT X-4 *** literal SECSRV$K_SERVER = 1; literal SECSRV$K_CIA = 2; literal SECSRV$K_PROXY = 3; literal SECSRV$K_MAPPING = 4; literal SECSRV$K_SHUTDOWN = 1; literal SECSRV$K_PERFORMANCE = 2; literal SECSRV$K_ZERO_PERFORMANCE = 3; literal SECSRV$K_RESTART = 4; literal SECSRV$K_ADD_PROXY = 0; literal SECSRV$K_DELETE_PROXY = 1; literal SECSRV$K_SHOW_PROXY = 2; literal SECSRV$K_VERIFY_PROXY = 3; literal SECSRV$K_CREATE_PROXY = 4; literal SECSRV$K_SCAN_INTRUSION = 5; literal SECSRV$K_DELETE_INTRUSION = 6; literal SECSRV$K_SHOW_INTRUSION = 7; literal SECSRV$K_STOP_SERVER = 8; literal SECSRV$K_RESTART_SERVER = 9; literal SECSRV$K_ADD_MAPPING = 10; literal SECSRV$K_CREATE_MAPPING = 11; literal SECSRV$K_DEFINE_MAPPING = 12; literal SECSRV$K_DELETE_MAPPING = 13; literal SECSRV$K_MODIFY_MAPPING = 14; literal SECSRV$K_SCAN_MAPPING = 15; literal SECSRV$K_LOOKUP_MAPPING = 16; literal SECSRV$K_MAX_SERVICE = 17; literal SECSRV$K_MAXMSG = 8192; literal SECSRV$K_MAX_MESSAGE = 8192; literal SECSRV$K_REPLY_CONTEXT_LENGTH = 4; literal SECSRV$M_IGNORE_RETURN = %X'1'; literal SECSRV$M_FILL_1 = %X'FFFFFFFE'; literal SECSRV$K_HEADER_LENGTH = 92; literal SECSRV$S_HEADER = 92; macro SECSRV$L_MESSAGE_TYPE = 0,0,32,0 %; macro SECSRV$L_MESSAGE_SUBTYPE = 4,0,32,0 %; macro SECSRV$L_CALLERS_PID = 8,0,32,0 %; macro SECSRV$L_RETURN_MAILBOX = 12,0,32,0 %; macro SECSRV$L_FLAGS = 16,0,32,0 %; macro SECSRV$V_IGNORE_RETURN = 16,0,1,0 %; macro SECSRV$R_USERNAME = 20,0,0,0 %; literal SECSRV$S_USERNAME = 36; macro SECSRV$W_USERNAME_SIZE = 20,0,16,0 %; macro SECSRV$T_USERNAME_STRING = 24,0,0,0 %; literal SECSRV$S_USERNAME_STRING = 32; macro SECSRV$R_TERMINAL = 56,0,0,0 %; literal SECSRV$S_TERMINAL = 16; macro SECSRV$B_TERMINAL_SIZE = 56,0,8,0 %; macro SECSRV$T_TERMINAL_NAME = 57,0,0,0 %; literal SECSRV$S_TERMINAL_NAME = 15; macro SECSRV$R_PROCESS_NAME = 72,0,0,0 %; literal SECSRV$S_PROCESS_NAME = 16; macro SECSRV$B_PRCNAM_SIZE = 72,0,8,0 %; macro SECSRV$T_PRCNAM_NAME = 73,0,0,0 %; literal SECSRV$S_PRCNAM_NAME = 15; macro SECSRV$L_MESSAGE_CONTEXT = 88,0,32,0 %; literal SECSRV$CLIENT = -1762787327; literal SECSRV$OBJECT = -1762787326; literal SECSRV$COMMUNICATION = -1762787325; !*** MODULE $SJCDEF *** ! ! Send to Job Controller Service ($SNDJBC) definitions. ! ! NOTE: New items must always be added at the end so users will not have to relink. ! ! ! Function codes ! literal SJC$_ABORT_JOB = 1; ! Abort current job in a queue literal SJC$_ADD_FILE = 2; ! Add a file to an open job literal SJC$_ALTER_JOB = 3; ! Alter parameters of a job literal SJC$_ALTER_QUEUE = 4; ! Alter parameters of a queue literal SJC$_ASSIGN_QUEUE = 5; ! Assign a logical queue to an execution queue literal SJC$_BATCH_CHECKPOINT = 6; ! Establish a checkpoint in a batch job literal SJC$_BATCH_SERVICE = 7; ! LOGINOUT communication literal SJC$_CLOSE_DELETE = 8; ! Close and delete an open job literal SJC$_CLOSE_JOB = 9; ! Close and enqueue an open job literal SJC$_CREATE_JOB = 10; ! Create an open job literal SJC$_CREATE_QUEUE = 11; ! Create a queue literal SJC$_DEASSIGN_QUEUE = 12; ! Deassign a logical queue literal SJC$_DEFINE_CHARACTERISTIC = 13; ! Create a characteristic definition literal SJC$_DEFINE_FORM = 14; ! Create a form definition literal SJC$_DELETE_CHARACTERISTIC = 15; ! Delete a characteristic definition literal SJC$_DELETE_FORM = 16; ! Delete a form definition literal SJC$_DELETE_JOB = 17; ! Delete a job literal SJC$_DELETE_QUEUE = 18; ! Delete a queue literal SJC$_ENTER_FILE = 19; ! Enter a single file job in a queue literal SJC$_MERGE_QUEUE = 20; ! Requeue all jobs in one queue to another literal SJC$_PAUSE_QUEUE = 21; ! Suspend processing from a queue literal SJC$_RESET_QUEUE = 22; ! Reset a queue literal SJC$_START_ACCOUNTING = 23; ! Start accounting manager literal SJC$_START_QUEUE = 24; ! Start processing from a queue literal SJC$_START_QUEUE_MANAGER = 25; ! Start system job queue manager literal SJC$_STOP_ACCOUNTING = 26; ! Stop accounting manager literal SJC$_STOP_QUEUE = 27; ! Stop processing from a queue literal SJC$_STOP_QUEUE_MANAGER = 28; ! Stop system job queue manager literal SJC$_SYNCHRONIZE_JOB = 29; ! Synchronize with job completion literal SJC$_WRITE_ACCOUNTING = 30; ! Write user accounting record literal SJC$_CONTROL_DIAGNOSTICS = 31; ! Control diagnostic functions (for internal use only) ! (note this function code is intentionally not documented and reserved for Digital use) literal SJC$_DELETE_QUEUE_MANAGER = 32; ! Remove all references to specified qmgr from shared master file literal SJC$_ALTER_FILE = 33; ! Modify the processing of a file within a job literal SJC$_STOP_ALL_QUEUES_ON_NODE = 34; ! Stop all batch/print job processing on the node literal SJC$_DISABLE_QUEUE = 35; ! Cause all QSIs on the queue to be inactive literal SJC$_ENABLE_QUEUE = 36; ! Allow disabled queue to be restarted literal SJC$_SYMBIONT_SERVICE = 37; ! Symbiont-Qman communication literal SJC$_JOBCTL_SERVICE = 38; ! Jobctl-Qman communication literal SJC$_ENABLE_AUTOSTART = 39; ! Start all AUTOSTART queues on node and allow queues to fail over to node literal SJC$_DISABLE_AUTOSTART = 40; ! Prevent AUTOSTART queues from failing over to this node literal SJC$_SHUTDOWN_NODE = 41; ! Perform orderly shutdown of queuing system on node. literal SJC$_RESERVED_FUNC_42 = 42; ! Reserved for Digital use (name may change) Reserved by security see [qman]tables.req literal SJC$_RESERVED_FUNC_43 = 43; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_44 = 44; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_45 = 45; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_46 = 46; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_47 = 47; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_48 = 48; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_49 = 49; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_FUNC_50 = 50; ! Reserved for Digital use (name may change) literal SJC$K_MIN_FUNC = 1; ! Minimum SNDJBC function code literal SJC$K_MAX_FUNC = 50; ! Maximum SNDJBC function code ! ! Item codes ! literal SJC$_ACCOUNTING_MESSAGE = 1; ! User accounting message literal SJC$_ACCOUNTING_TYPES = 2; ! Mask of accounting record types literal SJC$_AFTER_TIME = 3; ! Hold until time literal SJC$_NO_AFTER_TIME = 4; literal SJC$_ALIGNMENT_MASK = 5; ! Mask alignment data literal SJC$_ALIGNMENT_PAGES = 6; ! Number of alignment pages literal SJC$_BASE_PRIORITY = 7; ! Batch process base priority literal SJC$_BATCH = 8; ! Batch queue literal SJC$_NO_BATCH = 9; literal SJC$_BATCH_INPUT = 10; ! LOGINOUT communication (Retired, see SERVICE_INPUT) literal SJC$_BATCH_OUTPUT = 11; ! For use by LOGINOUT (for internal use only) (Retired, see SERVICE_OUTPUT) ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_CHARACTERISTIC_NAME = 12; ! Printer characteristic literal SJC$_CHARACTERISTIC_NUMBER = 13; literal SJC$_NO_CHARACTERISTICS = 14; literal SJC$_CHECKPOINT_DATA = 15; ! Batch checkpoint string literal SJC$_NO_CHECKPOINT_DATA = 16; literal SJC$_CLI = 17; ! Batch process CLI literal SJC$_NO_CLI = 18; literal SJC$_CPU_DEFAULT = 19; ! Default CPU time limit literal SJC$_NO_CPU_DEFAULT = 20; literal SJC$_CPU_LIMIT = 21; ! Maximum CPU time limit literal SJC$_NO_CPU_LIMIT = 22; literal SJC$_CREATE_START = 23; ! Start queue after creation literal SJC$_DELETE_FILE = 24; ! Delete file after processing literal SJC$_NO_DELETE_FILE = 25; literal SJC$_DESTINATION_QUEUE = 26; ! Destination queue name literal SJC$_DEVICE_NAME = 27; ! Output device name literal SJC$_DOUBLE_SPACE = 28; ! Double space output literal SJC$_NO_DOUBLE_SPACE = 29; literal SJC$_ENTRY_NUMBER = 30; ! Job entry number literal SJC$_ENTRY_NUMBER_OUTPUT = 31; literal SJC$_FILE_BURST = 32; ! Print file burst page literal SJC$_FILE_BURST_ONE = 33; literal SJC$_NO_FILE_BURST = 34; literal SJC$_FILE_COPIES = 35; ! Print n copies of file literal SJC$_FILE_FLAG = 36; ! Print file flag page literal SJC$_FILE_FLAG_ONE = 37; literal SJC$_NO_FILE_FLAG = 38; literal SJC$_FILE_IDENTIFICATION = 39; ! DVI, FID, DID of file literal SJC$_FILE_SETUP_MODULES = 40; ! Device control modules for file literal SJC$_NO_FILE_SETUP_MODULES = 41; literal SJC$_FILE_SPECIFICATION = 42; ! File specification of file literal SJC$_FILE_TRAILER = 43; ! Print file trailer page literal SJC$_FILE_TRAILER_ONE = 44; literal SJC$_NO_FILE_TRAILER = 45; literal SJC$_FIRST_PAGE = 46; ! Starting page number literal SJC$_NO_FIRST_PAGE = 47; literal SJC$_FORM_DESCRIPTION = 48; ! Textual description of form literal SJC$_FORM_LENGTH = 49; ! Form length in lines literal SJC$_FORM_MARGIN_BOTTOM = 50; ! Form bottom margin in lines literal SJC$_FORM_MARGIN_LEFT = 51; ! Form left margin in characters literal SJC$_FORM_MARGIN_RIGHT = 52; ! Form right margin in characters literal SJC$_FORM_MARGIN_TOP = 53; ! Form top margin in lines literal SJC$_FORM_NAME = 54; ! Printer form literal SJC$_FORM_NUMBER = 55; literal SJC$_FORM_SETUP_MODULES = 56; ! Device control modules for form literal SJC$_NO_FORM_SETUP_MODULES = 57; literal SJC$_FORM_SHEET_FEED = 58; ! Form is sheet fed literal SJC$_NO_FORM_SHEET_FEED = 59; literal SJC$_FORM_STOCK = 60; ! Stock name for form literal SJC$_FORM_TRUNCATE = 61; ! Truncate long lines literal SJC$_NO_FORM_TRUNCATE = 62; literal SJC$_FORM_WIDTH = 63; ! Form width in characters literal SJC$_FORM_WRAP = 64; ! Wrap long lines literal SJC$_NO_FORM_WRAP = 65; literal SJC$_GENERIC_QUEUE = 66; ! Queue is a generic queue literal SJC$_NO_GENERIC_QUEUE = 67; literal SJC$_GENERIC_SELECTION = 68; ! Queue can take work from generic queue literal SJC$_NO_GENERIC_SELECTION = 69; literal SJC$_GENERIC_TARGET = 70; ! Possible execution queue for generic queue literal SJC$_HOLD = 71; ! Place job on hold literal SJC$_NO_HOLD = 72; literal SJC$_JOB_BURST = 73; ! Print job burst page literal SJC$_NO_JOB_BURST = 74; literal SJC$_JOB_COPIES = 75; ! Print n copies of entire job literal SJC$_JOB_FLAG = 76; ! Print job flag page literal SJC$_NO_JOB_FLAG = 77; literal SJC$_JOB_LIMIT = 78; ! Number of concurrent jobs literal SJC$_JOB_NAME = 79; ! Identifying name of job literal SJC$_JOB_RESET_MODULES = 80; ! Device control modules between jobs literal SJC$_NO_JOB_RESET_MODULES = 81; literal SJC$_JOB_SIZE_MAXIMUM = 82; ! Largest job accepted by printer literal SJC$_NO_JOB_SIZE_MAXIMUM = 83; literal SJC$_JOB_SIZE_MINIMUM = 84; ! Smallest job accepted by printer literal SJC$_NO_JOB_SIZE_MINIMUM = 85; literal SJC$_JOB_SIZE_SCHEDULING = 86; ! Schedule printer queues by size literal SJC$_NO_JOB_SIZE_SCHEDULING = 87; literal SJC$_JOB_STATUS_OUTPUT = 88; ! Status message for submitted job literal SJC$_JOB_TRAILER = 89; ! Print job trailer page literal SJC$_NO_JOB_TRAILER = 90; literal SJC$_LAST_PAGE = 91; ! Ending page number literal SJC$_NO_LAST_PAGE = 92; literal SJC$_LIBRARY_SPECIFICATION = 93; ! Filename of device control library literal SJC$_NO_LIBRARY_SPECIFICATION = 94; literal SJC$_LOG_DELETE = 95; ! Delete log file literal SJC$_NO_LOG_DELETE = 96; literal SJC$_LOG_QUEUE = 97; ! Log file's print queue literal SJC$_LOG_SPECIFICATION = 98; ! File specification of log file literal SJC$_NO_LOG_SPECIFICATION = 99; literal SJC$_LOG_SPOOL = 100; ! Print log file literal SJC$_NO_LOG_SPOOL = 101; literal SJC$_LOWERCASE = 102; ! Print on lowercase printer literal SJC$_NO_LOWERCASE = 103; literal SJC$_NEW_VERSION = 104; ! Create new version of file literal SJC$_NEXT_JOB = 105; ! Resume at next job literal SJC$_NOTE = 106; ! Flag page note text literal SJC$_NO_NOTE = 107; literal SJC$_NOTIFY = 108; ! Notify user on job completion literal SJC$_NO_NOTIFY = 109; ! Don't notify user on completion (for jobs) ! Don't notify user on interruption (for print queues) literal SJC$_OPERATOR_REQUEST = 110; ! Operator service text literal SJC$_NO_OPERATOR_REQUEST = 111; literal SJC$_OWNER_UIC = 112; ! Queue owner UIC literal SJC$_PAGE_HEADER = 113; ! Print page headers literal SJC$_NO_PAGE_HEADER = 114; literal SJC$_PAGE_SETUP_MODULES = 115; ! Device control modules for form page literal SJC$_NO_PAGE_SETUP_MODULES = 116; literal SJC$_PAGINATE = 117; ! Paginate output with free form feeds literal SJC$_NO_PAGINATE = 118; literal SJC$_PARAMETER_1 = 119; ! Batch job parameters literal SJC$_PARAMETER_2 = 120; literal SJC$_PARAMETER_3 = 121; literal SJC$_PARAMETER_4 = 122; literal SJC$_PARAMETER_5 = 123; literal SJC$_PARAMETER_6 = 124; literal SJC$_PARAMETER_7 = 125; literal SJC$_PARAMETER_8 = 126; literal SJC$_NO_PARAMETERS = 127; literal SJC$_PASSALL = 128; ! Print file passall literal SJC$_NO_PASSALL = 129; literal SJC$_PRIORITY = 130; ! Job scheduling priority literal SJC$_PROCESSOR = 131; ! Filename of symbiont image literal SJC$_NO_PROCESSOR = 132; literal SJC$_PROTECTION = 133; ! Queue protection mask literal SJC$_QUEUE = 134; ! Queue on which to operate literal SJC$_QUEUE_FILE_SPECIFICATION = 135; ! File specification of queue file literal SJC$_RELATIVE_PAGE = 136; ! Resume after forward or back space literal SJC$_REQUEUE = 137; ! Requeue job literal SJC$_RESTART = 138; ! Job can restart literal SJC$_NO_RESTART = 139; literal SJC$_RETAIN_ALL_JOBS = 140; ! Retain completed jobs literal SJC$_RETAIN_ERROR_JOBS = 141; literal SJC$_NO_RETAIN_JOBS = 142; literal SJC$_SCSNODE_NAME = 143; ! Node name of execution node literal SJC$_SEARCH_STRING = 144; ! Resume after finding string literal SJC$_SWAP = 145; ! Swap batch processes literal SJC$_NO_SWAP = 146; literal SJC$_TERMINAL = 147; ! Queue is a (generic) terminal queue literal SJC$_NO_TERMINAL = 148; literal SJC$_TOP_OF_FILE = 149; ! Resume at top of file literal SJC$_USER_IDENTIFICATION = 150; ! Proxy user identification (not supported and is obsolete) ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_WSDEFAULT = 151; ! Working set default literal SJC$_NO_WSDEFAULT = 152; literal SJC$_WSEXTENT = 153; ! Working set extent literal SJC$_NO_WSEXTENT = 154; literal SJC$_WSQUOTA = 155; ! Working set quota literal SJC$_NO_WSQUOTA = 156; literal SJC$_ACCOUNT_NAME = 157; ! Proxy account name (requires CMKRNL privilege) literal SJC$_UIC = 158; ! Proxy UIC (requires CMKRNL privilege) literal SJC$_USERNAME = 159; ! Proxy username (requires CMKRNL privilege) literal SJC$_BUFFER_COUNT = 160; ! Multibuffer count for queue file literal SJC$_EXTEND_QUANTITY = 161; ! Allocation and extend quantity for queue file literal SJC$_RECORD_BLOCKING = 162; ! Symbiont record blocking of output stream literal SJC$_NO_RECORD_BLOCKING = 163; literal SJC$_QUEMAN_RESTART = 164; ! qualifier on SJC$_START_QUEUE_MANAGER, restart queue manager after an abort literal SJC$_NO_QUEMAN_RESTART = 165; literal SJC$_DEFAULT_FORM_NAME = 166; ! Default queue form name literal SJC$_DEFAULT_FORM_NUMBER = 167; ! Default queue form number literal SJC$_SECURITY_CLASSIFICATION = 168; ! Used by SeVMS to specify security classification of the job ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_QUEUE_SUPPORT = 169; ! Queue Support Images literal SJC$_JOB_COMPLETION_STATUS = 170; ! Status of completed job - this buffer is used instead of IOSB when specified literal SJC$_DIAGNOSTIC_BUFFER_OUTPUT = 171; ! Job controller's in-memory diagnostic buffer (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_OPEN_QUEUE = 172; ! Open queue - allow job submission literal SJC$_CLOSE_QUEUE = 173; ! Close queue - do not allow job submission literal SJC$_SERVER = 174; ! Server queue literal SJC$_PRINTER = 175; ! Printer queue literal SJC$_UPDATE_ORB = 176; ! Update ORB information in queue file (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_NO_QUEUE_DESCRIPTION = 177; ! No queue description supplied literal SJC$_JOB_RETAIN = 178; ! Retain this job literal SJC$_JOB_ERROR_RETAIN = 179; ! Retain this job on error literal SJC$_JOB_DEFAULT_RETAIN = 180; ! Use queue's job retention setting literal SJC$_NOTIFY_ON_INTERRUPT = 181; ! Notify users if their print jobs are interrupted literal SJC$_NO_RAD = 182; ! Reserved for Digital use (name may change) literal SJC$_ACCEPT_ALL_ATTRIBUTES = 183; ! Inhibits queue manager validation of QSI keywords literal SJC$_DIAGNOSTIC_FLAGS = 184; ! Diagnostic flags bitmask (for internal use only) ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_QUEUE_DESCRIPTION = 185; ! Queue description literal SJC$_CHECKPOINT_FREQUENCY = 186; ! Symbiont takes checkpoint at intervals of this many pages literal SJC$_DISPLAY_USERNAME = 187; ! Used by DQS to pass a username to the remote system (symbol not renamed) ! (note this item code is intentionally not documented and reserved for Digital use) literal SJC$_FILE_NUMBER = 188; ! File sequence number within job literal SJC$_FILE_ATTRIBUTE = 189; ! "Keyword = (optional) value" for extensible attrib on file literal SJC$_JOB_ATTRIBUTE = 190; ! "Keyword = (optional) value" for extensible attrib on job literal SJC$_QUEUE_ATTRIBUTE = 191; ! "Keyword = (optional) value" for extensible attrib on queue literal SJC$_REMOVE_ATTRIBUTE = 192; ! Remove extensible attribs for queue, job, or file literal SJC$_QUEUE_MANAGER_NAME = 193; ! Queue manager process literal SJC$_QUEUE_MANAGER_NODES = 194; ! Failover list of nodes on which queue manager process may run literal SJC$_AUTOSTART_ON = 195; ! Node(s) (and for print queues, device(s)) on which queue can be auto started literal SJC$_RESERVED_OUTPUT_196 = 196; ! Reserved for Digital use (name may change) SJC$_RESERVED_OUTPUT_196 to SJC$_RESERVED_OUTP literal SJC$_RESERVED_OUTPUT_197 = 197; ! Reserved for Digital use (name may change) reserved by security group. literal SJC$_RESERVED_OUTPUT_198 = 198; ! Reserved for Digital use (name may change) see. literal SJC$_RESERVED_OUTPUT_199 = 199; ! Reserved for Digital use (name may change) [QMAN]Tables.req literal SJC$_SET_CONDITION_VECTOR = 200; ! QSI can alter job's completion status literal SJC$_NOTIFY_MESSAGE = 201; ! QSI Check Job can replace job completion ! message sent to user literal SJC$_DEFINE_FILE_ATTRIBUTES = 202; ! Legal keywds for file submissions or alter_file's literal SJC$_DEFINE_JOB_ATTRIBUTES = 203; ! Legal keywds in oper'ns that create or alter jobs literal SJC$_DEFINE_QUEUE_ATTRIBUTES = 204; ! Legal keywords in operations that alter the queue literal SJC$_AGENT_PROFILE = 205; ! Security information literal SJC$_ADD_QUEUE_MANAGER = 206; ! Boolean item code telling sjc_start_queue_manager to add a new database literal SJC$_OUTSTANDING_JOBS = 207; ! Boolean item code telling queue manager to not delete outstanding open jobs literal SJC$_NO_INITIAL_FF = 208; ! To suppress initial form feed when the queue is started with INIT or START cmd literal SJC$_NO_NO_INITIAL_FF = 209; literal SJC$_DELETE_FILE_ALWAYS = 210; ! delete file even if the job completes with a failure literal SJC$_NO_DELETE_FILE_ALWAYS = 211; literal SJC$_RESERVED_BOOLEAN_212 = 212; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_213 = 213; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_214 = 214; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_215 = 215; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_216 = 216; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_217 = 217; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_218 = 218; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_219 = 219; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_220 = 220; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_221 = 221; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_222 = 222; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_223 = 223; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_224 = 224; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_225 = 225; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_226 = 226; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_227 = 227; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_228 = 228; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_229 = 229; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_230 = 230; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_231 = 231; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_232 = 232; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_233 = 233; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_BOOLEAN_234 = 234; ! Reserved for Digital use (name may change) literal SJC$_JOB_RETAIN_TIME = 235; ! The time the job should be retained (delta or absolute) literal SJC$_MANAGER_ATTRIBUTE = 236; ! Any application specific queue manager attributes. literal SJC$_RAD = 237; ! RAD on which to run batch job. literal SJC$_RESERVED_INPUT_238 = 238; ! Reserved for Digital use (name may change) items RESERVED_INPUT_238 literal SJC$_RESERVED_INPUT_239 = 239; ! Reserved for Digital use (name may change) to literal SJC$_RESERVED_INPUT_240 = 240; ! Reserved for Digital use (name may change) SJC$_RESERVED_INPUT_241 literal SJC$_RESERVED_INPUT_241 = 241; ! Reserved for Digital use (name may change) reserved by security (see [QMAN]tables.req literal SJC$_RESERVED_INPUT_242 = 242; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_243 = 243; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_244 = 244; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_245 = 245; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_246 = 246; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_247 = 247; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_248 = 248; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_249 = 249; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_INPUT_250 = 250; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_OUTPUT_251 = 251; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_OUTPUT_252 = 252; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_OUTPUT_253 = 253; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_OUTPUT_254 = 254; ! Reserved for Digital use (name may change) literal SJC$_RESERVED_OUTPUT_255 = 255; ! Reserved for Digital use (name may change) literal SJC$K_MIN_ITEM = 1; ! Minimum SNDJBC item code literal SJC$K_MAX_ITEM = 255; ! Maximum SNDJBC item code literal SJC$_CHARGE_CODE = 157; ! synonym for SJC$_ACCOUNT_NAME literal SJC$_RESERVED_INPUT_187 = 187; ! for DQS only literal SJC$_QUEUE_DIRECTORY = 135; ! Disk & directory for non-shared job queue database literal SJC$_SERVICE_INPUT = 10; literal SJC$_SERVICE_OUTPUT = 11; ! SERVICE item codes are used for communications with LOGINOUT, symbionts, and jobctl. ! ! Subfields of ACCOUNTING_TYPES item code. These definitions must track EXE$GL_ACMFLAGS. ! literal SJC$M_ACCT_PROCESS = %X'1'; literal SJC$M_ACCT_IMAGE = %X'2'; literal SJC$M_ACCT_INTERACTIVE = %X'4'; literal SJC$M_ACCT_LOGIN_FAILURE = %X'8'; literal SJC$M_ACCT_SUBPROCESS = %X'10'; literal SJC$M_ACCT_DETACHED = %X'20'; literal SJC$M_ACCT_BATCH = %X'40'; literal SJC$M_ACCT_NETWORK = %X'80'; literal SJC$M_ACCT_PRINT = %X'100'; literal SJC$M_ACCT_MESSAGE = %X'200'; literal SJC$M_ACCT_ACM_FUNC = %X'400'; literal SJC$M_ACCT_ACM_SYS = %X'800'; literal SJC$M_ACCT_CCAENAB = %X'1000'; literal SJC$M_ACCT_CCVENAB = %X'2000'; literal SJC$S_ACCOUNTING_TYPES = 4; macro SJC$V_ACCT_PROCESS = 0,0,1,0 %; ! Process termination macro SJC$V_ACCT_IMAGE = 0,1,1,0 %; ! Image termination macro SJC$V_ACCT_INTERACTIVE = 0,2,1,0 %; ! Interactive processes macro SJC$V_ACCT_LOGIN_FAILURE = 0,3,1,0 %; ! Login failures macro SJC$V_ACCT_SUBPROCESS = 0,4,1,0 %; ! Subprocesses macro SJC$V_ACCT_DETACHED = 0,5,1,0 %; ! Detached processes macro SJC$V_ACCT_BATCH = 0,6,1,0 %; ! Batch processes macro SJC$V_ACCT_NETWORK = 0,7,1,0 %; ! Network processes macro SJC$V_ACCT_PRINT = 0,8,1,0 %; ! Print job termination macro SJC$V_ACCT_MESSAGE = 0,9,1,0 %; ! User messages macro SJC$V_ACCT_ACM_FUNC = 0,10,1,0 %; ! Acm function macro SJC$V_ACCT_ACM_SYS = 0,11,1,0 %; ! System function macro SJC$V_ACCT_CCAENAB = 0,12,1,0 %; ! Charge code accounting macro SJC$V_ACCT_CCVENAB = 0,13,1,0 %; ! Charge code validation macro SJC$V_ACCT_UNUSED = 0,14,18,0 %; literal SJC$S_ACCT_UNUSED = 18; ! ! Subfields of DIAGNOSTIC_FLAGS item code. ! literal SJC$M_DIAG_COPY_QF = %X'1'; literal SJC$M_DIAG_CREATE_MF = %X'2'; literal SJC$M_DIAG_CLOSE_MF = %X'4'; literal SJC$M_DIAG_OPEN_MF = %X'8'; literal SJC$M_DIAG_CLEAR_FLAGS = %X'10'; literal SJC$M_DIAG_LOG_ALL_TRANS = %X'20'; literal SJC$M_DIAG_JOURNAL_PUTS = %X'40'; literal SJC$M_DIAG_DUMP_DIAG_BUFFER = %X'80'; literal SJC$M_DIAG_INIT_DIAG_BUFFER = %X'100'; literal SJC$S_DIAGNOSTIC_FLAGS = 4; macro SJC$V_DIAG_COPY_QF = 0,0,1,0 %; ! Make copy of the queue file macro SJC$V_DIAG_CREATE_MF = 0,1,1,0 %; ! Create new monitor log file and begin monitoring macro SJC$V_DIAG_CLOSE_MF = 0,2,1,0 %; ! Stop monitoring and close monitor log file macro SJC$V_DIAG_OPEN_MF = 0,3,1,0 %; ! Open existing monitor log file and resume monitoring macro SJC$V_DIAG_CLEAR_FLAGS = 0,4,1,0 %; ! Clear monitoring flags in queue file header record macro SJC$V_DIAG_LOG_ALL_TRANS = 0,5,1,0 %; ! Log read-only transactions in addition to basic monitoring macro SJC$V_DIAG_JOURNAL_PUTS = 0,6,1,0 %; ! Journal queue file $PUT operations in addition to basic monitoring macro SJC$V_DIAG_DUMP_DIAG_BUFFER = 0,7,1,0 %; ! Return contents of diagnostic buffer to caller macro SJC$V_DIAG_INIT_DIAG_BUFFER = 0,8,1,0 %; ! Initialize diagnostic buffer and zero cumulative counters macro SJC$V_DIAG_UNUSED = 0,9,23,0 %; literal SJC$S_DIAG_UNUSED = 23; !*** MODULE $SMRDEF *** ! ! DEFINE SYMBIONT MANAGER REQUEST CODES ! ! SYMBIONT MANAGER REQUEST CODES literal SMR$K_INITIAL = 0; ! INITIALIZE A QUEUE literal SMR$K_DELETE = 1; ! DELETE THE QUEUE literal SMR$K_START = 2; ! ACTIVATE OR RESUME PRINTING literal SMR$K_PAUSE = 3; ! SUSPEND PRINTING FOR A WHILE literal SMR$K_MERGE = 4; ! MOVE FILES FORM ONE QUEUE INTO ANOTHER literal SMR$K_REDIRECT = 5; ! ASSIGNMENT OF ONE QUEUE TO ANOTHER literal SMR$K_JUSTIFY = 6; ! JUSTIFY PRINT FORMS(IE: ISSUE FF) literal SMR$K_STOP = 7; ! DISABLE FURTHER DE-QUEING literal SMR$K_ENTER = 8; ! ADD A FILE TO A QUEUE literal SMR$K_CREJOB = 9; ! CREATE A PRINT JOB literal SMR$K_ADDFIL = 10; ! ADD A FILE TO EXISTING JOB literal SMR$K_CLSJOB = 11; ! CLOSE OPEN JOB literal SMR$K_RMVJOB = 12; ! REMOVE JOB FROM QUEUE literal SMR$K_ALTER = 13; ! CHANGE A FILES CHARACTERISTICS literal SMR$K_ABORT = 14; ! ABORT CURRENT JOB, START NEXT literal SMR$K_RELEASE = 15; ! RELEASE JOB FROM HOLD LIST literal SMR$K_DETINIT = 16; ! DETACHED JOB HAS INITIATED literal SMR$K_SYNCJOB = 17; ! SYNCRONIZE WITH A BATCH JOB literal SMR$K_ASKQNAM = 18; ! GET NAME OF QUEUE FOR LOG FILE ! ! ASSIGN SYMBIONT MANAGER PRINT JOB/RECORD OPTION CODES ! ! ! JOB FILE OPTIONS literal SMO$K_DELETE = 1; ! DELETE THE FILE AFTER PRINTING literal SMO$K_BRSTPAG = 2; ! CREATE A BURST PAGE literal SMO$K_NOBRSTPAG = 3; ! INHIBIT BURST PAGE literal SMO$K_FLAGPAG = 4; ! PRINT A FLAG PAGE literal SMO$K_NOFLAGPAG = 5; ! INHIBIT A FLAG PAGE literal SMO$K_PAGHDR = 6; ! PRINT FILENAME AS PAGE HEADER literal SMO$K_DOUBLE = 7; ! DOUBLE SPACE THE LISTING literal SMO$K_NOFEED = 8; ! INHIBIT FORM FEED GENERATION literal SMO$K_PAGCNT = 9; ! SPECIFY PAGE COUNT TO PRINT literal SMO$K_COPIES = 10; ! NUMBER OF COPIES TO PRINT literal SMO$K_FILESIZ = 11; ! FILE SIZE literal SMO$K_DESTQUE = 12; ! DESTINATION QUEUE ! OPTIONS FOR CREATE JOB literal SMO$K_RLSTIM = 32; ! TIME TO HOLD UNTIL QUEUEING literal SMO$K_HOLD = 33; ! HOLD THE JOB literal SMO$K_JOBPRI = 34; ! SPECIFY PRINT JOB/DETACHED JOB PRIOITY literal SMO$K_JOBCOPY = 35; ! NUMBER OF COPIES OF ENTIRE JOB literal SMO$K_FORMTYPE = 36; ! FORM TYPE TO USED WHEN PRINTED literal SMO$K_LOWER = 37; ! UPPER/LOWER CASE PRINTER ONLY literal SMO$K_PARAMS = 38; ! SUPPLY JOB PARAMETERS literal SMO$K_JOBNAME = 39; ! SUPPLY A NAME TO THE JOB literal SMO$K_NOLOWER = 40; ! CLEAR LOWER CASE REQUIRED literal SMO$K_CPULIM = 41; ! CPU TIME LIMIT literal SMO$K_NOCPULM = 42; ! NO CPU TIME LIMIT literal SMO$K_WSQUOTA = 43; ! WORKING SET QUOTA literal SMO$K_NOWSQUO = 44; ! NO WORKING SET QUOTA literal SMO$K_WSDEFLT = 45; ! WORKING SET DEFAULT literal SMO$K_NOWSDFT = 46; ! NO WORKING SET DEFAULT literal SMO$K_DQCHAR = 47; ! CHAR. TO BE USED WHEN PRINTED literal SMO$K_LOGFNAM = 48; ! LOG FILE SPEC. literal SMO$K_LOGQNAM = 49; ! QUEUE NAME FOR LOG FILE literal SMO$K_KEEPLOG = 50; ! KEEP LOG FILE literal SMO$K_NOSPOOL = 51; ! DON'T SPOOL LOG FILE literal SMO$K_NOKEEPLOG = 52; ! DELETE LOG FILE literal SMO$K_NOLOG = 53; ! CREATE LOG ON NULL DEVICE literal SMO$K_NOTIFY = 54; ! NOTIFY WHEN JOB COMPLETES literal SMO$K_NONOTFY = 55; ! NO NOTIFY literal SMO$K_WSEXTNT = 56; ! WS EXTENT literal SMO$K_NOWSEXTNT = 57; ! NO WS EXTENT ! OPTIONS FOR INIT OR START A QUEUE literal SMO$K_CURFORM = 64; ! CURRENT FORMS MOUNTED ON DEVICE literal SMO$K_GENPRT = 65; ! ALLOW GENERIC PRINTING literal SMO$K_NOGENPRT = 66; ! DISALLOW GENERIC PRINTING literal SMO$K_DETJOB = 67; ! QUEUE IS FOR DETACHED JOB QUEUING literal SMO$K_GENDEV = 68; ! QUEUE IS GENERIC DEVICE QUEUE literal SMO$K_NOGENDEV = 69; ! NOT A GENERIC DEVICE literal SMO$K_DEFBRST = 70; ! QUEUE HAS BURST PAGE BY DEFAULT literal SMO$K_NODEFBRST = 71; ! NO DEFAULT BURST PAGE literal SMO$K_DEFFLAG = 72; ! QUEUE HAS FLAG PAGE BY DEFAULT literal SMO$K_NODEFFLAG = 73; ! NO DEFAULT FLAG literal SMO$K_TRMDEV = 74; ! DEVICE IS A TERMINAL literal SMO$K_NOTRMDEV = 75; ! DEVICE IS NOT A TERMINAL literal SMO$K_JOBLIM = 76; ! JOB LIMIT FOR BATCH JOBS literal SMO$K_INIPRI = 77; ! JOB INITIAL PRIORITY literal SMO$K_DISWAP = 78; ! DISABLE SWAPING literal SMO$K_MCPULM = 79; ! MAX CPU TIME LIMIT literal SMO$K_NOMCPULM = 80; ! NO MAX CPU TIME LIMIT literal SMO$K_DCPULM = 81; ! DEFAULT CPU TIME LIMIT literal SMO$K_NODCPULM = 82; ! NO DEFAULT CPU TIME LIMIT literal SMO$K_WSQUTA = 83; ! WORKING SET QUOTA literal SMO$K_NOWSQUTA = 84; ! NO WORKING SET QUOTA literal SMO$K_WSDFLT = 85; ! WORKING SET DEFAULT literal SMO$K_NOWSDFLT = 86; ! NO WORKING SET DEFAULT literal SMO$K_CURDQCHAR = 87; ! CURRENT CHAR. OF THE QUEUE literal SMO$K_SMBNAME = 88; ! SYMBIONT NAME FOR QUEUE literal SMO$K_WSXTANT = 89; ! WS EXTENT literal SMO$K_NOWSXTNT = 90; ! NO WS EXTENT literal SMO$K_NODISWAP = 91; ! ENABLE SWAPPING ! OPTIONS FOR RESTART literal SMO$K_NEXTJOB = 96; ! RESTART AT END BEGINNING OF NEXT JOB literal SMO$K_TOPOFILE = 97; ! RESTART JOB AT TOP-OF-FILE literal SMO$K_SPCCNT = 98; ! SPECIFY PAGES TO SPACE OVER ! OPTIONS FOR ABORT literal SMO$K_REQUEUE = 112; ! REQUEUE THE FILE literal SMO$K_REQDEST = 113; ! SPECIFY NEW QUEUE DESTINATION literal SMO$K_REQPRIO = 114; ! SPECIFY PRIORITY ON REQUEUE !*** MODULE SNAPEVTDEF *** ! 1 ORIGIN and INCREMENTS of 1 literal SNAPEVT$_SNAPSHOT = 1; ! a system snapshot is pending in a non-VAXcluster environment literal SNAPEVT$_CLUPEND = 2; ! a system snapshot is pending in a VAXcluster environment literal SNAPEVT$_RESTART = 3; ! the system has just booted from a snapshot into a non-VAXcluster environment literal SNAPEVT$_CLU_RESTART = 4; ! the system has just booted from a snapshot into a VAXcluster environment literal SNAPEVT$_ABORT = 5; ! a fatal error occurred during the taking of a snapshot literal SNAPEVT$_CLUEXIT = 6; ! the system is resynchronizing after a loss of communications with the remainder ! of the cluster literal SNAPEVT$_ROLLOUT = 7; ! a system rollout is pending literal SNAPEVT$_ROLLIN = 8; ! a system rollin has been completed literal SNAPEVT$C_SNAPSHOT = 1; literal SNAPEVT$C_RESTART = 3; literal SNAPEVT$C_ABORT = 5; literal SNAPEVT$S_SNAPEVTCODE = 2; macro SNAPEVT$W_EVENT = 0,0,16,0 %; !*** MODULE $SSIODEF *** ! + ! File access modes for open and create ! - literal SSIO$M_O_RDONLY = 0; ! Read-only literal SSIO$M_O_WRONLY = 1; ! Write-only literal SSIO$M_O_RDWR = 2; ! Read and write literal SSIO$M_O_ACCMODE = 3; ! Mask for access mode field ! + ! File status flags for open, create, and setfl (fcntl) ! - literal SSIO$M_O_APPEND = 8; ! All writes append to EOF ! + ! File open and create options ! - literal SSIO$M_O_CREAT = 512; ! Create file if it does not exist literal SSIO$M_O_TRUNC = 1024; ! Truncate file literal SSIO$M_O_EXCL = 2048; ! If O_CREAT and O_EXCL both set, open fails if file exists literal SSIO$M_O_NOCTTY = 4096; ! If TTY dev, not to be controlling TTY for process ! + ! Positioning (lseek) options ! - literal SSIO$C_SEEK_SET = 0; ! Set offset to value provided literal SSIO$C_SEEK_CUR = 1; ! Offset relative to current position literal SSIO$C_SEEK_END = 2; ! Offset relative to current EOF ! + ! Other miscellaneous values ! - literal SSIO$C_SSIZE_MAX = 2147483647; ! Largest read/write size (in bytes) permitted !*** MODULE $STENVDEF *** literal STENV$K_AUTO_ACTION = 1; literal STENV$K_BOOT_DEV = 2; literal STENV$K_BOOTDEF_DEV = 3; literal STENV$K_BOOTED_DEV = 4; literal STENV$K_BOOT_FILE = 5; literal STENV$K_BOOTED_FILE = 6; literal STENV$K_BOOT_OSFLAGS = 7; literal STENV$K_BOOTED_OSFLAGS = 8; literal STENV$K_BOOT_RESET = 9; literal STENV$K_DUMP_DEV = 10; literal STENV$K_ENABLE_AUDIT = 11; literal STENV$K_LICENSE = 12; literal STENV$K_CHAR_SET = 13; literal STENV$K_LANGUAGE = 14; literal STENV$K_TTY_DEV = 15; literal STENV$K_SYSROOT = 16; literal STENV$K_BTFLAGS = 17; literal STENV$K_FRU_EEROM = 18; literal STENVDEF$S_ItemType = 24; macro STENVDEF$L_ITEM_CODE = 0,0,32,0 %; macro STENVDEF$L_BUF_LEN = 4,0,32,0 %; macro STENVDEF$Q_BUF_ADDR = 8,0,0,1 %; literal STENVDEF$S_BUF_ADDR = 8; macro STENVDEF$Q_RET_ADDR = 16,0,0,1 %; literal STENVDEF$S_RET_ADDR = 8; ! ! The following are operation codes for the FRU_EEROM item code. ! literal STENVDEF$_K_FREE_FORM = 0; literal STENVDEF$_K_SDD_LOG = 25; !*** MODULE $STSDEF *** ! ! MACROS TO DEFINE SYSTEM SERVICE FAILURE AND STATUS CODES. ! ! ! $STRUCT SS ! ! THIS STRUCTURE IS NOW CONTAINED IN 'SSMSG.MDL' ! + ! Define 32-bit VAX-11 error code longword fields ! Changed to agree with Handbook - TNH 26-OCT-77 - CHANGE M 1 to P 1 ! Changed to agree with new status value W. H. Brown 18-NOV-1977 ! - literal STS$M_SEVERITY = %X'7'; literal STS$M_COND_ID = %X'FFFFFF8'; literal STS$M_CONTROL = %X'F0000000'; literal STS$M_SUCCESS = %X'1'; literal STS$M_MSG_NO = %X'FFF8'; literal STS$M_CODE = %X'7FF8'; literal STS$M_FAC_SP = %X'8000'; literal STS$M_CUST_DEF = %X'8000000'; literal STS$M_INHIB_MSG = %X'10000000'; literal STS$M_FAC_NO = %X'FFF0000'; literal STS$K_WARNING = 0; ! WARNING literal STS$K_SUCCESS = 1; ! SUCCESSFUL COMPLETION literal STS$K_ERROR = 2; ! ERROR literal STS$K_INFO = 3; ! INFORMATION literal STS$K_SEVERE = 4; ! SEVERE ERROR literal STS$S_STSDEF = 4; macro STS$V_SEVERITY = 0,0,3,0 %; literal STS$S_SEVERITY = 3; ! severity code macro STS$V_COND_ID = 0,3,25,0 %; literal STS$S_COND_ID = 25; ! condition id macro STS$V_CONTROL = 0,28,4,0 %; literal STS$S_CONTROL = 4; ! control bits macro STS$V_SUCCESS = 0,0,1,0 %; ! Success macro STS$V_MSG_NO = 0,3,13,0 %; literal STS$S_MSG_NO = 13; ! Message number macro STS$V_CODE = 0,3,12,0 %; literal STS$S_CODE = 12; ! code macro STS$V_FAC_SP = 0,15,1,0 %; ! 1 if facility specific macro STS$V_CUST_DEF = 0,27,1,0 %; ! 1 if sub-system is customer (or CSS) defined macro STS$V_INHIB_MSG = 0,28,1,0 %; ! 1 if message should not be printed macro STS$V_FAC_NO = 0,16,12,0 %; literal STS$S_FAC_NO = 12; ! Facility is 12 bits ! + ! Define severity codes ! - !*** MODULE $SYIDEF *** ! + ! Get System Information Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! (preceding the ENDlistname item) so that users will not have ! to relink. ! - ! DEFINE TABLE TYPES literal SYI$C_EXETYPE = 1; ! Executive cells literal SYI$C_FLDTYPE = 2; ! Sub-field data literal SYI$C_RSDTYPE = 3; ! Reduced system data ! The following item-codes are for executive data cells. ! Processor registers are a special case of this type. ! Some EXE-type cells have frequently used sub-fields, ! which have item-codes in the FLD section. (after this one) literal SYI$_VERSION = 4096; ! VMS version number literal SYI$_SID = 4097; ! System ID register literal SYI$_PFCDEFAULT = 4098; ! Default page fault cluster size literal SYI$_PAGTBLPFC = 4099; ! Default page table page fault cluster literal SYI$_SYSPFC = 4100; ! Page fault cluster for system paging literal SYI$_KFILSTCNT = 4101; ! (Obsolete, to be deleted in a future release) literal SYI$_GBLSECTIONS = 4102; ! Global section count literal SYI$_GBLPAGES = 4103; ! Global page count literal SYI$_GBLPAGFIL = 4104; ! Global page page file page limit literal SYI$_MAXPROCESSCNT = 4105; ! Maximum process count literal SYI$_PIXSCAN = 4106; ! Process scan count literal SYI$_PROCSECTCNT = 4107; ! Process section count literal SYI$_MINWSCNT = 4108; ! Minimum working set size literal SYI$_PAGFILCNT = 4109; ! Number of paging files literal SYI$_SWPFILCNT = 4110; ! Number of swap files literal SYI$_SYSMWCNT = 4111; ! System working set count literal SYI$_INTSTKPAGES = 4112; ! Interrupt stack size literal SYI$_DLCKEXTRASTK = 4113; ! Extra int stack for deadlock searches literal SYI$_BALSETCNT = 4114; ! Balance set count literal SYI$_IRPCOUNT = 4115; ! Count of I/O packets literal SYI$_IRPCOUNTV = 4116; ! Limit of extension of IRP list literal SYI$_WSMAX = 4117; ! Max size of process working set literal SYI$_NPAGEDYN = 4118; ! Non-paged dynamic pool literal SYI$_NPAGEVIR = 4119; ! Limit of extension of above literal SYI$_PAGEDYN = 4120; ! Paged dynamic pool literal SYI$_VIRTUALPAGECNT = 4121; ! Max virtual page count literal SYI$_SPTREQ = 4122; ! Requested SPT extension literal SYI$_EXUSRSTK = 4123; ! Extra user stack provided literal SYI$_LRPCOUNT = 4124; ! Number of large request packets literal SYI$_LRPCOUNTV = 4125; ! Limit of extension of LRP list literal SYI$_LRPSIZE = 4126; ! Size of large request packet literal SYI$_LRPMIN = 4127; ! Min alloc request for LRPs literal SYI$_SRPCOUNT = 4128; ! Number of small request packets literal SYI$_SRPCOUNTV = 4129; ! Limit of extension of SRP list literal SYI$_SRPSIZE = 4130; ! Size of small request packet literal SYI$_SRPMIN = 4131; ! Min alloc request for SRPs literal SYI$_CHANNELCNT = 4132; ! Number of permanent I/O channels literal SYI$_PIOPAGES = 4133; ! Process I/O pages literal SYI$_CTLPAGES = 4134; ! Control region impure pages literal SYI$_CTLIMGLIM = 4135; ! Limit on use of proc alloc region literal SYI$_IMGIOCNT = 4136; ! Default image I/O address space literal SYI$_QUANTUM = 4137; ! Process quantum literal SYI$_MPW_WRTCLUSTER = 4138; ! Page write cluster factor literal SYI$_MPW_HILIMIT = 4139; ! Modified page list high limit literal SYI$_MPW_LOLIMIT = 4140; ! Modified page list low limit literal SYI$_MPW_PRIO = 4141; ! Modified page writer I/O priority literal SYI$_SWP_PRIO = 4142; ! Swapper I/O priority literal SYI$_MPW_THRESH = 4143; ! Modified page writer lower threshold literal SYI$_MPW_WAITLIMIT = 4144; ! Modified page writer busy wait limit literal SYI$_TBSKIPWSL = 4145; ! Max number WSlist entries to skip literal SYI$_PHYSICALPAGES = 4146; ! Memory size in pages literal SYI$_PFRATL = 4147; ! Page fault rate lower threshold literal SYI$_PFRATH = 4148; ! Page fault rate high threshold literal SYI$_PFRATL_SYS = 4149; ! PFRATL for the system working set literal SYI$_WSINC = 4150; ! Working set increment literal SYI$_WSDEC = 4151; ! Working set decrement literal SYI$_AWSMIN = 4152; ! Working set minimum literal SYI$_AWSTIME = 4153; ! Working set measurement interval literal SYI$_SWPRATE = 4154; ! Swap rate control (max) literal SYI$_SWPOUTPGCNT = 4155; ! Desired proc page cnt for an outswap literal SYI$_SWPALLOCINC = 4156; ! Swap file allocation increment value literal SYI$_IOTA = 4157; ! I/O time allowance literal SYI$_LONGWAIT = 4158; ! When HIB or LEF proc becomes longwait literal SYI$_SWPFAIL = 4159; ! Swap fail count literal SYI$_VMSD1 = 4160; ! Reserved to VMS development (DYNAMIC) literal SYI$_VMSD2 = 4161; ! " literal SYI$_VMSD3 = 4162; ! " literal SYI$_VMSD4 = 4163; ! " literal SYI$_VMS5 = 4164; ! Reserved to VMS development (STATIC) literal SYI$_VMS6 = 4165; ! " literal SYI$_VMS7 = 4166; ! " literal SYI$_VMS8 = 4167; ! " literal SYI$_USERD1 = 4168; ! Reserved for users (DYNAMIC) literal SYI$_USERD2 = 4169; ! " literal SYI$_USER3 = 4170; ! Reserved for users (STATIC) literal SYI$_USER4 = 4171; ! " literal SYI$_EXTRACPU = 4172; ! Extra CPU time allowed on expiration literal SYI$_MAXSYSGROUP = 4173; ! Max group code for system UIC literal SYI$_MVTIMEOUT = 4174; ! Timeout for mount verification literal SYI$_MAXBUF = 4175; ! Maximum allowable buffered I/O size literal SYI$_DEFMBXBUFQUO = 4176; ! Def buffer quota for mailbox creation literal SYI$_DEFMBXMXMSG = 4177; ! Def max msg size for mailbox creation literal SYI$_DEFMBXNUMMSG = 4178; ! Def number of messages for " literal SYI$_FREELIM = 4179; ! Desired free list length literal SYI$_FREEGOAL = 4180; ! Target free list length literal SYI$_GROWLIM = 4181; ! Free > growlim to grow proc > wsquota literal SYI$_BORROWLIM = 4182; ! Same as above??? literal SYI$_LOCKRETRY = 4183; ! Multi-CPU lock retry count literal SYI$_XFMAXRATE = 4184; ! Max DR32 data rate literal SYI$_LAMAPREGS = 4185; ! Number of UBA map regs for LPA11 literal SYI$_REALTIME_SPTS = 4186; ! SPT entries for CONINTERR processes literal SYI$_CLISYMTBL = 4187; ! Number of pages for CLI symbol table literal SYI$_LOCKIDTBL = 4188; ! Size of lock ID table literal SYI$_RESHASHTBL = 4189; ! Size of resource hash table literal SYI$_DEADLOCK_WAIT = 4190; ! Deadlock detection timeout period literal SYI$_SCSBUFFCNT = 4191; ! SCS buffer descriptor table entries literal SYI$_SCSCONNCNT = 4192; ! SCS connect descriptor table entries literal SYI$_SCSRESPCNT = 4193; ! SCS response descriptor table entries literal SYI$_SCSMAXDG = 4194; ! SCS maximum datagram size literal SYI$_SCSMAXMSG = 4195; ! SCS max sequenced message size literal SYI$_SCSFLOWCUSH = 4196; ! SCS flow control cushion literal SYI$_SCSSYSTEMID = 4197; ! SCS system ID (48 bits) literal SYI$_SCSSYSTEMIDH = 4198; ! High bits of above literal SYI$_SCSNODE = 4199; ! SCS system node name literal SYI$_PRCPOLINTERVAL = 4201; ! SCA process polling interval literal SYI$_PASTIMOUT = 4202; ! CI port START/STACK timeout literal SYI$_PASTDGBUF = 4203; ! CI port DG buffers for START handshake literal SYI$_PANUMPOLL = 4204; ! Number of CI ports to poll literal SYI$_PAPOLLINTERVAL = 4205; ! Time between CI port polls literal SYI$_PAPOOLINTERVAL = 4206; ! Time between SYSAPs pool check literal SYI$_TIMEPROMPTWAIT = 4207; ! Time prompt timeout (when booting) literal SYI$_UDABURSTRATE = 4208; ! Max number of longwords per NPR - 1 literal SYI$_LNMSHASHTBL = 4209; ! Size of system space log name hash table literal SYI$_LNMPHASHTBL = 4210; ! Size of process space " literal SYI$_TTY_SCANDELTA = 4211; ! Delta time for dialup timer scan literal SYI$_TTY_DIALTYPE = 4212; ! Flags for dialup type literal SYI$_TTY_SPEED = 4213; ! Terminal default: speed literal SYI$_TTY_RSPEED = 4214; ! " " receive speed literal SYI$_TTY_PARITY = 4215; ! " " parity literal SYI$_TTY_BUF = 4216; ! " " line width literal SYI$_TTY_DEFCHAR = 4217; ! " " characteristics literal SYI$_TTY_DEFCHAR2 = 4218; ! " " characteristics, 2nd longword literal SYI$_TTY_TYPAHDSZ = 4219; ! Size of typeahead buffer literal SYI$_TTY_ALTYPAHD = 4220; ! Alternate typeahead size literal SYI$_TTY_ALTALARM = 4221; ! Alt typeahead alarm size literal SYI$_TTY_DMASIZE = 4222; ! Dma size literal SYI$_TTY_PROT = 4223; ! Default terminal alloc protection literal SYI$_TTY_OWNER = 4224; ! Default terminal owner literal SYI$_TTY_CLASSNAME = 4225; ! Default terminal class name prefix literal SYI$_TTY_SILOTIME = 4226; ! Default silo timeout for DMF32 literal SYI$_TTY_DEFPORT = 4227; ! DEFAULT PORT ACTION PARAMETER literal SYI$_RMS_DFMBC = 4228; ! RMS default: multi-block count literal SYI$_RMS_DFMBFSDK = 4229; ! " " multi-buffer count for disk (SEQ) literal SYI$_RMS_DFMBFSMT = 4230; ! " " multi-buffer count for tape literal SYI$_RMS_DFMBFSUR = 4231; ! " " multi-buffer count for unit record literal SYI$_RMS_DFMBFREL = 4232; ! " " multi-buffer count for REL files literal SYI$_RMS_DFMBFIDX = 4233; ! " " multi-buffer count for ISAM files literal SYI$_RMS_CONPOLICY = 4234; ! " " Default RMS Contention Policy literal SYI$_RMS_PROLOGUE = 4235; ! " " prolog literal SYI$_RMS_EXTEND_SIZE = 4236; ! " " file extend quantity literal SYI$_RMS_FILEPROT = 4237; ! " " file protection literal SYI$_PQL_DASTLM = 4238; ! Def AST limit literal SYI$_PQL_MASTLM = 4239; ! Min " literal SYI$_PQL_DBIOLM = 4240; ! Def buffered I/O limit literal SYI$_PQL_MBIOLM = 4241; ! Min " literal SYI$_PQL_DBYTLM = 4242; ! Def buffered I/O byte count limit literal SYI$_PQL_MBYTLM = 4243; ! Min " literal SYI$_PQL_DCPULM = 4244; ! Def CPU time limit literal SYI$_PQL_MCPULM = 4245; ! Min " literal SYI$_PQL_DDIOLM = 4246; ! Def direct I/O limit literal SYI$_PQL_MDIOLM = 4247; ! Min " literal SYI$_PQL_DFILLM = 4248; ! Def open file limit literal SYI$_PQL_MFILLM = 4249; ! Min " literal SYI$_PQL_DPGFLQUOTA = 4250; ! Def paging file quota literal SYI$_PQL_MPGFLQUOTA = 4251; ! Min " literal SYI$_PQL_DPRCLM = 4252; ! Def sub-process limit literal SYI$_PQL_MPRCLM = 4253; ! Min " literal SYI$_PQL_DTQELM = 4254; ! Def timer queue entry limit literal SYI$_PQL_MTQELM = 4255; ! Min " literal SYI$_PQL_DWSDEFAULT = 4256; ! Def working set default size literal SYI$_PQL_MWSDEFAULT = 4257; ! Min " literal SYI$_PQL_DWSQUOTA = 4258; ! Def working set quota literal SYI$_PQL_MWSQUOTA = 4259; ! Min " literal SYI$_PQL_DWSEXTENT = 4260; ! Def working set extent literal SYI$_PQL_MWSEXTENT = 4261; ! Min " literal SYI$_PQL_DENQLM = 4262; ! Def enqueue limit literal SYI$_PQL_MENQLM = 4263; ! Min " literal SYI$_ACP_MAPCACHE = 4264; ! Number of blocks in bitmap cache literal SYI$_ACP_HDRCACHE = 4265; ! Number of blocks in file header cache literal SYI$_ACP_DIRCACHE = 4266; ! Number of blocks in directory cache literal SYI$_ACP_WORKSET = 4267; ! ACP working set literal SYI$_ACP_FIDCACHE = 4268; ! Number of cached index file slots literal SYI$_ACP_EXTCACHE = 4269; ! Number of cached disk extents literal SYI$_ACP_EXTLIMIT = 4270; ! Max fraction of disk to cache literal SYI$_ACP_QUOCACHE = 4271; ! Number of file quota entries to cache literal SYI$_ACP_SYSACC = 4272; ! Default access for system volumes literal SYI$_ACP_MAXREAD = 4273; ! Max number of direct blks to read literal SYI$_ACP_WINDOW = 4274; ! Default window size for system volumes literal SYI$_ACP_WRITEBACK = 4275; ! Deferred cache writeback enable literal SYI$_ACP_DATACHECK = 4276; ! ACP datacheck enable flags literal SYI$_ACP_BASEPRIO = 4277; ! ACP base priority literal SYI$_ACP_SWAPFLGS = 4278; ! ACP swap flags literal SYI$_DEFPRI = 4279; ! Default priority for Job Initiations literal SYI$_IJOBLIM = 4280; ! Limit for interactive jobs literal SYI$_BJOBLIM = 4281; ! Limit for batch jobs literal SYI$_NJOBLIM = 4282; ! Limit for network jobs literal SYI$_RJOBLIM = 4283; ! Limit for remote terminal jobs literal SYI$_QUORUM = 4284; ! Connection manager cluster QUORUM literal SYI$_VOTES = 4285; ! Connection manager VOTES from this system literal SYI$_RECNXINTERVAL = 4286; ! Connection manager reconnect interval literal SYI$_BOOTTIME = 4287; ! 64-bit abs. system time at system boot literal SYI$_LOCKIDTBL_MAX = 4288; ! Maximum size of lock ID table. literal SYI$_TAILORED = 4289; ! Is this system tailored? literal SYI$_STARTUP_P1 = 4290; ! Parameters for passing information literal SYI$_STARTUP_P2 = 4291; ! to system startup procedure. literal SYI$_STARTUP_P3 = 4292; literal SYI$_STARTUP_P4 = 4293; literal SYI$_STARTUP_P5 = 4294; literal SYI$_STARTUP_P6 = 4295; literal SYI$_STARTUP_P7 = 4296; literal SYI$_STARTUP_P8 = 4297; literal SYI$_CLUSTER_NODES = 4298; ! total number of nodes in cluster literal SYI$_CLUSTER_VOTES = 4299; ! " " " votes " " literal SYI$_CLUSTER_QUORUM = 4300; ! " quorum in cluster literal SYI$_CLUSTER_FSYSID = 4301; ! founding systemid literal SYI$_CLUSTER_FTIME = 4302; ! founding boottime literal SYI$_CLUSTER_MEMBER = 4303; ! true if in a live cluster literal SYI$_NODE_CSID = 4304; ! cluster system id of target node literal SYI$_NODE_VOTES = 4305; ! votes of target node literal SYI$_NODE_QUORUM = 4306; ! quorum of " " literal SYI$_NODE_SYSTEMID = 4307; ! systemid of " " literal SYI$_NODE_SWINCARN = 4308; ! S/W incarnation of " " literal SYI$_NODE_SWTYPE = 4309; ! S/W type of " " literal SYI$_NODE_SWVERS = 4310; ! S/W version of " " literal SYI$_NODE_HWTYPE = 4311; ! H/W type of " " literal SYI$_NODE_HWVERS = 4312; ! H/W version of " " literal SYI$_NODENAME = 4313; ! SCS nodename of " " literal SYI$_ARCHFLAG = 4314; ! Flags used by uVAX code literal SYI$_SCS_EXISTS = 4315; ! Flag to indicate presence of SCS literal SYI$_DISK_QUORUM = 4316; ! Cluster quorum device name (in ASCII) literal SYI$_XSID = 4317; ! Extended System Identification Register literal SYI$_PAMAXPORT = 4320; ! Max PA port to poll literal SYI$_PASANITY = 4321; ! PA sanity timer enable/disable switch literal SYI$_DEFQUEPRI = 4322; ! Default Que Priority literal SYI$_MAXQUEPRI = 4323; ! Max Que Priority literal SYI$_QDSKINTERVAL = 4324; ! Disk Quorum Interval literal SYI$_ALLOCLASS = 4325; ! Allocation class literal SYI$_LGI_RETRY_LIM = 4326; ! Login retry limit literal SYI$_LGI_RETRY_TMO = 4327; ! Login retry timeout literal SYI$_LGI_BRK_LIM = 4328; ! Login failure limit literal SYI$_LGI_BRK_TMO = 4329; ! Login suspect timeout literal SYI$_LGI_HID_TIM = 4330; ! Login evasive action time literal SYI$_LGI_PWD_TMO = 4331; ! System password drop dead time literal SYI$_PQL_DJTQUOTA = 4332; ! Default Job-wide Logical Name Table Creation Quota literal SYI$_PQL_MJTQUOTA = 4333; ! Minimum Job-wide Logical Name Table Creation Quota literal SYI$_VAXCLUSTER = 4334; ! VAXcluster participation literal SYI$_LOCKDIRWT = 4335; ! Lock manager directory system weight literal SYI$_QDSKVOTES = 4336; ! Votes held by quorum disk literal SYI$_DORMANTWAIT = 4337; ! When low pri COM proc becomes dormant literal SYI$_PAGEFILE_PAGE = 4338; ! Total pagefile pages literal SYI$_SWAPFILE_PAGE = 4339; ! Total swapfile pages literal SYI$_PAGEFILE_FREE = 4340; ! Free pagefile pages literal SYI$_SWAPFILE_FREE = 4341; ! Free swapfile pages literal SYI$_TTY_TIMEOUT = 4342; ! Seconds for virtual terminal timeout literal SYI$_TTY_AUTOCHAR = 4343; ! autobaud recognition character literal SYI$_PANOPOLL = 4344; ! Disable/enable CI port polling literal SYI$_PE1 = 4345; ! Reserved TO PEDRIVER (DYNAMIC) literal SYI$_PE2 = 4346; ! " literal SYI$_PE3 = 4347; ! " literal SYI$_PE4 = 4348; ! " literal SYI$_PE5 = 4349; ! Reserved TO PEDRIVER (STATIC) literal SYI$_PE6 = 4350; ! " literal SYI$_RMS_GBLBUFQUO = 4351; ! RMS global buffer quota literal SYI$_RMS_DFNBC = 4352; ! " " network block count literal SYI$_ACP_DINDXCACHE = 4353; ! File system directory index cache blocks literal SYI$_MAXATTACHPRI = 4354; ! Maximum scheduling prio for ASMP attached processor literal SYI$_SMP_CPUS = 4355; ! Number of CPUs to boot in SMP system literal SYI$_SMP_CPUSH = 4356; ! Hi Number of CPUs to boot in SMP system literal SYI$_FALLBACK_MODE = 4357; ! Cluster fallback mode literal SYI$_MPW_LOWAITLIMIT = 4358; ! Modified page writer lower busy wait limit literal SYI$_MPW_IOLIMIT = 4359; ! Modified page writer max concurrent I/O count literal SYI$_S0_PAGING = 4360; ! System space paging flags literal SYI$_HW_MODEL = 4361; ! System model number (from SB$B_HWVERS) literal SYI$_HW_NAME = 4362; ! System model name from #/name trans. table literal SYI$_SCH_CTLFLAGS = 4363; ! CPU scheduling control flags (obsolete) literal SYI$_NODE_EVOTES = 4364; ! Votes expected by target node literal SYI$_CLUSTER_EVOTES = 4365; ! Number of expected votes in cluster literal SYI$_MULTIPROCESSING = 4366; ! Multiprocessor participation literal SYI$_FREE_GBLPAGES = 4367; ! Total, free global pages literal SYI$_CONTIG_GBLPAGES = 4368; ! Maximum, contiguous free global pages literal SYI$_FREE_GBLSECTS = 4369; ! Total, free global sections literal SYI$_EXPECTED_VOTES = 4370; ! Expected votes literal SYI$_PU_OPTIONS = 4371; ! Select PUDRIVER load options literal SYI$_WPTTE_SIZE = 4372; ! # Watchpoint Trace Table Entries literal SYI$_WPRE_SIZE = 4373; ! Watchpoint Restore Entry size literal SYI$_SMP_SANITY_CNT = 4374; ! # SMP Sanity events bef. timeout literal SYI$_SMP_TICK_CNT = 4375; ! Clock ticks between SMP sanity time cycles literal SYI$_QBUS_MULT_INTR = 4376; ! uVAX/QBUS multi-level interrupt enable flag literal SYI$_SYSTEM_RIGHTS = 4377; ! System rights list segment literal SYI$_SMP_SPINWAIT = 4378; ! SMP normal busywait timeout literal SYI$_SMP_LNGSPINWAIT = 4379; ! SMP LONG busywait timeout literal SYI$_TIME_CONTROL = 4380; ! Time-related control functions literal SYI$_AVAILCPU_CNT = 4381; ! Number of CPUs in this machine literal SYI$_ACTIVECPU_CNT = 4382; ! Number of CPUs up and running literal SYI$_MSCP_LOAD = 4386; ! Load MSCP server at boot time literal SYI$_MSCP_SERVE_ALL = 4387; ! Serve all disks literal SYI$_POOLCHECK = 4388; ! Pool debugging in MEMORYALC.MAR literal SYI$_TAPE_MVTIMEOUT = 4389; ! Magtape mount verification literal SYI$_PSEUDOLOA = 4390; ! Pseudoloa image size for tape boot literal SYI$_MINCLASSPRI = 4391; ! Min. priority for class scheduling literal SYI$_MAXCLASSPRI = 4392; ! Max. priority for class scheduling literal SYI$_MINPRPRI = 4393; ! Min. priority for preemptive-resume scheduling literal SYI$_AUTOCONFIG_ALGO = 4394; ! Selects which algorithmn SYSGEN uses to autoconfigure. literal SYI$_ERRORLOGBUFFERS = 4395; ! Number of buffers for error logging literal SYI$_JOBCTLD = 4396; ! Dynamic SYSGEN flag to handle job controller diagnostics and Rolling upgrade. literal SYI$_WINDOW_SYSTEM = 4397; ! Default windowing system for workstation literal SYI$_MSCP_BUFFER = 4398; ! Pages allocated to server local pool literal SYI$_MSCP_CREDITS = 4399; ! Number of send credits extended by server literal SYI$_BREAKPOINTS = 4400; ! Mask of INI$BRK callers in exec used in this boot literal SYI$_CLOCK_INTERVAL = 4401; ! Time (in usec) between interval timer clock interrupts literal SYI$_DUMPSTYLE = 4402; ! Mask specifying desired format of dump file (full dump or subset dump) literal SYI$_NISCS_PORT_SERV = 4403; ! Port services flag literal SYI$_RSRVPAGCNT = 4404; ! No. of pagefile pages to escrow literal SYI$_VECTOR_PROC = 4405; ! Load vector processing literal SYI$_VECTOR_MARGIN = 4406; ! Vector margin literal SYI$_AFFINITY_SKIP = 4407; ! Affinity skip count literal SYI$_AFFINITY_TIME = 4408; ! Affinity queue time literal SYI$_VECTOR_EMULATOR = 4409; ! Vector emulator present flag literal SYI$_VP_MASK = 4410; ! Mask of vector processors literal SYI$_VP_NUMBER = 4411; ! Number of vector processors literal SYI$_USED_GBLPAGCNT = 4412; ! Current count of global pages in use literal SYI$_USED_GBLPAGMAX = 4413; ! Maximum count of global pages in use literal SYI$_USED_GBLSECTCNT = 4414; ! Current count of global sections in use literal SYI$_USED_GBLSECTMAX = 4415; ! Maximum count of global sections in use literal SYI$_ERLBUFFERPAGES = 4416; ! Pages in each ERL Buffer literal SYI$_TAPE_ALLOCLASS = 4417; ! Tape Allocation class literal SYI$_PFRATH_SYS = 4418; ! PFRATH for the system working set literal SYI$_WSINC_SYS = 4419; ! WSINC for the system working set literal SYI$_WSDEC_SYS = 4420; ! WSDEC for the system working set literal SYI$_AWSMIN_SYS = 4421; ! AWSMIN for the system working set literal SYI$_AWSTIME_SYS = 4422; ! AWSTIME for the system working set literal SYI$_BOOT_STYLE = 4423; ! Boot Style literal SYI$_FT_FLAGS = 4424; ! Fault Tolerance Flags field literal SYI$_SHADOWING = 4425; ! Shadowing mode literal SYI$_SHADOW_SYS_DISK = 4426; ! Volume shadowed system disk literal SYI$_SHADOW_SYS_UNIT = 4427; ! Shadowed system disk unit number literal SYI$_SHADOW_MAX_COPY = 4428; ! Max shadow copy threads allowed literal SYI$_TIMVCFAIL = 4429; ! Time to detect VC failure literal SYI$_PRIORITY_OFFSET = 4431; ! Priority gap for preemption literal SYI$_VCC_FLAGS = 4432; ! VBN static cache flags literal SYI$_VCC_MAXSIZE = 4437; ! Max size of VBN cache literal SYI$_MMG_CTLFLAGS = 4441; ! Bit mask to control A/T mem mgmt. literal SYI$_NISCS_MAX_PKTSZ = 4443; ! Maximum number of bytes allocated for all NISCS packets literal SYI$_NISCS_LAN_OVRHD = 4444; ! Bytes in NISCS packets reserved for other uses (eg DESNC) literal SYI$_DECNET_VERSION = 4445; ! Version of DECnet installed literal SYI$_TMSCP_LOAD = 4446; ! Load TMSCP tape server at boot time literal SYI$_LGI_CALLOUTS = 4447; ! Number of LOGINOUT local policy callouts literal SYI$_NET_CALLOUTS = 4448; ! Number of DECNET Login local policy callouts literal SYI$_IEEE_ADDRESS = 4449; ! 48 bit IEEE unique address - low order 32 bits literal SYI$_IEEE_ADDRESSH = 4450; ! 48 bit IEEE unique address - high order 16 bits literal SYI$_SHADOW_MBR_TMO = 4451; ! Timeout interval for HBS shadow members literal SYI$_PAGE_SIZE = 4452; ! Memory page size in bytes literal SYI$_ARCH_TYPE = 4453; ! Architecture type literal SYI$_ARCH_NAME = 4454; ! Architecture name literal SYI$_CRD_CONTROL = 4455; ! CRD scrub/replace control literal SYI$_SECURITY_POLICY = 4456; ! C2/B1 security policy bitmask literal SYI$_DNVOSI1 = 4457; ! DECnet/OSI for VMS literal SYI$_MEMSIZE = 4459; ! System memory size in pages literal SYI$_KSTACKPAGES = 4460; ! Pages in Kernel Stack literal SYI$_PHYSICAL_MEMORY = 4461; ! Max of physical memory to use literal SYI$_XQP_ALLOC_BLKS = 4462; ! Flag - can XQP allocate blocks literal SYI$_ZERO_LIST_HI = 4463; ! Zeroed list high limit literal SYI$_CPUTYPE = 4464; ! CPU type of Primary CPU from HWRPB literal SYI$_SYSTYPE = 4465; ! System type from HWRPB literal SYI$_ITB_ENTRIES = 4466; ! Number of code huge page TBs to use literal SYI$_GH_RSRVPGCNT = 4467; ! pages reserved in code huge page literal SYI$_DEF_PRIO_MIN = 4468; ! MIN priority for default policy literal SYI$_DEF_PRIO_MAX = 4469; ! MAX priority for default policy literal SYI$_PSXFIFO_PRIO_MIN = 4470; ! MIN priority for POSIX FIFO policy literal SYI$_PSXFIFO_PRIO_MAX = 4471; ! MAX priority for POSIX FIFO policy literal SYI$_PSXRR_PRIO_MIN = 4472; ! MIN priority for POSIX Rnd-Robbin policy literal SYI$_PSXRR_PRIO_MAX = 4473; ! MAX priority for POSIX Rnd-Robbin policy literal SYI$_XQPCTLD1 = 4474; ! Reserved for XQP use (dynamic) literal SYI$_XQPCTL2 = 4475; ! Reserved for XQP use literal SYI$_CPUCONF = 4477; ! CPU Configuration bitmask: 0 through 31 literal SYI$_DECNET_FULLNAME = 4478; ! DECnet/OSI fullname (or DECnet Phase IV node name) literal SYI$_XQPCTLD3 = 4479; ! F11BXQP Specific parameters literal SYI$_XQPCTL4 = 4480; ! | literal SYI$_XQPCTLD5 = 4481; ! | literal SYI$_XQPCTL6 = 4482; ! | literal SYI$_XQPCTLD7 = 4483; ! | literal SYI$_XQPCTL8 = 4484; ! v literal SYI$_DBGTK_SCRATCH = 4485; ! HLL System debugger scratch memory request literal SYI$_PALCODE_VERSION = 4486; ! Version of PALcode literal SYI$_CONSOLE_VERSION = 4487; ! Version of Console firmware literal SYI$_GH_EXEC_CODE = 4488; ! Pages in the execlet code region literal SYI$_GH_EXEC_DATA = 4489; ! Pages in the execlet data region literal SYI$_GH_RES_CODE = 4490; ! Pages in the resident image S0S1 code region literal SYI$_GH_RES_DATA = 4491; ! Pages in the resident image data region literal SYI$_IMGREG_PAGES = 4492; ! Pages in the P1 image-region literal SYI$_SHADOW_SYS_TMO = 4493; ! Timeout interval for HBS system disk- new and after - shadow members literal SYI$_SHADOW_SYS_WAIT = 4494; ! Timeout interval for HBS system disk- exists - shadow members literal SYI$_SHADOW_ENABLE = 4495; ! Member removed at reboot from HBVS set. literal SYI$_SHADOW_SITE_O = 4496; ! OBSOLETE default site for shadow set (text) literal SYI$_SYSTEM_CHECK = 4497; ! load/enable system problem isolation code literal SYI$_PFN_COLOR_COUNT = 4498; ! PFN Color Count literal SYI$_REAL_CPUTYPE = 4499; ! Actual CPU type of Primary CPU from literal SYI$_SCSICLUSTER_P1 = 4500; ! Reserved for SCSI Cluster literal SYI$_SCSICLUSTER_P2 = 4501; ! Reserved for SCSI Cluster literal SYI$_SCSICLUSTER_P3 = 4502; ! Reserved for SCSI Cluster literal SYI$_SCSICLUSTER_P4 = 4503; ! Reserved for SCSI Cluster literal SYI$_FILE_CACHE = 4504; ! Percentage of physical memory reserved for Dollar file system cache literal SYI$_TMSCP_SERVE_ALL = 4505; ! Serve all tapes literal SYI$_DR_UNIT_BASE = 4506; ! unit base for DR devices literal SYI$_MC_SERVICES_P0 = 4507; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P1 = 4508; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P2 = 4509; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P3 = 4510; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P4 = 4511; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P5 = 4512; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P6 = 4513; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P7 = 4514; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P8 = 4515; ! Reserved for MEmory Channel Services literal SYI$_MC_SERVICES_P9 = 4516; ! Reserved for MEmory Channel Services literal SYI$_S2_SIZE = 4517; ! Size in Mbytes for S2 space literal SYI$_PROCESS_SPACE_LIMIT = 4518; ! Highest process private VA literal SYI$_PT_BASE = 4519; ! Base VA of PT_space literal SYI$_SHARED_VA_PTES = 4520; ! Boundary between process and system space PTEs literal SYI$_MULTITHREAD = 4521; ! per process kernel thread limit literal SYI$_CWCREPRC_ENABLE = 4522; ! Allow remote process creation by unprivileged user literal SYI$_MAXBOBMEM = 4523; ! Maximum physical memory for buffer objects (pagelets) literal SYI$_FAST_PATH = 4524; ! Fast Path enable/disable literal SYI$_IO_PREFER_CPUS = 4525; ! Bit mask of CPUs available to be Fast Path preferred CPUs literal SYI$_ACTIVE_CPU_MASK = 4526; ! Currently active CPU mask literal SYI$_AVAIL_CPU_MASK = 4527; ! Mask of existing system CPUs literal SYI$_PRIMARY_CPUID = 4528; ! CPUID of the primary processor literal SYI$_MAX_CPUS = 4529; ! Maximum allowed CPUs in system literal SYI$_CPUCAP_MASK = 4530; ! Array of CPU capability masks literal SYI$_FILE_CACHE_MIN = 4531; ! Min # of pages of cache reserved for Spiralog file system literal SYI$_FILE_CACHE_MAX = 4532; ! Max # of pages of cache reserved for Spiralog file system literal SYI$_F64CTL1 = 4533; ! Reserved to Spiralog file system literal SYI$_F64CTL2 = 4534; ! | literal SYI$_F64CTLD3 = 4535; ! | literal SYI$_F64CTLD4 = 4536; ! V literal SYI$_DISABLE_UPCALLS = 4537; ! Bitmask to disable specific threads upcalls literal SYI$_DEVICE_NAMING = 4538; ! DEVICE_NAMING bitmask literal SYI$_AVAIL_PAGES = 4539; ! Available physical pages literal SYI$_PROC_SLOTS = 4540; ! Process slot information literal SYI$_BAL_SLOTS = 4541; ! Balance slot information literal SYI$_NPAGED_POOL = 4542; ! Nonpaged pool information literal SYI$_PAGED_POOL = 4543; ! Paged pool information literal SYI$_MAIN_MEMORY = 4544; ! Memory information literal SYI$_ARB_SUPPORT = 4545; ! Level of security backward compatibility ! ifsymbol PFNBITS_32; literal SYI$_MAX_PFN = 4546; ! Returns contents of MMG$GL_MAXPFN literal SYI$_PFN_MEMORY_MAP = 4547; ! Returns a physical memory map ! end_ifsymbol; literal SYI$_PMD_COUNT = 4548; ! Returns count of phys. mem. desc. in HWRPB literal SYI$_MSCP_CMD_TMO = 4549; ! VMS-MSCP server timer value literal SYI$_LAN_FLAGS = 4550; ! LAN specific flags literal SYI$_RMS_DFLRL = 4551; ! RMS default max record length literal SYI$_RMS_HEURISTIC = 4552; ! RMS file attribute heuristic ctr flag literal SYI$_NPAG_INTERVAL = 4553; ! nonpaged pool gentle reclamation interval (# of seconds) literal SYI$_NPAG_GENTLE = 4554; ! gentle reclamation refill percentage literal SYI$_NPAG_AGGRESSIVE = 4555; ! aggressive reclamation refill percentage literal SYI$_NPAG_BAP_MIN = 4556; ! Min Size of Bus Addressable Pool literal SYI$_NPAG_BAP_MAX = 4557; ! Max Size of Bus Addressable Pool literal SYI$_NPAG_BAP_MAX_PA = 4558; ! max. PA for BAP literal SYI$_NPAG_RING_SIZE = 4559; ! size of ring buffer literal SYI$_CLUSTER_CREDITS = 4560; ! cluster send credits literal SYI$_PTES_PER_PAGE = 4561; ! literal SYI$_TEMPERATURE_VECTOR = 4562; ! 16-byte temperature vector literal SYI$_POWER_VECTOR = 4563; ! 16-byte power vector literal SYI$_FAN_VECTOR = 4564; ! 16-byte fan vector literal SYI$_THERMAL_VECTOR = 4565; ! 16-byte thermal vector literal SYI$_MAXBOBS0S1 = 4566; ! Maximum buffer object S0S1 VA space (pagelets) literal SYI$_MAXBOBS2 = 4567; ! Maximum buffer object S2 VA space (pagelets) literal SYI$_VCC_MAX_CACHE = 4568; ! Maximum VDC Cache Size literal SYI$_VCC_MAX_IO_SIZE = 4569; ! Maximum Cached VDC I/O Size literal SYI$_VCC_MAX_LOCKS = 4570; ! Maximum number of locks for VDC literal SYI$_VCC_READAHEAD = 4571; ! VDC Readahead caching on/off literal SYI$_VCC_WRITEBEHIND = 4572; ! VDC Writebehind caching on/off literal SYI$_VCC_WRITE_DELAY = 4573; ! VDC Writebehind write delay literal SYI$_SD_ALLOCLASS = 4574; ! Snapshot-capable disk device allocation class literal SYI$_GALAXY = 4575; ! Node should participate in a Galaxy literal SYI$_NPAG_BAP_MIN_PA = 4576; ! min. PA for BAP literal SYI$_BAP_MIN_REQ_SZ = 4577; ! Bus addressable pool (BAP) minimum size requested (bytes) literal SYI$_BAP_MAX_REQ_SZ = 4578; ! Bus addressable pool (BAP) maximum size requested (bytes) literal SYI$_BAP_MIN_PA_REG = 4579; ! Bus addressable pool (BAP) minimum PA registered (megabytes) literal SYI$_BAP_MAX_PA_REG = 4580; ! Bus addressable pool (BAP) maximum PA registered (megabytes) literal SYI$_GALAXY_ID = 4581; ! 16-byte unique ID of Galaxy platform literal SYI$_RMSD6 = 4582; ! Reserved to RMS development (dynamic) literal SYI$_MPDEV_ENABLE_O = 4583; ! OBSOLETE Multipath I/O switching control parameter literal SYI$_MPDEV_REMOTE_O = 4584; ! OBSOLETE Multipath I/O switching control parameter for remote paths literal SYI$_RMSD1 = 4585; ! Reserved to RMS development (dynamic) literal SYI$_GALAXY_MEMBER = 4586; ! Flag - Are we a Galaxy member? literal SYI$_GALAXY_PLATFORM = 4587; ! Flag - Are we on a Galaxy platform? literal SYI$_PARTITION_ID = 4588; ! Galaxy Partition ID literal SYI$_COMMUNITY_ID = 4589; ! Galaxy Community ID literal SYI$_GLX_INST_TMO = 4590; ! Galaxy heartbeat timeout value literal SYI$_SMCI_FLAGS = 4591; ! SMCI Flags literal SYI$_SMCI_PORTS = 4592; ! SMCI Port bitmask literal SYI$_SERVED_IO = 4593; ! QIOserver control parameter literal SYI$_GLX_SW_VERSION = 4594; ! Galaxy software version literal SYI$_GLX_MAX_MEMBERS = 4595; ! maximum node_id this platform literal SYI$_GLX_INCARNATION = 4596; ! galaxy incarnation count literal SYI$_GLX_FORMATION = 4597; ! galaxy creation time (systime) literal SYI$_GLX_TERMINATION = 4598; ! systime galaxy died literal SYI$_GLX_MBR_NAME = 4599; ! galaxy member name literal SYI$_GLX_MBR_MEMBER = 4600; ! galaxy member literal SYI$_GLX_MBR_INCARNATION = 4601; ! galaxy member incarnation number literal SYI$_GLX_MBR_JOINED = 4602; ! galaxy member join time literal SYI$_MPDEV_LCRETRIES = 4603; ! Multipath Switching - local connect retries literal SYI$_MPDEV_D1 = 4604; ! Multipath Switching - dynamic literal SYI$_CLUSTER_NTIME = 4605; ! Cluster New time literal SYI$_CLUSTER_NTIME_REF = 4606; ! Cluster New time - local reference literal SYI$_MPDEV_POLLER_O = 4607; ! OBSOLETE Multipath poller parameter literal SYI$_CPU_FAILOVER = 4608; ! Array of CPU failover partitions literal SYI$_POTENTIAL_CPU_MASK = 4609; ! Mask of CPUs that are compatible on this instance literal SYI$_POTENTIALCPU_CNT = 4610; ! Number of CPUs that could potentially run on this instance literal SYI$_CPU_AUTOSTART = 4611; ! Array of CPU autostart states literal SYI$_FAST_PATH_PORTS = 4614; ! New Fastpath implementations literal SYI$_GLX_SHM_REG = 4615; ! Number of Galaxy shared memory regions in GMDB literal SYI$_RAD_SUPPORT = 4616; ! Switch to turn RAD (aka NUMA) support on literal SYI$_NPAGECALC = 4617; ! Tell VMS to calculate default npagedyn and vir values literal SYI$_WBM_MSG_INT = 4618; ! write bitmap msg check interval literal SYI$_WBM_MSG_UPPER = 4619; ! upper threshold for msgs literal SYI$_WBM_MSG_LOWER = 4620; ! lower threshold for msgs literal SYI$_HP_ACTIVE_CPU_CNT = 4621; ! number of active CPUs in this hard partition literal SYI$_HP_ACTIVE_SP_CNT = 4622; ! number of active soft partitions in this hard partition literal SYI$_HP_CONFIG_SP_CNT = 4623; ! number of configured soft partitions in this hard partition literal SYI$_HP_CONFIG_SBB_CNT = 4624; ! number of configured SBBs in this hard partition literal SYI$_SHADOW_MAX_UNIT = 4625; ! maximum number of dsa devices which can exist on the node literal SYI$_WBM_OPCOM_LVL = 4626; ! opcom mode for write bitmap information messages literal SYI$_AUTO_DLIGHT_SAV = 4627; ! automatic daylight saving SYSGEN flag literal SYI$_RAD_MAX_RADS = 4628; ! maximum number of RADs on this platform literal SYI$_RAD_CPUS = 4629; ! potential CPUs per RAD for this instance literal SYI$_RAD_MEMSIZE = 4630; ! private memory per RAD for this instance literal SYI$_RAD_SHMEMSIZE = 4631; ! number of shared memory per RAD literal SYI$_GALAXY_SHMEMSIZE = 4632; ! number of shared memory pages total literal SYI$_NPAGERAD = 4633; ! How much of NPAGEDYN is in other than the base RAD literal SYI$_SERIAL_NUMBER = 4634; ! System Serial Number - may be virtualized literal SYI$_MPDEV_D2 = 4636; ! Multipath Switching - dynamic literal SYI$_MPDEV_D3 = 4637; ! Multipath Switching - dynamic literal SYI$_MPDEV_D4 = 4638; ! Multipath Switching - dynamic literal SYI$_MPDEV_AFB_INTVL = 4639; ! Multipath Auto fail back Interval - dynamic literal SYI$_MPW_STACKPAGES = 4640; ! MPW Stack Pages literal SYI$_PRESENT_CPU_MASK = 4641; ! Mask of CPUs that are present in the hard partition literal SYI$_PRESENTCPU_CNT = 4642; ! Number of CPUs that are present in the hard partition literal SYI$_POWERED_CPU_MASK = 4643; ! Mask of CPUs that are powered up in the hard partition literal SYI$_POWEREDCPU_CNT = 4644; ! Number of CPUs that are powered up in the hard partition literal SYI$_RMSD7 = 4645; ! RMS readahead hint feature for XFC literal SYI$_RMS_SEQFILE_WBH = 4646; ! RMS default writebehind feature literal SYI$_DCL_CTLFLAGS = 4647; ! DCL Control Flags literal SYI$_DELPRC_EXIT = 4648; ! System-wide EXIT behavior for direct calls to $DELPRC literal SYI$_PHYMEM_CONFIG = 4649; ! Dynamic memory configuration control literal SYI$_KTK_D1 = 4650; ! Dynamic kernel tuning knob literal SYI$_KTK_D2 = 4651; ! Dynamic kernel tuning knob literal SYI$_KTK_D3 = 4652; ! Dynamic kernel tuning knob literal SYI$_KTK_D4 = 4653; ! Dynamic kernel tuning knob literal SYI$_KTK_D5 = 4654; ! Dynamic kernel tuning knob literal SYI$_KTK_D6 = 4655; ! Dynamic kernel tuning knob literal SYI$_KTK_D7 = 4656; ! Dynamic kernel tuning knob literal SYI$_KTK_D8 = 4657; ! Dynamic kernel tuning knob literal SYI$_KTK_D9 = 4658; ! Dynamic kernel tuning knob literal SYI$_KTK_D10 = 4659; ! Dynamic kernel tuning knob literal SYI$_KTK_D11 = 4660; ! Dynamic kernel tuning knob literal SYI$_KTK_D12 = 4661; ! Dynamic kernel tuning knob literal SYI$_MIN_CPU_FEATURE_MASK = 4662; ! AMASK value of all CPUs ANDed together literal SYI$_FIBRE_SCSI_RSV1 = 4663; ! reserved for Fibre SCSI use literal SYI$_DEFUID = 4664; ! default POSIX UID literal SYI$_DEFGID = 4665; ! default POSIX GID literal SYI$_MVSUPMSG_INTVL = 4666; ! Quiet mountver suppression interval -dynamic literal SYI$_MVSUPMSG_NUM = 4667; ! Quiet mountver suppression number -dynamic literal SYI$_SHADOW_SITE_ID = 4668; ! Shadow Site value literal SYI$_RMSD2 = 4669; ! Reserved to RMS development (dynamic) literal SYI$_RMSD3 = 4670; ! Reserved to RMS development (dynamic) literal SYI$_RMSD4 = 4671; ! Reserved to RMS development (dynamic) literal SYI$_RMSD5 = 4672; ! Reserved to RMS development (dynamic) literal SYI$_TESTING123 = 4673; ! Reserved for debugging literal SYI$_VCC_PAGESIZE = 4674; ! Reserved for XFC use literal SYI$_VCC_RSVD = 4675; ! Reserved for XFC use literal SYI$_RSVD_IO_1 = 4676; ! Reserved for debug/future enhancement literal SYI$_RSVD_IO_2 = 4677; ! Reserved for debug/future enhancement literal SYI$_RSVD_CLU_1 = 4678; ! Reserved for debug/future enhancement literal SYI$_RSVD_CLU_2 = 4679; ! Reserved for debug/future enhancement literal SYI$_RSVD_EXEC_1 = 4680; ! Reserved for debug/future enhancement literal SYI$_RSVD_EXEC_2 = 4681; ! Reserved for debug/future enhancement literal SYI$_RSVD_SECUR_1 = 4682; ! Reserved for debug/future enhancement literal SYI$_RSVD_SECUR_2 = 4683; ! Reserved for debug/future enhancement literal SYI$_RSVD_LAN_1 = 4684; ! Reserved for debug/future enhancement literal SYI$_RSVD_LAN_2 = 4685; ! Reserved for debug/future enhancement literal SYI$_SHADOW_REC_DLY = 4686; ! Time to wait after crash before merge start literal SYI$_SHADOW_D1 = 4687; ! Shadowing spare literal SYI$_SHADOW_D2 = 4688; ! Shadowing spare literal SYI$_SHADOW_D3 = 4689; ! Shadowing spare literal SYI$_SHADOW_D4 = 4690; ! Shadowing spare literal SYI$_SHADOW_D5 = 4691; ! Shadowing spare literal SYI$_WBM_D1 = 4692; ! Write Bit Map for HBMM literal SYI$_TTY_DEFCHAR3 = 4693; ! Terminal characteristics, 3nd ! longword only lower 16 attributes ! upper 16 bits are Asian VMS bits literal SYI$_VHPT_SIZE = 4694; ! Size of VHPT on IA64 only literal SYI$_SHADOW_HBMM_RTC = 4696; ! HBMM Reset Threshold Check Timer Interval literal SYI$_FCLAN_FRAME = 4697; ! Fibre Channel LAN frame size literal SYI$_MAX_PFN_64 = 4698; ! Returns contents of MMG$GQ_MAXPFN literal SYI$_PFN_MEMORY_MAP_64 = 4699; ! Returns a 64 bit physical memory map literal SYI$_CPU_SOCKETS = 4700; ! Returns number of cpu sockets literal SYI$_ERLBUFFERPAG_S2 = 4701; ! Number of pagelets per S2 error log buffer literal SYI$_ERRORLOGBUFF_S2 = 4702; ! Number of S2 error log buffers literal SYI$_SHADOW_PSM_RDLY = 4703; ! Shadowing Per Served Member Recovery Delay literal SYI$_SYSTEM_UUID = 4704; ! Returns the system UUID on Itanium systems - may be virtualized literal SYI$_PLATF_SPT_D1 = 4705; ! Reserved to VMS platform support (dynamic) literal SYI$_PLATF_SPT_D2 = 4706; ! " literal SYI$_PLATF_SPT_D3 = 4707; ! " literal SYI$_PLATF_SPT_D4 = 4708; ! " literal SYI$_PLATF_SPT_1 = 4709; ! Reserved to VMS platform support (static) literal SYI$_PLATF_SPT_2 = 4710; ! " literal SYI$_PLATF_SPT_3 = 4711; ! " literal SYI$_PLATF_SPT_4 = 4712; ! " literal SYI$_SWIS_LOG = 4713; ! Knob to change the swis log literal SYI$_EXECSTACKPAGES = 4714; ! Number of pages for RMS EXEC ASB or RSE stack literal SYI$_GB_CACHEALLMAX = 4715; ! RMS global buffer cache whole file criterion literal SYI$_GB_DEFPERCENT = 4716; ! RMS global buffer cache default percent criterion literal SYI$_CPU_THREADING = 4717; ! Knob to change how we deal with CPU hardware threads literal SYI$_CPU_POWER_MGMT = 4718; ! Control Power Managment on IPF literal SYI$_CPU_POWER_THRSH = 4719; ! Idle Threshold necessary to use Power Management literal SYI$_SMP_CPU_BITMAP = 4720; ! (1024-bit) Map of CPUs eligible for participation in SMP system literal SYI$_IO_PRCPU_BITMAP = 4721; ! (1024-bit) Map of CPUs for fast path I/O processing literal SYI$_LOCKRMWT = 4722; ! Lock Remaster Weight literal SYI$_SAS_NAMING = 4723; ! SAS Device Naming literal SYI$_ACTIVE_CPU_BITMAP = 4724; ! CBB bitmap data literal SYI$_AVAIL_CPU_BITMAP = 4725; ! of CPUs literal SYI$_POTENTIAL_CPU_BITMAP = 4726; ! in various literal SYI$_POWERED_CPU_BITMAP = 4727; ! states literal SYI$_PRESENT_CPU_BITMAP = 4728; ! ... literal SYI$_COMPLEX_ID = 4729; ! Complex Profile ID literal SYI$_COMPLEX_NAME = 4730; ! Complex Profile Name literal SYI$_HP_ID = 4731; ! Hard Partition ID (nPar ID) literal SYI$_HP_NAME = 4732; ! Hard Partition Name (nPar Name) literal SYI$_CELLULAR_PLATFORM = 4733; ! System is cell-based literal SYI$_BOOT_DEVICE = 4734; ! sys$ar_bootucb literal SYI$_HP_CORE_CNT = 4735; ! Count of unique cores in hard partition literal SYI$_ACTIVE_CORE_CNT = 4736; ! Count of cores in hard partition with at least one active LP literal SYI$_SSIO_SYNC_INTVL = 4737; ! Interval at which dirty shared stream I/O buffers are ! written to disk by process doing sync() literal SYI$_SCH_SOFT_OFFLD = 4738; ! Bitmap of CPUs sometimes excluded from scheduling literal SYI$_SCH_HARD_OFFLD = 4739; ! Bitmap of CPUs excluded from scheduling literal SYI$_SCHED_FLAGS = 4740; ! Reserved cell for sched noodling, replaces parameter SCH_CTLFLAGS literal SYI$_GH_RES_CODE_S2 = 4741; ! Pages in the resident image S2 code region literal SYI$_GRAPHICS_CONSOLE = 4742; ! 1 if Graphics Console, 0 if not literal SYI$_TCPIP_LOAD = 4743; ! 1 Enables load TCPIP Services at boot time literal SYI$_NISCS_UDP_PORT = 4744; ! UDP Port number for cluster communications. literal SYI$_PHYS_SERIAL_NUMBER = 4745; ! Physical System Serial Number on Itanium systems literal SYI$_PHYS_SYSTEM_UUID = 4746; ! Physical system UUID on Itanium systems literal SYI$_PAGED_LAL_SIZE = 4747; ! Pagedyn Lookaside list maximum packet size literal SYI$_RMS_PATH_TMO = 4748; ! Lifetime for symlink entries in RMS path cache literal SYI$_NISCS_UDP_PKTSZ = 4749; ! udp packet size for cluster communication ! ADD 'EXE' (LONGWORD) ITEM-CODES *ONLY* JUST BEFORE THIS COMMENT ******** ! DO NOT ADD 'FLD' (FIELD) ITEMS HERE!!!! ADD THEM BEFORE 'LASTFLD' ****** literal SYI$_LASTEXE = 4750; ! LAST INDEX ! The following item-codes are for 'sub-field data' items. ! There usually exists another item-code to retrieve the ! whole parent cell (longword) - in the EXE section above. literal SYI$_CPU = 8192; ! CPU type literal SYI$_BUGREBOOT = 8193; ! Bugcheck reboot enable literal SYI$_CRDENABLE = 8194; ! Memory error checking enable literal SYI$_DUMPBUG = 8195; ! Bugcheck dump enable literal SYI$_BUGCHECKFATAL = 8196; ! All bugchecks become fatal literal SYI$_ACP_MULTIPLE = 8197; ! New ACP for each disk class literal SYI$_NOAUTOCONFIG = 8198; ! Auto configuration inhibit literal SYI$_NOCLOCK = 8199; ! Interval timer inhibit literal SYI$_NOCLUSTER = 8200; ! Page read clustering inhibit literal SYI$_POOLPAGING = 8201; ! Enable paging of paged pool literal SYI$_SBIERRENABLE = 8202; ! SBI error detection enable literal SYI$_SETTIME = 8203; ! Force entry of time at system boot literal SYI$_ACP_SHARE = 8204; ! Enable sharing of F11ACP literal SYI$_SYSPAGING = 8205; ! Enable paging of system code literal SYI$_UAFALTERNATE = 8206; ! Select alternate authorization file literal SYI$_WRITABLESYS = 8207; ! Leave system writable for debugging literal SYI$_RESALLOC = 8208; ! Enable resource allocation checking literal SYI$_SSINHIBIT = 8209; ! Inhibit system services for processes literal SYI$_CONCEAL_DEVICES = 8210; ! Enable concealed devices literal SYI$_SAVEDUMP = 8211; ! Save dump if it's in page file literal SYI$_MOUNTMSG = 8212; ! Enable oper notification of vol mounts literal SYI$_DISMOUMSG = 8213; ! Enable oper notification of vol dism literal SYI$_LOADERAPT = 8214; ! Load alt erase pattern generator literal SYI$_LOADCHKPRT = 8215; ! Load alt protection check routine literal SYI$_XCPU = 8216; ! CPU subtype (Extended SID info) literal SYI$_CJFLOAD = 8217; ! Load common journaling code literal SYI$_CJFSYSRUJ = 8218; ! Load recovery unit journaling code literal SYI$_NODE_AREA = 8219; ! System ID node area literal SYI$_NODE_NUMBER = 8220; ! System ID node number literal SYI$_CLASS_PROT = 8221; ! Non-discretionary check flag literal SYI$_CHARACTER_EMULATED = 8222; ! Character string instructions emulated literal SYI$_DECIMAL_EMULATED = 8223; ! Decimal string instructions emulated literal SYI$_D_FLOAT_EMULATED = 8224; ! D floating instructions emulated literal SYI$_F_FLOAT_EMULATED = 8225; ! F floating instructions emulated literal SYI$_G_FLOAT_EMULATED = 8226; ! G floating instructions emulated literal SYI$_H_FLOAT_EMULATED = 8227; ! H floating instructions emulated literal SYI$_LOADMTACCESS = 8228; ! Load installation specific access routine literal SYI$_ACP_XQP_RES = 8229; ! Resident XQP literal SYI$_WRITESYSPARAMS = 8230; ! Write active parameters to the system .PAR file literal SYI$_LGI_BRK_TERM = 8231; ! Use term name in breakin detection literal SYI$_LGI_BRK_DISUSER = 8232; ! Disable user account on breakin literal SYI$_ACP_REBLDSYSD = 8233; ! Rebuild system disk when mounting it literal SYI$_WS_OPA0 = 8234; ! Workstation using QVSS for OPA0 literal SYI$_NOPGFLSWP = 8235; ! Inhibit swapping into pagefiles literal SYI$_LOAD_SYS_IMAGES = 8237; ! Control of how system images are loaded literal SYI$_NISCS_CONV_BOOT = 8238; ! Allow remote conversational boot literal SYI$_NISCS_LOAD_PEA0 = 8239; ! Load NI-SCS driver for PEA0 literal SYI$_SA_APP = 8240; ! Booting stand-alone application (SA-BACKUP) literal SYI$_LOAD_PWD_POLICY = 8241; ! Load site-specific password policy literal SYI$_FT_ACTIVE = 8242; ! CIRRUS system is fully active literal SYI$_WLKSYSDSK = 8244; ! Booting with write locked sys disk literal SYI$_DBGTK_LOADED = 8245; ! Remote system debugger target kernel is loaded literal SYI$_DAY_OVERRIDE = 8246; ! UAF day classifications are overridden literal SYI$_DAY_SECONDARY = 8247; ! UAF day override is to Secondary literal SYI$_CWLOGICALS = 8248; ! State of CAP_CWLOGICALS literal SYI$_POWEROFF = 8249; ! Enable software power-off literal SYI$_MPDEV_ENABLE = 8250; ! Multipath I/O switching control parameter literal SYI$_MPDEV_REMOTE = 8251; ! Multipath I/O switching control parameter for remote paths literal SYI$_MPDEV_POLLER = 8252; ! Multipath poller parameter literal SYI$_LCKMGR_MODE = 8253; ! Lock Manager Mode literal SYI$_LCKMGR_RSVD = 8254; ! Lock Manager Reserved literal SYI$_LCKMGR_CPUID = 8255; ! Lock Manager CPU ID literal SYI$_PERSISTENT_RES = 8256; ! Fibre SCSI Reservation Support literal SYI$_SYSSER_LOGGING = 8257; ! Enable system service logging literal SYI$_SCSI_ERROR_POLL = 8258; ! Enable polling to flush SCSI errors literal SYI$_SSI_ENABLE = 8259; ! Enable system service intercept on I64 literal SYI$_VIRTUAL_MACHINE = 8260; ! True if we're running on a VMS guest under HPVM -- useful on I64 only. literal SYI$_NISCS_USE_LAN = 8261; ! True enables cluster comm. use of 802 LAN. literal SYI$_NISCS_USE_UDP = 8262; ! True enables cluster comm. use of UDP. ! ADD 'FLD' (FIELD) ITEM-CODES *ONLY* JUST BEFORE THIS COMMENT *********** ! DO NOT ADD 'EXE' (LONGWORD) ITEMS HERE!!!! ADD THEM BEFORE 'LASTEXE' *** literal SYI$_LASTFLD = 8263; ! LAST INDEX ! ) equals SYI$C_FLDTYPE@12 increment 1 prefix SYI tag $; ! **************************************************************************** ! * ! * THE FOLLOWING DEFINITIONS EXIST FOR COMPATIBILITY WITH THE 1ST ! * IMPLEMENTATION OF SYS$GETSYI. DO NOT CHANGE THEM!!! ! * ADD NEW GETSYI ITEM-CODES ONLY TO THE PREVIOUS LISTS. ! * ! **************************************************************************** literal SYI$C_SFWTYPE = 1; ! SYSTEM SOFTWARE ITEM literal SYI$C_HDWTYPE = 2; ! HARDWARE ITEM literal SYI$C_LISTEND = 0; ! ITMLST TERMINATOR ! IDENTIFIER FOR SYSTEM SOFTWARE literal SYI$_OLDVERSION = 256; ! VMS VERSION NUMBER literal SYI$_LASTSFW = 257; ! LAST INDEX ! ******************************************************************* ! ********************* BEGIN TEMP FIX ****************************** ! ********************* BEGIN TEMP FIX ****************************** ! ******************************************************************* ! ) equals SYI$C_SFWTYPE@8 increment 1 prefix SYI tag $; ! ******************************************************************* ! ********************** END TEMP FIX ******************************* ! ********************** END TEMP FIX ******************************* ! ******************************************************************* ! IDENTIFIER FOR HARDWARE TYPE literal SYI$_OLDCPU = 512; ! CPU TYPE literal SYI$_OLDSID = 513; ! SYSTEM ID REGISTER literal SYI$_LASTHDW = 514; ! LAST INDEX ! ) equals SYI$C_HDWTYPE@8 increment 1 prefix SYI tag $; ! Define constant for the length of environmental vector item codes ! (POWER_VECTOR, TEMPERATURE_VECTOR, THERMAL_VECTOR, and FAN_VECTOR). literal SYI$K_ENV_VECTOR_LENGTH = 16; ! Define status code for each element in the environmental vector literal SYI$K_ENV_STATUS_FAILED = 0; literal SYI$K_ENV_STATUS_OK = 1; literal SYI$K_ENV_STATUS_NOT_PRESENT = 255; literal SYI$K_ENV_STATUS_UNKNOWN = 254; ! Define the SYI$_ARCH_TYPE return constants literal SYI$K_ARCH_OTHER = 0; ! Unknown SYI$_ARCH_TYPE literal SYI$K_ARCH_VAX = 1; ! VAX Architecture literal SYI$K_ARCH_ALPHA = 2; ! Alpha Architecture literal SYI$K_ARCH_IA64 = 3; ! IA-64 (IPF) Architecture !*** MODULE $SYSEVTDEF *** literal SYSEVT$C_ALL_EVENTS = 1; ! Valid for $Clear_system_event only literal SYSEVT$C_ADD_GALAXY_MEMBER = 2; ! One or more instances have joined the ! Galaxy community literal SYSEVT$C_DEL_GALAXY_MEMBER = 3; ! One or more instances have left the ! Galaxy community literal SYSEVT$C_ADD_ACTIVE_CPU = 4; ! One or more CPUs have become active ! within this VMS instance literal SYSEVT$C_DEL_ACTIVE_CPU = 5; ! One or more CPU have become inactive literal SYSEVT$C_ADD_CONFIG_CPU = 6; ! One or more CPUs are now part of the ! configure set for this instance. literal SYSEVT$C_DEL_CONFIG_CPU = 7; ! One or more CPUS have left this instance literal SYSEVT$C_CONFIG_TREE = 8; ! An update has occurred to the Galaxy config tree literal SYSEVT$C_FASTPATH_CPUS = 9; ! A modification has been made to the system ! parameter, IO_PREFER_CPUS. literal SYSEVT$C_TDF_CHANGE = 10; ! time differential change literal SYSEVT$C_CPU_POWER = 11; ! CPU power transition literal SYSEVT$C_INDICTMENT = 12; ! Component Indictment was performed literal SYSEVT$C_CPU_DEALLOCATE = 13; ! CPU deallocated from running system literal SYSEVT$C_MAX_EVENT = 14; ! maximum event number literal SYSEVT$C_NUM_EVENTS = 13; ! Number of events literal SYSEVT$K_NUM_EVENTS = 13; literal SYSEVT$M_NOTIFY_ONCE = 0; ! indicate one shot request literal SYSEVT$M_REPEAT_NOTIFY = 1; ! Bit 0 represents whether the event notification is a literal SYSEVT$V_REPEAT_NOTIFY = 0; ! one shot deal or should be a repeating notification. !*** MODULE $TBKDEF *** literal TBK$S_tbk_api_param = 152; macro TBK$W_LENGTH = 0,0,16,0 %; ! Input, structure length, by value macro TBK$B_TYPE = 2,0,8,0 %; ! Input, must be zero. macro TBK$B_VERSION = 3,0,8,0 %; ! Input, version of this structure. macro TBK$L_RESERVEDA = 4,0,32,0 %; ! Input, must be zero. macro TBK$Q_FAULTING_PC = 8,0,0,0 %; literal TBK$S_FAULTING_PC = 8; ! Input, pc value, by value macro TBK$Q_FAULTING_FP = 16,0,0,0 %; literal TBK$S_FAULTING_FP = 8; ! Input, frame pointer, by value macro TBK$PQ_FILENAME_DESC = 24,0,0,1 %; literal TBK$S_FILENAME_DESC = 8; ! Output, string descriptor macro TBK$PQ_LIBRARY_MODULE_DESC = 32,0,0,1 %; literal TBK$S_LIBRARY_MODULE_DESC = 8; ! Output, string descriptor macro TBK$PQ_RECORD_NUMBER = 40,0,0,1 %; literal TBK$S_RECORD_NUMBER = 8; ! Output, record number within filename or within text library module macro TBK$PQ_IMAGE_DESC = 48,0,0,1 %; literal TBK$S_IMAGE_DESC = 8; ! Output, string descriptor, image name macro TBK$PQ_MODULE_DESC = 56,0,0,1 %; literal TBK$S_MODULE_DESC = 8; ! Output, string descriptor, module name macro TBK$PQ_ROUTINE_DESC = 64,0,0,1 %; literal TBK$S_ROUTINE_DESC = 8; ! Output, string descriptor, routine name macro TBK$PQ_LISTING_LINENO = 72,0,0,1 %; literal TBK$S_LISTING_LINENO = 8; ! Output, compiler listing line number macro TBK$PQ_REL_PC = 80,0,0,1 %; literal TBK$S_REL_PC = 8; ! Output, relative pc within module or within image macro TBK$PQ_IMAGE_BASE_ADDR = 88,0,0,1 %; literal TBK$S_IMAGE_BASE_ADDR = 8; ! Output, base address of the image which contains the pc value object code, ! by reference macro TBK$PQ_MODULE_BASE_ADDR = 96,0,0,1 %; literal TBK$S_MODULE_BASE_ADDR = 8; ! Output, base address of the module, which contains the pc value object code, ! by reference ! Input, address of a routine, which provides malloc() functionality macro TBK$PQ_MALLOC_RTN = 104,0,0,1 %; literal TBK$S_MALLOC_RTN = 8; ! Input, address of a routine, which provides free() functionality macro TBK$PQ_FREE_RTN = 112,0,0,1 %; literal TBK$S_FREE_RTN = 8; ! Input, address of a quadword, specifying options to be provided by this call macro TBK$PQ_SYMBOLIZE_FLAGS = 120,0,0,1 %; literal TBK$S_SYMBOLIZE_FLAGS = 8; macro TBK$Q_RESERVED0 = 128,0,0,0 %; literal TBK$S_RESERVED0 = 8; ! Reserved by HP macro TBK$Q_RESERVED1 = 136,0,0,0 %; literal TBK$S_RESERVED1 = 8; ! Reserved by HP macro TBK$Q_RESERVED2 = 144,0,0,0 %; literal TBK$S_RESERVED2 = 8; ! Reserved by HP literal tbk$k_length = 152; literal tbk$c_length = 152; literal tbk$k_version = 1; ! ! ************************************************************ ! SYMBOLIZE_FLAGS options ! The following may be applied to the quadword pointed to ! by the SYMBOLIZE_FLAGS field. ! ! EXCEPTION_IS_FAULT values affect line number and ! record number calculation. ! On an API entry, when an exception has occurred in a frame, select the value 1. ! 0=> (Default) Program Adjusts the PC value to correctly determine the line number ! 1=> Program Uses the supplied PC value to determine the line number ! ! ENTRY_TYPE values which affect processing ! 0=> TRACE was entered via the API ENTRY ! 1=> TRACE was entered via the TRACEBACK exception processing ! ! ************************************************************ literal TBK$M_EXCEPTION_IS_FAULT = %X'1'; literal TBK$M_ENTRY_TYPE = %X'100000000'; literal TBK$S_tbk_symbolize_flags = 8; macro TBK$V_EXCEPTION_IS_FAULT = 0,0,1,0 %; macro TBK$V_FILLER1 = 0,1,31,0 %; literal TBK$S_FILLER1 = 31; macro TBK$V_ENTRY_TYPE = 4,0,1,0 %; macro TBK$V_FILLER2 = 4,1,31,0 %; literal TBK$S_FILLER2 = 31; !*** MODULE $TEBDEF *** ! ! Thread Environment Block Definitions ! literal TEB$M_ASTACT = %X'1'; literal TEB$M_ASTEN = %X'2'; literal TEB$S_TEB = 184; macro TEB$PQ_FLINK = 0,0,0,1 %; literal TEB$S_FLINK = 8; ! Forward queue link macro TEB$PQ_BLINK = 8,0,0,1 %; literal TEB$S_BLINK = 8; ! Backward queue link macro TEB$W_SIZE = 16,0,16,0 %; ! Size of TEB, in bytes macro TEB$B_VERSION = 18,0,8,0 %; ! Version number for TEB macro TEB$B_TYPE = 19,0,8,0 %; ! Structure type code for TEB macro TEB$b_reserved_2 = 20,0,32,0 %; literal TEB$s_reserved_2 = 4; ! Reserved to DECthreads macro TEB$Q_SEQUENCE = 24,0,0,0 %; literal TEB$S_SEQUENCE = 8; ! Thread sequence number macro TEB$q_reserved_3 = 32,0,0,0 %; literal TEB$s_reserved_3 = 16; ! Reserved to DECthreads macro TEB$PQ_PER_KT_AREA = 48,0,0,1 %; literal TEB$S_PER_KT_AREA = 8; ! Address of per kernel thread area macro TEB$PQ_STACK_BASE = 56,0,0,1 %; literal TEB$S_STACK_BASE = 8; ! Address of first usable byte in stack macro TEB$PQ_STACK_RESERVE = 64,0,0,1 %; literal TEB$S_STACK_RESERVE = 8; ! Address of first byte in reserve area macro TEB$PQ_STACK_YELLOW = 72,0,0,1 %; literal TEB$S_STACK_YELLOW = 8; ! Address of first byte in yellow area macro TEB$PQ_STACK_GUARD = 80,0,0,1 %; literal TEB$S_STACK_GUARD = 8; ! Address of first byte in guard area macro TEB$Q_STACK_SIZE = 88,0,0,0 %; literal TEB$S_STACK_SIZE = 8; ! Total stack allocation (green+reserve+yellow+red) macro TEB$PQ_TSD_VALUES = 96,0,0,1 %; literal TEB$S_TSD_VALUES = 8; ! Address of thread-specific data array macro TEB$L_TSD_COUNT = 104,0,32,0 %; ! Count of thread-specific data values macro TEB$L_CANCEL_FLAGS = 108,0,32,0 %; ! cancel flags macro TEB$L_CANCEL_COUNT = 112,0,32,0 %; ! CMA alert scope nesting count macro TEB$L_THREAD_FLAGS = 116,0,32,0 %; ! thread flags macro TEB$V_ASTACT = 116,0,1,0 %; ! there's a user mode AST active macro TEB$V_ASTEN = 116,1,1,0 %; ! use mode ASTs are enabled macro TEB$L_THD_ERRNO = 120,0,32,1 %; ! Per-thread errno value macro TEB$l_reserved_4 = 124,0,32,1 %; ! Reserved to DECthreads macro TEB$PQ_STACK_HIWATER = 128,0,0,1 %; literal TEB$S_STACK_HIWATER = 8; ! Lowest known SP address macro TEB$L_HOME_RAD = 136,0,32,1 %; ! Thread's home RAD macro TEB$L_RAD_SAFE = 140,0,32,1 %; ! Scratch: written by Tru64 UNIX macro TEB$PQ_REG_STACK_BASE = 144,0,0,1 %; literal TEB$S_REG_STACK_BASE = 8; ! Current regstack base macro TEB$PQ_REG_STACK_YELLOW = 152,0,0,1 %; literal TEB$S_REG_STACK_YELLOW = 8; ! Current regstack yellow zone macro TEB$PQ_REG_STACK_GUARD = 160,0,0,1 %; literal TEB$S_REG_STACK_GUARD = 8; ! Current regstack guard zone macro TEB$PQ_REG_STACK_SIZE = 168,0,0,1 %; literal TEB$S_REG_STACK_SIZE = 8; ! Size of regstack macro TEB$PQ_REG_STACK_HIWATER = 176,0,0,1 %; literal TEB$S_REG_STACK_HIWATER = 8; ! Highest known bsp literal TEB$K_LENGTH = 184; ! Length of TEB literal TEB$C_LENGTH = 184; ! Length of TEB literal TEB$C_TSD_KEY_SSPI = 1; ! TSD key value reserved for SSPI !*** MODULE $TPADEF *** ! ! TPARSE CONTROL BLOCK. THIS BLOCK IS ONE OF THE ARGUMENTS USED TO CALL TPARSE, ! AND BECOMES THE ARGUMENT LIST TO ACTION ROUTINES. ! literal TPA$K_COUNT0 = 8; ! ZERO LEVEL VALUE IS 8 literal TPA$M_BLANKS = %X'1'; literal TPA$M_ABBREV = %X'2'; literal TPA$M_ABBRFM = %X'4'; literal TPA$M_AMBIG = %X'10000'; literal TPA$K_LENGTH0 = 36; ! LENGTH OF ZERO LEVEL PARAMETER BLOCK literal TPA$C_LENGTH0 = 36; ! LENGTH OF ZERO LEVEL PARAMETER BLOCK literal TPA$S_TPADEF = 36; macro TPA$L_COUNT = 0,0,32,0 %; ! ARGUMENT COUNT (NUMBER OF LONGWORDS) macro TPA$L_OPTIONS = 4,0,32,0 %; ! OPTIONS LONGWORD macro TPA$V_BLANKS = 4,0,1,0 %; ! PROCESS BLANKS AND TABS EXPLICITLY macro TPA$V_ABBREV = 4,1,1,0 %; ! ALLOW MINIMAL ABBREVIATION macro TPA$V_ABBRFM = 4,2,1,0 %; ! ALLOW FIRST MATCH ABBREVIATION macro TPA$V_AMBIG = 4,16,1,0 %; ! AMBIGUOUS KEYWORD AT THIS STATE macro TPA$B_MCOUNT = 7,0,8,0 %; ! MINIMUM ABBREVIATION ON KEYWORDS macro TPA$L_STRINGCNT = 8,0,32,0 %; ! BYTE COUNT OF STRING BEING PARSED macro TPA$L_STRINGPTR = 12,0,32,1 %; ! ADDRESS OF STRING BEING PARSED macro TPA$L_TOKENCNT = 16,0,32,0 %; ! BYTE COUNT OF CURRENT MATCHING TOKEN macro TPA$L_TOKENPTR = 20,0,32,1 %; ! ADDRESS OF MATCHING TOKEN macro TPA$R_NUMBER_OVERLAY = 24,0,0,0 %; macro TPA$R_NUMBER_STRUCT = 24,0,0,0 %; literal TPA$S_NUMBER_STRUCT = 8; macro TPA$L_CHAR = 24,0,32,0 %; ! ASCII CODE OF SINGLE CHARACTER TOKEN macro TPA$B_CHAR = 24,0,8,0 %; ! BYTE FORM OF SINGLE CHAR CELL macro TPA$L_NUMBER = 28,0,32,0 %; ! NUMERIC VALUE OF NUMERIC TOKEN macro TPA$Q_NUMBER = 24,0,0,0 %; literal TPA$S_NUMBER = 8; ! 64-bit NUMERIC VALUE OF NUMERIC TOKEN macro TPA$L_PARAM = 32,0,32,0 %; ! PARAMETER LONGWORD FROM STATE TABLE ! ! TPARSE CONTROL BLOCK. THIS BLOCK IS ONE OF THE ARGUMENTS USED TO CALL TPARSE, ! AND BECOMES THE ARGUMENT LIST TO ACTION ROUTINES. ! literal TPA64$K_COUNT0 = -1; ! ZERO LEVEL VALUE IS -1 literal TPA64$M_BLANKS = %X'1'; literal TPA64$M_ABBREV = %X'2'; literal TPA64$M_ABBRFM = %X'4'; literal TPA64$M_AMBIG = %X'10000'; literal TPA64$K_LENGTH0 = 80; ! LENGTH OF ZERO LEVEL PARAMETER BLOCK literal TPA64$C_LENGTH0 = 80; ! LENGTH OF ZERO LEVEL PARAMETER BLOCK literal TPA64$S_TPA64DEF = 80; macro TPA64$L_COUNT = 0,0,32,0 %; ! ARGUMENT COUNT (NUMBER OF LONGWORDS) macro TPA64$L_OPTIONS = 4,0,32,0 %; ! OPTIONS LONGWORD macro TPA64$V_BLANKS = 4,0,1,0 %; ! PROCESS BLANKS AND TABS EXPLICITLY macro TPA64$V_ABBREV = 4,1,1,0 %; ! ALLOW MINIMAL ABBREVIATION macro TPA64$V_ABBRFM = 4,2,1,0 %; ! ALLOW FIRST MATCH ABBREVIATION macro TPA64$V_AMBIG = 4,16,1,0 %; ! AMBIGUOUS KEYWORD AT THIS STATE macro TPA64$B_MCOUNT = 7,0,8,0 %; ! MINIMUM ABBREVIATION ON KEYWORDS macro TPA64$Q_STRINGDESC = 8,0,0,0 %; literal TPA64$S_STRINGDESC = 8; ! DSC64 first quadword of string being parsed macro TPA64$Q_STRINGCNT = 16,0,0,0 %; literal TPA64$S_STRINGCNT = 8; ! BYTE COUNT OF STRING BEING PARSED macro TPA64$Q_STRINGPTR = 24,0,0,1 %; literal TPA64S_STRINGPTR = 8; ! ADDRESS OF STRING BEING PARSED macro TPA64$Q_TOKENDESC = 32,0,0,0 %; literal TPA64$S_TOKENDESC = 8; ! DSC64 first quadword OF CURRENT MATCHING TOKEN macro TPA64$Q_TOKENCNT = 40,0,0,0 %; literal TPA64$S_TOKENCNT = 8; ! BYTE COUNT OF CURRENT MATCHING TOKEN macro TPA64$Q_TOKENPTR = 48,0,0,1 %; literal TPA64S_TOKENPTR = 8; ! ADDRESS OF MATCHING TOKEN macro TPA64$Q_CHAR = 56,0,0,0 %; literal TPA64$S_CHAR = 8; ! ASCII CODE OF SINGLE CHARACTER TOKEN macro TPA64$B_CHAR = 56,0,8,0 %; ! BYTE FORM OF SINGLE CHAR CELL macro TPA64$Q_NUMBER = 64,0,0,0 %; literal TPA64$S_NUMBER = 8; ! NUMERIC VALUE OF NUMERIC TOKEN macro TPA64$Q_PARAM = 72,0,0,0 %; literal TPA64$S_PARAM = 8; ! PARAMETER LONGWORD FROM STATE TABLE !*** MODULE $TPUDEF IDENT V03-006 *** ! Item list codes for TPU$INITIALIZE literal TPU$_CHAIN = -1; ! Chain entry - Matches other VMS CHAIN entries literal TPU$_ENDLIST = 0; ! End of list [*** Must be zero ***] literal TPU$_OPTIONS = 1; ! Command line options (see below) literal TPU$_FILENAME = 6; ! File name literal TPU$_OTHER_FILENAMES = 7; ! more filenames literal TPU$_FILEIO = 14; ! File I/O routine literal TPU$_CALLUSER = 15; ! CALL_USER routine literal TPU$_JOURNALFILE = 16; ! /JOURNAL= file name literal TPU$_SECTIONFILE = 19; ! /SECTION= file name literal TPU$_OUTPUTFILE = 20; ! /OUTPUT= file name literal TPU$_COMMANDFILE = 21; ! /COMMAND= file name literal TPU$_DISPLAYFILE = 22; ! /DISPLAY= keyword -or- file name literal TPU$_CTRL_C_ROUTINE = 23; ! CTRL/C routine literal TPU$_FREEITEMLIST = 24; ! Free the item list literal TPU$_DEBUGFILE = 25; ! /DEBUG= file name literal TPU$_FILE_PARSE = 26; ! FILE_PARSE routine literal TPU$_FILE_SEARCH = 27; ! FILE_SEARCH routine literal TPU$_TERMINAL_INPUT = 28; ! Terminal input routine literal TPU$_KANJI_DICFILE = 29; ! /KANJI_DICTIONARY= file name literal TPU$_TEXT_LANGUAGE = 30; ! /TEXT_LANGUAGE= language name literal TPU$_DEFAULTSFILE = 31; ! /DEFAULTS= file name literal TPU$_PARENT_WIDGET = 32; ! DECwindows widget to use as our parent literal TPU$_EXTENSION = 33; ! Extension Table Entry literal TPU$_GET_DEFAULT = 34; ! GET_DEFAULT routine literal TPU$_SET_DEFAULT = 35; ! SET_DEFAULT routine literal TPU$_WORKFILE = 36; ! /WORK= file name literal TPU$_APPLICATION_CONTEXT = 37; ! Decwindows application context literal TPU$_CHARACTERSET = 38; ! /CHARACTER_SET= character set name literal TPU$_LANGUAGE = 257; ! LSE's /LANGUAGE= file name literal TPU$_ENVFILE = 258; ! LSE's /ENVIRONMENT= file name literal TPU$_INIT_FILE = 259; ! /INITIALIZATION= file name literal TPU$_START_LINE = 260; ! /START_POSITION= line literal TPU$_START_CHAR = 261; ! /START_POSITION= character literal TPU$_SYSTEM_ENVFILE = 262; ! LSE's /SYSTEM_ENVIROMENT= file name ! Item list codes for file I/O literal TPU$_ACCESS = 4; ! File access type (see below) literal TPU$_FLUSH = 5; ! Flush after Puts literal TPU$_FILESIZE = 7; ! File size literal TPU$_RECORD_ATTR = 8; ! Record attributes literal TPU$_RECORD_FORM = 9; ! Record format literal TPU$_MAXIMIZE_VER = 10; ! Maximize version number literal TPU$_DEFAULTFILE = 17; ! Default file name literal TPU$_RELATEDFILE = 18; ! Related file name literal TPU$_FILE_RECOVERABLE = 19; ! File available upon recovery literal TPU$_TRN_TPT = 20; ! File will allow truncates - journal files only literal TPU$_CREATE_TIME = 257; ! Creation date/time literal TPU$_EOF_BLOCK = 258; ! EOF block literal TPU$_EOF_FFB = 259; ! EOF first free byte ! TPU$_OPTIONS flags literal TPU$M_RECOVER = %X'1'; literal TPU$M_JOURNAL = %X'2'; literal TPU$M_READ = %X'4'; literal TPU$M_SECTION = %X'8'; literal TPU$M_OUTPUT = %X'10'; literal TPU$M_COMMAND = %X'20'; literal TPU$M_DISPLAY = %X'40'; literal TPU$M_CREATE = %X'80'; literal TPU$M_STARTPOS = %X'100'; literal TPU$M_COMMAND_DFLTED = %X'200'; literal TPU$M_DEBUG = %X'400'; literal TPU$M_NOKANJI_DIC = %X'800'; literal TPU$M_TEXT_LANGUAGE = %X'1000'; literal TPU$M_DEFAULTS = %X'2000'; literal TPU$M_NODEFAULTS = %X'4000'; literal TPU$M_ENVIRONMENT = %X'10000'; literal TPU$M_INIT = %X'20000'; literal TPU$M_SYSTEM_ENV = %X'40000'; literal TPU$M_CURRENT_FILE = %X'80000'; literal TPU$M_WRITE = %X'100000'; literal TPU$M_MODIFY = %X'200000'; literal TPU$M_NOMODIFY = %X'400000'; literal TPU$M_NOMAP = %X'800000'; literal TPU$M_WORK = %X'1000000'; literal TPU$M_SEC_LNM_MODE = %X'2000000'; literal TPU$M_CHARSET = %X'4000000'; literal TPU$S_FILL_331_ = 4; macro TPU$L_OPTIONS = 0,0,32,0 %; macro TPU$V_RECOVER = 0,0,1,0 %; ! /RECOVER macro TPU$V_JOURNAL = 0,1,1,0 %; ! /JOURNAL macro TPU$V_READ = 0,2,1,0 %; ! /READ_ONLY macro TPU$V_SECTION = 0,3,1,0 %; ! /SECTION macro TPU$V_OUTPUT = 0,4,1,0 %; ! /OUTPUT macro TPU$V_COMMAND = 0,5,1,0 %; ! /COMMAND macro TPU$V_DISPLAY = 0,6,1,0 %; ! /DISPLAY macro TPU$V_CREATE = 0,7,1,0 %; ! /CREATE macro TPU$V_STARTPOS = 0,8,1,0 %; ! /START_POSITION macro TPU$V_COMMAND_DFLTED = 0,9,1,0 %; ! /COMMAND defaulted macro TPU$V_DEBUG = 0,10,1,0 %; ! /DEBUG macro TPU$V_NOKANJI_DIC = 0,11,1,0 %; ! /KANJI_DICTIONARY macro TPU$V_TEXT_LANGUAGE = 0,12,1,0 %; ! /TEXT_LANGUAGE macro TPU$V_DEFAULTS = 0,13,1,0 %; ! Explicit /DEFAULTS macro TPU$V_NODEFAULTS = 0,14,1,0 %; ! Explicit /NODEFAULTS macro TPU$V_ENVIRONMENT = 0,16,1,0 %; ! LSE's /ENVIRONMENT macro TPU$V_INIT = 0,17,1,0 %; ! /INITIALIZATION macro TPU$V_SYSTEM_ENV = 0,18,1,0 %; ! LSE's /SYSTEM_ENVIRONMENT macro TPU$V_CURRENT_FILE = 0,19,1,0 %; ! LSE's /CURRENT_FILE macro TPU$V_WRITE = 0,20,1,0 %; ! /WRITE macro TPU$V_MODIFY = 0,21,1,0 %; ! Explicit /MODIFY macro TPU$V_NOMODIFY = 0,22,1,0 %; ! Explicit /NOMODFIY macro TPU$V_NOMAP = 0,23,1,0 %; ! Don't map top DECwindows widget macro TPU$V_WORK = 0,24,1,0 %; ! /WORK macro TPU$V_SEC_LNM_MODE = 0,25,1,0 %; ! Section logical name mode macro TPU$V_CHARSET = 0,26,1,0 %; ! /CHARACTER_SET ! Access codes for TPU$_ACCESS literal TPU$K_INPUT = 0; ! Open file for input only literal TPU$K_OUTPUT = 1; ! Open file for output only literal TPU$K_IO = 2; ! Open file for both input and output literal TPU$K_OUTPUT_DDIF = 3; ! Open file for DDIF output only ! Codes for file I/O literal TPU$K_OPEN = 0; ! Open a file literal TPU$K_CLOSE = 1; ! Close a file literal TPU$K_CLOSE_DELETE = 2; ! Close and delete a file literal TPU$K_PUT = 3; ! Put a record to a file literal TPU$K_GET = 4; ! Get a record from a file literal TPU$K_REWIND = 5; ! Rewind the file ! FILE_PARSE and FILE_SEARCH item flags literal TPU$M_NODE = %X'1'; literal TPU$M_DEV = %X'2'; literal TPU$M_DIR = %X'4'; literal TPU$M_NAME = %X'8'; literal TPU$M_TYPE = %X'10'; literal TPU$M_VER = %X'20'; literal TPU$M_HEAD = %X'40'; literal TPU$M_TAIL = %X'80'; literal TPU$M_REPARSE = %X'10000'; literal TPU$S_FILL_333_ = 4; macro TPU$L_ITEM_FLAGS = 0,0,32,0 %; macro TPU$V_NODE = 0,0,1,0 %; ! Return node macro TPU$V_DEV = 0,1,1,0 %; ! Return device macro TPU$V_DIR = 0,2,1,0 %; ! Return directory macro TPU$V_NAME = 0,3,1,0 %; ! Return name macro TPU$V_TYPE = 0,4,1,0 %; ! Return type macro TPU$V_VER = 0,5,1,0 %; ! Return version macro TPU$V_HEAD = 0,6,1,0 %; ! Return head (Ultrix node+dev+dir) macro TPU$V_TAIL = 0,7,1,0 %; ! Return tail (Ultrix name+type+ver) macro TPU$V_REPARSE = 0,16,1,0 %; ! Reparse (FILE_SEARCH only) ! Codes for terminal input literal TPU$K_INITIALIZE_INPUT = 0; ! Initialize terminal input literal TPU$K_TYPEAHEAD_COUNT = 1; ! Fetch typeahead count literal TPU$K_CANCEL_INPUT = 2; ! Cancel outstanding terminal input literal TPU$K_READ_CHARACTER = 3; ! Read a single character literal TPU$K_READ_STRING = 4; ! Read a string of characters literal TPU$K_READ_LINE = 5; ! Read a line with prompting literal TPU$K_TERMINATE_INPUT = 6; ! Terminate terminal input literal TPU$K_READ_TYPEAHEAD_NOECHO = 7; ! Read the typeahead and don't echo ! TPU$CLEANUP flags literal TPU$M_DELETE_JOURNAL = %X'1'; literal TPU$M_DELETE_EXITH = %X'2'; literal TPU$M_DELETE_BUFFERS = %X'4'; literal TPU$M_DELETE_WINDOWS = %X'8'; literal TPU$M_DELETE_CACHE = %X'10'; literal TPU$M_PRUNE_CACHE = %X'20'; literal TPU$M_EXECUTE_FILE = %X'40'; literal TPU$M_EXECUTE_PROC = %X'80'; literal TPU$M_DELETE_CONTEXT = %X'100'; literal TPU$M_RESET_TERMINAL = %X'200'; literal TPU$M_KILL_PROCESSES = %X'400'; literal TPU$M_CLOSE_SECTION = %X'800'; literal TPU$M_DELETE_OTHERS = %X'1000'; literal TPU$M_LAST_TIME = %X'2000'; literal TPU$M_CLOSE_KANJI_DIC = %X'4000'; literal TPU$S_FILL_336_ = 4; macro TPU$L_CLEANUP = 0,0,32,0 %; macro TPU$V_DELETE_JOURNAL = 0,0,1,0 %; ! Delete journal macro TPU$V_DELETE_EXITH = 0,1,1,0 %; ! Delete exit handler macro TPU$V_DELETE_BUFFERS = 0,2,1,0 %; ! Delete buffers macro TPU$V_DELETE_WINDOWS = 0,3,1,0 %; ! Delete windows macro TPU$V_DELETE_CACHE = 0,4,1,0 %; ! Delete caches macro TPU$V_PRUNE_CACHE = 0,5,1,0 %; ! Purge caches macro TPU$V_EXECUTE_FILE = 0,6,1,0 %; ! Re-execute command file macro TPU$V_EXECUTE_PROC = 0,7,1,0 %; ! Re-execute TPU$INIT_PROCEDURE macro TPU$V_DELETE_CONTEXT = 0,8,1,0 %; ! Delete all context macro TPU$V_RESET_TERMINAL = 0,9,1,0 %; ! Reset terminal state macro TPU$V_KILL_PROCESSES = 0,10,1,0 %; ! Delete subprocesses macro TPU$V_CLOSE_SECTION = 0,11,1,0 %; ! Close section file macro TPU$V_DELETE_OTHERS = 0,12,1,0 %; ! Delete miscellaneous macro TPU$V_LAST_TIME = 0,13,1,0 %; ! Last call macro TPU$V_CLOSE_KANJI_DIC = 0,14,1,0 %; ! Close dictionary !*** MODULE $TRMDEF *** ! ! Define symbols for the item list QIO format ! ! Item list type codes literal TRM$_MODIFIERS = 0; literal TRM$_EDITMODE = 1; literal TRM$_TIMEOUT = 2; literal TRM$_TERM = 3; literal TRM$_PROMPT = 4; literal TRM$_INISTRNG = 5; literal TRM$_PICSTRNG = 6; literal TRM$_FILLCHR = 7; literal TRM$_INIOFFSET = 8; literal TRM$_ALTECHSTR = 9; literal TRM$_ESCTRMOVR = 10; literal TRM$_LASTITM = 11; ! must remain the last item literal TRM$_RESERVE12 = 12; literal TRM$_RESERVE13 = 13; literal TRM$_RESERVE14 = 14; literal TRM$_RESERVE15 = 15; literal TRM$_RESERVE16 = 16; literal TRM$_RESERVE17 = 17; literal TRM$_RESERVE18 = 18; literal TRM$_RESERVE19 = 19; literal TRM$_RESERVE20 = 20; literal TRM$_RESERVE21 = 21; literal TRM$_RESERVE22 = 22; literal TRM$_RESERVE23 = 23; literal TRM$_RESERVE24 = 24; literal TRM$_RESERVE25 = 25; literal TRM$_RESERVE26 = 26; literal TRM$_RESERVE27 = 27; literal TRM$_RESERVE28 = 28; literal TRM$_RESERVE29 = 29; literal TRM$_RESERVE30 = 30; literal TRM$_RECLINE = 31; ! Reserved for exclusive use by ! Japanese input method; this code MUST ! remain in the invalid item code range ! ! Editmode type codes ! literal TRM$K_EM_DEFAULT = 0; literal TRM$K_EM_RDVERIFY = 1; literal TRM$M_TM_NOECHO = %X'40'; literal TRM$M_TM_TIMED = %X'80'; literal TRM$M_TM_CVTLOW = %X'100'; literal TRM$M_TM_NOFILTR = %X'200'; literal TRM$M_TM_DSABLMBX = %X'400'; literal TRM$M_TM_PURGE = %X'800'; literal TRM$M_TM_TRMNOECHO = %X'1000'; literal TRM$M_TM_REFRESH = %X'2000'; literal TRM$M_TM_ESCAPE = %X'4000'; literal TRM$M_TM_NOEDIT = %X'8000'; literal TRM$M_TM_NORECALL = %X'10000'; literal TRM$M_TM_R_JUST = %X'20000'; literal TRM$M_TM_AUTO_TAB = %X'40000'; literal TRM$M_TM_ARROWS = %X'80000'; literal TRM$M_TM_TERM_ARROW = %X'100000'; literal TRM$M_TM_TERM_DEL = %X'200000'; literal TRM$M_TM_TOGGLE = %X'400000'; literal TRM$M_TM_OTHERWAY = %X'800000'; literal TRM$M_TM_NOCLEAR = %X'1000000'; literal TRM$M_CV_UPPER = %X'1'; literal TRM$M_CV_LOWER = %X'2'; literal TRM$M_CV_NUMERIC = %X'4'; literal TRM$M_CV_NUMPUNC = %X'8'; literal TRM$M_CV_PRINTABLE = %X'10'; literal TRM$M_CV_ANY = %X'20'; literal TRM$M_ST_FIELD_FULL = %X'1'; literal TRM$M_ST_OTHERWAY = %X'2'; literal TRM$S_TRMDEF = 4; macro TRM$V_TM_NOECHO = 0,6,1,0 %; ! NOECHO macro TRM$V_TM_TIMED = 0,7,1,0 %; ! TIMED macro TRM$V_TM_CVTLOW = 0,8,1,0 %; ! CONVERT LOWER CASE macro TRM$V_TM_NOFILTR = 0,9,1,0 %; ! NO FILTER macro TRM$V_TM_DSABLMBX = 0,10,1,0 %; ! DISABLE MAILBOX macro TRM$V_TM_PURGE = 0,11,1,0 %; ! PURGE TYPEAHEAD macro TRM$V_TM_TRMNOECHO = 0,12,1,0 %; ! TERMINATORS ARE NOT ECHOED macro TRM$V_TM_REFRESH = 0,13,1,0 %; ! Control-R interrupted read n macro TRM$V_TM_ESCAPE = 0,14,1,0 %; ! TERMINATE READ ON ESCAPE SEQUENCE macro TRM$V_TM_NOEDIT = 0,15,1,0 %; ! DISABLE ADVANCED EDITING macro TRM$V_TM_NORECALL = 0,16,1,0 %; ! Disable the recall feature of advanced editing macro TRM$V_TM_R_JUST = 0,17,1,0 %; ! Right justification macro TRM$V_TM_AUTO_TAB = 0,18,1,0 %; ! Auto tab field macro TRM$V_TM_ARROWS = 0,19,1,0 %; ! enable left & right arrow keys macro TRM$V_TM_TERM_ARROW = 0,20,1,0 %; ! pass arrows as terminator macro TRM$V_TM_TERM_DEL = 0,21,1,0 %; ! pass as terminator macro TRM$V_TM_TOGGLE = 0,22,1,0 %; ! allow insert/overstrike toggle macro TRM$V_TM_OTHERWAY = 0,23,1,0 %; ! overstrike R-justify or insert L-justify macro TRM$V_TM_NOCLEAR = 0,24,1,0 %; ! don't replace fill with clear after first non-fill macro TRM$V_CV_UPPER = 0,0,1,0 %; ! upper case macro TRM$V_CV_LOWER = 0,1,1,0 %; ! lower case macro TRM$V_CV_NUMERIC = 0,2,1,0 %; ! numeric (0-9) macro TRM$V_CV_NUMPUNC = 0,3,1,0 %; ! numeric punctuation (+ - .) macro TRM$V_CV_PRINTABLE = 0,4,1,0 %; ! printable character macro TRM$V_CV_ANY = 0,5,1,0 %; ! any character macro TRM$V_ST_FIELD_FULL = 0,0,1,0 %; ! field full condition IOSB+7 contains index to cursor macro TRM$V_ST_OTHERWAY = 0,1,1,0 %; ! left-justify insert OR right-justify overstrike !*** MODULE $TTDEF *** ! ! DEFINE TERMINAL SPECIAL SYMBOLS ! literal TT$C_BAUD_50 = 1; literal TT$C_BAUD_75 = 2; literal TT$C_BAUD_110 = 3; literal TT$C_BAUD_134 = 4; literal TT$C_BAUD_150 = 5; literal TT$C_BAUD_300 = 6; literal TT$C_BAUD_600 = 7; literal TT$C_BAUD_1200 = 8; literal TT$C_BAUD_1800 = 9; literal TT$C_BAUD_2000 = 10; literal TT$C_BAUD_2400 = 11; literal TT$C_BAUD_3600 = 12; literal TT$C_BAUD_4800 = 13; literal TT$C_BAUD_7200 = 14; literal TT$C_BAUD_9600 = 15; literal TT$C_BAUD_19200 = 16; literal TT$C_BAUD_38400 = 17; literal TT$C_BAUD_57600 = 18; literal TT$C_BAUD_76800 = 19; literal TT$C_BAUD_115200 = 20; ! *** MATCHES DCDEF MACRO literal TT$_UNKNOWN = 0; literal TT$_VT05 = 1; ! VT05 literal TT$_VK100 = 2; ! strange terminals literal TT$_VT173 = 3; literal TT$_TQ_BTS = 4; literal TT$_TEK401X = 10; literal TT$_FT1 = 16; ! FOREIGN TERMINAL TYPES literal TT$_FT2 = 17; ! new support also includes literal TT$_FT3 = 18; ! the negative numbers literal TT$_FT4 = 19; literal TT$_FT5 = 20; literal TT$_FT6 = 21; literal TT$_FT7 = 22; literal TT$_FT8 = 23; ! END OF FOREIGN TYPES ! RESERVE REST UP TO 32 FOR EXTENSIONS literal TT$_LAX = 32; literal TT$_LA36 = 32; literal TT$_LA120 = 33; literal TT$_LA34 = 34; literal TT$_LA38 = 35; literal TT$_LA12 = 36; literal TT$_LA100 = 37; literal TT$_LA24 = 37; literal TT$_LQP02 = 38; literal TT$_LA84 = 39; literal TT$_LA210 = 40; literal TT$_LN03 = 41; literal TT$_LN01K = 42; literal TT$_LA80 = 43; literal TT$_VT5X = 64; literal TT$_VT52 = 64; literal TT$_VT55 = 65; literal TT$_VT100 = 96; ! VT100 literal TT$_VT101 = 97; literal TT$_VT102 = 98; literal TT$_VT105 = 99; literal TT$_VT125 = 100; literal TT$_VT131 = 101; literal TT$_VT132 = 102; literal TT$_VT80 = 103; literal TT$_VT200_Series = 110; literal TT$_Pro_Series = 111; literal TT$_VT300_Series = 112; literal TT$_VT400_Series = 113; literal TT$_VT500_Series = 114; ! from 128 on is reserved for foreign terminals and must not be ! used for terminal definitions literal TT$M_PASSALL = %X'1'; literal TT$M_NOECHO = %X'2'; literal TT$M_NOTYPEAHD = %X'4'; literal TT$M_ESCAPE = %X'8'; literal TT$M_HOSTSYNC = %X'10'; literal TT$M_TTSYNC = %X'20'; literal TT$M_SCRIPT = %X'40'; literal TT$M_LOWER = %X'80'; literal TT$M_MECHTAB = %X'100'; literal TT$M_WRAP = %X'200'; literal TT$M_CRFILL = %X'400'; literal TT$M_LFFILL = %X'800'; literal TT$M_SCOPE = %X'1000'; literal TT$M_REMOTE = %X'2000'; literal TT$M_RESERVED = %X'4000'; literal TT$M_EIGHTBIT = %X'8000'; literal TT$M_MBXDSABL = %X'10000'; literal TT$M_NOBRDCST = %X'20000'; literal TT$M_READSYNC = %X'40000'; literal TT$M_MECHFORM = %X'80000'; literal TT$M_HALFDUP = %X'100000'; literal TT$M_MODEM = %X'200000'; literal TT$M_OPER = %X'400000'; literal TT$M_PAGE = %X'FF000000'; literal TT$M_ALTFRAME = %X'10'; literal TT$M_ALTRPAR = %X'20'; literal TT$M_PARITY = %X'40'; literal TT$M_ODD = %X'80'; literal TT$M_TWOSTOP = %X'100'; literal TT$M_DISPARERR = %X'200'; literal TT$M_ALTDISPAR = %X'400'; literal TT$M_BREAK = %X'800'; literal TT$M_DS_DTR = %X'2'; literal TT$M_DS_SECTX = %X'8'; literal TT$M_DS_RTS = %X'10'; literal TT$M_DS_SECREC = %X'8'; literal TT$M_DS_CTS = %X'10'; literal TT$M_DS_CARRIER = %X'20'; literal TT$M_DS_RING = %X'40'; literal TT$M_DS_DSR = %X'80'; literal TT$S_TTDEF = 4; macro TT$V_PASSALL = 0,0,1,0 %; macro TT$V_NOECHO = 0,1,1,0 %; macro TT$V_NOTYPEAHD = 0,2,1,0 %; macro TT$V_ESCAPE = 0,3,1,0 %; macro TT$V_HOSTSYNC = 0,4,1,0 %; macro TT$V_TTSYNC = 0,5,1,0 %; macro TT$V_SCRIPT = 0,6,1,0 %; macro TT$V_LOWER = 0,7,1,0 %; macro TT$V_MECHTAB = 0,8,1,0 %; macro TT$V_WRAP = 0,9,1,0 %; macro TT$V_CRFILL = 0,10,1,0 %; macro TT$V_LFFILL = 0,11,1,0 %; macro TT$V_SCOPE = 0,12,1,0 %; macro TT$V_REMOTE = 0,13,1,0 %; macro TT$V_RESERVED = 0,14,1,0 %; macro TT$V_EIGHTBIT = 0,15,1,0 %; macro TT$V_MBXDSABL = 0,16,1,0 %; macro TT$V_NOBRDCST = 0,17,1,0 %; macro TT$V_READSYNC = 0,18,1,0 %; macro TT$V_MECHFORM = 0,19,1,0 %; macro TT$V_HALFDUP = 0,20,1,0 %; macro TT$V_MODEM = 0,21,1,0 %; macro TT$V_OPER = 0,22,1,0 %; macro TT$V_PAGE = 0,24,8,0 %; literal TT$S_PAGE = 8; macro TT$V_ALTFRAME = 0,4,1,0 %; macro TT$V_ALTRPAR = 0,5,1,0 %; macro TT$V_PARITY = 0,6,1,0 %; macro TT$V_ODD = 0,7,1,0 %; macro TT$V_TWOSTOP = 0,8,1,0 %; macro TT$V_DISPARERR = 0,9,1,0 %; macro TT$V_ALTDISPAR = 0,10,1,0 %; macro TT$V_BREAK = 0,11,1,0 %; macro TT$V_DS_DTR = 0,1,1,0 %; ! OUTPUT MODEM CONTROL macro TT$V_DS_SECTX = 0,3,1,0 %; macro TT$V_DS_RTS = 0,4,1,0 %; macro TT$V_DS_SECREC = 0,3,1,0 %; macro TT$V_DS_CTS = 0,4,1,0 %; macro TT$V_DS_CARRIER = 0,5,1,0 %; macro TT$V_DS_RING = 0,6,1,0 %; macro TT$V_DS_DSR = 0,7,1,0 %; !*** MODULE $TT2DEF *** literal TT2$M_LOCALECHO = %X'1'; literal TT2$M_AUTOBAUD = %X'2'; literal TT2$M_HANGUP = %X'4'; literal TT2$M_MODHANGUP = %X'8'; literal TT2$M_BRDCSTMBX = %X'10'; literal TT2$M_XON = %X'20'; literal TT2$M_DMA = %X'40'; literal TT2$M_ALTYPEAHD = %X'80'; literal TT2$M_SETSPEED = %X'100'; literal TT2$M_DCL_MAILBX = %X'200'; literal TT2$M_DECCRT4 = %X'400'; literal TT2$M_COMMSYNC = %X'800'; literal TT2$M_EDITING = %X'1000'; literal TT2$M_INSERT = %X'2000'; literal TT2$M_FALLBACK = %X'4000'; literal TT2$M_DIALUP = %X'8000'; literal TT2$M_SECURE = %X'10000'; literal TT2$M_DISCONNECT = %X'20000'; literal TT2$M_PASTHRU = %X'40000'; literal TT2$M_SYSPWD = %X'80000'; literal TT2$M_SIXEL = %X'100000'; literal TT2$M_DRCS = %X'200000'; literal TT2$M_PRINTER = %X'400000'; literal TT2$M_APP_KEYPAD = %X'800000'; literal TT2$M_ANSICRT = %X'1000000'; literal TT2$M_REGIS = %X'2000000'; literal TT2$M_BLOCK = %X'4000000'; literal TT2$M_AVO = %X'8000000'; literal TT2$M_EDIT = %X'10000000'; literal TT2$M_DECCRT = %X'20000000'; literal TT2$M_DECCRT2 = %X'40000000'; literal TT2$M_DECCRT3 = %X'80000000'; literal TT2$S_TT2DEF = 4; macro TT2$V_LOCALECHO = 0,0,1,0 %; macro TT2$V_AUTOBAUD = 0,1,1,0 %; macro TT2$V_HANGUP = 0,2,1,0 %; macro TT2$V_MODHANGUP = 0,3,1,0 %; macro TT2$V_BRDCSTMBX = 0,4,1,0 %; macro TT2$V_XON = 0,5,1,0 %; macro TT2$V_DMA = 0,6,1,0 %; macro TT2$V_ALTYPEAHD = 0,7,1,0 %; macro TT2$V_SETSPEED = 0,8,1,0 %; macro TT2$V_DCL_MAILBX = 0,9,1,0 %; ! TEMP DEFINITIONS FOR DCL SPAWN macro TT2$V_DECCRT4 = 0,10,1,0 %; ! Level 4 terminals (was OUTBAND-obsolete) macro TT2$V_COMMSYNC = 0,11,1,0 %; ! (was DCL_CTRLC-obsolete) macro TT2$V_EDITING = 0,12,1,0 %; ! enable advanced editing macro TT2$V_INSERT = 0,13,1,0 %; ! INPUT EDITING INSTER DEFAULT macro TT2$V_FALLBACK = 0,14,1,0 %; ! USE MULTINATIONAL FALLBACK macro TT2$V_DIALUP = 0,15,1,0 %; ! TERMINAL IS CONNECTED TO DIALUP macro TT2$V_SECURE = 0,16,1,0 %; ! RECOGNIZE SECURE SERVER macro TT2$V_DISCONNECT = 0,17,1,0 %; ! TERMINAL CAN BE DISCONNECTED macro TT2$V_PASTHRU = 0,18,1,0 %; ! passall with flowcontrol macro TT2$V_SYSPWD = 0,19,1,0 %; ! System password required macro TT2$V_SIXEL = 0,20,1,0 %; ! SIXEL SUPPORTED macro TT2$V_DRCS = 0,21,1,0 %; ! macro TT2$V_PRINTER = 0,22,1,0 %; ! PRINTER PORT AVAILABLE macro TT2$V_APP_KEYPAD = 0,23,1,0 %; ! Keypad in applicationis mode macro TT2$V_ANSICRT = 0,24,1,0 %; ! ANSI, REGIS, BLOCK and AVO macro TT2$V_REGIS = 0,25,1,0 %; ! must be contiguous for SCRPKG. macro TT2$V_BLOCK = 0,26,1,0 %; macro TT2$V_AVO = 0,27,1,0 %; macro TT2$V_EDIT = 0,28,1,0 %; macro TT2$V_DECCRT = 0,29,1,0 %; macro TT2$V_DECCRT2 = 0,30,1,0 %; ! DECCRT level 2 macro TT2$V_DECCRT3 = 0,31,1,0 %; ! DECCRT level 3 !*** MODULE $TT3DEF *** literal TT3$M_POSIX = %X'1'; literal TT3$M_ANSI_COLOR = %X'2'; literal TT3$M_DECCRT5 = %X'4'; literal TT3$M_RTS_FLOW = %X'8'; literal TT3$M_BS = %X'10'; literal TT3$S_TT3DEF = 4; macro TT3$V_POSIX = 0,0,1,0 %; macro TT3$V_ANSI_COLOR = 0,1,1,0 %; macro TT3$V_DECCRT5 = 0,2,1,0 %; macro TT3$V_RTS_FLOW = 0,3,1,0 %; macro TT3$V_BS = 0,4,1,0 %; macro TT3$v_tt_spare = 0,5,11,0 %; literal TT3$s_tt_spare = 11; macro TT3$V_AS_RESERVED = 0,16,16,0 %; literal TT3$S_AS_RESERVED = 16; !*** MODULE $TTCDEF *** literal TTC$M_RESERVED = %X'FF'; literal TTC$M_KANA = %X'100'; literal TTC$M_KANJI = %X'200'; literal TTC$M_HANZI = %X'400'; literal TTC$M_HANGUL = %X'800'; literal TTC$M_HANYU = %X'1000'; literal TTC$M_THAI = %X'2000'; literal TTC$S_TTCDEF = 2; macro TTC$V_RESERVED = 0,0,8,0 %; literal TTC$S_RESERVED = 8; ! First byte is reserved macro TTC$V_KANA = 0,8,1,0 %; ! Katakana macro TTC$V_KANJI = 0,9,1,0 %; ! Kanji macro TTC$V_HANZI = 0,10,1,0 %; ! Hanzi macro TTC$V_HANGUL = 0,11,1,0 %; ! Hangul macro TTC$V_HANYU = 0,12,1,0 %; ! Hanyu macro TTC$V_THAI = 0,13,1,0 %; ! Thai !*** MODULE $TTYDPORTDEF *** literal TTY$M_NO_AUTO_XON = %X'1'; literal TTY$M_RESERVED = %X'FE'; literal TTY$M_PARITY_ERROR = %X'100'; literal TTY$M_USE_WINDOW_CONSOLE = %X'200'; literal TTY$M_LOAD_INPUT_EXTENSION = %X'400'; literal TTY$M_IA64_POLLED_CONSOLE = %X'800'; literal TTY$M_IA64_CONSOLE_NOTIME = %X'1000'; literal TTY$S_TTYDPORTDEF = 2; macro TTY$V_NO_AUTO_XON = 0,0,1,0 %; ! Disable automatic Xon/Xoff macro TTY$V_RESERVED = 0,1,7,0 %; literal TTY$S_RESERVED = 7; ! Next 7 bits are reserved macro TTY$V_PARITY_ERROR = 0,8,1,0 %; ! Drop parity error chars macro TTY$V_USE_WINDOW_CONSOLE = 0,9,1,0 %; ! Console option macro TTY$V_LOAD_INPUT_EXTENSION = 0,10,1,0 %; ! Console option macro TTY$V_IA64_POLLED_CONSOLE = 0,11,1,0 %; ! IA64 flag to force console to poll macro TTY$V_IA64_CONSOLE_NOTIME = 0,12,1,0 %; ! IA64 console disable output timer flag !*** MODULE $UAF070DEF *** ! ++ ! User authorization file format ! Note: With the exception of the username and account name, ! all strings are blank padded counted strings. Username and ! account name are uncounted, blank padded. ! -- literal UAF070$C_USER_ID = 1; ! main user ID record literal UAF070$C_VERSION1 = 1; ! this version literal UAF070$C_KEYED_PART = 52; ! ISAM keys come this far literal UAF070$C_MAX_PWD_LENGTH = 32; ! maximum plaintext password length literal UAF070$K_MAX_PWD_LENGTH = 32; ! maximum plaintext password length literal UAF070$C_AD_II = 0; ! AUTODIN-II 32 bit crc code literal UAF070$C_PURDY = 1; ! Purdy polynomial over salted input literal UAF070$C_PURDY_V = 2; ! Purdy polynomial + variable length username literal UAF070$C_PURDY_S = 3; ! PURDY_V folded into password length literal UAF070$K_CURRENT_ALGORITHM = 3; ! current DEC algorithm number literal UAF070$C_CURRENT_ALGORITHM = 3; ! current DEC algorithm number literal UAF070$C_PREFERED_ALGORITHM = 127; literal UAF070$K_PREFERED_ALGORITHM = 127; literal UAF070$C_PREFERRED_ALGORITHM = 127; ! preferred hash algorithm - use current literal UAF070$K_PREFERRED_ALGORITHM = 127; ! preferred hash algorithm - use current literal UAF070$C_CUST_ALGORITHM = 128; ! customer algorithm division literal UAF070$K_CUST_ALGORITHM = 128; ! customer algorithm division literal UAF070$K_FIXED = 644; ! length of fixed portion literal UAF070$C_FIXED = 644; ! length of fixed portion literal UAF070$K_LENGTH = 1412; literal UAF070$C_LENGTH = 1412; literal UAF070$S_UAF070DEF = 1412; ! Old size name, synonym for UAF070$S_UAF070 literal UAF070$S_UAF070 = 1412; macro UAF070$B_RTYPE = 0,0,8,0 %; ! UAF070 record type macro UAF070$B_VERSION = 1,0,8,0 %; ! UAF070 format version macro UAF070$W_USRDATOFF = 2,0,16,0 %; ! offset of counted string of user data macro UAF070$T_USERNAME = 4,0,0,0 %; literal UAF070$S_USERNAME = 32; ! username macro UAF070$T_USERNAME_TAG = 35,0,8,0 %; ! tag to differentiate records macro UAF070$L_UIC = 36,0,32,0 %; ! user ID code macro UAF070$W_MEM = 36,0,16,0 %; ! member subfield macro UAF070$W_GRP = 38,0,16,0 %; ! group subfield macro UAF070$L_SUB_ID = 40,0,32,0 %; ! user sub-identifier macro UAF070$Q_PARENT_ID = 44,0,0,0 %; literal UAF070$S_PARENT_ID = 8; ! identifier of owner of this account macro UAF070$T_ACCOUNT = 52,0,0,0 %; literal UAF070$S_ACCOUNT = 32; ! account name macro UAF070$T_OWNER = 84,0,0,0 %; literal UAF070$S_OWNER = 32; ! owner's name macro UAF070$T_DEFDEV = 116,0,0,0 %; literal UAF070$S_DEFDEV = 32; ! default device macro UAF070$T_DEFDIR = 148,0,0,0 %; literal UAF070$S_DEFDIR = 64; ! default directory macro UAF070$T_LGICMD = 212,0,0,0 %; literal UAF070$S_LGICMD = 64; ! login command file macro UAF070$T_DEFCLI = 276,0,0,0 %; literal UAF070$S_DEFCLI = 32; ! default command interpreter macro UAF070$T_CLITABLES = 308,0,0,0 %; literal UAF070$S_CLITABLES = 32; ! user CLI tables macro UAF070$Q_PWD = 340,0,0,0 %; literal UAF070$S_PWD = 8; ! hashed password macro UAF070$L_PWD = 340,0,32,0 %; ! 32 bit subfield macro UAF070$Q_PWD2 = 348,0,0,0 %; literal UAF070$S_PWD2 = 8; ! second password macro UAF070$W_LOGFAILS = 356,0,16,0 %; ! count of login failures macro UAF070$W_SALT = 358,0,16,0 %; ! random password salt macro UAF070$B_ENCRYPT = 360,0,8,0 %; ! primary password hash algorithm ! known hash algorithm indices macro UAF070$B_ENCRYPT2 = 361,0,8,0 %; ! secondary password hash algorithm macro UAF070$B_PWD_LENGTH = 362,0,8,0 %; ! minimum password length macro UAF070$Q_EXPIRATION = 364,0,0,0 %; literal UAF070$S_EXPIRATION = 8; ! expiration date for account macro UAF070$Q_PWD_LIFETIME = 372,0,0,0 %; literal UAF070$S_PWD_LIFETIME = 8; ! password lifetime macro UAF070$Q_PWD_DATE = 380,0,0,0 %; literal UAF070$S_PWD_DATE = 8; ! date of password change macro UAF070$Q_PWD2_DATE = 388,0,0,0 %; literal UAF070$S_PWD2_DATE = 8; ! date of 2nd password change macro UAF070$Q_LASTLOGIN_I = 396,0,0,0 %; literal UAF070$S_LASTLOGIN_I = 8; ! date of last interactive login macro UAF070$Q_LASTLOGIN_N = 404,0,0,0 %; literal UAF070$S_LASTLOGIN_N = 8; ! date of last non-interactive login macro UAF070$Q_PRIV = 412,0,0,0 %; literal UAF070$S_PRIV = 8; ! process privilege vector macro UAF070$Q_DEF_PRIV = 420,0,0,0 %; literal UAF070$S_DEF_PRIV = 8; ! default process privileges macro UAF070$R_MIN_CLASS = 428,0,0,0 %; literal UAF070$S_MIN_CLASS = 20; ! minimum security class macro UAF070$R_MAX_CLASS = 448,0,0,0 %; literal UAF070$S_MAX_CLASS = 20; ! maximum security class macro UAF070$L_FLAGS = 468,0,32,0 %; ! user flags longword macro UAF070$V_DISCTLY = 468,0,1,0 %; ! no user control-y macro UAF070$V_DEFCLI = 468,1,1,0 %; ! only allow user default CLI macro UAF070$V_LOCKPWD = 468,2,1,0 %; ! disable SET PASSWORD command macro UAF070$V_RESTRICTED = 468,3,1,0 %; ! restricted account (pre-V5.2 CAPTIVE) macro UAF070$V_DISACNT = 468,4,1,0 %; ! no interactive login macro UAF070$V_DISWELCOM = 468,5,1,0 %; ! skip welcome message macro UAF070$V_DISMAIL = 468,6,1,0 %; ! skip new mail message macro UAF070$V_NOMAIL = 468,7,1,0 %; ! disable mail delivery macro UAF070$V_GENPWD = 468,8,1,0 %; ! passwords must be generated macro UAF070$V_PWD_EXPIRED = 468,9,1,0 %; ! password has expired macro UAF070$V_PWD2_EXPIRED = 468,10,1,0 %; ! 2nd password has expired macro UAF070$V_AUDIT = 468,11,1,0 %; ! audit all actions macro UAF070$V_DISREPORT = 468,12,1,0 %; ! skip last login messages macro UAF070$V_DISRECONNECT = 468,13,1,0 %; ! inhibit reconnections macro UAF070$V_AUTOLOGIN = 468,14,1,0 %; ! auto-login only macro UAF070$V_DISFORCE_PWD_CHANGE = 468,15,1,0 %; ! disable forced password change macro UAF070$V_CAPTIVE = 468,16,1,0 %; ! captive account (no overrides) macro UAF070$V_DISIMAGE = 468,17,1,0 %; ! disable arbitrary image activation macro UAF070$V_DISPWDDIC = 468,18,1,0 %; ! disable password dictionary search macro UAF070$V_DISPWDHIS = 468,19,1,0 %; ! disable password history search macro UAF070$V_DEFCLSVAL = 468,20,1,0 %; ! default classification is valid macro UAF070$B_NETWORK_ACCESS_P = 472,0,24,0 %; literal UAF070$S_NETWORK_ACCESS_P = 3; ! hourly network access, primary macro UAF070$B_NETWORK_ACCESS_S = 475,0,24,0 %; literal UAF070$S_NETWORK_ACCESS_S = 3; ! hourly network access, secondary macro UAF070$B_BATCH_ACCESS_P = 478,0,24,0 %; literal UAF070$S_BATCH_ACCESS_P = 3; ! hourly batch access, primary macro UAF070$B_BATCH_ACCESS_S = 481,0,24,0 %; literal UAF070$S_BATCH_ACCESS_S = 3; ! hourly batch access, secondary macro UAF070$B_LOCAL_ACCESS_P = 484,0,24,0 %; literal UAF070$S_LOCAL_ACCESS_P = 3; ! hourly local access, primary macro UAF070$B_LOCAL_ACCESS_S = 487,0,24,0 %; literal UAF070$S_LOCAL_ACCESS_S = 3; ! hourly local access, secondary macro UAF070$B_DIALUP_ACCESS_P = 490,0,24,0 %; literal UAF070$S_DIALUP_ACCESS_P = 3; ! hourly dialup access, primary macro UAF070$B_DIALUP_ACCESS_S = 493,0,24,0 %; literal UAF070$S_DIALUP_ACCESS_S = 3; ! hourly dialup access, secondary macro UAF070$B_REMOTE_ACCESS_P = 496,0,24,0 %; literal UAF070$S_REMOTE_ACCESS_P = 3; ! hourly remote access, primary macro UAF070$B_REMOTE_ACCESS_S = 499,0,24,0 %; literal UAF070$S_REMOTE_ACCESS_S = 3; ! hourly remote access, secondary macro UAF070$B_PRIMEDAYS = 514,0,8,0 %; ! bits representing primary days macro UAF070$V_MONDAY = 514,0,1,0 %; ! bit clear means this is a primary day macro UAF070$V_TUESDAY = 514,1,1,0 %; ! bit set means this is an off day macro UAF070$V_WEDNESDAY = 514,2,1,0 %; macro UAF070$V_THURSDAY = 514,3,1,0 %; macro UAF070$V_FRIDAY = 514,4,1,0 %; macro UAF070$V_SATURDAY = 514,5,1,0 %; macro UAF070$V_SUNDAY = 514,6,1,0 %; macro UAF070$B_PRI = 516,0,8,0 %; ! base process priority macro UAF070$B_QUEPRI = 517,0,8,0 %; ! maximum job queuing priority macro UAF070$W_MAXJOBS = 518,0,16,0 %; ! maximum jobs for UIC allowed ! 0 means no limit macro UAF070$W_MAXACCTJOBS = 520,0,16,0 %; ! maximum jobs for account allowed ! 0 means no limit macro UAF070$W_MAXDETACH = 522,0,16,0 %; ! maximum detached processes for UIC ! 0 means no limit macro UAF070$W_PRCCNT = 524,0,16,0 %; ! subprocess creation limit macro UAF070$W_BIOLM = 526,0,16,0 %; ! buffered I/O limit macro UAF070$W_DIOLM = 528,0,16,0 %; ! direct I/O limit macro UAF070$W_TQCNT = 530,0,16,0 %; ! timer queue entry limit macro UAF070$W_ASTLM = 532,0,16,0 %; ! AST queue limit macro UAF070$W_ENQLM = 534,0,16,0 %; ! enqueue limit macro UAF070$W_FILLM = 536,0,16,0 %; ! open file limit macro UAF070$W_SHRFILLM = 538,0,16,0 %; ! shared file limit macro UAF070$L_WSQUOTA = 540,0,32,0 %; ! working set size quota macro UAF070$L_DFWSCNT = 544,0,32,0 %; ! default working set size macro UAF070$L_WSEXTENT = 548,0,32,0 %; ! working set size limit macro UAF070$L_PGFLQUOTA = 552,0,32,0 %; ! page file quota macro UAF070$L_CPUTIM = 556,0,32,0 %; ! CPU time quota macro UAF070$L_BYTLM = 560,0,32,0 %; ! buffered I/O byte count limit macro UAF070$L_PBYTLM = 564,0,32,0 %; ! paged buffer I/O byte count limit macro UAF070$L_JTQUOTA = 568,0,32,0 %; ! job-wide logical name table creation quota macro UAF070$W_PROXY_LIM = 572,0,16,0 %; ! number of proxies user can grant macro UAF070$W_PROXIES = 574,0,16,0 %; ! number of proxies granted macro UAF070$W_ACCOUNT_LIM = 576,0,16,0 %; ! number of sub-accounts allowed macro UAF070$W_ACCOUNTS = 578,0,16,0 %; ! number of sub-accounts in use macro UAF070$R_DEF_CLASS = 580,0,0,0 %; literal UAF070$S_DEF_CLASS = 20; ! default security class !*** MODULE $UAIDEF *** ! + ! ! Get User Authorization Information Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! so that users will not have to relink. ! ! - literal UAI$_RTYPE = 1; ! UAF record type literal UAI$_VERSION = 2; ! UAF format version literal UAI$_USRDATOFF = 3; ! offset of counted string of user data literal UAI$_USERNAME = 4; ! username literal UAI$_USERNAME_TAG = 5; ! tag to differentiate records literal UAI$_UIC = 6; ! user ID code literal UAI$_MEM = 7; ! member subfield literal UAI$_GRP = 8; ! group subfield literal UAI$_SUB_ID = 9; ! user sub-identifier literal UAI$_PARENT_ID = 10; ! identifier of owner of this account literal UAI$_ACCOUNT = 11; ! account name literal UAI$_OWNER = 12; ! owner's name literal UAI$_DEFDEV = 13; ! default device literal UAI$_DEFDIR = 14; ! default directory literal UAI$_LGICMD = 15; ! login command file literal UAI$_DEFCLI = 16; ! default command interpreter literal UAI$_CLITABLES = 17; ! user CLI tables literal UAI$_PWD = 18; ! hashed password literal UAI$_PWD2 = 19; ! second password literal UAI$_LOGFAILS = 20; ! count of login failures literal UAI$_SALT = 21; ! random password salt literal UAI$_ENCRYPT = 22; ! primary password hash algorithm literal UAI$_ENCRYPT2 = 23; ! secondary password hash algorithm literal UAI$_PWD_LENGTH = 24; ! minimum password length literal UAI$_EXPIRATION = 25; ! expiration date for account literal UAI$_PWD_LIFETIME = 26; ! password lifetime literal UAI$_PWD_DATE = 27; ! date of password change literal UAI$_PWD2_DATE = 28; ! date of 2nd password change literal UAI$_LASTLOGIN_I = 29; ! date of last interactive login literal UAI$_LASTLOGIN_N = 30; ! date of last non-interactive login literal UAI$_PRIV = 31; ! process privilege vector literal UAI$_DEF_PRIV = 32; ! default process privileges literal UAI$_MIN_CLASS = 33; ! minimum security class literal UAI$_MAX_CLASS = 34; ! maximum security class literal UAI$_FLAGS = 35; ! user flags longword literal UAI$_NETWORK_ACCESS_P = 36; ! hourly network access, primary literal UAI$_NETWORK_ACCESS_S = 37; ! hourly network access, secondary literal UAI$_BATCH_ACCESS_P = 38; ! hourly batch access, primary literal UAI$_BATCH_ACCESS_S = 39; ! hourly batch access, secondary literal UAI$_LOCAL_ACCESS_P = 40; ! hourly local access, primary literal UAI$_LOCAL_ACCESS_S = 41; ! hourly local access, secondary literal UAI$_DIALUP_ACCESS_P = 42; ! hourly dialup access, primary literal UAI$_DIALUP_ACCESS_S = 43; ! hourly dialup access, secondary literal UAI$_REMOTE_ACCESS_P = 44; ! hourly remote access, primary literal UAI$_REMOTE_ACCESS_S = 45; ! hourly remote access, secondary literal UAI$_PRIMEDAYS = 46; ! bits representing primary days literal UAI$_PRI = 47; ! base process priority literal UAI$_QUEPRI = 48; ! maximum job queuing priority literal UAI$_MAXJOBS = 49; ! maximum jobs for UIC allowed literal UAI$_MAXACCTJOBS = 50; ! maximum jobs for account allowed literal UAI$_MAXDETACH = 51; ! maximum detached processes for UIC literal UAI$_PRCCNT = 52; ! subprocess creation limit literal UAI$_BIOLM = 53; ! buffered I/O limit literal UAI$_DIOLM = 54; ! direct I/O limit literal UAI$_TQCNT = 55; ! timer queue entry limit literal UAI$_ASTLM = 56; ! AST queue limit literal UAI$_ENQLM = 57; ! enqueue limit literal UAI$_FILLM = 58; ! open file limit literal UAI$_SHRFILLM = 59; ! shared file limit literal UAI$_WSQUOTA = 60; ! working set size quota literal UAI$_DFWSCNT = 61; ! default working set size literal UAI$_WSEXTENT = 62; ! working set size limit literal UAI$_PGFLQUOTA = 63; ! page file quota literal UAI$_CPUTIM = 64; ! CPU time quota literal UAI$_BYTLM = 65; ! buffered I/O byte count limit literal UAI$_PBYTLM = 66; ! paged buffer I/O byte count limit literal UAI$_JTQUOTA = 67; ! job-wide logical name table creation quota literal UAI$_PROXY_LIM = 68; ! number of proxies user can grant literal UAI$_PROXIES = 69; ! number of proxies granted literal UAI$_ACCOUNT_LIM = 70; ! number of sub-accounts allowed literal UAI$_ACCOUNTS = 71; ! number of sub-accounts in use literal UAI$_USER_DATA = 72; ! user data area literal UAI$_PASSWORD = 73; ! plaintext primary password literal UAI$_PASSWORD2 = 74; ! plaintext secondary password literal UAI$_DEF_CLASS = 75; ! default security classification literal UAI$_AUDIT_FLAGS = 76; ! passed from $SETUAI to UAF$SECURITY_AUDIT ! ADD ITEM-CODES BEFORE THIS COMMENT literal UAI$_MAX_ITEM_CODE = 77; ! maximum legal item code + 1 ! Add UAI$_DEFCHARGE_CODE as an alias for UAI$_ACCOUNT. literal UAI$_DEFCHARGE_CODE = 11; ! default charge code (=account) ! Define the various password hash algorithms. literal UAI$C_AD_II = 0; ! AUTODIN-II 32 bit crc code literal UAI$C_PURDY = 1; ! Purdy polynomial over salted input literal UAI$C_PURDY_V = 2; ! Purdy polynomial + variable length username literal UAI$C_PURDY_S = 3; ! PURDY_V folded into password length literal UAI$C_PREFERED_ALGORITHM = 127; literal UAI$C_PREFERRED_ALGORITHM = 127; ! preferred hash algorithm - use current literal UAI$C_CUST_ALGORITHM = 128; ! customer algorithm division literal UAI$C_MAX_PWD_LENGTH = 32; ! maximum plaintext password ! Define the flags for the user flags longword. literal UAI$M_DISCTLY = %X'1'; literal UAI$M_DEFCLI = %X'2'; literal UAI$M_LOCKPWD = %X'4'; literal UAI$M_RESTRICTED = %X'8'; literal UAI$M_DISACNT = %X'10'; literal UAI$M_DISWELCOM = %X'20'; literal UAI$M_DISMAIL = %X'40'; literal UAI$M_NOMAIL = %X'80'; literal UAI$M_GENPWD = %X'100'; literal UAI$M_PWD_EXPIRED = %X'200'; literal UAI$M_PWD2_EXPIRED = %X'400'; literal UAI$M_AUDIT = %X'800'; literal UAI$M_DISREPORT = %X'1000'; literal UAI$M_DISRECONNECT = %X'2000'; literal UAI$M_AUTOLOGIN = %X'4000'; literal UAI$M_DISFORCE_PWD_CHANGE = %X'8000'; literal UAI$M_CAPTIVE = %X'10000'; literal UAI$M_DISIMAGE = %X'20000'; literal UAI$M_DISPWDDIC = %X'40000'; literal UAI$M_DISPWDHIS = %X'80000'; literal UAI$M_DEFCLSVAL = %X'100000'; literal UAI$M_EXTAUTH = %X'200000'; literal UAI$M_MIGRATEPWD = %X'400000'; literal UAI$M_VMSAUTH = %X'800000'; literal UAI$M_DISPWDSYNCH = %X'1000000'; literal UAI$M_PWDMIX = %X'2000000'; literal UAI$S_FLAGS = 4; ! user flags longword macro UAI$V_DISCTLY = 0,0,1,0 %; ! no user control-y macro UAI$V_DEFCLI = 0,1,1,0 %; ! only allow user default CLI macro UAI$V_LOCKPWD = 0,2,1,0 %; ! disable SET PASSWORD command macro UAI$V_RESTRICTED = 0,3,1,0 %; ! restricted account (pre-V5.2 CAPTIVE) macro UAI$V_DISACNT = 0,4,1,0 %; ! no interactive login macro UAI$V_DISWELCOM = 0,5,1,0 %; ! skip welcome message macro UAI$V_DISMAIL = 0,6,1,0 %; ! skip new mail message macro UAI$V_NOMAIL = 0,7,1,0 %; ! disable mail delivery macro UAI$V_GENPWD = 0,8,1,0 %; ! passwords must be generated macro UAI$V_PWD_EXPIRED = 0,9,1,0 %; ! password has expired macro UAI$V_PWD2_EXPIRED = 0,10,1,0 %; ! 2nd password has expired macro UAI$V_AUDIT = 0,11,1,0 %; ! audit all actions macro UAI$V_DISREPORT = 0,12,1,0 %; ! skip last login messages macro UAI$V_DISRECONNECT = 0,13,1,0 %; ! inhibit reconnections macro UAI$V_AUTOLOGIN = 0,14,1,0 %; ! auto-login only macro UAI$V_DISFORCE_PWD_CHANGE = 0,15,1,0 %; ! disable forced password change macro UAI$V_CAPTIVE = 0,16,1,0 %; ! captive account (no overrides) macro UAI$V_DISIMAGE = 0,17,1,0 %; ! disable arbitrary image activation macro UAI$V_DISPWDDIC = 0,18,1,0 %; ! disable password dictionary filter macro UAI$V_DISPWDHIS = 0,19,1,0 %; ! disable password history search macro UAI$V_DEFCLSVAL = 0,20,1,0 %; ! default classification is valid macro UAI$V_EXTAUTH = 0,21,1,0 %; ! external authentication enabled macro UAI$V_MIGRATEPWD = 0,22,1,0 %; ! migrate UAF pwd to external auth macro UAI$V_VMSAUTH = 0,23,1,0 %; ! VMS alternative is allowed macro UAI$V_DISPWDSYNCH = 0,24,1,0 %; ! no ACME password sharing macro UAI$V_PWDMIX = 0,25,1,0 %; ! enable mixed-case passwords ! Define the flags representing primary days. literal UAI$S_PRIMEDAYS = 1; ! bits representing primary days macro UAI$V_MONDAY = 0,0,1,0 %; ! bit clear means this is a primary day macro UAI$V_TUESDAY = 0,1,1,0 %; ! bit set means this is an off day macro UAI$V_WEDNESDAY = 0,2,1,0 %; macro UAI$V_THURSDAY = 0,3,1,0 %; macro UAI$V_FRIDAY = 0,4,1,0 %; macro UAI$V_SATURDAY = 0,5,1,0 %; macro UAI$V_SUNDAY = 0,6,1,0 %; !*** MODULE $UICDEF *** ! + ! ! Format of UIC - user identification code. May be either two part ! group / member identifier, or a single uniform identifier. ! ! The binary layout of the id space is as follows: ! ! ---------- Bit -------- ! 31 30 29 28 27 26 Description ! === === === === === === ======================================== ! ! 0 0 - - - - UIC form (group/member) ! 0 1 - - - - Unused ! 1 0 - - - - Identifier form ! 1 0 0 0 - - System identifiers ! 1 0 0 1 - - Facility-specific identifiers ! 1 0 1 0 - - Arbitrary assignment identifiers ! 1 0 1 0 0 0 SEVMS identifier space ! 1 0 1 0 0 1 Unused ! 1 0 1 0 1 0 Unused ! 1 0 1 0 1 1 Unused ! 1 0 1 1 - - Unused ! 1 1 - - - - Unused ! - literal UIC$K_MAX_UIC = 1073741823; ! Highest possible UIC literal UIC$K_WILD_MEMBER = 65535; ! Code for wild card member literal UIC$K_WILD_GROUP = 16383; ! Code for wild card group literal UIC$K_UIC_FORMAT = 0; ! UIC format code literal UIC$K_ID_FORMAT = 2; ! ID format code literal UIC$K_TYPE_SYSTEM = 8; ! system ID or UIC literal UIC$K_TYPE_FACILITY = 9; ! facility ID or UIC literal UIC$K_TYPE_ARBITRARY = 10; ! arbitrary assignment space literal UIC$K_FIRST_ID = -2147418112; ! First general identifier literal UIC$K_LAST_ID = -1879048193; ! Last general identifier literal UIC$K_MATCH_ALL = -1; ! Match all identifiers literal UIC$K_ASSIGN_SEVMS = 0; ! SEVMS block of identifier space literal UIC$S_UICDEF = 4; macro UIC$L_UIC = 0,0,32,0 %; ! Full longword macro UIC$W_MEM = 0,0,16,0 %; ! Member number macro UIC$W_GRP = 2,0,16,0 %; ! Group number macro UIC$V_MEMBER = 0,0,16,0 %; literal UIC$S_MEMBER = 16; ! Member number macro UIC$V_GROUP = 0,16,14,0 %; literal UIC$S_GROUP = 14; ! Group number macro UIC$V_FORMAT = 0,30,2,0 %; literal UIC$S_FORMAT = 2; ! Format code macro UIC$V_ID_CODE = 0,0,28,0 %; literal UIC$S_ID_CODE = 28; ! ID code macro UIC$V_ID_TYPE = 0,28,4,0 %; literal UIC$S_ID_TYPE = 4; ! ID type macro UIC$V_FAC_ID_CODE = 0,0,16,0 %; literal UIC$S_FAC_ID_CODE = 16; ! ID code macro UIC$V_FACILITY = 0,16,12,0 %; literal UIC$S_FACILITY = 12; ! Facility code macro UIC$V_ARB_ID_CODE = 0,0,26,0 %; literal UIC$S_ARB_ID_CODE = 26; ! ID code macro UIC$V_ASSIGN_CODE = 0,26,2,0 %; literal UIC$S_ASSIGN_CODE = 2; ! Assignment code !*** MODULE $UIDDEF *** literal UID$K_ArchVersion = 1; ! Current architecture version literal UID$K_Apollo1 = 0; ! UID format types literal UID$K_Apollo2 = 1; literal UID$K_Digital = 2; literal UID$K_Microsoft = 3; literal UID$K_LENGTH = 16; ! Total structure length literal UID$S_UIDDEF = 16; macro UID$q_timeAndVersion = 0,0,0,0 %; literal UID$s_timeAndVersion = 8; ! Time and version macro UID$l_timeLow = 0,0,32,0 %; ! Low order 32 bits of time macro UID$w_timeMid = 4,0,16,0 %; ! Middle order 16 bits of time macro UID$w_timeHiAndVersion = 6,0,16,0 %; ! High order 12 bits of time and ! 4 bits of version macro UID$v_timeHi = 6,0,12,0 %; literal UID$s_timeHi = 12; ! High order 12 bits of time macro UID$V_Version = 6,12,4,0 %; literal UID$S_Version = 4; ! 4 bits of version macro UID$w_clockSeqAndReserved = 8,0,16,0 %; ! Clock sequence and reserved macro UID$b_clockSeqHiAndReserved = 8,0,8,0 %; ! High order 6 bits of clock sequence ! and 2 reserved bits macro UID$v_clockSeqHi = 8,0,6,0 %; literal UID$s_clockSeqHi = 6; ! High order 6 bits of clock sequence macro UID$V_Reserved = 8,6,2,0 %; literal UID$S_Reserved = 2; ! 2 bits of reserved macro UID$b_clockSeqLow = 9,0,8,0 %; ! Low order 8 bits of clock sequence macro UID$b_node = 10,0,0,0 %; literal UID$s_node = 6; macro UID$w_nodeHi = 10,0,16,0 %; ! High order 16 bits of node number macro UID$l_nodeLow = 12,0,32,0 %; ! Low order 32 bits of node number !*** MODULE $USGDEF *** ! + ! Disk usage accounting file produced by ANALYZE/DISK_STRUCTURE utility. ! - literal USG$K_IDENT = 1; ! Identification record literal USG$K_FILE = 2; ! File record literal USG$K_IDENT_LEN = 61; ! Length of IDENT record literal USG$C_IDENT_LEN = 61; ! Length of IDENT record literal USG$S_USGDEF = 61; macro USG$B_TYPE = 0,0,8,0 %; ! Record type macro USG$L_SERIALNUM = 1,0,32,0 %; ! Pack serial number macro USG$T_STRUCNAME = 5,0,0,0 %; literal USG$S_STRUCNAME = 12; ! Volume set name macro USG$T_VOLNAME = 17,0,0,0 %; literal USG$S_VOLNAME = 12; ! Volume name macro USG$T_OWNERNAME = 29,0,0,0 %; literal USG$S_OWNERNAME = 12; ! Volume owner name macro USG$T_FORMAT = 41,0,0,0 %; literal USG$S_FORMAT = 12; ! Volume format type ! *** Preceding same as home block *** macro USG$Q_TIME = 53,0,0,0 %; literal USG$S_TIME = 8; ! Time usage file created literal USG$K_FILE_LEN = 423; ! Maximum length of FILE record literal USG$C_FILE_LEN = 423; ! Maximum length of FILE record literal USG$S_USGDEF1 = 423; macro USG$L_FILEOWNER = 1,0,32,0 %; ! File owner UIC macro USG$W_UICMEMBER = 1,0,16,0 %; ! UIC member number macro USG$W_UICGROUP = 3,0,16,0 %; ! UIC group number macro USG$L_ALLOCATED = 5,0,32,0 %; ! Blocks allocated, including headers macro USG$L_USED = 9,0,32,0 %; ! Blocks used macro USG$W_DIR_LEN = 13,0,16,0 %; ! Length of directory string macro USG$W_SPEC_LEN = 15,0,16,0 %; ! Length of complete file specification macro USG$T_FILESPEC = 17,0,0,0 %; literal USG$S_FILESPEC = 406; ! File spec "[dir]nam.typ;ver" !*** MODULE $USRIDEF *** ! ! User image bit definitions ! ! literal USRI$M_DBG_MAPPED = %X'1'; literal USRI$S_USRIDEF = 1; macro USRI$V_DBG_MAPPED = 0,0,1,0 %; ! Debugger is now mapped !*** MODULE $VADEF *** ! + ! VIRTUAL ADDRESS VIELDS ! - literal VA$M_P1 = %X'40000000'; literal VA$M_SYSTEM = %X'80000000'; literal VA$M_BYTES_PER_PAGELET = %X'1FF'; literal VA$M_BYTE_IN_PAGELET = %X'1FF'; literal VA$M_VRN = %X'E000000000000000'; literal VA$C_VRN_SYSTEM = 7; ! VRN for system space literal VA$C_REGION_COUNT = 8; ! Number of virtual regions literal VA$M_VRNX = %X'F000000000000000'; literal VA$C_VRNX_SYSTEM = 15; ! VRNX for system space literal VA$C_VRNX_COUNT = 16; ! Number of virtual address spaces literal VA$S_VADEF = 8; literal VA$C_PAGELET_SIZE = 512; literal VA$C_PAGELET_SHIFT_SIZE = 9; literal VA$S_VA = 8; macro VA$Q_QUAD = 0,0,0,0 %; literal VA$S_QUAD = 8; macro VA$V_P1 = 0,30,1,0 %; ! P1 SPACE macro VA$V_SYSTEM = 0,31,1,0 %; ! SYSTEM SPACE macro VA$V_BYTES_PER_PAGELET = 0,0,9,0 %; literal VA$S_BYTES_PER_PAGELET = 9; ! BYTES PER PAGELET macro VA$V_BYTE_IN_PAGELET = 0,0,9,0 %; literal VA$S_BYTE_IN_PAGELET = 9; ! BYTE IN PAGELET (common name) macro VA$V_VRN = 4,29,3,0 %; literal VA$S_VRN = 3; ! Virtual Region Number macro VA$V_VRNX = 4,28,4,0 %; literal VA$S_VRNX = 4; ! Virtual Address Space ! + ! Process permanent region ids ! - literal VA$C_P0 = 0; ! Region id for 32-bit program region literal VA$C_P1 = 1; ! Region id for control region literal VA$C_P2 = 2; ! Region id for 64-bit program region literal VA$M_DESCEND = %X'1'; literal VA$M_P0_SPACE = %X'2'; literal VA$M_P1_SPACE = %X'4'; literal VA$M_PERMANENT = %X'8'; literal VA$M_EXPAND_ON_ACCVIO = %X'10'; literal VA$M_SHARED_PTS = %X'40'; literal VA$M_OWNER_MODE = %X'F'; literal VA$M_CREATE_MODE = %X'F0'; literal VA$C_REGSUM_LENGTH = 40; literal VA$_REGSUM_BY_ID = 0; literal VA$_REGSUM_BY_VA = 1; literal VA$_NEXT_REGSUM_BY_VA = 2; ! + literal VA$C_REGION_UCREATE_UOWN = 51; literal VA$C_REGION_UCREATE_SOWN = 50; literal VA$C_REGION_UCREATE_EOWN = 49; literal VA$C_REGION_UCREATE_KOWN = 48; literal VA$C_REGION_SCREATE_SOWN = 34; literal VA$C_REGION_SCREATE_EOWN = 33; literal VA$C_REGION_SCREATE_KOWN = 32; literal VA$C_REGION_ECREATE_EOWN = 17; literal VA$C_REGION_ECREATE_KOWN = 16; literal VA$C_REGION_KCREATE_KOWN = 0; literal VA$S_REGSUM = 40; macro VA$Q_REGION_ID = 0,0,0,0 %; literal VA$S_REGION_ID = 8; ! Id of region macro VA$L_FLAGS = 8,0,32,0 %; ! FLAGS longword macro VA$V_DESCEND = 8,0,1,0 %; ! Region is descending macro VA$V_P0_SPACE = 8,1,1,0 %; ! Region is in P0 space macro VA$V_P1_SPACE = 8,2,1,0 %; ! Region is in P1 space macro VA$V_PERMANENT = 8,3,1,0 %; ! Region is permanent macro VA$V_EXPAND_ON_ACCVIO = 8,4,1,0 %; ! Expand within region on accvio ! public interface. macro VA$V_SHARED_PTS = 8,6,1,0 %; ! Region is a shared PT region macro VA$L_REGION_PROTECTION = 12,0,32,1 %; macro VA$V_OWNER_MODE = 12,0,4,0 %; literal VA$S_OWNER_MODE = 4; ! Region owner mode macro VA$V_CREATE_MODE = 12,4,4,0 %; literal VA$S_CREATE_MODE = 4; ! Region create mode macro VA$PQ_START_VA = 16,0,0,1 %; literal VA$S_START_VA = 8; ! Lowest address in region macro VA$PS_START_VA = 16,0,32,1 %; ! Lowest address in 32-bit region macro VA$Q_REGION_SIZE = 24,0,0,0 %; literal VA$S_REGION_SIZE = 8; ! Size of region macro VA$L_REGION_SIZE = 24,0,32,0 %; ! Size of 32-bit region macro VA$PQ_FIRST_FREE_VA = 32,0,0,1 %; literal VA$S_FIRST_FREE_VA = 8; ! First free VA in region macro VA$PS_FIRST_FREE_VA = 32,0,32,1 %; ! First free VA in 32-bit region ! Region protection encodings ! - ! + ! VA flags ! - literal VA$M_NO_OVERMAP = %X'1'; literal VA$S_VA_FLAGS = 1; macro VA$V_NO_OVERMAP = 0,0,1,0 %; ! Do not overmap while creating pages ! + ! SETSTK_64 flags ! - literal VA$M_SETSTK_REGISTER = %X'1'; literal VA$S_SETSTK_FLAGS = 1; macro VA$V_SETSTK_REGISTER = 0,0,1,0 %; ! Set register stack limits !*** MODULE $VA_RANGEDEF *** ! + ! Define the 32-bit virtual address range structure. ! - literal VA_RANGE$S_VA_RANGE = 8; macro VA_RANGE$PS_START_VA = 0,0,32,1 %; ! Starting virtual address macro VA_RANGE$PS_END_VA = 4,0,32,1 %; ! Ending (last) virtual address literal VA_RANGE$K_LENGTH = 8; ! Length of VA_RANGE structure literal VA_RANGE$C_LENGTH = 8; ! Length of VA_RANGE structure !*** MODULE $VAXDEF *** literal VAX$C_V780 = 1; literal VAX$K_V780 = 1; literal VAX$C_V782 = 2; literal VAX$K_V782 = 2; literal VAX$C_V750 = 3; literal VAX$K_V750 = 3; literal VAX$C_V730 = 4; literal VAX$K_V730 = 4; literal VAX$C_V785 = 5; literal VAX$K_V785 = 5; literal VAX$C_VUV1 = 6; literal VAX$K_VUV1 = 6; literal VAX$C_VWS1 = 7; literal VAX$K_VWS1 = 7; literal VAX$C_VUV2 = 8; literal VAX$K_VUV2 = 8; literal VAX$C_VWS2 = 9; literal VAX$K_VWS2 = 9; literal VAX$C_VWSD = 10; literal VAX$K_VWSD = 10; literal VAX$C_V8600 = 11; literal VAX$K_V8600 = 11; literal VAX$C_V8650 = 12; literal VAX$K_V8650 = 12; literal VAX$C_V8200 = 13; literal VAX$K_V8200 = 13; literal VAX$C_V8300 = 14; literal VAX$K_V8300 = 14; literal VAX$C_V8530 = 15; literal VAX$K_V8530 = 15; literal VAX$C_V8550 = 16; literal VAX$K_V8550 = 16; literal VAX$C_V8700 = 17; literal VAX$K_V8700 = 17; literal VAX$C_V8800 = 18; literal VAX$K_V8800 = 18; literal VAX$C_VWS2000 = 19; literal VAX$K_VWS2000 = 19; literal VAX$C_VUV2000 = 20; literal VAX$K_VUV2000 = 20; literal VAX$C_VWSD2000 = 21; literal VAX$K_VWSD2000 = 21; literal VAX$C_V009 = 22; literal VAX$K_V009 = 22; literal VAX$C_V8250 = 23; literal VAX$K_V8250 = 23; literal VAX$C_V8350 = 24; literal VAX$K_V8350 = 24; literal VAX$C_V3600 = 25; literal VAX$K_V3600 = 25; literal VAX$C_V3600W = 26; literal VAX$K_V3600W = 26; literal VAX$C_V3600D = 27; literal VAX$K_V3600D = 27; literal VAX$K_V9CC = 28; literal VAX$C_V9CC = 28; literal VAX$K_V6210_T = 28; literal VAX$C_V6210_T = 28; literal VAX$K_V6210 = 28; literal VAX$C_V6210 = 28; literal VAX$C_V3520 = 29; literal VAX$K_V3520 = 29; literal VAX$C_V3520L = 30; literal VAX$K_V3520L = 30; literal VAX$K_V8PS = 31; literal VAX$C_V8PS = 31; literal VAX$K_V8840 = 31; literal VAX$C_V8840 = 31; literal VAX$K_V9RR = 32; literal VAX$C_V9RR = 32; literal VAX$K_VUV2_S = 33; literal VAX$C_VUV2_S = 33; literal VAX$K_VUV2_J = 34; literal VAX$C_VUV2_J = 34; literal VAX$K_VWS2_T = 35; literal VAX$C_VWS2_T = 35; literal VAX$K_VWS2_J = 36; literal VAX$C_VWS2_J = 36; literal VAX$K_VWSD_T = 37; literal VAX$C_VWSD_T = 37; literal VAX$K_VWSD_J = 38; literal VAX$C_VWSD_J = 38; literal VAX$K_VUV2000_S = 39; literal VAX$C_VUV2000_S = 39; literal VAX$K_VUV2000_J = 40; literal VAX$C_VUV2000_J = 40; literal VAX$K_VWS2000_T = 41; literal VAX$C_VWS2000_T = 41; literal VAX$K_VWS2000_J = 42; literal VAX$C_VWS2000_J = 42; literal VAX$K_VWSD2000_T = 43; literal VAX$C_VWSD2000_T = 43; literal VAX$K_VWSD2000_J = 44; literal VAX$C_VWSD2000_J = 44; literal VAX$K_V3600_S = 45; literal VAX$C_V3600_S = 45; literal VAX$K_V3600_J = 46; literal VAX$C_V3600_J = 46; literal VAX$K_V3600W_T = 47; literal VAX$C_V3600W_T = 47; literal VAX$K_V3600W_J = 48; literal VAX$C_V3600W_J = 48; literal VAX$K_V3600D_T = 49; literal VAX$C_V3600D_T = 49; literal VAX$K_V3600D_J = 50; literal VAX$C_V3600D_J = 50; literal VAX$K_V3520_S = 51; literal VAX$C_V3520_S = 51; literal VAX$K_V3520_J = 52; literal VAX$C_V3520_J = 52; literal VAX$K_V3520L_T = 53; literal VAX$C_V3520L_T = 53; literal VAX$K_V3520L_J = 54; literal VAX$C_V3520L_J = 54; literal VAX$K_V8250L = 55; literal VAX$C_V8250L = 55; literal VAX$K_V8250L_J = 56; literal VAX$C_V8250L_J = 56; literal VAX$K_VCV = 57; literal VAX$C_VCV = 57; literal VAX$K_VCVWS = 58; literal VAX$C_VCVWS = 58; literal VAX$K_VCVWSD = 59; literal VAX$C_VCVWSD = 59; literal VAX$K_VCV_S = 60; literal VAX$C_VCV_S = 60; literal VAX$K_VCV_J = 61; literal VAX$C_VCV_J = 61; literal VAX$K_VCVWS_T = 62; literal VAX$C_VCVWS_T = 62; literal VAX$K_VCVWS_J = 63; literal VAX$C_VCVWS_J = 63; literal VAX$K_VCVWSD_T = 64; literal VAX$C_VCVWSD_T = 64; literal VAX$K_VCVWSD_J = 65; literal VAX$C_VCVWSD_J = 65; literal VAX$C_V8500 = 66; literal VAX$K_V8500 = 66; literal VAX$K_V8370 = 67; literal VAX$C_V8370 = 67; literal VAX$K_V8650P = 68; literal VAX$C_V8650P = 68; literal VAX$K_V6220_T = 69; literal VAX$C_V6220_T = 69; literal VAX$K_V6220 = 69; literal VAX$C_V6220 = 69; literal VAX$K_V6230_T = 70; literal VAX$C_V6230_T = 70; literal VAX$K_V6230 = 70; literal VAX$C_V6230 = 70; literal VAX$K_V6240_T = 71; literal VAX$C_V6240_T = 71; literal VAX$K_V6240 = 71; literal VAX$C_V6240 = 71; literal VAX$K_V6250_T = 72; literal VAX$C_V6250_T = 72; literal VAX$K_V6250 = 72; literal VAX$C_V6250 = 72; literal VAX$K_V6260_T = 73; literal VAX$C_V6260_T = 73; literal VAX$K_V6260 = 73; literal VAX$C_V6260 = 73; literal VAX$K_V6270_T = 74; literal VAX$C_V6270_T = 74; literal VAX$K_V6270 = 74; literal VAX$C_V6270 = 74; literal VAX$K_V6280_T = 75; literal VAX$C_V6280_T = 75; literal VAX$K_V6280 = 75; literal VAX$C_V6280 = 75; literal VAX$K_V6310_T = 76; literal VAX$C_V6310_T = 76; literal VAX$K_V6215 = 76; literal VAX$C_V6215 = 76; literal VAX$K_V6320_T = 77; literal VAX$C_V6320_T = 77; literal VAX$K_V6225 = 77; literal VAX$C_V6225 = 77; literal VAX$K_V6330_T = 78; literal VAX$C_V6330_T = 78; literal VAX$K_V6235 = 78; literal VAX$C_V6235 = 78; literal VAX$K_V6340_T = 79; literal VAX$C_V6340_T = 79; literal VAX$K_V6245 = 79; literal VAX$C_V6245 = 79; literal VAX$K_V6350_T = 80; literal VAX$C_V6350_T = 80; literal VAX$K_V6255 = 80; literal VAX$C_V6255 = 80; literal VAX$K_V6360_T = 81; literal VAX$C_V6360_T = 81; literal VAX$K_V6265 = 81; literal VAX$C_V6265 = 81; literal VAX$K_V6370_T = 82; literal VAX$C_V6370_T = 82; literal VAX$K_V6275 = 82; literal VAX$C_V6275 = 82; literal VAX$K_V6380_T = 83; literal VAX$C_V6380_T = 83; literal VAX$K_V6285 = 83; literal VAX$C_V6285 = 83; literal VAX$K_V8810 = 84; literal VAX$C_V8810 = 84; literal VAX$K_V8820 = 85; literal VAX$C_V8820 = 85; literal VAX$K_V8830 = 86; literal VAX$C_V8830 = 86; literal VAX$C_V3400 = 87; literal VAX$K_V3400 = 87; literal VAX$C_V3400W = 88; literal VAX$K_V3400W = 88; literal VAX$C_V3400D = 89; literal VAX$K_V3400D = 89; literal VAX$K_V3400_S = 90; literal VAX$C_V3400_S = 90; literal VAX$K_V3400_J = 91; literal VAX$C_V3400_J = 91; literal VAX$K_V3400W_T = 92; literal VAX$C_V3400W_T = 92; literal VAX$K_V3400W_J = 93; literal VAX$C_V3400W_J = 93; literal VAX$K_V3400D_T = 94; literal VAX$C_V3400D_T = 94; literal VAX$K_V3400D_J = 95; literal VAX$C_V3400D_J = 95; literal VAX$K_VUV2000_O = 96; literal VAX$C_VUV2000_O = 96; literal VAX$K_VWS2000_O = 97; literal VAX$C_VWS2000_O = 97; literal VAX$K_VWSD2000_O = 98; literal VAX$C_VWSD2000_O = 98; literal VAX$C_VWSK2000 = 99; literal VAX$K_VWSK2000 = 99; literal VAX$K_V6210_S = 100; literal VAX$C_V6210_S = 100; literal VAX$K_V6220_S = 101; literal VAX$C_V6220_S = 101; literal VAX$K_V6230_S = 102; literal VAX$C_V6230_S = 102; literal VAX$K_V6240_S = 103; literal VAX$C_V6240_S = 103; literal VAX$K_V6250_S = 104; literal VAX$C_V6250_S = 104; literal VAX$K_V6260_S = 105; literal VAX$C_V6260_S = 105; literal VAX$K_V6270_S = 106; literal VAX$C_V6270_S = 106; literal VAX$K_V6280_S = 107; literal VAX$C_V6280_S = 107; literal VAX$K_V6310_S = 108; literal VAX$C_V6310_S = 108; literal VAX$K_V6215_S = 108; literal VAX$C_V6215_S = 108; literal VAX$K_V6320_S = 109; literal VAX$C_V6320_S = 109; literal VAX$K_V6225_S = 109; literal VAX$C_V6225_S = 109; literal VAX$K_V6330_S = 110; literal VAX$C_V6330_S = 110; literal VAX$K_V6235_S = 110; literal VAX$C_V6235_S = 110; literal VAX$K_V6340_S = 111; literal VAX$C_V6340_S = 111; literal VAX$K_V6245_S = 111; literal VAX$C_V6245_S = 111; literal VAX$K_V6350_S = 112; literal VAX$C_V6350_S = 112; literal VAX$K_V6255_S = 112; literal VAX$C_V6255_S = 112; literal VAX$K_V6360_S = 113; literal VAX$C_V6360_S = 113; literal VAX$K_V6265_S = 113; literal VAX$C_V6265_S = 113; literal VAX$K_V6370_S = 114; literal VAX$C_V6370_S = 114; literal VAX$K_V6275_S = 114; literal VAX$C_V6275_S = 114; literal VAX$K_V6380_S = 115; literal VAX$C_V6380_S = 115; literal VAX$K_V6285_S = 115; literal VAX$C_V6285_S = 115; literal VAX$K_V6200_J = 116; literal VAX$C_V6200_J = 116; literal VAX$K_V6300_J = 117; literal VAX$C_V6300_J = 117; literal VAX$K_V6205_J = 117; literal VAX$C_V6205_J = 117; literal VAX$C_V3900 = 118; literal VAX$K_V3900 = 118; literal VAX$K_V3900_S = 119; literal VAX$C_V3900_S = 119; literal VAX$C_V3900D = 120; literal VAX$K_V3900D = 120; literal VAX$K_V3900D_T = 121; literal VAX$C_V3900D_T = 121; literal VAX$K_V3900_J = 122; literal VAX$C_V3900_J = 122; literal VAX$K_V3900D_J = 123; literal VAX$C_V3900D_J = 123; literal VAX$C_V2000A = 124; literal VAX$K_V2000A = 124; literal VAX$K_V2000A_S = 125; literal VAX$C_V2000A_S = 125; literal VAX$C_V2000AW = 126; literal VAX$K_V2000AW = 126; literal VAX$C_V2000AD = 127; literal VAX$K_V2000AD = 127; literal VAX$K_V2000AW_T = 128; literal VAX$C_V2000AW_T = 128; literal VAX$K_V2000AD_T = 129; literal VAX$C_V2000AD_T = 129; literal VAX$K_V2000A_J = 130; literal VAX$C_V2000A_J = 130; literal VAX$K_V2000AW_J = 131; literal VAX$C_V2000AW_J = 131; literal VAX$K_V2000AD_J = 132; literal VAX$C_V2000AD_J = 132; literal VAX$C_V3540 = 133; literal VAX$K_V3540 = 133; literal VAX$K_V3540_S = 134; literal VAX$C_V3540_S = 134; literal VAX$C_V3540L = 135; literal VAX$K_V3540L = 135; literal VAX$K_V3540L_T = 136; literal VAX$C_V3540L_T = 136; literal VAX$C_V3560 = 137; literal VAX$K_V3560 = 137; literal VAX$K_V3560_S = 138; literal VAX$C_V3560_S = 138; literal VAX$C_V3560L = 139; literal VAX$K_V3560L = 139; literal VAX$K_V3560L_T = 140; literal VAX$C_V3560L_T = 140; literal VAX$C_V3580 = 141; literal VAX$K_V3580 = 141; literal VAX$K_V3580_S = 142; literal VAX$C_V3580_S = 142; literal VAX$C_V3580L = 143; literal VAX$K_V3580L = 143; literal VAX$K_V3580L_T = 144; literal VAX$C_V3580L_T = 144; literal VAX$C_V35A0 = 145; literal VAX$K_V35A0 = 145; literal VAX$K_V35A0_S = 146; literal VAX$C_V35A0_S = 146; literal VAX$K_VPV = 147; literal VAX$C_VPV = 147; literal VAX$K_VPVWS = 148; literal VAX$C_VPVWS = 148; literal VAX$K_VPVWSD = 149; literal VAX$C_VPVWSD = 149; literal VAX$K_VPV_S = 150; literal VAX$C_VPV_S = 150; literal VAX$K_VPV_J = 151; literal VAX$C_VPV_J = 151; literal VAX$K_VPVWS_T = 152; literal VAX$C_VPVWS_T = 152; literal VAX$K_VPVWS_J = 153; literal VAX$C_VPVWS_J = 153; literal VAX$K_VPVWSD_T = 154; literal VAX$C_VPVWSD_T = 154; literal VAX$K_VPVWSD_J = 155; literal VAX$C_VPVWSD_J = 155; literal VAX$K_VTM = 156; literal VAX$C_VTM = 156; literal VAX$K_VTM_S = 157; literal VAX$C_VTM_S = 157; literal VAX$K_VTM_J = 158; literal VAX$C_VTM_J = 158; literal VAX$K_V9RR10_T = 159; literal VAX$C_V9RR10_T = 159; literal VAX$K_V9RR20_T = 160; literal VAX$C_V9RR20_T = 160; literal VAX$K_V9RR30_T = 161; literal VAX$C_V9RR30_T = 161; literal VAX$K_V9RR40_T = 162; literal VAX$C_V9RR40_T = 162; literal VAX$K_V9RR50_T = 163; literal VAX$C_V9RR50_T = 163; literal VAX$K_V9RR60_T = 164; literal VAX$C_V9RR60_T = 164; literal VAX$K_V9RR70_T = 165; literal VAX$C_V9RR70_T = 165; literal VAX$K_V9RR80_T = 166; literal VAX$C_V9RR80_T = 166; literal VAX$K_V9RR10_S = 167; literal VAX$C_V9RR10_S = 167; literal VAX$K_V9RR20_S = 168; literal VAX$C_V9RR20_S = 168; literal VAX$K_V9RR30_S = 169; literal VAX$C_V9RR30_S = 169; literal VAX$K_V9RR40_S = 170; literal VAX$C_V9RR40_S = 170; literal VAX$K_V9RR50_S = 171; literal VAX$C_V9RR50_S = 171; literal VAX$K_V9RR60_S = 172; literal VAX$C_V9RR60_S = 172; literal VAX$K_V9RR70_S = 173; literal VAX$C_V9RR70_S = 173; literal VAX$K_V9RR80_S = 174; literal VAX$C_V9RR80_S = 174; literal VAX$K_V9RR10_J = 175; literal VAX$C_V9RR10_J = 175; literal VAX$K_V9AR10 = 176; literal VAX$C_V9AR10 = 176; literal VAX$K_V9AR20 = 177; literal VAX$C_V9AR20 = 177; literal VAX$K_V9AQ10 = 178; literal VAX$C_V9AQ10 = 178; literal VAX$K_V9AQ20 = 179; literal VAX$C_V9AQ20 = 179; literal VAX$K_V9AQ30 = 180; literal VAX$C_V9AQ30 = 180; literal VAX$K_V9AQ40 = 181; literal VAX$C_V9AQ40 = 181; literal VAX$K_V6305E_T = 182; literal VAX$C_V6305E_T = 182; literal VAX$K_V6305E_S = 183; literal VAX$C_V6305E_S = 183; literal VAX$K_V6305E_J = 184; literal VAX$C_V6305E_J = 184; literal VAX$K_V1202_1T = 185; literal VAX$C_V1202_1T = 185; literal VAX$K_V1202_2T = 186; literal VAX$C_V1202_2T = 186; literal VAX$K_V1202_3T = 187; literal VAX$C_V1202_3T = 187; literal VAX$K_V1202_4T = 188; literal VAX$C_V1202_4T = 188; literal VAX$K_V1202_5T = 189; literal VAX$C_V1202_5T = 189; literal VAX$K_V1202_6T = 190; literal VAX$C_V1202_6T = 190; literal VAX$K_V1202_7T = 191; literal VAX$C_V1202_7T = 191; literal VAX$K_V1202_8T = 192; literal VAX$C_V1202_8T = 192; literal VAX$K_V1202_1S = 193; literal VAX$C_V1202_1S = 193; literal VAX$K_V1202_2S = 194; literal VAX$C_V1202_2S = 194; literal VAX$K_V1202_3S = 195; literal VAX$C_V1202_3S = 195; literal VAX$K_V1202_4S = 196; literal VAX$C_V1202_4S = 196; literal VAX$K_V1202_5S = 197; literal VAX$C_V1202_5S = 197; literal VAX$K_V1202_6S = 198; literal VAX$C_V1202_6S = 198; literal VAX$K_V1202_7S = 199; literal VAX$C_V1202_7S = 199; literal VAX$K_V1202_8S = 200; literal VAX$C_V1202_8S = 200; literal VAX$K_V1202_1J = 201; literal VAX$C_V1202_1J = 201; literal VAX$K_VPV2M_S = 202; literal VAX$C_VPV2M_S = 202; literal VAX$K_VPV2M_T = 203; literal VAX$C_VPV2M_T = 203; literal VAX$K_VPV2M_J = 204; literal VAX$C_VPV2M_J = 204; literal VAX$K_VPV2C_S = 205; literal VAX$C_VPV2C_S = 205; literal VAX$K_VPV2C_T = 206; literal VAX$C_VPV2C_T = 206; literal VAX$K_VPV2C_J = 207; literal VAX$C_VPV2C_J = 207; literal VAX$K_VPV2_S = 208; literal VAX$C_VPV2_S = 208; literal VAX$K_VPV2_T = 209; literal VAX$C_VPV2_T = 209; literal VAX$K_VPV2_J = 210; literal VAX$C_VPV2_J = 210; literal VAX$K_V4500 = 211; literal VAX$C_V4500 = 211; literal VAX$C_V670 = 211; literal VAX$K_V670 = 211; literal VAX$K_V4500_S = 212; literal VAX$C_V4500_S = 212; literal VAX$K_V670_S = 212; literal VAX$C_V670_S = 212; literal VAX$K_V4500_J = 213; literal VAX$C_V4500_J = 213; literal VAX$K_V670_J = 213; literal VAX$C_V670_J = 213; literal VAX$K_V520FT = 214; literal VAX$C_V520FT = 214; literal VAX$K_VRMAXM_S = 215; literal VAX$C_VRMAXM_S = 215; literal VAX$K_VRMAXM_T = 216; literal VAX$C_VRMAXM_T = 216; literal VAX$K_VRMAXM_J = 217; literal VAX$C_VRMAXM_J = 217; literal VAX$K_VRMAXS_S = 218; literal VAX$C_VRMAXS_S = 218; literal VAX$K_VRMAXS_T = 219; literal VAX$C_VRMAXS_T = 219; literal VAX$K_VRMAXS_J = 220; literal VAX$C_VRMAXS_J = 220; literal VAX$K_VRMAX_S = 221; literal VAX$C_VRMAX_S = 221; literal VAX$K_VRMAX_T = 222; literal VAX$C_VRMAX_T = 222; literal VAX$K_VRMAX_J = 223; literal VAX$C_VRMAX_J = 223; literal VAX$K_VRMAXD_S = 224; literal VAX$C_VRMAXD_S = 224; literal VAX$K_VRMAXD_T = 225; literal VAX$C_VRMAXD_T = 225; literal VAX$K_VRMAXD_J = 226; literal VAX$C_VRMAXD_J = 226; literal VAX$K_VPV0S_S = 227; literal VAX$C_VPV0S_S = 227; literal VAX$K_VPV0S_T = 228; literal VAX$C_VPV0S_T = 228; literal VAX$K_VPV0S_J = 229; literal VAX$C_VPV0S_J = 229; literal VAX$K_VPV1S_S = 230; literal VAX$C_VPV1S_S = 230; literal VAX$K_VPV1S_T = 231; literal VAX$C_VPV1S_T = 231; literal VAX$K_VPV1S_J = 232; literal VAX$C_VPV1S_J = 232; literal VAX$K_VPV2S_S = 233; literal VAX$C_VPV2S_S = 233; literal VAX$K_VPV2S_T = 234; literal VAX$C_VPV2S_T = 234; literal VAX$K_VPV2S_J = 235; literal VAX$C_VPV2S_J = 235; literal VAX$K_VKA46M_S = 236; literal VAX$C_VKA46M_S = 236; literal VAX$K_VKA46M_T = 237; literal VAX$C_VKA46M_T = 237; literal VAX$K_VKA46M_J = 238; literal VAX$C_VKA46M_J = 238; literal VAX$K_VKA46C_S = 239; literal VAX$C_VKA46C_S = 239; literal VAX$K_VKA46C_T = 240; literal VAX$C_VKA46C_T = 240; literal VAX$K_VKA46C_J = 241; literal VAX$C_VKA46C_J = 241; literal VAX$K_VKA46S_S = 242; literal VAX$C_VKA46S_S = 242; literal VAX$K_VKA46S_T = 243; literal VAX$C_VKA46S_T = 243; literal VAX$K_VKA46S_J = 244; literal VAX$C_VKA46S_J = 244; literal VAX$K_VKA46_S = 245; literal VAX$C_VKA46_S = 245; literal VAX$K_VKA46_T = 246; literal VAX$C_VKA46_T = 246; literal VAX$K_VKA46_J = 247; literal VAX$C_VKA46_J = 247; literal VAX$C_V660 = 248; literal VAX$K_V660 = 248; literal VAX$K_V660_S = 249; literal VAX$C_V660_S = 249; literal VAX$K_V660_J = 250; literal VAX$C_V660_J = 250; literal VAX$C_V3820 = 251; literal VAX$K_V3820 = 251; literal VAX$C_V3820L = 252; literal VAX$K_V3820L = 252; literal VAX$K_V3820_S = 253; literal VAX$C_V3820_S = 253; literal VAX$K_V3820_J = 254; literal VAX$C_V3820_J = 254; literal VAX$K_V3820L_T = 255; literal VAX$C_V3820L_T = 255; literal VAX$K_V3820L_J = 256; literal VAX$C_V3820L_J = 256; literal VAX$C_V3840 = 257; literal VAX$K_V3840 = 257; literal VAX$K_V3840_S = 258; literal VAX$C_V3840_S = 258; literal VAX$C_V3840L = 259; literal VAX$K_V3840L = 259; literal VAX$K_V3840L_T = 260; literal VAX$C_V3840L_T = 260; literal VAX$C_V3860 = 261; literal VAX$K_V3860 = 261; literal VAX$K_V3860_S = 262; literal VAX$C_V3860_S = 262; literal VAX$C_V3860L = 263; literal VAX$K_V3860L = 263; literal VAX$K_V3860L_T = 264; literal VAX$C_V3860L_T = 264; literal VAX$C_V3880 = 265; literal VAX$K_V3880 = 265; literal VAX$K_V3880_S = 266; literal VAX$C_V3880_S = 266; literal VAX$C_V3880L = 267; literal VAX$K_V3880L = 267; literal VAX$K_V3880L_T = 268; literal VAX$C_V3880L_T = 268; literal VAX$C_V38A0 = 269; literal VAX$K_V38A0 = 269; literal VAX$K_V38A0_S = 270; literal VAX$C_V38A0_S = 270; literal VAX$C_VPV1A = 271; literal VAX$K_VPV1A = 271; literal VAX$C_VPV1AW = 272; literal VAX$K_VPV1AW = 272; literal VAX$C_VPV1AD = 273; literal VAX$K_VPV1AD = 273; literal VAX$C_VPV1A_S = 274; literal VAX$K_VPV1A_S = 274; literal VAX$K_VPV1A_J = 275; literal VAX$C_VPV1A_J = 275; literal VAX$K_VPV1AW_T = 276; literal VAX$C_VPV1AW_T = 276; literal VAX$K_VPV1AW_J = 277; literal VAX$C_VPV1AW_J = 277; literal VAX$K_VPV1AD_T = 278; literal VAX$C_VPV1AD_T = 278; literal VAX$K_VPV1AD_J = 279; literal VAX$C_VPV1AD_J = 279; literal VAX$K_VPV1AS = 280; literal VAX$C_VPV1AS = 280; literal VAX$K_VPV1AS_T = 281; literal VAX$C_VPV1AS_T = 281; literal VAX$K_VPV1AS_J = 282; literal VAX$C_VPV1AS_J = 282; literal VAX$C_V690 = 283; literal VAX$K_V690 = 283; literal VAX$K_V690_S = 284; literal VAX$C_V690_S = 284; literal VAX$K_V690_J = 285; literal VAX$C_V690_J = 285; literal VAX$C_V680 = 286; literal VAX$K_V680 = 286; literal VAX$K_V680_S = 287; literal VAX$C_V680_S = 287; literal VAX$K_V680_J = 288; literal VAX$C_V680_J = 288; literal VAX$K_V520FT_S = 289; literal VAX$C_V520FT_S = 289; literal VAX$K_VFT110_T = 290; literal VAX$C_VFT110_T = 290; literal VAX$K_VFT110_S = 291; literal VAX$C_VFT110_S = 291; literal VAX$K_VFT210_T = 292; literal VAX$C_VFT210_T = 292; literal VAX$K_VFT210_S = 293; literal VAX$C_VFT210_S = 293; literal VAX$K_V1302_1T = 294; literal VAX$C_V1302_1T = 294; literal VAX$K_V1302_2T = 295; literal VAX$C_V1302_2T = 295; literal VAX$K_V1302_3T = 296; literal VAX$C_V1302_3T = 296; literal VAX$K_V1302_4T = 297; literal VAX$C_V1302_4T = 297; literal VAX$K_V1302_5T = 298; literal VAX$C_V1302_5T = 298; literal VAX$K_V1302_6T = 299; literal VAX$C_V1302_6T = 299; literal VAX$K_V1302_7T = 300; literal VAX$C_V1302_7T = 300; literal VAX$K_V1302_8T = 301; literal VAX$C_V1302_8T = 301; literal VAX$K_V1302_1S = 302; literal VAX$C_V1302_1S = 302; literal VAX$K_V1302_2S = 303; literal VAX$C_V1302_2S = 303; literal VAX$K_V1302_3S = 304; literal VAX$C_V1302_3S = 304; literal VAX$K_V1302_4S = 305; literal VAX$C_V1302_4S = 305; literal VAX$K_V1302_5S = 306; literal VAX$C_V1302_5S = 306; literal VAX$K_V1302_6S = 307; literal VAX$C_V1302_6S = 307; literal VAX$K_V1302_7S = 308; literal VAX$C_V1302_7S = 308; literal VAX$K_V1302_8S = 309; literal VAX$C_V1302_8S = 309; literal VAX$K_V1302_1J = 310; literal VAX$C_V1302_1J = 310; literal VAX$K_V9AQII10 = 311; literal VAX$C_V9AQII10 = 311; literal VAX$K_V9AQII20 = 312; literal VAX$C_V9AQII20 = 312; literal VAX$K_V9AQII30 = 313; literal VAX$C_V9AQII30 = 313; literal VAX$K_V9AQII40 = 314; literal VAX$C_V9AQII40 = 314; literal VAX$K_V9ARII10 = 315; literal VAX$C_V9ARII10 = 315; literal VAX$K_V9ARII20 = 316; literal VAX$C_V9ARII20 = 316; literal VAX$K_V9AQIII10 = 317; literal VAX$C_V9AQIII10 = 317; literal VAX$K_V9AQIII20 = 318; literal VAX$C_V9AQIII20 = 318; literal VAX$K_V9AQIII30 = 319; literal VAX$C_V9AQIII30 = 319; literal VAX$K_V9AQIII40 = 320; literal VAX$C_V9AQIII40 = 320; literal VAX$K_V9ARIII10 = 321; literal VAX$C_V9ARIII10 = 321; literal VAX$K_V9ARIII20 = 322; literal VAX$C_V9ARIII20 = 322; literal VAX$K_VFT410_T = 323; literal VAX$C_VFT410_T = 323; literal VAX$K_VFT410_S = 324; literal VAX$C_VFT410_S = 324; literal VAX$K_VFT510_T = 325; literal VAX$C_VFT510_T = 325; literal VAX$K_VFT510_S = 326; literal VAX$C_VFT510_S = 326; literal VAX$K_VFT610_T = 327; literal VAX$C_VFT610_T = 327; literal VAX$K_VFT610_S = 328; literal VAX$C_VFT610_S = 328; literal VAX$K_VFT612_T = 329; literal VAX$C_VFT612_T = 329; literal VAX$K_VFT612_S = 330; literal VAX$C_VFT612_S = 330; literal VAX$K_VFT710_T = 331; literal VAX$C_VFT710_T = 331; literal VAX$K_VFT710_S = 332; literal VAX$C_VFT710_S = 332; literal VAX$K_VFT712_T = 333; literal VAX$C_VFT712_T = 333; literal VAX$K_VFT712_S = 334; literal VAX$C_VFT712_S = 334; literal VAX$K_VKA48_T = 335; literal VAX$C_VKA48_T = 335; literal VAX$K_VKA48_S = 336; literal VAX$C_VKA48_S = 336; literal VAX$K_VKA48_J = 337; literal VAX$C_VKA48_J = 337; literal VAX$K_VKA48W_T = 338; literal VAX$C_VKA48W_T = 338; literal VAX$K_VKA48W_S = 339; literal VAX$C_VKA48W_S = 339; literal VAX$K_VKA48W_J = 340; literal VAX$C_VKA48W_J = 340; literal VAX$K_V9AR10_S = 341; literal VAX$C_V9AR10_S = 341; literal VAX$K_V9AR20_S = 342; literal VAX$C_V9AR20_S = 342; literal VAX$K_V9AQ10_S = 343; literal VAX$C_V9AQ10_S = 343; literal VAX$K_V9AQ20_S = 344; literal VAX$C_V9AQ20_S = 344; literal VAX$K_V9AQ30_S = 345; literal VAX$C_V9AQ30_S = 345; literal VAX$K_V9AQ40_S = 346; literal VAX$C_V9AQ40_S = 346; literal VAX$K_V9ARII10_S = 347; literal VAX$C_V9ARII10_S = 347; literal VAX$K_V9ARII20_S = 348; literal VAX$C_V9ARII20_S = 348; literal VAX$K_V9AQII10_S = 349; literal VAX$C_V9AQII10_S = 349; literal VAX$K_V9AQII20_S = 350; literal VAX$C_V9AQII20_S = 350; literal VAX$K_V9AQII30_S = 351; literal VAX$C_V9AQII30_S = 351; literal VAX$K_V9AQII40_S = 352; literal VAX$C_V9AQII40_S = 352; literal VAX$K_V9ARIII10_S = 353; literal VAX$C_V9ARIII10_S = 353; literal VAX$K_V9ARIII20_S = 354; literal VAX$C_V9ARIII20_S = 354; literal VAX$K_V9AQIII10_S = 355; literal VAX$C_V9AQIII10_S = 355; literal VAX$K_V9AQIII20_S = 356; literal VAX$C_V9AQIII20_S = 356; literal VAX$K_V9AQIII30_S = 357; literal VAX$C_V9AQIII30_S = 357; literal VAX$K_V9AQIII40_S = 358; literal VAX$C_V9AQIII40_S = 358; literal VAX$K_V1701_1T = 359; literal VAX$C_V1701_1T = 359; literal VAX$K_V1701_2T = 360; literal VAX$C_V1701_2T = 360; literal VAX$K_V1701_3T = 361; literal VAX$C_V1701_3T = 361; literal VAX$K_V1701_4T = 362; literal VAX$C_V1701_4T = 362; literal VAX$K_V1701_5T = 363; literal VAX$C_V1701_5T = 363; literal VAX$K_V1701_6T = 364; literal VAX$C_V1701_6T = 364; literal VAX$K_V1701_7T = 365; literal VAX$C_V1701_7T = 365; literal VAX$K_V1701_8T = 366; literal VAX$C_V1701_8T = 366; literal VAX$K_V1701_1S = 367; literal VAX$C_V1701_1S = 367; literal VAX$K_V1701_2S = 368; literal VAX$C_V1701_2S = 368; literal VAX$K_V1701_3S = 369; literal VAX$C_V1701_3S = 369; literal VAX$K_V1701_4S = 370; literal VAX$C_V1701_4S = 370; literal VAX$K_V1701_5S = 371; literal VAX$C_V1701_5S = 371; literal VAX$K_V1701_6S = 372; literal VAX$C_V1701_6S = 372; literal VAX$K_V1701_7S = 373; literal VAX$C_V1701_7S = 373; literal VAX$K_V1701_8S = 374; literal VAX$C_V1701_8S = 374; literal VAX$K_V1701_1J = 375; literal VAX$C_V1701_1J = 375; literal VAX$K_VKA49C_S = 376; literal VAX$C_VKA49C_S = 376; literal VAX$K_VKA49C_T = 377; literal VAX$C_VKA49C_T = 377; literal VAX$K_VKA49C_J = 378; literal VAX$C_VKA49C_J = 378; literal VAX$K_VKA49S_S = 379; literal VAX$C_VKA49S_S = 379; literal VAX$K_VKA49S_T = 380; literal VAX$C_VKA49S_T = 380; literal VAX$K_VKA49S_J = 381; literal VAX$C_VKA49S_J = 381; literal VAX$C_VKA50 = 382; literal VAX$K_VKA50 = 382; literal VAX$K_VKA50_S = 383; literal VAX$C_VKA50_S = 383; literal VAX$K_VKA50_J = 384; literal VAX$C_VKA50_J = 384; literal VAX$C_VKA51 = 385; literal VAX$K_VKA51 = 385; literal VAX$K_VKA51_S = 386; literal VAX$C_VKA51_S = 386; literal VAX$K_VKA51_J = 387; literal VAX$C_VKA51_J = 387; literal VAX$C_VKA52 = 388; literal VAX$K_VKA52 = 388; literal VAX$K_VKA52_S = 389; literal VAX$C_VKA52_S = 389; literal VAX$K_VKA52_J = 390; literal VAX$C_VKA52_J = 390; literal VAX$C_VKA53 = 391; literal VAX$K_VKA53 = 391; literal VAX$K_VKA53_S = 392; literal VAX$C_VKA53_S = 392; literal VAX$K_VKA53_J = 393; literal VAX$C_VKA53_J = 393; literal VAX$C_VKA675 = 394; literal VAX$K_VKA675 = 394; literal VAX$K_VKA675_S = 395; literal VAX$C_VKA675_S = 395; literal VAX$K_VKA675_J = 396; literal VAX$C_VKA675_J = 396; literal VAX$K_V1703_1T = 397; literal VAX$C_V1703_1T = 397; literal VAX$K_V1703_2T = 398; literal VAX$C_V1703_2T = 398; literal VAX$K_V1703_3T = 399; literal VAX$C_V1703_3T = 399; literal VAX$K_V1703_4T = 400; literal VAX$C_V1703_4T = 400; literal VAX$K_V1703_5T = 401; literal VAX$C_V1703_5T = 401; literal VAX$K_V1703_6T = 402; literal VAX$C_V1703_6T = 402; literal VAX$K_V1703_7T = 403; literal VAX$C_V1703_7T = 403; literal VAX$K_V1703_8T = 404; literal VAX$C_V1703_8T = 404; literal VAX$K_V1703_1S = 405; literal VAX$C_V1703_1S = 405; literal VAX$K_V1703_2S = 406; literal VAX$C_V1703_2S = 406; literal VAX$K_V1703_3S = 407; literal VAX$C_V1703_3S = 407; literal VAX$K_V1703_4S = 408; literal VAX$C_V1703_4S = 408; literal VAX$K_V1703_5S = 409; literal VAX$C_V1703_5S = 409; literal VAX$K_V1703_6S = 410; literal VAX$C_V1703_6S = 410; literal VAX$K_V1703_7S = 411; literal VAX$C_V1703_7S = 411; literal VAX$K_V1703_8S = 412; literal VAX$C_V1703_8S = 412; literal VAX$K_V1703_1J = 413; literal VAX$C_V1703_1J = 413; literal VAX$K_VPCVAX_T = 414; literal VAX$C_VPCVAX_T = 414; literal VAX$K_VPCVAX_J = 415; literal VAX$C_VPCVAX_J = 415; literal VAX$K_V1704_1T = 416; literal VAX$C_V1704_1T = 416; literal VAX$K_V1704_2T = 417; literal VAX$C_V1704_2T = 417; literal VAX$K_V1704_3T = 418; literal VAX$C_V1704_3T = 418; literal VAX$K_V1704_4T = 419; literal VAX$C_V1704_4T = 419; literal VAX$K_V1704_5T = 420; literal VAX$C_V1704_5T = 420; literal VAX$K_V1704_6T = 421; literal VAX$C_V1704_6T = 421; literal VAX$K_V1704_7T = 422; literal VAX$C_V1704_7T = 422; literal VAX$K_V1704_8T = 423; literal VAX$C_V1704_8T = 423; literal VAX$K_V1704_1S = 424; literal VAX$C_V1704_1S = 424; literal VAX$K_V1704_2S = 425; literal VAX$C_V1704_2S = 425; literal VAX$K_V1704_3S = 426; literal VAX$C_V1704_3S = 426; literal VAX$K_V1704_4S = 427; literal VAX$C_V1704_4S = 427; literal VAX$K_V1704_5S = 428; literal VAX$C_V1704_5S = 428; literal VAX$K_V1704_6S = 429; literal VAX$C_V1704_6S = 429; literal VAX$K_V1704_7S = 430; literal VAX$C_V1704_7S = 430; literal VAX$K_V1704_8S = 431; literal VAX$C_V1704_8S = 431; literal VAX$K_V1704_1J = 432; literal VAX$C_V1704_1J = 432; literal VAX$K_V1705_1T = 433; literal VAX$C_V1705_1T = 433; literal VAX$K_V1705_2T = 434; literal VAX$C_V1705_2T = 434; literal VAX$K_V1705_3T = 435; literal VAX$C_V1705_3T = 435; literal VAX$K_V1705_4T = 436; literal VAX$C_V1705_4T = 436; literal VAX$K_V1705_5T = 437; literal VAX$C_V1705_5T = 437; literal VAX$K_V1705_6T = 438; literal VAX$C_V1705_6T = 438; literal VAX$K_V1705_7T = 439; literal VAX$C_V1705_7T = 439; literal VAX$K_V1705_8T = 440; literal VAX$C_V1705_8T = 440; literal VAX$K_V1705_1S = 441; literal VAX$C_V1705_1S = 441; literal VAX$K_V1705_2S = 442; literal VAX$C_V1705_2S = 442; literal VAX$K_V1705_3S = 443; literal VAX$C_V1705_3S = 443; literal VAX$K_V1705_4S = 444; literal VAX$C_V1705_4S = 444; literal VAX$K_V1705_5S = 445; literal VAX$C_V1705_5S = 445; literal VAX$K_V1705_6S = 446; literal VAX$C_V1705_6S = 446; literal VAX$K_V1705_7S = 447; literal VAX$C_V1705_7S = 447; literal VAX$K_V1705_8S = 448; literal VAX$C_V1705_8S = 448; literal VAX$K_V1705_1J = 449; literal VAX$C_V1705_1J = 449; literal VAX$C_VKA676 = 450; literal VAX$K_VKA676 = 450; literal VAX$K_VKA676_S = 451; literal VAX$C_VKA676_S = 451; literal VAX$K_VKA676_J = 452; literal VAX$C_VKA676_J = 452; literal VAX$C_VKA681 = 453; literal VAX$K_VKA681 = 453; literal VAX$K_VKA681_S = 454; literal VAX$C_VKA681_S = 454; literal VAX$K_VKA681_J = 455; literal VAX$C_VKA681_J = 455; literal VAX$C_VKA691 = 456; literal VAX$K_VKA691 = 456; literal VAX$K_VKA691_S = 457; literal VAX$C_VKA691_S = 457; literal VAX$K_VKA691_J = 458; literal VAX$C_VKA691_J = 458; literal VAX$C_VKA692 = 459; literal VAX$K_VKA692 = 459; literal VAX$K_VKA692_S = 460; literal VAX$C_VKA692_S = 460; literal VAX$K_VKA692_J = 461; literal VAX$C_VKA692_J = 461; literal VAX$C_VKA600 = 462; literal VAX$K_VKA600 = 462; literal VAX$K_VKA600_S = 463; literal VAX$C_VKA600_S = 463; literal VAX$K_VKA600_J = 464; literal VAX$C_VKA600_J = 464; literal VAX$C_VKA605 = 465; literal VAX$K_VKA605 = 465; literal VAX$K_VKA605_S = 466; literal VAX$C_VKA605_S = 466; literal VAX$K_VKA605_J = 467; literal VAX$C_VKA605_J = 467; literal VAX$C_VKA52A = 468; literal VAX$K_VKA52A = 468; literal VAX$K_VKA52A_S = 469; literal VAX$C_VKA52A_S = 469; literal VAX$K_VKA52A_J = 470; literal VAX$C_VKA52A_J = 470; literal VAX$K_VFT810_T = 471; literal VAX$C_VFT810_T = 471; literal VAX$K_VFT810_S = 472; literal VAX$C_VFT810_S = 472; literal VAX$K_VFT812_T = 473; literal VAX$C_VFT812_T = 473; literal VAX$K_VFT812_S = 474; literal VAX$C_VFT812_S = 474; literal VAX$K_VKA49AC_S = 475; literal VAX$C_VKA49AC_S = 475; literal VAX$K_VKA49AC_T = 476; literal VAX$C_VKA49AC_T = 476; literal VAX$K_VKA49AC_J = 477; literal VAX$C_VKA49AC_J = 477; literal VAX$K_VKA49AS_S = 478; literal VAX$C_VKA49AS_S = 478; literal VAX$K_VKA49AS_T = 479; literal VAX$C_VKA49AS_T = 479; literal VAX$K_VKA49AS_J = 480; literal VAX$C_VKA49AS_J = 480; literal VAX$K_VKA49BC_S = 481; literal VAX$C_VKA49BC_S = 481; literal VAX$K_VKA49BC_T = 482; literal VAX$C_VKA49BC_T = 482; literal VAX$K_VKA49BC_J = 483; literal VAX$C_VKA49BC_J = 483; literal VAX$K_VKA49BS_S = 484; literal VAX$C_VKA49BS_S = 484; literal VAX$K_VKA49BS_T = 485; literal VAX$C_VKA49BS_T = 485; literal VAX$K_VKA49BS_J = 486; literal VAX$C_VKA49BS_J = 486; literal VAX$C_VKA54 = 487; literal VAX$K_VKA54 = 487; literal VAX$K_VKA54_S = 488; literal VAX$C_VKA54_S = 488; literal VAX$K_VKA54_J = 489; literal VAX$C_VKA54_J = 489; literal VAX$C_VKA55 = 490; literal VAX$K_VKA55 = 490; literal VAX$K_VKA55_S = 491; literal VAX$C_VKA55_S = 491; literal VAX$K_VKA55_J = 492; literal VAX$C_VKA55_J = 492; literal VAX$C_VKA56 = 493; literal VAX$K_VKA56 = 493; literal VAX$K_VKA56_S = 494; literal VAX$C_VKA56_S = 494; literal VAX$K_VKA56_J = 495; literal VAX$C_VKA56_J = 495; literal VAX$C_VKA694 = 496; literal VAX$K_VKA694 = 496; literal VAX$K_VKA694_S = 497; literal VAX$C_VKA694_S = 497; literal VAX$K_VKA694_J = 498; literal VAX$C_VKA694_J = 498; literal VAX$K_v1706_1T = 499; literal VAX$C_v1706_1T = 499; literal VAX$K_v1706_2T = 500; literal VAX$C_v1706_2T = 500; literal VAX$K_v1706_3T = 501; literal VAX$C_v1706_3T = 501; literal VAX$K_v1706_4T = 502; literal VAX$C_v1706_4T = 502; literal VAX$K_v1706_5T = 503; literal VAX$C_v1706_5T = 503; literal VAX$K_v1706_6T = 504; literal VAX$C_v1706_6T = 504; literal VAX$K_v1706_7T = 505; literal VAX$C_v1706_7T = 505; literal VAX$K_v1706_8T = 506; literal VAX$C_v1706_8T = 506; literal VAX$K_v1706_1S = 507; literal VAX$C_v1706_1S = 507; literal VAX$K_v1706_2S = 508; literal VAX$C_v1706_2S = 508; literal VAX$K_v1706_3S = 509; literal VAX$C_v1706_3S = 509; literal VAX$K_v1706_4S = 510; literal VAX$C_v1706_4S = 510; literal VAX$K_v1706_5S = 511; literal VAX$C_v1706_5S = 511; literal VAX$K_v1706_6S = 512; literal VAX$C_v1706_6S = 512; literal VAX$K_v1706_7S = 513; literal VAX$C_v1706_7S = 513; literal VAX$K_v1706_8S = 514; literal VAX$C_v1706_8S = 514; literal VAX$K_v1706_1J = 515; literal VAX$C_v1706_1J = 515; literal VAX$K_v1707_1T = 516; literal VAX$C_v1707_1T = 516; literal VAX$K_v1707_2T = 517; literal VAX$C_v1707_2T = 517; literal VAX$K_v1707_3T = 518; literal VAX$C_v1707_3T = 518; literal VAX$K_v1707_4T = 519; literal VAX$C_v1707_4T = 519; literal VAX$K_v1707_5T = 520; literal VAX$C_v1707_5T = 520; literal VAX$K_v1707_6T = 521; literal VAX$C_v1707_6T = 521; literal VAX$K_v1707_7T = 522; literal VAX$C_v1707_7T = 522; literal VAX$K_v1707_8T = 523; literal VAX$C_v1707_8T = 523; literal VAX$K_v1707_1S = 524; literal VAX$C_v1707_1S = 524; literal VAX$K_v1707_2S = 525; literal VAX$C_v1707_2S = 525; literal VAX$K_v1707_3S = 526; literal VAX$C_v1707_3S = 526; literal VAX$K_v1707_4S = 527; literal VAX$C_v1707_4S = 527; literal VAX$K_v1707_5S = 528; literal VAX$C_v1707_5S = 528; literal VAX$K_v1707_6S = 529; literal VAX$C_v1707_6S = 529; literal VAX$K_v1707_7S = 530; literal VAX$C_v1707_7S = 530; literal VAX$K_v1707_8S = 531; literal VAX$C_v1707_8S = 531; literal VAX$K_v1707_1J = 532; literal VAX$C_v1707_1J = 532; literal VAX$C_VKA57 = 533; literal VAX$K_VKA57 = 533; literal VAX$K_VKA57_S = 534; literal VAX$C_VKA57_S = 534; literal VAX$K_VKA57_J = 535; literal VAX$C_VKA57_J = 535; literal VAX$C_VKA58 = 536; literal VAX$K_VKA58 = 536; literal VAX$K_VKA58_S = 537; literal VAX$C_VKA58_S = 537; literal VAX$K_VKA58_J = 538; literal VAX$C_VKA58_J = 538; literal VAX$C_VKA59 = 539; literal VAX$K_VKA59 = 539; literal VAX$K_VKA59_S = 540; literal VAX$C_VKA59_S = 540; literal VAX$K_VKA59_J = 541; literal VAX$C_VKA59_J = 541; literal VAX$C_MAX_MODEL = 541; literal VAX$K_MAX_MODEL = 541; !*** MODULE $WBEMIDEF *** ! + ! SYS$GET_WBEM_INFO item code values ! - literal WBEMI$_SPU_COUNT = 1; ! Count, 64-bit integer, of "schedulable processing units" (SPU id, aka VMS CPUID) literal WBEMI$_SPU_LID_MAPPING = 2; ! Vector of WBEMI_LID_MAP, with LID and SPU_ID pairings, with SPU_COUNT entries literal WBEMI$_SPU_FREQUENCY = 3; ! SPU cycle frequency, 64-bit integer, param1=SPU id literal WBEMI$_SYS_HT_CAPABLE = 4; ! Is system Hyperthreads capable? (0/1, 64-bit integer) literal WBEMI$_SYS_HT_ENABLED = 5; ! Are system Hyperthreads currently enabled? (0/1, 64-bit integer) literal WBEMI$_SMBIOS_TABLE_TYPE = 6; ! Get SMBIOS table entries by type, param1=SMBIOS table type, raw binary data literal WBEMI$_DIMM_COUNT = 7; ! Number of DIMMs on the system, 64-bit integer, count of ACPI DIMM objects literal WBEMI$_DIMM_LOC = 8; ! DIMM location, ASCII string from ACPI, param1=DIMM# literal WBEMI$_DIMM_UID = 9; ! DIMM serial number, ASCII string from ACPI, param1=DIMM# literal WBEMI$_DIMM_PART = 10; ! DIMM part number, ASCII string from ACPI, param1=DIMM# literal WBEMI$_DIMM_SIZE = 11; ! DIMM size, 64-bit integer from ACPI, param1=DIMM# literal WBEMI$_DIMM_STATUS = 12; ! DIMM status, 64-bit integer from ACPI, param1=DIMM# literal WBEMI$_CELL_COUNT = 13; ! Number of cells in the system, 64-bit integer, count of ACPI cell objects literal WBEMI$_CELL_LOC = 14; ! Cell location, ASCII string from ACPI, param1=cell# literal WBEMI$_CELL_UID = 15; ! Cell UID, 64-bit integer from ACPI, param1=cell# literal WBEMI$_PHYS_CPU_COUNT = 16; ! Number of physical CPUs, 64-bit integer, count of ACPI processor objects literal WBEMI$_PHYS_CPU_ID = 17; ! Vector of 64-bit ACPI ProcIDs for PHYS_CPU_COUNT literal WBEMI$_PHYS_LID_MAPPING = 18; ! Vector of WBEMI_LID_MAP, with LID and PROC_ID pairings, with PHYS_CPU_COUNT entries literal WBEMI$_PHYS_CPU_LOC = 19; ! CPU chip location, ASCII string from ACPI, param1=ProcID literal WBEMI$_PHYS_CPU_SLOT_NUM = 20; ! CPU slot number, 64-bit integer from ACPI, param1=ProcID literal WBEMI$_PHYS_CPU_SERIAL = 21; ! CPU serial number, ASCII string from ACPI, param1=ProcID literal WBEMI$_PHYS_CPU_STATUS = 22; ! CPU status, 64-bit integer from ACPI, param1=ProcID literal WBEMI$_CORES_PER_SOCKET = 23; ! Number of cores per processor socket, 64-bit integer literal WBEMI$_THREADS_PER_CORE = 24; ! Number of threads per processor core, 64-bit integer literal WBEMI$_THREADS_CORE_MAX = 25; ! Number of potential threads per processor core, 64-bit integer literal WBEMI$_PHYS_CPU_UID_INT = 26; ! CPU UID, 64-bit integer from ACPI, param1=ProcID literal WBEMI$K_MAX_ITEM = 26; ! Maximum currently supported item code value ! + ! WBEMI_LID_MAP Structure ! ! Data returned by SYS$GET_WBEM_INFO WBEMI$_SPU_LID_MAPPING is a vector of ! WBEMI_LID_MAP structures, pairing a LID to its associated VMS cpuid in SPU_ID. ! The total number of these pairings is given by SPU_COUNT. ! ! Data returned by SYS$GET_WBEM_INFO WBEMI$_PHYS_LID_MAPPING is a vector of ! WBEMI_LID_MAP structures, pairing a LID to its associate ACPI PROC_ID. ! The total number of these pairings is given by PHYS_CPU_COUNT. ! ! The caller should not infer any significance to the order of the pairings in ! this vector. For example, one should not assume that the 5th instance of a ! LID and PROC_ID pairing corresponds to VMS CPUID 5. Instead, one needs to use ! both the LID/SPU_ID and LID/PROC_ID pairings to determine the SPU_ID/PROC_ID ! associations. ! - literal WBEMI_LID_MAP$S_WBEMI_LID_MAP = 16; macro WBEMI_LID_MAP$Q_LID = 0,0,0,0 %; literal WBEMI_LID_MAP$S_LID = 8; ! LID for the processor macro WBEMI_LID_MAP$R_ID_OVERLAY = 8,0,32,0 %; macro WBEMI_LID_MAP$L_ID = 8,0,32,0 %; ! Generic ID field, can be... macro WBEMI_LID_MAP$L_SPU_ID = 8,0,32,0 %; ! VMS CPUID (aka SPU IS) associated with the LID macro WBEMI_LID_MAP$L_PROC_ID = 8,0,32,0 %; ! ACPI PROC_ID associated with the LID macro WBEMI_LID_MAP$L_FILLER = 12,0,32,0 %; !*** MODULE $WWIDDEF IDENT X-4 *** ! ! Longword header prefixed to the World-Wide Identifier used in fibre channel. ! A WWID can be in any one of the eleven formats specified here. At this time ! though, only seven of these formats (WWID types 1-4, 9-11) are implemented ! in OpenVMS. ! ! Note that this is a common header, used by OpenVMS, Digital UNIX, and the ! Console. Any changes to this structure should be made in cooperation with ! these other groups. ! literal WWIDHDR$M_WWID_LENGTH = %X'FFFFF'; literal WWIDHDR$M_ASCII_DATA = %X'100000'; literal WWIDHDR$M_WWID_TYPE = %X'FF000000'; literal WWIDHDR$K_IEEE_REGEXT = 1; ! 1: Page83, ID type 3, NAA 0110 literal WWIDHDR$K_IEEE_REG = 2; ! 2: Page83, ID type 3, NAA 0101 literal WWIDHDR$K_PG83TY1_VID = 3; ! 3: PID+Page83, ID type 1 literal WWIDHDR$K_PG80_SERIALNO = 4; ! 4: VID+PID+Ser_No from Page80 literal WWIDHDR$K_INQ_SERIALNO = 5; ! 5: VID+PID+Ser_No from std. inq. data literal WWIDHDR$K_TGT_IDENT = 6; ! 6: VID+PID+Persistent_Tgt_ID literal WWIDHDR$K_BTL = 7; ! 7: VID+PID+Bus_No+Tgt_ID+LUN literal WWIDHDR$K_DEC_UNIQUE = 8; ! 8: HSZ-specific serial no's. literal WWIDHDR$K_HSZ_THISOTHER = 9; ! 9: THIS/OTHER ser. no. (older HSZs) literal WWIDHDR$K_IEEE48_VEXT = 10; ! 10: Page83, ID type 3, NAA 0010 literal WWIDHDR$K_IEEE48_0EXT = 11; ! 11: Page83, ID type 3, NAA 0001 literal WWIDHDR$K_IEEE_EUI64 = 12; ! 12: Page83, ID type 2 literal WWIDHDR$K_ISCSI_NAME = 13; ! 13: X-4 iSCSI Name literal WWIDHDR$S_WWIDHDR = 4; macro WWIDHDR$R_HEADER_FIELDS = 0,0,32,0 %; macro WWIDHDR$V_WWID_LENGTH = 0,0,20,0 %; literal WWIDHDR$S_WWID_LENGTH = 20; ! Length of WWID data macro WWIDHDR$V_ASCII_DATA = 0,20,1,0 %; ! Data is in ASCII format macro WWIDHDR$V_RESERVED1 = 0,21,3,0 %; literal WWIDHDR$S_RESERVED1 = 3; ! Reserved macro WWIDHDR$V_WWID_TYPE = 0,24,8,0 %; literal WWIDHDR$S_WWID_TYPE = 8; ! WWID format type ! ! World-Wide Identifier ! ! Includes the 4-byte header defined above and the body of the WWID. The ! largest WWID is currently the type that includes Vendor ID (8 bytes), ! Product ID (16 bytes), and Serial Number (up to 251 bytes). Rounding up ! to the nearest quadword boundary, this comes out to 276 bytes. ! literal WWID$S_WWID = 280; macro WWID$R_HEADER = 0,0,32,0 %; literal WWID$S_HEADER = 4; macro WWID$B_DATA = 4,0,0,1 %; literal WWID$S_DATA = 276; literal WWID$K_LENGTH = 280; ! ! Serial Number WWID ! ! This is the WWID that gets put together from both standard and Page 80 ! inquiry data. The Product ID and Vendor ID come from standard inquiry data. ! The Serial Number comes from Vital Product Data Page 80. The Header is the ! standard WWID header defined above. ! literal SN_WWID$S_SN_WWID = 280; macro SN_WWID$R_HEADER = 0,0,32,0 %; literal SN_WWID$S_HEADER = 4; macro SN_WWID$B_VENDOR_ID = 4,0,0,0 %; literal SN_WWID$S_VENDOR_ID = 8; macro SN_WWID$B_PRODUCT_ID = 12,0,0,0 %; literal SN_WWID$S_PRODUCT_ID = 16; macro SN_WWID$B_SERIAL_NO = 28,0,0,0 %; literal SN_WWID$S_SERIAL_NO = 252; literal SN_WWID$K_LENGTH = 280; ! ! The longest WWID is one that is made from the device's serial number, ! product ID, and vendor ID. ! 4 8 16 <= 252 ! +------+------------+-------------------+-----------------------------------+ ! |Header| Vendor | Product | Serial Number | ! +------+------------+-------------------+-----------------------------------+ ! ! Maximum WWID length comes out to 4+8+16+252 = 280 bytes. ! literal WWID$K_MAX_LENGTH = 280; ! ! WWID Table Entry ! ! The WWID table is created during boot by EXEC_INIT and is used by both ! EXEC_INIT and, later on in the boot, STACONFIG. The table stores informa- ! tion about all devices that have been registered by the user at the console. ! literal WWIDENT$S_WWIDENT = 128; macro WWIDENT$L_UNIT_NO = 0,0,32,1 %; macro WWIDENT$L_DNP = 4,0,32,1 %; macro WWIDENT$L_WWIDLEN = 8,0,32,0 %; macro WWIDENT$R_WWID = 12,0,0,0 %; literal WWIDENT$S_WWID = 116; macro WWIDENT$R_HEADER = 12,0,32,0 %; literal WWIDENT$S_HEADER = 4; macro WWIDENT$B_FCWWID = 16,0,0,1 %; literal WWIDENT$S_FCWWID = 112; literal WWIDENT$K_LENGTH = 128; literal WWIDTBL$K_MAX_ENTRIES = 1000; ! Max. entries in a WWID Table ! ! This structure points to a Fibre Channel adapter ID. This WWID differs ! from the other WWIDs in this file in that it is obtained directly from ! the adapter rather than the SCSI Device Identification page. Consequently, ! there is no header, vendor, and product information associated with ! this 64 bit identifier. The format of this 64 bit WWID is an IEEE 48 bit ! address with additional information as defined in the FC-PH. But we ! don't really care about the FC-PH format since all we want to do is display ! the 64 bits using the asci hex format of XXXX-XXXX-XXXX-XXXX, which is the ! widely accepted format used to display this information. ! literal FC_WWIDS_FC_WWID_64B = 8; macro FC_WWIDB_NAME = 0,0,0,0 %; literal FC_WWIDS_NAME = 8; !*** MODULE $XADEF *** ! + ! DR11-W DEFINITIONS FOR DEVICE SPECIFIC CHARACTERISTICS ! - literal XA$M_DATAPATH = %X'1'; literal XA$M_LINK = %X'2'; literal XA$S_XADEF = 1; macro XA$V_DATAPATH = 0,0,1,0 %; ! USE BUFFERED DATAPATH macro XA$V_LINK = 0,1,1,0 %; ! INTERPROCESSOR LINK MODE !*** MODULE $XKSTSDEF *** ! ! DEFINITIONS FOR 3271 LINE STATUS BLOCK (RETURNED BY IO$_RDSTATS) ! literal XKSTS$K_LSTR = 0; ! OFFSET OF BEGINNING OF DATA AREA literal XKSTS$C_LSTR = 0; ! OFFSET OF BEGINNING OF DATA AREA literal XKSTS$M_ACT = %X'1'; literal XKSTS$M_DGN = %X'2'; literal XKSTS$K_DSTR = 45; ! LENGTH OF THE LINE STATUS BLOCK literal XKSTS$C_DSTR = 45; ! LENGTH OF THE LINE STATUS BLOCK literal XKSTS$S_XKSTSDEF = 45; macro XKSTS$B_CUAD = 0,0,8,0 %; ! CONTROL UNIT ADDRESS (HEX EBCDIC) macro XKSTS$W_LSTS = 1,0,16,0 %; ! LINE STATUS macro XKSTS$V_ACT = 1,0,1,0 %; ! IF SET, LINE IS 'ON' (ACTIVE IN 3271 MODE) macro XKSTS$V_DGN = 1,1,1,0 %; ! IF SET, LINE IS EXECUTING A DIAGNOSTIC QIO macro XKSTS$B_PLSZ = 3,0,8,0 %; ! POOL SIZE macro XKSTS$W_BSIZ = 4,0,16,0 %; ! MAXIMUM BLOCK TO BE RECEIVED FROM IBM macro XKSTS$B_ECNT = 6,0,8,0 %; ! ENQ THRESHOLD macro XKSTS$W_TNAK = 7,0,16,0 %; ! NUMBER OF NAKS TRANSMITTED macro XKSTS$W_RNAK = 9,0,16,0 %; ! NUMBER OF NAKS RECEIVED macro XKSTS$W_TENQ = 11,0,16,0 %; ! NUMBER OF ENQS SENT macro XKSTS$W_RENQ = 13,0,16,0 %; ! NUMBER OF ENQS RECEIVED macro XKSTS$W_TRVI = 15,0,16,0 %; ! NUMBER OF RVIS TRANSMITTED macro XKSTS$W_RRVI = 17,0,16,0 %; ! NUMBER OF RVIS RECEIVED macro XKSTS$W_RCNV = 19,0,16,0 %; ! NUMBER OF CONVERSATIONAL MODE RESPONSES ! RECEIVED macro XKSTS$W_CHAI = 21,0,16,0 %; ! NUMBER OF CHAINED WRITES RECEIVED macro XKSTS$W_GPOL = 23,0,16,0 %; ! NUMBER OF GENERAL POLLS RECEIVED macro XKSTS$W_XACK = 25,0,16,0 %; ! NUMBER OF INVALID ACKS RECEIVED macro XKSTS$W_HABO = 27,0,16,0 %; ! NUMBER OF HOST ABORTS ENCOUNTERED macro XKSTS$W_DABO = 29,0,16,0 %; ! NUMBER OF DRIVER ABORTS ENCOUNTERED macro XKSTS$W_RTIM = 31,0,16,0 %; ! NUMBER OF ACK RESPONSE TIMEOUTS macro XKSTS$W_DISC = 33,0,16,0 %; ! NUMBER OF DISCONNECTS ENCOUNTERED macro XKSTS$W_HARD = 35,0,16,0 %; ! NUMBER OF HARDWARE FAILURES (INCLUDING ! DISCONNECTS) ENCOUNTERED macro XKSTS$W_TBLK = 37,0,16,0 %; ! NUMBER OF BLOCKS TRANSMITTED macro XKSTS$W_RBLK = 39,0,16,0 %; ! NUMBER OF BLOCKS RECEIVED macro XKSTS$W_HABX = 41,0,16,0 %; ! NUMBER OF DUBIOUS ACK OUTS macro XKSTS$W_IEOT = 43,0,16,0 %; ! NUMBER OF EOTS IMPLYING ACK !*** MODULE $XKDEVDEF *** ! ! 3271 DEVICE STATUS BLOCK ! ! THE DRIVER RETURNS N COPIES OF THIS BLOCK FOLLOWING THE LINE STATUS BLOCK ! IN THE USER'S BUFFER, WHERE N IS THE NUMBER OF ACTIVE DEVICES ON THE LINE. ! literal XKDEV$K_SIZE = 15; ! SIZE OF THE DEVICE STATUS BLOCK literal XKDEV$C_SIZE = 15; ! SIZE OF THE DEVICE STATUS BLOCK literal XKDEV$S_XKDEVDEF = 15; macro XKDEV$B_DUEB = 0,0,8,0 %; ! DEVICE ADDRESS (DU - HEX EBCDIC) macro XKDEV$L_DPID = 1,0,32,0 %; ! PROCESS ID OF PROCESS OWNING THIS DU macro XKDEV$W_TBLK = 5,0,16,0 %; ! NUMBER OF BLOCKS TRANSMITTED macro XKDEV$W_RBLK = 7,0,16,0 %; ! NUMBER OF BLOCKS RECEIVED macro XKDEV$W_SPOL = 9,0,16,0 %; ! NUMBER OF SPECIFIC POLLS RECEIVED macro XKDEV$W_ASEL = 11,0,16,0 %; ! NUMBER OF ADDRESS SELECTS RECEIVED macro XKDEV$W_CREJ = 13,0,16,0 %; ! NUMBER OF COMMAND REJECTS SENT !*** MODULE $XMDEF *** ! ! DEFINITIONS FOR STATUS, CHARACTERISTICS AND ERRORS FOR DMC-11/DMR-11/DMP-11 ! literal XMDEV$S_XMDEV = 8; macro XMDEV$B_P1_CLASS = 0,0,8,0 %; ! Device Class macro XMDEV$B_P1_TYPE = 1,0,8,0 %; ! Device type macro XMDEV$W_P1_MMS = 2,0,16,0 %; ! Maximum message size macro XMDEV$B_P1_CHAR = 4,0,8,0 %; ! Unit characteristics macro XMDEV$B_P1_STS = 5,0,8,0 %; ! Unit Status macro XMDEV$B_P1_ESUM = 6,0,8,0 %; ! Error Summary macro XMDEV$B_P1_TPI = 7,0,8,0 %; ! Transmit Pipeline no. literal XM$M_CHR_MOP = %X'1'; literal XM$M_CHR_LOOPB = %X'2'; literal XM$M_CHR_HDPLX = %X'4'; literal XM$M_CHR_SLAVE = %X'8'; literal XM$M_CHR_MBX = %X'10'; literal XM$M_CHR_DMC = %X'20'; literal XM$M_CHR_CTRL = %X'40'; literal XM$M_CHR_TRIB = %X'80'; literal XM$M_STS_DCHK = %X'100'; literal XM$M_STS_TIMO = %X'200'; literal XM$M_STS_ORUN = %X'400'; literal XM$M_STS_ACTIVE = %X'800'; literal XM$M_STS_BUFFAIL = %X'1000'; literal XM$M_STS_RUNNING = %X'2000'; literal XM$M_STS_DISC = %X'4000'; literal XM$M_ERR_FATAL = %X'10000'; literal XM$M_ERR_MAINT = %X'80000'; literal XM$M_ERR_LOST = %X'100000'; literal XM$M_ERR_THRESH = %X'200000'; literal XM$M_ERR_TRIB = %X'400000'; literal XM$M_ERR_START = %X'800000'; literal XM$M_MDM_RTSHLD = %X'1'; literal XM$M_MDM_STNDBY = %X'2'; literal XM$M_MDM_MAINT2 = %X'4'; literal XM$M_MDM_MAINT1 = %X'8'; literal XM$M_MDM_FREQ = %X'20'; literal XM$M_MDM_RDY = %X'40'; literal XM$M_MDM_POLL = %X'80'; literal XM$M_MDM_SELM = %X'100'; literal XM$M_MDM_INT = %X'800'; literal XM$M_MDM_V35 = %X'1000'; literal XM$M_MDM_RS232 = %X'4000'; literal XM$M_MDM_RS422 = %X'8000'; literal XM$M_MDM_CARRDET = %X'1'; literal XM$M_MDM_MSTNDBY = %X'2'; literal XM$M_MDM_CTS = %X'4'; literal XM$M_MDM_DSR = %X'8'; literal XM$M_MDM_HDX = %X'10'; literal XM$M_MDM_RTS = %X'20'; literal XM$M_MDM_DTR = %X'40'; literal XM$M_MDM_RING = %X'80'; literal XM$M_MDM_CHRMOD = %X'100'; literal XM$M_MDM_MCLOCK = %X'200'; literal XM$M_MDM_MODTEST = %X'400'; literal XM$M_MDM_SIGQUAL = %X'4000'; literal XM$M_MDM_SIGRATE = %X'8000'; literal XM$S_XMDEF = 3; macro XM$V_CHR_MOP = 0,0,1,0 %; ! MOP MODE macro XM$V_CHR_LOOPB = 0,1,1,0 %; ! LOOP BACK macro XM$V_CHR_HDPLX = 0,2,1,0 %; ! HALF DUPLEX macro XM$V_CHR_SLAVE = 0,3,1,0 %; ! HALF DUPLEX SLAVE STATION macro XM$V_CHR_MBX = 0,4,1,0 %; ! MAILBOX IS ENABLED macro XM$V_CHR_DMC = 0,5,1,0 %; ! DMC-11 COMPATABILITY MODE macro XM$V_CHR_CTRL = 0,6,1,0 %; ! CONTROL STATION macro XM$V_CHR_TRIB = 0,7,1,0 %; ! TRIBUTARY STATION macro XM$V_STS_DCHK = 0,8,1,0 %; ! DATA CHECK OCCURED macro XM$V_STS_TIMO = 0,9,1,0 %; ! TIMEOUT OCCURED macro XM$V_STS_ORUN = 0,10,1,0 %; ! DATA OVER RUN OCCURED macro XM$V_STS_ACTIVE = 0,11,1,0 %; ! ACTIVE UNIT macro XM$V_STS_BUFFAIL = 0,12,1,0 %; ! BUFFER ALLOCATION FAILURE OCCURED macro XM$V_STS_RUNNING = 0,13,1,0 %; ! PROTOCOL RUNNING macro XM$V_STS_DISC = 0,14,1,0 %; ! LINE DISCONNECT OCCURED macro XM$V_ERR_FATAL = 0,16,1,0 %; ! HARDWARE ERROR macro XM$V_ERR_MAINT = 0,19,1,0 %; ! DDCMP MAINT MESSAGE RECEIVED macro XM$V_ERR_LOST = 0,20,1,0 %; ! DATA LOST BECAUSE OF BUFFER SIZE MISMATCH macro XM$V_ERR_THRESH = 0,21,1,0 %; ! THRESHOLD ERRORS macro XM$V_ERR_TRIB = 0,22,1,0 %; ! TRIBUTARY MALFUNCTIONING macro XM$V_ERR_START = 0,23,1,0 %; ! DDCMP START MESSAGE RECEIVED macro XM$V_MDM_RTSHLD = 0,0,1,0 %; ! RTS HOLD macro XM$V_MDM_STNDBY = 0,1,1,0 %; ! SELECT STANDBY macro XM$V_MDM_MAINT2 = 0,2,1,0 %; ! MAINTENANCE MODE 2 macro XM$V_MDM_MAINT1 = 0,3,1,0 %; ! MAINTENANCE MODE 1 macro XM$V_MDM_FREQ = 0,5,1,0 %; ! SELECT FREQUENCY macro XM$V_MDM_RDY = 0,6,1,0 %; ! DATA TERMINAL READY macro XM$V_MDM_POLL = 0,7,1,0 %; ! SELECT POLLING MODEM MODE macro XM$V_MDM_SELM = 0,8,1,0 %; ! MODEM INTERFACE PROGRAM SELECTED macro XM$V_MDM_INT = 0,11,1,0 %; ! INTEGRAL MODEM macro XM$V_MDM_V35 = 0,12,1,0 %; ! V.35 macro XM$V_MDM_RS232 = 0,14,1,0 %; ! RS-232-C OR RS423 macro XM$V_MDM_RS422 = 0,15,1,0 %; ! RS-422 macro XM$V_MDM_CARRDET = 0,0,1,0 %; ! CARRIER DETECT macro XM$V_MDM_MSTNDBY = 0,1,1,0 %; ! MODEM STANDBY macro XM$V_MDM_CTS = 0,2,1,0 %; ! CLEAR TO SEND macro XM$V_MDM_DSR = 0,3,1,0 %; ! DATA SET READY macro XM$V_MDM_HDX = 0,4,1,0 %; ! HALF-DUPLEX macro XM$V_MDM_RTS = 0,5,1,0 %; ! REQUEST TO SEND macro XM$V_MDM_DTR = 0,6,1,0 %; ! DATA TERMINAL READY macro XM$V_MDM_RING = 0,7,1,0 %; ! RING macro XM$V_MDM_CHRMOD = 0,8,1,0 %; ! CHARACTER OR BIT PROTOCOL MODE macro XM$V_MDM_MCLOCK = 0,9,1,0 %; ! MAINTENANCE CLOCK macro XM$V_MDM_MODTEST = 0,10,1,0 %; ! MODEM TEST MODE macro XM$V_MDM_SIGQUAL = 0,14,1,0 %; ! SIGNAL QUALITY macro XM$V_MDM_SIGRATE = 0,15,1,0 %; ! SIGNAL RATE !*** MODULE $XWDEF *** ! ++ ! ! XWDEF - System definitions for software DDCMP ! ! -- literal XW$M_CHA_FDX = %X'1'; literal XW$M_CHA_XPR = %X'2'; literal XW$M_CHA_DSR = %X'4'; literal XW$M_FAT_STAT = %X'3FF'; literal XW$M_INFO_STAT = %X'FC00'; literal XW$M_EOT = %X'1'; literal XW$M_DATACK = %X'2'; literal XW$M_NODSR = %X'4'; literal XW$M_DISCON = %X'8'; literal XW$M_TRABINTMO = %X'10'; literal XW$M_PIPE_MARK = %X'20'; literal XW$M_BADCHAIN = %X'40'; literal XW$M_ILLMOD = %X'80'; literal XW$M_RVI = %X'400'; literal XW$M_CONACK = %X'800'; literal XW$M_XPR = %X'1000'; literal XW$M_ETXEND = %X'2000'; literal XW$M_PUNCH = %X'10000'; literal XW$M_HOR_FOR = %X'20000'; literal XW$M_IOMOD = %X'E000'; literal XW$S_XWDEF = 3; macro XW$V_CHA_FDX = 0,0,1,0 %; ! Full duplex line macro XW$V_CHA_XPR = 0,1,1,0 %; ! Transparency macro XW$V_CHA_DSR = 0,2,1,0 %; ! Data Set Ready set ! ! Device dependent status ! macro XW$V_FAT_STAT = 0,0,10,0 %; literal XW$S_FAT_STAT = 10; ! Beginning of fatal stat flags macro XW$V_INFO_STAT = 0,10,6,0 %; literal XW$S_INFO_STAT = 6; ! Start of informational status ! ! Bit definitions for fatal and informational status fields ! macro XW$V_EOT = 0,0,1,0 %; ! EOT received macro XW$V_DATACK = 0,1,1,0 %; ! Retry threshold exceeded macro XW$V_NODSR = 0,2,1,0 %; ! Line not connected macro XW$V_DISCON = 0,3,1,0 %; ! Disconnect (DLE, EOT) rcvd macro XW$V_TRABINTMO = 0,4,1,0 %; ! Binary transmit timeout macro XW$V_PIPE_MARK = 0,5,1,0 %; ! Aborted because of pipe mark macro XW$V_BADCHAIN = 0,6,1,0 %; ! Bad record list macro XW$V_ILLMOD = 0,7,1,0 %; ! Illegal QIO modifier macro XW$V_RVI = 0,10,1,0 %; ! Buffer ACKed with RVI macro XW$V_CONACK = 0,11,1,0 %; ! Buffer ACKed with conver resp macro XW$V_XPR = 0,12,1,0 %; ! Buffer rcvd with transparency macro XW$V_ETXEND = 0,13,1,0 %; ! Rcvd block ended with ETX macro XW$V_PUNCH = 0,16,1,0 %; ! Punch select found macro XW$V_HOR_FOR = 0,17,1,0 %; ! Horizontal forms record rcvd ! ! Read/Write function modifier definition ! macro XW$V_IOMOD = 0,13,3,0 %; literal XW$S_IOMOD = 3; ! I/O modifier field start ! ! ---- < End of module STARDEF.R32 - 12-AUG-2010 13:57:02.03 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:03 by OpenVMS SDL EV3-3 ! Source: 18-SEP-2009 02:17:15 $1$DGA7361:[STARLET.SRC]STARLET.SDL;1 ! ******************************************************************************************************************************** !*** MODULE STARLET *** ! ! SYSTEM SERVICE ENTRY POINT DESCRIPTIONS ! ! ! $ACM[W] ! ! Authentication and Credentials Management ! ! $ACM[W] [efn], func, [contxt], itmlst, acmsb, ! [astadr], [astprm] ! ! efn = number of event flag to set at service completion ! (read only, passed by value) ! func = function code and modifiers specifying action ! to be performed ! (read only, passed by value) ! contxt = context longword, used to maintain service state ! across iterative calls ! (modify, passed by reference) ! itmlst = list of item descriptors ! (read only, passed by reference) ! acmsb = ACM status block ! (write only, passed by reference) ! astadr = procedure value for AST routine to be called at ! service completion ! (execute only, passed by reference) ! astprm = value to be passed as an argument to the AST routine ! (passed by value) ! %if not %declared(%quote SDL$STARLET_REQ) %then ! MACRO to emit warning and default to 0 if required argument is missing ! macro SDL$STARLET_REQ(ARG1, arg2) = %IF not %NULL(ARG1) %THEN ARG1 %else %warn(%string('REQUIRED ARGUMENT ', %NAME(ARG2), ' MISSING')) 0 %FI %; %fi %if not %declared(%quote SDL$STARLET_OPT) %then ! Defaults omitted arguments to 0 if followed by additional arguments ! macro SDL$STARLET_OPT[ARG] = %IF %NULL(ARG) %THEN %IF NOT %NULL(%REMAINING) %THEN 0 %FI %ELSE ARG %FI %; %fi %if not %declared(%quote SDL$STARLET_LIST_0_REQ) %then ! Handles LIST parameters that are also OPTIONAL ! macro SDL$STARLET_LIST_0_REQ(ARG) = %IF NOT %NULL(ARG) %THEN %REMOVE(ARG) %FI %; %fi %if not %declared(%quote SDL$STARLET_LIST_1_REQ) %then ! Handles LIST parameters that are not OPTIONAL ! Emits warning and defaults to 0 if required argument is missing ! macro SDL$STARLET_LIST_1_REQ(ARG, ARG2) = %IF %NULL(ARG) %THEN %warn(%string('REQUIRED ARGUMENT ', %NAME(ARG2), ' MISSING')) 0 %ELSE SDL$STARLET_LIST_0_REQ(ARG) %FI %; %fi %if not %declared(%quote SDL$STARLET_CONCAT) %then ! Eliminates trailing null arguments ! macro SDL$STARLET_CONCAT[ARG] = %IF NOT %NULL(ARG) %THEN ARG %FI %; %fi ! *********************************** KEYWORDMACRO $ACM (EFN=0,FUNC,CONTXT=0,ITMLST,ACMSB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$ACM : BLISS ADDRESSING_MODE (GENERAL); SYS$ACM (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , CONTXT, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , SDL$STARLET_REQ(ACMSB, %QUOTE ACMSB) , ASTADR, ASTPRM)) END %; KEYWORDMACRO $ACMW (EFN=0,FUNC,CONTXT=0,ITMLST,ACMSB,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$ACMW : BLISS ADDRESSING_MODE (GENERAL); SYS$ACMW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , CONTXT, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , SDL$STARLET_REQ(ACMSB, %QUOTE ACMSB) , ASTADR, ASTPRM)) END %; ! ! $ADD_HOLDER ! ! Add Holder Record To The Rights Database ! ! $ADD_HOLDER id, holder, [attrib] ! ! id = identifier longword to associate the ! holder record with ! holder = address of the holder identifier quadword ! attrib = attributes longword to grant to the holder KEYWORDMACRO $ADD_HOLDER (ID,HOLDER,ATTRIB=0) = BEGIN EXTERNAL ROUTINE SYS$ADD_HOLDER : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_HOLDER (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) , SDL$STARLET_REQ(HOLDER, %QUOTE HOLDER) , ATTRIB)) END %; ! ! $ADD_IDENT ! ! Add Identifier To The Rights Database ! ! $ADD_IDENT name, [id], [attrib], [resid] ! ! name = address of the identifier name character ! string descriptor ! id = identifier longword to associate with 'name' ! attrib = attributes longword to grant to the ! identifier ! resid = address of a longword to return the assigned ! identifier ! KEYWORDMACRO $ADD_IDENT (NAME,ID=0,ATTRIB=0,RESID=0) = BEGIN EXTERNAL ROUTINE SYS$ADD_IDENT : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_IDENT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(NAME, %QUOTE NAME) , ID, ATTRIB, RESID)) END %; ! ! $ADD_MAPPING ! ! Add Mapping record to Mapping database ! ! $ADD_MAPPING initmlst ! ! initmlst = address of a list of item descriptors for the operation ! KEYWORDMACRO $ADD_MAPPING (INITMLST) = BEGIN EXTERNAL ROUTINE SYS$ADD_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_MAPPING (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INITMLST, %QUOTE INITMLST) )) END %; ! ! $ADD_PROXY ! ! Add proxy record ! ! $ADD_PROXY rem_node, rem_user, local_user, [flags] ! ! rem_node in address of remote node descriptor ! rem_user in address of remote user descriptor ! local_user in address of local user descriptor ! flags in proxy service flags ! KEYWORDMACRO $ADD_PROXY (REM_NODE,REM_USER,LOCAL_USER,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$ADD_PROXY : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_PROXY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REM_NODE, %QUOTE REM_NODE) , SDL$STARLET_REQ(REM_USER, %QUOTE REM_USER) , SDL$STARLET_REQ(LOCAL_USER, %QUOTE LOCAL_USER) , FLAGS)) END %; ! ! $ADJSTK ! ! Adjust Outer Mode Stack Pointer ! ! $ADJSTK [acmode] ,[adjust] ,newadr ! ! acmode = access mode for which to adjust stack pointer ! adjust = 16-bit signed adjustment value ! newadr = address of longword to store updated value ! KEYWORDMACRO $ADJSTK (ACMODE=0,ADJUST=0,NEWADR) = BEGIN EXTERNAL ROUTINE SYS$ADJSTK : BLISS ADDRESSING_MODE (GENERAL); SYS$ADJSTK (SDL$STARLET_CONCAT( ACMODE, ADJUST, SDL$STARLET_REQ(NEWADR, %QUOTE NEWADR) )) END %; ! ! $ADJWSL ! ! Adjust Working Set Limit ! ! $ADJWSL [pagcnt] ,[wsetlm] ! ! pagcnt = number of pages to add to working set (if positive). ! Number of pages to subtract from working set (if ! negative). ! wsetlm = address of longword to receive new working set limit, ! or current working set limit if pagcnt not specified. ! KEYWORDMACRO $ADJWSL (PAGCNT=0,WSETLM=0) = BEGIN EXTERNAL ROUTINE SYS$ADJWSL : BLISS ADDRESSING_MODE (GENERAL); SYS$ADJWSL (SDL$STARLET_CONCAT( PAGCNT, WSETLM)) END %; ! ! $ALLOC ! ! Allocate Device ! ! $ALLOC devnam ,[phylen] ,[phybuf] ,[acmode] ,[flags] ! ! devnam = address of device name or logical name string ! descriptor ! phylen = address of word to receive length of physical name ! phybuf = address of physical name buffer descriptor ! acmode = access mode associated with allocated device ! flags = options flags longword ! KEYWORDMACRO $ALLOC (DEVNAM,PHYLEN=0,PHYBUF=0,ACMODE=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$ALLOC : BLISS ADDRESSING_MODE (GENERAL); SYS$ALLOC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , PHYLEN, PHYBUF, ACMODE, FLAGS)) END %; ! ! $ASCEFC ! ! Associate Common Event Flag Cluster ! ! $ASCEFC efn ,name ,[prot] ,[perm] ! ! efn = number of any event flag in the cluster with which to ! associate ! name = address of the text name string descriptor ! prot = protection indicator for the cluster ! 0 -> default, any process in group ! 1 -> only owner's UIC ! perm = permanent indicator ! 0 -> temporary cluster ! 1 -> permanent cluster ! KEYWORDMACRO $ASCEFC (EFN,NAME,PROT=0,PERM=0) = BEGIN EXTERNAL ROUTINE SYS$ASCEFC : BLISS ADDRESSING_MODE (GENERAL); SYS$ASCEFC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) , SDL$STARLET_REQ(NAME, %QUOTE NAME) , PROT, PERM)) END %; ! ! $ASCTIM ! ! Convert Binary Time to ASCII String ! ! $ASCTIM [timlen] ,timbuf ,[timadr] ,[cvtflg] ! ! timlen = address of a word to receive the number of characters ! inserted into the output buffer. ! timbuf = address of a character string descriptor describing ! the buffer to receive the converted time. ! timadr = address of the quadword containing the 64-bit time to ! be converted to ASCII. If 0, use current time. ! cvtflg = conversion indicator ! 0 -> return full date and time ! 1 -> return converted time only ! KEYWORDMACRO $ASCTIM (TIMLEN=0,TIMBUF,TIMADR=0,CVTFLG=0) = BEGIN EXTERNAL ROUTINE SYS$ASCTIM : BLISS ADDRESSING_MODE (GENERAL); SYS$ASCTIM (SDL$STARLET_CONCAT( TIMLEN, SDL$STARLET_REQ(TIMBUF, %QUOTE TIMBUF) , TIMADR, CVTFLG)) END %; ! ! $ASCTOID ! ! Ascii To Identifier Conversion ! ! $ASCTOID name, [id], [attrib] ! ! name = address of the identifier name character ! string descriptor to be converted ! id = address to return the identifier longword ! attrib = address to return the attributes longword ! KEYWORDMACRO $ASCTOID (NAME,ID=0,ATTRIB=0) = BEGIN EXTERNAL ROUTINE SYS$ASCTOID : BLISS ADDRESSING_MODE (GENERAL); SYS$ASCTOID (SDL$STARLET_CONCAT( SDL$STARLET_REQ(NAME, %QUOTE NAME) , ID, ATTRIB)) END %; ! ! $ASCUTC ! ! Convert Binary UTC time into ASCII time string ! ! $ASCUTC [timlen], timbuf, [utcadr], [cvtflg] ! ! timlen = Length (in bytes) of the ASCII string ! returned by $ASCUTC. The timelen argument ! is the address of a word containing this length. ! timbuf = Buffer into which $ASCUTC writes the ASCII string. ! The timbuf argument is the address of a character ! string descriptor pointing to the bufer. The ! buffer length specified in the timbuf argument, ! together rwith the cvtflg argument, controls what ! information is returned. ! utcadr = Time value that $ASCUTC is to convert. The utcadr ! argument is the address of this 128-bit time value. ! Relative times are not permitted. If utcadr is ! not specified ( ie 0 ), $ASCUTC returns the current ! date and time. ! cvtflg = Conversion indicator specifying which date and time ! fields $ASCUTC should return. The cvtflg argument is ! a longword value, which is interpreted as Boolean. ! The value 1 specifies that ASCUTC should return only ! the hour,minute,second, and hundreths of a second fields. ! The default value 0 specifies that $ASCUTC should return ! the full date and time. ! KEYWORDMACRO $ASCUTC (TIMLEN=0,TIMBUF,UTCADR=0,CVTFLG=0) = BEGIN EXTERNAL ROUTINE SYS$ASCUTC : BLISS ADDRESSING_MODE (GENERAL); SYS$ASCUTC (SDL$STARLET_CONCAT( TIMLEN, SDL$STARLET_REQ(TIMBUF, %QUOTE TIMBUF) , UTCADR, CVTFLG)) END %; ! ! $ASSIGN ! ! Assign I/O Channel ! ! $ASSIGN devnam ,chan ,[acmode] ,[mbxnam], [flags] ! ! devnam = address of device name or logical name string ! descriptor ! chan = address of word to receive channel number assigned ! acmode = access mode associated with channel ! mbxnam = address of mailbox logical name string descriptor, if ! mailbox associated with device ! flags = optional channel flags longword for specifying options ! for the $ASSIGN operation ! KEYWORDMACRO $ASSIGN (DEVNAM,CHAN,ACMODE=0,MBXNAM=0,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$ASSIGN : BLISS ADDRESSING_MODE (GENERAL); SYS$ASSIGN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ACMODE, MBXNAM, SDL$STARLET_OPT( FLAGS))) END %; ! ! $AUDIT_EVENT ! ! Audit Security Relevant Event ! ! $AUDIT_EVENT(W) [efn], [flags], itmlst, [audsts], [astadr], [astprm] ! ! efn = number of event flag to set on completion ! ! flags = input flags longword ! ! itmlst = address of list of item descriptors ! ! audsts = address of longword to receive final completion status ! ! astadr = address of AST completion routine ! ! astprm = unsigned longword to be passed to AST routine ! KEYWORDMACRO $AUDIT_EVENT (EFN=0,FLAGS=0,ITMLST,AUDSTS=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$AUDIT_EVENT : BLISS ADDRESSING_MODE (GENERAL); SYS$AUDIT_EVENT (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , AUDSTS, ASTADR, ASTPRM)) END %; KEYWORDMACRO $AUDIT_EVENTW (EFN=0,FLAGS=0,ITMLST,AUDSTS=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$AUDIT_EVENTW : BLISS ADDRESSING_MODE (GENERAL); SYS$AUDIT_EVENTW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , AUDSTS, ASTADR, ASTPRM)) END %; ! ! $BINTIM ! ! Convert ASCII String to Binary Time ! ! $BINTIM timbuf ,timadr ! ! timbuf = address of string descriptor for ASCII time string ! timadr = address of quadword to receive 64-bit binary time ! value ! ! Absolute time strings are specified in the format: ! dd-mmm-yyyy hh:mm:ss.cc ! Delta time strings are specified in the format: ! dddd hh:mm:ss.cc ! KEYWORDMACRO $BINTIM (TIMBUF,TIMADR) = BEGIN EXTERNAL ROUTINE SYS$BINTIM : BLISS ADDRESSING_MODE (GENERAL); SYS$BINTIM (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TIMBUF, %QUOTE TIMBUF) , SDL$STARLET_REQ(TIMADR, %QUOTE TIMADR) )) END %; ! ! $BINUTC ! ! Convert ASCII UTC time to a binary format ! ! $BINUTC timbuf, utcadr ! ! timbuf = Buffer that holds the ASCII time to be converted. ! The timbuf argument specifies the address of a ! character string descriptor pointing to the VMS ! time string. The VMS time string specifies the ! absolute time to be converted by $BINUTC. ! utcadr = Time value that $BINUTC has converted. The ! utcadr argument is the address of the utc_date_time ! which receives the converted time. ! KEYWORDMACRO $BINUTC (TIMBUF,UTCADR) = BEGIN EXTERNAL ROUTINE SYS$BINUTC : BLISS ADDRESSING_MODE (GENERAL); SYS$BINUTC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TIMBUF, %QUOTE TIMBUF) , SDL$STARLET_REQ(UTCADR, %QUOTE UTCADR) )) END %; ! ! $BRDCST ! ! Broadcast ! ! $BRDCST msgbuf ,[devnam] ! ! msgbuf = address of message buffer string descriptor ! devnam = terminal device name string descriptor. If 0, send ! message to all terminals. If first word in ! descriptor is 0, send message to all allocated ! terminals. ! KEYWORDMACRO $BRDCST (MSGBUF,DEVNAM=0,FLAGS=0,CARCON=32) = BEGIN EXTERNAL ROUTINE SYS$BRDCST : BLISS ADDRESSING_MODE (GENERAL); SYS$BRDCST (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGBUF, %QUOTE MSGBUF) , DEVNAM, FLAGS, CARCON)) END %; ! $BRKTHRU ! ! Write to terminal breakthru ! ! $BRKTHRU [efn] ,msgbuf, [sendto], [sndtyp], [iosb], ! ($BRKTHRUW) [carcon], [flags], [reqid], [timout], ! [astadr], [astprm] ! ! efn = event flag to be set at completion ! ! msgbuf = address of message buffer descriptor ! ! sendto = address of send address descriptor ! ! sndtyp = value to describe sendto ! ! iosb = address of a quadword I/O status block ! ! carcon = carriage control ! ! flags = flags to modify broadcast ! ! reqid = broadcast class requestor id ! ! timout = address of timeout value ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as an argument ! ! KEYWORDMACRO $BRKTHRU (EFN=0,MSGBUF=0,SENDTO=0,SNDTYP=0,IOSB=0 ,CARCON=32,FLAGS=0,REQID=0,TIMOUT=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$BRKTHRU : BLISS ADDRESSING_MODE (GENERAL); SYS$BRKTHRU (SDL$STARLET_CONCAT( EFN, MSGBUF, SENDTO, SNDTYP, IOSB, CARCON, FLAGS, REQID, TIMOUT, ASTADR, ASTPRM)) END %; KEYWORDMACRO $BRKTHRUW (EFN=0,MSGBUF=0,SENDTO=0,SNDTYP=0,IOSB=0 ,CARCON=32,FLAGS=0,REQID=0,TIMOUT=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$BRKTHRUW : BLISS ADDRESSING_MODE (GENERAL); SYS$BRKTHRUW (SDL$STARLET_CONCAT( EFN, MSGBUF, SENDTO, SNDTYP, IOSB, CARCON, FLAGS, REQID, TIMOUT, ASTADR, ASTPRM)) END %; ! ! $CANCEL ! ! Cancel I/O on Channel ! ! $CANCEL chan ! ! chan = number of the channel on which I/O is to be canceled ! KEYWORDMACRO $CANCEL (CHAN) = BEGIN EXTERNAL ROUTINE SYS$CANCEL : BLISS ADDRESSING_MODE (GENERAL); SYS$CANCEL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) )) END %; ! ! $CANCEL_SELECTIVE ! ! Selective Cancel I/O on Channel ! ! $CANCEL_SELECTIVE chan, [iosblst], [lenlst] ! ! chan = number of the channel on which I/O is to be canceled ! iosblst = address of a vector of IOSB pointers ! lenlst = number of entries in the vector pointed by iosblst ! KEYWORDMACRO $CANCEL_SELECTIVE (CHAN,IOSBLST=0,LENLST=0) = BEGIN EXTERNAL ROUTINE SYS$CANCEL_SELECTIVE : BLISS ADDRESSING_MODE (GENERAL); SYS$CANCEL_SELECTIVE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , IOSBLST, LENLST)) END %; ! $CANEVTAST ! ! Cancel an Event AST Routine ! ! $CANEVTAST [evtnam], [evtadr], [evtfac], [acmode], [flags], [reqid] ! ,[evtid] ! ! evtnam = address of descriptor of event name ! ! evtadr = address of entry mask of event AST routine ! ! evtfac = address of event facility code ! ! acmode = access mode of event declaration ! ! flags = address of optional flags ! ! reqid = user provided identification of this request ! ! evtid = unique identification of this request ! KEYWORDMACRO $CANEVTAST (EVTNAM=0,EVTADR=0,EVTFAC=0,ACMODE=0,FLAGS=0 ,REQID=0,EVTID=0) = BEGIN EXTERNAL ROUTINE SYS$CANEVTAST : BLISS ADDRESSING_MODE (GENERAL); SYS$CANEVTAST (SDL$STARLET_CONCAT( EVTNAM, EVTADR, EVTFAC, ACMODE, FLAGS, REQID, EVTID)) END %; ! ! $CANEXH ! ! Cancel Exit Handler ! ! $CANEXH [desblk] ! ! desblk = address of exit control block describing exit handler ! to be deleted. If 0, delete all. ! KEYWORDMACRO $CANEXH (DESBLK=0) = BEGIN EXTERNAL ROUTINE SYS$CANEXH : BLISS ADDRESSING_MODE (GENERAL); SYS$CANEXH (SDL$STARLET_CONCAT( DESBLK)) END %; ! ! $CANTIM ! ! Cancel Timer Request ! ! $CANTIM [reqidt] ,[acmode] ! ! reqidt = request identification for request to be canceled. ! If 0, all requests canceled. ! acmode = access mode of requests to be canceled ! KEYWORDMACRO $CANTIM (REQIDT=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$CANTIM : BLISS ADDRESSING_MODE (GENERAL); SYS$CANTIM (SDL$STARLET_CONCAT( REQIDT, ACMODE)) END %; ! ! $CANWAK ! ! Cancel Wakeup ! ! $CANWAK [pidadr] ,[prcnam] ! ! pidadr = address of process identification of process for ! which wakeups are to be canceled ! prcnam = address of process name string descriptor ! KEYWORDMACRO $CANWAK (PIDADR=0,PRCNAM=0) = BEGIN EXTERNAL ROUTINE SYS$CANWAK : BLISS ADDRESSING_MODE (GENERAL); SYS$CANWAK (SDL$STARLET_CONCAT( PIDADR, PRCNAM)) END %; ! $CHANGE_ACL ! ! Set or modify an object's ACL ! ! $CHANGE_ACL [chan], objtyp, [objnam], ! itmlst, [acmode], [iosb], ! [contxt] , [routin], [orbadr] ! ! chan = number of a channel assigned to the object or ! 0 if object is specified by the objnam parameter ! ! objtyp = address of an object type code ! ! objnam = address of object name ! ! itmlst = address of a list of item descriptors ! ! acmode = address of a byte containing the access mode in ! which the arguments will be validated ! ! iosb = address of a quadword I/O status block ! ! contxt = address of a context long word (used for iterative ! calls or a multi-entry item list) ! ! routin = address of routine to be executed in kernel mode ! (obsolete) ! ! orbadr = address of a user supplied ORB ! KEYWORDMACRO $CHANGE_ACL (CHAN=0,OBJTYP,OBJNAM=0,ITMLST,ACMODE=0 ,IOSB=0,CONTXT=0,ROUTIN=0,ORBADR=0) = BEGIN EXTERNAL ROUTINE SYS$CHANGE_ACL : BLISS ADDRESSING_MODE (GENERAL); SYS$CHANGE_ACL (SDL$STARLET_CONCAT( CHAN, SDL$STARLET_REQ(OBJTYP, %QUOTE OBJTYP) , OBJNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , ACMODE, IOSB, CONTXT, ROUTIN, ORBADR)) END %; ! $CHANGE_CLASS objtyp, [objnam], itmlst ! [acmode], [orbadr] ! ! Modify an objects access class ! ! objtyp = address of an object type code ! ! objnam = address of an object name descriptor ! ! itmlst = address of a list of item descriptors ! ! acmode = address of a byte containing the access mode in ! which the arguments will be validated ! ! orbadr = address of routine to be executed in kernel mode ! ! KEYWORDMACRO $CHANGE_CLASS (OBJTYP,OBJNAM,ITMLST,ACMODE=0,ORBADR=0) = BEGIN EXTERNAL ROUTINE SYS$CHANGE_CLASS : BLISS ADDRESSING_MODE (GENERAL); SYS$CHANGE_CLASS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(OBJTYP, %QUOTE OBJTYP) , SDL$STARLET_REQ(OBJNAM, %QUOTE OBJNAM) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , ACMODE, ORBADR)) END %; ! $CHECK_ACCESS ! ! $CHECK_ACCESS [objtyp], [objnam], [usrnam], itmlst, [contxt], ! [clsnam], [objpro], [usrpro] ! ! Check User Access to an Object ! ! objtyp = address of an object type code ! ! objnam = address of an object name descriptor ! ! usrnam = address of a user name descriptor ! ! itmlst = address of a list of item descriptors ! ! contxt = address of longword for UAI context ! ! clsnam = address of object class name descriptor ! ! objpro = address of object profile descriptor(ORB TLV or channel) ! ! usrpro = address of user profile descriptor (ARB TLV) ! KEYWORDMACRO $CHECK_ACCESS (OBJTYP=0,OBJNAM=0,USRNAM=0,ITMLST ,CONTXT=0,CLSNAM=0,OBJPRO=0,USRPRO=0) = BEGIN EXTERNAL ROUTINE SYS$CHECK_ACCESS : BLISS ADDRESSING_MODE (GENERAL); SYS$CHECK_ACCESS (SDL$STARLET_CONCAT( OBJTYP, OBJNAM, USRNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , CONTXT, CLSNAM, OBJPRO, USRPRO)) END %; ! $CHECK_FEN ! ! Check if floating point enabled for current image ! KEYWORDMACRO $CHECK_FEN (RETMASK) = BEGIN EXTERNAL ROUTINE SYS$CHECK_FEN : BLISS ADDRESSING_MODE (GENERAL); SYS$CHECK_FEN (SDL$STARLET_CONCAT( SDL$STARLET_OPT( RETMASK))) END %; ! $CHECK_PRIVILEGE[W] ! ! Check for process privilege and perform security audit. ! ! $CHECK_PRIVILEGE[W] [efn] ,prvadr ,[altprv] ,[flags] ,[itmlst] ,[audsts] ,[astadr] ,[astprm] ! ! efn = event flag to set on asynchronous service completion ! prvadr = address of quadword privilege mask or longword identifier ! altprv = address of quadword privilege mask to check against ! flags = control flags ! itmlst = address of a list of item descriptors ! audsts = longword to receive final completion status ! astadr = address of AST routine to call on service completion ! astprm = longword to pass to AST routine ! KEYWORDMACRO $CHECK_PRIVILEGE (EFN=0,PRVADR,ALTPRV=0,FLAGS=0,ITMLST=0 ,AUDSTS=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$CHECK_PRIVILEGE : BLISS ADDRESSING_MODE (GENERAL); SYS$CHECK_PRIVILEGE (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(PRVADR, %QUOTE PRVADR) , ALTPRV, FLAGS, ITMLST, AUDSTS, ASTADR, ASTPRM)) END %; KEYWORDMACRO $CHECK_PRIVILEGEW (EFN=0,PRVADR,ALTPRV=0,FLAGS=0 ,ITMLST=0,AUDSTS=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$CHECK_PRIVILEGEW : BLISS ADDRESSING_MODE (GENERAL); SYS$CHECK_PRIVILEGEW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(PRVADR, %QUOTE PRVADR) , ALTPRV, FLAGS, ITMLST, AUDSTS, ASTADR, ASTPRM)) END %; ! ! $CHKPRO ! ! Check Access Protection ! ! $CHKPRO itmlst, [objpro], [usrpro] ! ! itmlst = address of a list of item descriptors ! objpro = address of object handle descriptor (ORB TLV) ! usrpro = address of user handle descriptor (ARB TLV) ! KEYWORDMACRO $CHKPRO (ITMLST,OBJPRO=0,USRPRO=0) = BEGIN EXTERNAL ROUTINE SYS$CHKPRO : BLISS ADDRESSING_MODE (GENERAL); SYS$CHKPRO (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , OBJPRO, USRPRO)) END %; ! $CLEAR_SYSTEM_EVENT ! ! Clear System Event Notification ! ! $CLEAR_SYSTEM_EVENT [handle], [acmode], [event] ! ! handle = address of handle ! ! acmode = access mode of AST ! ! event = code indicating type of event ! KEYWORDMACRO $CLEAR_SYSTEM_EVENT (HANDLE=0,ACMODE=0,EVENT=0) = BEGIN EXTERNAL ROUTINE SYS$CLEAR_SYSTEM_EVENT : BLISS ADDRESSING_MODE (GENERAL); SYS$CLEAR_SYSTEM_EVENT (SDL$STARLET_CONCAT( HANDLE, ACMODE, EVENT)) END %; ! $CLEAR_UNWIND_TABLE ! ! Clears unwind table (UT) information. ! ! $CLEAR_UNWIND_TABLE code_base_va ! ! code_base_va = process virtual address of the start of a registered code region ! KEYWORDMACRO $CLEAR_UNWIND_TABLE (CODE_BASE_VA=0) = BEGIN EXTERNAL ROUTINE SYS$CLEAR_UNWIND_TABLE : BLISS ADDRESSING_MODE (GENERAL); SYS$CLEAR_UNWIND_TABLE (SDL$STARLET_CONCAT( CODE_BASE_VA)) END %; ! $CLRCLUEVT ! ! Clear Cluster Event Notification ! ! $CLRCLUEVT [handle], [acmode], [event] ! ! handle = address of handle ! ! acmode = access mode of AST ! ! event = code indicating type of event ! KEYWORDMACRO $CLRCLUEVT (HANDLE=0,ACMODE=0,EVENT=0) = BEGIN EXTERNAL ROUTINE SYS$CLRCLUEVT : BLISS ADDRESSING_MODE (GENERAL); SYS$CLRCLUEVT (SDL$STARLET_CONCAT( HANDLE, ACMODE, EVENT)) END %; ! ! $CLREF ! ! Clear Event Flag ! ! $CLREF efn ! ! efn = number of event flag to be cleared ! KEYWORDMACRO $CLREF (EFN) = BEGIN EXTERNAL ROUTINE SYS$CLREF : BLISS ADDRESSING_MODE (GENERAL); SYS$CLREF (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) )) END %; ! ! $CLOSE ! ! Close File ! ! $CLOSE fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $CLOSE (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$CLOSE : BLISS ADDRESSING_MODE (GENERAL); SYS$CLOSE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $CMEXEC ! ! Change to Executive Mode ! ! $CMEXEC routin ,[arglst] ! ! routin = address of the routine to be executed in executive ! mode ! arglst = address of argument list to be supplied to the ! routine ! KEYWORDMACRO $CMEXEC (ROUTIN,ARGLST=0) = BEGIN EXTERNAL ROUTINE SYS$CMEXEC : BLISS ADDRESSING_MODE (GENERAL); SYS$CMEXEC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ROUTIN, %QUOTE ROUTIN) , ARGLST)) END %; ! ! $CMEXEC_64 ! ! Change to Executive Mode with Quadword Argument List ! ! $CMEXEC_64 routin_64 ,[arglst_64] ! ! routin_64 = address of the routine to be executed in executive ! mode ! arglst_64 = address of quadword argument list to be supplied to the ! routine ! KEYWORDMACRO $CMEXEC_64 (ROUTIN_64,ARGLST_64=0) = BEGIN EXTERNAL ROUTINE SYS$CMEXEC_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CMEXEC_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ROUTIN_64, %QUOTE ROUTIN_64) , ARGLST_64)) END %; ! $CMKRNL ! ! Change to Kernel Mode ! ! $CMKRNL routin ,[arglst] ! ! routin = address of routine to be executed in kernel mode ! ! arglst = address of argument list to be supplied to routine ! KEYWORDMACRO $CMKRNL (ROUTIN,ARGLST=0) = BEGIN EXTERNAL ROUTINE SYS$CMKRNL : BLISS ADDRESSING_MODE (GENERAL); SYS$CMKRNL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ROUTIN, %QUOTE ROUTIN) , ARGLST)) END %; ! $CMKRNL_64 ! ! Change to Kernel Mode with Quadword Argument List ! ! $CMKRNL_64 routin_64 ,[arglst_64] ! ! routin_64 = address of routine to be executed in kernel mode ! ! arglst_64 = address of quadword argument list to be supplied to routine ! KEYWORDMACRO $CMKRNL_64 (ROUTIN_64,ARGLST_64=0) = BEGIN EXTERNAL ROUTINE SYS$CMKRNL_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CMKRNL_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ROUTIN_64, %QUOTE ROUTIN_64) , ARGLST_64)) END %; ! ! $CONNECT ! ! Connect File ! ! $CONNECT rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $CONNECT (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$CONNECT : BLISS ADDRESSING_MODE (GENERAL); SYS$CONNECT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $CNTREG ! ! Contract Program/Control Region ! ! $CNTREG pagcnt ,[retadr] ,[acmode] ,[region] ! ! pagcnt = number of pages to be deleted from end of region ! ! retadr = address of 2-longword array to receive virtual ! addresses of starting and ending page of deleted area ! ! acmode = access mode for which service is performed ! ! region = region indicator ! 0 -> program (P0) region 1 -> control (P1) region ! KEYWORDMACRO $CNTREG (PAGCNT,RETADR=0,ACMODE=0,REGION=0) = BEGIN EXTERNAL ROUTINE SYS$CNTREG : BLISS ADDRESSING_MODE (GENERAL); SYS$CNTREG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PAGCNT, %QUOTE PAGCNT) , RETADR, ACMODE, REGION)) END %; ! ! $CPU_CAPABILITIES ! ! Modify CPU user capabilities ! ! $CPU_CAPABILITIES cpu_id,[select_mask],[modify_mask],[prev_mask],[flags] ! ! cpu_id = CPUID number of processor to be affected by changes ! select_mask = address of bitmask indicating which capabilities ! are to be involved in the specified operation ! modify_mask = address of bitmask indicating final state ! of those capabilities specified in select_mask ! prev_mask = address of user quadword that will hold the ! previous states of the individual capabilities ! flags = address of behavioral flags for this operation ! KEYWORDMACRO $CPU_CAPABILITIES (CPU_ID=0,SELECT_MASK=0,MODIFY_MASK=0 ,PREV_MASK=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$CPU_CAPABILITIES : BLISS ADDRESSING_MODE (GENERAL); SYS$CPU_CAPABILITIES (SDL$STARLET_CONCAT( CPU_ID, SELECT_MASK, MODIFY_MASK, PREV_MASK, FLAGS)) END %; ! ! $CPU_TRANSITION ! $CPU_TRANSITIONW ! ! CPU State Transitions ! ! $CPU_TRANSITION tran_code,cpu_id,[node_id],flags,efn,iosb,astadr,astprm ! $CPU_TRANSITIONW tran_code,cpu_id,[node_id],flags,efn,iosb,astadr,astprm ! Inputs: tran_code - Transition code of operation to be initiated ! cpu_id - CPU ID of processor to affected ! nodename - ASCII descriptor name equivalent to node ID ! node_id - Galactic node ID ! flags - Quadword pointer to longword behavioral flags ! efn - Event flag number for completion notification ! iosb - IOSB block address for completion notification ! astadr - Address of AST routine name on completion ! astprm - AST parameter to be passed back on completion ! timout - Timeout count in seconds ! KEYWORDMACRO $CPU_TRANSITION (TRAN_CODE=0,CPU_ID=0,NODENAME=0 ,NODE_ID=-1,FLAGS=0,EFN=0,IOSB=0,ASTADR=0,ASTPRM=0,TIMOUT=0) = BEGIN EXTERNAL ROUTINE SYS$CPU_TRANSITION : BLISS ADDRESSING_MODE (GENERAL); SYS$CPU_TRANSITION (SDL$STARLET_CONCAT( TRAN_CODE, CPU_ID, NODENAME, NODE_ID, FLAGS, EFN, IOSB, ASTADR, ASTPRM, TIMOUT)) END %; KEYWORDMACRO $CPU_TRANSITIONW (TRAN_CODE=0,CPU_ID=0,NODENAME=0 ,NODE_ID=-1,FLAGS=0,EFN=0,IOSB=0,ASTADR=0,ASTPRM=0,TIMOUT=0) = BEGIN EXTERNAL ROUTINE SYS$CPU_TRANSITIONW : BLISS ADDRESSING_MODE (GENERAL); SYS$CPU_TRANSITIONW (SDL$STARLET_CONCAT( TRAN_CODE, CPU_ID, NODENAME, NODE_ID, FLAGS, EFN, IOSB, ASTADR, ASTPRM, TIMOUT)) END %; ! ! $CREATE ! ! Create File ! ! $CREATE fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $CREATE (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$CREATE : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $CREATE_MAPPING ! ! Create Mapping record database ! ! $CREATE_MAPPING ! KEYWORDMACRO $CREATE_MAPPING = BEGIN EXTERNAL ROUTINE SYS$CREATE_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_MAPPING() END %; ! ! $CREATE_PROXY ! ! Create proxy database ! ! $CREATE_PROXY ! ! KEYWORDMACRO $CREATE_PROXY = BEGIN EXTERNAL ROUTINE SYS$CREATE_PROXY : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_PROXY() END %; ! ! $CREATE_UID ! ! Create a Universal Identifier ! ! $CREATE_UID UID ! ! UID = address of the 16 byte buffer to receive the UID. ! KEYWORDMACRO $CREATE_UID (UID) = BEGIN EXTERNAL ROUTINE SYS$CREATE_UID : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_UID (SDL$STARLET_CONCAT( SDL$STARLET_REQ(UID, %QUOTE UID) )) END %; ! $CREATE_BUFOBJ ! ! Create I/O Buffer Object ! ! $CREATE_BUFOBJ inadr ,[retadr] ,[acmode] ,[flags] ,buffer_handle ! ! inadr = address of 2-longword array containing starting and ending ! virtual addresses of existing VA to include in buffer object ! ! retadr = address of 2-longword array to receive addresses ! actually included in the buffer object ! ! acmode = access mode of owner of buffer object ! ! flags = request option flags ! ! Bit Meaning (if set) ! ! 0 Return system virtual address of buffer object in RETADR ! (Caller must be in kernel mode) ! ! buffer_handle = address of a quadword to receive the buffer handle ! that identifies the created buffer object ! KEYWORDMACRO $CREATE_BUFOBJ (INADR=0,RETADR=0,ACMODE=0,FLAGS=0 ,BUFFER_HANDLE=0) = BEGIN EXTERNAL ROUTINE SYS$CREATE_BUFOBJ : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_BUFOBJ (SDL$STARLET_CONCAT( INADR, RETADR, ACMODE, FLAGS, BUFFER_HANDLE)) END %; ! $CREATE_BUFOBJ_64 ! ! Create I/O Buffer Object ! ! $CREATE_BUFOBJ_64 start_va_64, length_64, acmode, flags, return_va_64, return_length_64, ! buffer_handle_64 ! ! start_va_64 = Starting address of existing address to include in buffer object ! ! length_64 = Byte length of addresses to include in buffer object ! ! acmode = access mode of owner of buffer object ! ! flags = request option flags ! ! Flag Meaning (if specified) ! ! CBO_M_RETSVA Return system virtual address of buffer object in return_va_64 ! (Caller must be in kernel mode) ! CBO_M_SVA_32 Create buffer object window in 32-bit (S0/S1) system space ! ! return_va_64 = Address of buffer object created ! ! return_length_64 = Length of buffer object created ! ! buffer_handle_64 = address of a quadword to receive the buffer handle ! that identifies the created buffer object ! KEYWORDMACRO $CREATE_BUFOBJ_64 (START_VA_64,LENGTH_64,ACMODE=0 ,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64,BUFFER_HANDLE_64) = BEGIN EXTERNAL ROUTINE SYS$CREATE_BUFOBJ_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_BUFOBJ_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_REQ(BUFFER_HANDLE_64, %QUOTE BUFFER_HANDLE_64) )) END %; ! $CREATE_GFILE ! ! Create Permanent Global Disk File Section ! ! $CREATE_GFILE gsdnam_64, ident_64, file_offset_64, length_64, chan, acmode, flags, ! return_length_64[, fault_cluster] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! file_offset_64 = Byte offset into file to start section ! ! length_64 = Byte length of section to create ! ! chan = Number of channel on which file is accessed ! ! acmode = Access mode for section ! ! flags = Section characteristics ! ! Flag Meaning ! ! SEC$M_CRF Copy-on-reference section ! SEC$M_SYSGBL System global section ! SEC$M_WRT Read/write section ! ! return_length_64 = Length of section created ! ! fault_cluster = Page fault cluster size in bytes ! KEYWORDMACRO $CREATE_GFILE (GSDNAM_64,IDENT_64=0,FILE_OFFSET_64=0 ,LENGTH_64=0,CHAN,ACMODE=0,FLAGS=0,RETURN_LENGTH_64,FAULT_CLUSTER) = BEGIN EXTERNAL ROUTINE SYS$CREATE_GFILE : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_GFILE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, FILE_OFFSET_64, LENGTH_64, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( FAULT_CLUSTER))) END %; ! $CREATE_GDZRO ! ! Create Permanent Global Demand Zero Section ! ! $CREATE_GDZRO gsdnam_64, ident_64, prot, length_64, acmode, flags[[, reserved_length], rad_mask] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! prot = Protection mask ! ! length_64 = Byte length of section to create ! ! acmode = Access mode for section ! ! flags = Section characteristics ! ! Flag Meaning ! ! SEC$M_SYSGBL System global section ! ! SEC$M_RAD_HINT Use rad_mask argument as a hint of which RADs to allocate memory from ! ! reserved_length_64 = Length of memory reserved for this global section ! ! rad_mask = If SEC$M_RAD_HINT is set, bitmask of RADs from which to allocate memory KEYWORDMACRO $CREATE_GDZRO (GSDNAM_64,IDENT_64=0,PROT=0,LENGTH_64 ,ACMODE=0,FLAGS=0,RESERVED_LENGTH_64,RAD_MASK) = BEGIN EXTERNAL ROUTINE SYS$CREATE_GDZRO : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_GDZRO (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, PROT, SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS, SDL$STARLET_OPT( RESERVED_LENGTH_64, RAD_MASK))) END %; ! $CREATE_GPFILE ! ! Create Permanent Global Page File Section ! ! $CREATE_GPFILE gsdnam_64, ident_64, prot, length_64, acmode, flags ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! prot = Protection mask ! ! length_64 = Byte length of section to create ! ! acmode = Access mode for section ! ! flags = Section characteristics ! ! Flag Meaning ! ! SEC$M_SYSGBL System global section ! KEYWORDMACRO $CREATE_GPFILE (GSDNAM_64,IDENT_64=0,PROT=0,LENGTH_64 ,ACMODE=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$CREATE_GPFILE : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_GPFILE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, PROT, SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS)) END %; ! $CREATE_GPFN ! ! Create Permanent Global Page Frame Section ! ! $CREATE_GPFN gsdnam_64, ident_64, prot, start_pfn, page_count, acmode, flags ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! prot = Protection mask ! ! start_pfn = Page frame number of first page in section ! ! page_count = Number of page frames in section ! ! acmode = Access mode for section ! ! flags = Section characteristics ! ! Flag Meaning ! ! SEC$M_ARGS64 All arguments are passed as 64-bits ! SEC$M_SYSGBL System global section ! KEYWORDMACRO $CREATE_GPFN (GSDNAM_64,IDENT_64=0,PROT=0,START_PFN ,PAGE_COUNT,ACMODE=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$CREATE_GPFN : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_GPFN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, PROT, SDL$STARLET_REQ(START_PFN, %QUOTE START_PFN) , SDL$STARLET_REQ(PAGE_COUNT, %QUOTE PAGE_COUNT) , ACMODE, FLAGS)) END %; ! ! $CREATE_RDB ! ! Create The Rights Database ! ! $CREATE_RDB [sysid] ! ! sysid = address of the quadword system identifier ! to store in the maintenance record ! KEYWORDMACRO $CREATE_RDB (SYSID=0) = BEGIN EXTERNAL ROUTINE SYS$CREATE_RDB : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_RDB (SDL$STARLET_CONCAT( SYSID)) END %; ! $CREATE_REGION_64 ! ! Create Virtual Address Region ! ! $CREATE_REGION_64 length_64, region_prot, flags, return_region_id_64, return_va_64, ! return_length_64[, start_va_64] ! ! length_64 = Byte length of region to create ! ! region_prot = Protection on region ! ! flags = Region characteristics ! ! return_region_id_64 = Region id associated with newly created region ! ! return_va_64 = Starting address of region created ! ! return_length_64 = Length of region created ! ! start_va_64 = Starting address to create region KEYWORDMACRO $CREATE_REGION_64 (LENGTH_64=0,REGION_PROT=0,FLAGS=0 ,RETURN_REGION_ID,RETURN_VA_64,RETURN_LENGTH_64,START_VA_64) = BEGIN EXTERNAL ROUTINE SYS$CREATE_REGION_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_REGION_64 (SDL$STARLET_CONCAT( LENGTH_64, REGION_PROT, FLAGS, SDL$STARLET_REQ(RETURN_REGION_ID, %QUOTE RETURN_REGION_ID) , SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64))) END %; ! ! $CREATE_USER_PROFILE ! ! Create a user security profile. ! ! $CREATE_USER_PROFILE [usrnam], [itmlst], [flags], usrpro, usrprolen, [context] ! ! usrnam = address of username descriptor (optional with CHP$M_NOACCESS) ! itmlst = address of item list ! flags = flags longword ! usrpro = address of buffer to receive user profile (opaque byte string) ! usrprolen = address of longword to receive user profile length ! contxt = address of longword to receive UAI context ! KEYWORDMACRO $CREATE_USER_PROFILE (USRNAM=0,ITMLST=0,FLAGS=0,USRPRO ,USRPROLEN,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$CREATE_USER_PROFILE : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_USER_PROFILE (SDL$STARLET_CONCAT( USRNAM, ITMLST, FLAGS, SDL$STARLET_REQ(USRPRO, %QUOTE USRPRO) , SDL$STARLET_REQ(USRPROLEN, %QUOTE USRPROLEN) , CONTXT)) END %; ! $CRELNM ! ! Create Logical Name ! ! $CRELNM [attr], tabnam, lognam, [acmode], [itemlist] ! ! attr = address of logical name attributes ! ! Attribute Meaning ! LNM$M_CONFINE Logical name not to be copied into sub-process ! LNM$M_NO_ALIAS Logical name can not be aliased ! LNM$M_CRELOG Logical name created using $CRELOG ! ! tabnam = address of logical name table string descriptor ! ! lognam = address of logical name string descriptor ! ! acmode = address of access mode for logical name ! ! itmlst = address of a list of item descriptors ! KEYWORDMACRO $CRELNM (ATTR=0,TABNAM,LOGNAM,ACMODE=0,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$CRELNM : BLISS ADDRESSING_MODE (GENERAL); SYS$CRELNM (SDL$STARLET_CONCAT( ATTR, SDL$STARLET_REQ(TABNAM, %QUOTE TABNAM) , SDL$STARLET_REQ(LOGNAM, %QUOTE LOGNAM) , ACMODE, ITMLST)) END %; ! $CRELNT ! ! Create Logical Name Table ! ! $CRELNT [attr], [resnam], [reslen], [quota], ! [promsk], [tabnam], [acmode], [partab], [uic] ! ! attr = address of logical name table attributes ! ! resnam = address of descriptor of a buffer to receive the ! created table's name ! ! reslen = address of word to recieve length of created table's ! name ! ! quota = address of quota associated with logical name table ! ! promsk = address of protection mask ! ! tabnam = address of descriptor of logical name table name to be created ! ! partab = address of name of table parent string descriptor ! ! acmode = address of access mode for logical name ! ! uic = owner of table created in response to remote request ! KEYWORDMACRO $CRELNT (ATTR=0,RESNAM=0,RESLEN=0,QUOTA=0,PROMSK=0 ,TABNAM=0,PARTAB,ACMODE=0,UIC) = BEGIN EXTERNAL ROUTINE SYS$CRELNT : BLISS ADDRESSING_MODE (GENERAL); SYS$CRELNT (SDL$STARLET_CONCAT( ATTR, RESNAM, RESLEN, QUOTA, PROMSK, TABNAM, SDL$STARLET_REQ(PARTAB, %QUOTE PARTAB) , ACMODE, SDL$STARLET_OPT( UIC))) END %; ! $CRELOG ! ! Create Logical Name ! ! $CRELOG [tblflg] ,lognam ,eqlnam ,[acmode] ! ! tblflg = logical name table number ! 0 -> system (default) 1 -> group 2 -> process ! ! lognam = address of logical name string descriptor ! ! eqlnam = address of equivalence name string descriptor ! ! acmode = access mode for logical name (process table only) ! KEYWORDMACRO $CRELOG (TBLFLG=0,LOGNAM,EQLNAM,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$CRELOG : BLISS ADDRESSING_MODE (GENERAL); SYS$CRELOG (SDL$STARLET_CONCAT( TBLFLG, SDL$STARLET_REQ(LOGNAM, %QUOTE LOGNAM) , SDL$STARLET_REQ(EQLNAM, %QUOTE EQLNAM) , ACMODE)) END %; ! $CREMBX ! ! Create Mailbox and Assign Channel ! ! $CREMBX [prmflg] ,chan ,[maxmsg] ,[bufquo] ,[promsk] ,[acmode] ,[lognam], [flags] ! ! prmflg = permanent flag ! 0 -> temporary (default) 1 -> permanent ! ! chan = address of word to receive channel ! ! maxmsg = maximum message size that may be received ! ! bufquo = number of bytes that can be used to buffer messages ! ! promsk = protection mask ! ! acmode = access mode of created mailbox ! ! lognam = address of logical name string descriptor for mailbox ! ! flags = optional flags for mailbox creation and channel assignment ! KEYWORDMACRO $CREMBX (PRMFLG=0,CHAN,MAXMSG=0,BUFQUO=0,PROMSK=0 ,ACMODE=0,LOGNAM=0,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$CREMBX : BLISS ADDRESSING_MODE (GENERAL); SYS$CREMBX (SDL$STARLET_CONCAT( PRMFLG, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , MAXMSG, BUFQUO, PROMSK, ACMODE, LOGNAM, SDL$STARLET_OPT( FLAGS))) END %; ! $CREPRC ! ! Create Process ! ! $CREPRC [pidadr] ,[image] ,[input] ,[output] ,[error] ,[prvadr] ! ,[quota] ,[prcnam] ,[baspri] ,[uic] ,[mbxunt] ,[stsflg] ,[itmlst] ! ,[node], [home_rad]. [lt_limit] ! ! pidadr = address of longword to return id of created process ! ! image = address of string descriptor for image name ! ! input = address of string descriptor for SYS$INPUT ! ! output = address of string descriptor for SYS$OUTPUT ! ! error = address of string descriptor for SYS$ERROR ! ! prvadr = address of quadword privilege list ! ! quota = address of quota list ! ! prcnam = address of string descriptor for process name ! ! baspri = base priority (0-31) ! ! uic = user identification code. If 0, create a subprocess ! ! mbxunt = mailbox unit for termination message ! ! stsflg = status and mode flag bits ! ! Bit Meaning ! ! 0 disable resource wait mode ! 1 enable system service failure exception mode ! 2 inhibit process swapping ! 3 disable accounting messages ! 4 batch process ! 5 cause created process to hibernate ! 6 allow login without authorization file check ! 7 process is a network connect object ! 22 start process on specified home rad ! 26 set kernel thread limit for the process ! ! itmlst = address of a list of item descriptors ! ! node = address of string descriptor for SCS node name ! ! home_rad = RAD to start process on, if bit 22 in stsflg is set ! ! kt_limit = kernel thread limit of the process, if bit 26 in stsflg is set KEYWORDMACRO $CREPRC (PIDADR=0,IMAGE=0,INPUT=0,OUTPUT=0,ERROR=0 ,PRVADR=0,QUOTA=0,PRCNAM=0,BASPRI=2,UIC=0,MBXUNT=0,STSFLG=0 ,ITMLST=0,NODE=0,HOME_RAD,KT_LIMIT) = BEGIN EXTERNAL ROUTINE SYS$CREPRC : BLISS ADDRESSING_MODE (GENERAL); SYS$CREPRC (SDL$STARLET_CONCAT( PIDADR, IMAGE, INPUT, OUTPUT, ERROR, PRVADR, QUOTA, PRCNAM, BASPRI, UIC, MBXUNT, STSFLG, ITMLST, NODE, SDL$STARLET_OPT( HOME_RAD, KT_LIMIT))) END %; ! $CRETVA ! ! Create Virtual Address Space ! ! $CRETVA inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending virtual address of pages to be created ! ! retadr = address of a 2-longword array to receive starting and ! ending virtual address of pages actually created ! ! acmode = access mode for the new pages (protection is ! read/write for acmode and more privileged modes) ! KEYWORDMACRO $CRETVA (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$CRETVA : BLISS ADDRESSING_MODE (GENERAL); SYS$CRETVA (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $CRETVA_64 ! ! Create Virtual Address Space ! ! $CRETVA_64 region_id_64, start_va_64, length_64, acmode, flags, return_va_64, return_length_64 ! [, page_prot] ! ! region_id_64 = Address of quadword region id ! ! start_va_64 = Starting address of address space to create ! ! length_64 = Byte length of addresses to create ! ! acmode = access mode for the new pages (protection is ! read/write for acmode and more privileged modes) ! ! flags = Address space creation flags ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! page_prot = desired page protection (optional) ! KEYWORDMACRO $CRETVA_64 (REGION_ID_64,START_VA_64,LENGTH_64,ACMODE=0 ,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$CRETVA_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRETVA_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( PAGE_PROT))) END %; ! $CRMPSC ! ! Create and Map Section ! ! $CRMPSC [inadr] ,[retadr] ,[acmode] ,[flags] ,[gsdnam] ,[ident] ! ,[relpag] ,[chan] ,[pagcnt] ,[vbn] ,[prot] ,[pfc] ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of space to map section ! ! retadr = address of 2-longword array to receive addresses ! actually mapped ! ! acmode = access mode of owner of pages ! ! flags = section characteristics ! ! Flag Meaning ! ! SEC$M_GBL Global section ! SEC$M_CRF Copy-on-reference section ! SEC$M_DZRO Demand zero pages ! SEC$M_EXPREG Find first available space ! SEC$M_PERM Permanent section ! SEC$M_PFNMAP Physical page frame section ! SEC$M_SYSGBL System global section ! SEC$M_WRT Read/write section ! ! gsdnam = address of global section name string descriptor ! ! ident = address of quadword containing version id and match control ! ! relpag = relative page number within section ! ! chan = number of channel on which file is accessed ! ! pagcnt = number of pages in section ! ! vbn = virtual block number of beginning of section or ! physical page frame number of beginning of section ! ! prot = protection mask ! ! pfc = page fault cluster size ! KEYWORDMACRO $CRMPSC (INADR=0,RETADR=0,ACMODE=0,FLAGS=0,GSDNAM=0 ,IDENT=0,RELPAG=0,CHAN=0,PAGCNT=0,VBN=0,PROT=0,PFC=0) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC (SDL$STARLET_CONCAT( INADR, RETADR, ACMODE, FLAGS, GSDNAM, IDENT, RELPAG, CHAN, PAGCNT, VBN, PROT, PFC)) END %; ! $CRMPSC_FILE_64 ! ! Create and Map Private Disk File Section ! ! $CRMPSC_FILE_64 region_id_64, file_offset_64, length_64, chan, acmode, flags, ! return_va_64, return_length_64 ! [, fault_cluster[, start_va_64[, page_prot]]] ! ! region_id_64 = Address of quadword region id ! ! file_offset_64 = Byte offset into file to start section ! ! length_64 = Byte length of addresses to create ! ! chan = number of channel on which file is accessed ! ! acmode = access mode for the new pages ! ! flags = section characteristics ! ! Flag Meaning ! ! SEC$M_CRF Copy-on-reference section ! SEC$M_DZRO Demand zero pages ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_WRT Read/write section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! fault_cluster = Page fault cluster size in bytes ! ! start_va_64 = Starting address of address space to create ! ! page_prot = Desired page protection (optional) ! KEYWORDMACRO $CRMPSC_FILE_64 (REGION_ID_64,FILE_OFFSET_64=0,LENGTH_64=0 ,CHAN,ACMODE=0,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64,FAULT_CLUSTER ,START_VA_64,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC_FILE_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC_FILE_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , FILE_OFFSET_64, LENGTH_64, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( FAULT_CLUSTER, START_VA_64, PAGE_PROT))) END %; ! $CRMPSC_GFILE_64 ! ! Create and Map Global Disk File Section ! ! $CRMPSC_GFILE_64 gsdnam_64, ident_64, file_offset_64, length_64, chan, region_id_64, ! section_offset_64, acmode, flags, return_va_64, return_length_64 ! [, fault_cluster[, start_va_64[, map_length_64[, page_prot]]]] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! file_offset_64 = Byte offset into file to start section ! ! length_64 = Byte length of section to create ! ! chan = number of channel on which file is accessed ! ! region_id_64 = Address of quadword region id ! ! section_offset_64 = Relative byte within global section to start mapping ! ! acmode = access mode for the new pages ! ! flags = section characteristics ! ! Flag Meaning ! ! SEC$M_CRF Copy-on-reference section ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_PERM Permanent section ! SEC$M_SYSGBL System global section ! SEC$M_WRT Read/write section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! fault_cluster = Page fault cluster size in bytes ! ! start_va_64 = Starting address of address space to create ! ! map_length_64 = Byte length of address space to map ! KEYWORDMACRO $CRMPSC_GFILE_64 (GSDNAM_64,IDENT_64=0,FILE_OFFSET_64=0 ,LENGTH_64=0,CHAN,REGION_ID_64,SECTION_OFFSET_64=0,ACMODE=0 ,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64,FAULT_CLUSTER,START_VA_64 ,MAP_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC_GFILE_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC_GFILE_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, FILE_OFFSET_64, LENGTH_64, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SECTION_OFFSET_64, ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( FAULT_CLUSTER, START_VA_64, MAP_LENGTH_64))) END %; ! $CRMPSC_GDZRO_64 ! ! Create and Map Global Demand Zero Section ! ! $CRMPSC_GDZRO_64 gsdnam_64, ident_64, prot, length_64, region_id_64, section_offset_64, ! acmode, flags, return_va_64, return_length_64 ! [, start_va_64[, map_length_64[, reserved_length_64[, rad_mask[, page_prot]]]]] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! prot = Protection mask ! ! length_64 = Byte length of section to create ! ! region_id_64 = Address of quadword region id ! ! section_offset_64 = Relative byte within global section to start mapping ! ! acmode = access mode for the new pages ! ! flags = section characteristics ! ! Flag Meaning ! ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_PERM Permanent section ! SEC$M_SYSGBL System global section ! SEC$M_RAD_HINT Use rad_mask argument as a hint of which RADs to allocate memory from ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! start_va_64 = Starting address of address space to create ! ! map_length_64 = Byte length of address space to map ! ! reserved_length_64 = Length of memory reserved for this global section ! ! rad_mask = If SEC$M_RAD_HINT is set, bitmask of RADs from which to allocate memory ! KEYWORDMACRO $CRMPSC_GDZRO_64 (GSDNAM_64,IDENT_64=0,PROT=0,LENGTH_64=0 ,REGION_ID_64,SECTION_OFFSET_64=0,ACMODE=0,FLAGS=0,RETURN_VA_64 ,RETURN_LENGTH_64,START_VA_64,MAP_LENGTH_64,RESERVED_LENGTH_64 ,RAD_MASK) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC_GDZRO_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC_GDZRO_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, PROT, LENGTH_64, SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SECTION_OFFSET_64, ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64, MAP_LENGTH_64, RESERVED_LENGTH_64, RAD_MASK))) END %; ! $CRMPSC_GPFILE_64 ! ! Create and Map Global Page File Section ! ! $CRMPSC_GPFILE_64 gsdnam_64, ident_64, prot, length_64, region_id_64, section_offset_64, ! acmode, flags, return_va_64, return_length_64 ! [, start_va_64[, map_length_64[, page_prot]]] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! prot = Protection mask ! ! length_64 = Byte length of section to create ! ! region_id_64 = Address of quadword region id ! ! section_offset_64 = Relative byte within global section to start mapping ! ! acmode = access mode for the new pages ! ! flags = section characteristics ! ! Flag Meaning ! ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_PERM Permanent section ! SEC$M_SYSGBL System global section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! start_va_64 = Starting address of address space to create ! ! map_length_64 = Byte length of address space to map ! KEYWORDMACRO $CRMPSC_GPFILE_64 (GSDNAM_64,IDENT_64=0,PROT=0,LENGTH_64=0 ,REGION_ID_64,SECTION_OFFSET_64=0,ACMODE=0,FLAGS=0,RETURN_VA_64 ,RETURN_LENGTH_64,START_VA_64,MAP_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC_GPFILE_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC_GPFILE_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, PROT, LENGTH_64, SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SECTION_OFFSET_64, ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64, MAP_LENGTH_64))) END %; ! $CRMPSC_GPFN_64 ! ! Create and Map Global Page Frame Section ! ! $CRMPSC_GPFN_64 gsdnam_64, ident_64, prot, start_pfn, page_count, region_id_64, relative_page, ! acmode, flags, return_va_64, return_length_64 ! [, start_va_64[, map_page_count[, page_prot]]] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! prot = Protection mask ! ! start_pfn = Page frame number of first page in section ! ! page_count = Number of page frames in section ! ! region_id_64 = Address of quadword region id ! ! relative_page = Relative page within global section to start mapping ! ! acmode = Access mode of owner of mapped pages ! ! flags = Flags overriding default section characteristics ! ! Flag Meaning ! ! SEC$M_ARGS64 All arguments are passed as 64-bits ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_SYSGBL System global section ! SEC$M_WRT Read/write mapping of section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! start_va_64 = Starting address of address space to create ! ! map_page_count = Number of page frames to map ! ! page_prot = Desired page protection (optional) ! KEYWORDMACRO $CRMPSC_GPFN_64 (GSDNAM_64,IDENT_64=0,PROT=0,START_PFN ,PAGE_COUNT,REGION_ID_64,RELATIVE_PAGE,ACMODE=0,FLAGS=0,RETURN_VA_64 ,RETURN_LENGTH_64,START_VA_64,MAP_PAGE_COUNT,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC_GPFN_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC_GPFN_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, PROT, SDL$STARLET_REQ(START_PFN, %QUOTE START_PFN) , SDL$STARLET_REQ(PAGE_COUNT, %QUOTE PAGE_COUNT) , SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(RELATIVE_PAGE, %QUOTE RELATIVE_PAGE) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64, MAP_PAGE_COUNT, PAGE_PROT))) END %; ! $CRMPSC_PFN_64 ! ! Create and Map Private Page Frame Section ! ! $CRMPSC_PFN_64 region_id_64, start_pfn, page_count, acmode, flags, ! return_va_64, return_length_64 ! [, start_va_64[, page_prot]] ! ! region_id_64 = Address of quadword region id ! ! start_pfn = Page frame number of first page in section ! ! page_count = Number of page frames in section ! ! acmode = access mode for the new pages ! ! flags = section characteristics ! ! Flag Meaning ! ! SEC$M_ARGS64 All arguments are passed as 64-bits ! SEC$M_EXPREG Find first available space ! SEC$M_GRANHINT Set granularity hints on pages ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_WRT Read/write section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! start_va_64 = Starting address of address space to create ! ! page_prot = Desired page protection (optional) ! KEYWORDMACRO $CRMPSC_PFN_64 (REGION_ID_64,START_PFN,PAGE_COUNT ,ACMODE=0,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64,START_VA_64 ,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$CRMPSC_PFN_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$CRMPSC_PFN_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(START_PFN, %QUOTE START_PFN) , SDL$STARLET_REQ(PAGE_COUNT, %QUOTE PAGE_COUNT) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64, PAGE_PROT))) END %; ! $DACEFC ! ! Disassociate Common Event Flag Cluster ! ! $DACEFC efn ! ! efn = number of any event flag in the cluster ! KEYWORDMACRO $DACEFC (EFN) = BEGIN EXTERNAL ROUTINE SYS$DACEFC : BLISS ADDRESSING_MODE (GENERAL); SYS$DACEFC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) )) END %; ! $DALLOC ! ! Deallocate Device ! ! $DALLOC [devnam] ,[acmode] ! ! devnam = address of device name descriptor. If 0, deallocate all ! ! acmode = access mode associated with device ! KEYWORDMACRO $DALLOC (DEVNAM=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DALLOC : BLISS ADDRESSING_MODE (GENERAL); SYS$DALLOC (SDL$STARLET_CONCAT( DEVNAM, ACMODE)) END %; ! $DASSGN ! ! Deassign I/O Channel ! ! $DASSGN chan ! ! chan = number of channel to be deassigned ! KEYWORDMACRO $DASSGN (CHAN) = BEGIN EXTERNAL ROUTINE SYS$DASSGN : BLISS ADDRESSING_MODE (GENERAL); SYS$DASSGN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) )) END %; ! $DCLAST ! ! Declare AST ! ! $DCLAST astadr ,[astprm] ,[acmode] ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! acmode = access mode for which the AST is to be declared ! KEYWORDMACRO $DCLAST (ASTADR,ASTPRM=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DCLAST : BLISS ADDRESSING_MODE (GENERAL); SYS$DCLAST (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ASTADR, %QUOTE ASTADR) , ASTPRM, ACMODE)) END %; ! $DCLCMH ! ! Declare Change Mode or Compatibility Mode Handler ! ! $DCLCMH addres ,[prvhnd] ,[type] ! ! addres = address of handler ! ! prvhnd = address of longword to receive previous handler address ! ! type = handler type indicator ! 0 -> change mode (current mode) 1 -> compatibility mode ! KEYWORDMACRO $DCLCMH (ADDRES,PRVHND=0,TYPE=0) = BEGIN EXTERNAL ROUTINE SYS$DCLCMH : BLISS ADDRESSING_MODE (GENERAL); SYS$DCLCMH (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ADDRES, %QUOTE ADDRES) , PRVHND, TYPE)) END %; ! $DCLEVT ! ! Declare an Event ! ! $DCLEVT evtnam, [rcvacl], [evtfac], [acmode], [flags] ! ,[evtdata], [nullarg], [nullarg], [nullarg], [nullarg] ! ! evtnam = address of descriptor of event name ! ! rcvacl = address of descriptor of ACL ! ! evtfac = address of event facility code ! ! acmode = access mode of event declaration ! ! flags = optional flags ! ! evtdata = address of descriptor of optional event data ! KEYWORDMACRO $DCLEVT (EVTNAM,RCVACL=0,EVTFAC=0,ACMODE=0,FLAGS=0 ,EVTDATA=0,NULLARG1=0,NULLARG2=0,NULLARG3=0,NULLARG4=0) = BEGIN EXTERNAL ROUTINE SYS$DCLEVT : BLISS ADDRESSING_MODE (GENERAL); SYS$DCLEVT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EVTNAM, %QUOTE EVTNAM) , RCVACL, EVTFAC, ACMODE, FLAGS, EVTDATA, NULLARG1, NULLARG2, NULLARG3, NULLARG4)) END %; ! $DCLEXH ! ! Declare Exit Handler ! ! $DCLEXH desblk ! ! desblk = address of exit control block containing: ! ! +-------------------------------+ ! | forward link | ! +-------------------------------+ ! | exit handler address | ! +-------------------------------+ ! | argument count | ! +-------------------------------+ ! | address to store reason | ! +-------------------------------+ ! | additional arguments | ! +-- for exit handler, --+ ! | if any | ! +-------------------------------+ ! KEYWORDMACRO $DCLEXH (DESBLK) = BEGIN EXTERNAL ROUTINE SYS$DCLEXH : BLISS ADDRESSING_MODE (GENERAL); SYS$DCLEXH (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DESBLK, %QUOTE DESBLK) )) END %; ! ! $DEFINE_MAPPING ! ! Define Mapping record types in the Mapping database ! ! $DEFINE_MAPPING initmlst [,outitmlst] ! ! initmlst = address of a list of item descriptors for the operation ! outitmlst = address of a list of item descriptors for information ! from the operation ! KEYWORDMACRO $DEFINE_MAPPING (INITMLST,OUTITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$DEFINE_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$DEFINE_MAPPING (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INITMLST, %QUOTE INITMLST) , OUTITMLST)) END %; ! ! $DELETE ! ! Delete Record ! ! $DELETE rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $DELETE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$DELETE : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $DELETE_BITMAP ! ! Delete a Write Bitmap ! ! $DELETE_BITMAP handle ! KEYWORDMACRO $DELETE_BITMAP (HANDLE=0) = BEGIN EXTERNAL ROUTINE SYS$DELETE_BITMAP : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_BITMAP (SDL$STARLET_CONCAT( HANDLE)) END %; ! ! $DELETE_INTRUSION ! ! Delete intrusion record ! ! $DELETE_INTRUSION user_criteria, [flags] ! ! user_criteria in address of user criteria descriptor ! flags in intrusion service flags ! KEYWORDMACRO $DELETE_INTRUSION (USER_CRITERIA,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$DELETE_INTRUSION : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_INTRUSION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(USER_CRITERIA, %QUOTE USER_CRITERIA) , FLAGS)) END %; ! ! $DELETE_MAPPING ! ! Delete Mapping record from Mapping database ! ! $DELETE_MAPPING initmlst ! ! initmlst = address of a list of item descriptors for the operation ! KEYWORDMACRO $DELETE_MAPPING (INITMLST) = BEGIN EXTERNAL ROUTINE SYS$DELETE_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_MAPPING (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INITMLST, %QUOTE INITMLST) )) END %; ! ! $DELETE_PROXY ! ! Delete proxy record ! ! $DELETE_PROXY rem_node, rem_user, local_user, [flags] ! ! rem_node in address of remote node descriptor ! rem_user in address of remote user descriptor ! local_user in address of local user descriptor ! flags in proxy service flags ! KEYWORDMACRO $DELETE_PROXY (REM_NODE,REM_USER,LOCAL_USER,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$DELETE_PROXY : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_PROXY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REM_NODE, %QUOTE REM_NODE) , SDL$STARLET_REQ(REM_USER, %QUOTE REM_USER) , SDL$STARLET_REQ(LOCAL_USER, %QUOTE LOCAL_USER) , FLAGS)) END %; ! $DELLNM ! ! Delete Logical Name and/or Table ! ! $DELLNM [tabnam], [lognam], [acmode] ! ! tabnam = address of descriptor of logical name table name string ! ! lognam = address of descriptor of logical name string ! ! acmode = address of access mode for logical name ! KEYWORDMACRO $DELLNM (TABNAM,LOGNAM=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DELLNM : BLISS ADDRESSING_MODE (GENERAL); SYS$DELLNM (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TABNAM, %QUOTE TABNAM) , LOGNAM, ACMODE)) END %; ! $DELLOG ! ! Delete Logical Name ! ! $DELLOG [tblflg] ,[lognam] ,[acmode] ! ! tblflg = logical name table number ! 0 -> system 1 -> group 2 -> process ! ! lognam = address of logical name string descriptor. If 0, ! delete all names ! ! acmode = access mode of logical name (process table only) ! KEYWORDMACRO $DELLOG (TBLFLG=0,LOGNAM=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DELLOG : BLISS ADDRESSING_MODE (GENERAL); SYS$DELLOG (SDL$STARLET_CONCAT( TBLFLG, LOGNAM, ACMODE)) END %; ! $DELMBX ! ! Delete Mailbox ! ! $DELMBX chan ! ! chan = channel number assigned to the mailbox ! KEYWORDMACRO $DELMBX (CHAN) = BEGIN EXTERNAL ROUTINE SYS$DELMBX : BLISS ADDRESSING_MODE (GENERAL); SYS$DELMBX (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) )) END %; ! $DELPRC ! ! Delete Process ! ! $DELPRC [pidadr] ,[prcnam] ,[flags] ! ! pidadr = address of longword containing id of process to be deleted ! ! prcnam = address of string descriptor for process name to be deleted ! ! flags = optional flags longword for specifying options ! KEYWORDMACRO $DELPRC (PIDADR=0,PRCNAM=0,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$DELPRC : BLISS ADDRESSING_MODE (GENERAL); SYS$DELPRC (SDL$STARLET_CONCAT( PIDADR, PRCNAM, SDL$STARLET_OPT( FLAGS))) END %; ! $DELTVA ! ! Delete Virtual Address Space ! ! $DELTVA inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of pages to delete ! ! retadr = address of 2-longword array to receive starting and ! ending addresses of pages actually deleted ! ! acmode = access mode for which service is performed ! KEYWORDMACRO $DELTVA (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DELTVA : BLISS ADDRESSING_MODE (GENERAL); SYS$DELTVA (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $DELTVA_64 ! ! Delete Virtual Address Space ! ! $DELTVA_64 region_id_64, start_va_64, length_64, acmode, return_va_64, return_length_64 ! ! region_id_64 = Address of quadword region id ! ! start_va_64 = Starting address of address space to delete ! ! length_64 = Byte length of addresses to delete ! ! acmode = access mode for which service is performed ! ! return_va_64 = Address of address space deleted ! ! return_length_64 = Length of address space deleted ! KEYWORDMACRO $DELTVA_64 (REGION_ID_64,START_VA_64,LENGTH_64,ACMODE=0 ,RETURN_VA_64,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$DELTVA_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$DELTVA_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $DELETE_BUFOBJ ! ! Delete I/O Buffer Object ! ! $DELETE_BUFOBJ buffer_handle ! ! buffer_handle = address of a quadword that contains the buffer handle ! identifying the buffer object to be deleted ! KEYWORDMACRO $DELETE_BUFOBJ (BUFFER_HANDLE=0) = BEGIN EXTERNAL ROUTINE SYS$DELETE_BUFOBJ : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_BUFOBJ (SDL$STARLET_CONCAT( BUFFER_HANDLE)) END %; ! $DELETE_REGION_64 ! ! Delete Virtual Address Region ! ! $DELETE_REGION_64 region_id_64, acmode, return_va_64, return_length_64 ! ! region_id_64 = Address of quadword region id ! ! acmode = Access mode for which service is performed ! ! return_va_64 = Address of address space deleted ! ! return_length_64 = Length of address space deleted ! KEYWORDMACRO $DELETE_REGION_64 (REGION_ID_64,ACMODE=0,RETURN_VA_64 ,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$DELETE_REGION_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_REGION_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , ACMODE, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $DEQ ! ! Dequeue Lock ! ! $DEQ [lkid] ,[valblk] ,[acmode] ,[flags] ! ! lkid = lock ID of the lock to be dequeued ! ! valblk = address of the lock value block ! ! acmode = access mode of the locks to be dequeued ! ! flags = optional flags. ! ! LCK$M_DEQALL ! KEYWORDMACRO $DEQ (LKID=0,VALBLK=0,ACMODE=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$DEQ : BLISS ADDRESSING_MODE (GENERAL); SYS$DEQ (SDL$STARLET_CONCAT( LKID, VALBLK, ACMODE, FLAGS)) END %; ! $DEVICE_SCAN ! ! Wildcard device scan ! ! $DEVICE_SCAN return_devnam, retlen, [search_devnam], [itmlst], [contxt] ! ! return_devnam = address of descriptor of returned device name buffer ! ! retlen = address to store length of device name returned ! ! search_devnam = address of descriptor of search device name ! ! itmlst = address of a list of item descriptors ! ! contxt = address of quadword context structures ! ! KEYWORDMACRO $DEVICE_SCAN (RETURN_DEVNAM,RETLEN,SEARCH_DEVNAM=0 ,ITMLST=0,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$DEVICE_SCAN : BLISS ADDRESSING_MODE (GENERAL); SYS$DEVICE_SCAN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RETURN_DEVNAM, %QUOTE RETURN_DEVNAM) , SDL$STARLET_REQ(RETLEN, %QUOTE RETLEN) , SEARCH_DEVNAM, ITMLST, CONTXT)) END %; ! $DGBLSC ! ! Delete Global Section ! ! $DGBLSC [flags] ,gsdnam ,[ident] ! ! flags = type of section ! 0 -> group section SEC$M_SYSGBL -> system section ! ! gsdnam = address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident = address of quadword containing version id and match control ! KEYWORDMACRO $DGBLSC (FLAGS=0,GSDNAM,IDENT=0) = BEGIN EXTERNAL ROUTINE SYS$DGBLSC : BLISS ADDRESSING_MODE (GENERAL); SYS$DGBLSC (SDL$STARLET_CONCAT( FLAGS, SDL$STARLET_REQ(GSDNAM, %QUOTE GSDNAM) , IDENT)) END %; ! $DIAGNOSE ! System Service for Diagnostics Programmers ! ! $DIAGNOSE function, P2, [cpu_id, [flags]] ! ! function = DIAG$SETAFF or DIAG$_ACTVCPUS ! ! P2 = enable flag if function is DIAG$SETAFF, or ! address to return actvcpus in if function ! is DIAG$_ACTVCPUS ! ! cpu_id = CPU number to set affinity to ! ! flags = masks governing the checking to do, whether ! affinity is set for image or process duration, ! whether to set affinity to primary cpu. ! KEYWORDMACRO $DIAGNOSE (FUNCTION=1,P2=1,CPU_ID=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$DIAGNOSE : BLISS ADDRESSING_MODE (GENERAL); SYS$DIAGNOSE (SDL$STARLET_CONCAT( FUNCTION, P2, CPU_ID, FLAGS)) END %; ! ! $DISABLE_VP_USE ! ! Disable Use of the Vector Processor ! ! $DISABLE_VP_USE flags ,[curflg] ,[prvflg] ! ! flags = mask of facility(ies) that disabled vector use ! ! curflg = address of longword to receive current flags ! ! prvflg = address of longword to receive previous flags ! KEYWORDMACRO $DISABLE_VP_USE (FLAGS=0,CURFLG=0,PRVFLG=0) = BEGIN EXTERNAL ROUTINE SYS$DISABLE_VP_USE : BLISS ADDRESSING_MODE (GENERAL); SYS$DISABLE_VP_USE (SDL$STARLET_CONCAT( FLAGS, CURFLG, PRVFLG)) END %; ! ! $DISABLE_VP_USE_INT ! ! Disable Use of the Vector Processor, internal form ! ! $DISABLE_VP_USE_INT flags ,[curflg] ,[prvflg] ! ! flags = mask of facility(ies) that disabled vector use ! ! curflg = address of longword to receive current flags ! ! prvflg = address of longword to receive previous flags ! KEYWORDMACRO $DISABLE_VP_USE_INT (FLAGS=0,CURFLG=0,PRVFLG=0) = BEGIN EXTERNAL ROUTINE SYS$DISABLE_VP_USE_INT : BLISS ADDRESSING_MODE (GENERAL); SYS$DISABLE_VP_USE_INT (SDL$STARLET_CONCAT( FLAGS, CURFLG, PRVFLG)) END %; ! ! $DISCONNECT ! ! Disconnect Record Stream ! ! $DISCONNECT rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $DISCONNECT (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$DISCONNECT : BLISS ADDRESSING_MODE (GENERAL); SYS$DISCONNECT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $DISMOU ! ! Dismount Volume ! ! $DISMOU [devnam], [flags], [itmlst] ! ! devnam = optional address of device name string descriptor ! ! flags = 32-bit status mask selecting options for the dismount ! The symbols for the flags are defined by the $DMTDEF ! macro. ! ! Flag Meaning ! ! DMT$M_NOUNLOAD Do not unload the volume. ! ! DMT$M_UNIT Dismount the specified device, rather ! than the entire volume set. ! ! itmlst = optional address of a list of item identifiers ! KEYWORDMACRO $DISMOU (DEVNAM,FLAGS=0,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$DISMOU : BLISS ADDRESSING_MODE (GENERAL); SYS$DISMOU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , FLAGS, SDL$STARLET_OPT( ITMLST))) END %; ! ! $DISPLAY ! ! Display File ! ! $DISPLAY fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $DISPLAY (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$DISPLAY : BLISS ADDRESSING_MODE (GENERAL); SYS$DISPLAY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $DISPLAY_PROXY ! ! Display proxy record ! ! $DISPLAY_PROXY rem_node, rem_user, buffer_sizes, proxy_node, proxy_user, ! default_user, local_users, [flags], [context] ! ! rem_node in address of remote node descriptor ! rem_user in address of remote user descriptor ! buffer_sizes out address of array of words to receive output string lengths ! proxy_node out address of descriptor to receive matching proxy node ! proxy_user out address of descriptor to receive matching proxy user ! default_user out address of descriptor to receive default user ! local_users out address of array of blocks to receive local users ! flags in proxy service flags ! context in out address of optional longword context ! KEYWORDMACRO $DISPLAY_PROXY (REM_NODE,REM_USER,BUFFER_SIZES,PROXY_NODE ,PROXY_USER,DEFAULT_USER,LOCAL_USERS,FLAGS=0,CONTEXT=0) = BEGIN EXTERNAL ROUTINE SYS$DISPLAY_PROXY : BLISS ADDRESSING_MODE (GENERAL); SYS$DISPLAY_PROXY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REM_NODE, %QUOTE REM_NODE) , SDL$STARLET_REQ(REM_USER, %QUOTE REM_USER) , SDL$STARLET_REQ(BUFFER_SIZES, %QUOTE BUFFER_SIZES) , SDL$STARLET_REQ(PROXY_NODE, %QUOTE PROXY_NODE) , SDL$STARLET_REQ(PROXY_USER, %QUOTE PROXY_USER) , SDL$STARLET_REQ(DEFAULT_USER, %QUOTE DEFAULT_USER) , SDL$STARLET_REQ(LOCAL_USERS, %QUOTE LOCAL_USERS) , FLAGS, CONTEXT)) END %; ! $DLCEFC ! ! Delete Common Event Flag Cluster ! ! $DLCEFC name ! ! name = address of cluster name string descriptor ! KEYWORDMACRO $DLCEFC (NAME) = BEGIN EXTERNAL ROUTINE SYS$DLCEFC : BLISS ADDRESSING_MODE (GENERAL); SYS$DLCEFC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(NAME, %QUOTE NAME) )) END %; ! $DNS ! ! DNS Clerk system service ! ! $DNS [efn], func , itmlst, [dnsb] ,[astadr] ,[astprm] ! ($DNSW) ! ! efn = number of event flag to set on completion ! ! func = function code specifying action to be performed ! ! itmlst = address of a list of item descriptors ! ! dnsb = address of quadword I/O status block to receive final ! completion status ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! KEYWORDMACRO $DNS (EFN=0,FUNC,ITMLST,DNSB=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$DNS : BLISS ADDRESSING_MODE (GENERAL); SYS$DNS (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , DNSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $DNSW (EFN=0,FUNC,ITMLST,DNSB=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$DNSW : BLISS ADDRESSING_MODE (GENERAL); SYS$DNSW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , DNSB, ASTADR, ASTPRM)) END %; ! ! $EMAA ! ! Call Entity Management Assist Agent ! ! $EMAA ! KEYWORDMACRO $EMAA (ARGLIST,INVOKEID) = BEGIN EXTERNAL ROUTINE SYS$EMAA : BLISS ADDRESSING_MODE (GENERAL); SYS$EMAA (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ARGLIST, %QUOTE ARGLIST) , SDL$STARLET_REQ(INVOKEID, %QUOTE INVOKEID) )) END %; ! ! $ENABLE_VP_USE ! ! Enable Use of the Vector Processor ! ! $ENABLE_VP_USE flags ,[curflg] ,[prvflg] ! ! flags = mask of facility(ies) that disabled vector use ! ! curflg = address of longword to receive current flags ! ! prvflg = address of longword to receive previous flags ! KEYWORDMACRO $ENABLE_VP_USE (FLAGS=0,CURFLG=0,PRVFLG=0) = BEGIN EXTERNAL ROUTINE SYS$ENABLE_VP_USE : BLISS ADDRESSING_MODE (GENERAL); SYS$ENABLE_VP_USE (SDL$STARLET_CONCAT( FLAGS, CURFLG, PRVFLG)) END %; ! ! $ENABLE_VP_USE_INT ! ! Enable Use of the Vector Processor, internal form ! ! $ENABLE_VP_USE_INT flags ,[curflg] ,[prvflg] ! ! flags = mask of facility(ies) that disabled vector use ! ! curflg = address of longword to receive current flags ! ! prvflg = address of longword to receive previous flags ! KEYWORDMACRO $ENABLE_VP_USE_INT (FLAGS=0,CURFLG=0,PRVFLG=0) = BEGIN EXTERNAL ROUTINE SYS$ENABLE_VP_USE_INT : BLISS ADDRESSING_MODE (GENERAL); SYS$ENABLE_VP_USE_INT (SDL$STARLET_CONCAT( FLAGS, CURFLG, PRVFLG)) END %; ! $ENQ ! ! Enqueue Lock Request ! ! $ENQ [efn] ,lkmode ,lksb ,[flags] ,[resnam] ,[parid] ! ($ENQW) ,[astadr] ,[astprm] ,[blkast] ,[acmode], [rsdm_id] ! ,[range] ,[priority] ! ! efn = event flag to be set at completion ! ! lkmode = type of lock mode requested. Modes are: ! ! LCK$K_NLMODE null lock ! LCK$K_CRMODE concurrent read ! LCK$K_CWMODE concurrent write ! LCK$K_PRMODE protected read ! LCK$K_PWMODE protected write ! LCK$K_EXMODE exclusive lock ! ! lksb = address of the lock status block or extended lock status block ! ! flags = flags defining the characteristics of the lock. These are: ! ! LCK$M_NOQUEUE ! LCK$M_SYNCSTS ! LCK$M_SYSTEM ! LCK$M_VALBLK ! LCK$M_CONVERT ! ! resnam = address of string descriptor of the resource name ! (32-bit or 64-bit descriptor) ! ! parid = lock ID of the parent lock ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! blkast = address of entry mask of blocking AST routine ! ! acmode = Access mode to be associated with the lock ! ! rsdm_id = address of resource domain id ! ! range = optional range to be locked within resource ! ! priority = optional priority of request ! KEYWORDMACRO $ENQ (EFN=0,LKMODE,LKSB,FLAGS=0,RESNAM=0,PARID=0 ,ASTADR=0,ASTPRM=0,BLKAST=0,ACMODE=0,RSDM_ID=0,RANGE,PRIORITY) = BEGIN EXTERNAL ROUTINE SYS$ENQ : BLISS ADDRESSING_MODE (GENERAL); SYS$ENQ (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(LKMODE, %QUOTE LKMODE) , SDL$STARLET_REQ(LKSB, %QUOTE LKSB) , FLAGS, RESNAM, PARID, ASTADR, ASTPRM, BLKAST, ACMODE, RSDM_ID, SDL$STARLET_OPT( RANGE, PRIORITY))) END %; KEYWORDMACRO $ENQW (EFN=0,LKMODE,LKSB,FLAGS=0,RESNAM=0,PARID=0 ,ASTADR=0,ASTPRM=0,BLKAST=0,ACMODE=0,RSDM_ID=0,RANGE,PRIORITY) = BEGIN EXTERNAL ROUTINE SYS$ENQW : BLISS ADDRESSING_MODE (GENERAL); SYS$ENQW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(LKMODE, %QUOTE LKMODE) , SDL$STARLET_REQ(LKSB, %QUOTE LKSB) , FLAGS, RESNAM, PARID, ASTADR, ASTPRM, BLKAST, ACMODE, RSDM_ID, SDL$STARLET_OPT( RANGE, PRIORITY))) END %; ! ! $ENTER ! ! Enter File ! ! $ENTER fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $ENTER (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$ENTER : BLISS ADDRESSING_MODE (GENERAL); SYS$ENTER (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $ERAPAT ! ! Generate a security erase pattern. ! ! $ERAPAT type, [count], patadr ! ! type = type of security erase ! ! count = iteration count (seed for erase pattern) ! ! patadr = address of longword to receive erase pattern ! KEYWORDMACRO $ERAPAT (TYPE=0,COUNT=1,PATADR=0) = BEGIN EXTERNAL ROUTINE SYS$ERAPAT : BLISS ADDRESSING_MODE (GENERAL); SYS$ERAPAT (SDL$STARLET_CONCAT( TYPE, COUNT, PATADR)) END %; ! $ERASE ! ! Erase File ! ! $ERASE fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $ERASE (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$ERASE : BLISS ADDRESSING_MODE (GENERAL); SYS$ERASE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $EVDPOSTEVENT ! ! Post Event to EVD ! ! $EVDPOSTEVENT EVENT ! KEYWORDMACRO $EVDPOSTEVENT (EVENT) = BEGIN EXTERNAL ROUTINE SYS$EVDPOSTEVENT : BLISS ADDRESSING_MODE (GENERAL); SYS$EVDPOSTEVENT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EVENT, %QUOTE EVENT) )) END %; ! $EXIT ! ! Exit image ! ! $EXIT [code] ! ! code = longword completion status ! KEYWORDMACRO $EXIT (CODE=1) = BEGIN EXTERNAL ROUTINE SYS$EXIT : BLISS ADDRESSING_MODE (GENERAL); SYS$EXIT (SDL$STARLET_CONCAT( CODE)) END %; ! $EXPREG ! ! Expand Program/Control Region ! ! $EXPREG pagcnt ,[retadr] ,[acmode] ,[region] ! ! pagcnt = number of pages to add to end of specified region ! ! retadr = address of 2-longword array to receive virtual ! addresses of starting and ending pages ! ! acmode = access mode of the new pages ! ! region = region indicator ! 0 -> program (P0) region 1 -> control (P1) region ! KEYWORDMACRO $EXPREG (PAGCNT,RETADR=0,ACMODE=0,REGION=0) = BEGIN EXTERNAL ROUTINE SYS$EXPREG : BLISS ADDRESSING_MODE (GENERAL); SYS$EXPREG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PAGCNT, %QUOTE PAGCNT) , RETADR, ACMODE, REGION)) END %; ! $EXPREG_64 ! ! Expand Addresses Within a Region ! ! EXPREG_64 region_id_64, length_64, acmode, flags, return_va_64, return_length_64 ! [, page_prot] ! ! region_id_64 = Address of quadword region id ! ! length_64 = Byte length of addresses ! ! acmode = access mode for the new pages (protection is ! read/write for acmode and more privileged modes) ! ! flags = Address space creation flags ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! page_prot = Desired page protection (optional) ! KEYWORDMACRO $EXPREG_64 (REGION_ID_64,LENGTH_64,ACMODE=0,FLAGS=0 ,RETURN_VA_64,RETURN_LENGTH_64,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$EXPREG_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$EXPREG_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( PAGE_PROT))) END %; ! ! $EXTEND ! ! Extend File ! ! $EXTEND fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $EXTEND (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$EXTEND : BLISS ADDRESSING_MODE (GENERAL); SYS$EXTEND (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $FAO ! ! Formatted ASCII Output ! ! $FAO ctrstr ,[outlen] ,outbuf ,[p1] ,[p2]...[pn] ! ! ctrstr = address of string descriptor for control string ! (32-bit or 64-bit descriptor) ! ! outlen = address of word in which to store output length ! ! outbuf = address of output buffer string descriptor ! (32-bit or 64-bit descriptor) ! ! p1... = variable number of arguments to FAO ! MACRO $FAO[]= ( EXTERNAL ROUTINE SYS$FAO : BLISS ADDRESSING_MODE (GENERAL); SYS$FAO (%REMAINING) ) %; ! $FAOL ! ! Formatted ASCII Output With List Parameter ! ! $FAOL ctrstr ,[outlen] ,outbuf ,prmlst ! ! ctrstr = address of string descriptor for control string ! (32-bit or 64-bit descriptor) ! ! outlen = address of word to receive output string length ! ! outbuf = address of output buffer string descriptor ! (32-bit or 64-bit descriptor) ! ! prmlst = address of a list of longword parameters ! KEYWORDMACRO $FAOL (CTRSTR,OUTLEN=0,OUTBUF,PRMLST) = BEGIN EXTERNAL ROUTINE SYS$FAOL : BLISS ADDRESSING_MODE (GENERAL); SYS$FAOL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CTRSTR, %QUOTE CTRSTR) , OUTLEN, SDL$STARLET_REQ(OUTBUF, %QUOTE OUTBUF) , SDL$STARLET_REQ(PRMLST, %QUOTE PRMLST) )) END %; ! $FAOL_64 ! ! Formatted ASCII Output With Quadword List Parameter ! ! $FAOL_64 ctrstr_64 ,[outlen_64] ,outbuf_64 ,prmlst_64 ! ! ctrstr_64 = address of string descriptor for control string ! (32-bit or 64-bit descriptor) ! ! outlen_64 = address of word to receive output string length ! ! outbuf_64 = address of output buffer string descriptor ! (32-bit or 64-bit descriptor) ! ! prmlst_64 = address of a list of quadword parameters ! KEYWORDMACRO $FAOL_64 (CTRSTR_64,OUTLEN_64=0,OUTBUF_64,PRMLST_64) = BEGIN EXTERNAL ROUTINE SYS$FAOL_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$FAOL_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CTRSTR_64, %QUOTE CTRSTR_64) , OUTLEN_64, SDL$STARLET_REQ(OUTBUF_64, %QUOTE OUTBUF_64) , SDL$STARLET_REQ(PRMLST_64, %QUOTE PRMLST_64) )) END %; ! $FILES_64 ! ! Call the Files-64 file system ! ! $FILES_64 [efn] ,func ,fsb ,[astadr] ,[astprm] ! ! efn = number of event flag to set on completion ! ! func = function code specifying action to be performed ! ! fsb = address of File System Block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! KEYWORDMACRO $FILES_64 (EFN=0,FUNC,FSB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$FILES_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$FILES_64 (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(FSB, %QUOTE FSB) , ASTADR, ASTPRM)) END %; ! $FILESCAN ! ! Scan a string and identify a file specification ! ! $FILESCAN srcstr, [valuelst], [fldflags] [,auxout] [,retlen] ! ! srcstr = address of string descriptor for source string ! valuelst = address of a list of item descriptors ! fldflags = address of a longword to receive flags ! auxout = address of string descriptor for output string ! retlen = address to store length of returned output string ! KEYWORDMACRO $FILESCAN (SRCSTR,VALUELST=0,FLDFLAGS=0,AUXOUT=0 ,RETLEN=0) = BEGIN EXTERNAL ROUTINE SYS$FILESCAN : BLISS ADDRESSING_MODE (GENERAL); SYS$FILESCAN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(SRCSTR, %QUOTE SRCSTR) , VALUELST, FLDFLAGS, AUXOUT, RETLEN)) END %; ! ! $FIND ! ! Find Record in File ! ! $FIND rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $FIND (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$FIND : BLISS ADDRESSING_MODE (GENERAL); SYS$FIND (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $FIND_HELD ! ! Find Identifiers Held By Holder ! ! $FIND_HELD holder, [id], [attrib], [contxt] ! ! holder = address of a quadword which specifies the holder ! id of the records to find ! id = address to return the identifier longword ! attrib = address to return the holder attributes longword ! contxt = address of a longword containing the record stream ! context. initially should be zero, value output ! on first call, value input on subsequent calls. ! KEYWORDMACRO $FIND_HELD (HOLDER,ID=0,ATTRIB=0,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$FIND_HELD : BLISS ADDRESSING_MODE (GENERAL); SYS$FIND_HELD (SDL$STARLET_CONCAT( SDL$STARLET_REQ(HOLDER, %QUOTE HOLDER) , ID, ATTRIB, CONTXT)) END %; ! ! $FIND_HOLDER ! ! Find Holder Of Identifier ! ! $FIND_HOLDER id, [holder], [attrib], [contxt] ! ! id = identifier longword whose holder records ! are to be found ! holder = address to return the holder id quadword ! attrib = address to return the attributes longword ! contxt = address of a longword containing the record stream ! context. initially should be zero, value output ! on first call, value input on subsequent calls. ! KEYWORDMACRO $FIND_HOLDER (ID,HOLDER=0,ATTRIB=0,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$FIND_HOLDER : BLISS ADDRESSING_MODE (GENERAL); SYS$FIND_HOLDER (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) , HOLDER, ATTRIB, CONTXT)) END %; ! ! $FINISH_RDB ! ! Clean up RMS Stream ! ! $FINISH_RDB contxt ! ! contxt = address of a longword containing the record stream ! context. ! KEYWORDMACRO $FINISH_RDB (CONTXT) = BEGIN EXTERNAL ROUTINE SYS$FINISH_RDB : BLISS ADDRESSING_MODE (GENERAL); SYS$FINISH_RDB (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) )) END %; ! $FORCEX ! ! Force Exit ! ! $FORCEX [pidadr] ,[prcnam] ,[code] ! ! pidadr = address of process id of process to be forced to exit ! ! prcnam = address of process name descriptor for forced process ! ! code = longword completion status for exit service ! KEYWORDMACRO $FORCEX (PIDADR=0,PRCNAM=0,CODE=0) = BEGIN EXTERNAL ROUTINE SYS$FORCEX : BLISS ADDRESSING_MODE (GENERAL); SYS$FORCEX (SDL$STARLET_CONCAT( PIDADR, PRCNAM, CODE)) END %; ! ! $FORGE_WORD ! ! Forge random word. ! ! $FORGE_WORD [minlen], [maxlen], [mindata], [flags], [retdata], outlen, outstr ! ! minlen minimum word length to return ! maxlen maximum word length to return ! mindata minimum amount of data to return (in decibits) ! flags miscellaneous flags ! retdata longword to receive actual amount of information in word ! outlen word to receive length of returned word ! outstr address of buffer to receive word ! KEYWORDMACRO $FORGE_WORD (MINLEN=0,MAXLEN=0,MINDATA=0,FLAGS=0 ,RETDATA=0,OUTLEN,OUTSTR) = BEGIN EXTERNAL ROUTINE SYS$FORGE_WORD : BLISS ADDRESSING_MODE (GENERAL); SYS$FORGE_WORD (SDL$STARLET_CONCAT( MINLEN, MAXLEN, MINDATA, FLAGS, RETDATA, SDL$STARLET_REQ(OUTLEN, %QUOTE OUTLEN) , SDL$STARLET_REQ(OUTSTR, %QUOTE OUTSTR) )) END %; ! ! $FORMAT_ACL ! ! Format an Access Control list Entry ! ! $FORMAT_ACL acl-entry, [acl-length], acl-string, ! [line-width], [term-desc], [line-indent], ! [bit-names], [routin] ! ! acl-entry = address of a descriptor of a buffer which ! contains the ACE ! ! acl-length = address of a word to receive the length of ! the output string ! ! acl-string = address of a descriptor of a buffer into ! which the output string is to be stored ! ! line-width = address of the maximum line width ! (0 = infinite) ! ! term_desc = address of a character descriptor containing ! a character string to be inserted whenever ! the line segment length exceeds the line-width ! ! line-indent = address of the number of columns to indent ! the output line segment ! ! bit-names = address of a access bit name table (32 entries) ! ! routin = address of routine to be executed in kernel mode ! KEYWORDMACRO $FORMAT_ACL (ACLENT,ACLLEN=0,ACLSTR,WIDTH=0,TRMDSC=0 ,INDENT=0,ACCNAM=0,ROUTIN=0) = BEGIN EXTERNAL ROUTINE SYS$FORMAT_ACL : BLISS ADDRESSING_MODE (GENERAL); SYS$FORMAT_ACL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ACLENT, %QUOTE ACLENT) , ACLLEN, SDL$STARLET_REQ(ACLSTR, %QUOTE ACLSTR) , WIDTH, TRMDSC, INDENT, ACCNAM, ROUTIN)) END %; ! ! $FORMAT_AUDIT fmttyp, audmsg, [outlen], outbuf, ! [width], [trmdsc], [routin], [fmtflg] ! ! Format security auditing event message ! ! fmttyp = format type ! ! audmsg = address of the message to format ! ! outlen = address of a word to receive length of output string ! ! outbuf = Address of a descriptor of a buffer to receive ! the formatted event message ! ! width = address of a word containing the display width ! ! trmdsc = address of a descriptor containing the line ! terminator character(s) ! ! routin = address of an output routine ! ! fmtflg = format control flags KEYWORDMACRO $FORMAT_AUDIT (FMTTYP,AUDMSG,OUTLEN=0,OUTBUF,WIDTH=0 ,TRMDSC=0,ROUTIN=0,FMTFLG=0) = BEGIN EXTERNAL ROUTINE SYS$FORMAT_AUDIT : BLISS ADDRESSING_MODE (GENERAL); SYS$FORMAT_AUDIT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FMTTYP, %QUOTE FMTTYP) , SDL$STARLET_REQ(AUDMSG, %QUOTE AUDMSG) , OUTLEN, SDL$STARLET_REQ(OUTBUF, %QUOTE OUTBUF) , WIDTH, TRMDSC, ROUTIN, FMTFLG)) END %; ! $FORMAT_CLASS itmlst, [routin] ! ! Format access class strings ! ! itmlst = address of a list of item descriptors ! ! routin = address of routine to be executed in kernel mode ! ! KEYWORDMACRO $FORMAT_CLASS (ITMLST,ROUTIN=0) = BEGIN EXTERNAL ROUTINE SYS$FORMAT_CLASS : BLISS ADDRESSING_MODE (GENERAL); SYS$FORMAT_CLASS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , ROUTIN)) END %; ! ! $FREE ! ! Free Record ! ! $FREE rab, [err], [suc] ! ! rab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $FREE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$FREE : BLISS ADDRESSING_MODE (GENERAL); SYS$FREE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $FREE_USER_CAPABILITY ! ! Release a global user capability bit ! ! $FREE_USER_CAPABILITY [cap_num],[prev_mask],[flags] ! ! cap_num = address of cell with requested cap number to release ! prev_mask = address of user quadword that will hold the ! previous state of the reserved capabilities cell ! flags = address of behavioral flags for this operation ! KEYWORDMACRO $FREE_USER_CAPABILITY (CAP_NUM=0,PREV_MASK=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$FREE_USER_CAPABILITY : BLISS ADDRESSING_MODE (GENERAL); SYS$FREE_USER_CAPABILITY (SDL$STARLET_CONCAT( CAP_NUM, PREV_MASK, FLAGS)) END %; ! ! $FLUSH ! ! Flush Record ! ! $FLUSH rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $FLUSH (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$FLUSH : BLISS ADDRESSING_MODE (GENERAL); SYS$FLUSH (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $GET_BITMAP_INFO ! ! GET Information about a Write Bitmap ! ! $GET_BITMAP_INFO handle, chan, devnam, name, index, itmlst ! KEYWORDMACRO $GET_BITMAP_INFO (HANDLE=0,CHAN=0,DEVNAM,NAME=0,INDEX=0 ,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$GET_BITMAP_INFO : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_BITMAP_INFO (SDL$STARLET_CONCAT( HANDLE, CHAN, SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , NAME, INDEX, ITMLST)) END %; ! ! $GET_BITMAP_INFOW ! ! GET Information about a Write Bitmap and Wait ! ! $GET_BITMAP_INFOW devnam, name, index, handle, itmlst, status ! KEYWORDMACRO $GET_BITMAP_INFOW (DEVNAM,NAME=0,INDEX=0,HANDLE=0 ,ITMLST=0,STATUS=0) = BEGIN EXTERNAL ROUTINE SYS$GET_BITMAP_INFOW : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_BITMAP_INFOW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , NAME, INDEX, HANDLE, ITMLST, STATUS)) END %; ! ! $GET_CPU_INFO ! ! GET Information about a CPU ! ! $GET_CPU_INFO func, flags, cpu_id, buffer, length, ret_length ! KEYWORDMACRO $GET_CPU_INFO (FUNC,FLAGS,CPU_ID,BUFFER_LENGTH,BUFFER_ADDRESS_64 ,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$GET_CPU_INFO : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_CPU_INFO (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(FLAGS, %QUOTE FLAGS) , SDL$STARLET_REQ(CPU_ID, %QUOTE CPU_ID) , SDL$STARLET_REQ(BUFFER_LENGTH, %QUOTE BUFFER_LENGTH) , SDL$STARLET_REQ(BUFFER_ADDRESS_64, %QUOTE BUFFER_ADDRESS_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $GET_REGION_INFO ! ! Get Information About Virtual Address Region ! ! $GET_REGION_INFO function, region_id_64, start_va_64, ,buffer_length, ! buffer_address_64, return_length_64 ! ! function = Function code ! ! Code Meaning ! VA$_REGSUM_BY_ID Region summary, by ID ! VA$_REGSUM_BY_VA Region summary, by VA ! VA$_NEXT_REGSUM_BY_VA Next region summary, by VA ! ! region_id_64 = Address of quadword region id to use with ! VA$_REGSUM_BY_ID ! ! start_va_64 = Virtual address to use with VA$_REGSUM_BY_VA ! ! buffer_length = Length of user buffer ! ! buffer_address_64 = Address of user REGSUM buffer ! ! return_length_64 = Length of data written to user buffer ! KEYWORDMACRO $GET_REGION_INFO (FUNCTION,REGION_ID_64,START_VA_64 ,RESERVED,BUFFER_LENGTH,BUFFER_ADDRESS_64,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$GET_REGION_INFO : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_REGION_INFO (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FUNCTION, %QUOTE FUNCTION) , SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(RESERVED, %QUOTE RESERVED) , SDL$STARLET_REQ(BUFFER_LENGTH, %QUOTE BUFFER_LENGTH) , SDL$STARLET_REQ(BUFFER_ADDRESS_64, %QUOTE BUFFER_ADDRESS_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $GET_SECURITY ! ! Get Object Securty Profile ! ! $GET_SECURITY [clsnam], [objnam], [objhan], [flags], [itmlst], [context], [acmode] ! KEYWORDMACRO $GET_SECURITY (CLSNAM=0,OBJNAM=0,OBJHAN=0,FLAGS=0 ,ITMLST=0,CONTXT=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$GET_SECURITY : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_SECURITY (SDL$STARLET_CONCAT( CLSNAM, OBJNAM, OBJHAN, FLAGS, ITMLST, CONTXT, ACMODE)) END %; ! ! $GET ! ! Get Record from File ! ! $GET rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $GET (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$GET : BLISS ADDRESSING_MODE (GENERAL); SYS$GET (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $GET_ARITH_EXCEPTION ! ! Get AXP arithmetic exception context information ! ! $GET_ARITH_EXCEPTION sigarg, mcharg, buffer ! ! sigarg = address of signal array of the exception ! ! mcharg = address of mechanism array of the exception ! ! buffer = address of buffer to return information ! KEYWORDMACRO $GET_ARITH_EXCEPTION (SIGARG,MCHARG,BUFFER) = BEGIN EXTERNAL ROUTINE SYS$GET_ARITH_EXCEPTION : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_ARITH_EXCEPTION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(SIGARG, %QUOTE SIGARG) , SDL$STARLET_REQ(MCHARG, %QUOTE MCHARG) , SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) )) END %; ! $GETCHN ! ! Get I/O Channel Information ! ! $GETCHN chan ,[prilen] ,[pribuf] ,[scdlen] ,[scdbuf] ! ! chan = number of a channel assigned to the device ! ! prilen = address of word to receive length of primary buffer ! ! pribuf = address of primary buffer descriptor ! ! scdlen = address of word to receive length of secondary buffer ! ! scdbuf = address of secondary buffer descriptor ! KEYWORDMACRO $GETCHN (CHAN,PRILEN=0,PRIBUF=0,SCDLEN=0,SCDBUF=0) = BEGIN EXTERNAL ROUTINE SYS$GETCHN : BLISS ADDRESSING_MODE (GENERAL); SYS$GETCHN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , PRILEN, PRIBUF, SCDLEN, SCDBUF)) END %; ! $GETDEV ! ! Get I/O Device Information ! ! $GETDEV devnam ,[prilen] ,[pribuf] ,[scdlen] ,[scdbuf] ! ! devnam = address of device name or logical name descriptor ! ! prilen = address of word to receive length of primary buffer ! ! pribuf = address of primary buffer descriptor ! ! scdlen = address of word to receive length of secondary buffer ! ! scdbuf = address of secondary buffer descriptor ! KEYWORDMACRO $GETDEV (DEVNAM,PRILEN=0,PRIBUF=0,SCDLEN=0,SCDBUF=0) = BEGIN EXTERNAL ROUTINE SYS$GETDEV : BLISS ADDRESSING_MODE (GENERAL); SYS$GETDEV (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , PRILEN, PRIBUF, SCDLEN, SCDBUF)) END %; ! ! $GETDTI ! ! Get Distributed Transaction Information ! ! $GETDTI [efn], [flags], iosb, [astadr], [astprm], [log_id], context, ! ($GETDTIW) search, itmlst ! ! efn = event flag to set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of the entry mask of an AST routine ! astprm = value to be passed to AST routine ! log_id = address of log id for TM log ! context = address of longword search context ! search = address of a list of search criteria items ! itmlst = address of a list of item descriptors ! KEYWORDMACRO $GETDTI (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,LOG_ID=0 ,CONTXT,SEARCH,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$GETDTI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETDTI (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, LOG_ID, SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) , SDL$STARLET_REQ(SEARCH, %QUOTE SEARCH) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; KEYWORDMACRO $GETDTIW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,LOG_ID=0 ,CONTXT,SEARCH,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$GETDTIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETDTIW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, LOG_ID, SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) , SDL$STARLET_REQ(SEARCH, %QUOTE SEARCH) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! $GETDVI ! ! Get Device/Volume Information ! ! $GETDVI [efn] ,[chan] ,[devnam] ,itmlst ,[iosb] ,[astadr] ! ($GETDVIW) ,[astprm] ,[nullarg], [pathname] ! ! efn = event flag to be set at completion ! ! chan = number of a channel assigned to the device or ! 0 if device is specified by the devnam parameter ! ! devnam = address of device name or logical name descriptor ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! nullarg = zilch ! ! pathname = optional address of a path name descriptor ! ! KEYWORDMACRO $GETDVI (EFN=0,CHAN=0,DEVNAM=0,ITMLST,IOSB=0,ASTADR=0 ,ASTPRM=0,NULLARG=0,PATHNAME) = BEGIN EXTERNAL ROUTINE SYS$GETDVI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETDVI (SDL$STARLET_CONCAT( EFN, CHAN, DEVNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM, NULLARG, SDL$STARLET_OPT( PATHNAME))) END %; KEYWORDMACRO $GETDVIW (EFN=0,CHAN=0,DEVNAM=0,ITMLST,IOSB=0,ASTADR=0 ,ASTPRM=0,NULLARG=0,PATHNAME) = BEGIN EXTERNAL ROUTINE SYS$GETDVIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETDVIW (SDL$STARLET_CONCAT( EFN, CHAN, DEVNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM, NULLARG, SDL$STARLET_OPT( PATHNAME))) END %; ! $GETEVI ! ! Get Event Information ! ! $GETEVI itmlst ,[nullarg] ! ! itmlst = address of a list of item descriptors ! KEYWORDMACRO $GETEVI (ITMLST,NULLARG=0) = BEGIN EXTERNAL ROUTINE SYS$GETEVI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETEVI (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , NULLARG)) END %; ! $GETJPI ! ! Get Job/Process Information ! ! $GETJPI [efn] ,[pidadr] ,[prcnam] ,itmlst ,[iosb], [astadr], ! ($GETJPIW) [astprm] ! ! efn = event flag to be set at completion ! ! pidadr = address of process identification ! ! prcnam = address of process name string descriptor ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as an argument ! ! KEYWORDMACRO $GETJPI (EFN=0,PIDADR=0,PRCNAM=0,ITMLST,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETJPI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETJPI (SDL$STARLET_CONCAT( EFN, PIDADR, PRCNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $GETJPIW (EFN=0,PIDADR=0,PRCNAM=0,ITMLST,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETJPIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETJPIW (SDL$STARLET_CONCAT( EFN, PIDADR, PRCNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! $GETJPI_FAST ! ! Get Job/Process Information For The Current Process ! ! $GETJPI_FAST ! ! item_mask = Mask of current process info requested ! ! flags = MBZ for now ! ! return_buffer ! = Address of buffer to return array of longword info ! ! return_buffer_length ! = Length of return buffer array in bytes ! ! KEYWORDMACRO $GETJPI_FAST (ITEM_MASK,FLAGS,RETURN_BUFFER,RETURN_BUFFER_LENGTH) = BEGIN EXTERNAL ROUTINE SYS$GETJPI_FAST : BLISS ADDRESSING_MODE (GENERAL); SYS$GETJPI_FAST (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITEM_MASK, %QUOTE ITEM_MASK) , SDL$STARLET_REQ(FLAGS, %QUOTE FLAGS) , SDL$STARLET_REQ(RETURN_BUFFER, %QUOTE RETURN_BUFFER) , SDL$STARLET_REQ(RETURN_BUFFER_LENGTH, %QUOTE RETURN_BUFFER_LENGTH) )) END %; ! $GETLKI ! ! Get Lock Information ! ! $GETLKI [efn] ,lkidadr ,itmlst ,[iosb], [astadr], [astprm], ! ($GETLKIW) [reserved] ! ! efn = event flag to be set at completion ! ! lkidadr = address of lock identification ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as an argument ! ! reserved = reserved parameter ! ! KEYWORDMACRO $GETLKI (EFN=0,LKIDADR,ITMLST,IOSB=0,ASTADR=0,ASTPRM=0 ,RESERVED=0) = BEGIN EXTERNAL ROUTINE SYS$GETLKI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETLKI (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(LKIDADR, %QUOTE LKIDADR) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM, RESERVED)) END %; KEYWORDMACRO $GETLKIW (EFN=0,LKIDADR,ITMLST,IOSB=0,ASTADR=0,ASTPRM=0 ,RESERVED=0) = BEGIN EXTERNAL ROUTINE SYS$GETLKIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETLKIW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(LKIDADR, %QUOTE LKIDADR) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM, RESERVED)) END %; ! $GETMSG ! ! Get Message ! ! $GETMSG msgid ,msglen ,bufadr ,[flags] ,[outadr] ! ! msgid = identification of message to be retrieved ! ! msglen = address of a word to receive length of string ! returned ! ! bufadr = address of buffer descriptor of buffer to receive ! string ! ! flags = flag bits for message content (macro default = 15) ! ! Bit Value/Meaning ! ! 0 1 Include text ! 0 Do not include text ! 1 1 Include identifier ! 0 Do not include identifier ! 2 1 Include severity ! 0 Do not include severity ! 3 1 Include component ! 0 Do not include component ! ! outadr = address of 4-byte array to receive the following values: ! ! Byte Contents ! ! 0 Reserved ! 1 Count of FAO arguments ! 2 User value ! 3 Reserved ! KEYWORDMACRO $GETMSG (MSGID,MSGLEN,BUFADR,FLAGS=15,OUTADR=0) = BEGIN EXTERNAL ROUTINE SYS$GETMSG : BLISS ADDRESSING_MODE (GENERAL); SYS$GETMSG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGID, %QUOTE MSGID) , SDL$STARLET_REQ(MSGLEN, %QUOTE MSGLEN) , SDL$STARLET_REQ(BUFADR, %QUOTE BUFADR) , FLAGS, OUTADR)) END %; ! $GETPTI ! ! Get Page Table Information ! ! $GETPTI [inadr],[retadr],[acmode],[mask],[pagcnt] ! ! inadr = address of two longwords containing starting ! and ending virtual address to operate on ! ! retadr = address of two longwords into which starting ! and ending address of pages operated on is returned ! ! acmode = access mode against which ownership is checked ! ! mask = mask of page table information control bits ! ! pagcnt = minimum page count ! ! KEYWORDMACRO $GETPTI (INADR,RETADR=0,ACMODE=0,MASK=0,PAGCNT=0) = BEGIN EXTERNAL ROUTINE SYS$GETPTI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETPTI (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE, MASK, PAGCNT)) END %; ! $GETQUI ! ! Get Queue Information ! ! $GETQUI [efn], func, [context], [itmlst], ! ($GETQUIW) [iosb], [astadr], [astprm] ! ! efn = event flag to be set when request completes ! func = code specifying function to be performed ! context = address of a longword containing a context number ! itmlst = address of a list of item descriptors for the operation ! iosb = address of a quadword status block to receive the final status ! astadr = address of an ast routine to be called when request completes ! astprm = 32-bit ast parameter ! KEYWORDMACRO $GETQUI (EFN=0,FUNC,CONTEXT=0,ITMLST=0,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETQUI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETQUI (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , CONTEXT, ITMLST, IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $GETQUIW (EFN=0,FUNC,CONTEXT=0,ITMLST=0,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETQUIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETQUIW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , CONTEXT, ITMLST, IOSB, ASTADR, ASTPRM)) END %; ! $GETRMI ! ! Get Resource Monitor Information ! ! $GETRMI [efn] ,[nullarg] ,[nullarg] ,itmlst ,[iosb] ,[astadr] ,[astprm] ! ! efn = event flag to be set at completion ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! nullarg = reserved argument ! ! KEYWORDMACRO $GETRMI (EFN=0,NULLARG1=0,NULLARG2=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETRMI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETRMI (SDL$STARLET_CONCAT( EFN, NULLARG1, NULLARG2, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! $GETSYI ! ! Get System-Wide Information ! ! $GETSYI [efn] ,[csidadr],[nodename],itmlst ,[iosb] ,[astadr], ! ($GETSYIW) [astprm] ! ! efn = event flag to be set at completion ! ! csidadr = address of cluster system identification ! ! nodename = address of node name string descriptor ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! ! The second and third arguments in the $GETSYI argument list are ! not used; they are reserved for future use. ! KEYWORDMACRO $GETSYI (EFN=0,CSIDADR=0,NODENAME=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETSYI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETSYI (SDL$STARLET_CONCAT( EFN, CSIDADR, NODENAME, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $GETSYIW (EFN=0,CSIDADR=0,NODENAME=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETSYIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETSYIW (SDL$STARLET_CONCAT( EFN, CSIDADR, NODENAME, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! $GETTIM ! ! Get Time ! ! $GETTIM timadr, [flags] ! ! timadr = address of a quadword to receive 64-bit current time value ! flags = optional flags to modify the type of time returned (initially Smithsonian time or time-since-boot) KEYWORDMACRO $GETTIM (TIMADR,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$GETTIM : BLISS ADDRESSING_MODE (GENERAL); SYS$GETTIM (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TIMADR, %QUOTE TIMADR) , SDL$STARLET_OPT( FLAGS))) END %; ! ! Get Time (High Precision) ! ! $GETTIM_PREC timadr ! ! timadr = address of a quadword to receive 64-bit current time value ! KEYWORDMACRO $GETTIM_PREC (TIMADR) = BEGIN EXTERNAL ROUTINE SYS$GETTIM_PREC : BLISS ADDRESSING_MODE (GENERAL); SYS$GETTIM_PREC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TIMADR, %QUOTE TIMADR) )) END %; ! ! $GET_USER_CAPABILITY ! ! Reserve a global user capability bit ! ! $GET_USER_CAPABILITY [cap_num],[select_num],[select_mask],[prev_mask],[flags] ! ! cap_num = address of cell with requested cap number ! select_num = address of cell with selected cap number ! select_mask = address of bitmask indicating which capability ! bit selected by operation ! prev_mask = address of user quadword that will hold the ! previous state of the reserved capabilities cell ! flags = address of behavioral flags for this operation ! KEYWORDMACRO $GET_USER_CAPABILITY (CAP_NUM=0,SELECT_NUM=0,SELECT_MASK=0 ,PREV_MASK=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$GET_USER_CAPABILITY : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_USER_CAPABILITY (SDL$STARLET_CONCAT( CAP_NUM, SELECT_NUM, SELECT_MASK, PREV_MASK, FLAGS)) END %; ! $GETUTC ! ! Get UTC Time ! ! $GETUTC utcadr ! ! utcadr = address of a utc_date_time to receive 128-bit current UTC time ! value ! KEYWORDMACRO $GETUTC (UTCADR) = BEGIN EXTERNAL ROUTINE SYS$GETUTC : BLISS ADDRESSING_MODE (GENERAL); SYS$GETUTC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(UTCADR, %QUOTE UTCADR) )) END %; ! $GETUAI ! ! Get User Authorization Information ! ! $GETUAI [efn] ,[contxt] ,usrnam ,itmlst ,[iosb] ,[astadr] ! ,[astprm] ! ! efn = event flag to be set at completion ! ! contxt = address of a context longword (UAF IFI & ISI) ! ! usrnam = address of user name descriptor ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! KEYWORDMACRO $GETUAI (EFN=0,CONTXT=0,USRNAM,ITMLST,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETUAI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETUAI (SDL$STARLET_CONCAT( EFN, CONTXT, SDL$STARLET_REQ(USRNAM, %QUOTE USRNAM) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! ! $GET_WBEM_INFO ! ! Get system information needed by WBEM providers ! ! $GET_WBEM_INFO itm_code, itm_param1, itm_param_buf, ! buf_addr, buf_len, ret_len_addr ! ! itm_code = Item code value, defined by $WBEMIDEF, wbemidef.h ! ! itm_param1 = Item code dependent input parameter value. ! If zero item code dependent parameters required, ! must be zero. ! If exactly one longword parameter required, ! parameter value. ! If more than one parameter required, size in ! bytes of the item parameter buffer. ! ! itm_param_buf = Address of item parameter buffer. Size of the ! buffer, in bytes, is given by the value of ! itm_param1. ! If the specified item code does not require ! more than a single parameter, this address ! must be zero. ! ! buf_addr = Address of buffer into which data is returned. ! Size of the buffer, in bytes, is given by buf_len. ! ! buf_len = Size of the output buffer in bytes. ! ! ret_len_addr = Address of a 32-bit longword into which the ! value of the number of bytes that have been ! written into the output buffer is returned. ! The caller should not assume that the remaining ! bytes in the output buffer have been zeroed. ! KEYWORDMACRO $GET_WBEM_INFO (ITM_CODE,ITM_PARAM1,ITM_PARAM_BUF ,BUF_ADDR,BUF_LEN,RET_LEN_ADDR) = BEGIN EXTERNAL ROUTINE SYS$GET_WBEM_INFO : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_WBEM_INFO (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITM_CODE, %QUOTE ITM_CODE) , SDL$STARLET_REQ(ITM_PARAM1, %QUOTE ITM_PARAM1) , SDL$STARLET_REQ(ITM_PARAM_BUF, %QUOTE ITM_PARAM_BUF) , SDL$STARLET_REQ(BUF_ADDR, %QUOTE BUF_ADDR) , SDL$STARLET_REQ(BUF_LEN, %QUOTE BUF_LEN) , SDL$STARLET_REQ(RET_LEN_ADDR, %QUOTE RET_LEN_ADDR) )) END %; ! Alpha ! $GOTO_UNWIND_64 ! ! General Unwind Call Stack ! ! $GOTO_UNWIND_64 [target_invo_64], [target_pc_64], ! [newretval], [newretval2] ! ! target_invo_64 = address of longword (Alpha) or quadword (IPF) ! containing the invocation handle (frame pointer on ! Alpha) to unwind call stack ! ! target_pc_64 = address of quadword that contains the PC to be ! given control when the unwind is complete ! ! newretval = address of a location that contains the value to be ! placed in the saved R0 field of the mechanism array ! ! newretval2 = address of a location that contains the value to be ! placed in the saved R1 field of the mechanism array ! ! KEYWORDMACRO $GOTO_UNWIND_64 (TARGET_INVO_64=0,TARGET_PC_64=0 ,NEWRETVAL=0,NEWRETVAL2=0) = BEGIN EXTERNAL ROUTINE SYS$GOTO_UNWIND_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$GOTO_UNWIND_64 (SDL$STARLET_CONCAT( TARGET_INVO_64, TARGET_PC_64, NEWRETVAL, NEWRETVAL2)) END %; ! ! $GRANTID ! ! Grant Identifier to Process ! ! $GRANTID [pidadr], [prcnam], [id], [name], [prvatr] [,segment] ! ! pidadr = address of PID of affected process ! prcnam = address of string descriptor of process name ! id = address of quadword identifier and attributes ! name = address of string descriptor of identifier name ! prvatr = address to store attributes of superseded id ! segment = optional segment index, by value ! KEYWORDMACRO $GRANTID (PIDADR=0,PRCNAM=0,ID=0,NAME=0,PRVATR=0 ,SEGMENT=0) = BEGIN EXTERNAL ROUTINE SYS$GRANTID : BLISS ADDRESSING_MODE (GENERAL); SYS$GRANTID (SDL$STARLET_CONCAT( PIDADR, PRCNAM, ID, NAME, PRVATR, SEGMENT)) END %; ! ! $GRANT_LICENSE ! ! Grant authorization to execute licensed software product. ! ! $GRANT_LICENSE prdnam ,prducer [,contxt] [,itmlst] ! ! prdnam = address of descriptor for software product name ! prducer = address of descriptor for software producer name ! contxt = address of context buffer (4 longwords) ! itmlst = address of a list of item descriptors ! KEYWORDMACRO $GRANT_LICENSE (PRDNAM,PRDUCER,CONTXT=0,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$GRANT_LICENSE : BLISS ADDRESSING_MODE (GENERAL); SYS$GRANT_LICENSE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PRDNAM, %QUOTE PRDNAM) , SDL$STARLET_REQ(PRDUCER, %QUOTE PRDUCER) , CONTXT, ITMLST)) END %; ! $HASH_PASSWORD ! ! Encrypt a user password to produce a quadword hash value. ! ! $HASH_PASSWORD pwd, alg, [salt], usrnam, hash ! ! pwd = address of descriptor for plaintext password ! alg = algorithm to use for hash ! salt = salt value for use by hash algorithm ! usrnam = address of descriptor of username ! hash = address of output quadword hash buffer ! KEYWORDMACRO $HASH_PASSWORD (PWD,ALG,SALT=0,USRNAM,HASH) = BEGIN EXTERNAL ROUTINE SYS$HASH_PASSWORD : BLISS ADDRESSING_MODE (GENERAL); SYS$HASH_PASSWORD (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PWD, %QUOTE PWD) , SDL$STARLET_REQ(ALG, %QUOTE ALG) , SALT, SDL$STARLET_REQ(USRNAM, %QUOTE USRNAM) , SDL$STARLET_REQ(HASH, %QUOTE HASH) )) END %; ! $HIBER ! ! Hibernate ! ! $HIBER_S ! KEYWORDMACRO $HIBER = BEGIN EXTERNAL ROUTINE SYS$HIBER : BLISS ADDRESSING_MODE (GENERAL); SYS$HIBER() END %; ! ! $IDTOASC ! ! Identifier To Ascii Conversion ! ! $IDTOASC id, [namlen], [nambuf], [resid], [attrib], [contxt] ! ! id = identifier longword to convert, or zero to ! find all identifiers (wildcarding) ! namlen = address of a word to store the length of the ! identifier name ! nambuf = address of a character string descriptor that ! describes the buffer to return the identifier name ! resid = address of a longword to return the id found ! while wildcarding ! attrib = address to return the attributes longword ! contxt = address of a longword containing the record stream ! context. initially should be zero, value output ! on first call, value input on subsequent calls. ! KEYWORDMACRO $IDTOASC (ID,NAMLEN=0,NAMBUF=0,RESID=0,ATTRIB=0,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$IDTOASC : BLISS ADDRESSING_MODE (GENERAL); SYS$IDTOASC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) , NAMLEN, NAMBUF, RESID, ATTRIB, CONTXT)) END %; ! ! $IEEE_SET_FP_CONTROL ! ! Set IEEE floating point control register ! ! $IEEE_SET_FP_CONTROL [clrmsk], [setmsk], [prvmsk] ! ! clrmsk = address of a quadword mask to clear ! setmsk = address of a quadword mask to set ! prvmsk = address of a quadword to return previous value ! KEYWORDMACRO $IEEE_SET_FP_CONTROL (CLRMSK=0,SETMSK=0,PRVMSK=0) = BEGIN EXTERNAL ROUTINE SYS$IEEE_SET_FP_CONTROL : BLISS ADDRESSING_MODE (GENERAL); SYS$IEEE_SET_FP_CONTROL (SDL$STARLET_CONCAT( CLRMSK, SETMSK, PRVMSK)) END %; ! $IMGACT ! ! Image Activation ! ! $IMGACT name,[dflnam],hdrbuf,[imgctl],[inadr], ! [retadr], [ident], [acmode] ! ! ! name = address of descriptor for file name string ! ! dflnam = descriptor for file name string ! ! hdrbuf = address of 512 byte buffer to write in ! ! imgctl = image activation control flags ! ! inadr = address of quadword specifying virtual address ! range to be mapped ! ! retadr = address of quadword specifying virtual address ! range actually mapped ! ! ident = address of quadword holding image section match ! control and identifier ! ! acmode = access mode to be the owner of the created pages ! KEYWORDMACRO $IMGACT (NAME,DFLNAM=0,HDRBUF,IMGCTL=0,INADR=0,RETADR=0 ,IDENT=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$IMGACT : BLISS ADDRESSING_MODE (GENERAL); SYS$IMGACT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(NAME, %QUOTE NAME) , DFLNAM, SDL$STARLET_REQ(HDRBUF, %QUOTE HDRBUF) , IMGCTL, INADR, RETADR, IDENT, ACMODE)) END %; ! $IMGFIX ! ! Image Address Fixup Service ! ! $IMGFIX ! KEYWORDMACRO $IMGFIX = BEGIN EXTERNAL ROUTINE SYS$IMGFIX : BLISS ADDRESSING_MODE (GENERAL); SYS$IMGFIX() END %; ! $INIT_VOL ! ! Initialize Volume ! ! $INIT_VOL devnam, volnam, [itmlst] ! ! devnam = device name containing volume to initialize ! ! volnam = name to initialize the volume with ! ! itmlst = address of item code list for initialization options ! KEYWORDMACRO $INIT_VOL (DEVNAM,VOLNAM,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$INIT_VOL : BLISS ADDRESSING_MODE (GENERAL); SYS$INIT_VOL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , SDL$STARLET_REQ(VOLNAM, %QUOTE VOLNAM) , ITMLST)) END %; ! $IO_CLEANUP ! ! Cleanup a previously set-up I/O ! ! $IO_CLEANUP fandle ! ! fandle = fandle to clean up ! KEYWORDMACRO $IO_CLEANUP (FANDL=0) = BEGIN EXTERNAL ROUTINE SYS$IO_CLEANUP : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_CLEANUP (SDL$STARLET_CONCAT( FANDL)) END %; ! $IO_FASTPATH ! ! I/O Fastpath system service ! ! $IO_FASTPATH efn, cpu_mask, func, iosb, astadr, astprm ! ! efn = event flag number ! ! cpu_mask = either -1 wildcard or pointer to longword ! containing CPU mask ! FP$K_BALANCE_PORTS = balance fastpath ports ! ! func = fastpath function code ! ! iosb = address of I/O status block ! ! astadr = address of AST completion routine ! ! astprm = AST routine parameter ! KEYWORDMACRO $IO_FASTPATH (EFN=0,CPU_MASK=0,FUNC=0,IOSB=0,ASTADR=0 ,ASTPRM=0,MASK_LENGTH) = BEGIN EXTERNAL ROUTINE SYS$IO_FASTPATH : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_FASTPATH (SDL$STARLET_CONCAT( EFN, CPU_MASK, FUNC, IOSB, ASTADR, ASTPRM, SDL$STARLET_OPT( MASK_LENGTH))) END %; KEYWORDMACRO $IO_FASTPATHW (EFN=0,CPU_MASK=0,FUNC=0,IOSB=0,ASTADR=0 ,ASTPRM=0,MASK_LENGTH) = BEGIN EXTERNAL ROUTINE SYS$IO_FASTPATHW : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_FASTPATHW (SDL$STARLET_CONCAT( EFN, CPU_MASK, FUNC, IOSB, ASTADR, ASTPRM, SDL$STARLET_OPT( MASK_LENGTH))) END %; ! $IO_PERFORM ! ! Transfer data between device and buffer ! ! $IO_PERFORM fandle, chan, iosadr, bufadr, buflen, devdata ! ($IO_PERFORMW) ! ! fandle = fandle from previous $IO_SETUP ! ! chan = standard I/O channel ! ! iosadr = IOSA address ! ! bufadr = address of data buffer (64 bits) ! ! buflen = length of data buffer (64 bits) ! ! devdata= data passed to driver, e.g., media address ! ! KEYWORDMACRO $IO_PERFORM (FANDL=0,CHAN=0,IOSADR=0,BUFADR=0,BUFLEN=0 ,DEVDATA=0) = BEGIN EXTERNAL ROUTINE SYS$IO_PERFORM : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_PERFORM (SDL$STARLET_CONCAT( FANDL, CHAN, IOSADR, BUFADR, BUFLEN, DEVDATA)) END %; KEYWORDMACRO $IO_PERFORMW (FANDL=0,CHAN=0,IOSADR=0,BUFADR=0,BUFLEN=0 ,DEVDATA=0) = BEGIN EXTERNAL ROUTINE SYS$IO_PERFORMW : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_PERFORMW (SDL$STARLET_CONCAT( FANDL, CHAN, IOSADR, BUFADR, BUFLEN, DEVDATA)) END %; ! $IO_SETUP ! ! Set up a fast I/O ! ! $IO_SETUP func, bufobj, iosobj, astadr, flags, return_fandle ! ! func = function code ! ! bufobj = data buffer object (address of (vector of 2 ints)) ! ! iosobj = IOSA buffer object (address of (vector of 2 ints)) ! ! astadr = completion AST address (address of entry) ! ! flags = flags ! ! return_fandle = address of returned fandle ! KEYWORDMACRO $IO_SETUP (FUNC=0,BUFOBJ=0,IOSOBJ=0,ASTADR=0,FLAGS=0 ,RETURN_FANDLE) = BEGIN EXTERNAL ROUTINE SYS$IO_SETUP : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_SETUP (SDL$STARLET_CONCAT( FUNC, BUFOBJ, IOSOBJ, ASTADR, FLAGS, SDL$STARLET_REQ(RETURN_FANDLE, %QUOTE RETURN_FANDLE) )) END %; ! $IPC ! ! Interprocess Communication Request ! ! $IPC [efn] ,func ,ipcb ,[astadr] ,[astprm] ! ($IPCW) ! ! efn = number of event flag to set on completion ! ! func = function code specifying action to be performed ! ! ipcb = address of Interprocess Communication Block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! ! KEYWORDMACRO $IPC (EFN=0,FUNC,IPCB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$IPC : BLISS ADDRESSING_MODE (GENERAL); SYS$IPC (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(IPCB, %QUOTE IPCB) , ASTADR, ASTPRM)) END %; KEYWORDMACRO $IPCW (EFN=0,FUNC,IPCB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$IPCW : BLISS ADDRESSING_MODE (GENERAL); SYS$IPCW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(IPCB, %QUOTE IPCB) , ASTADR, ASTPRM)) END %; ! $LCKPAG ! ! Lock Pages in Memory ! ! $LCKPAG inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending addresses of pages to be locked ! ! retadr = address of 2-longword array to receive addresses of ! pages actually locked ! ! acmode = access mode to check against the owner of the pages ! KEYWORDMACRO $LCKPAG (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$LCKPAG : BLISS ADDRESSING_MODE (GENERAL); SYS$LCKPAG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $LCKPAG_64 ! ! Lock Pages in Memory ! ! $LCKPAG_64 start_va_64, length_64, acmode, return_va_64, return_length_64 ! ! start_va_64 = Starting address of address space to lock ! ! length_64 = Byte length of addresses to lock ! ! acmode = Access mode to be checked against the page owner ! ! return_va_64 = Address of address space locked ! ! return_length_64 = Length of address space locked ! KEYWORDMACRO $LCKPAG_64 (START_VA_64,LENGTH_64,ACMODE=0,RETURN_VA_64 ,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$LCKPAG_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$LCKPAG_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $LFS ! ! Call the LFS file system ! ! $LFS [efn] ,func ,fsb ,[astadr] ,[astprm] ! ! efn = number of event flag to set on completion ! ! func = function code specifying action to be performed ! ! fsb = address of File System Block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! KEYWORDMACRO $LFS (EFN=0,FUNC,FSB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$LFS : BLISS ADDRESSING_MODE (GENERAL); SYS$LFS (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(FSB, %QUOTE FSB) , ASTADR, ASTPRM)) END %; ! $LKWSET ! ! Lock Pages in Working Set ! ! $LKWSET inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of pages to be locked ! ! retadr = address of a 2-longword array to receive starting and ! ending virtual addresses of pages actually locked ! ! acmode = access mode to be checked against the page owner ! KEYWORDMACRO $LKWSET (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$LKWSET : BLISS ADDRESSING_MODE (GENERAL); SYS$LKWSET (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $LKWSET_64 ! ! Lock Pages in Working Set ! ! $LKWSET_64 start_va_64, length_64, acmode, return_va_64, return_length_64 ! ! start_va_64 = Starting address of address space to lock ! ! length_64 = Byte length of addresses to lock ! ! acmode = Access mode to be checked against the page owner ! ! return_va_64 = Address of address space locked ! ! return_length_64 = Length of address space locked ! KEYWORDMACRO $LKWSET_64 (START_VA_64,LENGTH_64,ACMODE=0,RETURN_VA_64 ,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$LKWSET_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$LKWSET_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! ! $LOOKUP_MAPPING ! ! Find single Mapping record in Mapping database ! ! $LOOKUP_MAPPING initmlst ,[outitmlst] ! ! initmlst = address of a list of item descriptors for the operation ! outitmlst = address of a list of item descriptors for the operation ! KEYWORDMACRO $LOOKUP_MAPPING (INITMLST,OUTITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$LOOKUP_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$LOOKUP_MAPPING (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INITMLST, %QUOTE INITMLST) , OUTITMLST)) END %; ! $MGBLSC ! ! Map Global Section ! ! $MGBLSC inadr ,[retadr] ,[acmode] ,[flags] ,gsdnam ,[ident] ,[relpag] ! ! inadr = address of 2-longword array containing starting and ! ending addresses of pages to be mapped ! ! retadr = address of 2-longword array to receive virtual ! addresses of pages mapped ! ! acmode = access mode of owner of mapped pages ! ! flags = flags overriding default section characteristics ! ! Flag Meaning ! ! SEC$M_WRT Read/write section ! SEC$M_SYSGBL System global section ! SEC$M_EXPREG Find first available space ! ! gsdnam = address of global section name descriptor ! ! ident = address of quadword containing version id and match control ! ! relpag = relative page number within global section ! KEYWORDMACRO $MGBLSC (INADR,RETADR=0,ACMODE=0,FLAGS=0,GSDNAM,IDENT=0 ,RELPAG=0) = BEGIN EXTERNAL ROUTINE SYS$MGBLSC : BLISS ADDRESSING_MODE (GENERAL); SYS$MGBLSC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE, FLAGS, SDL$STARLET_REQ(GSDNAM, %QUOTE GSDNAM) , IDENT, RELPAG)) END %; ! $MGBLSC_64 ! ! Map Global Page or Disk File Section ! ! $MGBLSC_64 gsdnam_64, ident_64, region_id_64, section_offset_64, ! length_64, acmode, flags, return_va_64, return_length_64 ! [, start_va_64[, page_prot]] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! region_id_64 = Address of quadword region id ! ! section_offset_64 = Relative byte within global section to start mapping ! ! length_64 = Byte length of section to map ! ! acmode = Access mode of owner of mapped pages ! ! flags = Flags overriding default section characteristics ! ! Flag Meaning ! ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_SYSGBL System global section ! SEC$M_WRT Read/write mapping of section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! start_va_64 = Starting address of address space to create ! ! page_prot = Desired page protection (optional) ! KEYWORDMACRO $MGBLSC_64 (GSDNAM_64,IDENT_64=0,REGION_ID_64,SECTION_OFFSET_64 ,LENGTH_64,ACMODE=0,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64,START_VA_64 ,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$MGBLSC_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$MGBLSC_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(SECTION_OFFSET_64, %QUOTE SECTION_OFFSET_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64, PAGE_PROT))) END %; ! $MGBLSC_GPFN_64 ! ! Map Global Page Frame Section ! ! $MGBLSC_GPFN_64 gsdnam_64, ident_64, region_id_64, relative_page, page_count, ! acmode, flags, return_va_64, return_length_64 ! [, start_va_64[, page_prot]] ! ! gsdnam_64 = Address of global section name string descriptor ! (32-bit or 64-bit descriptor) ! ! ident_64 = Address of quadword containing version id and match control ! ! region_id_64 = Address of quadword region id ! ! relative_page = Relative page within global section to start mapping ! ! page_count = Number of page frames to map ! ! acmode = Access mode of owner of mapped pages ! ! flags = Flags overriding default section characteristics ! ! Flag Meaning ! ! SEC$M_EXPREG Find first available space ! SEC$M_NO_OVERMAP Do not overmap existing address space ! SEC$M_SYSGBL System global section ! SEC$M_WRT Read/write mapping of section ! ! return_va_64 = Address of address space created ! ! return_length_64 = Length of address space created ! ! start_va_64 = Starting address of address space to create ! ! page_prot = Desired page protection (optional) ! KEYWORDMACRO $MGBLSC_GPFN_64 (GSDNAM_64,IDENT_64=0,REGION_ID_64 ,RELATIVE_PAGE,PAGE_COUNT,ACMODE=0,FLAGS=0,RETURN_VA_64,RETURN_LENGTH_64 ,START_VA_64,PAGE_PROT) = BEGIN EXTERNAL ROUTINE SYS$MGBLSC_GPFN_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$MGBLSC_GPFN_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(GSDNAM_64, %QUOTE GSDNAM_64) , IDENT_64, SDL$STARLET_REQ(REGION_ID_64, %QUOTE REGION_ID_64) , SDL$STARLET_REQ(RELATIVE_PAGE, %QUOTE RELATIVE_PAGE) , SDL$STARLET_REQ(PAGE_COUNT, %QUOTE PAGE_COUNT) , ACMODE, FLAGS, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( START_VA_64, PAGE_PROT))) END %; ! ! $MODIFY ! ! Modify File ! ! $MODIFY fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $MODIFY (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$MODIFY : BLISS ADDRESSING_MODE (GENERAL); SYS$MODIFY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $MODIFY_MAPPING ! ! Modify Mapping record in Mapping database ! ! $MODIFY_MAPPING initmlst, moditmlst ! ! initmlst = address of a list of item descriptors for the operation ! moditmlst = address of a list of item descriptors for the operation ! KEYWORDMACRO $MODIFY_MAPPING (INITMLST,MODITMLST) = BEGIN EXTERNAL ROUTINE SYS$MODIFY_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$MODIFY_MAPPING (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INITMLST, %QUOTE INITMLST) , SDL$STARLET_REQ(MODITMLST, %QUOTE MODITMLST) )) END %; ! ! $MOD_HOLDER ! ! Modify Holder Record In Rights Database ! ! $MOD_HOLDER id, holder, [set_attrib], [clr_attrib] ! ! id = identifier longword ! holder = address of the holder identifier quadword ! set_attrib = longword containing the attributes to set ! into the holder record ! clr_attrib = longword containing the attributes to clear ! in the holder record ! KEYWORDMACRO $MOD_HOLDER (ID,HOLDER,SET_ATTRIB=0,CLR_ATTRIB=0) = BEGIN EXTERNAL ROUTINE SYS$MOD_HOLDER : BLISS ADDRESSING_MODE (GENERAL); SYS$MOD_HOLDER (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) , SDL$STARLET_REQ(HOLDER, %QUOTE HOLDER) , SET_ATTRIB, CLR_ATTRIB)) END %; ! ! $MOD_IDENT ! ! Modify Identifier Record In Rights Database ! ! $MOD_IDENT id, [set_attrib], [clr_attrib], [new_name], [new_value] ! ! id = identifier longword ! set_attrib = longword containing the attributes ! to set into the identifier record ! clr_attrib = longword containing the attributes ! to clear in the identifier record ! new_name = address of the new identifier name character ! string descriptor ! new_value = new identifier value longword ! KEYWORDMACRO $MOD_IDENT (ID,SET_ATTRIB=0,CLR_ATTRIB=0,NEW_NAME=0 ,NEW_VALUE=0) = BEGIN EXTERNAL ROUTINE SYS$MOD_IDENT : BLISS ADDRESSING_MODE (GENERAL); SYS$MOD_IDENT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) , SET_ATTRIB, CLR_ATTRIB, NEW_NAME, NEW_VALUE)) END %; ! $MOUNT ! ! Mount Volume ! ! $MOUNT itmlst ! ! itmlst = Address of a list of item identifiers ! KEYWORDMACRO $MOUNT (ITMLST) = BEGIN EXTERNAL ROUTINE SYS$MOUNT : BLISS ADDRESSING_MODE (GENERAL); SYS$MOUNT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! $MTACCESS ! ! Installation specific accessibility routine ! ! $MTACCESS lblnam, [uic], [std_version], [access_char], ! [access_spec],type ! ! lblnam = On input this field is the address of the ! VOL1 or HDR1 label read off the magnetic tape. On ! output of labels this field is zero. The type ! of label is determined by the TYPE field. ! uic = This field contains the longword volme UIC passed ! by value. ! std_version = This field contains a byte value of the ! decimal equivalent of the version number ! gotten from the VOL1 label, passed by value. ! access_char = This field contins the byte value of the ! accessibility character specified by the user, ! passed by value. For output of labels only. ! access_spec = This field determines if the character passed ! in ACCESS_CHAR was specified by user, passed ! by value. It must contain one of the following ! values: ! MTA$K_CHARVALID = YES ! MTA$K_NOCHAR = NO ! For output of labels only. ! type = This field contains the type of accessibility to process, ! passed by value. It must contain one of the following ! values: ! MTA$K_INVOL1 = Input a VOL1 label ! MTA$K_INHDR1 = Input a HDR1 label ! MTA$K_OUTVOL1 = Output a VOL1 label ! MTA$K_OUTHDR1 = Output a HDR1 label ! KEYWORDMACRO $MTACCESS (LBLNAM,UIC=0,STD_VERSION=3,ACCESS_CHAR=32 ,ACCESS_SPEC=0,TYPE) = BEGIN EXTERNAL ROUTINE SYS$MTACCESS : BLISS ADDRESSING_MODE (GENERAL); SYS$MTACCESS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LBLNAM, %QUOTE LBLNAM) , UIC, STD_VERSION, ACCESS_CHAR, ACCESS_SPEC, SDL$STARLET_REQ(TYPE, %QUOTE TYPE) )) END %; ! $NUMTIM ! ! Convert Binary Time to Numeric Time ! ! $NUMTIM timbuf ,[timadr] ! ! timbuf = address of a 7-word buffer to receive numeric time ! information ! ! timadr = address of a quadword containing the 64-bit time. If ! 0, use current time ! KEYWORDMACRO $NUMTIM (TIMBUF,TIMADR=0) = BEGIN EXTERNAL ROUTINE SYS$NUMTIM : BLISS ADDRESSING_MODE (GENERAL); SYS$NUMTIM (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TIMBUF, %QUOTE TIMBUF) , TIMADR)) END %; ! ! $NUMUTC ! ! Convert UTC Binary Time to Numeric Time ! ! $NUMUTC timbuf ,[utcadr] ! ! timbuf = address of a 11-word buffer to receive numeric time ! information ! ! 31 0 ! +---------------+---------------+ ! | month of year | year since 0 | 7 word Date (ala NUMTIM) ! +---------------+---------------+ ! | hour of day | day of month | ! +---------------+---------------+ ! | sec. of min. | min. of hour | ! +---------------+---------------+ ! | iDays | hund of Sec | ! +---------------+---------------+ ! | imins | ihours | 6 word Inaccuracy ! +---------------+---------------+ ! | ihund of sec | isecs | ! +---------------+---------------+ ! | TDF in Min | ! +---------------+ ! ! utcadr = address of a utc_date_time to convert. ! 0, use current time ! KEYWORDMACRO $NUMUTC (TIMBUF,UTCADR=0) = BEGIN EXTERNAL ROUTINE SYS$NUMUTC : BLISS ADDRESSING_MODE (GENERAL); SYS$NUMUTC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TIMBUF, %QUOTE TIMBUF) , UTCADR)) END %; ! ! $NXTVOL ! ! Go to Next Volume ! ! $NXTVOL rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $NXTVOL (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$NXTVOL : BLISS ADDRESSING_MODE (GENERAL); SYS$NXTVOL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $OPEN ! ! Open File ! ! $OPEN fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine KEYWORDMACRO $OPEN (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$OPEN : BLISS ADDRESSING_MODE (GENERAL); SYS$OPEN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $PARSE ! ! Parse File Name ! ! $PARSE fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $PARSE (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$PARSE : BLISS ADDRESSING_MODE (GENERAL); SYS$PARSE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $PARSE_ACL ! ! Parse an Access Control list Entry ! ! $PARSE_ACL acl-string ,acl-entry ,[error-position], ! [bit-names], [routin] ! ! acl-string = address of a descriptor of a buffer which ! contains the text to be parsed ! ! acl-entry = address of a descriptor of a buffer into ! which the converted ACE is to be written ! ! error-position = address of a word to receive the number of ! characters actually processed by the service. ! If the service fails, this count points to ! the failing point in the input string. ! ! bit-names = address of a access bit name table (32 entries) ! ! routin = address of routine to be executed in kernel mode ! KEYWORDMACRO $PARSE_ACL (ACLSTR,ACLENT,ERRPOS=0,ACCNAM=0,ROUTIN=0) = BEGIN EXTERNAL ROUTINE SYS$PARSE_ACL : BLISS ADDRESSING_MODE (GENERAL); SYS$PARSE_ACL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ACLSTR, %QUOTE ACLSTR) , SDL$STARLET_REQ(ACLENT, %QUOTE ACLENT) , ERRPOS, ACCNAM, ROUTIN)) END %; ! $PARSE_CLASS itmlst, [routin] ! ! Parse access class strings ! ! itmlst = address of a list of item descriptors ! ! routin = address of routine to be executed in kernel mode ! ! KEYWORDMACRO $PARSE_CLASS (ITMLST,ROUTIN=0) = BEGIN EXTERNAL ROUTINE SYS$PARSE_CLASS : BLISS ADDRESSING_MODE (GENERAL); SYS$PARSE_CLASS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , ROUTIN)) END %; ! $PERSONA_CREATE ! ! Create Persona ! ! $PERSONA_CREATE persona, [usrnam], [flags], [usrpro], [itmlst] ! ! persona = address of longword holding persona identifier ! ! usrnam = address of user name descriptor ! ! flags = bitvector value ! ! usrpro = address of a descriptor pointing to a user profile block (TLV structure) ! ! itmlst = address of item list for modifications to persona ! KEYWORDMACRO $PERSONA_CREATE (PERSONA,USRNAM=0,FLAGS=0,USRPRO ,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_CREATE : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_CREATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , USRNAM, FLAGS, SDL$STARLET_OPT( USRPRO, ITMLST))) END %; ! $PERSONA_CREATE_INT ! ! Create Persona Internal Service ! ! $PERSONA_CREATE_INT persona, itmlst ! ! persona = address of longword holding persona identifier ! ! itmlst = address of item list containing persona data ! KEYWORDMACRO $PERSONA_CREATE_INT (PERSONA,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_CREATE_INT : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_CREATE_INT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , ITMLST)) END %; ! $PERSONA_ASSUME ! ! Assume Persona ! ! $PERSONA_ASSUME persona, [flags], [previous], [acmode] ! ! persona = address of longword holding persona identifier ! ! flags = longword value ! ! previous = address of longword to receive previous persona identifier ! ! acmode = access mode of code assuming persona ! ! KEYWORDMACRO $PERSONA_ASSUME (PERSONA,FLAGS=0,PREVIOUS,ACMODE) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_ASSUME : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_ASSUME (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , FLAGS, SDL$STARLET_OPT( PREVIOUS, ACMODE))) END %; ! $PERSONA_DELETE ! ! Delete Persona ! ! $PERSONA_DELETE persona ! ! persona = address of longword holding persona identifier ! KEYWORDMACRO $PERSONA_DELETE (PERSONA) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_DELETE : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_DELETE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) )) END %; ! $PERSONA_EXPORT_ARB ! ! Move Persona data to ARB structures ! ! $PERSONA_EXPORT_ARB [level] ! ! level = level of ARB_SUPPORT to be provided ! KEYWORDMACRO $PERSONA_EXPORT_ARB (LEVEL=-1) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_EXPORT_ARB : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_EXPORT_ARB (SDL$STARLET_CONCAT( LEVEL)) END %; ! $PERSONA_IMPORT_ARB ! ! Load Persona Block with ARB structures data ! ! $PERSONA_IMPORT_ARB [level] ! ! level = level of ARB_SUPPORT to be provided ! KEYWORDMACRO $PERSONA_IMPORT_ARB (LEVEL=-1) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_IMPORT_ARB : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_IMPORT_ARB (SDL$STARLET_CONCAT( LEVEL)) END %; ! $PERSONA_CLONE ! ! Create duplicate Persona block ! ! $PERSONA_CLONE persona ! ! persona = address of location in which to store the persona id ! of the clone. ! ! input_id = address of location containing the persona ID to clone ! OPTIONAL! ! KEYWORDMACRO $PERSONA_CLONE (PERSONA,INPUT_ID) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_CLONE : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_CLONE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_OPT( INPUT_ID))) END %; ! ! $PROCESS_AFFINITY ! ! Modify process affinity ! ! $PROCESS_AFFINITY [pidadr],[prcnam],[select_mask],[modify_mask],[prev_mask],[flags],[mask_length] ! ! pidadr = address of process identification of process for ! which affinity is to be changed ! prcnam = address of process name string descriptor ! select_mask = address of bitmask indicating which capabilities ! are to be involved in the specified operation ! modify_mask = address of bitmask indicating final state ! of those capabilities specified in select_mask ! prev_mask = address of user quadword that will hold the ! previous states of the individual capabilities ! flags = address of behavioral flags for this operation ! mask_length = address of user longword that will hold the ! common length of all bitmaps - select,modify,prev ! KEYWORDMACRO $PROCESS_AFFINITY (PIDADR=0,PRCNAM=0,SELECT_MASK=0 ,MODIFY_MASK=0,PREV_MASK=0,FLAGS=0,MASK_LENGTH) = BEGIN EXTERNAL ROUTINE SYS$PROCESS_AFFINITY : BLISS ADDRESSING_MODE (GENERAL); SYS$PROCESS_AFFINITY (SDL$STARLET_CONCAT( PIDADR, PRCNAM, SELECT_MASK, MODIFY_MASK, PREV_MASK, FLAGS, SDL$STARLET_OPT( MASK_LENGTH))) END %; ! ! $PROCESS_CAPABILITIES ! ! Modify process user capabilities ! ! $PROCESS_CAPABILITIES [pidadr],[prcnam],[select_mask],[modify_mask],[prev_mask],[flags] ! ! pidadr = address of process identification of process for ! which capabilities are to be modified ! prcnam = address of process name string descriptor ! select_mask = address of bitmask indicating which capabilities ! are to be involved in the specified operation ! modify_mask = address of bitmask indicating final state ! of those capabilities specified in select_mask ! prev_mask = address of user quadword that will hold the ! previous states of the individual capabilities ! flags = address of behavioral flags for this operation ! KEYWORDMACRO $PROCESS_CAPABILITIES (PIDADR=0,PRCNAM=0,SELECT_MASK=0 ,MODIFY_MASK=0,PREV_MASK=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$PROCESS_CAPABILITIES : BLISS ADDRESSING_MODE (GENERAL); SYS$PROCESS_CAPABILITIES (SDL$STARLET_CONCAT( PIDADR, PRCNAM, SELECT_MASK, MODIFY_MASK, PREV_MASK, FLAGS)) END %; ! $PROCESS_SCAN ! ! Initialize Process_scan context ! ! $Process_scan pidctx , [itmlst ] ! ! pidctx = address of process ctx id ! ! itmlst = address of a list of item descriptors ! ! KEYWORDMACRO $PROCESS_SCAN (PIDCTX,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$PROCESS_SCAN : BLISS ADDRESSING_MODE (GENERAL); SYS$PROCESS_SCAN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PIDCTX, %QUOTE PIDCTX) , ITMLST)) END %; ! $PSHARED_REGISTER ! ! Register a process and global section ! ! $PSHARED_REGISTER addr ! ! addr = base address of the global section to be registered ! $PURGE_WS ! ! Purge Working Set ! ! $PURGE_WS start_va_64, length_64 ! ! start_va_64 = Starting address of address space to purge ! ! length_64 = Byte length of addresses to purge ! ! KEYWORDMACRO $PURGE_WS (START_VA_64,LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$PURGE_WS : BLISS ADDRESSING_MODE (GENERAL); SYS$PURGE_WS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) )) END %; ! $PURGWS ! ! Purge Working Set ! ! $PURGWS inadr ! ! inadr = address of 2-longword array containing starting and ! ending addresses of pages to be removed ! KEYWORDMACRO $PURGWS (INADR) = BEGIN EXTERNAL ROUTINE SYS$PURGWS : BLISS ADDRESSING_MODE (GENERAL); SYS$PURGWS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) )) END %; ! ! $PUT ! ! Put Record to File ! ! $PUT rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $PUT (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$PUT : BLISS ADDRESSING_MODE (GENERAL); SYS$PUT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $PUTMSG ! ! Put Message ! ! $PUTMSG msgvec ,[actrtn] ,[facnam], [actprm] ! ! msgvec = address of message argument vector ! ! actrtn = address of entry mask of action routine ! ! facnam = address of facility name string descriptor ! ! actprm = parameter to pass to action routine ! KEYWORDMACRO $PUTMSG (MSGVEC,ACTRTN=0,FACNAM=0,ACTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$PUTMSG : BLISS ADDRESSING_MODE (GENERAL); SYS$PUTMSG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGVEC, %QUOTE MSGVEC) , ACTRTN, FACNAM, ACTPRM)) END %; ! $QIO ! ! Queue I/O Request ! ! $QIO [efn] ,chan ,func ,[iosb] ,[astadr] ,[astprm] ! ($QIOW) ,[p1] ,[p2] ,[p3] ,[p4] ,[p5] ,[p6] ! ! efn = number of event flag to set on completion ! ! chan = number of channel on which I/O is directed ! ! func = function code specifying action to be performed ! ! iosb = address of quadword I/O status block to receive final ! completion status ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! ! p1... = optional device- and function-specific parameters ! KEYWORDMACRO $QIO (EFN=0,CHAN,FUNC,IOSB=0,ASTADR=0,ASTPRM=0,P1=0 ,P2=0,P3=0,P4=0,P5=0,P6=0) = BEGIN EXTERNAL ROUTINE SYS$QIO : BLISS ADDRESSING_MODE (GENERAL); SYS$QIO (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , IOSB, ASTADR, ASTPRM, P1, P2, P3, P4, P5, P6)) END %; KEYWORDMACRO $QIOW (EFN=0,CHAN,FUNC,IOSB=0,ASTADR=0,ASTPRM=0,P1=0 ,P2=0,P3=0,P4=0,P5=0,P6=0) = BEGIN EXTERNAL ROUTINE SYS$QIOW : BLISS ADDRESSING_MODE (GENERAL); SYS$QIOW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , IOSB, ASTADR, ASTPRM, P1, P2, P3, P4, P5, P6)) END %; ! ! $READ ! ! Read Block from File ! ! $READ rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $READ (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$READ : BLISS ADDRESSING_MODE (GENERAL); SYS$READ (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $READEF ! ! Read Event Flag ! ! $READEF efn ,state ! ! efn = event flag number of any flag in the cluster ! ! state = address of a longword to receive current state of all ! flags in the cluster ! KEYWORDMACRO $READEF (EFN,STATE) = BEGIN EXTERNAL ROUTINE SYS$READEF : BLISS ADDRESSING_MODE (GENERAL); SYS$READEF (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) , SDL$STARLET_REQ(STATE, %QUOTE STATE) )) END %; ! ! $READ_THREAD_UNQ ! ! Read thread unique value ! ! $READ_THREAD_UNQ contxt ! ! contxt = address of quadword in which to return the ! thread unique value ! KEYWORDMACRO $READ_THREAD_UNQ (CONTXT) = BEGIN EXTERNAL ROUTINE SYS$READ_THREAD_UNQ : BLISS ADDRESSING_MODE (GENERAL); SYS$READ_THREAD_UNQ (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) )) END %; ! ! $REGISTRY ! ! Interface to the Registry Database ! ! $REGISTRY [efn], func, [ntcredentials], itmlst, [iosb] ! [,astadr] [,astprm] [,timeout] ! ($REGISTRYW) ! ! efn = event flag to be set at completion ! ! func = function code specifying action to be performed ! ! ntcredentials = address of an NT user credentials buffer ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! timeout = request timeout value ! KEYWORDMACRO $REGISTRY (EFN=0,FUNC,NTCREDENTIALS=0,ITMLST,IOSB=0 ,ASTADR,ASTPRM,TIMEOUT) = BEGIN EXTERNAL ROUTINE SYS$REGISTRY : BLISS ADDRESSING_MODE (GENERAL); SYS$REGISTRY (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , NTCREDENTIALS, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, SDL$STARLET_OPT( ASTADR, ASTPRM, TIMEOUT))) END %; KEYWORDMACRO $REGISTRYW (EFN=0,FUNC,NTCREDENTIALS=0,ITMLST,IOSB=0 ,ASTADR,ASTPRM,TIMEOUT) = BEGIN EXTERNAL ROUTINE SYS$REGISTRYW : BLISS ADDRESSING_MODE (GENERAL); SYS$REGISTRYW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , NTCREDENTIALS, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, SDL$STARLET_OPT( ASTADR, ASTPRM, TIMEOUT))) END %; ! ! $RELEASE ! ! Release Record ! ! $RELEASE rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $RELEASE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$RELEASE : BLISS ADDRESSING_MODE (GENERAL); SYS$RELEASE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $RELEASE_LICENSE ! ! Release authorization to execute licensed software product. ! ! $RELEASE_LICENSE context ! ! contxt = address of context buffer returned by ! $grant_license (4 longwords) ! KEYWORDMACRO $RELEASE_LICENSE (CONTXT) = BEGIN EXTERNAL ROUTINE SYS$RELEASE_LICENSE : BLISS ADDRESSING_MODE (GENERAL); SYS$RELEASE_LICENSE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) )) END %; ! ! $RELEASE_VP ! ! Release the Vector Processor ! ! $RELEASE_VP ! KEYWORDMACRO $RELEASE_VP = BEGIN EXTERNAL ROUTINE SYS$RELEASE_VP : BLISS ADDRESSING_MODE (GENERAL); SYS$RELEASE_VP() END %; ! ! $RELEASE_VP_INT ! ! Release the Vector Processor, internal form ! ! $RELEASE_VP_INT ! KEYWORDMACRO $RELEASE_VP_INT = BEGIN EXTERNAL ROUTINE SYS$RELEASE_VP_INT : BLISS ADDRESSING_MODE (GENERAL); SYS$RELEASE_VP_INT() END %; ! ! $REMOVE ! ! Remove File ! ! $REMOVE fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $REMOVE (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$REMOVE : BLISS ADDRESSING_MODE (GENERAL); SYS$REMOVE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $REM_HOLDER ! ! Remove Holder Record From Rights Database ! ! $REM_HOLDER id, holder ! ! id = identifier longword ! holder = address of the holder identifier quadword ! KEYWORDMACRO $REM_HOLDER (ID,HOLDER) = BEGIN EXTERNAL ROUTINE SYS$REM_HOLDER : BLISS ADDRESSING_MODE (GENERAL); SYS$REM_HOLDER (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) , SDL$STARLET_REQ(HOLDER, %QUOTE HOLDER) )) END %; ! ! $REM_IDENT ! ! Remove Identifier From Rights Database ! ! $REM_IDENT id ! ! id = identifier longword ! KEYWORDMACRO $REM_IDENT (ID) = BEGIN EXTERNAL ROUTINE SYS$REM_IDENT : BLISS ADDRESSING_MODE (GENERAL); SYS$REM_IDENT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ID, %QUOTE ID) )) END %; ! ! $RENAME ! ! Rename File ! ! $RENAME oldfab, [err], [suc], newfab ! ! oldfab = address of oldfab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! ! newfab = address of new fab KEYWORDMACRO $RENAME (OLDFAB,ERR=0,SUC=0,NEWFAB) = BEGIN EXTERNAL ROUTINE SYS$RENAME : BLISS ADDRESSING_MODE (GENERAL); SYS$RENAME (SDL$STARLET_CONCAT( SDL$STARLET_REQ(OLDFAB, %QUOTE OLDFAB) , ERR, SUC, SDL$STARLET_REQ(NEWFAB, %QUOTE NEWFAB) )) END %; ! ! $RESTORE_VP_EXCEPTION ! ! Restore Vector Processor Exception State ! ! $RESTORE_VP_EXCEPTION excid ! ! excid = address of a context longword ! KEYWORDMACRO $RESTORE_VP_EXCEPTION (EXCID) = BEGIN EXTERNAL ROUTINE SYS$RESTORE_VP_EXCEPTION : BLISS ADDRESSING_MODE (GENERAL); SYS$RESTORE_VP_EXCEPTION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EXCID, %QUOTE EXCID) )) END %; ! ! $RESTORE_VP_EXC_INT ! ! Restore Vector Processor Exception State ! ! $RESTORE_VP_EXC_INT excid ! ! excid = address of a context longword ! KEYWORDMACRO $RESTORE_VP_EXC_INT (EXCID) = BEGIN EXTERNAL ROUTINE SYS$RESTORE_VP_EXC_INT : BLISS ADDRESSING_MODE (GENERAL); SYS$RESTORE_VP_EXC_INT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EXCID, %QUOTE EXCID) )) END %; ! ! $RESTORE_VP_STATE ! ! Restore Mainline Vector State ! ! $RESTORE_VP_STATE ! KEYWORDMACRO $RESTORE_VP_STATE = BEGIN EXTERNAL ROUTINE SYS$RESTORE_VP_STATE : BLISS ADDRESSING_MODE (GENERAL); SYS$RESTORE_VP_STATE() END %; ! $RESUME ! ! Resume Suspended Process ! ! $RESUME [pidadr] ,[prcnam] ! ! pidadr = address of process id of process to be resumed ! ! prcnam = address of process name string descriptor ! KEYWORDMACRO $RESUME (PIDADR=0,PRCNAM=0) = BEGIN EXTERNAL ROUTINE SYS$RESUME : BLISS ADDRESSING_MODE (GENERAL); SYS$RESUME (SDL$STARLET_CONCAT( PIDADR, PRCNAM)) END %; ! ! $REVOKID ! ! Revoke Identifier from Process ! ! $REVOKID [pidadr], [prcnam], [id], [name], [prvatr] [,segment] ! ! pidadr = address of PID of affected process ! prcnam = address of string descriptor of process name ! id = address of quadword identifier and attributes ! name = address of string descriptor of identifier name ! prvatr = address to store attributes of superseded id ! segment = optional segment index, by value ! KEYWORDMACRO $REVOKID (PIDADR=0,PRCNAM=0,ID=0,NAME=0,PRVATR=0 ,SEGMENT=0) = BEGIN EXTERNAL ROUTINE SYS$REVOKID : BLISS ADDRESSING_MODE (GENERAL); SYS$REVOKID (SDL$STARLET_CONCAT( PIDADR, PRCNAM, ID, NAME, PRVATR, SEGMENT)) END %; ! ! $REWIND ! ! Rewind File ! ! $REWIND rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $REWIND (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$REWIND : BLISS ADDRESSING_MODE (GENERAL); SYS$REWIND (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $RMSRUNDWN ! ! RMS rundown (close all files opened by OpenVMS RMS for ! the image or process and halts I/O activity. ! ! $RMSRUNDWN buf-addr, type-value ! ! buf-addr = a descriptor pointing to a 22-byte buffer ! that is to receive the device identification ! (16 bytes) and the file identification (6 bytes) ! bytes) of an improperly closed output file. ! type-value = a single byte code that specifies the type of ! I/O rundown to be performed. KEYWORDMACRO $RMSRUNDWN (BUFADDR,TYPEVALUE) = BEGIN EXTERNAL ROUTINE SYS$RMSRUNDWN : BLISS ADDRESSING_MODE (GENERAL); SYS$RMSRUNDWN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(BUFADDR, %QUOTE BUFADDR) , SDL$STARLET_REQ(TYPEVALUE, %QUOTE TYPEVALUE) )) END %; ! $RUNDWN ! ! Rundown Process ! ! $RUNDWN [acmode] ! ! acmode = access mode to rundown; this and all less ! privileged access modes are rundown ! KEYWORDMACRO $RUNDWN (ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$RUNDWN : BLISS ADDRESSING_MODE (GENERAL); SYS$RUNDWN (SDL$STARLET_CONCAT( ACMODE)) END %; ! ! $SAVE_VP_EXCEPTION ! ! Save Vector Processor Exception State ! ! $SAVE_VP_EXCEPTION excid ,[flags] ! ! excid = address of a context longword ! ! flags = noallocation flag ! 0 -> allocate 1 -> don't allocate ! KEYWORDMACRO $SAVE_VP_EXCEPTION (EXCID,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$SAVE_VP_EXCEPTION : BLISS ADDRESSING_MODE (GENERAL); SYS$SAVE_VP_EXCEPTION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EXCID, %QUOTE EXCID) , FLAGS)) END %; ! ! $SAVE_VP_EXC_INT ! ! Save Vector Processor Exception State, internal form ! ! $SAVE_VP_EXC_INT excid ,[flags] ! ! excid = address of a context longword ! ! flags = noallocation flag ! 0 -> allocate 1 -> don't allocate ! KEYWORDMACRO $SAVE_VP_EXC_INT (EXCID,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$SAVE_VP_EXC_INT : BLISS ADDRESSING_MODE (GENERAL); SYS$SAVE_VP_EXC_INT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EXCID, %QUOTE EXCID) , FLAGS)) END %; ! ! $SCAN_INTRUSION ! ! Scan intrusion database ! ! $SCAN_INTRUSION logfail_status, failed_user, job_type, ! [source_terminal], [source_node], [source_user], [source_addr], ! [failed_password], [parent_user], [parent_id], [flags] ! ! logfail_status in login failure status ! failed_user in address of failed username descriptor ! job_type in job type index ! source_terminal in address of source terminal descriptor ! source_node in address of source nodename descriptor ! source_user in address of source username descriptor ! source_address in address of source DECnet address ! failed_password in address of failed password (breakin attempts only) ! parent_user in address of parent username ! parent_id in parent PID ! flags in intrusion service flags ! KEYWORDMACRO $SCAN_INTRUSION (LOGFAIL_STATUS,FAILED_USER,JOB_TYPE ,SOURCE_TERMINAL=0,SOURCE_NODE=0,SOURCE_USER=0,SOURCE_ADDRESS=0 ,FAILED_PASSWORD=0,PARENT_USER=0,PARENT_ID=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$SCAN_INTRUSION : BLISS ADDRESSING_MODE (GENERAL); SYS$SCAN_INTRUSION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOGFAIL_STATUS, %QUOTE LOGFAIL_STATUS) , SDL$STARLET_REQ(FAILED_USER, %QUOTE FAILED_USER) , SDL$STARLET_REQ(JOB_TYPE, %QUOTE JOB_TYPE) , SOURCE_TERMINAL, SOURCE_NODE, SOURCE_USER, SOURCE_ADDRESS, FAILED_PASSWORD, PARENT_USER, PARENT_ID, FLAGS)) END %; ! ! $SCAN_MAPPING ! ! Locate Mapping records in Mapping database ! ! $SCAN_MAPPING initmlst. outitmlst [,contxt] ! ! initmlst = address of a list of item descriptors for the operation ! outitmlst = address of a list of item descriptors for the operation ! contxt = address of a context long word ! KEYWORDMACRO $SCAN_MAPPING (INITMLST,OUTITMLST,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$SCAN_MAPPING : BLISS ADDRESSING_MODE (GENERAL); SYS$SCAN_MAPPING (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INITMLST, %QUOTE INITMLST) , SDL$STARLET_REQ(OUTITMLST, %QUOTE OUTITMLST) , CONTXT)) END %; ! $SCHDWK ! ! Schedule Wakeup ! ! $SCHDWK [pidadr] ,[prcnam] ,daytim ,[reptim] ! ! pidadr = address of process id of process to be awakened ! ! prcnam = address of process name string descriptor ! ! daytim = address of quadword containing time to wake ! ! reptim = address of quadword containing repeat time interval ! KEYWORDMACRO $SCHDWK (PIDADR=0,PRCNAM=0,DAYTIM,REPTIM=0) = BEGIN EXTERNAL ROUTINE SYS$SCHDWK : BLISS ADDRESSING_MODE (GENERAL); SYS$SCHDWK (SDL$STARLET_CONCAT( PIDADR, PRCNAM, SDL$STARLET_REQ(DAYTIM, %QUOTE DAYTIM) , REPTIM)) END %; ! ! $SEARCH ! ! Search for File Name ! ! $SEARCH fab, [err], [suc] ! ! fab = address of fab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $SEARCH (FAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$SEARCH : BLISS ADDRESSING_MODE (GENERAL); SYS$SEARCH (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FAB, %QUOTE FAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $SETCLUEVT ! ! Set Cluster Event Notification ! ! $SETCLUEVT event, astadr, [astprm], [acmode], [handle] ! ! event = code indicating type of event ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as an argument ! ! acmode = access mode of AST ! ! handle = address of handle ! KEYWORDMACRO $SETCLUEVT (EVENT,ASTADR,ASTPRM=0,ACMODE=0,HANDLE=0) = BEGIN EXTERNAL ROUTINE SYS$SETCLUEVT : BLISS ADDRESSING_MODE (GENERAL); SYS$SETCLUEVT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EVENT, %QUOTE EVENT) , SDL$STARLET_REQ(ASTADR, %QUOTE ASTADR) , ASTPRM, ACMODE, HANDLE)) END %; ! $SETDDIR ! ! Read and set the default directory string for the process. ! ! $SETDDIR [new-dir-addr] ,[length-addr] ,[cur-dir-addr] ! ! new-dir-addr = a descriptor of the new default directory. ! ! length-addr = a word that is to receive the length of the ! current default directory. ! ! cur-dir-addr = descriptor of a buffer that is to receive ! the current default directory. KEYWORDMACRO $SETDDIR (NEWDIRADDR=0,LENGTHADDR=0,CURDIRADDR=0) = BEGIN EXTERNAL ROUTINE SYS$SETDDIR : BLISS ADDRESSING_MODE (GENERAL); SYS$SETDDIR (SDL$STARLET_CONCAT( NEWDIRADDR, LENGTHADDR, CURDIRADDR)) END %; ! $SETDFPROT ! ! Read and write the default file protection for the process. ! ! $SETDFPROT [new-def-prot-addr] ,[cur-def-prot-addr] ! ! new-def-prot-addr = a word that specifies the new default file ! protection specification. ! ! cur-def-prot-addr = a word that is to receive the current default file ! protection specification. KEYWORDMACRO $SETDFPROT (NEWDEFPROTADDR=0,CURDEFPROTADDR=0) = BEGIN EXTERNAL ROUTINE SYS$SETDFPROT : BLISS ADDRESSING_MODE (GENERAL); SYS$SETDFPROT (SDL$STARLET_CONCAT( NEWDEFPROTADDR, CURDEFPROTADDR)) END %; ! $SET_RETURN_VALUE ! ! Set return value/status in the Mechanism array ! ! $SET_RETURN_VALUE [mechanism_arg], [return_type], return_value ! ! mechanism_arg = Address of mechanism vector ! ! return_type = Address of a longword containing one of the values ! specified in the Function Return Signature Encoding tables ! of the OpenVMS calling standard. ! ! return_value = Address of a value of the type specified by the ! return_type argument. The referenced value will be read ! as a longword, quadword, or octaword, depending on the ! return_type value. ! ! KEYWORDMACRO $SET_RETURN_VALUE (MECHANISM_ARG=0,RETURN_TYPE=0 ,RETURN_VALUE) = BEGIN EXTERNAL ROUTINE SYS$SET_RETURN_VALUE : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_RETURN_VALUE (SDL$STARLET_CONCAT( MECHANISM_ARG, RETURN_TYPE, SDL$STARLET_REQ(RETURN_VALUE, %QUOTE RETURN_VALUE) )) END %; ! $SET_SYSTEM_EVENT ! ! Set System Event Notification ! ! $SET_SYSTEM_EVENT event, astadr, [astprm], [acmode], handle ! ! event = code indicating type of event ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as an argument ! ! acmode = access mode of AST ! ! flags = flags longword (one example is to indicate whether the notification ! of the event should be done only once or should be repeated) ! ! event_handle = address of handle ! KEYWORDMACRO $SET_SYSTEM_EVENT (EVENT,ASTADR,ASTPRM=0,ACMODE=0 ,FLAGS=0,HANDLE) = BEGIN EXTERNAL ROUTINE SYS$SET_SYSTEM_EVENT : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_SYSTEM_EVENT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EVENT, %QUOTE EVENT) , SDL$STARLET_REQ(ASTADR, %QUOTE ASTADR) , ASTPRM, ACMODE, FLAGS, SDL$STARLET_REQ(HANDLE, %QUOTE HANDLE) )) END %; ! ! $SET_IMPLICIT_AFFINITY ! ! Modify process implicit affinity ! ! $SET_IMPLICIT_AFFINITY [pidadr],[prcnam],[state],[cpu_id],[prev_mask] ! ! pidadr = address of process identification of process for ! which affinity is to be changed ! prcnam = address of process name string descriptor ! cpu_id = CPUID number process is to be assigned to initially ! prev_mask = address of user quadword that will hold the ! previous states of the individual capabilities ! KEYWORDMACRO $SET_IMPLICIT_AFFINITY (PIDADR=0,PRCNAM=0,STATE=0 ,CPU_ID=-1,PREV_MASK=0) = BEGIN EXTERNAL ROUTINE SYS$SET_IMPLICIT_AFFINITY : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_IMPLICIT_AFFINITY (SDL$STARLET_CONCAT( PIDADR, PRCNAM, STATE, CPU_ID, PREV_MASK)) END %; ! $SET_RESOURCE_DOMAIN ! ! Set Resource Domain ! ! $SET_RESOURCE_DOMAIN func ,rsdm_id ,uic_group ,[nullarg] ,[access] ,[acmode] ! ! func = join or leave function to be performed ! 1 - Join the System Resource Domain ! 2 - Join the Process Default Domain ! 3 - Join a new Resource Domain (not System or Process) ! ! rsdm_id = address of the Resource Domain Id ! ! domain_number = number identifying target Resource Domain ! ! nullarg = Placeholder reserved to Digital ! ! access = Access desired (defined by RSDM$M macro ! ! acmode = requested access mode ! ! KEYWORDMACRO $SET_RESOURCE_DOMAIN (FUNC,RSDM_ID,DOMAIN_NUMBER ,NULLARG=0,ACCESS=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$SET_RESOURCE_DOMAIN : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_RESOURCE_DOMAIN (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(RSDM_ID, %QUOTE RSDM_ID) , SDL$STARLET_REQ(DOMAIN_NUMBER, %QUOTE DOMAIN_NUMBER) , NULLARG, ACCESS, ACMODE)) END %; ! $SET_SECURITY ! ! Set Object Security Profile ! ! $SET_SECURITY [clsnam], [objnam], [objhan], [flags], [itmlst], [context], [acmode] ! KEYWORDMACRO $SET_SECURITY (CLSNAM=0,OBJNAM=0,OBJHAN=0,FLAGS=0 ,ITMLST=0,CONTXT=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$SET_SECURITY : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_SECURITY (SDL$STARLET_CONCAT( CLSNAM, OBJNAM, OBJHAN, FLAGS, ITMLST, CONTXT, ACMODE)) END %; ! $SET_UNWIND_TABLE ! ! Register or extend and unwind table (UT) information ! ! $SET_UNWIND_TABLE code_base_va, code_size, ut_base_va, ut_size, ! handler_base_va, unwind_info_base, name ! ! code_base_va = The process virtual address of the start of the code region ! ! code_size = Size of code region in bytes ! ! ut_base_va = Quadword aligned process virtual address of the UT ! ! ut_size = The size of the UT in bytes ! ! handler_base_va = The handler_base_va plus the unwind information block's condition ! handler procedure value must add up to the process virtual address ! of the condition handler's function value. ! ! unwind_info_base = The unwind_info_base plus a particular unwind table entry (UTE) ! unwind info block (UIB) offset must add up to the process virtual ! address of that UIB. ! ! name = Fixed length string, passed by descriptor. ! ! flags = MUTE flags, mask word, optional ! KEYWORDMACRO $SET_UNWIND_TABLE (CODE_BASE_VA=0,CODE_SIZE=0,UT_BASE_VA=0 ,UT_SIZE=0,HANDLER_BASE_VA=0,UNWIND_INFO_BASE=0,NAME,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$SET_UNWIND_TABLE : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_UNWIND_TABLE (SDL$STARLET_CONCAT( CODE_BASE_VA, CODE_SIZE, UT_BASE_VA, UT_SIZE, HANDLER_BASE_VA, UNWIND_INFO_BASE, SDL$STARLET_REQ(NAME, %QUOTE NAME) , SDL$STARLET_OPT( FLAGS))) END %; ! $SETAST ! ! Set AST Enable ! ! $SETAST enbflg ! ! enbflg = AST enable indicator for current access mode ! 0 -> disable 1 -> enable ! KEYWORDMACRO $SETAST (ENBFLG) = BEGIN EXTERNAL ROUTINE SYS$SETAST : BLISS ADDRESSING_MODE (GENERAL); SYS$SETAST (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ENBFLG, %QUOTE ENBFLG) )) END %; ! $SETEF ! ! Set Event Flag ! ! $SETEF efn ! ! efn = event flag number of flag to set ! KEYWORDMACRO $SETEF (EFN) = BEGIN EXTERNAL ROUTINE SYS$SETEF : BLISS ADDRESSING_MODE (GENERAL); SYS$SETEF (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) )) END %; ! $GETENV ! ! Get an environment variable ! ! $GETENV ItemList ! ! ItemList = address of a zero terminated item list. ! ! KEYWORDMACRO $GETENV (ITEMLIST=0) = BEGIN EXTERNAL ROUTINE SYS$GETENV : BLISS ADDRESSING_MODE (GENERAL); SYS$GETENV (SDL$STARLET_CONCAT( ITEMLIST)) END %; ! $SETENV ! ! Set an environment variable ! ! $SETENV ItemList ! ! ItemList = address of a zero terminated item list. ! ! KEYWORDMACRO $SETENV (ITEMLIST=0) = BEGIN EXTERNAL ROUTINE SYS$SETENV : BLISS ADDRESSING_MODE (GENERAL); SYS$SETENV (SDL$STARLET_CONCAT( ITEMLIST)) END %; ! $SETEVTAST ! ! Establish an Event AST Routine ! ! $SETEVTAST evtnam, evtadr, [evtfac], [acmode], [flags], [reqid] ! (SETEVTASTW) ,[evtid], [evtcrd], [efn], [iosb], [astadr] ! ,[astprm], [nullarg] ! ! evtnam = address of descriptor of event name ! ! evtadr = address of entry mask of event AST routine ! ! evtfac = address of event facility code ! ! acmode = access mode of event declaration ! ! flags = optional flags ! ! reqid = user provided identification of this request ! ! evtid = address to receive unique identification of this request ! ! evtcrd = amount of AST credit to reserve for request ! ! efn = event flag to set when $SETEVTAST completes ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of completion AST routine ! ! astprm = value to be passed to completion AST routine ! KEYWORDMACRO $SETEVTAST (EVTNAM,EVTADR,EVTFAC=0,ACMODE=0,FLAGS=0 ,REQID=0,EVTID=0,EVTCRD=0,EFN=0,IOSB=0,ASTADR=0,ASTPRM=0,NULLARG=0) = BEGIN EXTERNAL ROUTINE SYS$SETEVTAST : BLISS ADDRESSING_MODE (GENERAL); SYS$SETEVTAST (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EVTNAM, %QUOTE EVTNAM) , SDL$STARLET_REQ(EVTADR, %QUOTE EVTADR) , EVTFAC, ACMODE, FLAGS, REQID, EVTID, EVTCRD, EFN, IOSB, ASTADR, ASTPRM, NULLARG)) END %; KEYWORDMACRO $SETEVTASTW (EVTNAM,EVTADR,EVTFAC=0,ACMODE=0,FLAGS=0 ,REQID=0,EVTID=0,EVTCRD=0,EFN=0,IOSB=0,ASTADR=0,ASTPRM=0,NULLARG=0) = BEGIN EXTERNAL ROUTINE SYS$SETEVTASTW : BLISS ADDRESSING_MODE (GENERAL); SYS$SETEVTASTW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EVTNAM, %QUOTE EVTNAM) , SDL$STARLET_REQ(EVTADR, %QUOTE EVTADR) , EVTFAC, ACMODE, FLAGS, REQID, EVTID, EVTCRD, EFN, IOSB, ASTADR, ASTPRM, NULLARG)) END %; ! $SETEXV ! ! Set Exception Vector ! ! $SETEXV [vector] ,[addres] ,[acmode] ,[prvhnd] ! ! vector = vector number ! 0 -> primary vector 1 -> secondary 2 -> last chance ! ! addres = exception handler address (0 indicates deassign vector) ! ! acmode = access mode for which vector is set ! ! prvhnd = address of longword to receive previous handler address ! KEYWORDMACRO $SETEXV (VECTOR=0,ADDRES=0,ACMODE=0,PRVHND=0) = BEGIN EXTERNAL ROUTINE SYS$SETEXV : BLISS ADDRESSING_MODE (GENERAL); SYS$SETEXV (SDL$STARLET_CONCAT( VECTOR, ADDRES, ACMODE, PRVHND)) END %; ! $SETFLT ! ! Set Fault Characteristics on Pages ! ! $SETFLT inadr ,[retadr] ,[acmode] ,fault_flag ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of pages to change ! ! retadr = address of 2-longword array containing starting and ! ending addresses of pages which were changed ! ! acmode = access mode of request ! ! fault_flag = New fault characteristic (FLT$M_EXECUTABLE or FLT$M_NO_EXECUTE) ! KEYWORDMACRO $SETFLT (INADR,RETADR=0,ACMODE=0,FAULT_FLAG) = BEGIN EXTERNAL ROUTINE SYS$SETFLT : BLISS ADDRESSING_MODE (GENERAL); SYS$SETFLT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE, SDL$STARLET_REQ(FAULT_FLAG, %QUOTE FAULT_FLAG) )) END %; ! $SETFLT_64 ! ! Set Fault Characteristics on Pages ! ! $SETLFT_64 start_va_64, length_64, acmode, fault_flag, return_va_64, return_length_64 ! ! start_va_64 = Starting address of address space to set protection ! ! length_64 = Byte length of addresses to set protection ! ! acmode = Access mode of request ! ! fault_flag = New fault characteristic (FLT$M_EXECUTABLE or FLT$M_NO_EXECUTE) ! ! return_va_64 = Address of address space whose protection was set ! ! return_length_64 = Length of address space whose protection was set ! KEYWORDMACRO $SETFLT_64 (START_VA_64,LENGTH_64,ACMODE=0,FAULT_FLAG ,RETURN_VA_64,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$SETFLT_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$SETFLT_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(FAULT_FLAG, %QUOTE FAULT_FLAG) , SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $SETIME ! ! Set System Time ! ! $SETIME [timadr] ! ! timadr = address of quadword containing new system time in ! 64-bit format. If 0, recalibrate system time using ! hardware time-of-year clock. ! KEYWORDMACRO $SETIME (TIMADR=0) = BEGIN EXTERNAL ROUTINE SYS$SETIME : BLISS ADDRESSING_MODE (GENERAL); SYS$SETIME (SDL$STARLET_CONCAT( TIMADR)) END %; ! $SETIMR ! ! Set Timer ! ! $SETIMR [efn] ,daytim ,[astadr] ,[reqidt] ,[flags] ! ! efn = event flag to set when timer expires ! ! daytim = address of quadword containing 64-bit time value ! ! astadr = address of entry mask of AST routine ! ! reqidt = request identification of this timer request ! ! flags = only bit 0 used right now. If bit 0 is set, ! then this timer request is in terms of CPU time. ! KEYWORDMACRO $SETIMR (EFN=0,DAYTIM,ASTADR=0,REQIDT=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$SETIMR : BLISS ADDRESSING_MODE (GENERAL); SYS$SETIMR (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(DAYTIM, %QUOTE DAYTIM) , ASTADR, REQIDT, FLAGS)) END %; ! $SETPFM ! ! Set Page Fault Monitoring ! ! $SETPFM [pfmflg] ,[astadr] ,[astprm] ,[acmode] ! ! pfmflg = function/subfunction bits ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! acmode = access mode for which the AST is to be declared ! ! bufcntadr = address of longword for which the number of ! page fault monitoring buffers allocated is stored. ! KEYWORDMACRO $SETPFM (PFMFLG=0,ASTADR=0,ASTPRM=0,ACMODE=0,BUFCNTADR=0) = BEGIN EXTERNAL ROUTINE SYS$SETPFM : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPFM (SDL$STARLET_CONCAT( PFMFLG, ASTADR, ASTPRM, ACMODE, BUFCNTADR)) END %; ! $SETPRA ! ! Set Power Recovery AST ! ! $SETPRA astadr ,[acmode] ! ! astadr = address of power recovery AST routine ! ! acmode = access mode of AST ! KEYWORDMACRO $SETPRA (ASTADR,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$SETPRA : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPRA (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ASTADR, %QUOTE ASTADR) , ACMODE)) END %; ! $SETPRI ! ! Set Priority ! ! $SETPRI [pidadr] ,[prcnam] ,pri ,[prvpri],[pol],[prvpol] ! ! pidadr = address of process id of process to be set ! ! prcnam = address of process name string descriptor ! ! pri = new base priority for the process ! ! prvpri = address of longword to receive previous base priority ! ! pol = address of new scheduling policy for the process ! ! prvpol = address of longword to receive previous sched policy ! KEYWORDMACRO $SETPRI (PIDADR=0,PRCNAM=0,PRI,PRVPRI=0,POL=0,PRVPOL=0) = BEGIN EXTERNAL ROUTINE SYS$SETPRI : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPRI (SDL$STARLET_CONCAT( PIDADR, PRCNAM, SDL$STARLET_REQ(PRI, %QUOTE PRI) , PRVPRI, POL, PRVPOL)) END %; ! $SETPRN ! ! Set Process Name ! ! $SETPRN [prcnam] ! ! prcnam = address of the process name string descriptor ! KEYWORDMACRO $SETPRN (PRCNAM=0) = BEGIN EXTERNAL ROUTINE SYS$SETPRN : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPRN (SDL$STARLET_CONCAT( PRCNAM)) END %; ! $SETPRT ! ! Set Protection on Pages ! ! $SETPRT inadr ,[retadr] ,[acmode] ,prot ,[prvprt] ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of pages to change ! ! retadr = address of 2-longword array containing starting and ! ending addresses of pages which were changed ! ! acmode = access mode of request ! ! prot = new protection ! ! prvprt = address of byte to receive previous protection of ! last page changed ! KEYWORDMACRO $SETPRT (INADR,RETADR=0,ACMODE=0,PROT,PRVPRT=0) = BEGIN EXTERNAL ROUTINE SYS$SETPRT : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPRT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE, SDL$STARLET_REQ(PROT, %QUOTE PROT) , PRVPRT)) END %; ! $SETPRT_64 ! ! Set Protection on Pages ! ! $SETPRT_64 start_va_64, length_64, acmode, prot, return_va_64, return_length_64, ! return_prot_64 ! ! start_va_64 = Starting address of address space to set protection ! ! length_64 = Byte length of addresses to set protection ! ! acmode = Access mode of request ! ! prot = New protection ! ! return_va_64 = Address of address space whose protection was set ! ! return_length_64 = Length of address space whose protection was set ! ! return_prot_64 = Address of longword to receive previous protection of ! last page changed ! KEYWORDMACRO $SETPRT_64 (START_VA_64,LENGTH_64,ACMODE=0,PROT,RETURN_VA_64 ,RETURN_LENGTH_64,RETURN_PROT_64) = BEGIN EXTERNAL ROUTINE SYS$SETPRT_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPRT_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(PROT, %QUOTE PROT) , SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_REQ(RETURN_PROT_64, %QUOTE RETURN_PROT_64) )) END %; ! $SETPRV ! ! Set privileges. ! $SETPRV [enbflg] ,[prvadr] ,[prmflg] ,[prvprv] ! ! enbflg = enable indicator ! 0 -> disable 1 -> enable ! ! prvadr = 64-bit mask defining the privileges to be enabled or ! disabled ! ! prmflg = permanent indicator ! 0 -> temporary (for this image) 1 -> permanent ! ! prvprv = address of quadword buffer to receive previous privileges ! KEYWORDMACRO $SETPRV (ENBFLG=0,PRVADR=0,PRMFLG=0,PRVPRV=0) = BEGIN EXTERNAL ROUTINE SYS$SETPRV : BLISS ADDRESSING_MODE (GENERAL); SYS$SETPRV (SDL$STARLET_CONCAT( ENBFLG, PRVADR, PRMFLG, PRVPRV)) END %; ! $SETRWM ! ! Set Resource Wait Mode ! ! $SETRWM [watflg] ! ! watflg = wait indicator ! 0 -> wait for resources 1 -> return failure immediately ! (type is NUMBER rather than BOOLEAN since WATFLG=TRUE ! means don't wait, which is the opposite of what is seems) ! KEYWORDMACRO $SETRWM (WATFLG=0) = BEGIN EXTERNAL ROUTINE SYS$SETRWM : BLISS ADDRESSING_MODE (GENERAL); SYS$SETRWM (SDL$STARLET_CONCAT( WATFLG)) END %; ! $SETSFM ! ! Set System Service Failure Mode ! ! $SETSFM [enbflg] ! ! enbflg = enable indicator ! 0 -> disable generation of exceptions on service failures ! 1 -> generate exceptions for system service failures ! KEYWORDMACRO $SETSFM (ENBFLG=0) = BEGIN EXTERNAL ROUTINE SYS$SETSFM : BLISS ADDRESSING_MODE (GENERAL); SYS$SETSFM (SDL$STARLET_CONCAT( ENBFLG)) END %; ! $SETSSF ! ! Set System Service Filter ! ! $SETSSF [mask] ! ! mask = flags for services to inhibit ! KEYWORDMACRO $SETSSF (MASK=0) = BEGIN EXTERNAL ROUTINE SYS$SETSSF : BLISS ADDRESSING_MODE (GENERAL); SYS$SETSSF (SDL$STARLET_CONCAT( MASK)) END %; ! $SETSHLV ! ! Modify process default unshelving action ! ! $SETSHLV [pidadr] ,[prcnam], [shlvflg] ! ! pidadr = address of process id of process ! ! prcnam = address of name string descriptor of process ! ! shlvflg = longword containing the desired shelving mode ! in the bottom bit. If the bottom bit is set, ! then the default is not to automatically unshelve ! shelved files. If the bottom bit is clear, then ! the default is to automatically unshelve shelved ! files. ! KEYWORDMACRO $SETSHLV (PIDADR=0,PRCNAM=0,SHLVFLG=0) = BEGIN EXTERNAL ROUTINE SYS$SETSHLV : BLISS ADDRESSING_MODE (GENERAL); SYS$SETSHLV (SDL$STARLET_CONCAT( PIDADR, PRCNAM, SHLVFLG)) END %; ! $SETSTK ! ! SET VIRTUAL STACK LIMITS ! ! $SETSTK inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending virtual address of stack limits to set ! ! retadr = address of a 2-longword array to receive starting and ! ending virtual address of stack limits to set ! ! acmode = access mode for the stack to change ! KEYWORDMACRO $SETSTK (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$SETSTK : BLISS ADDRESSING_MODE (GENERAL); SYS$SETSTK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $SETSTK_64 ! ! SET VIRTUAL STACK LIMITS ! ! $SETSTK_64 start_va, length, acmode, flags, prev_start_va_64, prev_length_64 ! ! start_va_64 = lowest address for new stack limits ! ! length_64 = length of address range for new stack limits ! ! acmode = access mode for the stack to change ! ! flags = VA$M_SETSTK_REGISTER - set register stack limits (IA64 only) ! ! prev_start_va_64 = pointer to lowest address for previous stack limits ! ! prev_length_64 = pointer to length of previous stack limits ! KEYWORDMACRO $SETSTK_64 (START_VA_64,LENGTH_64,ACMODE=0,FLAGS=0 ,PREV_START_VA_64,PREV_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$SETSTK_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$SETSTK_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, FLAGS, SDL$STARLET_REQ(PREV_START_VA_64, %QUOTE PREV_START_VA_64) , SDL$STARLET_REQ(PREV_LENGTH_64, %QUOTE PREV_LENGTH_64) )) END %; ! $SETSWM ! ! Set Process Swap Mode ! ! $SETSWM [swpflg] ! ! swpflg = swap indicator ! 0 -> enable swapping 1 -> disable swapping ! KEYWORDMACRO $SETSWM (SWPFLG=0) = BEGIN EXTERNAL ROUTINE SYS$SETSWM : BLISS ADDRESSING_MODE (GENERAL); SYS$SETSWM (SDL$STARLET_CONCAT( SWPFLG)) END %; ! ! $SETDTI ! ! Set Distributed Transaction Information ! ! $SETDTI [efn], [flags], iosb, [astadr], [astprm], context, ! ($SETDTIW) func, itmlst ! ! efn = event flag to set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of the entry mask of an AST routine ! astprm = value to be passed to AST routine ! context = address of longword search context ! func = function code to be performed ! itmlst = address of a list of item descriptors ! KEYWORDMACRO $SETDTI (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,CONTXT ,FUNC,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$SETDTI : BLISS ADDRESSING_MODE (GENERAL); SYS$SETDTI (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) , SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; KEYWORDMACRO $SETDTIW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,CONTXT ,FUNC,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$SETDTIW : BLISS ADDRESSING_MODE (GENERAL); SYS$SETDTIW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) , SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! $SETUAI ! ! Modify User Authorization Information ! ! $SETUAI [efn] ,[contxt] ,usrnam ,itmlst ,[iosb] ,[astadr] ! ,[astprm] ! ! efn = event flag to be set at completion ! ! contxt = address of a context longword (UAF IFI & ISI) ! ! usrnam = address of user name descriptor ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! KEYWORDMACRO $SETUAI (EFN=0,CONTXT=0,USRNAM,ITMLST,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SETUAI : BLISS ADDRESSING_MODE (GENERAL); SYS$SETUAI (SDL$STARLET_CONCAT( EFN, CONTXT, SDL$STARLET_REQ(USRNAM, %QUOTE USRNAM) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! ! $SHOW_INTRUSION ! ! Show intrusion record ! ! $SHOW_INTRUSION user_criteria, intruder, intruder_len, breakin_block, [flags], [context] ! ! user_criteria in address of user criteria descriptor ! intruder in out address of intruder descriptor ! intruder_len out address of word to receive intruder string length ! breakin_block out address of intrusion block ! flags in intrusion service flags ! context in out address of optional longword context ! KEYWORDMACRO $SHOW_INTRUSION (USER_CRITERIA,INTRUDER,INTRUDER_LEN ,BREAKIN_BLOCK,FLAGS=0,CONTEXT=0) = BEGIN EXTERNAL ROUTINE SYS$SHOW_INTRUSION : BLISS ADDRESSING_MODE (GENERAL); SYS$SHOW_INTRUSION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(USER_CRITERIA, %QUOTE USER_CRITERIA) , SDL$STARLET_REQ(INTRUDER, %QUOTE INTRUDER) , SDL$STARLET_REQ(INTRUDER_LEN, %QUOTE INTRUDER_LEN) , SDL$STARLET_REQ(BREAKIN_BLOCK, %QUOTE BREAKIN_BLOCK) , FLAGS, CONTEXT)) END %; ! $SNDACC ! ! Send Message to Accounting Manager ! ! $SNDACC msgbuf ,[chan] ! ! msgbuf = address of message buffer string descriptor ! ! chan = number of channel assigned to mailbox to receive reply ! KEYWORDMACRO $SNDACC (MSGBUF,CHAN=0) = BEGIN EXTERNAL ROUTINE SYS$SNDACC : BLISS ADDRESSING_MODE (GENERAL); SYS$SNDACC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGBUF, %QUOTE MSGBUF) , CHAN)) END %; ! $SNDERR ! ! Send Message to Error Logger ! ! $SNDERR msgbuf ! ! msgbuf = address of message buffer string descriptor ! KEYWORDMACRO $SNDERR (MSGBUF) = BEGIN EXTERNAL ROUTINE SYS$SNDERR : BLISS ADDRESSING_MODE (GENERAL); SYS$SNDERR (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGBUF, %QUOTE MSGBUF) )) END %; ! $SNDOPR ! ! Send Message to Operator ! ! $SNDOPR msgbuf ,[chan] ! ! msgbuf = address of message buffer string descriptor ! ! chan = number of channel assigned to mailbox to receive reply ! KEYWORDMACRO $SNDOPR (MSGBUF,CHAN=0) = BEGIN EXTERNAL ROUTINE SYS$SNDOPR : BLISS ADDRESSING_MODE (GENERAL); SYS$SNDOPR (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGBUF, %QUOTE MSGBUF) , CHAN)) END %; ! $SNDSMB ! ! Send Message to Symbiont Manager ! ! $SNDSMB msgbuf ,[chan] ! ! msgbuf = address of message buffer string descriptor ! ! chan = number of channel assigned to mailbox to receive reply ! KEYWORDMACRO $SNDSMB (MSGBUF,CHAN=0) = BEGIN EXTERNAL ROUTINE SYS$SNDSMB : BLISS ADDRESSING_MODE (GENERAL); SYS$SNDSMB (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MSGBUF, %QUOTE MSGBUF) , CHAN)) END %; ! $SNDJBC ! ! Send Message to Job Controller ! ! $SNDJBC [efn], func, [nullarg], [itmlst], ! ($SNDJBCW) [iosb], [astadr], [astprm] ! ! efn = event flag to be set when request completes ! func = code specifying function to be performed ! nullarg = reserved argument for similarity with $getxxx services ! itmlst = address of a list of item descriptors for the operation ! iosb = address of a quadword status block to receive the final status ! astadr = address of an ast routine to be called when request completes ! astprm = 32-bit ast parameter ! KEYWORDMACRO $SNDJBC (EFN=0,FUNC,NULLARG=0,ITMLST=0,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SNDJBC : BLISS ADDRESSING_MODE (GENERAL); SYS$SNDJBC (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , NULLARG, ITMLST, IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $SNDJBCW (EFN=0,FUNC,NULLARG=0,ITMLST=0,IOSB=0,ASTADR=0 ,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SNDJBCW : BLISS ADDRESSING_MODE (GENERAL); SYS$SNDJBCW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , NULLARG, ITMLST, IOSB, ASTADR, ASTPRM)) END %; ! ! $SPACE ! ! Space to Record in File ! ! $SPACE rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $SPACE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$SPACE : BLISS ADDRESSING_MODE (GENERAL); SYS$SPACE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $SSIO_FSYNC ! ! Synchronize file changes with the storage device for a file that ! has been opened for Shared Stream I/O (SSIO) access. ! ! $SSIO_FSYNC chan, iosa ,[ast] ,[astprm] ! ($SSIO_FSYNCW) ! ! chan = channel number for SSIO accessed file ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_FSYNC (CHAN,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_FSYNC : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_FSYNC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_FSYNCW (CHAN,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_FSYNCW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_FSYNCW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SSIO_GETFL ! ! Get the current file status flags for a file that has been opened ! for Shared Stream I/O (SSIO) access. Similar to UNIX fcntl with ! F_SETFL command parameter. ! ! $SSIO_GETFL chan ,iosa ,[ast] ,[astprm] ! ($SSIO_GETFLW) ! ! chan = channel number for SSIO accessed file ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status and file status flags (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_GETFL (CHAN,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_GETFL : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_GETFL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_GETFLW (CHAN,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_GETFLW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_GETFLW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SSIO_LSEEK ! ! Set the current file offset to a file that has been opened for ! Shared Stream I/O (SSIO) access. ! ! $SSIO_LSEEK chan ,offset_in ,whence ,iosa ,[ast] ,[astprm] ! ($SSIO_LSEEKW) ! ! chan = channel number for SSIO accessed file ! ! offset_in = signed offset value used in conjunction with the ! whence parameter to determine a new resultant file ! offset (64-bit value) ! ! whence = value that controls interpretation of offset_in ! Must be one of: ! SSIO$C_SEEK_SET: Resultant offset is offset_in ! SSIO$C_SEEK_CUR: Resultant offset is current value ! plus offset_in ! SSIO$C_SEEK_END: Resultant offset is current end-of- ! file position plus offset_in ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_LSEEK (CHAN,OFFSET_IN,WHENCE,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_LSEEK : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_LSEEK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(OFFSET_IN, %QUOTE OFFSET_IN) , SDL$STARLET_REQ(WHENCE, %QUOTE WHENCE) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_LSEEKW (CHAN,OFFSET_IN,WHENCE,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_LSEEKW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_LSEEKW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(OFFSET_IN, %QUOTE OFFSET_IN) , SDL$STARLET_REQ(WHENCE, %QUOTE WHENCE) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SSIO_READ ! ! Read a byte stream from the current file offset from a file that ! has been opened for Shared Stream I/O (SSIO) access ! ! $SSIO_READ chan ,buffer ,bufsiz ,iosa ,[ast] ,[astprm] ! ($SSIO_READW) ! ! chan = channel number for SSIO accessed file ! ! buffer = address of data buffer to receive data (64-bit address) ! ! bufsiz = size of data buffer in bytes (64-bit value) ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_READ (CHAN,BUFFER,BUFSIZ,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_READ : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_READ (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(BUFSIZ, %QUOTE BUFSIZ) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_READW (CHAN,BUFFER,BUFSIZ,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_READW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_READW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(BUFSIZ, %QUOTE BUFSIZ) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SSIO_SETFL ! ! Set the current file status flags for a file that has been opened ! for Shared Stream I/O (SSIO) access. Similar to UNIX fcntl with ! F_SETFL command parameter. ! ! $SSIO_SETFL chan ,file_sts_flgs ,iosa ,[ast] ,[astprm] ! ($SSIO_SETFLW) ! ! chan = channel number for SSIO accessed file ! ! file_sts_flgs = desired file status flag value ! Only mask value that can be changed is SSIO$M_O_APPEND. ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_SETFL (CHAN,FILE_STS_FLGS,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_SETFL : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_SETFL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(FILE_STS_FLGS, %QUOTE FILE_STS_FLGS) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_SETFLW (CHAN,FILE_STS_FLGS,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_SETFLW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_SETFLW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(FILE_STS_FLGS, %QUOTE FILE_STS_FLGS) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SSIO_SYNC ! ! Synchronize file changes that have been made via prior calls to ! the $SSIO_WRITE and $SSIO_TRUNCATE services to all files on this ! system that have been opened for Shared Stream I/O (SSIO) access. ! The file changes are synchronized with the corresponding storage ! device. ! ! $SSIO_SYNC ! KEYWORDMACRO $SSIO_SYNC = BEGIN EXTERNAL ROUTINE SYS$SSIO_SYNC : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_SYNC() END %; ! $SSIO_TRUNCATE ! ! Truncate (or extend) a file that has been opened for Shared ! Stream I/O (SSIO) access. ! ! $SSIO_TRUNCATE chan ,file_length ,iosa ,[ast] ,[astprm] ! ($SSIO_TRUNCATEW) ! ! chan = channel number for SSIO accessed file ! ! file_length = new end-of-file length (64-bit value) ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_TRUNCATE (CHAN,FILE_LENGTH,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_TRUNCATE : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_TRUNCATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(FILE_LENGTH, %QUOTE FILE_LENGTH) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_TRUNCATEW (CHAN,FILE_LENGTH,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_TRUNCATEW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_TRUNCATEW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(FILE_LENGTH, %QUOTE FILE_LENGTH) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SSIO_WRITE ! ! Write a byte stream to the current file offset to a file that ! has been opened for Shared Stream I/O (SSIO) access ! ! $SSIO_WRITE chan ,buffer ,bufsiz ,iosa ,[ast] ,[astprm] ! ($SSIO_WRITEW) ! ! chan = channel number for SSIO accessed file ! ! buffer = address of data buffer to receive data (64-bit address) ! ! bufsiz = size of data buffer in bytes (64-bit value) ! ! iosa = address of I/O status area (4 quadwords) to receive final ! completion status (64-bit address) ! ! ast = address of AST routine (64-bit address) ! ! astprm = value to be passed to AST routine as argument (64-bit value) ! KEYWORDMACRO $SSIO_WRITE (CHAN,BUFFER,BUFSIZ,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_WRITE : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_WRITE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(BUFSIZ, %QUOTE BUFSIZ) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; KEYWORDMACRO $SSIO_WRITEW (CHAN,BUFFER,BUFSIZ,IOSA,AST=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SSIO_WRITEW : BLISS ADDRESSING_MODE (GENERAL); SYS$SSIO_WRITEW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(BUFSIZ, %QUOTE BUFSIZ) , SDL$STARLET_REQ(IOSA, %QUOTE IOSA) , AST, ASTPRM)) END %; ! $SUSPND ! ! Suspend Process ! ! $SUSPND [pidadr] ,[prcnam], [flags] ! ! pidadr = address of process id of process to be suspended ! ! prcnam = address of name string descriptor of process ! ! flags = longword of bit flags, of which only bit 0 is ! currently used. If bit 0 is set, then this ! is a hard suspend request; if clear this is ! a soft suspend request. ! KEYWORDMACRO $SUSPND (PIDADR=0,PRCNAM=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$SUSPND : BLISS ADDRESSING_MODE (GENERAL); SYS$SUSPND (SDL$STARLET_CONCAT( PIDADR, PRCNAM, FLAGS)) END %; ! $SYNCH ! ! Synchronize Event Completion ! ! $SYNCH [iosb] ,[efn] ! ! efn = event flag to be set at completion ! ! iosb = address of a quadword I/O status block ! KEYWORDMACRO $SYNCH (EFN=0,IOSB=0) = BEGIN EXTERNAL ROUTINE SYS$SYNCH : BLISS ADDRESSING_MODE (GENERAL); SYS$SYNCH (SDL$STARLET_CONCAT( EFN, IOSB)) END %; ! $SUBSYSTEM ! ! Modify Protected Subsystem Attributes ! ! $SUBSYSTEM enbflg ! ! enbflg = enable indicator ! 0 => disable image identifiers ! 1 => restore image identifiers ! KEYWORDMACRO $SUBSYSTEM (ENBFLG=0) = BEGIN EXTERNAL ROUTINE SYS$SUBSYSTEM : BLISS ADDRESSING_MODE (GENERAL); SYS$SUBSYSTEM (SDL$STARLET_CONCAT( ENBFLG)) END %; ! ! $TIMCON ! ! Convert between binary UTC and Smithsonian times ! ! $TIMCON smntim, utctim, cvtflg ! ! For cvtflg = 0 (Convert UTC to Smithsonian) ! smnadr = Address of the output quadword to be written ! with the UTC time converted to date_time ! utcadr = Address of the input 128 bit utc_date_time time to ! be converted ! cvtflg = 0 ! ! For cvtflg = 1 (Convert Smithsonian to UTC) ! smnadr = Address of input Smithsonian binary time to be ! converted (VMS Binabs time). ! utcadr = Address of the output 128 bit binary time to ! be written with the converted time ! cvtflg = 1 ! KEYWORDMACRO $TIMCON (SMNADR,UTCADR,CVTFLG=0) = BEGIN EXTERNAL ROUTINE SYS$TIMCON : BLISS ADDRESSING_MODE (GENERAL); SYS$TIMCON (SDL$STARLET_CONCAT( SDL$STARLET_REQ(SMNADR, %QUOTE SMNADR) , SDL$STARLET_REQ(UTCADR, %QUOTE UTCADR) , CVTFLG)) END %; ! $TRNLNM ! ! Translate Logical Name ! ! $TRNLNM [attr], tabnam, [lognam], [acmode], [itemlist] ! ! attr = address of logical name translation attributes ! ! Attribute Meaning ! LNM$M_CASE_BLIND Search of string is case insensitive ! ! tabnam = address of logical name table name string descriptor ! ! lognam = address of logical name string descriptor ! ! acmode = address of access mode for logical name ! ! itmlst = address of a list of item descriptors ! KEYWORDMACRO $TRNLNM (ATTR=0,TABNAM,LOGNAM,ACMODE=0,ITMLST=0) = BEGIN EXTERNAL ROUTINE SYS$TRNLNM : BLISS ADDRESSING_MODE (GENERAL); SYS$TRNLNM (SDL$STARLET_CONCAT( ATTR, SDL$STARLET_REQ(TABNAM, %QUOTE TABNAM) , SDL$STARLET_REQ(LOGNAM, %QUOTE LOGNAM) , ACMODE, ITMLST)) END %; ! $TRNLOG ! ! Translate Logical Name ! ! $TRNLOG lognam ,[rsllen] ,rslbuf ,[table] ,[acmode] ,[dsbmsk] ! ! lognam = address of logical name string descriptor ! ! rsllen = address of word to receive length of resultant name ! ! rslbuf = address of descriptor for buffer to receive resultant ! string ! ! table = address of byte to receive logical name table number ! ! acmode = address of byte to receive access mode of entry ! (process table only) ! ! dsbmsk = table search disable mask ! ! Bit Set Meaning ! ! 0 Do not search system table ! 1 Do not search group table ! 2 Do not search process table ! KEYWORDMACRO $TRNLOG (LOGNAM,RSLLEN=0,RSLBUF,TABLE=0,ACMODE=0 ,DSBMSK=0) = BEGIN EXTERNAL ROUTINE SYS$TRNLOG : BLISS ADDRESSING_MODE (GENERAL); SYS$TRNLOG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOGNAM, %QUOTE LOGNAM) , RSLLEN, SDL$STARLET_REQ(RSLBUF, %QUOTE RSLBUF) , TABLE, ACMODE, DSBMSK)) END %; ! ! $TRUNCATE ! ! Truncate Record ! ! $TRUNCATE rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $TRUNCATE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$TRUNCATE : BLISS ADDRESSING_MODE (GENERAL); SYS$TRUNCATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $ULKPAG ! ! Unlock Pages From Memory ! ! $ULKPAG inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of pages to be unlocked ! ! retadr = address of a 2-longword array to receive starting and ! ending virtual addresses of pages actually unlocked ! ! acmode = access mode to check against the owner of the pages ! KEYWORDMACRO $ULKPAG (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$ULKPAG : BLISS ADDRESSING_MODE (GENERAL); SYS$ULKPAG (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $ULKPAG_64 ! ! Unlock Pages in Memory ! ! $ULKPAG_64 start_va_64, length_64, acmode, return_va_64, return_length_64 ! ! start_va_64 = Starting address of address space to unlock ! ! length_64 = Byte length of addresses to lock ! ! acmode = Access mode to be checked against the page owner ! ! return_va_64 = Address of address space unlocked ! ! return_length_64 = Length of address space unlocked ! KEYWORDMACRO $ULKPAG_64 (START_VA_64,LENGTH_64,ACMODE=0,RETURN_VA_64 ,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$ULKPAG_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$ULKPAG_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $ULWSET ! ! Unlock Pages From Working Set ! ! $ULWSET inadr ,[retadr] ,[acmode] ! ! inadr = address of 2-longword array containing starting and ! ending virtual addresses of pages to be unlocked ! ! retadr = address of a 2-longword array to receive starting and ! ending virtual addresses of pages actually unlocked ! ! acmode = access mode to check against the owner of the pages ! KEYWORDMACRO $ULWSET (INADR,RETADR=0,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$ULWSET : BLISS ADDRESSING_MODE (GENERAL); SYS$ULWSET (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE)) END %; ! $ULWSET_64 ! ! Unlock Pages from Working Set ! ! $ULWSET_64 start_va_64, length_64, acmode, return_va_64, return_length_64 ! ! start_va_64 = Starting address of address space to unlock ! ! length_64 = Byte length of addresses to lock ! ! acmode = Access mode to be checked against the page owner ! ! return_va_64 = Address of address space unlocked ! ! return_length_64 = Length of address space unlocked ! KEYWORDMACRO $ULWSET_64 (START_VA_64,LENGTH_64,ACMODE=0,RETURN_VA_64 ,RETURN_LENGTH_64) = BEGIN EXTERNAL ROUTINE SYS$ULWSET_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$ULWSET_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) )) END %; ! $UNWIND ! ! Unwind Call Stack ! ! $UNWIND [depadr] ,[newpc] ! ! depadr = address of longword containing number of logical frames ! (depth) to unwind call stack ! ! newpc = address to be given control when the unwind is complete ! KEYWORDMACRO $UNWIND (DEPADR=0,NEWPC=0) = BEGIN EXTERNAL ROUTINE SYS$UNWIND : BLISS ADDRESSING_MODE (GENERAL); SYS$UNWIND (SDL$STARLET_CONCAT( DEPADR, NEWPC)) END %; ! ! $UPDATE ! ! Update Record ! ! $UPDATE fab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $UPDATE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$UPDATE : BLISS ADDRESSING_MODE (GENERAL); SYS$UPDATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! $UPDSEC ! ! Update Section File on Disk ! ! $UPDSEC inadr ,[retadr] ,[acmode] ,[updflg] ,[efn] ,[iosb] ! ($UPDSECW) ,[astadr] ,[astprm] ! ! inadr = address of 2-longword array containing starting and ! ending addresses of the pages to be potentially ! written ! ! retadr = address of 2-longword array to receive addresses of ! the first and last page queued in the first I/O ! request ! ! acmode = access mode on behalf of which the service is ! performed ! ! updflg = update indicator for read/write global sections ! 0 -> write all read/write pages in the section ! UPDFLG$M_WRT_MODIFIED -> write all pages modified by the caller ! ! efn = number of event flag to set when the section file is ! updated ! ! iosb = address of quadword I/O status block ! ! astadr = address of entry mask of an AST service routine ! ! astprm = AST parameter to be passed to the AST service routine ! KEYWORDMACRO $UPDSEC (INADR,RETADR=0,ACMODE=0,UPDFLG=0,EFN=0,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$UPDSEC : BLISS ADDRESSING_MODE (GENERAL); SYS$UPDSEC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE, UPDFLG, EFN, IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $UPDSECW (INADR,RETADR=0,ACMODE=0,UPDFLG=0,EFN=0 ,IOSB=0,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$UPDSECW : BLISS ADDRESSING_MODE (GENERAL); SYS$UPDSECW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(INADR, %QUOTE INADR) , RETADR, ACMODE, UPDFLG, EFN, IOSB, ASTADR, ASTPRM)) END %; ! $UPDSEC_64 ! ! Update Section File on Disk ! ! $UPDSEC_64 start_va_64, length_64, acmode, updflg, efn, iosa_64 ! return_va_64, return_length_64[,astadr_64[, astprm_64]] ! ! start_va_64 = Starting address of address space to update ! ! length_64 = Byte length of addresses to update ! ! acmode = access mode on behalf of which the service is ! performed ! ! updflg = update indicator for read/write global sections ! 0 -> write all read/write pages in the section ! UPDFLG$M_WRT_MODIFIED -> write all pages modified by the caller ! ! efn = number of event flag to set when the section file is ! updated ! ! iosa_64 = address of 4 quadword I/O status area ! ! return_va_64 = Address of address space queued in the first ! I/O request ! ! return_length_64 = Length of address space queued in the first ! I/O request ! ! astadr_64 = address of entry mask of an AST service routine ! ! astprm_64 = AST parameter to be passed to the AST service routine ! KEYWORDMACRO $UPDSEC_64 (START_VA_64,LENGTH_64,ACMODE=0,UPDFLG=0 ,EFN=0,IOSA_64=0,RETURN_VA_64,RETURN_LENGTH_64,ASTADR_64,ASTPRM_64) = BEGIN EXTERNAL ROUTINE SYS$UPDSEC_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$UPDSEC_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, UPDFLG, EFN, IOSA_64, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( ASTADR_64, ASTPRM_64))) END %; KEYWORDMACRO $UPDSEC_64W (START_VA_64,LENGTH_64,ACMODE=0,UPDFLG=0 ,EFN=0,IOSA_64=0,RETURN_VA_64,RETURN_LENGTH_64,ASTADR_64,ASTPRM_64) = BEGIN EXTERNAL ROUTINE SYS$UPDSEC_64W : BLISS ADDRESSING_MODE (GENERAL); SYS$UPDSEC_64W (SDL$STARLET_CONCAT( SDL$STARLET_REQ(START_VA_64, %QUOTE START_VA_64) , SDL$STARLET_REQ(LENGTH_64, %QUOTE LENGTH_64) , ACMODE, UPDFLG, EFN, IOSA_64, SDL$STARLET_REQ(RETURN_VA_64, %QUOTE RETURN_VA_64) , SDL$STARLET_REQ(RETURN_LENGTH_64, %QUOTE RETURN_LENGTH_64) , SDL$STARLET_OPT( ASTADR_64, ASTPRM_64))) END %; ! ! $VERIFY_PROXY ! ! Verify proxy record ! ! $VERIFY_PROXY rem_node, rem_user, [proposed_user], local_user, local_user_len, flags ! ! rem_node in address of remote node descriptor ! rem_user in address of remote user descriptor ! proposed_user in address of optional proposed user descriptor ! local_user out address of descriptor to receive local user ! local_user_len out address of word to receive local user length ! flags in proxy service flags ! KEYWORDMACRO $VERIFY_PROXY (REM_NODE,REM_USER,PROPOSED_USER=0 ,LOCAL_USER,LOCAL_USER_LEN,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$VERIFY_PROXY : BLISS ADDRESSING_MODE (GENERAL); SYS$VERIFY_PROXY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REM_NODE, %QUOTE REM_NODE) , SDL$STARLET_REQ(REM_USER, %QUOTE REM_USER) , PROPOSED_USER, SDL$STARLET_REQ(LOCAL_USER, %QUOTE LOCAL_USER) , SDL$STARLET_REQ(LOCAL_USER_LEN, %QUOTE LOCAL_USER_LEN) , FLAGS)) END %; ! ! $WAIT ! ! Wait on File ! ! $WAIT rab ! ! rab = address of rab ! ! KEYWORDMACRO $WAIT (RAB) = BEGIN EXTERNAL ROUTINE SYS$WAIT : BLISS ADDRESSING_MODE (GENERAL); SYS$WAIT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) )) END %; ! $WAITFR ! ! Wait for Single Event Flag ! ! $WAITFR efn ! ! efn = event flag number to wait for ! KEYWORDMACRO $WAITFR (EFN) = BEGIN EXTERNAL ROUTINE SYS$WAITFR : BLISS ADDRESSING_MODE (GENERAL); SYS$WAITFR (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) )) END %; ! $WAKE ! ! Wake ! ! $WAKE [pidadr] ,[prcnam] ! ! pidadr = address of process id of process to be awakened ! ! prcnam = address of name string descriptor of process to be ! awakened ! KEYWORDMACRO $WAKE (PIDADR=0,PRCNAM=0) = BEGIN EXTERNAL ROUTINE SYS$WAKE : BLISS ADDRESSING_MODE (GENERAL); SYS$WAKE (SDL$STARLET_CONCAT( PIDADR, PRCNAM)) END %; ! $WFLAND ! ! Wait for Logical AND of Event Flags ! ! $WFLAND efn ,mask ! ! efn = event flag number of any flag within the cluster ! ! mask = 32-bit mask of flags that must be set ! KEYWORDMACRO $WFLAND (EFN,MASK) = BEGIN EXTERNAL ROUTINE SYS$WFLAND : BLISS ADDRESSING_MODE (GENERAL); SYS$WFLAND (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) , SDL$STARLET_REQ(MASK, %QUOTE MASK) )) END %; ! $WFLOR ! ! Wait for Logical OR of Event Flags ! ! $WFLOR efn ,mask ! ! efn = event flag number of any flag within the cluster ! ! mask = 32-bit mask of flags, any of which must be set ! KEYWORDMACRO $WFLOR (EFN,MASK) = BEGIN EXTERNAL ROUTINE SYS$WFLOR : BLISS ADDRESSING_MODE (GENERAL); SYS$WFLOR (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EFN, %QUOTE EFN) , SDL$STARLET_REQ(MASK, %QUOTE MASK) )) END %; ! ! $WRITE ! ! Write Block to File ! ! $WRITE rab, [err], [suc] ! ! rab = address of rab ! ! err = address of user error completion routine ! ! suc = address of user success completion routine ! KEYWORDMACRO $WRITE (RAB,ERR,SUC) = BEGIN EXTERNAL ROUTINE SYS$WRITE : BLISS ADDRESSING_MODE (GENERAL); SYS$WRITE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RAB, %QUOTE RAB) , SDL$STARLET_OPT( ERR, SUC))) END %; ! ! $WRITE_THREAD_UNQ ! ! Write thread unique value ! ! $WRITE_THREAD_UNQ contxt ! ! contxt = address of quadword that contains the ! thread unique value to be written ! KEYWORDMACRO $WRITE_THREAD_UNQ (CONTXT) = BEGIN EXTERNAL ROUTINE SYS$WRITE_THREAD_UNQ : BLISS ADDRESSING_MODE (GENERAL); SYS$WRITE_THREAD_UNQ (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONTXT, %QUOTE CONTXT) )) END %; ! $XFS_CLIENT ! ! Call the XFS client ! ! $XFS_CLIENT [efn] ,func ,fsb ,[astadr] ,[astprm] ! ! efn = number of event flag to set on completion ! ! func = function code specifying action to be performed ! ! fsb = address of File System Block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! KEYWORDMACRO $XFS_CLIENT (EFN=0,FUNC,FSB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$XFS_CLIENT : BLISS ADDRESSING_MODE (GENERAL); SYS$XFS_CLIENT (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(FSB, %QUOTE FSB) , ASTADR, ASTPRM)) END %; ! $XFS_SERVER ! ! Call the XFS server ! ! $XFS_SERVER [efn] ,func ,fsb ,[astadr] ,[astprm] ! ! efn = number of event flag to set on completion ! ! func = function code specifying action to be performed ! ! fsb = address of File System Block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine as argument ! KEYWORDMACRO $XFS_SERVER (EFN=0,FUNC,FSB,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$XFS_SERVER : BLISS ADDRESSING_MODE (GENERAL); SYS$XFS_SERVER (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , SDL$STARLET_REQ(FSB, %QUOTE FSB) , ASTADR, ASTPRM)) END %; ! $DCLRNH ! ! Declare Restart Handler ! ! $DCLRNH desblk ! ! desblk = address of handler control block containing: ! ! +-------------------------------+ ! | forward link | ! +-------------------------------+ ! | restart handler address | ! +-------------------------------+ ! | argument count | ! +-------------------------------+ ! | reserved, must be zero | ! +-------------------------------+ ! | address to store event code | ! +-------------------------------+ ! | additional arguments | ! +-- for restart handler, --+ ! | if any | ! +-------------------------------+ ! KEYWORDMACRO $DCLRNH (DESBLK) = BEGIN EXTERNAL ROUTINE SYS$DCLRNH : BLISS ADDRESSING_MODE (GENERAL); SYS$DCLRNH (SDL$STARLET_CONCAT( SDL$STARLET_REQ(DESBLK, %QUOTE DESBLK) )) END %; ! $CANRNH ! ! Cancel Restart Handler ! ! $CANRNH [desblk] ! ! desblk = address of handler control block describing ! handler to be deleted. If 0, delete all ! KEYWORDMACRO $CANRNH (DESBLK=0) = BEGIN EXTERNAL ROUTINE SYS$CANRNH : BLISS ADDRESSING_MODE (GENERAL); SYS$CANRNH (SDL$STARLET_CONCAT( DESBLK)) END %; ! ! $ABORT_TRANS ! ! Abort a transaction ! ! $ABORT_TRANS [efn], [flags], iosb [, [astadr], [astprm], ! ($ABORT_TRANSW) [tid], [reason], [bid]] ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = identifier of transaction to be aborted ! reason = optional extended abort reason code ! bid = identifier of transaction branch to be aborted ! KEYWORDMACRO $ABORT_TRANS (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM,TID ,REASON,BID) = BEGIN EXTERNAL ROUTINE SYS$ABORT_TRANS : BLISS ADDRESSING_MODE (GENERAL); SYS$ABORT_TRANS (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, TID, REASON, BID))) END %; KEYWORDMACRO $ABORT_TRANSW (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM,TID ,REASON,BID) = BEGIN EXTERNAL ROUTINE SYS$ABORT_TRANSW : BLISS ADDRESSING_MODE (GENERAL); SYS$ABORT_TRANSW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, TID, REASON, BID))) END %; ! ! $ACK_EVENT ! ! Acknowledge a resource manager transaction event ! ! $ACK_REPORT [flags], report_id, report_reply, [, [reason], ! [beftime], [afttime], [part_name], [rm_context], ! [timout]] ! ! flags = operation flags ! report_id = participant id value ! report_reply = value of completion status ! reason = extended abort reason code (for veto vote) ! beftim = lower bound of commit timestamp ! afttim = upper bound of commit timestamp ! part_name = address of participant name descriptor ! rm_context = RM private value to be passed to evt_rtn ! timout = transaction execution time-out value ! KEYWORDMACRO $ACK_EVENT (FLAGS=0,REPORT_ID,REPORT_REPLY,REASON ,BEFTIME,AFTTIME,PART_NAME,RM_CONTEXT,TIMOUT) = BEGIN EXTERNAL ROUTINE SYS$ACK_EVENT : BLISS ADDRESSING_MODE (GENERAL); SYS$ACK_EVENT (SDL$STARLET_CONCAT( FLAGS, SDL$STARLET_REQ(REPORT_ID, %QUOTE REPORT_ID) , SDL$STARLET_REQ(REPORT_REPLY, %QUOTE REPORT_REPLY) , SDL$STARLET_OPT( REASON, BEFTIME, AFTTIME, PART_NAME, RM_CONTEXT, TIMOUT))) END %; ! ! $ADD_BRANCH ! ! Add a transaction branch ! ! $ADD_BRANCH [efn], [flags], iosb, [astadr], [astprm], ! ($ADD_BRANCHW) tid, tm_name, bid ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = transaction id for this branch ! tm_name = address of commit domain name descriptor ! bid = address to receive new branch identifier ! KEYWORDMACRO $ADD_BRANCH (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID=0,TM_NAME,BID) = BEGIN EXTERNAL ROUTINE SYS$ADD_BRANCH : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_BRANCH (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, TID, SDL$STARLET_REQ(TM_NAME, %QUOTE TM_NAME) , SDL$STARLET_REQ(BID, %QUOTE BID) )) END %; KEYWORDMACRO $ADD_BRANCHW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID=0,TM_NAME,BID) = BEGIN EXTERNAL ROUTINE SYS$ADD_BRANCHW : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_BRANCHW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, TID, SDL$STARLET_REQ(TM_NAME, %QUOTE TM_NAME) , SDL$STARLET_REQ(BID, %QUOTE BID) )) END %; ! ! *************** NOTE: $CREATE_BRANCH(W) service definitions are obsolete ************** ! ! $CREATE_BRANCH ! ! Create a transaction branch ! ! $CREATE_BRANCH = [efn], [flags], iosb, [astadr], [astprm], ! ($CREATE_BRANCHW) tid, bid [,[timout], [acmode], [tx_class]] ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = transaction id for this branch ! bid = address to receive new branch identifier ! timout = transaction execution time-out value ! acmode = access mode for $CREATE_BRANCH call ! tx_class= user transaction class name ! KEYWORDMACRO $CREATE_BRANCH (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,BID,TIMOUT,ACMODE,TX_CLASS) = BEGIN EXTERNAL ROUTINE SYS$CREATE_BRANCH : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_BRANCH (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(BID, %QUOTE BID) , SDL$STARLET_OPT( TIMOUT, ACMODE, TX_CLASS))) END %; KEYWORDMACRO $CREATE_BRANCHW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,BID,TIMOUT,ACMODE,TX_CLASS) = BEGIN EXTERNAL ROUTINE SYS$CREATE_BRANCHW : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_BRANCHW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(BID, %QUOTE BID) , SDL$STARLET_OPT( TIMOUT, ACMODE, TX_CLASS))) END %; ! $CVT_FILENAME ! ! Convert a string between RMS format and file-system format. ! ! $CVT_FILENAME cvttyp, srcstr, inflags, outbuf, outlen, outflags ! ! cvttyp = value indicating conversion type (RMS-to-filesys or ! filesys-to-RMS) ! srcstr = address of string descriptor for source string ! inflags = mask indicating source string characteristics ! outbuf = address of string descriptor for output string ! outlen = address to store length of returned output string ! outflags = address of a longword to receive flags describing ! output string ! KEYWORDMACRO $CVT_FILENAME (CVTTYP=0,SRCSTR,INFLAGS=0,OUTBUF=0 ,OUTLEN=0,OUTFLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$CVT_FILENAME : BLISS ADDRESSING_MODE (GENERAL); SYS$CVT_FILENAME (SDL$STARLET_CONCAT( CVTTYP, SDL$STARLET_REQ(SRCSTR, %QUOTE SRCSTR) , INFLAGS, OUTBUF, OUTLEN, OUTFLAGS)) END %; ! ! $DECLARE_RM [efn], [flags], iosb, [astadr], [astprm], ! ($DECLARE_RMW) rm_id, event_handler [, [part_name], ! [rm_context], [acmode], [tm_log_id], [event_mask]] ! ! Declare Resource Manager to DDTM ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! rm_id = address of longword to receive resource manager id ! event_rtn = address of entry mask of transaction event routine ! part_name = address of resource manager name descriptor ! rm_context = RM private value to be passed to evt_rtn ! acmode = value of access mode in which to invoke evt_rtn ! tm_log_id = transaction manager log id for validation checks ! event_mask = mask of events required by this resource manager ! KEYWORDMACRO $DECLARE_RM (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_ID,EVENT_HANDLER,PART_NAME,RM_CONTEXT,ACMODE,TM_LOG_ID,EVENT_MASK) = BEGIN EXTERNAL ROUTINE SYS$DECLARE_RM : BLISS ADDRESSING_MODE (GENERAL); SYS$DECLARE_RM (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_REQ(EVENT_HANDLER, %QUOTE EVENT_HANDLER) , SDL$STARLET_OPT( PART_NAME, RM_CONTEXT, ACMODE, TM_LOG_ID, EVENT_MASK))) END %; KEYWORDMACRO $DECLARE_RMW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_ID,EVENT_HANDLER,PART_NAME,RM_CONTEXT,ACMODE,TM_LOG_ID,EVENT_MASK) = BEGIN EXTERNAL ROUTINE SYS$DECLARE_RMW : BLISS ADDRESSING_MODE (GENERAL); SYS$DECLARE_RMW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_REQ(EVENT_HANDLER, %QUOTE EVENT_HANDLER) , SDL$STARLET_OPT( PART_NAME, RM_CONTEXT, ACMODE, TM_LOG_ID, EVENT_MASK))) END %; ! ! $END_BRANCH ! ! End an active branch of a transaction ! ! $END_BRANCH [efn], [flags], iosb, [astadr], [astprm], ! ($END_BRANCHW) tid, bid ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of a completion AST routine entry mask ! astprm = value to be passed to completion AST routine ! tid = address of transaction identifier ! bid = address of transaction branch identifier ! KEYWORDMACRO $END_BRANCH (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,BID) = BEGIN EXTERNAL ROUTINE SYS$END_BRANCH : BLISS ADDRESSING_MODE (GENERAL); SYS$END_BRANCH (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(BID, %QUOTE BID) )) END %; KEYWORDMACRO $END_BRANCHW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,BID) = BEGIN EXTERNAL ROUTINE SYS$END_BRANCHW : BLISS ADDRESSING_MODE (GENERAL); SYS$END_BRANCHW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(BID, %QUOTE BID) )) END %; ! ! $END_TRANS ! ! Commit a transaction ! ! $END_TRANS [efn], [flags], iosb [, [astadr], [astprm], [tid] ] ! ($END_TRANSW) ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = identifier of transaction to be committed ! KEYWORDMACRO $END_TRANS (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM,TID) = BEGIN EXTERNAL ROUTINE SYS$END_TRANS : BLISS ADDRESSING_MODE (GENERAL); SYS$END_TRANS (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, TID))) END %; KEYWORDMACRO $END_TRANSW (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM,TID) = BEGIN EXTERNAL ROUTINE SYS$END_TRANSW : BLISS ADDRESSING_MODE (GENERAL); SYS$END_TRANSW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, TID))) END %; ! ! $FINISH_RMOP ! ! Finish resource manager transaction event operation ! ! $FINISH_RMOP [efn], [flags], iosb, [astadr], [astprm], ! ($FINISH_RMOPW) part_id, retsts [, [reason], ! [beftime], [afttime] ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! part_id = participant id value ! retsts = value of completion status ! reason = extended abort reason code (for veto vote) ! beftim = lower bound of commit timestamp ! afttim = upper bound of commit timestamp ! KEYWORDMACRO $FINISH_RMOP (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,PART_ID,RETSTS,REASON,BEFTIME,AFTTIME) = BEGIN EXTERNAL ROUTINE SYS$FINISH_RMOP : BLISS ADDRESSING_MODE (GENERAL); SYS$FINISH_RMOP (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(PART_ID, %QUOTE PART_ID) , SDL$STARLET_REQ(RETSTS, %QUOTE RETSTS) , SDL$STARLET_OPT( REASON, BEFTIME, AFTTIME))) END %; KEYWORDMACRO $FINISH_RMOPW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,PART_ID,RETSTS,REASON,BEFTIME,AFTTIME) = BEGIN EXTERNAL ROUTINE SYS$FINISH_RMOPW : BLISS ADDRESSING_MODE (GENERAL); SYS$FINISH_RMOPW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(PART_ID, %QUOTE PART_ID) , SDL$STARLET_REQ(RETSTS, %QUOTE RETSTS) , SDL$STARLET_OPT( REASON, BEFTIME, AFTTIME))) END %; ! ! $FORGET_RM ! ! Forget a resource manager previously declared to DECdtm ! ! $FORGET_RM [efn], [flags], iosb, [astadr], [astprm], rm_id ! ($FORGET_RMW) ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! rm_id = resource manager id value ! KEYWORDMACRO $FORGET_RM (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_ID) = BEGIN EXTERNAL ROUTINE SYS$FORGET_RM : BLISS ADDRESSING_MODE (GENERAL); SYS$FORGET_RM (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) )) END %; KEYWORDMACRO $FORGET_RMW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_ID) = BEGIN EXTERNAL ROUTINE SYS$FORGET_RMW : BLISS ADDRESSING_MODE (GENERAL); SYS$FORGET_RMW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) )) END %; ! ! $GET_DEFAULT_TRANS ! ! Get the current process default transaction ! ! $GET_DEFAULT_TRANS tid ! ! tid = identifier of the process default transaction ! KEYWORDMACRO $GET_DEFAULT_TRANS (TID) = BEGIN EXTERNAL ROUTINE SYS$GET_DEFAULT_TRANS : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_DEFAULT_TRANS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(TID, %QUOTE TID) )) END %; ! $GET_UNWIND_ENTRY_INFO ! ! Get fixed-up unwind entry information ! ! $GET_UNWIND_ENTRY_INFO pc, get_ue_block, name ! ! pc = target PC ! ! get_ue_block = address of a 4-quadword block to be filled in ! ! name = Fixed length string, passed by descriptor. ! ! ... ! flags = address of MUTE flags, mask word, optional. KEYWORDMACRO $GET_UNWIND_ENTRY_INFO (PC=0,GET_UE_BLOCK=0,NAME ,READTARGETMEM,IDENT,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$GET_UNWIND_ENTRY_INFO : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_UNWIND_ENTRY_INFO (SDL$STARLET_CONCAT( PC, GET_UE_BLOCK, SDL$STARLET_REQ(NAME, %QUOTE NAME) , SDL$STARLET_OPT( READTARGETMEM, IDENT, FLAGS))) END %; ! ! $JOIN_RM ! ! Join a resource manager previously started transaction ! ! $JOIN_RM [efn], [flags], iosb, [astadr], [astprm], ! ($JOIN_RMW) rm_id [, [tid], [part_name], [rm_context], [timout]] ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! rm_id = resource manager id value ! tid = address of transaction id ! part_name = participant name string ! rm_context = RM private value to pass to event routine ! timout = transaction execution time-out value ! KEYWORDMACRO $JOIN_RM (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,RM_ID ,TID,PART_NAME,RM_CONTEXT,TIMOUT) = BEGIN EXTERNAL ROUTINE SYS$JOIN_RM : BLISS ADDRESSING_MODE (GENERAL); SYS$JOIN_RM (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_OPT( TID, PART_NAME, RM_CONTEXT, TIMOUT))) END %; KEYWORDMACRO $JOIN_RMW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,RM_ID ,TID,PART_NAME,RM_CONTEXT,TIMOUT) = BEGIN EXTERNAL ROUTINE SYS$JOIN_RMW : BLISS ADDRESSING_MODE (GENERAL); SYS$JOIN_RMW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_OPT( TID, PART_NAME, RM_CONTEXT, TIMOUT))) END %; ! ! $RECOVER ! ! Recover transaction state. ! ! $RECOVER [efn], [flags], iosb, [astadr], [astprm], ! ($RECOVERW) recovery_prefix, event_handler, tm_log_id [, ! [tid], [node], [rm_context], [acmode], [max_events]] ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! recovery_prefix = address of search name descriptor ! event_handler = address of entry mask of recovery event routine ! tm_log_id = address TM log identifier ! tid = address of transaction identifier ! node = address of node name descriptor ! rm_context = value to be passed via event block to event_handler ! acmode = value of access mode in which event ASTs should be delivered ! max_events = value of maximum number of events to be queued concurrently ! KEYWORDMACRO $RECOVER (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,RECOVERY_PREFIX ,EVENT_HANDLER,TM_LOG_ID,TID,NODE,RM_CONTEXT,ACMODE,MAX_EVENTS) = BEGIN EXTERNAL ROUTINE SYS$RECOVER : BLISS ADDRESSING_MODE (GENERAL); SYS$RECOVER (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RECOVERY_PREFIX, %QUOTE RECOVERY_PREFIX) , SDL$STARLET_REQ(EVENT_HANDLER, %QUOTE EVENT_HANDLER) , SDL$STARLET_REQ(TM_LOG_ID, %QUOTE TM_LOG_ID) , SDL$STARLET_OPT( TID, NODE, RM_CONTEXT, ACMODE, MAX_EVENTS))) END %; KEYWORDMACRO $RECOVERW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0,RECOVERY_PREFIX ,EVENT_HANDLER,TM_LOG_ID,TID,NODE,RM_CONTEXT,ACMODE,MAX_EVENTS) = BEGIN EXTERNAL ROUTINE SYS$RECOVERW : BLISS ADDRESSING_MODE (GENERAL); SYS$RECOVERW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RECOVERY_PREFIX, %QUOTE RECOVERY_PREFIX) , SDL$STARLET_REQ(EVENT_HANDLER, %QUOTE EVENT_HANDLER) , SDL$STARLET_REQ(TM_LOG_ID, %QUOTE TM_LOG_ID) , SDL$STARLET_OPT( TID, NODE, RM_CONTEXT, ACMODE, MAX_EVENTS))) END %; ! ! $SET_DEFAULT_TRANS ! ! Set up the process default transaction ! ! $SET_DEFAULT_TRANS [efn], [flags], iosb [, [astadr], [astprm], ! ($SET_DEFAULT_TRANSW) [new_tid], [old_tid]] ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! new_tid = identifier of new process default transaction ! old_tid = identifier of superceded process default transaction ! KEYWORDMACRO $SET_DEFAULT_TRANS (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM ,NEW_TID,OLD_TID) = BEGIN EXTERNAL ROUTINE SYS$SET_DEFAULT_TRANS : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_DEFAULT_TRANS (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, NEW_TID, OLD_TID))) END %; KEYWORDMACRO $SET_DEFAULT_TRANSW (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM ,NEW_TID,OLD_TID) = BEGIN EXTERNAL ROUTINE SYS$SET_DEFAULT_TRANSW : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_DEFAULT_TRANSW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, NEW_TID, OLD_TID))) END %; ! ! $START_BITMAP ! ! Create and start a write bitmap ! ! $START_BITMAP handle_in, chan, devnam, name, cluster, flags, handle_out ! KEYWORDMACRO $START_BITMAP (HANDLE_IN=0,CHAN=0,DEVNAM,NAME=0,CLUSTER=0 ,FLAGS=0,HANDLE_OUT=0) = BEGIN EXTERNAL ROUTINE SYS$START_BITMAP : BLISS ADDRESSING_MODE (GENERAL); SYS$START_BITMAP (SDL$STARLET_CONCAT( HANDLE_IN, CHAN, SDL$STARLET_REQ(DEVNAM, %QUOTE DEVNAM) , NAME, CLUSTER, FLAGS, HANDLE_OUT)) END %; ! ! $START_BRANCH ! ! Start a transaction branch ! ! $START_BRANCH [efn], [flags], iosb, [astadr], [astprm], ! ($START_BRANCHW) tid, tm_name, bid, [, [timout], [acmode], [tx_class]] ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = transaction id for this branch ! tm_name = address of parent commit domain name descriptor ! bid = address of branch identifier ! timout = transaction execution time-out value ! acmode = access mode for $READY_TO_COMMIT call ! tx_class= user transaction class name ! KEYWORDMACRO $START_BRANCH (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,TM_NAME,BID,TIMOUT,ACMODE,TX_CLASS) = BEGIN EXTERNAL ROUTINE SYS$START_BRANCH : BLISS ADDRESSING_MODE (GENERAL); SYS$START_BRANCH (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(TM_NAME, %QUOTE TM_NAME) , SDL$STARLET_REQ(BID, %QUOTE BID) , SDL$STARLET_OPT( TIMOUT, ACMODE, TX_CLASS))) END %; KEYWORDMACRO $START_BRANCHW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,TM_NAME,BID,TIMOUT,ACMODE,TX_CLASS) = BEGIN EXTERNAL ROUTINE SYS$START_BRANCHW : BLISS ADDRESSING_MODE (GENERAL); SYS$START_BRANCHW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(TM_NAME, %QUOTE TM_NAME) , SDL$STARLET_REQ(BID, %QUOTE BID) , SDL$STARLET_OPT( TIMOUT, ACMODE, TX_CLASS))) END %; ! ! $START_TRANS ! ! Start a new transaction ! ! $START_TRANS [efn], [flags], iosb [, [astadr], [astprm], ! ($START_TRANSW) [tid], [timout], [acmode], [tx_class]] ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = identifier of transaction just started ! timout = transaction execution time-out value ! acmode = outermost access mode allowed to end the transaction ! tx_class= user transaction class name ! KEYWORDMACRO $START_TRANS (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM,TID ,TIMOUT,ACMODE,TX_CLASS) = BEGIN EXTERNAL ROUTINE SYS$START_TRANS : BLISS ADDRESSING_MODE (GENERAL); SYS$START_TRANS (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, TID, TIMOUT, ACMODE, TX_CLASS))) END %; KEYWORDMACRO $START_TRANSW (EFN=0,FLAGS=0,IOSB,ASTADR,ASTPRM,TID ,TIMOUT,ACMODE,TX_CLASS) = BEGIN EXTERNAL ROUTINE SYS$START_TRANSW : BLISS ADDRESSING_MODE (GENERAL); SYS$START_TRANSW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , SDL$STARLET_OPT( ASTADR, ASTPRM, TID, TIMOUT, ACMODE, TX_CLASS))) END %; ! ! $TRANS_EVENT ! ! Start a new transaction ! ! $TRANS_EVENT [efn], [flags], iosb, [astadr], [astprm], ! ($TRANS_EVENTW) tid, rm_id, tx_event ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = identifier of transaction just started ! rm_id = value of resource manager identifier returned by $DECLARE_RM ! tx_event = transaction transition event ! KEYWORDMACRO $TRANS_EVENT (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,RM_ID=0,TX_EVENT) = BEGIN EXTERNAL ROUTINE SYS$TRANS_EVENT : BLISS ADDRESSING_MODE (GENERAL); SYS$TRANS_EVENT (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , RM_ID, SDL$STARLET_REQ(TX_EVENT, %QUOTE TX_EVENT) )) END %; KEYWORDMACRO $TRANS_EVENTW (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,RM_ID=0,TX_EVENT) = BEGIN EXTERNAL ROUTINE SYS$TRANS_EVENTW : BLISS ADDRESSING_MODE (GENERAL); SYS$TRANS_EVENTW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , RM_ID, SDL$STARLET_REQ(TX_EVENT, %QUOTE TX_EVENT) )) END %; ! $TSTCLUEVT ! ! Test Cluster Event Notification ! ! $TSTCLUEVT [handle], [acmode], [event] ! ! handle = address of handle ! ! acmode = access mode of AST ! ! event = code indicating type of event ! KEYWORDMACRO $TSTCLUEVT (HANDLE=0,ACMODE=0,EVENT=0) = BEGIN EXTERNAL ROUTINE SYS$TSTCLUEVT : BLISS ADDRESSING_MODE (GENERAL); SYS$TSTCLUEVT (SDL$STARLET_CONCAT( HANDLE, ACMODE, EVENT)) END %; ! ! $ADD_BRANCHV1 ! ! Add a transaction branch (V1 compatible call) ! ! $ADD_BRANCHV1 [efn], [flags], iosb, [astadr], [astprm], [tid], node ! ($ADD_BRANCHWV1) ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = transaction id for this branch ! node = address of node name descriptor ! KEYWORDMACRO $ADD_BRANCHV1 (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID=0,NODE) = BEGIN EXTERNAL ROUTINE SYS$ADD_BRANCH : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_BRANCH (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, TID, SDL$STARLET_REQ(NODE, %QUOTE NODE) )) END %; KEYWORDMACRO $ADD_BRANCHV1W (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID=0,NODE) = BEGIN EXTERNAL ROUTINE SYS$ADD_BRANCHW : BLISS ADDRESSING_MODE (GENERAL); SYS$ADD_BRANCHW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, TID, SDL$STARLET_REQ(NODE, %QUOTE NODE) )) END %; ! ! $DECLARE_RMV1 [efn], [flags], iosb, [astadr], [astprm], rm_name, ! ($DECLARE_RMV1W) rm_id, evt_rtn, [acmode] ! ! Declare Resource Manager to DDTM ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! rm_name = address of resource manager name descriptor ! rm_id = address of longword to receive resource manager id ! evt_rtn = address of entry mask of transaction event routine ! acmode = value of access mode in which to invoke evt_rtn ! KEYWORDMACRO $DECLARE_RMV1 (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_NAME,RM_ID,EVT_RTN,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DECLARE_RM : BLISS ADDRESSING_MODE (GENERAL); SYS$DECLARE_RM (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_NAME, %QUOTE RM_NAME) , SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_REQ(EVT_RTN, %QUOTE EVT_RTN) , ACMODE)) END %; KEYWORDMACRO $DECLARE_RMV1W (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_NAME,RM_ID,EVT_RTN,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$DECLARE_RMW : BLISS ADDRESSING_MODE (GENERAL); SYS$DECLARE_RMW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_NAME, %QUOTE RM_NAME) , SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_REQ(EVT_RTN, %QUOTE EVT_RTN) , ACMODE)) END %; ! ! $JOIN_RMV1 ! ! Join a resource manager previously started transaction ! ! $JOIN_RM [efn], [flags], iosb, [astadr], [astprm], rm_id, ! ($JOIN_RMW) rm_log_id, tid, part_id, tm_log_id, ! rm_ctx, [, [timout]] ! ! efn = event flag to set upon completion ! flags = operation flags ! iosb = address of I/O status block ! astadr = address of entry mask of AST routine ! astprm = value to be passed to AST routine ! rm_id = resource manager id value ! rm_log_id = address of resource manager log id ! tid = address of transaction id ! part_id = address of longword to receive participant id ! tm_log_id = address to receive transaction mgr log id ! rm_ctx = RM private value to be passed to evt_rtn ! timout = address of transaction timeout limit ! KEYWORDMACRO $JOIN_RMV1 (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_ID,RM_LOG_ID,TID,PART_ID,TM_LOG_ID,RM_CTX,TIMOUT=0) = BEGIN EXTERNAL ROUTINE SYS$JOIN_RM : BLISS ADDRESSING_MODE (GENERAL); SYS$JOIN_RM (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_REQ(RM_LOG_ID, %QUOTE RM_LOG_ID) , SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(PART_ID, %QUOTE PART_ID) , SDL$STARLET_REQ(TM_LOG_ID, %QUOTE TM_LOG_ID) , SDL$STARLET_REQ(RM_CTX, %QUOTE RM_CTX) , TIMOUT)) END %; KEYWORDMACRO $JOIN_RMV1W (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,RM_ID,RM_LOG_ID,TID,PART_ID,TM_LOG_ID,RM_CTX,TIMOUT=0) = BEGIN EXTERNAL ROUTINE SYS$JOIN_RMW : BLISS ADDRESSING_MODE (GENERAL); SYS$JOIN_RMW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(RM_ID, %QUOTE RM_ID) , SDL$STARLET_REQ(RM_LOG_ID, %QUOTE RM_LOG_ID) , SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(PART_ID, %QUOTE PART_ID) , SDL$STARLET_REQ(TM_LOG_ID, %QUOTE TM_LOG_ID) , SDL$STARLET_REQ(RM_CTX, %QUOTE RM_CTX) , TIMOUT)) END %; ! ! $START_BRANCHV1 ! ! Start a transaction branch ! ! $START_BRANCHV1 [efn], [flags], iosb, [astadr], [astprm], tid, parent ! ($START_BRANCHV1W) ! ! efn = event flag to be set at completion ! flags = operation flags ! iosb = address of a quadword I/O status block ! astadr = address of an entry mask of AST routine ! astprm = value to be passed to AST routine as an argument ! tid = transaction id for this branch ! parent = address of parent node name descriptor ! KEYWORDMACRO $START_BRANCHV1 (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,PARENT) = BEGIN EXTERNAL ROUTINE SYS$START_BRANCH : BLISS ADDRESSING_MODE (GENERAL); SYS$START_BRANCH (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(PARENT, %QUOTE PARENT) )) END %; KEYWORDMACRO $START_BRANCHV1W (EFN=0,FLAGS=0,IOSB,ASTADR=0,ASTPRM=0 ,TID,PARENT) = BEGIN EXTERNAL ROUTINE SYS$START_BRANCHW : BLISS ADDRESSING_MODE (GENERAL); SYS$START_BRANCHW (SDL$STARLET_CONCAT( EFN, FLAGS, SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, SDL$STARLET_REQ(TID, %QUOTE TID) , SDL$STARLET_REQ(PARENT, %QUOTE PARENT) )) END %; ! PTD$CREATE ! ! Create a pseudo terminal ! ! PTD$CREATE CHAN, [ACMODE], [CHARBUFF], [BUFLEN], [HANGUP_AST], ! [HANGUP_ASTPRM], [AST_ACMODE], INADR ! ! CHAN = Address of word to receive channel number assigned ! ACMODE = Access mode associated with channel ! CHARBUFF = Address ofa 3 - 5 longword array containing device ! characteristics. ! BUFLEN = Length of characteristics buffer in bytes either ! 12, 16, or 20 ! ASTADR = Address of entry mask of AST routine ! ASTPRM = Value to be passed to AST routine ! AST_ACMODE = Access mode for whjich the AST is to be delivered ! INADR = Address of 2-longword array containing starting and ! ending virtual address of pages to be used as ! I/O buffers KEYWORDMACRO $PTD_CREATE (CHAN,ACMODE=0,CHARBUFF=0,BUFLEN=12,ASTADR=0 ,ASTPRM=0,AST_ACMODE=0,INADR) = BEGIN EXTERNAL ROUTINE PTD$CREATE : BLISS ADDRESSING_MODE (GENERAL); PTD$CREATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ACMODE, CHARBUFF, BUFLEN, ASTADR, ASTPRM, AST_ACMODE, SDL$STARLET_REQ(INADR, %QUOTE INADR) )) END %; ! PTD$READ ! ! Read data from the pseudo terminal ! ! PTD$READ(W) [EFN], CHAN, [ASTADR], [ASTPRM], READBUF, READBUF_LEN ! EFN = Number of event flag to set on completion ! CHAN = Word containing number of channel on which I/O is to be performed ! ASTADR = Address of entry mask of AST routine ! ASTPRM = Value to be passed to AST routine ! READBUF = Address character string to hold characters read ! READBUF_LEN = Number of character to be read from pseudo terminal KEYWORDMACRO $PTD_READ (EFN=0,CHAN,ASTADR=0,ASTPRM=0,READBUF=0 ,READBUF_LEN=0) = BEGIN EXTERNAL ROUTINE PTD$READ : BLISS ADDRESSING_MODE (GENERAL); PTD$READ (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ASTADR, ASTPRM, READBUF, READBUF_LEN)) END %; KEYWORDMACRO $PTD_READW (EFN=0,CHAN,ASTADR=0,ASTPRM=0,READBUF=0 ,READBUF_LEN=0) = BEGIN EXTERNAL ROUTINE PTD$READW : BLISS ADDRESSING_MODE (GENERAL); PTD$READW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ASTADR, ASTPRM, READBUF, READBUF_LEN)) END %; ! PTD$WRITE ! ! Write data to the pseudo terminal ! ! PTD$WRITE CHAN, [ASTADR], [ASTPRM], WRTBUF, WRTBUF_LEN, ! [ECHOBUF], ECHOBUF_LEN] ! CHAN = Word containing number of channel on which I/O is to be performed ! ASTADR = Address of entry mask of AST routine ! ASTPRM = Value to be passed to AST routine ! WRTBUF = Address of character string containing character to write to ! pseudo terminal ! WRTBUF_LEN = Number of characters to write to pseudo terminal ! ECHOBUF = Address character string to hold characters read ! ECHOBUF_LEN = Number of character to be read from pseudo terminal KEYWORDMACRO $PTD_WRITE (CHAN,ASTADR=0,ASTPRM=0,WRTBUF=0,WRTBUF_LEN=0 ,ECHOBUF=0,ECHOBUF_LEN=0) = BEGIN EXTERNAL ROUTINE PTD$WRITE : BLISS ADDRESSING_MODE (GENERAL); PTD$WRITE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ASTADR, ASTPRM, WRTBUF, WRTBUF_LEN, ECHOBUF, ECHOBUF_LEN)) END %; ! PTD$SET_EVENT_NOTIFICATION ! ! Enable or disable terminal event notification ASTs ! ! PTD$SET_EVENT_NOTIFICATION CHAN, ASTADR, [ASTPRM], [ACMODE], ! TYPE ! CHAN = Word containing number of channel on which I/O is to be performed ! ASTADR = Address of entry mask of AST routine ! ASTPRM = Value to be passed to AST routine ! ACMODE = Access mode for whjich the AST is to be delivered ! TYPE = Longword containing KEYWORDMACRO $PTD_SET_EVENT_NOTIFICATION (CHAN,ASTADR=0,ASTPRM=0 ,ACMODE=0,TYPE) = BEGIN EXTERNAL ROUTINE PTD$SET_EVENT_NOTIFICATION : BLISS ADDRESSING_MODE (GENERAL); PTD$SET_EVENT_NOTIFICATION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , ASTADR, ASTPRM, ACMODE, SDL$STARLET_REQ(TYPE, %QUOTE TYPE) )) END %; ! PTD$CANCEL ! ! Cancel queued control connection read request(s) ! ! PTD$CANCEL CHAN ! ! CHAN = Word containing number of channel on which I/O is to be performed KEYWORDMACRO $PTD_CANCEL (CHAN) = BEGIN EXTERNAL ROUTINE PTD$CANCEL : BLISS ADDRESSING_MODE (GENERAL); PTD$CANCEL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) )) END %; ! PTD$DELETE ! ! Delete a pseudo terminal ! ! PTD$DELETE CHAN ! ! CHAN = Word containing number of channel on which I/O is to be performed KEYWORDMACRO $PTD_DELETE (CHAN) = BEGIN EXTERNAL ROUTINE PTD$DELETE : BLISS ADDRESSING_MODE (GENERAL); PTD$DELETE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) )) END %; ! PTD$DECTERM_SET_PAGE_SIZE ! ! Change terminal page length and width ! ! PTD$DECTERM_SET_PAGE_SIZE CHAN, PAGE_LEN, PAGE_WIDTH ! ! CHAN = Word containing number of channel on which I/O is to be performed ! PAGE_LEN = Longword containing new page length of terminal ! PAGE_WIDTH = Longword containing new page width of terminal KEYWORDMACRO $PTD_DECTERM_SET_PAGE_SIZE (CHAN,PAGE_LEN,PAGE_WIDTH) = BEGIN EXTERNAL ROUTINE PTD$DECTERM_SET_PAGE_SIZE : BLISS ADDRESSING_MODE (GENERAL); PTD$DECTERM_SET_PAGE_SIZE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CHAN, %QUOTE CHAN) , SDL$STARLET_REQ(PAGE_LEN, %QUOTE PAGE_LEN) , SDL$STARLET_REQ(PAGE_WIDTH, %QUOTE PAGE_WIDTH) )) END %; ! $POSIX_FORK_CONTROL ! ! Control POSIX fork() operations ! ! $POSIX_FORK_CONTROL cntrl , [when] , [handler] , [arg] , [ac ! ! cntrl = constant defining what control routine is to do ! ! when = bit array of when handler is to be called ! ! handler= handler address ! ! arg = arg value that is passed back to the handler ! ! acmode = access mode at which to make the specified callback KEYWORDMACRO $POSIX_FORK_CONTROL (CNTRL,WHEN=0,HANDLER=0,ARG=0 ,ACMODE=0) = BEGIN EXTERNAL ROUTINE SYS$POSIX_FORK_CONTROL : BLISS ADDRESSING_MODE (GENERAL); SYS$POSIX_FORK_CONTROL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CNTRL, %QUOTE CNTRL) , WHEN, HANDLER, ARG, ACMODE)) END %; ! $START_ALIGN_FAULT_REPORT ! ! Start user-image alignment fault reporting ! ! $START_ALIGN_FAULT_REPORT report_method, [report_buffer, buffer_length] ! ! report_method = either AFR$C_EXCEPTION or AFR$C_BUFFERED ! ! report_buffer = buffer to use to save alignment fault ! data if the BUFFERED method is specified. ! ! buffer_length = the size in bytes of the user buffer KEYWORDMACRO $START_ALIGN_FAULT_REPORT (REPORT_METHOD,REPORT_BUFFER=0 ,BUFFER_LENGTH=0) = BEGIN EXTERNAL ROUTINE SYS$START_ALIGN_FAULT_REPORT : BLISS ADDRESSING_MODE (GENERAL); SYS$START_ALIGN_FAULT_REPORT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REPORT_METHOD, %QUOTE REPORT_METHOD) , REPORT_BUFFER, BUFFER_LENGTH)) END %; ! $GET_ALIGN_FAULT_DATA ! ! Get alignment fault data from the collector. ! ! $GET_ALIGN_FAULT_DATA buffer, buffer_size, return_size ! ! buffer = Buffer in which to save the alignment fault ! data. ! ! buffer_size = The size in bytes of the user buffer ! ! return_size = Address of a longword in which to return the ! size of the alignment fault data found. KEYWORDMACRO $GET_ALIGN_FAULT_DATA (BUFFER,BUFFER_SIZE,RETURN_SIZE) = BEGIN EXTERNAL ROUTINE SYS$GET_ALIGN_FAULT_DATA : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_ALIGN_FAULT_DATA (SDL$STARLET_CONCAT( SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(BUFFER_SIZE, %QUOTE BUFFER_SIZE) , SDL$STARLET_REQ(RETURN_SIZE, %QUOTE RETURN_SIZE) )) END %; ! $STOP_ALIGN_FAULT_REPORT ! ! Stop user-image alignment fault reporting ! ! $STOP_ALIGN_FAULT_REPORT ! KEYWORDMACRO $STOP_ALIGN_FAULT_REPORT = BEGIN EXTERNAL ROUTINE SYS$STOP_ALIGN_FAULT_REPORT : BLISS ADDRESSING_MODE (GENERAL); SYS$STOP_ALIGN_FAULT_REPORT() END %; ! $PERM_REPORT_ALIGN_FAULT ! ! Start process permanent alignment fault reporting. ! ! $PERM_REPORT_ALIGN_FAULT ! KEYWORDMACRO $PERM_REPORT_ALIGN_FAULT = BEGIN EXTERNAL ROUTINE SYS$PERM_REPORT_ALIGN_FAULT : BLISS ADDRESSING_MODE (GENERAL); SYS$PERM_REPORT_ALIGN_FAULT() END %; ! $PERM_DIS_ALIGN_FAULT_REPORT ! ! Start process permanent alignment fault reporting. ! ! $PERM_DIS_ALIGN_FAULT_REPORT ! KEYWORDMACRO $PERM_DIS_ALIGN_FAULT_REPORT = BEGIN EXTERNAL ROUTINE SYS$PERM_DIS_ALIGN_FAULT_REPORT : BLISS ADDRESSING_MODE (GENERAL); SYS$PERM_DIS_ALIGN_FAULT_REPORT() END %; ! $INIT_SYS_ALIGN_FAULT_REPORT ! ! Start system wide alignment fault reporting. ! ! $INIT_SYS_ALIGN_FAULT_REPORT match_table, buffer_size, flags ! ! match_table = Array of longwords used to restrict ! the alignment faults reported ! ! buffer_size = The number of bytes to use to save alignment ! fault data. ! flags = can be either 0 or AFR$M_USER_INFO ! KEYWORDMACRO $INIT_SYS_ALIGN_FAULT_REPORT (MATCH_TABLE,BUFFER_SIZE ,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$INIT_SYS_ALIGN_FAULT_REPORT : BLISS ADDRESSING_MODE (GENERAL); SYS$INIT_SYS_ALIGN_FAULT_REPORT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MATCH_TABLE, %QUOTE MATCH_TABLE) , SDL$STARLET_REQ(BUFFER_SIZE, %QUOTE BUFFER_SIZE) , FLAGS)) END %; ! $GET_SYS_ALIGN_FAULT_DATA ! ! Get alignment fault data from the system wide collector. ! ! $GET_SYS_ALIGN_FAULT_DATA buffer, buffer_size, return_size ! ! buffer = Buffer in which to save the alignment fault ! data. ! ! buffer_size = The size in bytes of the user buffer ! ! return_size = Address of a longword in which to return the ! size of the alignment fault data found. KEYWORDMACRO $GET_SYS_ALIGN_FAULT_DATA (BUFFER,BUFFER_SIZE,RETURN_SIZE) = BEGIN EXTERNAL ROUTINE SYS$GET_SYS_ALIGN_FAULT_DATA : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_SYS_ALIGN_FAULT_DATA (SDL$STARLET_CONCAT( SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(BUFFER_SIZE, %QUOTE BUFFER_SIZE) , SDL$STARLET_REQ(RETURN_SIZE, %QUOTE RETURN_SIZE) )) END %; ! $STOP_SYS_ALIGN_FAULT_REPORT ! ! Stop system-wide alignment fault reporting ! ! $STOP_SYS_ALIGN_FAULT_REPORT ! KEYWORDMACRO $STOP_SYS_ALIGN_FAULT_REPORT = BEGIN EXTERNAL ROUTINE SYS$STOP_SYS_ALIGN_FAULT_REPORT : BLISS ADDRESSING_MODE (GENERAL); SYS$STOP_SYS_ALIGN_FAULT_REPORT() END %; ! $RESCHED ! ! Request voluntary preemption of current process ! ! $RESCHED ! KEYWORDMACRO $RESCHED = BEGIN EXTERNAL ROUTINE SYS$RESCHED : BLISS ADDRESSING_MODE (GENERAL); SYS$RESCHED() END %; ! ! $SCHED ! ! Control class scheduler ! ! $SCHED func, P1, P2, P3 ! ! func = function code (see CSHDEFS in STARLET) ! ! P1 = buffer address, AST entry point address, or 0 ! ! P2 = buffer length address or AST acmode or PID or 0 ! ! P3 = entry size of a single buffer element or 0 KEYWORDMACRO $SCHED (FUNC,P1=0,P2=0,P3=0) = BEGIN EXTERNAL ROUTINE SYS$SCHED : BLISS ADDRESSING_MODE (GENERAL); SYS$SCHED (SDL$STARLET_CONCAT( SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , P1, P2, P3)) END %; ! ! $SIGNAL_ARRAY_64 ! ! Return address of 64-bit signal array. ! ! $SIGNAL_ARRAY_64 mcharg, sigarg_64 ! ! mcharg = address of the mechanism array ! ! sigarg_64 = 64-bit pointer to which the address of ! 64-bit signal array is written. KEYWORDMACRO $SIGNAL_ARRAY_64 (MCHARG,SIGARG_64) = BEGIN EXTERNAL ROUTINE SYS$SIGNAL_ARRAY_64 : BLISS ADDRESSING_MODE (GENERAL); SYS$SIGNAL_ARRAY_64 (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MCHARG, %QUOTE MCHARG) , SDL$STARLET_REQ(SIGARG_64, %QUOTE SIGARG_64) )) END %; ! $AVOID_PREEMPT ! ! Enable/disable preemption avoidance ! ! $AVOID_PREEMPT enbflg ! ! enbflg = Avoid preempt enable indicator ! 0 -> disable 1 -> enable ! KEYWORDMACRO $AVOID_PREEMPT (ENBFLG) = BEGIN EXTERNAL ROUTINE SYS$AVOID_PREEMPT : BLISS ADDRESSING_MODE (GENERAL); SYS$AVOID_PREEMPT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ENBFLG, %QUOTE ENBFLG) )) END %; ! $SETUP_AVOID_PREEMPT ! ! Enable/disable preemption avoidance underpinnings ! ! $SETUP_AVOID_PREEMPT enbflg ! ! enbflg = Avoid preempt enable indicator ! 0 -> disable 1 -> enable ! KEYWORDMACRO $SETUP_AVOID_PREEMPT (ENBFLG) = BEGIN EXTERNAL ROUTINE SYS$SETUP_AVOID_PREEMPT : BLISS ADDRESSING_MODE (GENERAL); SYS$SETUP_AVOID_PREEMPT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ENBFLG, %QUOTE ENBFLG) )) END %; ! ! $ICC_ACCEPT ! ! Accept an ICC connection ! ! $ICC_ACCEPT Conn_Handle ,[Accept_Buf] ,[Accept_Len] ! ,[User_Context] ,[Flags] ! ! Conn_Handle = Handle value associated with the Connection ! Accept_Buf = Address of user Accept data ! Accept_Len = Length of the accept data ! User_Context = User context value ! Flags = Flags argument ! KEYWORDMACRO $ICC_ACCEPT (CONN_HANDLE,ACCEPT_BUF=0,ACCEPT_LEN=0 ,USER_CONTEXT=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_ACCEPT : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_ACCEPT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , ACCEPT_BUF, ACCEPT_LEN, USER_CONTEXT, FLAGS)) END %; ! ! $ICC_CLOSE_ASSOC ! ! Close an ICC association ! ! $ICC_CLOSE_ASSOC Assoc_Handle ! ! Assoc_Handle = Handle representing the Association to close ! KEYWORDMACRO $ICC_CLOSE_ASSOC (ASSOC_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$ICC_CLOSE_ASSOC : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_CLOSE_ASSOC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ASSOC_HANDLE, %QUOTE ASSOC_HANDLE) )) END %; ! ! $ICC_CONNECT[W] ! ! Initiate an ICC Connection attempt ! ! $ICC_CONNECT[W] IOS_ICC ,[astadr] ,[astprm] ,assoc_handle ! ,conn_hndl_A ,remote_assoc ,[remote_node] ! ,[user_context] ,[conn_buf] ,[conn_buf_len] ! ,[return_buf] ,[return_buf_len] ,[retlen_addr] ! ,[flags] ! ! ios_icc = address of a IOS_ICC (Connect version) ! astadr = address of entry mask of users' completion AST ! routine ! astprm = value to be passed to the AST routine as an ! argument ! Assoc_Handle = Handle representing the Association to close ! Conn_Hndl_A = Address to return the handle value of the ! opened Connection ! Remote_Assoc = Pointer to a descriptor describing the remote ! association name string ! Remote_Node = Pointer to a descriptor describing the remote ! node name string ! User_Context = User context value ! Conn_Buf = Address of a buffer containing Connect data ! Conn_Buf_Len = Length of the connect data in Conn_Buf ! Return_Buf = Address of a buffer for return data ! Return_Buf_Len = Length of the buffer available for return data ! Retlen_Addr = Address to receive the actual length of any ! return data ! Flags = Flags argument ! KEYWORDMACRO $ICC_CONNECT (IOS_ICC,ASTADR=0,ASTPRM=0,ASSOC_HANDLE ,CONN_HNDL_A,REMOTE_ASSOC=0,REMOTE_NODE=0,USER_CONTEXT=0,CONN_BUF=0 ,CONN_BUF_LEN=0,RETURN_BUF=0,RETURN_BUF_LEN=0,RETLEN_ADDR=0 ,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_CONNECT : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_CONNECT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(ASSOC_HANDLE, %QUOTE ASSOC_HANDLE) , SDL$STARLET_REQ(CONN_HNDL_A, %QUOTE CONN_HNDL_A) , REMOTE_ASSOC, REMOTE_NODE, USER_CONTEXT, CONN_BUF, CONN_BUF_LEN, RETURN_BUF, RETURN_BUF_LEN, RETLEN_ADDR, FLAGS)) END %; KEYWORDMACRO $ICC_CONNECTW (IOS_ICC,ASTADR=0,ASTPRM=0,ASSOC_HANDLE ,CONN_HNDL_A,REMOTE_ASSOC=0,REMOTE_NODE=0,USER_CONTEXT=0,CONN_BUF=0 ,CONN_BUF_LEN=0,RETURN_BUF=0,RETURN_BUF_LEN=0,RETLEN_ADDR=0 ,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_CONNECTW : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_CONNECTW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(ASSOC_HANDLE, %QUOTE ASSOC_HANDLE) , SDL$STARLET_REQ(CONN_HNDL_A, %QUOTE CONN_HNDL_A) , REMOTE_ASSOC, REMOTE_NODE, USER_CONTEXT, CONN_BUF, CONN_BUF_LEN, RETURN_BUF, RETURN_BUF_LEN, RETLEN_ADDR, FLAGS)) END %; ! ! $ICC_DISCONNECT[W] ! ! Initiate an ICC Disconnection ! ! $ICC_DISCONNECT[W] conn_handle ,IOSB ,[astadr] ,[astprm] ! ,[disc_buf] ,[disc_buf_len] ! ! Conn_Handle = Handle representing the Connection to terminate ! iosb = Address of a quadword I/O status block ! astadr = Address of entry mask of users' completion AST ! routine ! astprm = Value to be passed to the AST routine as an ! argument ! Disc_Buf = Address of an optional buffer containing ! Disconnect data ! Disc_Buf_Len = Length of the disconnect data in Disc_Buf ! KEYWORDMACRO $ICC_DISCONNECT (CONN_HANDLE,IOSB,ASTADR=0,ASTPRM=0 ,DISC_BUF=0,DISC_BUF_LEN=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_DISCONNECT : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_DISCONNECT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, DISC_BUF, DISC_BUF_LEN)) END %; KEYWORDMACRO $ICC_DISCONNECTW (CONN_HANDLE,IOSB,ASTADR=0,ASTPRM=0 ,DISC_BUF=0,DISC_BUF_LEN=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_DISCONNECTW : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_DISCONNECTW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOSB, %QUOTE IOSB) , ASTADR, ASTPRM, DISC_BUF, DISC_BUF_LEN)) END %; ! ! $ICC_REJECT ! ! Reject an ICC connection ! ! $ICC_REJECT Conn_Handle ,[Reject_Buf] ,[Reject_Buf_Len] ! ,[Reason] ! ! Conn_Handle = Handle value associated with the Connection ! Reject_Buf = Address of optional user Reject data ! Reject_Buf_Len = Length of the reject data ! Reason = Reason for the rejection ! KEYWORDMACRO $ICC_REJECT (CONN_HANDLE,REJECT_BUF=0,REJECT_BUF_LEN=0 ,REASON=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_REJECT : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_REJECT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , REJECT_BUF, REJECT_BUF_LEN, REASON)) END %; ! ! $ICC_OPEN_ASSOC ! ! Open an ICC association ! ! $ICC_OPEN_ASSOC assoc_handle ,[assoc_name] ,[logical_name] ! ,[logical_table] ,[conn_rtn] ,[disc_rtn] ! ,[recv_rtn] ,[maxflowbufcnt] ,[prot] ! ! Assoc_Handle = Address to return the handlevalue of the ! opened Association ! Assoc_Name = Pointer to a descriptor describing the ! association name string ! Logical_Name = Pointer to a descriptor describing a logical ! name for use by the ICC simple registry ! Logical_Table = Pointer to a descriptor describing a logical ! name table for use by the ICC simple registry ! Conn_Rtn = Address of the User's Connect AST routine ! Disc_Rtn = Address of the User's Disconnect AST routine ! Recv_Rtn = Address of the User's receive AST routine ! Maxflowbufcnt = Maximum number of pending inbound message ! buffers ! Prot = Default protection for association ! KEYWORDMACRO $ICC_OPEN_ASSOC (ASSOC_HANDLE,ASSOC_NAME=0,LOGICAL_NAME=0 ,LOGICAL_TABLE=0,CONN_RTN=0,DISC_RTN=0,RECV_RTN=0,MAXFLOWBUFCNT=0 ,PROT=0) = BEGIN EXTERNAL ROUTINE SYS$ICC_OPEN_ASSOC : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_OPEN_ASSOC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ASSOC_HANDLE, %QUOTE ASSOC_HANDLE) , ASSOC_NAME, LOGICAL_NAME, LOGICAL_TABLE, CONN_RTN, DISC_RTN, RECV_RTN, MAXFLOWBUFCNT, PROT)) END %; ! ! $ICC_RECEIVE[W] ! ! Receive data over an ICC connection ! ! $ICC_RECEIVE[W] conn_handle ,ios_icc ,[astadr] ,[astprm] ! ,recv_buf ,recv_buf_len ! ! conn_handle = Handle representing the Connection the data ! is being transferred over ! ios_icc = Address of an I/O status block (16-byte ICC ! RECEIVE layout) ! astadr = Address of entry mask of users' completion AST ! routine ! astprm = Value to be passed to the AST routine as an ! argument ! recv_buf = Address of a buffer to receive the data ! recv_buf_len = Length of the buffer receiving the data ! KEYWORDMACRO $ICC_RECEIVE (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,RECV_BUF,RECV_BUF_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_RECEIVE : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_RECEIVE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(RECV_BUF, %QUOTE RECV_BUF) , SDL$STARLET_REQ(RECV_BUF_LEN, %QUOTE RECV_BUF_LEN) )) END %; KEYWORDMACRO $ICC_RECEIVEW (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,RECV_BUF,RECV_BUF_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_RECEIVEW : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_RECEIVEW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(RECV_BUF, %QUOTE RECV_BUF) , SDL$STARLET_REQ(RECV_BUF_LEN, %QUOTE RECV_BUF_LEN) )) END %; ! ! $ICC_REPLY[W] ! ! Send a reply over an ICC connection ! ! $ICC_REPLY[W] conn_handle ,ios_icc ,[astadr] ,[astprm] ! ,reply_buf ,reply_len ! ! conn_handle = Handle representing the Connection the data is ! being transferred over ! ios_icc = Address of an I/O status block (8-byte ICC ! REPLY layout) ! astadr = Address of entry mask of users' completion AST ! routine ! astprm = Value to be passed to the AST routine as an ! argument ! reply_buf = Address of a buffer containing the data ! reply_len = Length of the data in reply_buf ! KEYWORDMACRO $ICC_REPLY (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,REPLY_BUF,REPLY_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_REPLY : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_REPLY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(REPLY_BUF, %QUOTE REPLY_BUF) , SDL$STARLET_REQ(REPLY_LEN, %QUOTE REPLY_LEN) )) END %; KEYWORDMACRO $ICC_REPLYW (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,REPLY_BUF,REPLY_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_REPLYW : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_REPLYW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(REPLY_BUF, %QUOTE REPLY_BUF) , SDL$STARLET_REQ(REPLY_LEN, %QUOTE REPLY_LEN) )) END %; ! ! $ICC_TRANSCEIVE[W] ! ! ICC transceive operation ! ! $ICC_TRANSCEIVE[W] conn_handle ,ios_icc ,[astadr] ,[astprm] ! ,send_buf ,send_len ! ! conn_handle = Handle representing the Connection the data is ! being transferred over ! ios_icc = Address of an I/O status block (20-byte ICC ! TRANSCEIVE layout ) ! astadr = Address of entry mask of users' completion AST ! routine ! astprm = Value to be passed to the AST routine as an ! argument ! send_buf = Address of a buffer conta in ing the data ! send_len = Length of the data in send_buf ! KEYWORDMACRO $ICC_TRANSCEIVE (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,SEND_BUF,SEND_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_TRANSCEIVE : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_TRANSCEIVE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(SEND_BUF, %QUOTE SEND_BUF) , SDL$STARLET_REQ(SEND_LEN, %QUOTE SEND_LEN) )) END %; KEYWORDMACRO $ICC_TRANSCEIVEW (CONN_HANDLE,IOS_ICC,ASTADR,ASTPRM ,SEND_BUF,SEND_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_TRANSCEIVEW : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_TRANSCEIVEW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , SDL$STARLET_REQ(ASTADR, %QUOTE ASTADR) , SDL$STARLET_REQ(ASTPRM, %QUOTE ASTPRM) , SDL$STARLET_REQ(SEND_BUF, %QUOTE SEND_BUF) , SDL$STARLET_REQ(SEND_LEN, %QUOTE SEND_LEN) )) END %; ! ! $ICC_TRANSMIT[W] ! ! Transmit data over an ICC connection ! ! $ICC_TRANSMIT[W] conn_handle ,ios_icc ,[astadr] ,[astprm] ! ,send_buf ,send_len ! ! conn_handle = Handle representing the Connection the data is ! being transferred over ! ios_icc = Address of a quadword I/O status block ! astadr = Address of entry mask of users' completion AST ! routine ! astprm = Value to be passed to the AST routine as an ! argument ! send_buf = Address of a buffer conta in ing the data ! send_len = Length of the data in send_buf ! KEYWORDMACRO $ICC_TRANSMIT (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,SEND_BUF,SEND_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_TRANSMIT : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_TRANSMIT (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(SEND_BUF, %QUOTE SEND_BUF) , SDL$STARLET_REQ(SEND_LEN, %QUOTE SEND_LEN) )) END %; KEYWORDMACRO $ICC_TRANSMITW (CONN_HANDLE,IOS_ICC,ASTADR=0,ASTPRM=0 ,SEND_BUF,SEND_LEN) = BEGIN EXTERNAL ROUTINE SYS$ICC_TRANSMITW : BLISS ADDRESSING_MODE (GENERAL); SYS$ICC_TRANSMITW (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CONN_HANDLE, %QUOTE CONN_HANDLE) , SDL$STARLET_REQ(IOS_ICC, %QUOTE IOS_ICC) , ASTADR, ASTPRM, SDL$STARLET_REQ(SEND_BUF, %QUOTE SEND_BUF) , SDL$STARLET_REQ(SEND_LEN, %QUOTE SEND_LEN) )) END %; ! $PERSONA_QUERY ! ! Query Persona Information ! ! $PERSONA_QUERY persona, itmlst ! ! persona = address of longword holding persona identifier ! ! itmlst = address of list of item descriptors ! ! KEYWORDMACRO $PERSONA_QUERY (PERSONA,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_QUERY : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_QUERY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! $PERSONA_FIND ! ! Locate Persona With Characteristic ! ! $PERSONA_FIND persona, itmlst ! ! persona = address of longword holding persona identifier ! ! itmlst = address of list of item descriptors ! ! contxt = address of a context long word (used for iterative ! calls or a multi-entry item list) ! ! ! KEYWORDMACRO $PERSONA_FIND (PERSONA,ITMLST,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_FIND : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_FIND (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , CONTXT)) END %; ! $PERSONA_RESERVE ! ! Reserve Persona Slot For Delegation ! ! $PERSONA_RESERVE clientPID, persona ! ! clientPID = address of longword holding client's PID ! ! persona = address of longword holding persona identifier ! ! KEYWORDMACRO $PERSONA_RESERVE (CLIENTPID,PERSONA) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_RESERVE : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_RESERVE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(CLIENTPID, %QUOTE CLIENTPID) , SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) )) END %; ! $PERSONA_DELEGATE ! ! Delegate Persona To Another Process ! ! $PERSONA_DELEGATE serverPID, persona, input_id ! ! serverPID = address of longword holding server's PID ! ! persona = address of longword holding persona identifier reserved by server ! ! input_id = address of longword holding persona identifier to delegate ! KEYWORDMACRO $PERSONA_DELEGATE (SERVERPID,PERSONA,INPUT_ID) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_DELEGATE : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_DELEGATE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(SERVERPID, %QUOTE SERVERPID) , SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_REQ(INPUT_ID, %QUOTE INPUT_ID) )) END %; ! $PERSONA_EXTENSION_LOOKUP ! ! Find Extension on the system ! ! $PERSONA_EXTENSION_LOOKUP extensionName, extensionID ! ! extensionName = address of string descriptor of name ! ! extensionID = address of longword the ID is written to ! ! KEYWORDMACRO $PERSONA_EXTENSION_LOOKUP (EXTENSIONNAME,EXTENSIONID) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_EXTENSION_LOOKUP : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_EXTENSION_LOOKUP (SDL$STARLET_CONCAT( SDL$STARLET_REQ(EXTENSIONNAME, %QUOTE EXTENSIONNAME) , SDL$STARLET_REQ(EXTENSIONID, %QUOTE EXTENSIONID) )) END %; ! $PERSONA_CREATE_EXTENSION ! ! Create Persona Extension ! ! $PERSONA_CREATE_EXTENSION persona, extensionID, buffer, length, flags ! ! persona = address of longword holding persona identifier ! ! extensionID = address of longword holding extension to create ! ! buffer = address of TLV buffer ! ! length = address of longword containing TLV size in bytes ! ! flags = address of a flags longword ! ! KEYWORDMACRO $PERSONA_CREATE_EXTENSION (PERSONA,EXTENSIONID,BUFFER ,LENGTH,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_CREATE_EXTENSION : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_CREATE_EXTENSION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_REQ(EXTENSIONID, %QUOTE EXTENSIONID) , SDL$STARLET_REQ(BUFFER, %QUOTE BUFFER) , SDL$STARLET_REQ(LENGTH, %QUOTE LENGTH) , SDL$STARLET_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! $PERSONA_DELETE_EXTENSION ! ! Delete An Extension From A Persona ! ! $PERSONA_DELETE_EXTENSION persona, extensionID ! ! persona = address of longword holding persona identifier ! ! extensionID = address of longword holding extension to delete ! ! KEYWORDMACRO $PERSONA_DELETE_EXTENSION (PERSONA,EXTENSIONID) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_DELETE_EXTENSION : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_DELETE_EXTENSION (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_REQ(EXTENSIONID, %QUOTE EXTENSIONID) )) END %; ! $PERSONA_MODIFY ! ! Modify Persona ! ! $PERSONA_MODIFY persona, itmlst ! ! persona = address of longword holding persona identifier ! ! itmlst = address of list of item descriptors ! ! KEYWORDMACRO $PERSONA_MODIFY (PERSONA,ITMLST) = BEGIN EXTERNAL ROUTINE SYS$PERSONA_MODIFY : BLISS ADDRESSING_MODE (GENERAL); SYS$PERSONA_MODIFY (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PERSONA, %QUOTE PERSONA) , SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) )) END %; ! ! $SET_PROCESS_PROPERTIES[W] ! ! Set a simple value associated with a process ! ! $SET_PROCESS_PROPERTIES[W] mbz1 ,pidadr ,prcnam ,property ! ,value, prev_value [,bufsiz] [,bufcnt] ! ! mbz1 = Reserved for future use by Digital. Must ! be specified as 0. ! pidadr = For system service logging, the address of ! the PID of the target process. Otherwise, 0. ! prcnam = For system service logging, the address of ! the process name descriptor of the target ! process. Otherwise, must be 0. ! property = A constant that selects which property to set ! value = A quadword value to set the property to ! prev_value = The address of a quadword which will receive the ! previous value of the property ! bufsiz = For PPROP$C_SS_ENABLE, the size in bytes of a log buffer ! bufcnt = For PPROP$C_SS_ENABLE, the number of log buffers ! flags = for PPROP$C_SS_ENABLE, the associated flags ! KEYWORDMACRO $SET_PROCESS_PROPERTIES (MBZ1=0,PIDADR=0,PRCNAM=0 ,PROPERTY,VALUE,PREV_VALUE,BUFSIZ,BUFCNT,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$SET_PROCESS_PROPERTIES : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_PROCESS_PROPERTIES (SDL$STARLET_CONCAT( MBZ1, PIDADR, PRCNAM, SDL$STARLET_REQ(PROPERTY, %QUOTE PROPERTY) , SDL$STARLET_REQ(VALUE, %QUOTE VALUE) , SDL$STARLET_REQ(PREV_VALUE, %QUOTE PREV_VALUE) , SDL$STARLET_OPT( BUFSIZ, BUFCNT, FLAGS))) END %; KEYWORDMACRO $SET_PROCESS_PROPERTIESW (MBZ1=0,PIDADR=0,PRCNAM=0 ,PROPERTY,VALUE,PREV_VALUE,BUFSIZ,BUFCNT,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$SET_PROCESS_PROPERTIESW : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_PROCESS_PROPERTIESW (SDL$STARLET_CONCAT( MBZ1, PIDADR, PRCNAM, SDL$STARLET_REQ(PROPERTY, %QUOTE PROPERTY) , SDL$STARLET_REQ(VALUE, %QUOTE VALUE) , SDL$STARLET_REQ(PREV_VALUE, %QUOTE PREV_VALUE) , SDL$STARLET_OPT( BUFSIZ, BUFCNT, FLAGS))) END %; ! SYS$ACQUIRE_GALAXY_LOCK ! ! $ACQUIRE_GALAXY_LOCK lock_handle,timeout,flags ! ! lock_handle - GLOCK handle ! timeout - timeout value in 10 microsecond units ! flags - flags KEYWORDMACRO $ACQUIRE_GALAXY_LOCK (LOCK_HANDLE,TIMEOUT=0,FLAGS=0) = BEGIN EXTERNAL ROUTINE SYS$ACQUIRE_GALAXY_LOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$ACQUIRE_GALAXY_LOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) , TIMEOUT, FLAGS)) END %; ! SYS$CREATE_GALAXY_LOCK ! ! $CREATE_GALAXY_LOCK lcktbl_handle,name,size,timeout,ipl,rank,lock_handle ! ! lcktbl_handle - handle of lock table in which to create the lock ! name - pointer to name of lock; 16 bytes. ASCIZ or Descriptor ! size - size of lock ! timeout - wait timeout value in 10 micro second units ! ipl - IPL to raise to when lock is acquired (kernel mode only) ! rank - rank of lock ! lock_handle - lock handle ! ! KEYWORDMACRO $CREATE_GALAXY_LOCK (LCKTBL_HANDLE,NAME,SIZE,TIMEOUT=0 ,IPL=0,RANK=0,LOCK_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$CREATE_GALAXY_LOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_GALAXY_LOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LCKTBL_HANDLE, %QUOTE LCKTBL_HANDLE) , SDL$STARLET_REQ(NAME, %QUOTE NAME) , SDL$STARLET_REQ(SIZE, %QUOTE SIZE) , TIMEOUT, IPL, RANK, SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) )) END %; ! SYS$CREATE_GALAXY_LOCK_TABLE ! ! $CREATE_GALAXY_LOCK_TABLE name,accmode,section_size,section_type,prot,lock_size,lcktbl_handle ! ! name - pointer to name of section; 16 bytes. ASCIZ or Descriptor ! accmode - access mode ! section_size - virtual size of the section (bytes) ! section_type - glcktbl$c_process | glcktbl$c_system ! prot - page protection ! lock_size - size of locks in the section ! lcktbl_handle - handle of lock table ! KEYWORDMACRO $CREATE_GALAXY_LOCK_TABLE (NAME,ACCMODE,SECTION_SIZE ,SECTION_TYPE,PROT,LOCK_SIZE,LCKTBL_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$CREATE_GALAXY_LOCK_TABLE : BLISS ADDRESSING_MODE (GENERAL); SYS$CREATE_GALAXY_LOCK_TABLE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(NAME, %QUOTE NAME) , SDL$STARLET_REQ(ACCMODE, %QUOTE ACCMODE) , SDL$STARLET_REQ(SECTION_SIZE, %QUOTE SECTION_SIZE) , SDL$STARLET_REQ(SECTION_TYPE, %QUOTE SECTION_TYPE) , SDL$STARLET_REQ(PROT, %QUOTE PROT) , SDL$STARLET_REQ(LOCK_SIZE, %QUOTE LOCK_SIZE) , SDL$STARLET_REQ(LCKTBL_HANDLE, %QUOTE LCKTBL_HANDLE) )) END %; ! SYS$DELETE_GALAXY_LOCK ! ! $DELETE_GALAXY_LOCK lock_handle ! ! lock_handle - lock handle ! KEYWORDMACRO $DELETE_GALAXY_LOCK (LOCK_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$DELETE_GALAXY_LOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_GALAXY_LOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) )) END %; ! SYS$DELETE_GALAXY_LOCK_TABLE ! ! $DELETE_GALAXY_LOCK_TABLE lcktbl_handle ! ! lcktbl_handle - handle of lock table ! KEYWORDMACRO $DELETE_GALAXY_LOCK_TABLE (LCKTBL_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$DELETE_GALAXY_LOCK_TABLE : BLISS ADDRESSING_MODE (GENERAL); SYS$DELETE_GALAXY_LOCK_TABLE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LCKTBL_HANDLE, %QUOTE LCKTBL_HANDLE) )) END %; ! SYS$GET_GALAXY_LOCK_INFO ! ! $GET_GALAXY_LOCK_INFO lcktbl_handle,name,timeout,size,ipl,rank,lock_handle, name_length ! ! lock_handle - lock handle ! name - pointer to name of lock; 16 bytes, zero terminated ! timeout - wait timeout value in 10 micro second units ! size - size of lock ! ipl - IPL to raise to when lock is acquired (kernel mode only) ! rank - rank of lock ! flags - flags from lock ! name_length - pointer to a word where the length of the name will be returned ! KEYWORDMACRO $GET_GALAXY_LOCK_INFO (LOCK_HANDLE,NAME,TIMEOUT,SIZE ,IPL,RANK,FLAGS,NAME_LENGTH) = BEGIN EXTERNAL ROUTINE SYS$GET_GALAXY_LOCK_INFO : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_GALAXY_LOCK_INFO (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) , SDL$STARLET_REQ(NAME, %QUOTE NAME) , SDL$STARLET_REQ(TIMEOUT, %QUOTE TIMEOUT) , SDL$STARLET_REQ(SIZE, %QUOTE SIZE) , SDL$STARLET_REQ(IPL, %QUOTE IPL) , SDL$STARLET_REQ(RANK, %QUOTE RANK) , SDL$STARLET_REQ(FLAGS, %QUOTE FLAGS) , SDL$STARLET_OPT( NAME_LENGTH))) END %; ! SYS$GET_GALAXY_LOCK_SIZE ! ! $GET_GALAXY_LOCK_SIZE min_size, max_size ! ! min_size - minimum size of a galaxy lock ! max_size - maximum size of a galaxy lock ! KEYWORDMACRO $GET_GALAXY_LOCK_SIZE (MIN_SIZE,MAX_SIZE) = BEGIN EXTERNAL ROUTINE SYS$GET_GALAXY_LOCK_SIZE : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_GALAXY_LOCK_SIZE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(MIN_SIZE, %QUOTE MIN_SIZE) , SDL$STARLET_REQ(MAX_SIZE, %QUOTE MAX_SIZE) )) END %; ! SYS$INIT_GALAXY_LOCK ! ! $INIT_GALAXY_LOCK va,name,size,timeout,ipl,rank,lock_handle ! ! va - local va of memory to be initialized ! name - pointer to name of lock; 16 bytes, zero terminated ! size - size of lock ! timeout - wait timeout value in 10 micro second units ! ipl - IPL to raise to when lock is acquired (kernel mode only) ! rank - rank of lock ! lock_handle - lock handle ! ! KEYWORDMACRO $INIT_GALAXY_LOCK (VA,NAME,SIZE,TIMEOUT=0,IPL=0,RANK=0 ,LOCK_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$INIT_GALAXY_LOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$INIT_GALAXY_LOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(VA, %QUOTE VA) , SDL$STARLET_REQ(NAME, %QUOTE NAME) , SDL$STARLET_REQ(SIZE, %QUOTE SIZE) , TIMEOUT, IPL, RANK, SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) )) END %; ! SYS$INIT_GALAXY_LOCK_TABLE ! ! $INIT_GALAXY_LOCK_TABLE region_va,reg_phys_size,reg_virt_size,section_type,lock_size,lcktbl_handle ! ! region_va - local va of shared memory region where the locks reside ! reg_phys_size - physical size of the region (bytes) ! reg_virt_size - virtual size of the region (bytes) ! section_type - glcktbl$c_process | glcktbl$c_system ! lock_size - size of locks in the section ! lcktbl_handle - handle of lock table ! KEYWORDMACRO $INIT_GALAXY_LOCK_TABLE (REGION_VA,REG_PHYS_SIZE ,REG_VIRT_SIZE,SECTION_TYPE,LOCK_SIZE,LCKTBL_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$INIT_GALAXY_LOCK_TABLE : BLISS ADDRESSING_MODE (GENERAL); SYS$INIT_GALAXY_LOCK_TABLE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(REGION_VA, %QUOTE REGION_VA) , SDL$STARLET_REQ(REG_PHYS_SIZE, %QUOTE REG_PHYS_SIZE) , SDL$STARLET_REQ(REG_VIRT_SIZE, %QUOTE REG_VIRT_SIZE) , SDL$STARLET_REQ(SECTION_TYPE, %QUOTE SECTION_TYPE) , SDL$STARLET_REQ(LOCK_SIZE, %QUOTE LOCK_SIZE) , SDL$STARLET_REQ(LCKTBL_HANDLE, %QUOTE LCKTBL_HANDLE) )) END %; ! SYS$RELEASE_GALAXY_LOCK ! ! $RELEASE_GALAXY_LOCK lock_handle ! ! lock_handle - lock handle ! KEYWORDMACRO $RELEASE_GALAXY_LOCK (LOCK_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$RELEASE_GALAXY_LOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$RELEASE_GALAXY_LOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) )) END %; ! SYS$RESET_GALAXY_LOCK ! ! $RESET_GALAXY_LOCK lock_handle ! ! lock_handle - lock handle ! lock_va - local address of lock ! KEYWORDMACRO $RESET_GALAXY_LOCK (LOCK_HANDLE,LOCK_VA) = BEGIN EXTERNAL ROUTINE SYS$RESET_GALAXY_LOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$RESET_GALAXY_LOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) , SDL$STARLET_REQ(LOCK_VA, %QUOTE LOCK_VA) )) END %; ! SYS$WAIT_ON_GLOCK ! ! $WAIT_ON_GLOCK lock_handle,timeout ! ! lock_handle - lock handle ! timeout - timeout value; overrides the value in the lock ! KEYWORDMACRO $WAIT_ON_GLOCK (LOCK_HANDLE,TIMEOUT) = BEGIN EXTERNAL ROUTINE SYS$WAIT_ON_GLOCK : BLISS ADDRESSING_MODE (GENERAL); SYS$WAIT_ON_GLOCK (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) , SDL$STARLET_REQ(TIMEOUT, %QUOTE TIMEOUT) )) END %; ! SYS$NOTIFY_GLOCK_WAITERS ! ! $NOTIFY_GLOCK_WAITERS lock_handle,waiters ! ! lock_handle - lock handle ! waiters - bitmask of galaxy nodes with waiters for this lock ! KEYWORDMACRO $NOTIFY_GLOCK_WAITERS (LOCK_HANDLE,WAITERS) = BEGIN EXTERNAL ROUTINE SYS$NOTIFY_GLOCK_WAITERS : BLISS ADDRESSING_MODE (GENERAL); SYS$NOTIFY_GLOCK_WAITERS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOCK_HANDLE, %QUOTE LOCK_HANDLE) , SDL$STARLET_REQ(WAITERS, %QUOTE WAITERS) )) END %; ! $QIOSERVER ! ! QIOserver Control and Information ! ! $QIOSERVER [efn], func, [context], [itmlst], ! ($QIOSERVERW) [iosb], [astadr], [astprm] ! ! efn = event flag to be set when request completes ! func = code specifying function to be performed ! context = address of a longword containing a context number ! itmlst = address of a list of item descriptors for the operation ! iosb = address of a quadword status block to receive the final status ! astadr = address of an ast routine to be called when request completes ! astprm = 32-bit (VAX) or 64-bit (ALPHA) ast parameter ! KEYWORDMACRO $QIOSERVER (EFN=0,FUNC,CONTEXT=0,ITMLST=0,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$QIOSERVER : BLISS ADDRESSING_MODE (GENERAL); SYS$QIOSERVER (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , CONTEXT, ITMLST, IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $QIOSERVERW (EFN=0,FUNC,CONTEXT=0,ITMLST=0,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$QIOSERVERW : BLISS ADDRESSING_MODE (GENERAL); SYS$QIOSERVERW (SDL$STARLET_CONCAT( EFN, SDL$STARLET_REQ(FUNC, %QUOTE FUNC) , CONTEXT, ITMLST, IOSB, ASTADR, ASTPRM)) END %; ! $DEVICE_PATH_SCAN ! ! SCAN Device Path Information ! ! $DEVICE_PATH_SCAN [chan] ,[devnam] ,itmlst ,[contxt] ,[nullarg] ! ! chan = number of a channel assigned to the device or ! 0 if device is specified by the devnam parameter ! ! devnam = address of device name or logical name descriptor ! ! itmlst = address of a list of item descriptors ! ! contxt = address of long word used to indicate current position of $DEVICE_PATH_SCAN ! ! nullarg = reserved argument ! ! KEYWORDMACRO $DEVICE_PATH_SCAN (CHAN=0,DEVNAM=0,ITMLST,CONTXT=0 ,NULLARG=0) = BEGIN EXTERNAL ROUTINE SYS$DEVICE_PATH_SCAN : BLISS ADDRESSING_MODE (GENERAL); SYS$DEVICE_PATH_SCAN (SDL$STARLET_CONCAT( CHAN, DEVNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , CONTXT, NULLARG)) END %; ! $SET_DEVICE ! $SET_DEVICEW ! ! SET Device Information ! ! $SET_DEVICE [efn] ,[chan] ,[devnam] ,itmlst ,[iosb] ,[astadr], ! $SET_DEVICEW [astprm] ,[nullarg] ! ! efn = event flag to be set at completion ! ! chan = number of a channel assigned to the device or ! 0 if device is specified by the devnam parameter ! ! devnam = address of device name or logical name descriptor ! ! itmlst = address of a list of item descriptors ! ! iosb = address of a quadword I/O status block ! ! astadr = address of entry mask of AST routine ! ! astprm = value to be passed to AST routine ! ! nullarg = reserved argument ! ! KEYWORDMACRO $SET_DEVICE (EFN=0,CHAN=0,DEVNAM=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0,NULLARG=0) = BEGIN EXTERNAL ROUTINE SYS$SET_DEVICE : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_DEVICE (SDL$STARLET_CONCAT( EFN, CHAN, DEVNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM, NULLARG)) END %; KEYWORDMACRO $SET_DEVICEW (EFN=0,CHAN=0,DEVNAM=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0,NULLARG=0) = BEGIN EXTERNAL ROUTINE SYS$SET_DEVICEW : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_DEVICEW (SDL$STARLET_CONCAT( EFN, CHAN, DEVNAM, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM, NULLARG)) END %; ! ! $IO_TRANSITION ! $IO_TRANSITIONW ! ! IO State Transitions ! ! $IO_TRANSITION tran_code,devnam,[nodename],[node_id],flags,efn,iosb,astadr,astprm ! $IO_TRANSITIONW tran_code,devnam,[nodename],[node_id],flags,efn,iosb,astadr,astprm ! ! Parameters: ! tran_code - Transition code of operation to be initiated ! devnam - CPU ID of processor to affected ! nodename - ASCII descriptor name equivalent to node ID ! node_id - Galactic node ID ! flags - Quadword pointer to longword behavioral flags ! efn - Event flag number for completion notification ! iosb - IOSB block address for completion notification ! astadr - Address of AST routine name on completion ! astprm - AST parameter to be passed back on completion ! contxt - Context longword ! KEYWORDMACRO $IO_TRANSITION (TRAN_CODE=0,DEVNAM=0,NODENAME=0,NODE_ID=-1 ,FLAGS=0,EFN=0,IOSB=0,ASTADR=0,ASTPRM=0,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$IO_TRANSITION : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_TRANSITION (SDL$STARLET_CONCAT( TRAN_CODE, DEVNAM, NODENAME, NODE_ID, FLAGS, EFN, IOSB, ASTADR, ASTPRM, CONTXT)) END %; KEYWORDMACRO $IO_TRANSITIONW (TRAN_CODE=0,DEVNAM=0,NODENAME=0 ,NODE_ID=-1,FLAGS=0,EFN=0,IOSB=0,ASTADR=0,ASTPRM=0,CONTXT=0) = BEGIN EXTERNAL ROUTINE SYS$IO_TRANSITIONW : BLISS ADDRESSING_MODE (GENERAL); SYS$IO_TRANSITIONW (SDL$STARLET_CONCAT( TRAN_CODE, DEVNAM, NODENAME, NODE_ID, FLAGS, EFN, IOSB, ASTADR, ASTPRM, CONTXT)) END %; ! SYS$MAP_UIC ! ! $MAP_UIC uic, uid, gid ! ! uic - address of the UIC to look up mapping for ! uid - address of cell to write matching UID into ! gid - address of cell to write matching GID into ! KEYWORDMACRO $MAP_UIC (UIC,UID,GID) = BEGIN EXTERNAL ROUTINE SYS$MAP_UIC : BLISS ADDRESSING_MODE (GENERAL); SYS$MAP_UIC (SDL$STARLET_CONCAT( SDL$STARLET_REQ(UIC, %QUOTE UIC) , SDL$STARLET_REQ(UID, %QUOTE UID) , SDL$STARLET_REQ(GID, %QUOTE GID) )) END %; ! SYS$MAP_UID ! ! $MAP_UIC uid, uic, username, retlen ! ! uid - address of the UID to look up mapping for ! uid - address of cell to write matching UIC into ! username - address of a string descriptor to write matching username into ! retlen - address of a word to write the length of the username into ! KEYWORDMACRO $MAP_UID (UID,UIC,USERNAME,RETLEN) = BEGIN EXTERNAL ROUTINE SYS$MAP_UID : BLISS ADDRESSING_MODE (GENERAL); SYS$MAP_UID (SDL$STARLET_CONCAT( SDL$STARLET_REQ(UID, %QUOTE UID) , SDL$STARLET_REQ(UIC, %QUOTE UIC) , SDL$STARLET_REQ(USERNAME, %QUOTE USERNAME) , SDL$STARLET_REQ(RETLEN, %QUOTE RETLEN) )) END %; ! SYS$SET_SESSION_ID - Create new POSIX session ! ! $SET_SESSION_ID sid ! ! sid - address of a longword written with the newly created Session ID. ! KEYWORDMACRO $SET_SESSION_ID (SID) = BEGIN EXTERNAL ROUTINE SYS$SET_SESSION_ID : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_SESSION_ID (SDL$STARLET_CONCAT( SDL$STARLET_REQ(SID, %QUOTE SID) )) END %; ! SYS$SET_PROCESS_GROUP - Create or change POSIX process group ! ! $SET_PROCESS_GROUP pid, pgid, retpgid ! ! pid - address of a PID that is the target of this call ! pgid - address of a longword Process Group ID (also a PID) to have target join ! retpgid - address of a longword written with PGID of a new group (also a PID) ! KEYWORDMACRO $SET_PROCESS_GROUP (PID,PGID,RETPGID) = BEGIN EXTERNAL ROUTINE SYS$SET_PROCESS_GROUP : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_PROCESS_GROUP (SDL$STARLET_CONCAT( SDL$STARLET_REQ(PID, %QUOTE PID) , SDL$STARLET_REQ(PGID, %QUOTE PGID) , SDL$STARLET_REQ(RETPGID, %QUOTE RETPGID) )) END %; ! SYS$SET_POSIX_IDS - Set POSIX UID and GID values ! ! $SET_POSIX_IDS itmlst, flags ! ! itlmst - address of an item list 3 of POSIX ID values to set ! flags - flags signed longword, by value ! KEYWORDMACRO $SET_POSIX_IDS (ITMLST,FLAGS) = BEGIN EXTERNAL ROUTINE SYS$SET_POSIX_IDS : BLISS ADDRESSING_MODE (GENERAL); SYS$SET_POSIX_IDS (SDL$STARLET_CONCAT( SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , SDL$STARLET_REQ(FLAGS, %QUOTE FLAGS) )) END %; ! SYS$LOG_SYSTEM_SERVICE - Log system service request ! ! $LOG_SYSTEM_SERVICE logtype, [bufseqnum], [logentry], [service_status], [service_ra], ! [arglist_add],[vector_index], [prev_mode] ! ! logtype - type of log entry, e.g., SSLOG$C_SS_ENTRY ! bufseqnum - address to store/fetch longword sequence number assoc. ! with log's buffer ! logentry - address to fetch/store 64-bit log buffer entry address ! service_status - completion status of service being logged ! service_ra - address corresponding to return address from call to ! service being logged ! arglist_add - address of VAX-style argument list to service being logged ! vector_index - position of system service vector in SYS$PUBLIC_VECTORS of ! service being logged ! prev_mode - mode from which service being logged was called KEYWORDMACRO $LOG_SYSTEM_SERVICE (LOGTYP,BUFSEQNUM,LOGENTRY,SERVICE_STATUS ,SERVICE_RA,ARGLIST_ADD,VECTOR_INDEX,PREV_MODE) = BEGIN EXTERNAL ROUTINE SYS$LOG_SYSTEM_SERVICE : BLISS ADDRESSING_MODE (GENERAL); SYS$LOG_SYSTEM_SERVICE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(LOGTYP, %QUOTE LOGTYP) , SDL$STARLET_OPT( BUFSEQNUM, LOGENTRY, SERVICE_STATUS, SERVICE_RA, ARGLIST_ADD, VECTOR_INDEX, PREV_MODE))) END %; ! ! $GETLMI ! $GETLMIW ! ! Get License Management Information ! ! $GETLMI efn, contxt, 0, itmlst, iosb, astadr, astprm ! $GETLMIW efn, contxt, 0, itmlst, iosb, astadr, astprm ! Inputs: ! efn - Event flag number. (optional, by value) ! contxt - Context block used for subsequent calls for wildcard license type. (optional by reference) ! reserved - String passed by descriptor. May be used for nodename in the future. (optional, by descriptor) ! itmlst - Item list containing information to fully describe the requested function. (required, by reference) ! iosb - I/O status block. (optional, by reference) ! astadr - AST routine to be delivered and executed in the caller's mode. (optional, by reference) ! astprm - AST parameter for the AST routine. (optional, by value) ! KEYWORDMACRO $GETLMI (EFN=0,CONTXT=0,RESERVED=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETLMI : BLISS ADDRESSING_MODE (GENERAL); SYS$GETLMI (SDL$STARLET_CONCAT( EFN, CONTXT, RESERVED, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $GETLMIW (EFN=0,CONTXT=0,RESERVED=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$GETLMIW : BLISS ADDRESSING_MODE (GENERAL); SYS$GETLMIW (SDL$STARLET_CONCAT( EFN, CONTXT, RESERVED, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! ! $SETLMI ! $SETLMIW ! ! Set License Management Information ! ! $SETLMI efn, contxt, 0, itmlst, iosb, astadr, astprm ! $SETLMIW efn, contxt, 0, itmlst, iosb, astadr, astprm ! Inputs: ! efn - Event flag number. (optional, by value) ! contxt - Context block used for subsequent calls for wildcard license type. (optional by reference) ! reserved - String passed by descriptor. May be used for nodename in the future. (optional, by descriptor) ! itmlst - Item list containing information to fully describe the requested function. (required, by reference) ! iosb - I/O status block. (optional, by reference) ! astadr - AST routine to be delivered and executed in the caller's mode. (optional, by reference) ! astprm - AST parameter for the AST routine. (optional, by value) ! KEYWORDMACRO $SETLMI (EFN=0,CONTXT=0,RESERVED=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SETLMI : BLISS ADDRESSING_MODE (GENERAL); SYS$SETLMI (SDL$STARLET_CONCAT( EFN, CONTXT, RESERVED, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; KEYWORDMACRO $SETLMIW (EFN=0,CONTXT=0,RESERVED=0,ITMLST,IOSB=0 ,ASTADR=0,ASTPRM=0) = BEGIN EXTERNAL ROUTINE SYS$SETLMIW : BLISS ADDRESSING_MODE (GENERAL); SYS$SETLMIW (SDL$STARLET_CONCAT( EFN, CONTXT, RESERVED, SDL$STARLET_REQ(ITMLST, %QUOTE ITMLST) , IOSB, ASTADR, ASTPRM)) END %; ! ! $IEEE_SET_ROUNDING_MODE ! $IEEE_SET_PRECISION_MODE ! ! Set and retrieve the IEEE rounding/precision mode for the current kernel thread ! ! $IEEE_SET_ROUNDING_MODE( value, prev_value ) ! ! value = A longword constant specifying the rounding mode for the thread ! prev_value = The address of a longword which will receive the ! previous rounding mode ! KEYWORDMACRO $IEEE_SET_ROUNDING_MODE (VALUE,PREV_VALUE) = BEGIN EXTERNAL ROUTINE SYS$IEEE_SET_ROUNDING_MODE : BLISS ADDRESSING_MODE (GENERAL); SYS$IEEE_SET_ROUNDING_MODE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(VALUE, %QUOTE VALUE) , SDL$STARLET_REQ(PREV_VALUE, %QUOTE PREV_VALUE) )) END %; KEYWORDMACRO $IEEE_SET_PRECISION_MODE (VALUE,PREV_VALUE) = BEGIN EXTERNAL ROUTINE SYS$IEEE_SET_PRECISION_MODE : BLISS ADDRESSING_MODE (GENERAL); SYS$IEEE_SET_PRECISION_MODE (SDL$STARLET_CONCAT( SDL$STARLET_REQ(VALUE, %QUOTE VALUE) , SDL$STARLET_REQ(PREV_VALUE, %QUOTE PREV_VALUE) )) END %; ! $DEBUG_BREAK ! ! Manipulate hardware debug resources ! ! $DEBUG_BREAK func, handle, addr, addr_mask, mode_mask, access_mask ! ! func = what function to perform ! ! handle = address of handle ! ! addr = address to be debugged ! ! addr_mask = which bits in the address are significant ! ! mode_mask = which mode(s) are to generate an exception ! ! access_mask = are we monitoring reads or writes? KEYWORDMACRO $DEBUG_BREAK (FUNC=0,HANDLE=0,ADDR=0,ADDR_MASK=0 ,MODE_MASK=0,ACCESS_MASK=0) = BEGIN EXTERNAL ROUTINE SYS$DEBUG_BREAK : BLISS ADDRESSING_MODE (GENERAL); SYS$DEBUG_BREAK (SDL$STARLET_CONCAT( FUNC, HANDLE, ADDR, ADDR_MASK, MODE_MASK, ACCESS_MASK)) END %; ! $POWER_CONTROL ! ! Manipulate the platform's power and performance settings ! ! $DEBUG_BREAK power_setting, current_value ! ! power_setting = a quadword value to specify the new power/performance setting ! ! current_value = the address of a quadword for the service to return the current ! setting (optional) KEYWORDMACRO $POWER_CONTROL (POWER_SETTING,CURRENT_VALUE) = BEGIN EXTERNAL ROUTINE SYS$POWER_CONTROL : BLISS ADDRESSING_MODE (GENERAL); SYS$POWER_CONTROL (SDL$STARLET_CONCAT( SDL$STARLET_REQ(POWER_SETTING, %QUOTE POWER_SETTING) , SDL$STARLET_OPT( CURRENT_VALUE))) END %; ! ! ---- < End of module STARLET.R32 - 12-AUG-2010 13:57:02.22 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:18 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:18 $1$DGA7361:[STARLET.OBJ]ACMEMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $ACMEMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:18.71 ! ! ! ************************************************************************* ! * * ! * COPYRIGHT 2000, 2001 COMPAQ COMPUTER CORPORATION * ! * * ! * COMPAQ REGISTERED IN U.S. PATENT AND TRADEMARK OFFICE. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM COMPAQ OR * ! * AUTHORIZED SUBLICENSOR REQUIRED FOR POSSESSION, USE OR COPYING. * ! * CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE, * ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL * ! * ITEMS ARE LICENSED TO THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD * ! * COMMERCIAL LICENSE. * ! * * ! * COMPAQ SHALL NOT BE LIABLE FOR TECHNICAL OR EDITORIAL ERRORS OR * ! * OMISSIONS CONTAINED HEREIN. THE INFORMATION IN THIS DOCUMENT IS * ! * SUBJECT TO CHANGE WITHOUT NOTICE. * ! * * ! ************************************************************************* ! ! ++ ! ! FACILITY: ! ! STARLET ! ! ABSTRACT: ! ! THIS MODULE DEFINES THE MESSAGE CODES USED BY THE $AUTHENTICATE[W], ! $LOGON[W], $SET_PASSWORD[W] AND $ACM[W] SYSTEM SERVICES. ! ! ENVIRONMENT: ! ! VMS PROTECTED SHAREABLE IMAGE ($AUTHENTICATE[W], $LOGON[W], ! $SET_PASSWORD[W]) ! VMS EXECUTIVE ($ACM[W] SERVICE) ! VMS AUTHENTICIATION SERVER ($ACM[W] SERVICE) ! ! AUTHOR: ! ! RICHARD J. BARRY DECEMBER 15, 1995 ! ! ! NOTE: ! THIS MODULE IS COMMON BETWEEN ALPHA AND VAX. ! ! MODIFICATIONS: ! ! X-20 DOUGLAS FYFE 22-MAY-2003 ! ADD DIALOGUELM ERROR CODE. ! ! X-19 RICHARD J. BARRY 14-NOV-2001 ! TWEEK THE ACME$_FAILURE MESSAGE DESCRIPTION ONE LAST ! TIME TO COMMUNICATE THE FACT THAT ACME SERVER LOGGING ! MAY NEED TO BE ENABLED. ! ! X-18 DOUGLAS FYFE 5-OCT-2001 ! X-17 ADD ERROR CODES FOR CONFIGURATION/RESTART FILE ! OPEN FAILURES. FIX CUT-N-PASTE ERROR. ! ! X-16 RJB0129 RICHARD J. BARRY 6-AUG-2001 ! CORRECT MESSAGE DESCRIPTION TYPOS. ! ! X-15 LJK0204 LAWRENCE J. KILGALLEN 4-JAN-2001 ! CHANGE FAILURE TEXT TO MENTION ACME$SERVER LOG FILE. ! ! X-14 LJK0182 LAWRENCE J. KILGALLEN 31-AUG-2000 ! ADD BADSTRUCTLEN. ! ADD CONTACTSYSMGR, PER PTR 75-43-211. ! ! X-13 AJM00701 ANDREW J. MOSKAL 24-JUL-2000 ! ADD NOAGENTINIT. ! ! X-12 AJM00602 ANDREW J. MOSKAL 21-JUN-2000 ! ADD WASCLR, WASSET AND LOCKED ALTERNATIVE SUCCESS. ! ADD INVITMSEQ AND NOACMECTX. ! ADD NOTOUTITEM. ! ADD AGENTLOADFAIL. ! UPDATE COPYRIGHT NOTICE PER MANAGEMENT DIRECTIVES. ! ! X-11 AJM63405 ANDREW J. MOSKAL 13-APR-1999 ! ADD INCOMPATSTATE. ! ! X-10 AJM62A07 ANDREW J. MOSKAL 29-OCT-1998 ! ADD BUSY. ! ! X-9 AJM62602 ANDREW J. MOSKAL 23-JUN-1998 ! MOVE ERROPNLOGFIL, RENAME TO ERROPENLOGFIL. ! ADD ERRCLOSELOGFIL AND ERRWRITELOGFIL. ! ADD SERVERSTART AND SERVEREXIT. ! CORRECT TYPO: DOIUNAVAILBLE ==> DOIUNAVAILBLE. ! ! X-8 AJM62307 ANDREW J. MOSKAL 16-MAR-1998 ! REINSTATE PERFORMDIALOGUE. ! ! X-7 AJM62301 ANDREW J. MOSKAL 11-MAR-1998 ! MOVE TRACE MESSAGES TO [ACMESRV]ACMESRVMSG.MSG. ! ! X-6 AJM62202 ANDREW J. MOSKAL 12-FEB-1998 ! ADD GENERAL FAILURE STATUS MESSAGE. ! ! X-5 AJM62120 ANDREW J. MOSKAL 23-JAN-1998 ! ADD SET SERVER (DCL INTERFACE) RELATED MESSAGES. ! FIX FAO DIRECTIVES: ! - !XQ SHOULD BE !@XQ (INDIRECT REFERENCES) ! - %UL SHOULD BE !UL. ! REVISE AUTHDOWN TEXT. ! ! X-4 AJM62103 ANDREW J. MOSKAL 8-JAN-1998 ! INCORPORATE $ACM[W] RELATED MESSAGE. ! (LEFT PRE-$ACM MESSAGES INTACT TO ALLOW FOR THE CONTINUED ! BUILDING OF PREVIOUS SUPPORT. MAY REVISIT PRIOR TO SSB.) ! ! X-3 JACH0036 JEREMY A. C. HITT 5-AUG-1996 ! ADDED MESSAGES FOR ACME MODULES. ! ! X-2 JACH0014 JEREMY A. C. HITT 4-MAR-1996 ! INITIAL VERSION MERGED FROM ACME STREAM. ! -- literal ACME$_FACILITY = 1866; ! ++ ! ! ADD NEW MESSAGE CODES AT THE END OF THE APPROPRIATE LIST. ! ! ASSIGNED RANGES: ! ! 0 - 99 SUCCESS ( 100 MESSAGES) ! 100 - 199 INFORMATIONAL ( 100 MESSAGES) ! 200 - 1199 WARNING (1000 MESSAGES) ! 1200 - 2199 ERROR (1000 MESSAGES) ! 2200 - 2559 FATAL ( 360 MESSAGES) ! ! 2560 - 3071 AUTHENTICATION SERVER EXECUTION CONTROL. ! 3072 - 4095 AUTHENTICATION SERVER EXECUTION CONTROL AND TRACING. ! (MESSAGES ARE DEFINED BY [ACMESRV]ACMESRVMSG.MSG) ! ! -- literal ACME$_NORMAL = 122322945; literal ACME$_WASCLR = 122322953; literal ACME$_WASSET = 122322961; literal ACME$_LOCKED = 122322969; literal ACME$_CONTINUE = 122322945; literal ACME$_PWDSYNCH = 122323747; literal ACME$_PWDNOSYNCH = 122323755; literal ACME$_LOCLOGIN = 122323763; ! ! $ACM MESSAGES ! literal ACME$_BUFFEROVF = 122323771; literal ACME$_SERVERSTART = 122323779; literal ACME$_SERVEREXIT = 122323787; ! ! $ACM MESSAGES ! literal ACME$_OPINCOMPL = 122324544; literal ACME$_NOSUCHUSERID = 122332546; literal ACME$_PWDWRONG = 122332554; literal ACME$_ACCEXPIRED = 122332562; literal ACME$_PWDEXPIRED = 122332570; literal ACME$_INVALIDTIME = 122332578; literal ACME$_UNSPECIFIED = 122332586; literal ACME$_PWDINHISTORY = 122332594; literal ACME$_PWDINDICT = 122332602; literal ACME$_PWDTOOSHORT = 122332610; literal ACME$_PWDTOOLONG = 122332618; literal ACME$_PWDINVCHAR = 122332626; literal ACME$_PWDTOOEASY = 122332634; literal ACME$_PWDINVALID = 122332642; literal ACME$_PWDCANTCHANGE = 122332650; literal ACME$_NOLOCAUTH = 122332658; literal ACME$_USERIDRQRD = 122332666; literal ACME$_PWDRQRD = 122332674; literal ACME$_INSUFITM = 122332682; ! ! $ACM MESSAGES ! literal ACME$_AUTHFAILURE = 122332690; literal ACME$_ACCOUNTLOCK = 122332698; literal ACME$_NOSUCHUSER = 122332706; literal ACME$_INVALIDPWD = 122332714; literal ACME$_INVNEWPWD = 122332722; literal ACME$_PWDNOTCHG = 122332730; literal ACME$_INVMAPPING = 122332738; literal ACME$_MAPCONFLICT = 122332746; literal ACME$_NOTAUTHORIZED = 122332754; literal ACME$_NOEXTAUTH = 122332762; literal ACME$_INTRUDER = 122332770; literal ACME$_INVPERSONA = 122332778; literal ACME$_NOTARGETCRED = 122332786; literal ACME$_NOCREDENTIALS = 122332794; literal ACME$_INSFDIALSUPPORT = 122332802; literal ACME$_INVALIDCTX = 122332810; literal ACME$_INVREQUEST = 122332818; literal ACME$_INVALIDTLV = 122332826; literal ACME$_NOPRIV = 122332834; literal ACME$_DOIUNAVAILABLE = 122332842; literal ACME$_NOSUCHDOI = 122332850; literal ACME$_TIMEOUT = 122332858; literal ACME$_UNSUPPORTED = 122332866; ! ! THIS MESSAGE IS SENT TO THE SYSTEM MANAGER WHEN DETAILS ARE IN THE LOG FILE ! literal ACME$_FAILURE = 122332874; literal ACME$_ERROPENLOGFIL = 122332882; literal ACME$_ERRCLOSELOGFIL = 122332890; literal ACME$_ERRWRITELOGFIL = 122332898; literal ACME$_INVITMSEQ = 122332906; literal ACME$_NOACMECTX = 122332914; ! ! THIS MESSAGE IS SENT TO THE END USER WHEN DETAILS ARE IN THE LOG FILE ! literal ACME$_CONTACTSYSMGR = 122332922; ! ! ERROR MESSAGES TO REPORT FAILURES OPENING AUTO-RESTART FILES ! literal ACME$_ERROPENRESTARTFIL = 122332930; literal ACME$_ERROPENCONFIGSFIL = 122332938; literal ACME$_DIALOGUELM = 122332946; ! ! CONTROL (DCL) INTERFACE RELATED MESSAGES ! literal ACME$_ACTIVE = 122338946; literal ACME$_INACTIVE = 122338954; literal ACME$_NOTSTARTED = 122338962; ! literal ACME$_AGENTDBFULL = 122338970; literal ACME$_DUPACME = 122338978; literal ACME$_BUSY = 122338986; literal ACME$_INCOMPATSTATE = 122338994; literal ACME$_AGENTLOADFAIL = 122339002; literal ACME$_NOAGENTINIT = 122339010; literal ACME$_AUTHDOWN = 122340548; literal ACME$_INCONSTATE = 122340556; ! ++ ! ! MESSAGE CODES 2560 THROUGH 4095 ARE RESERVED FOR INTERNAL (NOT VISIBLE ! AT THE $ACM[W] SERVICE INTERFACE) USE WITHIN THE AUTHENTICATION SERVER. ! ! ASSIGNED RANGES: ! ! 2560 - 3071 EXECUTION CONTROL ! (DEFINED HEREIN) ! 3072 - 4095 EXECUTION CONTROL AND TRACE MESSAGES ! (DEFINED BY [ACMESRV]ACMESRVMSG.MSG) ! ! -- literal ACME$_PERFORMDIALOGUE = 122344448; literal ACME$_PERFORMPHASE = 122344456; literal ACME$_RETRYPWD = 122344464; literal ACME$_WAITAST = 122344472; literal ACME$_WAITRESOURCE = 122344480; literal ACME$_ASTCTXNOTFND = 122345474; literal ACME$_BUFTOOSMALL = 122345482; literal ACME$_DIALOGFULL = 122345490; literal ACME$_DUPCREDTYP = 122345498; literal ACME$_INVCREDTYP = 122345506; literal ACME$_INVFLAG = 122345514; literal ACME$_INVPARAMETER = 122345522; literal ACME$_NOMSGFND = 122345530; literal ACME$_NULLVALUE = 122345538; literal ACME$_RESOURCENOTAVAIL = 122345546; literal ACME$_UNSUPREVLVL = 122345554; literal ACME$_NOTOUTITEM = 122345562; literal ACME$_BADSTRUCTLEN = 122345570; ! FATAL literal ACME$_THREADERROR = 122346500; ! ! ---- < End of module ACMEMSG.R32 - 12-AUG-2010 13:57:02.30 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:33 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:33 $1$DGA7361:[STARLET.OBJ]AUDSRVMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $AUDSRVDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:33.16 ! ! **************************************************************************** ! * * ! * COPYRIGHT (C) 1986 BY * ! * DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * ! * ALL RIGHTS RESERVED. * ! * * ! * THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * ! * ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * ! * INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * ! * COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * ! * OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * ! * TRANSFERRED. * ! * * ! * THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * ! * AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * ! * CORPORATION. * ! * * ! * DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * ! * SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * ! * * ! * * ! **************************************************************************** ! ++ ! ! FACILITY: SECURITY AUDITING ! ! ABSTRACT: ! ! THIS MODULE DEFINES THE MESSAGES USED BY THE AUDIT SERVER PROCESS. ! ! ENVIRONMENT: ! ! VAX/VMS OPERATING SYSTEM, PRIVILEGED USER MODE UTILITIES. ! ! -- ! ! ! AUTHOR: L. MARK PILANT CREATION DATE: 21-AUG-1986 10:00 ! ! MODIFIED BY: ! ! X-4 PEM0129 PAUL MOSTEIKA 25-JUL-2007 ! ADD THREE FATAL ERROR MESSAGES FOR /NEW JOURNAL FILE ERROR ! CONDITION HANDLING. THERE WERE MODIFICATIONS TO JOURNAL AND ! DOORBELL MODULES TO HANDLE THESE ERRORS. ! ! X-3 JAH0168 JOHN A HARNEY 15-NOV-1994 ! DRAGON-FT QAR #597: ! REMOVE REFERENCE TO SPR. ! ! X-2 JAH0149 JOHN A HARNEY 23-MAY-1994 ! EVMS-ZETA QAR #748: ! FIX SPELLING OF "consistency" IN THE INCONSTATE MESSAGE. ! ! X-1 RAB RICHARD A. BISHOP 9-JUN-1993 ! MOVED TO STARLET FACILITY ON ALPHA VMS MASTERPACK ! ! OLD AUDIT TRAIL FOLLOWS..... ! ! X-7 DDP1434 DERRELL D. PIPER 17-FEB-1993 19:05 ! REMOVE CONTRACTIONS AND USE %S DIRECTIVE IN NEW MESSAGES. ! ! X-6 SAD0247 STUART A. DAVIDSON 15-DEC-1992 ! ADD MESSAGE TO REPORT POTENTIAL LOSS OF AUDITING. ! ! X-5 SAD0203 STUART A. DAVIDSON 1-DEC-1992 ! MERGE NEW STATUS CODES: ! REUSE_BUFFER ! REQUEUE ! JNLRECNAC ! DB_NAC ! ODB_NAC ! JNLPUTFAIL ! ! X-4 CRB0152 COLIN R. BLAKE 18-DEC-1991 10:52:38.71 ! THIS IS THE C2 VERSION BEING INSERTED INTO MAINLINE. ! ! T-3T3 JRC1024 JOHN R. COVERT 21-SEP-1991 ! ADD MESSAGE FOR INVALID FLOW CONTROL PARAMETER ! ! T-2 SAD0129 STUART A. DAVIDSON 20-AUG-1991 ! ADD MESSAGES OF CLUSTER OBJECT SERVICE. ! ! T-1 DDP0876 DERRELL D. PIPER 13-APR-1991 13:20 ! CHANGE TEXT OF NOACTION MESSAGE TO BE MORE DESCRIPTIVE OF ! WHAT THE PROBLEM REALLY IS: NO ALARM OR AUDIT NAME GIVEN. ! ! X-11U1 DDP DERRELL D. PIPER 29-NOV-1989 18:18 ! MOVE THE NEW V5.3=1 MESSAGES TO THE END OF THE FILE AND ! CREATE BASED SECTIONS FOR ALL NEW MESSAGES. ! ! X-11 DDP DERRELL D. PIPER 29-NOV-1989 18:18 ! ADD AUDSRV$_SYSJNLRES. ! ! X-10 DDP0582 DERRELL D. PIPER 28-NOV-1989 01:46 ! ADD AUDSRV$_FATINITERR. ! ! X-9 DDP DERRELL D. PIPER 16-MAR-1989 15:34 ! ADD AUDSRV$_SYSJNLNAC. ! ! X-8 DDP DERRELL D. PIPER 26-JAN-1989 11:33 ! ADD AUDSRV$_SNDOPRERR. ! ! X-7 DDP DERRELL D. PIPER 18-NOV-1988 12:51 ! ADD AUDSRV$_LOCKED FOR SERVER LOCK FUNCTION AND ! AUDSRV$_SYSJNLFUL FOR SYSTEM JOURNAL DEVICE FULL. ! ! X-6 DDP DERRELL D. PIPER 10-NOV-1988 ! ADD AUDSRV$_RESUMEWARN AND CHANGE THE TEXT OF RESWARNING. ! ! X-5 DDP DERRELL D. PIPER 26-SEP-1988 17:36 ! ADD MESSAGES FOR SERVER MESSAGE VALIDATION FAILURE. ! ! X-4 LMP0490 L. MARK PILANT, 19-SEP-1988 20:23 ! ADD MESSAGE TO INDICATE A SHORT DISPLAY. ! ! X-3 DDP DERRELL D. PIPER, 9-AUG-1988 11:41 ! ADD A MULTITUDE OF MESSAGES FOR RESOURCE EXHAUSTION. ! ! X-1S3 LMP0477 L. MARK PILANT, 18-FEB-1988 13:43 ! BRING UP TO BASELEVEL 3. ! ! X-1S2 LMP0462 L. MARK PILANT, 22-JUL-1987 11:12 ! ADD MESSAGE FOR $BRKTHRU FAILURE. ! ! X-1S1 LMP0457 L. MARK PILANT, 19-JUN-1987 14:33 ! ADD MUCH CODE TO BRING UP TO BASELEVEL 2. ! ! ** literal AUDSRV$_FACILITY = 48; literal AUDSRV$_INCONSTATE = 3178508; literal AUDSRV$_RESCRASH = 3178516; literal AUDSRV$_RESTART = 3178524; literal AUDSRV$_BADSTATE = 3178530; literal AUDSRV$_BADAUDFLG = 3178538; literal AUDSRV$_NORESTART = 3178546; literal AUDSRV$_MSGQUEEMPTY = 3178554; literal AUDSRV$_SYSJNLFULL = 3178562; literal AUDSRV$_BADARCDSB = 3178568; literal AUDSRV$_BADARCENB = 3178576; literal AUDSRV$_BADCTLMSG = 3178584; literal AUDSRV$_BADJOURNAL = 3178592; literal AUDSRV$_BADMSGSIZE = 3178600; literal AUDSRV$_FORMATERR = 3178608; literal AUDSRV$_NOACTION = 3178616; literal AUDSRV$_NOARCDEV = 3178624; literal AUDSRV$_NOARCDEVENB = 3178632; literal AUDSRV$_PKTCNTBAD = 3178640; literal AUDSRV$_PKTCNTZERO = 3178648; literal AUDSRV$_NOSELECT = 3178656; literal AUDSRV$_BRKTHRUERR = 3178664; literal AUDSRV$_BADRECORD = 3178672; literal AUDSRV$_BADPACKET = 3178680; literal AUDSRV$_DUPPACKET = 3178688; literal AUDSRV$_BADCOUNT = 3178696; literal AUDSRV$_SUSPEND = 3178704; literal AUDSRV$_RESWARNING = 3178712; literal AUDSRV$_RESCRITICAL = 3178720; literal AUDSRV$_RESDISMISS = 3178728; literal AUDSRV$_RESUMEWARN = 3178736; literal AUDSRV$_RESUMEFAIL = 3178744; literal AUDSRV$_OLDPURGE = 3178752; literal AUDSRV$_NEWIGNORE = 3178760; literal AUDSRV$_RESNOTDISK = 3178768; literal AUDSRV$_REMARCNAVL = 3178776; literal AUDSRV$_REMARCFAIL = 3178784; literal AUDSRV$_REMARCSTS = 3178792; literal AUDSRV$_INVRESMODE = 3178800; literal AUDSRV$_INVTHRESH = 3178808; literal AUDSRV$_INVFNLMODE = 3178816; literal AUDSRV$_PEXFULL = 3178824; literal AUDSRV$_LISTENFAIL = 3178832; literal AUDSRV$_DISPLAY_SHORT = 3178840; literal AUDSRV$_NOTDELTA = 3178848; literal AUDSRV$_JNLADDFAIL = 3178856; literal AUDSRV$_JNLREMFAIL = 3178864; literal AUDSRV$_REMNOTENAB = 3178872; literal AUDSRV$_JNLNOTACTIVE = 3178880; literal AUDSRV$_LISTENNOTMBX = 3178888; literal AUDSRV$_ARCOPENFAIL = 3178896; literal AUDSRV$_ARCNOTDISK = 3178904; literal AUDSRV$_REQPKTINV = 3178912; literal AUDSRV$_LOCKED = 3178920; literal AUDSRV$_SNDOPRERR = 3178928; literal AUDSRV$_SYSJNLNAC = 3178936; literal AUDSRV$_SERVEREXIT = 3178947; literal AUDSRV$_ARCHIVENEW = 3178955; literal AUDSRV$_ARCHIVEMOVE = 3178963; literal AUDSRV$_ARCHIVEDSB = 3178971; literal AUDSRV$_RESINFO = 3178979; literal AUDSRV$_IGNORED = 3178987; literal AUDSRV$_NEW_FILE = 3178995; literal AUDSRV$_REMARCEST = 3179003; literal AUDSRV$_NEWSERVERDB = 3179011; literal AUDSRV$_OBSSERVERDB = 3179019; literal AUDSRV$_NOOPCOM = 3179027; literal AUDSRV$_REMENABLED = 3179035; literal AUDSRV$_REMDISABLED = 3179043; literal AUDSRV$_LISTENENAB = 3179051; literal AUDSRV$_LISTENDSB = 3179059; literal AUDSRV$_SERVERLOCKED = 3179067; literal AUDSRV$_RESUME = 3179073; literal AUDSRV$_RESOKAY = 3179081; ! ! ADD ALL NEW MESSAGES TO THE APPROPRIATE SECTION BELOW. ! literal AUDSRV$_NEWOBJECTDB = 3180099; literal AUDSRV$_REUSE_BUFFER = 3180107; literal AUDSRV$_REQUEUE = 3180115; literal AUDSRV$_AUDIT_BACKLOG = 3180123; literal AUDSRV$_BADUNIPKT = 3181696; literal AUDSRV$_BADOBJREQ = 3181704; literal AUDSRV$_BADORBTLV = 3181712; literal AUDSRV$_ORBDISSEQFAIL = 3181720; literal AUDSRV$_BADFLOWVAL = 3181728; literal AUDSRV$_SYSJNLRES = 3183298; literal AUDSRV$_FATINITERR = 3183306; literal AUDSRV$_JNLRECNAC = 3183314; literal AUDSRV$_DB_NAC = 3183322; literal AUDSRV$_ODB_NAC = 3183330; literal AUDSRV$_JNLPUTFAIL = 3183338; literal AUDSRV$_JNLMAXVER = 3184900; literal AUDSRV$_JNLCREMAX = 3184908; literal AUDSRV$_JNLACCMAX = 3184916; ! ! ---- < End of module AUDSRVMSG.R32 - 12-AUG-2010 13:57:02.38 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:20 by OpenVMS SDL EV3-3 ! Source: 30-MAR-1998 16:30:06 $1$DGA7361:[STARLET.SRC]CONVDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $CONVDEF IDENT X-4 *** literal CONV$M_SIGNAL = %X'1'; literal CONV$M_FDL_STRING = %X'2'; literal CONV$S_CONVDEF = 2; macro CONV$V_SIGNAL = 0,0,1,0 %; macro CONV$V_FDL_STRING = 0,1,1,0 %; literal CONV$K_OPTIONS_COUNT = 0; literal CONV$K_CREATE = 1; literal CONV$K_SHARE = 2; literal CONV$K_FAST = 3; literal CONV$K_MERGE = 4; literal CONV$K_APPEND = 5; literal CONV$K_SORT = 6; literal CONV$K_WORK_FILES = 7; literal CONV$K_KEY = 8; literal CONV$K_PAD = 9; literal CONV$K_PAD_CHARACTER = 10; literal CONV$K_TRUNCATE = 11; literal CONV$K_EXIT = 12; literal CONV$K_FIXED_CONTROL = 13; literal CONV$K_FILL_BUCKETS = 14; literal CONV$K_READ_CHECK = 15; literal CONV$K_WRITE_CHECK = 16; literal CONV$K_FDL = 17; literal CONV$K_EXCEPTION = 18; literal CONV$K_PROLOGUE = 19; literal CONV$K_IGNORE_PROLOGUE = 20; literal CONV$K_SECONDARY = 21; literal CONV$K_MAX_OPTIONS = 21; literal CONV$C_MAX_OPTIONS = 21; literal CONV$S_OPTIONS = 88; literal CONV$S_CONV$OPTIONS = 88; macro CONV$L_OPTIONS_COUNT = 0,0,32,0 %; macro CONV$L_CREATE = 4,0,32,0 %; macro CONV$L_SHARE = 8,0,32,0 %; macro CONV$L_FAST = 12,0,32,0 %; macro CONV$L_MERGE = 16,0,32,0 %; macro CONV$L_APPEND = 20,0,32,0 %; macro CONV$L_SORT = 24,0,32,0 %; macro CONV$L_WORK_FILES = 28,0,32,0 %; macro CONV$L_KEY = 32,0,32,0 %; macro CONV$L_PAD = 36,0,32,0 %; macro CONV$L_PAD_CHARACTER = 40,0,32,0 %; macro CONV$L_TRUNCATE = 44,0,32,0 %; macro CONV$L_EXIT = 48,0,32,0 %; macro CONV$L_FIXED_CONTROL = 52,0,32,0 %; macro CONV$L_FILL_BUCKETS = 56,0,32,0 %; macro CONV$L_READ_CHECK = 60,0,32,0 %; macro CONV$L_WRITE_CHECK = 64,0,32,0 %; macro CONV$L_FDL = 68,0,32,0 %; macro CONV$L_EXCEPTION = 72,0,32,0 %; macro CONV$L_PROLOGUE = 76,0,32,0 %; macro CONV$L_IGNORE_PROLOGUE = 80,0,32,0 %; macro CONV$L_SECONDARY = 84,0,32,0 %; literal CONV$K_STATISTICS_COUNT = 0; literal CONV$K_FILE_COUNT = 1; literal CONV$K_RECORD_COUNT = 2; literal CONV$K_EXCEPT_COUNT = 3; literal CONV$K_VALID_COUNT = 4; literal CONV$K_MAX_STATISTICS = 4; literal CONV$C_MAX_STATISTICS = 4; literal CONV$S_STATISTICS = 20; literal CONV$K_KEY_NUMBER = 5; literal CONV$K_REC_OUT = 6; literal CONV$K_NODES = 7; literal CONV$K_WRK_ALQ = 8; literal CONV$K_INI_RUNS = 9; literal CONV$K_MRG_ORDER = 10; literal CONV$K_MRG_PASSES = 11; literal CONV$K_SORT_DIO_COUNT = 12; literal CONV$K_SORT_BIO_COUNT = 13; literal CONV$K_SORT_ELAPSED_TIME = 14; literal CONV$K_SORT_CPU_TIME = 16; literal CONV$K_SORT_PF_COUNT = 18; literal CONV$K_LOAD_DIO_COUNT = 19; literal CONV$K_LOAD_BIO_COUNT = 20; literal CONV$K_LOAD_ELAPSED_TIME = 21; literal CONV$K_LOAD_CPU_TIME = 23; literal CONV$K_LOAD_PF_COUNT = 25; literal CONV$K_EXT_STATISTICS = 25; literal CONV$C_EXT_STATISTICS = 25; literal CONV$S_EXT_STATISTICS = 104; literal CONV$S_CONV$STATISTICS = 104; macro CONV$L_STATISTICS_COUNT = 0,0,32,0 %; macro CONV$L_FILE_COUNT = 4,0,32,0 %; macro CONV$L_RECORD_COUNT = 8,0,32,0 %; macro CONV$L_EXCEPT_COUNT = 12,0,32,0 %; macro CONV$L_VALID_COUNT = 16,0,32,0 %; macro CONV$L_KEY_NUMBER = 20,0,32,0 %; macro CONV$L_REC_OUT = 24,0,32,0 %; macro CONV$L_NODES = 28,0,32,0 %; macro CONV$L_WRK_ALQ = 32,0,32,0 %; macro CONV$L_INI_RUNS = 36,0,32,0 %; macro CONV$L_MRG_ORDER = 40,0,32,0 %; macro CONV$L_MRG_PASSES = 44,0,32,0 %; macro CONV$L_SORT_DIO_COUNT = 48,0,32,0 %; macro CONV$L_SORT_BIO_COUNT = 52,0,32,0 %; macro CONV$Q_SORT_ELAPSED_TIME = 56,0,0,0 %; literal CONV$S_SORT_ELAPSED_TIME = 8; macro CONV$Q_SORT_CPU_TIME = 64,0,0,0 %; literal CONV$S_SORT_CPU_TIME = 8; macro CONV$L_SORT_PF_COUNT = 72,0,32,0 %; macro CONV$L_LOAD_DIO_COUNT = 76,0,32,0 %; macro CONV$L_LOAD_BIO_COUNT = 80,0,32,0 %; macro CONV$Q_LOAD_ELAPSED_TIME = 84,0,0,0 %; literal CONV$S_LOAD_ELAPSED_TIME = 8; macro CONV$Q_LOAD_CPU_TIME = 92,0,0,0 %; literal CONV$S_LOAD_CPU_TIME = 8; macro CONV$L_LOAD_PF_COUNT = 100,0,32,0 %; literal RECL$K_STATISTICS_COUNT = 0; literal RECL$K_SCAN_COUNT = 1; literal RECL$K_DATA_COUNT = 2; literal RECL$K_INDEX_COUNT = 3; literal RECL$K_TOTAL_COUNT = 4; literal RECL$K_MAX_STATISTICS = 4; literal RECL$C_MAX_STATISTICS = 4; literal RECL$S_STATISTICS = 20; literal RECL$S_RECL$STATISTICS = 20; macro RECL$L_STATISTICS_COUNT = 0,0,32,0 %; macro RECL$L_SCAN_COUNT = 4,0,32,0 %; macro RECL$L_DATA_COUNT = 8,0,32,0 %; macro RECL$L_INDEX_COUNT = 12,0,32,0 %; macro RECL$L_TOTAL_COUNT = 16,0,32,0 %; ! ! ---- < End of module CONVDEF.R32 - 12-AUG-2010 13:57:02.47 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:21 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:21 $1$DGA7361:[STARLET.SRC]CONVMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $CONVMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:21.24 ! ! ************************************************************************* ! * * ! * COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION, 1978, 1980, 1982, 1984, * ! * 1991,1992 * ! * ALL RIGHTS RESERVED. * ! * UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED * ! * STATES. * ! * * ! * THE SOFTWARE CONTAINED ON THIS MEDIA IS PROPRIETARY TO AND EMBODIES * ! * THE CONFIDENTIAL TECHNOLOGY OF DIGITAL EQUIPMENT CORPORATION. * ! * POSSESSION, USE, DUPLICATION OR DISSEMINATION OF THE SOFTWARE AND * ! * MEDIA IS AUTHORIZED ONLY PURSUANT TO A VALID WRITTEN LICENSE FROM * ! * DIGITAL EQUIPMENT CORPORATION. * ! * * ! * RESTRICTED RIGHTS LEGEND USE, DUPLICATION, OR DISCLOSURE BY THE U.S. * ! * GOVERNMENT IS SUBJECT TO RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH * ! * (C)(1)(II) OF DFARS 252.227-7013, OR IN FAR 52.227-19, AS APPLICABLE. * ! * * ! ************************************************************************* ! ! ++ ! ! FACILITY: VAX-11 CONVERT ! ! ENVIRONMENT: ! ! VAX/VMS OPERATING SYSTEM ! ! ABSTRACT: ! CONVERT AND CONVERT/RECLAIM ERROR MESSAGES ! ! ! AUTHOR: KEITH B THOMPSON CREATION DATE: AUGUST-1980 ! ! ! MODIFIED BY: ! ! X-4 BP026 BOB PREMOVICH 29-MAY-1998 ! CREATE LITERAL MESSAGE VALUES FOR THE MESSAGES THAT ! WERE UTILIZING THE $SHR_MSGDEF MACRO. THIS IS TO ! FACILITATE THE MOVE OF THE MESSAGES TO THE STARLET ! FACILITY. ! ! X-3 CW002 CHRIS WHITAKER 26-AUG-1992 ! MERGE IN AMBER CHANGES. ! ! X-2 SBL1003 STEVEN B. LIONEL 13-DEC-1991 ! SET MACRO NAME TO $CONVMSGDEF ! ! X-2 RMM0004 RICHARD M. MARSHALL 9-AUG-1991 ! PORTED TO ALPHA. CORRECTED MORE SPELLING. ! ! V03-005 RAS0318 RON SCHAEFER 27-JUN-1984 ! FIX SPELLINGS AND TEXT OF MESSAGES. ! ! V03-004 KBT0468 KEITH B. THOMPSON 21-JAN-1983 ! CHANGE THE TEXT OF RSZ ! ! V03-003 KBT0438 KEITH B. THOMPSON 30-DEC-1982 ! CHANGE THE TEXT OF CREA_ERR ! ! V03-002 KBT0394 KEITH B. THOMPSON 29-OCT-1982 ! CHANGE THE MESSGAE TEXT OF PROERR TO INCLUDE VBN AND ! MAKE THE SIGNED VALUES UNSIGNED. ! ! V03-001 KBT0039 KEITH THOMPSON 3-APR-1982 ! CHANGE THE EXCEPTION MESSAGES TO INFO ! ! **** literal CONVERT$_FACILITY = 178; literal CONV$_CREATEDSTM = 11670267; ! /FAO=1 literal CONV$_INSVIRMEM = 11670258; ! literal CONV$_OPENERR = 11670410; ! /FAO=1 literal CONV$_OPENIN = 11669658; ! /FAO=1 literal CONV$_OPENOUT = 11669666; ! /FAO=1 literal CONV$_READERR = 11669682; ! /FAO=1 literal CONV$_WRITEERR = 11669714; ! /FAO=1 literal CONV$_CLOSEIN = 11669586; ! /FAO=1 literal CONV$_CLOSEOUT = 11669594; ! /FAO=1 literal CONV$_BADLOGIC = 11669794; ! literal CONV$_NOWILD = 11669802; ! literal CONV$_VALERR = 11669994; ! literal CONV$_CONFQUAL = 11670242; ! literal CONV$_FAO_MAX = 2; literal CONV$_NI = 11698187; literal CONV$_PAD = 11698195; literal CONV$_RMS = 11698203; literal CONV$_RTL = 11698211; literal CONV$_RTS = 11698219; literal CONV$_VFC = 11698227; literal CONV$_DUP = 11698235; literal CONV$_KEY = 11698243; literal CONV$_REX = 11698251; literal CONV$_RSK = 11698259; literal CONV$_RSZ = 11698267; literal CONV$_SEQ = 11698275; literal CONV$_BADBLK = 11698282; literal CONV$_CREA_ERR = 11698290; literal CONV$_DELPRI = 11698298; ! UNUSED IN V4 literal CONV$_EXTN_ERR = 11698306; literal CONV$_FATALEXC = 11698314; literal CONV$_BADSORT = 11698322; literal CONV$_FILLIM = 11698330; literal CONV$_IDX_LIM = 11698338; literal CONV$_ILL_KEY = 11698346; literal CONV$_ILL_VALUE = 11698354; literal CONV$_INP_FILES = 11698362; literal CONV$_KEYREF = 11698370; ! UNUSED IN V4 literal CONV$_LOADIDX = 11698378; literal CONV$_NARG = 11698386; literal CONV$_NOKEY = 11698394; literal CONV$_NOTIDX = 11698402; literal CONV$_NOTSEQ = 11698410; literal CONV$_ORDER = 11698418; literal CONV$_OPENEXC = 11698426; literal CONV$_PROERR = 11698434; literal CONV$_PROL_WRT = 11698442; literal CONV$_UDF_BKS = 11698450; literal CONV$_UDF_BLK = 11698458; literal CONV$_INVBKT = 11698466; literal CONV$_PLV = 11698474; ! ! ---- < End of module CONVMSG.R32 - 12-AUG-2010 13:57:02.53 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:20 by OpenVMS SDL EV3-3 ! Source: 29-SEP-2004 15:34:38 $1$DGA7361:[STARLET.SRC]CRF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $CRFDEF *** ! ! CRF$INSRTREF ARGUMENT LIST ! literal CRF$S_CRFDEF = 24; macro CRF$L_IR_CTLTBL = 4,0,32,0 %; ! CRF CONTROL TABLE ADR macro CRF$L_IR_KEYADR = 8,0,32,0 %; ! KEY ADDRESS macro CRF$L_IR_REFADR = 12,0,32,0 %; ! REFERENCE INDICATOR ADR macro CRF$W_IR_REFLAG = 16,0,16,0 %; ! REFERENCE INDICATOR FLAGS macro CRF$B_IR_DEFIND = 20,0,8,0 %; ! DEFINITION INDICATOR ! ! CRF$INSRTKEY ARGUMENT LIST ! literal CRF$S_CRFDEF1 = 20; macro CRF$L_IK_CTLTBL = 4,0,32,0 %; ! CRF CONTROL TABLE ADR macro CRF$L_IK_KEYADR = 8,0,32,0 %; ! ADDRESS OF KEY macro CRF$L_IK_VALADR = 12,0,32,0 %; ! ADDRESS OF VALUE macro CRF$W_IK_VALFLG = 16,0,16,0 %; ! VALUE FLAGS ! ! CRF$OUT ARGUMENT LIST ! literal CRF$S_CRFDEF2 = 25; macro CRF$L_OU_CTLTBL = 4,0,32,0 %; ! CRF CONTROL TABLE ADR macro CRF$L_OU_LINWID = 8,0,32,0 %; ! OUTPUT LINE WIDTH macro CRF$B_OU_PAG1 = 12,0,8,0 %; ! ! LINES/PAGE 1 macro CRF$B_OU_SUCPAG = 16,0,8,0 %; ! ! LINES/SUCCESSIVE PAGES macro CRF$B_OU_PRTIND = 20,0,8,0 %; ! REF PRINT INDICATOR macro CRF$B_OU_SAVIND = 24,0,8,0 %; ! SAVE INDICATOR ! ! CRF CONTROL TABLE OFFSETS ! literal CRF$M_MULDEF = %X'1'; literal CRF$S_CRFDEF3 = 96; macro CRF$L_HASHT = 0,0,32,0 %; ! HASH TABLE ADDRESS macro CRF$L_LASTKEY = 4,0,32,0 %; ! LAST KEY LOOKED AT ADDRESS macro CRF$R_KEYTYPE_OVERLAY = 8,0,8,0 %; macro CRF$B_KEYTYPE = 8,0,8,0 %; ! TYPE OF KEY IN TABLE macro CRF$R_KEYTYPE_BITS = 8,0,8,0 %; macro CRF$V_BINARY = 8,0,1,0 %; ! OBSOLETE FIELD. RETAINED FOR COMPATIBLILTY macro CRF$B_FLAGS = 9,0,8,0 %; ! MISC. FLAGS FOR FUTURE EXPANSION macro CRF$V_MULDEF = 9,0,1,0 %; ! Multi-Definers macro CRF$W_ERRSTS = 10,0,16,0 %; ! SECONDARY ERROR STATUS CODE macro CRF$L_ENTRIES = 12,0,32,0 %; ! NUMBER OF ENTRIES IN CROSS REFERENCE macro CRF$L_DYNMEM = 16,0,0,0 %; literal CRF$S_DYNMEM = 8; ! LISTHEAD OF DYNAMIC MEMORY macro CRF$L_MAXBLK = 24,0,32,0 %; ! SIZE (IN BYTES) OF BLOCK TO ALLOCATE macro CRF$L_MEMEXP = 28,0,32,0 %; ! SIZE (IN PAGES) OF BLOCK TO ALLOCATE macro CRF$W_CTLTABVER = 32,0,16,0 %; ! VERSION OF CONTROL TABLE macro CRF$B_VALTYPE = 34,0,8,0 %; ! SYMBOL VALUE DATA TYPE (Ver 1 and later) macro CRF$B_REFTYPE = 35,0,8,0 %; ! SYMBOL REFERENCE DATA TYPE (Ver 1 and later) macro CRF$L_ERROR = 64,0,32,0 %; ! ERROR ROUTINE ADDRESS macro CRF$L_OUTPUT = 68,0,32,0 %; ! OUTPUT ROUTINE ADDRESS macro CRF$L_K1FMTBL = 72,0,32,0 %; ! KEY1 FIELD FORMAT TBL ADR macro CRF$L_K2FMTBL = 76,0,32,0 %; ! KEY2 FIELD FORMAT TBL ADR macro CRF$L_V1FMTBL = 80,0,32,0 %; ! VAL1 FIELD FORMAT TBL ADR macro CRF$L_V2FMTBL = 84,0,32,0 %; ! VAL2 FIELD FORMAT TBL ADR macro CRF$L_R1FMTBL = 88,0,32,0 %; ! REF1 FIELD FORMAT TBL ADR macro CRF$L_R2FMTBL = 92,0,32,0 %; ! REF2 FIELD FORMAT TBL ADR ! ! ---- < End of module CRF.R32 - 12-AUG-2010 13:57:02.62 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:26 by OpenVMS SDL EV3-3 ! Source: 10-NOV-1994 14:49:52 $1$DGA7361:[STARLET.SRC]CVTDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $cvtdef *** literal CVT$K_VAX_F = 0; ! VAX F Floating point data literal CVT$K_VAX_D = 1; ! VAX D Floating point data literal CVT$K_VAX_G = 2; ! VAX G Floating point data literal CVT$K_VAX_H = 3; ! VAX H Floating point data literal CVT$K_IEEE_S = 4; ! IEEE S Floating point data literal CVT$K_IEEE_T = 5; ! IEEE T Floating point data literal CVT$K_IBM_LONG = 6; ! IBM Long Floating point data literal CVT$K_IBM_SHORT = 7; ! IBM Short Floating point data literal CVT$K_CRAY = 8; ! Cray Floating point data literal CVT$K_IEEE_X = 9; ! IEEE X Floating point data literal CVT$K_BIG_ENDIAN_IEEE_S = 10; ! IEEE S Floating point data literal CVT$K_BIG_ENDIAN_IEEE_T = 11; ! IEEE S Floating point data literal CVT$K_BIG_ENDIAN_IEEE_X = 12; ! IEEE S Floating point data literal CVT$K_CRAY_SINGLE = 8; ! ! Function Return Status Values: ! literal CVT$K_NORMAL = 0; literal CVT$M_INVALID_INPUT_TYPE = %X'1'; literal CVT$M_INVALID_OUTPUT_TYPE = %X'2'; literal CVT$M_INVALID_OPTION = %X'4'; literal CVT$M_RESULT_INFINITE = %X'8'; literal CVT$M_RESULT_DENORMALIZED = %X'10'; literal CVT$M_RESULT_OVERFLOW_RANGE = %X'20'; literal CVT$M_RESULT_UNDERFLOW_RANGE = %X'40'; literal CVT$M_RESULT_UNNORMALIZED = %X'80'; literal CVT$M_RESULT_INVALID = %X'100'; literal CVT$M_RESULT_OVERFLOW = %X'200'; literal CVT$M_RESULT_UNDERFLOW = %X'400'; literal CVT$M_RESULT_INEXACT = %X'800'; literal CVT$S_RETURN_STATUS = 2; macro CVT$V_INVALID_INPUT_TYPE = 0,0,1,0 %; macro CVT$V_INVALID_OUTPUT_TYPE = 0,1,1,0 %; macro CVT$V_INVALID_OPTION = 0,2,1,0 %; macro CVT$V_RESULT_INFINITE = 0,3,1,0 %; macro CVT$V_RESULT_DENORMALIZED = 0,4,1,0 %; macro CVT$V_RESULT_OVERFLOW_RANGE = 0,5,1,0 %; macro CVT$V_RESULT_UNDERFLOW_RANGE = 0,6,1,0 %; macro CVT$V_RESULT_UNNORMALIZED = 0,7,1,0 %; macro CVT$V_RESULT_INVALID = 0,8,1,0 %; macro CVT$V_RESULT_OVERFLOW = 0,9,1,0 %; macro CVT$V_RESULT_UNDERFLOW = 0,10,1,0 %; macro CVT$V_RESULT_INEXACT = 0,11,1,0 %; ! ! Conversion Options: ! literal CVT$M_ROUND_TO_NEAREST = %X'1'; literal CVT$M_TRUNCATE = %X'2'; literal CVT$M_ROUND_TO_POS = %X'4'; literal CVT$M_ROUND_TO_NEG = %X'8'; literal CVT$M_VAX_ROUNDING = %X'10'; literal CVT$M_BIG_ENDIAN = %X'20'; literal CVT$M_ERR_UNDERFLOW = %X'40'; literal CVT$M_FORCE_INVALID_TO_ZERO = %X'80'; literal CVT$M_FORCE_DENORM_TO_ZERO = %X'100'; literal CVT$M_FORCE_INF_TO_MAX_FLOAT = %X'200'; literal CVT$M_FORCE_ALL_SPECIAL_VALUES = %X'400'; literal CVT$M_ALLOW_OVRFLW_RANGE_VALUES = %X'800'; literal CVT$M_ALLOW_UDRFLW_RANGE_VALUES = %X'1000'; literal CVT$M_ALLOW_UNNORMALIZED_VALUES = %X'2000'; literal CVT$M_REPORT_ALL = %X'4000'; literal CVT$m_spare2 = %X'FFFF8000'; literal CVT$S_CONVERSION_OPTIONS = 4; ! ! Rounding Mode Options: ! macro CVT$V_ROUND_TO_NEAREST = 0,0,1,0 %; macro CVT$V_TRUNCATE = 0,1,1,0 %; macro CVT$V_ROUND_TO_POS = 0,2,1,0 %; macro CVT$V_ROUND_TO_NEG = 0,3,1,0 %; macro CVT$V_VAX_ROUNDING = 0,4,1,0 %; ! ! Options exclusive to CVT$CONVERT_FLOAT ! macro CVT$V_BIG_ENDIAN = 0,5,1,0 %; macro CVT$V_ERR_UNDERFLOW = 0,6,1,0 %; ! ! Forcing Results Options: ! macro CVT$V_FORCE_INVALID_TO_ZERO = 0,7,1,0 %; macro CVT$V_FORCE_DENORM_TO_ZERO = 0,8,1,0 %; macro CVT$V_FORCE_INF_TO_MAX_FLOAT = 0,9,1,0 %; macro CVT$V_FORCE_ALL_SPECIAL_VALUES = 0,10,1,0 %; ! ! Allowing Special Results Options: ! macro CVT$V_ALLOW_OVRFLW_RANGE_VALUES = 0,11,1,0 %; macro CVT$V_ALLOW_UDRFLW_RANGE_VALUES = 0,12,1,0 %; macro CVT$V_ALLOW_UNNORMALIZED_VALUES = 0,13,1,0 %; ! ! Status Selection Options: ! macro CVT$V_REPORT_ALL = 0,14,1,0 %; ! ! Everything else. ! macro CVT$v_spare2 = 0,15,17,0 %; literal CVT$s_spare2 = 17; literal CVT$M_ALT_ROUND_TO_NEAREST = %X'1'; literal CVT$M_ROUND_TO_ZERO = %X'2'; literal CVT$M_ALT_ROUND_TO_POS = %X'4'; literal CVT$M_ALT_ROUND_TO_NEG = %X'8'; literal CVT$M_BIASED_ROUNDING = %X'10'; literal CVT$m_spare3 = %X'FFFFFFE0'; literal CVT$S_ALT_CONVERSION_OPTIONS = 4; ! ! Rounding Mode Options: ! macro CVT$V_ALT_ROUND_TO_NEAREST = 0,0,1,0 %; macro CVT$V_ROUND_TO_ZERO = 0,1,1,0 %; macro CVT$V_ALT_ROUND_TO_POS = 0,2,1,0 %; macro CVT$V_ALT_ROUND_TO_NEG = 0,3,1,0 %; macro CVT$V_BIASED_ROUNDING = 0,4,1,0 %; macro CVT$v_spare3 = 0,5,27,0 %; literal CVT$s_spare3 = 27; ! ! ---- < End of module CVTDEF.R32 - 12-AUG-2010 13:57:02.69 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:38 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:53:37 $1$DGA7361:[STARLET.SRC]DDTMMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $DDTMMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:53:37.88 ! ! .TITLE DDTMMSGDEF -- DECDTM SERVICES EXTENDED REASON CODES ! ! ************************************************************************* ! * * ! * COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION, 1991, 1993 * ! * ALL RIGHTS RESERVED. * ! * UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED * ! * STATES. * ! * * ! * THE SOFTWARE CONTAINED ON THIS MEDIA IS PROPRIETARY TO AND EMBODIES * ! * THE CONFIDENTIAL TECHNOLOGY OF DIGITAL EQUIPMENT CORPORATION. * ! * POSSESSION, USE, DUPLICATION OR DISSEMINATION OF THE SOFTWARE AND * ! * MEDIA IS AUTHORIZED ONLY PURSUANT TO A VALID WRITTEN LICENSE FROM * ! * DIGITAL EQUIPMENT CORPORATION. * ! * * ! * RESTRICTED RIGHTS LEGEND USE, DUPLICATION, OR DISCLOSURE BY THE U.S. * ! * GOVERNMENT IS SUBJECT TO RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH * ! * (C)(1)(II) OF DFARS 252.227-7013, OR IN FAR 52.227-19, AS APPLICABLE. * ! * * ! ************************************************************************* ! ! ++ ! FACILITY: DDTM ! ! ABSTRACT: ! ! THIS MODULE DEFINES THE EXTENDED TRANSACTION ABORT REASON CODES FOR THE ! DECDTM TRANSACTION MANAGER. ! ! ENVIRONMENT: ! VMS V5.4 OR LATER. ! ! AUTHOR: JAMES E JOHNSON CREATION DATE: 27-FEB-1990 ! ! MODIFIED BY: ! ! A-4 KJP KEVIN PLAYFORD 15-SEP-1993 ! UPDATED ALPHA VERSION OF DECDTM MESSAGES TO REFLECT MESSAGE ! TEXT AS FOUND IN HELP MESSAGE TEXT. ! ! A-3 KJP KEVIN PLAYFORD 23-AUG-1993 ! UPDATED ALPHA VERSION OF DECDTM MESSAGES TO DECDTM V1.2 ! FUNCTIONALITY. ! ! *** VAX CHANGES PICKED UP FOR ALPHA ! ! X-6 RM RUDI MARTIN 9-AUG-1993 ! UPDATE SYNCH_FAIL AND ORPHAN_BRANCH MESSAGES TO ! CORRESPOND TO THEIR HELP/MESSAGE TEXT. ! ! A-2 KJP KEVIN PLAYFORD 20-JUL-1993 ! UPDATED ALPHA VERSION OF DECDTM MESSAGES TO DECDTM V1.2 ! FUNCTIONALITY. ! ! *** VAX CHANGES PICKED UP FOR ALPHA ! ! X-5 RM RUDI MARTIN 25-FEB-1993 ! ADD XA ERROR CODES. ! ! X-4 CW CHRIS WHITAKER 26-FEB-1991 ! MODIFY WORDING ON SOME MESSAGES TO CONFORM TO ! FUNCTIONAL SPECIFICATION OF DECDTM V1.2. ! ! X-3 CW1023 CHRIS WHITAKER 21-MAY-1990 ! ADD RESERVED CODE AS FIRST MESSAGE. ! ! X-2 JEJ0599 JAMES E JOHNSON 23-APR-1990 ! ADD LOG_FAIL, SYNC_FAIL, AND ORPHAN_BRANCH ! ! -- literal DDTM$_FACILITY = 1187; literal DDTM$_UNKNOWN = 0; ! NO EXTENDED CODE PROVIDED ! ERROR CODES: ! literal DDTM$_RESERVED = 77824002; literal DDTM$_TIMEOUT = 77824010; literal DDTM$_PART_TIMEOUT = 77824018; literal DDTM$_SEG_FAIL = 77824026; literal DDTM$_COMM_FAIL = 77824034; literal DDTM$_VETOED = 77824042; literal DDTM$_ABORTED = 77824050; literal DDTM$_SERIALIZATION = 77824058; literal DDTM$_PART_SERIAL = 77824066; literal DDTM$_INTEGRITY = 77824074; literal DDTM$_LOG_FAIL = 77824082; literal DDTM$_SYNC_FAIL = 77824090; literal DDTM$_ORPHAN_BRANCH = 77824098; literal DDTM$_DEADLOCK = 77824106; literal DDTM$_PROTERROR = 77824114; literal DDTM$_ROLLBACK = 77824122; literal DDTM$_TRANSIENT = 77824130; ! ! ---- < End of module DDTMMSG.R32 - 12-AUG-2010 13:57:02.76 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:51 by OpenVMS SDL EV3-3 ! Source: 18-JUN-1985 07:43:33 $1$DGA7361:[STARLET.SRC]DSTDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $DSTDEF *** ! Use a K to indicate constant literal DST$K_LOCOMMAND = 0; ! Low value for range checking literal DST$K_STA_R00 = 0; ! Stack contents of R0 literal DST$K_STA_R01 = 1; ! Stack contents of R1 literal DST$K_STA_R02 = 2; ! Stack contents of R2 literal DST$K_STA_R03 = 3; ! Stack contents of R3 literal DST$K_STA_R04 = 4; ! Stack contents of R4 literal DST$K_STA_R05 = 5; ! Stack contents of R5 literal DST$K_STA_R06 = 6; ! Stack contents of R6 literal DST$K_STA_R07 = 7; ! Stack contents of R7 literal DST$K_STA_R08 = 8; ! Stack contents of R8 literal DST$K_STA_R09 = 9; ! Stack contents of R9 literal DST$K_STA_R10 = 10; ! Stack contents of R10 literal DST$K_STA_R11 = 11; ! Stack contents of R11 literal DST$K_STA_R12 = 12; ! Stack contents of R12 (AP) literal DST$K_STA_R13 = 13; ! Stack contents of R13 (FP) literal DST$K_STA_R14 = 14; ! Stack contents of R14 (SP) literal DST$K_STA_R15 = 15; ! Stack contents of R15 (PC) literal DST$K_STA_IMM_B = 16; ! Stack contents of byte operand ! sign extending to longword literal DST$K_STA_IMM_W = 17; ! Stack contents of word operand ! sign extending to longword literal DST$K_STA_IMM_L = 18; ! Stack contents of longword operand literal DST$K_OPR_ADD = 19; ! Pop two operands, add , ! stack longword result literal DST$K_STA_REP_B = 20; ! Pop top item and stack sign extended ! byte at that address literal DST$K_STA_REP_W = 21; ! Pop top item and stack sign extended ! word at that address literal DST$K_STA_REP_L = 22; ! Pop top item and stack longword at ! that address literal DST$K_OPR_STOP = 23; ! Terminate command string. Longword ! at top of stack contains address ! of data item. literal DST$K_HICOMMAND = 23; ! Hi value for range checking ! ! ---- < End of module DSTDEF.R32 - 12-AUG-2010 13:57:02.82 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:22 by OpenVMS SDL EV3-3 ! Source: 04-SEP-1986 11:16:31 $1$DGA7361:[STARLET.SRC]DTKDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $DTKDEF *** ! Definitions for RTL DECtalk Management ! ! Phone keypad keys. ! literal DTK$K_TRM_ZERO = 48; literal DTK$K_TRM_ONE = 49; literal DTK$K_TRM_TWO = 50; literal DTK$K_TRM_THREE = 51; literal DTK$K_TRM_FOUR = 52; literal DTK$K_TRM_FIVE = 53; literal DTK$K_TRM_SIX = 54; literal DTK$K_TRM_SEVEN = 55; literal DTK$K_TRM_EIGHT = 56; literal DTK$K_TRM_NINE = 57; literal DTK$K_TRM_A = 65; literal DTK$K_TRM_B = 66; literal DTK$K_TRM_C = 67; literal DTK$K_TRM_D = 68; literal DTK$K_TRM_NUMBER_SIGN = 35; literal DTK$K_TRM_ASTERISK = 42; ! Conditions literal DTK$K_TRM_CANCELLED = 508; ! I/O cancelled literal DTK$K_TRM_TIMEOUT = 509; ! Timeout period expired literal DTK$K_TRM_BUFFER_FULL = 510; ! Buffer is full literal DTK$K_TRM_UNKNOWN = 511; ! Unknown terminator ! ! Self-test constants. ! literal DTK$K_TEST_POWER = 1; literal DTK$K_TEST_HDATA = 2; literal DTK$K_TEST_HCONTROL = 3; literal DTK$K_TEST_DATA = 4; literal DTK$K_TEST_SPEAK = 5; ! ! Phone dialing constants. ! literal DTK$K_DIAL_TONE = 0; literal DTK$K_DIAL_PULSE = 1; ! ! DECtalk types. ! literal DTK$K_DTC_UNKNOWN = 0; literal DTK$K_DTC_01 = 1; literal DTK$K_DTC_03 = 2; ! ! Keypad modes. ! literal DTK$K_KEYPAD_OFF = 0; literal DTK$K_KEYPAD_ON = 1; literal DTK$K_KEYPAD_AUTO = 2; ! ! Voices. ! literal DTK$K_VOICE_MALE = 0; literal DTK$K_VOICE_FEMALE = 1; literal DTK$K_VOICE_CHILD = 2; literal DTK$K_VOICE_DEEP_MALE = 3; literal DTK$K_VOICE_DEEP_FEMALE = 4; literal DTK$K_VOICE_OLDER_MALE = 5; literal DTK$K_VOICE_LIGHT_FEMALE = 6; ! ! Speaking modes. ! literal DTK$K_SPEAK = 0; literal DTK$K_STOP = 1; literal DTK$K_HALT = 2; ! ! Return modes. ! literal DTK$K_IMMED = 0; ! Return immedately after sending text. literal DTK$K_WAIT = 1; ! Wait until text is completely spoken be returning. literal DTK$K_STATUS = 2; ! Wait for text to be spoken and return phone status. ! ! DEFINE BIT MASKS AND VALUES FOR MODE ATTRIBUTES ! literal DTK$M_SQUARE = %X'1'; literal DTK$M_ASCII = %X'2'; literal DTK$M_MINUS = %X'4'; literal DTK$M_EUROPE = %X'8'; literal DTK$M_SPELL = %X'10'; literal DTK$M_NORMAL = 0; ! no bits set literal DTK$K_SQUARE = 0; ! Mode square bitvector index literal DTK$K_ASCII = 1; ! asky mode literal DTK$K_MINUS = 2; ! Say dash as minus bitvector index literal DTK$K_EUROPE = 3; ! European type numbers literal DTK$K_SPELL = 4; ! Spell all words literal DTK$M_HOST = %X'1'; literal DTK$M_SPEAK_ALL = %X'2'; literal DTK$M_EDITED = %X'4'; literal DTK$M_HARD = %X'8'; literal DTK$M_SETUP = %X'10'; literal DTK$M_FILTER = %X'20'; literal DTK$K_HOST = 0; ! Send all chars typed to host. literal DTK$K_SPEAK_ALL = 1; ! Speak all chars typed. literal DTK$K_EDITED = 2; ! Line edit all chars typed. literal DTK$K_HARD = 3; ! Do local echo in hardcopy format. literal DTK$K_SETUP = 4; ! Speak all chars displayed in setup mode. literal DTK$K_FILTER = 5; ! Don't send DECtalk specific sequences. literal DTK$M_TEXT = %X'1'; literal DTK$M_PHONEME = %X'2'; literal DTK$M_RAWHOST = %X'4'; literal DTK$M_INHOST = %X'8'; literal DTK$M_OUTHOST = %X'10'; literal DTK$M_ERROR = %X'20'; literal DTK$M_TRACE = %X'40'; literal DTK$M_DEBUG = %X'80'; literal DTK$K_TEXT = 0; ! Log ASCII text. literal DTK$K_PHONEME = 1; ! Log phonemic text. literal DTK$K_RAWHOST = 2; ! Log all chars without inspection. literal DTK$K_INHOST = 3; ! Log text read from host. literal DTK$K_OUTHOST = 4; ! Log text sent to host. literal DTK$K_ERROR = 5; ! Log error messages. literal DTK$K_TRACE = 6; ! Log sequences symbolically literal DTK$K_DEBUG = 7; ! Reserved literal DTK$S_DTKDEF = 1; ! ! DEFINE BITS, MASKS, AND FIELDS FOR THE CONTROL MODES. ! macro DTK$R_DTKMODE_BITS = 0,0,8,0 %; macro DTK$V_SQUARE = 0,0,1,0 %; ! Set mode square on macro DTK$V_ASCII = 0,1,1,0 %; ! asky mode macro DTK$V_MINUS = 0,2,1,0 %; ! Say dash as minus macro DTK$V_EUROPE = 0,3,1,0 %; ! Europe macro DTK$V_SPELL = 0,4,1,0 %; ! Spell all words macro DTK$R_DTKTERM_BITS = 0,0,8,0 %; macro DTK$V_HOST = 0,0,1,0 %; ! Send all chars typed to host. macro DTK$V_SPEAK_ALL = 0,1,1,0 %; ! Speak all chars typed. macro DTK$V_EDITED = 0,2,1,0 %; ! Line edit all chars typed. macro DTK$V_HARD = 0,3,1,0 %; ! Do local echo in hardcopy format. macro DTK$V_SETUP = 0,4,1,0 %; ! Speak all chars displayed in setup mode. macro DTK$V_FILTER = 0,5,1,0 %; ! Don't send DECtalk specific sequences. macro DTK$R_DTKLOG_BITS = 0,0,8,0 %; macro DTK$V_TEXT = 0,0,1,0 %; ! Log ASCII text. macro DTK$V_PHONEME = 0,1,1,0 %; ! Log phonemic text. macro DTK$V_RAWHOST = 0,2,1,0 %; ! Log all chars without inspection. macro DTK$V_INHOST = 0,3,1,0 %; ! Log text read from host. macro DTK$V_OUTHOST = 0,4,1,0 %; ! Log text sent to host. macro DTK$V_ERROR = 0,5,1,0 %; ! Log error messages. macro DTK$V_TRACE = 0,6,1,0 %; ! Log sequences symbolically macro DTK$V_DEBUG = 0,7,1,0 %; ! Reserved ! ! ---- < End of module DTKDEF.R32 - 12-AUG-2010 13:57:02.87 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:21 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:21 $1$DGA7361:[STARLET.SRC]FDLMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $FDLMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:21.60 ! ! ! VERSION: 'X-4' ! ! ************************************************************************* ! * * ! * COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION, 1978, 1979, 1980, 1981, * ! * 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992 * ! * ALL RIGHTS RESERVED. * ! * UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED * ! * STATES. * ! * * ! * THE SOFTWARE CONTAINED ON THIS MEDIA IS PROPRIETARY TO AND EMBODIES * ! * THE CONFIDENTIAL TECHNOLOGY OF DIGITAL EQUIPMENT CORPORATION. * ! * POSSESSION, USE, DUPLICATION OR DISSEMINATION OF THE SOFTWARE AND * ! * MEDIA IS AUTHORIZED ONLY PURSUANT TO A VALID WRITTEN LICENSE FROM * ! * DIGITAL EQUIPMENT CORPORATION. * ! * * ! * RESTRICTED RIGHTS LEGEND USE, DUPLICATION, OR DISCLOSURE BY THE U.S. * ! * GOVERNMENT IS SUBJECT TO RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH * ! * (C)(1)(II) OF DFARS 252.227-7013, OR IN FAR 52.227-19, AS APPLICABLE. * ! * * ! ************************************************************************* ! ++ ! ! FACILITY: VAX-11 FDL UTILITIES ! ! ENVIRONMENT: ! ! VAX/VMS OPERATING SYSTEM ! ! ABSTRACT: ! FDL ERROR MESSAGES ! ! ! -- ! ! AUTHOR: KEITH B THOMPSON CREATION DATE: AUGUST-1980 ! ! ! MODIFIED BY: ! ! X-4 BP026 BOB PREMOVICH 28-MAY-1998 ! CREATE LITERAL MESSAGE VALUES FOR THE MESSAGES THAT ! WERE UTILIZING THE $SHR_MSGDEF MACRO. THIS IS TO ! FACILITATE THE MOVE OF THE MESSAGES TO THE STARLET ! FACILITY. ! ! X-3 CW002 CHRIS WHITAKER 26-AUG-1992 ! MERGE IN AMBER CHANGES. ! ! X-3 SBL1003 STEVEN B. LIONEL 13-DEC-1991 ! SET MACRO NAME TO $FDMLSGDEF ! ! X-2 RNM0063 RUSSELL MURRAY 13-APR-1988 ! ADD TAGGED FILE SUPPORT. ADD MESSAGE FDL$_UNKNOWN_TAG ! ! V03-004 KFH0003 KEN HENDERSON 21 DEC 1982 ! REWORDED "key word" TO "keyword" ! ! V03-003 KFH0002 KEN HENDERSON 22-NOV-1982 ! REWORDED "on line" TO "in statement" ! ! V03-002 KFH0001 KEN HENDERSON 25-OCT-1982 ! ADDED INVBLK MESSAGE ! ! V03-001 KBT0033 KEITH THOMPSON 31-MAR-1982 ! ADD INVDATIM MESSAGE ! ! **** literal FDL$_FACILITY = 180; literal FDL$_BADLOGIC = 11800866; ! literal FDL$_CLOSEIN = 11800658; ! /FAO=1 literal FDL$_CLOSEOUT = 11800666; ! /FAO=1 literal FDL$_CREATED = 11800691; ! /FAO=1 literal FDL$_CREATEDSTM = 11801339; ! /FAO=1 literal FDL$_INSVIRMEM = 11801330; ! literal FDL$_OPENIN = 11800730; ! /FAO=1 literal FDL$_OPENOUT = 11800738; ! /FAO=1 literal FDL$_READERR = 11800754; ! /FAO=1 literal FDL$_VALERR = 11801066; ! literal FDL$_WRITEERR = 11800786; ! /FAO=1 literal FDL$_FAO_MAX = 5; literal FDL$_TITLE = 11829259; literal FDL$_ABKW = 11829264; literal FDL$_INVDATIM = 11829272; literal FDL$_MULSEC = 11829280; literal FDL$_NOQUAL = 11829288; literal FDL$_NULLPRI = 11829296; literal FDL$_RFLOC = 11829304; literal FDL$_VALPRI = 11829312; literal FDL$_UNQUAKW = 11829320; literal FDL$_UNSECKW = 11829328; literal FDL$_WARNING = 11829336; literal FDL$_ABPRIKW = 11829346; literal FDL$_CREATE = 11829354; literal FDL$_FDLERROR = 11829362; literal FDL$_ILL_ARG = 11829370; literal FDL$_MULPRI = 11829378; literal FDL$_OPENFDL = 11829386; literal FDL$_OUTORDER = 11829394; literal FDL$_SYNTAX = 11829402; literal FDL$_UNPRIKW = 11829410; literal FDL$_INVBLK = 11829418; literal FDL$_UNKNOWN_TAG = 11829426; ! ! ---- < End of module FDLMSG.R32 - 12-AUG-2010 13:57:03.08 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:17 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:17 $1$DGA7361:[STARLET.OBJ]JBCMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $JBCMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:17.76 ! ! ! VERSION: 'X-5' ! ! ************************************************************************* ! * * ! * © COPYRIGHT 2004 HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM HP AND/OR * ! * ITS SUBSIDIARIES REQUIRED FOR POSSESSION, USE, OR COPYING. * ! * * ! * CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE, * ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL * ! * ITEMS ARE LICENSED TO THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD * ! * COMMERCIAL LICENSE. * ! * * ! * NEITHER HP NOR ANY OF ITS SUBSIDIARIES SHALL BE LIABLE FOR TECHNICAL * ! * OR EDITORIAL ERRORS OR OMISSIONS CONTAINED HEREIN. THE INFORMATION * ! * IN THIS DOCUMENT IS PROVIDED "as is" WITHOUT WARRANTY OF ANY KIND AND * ! * IS SUBJECT TO CHANGE WITHOUT NOTICE. THE WARRANTIES FOR HP PRODUCTS * ! * ARE SET FORTH IN THE EXPRESS LIMITED WARRANTY STATEMENTS ACCOMPANYING * ! * SUCH PRODUCTS. NOTHING HEREIN SHOULD BE CONSTRUED AS CONSTITUTING AN * ! * ADDITIONAL WARRANTY. * ! * * ! ************************************************************************* ! ! MODIFIED BY: ! ! X-5 CAK ASWIN CHALUPADI 28-FEB-2006 ! ADD NEW LMFLICERR TO SIGNAL WHEN NON-COMPLIANT LICENSE ! IS DETECTED. ALSO ADD TWO OTHER GENERIC ERRORS FOR FURTHER USE. ! ! X-4 DJS DAVID J. SWEENEY 16-FEB-2001 ! ADD NOTIMZONRUL TO BE SIGNALLED WHEN THE SYS$TIMEZONE_RULE ! LOGICAL IS NOT DEFINED, MEANING DAYLIGHT SAVINGS TIME CLOCK ! ADJUSTMENT WILL NOT BE MADE. ! ! X-3 LAD LORI A. DESMARAIS 03-JUN-1993 ! ADD ACCNOTENB, TO BE USED WHEN ACCOUNTING IS DISABLED AND ! SJC$_NEW_VERSION ITEM IS PRESENT. ! ! X-2 RAB RICHARD A. BISHOP 19-MAY-1992 ! PICK UP QMANABORT MESSAGE FROM BLADE: ! ! X-18 TNF0319 TODD FLOLO 12 FEB 1992 ! ADD QMANABORT, DENOTING THAT A REQUEST CAUSED THE QUEUE MANAGER ! TO ABORT. ! ! OLD AUDIT TRAIL..... ! ! X-17 RG40209 RAY GUZMAN 11-NOV-1991 ! ADD THREE NEW MESSAGES TO RETURN TO THE USER. QMGREXISTS IS ! RETURNED WHEN AN ATTEMPT TO ADD A QUEUE MANAGER NAME THAT IS ! ALREADY DEFINED IS MADE. TWOQMGRS IS RETURNED WHEN A REQUEST ! IS MADE THAT WOULD REQUIRE INFORMATION FROM TWO DIFFERENT ! QUEUE MANAGERS. INVQMANNAM IS RETURNED FOR INVALIDE QUEUE ! MANAGER NAMES. NOMOREQMGR IS RETURNED DURING WILDCARD SEARCHES. ! ! X-16 RG40126 RAY GUZMAN 4-APR-1991 ! MODIFY THE TEXT OF TWO MESSAGES INVMSG, NOAUTOSTART & ! QUEDISABLED. ALSO REMOVE BADMSG, NOMASTER, & BADLOCK FROM ! THIS FILE SINCE THEY ARE NO LONGER USEFUL AND NEVER WENT WITH ! ANY SHIPPED RELEASE. ALSO ADD FAILCREPRC TO THE LIST OF ! MESSAGES TO BE SIGNALLED. ! ! X-15 RG40063 RAY GUZMAN 8-FEB-1991 ! ADD TWO NEW MESSAGES ONE FOR UNEXPECTED QUEUE MANAGER FAILURES ! AND ANOTHER FOR RESOLVING LOST DELPROC MESSAGES. ! ! X-14 RG40052 RAY GUZMAN 22-JAN-1991 ! MODIFY JBC$_NOTSUPPORTED TO BE A SEVERE ERROR. ! ! X-13 RG40043 RAY GUZMAN 11-JAN-1991 ! ADD BUFTOOSMALL TO INDICATE THAT ALL THE DESIRED DATA COULD ! NOT BE RETURNED BECAUSE OF A LIMITTED BUFFER SIZE. ALSO ADD ! QMANNOTSTARTED TO INDICATE THAT THE QUEUE MANAGER COULD NOT BE ! STARTED. ! ! X-12 SEH0032 SUSAN HEIMBACH 6-SEP-1990 ! MODIFY NOTSUPPORTED AND TOOMUCHINFO. ! ADD INITFAIL AND NOMASTER. ! ! X-11 SEH0020 SUSAN HEIMBACH 12-OCT-1989 ! ADD MESSAGES FOR VERSION 6. ! ! X-10 JAK0579 J A KRYCKA 18-NOV-1987 ! ADD MESSAGE JOBCTLABORT. ! ! X-9 JES0038 JACK SPEIGHT 07-JAN-1987 ! ADD NEW ERRORS - NOSUCHENT, NOMOREENT. ! ! X-8 JES0037 JACK SPEIGHT 23-OCT-1986 ! FIX ERROR NFYQUESTATE TO ALLOW A PARAMETER, WHERE ! THAT PARAMETER WILL BE USED TO SPECIFY A NUMBER ! OF QUEUE STATES - STALLED, STOPPED, PAUSED ETC. ! ! X-7 JES0036 JACK SPEIGHT 08-SEP-1986 ! ADD NEW MESSAGES FOR VERSION 5.0 - BASE LEVEL 1. ! ! V04-007 JES0035 JACK SPEIGHT 04-OCT-1985 ! CHANGE TEXT FOR JBC$_NOSUCHNODE. ! ! V04-006 JES0034 JACK SPEIGHT 05-SEP-1985 ! ADD JBC$_NOSUCHNODE, JBC$_RESTARTCOM. ! ! V04-005 JAK0407 J A KRYCKA 29-APR-1985 ! MOVE JBC$_NOCMKRNL, JBC$_NOOPER, AND JBC$_SYSNAM DEFINITIONS ! HERE FROM JOBCTLDEF.REQ. ! ! V04-004 JAK0405 J A KRYCKA 26-APR-1985 ! ADD JBC$_NOMORECHAR, JBC$_NOMOREFILE, JBC$_NOMOREFORM, ! JBC$_NOMOREJOB, JBC$_NOMOREQUE, JBC$_NOJOBCTX, AND JBC$_NOQUECTX ! MESSAGES. ! ! V04-003 JES0033 JACK SPEIGHT 26-APR-1985 ! SPECIFY AN EXPLICIT SEVERITY LEVEL FOR EACH ERROR MESSAGE ! SO THAT THE DEFINITIONS HERE AGREE WITH WHAT IS ACTUALLY ! RETURNED BY THE JOB CONTROLLER IN THE USER'S I/O STATUS BLOCK. ! PRIOR TO THIS CHANGE ALL NON-SUCCESS CODES WERE DEFINED HERE ! WITH A SEVERITY LEVEL OF WARNING AND THE JOB CONTROLLER ADDED ! THE PROPER SEVERITY LEVEL. ALSO MAKE MINOR EDITS TO CERTAIN ! MESSAGE TEXT. ! ! V04-002 JES0032 JACK SPEIGHT 03-APR-1985 ! ADD JBC$_RESTRICT, JBC$_NFY_FAILURE, JBC$_NFY_CPULIM, ! AND JBC$_NFY_WSVAL MESSAGES. ! ! V04-001 JES0031 JACK SPEIGHT 15-MAR-1985 ! ADD JBC$_QUENOTSTOP MESSAGE. literal JBC$_FACILITY = 4; ! ! THE FOLLOWING CODES ARE RETURNED BY THE $SNDJBC, $GETQUI, $SNDJBC, AND $SNDSMB ! SYSTEM SERVICES, OR PLACED IN THE ACCOUNTING FILE. ! ! THESE VALUES ARE PUBLIC AND MUST NOT CHANGE FROM RELEASE TO RELEASE. ! ! NOTE: ERROR CODES WITH ASSOCIATED TEXT OF <> ARE RETIRED ERROR CODES AND HAVE ! A SEVERITY LEVEL OF SEVERE. ! literal JBC$_NORMAL = 262145; ! literal JBC$_NOCMKRNL = 272386; ! literal JBC$_NOOPER = 272530; ! literal JBC$_NOSYSNAM = 272402; ! literal JBC$_ILLDEVNAM = 294916; literal JBC$_UNSDEVTYP = 294924; literal JBC$_ILLFILNAM = 294932; literal JBC$_INVQUENAM = 294940; literal JBC$_NOPRIV = 294946; literal JBC$_NOQUEHDR = 294956; literal JBC$_NOQUESPACE = 294962; literal JBC$_NOSUCHQUE = 294970; literal JBC$_NOSUCHJOB = 294978; literal JBC$_NOOPENJOB = 294986; literal JBC$_REFERENCED = 294994; literal JBC$_STARTED = 295002; literal JBC$_INVITMCOD = 295012; literal JBC$_INVFUNCOD = 295020; literal JBC$_EMPTYJOB = 295026; literal JBC$_JOBQUEDIS = 295034; literal JBC$_JOBABORT = 295044; literal JBC$_ACMINVOP = 295052; literal JBC$_INVPARLEN = 295060; literal JBC$_TRMMBXUSE = 295068; literal JBC$_MAXSYMEXD = 295076; literal JBC$_SCTTABFUL = 295084; literal JBC$_CREPRCFAL = 295092; literal JBC$_SYMNTBFUL = 295100; literal JBC$_NODSTQUE = 295106; literal JBC$_INVDSTQUE = 295116; literal JBC$_JOBDELETE = 295124; literal JBC$_NORESTART = 295130; literal JBC$_JOBREQUEUE = 295140; literal JBC$_QUERESET = 295148; literal JBC$_SYSFAIL = 295156; literal JBC$_EXECUTING = 295162; literal JBC$_INVMSGBUF = 295172; literal JBC$_MISREQPAR = 295180; literal JBC$_INVPARVAL = 295188; literal JBC$_INCQUETYP = 295196; literal JBC$_INCDSTQUE = 295204; literal JBC$_JOBQUEENA = 295210; literal JBC$_NOTASSIGN = 295218; literal JBC$_INCOMPLETE = 295226; literal JBC$_INVCHANAM = 295236; literal JBC$_INVFORNAM = 295244; literal JBC$_NOSUCHCHAR = 295250; literal JBC$_NOSUCHFORM = 295258; literal JBC$_DUPFORM = 295266; literal JBC$_INCFORMPAR = 295276; literal JBC$_NOSUCHFILE = 295282; literal JBC$_DELACCESS = 295290; literal JBC$_QUENOTSTOP = 295298; literal JBC$_NOMORECHAR = 295306; literal JBC$_NOMOREFILE = 295314; literal JBC$_NOMOREFORM = 295322; literal JBC$_NOMOREJOB = 295330; literal JBC$_NOMOREQUE = 295338; literal JBC$_NOJOBCTX = 295346; literal JBC$_NOQUECTX = 295354; literal JBC$_NOSUCHNODE = 295362; literal JBC$_GEN_MAX = 295370; literal JBC$_QUE_CLOSED = 295378; literal JBC$_NOSUCHENT = 295386; literal JBC$_NOMOREENT = 295394; literal JBC$_JOBCTLABORT = 295404; literal JBC$_NOTSUPPORTED = 295412; literal JBC$_NOTMEANINGFUL = 295419; literal JBC$_QUEDISABLED = 295426; literal JBC$_NOTDISABLED = 295434; literal JBC$_NOTENAGEN = 295442; literal JBC$_ENABLEQUE = 295448; literal JBC$_QUENOTMOD = 295459; literal JBC$_ATT_MAX = 295466; literal JBC$_ATTNOTAVAIL = 295474; literal JBC$_QEXISTS = 295482; literal JBC$_NOSUCHQMGR = 295490; literal JBC$_JOBNOTEXEC = 295498; literal JBC$_DUPCHARNAME = 295506; literal JBC$_DUPCHARNUM = 295514; literal JBC$_DUPFORMNAME = 295522; literal JBC$_STKNOTCHANGE = 295530; literal JBC$_ITMREMOVED = 295539; literal JBC$_PRIOSMALL = 295547; literal JBC$_QMANMAX = 295552; literal JBC$_NOAUTOSTART = 295560; literal JBC$_NOTALLREQUE = 295568; literal JBC$_NULL1 = 295580; literal JBC$_TOOMUCHINFO = 295586; literal JBC$_AUTONOTSTART = 295595; literal JBC$_NULL2 = 295602; literal JBC$_QMANNOTSTARTED = 295610; literal JBC$_BUFTOOSMALL = 295616; literal JBC$_INTERNALERROR = 295624; literal JBC$_QMGREXISTS = 295634; literal JBC$_TWOQMGRS = 295642; literal JBC$_INVQMANNAM = 295650; literal JBC$_NOMOREQMGR = 295658; literal JBC$_QMANABORT = 295668; ! ! THE FOLLOWING CODES ARE SIGNALLED TO THE CONSOLE OR BROADCAST TO THE USER'S ! TERMINAL BY THE JOB CONTROLLER. ! ! THESE MESSAGES ARE NOT PUBLIC AND MAY CHANGE FROM RELEASE TO REALEASE. ! ! NOTE: THE JOB CONTROLLER ABORTS EXECUTION AND RESTARTS ITSELF WHEN A SEVERE ! ERROR IS SIGNALLED TO THE CONSOLE. ! literal JBC$_ACCDISERR = 295939; literal JBC$_ALLOCMEM = 295948; literal JBC$_COMREMJBC = 295956; literal JBC$_INVBLOCK = 295964; literal JBC$_INVMSG = 295970; literal JBC$_NEWQUEUE = 295979; literal JBC$_OPEJBCMBX = 295988; literal JBC$_PRCREAT = 295996; literal JBC$_QUEFORMAT = 296000; literal JBC$_REAJBCMBX = 296012; literal JBC$_REQUEST = 296019; literal JBC$_SETIMR = 296026; literal JBC$_SYMCREPRC = 296034; literal JBC$_SYMDEL = 296042; literal JBC$_WRIRSPMSG = 296050; literal JBC$_WRISMBMBX = 296058; literal JBC$_NFY_COMPLETE = 296067; literal JBC$_NFY_CURRENT = 296075; literal JBC$_NFY_HOLD = 296083; literal JBC$_NFY_PENDING = 296091; literal JBC$_NFY_TIMER = 296099; literal JBC$_STRUCT_LEVEL = 296107; literal JBC$_DIAGNOSTIC = 296112; literal JBC$_DIAG_TEXT = 296120; literal JBC$_DIAG_DATA = 296128; literal JBC$_RESTRICT = 296136; literal JBC$_NFY_FAILURE = 296147; literal JBC$_NFY_CPULIM = 296155; literal JBC$_NFY_WSVAL = 296163; literal JBC$_RESTARTCOM = 296171; literal JBC$_NFY_NOACCESS = 296179; literal JBC$_NFY_CHARAC = 296187; literal JBC$_NFY_NOLOWER = 296195; literal JBC$_NFY_SIZE_MIN = 296203; literal JBC$_NFY_SIZE_MAX = 296211; literal JBC$_NFY_FORM = 296219; literal JBC$_NFY_QUESTATE = 296227; literal JBC$_FAILCREPRC = 296234; literal JBC$_QMANCREPRC = 296242; literal JBC$_INITFAIL = 296252; literal JBC$_QMANDEL = 296258; literal JBC$_NOTIMZONRUL = 296264; literal JBC$_LMFPRCFAIL = 296272; literal JBC$_LMFLICERR = 296280; literal JBC$_LMFERROR = 296288; ! ! THIS IS CONTINUATION OF THE FIRST PORTION OF MESSAGES. ! THE FOLLOWING CODES ARE RETURNED BY THE $SNDJBC, $GETQUI, $SNDJBC, AND $SNDSMB ! SYSTEM SERVICES, OR PLACED IN THE ACCOUNTING FILE. ! ! THESE VALUES ARE PUBLIC AND MUST NOT CHANGE FROM RELEASE TO RELEASE. ! literal JBC$_ACCNOTENB = 298914; ! ! ---- < End of module JBCMSG.B32 - 12-AUG-2010 13:57:03.18 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:07 by OpenVMS SDL EV3-3 ! Source: 02-OCT-2004 13:38:44 $1$DGA7361:[STARLET.SRC]LBRUSR.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LBRCTLTBL *** literal LBR$C_CTLTBLID = 203; ! Ident for control table literal LBR$M_LOCATE = %X'1'; literal LBR$M_OPEN = %X'2'; literal LBR$K_LENGTH = 30; literal LBR$C_LENGTH = 30; literal LBR$S_LBRCTLTBL = 30; macro LBR$B_ID = 0,0,8,0 %; ! Control table ID macro LBR$B_TBLSIZ = 1,0,8,0 %; ! Control table size macro LBR$B_TYPE = 2,0,8,0 %; ! Type of library opened macro LBR$B_FUNC = 3,0,8,0 %; ! Operation (function) requested macro LBR$R_USRFLG_OVERLAY = 6,0,32,0 %; macro LBR$L_USRFLG = 6,0,32,0 %; ! Flags longword macro LBR$R_USRFLG_BITS = 6,0,8,0 %; macro LBR$V_LOCATE = 6,0,1,0 %; ! Use "locate" rather than "move" mode macro LBR$V_OPEN = 6,1,1,0 %; ! Library open macro LBR$L_HDRPTR = 10,0,32,0 %; ! Pointer to in-core header macro LBR$L_CTXPTR = 14,0,32,0 %; ! Pointer to context control block macro LBR$L_CURIDX = 18,0,32,0 %; ! Number of current index macro LBR$L_USRNAM = 22,0,32,0 %; ! Pointer to user NAM block macro LBR$L_OLDHDRPTR = 26,0,32,0 %; ! Pointer to unmodified in-core header block !*** MODULE $MHDDEF *** ! ! Module header ! literal MHD$C_MHDID = 173; ! Value that must be in the ident literal MHD$K_REFLNG = 8; ! Length of record to end of ref count literal MHD$C_REFLNG = 8; ! Length of record to end of ref count literal MHD$K_INSTIME = 8; ! Label for start of insert time literal MHD$C_INSTIME = 8; ! Label for start of insert time literal MHD$K_USRDAT = 16; ! Start of user additional header data literal MHD$C_USRDAT = 16; ! Start of user additional header data literal MHD$K_MHDLEN = 16; ! Length of fixed part of MHD literal MHD$C_MHDLEN = 16; ! Length of fixed part of MHD literal MHD$M_SELSRC = %X'1'; literal MHD$M_OBJTIR = %X'2'; literal MHD$M_WKSYM = %X'4'; literal MHD$K_OBJIDENT = 18; ! literal MHD$C_OBJIDENT = 18; ! literal MHD$K_OREFOFFSET = 52; ! Offset of the other ref. count literal MHD$C_OREFOFFSET = 52; ! Offset of the other ref. count literal MHD$S_MHDDEF = 64; macro MHD$B_LBRFLAG = 0,0,8,0 %; ! Librarian-controlled flag byte macro MHD$B_ID = 1,0,8,0 %; ! Ident macro MHD$L_REFCNT = 4,0,32,0 %; ! Reference count macro MHD$L_DATIM = 8,0,32,0 %; ! Date/time inserted macro MHD$R_FILL_2_OVERLAY = 12,0,32,0 %; macro MHD$R_FILL_2_FIELDS = 12,0,32,0 %; macro MHD$B_USRDAT = 16,0,0,0 %; ! Start of user additional header data macro MHD$R_OBJSTAT_OVERLAY = 16,0,8,0 %; macro MHD$B_OBJSTAT = 16,0,8,0 %; ! Status of object module macro MHD$R_OBJSTAT_BITS = 16,0,8,0 %; macro MHD$V_SELSRC = 16,0,1,0 %; ! Selective search macro MHD$V_OBJTIR = 16,1,1,0 %; ! Module contains TIR records macro MHD$V_WKSYM = 16,2,1,0 %; ! Module contains other non-group global symbol macro MHD$R_OBJIDLNG_OVERLAY = 17,0,8,0 %; macro MHD$B_OBJIDLNG = 17,0,8,0 %; ! Length of ident macro MHD$R_OBJIDLNG_FIELDS = 17,0,8,0 %; macro MHD$T_OBJIDENT = 18,0,0,0 %; ! Object module ident macro MHD$L_OTHEREFCNT = 52,0,32,0 %; ! Other reference count macro MHD$L_MODSIZE = 56,0,32,0 %; ! Module size macro MHD$L_FILL_7 = 60,0,32,0 %; ! part of module size. !*** MODULE $HLPDEF *** ! ! Data structures for help processing ! literal HLP$M_PROMPT = %X'1'; literal HLP$M_PROCESS = %X'2'; literal HLP$M_GROUP = %X'4'; literal HLP$M_SYSTEM = %X'8'; literal HLP$M_LIBLIST = %X'10'; literal HLP$M_HELP = %X'20'; literal HLP$M_SPARE1 = %X'40'; literal HLP$M_PAGE_SAVE = %X'80'; literal HLP$M_PAGE = %X'100'; literal HLP$M_OUTPUT = %X'200'; literal HLP$M_LIBRARY = %X'400'; literal HLP$M_ALL = %X'800'; literal HLP$M_PAGEDEF = %X'1000'; literal HLP$M_PMPTDEF = %X'2000'; literal HLP$M_NOTTERM = %X'4000'; literal HLP$S_HLPDEF = 2; macro HLP$R_HLPDEF_BITS = 0,0,16,0 %; macro HLP$V_PROMPT = 0,0,1,0 %; ! Prompting enabled macro HLP$V_PROCESS = 0,1,1,0 %; ! Process logical name table searches enabled macro HLP$V_GROUP = 0,2,1,0 %; ! Group logical name table searches enabled macro HLP$V_SYSTEM = 0,3,1,0 %; ! System logical name table searched enabled macro HLP$V_LIBLIST = 0,4,1,0 %; ! Output list of default libraries macro HLP$V_HELP = 0,5,1,0 %; ! Display help on help before list of topics macro HLP$V_SPARE1 = 0,6,1,0 %; macro HLP$V_PAGE_SAVE = 0,7,1,0 %; ! Page=Save enabled macro HLP$V_PAGE = 0,8,1,0 %; ! Page breaks enabled macro HLP$V_OUTPUT = 0,9,1,0 %; ! Output listing file enabled macro HLP$V_LIBRARY = 0,10,1,0 %; ! Main library specified by user macro HLP$V_ALL = 0,11,1,0 %; ! Some logical name table searches enabled macro HLP$V_PAGEDEF = 0,12,1,0 %; ! Page flag defaulting disabled macro HLP$V_PMPTDEF = 0,13,1,0 %; ! Prompt flag defaulting disabled macro HLP$V_NOTTERM = 0,14,1,0 %; ! Input device is not a terminal literal HLP$M_NOHLPTXT = %X'1'; literal HLP$M_KEYNAMLIN = %X'2'; literal HLP$M_OTHERINFO = %X'4'; literal HLP$S_HLPDEF1 = 16; macro HLP$L_DESC = 0,0,32,0 %; ! Address of string descriptor for line macro HLP$R_FLAGS_OVERLAY = 4,0,32,0 %; macro HLP$L_FLAGS = 4,0,32,0 %; ! Flags macro HLP$R_FLAGS_BITS = 4,0,8,0 %; macro HLP$V_NOHLPTXT = 4,0,1,0 %; ! Line is part of text due to no help found macro HLP$V_KEYNAMLIN = 4,1,1,0 %; ! Line contains keynames to be printed macro HLP$V_OTHERINFO = 4,2,1,0 %; ! Line is part of "other info available" macro HLP$L_DATA = 8,0,32,0 %; ! Address of user data passed to GET_HELP macro HLP$L_LEVEL = 12,0,32,0 %; ! Level of this help !*** MODULE $LBRDEF *** ! ! Types of libraries ! ! Define the library types literal LBR$C_TYP_UNK = 0; ! Unknown/unspecified library type literal LBR$C_TYP_OBJ = 1; ! Object/shareable image library literal LBR$C_TYP_MLB = 2; ! Macro library literal LBR$C_TYP_HLP = 3; ! Help file library literal LBR$C_TYP_TXT = 4; ! TEXT library literal LBR$C_TYP_SHSTB = 5; ! Shareable image symbol library literal LBR$C_TYP_NCS = 6; ! NCS library literal LBR$C_TYP_DECMX = 6; ! Maximum Digital library type defined literal LBR$C_TYP_EOBJ = 7; ! Alpha object library literal LBR$C_TYP_ESHSTB = 8; ! Alpha Shareable image symbol library literal LBR$C_TYP_ELFOBJ = 9; ! ELF object library literal LBR$C_TYP_ELFSHSTB = 10; ! ELF Shareable image symbol library literal ELBR$C_TYP_DECMX = 10; ! Maximum library type defined literal LBR$C_TYP_RDEC = 127; ! Types between DECMX and RDEC are ! reserved to Digital literal LBR$C_TYP_USRLW = 128; ! User library types range from 128 literal LBR$C_TYP_USRHI = 255; ! to 255. ! ! Function codes for lbr$flush ! literal LBR$C_FLUSHDATA = 1; ! Flush data blocks from cache literal LBR$C_FLUSHALL = 0; ! Flush data blocks, then index blocks ! ! Librarian fixed parameters ! literal LBR$C_MAXRECSIZ = 2048; ! Maximum record size allowed literal LBR$C_PAGESIZE = 512; ! Size of memory page literal LBR$C_HASHSIZE = 512; ! Size of hash table ** Must be power of 2 ** literal LBR$C_TEXTPAGE = 508; ! No. of useable bytes on a text page literal LBR$C_DEXTQ = 50; ! Library default extend quantity literal LBR$C_MAXCTL = 64; ! Maximum number of open libraries literal LBR$C_MAXHDRSIZ = 128; ! Maximum length of module header ! (max user length is: ! lbr$c_maxhdrsiz-mhd$c_length) literal LBR$C_DEFENTALL = 300; ! Number of entries to allocate by default literal LBR$C_RETRYOPEN = 120; ! Number of times to retry open on RMS$_FLK literal LBR$C_RETRYWAIT = 1; ! Number of seconds to wait literal LBR$C_MINREAD = 2; ! Minimum number of blocks to read literal LBR$C_MAXREAD = 100; ! Max blocks can ever read literal LBR$C_MEMXTRA = 50; ! Number blocks to expand region by above and beyond lbr$gl_maxread literal LBR$C_PUTBUFSIZ = 30; ! Block size of VM empty cache buffer literal LBR$C_FLSHBFSIZ = 1; ! Block size of stack mt_cache buffer literal LBR$C_MAXIDXRD = 20; ! Maximum blocks in one index read literal LBR$C_ELFMAXKEYLEN = 1024; ! Maximum length of an ASCII keyword for ELF libraries literal LBR$C_MAXKEYLEN = 128; ! Maximum length of an ASCII keyword, at most N, where ! 3*(N+7) < or = 506 literal LBR$C_MAXLUHREC = 32768; ! maximum library update history record length literal LBR$M_SYM_WEAK = 1; ! Weak symbol attribute literal LBR$M_SYM_GROUP = 2; ! Group symbol attribute literal LBR$M_SYM_ALL = -2147483648; ! All types symbol literal LBR$M_SYM_NGG = 1; ! Symbol type bitmasks - Nongroup global symbol literal LBR$M_SYM_UXWK = 2; ! Symbol type bitmasks - Unix weak symbol literal LBR$M_SYM_GG = 4; ! Symbol type bitmasks - group global symbol literal LBR$M_SYM_GUXWK = 8; ! Symbol type bitmasks - group Unix weak symbol ! ! Librarian fixed parameters for ALPHA ! literal ELBR$C_MAXRECSIZ = 8192; ! Maximum record size allowed ! ! LBR$INI_CONTROL argument list ! literal LBR$C_CREATE = 0; ! Create a new library literal LBR$C_READ = 1; ! Read an existing library literal LBR$C_UPDATE = 2; ! Update an exisiting library literal LBR$C_MAXFUNC = 2; ! Maximum legal function literal LBR$S_LBRDEF = 16; macro LBR$L_IC_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_IC_FUNC = 8,0,32,0 %; ! Function macro LBR$L_IC_TYPE = 12,0,32,0 %; ! Type of library expected to open ! ! LBR$OPEN argument list ! literal LBR$S_LBRDEF1 = 32; macro LBR$L_OP_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_OP_FNS = 8,0,32,0 %; ! Address of string descriptor for filename macro LBR$L_OP_CREOPT = 12,0,32,0 %; ! Address of create options array macro LBR$L_OP_DNS = 16,0,32,0 %; ! Address of descriptor for default name string macro LBR$L_OP_RLFNA = 20,0,32,0 %; ! Address of NAM block for related file macro LBR$L_OP_RNS = 24,0,32,0 %; ! Address of descriptor for related filename string macro LBR$L_OP_RNSLEN = 28,0,32,0 %; ! Address of longword to store resultant filename string length ! ! LBR$CLOSE argument list ! literal LBR$S_LBRDEF2 = 8; macro LBR$L_CL_CTLTBL = 4,0,32,0 %; ! Control index address ! ! LBR$GET_HEADER argument list ! literal LBR$S_LBRDEF3 = 12; macro LBR$L_GH_CTLTBL = 4,0,32,0 %; ! Address of Control index macro LBR$L_GH_RETARY = 8,0,32,0 %; ! Address of 128-longword array for return info ! ! LBR$SET_INDEX argument list ! literal LBR$S_LBRDEF4 = 12; macro LBR$L_SI_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_SI_IDXNUM = 8,0,32,0 %; ! Address of index number ! ! LBR$LOOKUP_KEY argument list ! literal LBR$S_LBRDEF5 = 16; macro LBR$L_LK_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_LK_KEYNAM = 8,0,32,0 %; ! Address of string descriptor or binary value macro LBR$L_LK_TXTRFA = 12,0,32,0 %; ! Address of quadword to return RFA if found ! ! LBR$INSERT_KEY argument list ! literal LBR$S_LBRDEF6 = 16; macro LBR$L_IK_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_IK_KEYNAM = 8,0,32,0 %; ! Address of string descriptor or binary value macro LBR$L_IK_TXTRFA = 12,0,32,0 %; ! Address of RFA of text ! ! LBR$REPLACE_MOD argument list ! ! ! LBR$REPLACE_KEY argument list ! literal LBR$S_LBRDEF7 = 20; macro LBR$L_RK_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_RK_KEYNAM = 8,0,32,0 %; ! Address of string descriptor or binary value macro LBR$L_RK_OLDRFA = 12,0,32,0 %; ! Address of RFA of old text macro LBR$L_RK_NEWRFA = 16,0,32,0 %; ! Address of RFA of new text ! ! LBR$DELETE_KEY argument list ! literal LBR$S_LBRDEF8 = 12; macro LBR$L_DK_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_DK_KEYNAM = 8,0,32,0 %; ! Address of string descriptor or binary value ! ! LBR$DELETE_DATA argument list ! literal LBR$S_LBRDEF9 = 12; macro LBR$L_DD_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_DD_TXTRFA = 8,0,32,0 %; ! Address of RFA to delete from ! ! LBR$GET_RECORD argument list ! literal LBR$S_LBRDEF10 = 16; macro LBR$L_GR_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_GR_BUFDES = 8,0,32,0 %; ! Address of descriptor of buffer macro LBR$L_GR_BUFLEN = 12,0,32,0 %; ! Address of longword to return record size ! ! LBR$PUT_RECORD argument list ! literal LBR$S_LBRDEF11 = 16; macro LBR$L_PR_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_PR_BUFDES = 8,0,32,0 %; ! Address of descriptor of buffer to output macro LBR$L_PR_TXTRFA = 12,0,32,0 %; ! Address of quadword to return RFA ! of text record ! ! LBR$PUT_END argument list ! literal LBR$S_LBRDEF12 = 8; macro LBR$L_PE_CTLTBL = 4,0,32,0 %; ! Control index address ! ! LBR$SEARCH argument list ! literal LBR$S_LBRDEF13 = 20; macro LBR$L_SR_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_SR_IDXNUM = 8,0,32,0 %; ! Address of index number macro LBR$L_SR_RFA = 12,0,32,0 %; ! Address of RFA to search index for macro LBR$L_SR_USRTN = 16,0,32,0 %; ! User routine to call on match ! ! Argument list for user routine called by LBR$SEARCH ! literal LBR$S_LBRDEF14 = 12; macro LBR$L_SU_KEYDES = 4,0,32,0 %; ! Address of string descriptor or binary value macro LBR$L_SU_TXTRFA = 8,0,32,0 %; ! Address of array containing rfa of module ! ! LBR$GET_INDEX argument list ! literal LBR$S_LBRDEF15 = 16; macro LBR$L_GI_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_GI_IDXNUM = 8,0,32,0 %; ! Index number macro LBR$L_GI_USRTN = 12,0,32,0 %; ! User routine to call for each entry ! ! Argument list for user routine called by LBR$GET_INDEX ! literal LBR$S_LBRDEF16 = 12; macro LBR$L_GU_KEYADR = 4,0,32,0 %; ! Address of descriptor or binary value macro LBR$L_GU_TXTRFA = 8,0,32,0 %; ! RFA of associated text ! ! LBR$ADD_UPDATE argument list ! literal LBR$C_ADDMOD = 1; ! Add module literal LBR$C_DELMOD = 2; ! Delete module literal LBR$C_REPMOD = 3; ! Replace module ! literal LBR$S_LBRDEF17 = 16; macro LBR$L_AU_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_AU_FLAGS = 8,0,32,0 %; ! Flags macro LBR$L_AU_KEYNAM = 12,0,32,0 %; ! Address of string descriptor or binary value ! Types of operations logged ! LBR$GET_UPDATES argument list ! literal LBR$S_LBRDEF18 = 12; macro LBR$L_GU_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_GU_USRTN = 8,0,32,0 %; ! User routine to call for each update ! ! Argument list for user routine called by LBR$GET_UPDATES ! literal LBR$S_LBRDEF19 = 8; macro LBR$L_UU_UPDESC = 4,0,32,0 %; ! String descriptor for history line ! ! LBR$MAP_MODULE argument list ! literal LBR$S_LBRDEF20 = 28; macro LBR$L_MM_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$Q_MM_VAADDR = 8,0,0,0 %; literal LBR$S_MM_VAADDR = 8; ! 64-bit virtual Address of the specified object module macro LBR$Q_MM_MODSIZ = 16,0,0,0 %; literal LBR$S_MM_MODSIZ = 8; ! Address of module size macro LBR$L_MM_TXTRFA = 24,0,32,0 %; ! Address of RFA to map from ! ! Argument list for user routine called by LBR$MAP_MODULE ! ! ! LBR$UNMAP_MODULE argument list ! literal LBR$S_LBRDEF21 = 12; macro LBR$L_UM_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_UM_TXTRFA = 8,0,32,0 %; ! Address of RFA to unmap ! ! Argument list for user routine called by LBR$UNMAP_MODULE ! ! ! LBR$GET_VERSION argument list ! literal LBR$S_LBRDEF22 = 12; macro LBR$L_GV_VERDESC = 4,0,32,0 %; ! Addr of Version Descriptor macro LBR$L_GV_RETLEN = 8,0,32,0 %; ! Address of ret. len. ! ! Argument list for user routine called by LBR$GET_VERSION ! ! ! LBR$LOOKUP_TYPE argument list ! literal LBR$S_LBRDEF23 = 20; macro LBR$L_LT_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$L_LT_KEYNAM = 8,0,32,0 %; ! Address of string descriptor or binary value macro LBR$L_LT_TXTRFA = 12,0,32,0 %; ! Address of quadword to return RFA if found macro LBR$L_LT_FLAG = 16,0,32,0 %; ! Address of ret. flag ! ! Argument list for user routine called by LBR$LOOKUP_TYPE ! ! ! LBR$PUT_MODULE argument list ! literal LBR$S_LBRDEF24 = 28; macro LBR$L_PM_CTLTBL = 4,0,32,0 %; ! Control index address macro LBR$Q_PM_VAADDR = 8,0,0,0 %; literal LBR$S_PM_VAADDR = 8; ! 64-bit virtual Address of the specified object module macro LBR$Q_PM_MODSIZ = 16,0,0,0 %; literal LBR$S_PM_MODSIZ = 8; ! Address of module size macro LBR$L_PM_TXTRFA = 24,0,32,0 %; ! Address of return RFA ! ! Argument list for user routine called by LBR$PUT_MODULE ! !*** MODULE $LHIDEF *** ! ! Library header information array offsets ! literal LHI$S_LHIDEF = 144; macro LHI$L_TYPE = 0,0,32,0 %; ! Library type macro LHI$L_NINDEX = 4,0,32,0 %; ! Number of indices macro LHI$L_MAJORID = 8,0,32,0 %; ! Library format major id macro LHI$L_MINORID = 12,0,32,0 %; ! Library format minor id macro LHI$T_LBRVER = 16,0,0,0 %; literal LHI$S_LBRVER = 32; ! ASCIC version of librarian that created macro LHI$L_CREDAT = 48,0,32,0 %; ! Creation date/time macro LHI$L_UPDTIM = 56,0,32,0 %; ! Date/time of last update macro LHI$L_UPDHIS = 64,0,32,0 %; ! VBN of start of update history macro LHI$L_FREEVBN = 68,0,32,0 %; ! 1st logically deleted block macro LHI$L_FREEBLK = 72,0,32,0 %; ! Number of deleted blocks macro LHI$B_NEXTRFA = 76,0,0,0 %; literal LHI$S_NEXTRFA = 6; ! RFA of end of library macro LHI$W_RFAXTR = 82,0,16,0 %; ! Spare word, zeroed macro LHI$L_NEXTVBN = 84,0,32,0 %; ! Next VBN to allocate at end of file macro LHI$L_FREIDXBLK = 88,0,32,0 %; ! Number of free pre-allocated index blocks macro LHI$L_FREEIDX = 92,0,32,0 %; ! Listhead for pre-allocated index blocks macro LHI$L_HIPREAL = 96,0,32,0 %; ! VBN of highest pre-allocated block macro LHI$L_IDXBLKS = 100,0,32,0 %; ! Number of index blocks in use macro LHI$L_IDXCNT = 104,0,32,0 %; ! Number of index entries (total) macro LHI$L_MODCNT = 108,0,32,0 %; ! Number of entries in index 1 (module names) macro LHI$L_MHDUSZ = 112,0,32,0 %; ! Length of user-maintained info in module header macro LHI$L_MAXLUHREC = 116,0,32,0 %; ! Maximum number of library update histories records maintained macro LHI$L_NUMLUHREC = 120,0,32,0 %; ! Number of LUH records in history macro LHI$L_LIBSTATUS = 124,0,32,0 %; ! False if there was an error closing lib macro LHI$B_FREEHDRS = 128,0,0,0 %; literal LHI$S_FREEHDRS = 6; ! Freed list header structure in RFA structure format macro LHI$B_FREENODES = 134,0,0,0 %; literal LHI$S_FREENODES = 6; ! Freed list nodes structure in RFA struture format macro LHI$L_IDX3HEAP = 140,0,32,0 %; ! VBN of third index block !*** MODULE $CREDEF *** ! ! Create options table ! literal CRE$C_VMSV2 = 2; ! VMS version V04-000 format literal CRE$C_VMSV3 = 3; ! VMS version 3 format literal CRE$C_VMSV4 = 4; ! VMS version 4 format for an ELF files. literal CRE$C_VMSV5 = 5; ! VMS version 5 format for an ELF files. literal CRE$C_VMSV6 = 6; ! VMS version 6 format for an ELF files. literal CRE$M_NOCASECMP = %X'1'; literal CRE$M_NOCASENTR = %X'2'; literal CRE$M_UPCASNTRY = %X'4'; literal CRE$C_HLPCASING = 6; ! Treat upper casing as it is for HELP libs literal CRE$C_OBJCASING = 3; ! Treat upper casing as it is for OBJECT libs literal CRE$C_MACTXTCAS = 0; ! Treat upper casing as it is for MACRO and TEXT libs literal CRE$K_LENGTH = 80; ! literal CRE$C_LENGTH = 80; ! literal CRE$S_CREDEF = 80; macro CRE$L_TYPE = 0,0,32,0 %; ! Type of library ! (library types defined in $LBRDEF) macro CRE$L_KEYLEN = 4,0,32,0 %; ! Length of keys in library macro CRE$L_ALLOC = 8,0,32,0 %; ! Initial file allocation macro CRE$L_IDXMAX = 12,0,32,0 %; ! Maximum number of indices macro CRE$L_UHDMAX = 16,0,32,0 %; ! Size of additional module header data macro CRE$L_ENTALL = 20,0,32,0 %; ! Number of index entries to pre-allocate macro CRE$L_LUHMAX = 24,0,32,0 %; ! Number of library update history records to store macro CRE$L_VERTYP = 28,0,32,0 %; ! Version type of library to create macro CRE$R_IDXOPT_OVERLAY = 32,0,32,0 %; macro CRE$L_IDXOPT = 32,0,32,0 %; ! Index options macro CRE$R_IDXOPT_BITS = 32,0,8,0 %; macro CRE$V_NOCASECMP = 32,0,1,0 %; ! Do not upper case the match key macro CRE$V_NOCASENTR = 32,1,1,0 %; ! Do not upper case the index key when comparing with a match key macro CRE$V_UPCASNTRY = 32,2,1,0 %; ! Upper case the index key when entering it into the library ! ! ---- < End of module LBRUSR.R32 - 12-AUG-2010 13:57:03.23 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:24 by OpenVMS SDL EV3-3 ! Source: 14-OCT-1987 15:01:04 $1$DGA7361:[STARLET.SRC]LIBCLIDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LIBCLIDEF *** ! Definitions for LIB$ CLI callback procedures literal LIB$K_CLI_LOCAL_SYM = 1; literal LIB$K_CLI_GLOBAL_SYM = 2; literal LIB$M_CLI_CTRLT = %X'100000'; literal LIB$M_CLI_CTRLY = %X'2000000'; macro CLI$CTRL_FIELDS = 0,0,32,0 %; literal LIB$S_CLI$CTRL_FIELDS = 4; macro LIB$V_CLI_CTRLT = 0,20,1,0 %; macro LIB$V_CLI_CTRLY = 0,25,1,0 %; ! ! ---- < End of module LIBCLIDEF.REQ - 12-AUG-2010 13:57:03.28 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:52 by OpenVMS SDL EV3-3 ! Source: 02-MAY-2008 14:07:59 $1$DGA7361:[STARLET.SRC]LIBCQDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $CQUALDEF *** literal UTIL$M_CQF_CONFIRM = %X'1'; literal UTIL$M_CQF_EXCLUDE = %X'2'; literal UTIL$M_CQF_BEFORE = %X'4'; literal UTIL$M_CQF_SINCE = %X'8'; literal UTIL$M_CQF_CREATED = %X'10'; literal UTIL$M_CQF_MODIFIED = %X'20'; literal UTIL$M_CQF_EXPIRED = %X'40'; literal UTIL$M_CQF_BACKUP = %X'80'; literal UTIL$M_CQF_BYOWNER = %X'100'; literal UTIL$M_CQF_ACCESSED = %X'200'; literal UTIL$M_CQF_ATTRIBUTES = %X'400'; literal UTIL$M_CQF_UPDATE_DATA = %X'800'; literal UTIL$M_CQF_SYMLINK_SEARCH = %X'1000'; literal UTIL$M_CQF_SYMLINK_TARGET = %X'2000'; literal UTIL$S_CFQUALS = 4; macro UTIL$R_FLAGS_OVERLAY = 0,0,32,0 %; macro UTIL$L_QUALIFIER_FLAGS = 0,0,32,0 %; literal UTIL$S_QUALIFIER_FLAGS = 4; macro UTIL$V_CQF_CONFIRM = 0,0,1,0 %; ! macro UTIL$V_CQF_EXCLUDE = 0,1,1,0 %; ! macro UTIL$V_CQF_BEFORE = 0,2,1,0 %; ! macro UTIL$V_CQF_SINCE = 0,3,1,0 %; ! macro UTIL$V_CQF_CREATED = 0,4,1,0 %; ! macro UTIL$V_CQF_MODIFIED = 0,5,1,0 %; ! macro UTIL$V_CQF_EXPIRED = 0,6,1,0 %; ! macro UTIL$V_CQF_BACKUP = 0,7,1,0 %; ! macro UTIL$V_CQF_BYOWNER = 0,8,1,0 %; ! macro UTIL$V_CQF_ACCESSED = 0,9,1,0 %; ! macro UTIL$V_CQF_ATTRIBUTES = 0,10,1,0 %; ! macro UTIL$V_CQF_UPDATE_DATA = 0,11,1,0 %; ! macro UTIL$V_CQF_SYMLINK_SEARCH = 0,12,1,0 %; ! macro UTIL$V_CQF_SYMLINK_TARGET = 0,13,1,0 %; ! macro UTIL$R_QF_OVERLAY2 = 0,0,32,0 %; macro UTIL$V_CQF_ASSIGNED = 0,0,14,0 %; literal UTIL$S_CQF_ASSIGNED = 14; macro UTIL$V_CQF_UNASSIGNED = 0,14,18,0 %; literal UTIL$S_CQF_UNASSIGNED = 18; ! ! define prompt parameter values ! literal UTIL$K_CQF_UNSPECIFIED = 0; literal UTIL$K_CQF_SHORT = 1; literal UTIL$K_CQF_LONG = 2; literal UTIL$K_CQF_CONDENSED = 1; literal UTIL$K_CQF_EXPANDED = 2; literal UTIL$K_CQF_MAX_FORM = 2; ! ! Flag values output argument ! literal UTIL$K_SEARCH_SYMLINK_DEFAULT = 0; ! use process default literal UTIL$K_SEARCH_SYMLINK_NONE = 1; ! use no symlinks literal UTIL$K_SEARCH_SYMLINK_ALL = 2; ! use symlinks always literal UTIL$K_SEARCH_SYMLINK_NOELLIPS = 3; ! use symlinks except in ellipsis literal UTIL$M_CQF_SYMLINK_NOTARGET = %X'4'; literal UTIL$S_CFVALS = 4; macro UTIL$L_FLAG_VALUES = 0,0,32,1 %; macro UTIL$V_CQF_SYMLINK_MODE = 0,0,2,0 %; literal UTIL$S_CQF_SYMLINK_MODE = 2; ! ! NOTE: Symlink search mode encodings are coordinated across $JPIDEF, $LIBCQDEF, ! $LIBFILDEF, $PPROPDEF, and $NAMLDEF. macro UTIL$V_CQF_SYMLINK_NOTARGET = 0,2,1,0 %; ! ! ! TO BE REMOVED literal LIB$M_CQF_CONFIRM = %X'1'; literal LIB$M_CQF_EXCLUDE = %X'2'; literal LIB$M_CQF_BEFORE = %X'4'; literal LIB$M_CQF_SINCE = %X'8'; literal LIB$M_CQF_CREATED = %X'10'; literal LIB$M_CQF_MODIFIED = %X'20'; literal LIB$M_CQF_EXPIRED = %X'40'; literal LIB$M_CQF_BACKUP = %X'80'; literal LIB$M_CQF_BYOWNER = %X'100'; literal LIB$S_CQUALS = 4; macro LIB$R_FLAGS_OVERLAY = 0,0,32,0 %; macro LIB$L_QUALIFIER_FLAGS = 0,0,32,0 %; literal LIB$S_QUALIFIER_FLAGS = 4; macro LIB$V_CQF_CONFIRM = 0,0,1,0 %; ! macro LIB$V_CQF_EXCLUDE = 0,1,1,0 %; ! macro LIB$V_CQF_BEFORE = 0,2,1,0 %; ! macro LIB$V_CQF_SINCE = 0,3,1,0 %; ! macro LIB$V_CQF_CREATED = 0,4,1,0 %; ! macro LIB$V_CQF_MODIFIED = 0,5,1,0 %; ! macro LIB$V_CQF_EXPIRED = 0,6,1,0 %; ! macro LIB$V_CQF_BACKUP = 0,7,1,0 %; ! macro LIB$V_CQF_BYOWNER = 0,8,1,0 %; ! macro LIB$R_QF_OVERLAY2 = 0,0,32,0 %; macro LIB$V_CQF_ASSIGNED = 0,0,9,0 %; literal LIB$S_CQF_ASSIGNED = 9; macro LIB$V_CQF_UNASSIGNED = 0,9,23,0 %; literal LIB$S_CQF_UNASSIGNED = 23; ! ! ---- < End of module LIBCQDEF.R32 - 12-AUG-2010 13:57:03.32 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:25 by OpenVMS SDL EV3-3 ! Source: 06-SEP-1984 11:05:17 $1$DGA7361:[STARLET.SRC]LIBDCFDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LIBDCFDEF *** ! Definitions for LIB$DECODE_FAULT ! ! Operand definition codes ! literal LIB$M_DCFACC = %X'7'; literal LIB$M_DCFTYP = %X'F8'; literal LIB$S_LIB$B_DCF_OPERAND = 1; macro LIB$V_DCFACC = 0,0,3,0 %; literal LIB$S_DCFACC = 3; ! Operand access type macro LIB$V_DCFTYP = 0,3,5,0 %; literal LIB$S_DCFTYP = 5; ! Operand data type ! ! Operand access type codes ! literal LIB$K_DCFACC_R = 1; ! Operand is to be read literal LIB$K_DCFACC_M = 2; ! Operand is to be modified literal LIB$K_DCFACC_W = 3; ! Operand is to be written literal LIB$K_DCFACC_A = 4; ! Operand is an address literal LIB$K_DCFACC_V = 5; ! Operand is a field (may be register or address) literal LIB$K_DCFACC_B = 6; ! Operand is a branch displacement ! ! Operand data type codes ! literal LIB$K_DCFTYP_B = 1; ! Operand is a byte literal LIB$K_DCFTYP_W = 2; ! Operand is a word literal LIB$K_DCFTYP_L = 3; ! Operand is a longword literal LIB$K_DCFTYP_Q = 4; ! Operand is a quadword literal LIB$K_DCFTYP_O = 5; ! Operand is an octaword literal LIB$K_DCFTYP_F = 6; ! Operand is an F_floating literal LIB$K_DCFTYP_D = 7; ! Operand is a D_floating literal LIB$K_DCFTYP_G = 8; ! Operand is a G_floating literal LIB$K_DCFTYP_H = 9; ! Operand is an H_floating ! ! Combined operand access and data type codes ! literal LIB$K_DCFOPR_AB = 8; literal LIB$K_DCFOPR_RB = 9; literal LIB$K_DCFOPR_MB = 10; literal LIB$K_DCFOPR_WB = 11; literal LIB$K_DCFOPR_VB = 12; literal LIB$K_DCFOPR_BB = 13; literal LIB$K_DCFOPR_AW = 16; literal LIB$K_DCFOPR_RW = 17; literal LIB$K_DCFOPR_MW = 18; literal LIB$K_DCFOPR_WW = 19; literal LIB$K_DCFOPR_VW = 20; literal LIB$K_DCFOPR_BW = 21; literal LIB$K_DCFOPR_AL = 24; literal LIB$K_DCFOPR_RL = 25; literal LIB$K_DCFOPR_ML = 26; literal LIB$K_DCFOPR_WL = 27; literal LIB$K_DCFOPR_VL = 28; literal LIB$K_DCFOPR_BL = 29; literal LIB$K_DCFOPR_AQ = 32; literal LIB$K_DCFOPR_RQ = 33; literal LIB$K_DCFOPR_MQ = 34; literal LIB$K_DCFOPR_WQ = 35; literal LIB$K_DCFOPR_VQ = 36; literal LIB$K_DCFOPR_AO = 40; literal LIB$K_DCFOPR_RO = 41; literal LIB$K_DCFOPR_MO = 42; literal LIB$K_DCFOPR_WO = 43; literal LIB$K_DCFOPR_VO = 44; literal LIB$K_DCFOPR_AF = 48; literal LIB$K_DCFOPR_RF = 49; literal LIB$K_DCFOPR_MF = 50; literal LIB$K_DCFOPR_WF = 51; literal LIB$K_DCFOPR_VF = 52; literal LIB$K_DCFOPR_AD = 56; literal LIB$K_DCFOPR_RD = 57; literal LIB$K_DCFOPR_MD = 58; literal LIB$K_DCFOPR_WD = 59; literal LIB$K_DCFOPR_VD = 60; literal LIB$K_DCFOPR_AG = 64; literal LIB$K_DCFOPR_RG = 65; literal LIB$K_DCFOPR_MG = 66; literal LIB$K_DCFOPR_WG = 67; literal LIB$K_DCFOPR_VG = 68; literal LIB$K_DCFOPR_AH = 72; literal LIB$K_DCFOPR_RH = 73; literal LIB$K_DCFOPR_MH = 74; literal LIB$K_DCFOPR_WH = 75; literal LIB$K_DCFOPR_VH = 76; literal LIB$K_DCFOPR_END = 0; ! ! ! ---- < End of module LIBDCFDEF.REQ - 12-AUG-2010 13:57:03.37 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:25 by OpenVMS SDL EV3-3 ! Source: 15-OCT-1989 17:05:38 $1$DGA7361:[STARLET.SRC]LIBDTDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LIBDTDEF *** ! ! Interface definitions for LIB$DT (date/time) package ! ! ! Request codes for LIB$INIT_DATE_TIME_CONTEXT ! literal LIB$K_MONTH_NAME = 0; ! Pre-init the month names literal LIB$K_MONTH_NAME_ABB = 3; ! Pre-init the month names literal LIB$K_WEEKDAY_NAME = 6; ! Pre-init the week names literal LIB$K_WEEKDAY_NAME_ABB = 9; ! Pre-init the week names literal LIB$K_MERIDIEM_INDICATOR = 12; ! Pre-init the AM/PM names literal LIB$K_OUTPUT_FORMAT = 1; ! Pre-init the format literal LIB$K_INPUT_FORMAT = 2; ! Pre-init the format literal LIB$K_RELATIVE_DAY_NAME = 15; ! Pre-init "TODAY", etc. literal LIB$K_FORMAT_MNEMONICS = 18; ! Pre-init MM, DD, YYYY, etc. literal LIB$K_LANGUAGE = 4; ! Pre-init user's language ! ! Operation codes (flags) for date time conversion routines. ! NOTE: any new operation codes MUST be added just BEFORE MAX_OPERATION ! literal LIB$K_MONTH_OF_YEAR = 1; ! requests output in units of month of year literal LIB$K_DAY_OF_YEAR = 2; ! requests output in days of year 1-366 literal LIB$K_HOUR_OF_YEAR = 3; ! requests output in hours of year 1-8784 literal LIB$K_MINUTE_OF_YEAR = 4; ! requests output in minutes of year 1-527040 literal LIB$K_SECOND_OF_YEAR = 5; ! requests output in seconds of year 1-31622400 literal LIB$K_DAY_OF_MONTH = 6; ! request output in days of month 1-31 literal LIB$K_HOUR_OF_MONTH = 7; ! request output in hours of month 1-744 literal LIB$K_MINUTE_OF_MONTH = 8; ! request output in minutes of month 1-44640 literal LIB$K_SECOND_OF_MONTH = 9; ! requests output in seconds of month 1-2678400 literal LIB$K_DAY_OF_WEEK = 10; ! requests output in days of week 1-7 with monday = 1 literal LIB$K_HOUR_OF_WEEK = 11; ! requests output in hours of week 1-168 literal LIB$K_MINUTE_OF_WEEK = 12; ! requests in minutes of week 1-10080 literal LIB$K_SECOND_OF_WEEK = 13; ! requests output in seconds of week 1-604800 literal LIB$K_HOUR_OF_DAY = 14; ! requests output in hours of day 1-24 literal LIB$K_MINUTE_OF_DAY = 15; ! requests output in minutes of day 1-1440 literal LIB$K_SECOND_OF_DAY = 16; ! requests output in seconds of day 1-3600 literal LIB$K_MINUTE_OF_HOUR = 17; ! requests output in minutes of hour 1-60 literal LIB$K_SECOND_OF_HOUR = 18; ! requests output in minutes of hour 1-3600 literal LIB$K_SECOND_OF_MINUTE = 19; ! requests output in seconds of minutes 1-60 literal LIB$K_JULIAN_DATE = 20; ! requests output as a julian day number literal LIB$K_DELTA_WEEKS = 21; ! input/output in terms of delta weeks literal LIB$K_DELTA_DAYS = 22; ! input/output in terms of delta days literal LIB$K_DELTA_HOURS = 23; ! input/output in terns of delta hours literal LIB$K_DELTA_MINUTES = 24; ! input/output in terms of delta minutes literal LIB$K_DELTA_SECONDS = 25; ! input/output in terms of delta seconds literal LIB$K_DELTA_WEEKS_F = 26; ! input/output in terms of fractional delta weeks literal LIB$K_DELTA_DAYS_F = 27; ! input/output in terms of fractional delta days literal LIB$K_DELTA_HOURS_F = 28; ! input/output in terms of fractional delta hours literal LIB$K_DELTA_MINUTES_F = 29; ! input/output in terms of fractional delta minutess literal LIB$K_DELTA_SECONDS_F = 30; ! input/output in terms of fractional delta seconds literal LIB$K_MAX_OPERATION = 31; ! 1+ max # of conversion flags ! ! Masks for outputting date or time fields only ! literal LIB$M_TIME_FIELDS = %X'1'; literal LIB$M_DATE_FIELDS = %X'2'; macro DT_PRINT_FIELDS = 0,0,8,0 %; literal LIB$S_DT_PRINT_FIELDS = 1; macro LIB$V_TIME_FIELDS = 0,0,1,0 %; ! Force printing of time fields macro LIB$V_DATE_FIELDS = 0,1,1,0 %; ! Force printing of date fields ! ! Masks for input defaulting flag longword ! literal LIB$M_YEAR = %X'1'; literal LIB$M_MONTH = %X'2'; literal LIB$M_DAY = %X'4'; literal LIB$M_HOUR = %X'8'; literal LIB$M_MINUTE = %X'10'; literal LIB$M_SECOND = %X'20'; literal LIB$M_HUNDREDTHS = %X'40'; macro DT_DEFAULT_FIELDS = 0,0,8,0 %; literal LIB$S_DT_DEFAULT_FIELDS = 1; macro LIB$V_YEAR = 0,0,1,0 %; ! Allow the year to be defaulted macro LIB$V_MONTH = 0,1,1,0 %; ! Allow the month to be defaulted macro LIB$V_DAY = 0,2,1,0 %; ! Allow the day to be defaulted macro LIB$V_HOUR = 0,3,1,0 %; ! Allow the hour to be defaulted macro LIB$V_MINUTE = 0,4,1,0 %; ! Allow the minute to be defaulted macro LIB$V_SECOND = 0,5,1,0 %; ! Allow the second to be defaulted macro LIB$V_HUNDREDTHS = 0,6,1,0 %; ! Allow the fract to be defaulted ! ! ---- < End of module LIBDTDEF.REQ - 12-AUG-2010 13:57:03.42 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:26 by OpenVMS SDL EV3-3 ! Source: 17-JUN-2004 16:11:31 $1$DGA7361:[STARLET.SRC]LIBICBDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE LIBICB IDENT V2.0 *** literal LIB$K_PROC_VALUE_NULL = 0; literal LIB$K_INVO_HANDLE_NULL = 0; literal LIBICB$K_INVO_HANDLE_SIZE = 8; literal LIBICB$K_INVO_CONTEXT_VERSION = 2; ! The header quadword contains: literal LIBICB$M_FFLAGS_BITS = %X'FFFFFF'; literal LIBICB$M_BOTTOM_OF_STACK = %X'1'; literal LIBICB$M_HANDLER_PRESENT = %X'2'; literal LIBICB$M_IN_PROLOGUE = %X'4'; literal LIBICB$M_IN_EPILOGUE = %X'8'; literal LIBICB$M_HAS_MEM_STK_FRAME = %X'10'; literal LIBICB$M_HAS_REG_STK_FRAME = %X'20'; literal LIBICB$K_INVO_CONTEXT_T_LENGTH = 1888; literal LIBICB$K_SDA_COPY_LENGTH = 1960; literal LIBICB$M_UO_FLAG_CACHE_UNWIND = %X'1'; literal LIBICB$M_UO_FLAG_EMULATION_MODE = %X'2'; literal LIBICB$K_UO_LENGTH = 88; ! literal LIBICB$m_using_client_memread = %X'1'; literal LIBICB$m_my_mode = %X'6'; literal LIBICB$K_CONTEXT_BLK_SIZE = 2080; ! The following is an "internal" area that's reserved for use by literal LIBICB$K_REGION_BLK_SIZE = 1096; literal LIBICB$K_REGIONLABEL_BLK_SIZE = 32; literal LIBICB$K_DESCRIPTOR_BLK_SIZE = 1280; ! Action codes: literal LIBICB$K_ACTION_KP_FIND_UNWIND = 1; ! override call to exe$kp_find_unwind_context ! prototype: ! uint64 sp = action_routine (enum action_code code, uint64 sp, uint64 ident); literal LIBICB$K_ACTION_USE_DEFAULT = -1; ! action routine return value to "use default" ! Alert codes: (matches _UNW_ReturnCode enum in unwind.h) literal LIBICB$K_AC_STEP_KRNL_SAV_STATE = -2; ! _UNW_STEP_KERNEL_SAVE_STATE = -2 literal LIBICB$K_AC_STEP_BOTTOM = -1; ! _UNW_STEP_BOTTOM literal LIBICB$K_AC_OK = 0; ! _UNW_OK = 0 literal LIBICB$K_AC_STEP_ERROR = 1; ! _UNW_STEP_ERROR literal LIBICB$K_AC_STEP_INVALID_IP = 2; ! _UNW_STEP_INVALID_IP literal LIBICB$K_AC_STEP_INVALID_SP = 3; ! _UNW_STEP_INVALID_SP literal LIBICB$K_AC_STEP_INVALID_GR = 4; ! _UNW_STEP_INVALID_GR literal LIBICB$K_AC_STEP_INVALID_PFS = 5; ! _UNW_STEP_INVALID_PFS literal LIBICB$K_AC_STEP_INVALID_RSC = 6; ! _UNW_STEP_INVALID_RSC literal LIBICB$K_AC_STEP_INVALID_BSP = 7; ! _UNW_STEP_INVALID_BSP literal LIBICB$K_AC_STEP_INV_BSPSTORE = 8; ! _UNW_STEP_INVALID_BSPSTORE literal LIBICB$K_AC_STEP_INVALID_CFM = 9; ! _UNW_STEP_INVALID_CFM literal LIBICB$K_AC_STEP_INVALID_BR = 10; ! _UNW_STEP_INVALID_BR literal LIBICB$K_AC_STEP_BAD_BSP_ALIGN = 11; ! _UNW_STEP_BAD_BSP_ALIGNMENT literal LIBICB$K_AC_STEP_INVALID_RNAT = 12; ! _UNW_STEP_INVALID_RNAT literal LIBICB$K_AC_STEP_NODSC4_NONLEAF = 13; ! _UNW_STEP_NO_DESCRIPTOR_FOR_NON_LEAF literal LIBICB$K_AC_STEP_CORRUPT_DESC = 14; ! _UNW_STEP_CORRUPT_DESCRIPTOR literal LIBICB$K_AC_STEP_RSE_NOT_FLUSHD = 15; ! _UNW_STEP_RSE_NOT_FLUSHED literal LIBICB$K_AC_STEP_SIGNAL_CONTEXT = 16; ! _UNW_STEP_SIGNAL_CONTEXT literal LIBICB$K_AC_STEP_BAD_STATE = 17; ! _UNW_STEP_NOT_ALLOWED_IN_STATE literal LIBICB$K_AC_INIT_RANGE_ERROR = 18; ! _UNW_INITIALIZATION_RANGE_ERROR literal LIBICB$K_AC_QUERY_RANGE_ERROR = 19; ! _UNW_QUERY_RANGE_ERROR literal LIBICB$K_AC_QUERY_INVALID_ERROR = 20; ! _UNW_QUERY_INVALID_ERROR literal LIBICB$K_AC_SET_BAD_STATE = 21; ! _UNW_SET_NOT_ALLOWED_IN_STATE literal LIBICB$K_AC_CURR_CTXT_FAILED = 22; ! _UNW_CURRENT_CONTEXT_FAILED literal LIBICB$K_AC_CURR_CTXT_BAD_STATE = 23; ! _UNW_CURRENT_CONTEXT_NOT_ALLOWED_IN_STATE literal LIBICB$K_AC_MEMORY_ALLOC_ERROR = 24; ! _UNW_MEMORY_ALLOCATION_ERROR literal LIBICB$K_AC_CLEAR_BAD_STATE = 25; ! _UNW_CLEAR_NOT_ALLOWED_IN_STATE literal LIBICB$K_AC_QUERY_BAD_STATE = 26; ! _UNW_QUERY_NOT_ALLOWED_IN_STATE literal LIBICB$K_AC_INTERNAL_ERROR = 27; ! _UNW_INTERNAL_ERROR literal LIBICB$K_AC_STEP_I_ABI_MISMATCH = 28; ! _UNW_STEP_INTERRUPTION_ABI_MISMATCH literal LIBICB$K_AC_UNALIGNED_ICB = 29; ! _UNW_UNALIGNED_ICB literal LIBICB$K_AC_READ_MEM_FAILURE = 30; ! _UNW_READ_MEMORY_FAILURE literal LIBICB$K_AC_WRITE_MEM_FAILURE = 31; ! _UNW_WRITE_MEMORY_FAILURE literal LIBICB$K_AC_WRITE_REG_FAILURE = 32; ! _UNW_WRITE_REGISTER_FAILURE literal LIBICB$K_AC_UO_INCON_CALLBACK = 33; ! _UNW_USER_OVERRIDE_INCONSISTENT_CALLBACK_PARAM literal LIBICB$K_AC_PUT_REG_INVALID = 34; ! _UNW_PUT_REGISTER_INVALID literal LIBICB$K_INVO_CONTEXT_BLK_SIZE = 2112; literal LIBICB$S_INVO_CONTEXT_BLK = 2112; ! ! The length of the structure in bytes (a longword field), ! The frame flags (a 3 byte field of bits), and ! The version number (a 1 byte field) macro LIBICB$IH_HEADER = 0,0,0,1 %; literal LIBICB$S_HEADER = 8; ! Header (length, flags, version) macro LIBICB$L_CONTEXT_LENGTH = 0,0,32,0 %; macro LIBICB$R_FRAMEFLAGS = 4,0,24,0 %; literal LIBICB$S_FRAMEFLAGS = 3; macro LIBICB$V_FFLAGS_BITS = 4,0,24,0 %; macro LIBICB$V_BOTTOM_OF_STACK = 4,0,1,0 %; macro LIBICB$V_HANDLER_PRESENT = 4,1,1,0 %; macro LIBICB$V_IN_PROLOGUE = 4,2,1,0 %; macro LIBICB$V_IN_EPILOGUE = 4,3,1,0 %; macro LIBICB$V_HAS_MEM_STK_FRAME = 4,4,1,0 %; macro LIBICB$V_HAS_REG_STK_FRAME = 4,5,1,0 %; macro LIBICB$B_BLOCK_VERSION = 7,0,8,0 %; ! ***** Start of context_t ****************** ! ! a context_t structure should be octaword (16-byte) aligned, and is passed by ! reference to the "get initial context" callback routine and establishes ! the "current" state of the machine and forms the inital context for for unwinding. ! macro LIBICB$IH_IREG = 16,0,0,1 %; literal LIBICB$S_IREG = 1024; ! General (integer) Registers ! 32 static registers, plus ! up to 96 stacked/rotating registers macro LIBICB$ih_i_used0 = 16,0,0,1 %; literal LIBICB$s_i_used0 = 8; ! R0 macro LIBICB$IH_GP = 24,0,0,1 %; literal LIBICB$S_GP = 8; ! synonym for R1 (Global Data Pointer) macro LIBICB$IH_SP = 112,0,0,1 %; literal LIBICB$S_SP = 8; ! synonym for R12 (Memory Stack Pointer) macro LIBICB$IH_TP = 120,0,0,1 %; literal LIBICB$S_TP = 8; ! synonym for R13 (Thread Pointer) macro LIBICB$IH_AI = 216,0,0,1 %; literal LIBICB$S_AI = 8; ! synonym for R25 (Argument Information register) macro LIBICB$IH_GRNAT = 1040,0,0,1 %; literal LIBICB$S_GRNAT = 16; ! General Register NaT Collection Registers macro LIBICB$FO_F2_F31 = 1056,0,0,1 %; literal LIBICB$S_F2_F31 = 480; ! Floating Point Registers. ! 32 static floating point registers. ! Floating Point Registers are 82 bits wide ! but stored here in octawords. macro LIBICB$PH_F32_F127 = 1536,0,0,1 %; literal LIBICB$S_F32_F127 = 8; ! Pointer to upper Floating Register save ! area. Zero if not saved. macro LIBICB$IH_BRANCH = 1544,0,0,1 %; literal LIBICB$S_BRANCH = 64; ! Branch Registers ! Application Registers (ARs) ! macro LIBICB$IH_RSC = 1608,0,0,1 %; literal LIBICB$S_RSC = 8; ! Register Stack Configuration Register macro LIBICB$IH_BSP = 1616,0,0,1 %; literal LIBICB$S_BSP = 8; ! Backing store pointer macro LIBICB$IH_BSPSTORE = 1624,0,0,1 %; literal LIBICB$S_BSPSTORE = 8; ! Backing store write pointer macro LIBICB$IH_RNAT = 1632,0,0,1 %; literal LIBICB$S_RNAT = 8; ! RSE NaT Collection Register macro LIBICB$IH_CCV = 1640,0,0,1 %; literal LIBICB$S_CCV = 8; ! Compare & Exchange Value Register macro LIBICB$IH_UNAT = 1648,0,0,1 %; literal LIBICB$S_UNAT = 8; ! User NaT Collection Register macro LIBICB$FH_FPSR = 1656,0,0,1 %; literal LIBICB$S_FPSR = 8; ! OBSOLETE - do not rely on the contents of this field. macro LIBICB$IH_PFS = 1664,0,0,1 %; literal LIBICB$S_PFS = 8; ! Previous Function State macro LIBICB$IH_LC = 1672,0,0,1 %; literal LIBICB$S_LC = 8; ! Loop Count Register macro LIBICB$IH_EC = 1680,0,0,1 %; literal LIBICB$S_EC = 8; ! Epilogue Count Register macro LIBICB$IH_CSD = 1688,0,0,1 %; literal LIBICB$S_CSD = 8; ! Copy of AR.CSD macro LIBICB$IH_SSD = 1696,0,0,1 %; literal LIBICB$S_SSD = 8; ! Copy of AR.SSD ! ! End ARs macro LIBICB$Q_PRED = 1704,0,0,1 %; literal LIBICB$S_PRED = 8; ! Predicate Collection Register, PR0-PR63 macro LIBICB$IH_PC = 1712,0,0,1 %; literal LIBICB$S_PC = 8; ! Current PC (Instruction Pointer + slot) macro LIBICB$IH_CFM = 1720,0,0,1 %; literal LIBICB$S_CFM = 8; ! Current Frame Marker macro LIBICB$V_SOF = 1720,0,7,0 %; literal LIBICB$S_SOF = 7; ! Size of stack frame macro LIBICB$V_SOL = 1720,7,7,0 %; literal LIBICB$S_SOL = 7; ! Size of locals portion of stack frame macro LIBICB$V_SOR = 1720,14,4,0 %; literal LIBICB$S_SOR = 4; ! Size of rotating portion of stack frame macro LIBICB$V_RRB_GR = 1720,18,7,0 %; literal LIBICB$S_RRB_GR = 7; ! Register Rename Base for General Registers macro LIBICB$V_RRB_FR = 1720,25,7,0 %; literal LIBICB$S_RRB_FR = 7; ! Register Rename Base for Floating-point Registers macro LIBICB$V_RRB_PR = 1724,0,6,0 %; literal LIBICB$S_RRB_PR = 6; ! Register Rename Base for Predicate Registers macro LIBICB$IH_UM = 1728,0,0,1 %; literal LIBICB$S_UM = 8; ! User Mask bits of the PSR. macro LIBICB$V_BE = 1728,1,1,0 %; ! Big-endian memory access enable macro LIBICB$V_UP = 1728,2,1,0 %; ! User performance monitor enable macro LIBICB$V_AC = 1728,3,1,0 %; ! Alignment check data memory references macro LIBICB$V_MFL = 1728,4,1,0 %; ! Lower (F2-F31) Floating-point registers written macro LIBICB$V_MFH = 1728,5,1,0 %; ! Upper (F32-F127) Floating-point registers written macro LIBICB$ih_next_bsp = 1736,0,0,1 %; literal LIBICB$s_next_bsp = 8; ! Next frame's Backing Store Pointer (Internal use) macro LIBICB$ih_next_pfs = 1744,0,0,1 %; literal LIBICB$s_next_pfs = 8; ! Next frame's Previous Frame State (Internal use) ! The following two locations are used when walking from an inner ! mode stack to an outer mode and context has been saved in a INTSK structure, ! but the outer mode stacked registers have bee saved on the inner mode RSE backing store. ! macro LIBICB$ih_bspbase = 1752,0,0,1 %; literal LIBICB$s_bspbase = 8; ! Base for outer mode stacked registers saved in ! inner mode RSE backing store (Internal use) macro LIBICB$ih_intstk_rnat = 1760,0,0,1 %; literal LIBICB$s_intstk_rnat = 8; ! RNAT as saved in INTSTK (Internal use) ! the following "valid" bitmasks are used to record the validity ! of a given register for this context macro LIBICB$O_GR_VALID = 1768,0,0,1 %; literal LIBICB$S_GR_VALID = 16; ! General Register validity mask macro LIBICB$L_FR_VALID = 1784,0,32,1 %; ! F2 - F31 validity mask (bit 2 for F2) macro LIBICB$l_fr_valid_fill = 1788,0,32,1 %; macro LIBICB$Q_BR_VALID = 1792,0,0,1 %; literal LIBICB$S_BR_VALID = 8; ! Branch Register validity mask macro LIBICB$Q_AR_VALID = 1800,0,0,1 %; literal LIBICB$S_AR_VALID = 8; ! Application Register validity mask macro LIBICB$V_RSC_VALID = 1800,0,1,0 %; ! Register Stack Configuration Register macro LIBICB$V_BSP_VALID = 1800,1,1,0 %; ! Backing store pointer macro LIBICB$V_BSPSTORE_VALID = 1800,2,1,0 %; ! Backing store write pointer macro LIBICB$V_RNAT_VALID = 1800,3,1,0 %; ! RSE NaT Collection Register macro LIBICB$V_CCV_VALID = 1800,4,1,0 %; ! Compare & Exchange Value Register macro LIBICB$V_UNAT_VALID = 1800,5,1,0 %; ! User NaT Collection Register macro LIBICB$V_FPSR_VALID = 1800,6,1,0 %; ! Floating Point Status Register. macro LIBICB$V_PFS_VALID = 1800,7,1,0 %; ! Previous Function State macro LIBICB$V_LC_VALID = 1800,8,1,0 %; ! Loop Count Register macro LIBICB$V_EC_VALID = 1800,9,1,0 %; ! Epilogue Count Register macro LIBICB$V_CSD_VALID = 1800,10,1,0 %; ! Copy of AR.CSD macro LIBICB$V_SSD_VALID = 1800,11,1,0 %; ! Copy of AR.SSD macro LIBICB$Q_OTHER_VALID = 1808,0,0,1 %; literal LIBICB$S_OTHER_VALID = 8; ! PC, CFM validity mask macro LIBICB$V_PC_VALID = 1808,0,1,0 %; ! Current PC macro LIBICB$V_CFM_VALID = 1808,1,1,0 %; ! Current Frame Marker macro LIBICB$V_UM_VALID = 1808,2,1,0 %; ! User Mask field of PSR. macro LIBICB$Q_PR_VALID = 1816,0,0,1 %; literal LIBICB$S_PR_VALID = 8; ! Predicate Register validity mask macro LIBICB$IH_ORIGINAL_SPILL_ADDR = 1824,0,0,1 %; literal LIBICB$S_ORIGINAL_SPILL_ADDR = 8; ! Original address of GR spill area (&LIBICB$IH_IREG[0]) ! (needed for NaT bit podition calculations) macro LIBICB$ih_true_psp = 1832,0,0,1 %; literal LIBICB$s_true_psp = 8; ! True Previous SP (for Invo Handle) macro LIBICB$ih_spare_03 = 1840,0,0,1 %; literal LIBICB$s_spare_03 = 8; macro LIBICB$ih_spare_04 = 1848,0,0,1 %; literal LIBICB$s_spare_04 = 8; macro LIBICB$ih_spare_05 = 1856,0,0,1 %; literal LIBICB$s_spare_05 = 8; macro LIBICB$ih_spare_06 = 1864,0,0,1 %; literal LIBICB$s_spare_06 = 8; macro LIBICB$ih_spare_07 = 1872,0,0,1 %; literal LIBICB$s_spare_07 = 8; macro LIBICB$ih_spare_08 = 1880,0,0,1 %; literal LIBICB$s_spare_08 = 8; ! ! ******* End of context_t structure ********************* macro LIBICB$IH_PSP = 1888,0,0,1 %; literal LIBICB$S_PSP = 8; ! SP at entry to routine (Previous SP) macro LIBICB$ih_psp_valid = 1896,0,0,1 %; literal LIBICB$s_psp_valid = 8; ! PreviousSP valid macro LIBICB$IH_RETURN_PC = 1904,0,0,1 %; literal LIBICB$S_RETURN_PC = 8; ! Return PC for SDA. macro LIBICB$IH_PREV_BSP = 1912,0,0,1 %; literal LIBICB$S_PREV_BSP = 8; ! BSP of preceding frame for SDA. macro LIBICB$PH_CHFCTX_ADDR = 1920,0,0,1 %; literal LIBICB$S_CHFCTX_ADDR = 8; ! Pointer to condition handler facility context block macro LIBICB$PH_OTHER = 1928,0,0,1 %; literal LIBICB$S_OTHER = 8; ! Pointer to other interesting structure (if any) macro LIBICB$IH_OSSD = 1936,0,0,1 %; literal LIBICB$S_OSSD = 8; ! Copy of OSSD from Unwind Information Block macro LIBICB$IH_HANDLER_FV = 1944,0,0,1 %; literal LIBICB$S_HANDLER_FV = 8; ! Condition Handler Function Value macro LIBICB$PH_LSDA = 1952,0,0,1 %; literal LIBICB$S_LSDA = 8; ! Virtual Address of LSD area of UIB macro LIBICB$ph_desc = 1960,0,0,1 %; literal LIBICB$s_desc = 8; ! Pointer to _Unwind_Descriptor structure (Internal use) macro LIBICB$ph_history = 1968,0,0,1 %; literal LIBICB$s_history = 8; ! Pointer to _Unwind_History structure (Internal use) ! ******* Start of User Override ************************* ! ! The following locations can be used to alter the default behavior ! Typically this would be used for cross-process unwinding, and ! specifying an alternative memory allocation scheme. macro LIBICB$R_UO_BASE = 1976,0,32,1 %; ! base of User Override area macro LIBICB$Q_UO_FLAGS = 1976,0,0,1 %; literal LIBICB$S_UO_FLAGS = 8; ! operational flags macro LIBICB$V_UO_FLAG_CACHE_UNWIND = 1976,0,1,0 %; ! cache unwind information between calls ! for effiecient stack walk. macro LIBICB$V_UO_FLAG_EMULATION_MODE = 1976,1,1,0 %; ! Internal use only macro LIBICB$IH_UO_IDENT = 1984,0,0,1 %; literal LIBICB$S_UO_IDENT = 8; ! user context variable, passed by value ! to the following callback routines. macro LIBICB$PH_UO_READ_MEM = 1992,0,0,1 %; literal LIBICB$S_UO_READ_MEM = 8; ! Pointer to user "read memory" routine macro LIBICB$PH_UO_GETUEINFO = 2000,0,0,1 %; literal LIBICB$S_UO_GETUEINFO = 8; ! Pointer to user "get Unwind Entry Information" routine macro LIBICB$PH_UO_GETCONTEXT = 2008,0,0,1 %; literal LIBICB$S_UO_GETCONTEXT = 8; ! Pointer to user "get Initial Context" routine macro LIBICB$PH_UO_WRITE_MEM = 2016,0,0,1 %; literal LIBICB$S_UO_WRITE_MEM = 8; ! Pointer to user "put memory" routine macro LIBICB$PH_UO_WRITE_REG = 2024,0,0,1 %; literal LIBICB$S_UO_WRITE_REG = 8; ! Pointer to user "put register" routine macro LIBICB$PH_UO_MALLOC = 2032,0,0,1 %; literal LIBICB$S_UO_MALLOC = 8; ! Pointer to user "malloc" routine macro LIBICB$PH_UO_FREE = 2040,0,0,1 %; literal LIBICB$S_UO_FREE = 8; ! Pointer to user "free" routine macro LIBICB$PH_UO_ACTION_ROUTINE = 2048,0,0,1 %; literal LIBICB$S_UO_ACTION_ROUTINE = 8; ! Pointer to user "action" routine - actions ! are defined by "action codes" (see below). macro LIBICB$ih_spare_10 = 2056,0,0,1 %; literal LIBICB$s_spare_10 = 8; ! ******* End of User Override area *************************** ! the following locations are used internally, and should not be ! modified by the user macro LIBICB$ph_most_recent_context = 2064,0,0,1 %; literal LIBICB$s_most_recent_context = 8; ! Most recent user context used macro LIBICB$l_internal_flags = 2072,0,32,1 %; ! internal operational flags macro LIBICB$v_using_client_memread = 2072,0,1,0 %; macro LIBICB$v_my_mode = 2072,1,2,0 %; literal LIBICB$s_my_mode = 2; macro LIBICB$l_interface_state = 2076,0,32,1 %; ! enum InterfaceUsageState macro LIBICB$l_ip_source = 2080,0,32,1 %; ! enum IP_SOURCE ! The alert code can be examined to a more detailed failure status macro LIBICB$L_ALERT_CODE = 2084,0,32,1 %; ! enum _UNW_ReturnCode macro LIBICB$ih_spare_11 = 2088,0,0,1 %; literal LIBICB$s_spare_11 = 8; ! the operating system. It's size may vary over time. macro LIBICB$IH_SYSTEM_DEFINED = 2096,0,0,1 %; literal LIBICB$S_SYSTEM_DEFINED = 16; ! ! Action codes are passed as the first parameter to the UO_ACTION_ROUTINE to indicate ! an action to be performed. The remaining parameters to the action routine are action ! dependent, and usually include the ident value as the last parameter. ! ! Action routine prototype: ! ! uint64 return_value = action_routine (enum action_code code, ..., uint64 ident); ! ! A return_value of ACTION_USE_DEFAULT indicates that the action was not performed ! and the calling standard routines should fall back to "default" processing. ! Other return values are action dependent. ! ! Write Register callback routine - WhichReg enum. ! ! The Write Register callback routine is only used when a live ! register in another (remote) process needs to be written as ! a result of a call to LIB$I64_PUT_INVO_REGISTERS. ! It is permissible to implement a subset of these registers, ! or not implement it at all if you are sure that these registers ! have been saved to memory before PUT_INVO is called ! ! For the General Registers: ! whichReg = LIBICB$K_WhichReg_GR0 + register number ! value_1 = 64-bit register value ! value_2 = 0, or 1 for NaT bit value ! literal LIBICB$K_WhichReg_GR0 = 0; ! ! For the Floating Registers: ! whichReg = LIBICB$K_WhichReg_FR0 + floating register number ! value_1 = 64-bit lower floating fill value ! value_2 = 64-bit upper floating fill value ! literal LIBICB$K_WhichReg_FR0 = 128; ! ! For the Predicate Registers: ! whichReg = LIBICB$K_WhichReg_PR0 + predicate register number ! value_1 = 0, or 1 rgister (bit) value ! value_2 = ignored ! literal LIBICB$K_WhichReg_PR0 = 256; ! ! For the Branch Registers: ! whichReg = LIBICB$K_WhichReg_BR0 + branch register number ! value_1 = 64-bit register value ! value_2 = ignored ! literal LIBICB$K_WhichReg_BR0 = 320; ! ! For the Floating Point Status Register: ! whichReg = LIBICB$K_WhichReg_FPSR ! value_1 = 64-bit register value ! value_2 = ignored ! literal LIBICB$K_WhichReg_FPSR = 328; ! ! ---- < End of module LIBICBDEF.R32 - 12-AUG-2010 13:57:03.47 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:25 by OpenVMS SDL EV3-3 ! Source: 27-SEP-1989 13:01:51 $1$DGA7361:[STARLET.SRC]LIBVMDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LIBVMDEF *** ! Interface definitions for LIB$VM package ! ! LIB$CREATE_VM_ZONE algorithm codes literal LIB$K_VM_FIRST_FIT = 1; ! First fit literal LIB$K_VM_QUICK_FIT = 2; ! Quick fit, with fixed queues of preferred sizes literal LIB$K_VM_FREQ_SIZES = 3; ! First fit, with frequent sizes cache literal LIB$K_VM_FIXED = 4; ! Fixed size blocks ! LIB$CREATE_VM_ZONE flag definitions literal LIB$M_VM_BOUNDARY_TAGS = 1; ! Boundary tagged blocks literal LIB$M_VM_GET_FILL0 = 2; ! 0-fill for LIB$GET_VM literal LIB$M_VM_GET_FILL1 = 4; ! 1-fill for LIB$GET_VM literal LIB$M_VM_FREE_FILL0 = 8; ! 0-fill for LIB$FREE_VM literal LIB$M_VM_FREE_FILL1 = 16; ! 1-fill for LIB$FREE_VM literal LIB$M_VM_EXTEND_AREA = 32; ! Add extent to existing area if possible literal LIB$M_VM_NO_EXTEND = 64; ! Area is not allowed to be extended literal LIB$M_VM_TAIL_LARGE = 128; ! Add larger than normal areas at the tail ! ! ---- < End of module LIBVMDEF.REQ - 12-AUG-2010 13:57:03.53 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:32 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:32 $1$DGA7361:[STARLET.SRC]LICENSEMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LICENSEDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:32.86 ! ! ************************************************************************* ! * * ! * © COPYRIGHT 2003 HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM HP AND/OR * ! * ITS SUBSIDIARIES REQUIRED FOR POSSESSION, USE, OR COPYING. * ! * * ! * CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE, * ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL * ! * ITEMS ARE LICENSED TO THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD * ! * COMMERCIAL LICENSE. * ! * * ! * NEITHER HP NOR ANY OF ITS SUBSIDIARIES SHALL BE LIABLE FOR TECHNICAL * ! * OR EDITORIAL ERRORS OR OMISSIONS CONTAINED HEREIN. THE INFORMATION * ! * IN THIS DOCUMENT IS PROVIDED "as is" WITHOUT WARRANTY OF ANY KIND AND * ! * IS SUBJECT TO CHANGE WITHOUT NOTICE. THE WARRANTIES FOR HP PRODUCTS * ! * ARE SET FORTH IN THE EXPRESS LIMITED WARRANTY STATEMENTS ACCOMPANYING * ! * SUCH PRODUCTS. NOTHING HEREIN SHOULD BE CONSTRUED AS CONSTITUTING AN * ! * ADDITIONAL WARRANTY. * ! * * ! ************************************************************************* ! ++ ! ! FACILITY: ! ! VAX/VMS LICENSING SYSTEM SERVICES ! ! ABSTRACT: ! ! THIS MODULE DEFINES THE STATUS CODES FOR THE VARIOUS ERROR CONDITIONS ! THAT CAN OCCUR WHILE ATTEMPTING TO DO LICENSING CHECKS FOR A ! DSLA LICENSED SOFTWARE PRODUCT. ! ! AUTHOR: ! ! TRUDY C. MATTHEWS ! ! CREATION DATE: ! ! 26 JANUARY 1987 ! ! MODIFIED BY: ! ! X-10 GP030104 GUY PELEG 01-MAR-2004 ! ADD NONCOMPLIANCE. ! ! X-9 GP121003 GUY PELEG 10-DEC-2003 ! UPDATE ILLPRODUCER TO INCLUDE HP. ! ! X-8 EAG2 ERIC ABIS 3-JUN-1998 ! ADDED USER_MODE. ! ! X-7 EA12 ERIC ABIS 4-APR-1995 ! ADDED INVALID_TOKEN. ! ! X-6 EA001 ERIC ABIS 29-APR-1991 ! ADDED MESSAGE FOR PRODUCTS WITH RESERVE LISTS. IT IS ! PUT IN THE PLACE OF THE CURRENTLY UNUSED INVALID_HW_ID ! MESSAGE BECAUSE THE SEPARATE RELEASE OF LMF 1.1 REQUIRED ! THE PATCHING OF SYSMSG.EXE. THIS PATCH REPLACED ! INVALID_HW_ID WITH NOTINRSRVLIST. FUTURE RELEASES OF ! VMS, IF THEY INCLUDE LMF 1.1, WILL NOT HAVE TO PATCH ! AND NOTINRSRVLIST WILL RETAIN ITS VALUE. THE UNUSED ! INVALID_HW_ID WILL GET A NEW MESSAGE NUMBER AND THE ! IMPACT SHOULD BE MINIMAL ! ! X-5 JWN009 JOHN W. NOGRADY 03-NOV-1987 ! UPDATE MESSAGE TEXT AND ALLOW FOR "room to grow". ! ! X-4 JWN001 JOHN W. NOGRADY 14-OCT-1987 ! ADD MESSAGES NOAUTH AND SYSMGR. THESE MESSAGES WILL ! BE THE FIRST TWO VALUES IN THE MESSAGE VECTOR USED IN ! THE ROUTINE $LOOKUP_LICENSE. ! ! X-3 DKH001 KEN HOBDAY 19-SEP-1987 ! ADD ADDITIONAL MESSAGES FOR LMF$GRANT_LICENSE ! ! X-2 TCM0002 TRUDY C. MATTHEWS 09-MAR-1987 ! REMOVE WORD WARRANTY FROM LICENSE STATUS MESSAGES. ! ! X-1 TCM0001 TRUDY C. MATTHEWS 26-JAN-1987 ! INITIAL VERSION. ! -- literal LICENSE_FACILITY = 2708; ! SUCCESS CODES ! THESE CODES RETURN INFORMATION literal LICENSE$_SYSMGR = 177505059; literal LICENSE$_NONCOMPLIANCE = 177505067; ! THESE CODES RETURN SLIGHTLY DISMAYING INFORMATION ! THESE CODES INDICATE UNRECOVERABLE ERRORS literal LICENSE$_NOAUTH = 177507058; ! ALL OF THESE ARE FATAL literal LICENSE$_NOLICENSE = 177507860; literal LICENSE$_EXCEEDED = 177507868; literal LICENSE$_NOT_STARTED = 177507876; literal LICENSE$_INVALID_DATE = 177507884; literal LICENSE$_INVALID_VERSION = 177507892; literal LICENSE$_TERMINATED = 177507900; literal LICENSE$_NOTINRSRVLIST = 177507908; ! + ! RETURNED BY SYS$LOOKUP_LICENSE ! - literal LICENSE$_BADPARAM = 177507916; literal LICENSE$_ILLPRODUCER = 177507924; literal LICENSE$_WRONUMARG = 177507932; literal LICENSE$_INVALID_HW_ID = 177507940; literal LICENSE$_INVALID_TOKEN = 177507948; ! + ! NEW MESSAGES ! - literal LICENSE$_USER_MODE = 177507956; ! ! ---- < End of module LICENSEMSG.R32 - 12-AUG-2010 13:57:03.58 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:19 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:19 $1$DGA7361:[STARLET.OBJ]LOGINMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $LGIDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:19.12 ! ! --- ! ! ERROR MESSAGES FOR LOGINOUT ! ! --- ! ! ************************************************************************* ! * * ! * © COPYRIGHT 1981 HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM HP AND/OR * ! * ITS SUBSIDIARIES REQUIRED FOR POSSESSION, USE, OR COPYING. * ! * * ! * CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE, * ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL * ! * ITEMS ARE LICENSED TO THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD * ! * COMMERCIAL LICENSE. * ! * * ! * NEITHER HP NOR ANY OF ITS SUBSIDIARIES SHALL BE LIABLE FOR TECHNICAL * ! * OR EDITORIAL ERRORS OR OMISSIONS CONTAINED HEREIN. THE INFORMATION * ! * IN THIS DOCUMENT IS PROVIDED "as is" WITHOUT WARRANTY OF ANY KIND AND * ! * IS SUBJECT TO CHANGE WITHOUT NOTICE. THE WARRANTIES FOR HP PRODUCTS * ! * ARE SET FORTH IN THE EXPRESS LIMITED WARRANTY STATEMENTS ACCOMPANYING * ! * SUCH PRODUCTS. NOTHING HEREIN SHOULD BE CONSTRUED AS CONSTITUTING AN * ! * ADDITIONAL WARRANTY. * ! * * ! ************************************************************************* ! ! ++ ! FACILITY: LOGINOUT ! ! ABSTRACT: ! ! THESE ARE THE ERROR MESSAGES USED BY THE LOGINOUT PROGRAM. ! ! ENVIRONMENT: ! ! VMS OPERATING SYSTEM, PRIVILEGED UTILITY. ! ! AUTHOR: TIM HALVORSEN, MARCH 1981 ! ! MODIFIED BY: ! ! X-13 JAH0504 JOHN A HARNEY 23-MAR-2005 ! D'OH. I DUPLICATED THE SPACE PADDING IN THE NEW ! PWDCLEARSEC MESSAGE FROM THE MESSAGE ABOVE; THAT'D ! HAVE BEEN WONDERFUL IF THE MESSAGE JUST ABOVE WAS ! A SIMILAR MESSAGE. ADD ONE MORE SPACE, TO MAKE ! PWDCLEARSEC JUST LIKE PWDSYNCHSEC. ! ! X-12 JAH0504 JOHN A HARNEY 05-JAN-2005 ! ADD PWDCLEARSEC - ! "OpenVMS secondary password has been cleared" ! ! X-11 MAS0803 MARK A. STILES 10-NOV-2004 ! ONCE AGAIN, WE BOW TO THE LEGAL BEAGLES, BEAN COUNTERS, ! AND SPIN DOCTORS. MAKE "hp" BE "HP" IN THE PRODUCT NAME ! IN THE BANNER. ! ! X-10 MAS0796 MARK A. STILES 4-APR-2004 ! FINALLY USE REAL PRODUCT NAME IN WELCOME. ! FOR TOPAZ, THIS WILL BE: ! HP OPENVMS INDUSTRY STANDARD 64 OPERATING SYSTEM, VERSION V8.2 ! ! X-9 MAS0784 MARK A. STILES 23-JUN-2003 ! YOU DIDN'T THINK THEY'D LET US GET OUT WITHOUT AT ! LEAST ONE PRODUCT/BANNER/WELCOME NAME CHANGE, DO YOU?? ! FOR MAKO_BL2, THE BANNER/WELCOME BECOMES: ! HP OPENVMS INDUSTRY STANDARD 64 EVALUATION RELEASE V8.0 ! ! X-8 JAH0434 JOHN A HARNEY 25-FEB-2003 ! ADD IA64HELLO WELCOME MESSAGE. ! ! X-7 LJK0200 LAWRENCE J. KILGALLEN 13-DEC-2000 ! ADD THE STATUS CODE LGI$_DECWRESTART. ! ! X-6 LJK0198 LAWRENCE J. KILGALLEN 12-DEC-2000 ! ADD THE STATUS CODE LGI$_NULLNETUSER. ! ! X-5 LJK0175 LAWRENCE J. KILGALLEN 26-JUN-2000 ! COPY MESSAGES FROM SET.MSG SO THEY WILL BE AVAILABLE ! TO THIRD PARTY ACME AGENTS. ! CHANGE COPYRIGHT. ! ! X-4 LJK0119 LAWRENCE J. KILGALLEN 29-JAN-1999 ! ADD LGI$_LOSTSYNC MESSAGE. ! ! X-3 LJK0045 LAWRENCE J. KILGALLEN 26-MAY-1998 ! CHANGE THE TWO PASSWORD SYNCHRONIZATION MESSAGES TO ! SAY "external" RATHER THAN "network". ! TRIPLE THE TWO PASSWORD SYNCHRONIZATION MESSAGES TO ! COVER PRIMARY AND SECONDARY PASSWORDS. ! ! X-2 LJK0033 LAWRENCE J. KILGALLEN 13-MAY-1998 ! ADD LGI$_LOGDISABLOPR. ! ADD SPACE TO LGI$_LOSTLGI. ! ADD SPACE TO LGI$_LOSTDEC. ! ! X-1 LJK0009 LAWRENCE J. KILGALLEN 11-MAR-1998 ! INITIAL SUPPORT OF EXTERNAL AUTHENTICATION II: ! ADD LGI$_PWD2NOTSET. ! ADD LGI$_SYSPWDERR. ! ADD LGI$_LOSTDEC. ! ADD LGI$_LOSTLGI. ! ADD LGI$_NOSYSPWD. ! ADD LGI$_WRONGPRINCIPAL. ! ADD LGI$_PROCSTEP. ! ADD LGI$_SUBPROGRAM. ! ADD LGI$_OLDPOLICY. ! CHANGE MODULE NAME TO LOGINMSG AND MOVE IT TO STARLET. ! ! X-19 RJB0023 RICHARD J. BARRY 4-MAR-1996 ! ADD SINGLE SIGN-ON MESSAGES. ! ! X-18 JAH0202 JOHN A HARNEY 16-JAN-1996 ! PUT THE (TM) IN THE RIGHT PLACE IN ALPHAHELLO AND VAXHELLO. ! ! X-17 NYK487 NITIN Y. KARKHANIS 29-SEP-1995 ! O INCREASE FIELD WIDTH FOR NUMBER DISPLAYED AFTER THE ! PEAK PAGE FILE SIZE TEXT IN LOGOUT/FULL. ! O CHANGED THE FIELD WIDTHS FOR WS PEAK AND MOUNTED ! VOLUME COUNT SO THAT THE NUMBERS ARE ALIGNED ON THE ! RIGHT-HAND-SIDE, FOR LOGOUT/FULL. ! O REPLACED THE "Peak page file size" TEXT WITH "PEAK ! VIRTUAL SIZE" SINCE THAT IS THE VALUE THAT IS ACTUALLY ! DISPLAYED. ! ! X-16 JAH0180 JOHN A HARNEY 08-MAY-1995 ! CHANGE THE ALPHA'S WELCOME MESSAGE TO REMOVE AXP REFERENCE ! ! X-15 TNS003 TOM SCARPELLI 21-SEP-1993 ! UPDATE MESSAGES TO MATCH VAX VERSION. ! ! X-14 TNS003 TOM SCARPELLI 29-JUN-1993 ! MOVE HARDCODED DAYS OF THE WEEK TO MESSAGE FILE. ! ! X-13 TNS003 TOM SCARPELLI 23-JUN-1993 ! USE LOCAL DATE/TIME FORMAT. ! ! X-12 AHM DREW MASON 29-SEP-1992 ! MAKE PRODUCT NAME FIT ON 80 COLUMNS. ! ! X-11 AHM DREW MASON 29-SEP-1992 ! LAST PRODUCT NAME CHANGE FOR V1. ! ! X-10 AHM DREW MASON 28-SEP-1992 ! LAST PRODUCT NAME CHANGE FOR V1. ! ! X-9 AHM DREW MASON 25-SEP-1992 ! CHANGE PRODUCT NAME. ! ! X-7 TNS001 TOM SCARPELLI 19-JUN-1992 ! FIX TEXT OF DECWCAPTIVE ERROR MESSAGE. ! ! X-6 TNS001 TOM SCARPELLI 23-JAN-1992 ! MERGE THE FOLLOWING CHANGE: ! (X-15 DDP1119 DERRELL D. PIPER 8-JAN-1992 12:16 ! ADD MESSAGE FOR WHEN LOGINOUT IS NOT PROPERLY INSTALLED.) ! ! X-5 TNS001 TOM SCARPELLI 23-DEC-1991 ! MERGE THE FOLLOWING CHANGE: ! (X-14 DDP0952 DERRELL D. PIPER 23-MAY-1991 13:40 ! FOLD SIGMA CHANGE INTO MAGIC: ! DDP0931 DERRELL D. PIPER 6-MAY-1991 16:50 ! ADD MESSAGE FOR FAILURE TO ACCESS RIGHTS DATA BASE.) ! ! X-4 KLN1136 KAREN L. NOEL 06-AUG-1991 ! MERGE THE FOLLOWING CHANGE: ! (X-13 JRC1015 JOHN R. COVERT 22-FEB-1991 14:45 ! IMPLEMENT LOGINOUT CALLOUTS.) ! ! X-3 TNS001 TOM SCARPELLI 22-APR-1991 ! ADD WELCOME AND LOGOUT MESSAGE TEXT. ! ! X-9 DDP0352 DERRELL D. PIPER 24-FEB-1989 14:51 ! ADD VAXCLUSTER LICENSE MESSAGE. ! ! X-8 DDP0303 DERRELL D. PIPER 27-JUN-1988 15:15 ! MERGE DECWINDOWS CHANGES INTO MAINLINE. ! ! X-7 RJB0048 RICHARD J. BOUCHARD JR. 15-NOV-1987 ! CHANGE LOGOPRCON TO EXPLICITLY STATE THAT LOGIN WAS ! ALLOWED ON OPA0:, NOT A GENERIC "operator console" ! ! X-6 RJB0034 RICHARD J. BOUCHARD JR. 26-OCT-1987 ! ADD MESSAGES FOR SUPPORT OF LMF CALL WITHIN LOGINOUT ! ! X-5 DDP0135 DERRELL D. PIPER 13-AUG-1987 20:03 ! RENAME LGI$_FRCPWDERR TO LGI$_FRCPWDHLP AND MAKE THE ! MESSAGE TEXT MORE READABLE. ADD LGI$_FRCPWDERR FOR ! FORCE PASSWORD CHANGE TIMEOUTS. ! ! X-4 DDP0076 DERRELL D. PIPER 18-MAY-1987 19:04 ! ADD LGI$_FRCPWDERR MESSAGE FOR FORCED PASSWORD CHANGE ! ERRORS (POINT USER TO ). ! ! X-3 DDP0052 DERRELL D. PIPER 01-APR-1987 ! ADD LGI$_NOTMODEM MESSAGE FOR INCORRECTLY WIRED MODEMS. ! ! V04-001 ACG0478 ANDREW C. GOLDSTEIN, 12-APR-1985 19:41 ! ADD LGI$_EXLICENSE, LGI$_DISUSER, LGI$_AUTOLOGIN, ! AND LGI$_INVINPUT MESSAGES ! ! V03-008 MHB0142 MARK BRAMHALL 27-APR-1984 ! ADD NOSUCHUSER AND INVPWD. ! ! V03-007 MHB0130 MARK BRAMHALL 10-APR-1984 ! MAKE CONNERR ONLY AN ERROR, NOT FATAL. ! ADD CLITBLFAIL AND CLITBLPROT. ! ! V03-006 MHB0112 MARK BRAMHALL 21-MAR-1984 ! ADD CONNERR AND DISRECONNECT. ! ! V03-005 PCG0001 PETER GEORGE 04-FEB-1984 ! ADD ACNTEXPIR AND PWDEXPIR. ! ! V03-004 ACG0385 ANDREW C. GOLDSTEIN, 29-DEC-1983 11:59 ! ADD NEW RESTRICTION MESSAGES ! ! V03-003 ACG0376 ANDREW C. GOLDSTEIN, 29-NOV-1983 14:23 ! ADD DEFCLI RESTRICTIONS MESSAGE ! ! V03-002 GAS-162 GERRY SMITH 30-JUL-1983 ! ADD MESSAGES FOR SYSTEM PASSWORD AND BREAKIN EVASION. ! ! V03-001 GAS0123 GERRY SMITH 20-APR-1983 ! ADD NETUAFACC, ERROR ACCESSING NETUAF FILE. ! ! V02-003 HRJ0036 HERB JACOBS 08-DEC-1981 ! ADDED MORE MESSAGES FOR TERMINAL TYPE RESTRICTIONS. ! ! V02-002 HRJ0031 HERB JACOBS 02-NOV-1981 ! ADD MESSAGES FOR TIME OF DAY AND USER ACCOUNT RESTRICTIONS. ! ! V001 TMH0001 TIM HALVORSEN 22-OCT-1981 ! ADD ERROR MESSAGE FOR CAPTIVE ACCOUNTS ! CHANGE TO USE SYSTEM-WIDE FACILITY NUMBER. ! ---- ! IMPORTANT: ! ! THESE MESSAGES ARE MADE AVAILABLE TO INSTALLATION CALLOUT ROUTINES AND ARE ! STORED IN THE ACCOUNTING FILE AND MUST NOT CHANGE VALUE FROM NOW ON. YOU ! MUST ADD ALL NEW MESSAGES TO THE APPROPRIATE SECTION AT THE END OF THIS ! MODULE. literal LOGIN$_FACILITY = 211; ! DEFAULT SEVERITY IS FATAL literal LGI$_JBCMIXUP = 13860876; literal LGI$_LOGDISABL = 13860884; literal LGI$_EXQUOTA = 13860892; literal LGI$_CLIFAIL = 13860900; literal LGI$_CLIPROT = 13860908; literal LGI$_CLISYMTBL = 13860916; literal LGI$_NOTVALID = 13860924; literal LGI$_FILEACC = 13860932; literal LGI$_USERAUTH = 13860940; literal LGI$_INPUTERR = 13860948; literal LGI$_OUTPUTERR = 13860956; literal LGI$_CMDINPUT = 13860964; literal LGI$_OPENIN = 13860968; literal LGI$_CAPTIVE = 13860980; literal LGI$_BADHOUR = 13860988; literal LGI$_USEREXC = 13860996; literal LGI$_ACNTEXC = 13861004; literal LGI$_BADDAY = 13861012; literal LGI$_RESTRICT = 13861020; literal LGI$_NETUAFACC = 13861028; literal LGI$_SYSPWDTMO = 13861036; literal LGI$_EVADE = 13861044; literal LGI$_DEFCLI = 13861052; literal LGI$_ACNTEXPIR = 13861060; literal LGI$_PWDEXPIR = 13861068; literal LGI$_CONNERR = 13861074; literal LGI$_DISRECONNECT = 13861084; literal LGI$_CLITBLFAIL = 13861092; literal LGI$_CLITBLPROT = 13861100; literal LGI$_NOSUCHUSER = 13861108; literal LGI$_INVPWD = 13861116; literal LGI$_EXLICENSE = 13861124; literal LGI$_DISUSER = 13861132; literal LGI$_AUTOLOGIN = 13861140; literal LGI$_INVINPUT = 13861148; literal LGI$_NOTMODEM = 13861156; literal LGI$_FRCPWDERR = 13861164; literal LGI$_LICCHKINV = 13861172; literal LGI$_FISFAIL = 13861180; literal LGI$_DECWCAPTIVE = 13861188; literal LGI$_NOVAXCLUSTER = 13861196; ! SEVERITY OF THIS MESSAGE IS INFORMATIONAL literal LGI$_FRCPWDHLP = 13861203; ! SEVERITY OF THESE MESSAGES IS SUCCESS literal LGI$_LICNOTREQ = 13861209; literal LGI$_LOGOPRCON = 13861217; literal LGI$_LICCHKVAL = 13861225; ! ALL NEW MESSAGES MUST BE ADDED TO ONE OF THE FOLLOWING SECTIONS. YOU CANNOT ! ADD A MESSAGE ABOVE AS THIS WILL CHANGE THE VALUES OF THOSE MESSAGES WHICH ! FOLLOW YOUR NEW (PRESUMABLY FATAL) MESSAGE. ! INFORMATIONAL MESSAGES literal LGI$_LOGDISABLOPR = 13861267; ! SUCCESS MESSAGES literal LGI$_SKIPRELATED = 13861665; ! INTERNAL COMMUNICATION ONLY ! WARNING MESSAGES ! ERROR MESSAGES ! ! THE FOLLOWING TWO MESSAGES DUPLICATE SET$_ MESSAGES IN SEVERITY AND ! TEXT (ALTHOUGH NOT IN CODE VALUE) TO ALLOW TRANSMISSION OF THEIR ! VALUE TO SYS$ACM CLIENTS WHO DO NOT HAVE SET$_ MESSAGES CODES IN ! THEIR IMAGE. FOR THE PARTICULAR CASES OF LOGINOUT COMMUNICATING ! WITH AN LGI-CALLOUT PROVIDER OR SET PASSWORD RETURNING STATUS TO ! DCL, THESE LGI$_ CODES GET CONVERTED TO THE CORRESPONDING SET CODES ! TO PRESERVE COMPATIBILITY WITH VERSIONS OF VMS PRIOR TO V7.2. ! literal LGI$_PWD2NOTSET = 13863266; literal LGI$_SYSPWDERR = 13863274; ! FATAL ERRORS literal LGI$_COUNTWRONG = 13864068; literal LGI$_RDBACCERR = 13864076; literal LGI$_NOTALLPRIV = 13864084; literal LGI$_NOEXTAUTH = 13864092; literal LGI$_NOLOCAUTH = 13864100; ! ! FATAL MESSAGES ADDED FOR EXTERNAL AUTHENTICATION II ! literal LGI$_LOSTDEC = 13864108; literal LGI$_LOSTLGI = 13864116; literal LGI$_NOSYSPWD = 13864124; literal LGI$_WRONGPRINCIPAL = 13864132; literal LGI$_LOSTSYNC = 13864140; ! ! FAILURE MESSAGES ADDED FOR EXTERNAL AUTHENTICATION III ! literal LGI$_NULLNETUSER = 13864148; literal LGI$_DECWRESTART = 13864156; ! ! ALL ERROR MESSAGES SHOULD BE ADDED BEFORE THIS POINT. THE MESSAGES ! FOLLOWING THE .BASE DIRECTIVE BELOW ARE TEXT OUTPUT BY LOGINOUT ! OR THE VMS ACME AND ARE NOT RETURNED TO THE USER. ! ! ! THE FOLLOWING ARE MESSAGES OUTPUT IN LOGIN.B32 ! literal LGI$_JOBTERM = 13869057; literal LGI$_JOBLOGOUT = 13869065; literal LGI$_PROCEND = 13869073; literal LGI$_ACNTINFO = 13869081; literal LGI$_ACNTINFO1 = 13869089; literal LGI$_ACNTINFO2 = 13869097; literal LGI$_ACNTINFO3 = 13869105; literal LGI$_ACNTINFO4 = 13869113; literal LGI$_ACNTINFO5 = 13869121; literal LGI$_PASEXP = 13869129; literal LGI$_PRIPASEXP = 13869137; literal LGI$_SECPASEXP = 13869145; literal LGI$_SETPAS = 13869153; literal LGI$_SETPRIPAS = 13869161; literal LGI$_SETSECPAS = 13869169; literal LGI$_EXPSETPAS = 13869177; literal LGI$_PRISETPAS = 13869185; literal LGI$_SECSETPAS = 13869193; ! ! THE FOLLOWING ARE MESSAGES OUTPUT IN INTERACT.B32 ! literal LGI$_USERNAME = 13869201; literal LGI$_PASSWORD = 13869209; literal LGI$_VAXHELLO = 13869217; literal LGI$_ALPHAHELLO = 13869225; literal LGI$_ONNODE = 13869233; literal LGI$_LASINTLOG = 13869241; literal LGI$_LASNOINTLOG = 13869249; literal LGI$_LOGFAILS = 13869257; literal LGI$_NEWMAILCNT = 13869265; literal LGI$_NEWMAIL = 13869273; literal LGI$_DISCONPROC = 13869281; literal LGI$_DISCONPROCS = 13869289; literal LGI$_DISCONHDR = 13869297; literal LGI$_DISCONTXT = 13869305; literal LGI$_CONTOTERM = 13869313; literal LGI$_CONTOPROC = 13869321; literal LGI$_YESRESP = 13869329; literal LGI$_NONERESP = 13869337; literal LGI$_TERMCONN = 13869345; literal LGI$_MONDAY = 13869353; literal LGI$_TUESDAY = 13869361; literal LGI$_WEDNESDAY = 13869369; literal LGI$_THURSDAY = 13869377; literal LGI$_FRIDAY = 13869385; literal LGI$_SATURDAY = 13869393; literal LGI$_SUNDAY = 13869401; ! ! NEW SINGLE SIGN-ON MESSAGES. ! literal LGI$_PWDSYNCH = 13869409; literal LGI$_PWDNOSYNCH = 13869417; literal LGI$_LOCLOGIN = 13869425; ! ! MESSAGES ADDED FOR EXTERNAL AUTHENTICATION II ! literal LGI$_PROCSTEP = 13869433; literal LGI$_SUBPROGRAM = 13869441; literal LGI$_OLDPOLICY = 13869449; literal LGI$_PWDSYNCHPRI = 13869457; literal LGI$_PWDSYNCHSEC = 13869465; literal LGI$_PWDNOSYNCHPRI = 13869473; literal LGI$_PWDNOSYNCHSEC = 13869481; ! ! MESSAGES COPIED FROM SET.MSG SO THEY WILL BE AVAILABLE ! TO THIRD PARTY ACME AGENTS. ! literal LGI$_OLDPASS = 13869489; literal LGI$_NEWPASS = 13869497; literal LGI$_CHKPASS = 13869505; ! ! IA64HELLO WELCOME MESSAGE ! literal LGI$_IA64HELLO = 13869513; ! ! ANOTHER MESSAGE ADDED FOR EXTERNAL AUTHENTICATION II ! literal LGI$_PWDCLEARSEC = 13869521; ! ! ERROR MESSAGES SHOULD BE NOT ADDED AT THIS POINT. THE MESSAGES ! FOLLOWING THE .BASE DIRECTIVE ABOVE ARE TEXT OUTPUT BY LOGINOUT ! OR THE VMS ACME AND ARE NOT RETURNED TO THE USER. ! ! ! ---- < End of module LOGINMSG.R32 - 12-AUG-2010 13:57:03.63 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:27 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:27 $1$DGA7361:[STARLET.OBJ]MAILMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $MAILMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:27.31 ! ! ! VERSION: 'X-14' ! ! **************************************************************************** ! * * ! * COPYRIGHT (C) 1978, 1980, 1982, 1984, 1992 - 1996 BY * ! * DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * ! * ALL RIGHTS RESERVED. * ! * * ! * THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * ! * ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * ! * INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * ! * COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * ! * OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * ! * TRANSFERRED. * ! * * ! * THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * ! * AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * ! * CORPORATION. * ! * * ! * DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * ! * SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * ! * * ! * * ! **************************************************************************** ! ++ ! ! FACILITY: VMS SYSTEM MACRO LIBRARIES ! ! ABSTRACT: ! ! THIS FILE CONTAINS THE MDL SOURCE FOR MAIL MESSAGES ! ! ENVIRONMENT: ! ! N/A ! ! ! ! AUTHOR: THE VMS GROUP CREATION DATE: 8-JUN-1978 ! ! MODIFICATION HISTORY: ! ! X-14 RKS020909 RANJAN KUMAR SARANGI 09-FEB-2009 ! MODIFIED DIRHD0 MESSAGE FORMAT FOR MAIL HEADER ! ALIGNMENT(PTR-75-120-515). ! ! X-13 SD070507 SAMWEDANA DEVPA 05-JUL-2007 ! MODIFIED DIRHD0 MESSAGE FORMAT. ! ! X-12 SG088 SHEELA GAYATRI 20-FEB-1996 ! ADD KEYNOTDEF & INVKEYNAM MESSAGES. ! ! X-11 SG082 SHEELA GAYATRI 09-FEB-1996 ! ADD ILLEDTNAM MESSAGE. REMOVE X-10. ! ! X-10 SG067 SHEELA GAYATRI 13-NOV-1995 ! ADD CDASUPPORT MESSAGE FOR EAGLE/THETA FOR MAIL/OLD ! SUPPORT FOR DDIF/DTIF FILES. THIS MESSAGE WILL ! BECOME REDUNDANT IN GRYPHON, WHEN SUPPORT FOR ! DDIF/DTIF FILE PROCESSING IS ADDED. ! ! X-9 ROP1002 ROBERT POSNIAK 7-JUN-1995 ! ADD SHOWNOSIG, SHOWSIG AND BADLOGVAL MESSAGES. ! ! X-8 MB0020 MARINA BUCKLEY 12-OCT-1994 ! MODIFY THE TEXT OF THE CODERR FATAL ERROR. ! ! X-7 MB0011 MARINA BUCKLEY 16-JUN-1994 ! ADD MAIL$_LISTTOOLONG ERROR MESSAGE TO BE RETURNED ! FROM CALLABLE MAIL ROUTINE MAIL$SEND_ADD_ADDRESS IF ! USER CALLS IT MULTIPLE TIMES RESULTING IN AN ADDRESS ! LIST THAT EXCEEDS THE MAXIMUM. ! ! X-6 TNS004 TOM SCARPELLI 11-APR-1994 ! ADD I18N CHANGES. ! ! X-5 RAB RICHARD A. BISHOP 17-AUG-1993 ! PICK UP MAIL$_DELETED AND MAIL$_FFMTMSG FROM VAX: ! ! X-22 CCD027 CAREY DONAT 11-AUG-1993 ! REMOVE FROM MIDDLE OF FFMTMSG ! ! X-21 CCD027 CAREY DONAT 13-JUL-1993 ! ADD FFMTMSG INFORMATIONAL MESSAGE FOR FOREIGN FILES ! WHERE TRANLATOR EXISTS ! ! X-20 CCD007 CAREY DONAT 08-FEB-1993 ! ADD DELETED MESSAGE FOR COMPRESS TEMP FILE SUCCESSFULLY ! DELETED ! ! ***** OLD AUDIT TRAIL FOLLOWS ! ! X-6 LAF0001 LISA A. FARLEY 02-JUL-1992 ! FIX FOR QAR #3161. ADDED MESSAGE INVRANGE TO LET THE ! USER KNOW WHEN THE RANGE SPECIFIED FOR A DELETE IS ! INVALID. ! ! X-5 MFS0069 MARK F. SCANLON 26-JUN-1992 ! QAR 2682. REMOVED FAO FROM MESSAGE NAMTOOBIG. ! ! X-4 RAB RICHARD A. BISHOP 21-MAY-1992 ! MERGE ANOTHER SYMBVOL FROM THE VAX/VMS COPY: ! ! X-19 DAC060 DAVE CANTOR 15-APR-1992 ! CORRECTED TEXT OF NOUSERSPEC AT REQUEST OF DOC. GROUP ! ! X-18 DAC058 DAVE CANTOR 02-APR-1992 ! SUPPLY ERROR MESSAGE FOR DCL COMMAND $ MAIL FILENAME ! FOLLOWED BY NO ADDRESSEE SUPPLIED. (NOUSERSPEC) ! ! X-3 RAB RICHARD A. BISHOP 29-JAN-1992 ! MERGE INTO ALPHA THE POST-V5.4 CHANGES IN VMS. ! SINCE THERE HAVE BEEN NO CHANGES IN THE ALPHA VERSION ! OF THIS FILE SINCE V5.4 (OTHER THAN AUDIT TRAIL), WHAT ! FOLLOWS IS THE AUDIT TRAIL FROM THE VMS MASTERPACK. ! ! =============================================================== ! ! X-17 DRB0084 DAWN R. BANKS 8-AUG-1991 ! ADD MESSAGES TO SUPPORT DDIF/DTIF DOTS PACKING. ! ! X-16 ROP0423 ROBERT POSNIAK 17-MAR-1988 ! CHANGE THE TEXT OF FORMSG. ! ! X-15 ROP0342 ROBERT POSNIAK 10-AUG-1987 ! ADD SHOW220, SHOW 225. ! ! X-14 ROP0321 ROBERT POSNIAK 23-JUL-1987 ! ADD NOACCPTMSG MESSAGE. ! ! X-13 ROP0297 ROBERT POSNIAK 2-MAR-1987 ! MAKE DIRHD0 TAKE AS A PARAMETER THE NUMBER OF ! SPACES BETWEEN DATE AND SUBJECT FIELDS. ! ! X-12 ROP0283 ROBERT POSNIAK 24-FEB-1987 ! ADD MAILFOLD AND WASTEFOLD MESSAGES. ! ! X-11 ROP0249 ROBERT POSNIAK 9-FEB-1987 ! MAKE MAIL COPY OF THE SHARED MESSAGES ! USED BY THE MAIL FACILITY. ! ! X-10 ROP0205 ROBERT POSNIAK 14-NOV-1986 ! ADD SHOW210 AND SHOW215. ! ! X-9 ROP0195 ROBERT POSNIAK 11-NOV-1986 ! ADD YES. ! ! X-8 ROP0179 ROBERT POSNIAK 27-OCT-1986 ! ADD UPGRADE FOR ROLLING UPGRADE IN PROGRESS. ! ! X-7 ROP ! ADD ERRACTRNS ! ! X-6 ROP ! ADD SHOW200, SHOW205 ! ADD FORMSG, NOTFORMSG ! ! X-5 ROP ! FIX SHOW10 TO USE ONLY DESCRIPTORS. REMOVE RECLSTAT ! ADD PROMPT. CHANGE INFO50 TO TAKE A DESCRIPTOR AS ! INPUT. ADD INFO12,INFO14, CRENEWFILE. ! ADD SHOW15,SHOW25, AND SHOW35 TO DISPLAY PRINT ! QUEUE/FORM AND FORWARD ! ! X-4 ROP ! ADD MSGSENT, MSGSENTAT ! ! X-3 ROP ! ADD ILLTPRT,INVITMVAL ! ! X-2 ROP ! TAKE QUOTES OUT OF ILLPERNAM MESSAGE. ! ! V04-000 RP 28-OCT-1985 ! NEW MESSAGE FOR WRONG FILE. ADD ERROR ERACTED ! ! V03-015 ROP0004 ROBERT POSNIAK 6-JUN-1984 ! NEW MESSGE FOR OVERSIZED RECORD. NEW MESSAGE FOR ! REENTERING LINE. ! ! V03-014 BLS0272 BENN SCHREIBER 18-FEB-1984 13:36:12 ! NEW MESSAGE FOR INCORRECT PROTOCOL VERSION. ! ! V03-013 BLS0263 BENN SCHREIBER 5-FEB-1984 ! NEW MESSAGE FOR CAPTIVE ACCOUNT TRYING TO SPAWN. ! ! V03-012 BLS0255 BENN SCHREIBER 28-DEC-1983 ! NEW MESSAGES FOR SHOW KEY, AND FOR TIME IN NOTIFY MESSAGE ! ! V03-011 BLS0250 BENN SCHREIBER 8-DEC-1983 ! NEW MESSAGE FOR EDITOR NOT CALLABLE. NEW MESSAGE FOR ! ISAM FILE FOUND WHEN SEQUENTIAL EXPECTED. ! ! V03-010 BLS0246 BENN SCHREIBER 28-NOV-1983 ! NEW MESSAGE ASKING IF WANT TO CREATE NEW FOLDER. ! ! V03-009 BLS0229 BENN SCHREIBER 16-JUL-1983 ! NEW MESSAGE "you have new mail". ! ! V03-008 BLS0227 BENN SCHREIBER 1-JUL-1983 ! NEW MESSAGES FOR SENDERR AND NOSUCHUSR THAT INCLUDE ! THE NODE NAME. ! ! V03-007 BLS0225 BENN SCHREIBER 17-JUN-1983 ! NEW MESSAGE FOR BETTER PERSONAL NAME CHECKING ! ! V03-006 BLS0222 BENN SCHREIBER 15-MAY-1983 ! NEW MESSAGE FOR RECLAIMING SPACE ! ! V03-005 BLS0220 BENN SCHREIBER 30-APR-1983 ! NEW MESSAGES FOR NEW FEATURES ! ! V03-004 BLS0217 BENN SCHREIBER 12-APR-1983 ! CHANGE TEXT OF DELSPACE. ADD NEW MESSAGE FOR NON-EXISTANT ! FOLDER SELECTED. ADD MESSAGE FOR EXTERNAL MESSAGE TEXT. ! ! V03-003 BLS0211 BENN SCHREIBER 13-MAR-1983 ! NEW MESSAGES FOR ISAM FILES, AND TEXT THAT USED TO ! BE EMBEDDED IN THE PROGRAM. ! ! V03-002 BLS0202 BENN SCHREIBER 5-JAN-1983 ! NEW MESSAGES FOR ILLEGAL STRING LENGTH AND ILLEGAL ! CHARACTER IN STRING ! ! V03-001 BLS0177 BENN SCHREIBER 24-JUN-1982 ! NEW MESSAGE FOR USER WHO HAS DISMAIL SET. NEW MESSAGE ! IF LOOP DETECTED IN FORWARDING VIA LOGICAL NAMES OR ! SET FORWARD. ! ! -- ! ! DEFINE MAIL RELATED ERROR/STATUS VALUES ! ! ! DEFINE ERROR MESSAGES ! literal MAIL$_FACILITY = 126; literal MAIL$_CODERR = 8290316; literal MAIL$_UPGRADE = 8290324; literal MAIL$_UAFGETERR = 8290330; literal MAIL$_UAFOPNERR = 8290338; literal MAIL$_NOSUCHUSR = 8290346; literal MAIL$_NOTREADIN = 8290354; literal MAIL$_LOGLINK = 8290362; literal MAIL$_CREPRIJOB = 8290370; literal MAIL$_SENDERR = 8290378; literal MAIL$_NOMOREMSG = 8290386; literal MAIL$_NOMSGS = 8290394; literal MAIL$_USERSPEC = 8290402; literal MAIL$_SENDABORT = 8290410; literal MAIL$_EDITPROC = 8290418; literal MAIL$_INVCMD = 8290426; literal MAIL$_NOTFOUND = 8290434; literal MAIL$_NETIOERR = 8290442; literal MAIL$_USERDSABL = 8290450; literal MAIL$_FORWLOOP = 8290458; literal MAIL$_NAMTOOBIG = 8290466; literal MAIL$_ILLCHAR = 8290474; literal MAIL$_DATIMUSED = 8290482; literal MAIL$_NOTISAM = 8290490; literal MAIL$_DELMSG = 8290498; literal MAIL$_DELWASTE = 8290506; literal MAIL$_NOFOLDER = 8290514; literal MAIL$_NOTEXIST = 8290522; literal MAIL$_NOTSUBDIR = 8290530; literal MAIL$_ILLSUBDIR = 8290538; literal MAIL$_ILLFOLNAM = 8290546; literal MAIL$_NOMSGPRI = 8290554; literal MAIL$_ALTPRIJOB = 8290562; literal MAIL$_ILLPERNAM = 8290570; literal MAIL$_NOSUCHUSRAT = 8290578; literal MAIL$_SENDERRAT = 8290586; literal MAIL$_CONABORT = 8290594; literal MAIL$_NOTCALEDT = 8290602; literal MAIL$_FILECONFUSED = 8290610; literal MAIL$_CAPTIVE = 8290618; literal MAIL$_IVPROTVAL = 8290626; literal MAIL$_RECTOBIG = 8290634; literal MAIL$_ILLCTXADR = 8290642; literal MAIL$_WRONGCTX = 8290650; literal MAIL$_FAILGETVM = 8290658; literal MAIL$_INVITMCOD = 8290666; literal MAIL$_MISREQITM = 8290674; literal MAIL$_INVITMLEN = 8290682; literal MAIL$_FILEOPEN = 8290690; literal MAIL$_NOFILEOPEN = 8290698; literal MAIL$_CONITMCOD = 8290706; literal MAIL$_NOMORECTX = 8290714; literal MAIL$_WRONGFILE = 8290722; literal MAIL$_ILLTPRT = 8290730; literal MAIL$_INVITMVAL = 8290738; literal MAIL$_ERACTED = 8290746; literal MAIL$_FORMSG = 8290754; literal MAIL$_NOTFORMSG = 8290762; literal MAIL$_ERRACTRNS = 8290770; literal MAIL$_BADVALUE = 8290778; literal MAIL$_CLOSEDEL = 8290786; literal MAIL$_FILNOTDEL = 8290794; literal MAIL$_OPENIN = 8290802; literal MAIL$_OPENOUT = 8290810; literal MAIL$_PARSEFAIL = 8290818; literal MAIL$_READERR = 8290826; literal MAIL$_SEARCHFAIL = 8290834; literal MAIL$_SYSERROR = 8290842; literal MAIL$_NOSYSNAM = 8290850; literal MAIL$_NOSYSPRV = 8290858; literal MAIL$_PROTOCOL = 8290866; literal MAIL$_NOACCPTMSG = 8290874; literal MAIL$_DOTSPACK = 8290882; literal MAIL$_DOTSUNPACK = 8290890; literal MAIL$_NOUSERSPEC = 8290898; literal MAIL$_INVRANGE = 8290906; literal MAIL$_LISTTOOLONG = 8290914; literal MAIL$_SELECTED = 8306307; literal MAIL$_DELMSGS = 8306315; literal MAIL$_CVTFILE = 8306323; literal MAIL$_DELSPACE = 8306331; literal MAIL$_NEWFOLDER = 8306339; literal MAIL$_RECLPLSWAIT = 8306347; literal MAIL$_REENTER = 8306355; literal MAIL$_DELETED = 8306363; literal MAIL$_FFMTMSG = 8306371; literal MAIL$_MOREMSG = 8314304; literal MAIL$_DIRHD0 = 8314312; ! SD070507!RKS020909 literal MAIL$_DIRHD10 = 8314320; literal MAIL$_DIRHD20 = 8314328; literal MAIL$_DIRDEL10 = 8314336; literal MAIL$_ISUB10 = 8314344; literal MAIL$_ISUB20 = 8314352; literal MAIL$_ISUB30 = 8314360; literal MAIL$_PRESRET = 8314368; literal MAIL$_YOUHAVENEW = 8314376; literal MAIL$_MAIL10 = 8314384; literal MAIL$_MAIL20 = 8314392; literal MAIL$_WANTOSEND = 8314400; literal MAIL$_NOTIFY10 = 8314408; literal MAIL$_NOTIFY20 = 8314416; literal MAIL$_JOBENTERED = 8314424; literal MAIL$_SHOW10 = 8314432; literal MAIL$_SHOW20 = 8314440; literal MAIL$_SHOW30 = 8314448; literal MAIL$_SHOW40 = 8314456; literal MAIL$_SHOW50 = 8314464; literal MAIL$_SHOW60 = 8314472; literal MAIL$_SHOW70 = 8314480; literal MAIL$_SHOW80 = 8314488; literal MAIL$_SHOW90 = 8314496; literal MAIL$_SHOW100 = 8314504; literal MAIL$_SHOW110 = 8314512; literal MAIL$_EDIT10 = 8314520; literal MAIL$_INFO10 = 8314528; literal MAIL$_INFO20 = 8314536; literal MAIL$_INFO30 = 8314544; literal MAIL$_SEND = 8314552; literal MAIL$_REPLY = 8314560; literal MAIL$_SHOW120 = 8314568; literal MAIL$_SHOW130 = 8314576; literal MAIL$_INFO50 = 8314584; literal MAIL$_SHOW140 = 8314592; literal MAIL$_SHOW150 = 8314600; literal MAIL$_SHOW160 = 8314608; literal MAIL$_ISUB50 = 8314616; literal MAIL$_MAIL30 = 8314624; literal MAIL$_RETCONT = 8314632; literal MAIL$_NEWSEQ = 8314640; literal MAIL$_MAILDIR = 8314648; literal MAIL$_MAILFILE = 8314656; literal MAIL$_MAILFOLDER = 8314664; literal MAIL$_MAIL40 = 8314672; literal MAIL$_CRENEWFOLD = 8314680; literal MAIL$_NONEWMAIL = 8314688; literal MAIL$_SHOWKEY10 = 8314696; literal MAIL$_SHOWKEY20 = 8314704; literal MAIL$_SHOWKEY30 = 8314712; literal MAIL$_SHOWKEY40 = 8314720; literal MAIL$_SHOWKEY50 = 8314728; literal MAIL$_SHOWKEY60 = 8314736; literal MAIL$_SHOWKEY70 = 8314744; literal MAIL$_NOTIFY30 = 8314752; literal MAIL$_NOTIFY40 = 8314760; literal MAIL$_NOPARENT = 8314768; literal MAIL$_FILEMPTY = 8314776; literal MAIL$_NONEFOUND = 8314784; literal MAIL$_NOMOREREC = 8314792; ! ! THE FOLLOWING MESSAGE IS USED FOR COMMUNICATION ! BETWEEN MAILSHR AND MAILSHRP. IT DOES NOT NEED TO BE DOCUMENTED. ! literal MAIL$_USERFWD = 8314800; literal MAIL$_PROMPT = 8314808; literal MAIL$_INFO12 = 8314816; literal MAIL$_INFO14 = 8314824; literal MAIL$_INFO16 = 8314832; literal MAIL$_INFO18 = 8314840; literal MAIL$_CRENEWFILE = 8314848; literal MAIL$_SHOW15 = 8314856; literal MAIL$_SHOW25 = 8314864; literal MAIL$_SHOW35 = 8314872; literal MAIL$_FORWARD = 8314880; literal MAIL$_SHOW200 = 8314888; literal MAIL$_SHOW205 = 8314896; literal MAIL$_SHOW210 = 8314904; literal MAIL$_SHOW215 = 8314912; literal MAIL$_CLOSEIN = 8314920; literal MAIL$_CLOSEOUT = 8314928; literal MAIL$_INVQUAVAL = 8314936; literal MAIL$_WRITEERR = 8314944; literal MAIL$_SHOW220 = 8314952; literal MAIL$_SHOW225 = 8314960; literal MAIL$_HPROMPT = 8314968; literal MAIL$_SHOWNOSIG = 8314976; literal MAIL$_SHOWSIG = 8314984; literal MAIL$_BADLOGVAL = 8314992; literal MAIL$_MSGTEXT = 8322305; literal MAIL$_MSGINFO = 8322313; literal MAIL$_MSGSENT = 8322321; literal MAIL$_MSGSENTAT = 8322329; literal MAIL$_YES = 8322337; literal MAIL$_COPIEDR = 8322345; literal MAIL$_CREATED = 8322353; literal MAIL$_RENAMED = 8322361; literal MAIL$_TEXT = 8322369; ! ! THE FOLLOWING TWO ARE FOLDER NAMES CREATED BY MAIL ! literal MAIL$_MAILFOLD = 8322377; literal MAIL$_WASTEFOLD = 8322385; literal MAIL$_ILLEDTNAM = 8322394; literal MAIL$_KEYNOTDEF = 8322402; literal MAIL$_INVKEYNAM = 8322410; ! ! ---- < End of module MAILMSG.B32 - 12-AUG-2010 13:57:03.68 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:33 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:33 $1$DGA7361:[STARLET.OBJ]MMEMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $MMEMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:33.85 ! ! ++ ! ************************************************************************* ! * * ! * COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION, 1991, 1992, 1993 * ! * ALL RIGHTS RESERVED. * ! * UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED * ! * STATES. * ! * * ! * THE SOFTWARE CONTAINED ON THIS MEDIA IS PROPRIETARY TO AND EMBODIES * ! * THE CONFIDENTIAL TECHNOLOGY OF DIGITAL EQUIPMENT CORPORATION. * ! * POSSESSION, USE, DUPLICATION OR DISSEMINATION OF THE SOFTWARE AND * ! * MEDIA IS AUTHORIZED ONLY PURSUANT TO A VALID WRITTEN LICENSE FROM * ! * DIGITAL EQUIPMENT CORPORATION. * ! * * ! * RESTRICTED RIGHTS LEGEND USE, DUPLICATION, OR DISCLOSURE BY THE U.S. * ! * GOVERNMENT IS SUBJECT TO RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH * ! * (C)(1)(II) OF DFARS 252.227-7013, OR IN FAR 52.227-19, AS APPLICABLE. * ! * * ! ************************************************************************* ! ! ++ ! FACILITY: ! MME - VMS MEDIA MANAGEMENT EXTENSIONS ! ! ABSTRACT: ! CONTAINS MESSAGES FOR THE MEDIA MANAGEMENT EXTENSIONS. ! ! AUTHOR: ! DAN KYLER ! ! CREATION DATE: 11-SEP-1991 ! ! MODIFICATION HISTORY: ! ! X-3 SGS0032 STEVE SKONETSKI 30-SEP-1993 ! FIX BUILD BUG. WRONG COMMENT CHARACTER USED IN NEW COPYRIGHT. ! ! X-2 SGS0032 STEVE SKONETSKI 30-SEP-1993 ! VAX TO ALPHA PORT. ADD /MACRO=$MMEMSGDEF TO .FACILITY ! DIRECTIVE. ALLOWS US TO REMOVE MMEMSGDEF.COM FROM THE BUILD ! PROCEDURE. ! ! ! X-1 MME-JDE013 JOHN EIKENBERRY 21 NOV 1991 ! MERGED INTO BLADE ! ! -- ! + ! FACILITY DEFINITION ! - literal MME_FACILITY = 3439; ! + ! SUCCESS MESSAGES ! - ! ! + ! INFORMATIONAL MESSAGES ! - ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_NO_MME = 225411875; ! ! + ! WARNING MESSAGES ! - ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: THE MEDIA MANAGEMENT PROCESS RECEIVED A MAILBOX MESSAGE ! CONTAINING AN ARGUMENT WHICH WAS UNRECOGNIZED. THE ARGUMENT ! WILL BE IGNORED. ! USER ACTION: NONE ! -- literal MME$_BADARGIGN = 225412672; ! ! + ! ERROR MESSAGES ! - ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: THE MEDIA MANAGEMENT PROCESS RECEIEVED A MAILBOX MESSAGE ! INDICATING AN ACTION ROUTINE FOR WHICH THE MEDIA MANAGEMENT ! SOFTWARE HAS NOT DECLARED A ROUTINE. ! USER ACTION: NONE. ! -- literal MME$_RTNNOTDECL = 225415074; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_BADMSGTYPE = 225415082; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_FACMISMATCH = 225415090; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_MBXFAOERR = 225415098; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_MBXASNERR = 225415106; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_MBXWRTERR = 225415114; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_ASTNOTQED = 225415122; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_AVRFAOERR = 225415130; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_AVRENQERR = 225415138; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_AVRASNERR = 225415146; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_GETNAMERR = 225415154; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_UICMISMATCH = 225415162; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_MBXDVIERR = 225415170; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_JPIUICERR = 225415178; ! ! + ! FATAL MESSAGES ! - ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_FINTERNAL = 225419076; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_MBXRDERR = 225419084; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_POSTMBXERR = 225419092; ! ++ ! FACILITY: MME - VMS MEDIA MANAGEMENT EXTENSIONS ! EXPLANATION: ! USER ACTION: ! -- literal MME$_MEMALLERR = 225419100; ! ! ! ---- < End of module MMEMSG.R32 - 12-AUG-2010 13:57:03.73 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:44 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:53:42 $1$DGA7361:[STARLET.SRC]MOUNTMSG.SDL;2 ! ******************************************************************************************************************************** !*** MODULE $MOUNDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:53:42.60 ! ! ! VERSION: 'X-26' ! ! ************************************************************************* ! * * ! * COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION, 1978 - 1999 * ! * ALL RIGHTS RESERVED. * ! * UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED * ! * STATES. * ! * * ! * THE SOFTWARE CONTAINED ON THIS MEDIA IS PROPRIETARY TO AND EMBODIES * ! * THE CONFIDENTIAL TECHNOLOGY OF DIGITAL EQUIPMENT CORPORATION. * ! * POSSESSION, USE, DUPLICATION OR DISSEMINATION OF THE SOFTWARE AND * ! * MEDIA IS AUTHORIZED ONLY PURSUANT TO A VALID WRITTEN LICENSE FROM * ! * DIGITAL EQUIPMENT CORPORATION. * ! * * ! * RESTRICTED RIGHTS LEGEND USE, DUPLICATION, OR DISCLOSURE BY THE U.S. * ! * GOVERNMENT IS SUBJECT TO RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH * ! * (C)(1)(II) OF DFARS 252.227-7013, OR IN FAR 52.227-19, AS APPLICABLE. * ! * * ! ************************************************************************* ! ++ ! ! FACILITY: VAX/VMS SYSTEM MACRO LIBRARIES ! ! ABSTRACT: ! ! THIS FILE CONTAINS THE MDL SOURCE FOR THE MOUNT UTILITY MESSAGES. ! ! ENVIRONMENT: ! ! MAINTAINERS TAKE NOTE! THIS MODULE IS COMMON SOURCE FOR VAX AND ! ALPHA. DO NOT CHANGE ONE WITHOUT TRACKING THE CHANGE IN THE OTHER. ! ! -- ! ! ! AUTHOR: THE VMS GROUP CREATION DATE: 1-AUG-1976 ! ! MODIFIED BY: ! ! X-26 JJF0296 J. JEFFERY FRIEDRICHS 4-MAY-2004 ! ADD MESSAGES FOR BAD SCB ! ! X-25 RAB087 ROBERT A. BROOKS 18-FEB-2004 ! (RESYNCH IDENT WITH WHAT VDE THINKS . . .) ! FOLD FROM V73-2R-HBMM . . . ! ! X-35 JJF0260 J. JEFFERY FRIEDRICHS 10-NOV-2003 ! ADD MBRTOOSMALL ! ! X-35 JJF0279 J. JEFFERY FRIEDRICHS 12-FEB-2004 ! ADD SHDWREQALLOC FOR SHADOW SET MEMBERS ! ! X-34 JJF0213 J. JEFFERY FRIEDRICHS 7-FEB-2003 ! ADD NOCAPABILITY AND OPTCAPABILITY ! ! X-33 JJF0178 J. JEFFERY FRIEDRICHS 20=FEB-2002 ! ADD BADWINDOWS ! ! X-32 MLH MARK HOPKINS 29-FEB-2000 ! ADD MESSAGE FOR ACP NOT FOUND ON VOLUME MOUNT (VAFS ! SUPPORT). ! ! X-31 JJF0116 J. JEFFERY FRIEDRICHS 20-DEC-1999 ! ADD MESSAGES FOR MINICOPY ! ! X-30 JJF0095 J. JEFFERY FRIEDRICHS 24-FEB-1999 ! ADD WARNING MESSAGE FOR SIZE CONFLICT ! ! X-29 JJF0095 J. JEFFERY FRIEDRICHS 8-JAN-1999 ! ADD NEW MESSAGES OLDSHDRIVER, NOTALLMEM AND POLICY MESSAGES ! ! X-28 JJF-0076 J. JEFFERY FRIEDRICHS 12-SEP-1997 ! SEPARATE DEVBUSY ERROR MESSAGES OUT INTO UNIQUE MESSAGES ! ! X-27 KJP-SDOS KEVIN PLAYFORD 18-JUL-1997 ! ADD MESSAGE FOR SNAPSHOT POOL MEMBER. ! ! X-26 ACG0639 ANDREW C. GOLDSTEIN, 13-JUN-1997 14:44 ! ADD NEW MESSAGES FOR ODS-5 SUPPORT ! ! X-25 TGC0049 TOM CARR 19-JUN-1996 ! ADD AN INFORMATIONAL MESSAGE TO BE USED TO REPORT THAT ! A MEMBER IS ALREADY A MEMBER OF A SHADOW SET ! ! X-24 TGC0048 TOM CARR 29-MAY-1996 ! ADD AN INFORMATIONAL MESSAGE TO BE USED TO REPORT THAT ! A MEMBER REQUIRES A COPY OPERATION AND CAN NOT BE A ! MASTER ! ! X-23 ACG0618 ANDREW C. GOLDSTEIN, 8-APR-1996 11:17 ! RETURN FACILITY NAME TO MOUNT ! ! X-22 TGC0045 TOM CARR 29-MAR-1996 ! ADD NEW MESSAGES FROM SHADOW MOUNT REWRITE. ! ! X-21 JJF0017 J. JEFFERY FRIEDRICHS 11-OCT-1994 ! NUMEROUS MESSAGE CLEANUPS PER DOCUMENTATION FOLKS... ! ! X-20 JJF0014 J. JEFFERY FRIEDRICHS 17-MAY-1994 ! REMOVE BADSECSUG ! ! X-19 JJF0014 J. JEFFERY FRIEDRICHS 10-MAY-1994 ! CHANGE BADSECSYS AND BADSECSUG TO ERRORS ! ! X-18 JJF0014 J. JEFFERY FRIEDRICHS 14-APR-1994 ! ADD BADSECSYS AND BADSECSUG ! ! X-17 JJF0007 J. JEFFERY FRIEDRICHS 22-MAR-1994 ! ADD DENIGNORED. ! ! X-16 JJF0011 J. JEFFERY FRIEDRICHS 14-MAR-1994 ! ADD REBUILD MESSAGES. ALSO ADD CRELNM_FAILED FOR A PENDING ! CHANGE. ! ! X-15 JJF0008 J. JEFFERY FRIEDRICHS 9-MAR-1994 ! REMOVE FAO AND CLARIFY MESSAGES INCONPROT AND INCONOWNER ! ! X-14 JJF0005 J. JEFFERY FRIEDRICHS 1-FEB-1994 ! FIX TYPO IN MESSAGE BADUNDFAT ! ! X-13 AJK0003 ADAM J. KOJNOK 12-OCT-1993 ! ADDING NEW MESSAGE WAITDEVRDY FOR MOUNT. ! ! X-12 AJK0002 ADAM J. KOJNOK 12-OCT-1993 ! RETROFITTING MESSAGE VOLSETALRMNT FROM ALPHA VMS. ! ! X-4 ABELL53 ALLY BELL 25-JUNE-1993 ! ADDED FATAL MESSAGE VOLSETALRMNT FOR WHEN A VOLUME SET IS BEING ! MOUNTED WITH THE SAME NAME AS AN ALREADY MOUNTED VOLUME SET. ! ! X-10 AJK0010 MIKE STAMS/ADAM KOJNOK 01-SEP-1993 ! ADDING MESSAGE (CBSNOTSUPTD). ALSO, CHANGING 'NEWER' IN ! MESSAGE INVSHDWMEM TO "newer". THIS WAS REQUESTED BY ! DOCUMENTATION SO THAT IT MATCHES THE HELP FILE. ! ! X-9 VBK VAIKOM B. KRISHNAN 14-NOV-1991 ! ADD A NEW ERROR MESSAGE TO BE OUTPUT WHEN A DISK IS ! TOO BIG TO BE PART OF A VOLUME SET. SUCH DISKS ARE ! LARGER THAN 8GB AND SO THEY REQUIRE AN ENTIRE LONGWORD ! TO STORE LBNS WHICH LEAVES NO ROOM FOR RVN TO BE ! STORED IN THE MAP POINTER. ! ! X-8 JFD0034 JAMES F. DUNHAM 8-JAN-1991 ! IN SUPPORT OF FILES-11 C/D CONTROLLED VOLUME SETS, ! ADD ISO 9660 AND HIGH SIERRA VOLUME MOUNT MESSAGES ! ! X-21 RKK0057 ROBERT K. KOSAKOWSKI 19-FEB-1991 ! ADD NEW MESSAGES FOR MME OPCOM MESSAGES - SUPPORT OF ! SCRATCH VOLUME, MOUNT BY CARTRIDGE NAME. ! (FOR DAN KYLER) ! ! X-20 RKK0049 ROBERT K. KOSAKOWSKI 26-DEC-1990 ! REPLACE WITH CORRECT VERSION OF FILE. (BUILDBUG, CHECKED ! IN WRONG VERSION) ! ! X-19 RKK0048 ROBERT K. KOSAKOWSKI 21-DEC-1990 ! ADDED DEVNOFE MESSAGE. ! ! X-18 RKK0036 ROBERT K. KOSAKOWSKI 17-NOV-1990 ! ADDED INVQUAVAL MESSAGE. ! ! X-17 PRD PAUL R. DESTEFANO 26-APR-1990 ! ADDED NOALOCLASS MESSAGE. ! ! X-16 PRD PAUL R. DESTEFANO 20-MAR-1990 ! ADDED NOTACLU MESSAGE. ! ! X-15 PRD0548 PAUL R. DESTEFANO 06-NOV-1989 ! ADDED BADMDFMT MESSAGE. ! ! X-14 PRD0526 PAUL R. DESTEFANO 07-OCT-1989 ! ADDED MESSAGES SHDWMEMERGE, AUTOMEMSUCC, AUTOMEMCOPY ! AND AUTOMEMERGE, ! ! X-13 PRD0462 PAUL R. DESTEFANO 16-OCT-1988 ! ADDED WAITINGMNT AND RMTMNTSUCC MESSAGES. ! ! X-12 PRD0455 PAUL R. DESTEFANO 05-OCT-1988 ! ADDED MOUN$_MOUNT MESSAGE FOR IO$_DISPLAY CALL IN ! ASSIST. ! ! X-11 PRD0445 PAUL R. DESTEFANO 18-MAY-1988 ! ADD QUOTAFNF MESSAGE. ! ! X-10 PRD0416 PAUL R. DESTEFANO 23-SEP-1987 ! ADD RMTMNTFAIL AND MNTCLUFAIL WARNING MESSAGES FOR ! CLUSTER-WIDE MOUNT STATUS. ! ! X-9 DAS DAVID A. SOLOMON 05-DEC-1986 ! MAKE OBSOLETE MESSAGE CJFERR UNUSED. ! ! X-8 HH0130 HAI HUANG 04-DEC-1985 ! FOR CONSISTENCY, RENAME THIS MACRO TO $MOUNDEF. ! ! X-7 HH0116 HAI HUANG 03-OCT-1985 ! ADD SHDWINCVOL MESSAGE. ! ! X-6 HH0110 HAI HUANG 19-SEP-1985 ! CHANGE TEXT OF SHADOWFAIL MESSAGE. ! ! X-5 HH0110 HAI HUANG 19-SEP-1985 ! ADD SHADOWFAIL MESSAGE. ! ! X-4 HH0103 HAI HUANG 09-SEP-1985 ! ADD SHDWCOPYREQ MESSAGE. ALSO, RENAME SHAMEM TO ! SHDWMEM. ! ! X-3 HH0092 HAI HUANG 20-AUG-1985 ! REMOVE OBSOLETE BADJRNL MESSAGE. ! ! X-2 HH0073 HAI HUANG 16-MAY-1985 ! ADD VOLUME SHADOWING MESSAGES. ! ! ** ! + ! ! THE FOLLOWING ARE MESSAGES ISSUED BY THE MOUNT UTILITY. ! ! - ! ! ***** FOLLOWING MESSAGES ARE SHARED WITH INIT ! ! WHEN ADDING A NEW MESSAGE IN THIS SECTION, USE THE FILL VALUES DX. ! literal MOUN$_FACILITY = 114; literal MOUN$_BADDATCHK = 7503884; literal MOUN$_BADDENS = 7503892; literal MOUN$_BADPRO = 7503900; literal MOUN$_BADUIC = 7503908; literal MOUN$_CONFQUAL = 7503916; literal MOUN$_ILLOPT = 7503924; literal MOUN$_NONLOCAL = 7503932; literal MOUN$_NOTRAN = 7503940; literal MOUN$_UNKDEV = 7503948; literal MOUN$_BADLABELQ = 7503956; literal MOUN$_VALCNVERR = 7503964; literal MOUN$_D3 = 7503972; literal MOUN$_D4 = 7503980; literal MOUN$_D5 = 7503988; ! ! ***** PRECEDING MESSAGES ARE SHARED WITH INIT ! literal MOUN$_LOGNAME = 7503996; literal MOUN$_MAXDEV = 7504004; literal MOUN$_MAXLAB = 7504012; literal MOUN$_NOACPDEV = 7504020; literal MOUN$_MOUVOL = 7504028; literal MOUN$_INCOMPACP = 7504036; literal MOUN$_INCOMPAT = 7504044; literal MOUN$_VOLALRMNT = 7504052; literal MOUN$_BADVOL1 = 7504060; literal MOUN$_ILLDENS = 7504068; literal MOUN$_NOTGENDEV = 7504076; literal MOUN$_DUPDEVSPC = 7504084; literal MOUN$_ILLANSIBS = 7504092; literal MOUN$_ACCERR = 7504100; literal MOUN$_FILNOTEXP = 7504108; literal MOUN$_NOPRIV = 7504116; literal MOUN$_NOTANSI = 7504124; literal MOUN$_NOTLABEL = 7504132; literal MOUN$_NOTVOLSET = 7504140; literal MOUN$_NOTRELVOL = 7504148; literal MOUN$_OFFLINE = 7504156; literal MOUN$_IOERROR = 7504164; literal MOUN$_ILLQUAL = 7504172; literal MOUN$_WRITLCK = 7504180; literal MOUN$_RECGTRBL = 7504188; literal MOUN$_ACPNAME = 7504196; literal MOUN$_ACPTIME = 7504204; literal MOUN$_AQBTIME = 7504212; literal MOUN$_BADACP = 7504220; literal MOUN$_BADEBC = 7504228; literal MOUN$_BADOVR = 7504236; literal MOUN$_DEVICES = 7504244; literal MOUN$_SZTOOBIG = 7504252; literal MOUN$_INCONSDEV = 7504260; literal MOUN$_DEVCOUNT = 7504268; literal MOUN$_VOLINSET = 7504276; literal MOUN$_RVN1NOTMT = 7504284; literal MOUN$_SETLIMIT = 7504292; literal MOUN$_DUPVOLNAM = 7504300; literal MOUN$_HOMBLKCHK = 7504308; literal MOUN$_DUPRVN = 7504316; literal MOUN$_BADCACHE = 7504324; literal MOUN$_UNRELVOL = 7504332; literal MOUN$_MBXCRERR = 7504340; literal MOUN$_MBXRDERR = 7504348; literal MOUN$_REPLYERR = 7504356; literal MOUN$_OPRSNDERR = 7504364; literal MOUN$_OPRABORT = 7504372; literal MOUN$_BATCHNOOPR = 7504380; literal MOUN$_MOUNEWVOL = 7504388; literal MOUN$_REMOUVOL = 7504396; literal MOUN$_OBSOLETE = 7504404; literal MOUN$_VOLOERR = 7504412; literal MOUN$_BADINIT = 7504420; literal MOUN$_DISMAL = 7504428; literal MOUN$_INCONSHR = 7504436; literal MOUN$_INCONPROT = 7504444; literal MOUN$_INCONQUOTA = 7504452; literal MOUN$_INCONOWNER = 7504460; literal MOUN$_INCONWRITE = 7504468; literal MOUN$_INCONFOR = 7504476; literal MOUN$_NOVOLACC = 7504484; literal MOUN$_NOFILACC = 7504492; literal MOUN$_TAPEPOSLOST = 7504500; literal MOUN$_BADSHADOW = 7504508; literal MOUN$_NOSHDWMEM = 7504516; literal MOUN$_INVSHDWMEM = 7504524; literal MOUN$_SHDWCOPYREQ = 7504532; literal MOUN$_SHADOWFAIL = 7504540; literal MOUN$_SHDWINCVOL = 7504548; literal MOUN$_NOTSHDWDEV = 7504556; literal MOUN$_BADMDFMT = 7504564; literal MOUN$_NOTACLU = 7504572; literal MOUN$_NOALOCLASS = 7504580; literal MOUN$_BADASNUNIT = 7504588; literal MOUN$_BADDISP = 7504596; literal MOUN$_BADUNDFAT = 7504604; literal MOUN$_VOLTOOBIG = 7504612; literal MOUN$_BADSECSYS = 7504620; literal MOUN$_DEVBUSY = 7504628; literal MOUN$_DEVDMT = 7504636; literal MOUN$_BADREPLY = 7504644; literal MOUN$_MMEABORT = 7504652; literal MOUN$_NOSHADOW = 7504660; literal MOUN$_NOTSHDWVU = 7504668; literal MOUN$_NOSHADLIC = 7504676; literal MOUN$_DIFVOLMNT = 7504684; literal MOUN$_DEVSHAMEM = 7504692; literal MOUN$_SHADSCB = 7504700; literal MOUN$_NOODS1 = 7504708; literal MOUN$_WRONGVU = 7504716; literal MOUN$_DETSHADINCON = 7504724; literal MOUN$_NOMASTER = 7504732; literal MOUN$_XSMBRS = 7504740; literal MOUN$_NOVUID = 7504748; literal MOUN$_SHADUNSTABLE = 7504756; literal MOUN$_INCONPOOL = 7504764; literal MOUN$_DEVBUSYMOU = 7504772; literal MOUN$_DEVBUSYMOUDSA = 7504780; literal MOUN$_DEVBUSYDMT = 7504788; literal MOUN$_DEVBUSYSYS = 7504796; literal MOUN$_DEVBUSYVOL = 7504804; literal MOUN$_DEVBUSYORB = 7504812; literal MOUN$_DEVBUSYINVMOS = 7504820; literal MOUN$_DEVBUSYINSET = 7504828; literal MOUN$_NOTALLMEM = 7504836; literal MOUN$_BADPOLICY = 7504844; literal MOUN$_POLICYFAIL = 7504852; literal MOUN$_SPARE = 7504860; literal MOUN$_REQ_WBM_MERGE = 7504868; literal MOUN$_REQ_WBM_FAIL = 7504876; literal MOUN$_ACPNOTPRESENT = 7504884; literal MOUN$_BADWINDOWS = 7504892; literal MOUN$_NOCAPABILITY = 7504900; literal MOUN$_MBRTOOSMALL = 7504908; literal MOUN$_SHDWREQALLOC = 7504916; literal MOUN$_INVALIDSCB = 7504924; ! *********************************************************************** ! ! ADD NEW FATAL STATUS MESSAGES HERE. THERE IS ROOM FOR 385 MORE CODES. ! ! *********************************************************************** ! ! WARNING MESSAGES ! literal MOUN$_HOMBLKBAD = 7507968; literal MOUN$_IDXHDRBAD = 7507976; literal MOUN$_MAPHDRBAD = 7507984; literal MOUN$_IDXMAPERR = 7507992; literal MOUN$_BITMAPERR = 7508000; literal MOUN$_BADHOMBLK = 7508008; literal MOUN$_WRTHOMBLK = 7508016; literal MOUN$_QUOTAFAIL = 7508024; literal MOUN$_BITMAPINV = 7508032; literal MOUN$_WRITESCB = 7508040; literal MOUN$_DISMPART = 7508048; literal MOUN$_UNUSED = 7508056; literal MOUN$_DISMOUNTD = 7508064; literal MOUN$_VOLSHDWMEM = 7508072; literal MOUN$_RMTMNTFAIL = 7508080; literal MOUN$_MNTCLUFAIL = 7508088; literal MOUN$_QUOTAFNF = 7508096; literal MOUN$_CBSNOTSUPTD = 7508104; literal MOUN$_CRELNM_FAILED = 7508112; literal MOUN$_DENIGNORED = 7508120; literal MOUN$_ALHOMERR = 7508128; literal MOUN$_ALHOMINV = 7508136; literal MOUN$_INCONSTRUCT = 7508144; literal MOUN$_INCONSET = 7508152; literal MOUN$_OLDSHDRIVER = 7508160; literal MOUN$_POLICYWARN = 7508168; literal MOUN$_INCONSIZE = 7508176; literal MOUN$_OPT_WBM_MERGE = 7508184; literal MOUN$_WBM_NOTSTARTED = 7508192; literal MOUN$_OPTCAPABILITY = 7508200; ! ! INFORMATIONAL MESSAGES ! literal MOUN$_MOUNTED = 7512067; literal MOUN$_VOLIDENT = 7512075; literal MOUN$_WRITELOCK = 7512083; literal MOUN$_REBUILD = 7512091; literal MOUN$_OPRQST = 7512099; literal MOUN$_OPREPLY = 7512107; literal MOUN$_OPRQSTCAN = 7512115; literal MOUN$_NOOPR = 7512123; literal MOUN$_INVLDRESP = 7512131; literal MOUN$_MOUNTDEV = 7512139; literal MOUN$_VOLNAME = 7512147; literal MOUN$_NODEVAVL = 7512155; literal MOUN$_RPLYARRIVD = 7512163; literal MOUN$_WRONGVOL = 7512171; literal MOUN$_RQSTDON = 7512179; literal MOUN$_VOLSTATUS = 7512187; literal MOUN$_VOLSETSTS = 7512195; literal MOUN$_REDCACHE = 7512203; literal MOUN$_REBLDREQD = 7512211; literal MOUN$_SHDWMEMSUCC = 7512219; literal MOUN$_SHDWMEMCOPY = 7512227; literal MOUN$_SHDWMEMFAIL = 7512235; literal MOUN$_MOUNT = 7512243; ! MAXIMUM = 8 CHARACTERS literal MOUN$_WAITINGMNT = 7512251; literal MOUN$_RMTMNTSUCC = 7512259; literal MOUN$_SHDWMEMERGE = 7512267; literal MOUN$_AUTOMEMSUCC = 7512275; literal MOUN$_AUTOMEMCOPY = 7512283; literal MOUN$_AUTOMEMERGE = 7512291; literal MOUN$_MOUNTVOL = 7512299; literal MOUN$_ANYSCRATCH = 7512307; literal MOUN$_SCRATCHCOL = 7512315; literal MOUN$_SCRATCHLOC = 7512323; literal MOUN$_SCRCOLLOC = 7512331; literal MOUN$_SUITDEV = 7512339; literal MOUN$_DEVTYPE = 7512347; literal MOUN$_DEVICE = 7512355; literal MOUN$_MEDIANAME = 7512363; literal MOUN$_CARTRIDGE = 7512371; literal MOUN$_CARTSIDE = 7512379; literal MOUN$_CDROM_ISO = 7512387; literal MOUN$_CDROM_HS = 7512395; literal MOUN$_WAITDEVRDY = 7512403; literal MOUN$_NOTODS2 = 7512411; literal MOUN$_SRCMBRADD = 7512419; literal MOUN$_ISACPYTRGT = 7512427; literal MOUN$_ISAMBR = 7512435; literal MOUN$_DOSETVOL = 7512443; literal MOUN$_RETSTATUS = 7512451; literal MOUN$_SHDWMEMMCPY = 7512459; literal MOUN$_SHDWNOMCPY = 7512467; ! ! MORE FATAL MESSAGES (DO NOT ADD MORE MESSAGES TO THIS SECTION UNTIL ! THE BLOCK ABOVE HAS BEEN USED UP.) ! literal MOUN$_INVQUAVAL = 7515876; literal MOUN$_DEVNOFE = 7515884; literal MOUN$_VOLSETALRMNT = 7515892; !*** MODULE $RBLDDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:53:42.60 ! literal RBLD$_FACILITY = 1814; literal RBLD$_NODEVICE = 118915082; literal RBLD$_ADDERR = 118915090; literal RBLD$_MODIFYERR = 118915098; literal RBLD$_CLOSERR = 118915106; literal RBLD$_LOCKERR = 118915114; literal RBLD$_UNLOCKERR = 118915122; literal RBLD$_MAXVOLS = 118915130; literal RBLD$_ACCINDEXF = 118915138; literal RBLD$_ACCBITMAP = 118915146; literal RBLD$_ACCQFILE = 118915154; literal RBLD$_QUOTARERR = 118915162; literal RBLD$_BITMAPERR = 118915170; literal RBLD$_READSCB = 118915178; literal RBLD$_WRITESCB = 118915186; literal RBLD$_WRTIBMAP = 118915194; literal RBLD$_WRTBITMAP = 118915202; literal RBLD$_MEMALLOC = 118915210; literal RBLD$_HOMEBLOCK = 118915218; literal RBLD$_SYSHEADER = 118915226; literal RBLD$_ERRORS = 118915234; literal RBLD$_SHADSCB = 118915242; literal RBLD$_DUALLOC = 118915248; literal RBLD$_HEADERERR = 118915256; literal RBLD$_WRITEHDR = 118915264; literal RBLD$_ERASEBLKS = 118915272; literal RBLD$_VOLNOTPRESENT = 118915280; literal RBLD$_INVBACKLINK = 118915288; literal RBLD$_NOREBLDREQD = 118915299; literal RBLD$_REBLDREQD = 118915307; literal RBLD$_REBLDDONE = 118915313; literal RBLD$_INVALIDSCB = 118915322; ! ! ---- < End of module MOUNTMSG.B32 - 12-AUG-2010 13:57:03.80 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:32 by OpenVMS SDL EV3-3 ! Source: 16-MAY-1991 16:00:25 $1$DGA7361:[STARLET.SRC]MSGSTRUCT.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $MSCDEF *** literal MSC$C_MSG = 0; ! CONTAINS ACTUAL MESSAGE TEXT literal MSC$C_IND = 1; ! CONTAINS FILE SPEC OF MESSAGE FILE literal MSC$C_MAXTYPE = 2; ! MAXIMUM ALLOWABLE TYPE CODE literal MSC$M_MAPPED = %X'1'; literal MSC$C_SANITY = 1234; literal MSC$K_LENGTH = 40; ! LENGTH OF FIXED PORTION (MSG) literal MSC$C_LENGTH = 40; ! LENGTH OF FIXED PORTION (MSG) literal MSC$S_MSCDEF = 40; macro MSC$B_TYPE = 0,0,8,0 %; ! TYPE OF MESSAGE SECTION macro MSC$R_FLAGS_OVERLAY = 1,0,8,0 %; macro MSC$B_FLAGS = 1,0,8,0 %; ! FLAGS macro MSC$R_FLAGS_BITS = 1,0,8,0 %; macro MSC$V_MAPPED = 1,0,1,0 %; ! TRUE IF FILE HAS BEEN MAPPED (IND ONLY) macro MSC$W_SANITY = 2,0,16,0 %; ! SANITY CHECK (MUST = MSC$C_SANITY) macro MSC$L_SIZE = 4,0,32,0 %; ! LENGTH OF ENTIRE MESSAGE SECTION (MSG) macro MSC$L_INDEX_OFF = 8,0,32,0 %; ! OFFSET TO PRIMARY INDEX PORTION macro MSC$L_FAC_OFF = 12,0,32,0 %; ! OFFSET TO FACILITY TABLE macro MSC$L_TEXT_OFF = 16,0,32,0 %; ! OFFSET TO TEXT PORTION macro MSC$L_SUBST_OFF = 20,0,32,0 %; ! OFFSET TO TEXT SUBSTITUTION TABLE literal MSC$S_MSCDEF1 = 10; macro MSC$B_INDNAMLEN = 8,0,8,0 %; ! LENGTH OF COUNTED STRING macro MSC$T_INDNAME = 9,0,8,0 %; ! FILE SPEC OF MESSAGE FILE !*** MODULE $MIDXDEF *** ! ! Define message section index ! ! All message indicies are longword aligned and the ! size is always rounded to the next longword boundary. ! This is done for additional verification checks. ! literal MIDX$C_BKTSIZ = 512; ! BUCKET SIZE IN BYTES literal MIDX$C_SANITY = 123; literal MIDX$K_LENGTH = 8; ! LENGTH OF FIXED BUCKET OVERHEAD literal MIDX$C_LENGTH = 8; ! LENGTH OF FIXED BUCKET OVERHEAD literal MIDX$K_ENTRIES = 8; ! START OF INDEX ENTRIES literal MIDX$C_ENTRIES = 8; ! START OF INDEX ENTRIES ! EACH IS 8 BYTES, literal MIDX$S_MIDXDEF = 8; macro MIDX$W_SIZE = 0,0,16,0 %; ! LENGTH OF INDEX IN BYTES macro MIDX$B_SANITY = 2,0,8,0 %; ! SANITY CHECK (MUST = MIDX$C_SANITY) ! 0-3: MESSAGE CODE ! 4-7: OFFSET TO MESSAGE RECORD ! (IF LOW BIT SET, THEN OFFSET ! POINTS TO SUBINDEX RATHER THAN ! A MESSAGE RECORD) !*** MODULE $MRECDEF *** ! ! Message definition record in message section ! ! All message definition records are word aligned and ! the size is rounded to the next word boundary. This ! is done for additional verification checks. ! literal MREC$C_ENGLISH = 0; ! ENGLISH LANGUAGE (DEFAULT) literal MREC$C_GERMAN = 1; ! GERMAN LANGUAGE literal MREC$C_FRENCH = 2; ! FRENCH LANGUAGE literal MREC$K_FIXEDLEN = 9; ! LENGTH OF FIXED PORTION OF RECORD literal MREC$C_FIXEDLEN = 9; ! LENGTH OF FIXED PORTION OF RECORD literal MREC$S_MRECDEF = 11; macro MREC$W_SIZE = 0,0,16,0 %; ! LENGTH OF MESSAGE DEFINITION RECORD macro MREC$B_TYPE = 2,0,8,0 %; ! TYPE OF MESSAGE RECORD macro MREC$B_FLAGS = 3,0,8,0 %; ! FLAGS macro MREC$B_LEVEL = 4,0,8,0 %; ! MESSAGE DETAIL LEVEL (0-255) macro MREC$B_FAOCNT = 5,0,8,0 %; ! NUMBER OF FAO ARGUMENTS IN MESSAGE macro MREC$B_USERVAL = 6,0,8,0 %; ! USER SPECIFIED VALUE macro MREC$B_LANG = 8,0,8,0 %; ! LANGUAGE NUMBER macro MREC$B_IDENTLEN = 9,0,8,0 %; ! MESSAGE IDENT STRING LENGTH macro MREC$T_IDENT = 10,0,8,0 %; ! MESSAGE IDENT STRING ! MESSAGE TEXT FOLLOWS (ASCIC) !*** MODULE $MFACDEF *** ! ! Define facility name table within section ! literal MFAC$S_MFACDEF = 4; macro MFAC$W_NUMBER = 0,0,16,0 %; ! FACILITY NUMBER macro MFAC$B_NAMELEN = 2,0,8,0 %; ! LENGTH OF FACILITY NAME macro MFAC$T_NAME = 3,0,8,0 %; ! FACILITY NAME (VARIABLE LENGTH) ! ! ---- < End of module MSGSTRUCT.R32 - 12-AUG-2010 13:57:03.85 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:18 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:18 $1$DGA7361:[STARLET.OBJ]NSAMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $NSAMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:18.22 ! ! ! ! *********************************************************************** ! * * ! * * ! * COPYRIGHT 1989 COMPAQ COMPUTER CORPORATION * ! * * ! * COMPAQ REGISTERED IN U.S. PATENT AND TRADEMARK OFFICE. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM COMPAQ OR * ! * AUTHORIZED SUBLICENSOR REQUIRED FOR POSSESSION, USE OR COPYING. * ! * CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE,* ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL * ! * ITEMS ARE LICENSED TO THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD * ! * COMMERCIAL LICENSE. * ! * * ! * * ! * * ! *********************************************************************** ! ! ! ++ ! ! FACILITY: ! ! VMSLIB ! ! ABSTRACT: ! ! THIS MODULE DEFINES THE MESSAGES CODES USED TO AUDIT USE OF PRIVILEGE ! WITHIN THE VMS TCB. MESSAGE CODES ARE NUMBERED FROM 0-4095. ! ! THE FIRST HALF OF THIS RANGE IS RESERVED EXCLUSIVELY FOR PRIVILEGE ! AUDITING AND ARE FURTHER BROKEN DOWN BY PRIVILEGE. THE SECOND HALF OF THE ! RANGE IS RESERVED FOR OTHER MESSAGES ASSOCIATED WITH TCB AUDIT EVENTS. ! ! ENVIRONMENT: ! ! VMS EXECUTIVE ! ! AUTHOR: ! ! DERRELL D. PIPER APRIL 17TH, 1989 ! ! NOTA BENE: ! ! OBSOLETE PRIVILEGE AUDITING MESSAGE CODES CANNOT BE REMOVED FROM THIS ! MODULE! THESE MESSAGE CODES ARE DEFINED IN STARLET AND REFERENCED BY ! NAME IN THE $IFPRIV/$IFNPRIV AND $HAS_PRIV MACROS. IF YOU WANT TO ! "remove" AN OBSOLETE MESSAGE, REPLACE THE TEXT WITH "< -- unused -- >". ! IF YOU'RE ADDING A NEW MESSAGE, PLEASE RE-USE ANY UNUSED MESSAGES. ! ! MODIFICATIONS: ! ! X-37 GP051505 GUY PELEG 15-MAY-2006 ! ADD COMB_20 AND WORLD_6. ! ! X-36 RAB0148 ROBERT A. BROOKS 11-JAN-2006 ! ADD OPER_94 FOR SET PATH AUDITING. ! ! X-35 RAB0143 ROBERT A. BROOKS 28-NOV-2005 ! ADD SYSPRV_52 FOR SET PATH AUDITING. ! ! X-34 WCC WILLIAM CLEMENCE 15-JUL-2004 ! ADDED CMKRNL_37 FOR IPMI AUDITING ! ! X-33 JJF0282 J. JEFFERY FRIEDRICHS 9-MAR-2004 ! ADDED SYSPRV_51 FOR SETSHOSHADOW AUDITING ! ! X-32 LC0002 LARRY CAMILLI 15-JAN-2003 ! ADDED OPER_93 FOR OPER PRIVILEGE REQUIREMENT FOR ! SET CACHE/FLUSH, AND REMOVED VOLPRO_16. (SEE X-31.) ! ! X-31 LC0001 LARRY CAMILLI 19-DEC-2002 ! ADDED OPER_92 FOR OPER PRIVILEGE REQUIREMENT FOR ! SET CACHE/RESET AND VOLPRO_16 FOR VOLPRO PRIVILEGE ! REQUIREMENT FOR SET CACHE/FLUSH. ! ! X-30 JAH0405 JOHN A HARNEY 01-AUG-2002 ! MORE COE FOLD: AUDITS FOR MEDDLE BIT PRIV CHECK: ! ! X-25A1A2 JAH0404 JOHN A HARNEY 24-JUL-2002 ! ADD CMKRNL_36 FOR $SET_PROCESS_PROPERTIES MEDDLE_ENABLE BIT. ! ! X-25A1A1 JAH0404 JOHN A HARNEY 23-JUL-2002 ! ADD CMEXEC_2 FOR $SET_PROCESS_PROPERTIES MEDDLE_ENABLE BIT. ! ! X-29 DOUGLAS FYFE 15-FEB-2002 ! ADD MESSAGES FOR USE-OF-PRIVILEGE AUDITING WITHIN SET SERVER ! /SUSPEND, /RESUME AND /CLUSTER. ! ! X-28 JAH0378 JOHN A HARNEY 10-OCT-2001 ! COE FOLD: CHANGE AUDIT MESSAGE FOR IMPERSONATE_12 ! ! X-27 LJK0230 LAWRENCE J. KILGALLEN 15-FEB-2001 ! ONE MORE MESSAGE FOR USE-OF-PRIVILEGE AUDITING WITHIN ! SHOW SERVER. ! ! X-25 LJK0219 LAWRENCE J. KILGALLEN 2-FEB-2001 ! RESOLVE A FOLD BETWEEN X-24, X-23 AND X-22A. ! ! X-24 PEM0070 PAUL E. MOSTEIKA 01-AUG-2000 ! ADD IMPERSONATE_12 - AUDIT THE NEW ACE TYPE ! POSIX_OWNER FOR COE SUPPORT OF EFFECTIVE UID/GID. ! ! X-23 KGBCOE KENNETH G.BLAYLOCK 18-JUL-2000 ! MODIFY XQP_16 WITH NEW MESSAGE NAME AND ADD ! A NEW XQP_23 MESSAGE. ! ! X-22A LJK0218 LAWRENCE J. KILGALLEN 1-FEB-2001 ! ADD MESSAGES FOR USE-OF-PRIVILEGE AUDITING WITHIN SET SERVER ! AND SHOW SERVER. ! ADD MESSAGES FOR USE-OF-PRIVILEGE AUDITING BY SYS$ACM[W]. ! ! X-22 JAH0331 JOHN A HARNEY 10-MAR-1999 ! ADD IMPERSONATE_11 FOR USES OF $PERSONA_RESERVE. ! ! X-21 JAH0317 JOHN A HARNEY 24-SEP-1998 ! ADD AUDIT_3 FOR NEW $SETUAI ITEM WHICH REQUIRES AUDIT PRIV. ! ! X-20 JMB004 JIM BLUE 08-JUN-1998 ! ADD OPER_79, OPER_80, AND OPER_81 MESSAGES FOR ! MULTIPATH SET DEVICE /ENABLE, /POLL, AND /SWITCH ! OPTIONS. ! ! X-19 JAH0269 JOHN A HARNEY 11-NOV-1997 ! ADD NSA$_IMPERSONATE_8, _9, AND _10 FOR PERSONA SERVICES. ! ! X-18 MCJ MICHAEL C. JOHNSON 31-JUL-1997 ! ADD CMKRNL_35, XQP_21 AND XQP_22 MESSAGES FOR XFC ! (EXTENDED FILE CACHE) PROJECT. ! ! X-17 NL NICCOLE LUCE 04-MAR-1997 ! ADD NETMBX_3 MESSAGE FOR ICC (RAVEN_FT1). ! ! X-16 WXD BILL DAVENPORT 13-DEC-1995 ! PERTHREAD SECURITY STAGE 1 CHECKIN: ! - RENAME DETACH PRIVILEGE TO IMPERSONATE. ADD ! LITERALS SO THAT OLD SYMBOLS STILL GET CREATED ! TO MAINTAIN BACKWARD COMPATIBILITY ! - ADDED SETPRV_6 FOR USE OF SETPRV TO MODIFY IMAGE ! WORKING PRIVILEGES MASK. ! ! X-15 RJB0016 RICHARD J. BARRY 28-JUN-1995 ! CHANGE TEXT OF MACBYPASSED MESSAGE. ! ! X-14 JRK369 JIM KAUFFMAN 25-APR-1995 ! ADD ALTPRI_7 AND WORLD_5 ! ! X-13 CHANGE TEXT OF MESSAGES SO 64-BIT SYSTEM SERVICES CAN ! SHARE ROUTINES WHICH DO AUTIDING WITH WITH 32-BIT SYSTEM ! SERVICES. ! ! MESSAGES CHANGED: ! CMKRNL_22 ! CMKRNL_23 ! CMEXEC_1 ! PRMGBL_1 ! SYSGBL_1 ! PFNMAP_1 ! PFNMAP_2 ! ! X-12 JCH703 JOHN C. HALLYBURTON, JR. 17-JAN-1995 ! CHANGE TEXT OF LOG_IO_1, PHY_IO_9, PHY_IO_14 AND DETACH_1. ! ADD ALTPRI_6. ! ! X-11 REG002 RUTH GOLDENBERG 26-OCT-1994 ! EDIT TEXT OF CMKRNL_24 AND DETACH_1 TO INCLUDE ! REMOTE PROCESS CREATIONS. ! ! X-10 JAH0159 JOHN A HARNEY 07-SEP-1994 ! ADD COMMON MAPPING MESSAGES ! ! X-9 NYK028 NITIN Y. KARKHANIS 20-MAY-1994 ! RELEASE OPER_47 AND USE CMKRNL_34 FOR FLAGGING ATTEMPTED ! MODIFICATIONS TO CONSOLE ENVIRONMENT VARIABLES. ! ! X-8 NYK023 NITIN Y. KARKHANIS 14-APR-1994 ! RE-USED OPER_47 FOR "USER MODIFYING CONSOLE ENVIRONMENT ! VARIABLES. ! ! X-7 JAH0086 JOHN A HARNEY 14-MAR-1994 ! ADD SECURITY_20 TO SECURITY_25 MESSAGES. ! ! X-6 SGS0042 STEVE SKONETSKI 10-MAR-1994 ! ADD MEDIA MANAGEMENT EXTENSIONS (MME) SPECIFIC ! AUDITING MESSAGES. ! ! X-5 SAD0296 STUART A. DAVIDSON 9-DEC-1993 ! ADD DETACH_7 FOR IMPERSONATION. ! ! X-4 TRB TOM BENSON 23-OCT-1993 ! PROPAGATED WORLD_4 FROM VAX, FOR CLASS SCHEDULER. ! ! X-3 TNS003 TOM SCARPELLI 23-AUG-1993 ! CHANGE $MAPGBL TO $MGBLSC. ! ! X-2 CEG CLAIR GRANT 2-APR-1993 ! VAX (BLADE) => AXP. GET BLADE VERSION. ! ! X-1 CEG CLAIR GRANT 04-MAR-1993 ! VAX (BLADE) => AXP. GET BLADE VERSION FOR EPSILON. ! ! ** literal NSA$_FACILITY = 1072; literal NSA$_CMKRNL_1 = 70287363; literal NSA$_CMKRNL_2 = 70287371; literal NSA$_CMKRNL_3 = 70287379; literal NSA$_CMKRNL_4 = 70287387; literal NSA$_CMKRNL_5 = 70287395; literal NSA$_CMKRNL_6 = 70287403; literal NSA$_CMKRNL_7 = 70287411; ! UNDOCUMENTED literal NSA$_CMKRNL_8 = 70287419; literal NSA$_CMKRNL_9 = 70287427; literal NSA$_CMKRNL_10 = 70287435; ! UNDOCUMENTED literal NSA$_CMKRNL_11 = 70287443; ! UNDOCUMENTED literal NSA$_CMKRNL_12 = 70287451; literal NSA$_CMKRNL_13 = 70287459; literal NSA$_CMKRNL_14 = 70287467; ! UNDOCUMENTED literal NSA$_CMKRNL_15 = 70287475; literal NSA$_CMKRNL_16 = 70287483; ! UNDOCUMENTED literal NSA$_CMKRNL_17 = 70287491; literal NSA$_CMKRNL_18 = 70287499; ! UNDOCUMENTED literal NSA$_CMKRNL_19 = 70287507; literal NSA$_CMKRNL_20 = 70287515; ! UNDOCUMENTED literal NSA$_CMKRNL_21 = 70287523; ! UNDOCUMENTED literal NSA$_CMKRNL_22 = 70287531; literal NSA$_CMKRNL_23 = 70287539; literal NSA$_CMKRNL_24 = 70287547; literal NSA$_CMKRNL_25 = 70287555; ! UNDOCUMENTED literal NSA$_CMKRNL_26 = 70287563; literal NSA$_CMKRNL_27 = 70287571; ! UNDOCUMENTED literal NSA$_CMKRNL_28 = 70287579; literal NSA$_CMKRNL_29 = 70287587; literal NSA$_CMKRNL_30 = 70287595; literal NSA$_CMKRNL_31 = 70287603; literal NSA$_CMKRNL_32 = 70287611; literal NSA$_CMKRNL_33 = 70287619; literal NSA$_CMKRNL_34 = 70287627; literal NSA$_CMKRNL_35 = 70287635; literal NSA$_CMKRNL_36 = 70287643; ! ! START OF A SET OF AUDITS ISSUED ONLY ON IPF ! literal NSA$_CMKRNL_37 = 70287651; ! ! END OF A SET OF AUDITS ISSUED ONLY ON IPF ! literal NSA$_CMEXEC_1 = 70287763; literal NSA$_CMEXEC_2 = 70287771; literal NSA$_SYSNAM_1 = 70287843; literal NSA$_SYSNAM_2 = 70287851; literal NSA$_SYSNAM_3 = 70287859; literal NSA$_SYSNAM_4 = 70287867; literal NSA$_SYSNAM_5 = 70287875; literal NSA$_SYSNAM_6 = 70287883; literal NSA$_SYSNAM_7 = 70287891; literal NSA$_SYSNAM_8 = 70287899; literal NSA$_SYSNAM_9 = 70287907; literal NSA$_SYSNAM_10 = 70287915; literal NSA$_SYSNAM_11 = 70287923; literal NSA$_SYSNAM_12 = 70287931; literal NSA$_SYSNAM_13 = 70287939; literal NSA$_GRPNAM_1 = 70288083; literal NSA$_GRPNAM_2 = 70288091; literal NSA$_GRPNAM_3 = 70288099; literal NSA$_ALLSPOOL_1 = 70288163; literal NSA$_DETACH_1 = 70288243; literal NSA$_DETACH_2 = 70288251; literal NSA$_DETACH_3 = 70288259; literal NSA$_DETACH_4 = 70288267; literal NSA$_DETACH_5 = 70288275; literal NSA$_DETACH_6 = 70288283; literal NSA$_DETACH_7 = 70288291; literal NSA$_IMPERSONATE_1 = 70288243; literal NSA$_IMPERSONATE_2 = 70288251; literal NSA$_IMPERSONATE_3 = 70288259; literal NSA$_IMPERSONATE_4 = 70288267; literal NSA$_IMPERSONATE_5 = 70288275; literal NSA$_IMPERSONATE_6 = 70288283; literal NSA$_IMPERSONATE_7 = 70288291; literal NSA$_IMPERSONATE_8 = 70288299; literal NSA$_IMPERSONATE_9 = 70288307; literal NSA$_IMPERSONATE_10 = 70288315; ! THE ABOVE LIST IS FULL. USE THE OVERFLOW REGION AT THE END OF THE MODULE. literal NSA$_DIAGNOSE_1 = 70288323; literal NSA$_DIAGNOSE_2 = 70288331; literal NSA$_DIAGNOSE_3 = 70288339; literal NSA$_DIAGNOSE_4 = 70288347; ! UNDOCUMENTED literal NSA$_DIAGNOSE_5 = 70288355; literal NSA$_DIAGNOSE_6 = 70288363; literal NSA$_DIAGNOSE_7 = 70288371; literal NSA$_DIAGNOSE_8 = 70288379; literal NSA$_LOG_IO_1 = 70288403; literal NSA$_LOG_IO_2 = 70288411; literal NSA$_LOG_IO_3 = 70288419; literal NSA$_LOG_IO_4 = 70288427; literal NSA$_LOG_IO_5 = 70288435; ! UNDOCUMENTED literal NSA$_LOG_IO_6 = 70288443; literal NSA$_LOG_IO_7 = 70288451; literal NSA$_GROUP_1 = 70288483; literal NSA$_GROUP_2 = 70288491; literal NSA$_GROUP_3 = 70288499; literal NSA$_GROUP_4 = 70288507; literal NSA$_GROUP_5 = 70288515; literal NSA$_GROUP_6 = 70288523; literal NSA$_GROUP_7 = 70288531; literal NSA$_GROUP_8 = 70288539; literal NSA$_GROUP_9 = 70288547; literal NSA$_GROUP_10 = 70288555; literal NSA$_ACNT_1 = 70288643; literal NSA$_ACNT_2 = 70288651; literal NSA$_PRMCEB_1 = 70288723; literal NSA$_PRMCEB_2 = 70288731; literal NSA$_PRMMBX_1 = 70288803; literal NSA$_PRMMBX_2 = 70288811; literal NSA$_PRMMBX_3 = 70288819; literal NSA$_PSWAPM_1 = 70288883; literal NSA$_PSWAPM_2 = 70288891; literal NSA$_PSWAPM_3 = 70288899; literal NSA$_PSWAPM_4 = 70288907; literal NSA$_ALTPRI_1 = 70288963; literal NSA$_ALTPRI_2 = 70288971; literal NSA$_ALTPRI_3 = 70288979; literal NSA$_ALTPRI_4 = 70288987; literal NSA$_ALTPRI_5 = 70288995; literal NSA$_ALTPRI_6 = 70289003; literal NSA$_ALTPRI_7 = 70289011; literal NSA$_IMPORT_1 = 70289043; literal NSA$_TMPMBX_1 = 70289123; literal NSA$_TMPMBX_2 = 70289131; literal NSA$_WORLD_1 = 70289203; literal NSA$_WORLD_2 = 70289211; literal NSA$_WORLD_3 = 70289219; literal NSA$_WORLD_4 = 70289227; literal NSA$_WORLD_5 = 70289235; literal NSA$_WORLD_6 = 70289243; literal NSA$_MOUNT_1 = 70289283; literal NSA$_OPER_1 = 70289363; literal NSA$_OPER_2 = 70289371; literal NSA$_OPER_3 = 70289379; literal NSA$_OPER_4 = 70289387; literal NSA$_OPER_5 = 70289395; literal NSA$_OPER_6 = 70289403; literal NSA$_OPER_7 = 70289411; literal NSA$_OPER_8 = 70289419; literal NSA$_OPER_9 = 70289427; literal NSA$_OPER_10 = 70289435; literal NSA$_OPER_11 = 70289443; literal NSA$_OPER_12 = 70289451; literal NSA$_OPER_13 = 70289459; literal NSA$_OPER_14 = 70289467; ! UNDOCUMENTED literal NSA$_OPER_15 = 70289475; ! UNDOCUMENTED literal NSA$_OPER_16 = 70289483; literal NSA$_OPER_17 = 70289491; ! UNDOCUMENTED literal NSA$_OPER_18 = 70289499; ! UNDOCUMENTED literal NSA$_OPER_19 = 70289507; literal NSA$_OPER_20 = 70289515; literal NSA$_OPER_21 = 70289523; literal NSA$_OPER_22 = 70289531; literal NSA$_OPER_23 = 70289539; literal NSA$_OPER_24 = 70289547; ! UNDOCUMENTED literal NSA$_OPER_25 = 70289555; literal NSA$_OPER_26 = 70289563; literal NSA$_OPER_27 = 70289571; literal NSA$_OPER_28 = 70289579; literal NSA$_OPER_29 = 70289587; literal NSA$_OPER_30 = 70289595; literal NSA$_OPER_31 = 70289603; literal NSA$_OPER_32 = 70289611; literal NSA$_OPER_33 = 70289619; literal NSA$_OPER_34 = 70289627; literal NSA$_OPER_35 = 70289635; ! UNDOCUMENTED literal NSA$_OPER_36 = 70289643; literal NSA$_OPER_37 = 70289651; literal NSA$_OPER_38 = 70289659; literal NSA$_OPER_39 = 70289667; literal NSA$_OPER_40 = 70289675; literal NSA$_OPER_41 = 70289683; literal NSA$_OPER_42 = 70289691; literal NSA$_OPER_43 = 70289699; literal NSA$_OPER_44 = 70289707; literal NSA$_OPER_45 = 70289715; literal NSA$_OPER_46 = 70289723; literal NSA$_OPER_47 = 70289731; literal NSA$_OPER_48 = 70289739; literal NSA$_OPER_49 = 70289747; literal NSA$_OPER_50 = 70289755; literal NSA$_OPER_51 = 70289763; literal NSA$_OPER_52 = 70289771; literal NSA$_OPER_53 = 70289779; literal NSA$_OPER_54 = 70289787; literal NSA$_OPER_55 = 70289795; literal NSA$_OPER_56 = 70289803; ! UNDOCUMENTED literal NSA$_OPER_57 = 70289811; literal NSA$_OPER_58 = 70289819; literal NSA$_OPER_59 = 70289827; literal NSA$_OPER_60 = 70289835; literal NSA$_OPER_61 = 70289843; literal NSA$_OPER_62 = 70289851; literal NSA$_OPER_63 = 70289859; literal NSA$_OPER_64 = 70289867; literal NSA$_OPER_65 = 70289875; literal NSA$_OPER_66 = 70289883; literal NSA$_OPER_67 = 70289891; literal NSA$_OPER_68 = 70289899; literal NSA$_OPER_69 = 70289907; literal NSA$_OPER_70 = 70289915; ! UNDOCUMENTED literal NSA$_OPER_71 = 70289923; literal NSA$_OPER_72 = 70289931; literal NSA$_OPER_73 = 70289939; literal NSA$_OPER_74 = 70289947; literal NSA$_OPER_75 = 70289955; literal NSA$_OPER_76 = 70289963; literal NSA$_OPER_77 = 70289971; literal NSA$_OPER_78 = 70289979; literal NSA$_OPER_79 = 70289987; literal NSA$_OPER_80 = 70289995; literal NSA$_OPER_81 = 70290003; ! ! START OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_OPER_82 = 70290011; literal NSA$_OPER_83 = 70290019; literal NSA$_OPER_84 = 70290027; literal NSA$_OPER_85 = 70290035; literal NSA$_OPER_86 = 70290043; literal NSA$_OPER_87 = 70290051; literal NSA$_OPER_88 = 70290059; literal NSA$_OPER_89 = 70290067; literal NSA$_OPER_90 = 70290075; literal NSA$_OPER_91 = 70290083; literal NSA$_OPER_92 = 70290091; literal NSA$_OPER_93 = 70290099; literal NSA$_OPER_94 = 70290107; ! ! END OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_EXQUOTA_1 = 70290323; ! ! START OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_EXQUOTA_2 = 70290331; literal NSA$_EXQUOTA_3 = 70290339; ! ! END OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_NETMBX_1 = 70290403; literal NSA$_NETMBX_2 = 70290411; literal NSA$_NETMBX_3 = 70290419; literal NSA$_VOLPRO_1 = 70290483; literal NSA$_VOLPRO_2 = 70290491; literal NSA$_VOLPRO_3 = 70290499; ! UNDOCUMENTED literal NSA$_VOLPRO_4 = 70290507; literal NSA$_VOLPRO_5 = 70290515; literal NSA$_VOLPRO_6 = 70290523; literal NSA$_VOLPRO_7 = 70290531; literal NSA$_VOLPRO_8 = 70290539; literal NSA$_VOLPRO_9 = 70290547; literal NSA$_VOLPRO_10 = 70290555; literal NSA$_VOLPRO_11 = 70290563; literal NSA$_VOLPRO_12 = 70290571; literal NSA$_VOLPRO_13 = 70290579; literal NSA$_VOLPRO_14 = 70290587; literal NSA$_VOLPRO_15 = 70290595; literal NSA$_PHY_IO_1 = 70290643; literal NSA$_PHY_IO_2 = 70290651; literal NSA$_PHY_IO_3 = 70290659; literal NSA$_PHY_IO_4 = 70290667; literal NSA$_PHY_IO_5 = 70290675; literal NSA$_PHY_IO_6 = 70290683; literal NSA$_PHY_IO_7 = 70290691; literal NSA$_PHY_IO_8 = 70290699; literal NSA$_PHY_IO_9 = 70290707; literal NSA$_PHY_IO_10 = 70290715; literal NSA$_PHY_IO_11 = 70290723; literal NSA$_PHY_IO_12 = 70290731; literal NSA$_PHY_IO_13 = 70290739; ! UNDOCUMENTED literal NSA$_PHY_IO_14 = 70290747; literal NSA$_PHY_IO_15 = 70290755; literal NSA$_BUGCHK_1 = 70290883; literal NSA$_BUGCHK_2 = 70290891; literal NSA$_PRMGBL_1 = 70290963; literal NSA$_PRMGBL_2 = 70290971; literal NSA$_SYSGBL_1 = 70291043; literal NSA$_SYSGBL_2 = 70291051; literal NSA$_PFNMAP_1 = 70291123; literal NSA$_PFNMAP_2 = 70291131; literal NSA$_PFNMAP_3 = 70291139; literal NSA$_SHMEM_1 = 70291203; literal NSA$_SHMEM_2 = 70291211; literal NSA$_SHMEM_3 = 70291219; literal NSA$_SHMEM_4 = 70291227; literal NSA$_SHMEM_5 = 70291235; literal NSA$_SYSPRV_1 = 70291283; literal NSA$_SYSPRV_2 = 70291291; literal NSA$_SYSPRV_3 = 70291299; literal NSA$_SYSPRV_4 = 70291307; literal NSA$_SYSPRV_5 = 70291315; literal NSA$_SYSPRV_6 = 70291323; ! UNDOCUMENTED literal NSA$_SYSPRV_7 = 70291331; literal NSA$_SYSPRV_8 = 70291339; literal NSA$_SYSPRV_9 = 70291347; literal NSA$_SYSPRV_10 = 70291355; literal NSA$_SYSPRV_11 = 70291363; literal NSA$_SYSPRV_12 = 70291371; literal NSA$_SYSPRV_13 = 70291379; literal NSA$_SYSPRV_14 = 70291387; ! RESERVED literal NSA$_SYSPRV_15 = 70291395; literal NSA$_SYSPRV_16 = 70291403; literal NSA$_SYSPRV_17 = 70291411; literal NSA$_SYSPRV_18 = 70291419; literal NSA$_SYSPRV_19 = 70291427; literal NSA$_SYSPRV_20 = 70291435; literal NSA$_SYSPRV_21 = 70291443; literal NSA$_SYSPRV_22 = 70291451; literal NSA$_SYSPRV_23 = 70291459; literal NSA$_SYSPRV_24 = 70291467; literal NSA$_SYSPRV_25 = 70291475; literal NSA$_SYSPRV_26 = 70291483; literal NSA$_SYSPRV_27 = 70291491; literal NSA$_SYSPRV_28 = 70291499; literal NSA$_SYSPRV_29 = 70291507; literal NSA$_SYSPRV_30 = 70291515; literal NSA$_SYSPRV_31 = 70291523; literal NSA$_SYSPRV_32 = 70291531; literal NSA$_SYSPRV_33 = 70291539; literal NSA$_SYSPRV_34 = 70291547; literal NSA$_SYSPRV_35 = 70291555; literal NSA$_SYSPRV_36 = 70291563; literal NSA$_SYSPRV_37 = 70291571; literal NSA$_SYSPRV_38 = 70291579; literal NSA$_SYSPRV_39 = 70291587; literal NSA$_SYSPRV_40 = 70291595; ! THE ABOVE LIST IS FULL. USE THE OVERFLOW REGION AT THE END OF THE MODULE. literal NSA$_BYPASS_1 = 70291603; literal NSA$_BYPASS_2 = 70291611; literal NSA$_BYPASS_3 = 70291619; literal NSA$_BYPASS_4 = 70291627; literal NSA$_BYPASS_5 = 70291635; literal NSA$_BYPASS_6 = 70291643; literal NSA$_BYPASS_7 = 70291651; literal NSA$_BYPASS_8 = 70291659; literal NSA$_BYPASS_9 = 70291667; literal NSA$_BYPASS_10 = 70291675; literal NSA$_BYPASS_11 = 70291683; literal NSA$_BYPASS_12 = 70291691; literal NSA$_BYPASS_13 = 70291699; literal NSA$_BYPASS_14 = 70291707; literal NSA$_BYPASS_15 = 70291715; ! RESERVED literal NSA$_BYPASS_16 = 70291723; ! RESERVED literal NSA$_BYPASS_17 = 70291731; literal NSA$_BYPASS_18 = 70291739; literal NSA$_BYPASS_19 = 70291747; literal NSA$_BYPASS_20 = 70291755; literal NSA$_BYPASS_21 = 70291763; literal NSA$_BYPASS_22 = 70291771; literal NSA$_BYPASS_23 = 70291779; literal NSA$_BYPASS_24 = 70291787; literal NSA$_BYPASS_25 = 70291795; literal NSA$_BYPASS_26 = 70291803; literal NSA$_BYPASS_27 = 70291811; literal NSA$_BYPASS_28 = 70291819; literal NSA$_BYPASS_29 = 70291827; literal NSA$_BYPASS_30 = 70291835; literal NSA$_SYSLCK_1 = 70291923; literal NSA$_SYSLCK_2 = 70291931; literal NSA$_SHARE_1 = 70292003; literal NSA$_GRPPRV_1 = 70292083; literal NSA$_GRPPRV_2 = 70292091; literal NSA$_GRPPRV_3 = 70292099; literal NSA$_GRPPRV_4 = 70292107; ! RESERVED literal NSA$_GRPPRV_5 = 70292115; literal NSA$_GRPPRV_6 = 70292123; literal NSA$_GRPPRV_7 = 70292131; literal NSA$_GRPPRV_8 = 70292139; literal NSA$_GRPPRV_9 = 70292147; literal NSA$_GRPPRV_10 = 70292155; literal NSA$_GRPPRV_11 = 70292163; literal NSA$_GRPPRV_12 = 70292171; literal NSA$_GRPPRV_13 = 70292179; literal NSA$_GRPPRV_14 = 70292187; literal NSA$_GRPPRV_15 = 70292195; literal NSA$_GRPPRV_16 = 70292203; literal NSA$_GRPPRV_17 = 70292211; literal NSA$_GRPPRV_18 = 70292219; literal NSA$_READALL_1 = 70292243; literal NSA$_READALL_2 = 70292251; literal NSA$_READALL_3 = 70292259; ! RESERVED literal NSA$_SECURITY_1 = 70292483; literal NSA$_SECURITY_2 = 70292491; literal NSA$_SECURITY_3 = 70292499; literal NSA$_SECURITY_4 = 70292507; literal NSA$_SECURITY_5 = 70292515; literal NSA$_SECURITY_6 = 70292523; literal NSA$_SECURITY_7 = 70292531; literal NSA$_SECURITY_8 = 70292539; literal NSA$_SECURITY_9 = 70292547; literal NSA$_SECURITY_10 = 70292555; literal NSA$_SECURITY_11 = 70292563; literal NSA$_SECURITY_12 = 70292571; literal NSA$_SECURITY_13 = 70292579; literal NSA$_SECURITY_14 = 70292587; literal NSA$_SECURITY_15 = 70292595; literal NSA$_SECURITY_16 = 70292603; literal NSA$_SECURITY_17 = 70292611; literal NSA$_SECURITY_18 = 70292619; literal NSA$_SECURITY_19 = 70292627; literal NSA$_SECURITY_20 = 70292635; literal NSA$_SECURITY_21 = 70292643; literal NSA$_SECURITY_22 = 70292651; literal NSA$_SECURITY_23 = 70292659; literal NSA$_SECURITY_24 = 70292667; literal NSA$_SECURITY_25 = 70292675; ! ! START OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_SECURITY_26 = 70292683; literal NSA$_SECURITY_27 = 70292691; literal NSA$_SECURITY_28 = 70292699; literal NSA$_SECURITY_29 = 70292707; literal NSA$_SECURITY_30 = 70292715; ! THE ABOVE LIST IS FULL. CONTINUES AT BASE 3180 ! ! END OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_UPGRADE_1 = 70292723; literal NSA$_UPGRADE_2 = 70292731; ! RESERVED literal NSA$_DOWNGRADE_1 = 70292803; literal NSA$_DOWNGRADE_2 = 70292811; ! RESERVED literal NSA$_SETPRV_1 = 70292883; ! UNDOCUMENTED literal NSA$_SETPRV_2 = 70292891; literal NSA$_SETPRV_3 = 70292899; literal NSA$_SETPRV_4 = 70292907; literal NSA$_SETPRV_5 = 70292915; literal NSA$_SETPRV_6 = 70292923; literal NSA$_AUDIT_1 = 70292963; literal NSA$_AUDIT_2 = 70292971; literal NSA$_AUDIT_3 = 70292979; ! ! THE RANGE FROM 1900 TO 2000 IS USED FOR IMPLIED SYSPRV FROM UIC GROUP BEING ! LESS THAN OR EQUAL TO MAXSYSGRP. ! literal NSA$_IMP_SYSPRV_1 = 70302563; literal NSA$_IMP_SYSPRV_2 = 70302571; literal NSA$_IMP_SYSPRV_3 = 70302579; literal NSA$_IMP_SYSPRV_4 = 70302587; literal NSA$_IMP_SYSPRV_5 = 70302595; literal NSA$_IMP_SYSPRV_6 = 70302603; literal NSA$_IMP_SYSPRV_7 = 70302611; literal NSA$_IMP_SYSPRV_8 = 70302619; literal NSA$_IMP_SYSPRV_9 = 70302627; literal NSA$_IMP_SYSPRV_10 = 70302635; literal NSA$_IMP_SYSPRV_11 = 70302643; literal NSA$_IMP_SYSPRV_12 = 70302651; literal NSA$_IMP_SYSPRV_13 = 70302659; literal NSA$_IMP_SYSPRV_14 = 70302667; literal NSA$_IMP_SYSPRV_15 = 70302675; literal NSA$_IMP_SYSPRV_16 = 70302683; literal NSA$_IMP_SYSPRV_17 = 70302691; ! ! THE RANGE FROM 2000-2047 IS RESERVED FOR EVENTS WHICH ARE GOVERNED BY ! MULTIPLE PRIVILEGES. THIS KIND OF THING IS SERIOUSLY FROWNED UPON AND SO ! WE'LL ONLY RESERVE A MEASLY 48 MESSAGES CODES FOR THEM. ! literal NSA$_COMB_1 = 70303363; literal NSA$_COMB_2 = 70303371; literal NSA$_COMB_3 = 70303379; literal NSA$_COMB_4 = 70303387; ! UNDOCUMENTED literal NSA$_COMB_5 = 70303395; literal NSA$_COMB_6 = 70303403; literal NSA$_COMB_7 = 70303411; literal NSA$_COMB_8 = 70303419; literal NSA$_COMB_9 = 70303427; literal NSA$_COMB_10 = 70303435; literal NSA$_COMB_11 = 70303443; literal NSA$_COMB_12 = 70303451; literal NSA$_COMB_13 = 70303459; literal NSA$_COMB_14 = 70303467; literal NSA$_COMB_15 = 70303475; literal NSA$_COMB_16 = 70303483; literal NSA$_COMB_17 = 70303491; literal NSA$_COMB_18 = 70303499; ! ! START OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_COMB_19 = 70303507; ! ! END OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_COMB_20 = 70303515; ! ! THE RANGE OF MESSAGE CODES FROM 2048-4095 ARE RESERVED TO PORTIONS OF THE TCB ! WHICH NEED TO ASSOCIATE ONE LINE OF TEXT WITH THEIR AUDIT MESSAGE. ! ! ! FILE AND VOLUME AUDIT MESSAGES (F11BXQP). ! literal NSA$_XQP_1 = 70303747; literal NSA$_XQP_2 = 70303755; literal NSA$_XQP_3 = 70303763; literal NSA$_XQP_4 = 70303771; literal NSA$_XQP_5 = 70303779; literal NSA$_XQP_6 = 70303787; literal NSA$_XQP_7 = 70303795; literal NSA$_XQP_8 = 70303803; literal NSA$_XQP_9 = 70303811; literal NSA$_XQP_10 = 70303819; literal NSA$_XQP_11 = 70303827; literal NSA$_XQP_12 = 70303835; literal NSA$_XQP_13 = 70303843; literal NSA$_XQP_14 = 70303851; literal NSA$_XQP_15 = 70303859; literal NSA$_XQP_16 = 70303867; literal NSA$_XQP_17 = 70303875; literal NSA$_XQP_18 = 70303883; literal NSA$_XQP_19 = 70303891; literal NSA$_XQP_20 = 70303899; literal NSA$_XQP_21 = 70303907; literal NSA$_XQP_22 = 70303915; literal NSA$_XQP_23 = 70303923; ! ! MESSAGE TO DIFFERENTIATE VARIOUS TCB OPERATIONS. ! literal NSA$_ALLOCATE = 70311939; literal NSA$_ASSIGN = 70311947; literal NSA$_SETSECURITY = 70311955; literal NSA$_SHOSECURITY = 70311963; literal NSA$_GSDACCESS = 70311971; literal NSA$_KFEACCESS = 70311979; literal NSA$_MACBYPASSED = 70311987; ! ! PRIVILEGE AUDIT OVERFLOW. ! literal NSA$_SYSPRV_41 = 70312163; literal NSA$_SYSPRV_42 = 70312171; literal NSA$_SYSPRV_43 = 70312179; literal NSA$_SYSPRV_44 = 70312187; literal NSA$_SYSPRV_45 = 70312195; literal NSA$_SYSPRV_46 = 70312203; literal NSA$_SYSPRV_47 = 70312211; literal NSA$_SYSPRV_48 = 70312219; literal NSA$_SYSPRV_49 = 70312227; literal NSA$_SYSPRV_50 = 70312235; literal NSA$_SYSPRV_51 = 70312243; literal NSA$_SYSPRV_52 = 70312251; ! ! IMPERSONATION AUDIT OVERFLOW ! literal NSA$_IMPERSONATE_11 = 70312483; literal NSA$_IMPERSONATE_12 = 70312491; ! ! SECURITY AUDIT OVERFLOW ! ! ! START OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! literal NSA$_SECURITY_31 = 70312803; literal NSA$_SECURITY_32 = 70312811; literal NSA$_SECURITY_33 = 70312819; literal NSA$_SECURITY_34 = 70312827; literal NSA$_SECURITY_35 = 70312835; literal NSA$_SECURITY_36 = 70312843; literal NSA$_SECURITY_37 = 70312851; literal NSA$_SECURITY_38 = 70312859; literal NSA$_SECURITY_39 = 70312867; ! ! END OF A SET OF AUDITS ISSUED ONLY ON ALPHA ! ! ! ---- < End of module NSAMSG.R32 - 12-AUG-2010 13:57:03.91 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:53 by OpenVMS SDL EV3-3 ! Source: 16-APR-1998 16:18:50 $1$DGA7361:[STARLET.SRC]OBJFMT.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $OBJRECDEF *** literal OBJ$M_PSC_PIC = %X'1'; literal OBJ$M_PSC_LIB = %X'2'; literal OBJ$M_PSC_OVL = %X'4'; literal OBJ$M_PSC_REL = %X'8'; literal OBJ$M_PSC_GBL = %X'10'; literal OBJ$M_PSC_SHR = %X'20'; literal OBJ$M_PSC_EXE = %X'40'; literal OBJ$M_PSC_RD = %X'80'; literal OBJ$M_PSC_WRT = %X'100'; literal OBJ$M_SYM_WEAK = %X'1'; literal OBJ$M_SYM_DEF = %X'2'; literal OBJ$M_SYM_UNI = %X'4'; literal OBJ$M_SYM_REL = %X'8'; literal OBJ$M_SYMV_WEAK = %X'1'; literal OBJ$M_SYMV_DEF = %X'2'; literal OBJ$M_SYMV_UNI = %X'4'; literal OBJ$M_SYMV_REL = %X'8'; literal OBJ$M_SYMM_WEAK = %X'1'; literal OBJ$M_SYMM_DEF = %X'2'; literal OBJ$M_SYMM_UNI = %X'4'; literal OBJ$M_SYMM_REL = %X'8'; literal OBJ$S_SDADEFS = 16; macro OBJ$B_TYPE = 0,0,8,0 %; ! Type of record macro OBJ$B_GSD_TYPE = 0,0,8,0 %; ! Type of GSD record macro OBJ$B_PSC_ALI = 1,0,8,0 %; ! PSECT alignment (2**n) macro OBJ$W_PSC_FLAG = 2,0,16,0 %; ! PSECT flags: macro OBJ$V_PSC_PIC = 2,0,1,0 %; ! Position independent macro OBJ$V_PSC_LIB = 2,1,1,0 %; ! Defined from sharable image macro OBJ$V_PSC_OVL = 2,2,1,0 %; ! Overlaid psect macro OBJ$V_PSC_REL = 2,3,1,0 %; ! Requires relocation macro OBJ$V_PSC_GBL = 2,4,1,0 %; ! PSECT is global macro OBJ$V_PSC_SHR = 2,5,1,0 %; ! Potentially sharable macro OBJ$V_PSC_EXE = 2,6,1,0 %; ! Executable macro OBJ$V_PSC_RD = 2,7,1,0 %; ! Can be read macro OBJ$V_PSC_WRT = 2,8,1,0 %; ! Can be written macro OBJ$L_PSC_LEN = 4,0,32,0 %; ! Length of PSECT macro OBJ$T_PSC_NAME = 8,0,8,0 %; ! PSECT name (counted string) macro OBJ$B_SYM_DTYPE = 1,0,8,0 %; ! Data type (see Arch. Handbook, Ap. C) macro OBJ$W_SYM_FLAGS = 2,0,16,0 %; ! Symbol flags: macro OBJ$V_SYM_WEAK = 2,0,1,0 %; ! Weak resolution (0 = strong) macro OBJ$V_SYM_DEF = 2,1,1,0 %; ! Definition (0 = reference) macro OBJ$V_SYM_UNI = 2,2,1,0 %; ! Universal definition (0 = local) macro OBJ$V_SYM_REL = 2,3,1,0 %; ! Relative symbol (0 = absolute) macro OBJ$B_SYM_PSIND = 4,0,8,0 %; ! PSECT index (only if def) macro OBJ$L_SYM_VALUE = 5,0,32,0 %; ! Value of symbol (only if def) macro OBJ$T_SYM_NAME = 9,0,8,0 %; ! Symbol name (counted string) macro OBJ$B_EPM_DTYPE = 1,0,8,0 %; ! Data type (see Arch. Handbook, Ap. C) macro OBJ$W_EPM_FLAGS = 2,0,16,0 %; ! Flags (same as SYM_FLAGS) macro OBJ$B_EPM_PSIND = 4,0,8,0 %; ! PSECT index (only if def) macro OBJ$L_EPM_VALUE = 5,0,32,0 %; ! Value of symbol (only if def) macro OBJ$W_EPM_MASK = 9,0,16,0 %; ! Entry mask macro OBJ$T_EPM_NAME = 11,0,8,0 %; ! Symbol name (counted string) macro OBJ$B_SYMV_DTYPE = 1,0,8,0 %; ! Data type (see Arch. Handbook, Ap. C) macro OBJ$W_SYMV_FLAGS = 2,0,16,0 %; ! Symbol flags: macro OBJ$V_SYMV_WEAK = 2,0,1,0 %; ! Weak resolution (0 = strong) macro OBJ$V_SYMV_DEF = 2,1,1,0 %; ! Definition (0 = reference) macro OBJ$V_SYMV_UNI = 2,2,1,0 %; ! Universal definition (0 = local) macro OBJ$V_SYMV_REL = 2,3,1,0 %; ! Relative symbol (0 = absolute) macro OBJ$B_SYMV_PSIND = 4,0,8,0 %; ! PSECT index (only if def) macro OBJ$L_SYMV_VALUE = 5,0,32,0 %; ! Value of symbol (only if def) macro OBJ$L_SYMV_VECTOR = 9,0,32,0 %; ! Vectored value of symbol (only if def) macro OBJ$T_SYMV_NAME = 13,0,8,0 %; ! Symbol name (counted string) macro OBJ$B_EPMV_DTYPE = 1,0,8,0 %; ! Data type (see Arch. Handbook, Ap. C) macro OBJ$W_EPMV_FLAGS = 2,0,16,0 %; ! Flags (same as SYM_FLAGS) macro OBJ$B_EPMV_PSIND = 4,0,8,0 %; ! PSECT index (only if def) macro OBJ$L_EPMV_VALUE = 5,0,32,0 %; ! Value of symbol (only if def) macro OBJ$L_EPMV_VECTOR = 9,0,32,0 %; ! Vectored value of symbol (only if def) macro OBJ$W_EPMV_MASK = 13,0,16,0 %; ! Entry mask macro OBJ$T_EPMV_NAME = 15,0,8,0 %; ! Symbol name (counted string) macro OBJ$B_SYMM_DTYPE = 1,0,8,0 %; ! Data type (see Arch. Handbook, Ap. C) macro OBJ$W_SYMM_FLAGS = 2,0,16,0 %; ! Symbol flags: macro OBJ$V_SYMM_WEAK = 2,0,1,0 %; ! Weak resolution (0 = strong) macro OBJ$V_SYMM_DEF = 2,1,1,0 %; ! Definition (0 = reference) macro OBJ$V_SYMM_UNI = 2,2,1,0 %; ! Universal definition (0 = local) macro OBJ$V_SYMM_REL = 2,3,1,0 %; ! Relative symbol (0 = absolute) macro OBJ$B_SYMM_PSIND = 4,0,8,0 %; ! PSECT index (only if def) macro OBJ$L_SYMM_VALUE = 5,0,32,0 %; ! Value of symbol (only if def) macro OBJ$L_SYMM_VERSION_MASK = 9,0,32,0 %; ! Version mask of symbol (only if def) macro OBJ$T_SYMM_NAME = 13,0,8,0 %; ! Symbol name (counted string) macro OBJ$B_EPMM_DTYPE = 1,0,8,0 %; ! Data type (see Arch. Handbook, Ap. C) macro OBJ$W_EPMM_FLAGS = 2,0,16,0 %; ! Flags (same as SYM_FLAGS) macro OBJ$B_EPMM_PSIND = 4,0,8,0 %; ! PSECT index (only if def) macro OBJ$L_EPMM_VALUE = 5,0,32,0 %; ! Value of symbol (only if def) macro OBJ$L_EPMM_VERSION_MASK = 9,0,32,0 %; ! Version mask of symbol (only if def) macro OBJ$W_EPMM_MASK = 13,0,16,0 %; ! Entry mask macro OBJ$T_EPMM_NAME = 15,0,8,0 %; ! Symbol name (counted string) macro OBJ$B_EOM_SEV = 1,0,8,0 %; ! Error severity for module macro OBJ$B_EOM_PSIND = 2,0,8,0 %; ! PSECT index of transfer address macro OBJ$L_EOM_TRANS = 3,0,32,0 %; ! Transfer address literal OBJ$C_HDR = 0; ! Module header record literal OBJ$C_HDR_MHD = 0; ! Main header record literal OBJ$C_HDR_LNM = 1; ! Language processor record literal OBJ$C_HDR_SRC = 2; ! Source files description literal OBJ$C_HDR_TTL = 3; ! Title text literal OBJ$C_HDR_CPR = 4; ! Copyright text literal OBJ$C_HDR_MTC = 5; ! Maintenance text literal OBJ$C_HDR_GTX = 6; ! General text literal OBJ$C_GSD = 1; ! Global symbol definition record literal OBJ$C_GSD_PSC = 0; ! P-sect definition literal OBJ$C_GSD_SYM = 1; ! Symbol (simple) definition literal OBJ$C_GSD_EPM = 2; ! Entry point definition literal OBJ$C_GSD_PRO = 3; ! Procedure definition literal OBJ$C_GSD_SYMW = 4; ! Symbol definition with word psect literal OBJ$C_GSD_EPMW = 5; ! Entry point definition with word psect literal OBJ$C_GSD_PROW = 6; ! Procedure definition with word psect literal OBJ$C_GSD_IDC = 7; ! Random entity check literal OBJ$C_GSD_ENV = 8; ! Environment definition literal OBJ$C_GSD_LSY = 9; ! Local symbol definition/reference literal OBJ$C_GSD_LEPM = 10; ! Local symbol entry point def. literal OBJ$C_GSD_LPRO = 11; ! Local symbol procedure def. literal OBJ$C_GSD_SPSC = 12; ! Shareable image psect definition literal OBJ$C_GSD_SYMV = 13; ! Global symbol definition (vectored) literal OBJ$C_GSD_EPMV = 14; ! Entry point definition (vectored) literal OBJ$C_GSD_PROV = 15; ! Procedure definition (vectored) literal OBJ$C_GSD_SYMM = 16; ! Global symbol definition (special double valued) literal OBJ$C_GSD_EPMM = 17; ! Entry point definition (special double valued) literal OBJ$C_GSD_PROM = 18; ! Procedure definition (special double valued) literal OBJ$C_TIR = 2; ! Text information record literal OBJ$C_EOM = 3; ! End of module record literal OBJ$C_DBG = 4; ! Debugger information record literal OBJ$C_TBT = 5; ! Traceback information record literal OBJ$C_LNK = 6; ! Linker options record literal OBJ$C_EOMW = 7; ! End of module record with word psect literal OBJ$C_MAXRECTYP = 7; ! Last assigned record type literal OBJ$K_SUBTYP = 1; literal OBJ$C_SUBTYP = 1; literal OBJ$C_MAXRECSIZ = 2048; ! Maximum legal record size literal OBJ$C_STRLVL = 0; ! Structure level literal OBJ$C_SYMSIZ = 31; ! Maximum symbol length literal OBJ$C_STOREPLIM = -1; ! Maximum repeat count on store commands literal OBJ$C_PSCALILIM = 9; ! Maximum p-sect alignment literal OBJ$S_OBJRECDEF = 5; macro OBJ$B_RECTYP = 0,0,8,0 %; ! First byte always record type ! Permissable record types macro OBJ$B_SUBTYP = 1,0,8,0 %; ! Record sub-type byte macro OBJ$B_MHD_STRLV = 2,0,8,0 %; ! Structure level macro OBJ$W_MHD_RECSZ = 3,0,16,0 %; ! Maximum record size macro OBJ$T_MHD_NAME = 5,0,0,0 %; ! Module name field ! Misc. constants !*** MODULE $MHDEF *** ! ! Module header record (MHD) ! literal MHD$C_MHD = 0; ! Main header record literal MHD$C_LNM = 1; ! Language name and version literal MHD$C_SRC = 2; ! Source file specification literal MHD$C_TTL = 3; ! Title text of module literal MHD$C_CPR = 4; ! Copyright notice literal MHD$C_MTC = 5; ! Maintenence status literal MHD$C_GTX = 6; ! General text literal MHD$C_MAXHDRTYP = 6; ! Maximum allowable type literal MHD$S_MHDEF = 37; macro MHD$B_RECTYP = 0,0,8,0 %; ! Record type (OBJ$C_MHD) macro MHD$B_HDRTYP = 1,0,8,0 %; ! Type field for MHD ! Types of header records macro MHD$B_STRLVL = 2,0,8,0 %; ! Structure level macro MHD$W_RECSIZ = 3,0,16,0 %; ! Maximum record size macro MHD$B_NAMLNG = 5,0,8,0 %; ! Module name length macro MHD$T_NAME = 6,0,0,0 %; literal MHD$S_NAME = 31; ! Module name !*** MODULE $EOMDEF *** ! ! End of module record (EOM) ! literal EOM$C_SUCCESS = 0; ! Successful (no errors) literal EOM$C_WARNING = 1; ! Warnings issued literal EOM$C_ERROR = 2; ! Errors detected literal EOM$C_ABORT = 3; ! Abort the link literal EOM$K_EOMMIN = 2; ! Min length of EOM record literal EOM$C_EOMMIN = 2; ! Min length of EOM record literal EOM$K_EOMMX1 = 7; ! Length of EOM record w/o transfer flags literal EOM$C_EOMMX1 = 7; ! Length of EOM record w/o transfer flags literal EOM$K_EOMMAX = 8; ! Maximum length of EOM record literal EOM$C_EOMMAX = 8; ! Maximum length of EOM record literal EOM$M_WKTFR = %X'1'; literal EOM$S_EOMDEF = 8; macro EOM$B_RECTYP = 0,0,8,0 %; ! Record type (OBJ$C_EOM) macro EOM$B_COMCOD = 1,0,8,0 %; ! Compiler completion code ! Values macro EOM$B_PSINDX = 2,0,8,0 %; ! P-sect of transfer address macro EOM$L_TFRADR = 3,0,32,0 %; ! Transfer address macro EOM$B_TFRFLG = 7,0,8,0 %; ! Transfer address flags macro EOM$V_WKTFR = 7,0,1,0 %; ! Transfer address is weak !*** MODULE $EOMWDEF *** ! ! End of module record with word of psect (EOMW) ! literal EOMW$K_EOMMIN = 2; ! Min length of EOM record literal EOMW$C_EOMMIN = 2; ! Min length of EOM record literal EOMW$K_EOMMX1 = 8; ! Length of EOMW record w/o transfer flags literal EOMW$C_EOMMX1 = 8; ! Length of EOMW record w/o transfer flags literal EOMW$K_EOMMAX = 9; ! Maximum length of EOMW record literal EOMW$C_EOMMAX = 9; ! Maximum length of EOMW record literal EOMW$M_WKTFR = %X'1'; literal EOMW$S_EOMWDEF = 9; macro EOMW$B_RECTYP = 0,0,8,0 %; ! Record type (OBJ$C_EOM) macro EOMW$B_COMCOD = 1,0,8,0 %; ! Compiler completion code macro EOMW$W_PSINDX = 2,0,16,0 %; ! P-sect of transfer address macro EOMW$L_TFRADR = 4,0,32,0 %; ! Transfer address macro EOMW$B_TFRFLG = 8,0,8,0 %; ! Transfer address flags macro EOMW$V_WKTFR = 8,0,1,0 %; ! Transfer address is weak !*** MODULE $LNKDEF *** ! ! Linker Options Record (LNK) ! literal LNK$C_OLB = 0; ! object library spec literal LNK$C_SHR = 1; ! shareable image library spec literal LNK$C_OLI = 2; ! object library with inclusion list literal LNK$C_OBJ = 3; ! object file or symbol table file literal LNK$C_SHA = 4; ! individually specified shr img literal LNK$C_MAXRECTYP = 4; ! highest current record type literal LNK$M_SELSER = %X'1'; literal LNK$M_LIBSRCH = %X'2'; literal LNK$S_LNKDEF = 6; macro LNK$B_RECTYP = 0,0,8,0 %; ! record type LNK macro LNK$B_LNKTYP = 1,0,8,0 %; ! sub record type macro LNK$W_FLAGS = 2,0,16,0 %; macro LNK$V_SELSER = 2,0,1,0 %; ! selectively searched (LNK$C_OBJ) macro LNK$V_LIBSRCH = 2,1,1,0 %; macro LNK$W_NAMLNG = 4,0,16,0 %; ! length of filespec name macro LNK$T_NAME = 6,0,0,0 %; ! actual name !*** MODULE $GSDEF *** ! ! Global symbol definition record (GSD) ! literal GSD$K_ENTRIES = 1; ! Offset to first entry in record literal GSD$C_ENTRIES = 1; ! Offset to first entry in record literal GSD$C_PSC = 0; ! Psect definition literal GSD$C_SYM = 1; ! Symbol specification literal GSD$C_EPM = 2; ! Entry point and mask definition literal GSD$C_PRO = 3; ! Procedure with formal arguments literal GSD$C_SYMW = 4; ! Symbol specification with word psect literal GSD$C_EPMW = 5; ! Entry point mask with word psect literal GSD$C_PROW = 6; ! Procedure with word psect literal GSD$C_IDC = 7; ! Random entity check literal GSD$C_ENV = 8; ! Define environment literal GSD$C_LSY = 9; ! Local symbol literal GSD$C_LEPM = 10; ! Local symbol entry point definition literal GSD$C_LPRO = 11; ! Local symbol procedure definition literal GSD$C_SPSC = 12; ! Shareable image psect definition ! literal GSD$C_VECTOR_TYPE_INCREMENT = 12; literal GSD$C_SYMV = 13; ! Vectored (dual-valued) versions of SYM, literal GSD$C_EPMV = 14; ! EPM, literal GSD$C_PROV = 15; ! PRO ! literal GSD$C_MASK_TYPE_INCREMENT = 15; literal GSD$C_SYMM = 16; ! Masked versions of SYM, literal GSD$C_EPMM = 17; ! EPM, literal GSD$C_PROM = 18; ! PRO literal GSD$C_MAXRECTYP = 18; ! Maximum entry type defined literal GSD$S_GSDEF = 2; macro GSD$B_RECTYP = 0,0,8,0 %; ! Record type (OBJ$C_GSD) macro GSD$B_GSDTYP = 1,0,8,0 %; ! Type of entry (first byte of entry) ! Vectored symbol types are (regular + 12). For example, SYMV = SYM + 12. ! ! Mask symbol types are (regular + 15). For example, SYMM = SYM + 15. ! !*** MODULE $GPSDEF *** ! ! GSD entry - P-section definition ! literal GPS$M_PIC = %X'1'; literal GPS$M_LIB = %X'2'; literal GPS$M_OVR = %X'4'; literal GPS$M_REL = %X'8'; literal GPS$M_GBL = %X'10'; literal GPS$M_SHR = %X'20'; literal GPS$M_EXE = %X'40'; literal GPS$M_RD = %X'80'; literal GPS$M_WRT = %X'100'; literal GPS$M_VEC = %X'200'; literal GPS$M_NOMOD = %X'400'; literal GPS$M_COM = %X'800'; literal GPS$K_NAME = 9; literal GPS$C_NAME = 9; literal GPS$S_GPSDEF = 40; macro GPS$B_GSDTYP = 0,0,8,0 %; ! Typ field macro GPS$T_START = 0,0,0,0 %; macro GPS$B_ALIGN = 1,0,8,0 %; ! P-sect alignment macro GPS$W_FLAGS = 2,0,16,0 %; ! P-sect flags macro GPS$V_PIC = 2,0,1,0 %; ! Position independent macro GPS$V_LIB = 2,1,1,0 %; ! From a shareable image macro GPS$V_OVR = 2,2,1,0 %; ! Overlaid memory allocation macro GPS$V_REL = 2,3,1,0 %; ! Relocatable macro GPS$V_GBL = 2,4,1,0 %; ! Global scope macro GPS$V_SHR = 2,5,1,0 %; ! Shareable macro GPS$V_EXE = 2,6,1,0 %; ! Executable macro GPS$V_RD = 2,7,1,0 %; ! Readable macro GPS$V_WRT = 2,8,1,0 %; ! Writeable macro GPS$V_VEC = 2,9,1,0 %; ! Vector psect macro GPS$V_NOMOD = 2,10,1,0 %; ! Not stored into macro GPS$V_COM = 2,11,1,0 %; ! Associated with COMM sym macro GPS$L_ALLOC = 4,0,32,0 %; ! Length of this contribution macro GPS$B_NAMLNG = 8,0,8,0 %; ! Length of p-sect name macro GPS$T_NAME = 9,0,0,0 %; literal GPS$S_NAME = 31; ! Name field !*** MODULE $SGPSDEF *** ! ! GSD entry - P-section definition in shareable image ! literal SGPS$M_PIC = %X'1'; literal SGPS$M_LIB = %X'2'; literal SGPS$M_OVR = %X'4'; literal SGPS$M_REL = %X'8'; literal SGPS$M_GBL = %X'10'; literal SGPS$M_SHR = %X'20'; literal SGPS$M_EXE = %X'40'; literal SGPS$M_RD = %X'80'; literal SGPS$M_WRT = %X'100'; literal SGPS$M_VEC = %X'200'; literal SGPS$M_NOMOD = %X'400'; literal SGPS$M_COM = %X'800'; literal SGPS$K_NAME = 13; literal SGPS$C_NAME = 13; literal SGPS$S_SGPSDEF = 44; macro SGPS$B_GSDTYP = 0,0,8,0 %; ! Typ field macro SGPS$T_START = 0,0,0,0 %; macro SGPS$B_ALIGN = 1,0,8,0 %; ! P-sect alignment macro SGPS$W_FLAGS = 2,0,16,0 %; ! P-sect flags macro SGPS$V_PIC = 2,0,1,0 %; ! Position independent macro SGPS$V_LIB = 2,1,1,0 %; ! From a shareable image macro SGPS$V_OVR = 2,2,1,0 %; ! Overlaid memory allocation macro SGPS$V_REL = 2,3,1,0 %; ! Relocatable macro SGPS$V_GBL = 2,4,1,0 %; ! Global scope macro SGPS$V_SHR = 2,5,1,0 %; ! Shareable macro SGPS$V_EXE = 2,6,1,0 %; ! Executable macro SGPS$V_RD = 2,7,1,0 %; ! Readable macro SGPS$V_WRT = 2,8,1,0 %; ! Writeable macro SGPS$V_VEC = 2,9,1,0 %; ! Vector psect macro SGPS$V_NOMOD = 2,10,1,0 %; ! Not stored into macro SGPS$V_COM = 2,11,1,0 %; ! Associated with COMM sym macro SGPS$L_ALLOC = 4,0,32,0 %; ! Length of this psect in shr image macro SGPS$L_BASE = 8,0,32,0 %; ! Base of this psect in shr image macro SGPS$B_NAMLNG = 12,0,8,0 %; ! Length of p-sect name macro SGPS$T_NAME = 13,0,0,0 %; literal SGPS$S_NAME = 31; ! Name field !*** MODULE $GSYDEF *** ! ! GSD entry - Symbol definition ! ! common to definitions, references, and entry ! point definitions. ! literal GSY$M_WEAK = %X'1'; literal GSY$M_DEF = %X'2'; literal GSY$M_UNI = %X'4'; literal GSY$M_REL = %X'8'; literal GSY$M_COMM = %X'10'; literal GSY$S_GSYDEF = 4; macro GSY$B_GSDTYP = 0,0,8,0 %; ! Type field macro GSY$T_START = 0,0,0,0 %; macro GSY$B_DATYP = 1,0,8,0 %; ! Symbol data type macro GSY$W_FLAGS = 2,0,16,0 %; ! Symbol flags macro GSY$V_WEAK = 2,0,1,0 %; ! Weak symbol macro GSY$V_DEF = 2,1,1,0 %; ! Definition macro GSY$V_UNI = 2,2,1,0 %; ! Universal macro GSY$V_REL = 2,3,1,0 %; ! Relocatable macro GSY$V_COMM = 2,4,1,0 %; ! C common globaldef !*** MODULE $SRFDEF *** ! ! Symbol reference (SYM$M_DEF in GSY$W_FLAGS is 0) ! literal SRF$K_NAME = 5; literal SRF$C_NAME = 5; literal SRF$S_SRFDEF = 36; macro SRF$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro SRF$T_START = 0,0,0,0 %; macro SRF$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro SRF$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro SRF$B_NAMLNG = 4,0,8,0 %; ! Length of symbol name macro SRF$T_NAME = 5,0,0,0 %; literal SRF$S_NAME = 31; ! Symbol name !*** MODULE $SDFDEF *** ! ! Symbol definition ! literal SDF$K_NAME = 10; literal SDF$C_NAME = 10; literal SDF$S_SDFDEF = 41; macro SDF$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro SDF$T_START = 0,0,0,0 %; macro SDF$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro SDF$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro SDF$B_PSINDX = 4,0,8,0 %; ! Owning psect number macro SDF$L_VALUE = 5,0,32,0 %; ! Value of symbol macro SDF$B_NAMLNG = 9,0,8,0 %; ! Length of name macro SDF$T_NAME = 10,0,0,0 %; literal SDF$S_NAME = 31; ! Symbol name !*** MODULE $SDFVDEF *** ! ! Symbol definition for vectored symbols ! literal SDFV$K_NAME = 14; literal SDFV$C_NAME = 14; literal SDFV$S_SDFVDEF = 45; macro SDFV$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro SDFV$T_START = 0,0,0,0 %; macro SDFV$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro SDFV$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro SDFV$B_PSINDX = 4,0,8,0 %; ! Owning psect number macro SDFV$L_VALUE = 5,0,32,0 %; ! Value of symbol macro SDFV$L_VECTOR = 9,0,32,0 %; ! Vectored value of symbol macro SDFV$B_NAMLNG = 13,0,8,0 %; ! Length of name macro SDFV$T_NAME = 14,0,0,0 %; literal SDFV$S_NAME = 31; ! Symbol name !*** MODULE $SDFMDEF *** ! ! Symbol definition for version mask symbols ! literal SDFM$K_NAME = 14; literal SDFM$C_NAME = 14; literal SDFM$S_SDFMDEF = 45; macro SDFM$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro SDFM$T_START = 0,0,0,0 %; macro SDFM$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro SDFM$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro SDFM$B_PSINDX = 4,0,8,0 %; ! Owning psect number macro SDFM$L_VALUE = 5,0,32,0 %; ! Value of symbol macro SDFM$L_VERSION_MASK = 9,0,32,0 %; ! Mask for symbol macro SDFM$B_NAMLNG = 13,0,8,0 %; ! Length of name macro SDFM$T_NAME = 14,0,0,0 %; literal SDFM$S_NAME = 31; ! Symbol name !*** MODULE $EPMDEF *** ! ! GSD entry - Entry point definition, normal symbols ! literal EPM$K_NAME = 12; literal EPM$C_NAME = 12; literal EPM$S_EPMDEF = 43; macro EPM$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro EPM$T_START = 0,0,0,0 %; macro EPM$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro EPM$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro EPM$B_PSINDX = 4,0,8,0 %; ! Maps over SDF$B_PSINDX macro EPM$L_ADDRS = 5,0,32,0 %; ! Entry point address, maps over SDF$L_VALUE macro EPM$W_MASK = 9,0,16,0 %; ! Entry point mask macro EPM$B_NAMLNG = 11,0,8,0 %; ! Length of name macro EPM$T_NAME = 12,0,0,0 %; literal EPM$S_NAME = 31; ! Symbol name !*** MODULE $EPMVDEF *** ! ! GSD entry - Entry point definition, vectored symbols ! literal EPMV$K_NAME = 16; literal EPMV$C_NAME = 16; literal EPMV$S_EPMVDEF = 47; macro EPMV$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro EPMV$T_START = 0,0,0,0 %; macro EPMV$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro EPMV$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro EPMV$B_PSINDX = 4,0,8,0 %; ! Maps over SDF$B_PSINDX macro EPMV$L_ADDRS = 5,0,32,0 %; ! Entry point address, maps over SDF$L_VALUE macro EPMV$L_VECTOR = 9,0,32,0 %; ! Vectored entry point address macro EPMV$W_MASK = 13,0,16,0 %; ! Entry point mask macro EPMV$B_NAMLNG = 15,0,8,0 %; ! Length of name macro EPMV$T_NAME = 16,0,0,0 %; literal EPMV$S_NAME = 31; ! Symbol name !*** MODULE $EPMMDEF *** ! ! GSD entry - Entry point definition, version mask symbols ! literal EPMM$K_NAME = 16; literal EPMM$C_NAME = 16; literal EPMM$S_EPMMDEF = 47; macro EPMM$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro EPMM$T_START = 0,0,0,0 %; macro EPMM$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro EPMM$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro EPMM$B_PSINDX = 4,0,8,0 %; ! Maps over SDF$B_PSINDX macro EPMM$L_ADDRS = 5,0,32,0 %; ! Entry point address, maps over SDF$L_VALUE macro EPMM$L_VERSION_MASK = 9,0,32,0 %; ! Mask value for symbol macro EPMM$W_MASK = 13,0,16,0 %; ! Entry point mask macro EPMM$B_NAMLNG = 15,0,8,0 %; ! Length of name macro EPMM$T_NAME = 16,0,0,0 %; literal EPMM$S_NAME = 31; ! Symbol name !*** MODULE $PRODEF *** ! ! GSD entry - Procedure definition, normal symbols ! literal PRO$K_NAME = 12; literal PRO$C_NAME = 12; literal PRO$S_PRODEF = 43; macro PRO$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro PRO$T_START = 0,0,0,0 %; macro PRO$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro PRO$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro PRO$B_PSINDX = 4,0,8,0 %; ! Maps over SDF$B_PSINDX macro PRO$L_ADDRS = 5,0,32,0 %; ! Entry point address, maps over SDF$L_VALUE macro PRO$W_MASK = 9,0,16,0 %; ! Entry point mask macro PRO$B_NAMLNG = 11,0,8,0 %; ! Length of name macro PRO$T_NAME = 12,0,0,0 %; literal PRO$S_NAME = 31; ! Symbol name !*** MODULE $PROVDEF *** ! ! GSD entry - Procedure definition, vectored symbols ! literal PROV$K_NAME = 16; literal PROV$C_NAME = 16; literal PROV$S_PROVDEF = 47; macro PROV$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro PROV$T_START = 0,0,0,0 %; macro PROV$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro PROV$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro PROV$B_PSINDX = 4,0,8,0 %; ! Maps over SDF$B_PSINDX macro PROV$L_ADDRS = 5,0,32,0 %; ! Entry point address, maps over SDF$L_VALUE macro PROV$L_VECTOR = 9,0,32,0 %; ! Vectored entry point address macro PROV$W_MASK = 13,0,16,0 %; ! Entry point mask macro PROV$B_NAMLNG = 15,0,8,0 %; ! Length of name macro PROV$T_NAME = 16,0,0,0 %; literal PROV$S_NAME = 31; ! Symbol name !*** MODULE $PROMDEF *** ! ! GSD entry - Procedure definition, version mask symbols ! literal PROM$K_NAME = 16; literal PROM$C_NAME = 16; literal PROM$S_PROMDEF = 47; macro PROM$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro PROM$T_START = 0,0,0,0 %; macro PROM$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro PROM$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro PROM$B_PSINDX = 4,0,8,0 %; ! Maps over SDF$B_PSINDX macro PROM$L_ADDRS = 5,0,32,0 %; ! Entry point address, maps over SDF$L_VALUE macro PROM$L_VERSION_MASK = 9,0,32,0 %; ! Mask value for symbol macro PROM$W_MASK = 13,0,16,0 %; ! Entry point mask macro PROM$B_NAMLNG = 15,0,8,0 %; ! Length of name macro PROM$T_NAME = 16,0,0,0 %; literal PROM$S_NAME = 31; ! Symbol name !*** MODULE $FMLDEF *** ! ! Appended to a procedure definition are the formal arguments: ! FML$ - The fixed part of the formal arguments description ! literal FML$K_SIZE = 2; literal FML$C_SIZE = 2; literal FML$S_FMLDEF = 2; macro FML$B_MINARGS = 0,0,8,0 %; ! Minimum number of arguments macro FML$B_MAXARGS = 1,0,8,0 %; ! Maximum which include function if procedure is one !*** MODULE $ARGDEF *** ! ! ARG$ - The argument descriptors ! literal ARG$C_UNKNOWN = 0; ! Unspecified or unknown literal ARG$C_VALUE = 1; ! Passed by value literal ARG$C_REF = 2; ! Passed by reference literal ARG$C_DESC = 3; ! Passed by descriptor literal ARG$K_SIZE = 2; literal ARG$C_SIZE = 2; literal ARG$S_ARGDEF = 2; macro ARG$B_VALCTL = 0,0,8,0 %; ! Validation control byte macro ARG$V_PASSMECH = 0,0,2,0 %; literal ARG$S_PASSMECH = 2; ! Passing mechanism ! Passing mechanisms macro ARG$B_BYTECNT = 1,0,8,0 %; ! Remaining byte count !*** MODULE $SDFWDEF *** ! ! Symbol definition with word of psect value ! literal SDFW$K_NAME = 11; literal SDFW$C_NAME = 11; literal SDFW$S_SDFWDEF = 42; macro SDFW$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro SDFW$T_START = 0,0,0,0 %; macro SDFW$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro SDFW$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro SDFW$W_PSINDX = 4,0,16,0 %; ! Owning psect number macro SDFW$L_VALUE = 6,0,32,0 %; ! Value of symbol macro SDFW$B_NAMLNG = 10,0,8,0 %; ! Length of name macro SDFW$T_NAME = 11,0,0,0 %; literal SDFW$S_NAME = 31; ! Symbol name !*** MODULE $EPMWDEF *** ! ! GSD entry - Entry point definition with word of psect value ! literal EPMW$K_NAME = 13; literal EPMW$C_NAME = 13; literal EPMW$S_EPMWDEF = 44; macro EPMW$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro EPMW$T_START = 0,0,0,0 %; macro EPMW$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro EPMW$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro EPMW$W_PSINDX = 4,0,16,0 %; ! Maps over SDFW$W_PSINDX macro EPMW$L_ADDRS = 6,0,32,0 %; ! Entry point address, maps over SDFW$L_VALUE macro EPMW$W_MASK = 10,0,16,0 %; ! Entry point mask macro EPMW$B_NAMLNG = 12,0,8,0 %; ! Length of name macro EPMW$T_NAME = 13,0,0,0 %; literal EPMW$S_NAME = 31; ! Symbol name !*** MODULE $PROWDEF *** ! ! GSD entry - Procedure definition with word of psect value ! literal PROW$K_NAME = 13; literal PROW$C_NAME = 13; literal PROW$S_PROWDEF = 44; macro PROW$B_GSDTYP = 0,0,8,0 %; ! Maps over GSY$B_GSDTYP macro PROW$T_START = 0,0,0,0 %; macro PROW$B_DATYP = 1,0,8,0 %; ! Maps over GSY$B_DATYP macro PROW$W_FLAGS = 2,0,16,0 %; ! Maps over GSY$W_FLAGS macro PROW$W_PSINDX = 4,0,16,0 %; ! Maps over SDFW$W_PSINDX macro PROW$L_ADDRS = 6,0,32,0 %; ! Entry point address, maps over SDFW$L_VALUE macro PROW$W_MASK = 10,0,16,0 %; ! Entry point mask macro PROW$B_NAMLNG = 12,0,8,0 %; ! Length of name macro PROW$T_NAME = 13,0,0,0 %; literal PROW$S_NAME = 31; ! Symbol name !*** MODULE $IDCDEF *** ! ! IDC - Random entity ident consistency check ! literal IDC$C_LEQ = 0; literal IDC$C_EQUAL = 1; literal IDC$S_IDCDEF = 4; macro IDC$B_GSDTYP = 0,0,8,0 %; ! Type field macro IDC$W_FLAGS = 1,0,16,0 %; ! Flags macro IDC$V_BINIDENT = 1,0,1,0 %; ! Ident is binary longword rather than ASCIC macro IDC$V_IDMATCH = 1,1,2,0 %; literal IDC$S_IDMATCH = 2; ! Field for ident match control if binary ident macro IDC$V_ERRSEV = 1,3,3,0 %; literal IDC$S_ERRSEV = 3; ! Error severity (default is warning-0) ! Match control values macro IDC$B_NAMLNG = 3,0,8,0 %; ! Length of entity name macro IDC$T_NAME = 4,0,0,0 %; ! ! Followed by entity name ! Followed by ! byte of ident length ! ident string (length = string length) ! or ! ident binary value (length = 4) ! Followed by byte of length of name of object ! Followed by the object name !*** MODULE $ENVDEF *** ! ! ENV - Define/reference an environment ! literal ENV$M_DEF = %X'1'; literal ENV$M_NESTED = %X'2'; literal ENV$S_ENVDEF = 37; macro ENV$B_GSDTYP = 0,0,8,0 %; ! Type field macro ENV$W_FLAGS = 1,0,16,0 %; ! Environment flags macro ENV$V_DEF = 1,0,1,0 %; ! Definition of environment macro ENV$V_NESTED = 1,1,1,0 %; ! Nested environment if set macro ENV$W_ENVINDX = 3,0,16,0 %; ! Index of parent environment macro ENV$B_NAMLNG = 5,0,8,0 %; ! Length of environment name macro ENV$T_NAME = 6,0,0,0 %; literal ENV$S_NAME = 31; ! Environment name !*** MODULE $LSYDEF *** ! ! LSY - Module-Local symbol definition ! ! Common to definitions, references, entry points, and procedure definitions ! literal LSY$M_WEAK = %X'1'; literal LSY$M_DEF = %X'2'; literal LSY$M_UNI = %X'4'; literal LSY$M_REL = %X'8'; literal LSY$S_LSYDEF = 6; macro LSY$B_GSDTYP = 0,0,8,0 %; ! Type field macro LSY$T_START = 0,0,0,0 %; macro LSY$B_DATYP = 1,0,8,0 %; ! Symbol type macro LSY$W_FLAGS = 2,0,16,0 %; ! Symbol flags macro LSY$V_WEAK = 2,0,1,0 %; ! Weak symbol (not used) macro LSY$V_DEF = 2,1,1,0 %; ! Defined symbol macro LSY$V_UNI = 2,2,1,0 %; ! Universal (not used) macro LSY$V_REL = 2,3,1,0 %; ! Relocatable macro LSY$W_ENVINDX = 4,0,16,0 %; ! Environment index !*** MODULE $LSRFDEF *** ! ! Module-local Symbol reference (LSY$M_DEF in LSY$W_FLAGS is 0) ! literal LSRF$K_NAME = 7; literal LSRF$C_NAME = 7; literal LSRF$S_LSRFDEF = 38; macro LSRF$B_GSDTYP = 0,0,8,0 %; ! Maps over LSY$B_GSDTYP macro LSRF$T_START = 0,0,0,0 %; macro LSRF$B_DATYP = 1,0,8,0 %; ! Maps over LSY$B_DATYP macro LSRF$W_FLAGS = 2,0,16,0 %; ! Maps over LSY$W_FLAGS macro LSRF$W_ENVINDX = 4,0,16,0 %; ! Maps over LSY$W_ENVINDX macro LSRF$B_NAMLNG = 6,0,8,0 %; ! Length of symbol name macro LSRF$T_NAME = 7,0,0,0 %; literal LSRF$S_NAME = 31; ! Symbol name !*** MODULE $LSDFDEF *** ! ! Module-local Symbol definition ! literal LSDF$K_NAME = 13; literal LSDF$C_NAME = 13; literal LSDF$S_LSDFDEF = 44; macro LSDF$B_GSDTYP = 0,0,8,0 %; ! Maps over LSY$B_GSDTYP macro LSDF$T_START = 0,0,0,0 %; macro LSDF$B_DATYP = 1,0,8,0 %; ! Maps over LSY$B_DATYP macro LSDF$W_FLAGS = 2,0,16,0 %; ! Maps over LSY$W_FLAGS macro LSDF$W_ENVINDX = 4,0,16,0 %; ! Environment index symbol defined in macro LSDF$W_PSINDX = 6,0,16,0 %; ! Owning psect number macro LSDF$L_VALUE = 8,0,32,0 %; ! Value of symbol macro LSDF$B_NAMLNG = 12,0,8,0 %; ! Length of name macro LSDF$T_NAME = 13,0,0,0 %; literal LSDF$S_NAME = 31; ! Symbol name !*** MODULE $LEPMDEF *** ! ! GSD entry - Module local entry point definition ! literal LEPM$K_NAME = 15; literal LEPM$C_NAME = 15; literal LEPM$S_LEPMDEF = 46; macro LEPM$B_GSDTYP = 0,0,8,0 %; ! Maps over LSY$B_GSDTYP macro LEPM$T_START = 0,0,0,0 %; macro LEPM$B_DATYP = 1,0,8,0 %; ! Maps over LSY$B_DATYP macro LEPM$W_FLAGS = 2,0,16,0 %; ! Maps over LSY$W_FLAGS macro LEPM$W_ENVINDX = 4,0,16,0 %; ! Environment index symbol defined in macro LEPM$W_PSINDX = 6,0,16,0 %; ! Maps over LSDF$W_PSINDX macro LEPM$L_ADDRS = 8,0,32,0 %; ! Entry point address, maps ! over LSDF$L_VALUE macro LEPM$W_MASK = 12,0,16,0 %; ! Entry point mask macro LEPM$B_NAMLNG = 14,0,8,0 %; ! Length of name macro LEPM$T_NAME = 15,0,0,0 %; literal LEPM$S_NAME = 31; ! Symbol name !*** MODULE $LPRODEF *** ! ! GSD entry - Module Local Procedure definition ! literal LPRO$K_NAME = 15; literal LPRO$C_NAME = 15; literal LPRO$S_LPRODEF = 46; macro LPRO$B_GSDTYP = 0,0,8,0 %; ! Maps over LSY$B_GSDTYP macro LPRO$T_START = 0,0,0,0 %; macro LPRO$B_DATYP = 1,0,8,0 %; ! Maps over LSY$B_DATYP macro LPRO$W_FLAGS = 2,0,16,0 %; ! Maps over LSY$W_FLAGS macro LPRO$W_ENVINDX = 4,0,16,0 %; ! Environment index symbol defined in macro LPRO$W_PSINDX = 6,0,16,0 %; ! Maps over LSDF$W_PSINDX macro LPRO$L_ADDRS = 8,0,32,0 %; ! Entry point address, maps ! over LSDF$L_VALUE macro LPRO$W_MASK = 12,0,16,0 %; ! Entry point mask macro LPRO$B_NAMLNG = 14,0,8,0 %; ! Length of name macro LPRO$T_NAME = 15,0,0,0 %; literal LPRO$S_NAME = 31; ! Symbol name !*** MODULE $TIRDEF *** ! ! Text, information and relocation record (TIR) ! literal TIR$C_STA_GBL = 0; ! Stack global symbol value literal TIR$C_STA_SB = 1; ! Stack signed byte literal TIR$C_STA_SW = 2; ! Stack signed word literal TIR$C_STA_LW = 3; ! Stack longword literal TIR$C_STA_PB = 4; ! Stack psect base plus byte offset literal TIR$C_STA_PW = 5; ! Stack psect base plus word offset literal TIR$C_STA_PL = 6; ! Stack psect base plus longword offset literal TIR$C_STA_UB = 7; ! Stack unsigned byte literal TIR$C_STA_UW = 8; ! Stack unsigned word literal TIR$C_STA_BFI = 9; ! Stack byte from image literal TIR$C_STA_WFI = 10; ! Stack word from image literal TIR$C_STA_LFI = 11; ! Stack longword from image literal TIR$C_STA_EPM = 12; ! Stack entry point mask literal TIR$C_STA_CKARG = 13; ! Stack result of argument checking (true or false) literal TIR$C_STA_WPB = 14; ! Stack psect base plus byte offset -- word psect number literal TIR$C_STA_WPW = 15; ! Stack psect base plus word offset -- word psect number literal TIR$C_STA_WPL = 16; ! Stack psect base plus longword offset -- word of psect number literal TIR$C_STA_LSY = 17; ! Stack local symbol value literal TIR$C_STA_LIT = 18; ! Stack literal literal TIR$C_STA_LEPM = 19; ! Stack local symbol entry point mask literal TIR$C_MAXSTACOD = 19; ! Last assigned code of stack group literal TIR$C_MINSTOCOD = 20; ! First assigned store command code literal TIR$C_STO_SB = 20; ! Store signed byte literal TIR$C_STO_SW = 21; ! Store signed word literal TIR$C_STO_L = 22; ! Store longword literal TIR$C_STO_BD = 23; ! Store byte displaced literal TIR$C_STO_WD = 24; ! Store word displaced literal TIR$C_STO_LD = 25; ! Store longword displaced literal TIR$C_STO_LI = 26; ! Store short literal literal TIR$C_STO_PIDR = 27; ! Store pos. indep. data reference literal TIR$C_STO_PICR = 28; ! Store pos. indep. code reference literal TIR$C_STO_RSB = 29; ! Store repeated signed byte literal TIR$C_STO_RSW = 30; ! Store repeated signed word literal TIR$C_STO_RL = 31; ! Store repeated longword literal TIR$C_STO_VPS = 32; ! Store arbitrary field literal TIR$C_STO_USB = 33; ! Store unsigned byte literal TIR$C_STO_USW = 34; ! Store unsigned word literal TIR$C_STO_RUB = 35; ! Store repeated unsigned byte literal TIR$C_STO_RUW = 36; ! Store repeated unsigned word literal TIR$C_STO_B = 37; ! Store byte literal TIR$C_STO_W = 38; ! Store word literal TIR$C_STO_RB = 39; ! Store repeated byte literal TIR$C_STO_RW = 40; ! Store repeated word literal TIR$C_STO_RIVB = 41; ! Store repeated immediate variable bytes literal TIR$C_STO_PIRR = 42; ! Store pos. indep. relative reference literal TIR$C_MAXSTOCOD = 42; ! Last assigned store command code literal TIR$C_MINOPRCOD = 50; ! First assigned operator command code literal TIR$C_OPR_NOP = 50; ! No-op literal TIR$C_OPR_ADD = 51; ! Add literal TIR$C_OPR_SUB = 52; ! Subtract literal TIR$C_OPR_MUL = 53; ! Multiply literal TIR$C_OPR_DIV = 54; ! Divide literal TIR$C_OPR_AND = 55; ! Logical AND literal TIR$C_OPR_IOR = 56; ! Logical inclusive OR literal TIR$C_OPR_EOR = 57; ! Logical exclusive OR literal TIR$C_OPR_NEG = 58; ! Negate literal TIR$C_OPR_COM = 59; ! Complement literal TIR$C_OPR_INSV = 60; ! Insert bit field literal TIR$C_OPR_ASH = 61; ! Arithmetic shift literal TIR$C_OPR_USH = 62; ! Unsigned shift literal TIR$C_OPR_ROT = 63; ! Rotate literal TIR$C_OPR_SEL = 64; ! Select one of three longwords on top of stack literal TIR$C_OPR_REDEF = 65; ! Redefine this symbol after pass 2 literal TIR$C_OPR_DFLIT = 66; ! Define a literal literal TIR$C_MAXOPRCOD = 66; ! Last assigned operator command code literal TIR$C_MINCTLCOD = 80; ! First assigned control command code literal TIR$C_CTL_SETRB = 80; ! Set relocation base literal TIR$C_CTL_AUGRB = 81; ! Augment relocation base literal TIR$C_CTL_DFLOC = 82; ! Define debug location literal TIR$C_CTL_STLOC = 83; ! Set debug location literal TIR$C_CTL_STKDL = 84; ! Stack debug location literal TIR$C_MAXCTLCOD = 84; ! Last assigned control command code literal TIR$S_TIRDEF = 1; macro TIR$B_RECTYP = 0,0,8,0 %; ! Record type (OBJ$C_TIR) ! Define relocation commands ! ! EVAX dependent structures start here ! !*** MODULE $EOBJRECDEF *** ! ! These are the record types defined for VAX and EVAX object records. ! Some types are only recognized in one format of object file, but ! the types must be a single set of distinct codes. ! literal EOBJ$C_EMH = 8; ! EVAX module header record literal EOBJ$C_EEOM = 9; ! EVAX end of module record literal EOBJ$C_EGSD = 10; ! EVAX global symbol definition record literal EOBJ$C_ETIR = 11; ! EVAX text information record literal EOBJ$C_EDBG = 12; ! EVAX Debugger information record literal EOBJ$C_ETBT = 13; ! EVAX Traceback information record literal EOBJ$C_MAXRECTYP = 13; ! Last assigned record type literal EOBJ$K_SUBTYP = 4; literal EOBJ$C_SUBTYP = 4; literal EOBJ$C_MAXRECSIZ = 8192; ! Maximum legal record size literal EOBJ$C_STRLVL = 2; ! Structure level literal EOBJ$C_STRLVL64 = 3; ! Structure level literal EOBJ$C_SYMSIZ = 64; ! Maximum symbol length literal EOBJ$C_STOREPLIM = -1; ! Maximum repeat count on store commands literal EOBJ$C_PSCALILIM = 16; ! Maximum p-sect alignment literal EOBJ$S_EOBJRECDEF = 10; ! ! These are the record types defined for VAX object records. ! macro EOBJ$W_RECTYP = 0,0,16,0 %; ! First byte always record type macro EOBJ$W_SIZE = 2,0,16,0 %; ! Second is always record size ! Permissable record types macro EOBJ$W_SUBTYP = 4,0,16,0 %; ! Record sub-type byte macro EOBJ$B_MHD_STRLV = 6,0,8,0 %; ! Structure level macro EOBJ$B_MHD_HOLD = 7,0,8,0 %; ! alignment temp macro EOBJ$W_MHD_RECSZ = 8,0,16,0 %; ! Maximum record size macro EOBJ$T_MHD_NAME = 10,0,0,0 %; ! Module name field ! Misc. constants !*** MODULE $EMHDEF *** ! ! EVAX Module header record (EMH) ! literal EMH$C_MHD = 0; ! Main header record literal EMH$C_LNM = 1; ! Language name and version literal EMH$C_SRC = 2; ! Source file specification literal EMH$C_TTL = 3; ! Title text of module literal EMH$C_CPR = 4; ! Copyright notice literal EMH$C_MTC = 5; ! Maintenence status literal EMH$C_GTX = 6; ! General text literal EMH$C_MAXHDRTYP = 6; ! Maximum allowable type literal EMH$S_EMHDEF = 52; macro EMH$W_RECTYP = 0,0,16,0 %; ! Record type (OBJ$C_MHD) macro EMH$W_SIZE = 2,0,16,0 %; ! length of this EMH macro EMH$W_HDRTYP = 4,0,16,0 %; ! Type field for MHD ! Types of header records macro EMH$B_STRLVL = 6,0,8,0 %; ! Structure level macro EMH$B_TEMP = 7,0,8,0 %; ! temp pad byte macro EMH$L_ARCH1 = 8,0,32,1 %; ! target architecture LW1 macro EMH$L_ARCH2 = 12,0,32,1 %; ! target architecture LW2 macro EMH$L_RECSIZ = 16,0,32,0 %; ! Maximum record size macro EMH$B_NAMLNG = 20,0,8,0 %; ! Module name length macro EMH$T_NAME = 21,0,0,0 %; literal EMH$S_NAME = 31; ! Module name !*** MODULE $EEOMDEF *** ! ! EVAX End of module record (EEOM) ! literal EEOM$C_SUCCESS = 0; ! Successful (no errors) literal EEOM$C_WARNING = 1; ! Warnings issued literal EEOM$C_ERROR = 2; ! Errors detected literal EEOM$C_ABORT = 3; ! Abort the link literal EEOM$K_EOMMIN = 10; ! Min length of EOM record literal EEOM$C_EOMMIN = 10; ! Min length of EOM record literal EEOM$K_EOMMX1 = 10; ! Length of EOM record w/o transfer flags literal EEOM$C_EOMMX1 = 10; ! Length of EOM record w/o transfer flags literal EEOM$M_WKTFR = %X'1'; literal EEOM$K_EOMMAX = 24; ! Maximum length of EOM record literal EEOM$C_EOMMAX = 24; ! Maximum length of EOM record literal EEOM$S_EEOMDEF = 24; macro EEOM$W_RECTYP = 0,0,16,0 %; ! Record type (OBJ$C_EOM) macro EEOM$W_SIZE = 2,0,16,0 %; ! size of this EEMOD macro EEOM$L_TOTAL_LPS = 4,0,32,0 %; ! Number of conditional linkage pairs - max-index/2 macro EEOM$W_COMCOD = 8,0,16,0 %; ! Compiler completion code ! Values macro EEOM$B_TFRFLG = 10,0,8,0 %; ! Transfer address flags macro EEOM$V_WKTFR = 10,0,1,0 %; ! Transfer address is weak macro EEOM$B_TEMP = 11,0,8,0 %; ! pad to align PSINDX macro EEOM$L_PSINDX = 12,0,32,0 %; ! P-sect of transfer address macro EEOM$Q_TFRADR = 16,0,0,0 %; literal EEOM$S_TFRADR = 8; ! Transfer address macro EEOM$L_TFRADR = 16,0,32,0 %; ! Transfer address !*** MODULE $EGSDEF *** ! ! EVAX Global symbol definition record (EGSD) ! literal EGSD$K_ENTRIES = 2; ! Offset to first entry in record literal EGSD$C_ENTRIES = 2; ! Offset to first entry in record literal EGSD$C_PSC = 0; ! Psect definition literal EGSD$C_SYM = 1; ! Symbol specification literal EGSD$C_IDC = 2; ! Random entity check literal EGSD$C_SPSC = 5; ! Shareable image psect definition literal EGSD$C_SYMV = 6; ! Vectored (dual-valued) versions of SYM, literal EGSD$C_SYMM = 7; ! Masked versions of SYM, literal EGSD$C_SYMG = 8; ! EGST - gst version of SYM literal EGSD$C_PSC64 = 9; ! Psect with 64-bit length literal EGSD$C_SPSC64 = 10; ! Shareable image psect definition w/64b len/base literal EGSD$C_MAXRECTYP = 10; ! Maximum entry type defined literal EGSD$S_EGSDEF = 12; macro EGSD$W_RECTYP = 0,0,16,0 %; ! Record type (OBJ$C_GSD) macro EGSD$W_RECSIZ = 2,0,16,0 %; ! Size of theis EVAX EGSD macro EGSD$L_ALIGNLW = 4,0,32,0 %; ! Insure that subrecords are QW aligned macro EGSD$W_GSDTYP = 8,0,16,0 %; ! Type of entry (first byte of entry) macro EGSD$W_GSDSIZ = 10,0,16,0 %; ! Size of this entry !*** MODULE $EGPSDEF *** ! ! EVAX GSD entry - P-section definition ! literal EGPS$M_PIC = %X'1'; literal EGPS$M_LIB = %X'2'; literal EGPS$M_OVR = %X'4'; literal EGPS$M_REL = %X'8'; literal EGPS$M_GBL = %X'10'; literal EGPS$M_SHR = %X'20'; literal EGPS$M_EXE = %X'40'; literal EGPS$M_RD = %X'80'; literal EGPS$M_WRT = %X'100'; literal EGPS$M_VEC = %X'200'; literal EGPS$M_NOMOD = %X'400'; literal EGPS$M_COM = %X'800'; literal EGPS$M_ALLOC_64BIT = %X'1000'; literal EGPS$K_NAME = 12; literal EGPS$C_NAME = 12; literal EGPS$S_EGPSDEF = 44; macro EGPS$W_GSDTYP = 0,0,16,0 %; ! Typ field macro EGPS$T_START = 0,0,0,0 %; macro EGPS$W_SIZE = 2,0,16,0 %; ! size of this EGPS macro EGPS$B_ALIGN = 4,0,8,0 %; ! P-sect alignment macro EGPS$B_TEMP = 5,0,8,0 %; ! pad for aligning macro EGPS$W_FLAGS = 6,0,16,0 %; ! P-sect flags macro EGPS$V_PIC = 6,0,1,0 %; ! Position independent macro EGPS$V_LIB = 6,1,1,0 %; ! From a shareable image macro EGPS$V_OVR = 6,2,1,0 %; ! Overlaid memory allocation macro EGPS$V_REL = 6,3,1,0 %; ! Relocatable macro EGPS$V_GBL = 6,4,1,0 %; ! Global scope macro EGPS$V_SHR = 6,5,1,0 %; ! Shareable macro EGPS$V_EXE = 6,6,1,0 %; ! Executable macro EGPS$V_RD = 6,7,1,0 %; ! Readable macro EGPS$V_WRT = 6,8,1,0 %; ! Writeable macro EGPS$V_VEC = 6,9,1,0 %; ! Vector psect macro EGPS$V_NOMOD = 6,10,1,0 %; ! Not stored into macro EGPS$V_COM = 6,11,1,0 %; ! Associated with COMM sym macro EGPS$V_ALLOC_64BIT = 6,12,1,0 %; ! Load in 64-bit space macro EGPS$L_ALLOC = 8,0,32,0 %; ! Length of this contribution macro EGPS$B_NAMLNG = 12,0,8,0 %; ! Length of p-sect name macro EGPS$T_NAME = 13,0,0,0 %; literal EGPS$S_NAME = 31; ! Name field ! ! EVAX GSD entry - 64-Bit P-section definition ! literal EGPS64$M_PIC = %X'1'; literal EGPS64$M_LIB = %X'2'; literal EGPS64$M_OVR = %X'4'; literal EGPS64$M_REL = %X'8'; literal EGPS64$M_GBL = %X'10'; literal EGPS64$M_SHR = %X'20'; literal EGPS64$M_EXE = %X'40'; literal EGPS64$M_RD = %X'80'; literal EGPS64$M_WRT = %X'100'; literal EGPS64$M_VEC = %X'200'; literal EGPS64$M_NOMOD = %X'400'; literal EGPS64$M_COM = %X'800'; literal EGPS64$M_ALLOC_64BIT = %X'1000'; literal EGPS64$K_NAME = 16; literal EGPS64$C_NAME = 16; literal EGPS64$S_EGPS64DEF = 48; macro EGPS64$W_GSDTYP = 0,0,16,0 %; ! Typ field macro EGPS64$T_START = 0,0,0,0 %; macro EGPS64$W_SIZE = 2,0,16,0 %; ! size of this EGPS macro EGPS64$B_ALIGN = 4,0,8,0 %; ! P-sect alignment macro EGPS64$B_TEMP = 5,0,8,0 %; ! pad for aligning macro EGPS64$W_FLAGS = 6,0,16,0 %; ! P-sect flags macro EGPS64$V_PIC = 6,0,1,0 %; ! Position independent macro EGPS64$V_LIB = 6,1,1,0 %; ! From a shareable image macro EGPS64$V_OVR = 6,2,1,0 %; ! Overlaid memory allocation macro EGPS64$V_REL = 6,3,1,0 %; ! Relocatable macro EGPS64$V_GBL = 6,4,1,0 %; ! Global scope macro EGPS64$V_SHR = 6,5,1,0 %; ! Shareable macro EGPS64$V_EXE = 6,6,1,0 %; ! Executable macro EGPS64$V_RD = 6,7,1,0 %; ! Readable macro EGPS64$V_WRT = 6,8,1,0 %; ! Writeable macro EGPS64$V_VEC = 6,9,1,0 %; ! Vector psect macro EGPS64$V_NOMOD = 6,10,1,0 %; ! Not stored into macro EGPS64$V_COM = 6,11,1,0 %; ! Associated with COMM sym macro EGPS64$V_ALLOC_64BIT = 6,12,1,0 %; ! Load in 64-bit space macro EGPS64$Q_ALLOC = 8,0,0,0 %; literal EGPS64$S_ALLOC = 8; ! Length of this contribution macro EGPS64$L_ALLOC = 8,0,32,0 %; ! Low Longword macro EGPS64$B_NAMLNG = 16,0,8,0 %; ! Length of p-sect name macro EGPS64$T_NAME = 17,0,0,0 %; literal EGPS64$S_NAME = 31; ! Name field !*** MODULE $ESGPSDEF *** ! ! EVAX GSD entry - P-section definition in shareable image ! literal ESGPS$M_PIC = %X'1'; literal ESGPS$M_LIB = %X'2'; literal ESGPS$M_OVR = %X'4'; literal ESGPS$M_REL = %X'8'; literal ESGPS$M_GBL = %X'10'; literal ESGPS$M_SHR = %X'20'; literal ESGPS$M_EXE = %X'40'; literal ESGPS$M_RD = %X'80'; literal ESGPS$M_WRT = %X'100'; literal ESGPS$M_VEC = %X'200'; literal ESGPS$M_NOMOD = %X'400'; literal ESGPS$M_COM = %X'800'; literal ESGPS$M_ALLOC_64BIT = %X'1000'; literal ESGPS$K_NAME = 25; literal ESGPS$C_NAME = 25; literal ESGPS$S_ESGPSDEF = 56; macro ESGPS$W_GSDTYP = 0,0,16,0 %; ! Typ field macro ESGPS$T_START = 0,0,0,0 %; macro ESGPS$W_SIZE = 2,0,16,0 %; ! size of this ESGPS macro ESGPS$B_ALIGN = 4,0,8,0 %; ! P-sect alignment macro ESGPS$B_TEMP = 5,0,8,0 %; ! pad for allignment macro ESGPS$W_FLAGS = 6,0,16,0 %; ! P-sect flags macro ESGPS$V_PIC = 6,0,1,0 %; ! Position independent macro ESGPS$V_LIB = 6,1,1,0 %; ! From a shareable image macro ESGPS$V_OVR = 6,2,1,0 %; ! Overlaid memory allocation macro ESGPS$V_REL = 6,3,1,0 %; ! Relocatable macro ESGPS$V_GBL = 6,4,1,0 %; ! Global scope macro ESGPS$V_SHR = 6,5,1,0 %; ! Shareable macro ESGPS$V_EXE = 6,6,1,0 %; ! Executable macro ESGPS$V_RD = 6,7,1,0 %; ! Readable macro ESGPS$V_WRT = 6,8,1,0 %; ! Writeable macro ESGPS$V_VEC = 6,9,1,0 %; ! Vector psect macro ESGPS$V_NOMOD = 6,10,1,0 %; ! Not stored into macro ESGPS$V_COM = 6,11,1,0 %; ! Associated with COMM sym macro ESGPS$V_ALLOC_64BIT = 6,12,1,0 %; ! Load in 64-bit space macro ESGPS$L_ALLOC = 8,0,32,0 %; ! Length of this psect in shr image macro ESGPS$L_BASE = 12,0,32,0 %; ! Offset into img of psect, copy of symbol vector macro ESGPS$Q_VALUE = 16,0,0,0 %; literal ESGPS$S_VALUE = 8; macro ESGPS$L_VALUE = 16,0,32,0 %; macro ESGPS$B_NAMLNG = 24,0,8,0 %; ! Length of p-sect name macro ESGPS$T_NAME = 25,0,0,0 %; literal ESGPS$S_NAME = 31; ! Name field ! ! EVAX GSD entry - 64-Bit P-section definition in shareable image ! literal ESGPS64$M_PIC = %X'1'; literal ESGPS64$M_LIB = %X'2'; literal ESGPS64$M_OVR = %X'4'; literal ESGPS64$M_REL = %X'8'; literal ESGPS64$M_GBL = %X'10'; literal ESGPS64$M_SHR = %X'20'; literal ESGPS64$M_EXE = %X'40'; literal ESGPS64$M_RD = %X'80'; literal ESGPS64$M_WRT = %X'100'; literal ESGPS64$M_VEC = %X'200'; literal ESGPS64$M_NOMOD = %X'400'; literal ESGPS64$M_COM = %X'800'; literal ESGPS64$M_ALLOC_64BIT = %X'1000'; literal ESGPS64$K_NAME = 33; literal ESGPS64$C_NAME = 33; literal ESGPS64$S_ESGPS64DEF = 64; macro ESGPS64$W_GSDTYP = 0,0,16,0 %; ! Typ field macro ESGPS64$T_START = 0,0,0,0 %; macro ESGPS64$W_SIZE = 2,0,16,0 %; ! size of this ESGPS macro ESGPS64$B_ALIGN = 4,0,8,0 %; ! P-sect alignment macro ESGPS64$B_TEMP = 5,0,8,0 %; ! pad for allignment macro ESGPS64$W_FLAGS = 6,0,16,0 %; ! P-sect flags macro ESGPS64$V_PIC = 6,0,1,0 %; ! Position independent macro ESGPS64$V_LIB = 6,1,1,0 %; ! From a shareable image macro ESGPS64$V_OVR = 6,2,1,0 %; ! Overlaid memory allocation macro ESGPS64$V_REL = 6,3,1,0 %; ! Relocatable macro ESGPS64$V_GBL = 6,4,1,0 %; ! Global scope macro ESGPS64$V_SHR = 6,5,1,0 %; ! Shareable macro ESGPS64$V_EXE = 6,6,1,0 %; ! Executable macro ESGPS64$V_RD = 6,7,1,0 %; ! Readable macro ESGPS64$V_WRT = 6,8,1,0 %; ! Writeable macro ESGPS64$V_VEC = 6,9,1,0 %; ! Vector psect macro ESGPS64$V_NOMOD = 6,10,1,0 %; ! Not stored into macro ESGPS64$V_COM = 6,11,1,0 %; ! Associated with COMM sym macro ESGPS64$V_ALLOC_64BIT = 6,12,1,0 %; ! Load in 64-bit space macro ESGPS64$Q_ALLOC = 8,0,0,0 %; literal ESGPS64$S_ALLOC = 8; ! Length of this psect in shr image macro ESGPS64$L_ALLOC = 8,0,32,0 %; ! Low Longword macro ESGPS64$Q_BASE = 16,0,0,0 %; literal ESGPS64$S_BASE = 8; ! Offset into img of psect, copy of symbol vector macro ESGPS64$L_BASE = 16,0,32,0 %; ! Low Longword macro ESGPS64$Q_VALUE = 24,0,0,0 %; literal ESGPS64$S_VALUE = 8; macro ESGPS64$L_VALUE = 24,0,32,0 %; macro ESGPS64$B_NAMLNG = 32,0,8,0 %; ! Length of p-sect name macro ESGPS64$T_NAME = 33,0,0,0 %; literal ESGPS64$S_NAME = 31; ! Name field !*** MODULE $EGSYDEF *** ! ! EVAX GSD entry - Symbol definition ! ! common to definitions, references, and entry ! point definitions. ! literal EGSY$M_WEAK = %X'1'; literal EGSY$M_DEF = %X'2'; literal EGSY$M_UNI = %X'4'; literal EGSY$M_REL = %X'8'; literal EGSY$M_COMM = %X'10'; literal EGSY$M_VECEP = %X'20'; literal EGSY$M_NORM = %X'40'; literal EGSY$M_QUAD_VAL = %X'80'; literal EGSY$S_EGSYDEF = 8; macro EGSY$W_GSDTYP = 0,0,16,0 %; ! Type field macro EGSY$T_START = 0,0,0,0 %; macro EGSY$W_SIZE = 2,0,16,0 %; ! size of this EGSY macro EGSY$B_DATYP = 4,0,8,0 %; ! Symbol data type macro EGSY$B_TEMP = 5,0,8,0 %; ! pad for alignment macro EGSY$W_FLAGS = 6,0,16,0 %; ! Symbol flags macro EGSY$V_WEAK = 6,0,1,0 %; ! Weak symbol macro EGSY$V_DEF = 6,1,1,0 %; ! Definition macro EGSY$V_UNI = 6,2,1,0 %; ! Universal macro EGSY$V_REL = 6,3,1,0 %; ! Relocatable macro EGSY$V_COMM = 6,4,1,0 %; ! C common globaldef macro EGSY$V_VECEP = 6,5,1,0 %; ! Vectored Entry Point macro EGSY$V_NORM = 6,6,1,0 %; ! Normal Procedure(FD) macro EGSY$V_QUAD_VAL = 6,7,1,0 %; ! Value is quadword !*** MODULE $EGSTDEF *** ! ! EVAX Universal Symbol Definition - used by the linker instead of ESDF$ records ! when building the global symbol table. The def and univ. bits should always ! be set for these records. ! literal EGST$K_NAME = 37; literal EGST$C_NAME = 37; literal EGST$S_EGSTDEF = 68; macro EGST$W_GSDTYP = 0,0,16,0 %; ! Maps over GSY$B_GSDTYP macro EGST$T_START = 0,0,0,0 %; macro EGST$W_SIZE = 2,0,16,0 %; ! size of this EGST macro EGST$B_DATYP = 4,0,8,0 %; ! Maps over GSY$B_DATYP macro EGST$B_TEMP = 5,0,8,0 %; ! pad for alignment macro EGST$W_FLAGS = 6,0,16,0 %; ! Maps over GSY$W_FLAGS macro EGST$Q_VALUE = 8,0,0,0 %; literal EGST$S_VALUE = 8; macro EGST$L_VALUE = 8,0,32,0 %; macro EGST$Q_LP_1 = 16,0,0,0 %; literal EGST$S_LP_1 = 8; macro EGST$L_LP_1 = 16,0,32,0 %; macro EGST$Q_LP_2 = 24,0,0,0 %; literal EGST$S_LP_2 = 8; macro EGST$L_LP_2 = 24,0,32,0 %; macro EGST$L_PSINDX = 32,0,32,0 %; ! Owning psect number macro EGST$B_NAMLNG = 36,0,8,0 %; ! Length of name macro EGST$T_NAME = 37,0,0,0 %; literal EGST$S_NAME = 31; ! Symbol name !*** MODULE $ESDFDEF *** ! ! EVAX Symbol definition ! literal ESDF$K_NAME = 33; literal ESDF$C_NAME = 33; literal ESDF$S_ESDFDEF = 64; macro ESDF$W_GSDTYP = 0,0,16,0 %; ! Maps over GSY$B_GSDTYP macro ESDF$T_START = 0,0,0,0 %; macro ESDF$W_SIZE = 2,0,16,0 %; ! size of this ESDF macro ESDF$B_DATYP = 4,0,8,0 %; ! Maps over GSY$B_DATYP macro ESDF$B_TEMP = 5,0,8,0 %; ! pad for alignment macro ESDF$W_FLAGS = 6,0,16,0 %; ! Maps over GSY$W_FLAGS macro ESDF$Q_VALUE = 8,0,0,0 %; literal ESDF$S_VALUE = 8; macro ESDF$L_VALUE = 8,0,32,0 %; macro ESDF$Q_CODE_ADDRESS = 16,0,0,0 %; literal ESDF$S_CODE_ADDRESS = 8; macro ESDF$L_CODE_ADDRESS = 16,0,32,0 %; macro ESDF$L_CA_PSINDX = 24,0,32,0 %; ! Psect index of the code address (which is in ! LP_1 if the norm bit is set). macro ESDF$L_PSINDX = 28,0,32,0 %; ! Owning psect number macro ESDF$B_NAMLNG = 32,0,8,0 %; ! Length of name macro ESDF$T_NAME = 33,0,0,0 %; literal ESDF$S_NAME = 31; ! Symbol name !*** MODULE $ESDFVDEF *** ! ! EVAX Symbol definition for vectored symbols ! literal ESDFV$K_NAME = 25; literal ESDFV$C_NAME = 25; literal ESDFV$S_ESDFVDEF = 56; macro ESDFV$W_GSDTYP = 0,0,16,0 %; ! Maps over GSY$B_GSDTYP macro ESDFV$T_START = 0,0,0,0 %; macro ESDFV$W_SIZE = 2,0,16,0 %; ! size of this SDFV macro ESDFV$B_DATYP = 4,0,8,0 %; ! Maps over GSY$B_DATYP macro ESDFV$B_TEMP = 5,0,8,0 %; ! pad for alignment macro ESDFV$W_FLAGS = 6,0,16,0 %; ! Maps over GSY$W_FLAGS macro ESDFV$Q_VALUE = 8,0,0,0 %; literal ESDFV$S_VALUE = 8; macro ESDFV$L_VALUE = 8,0,32,0 %; macro ESDFV$L_PSINDX = 16,0,32,0 %; ! Owning psect number macro ESDFV$L_VECTOR = 20,0,32,0 %; ! Vectored value of symbol macro ESDFV$B_NAMLNG = 24,0,8,0 %; ! Length of name macro ESDFV$T_NAME = 25,0,0,0 %; literal ESDFV$S_NAME = 31; ! Symbol name !*** MODULE $ESDFMDEF *** ! ! EVAX Symbol definition for version mask symbols ! literal ESDFM$K_NAME = 25; literal ESDFM$C_NAME = 25; literal ESDFM$S_ESDFMDEF = 56; macro ESDFM$W_GSDTYP = 0,0,16,0 %; ! Maps over GSY$B_GSDTYP macro ESDFM$T_START = 0,0,0,0 %; macro ESDFM$W_SIZE = 2,0,16,0 %; ! size of this ESDFM macro ESDFM$B_DATYP = 4,0,8,0 %; ! Maps over GSY$B_DATYP macro ESDFM$B_TEMP = 5,0,8,0 %; ! pad for alignment macro ESDFM$W_FLAGS = 6,0,16,0 %; ! Maps over GSY$W_FLAGS macro ESDFM$Q_VALUE = 8,0,0,0 %; literal ESDFM$S_VALUE = 8; macro ESDFM$L_VALUE = 8,0,32,0 %; macro ESDFM$L_PSINDX = 16,0,32,0 %; ! Owning psect number macro ESDFM$L_VERSION_MASK = 20,0,32,0 %; ! Mask for symbol macro ESDFM$B_NAMLNG = 24,0,8,0 %; ! Length of name macro ESDFM$T_NAME = 25,0,0,0 %; literal ESDFM$S_NAME = 31; ! Symbol name !*** MODULE $ESRFDEF *** ! ! EVAX Symbol reference (SYM$M_DEF in EGSY$W_FLAGS is 0) ! literal ESRF$K_NAME = 9; literal ESRF$C_NAME = 9; literal ESRF$S_ESRFDEF = 40; macro ESRF$W_GSDTYP = 0,0,16,0 %; ! Maps over GSY$B_GSDTYP macro ESRF$T_START = 0,0,0,0 %; macro ESRF$W_SIZE = 2,0,16,0 %; ! size of this ESRF macro ESRF$B_DATYP = 4,0,8,0 %; ! Maps over GSY$B_DATYP macro ESRF$B_TEMP = 5,0,8,0 %; ! pad for alignment macro ESRF$W_FLAGS = 6,0,16,0 %; ! Maps over GSY$W_FLAGS macro ESRF$B_NAMLNG = 8,0,8,0 %; ! Length of symbol name macro ESRF$T_NAME = 9,0,0,0 %; literal ESRF$S_NAME = 31; ! Symbol name !*** MODULE $EIDCDEF *** ! ! EVAX IDC - Random entity ident consistency check ! literal EIDC$C_LEQ = 0; literal EIDC$C_EQUAL = 1; literal EIDC$S_EIDCDEF = 9; macro EIDC$W_GSDTYP = 0,0,16,0 %; ! Type field macro EIDC$W_SIZE = 2,0,16,0 %; ! size of this EIDCDEF macro EIDC$L_FLAGS = 4,0,32,0 %; ! Flags macro EIDC$V_BINIDENT = 4,0,1,0 %; ! Ident is binary longword rather than ASCIC macro EIDC$V_IDMATCH = 4,1,2,0 %; literal EIDC$S_IDMATCH = 2; ! Field for ident match control if binary ident macro EIDC$V_ERRSEV = 4,3,3,0 %; literal EIDC$S_ERRSEV = 3; ! Error severity (default is warning-0) ! Match control values macro EIDC$B_NAMLNG = 8,0,8,0 %; ! Length of entity name macro EIDC$T_NAME = 9,0,0,0 %; ! ! Followed by entity name ! Followed by byte of length of name of object ! Followed by the object name ! Followed by ! byte of ident length ! ident string (length = string length) ! or ! ident binary value (length = 4) !*** MODULE $ETIRDEF *** ! ! EVAX Text, information and relocation record (ETIR) ! literal ETIR$C_MINSTACOD = 0; ! Minimum store code literal ETIR$C_STA_GBL = 0; ! Stack global symbol value literal ETIR$C_STA_LW = 1; ! Stack longword literal ETIR$C_STA_QW = 2; ! Stack quadword literal ETIR$C_STA_PQ = 3; ! Stack psect base plus quadword offset literal ETIR$C_STA_LI = 4; ! Stack literal literal ETIR$C_STA_MOD = 5; ! Stack module literal ETIR$C_STA_CKARG = 6; ! Check Arguments literal ETIR$C_MAXSTACOD = 6; ! Maximum stack code literal ETIR$C_MINSTOCOD = 50; ! Minimum store code literal ETIR$C_STO_B = 50; ! Store byte literal ETIR$C_STO_W = 51; ! Store word literal ETIR$C_STO_LW = 52; ! Store longword literal ETIR$C_STO_QW = 53; ! Store quadword literal ETIR$C_STO_IMMR = 54; ! Store immediate Repeated literal ETIR$C_STO_GBL = 55; ! Store global literal ETIR$C_STO_CA = 56; ! Store code address literal ETIR$C_STO_RB = 57; ! Store relative branch literal ETIR$C_STO_AB = 58; ! Store absolute branch literal ETIR$C_STO_OFF = 59; ! Store offset within psect literal ETIR$C_STO_IMM = 61; ! Store immediate literal ETIR$C_STO_GBL_LW = 62; ! Store global Longword ! STO_LP_PSB not valid in level 2 use STC_LP_PSB literal ETIR$C_STO_BR_GBL = 64; ! Store 21 bit displayment to global address literal ETIR$C_STO_BR_PS = 65; ! Store 21 bit displayment to psect + offset literal ETIR$C_MAXSTOCOD = 65; ! Maximum store code literal ETIR$C_MINOPRCOD = 100; ! Minimum operate code literal ETIR$C_OPR_NOP = 100; ! No-op literal ETIR$C_OPR_ADD = 101; ! Add literal ETIR$C_OPR_SUB = 102; ! Subtract literal ETIR$C_OPR_MUL = 103; ! Multiply literal ETIR$C_OPR_DIV = 104; ! Divide literal ETIR$C_OPR_AND = 105; ! Logical AND literal ETIR$C_OPR_IOR = 106; ! Logical inclusive OR literal ETIR$C_OPR_EOR = 107; ! Logical exclusive OR literal ETIR$C_OPR_NEG = 108; ! Negate literal ETIR$C_OPR_COM = 109; ! Complement literal ETIR$C_OPR_INSV = 110; ! Insert bit field literal ETIR$C_OPR_ASH = 111; ! Arithmetic shift literal ETIR$C_OPR_USH = 112; ! Unsigned shift literal ETIR$C_OPR_ROT = 113; ! Rotate literal ETIR$C_OPR_SEL = 114; ! Select one of three longwords on top of stack literal ETIR$C_OPR_REDEF = 115; ! Redefine this symbol after pass 2 literal ETIR$C_OPR_DFLIT = 116; ! Define a literal literal ETIR$C_MAXOPRCOD = 116; ! Maximum operate code literal ETIR$C_MINCTLCOD = 150; ! Minimum control code literal ETIR$C_CTL_SETRB = 150; ! Set relocation base literal ETIR$C_CTL_AUGRB = 151; ! Augment relocation base literal ETIR$C_CTL_DFLOC = 152; ! Define debug location literal ETIR$C_CTL_STLOC = 153; ! Set debug location literal ETIR$C_CTL_STKDL = 154; ! Stack debug location literal ETIR$C_MAXCTLCOD = 154; ! Maximum control code literal ETIR$C_MINSTCCOD = 200; ! Minimum store-conditional code literal ETIR$C_STC_LP = 200; ! Store-conditional Linkage Pair literal ETIR$C_STC_LP_PSB = 201; ! Store-conditional Linkage Pair with Procedure Signature literal ETIR$C_STC_GBL = 202; ! Store-conditional Address at global address literal ETIR$C_STC_GCA = 203; ! Store-conditional Code Address at global address literal ETIR$C_STC_PS = 204; ! Store-conditional Address at psect + offset literal ETIR$C_STC_NOP_GBL = 205; ! Store-conditional NOP at address of global literal ETIR$C_STC_NOP_PS = 206; ! Store-conditional NOP at pect + offset literal ETIR$C_STC_BSR_GBL = 207; ! Store-conditional BSR at global address literal ETIR$C_STC_BSR_PS = 208; ! Store-conditional BSR at pect + offset literal ETIR$C_STC_LDA_GBL = 209; ! Store-conditional LDA at global address literal ETIR$C_STC_LDA_PS = 210; ! Store-conditional LDA at psect + offset literal ETIR$C_STC_BOH_GBL = 211; ! Store-conditional BSR or Hint at global address literal ETIR$C_STC_BOH_PS = 212; ! Store-conditional BSR or Hint at pect + offset literal ETIR$C_STC_NBH_GBL = 213; ! Store-conditional NOP,BSR or HINT at global address literal ETIR$C_STC_NBH_PS = 214; ! Store-conditional NOP,BSR or HINT at psect + offset literal ETIR$C_MAXSTCCOD = 214; ! Maximum store-conditional code ! ******************************************************************************************************** literal ETIR$S_ETIRDEF = 4; macro ETIR$W_RECTYP = 0,0,16,0 %; ! Record type (OBJ$C_ETIR) macro ETIR$W_SIZE = 2,0,16,0 %; ! Record size ! Define relocation commands ! ETIR descriptions ! ! ! MNEUMONIC DESCRIPTION FORMAT STACK EFFECT ! --------- ----------- ------ ------------ ! 0 2 4 6 8 12 16 20 24 ! | | | | | | | | | ! v v v v v v v v v ! ! STA_GBL pushes symbol value on stack |type|size|counted string... +1 ! ! STA_LW pushes longword value on stack |type|size|longword | +1 ! ! STA_QW pushes quadword value on stack |type|size| quadword | +1 ! ! STA_PQ pushes image offset associated |type|size| psect | quadword | +1 ! with psect index + quadword ! offset on stack ! STA_LI pushes literal value on stack |type|size|counted string... +1 ! ! STA_MOD pushes image offset associated |type|size|counted string... +1 ! with module on stack ! ! STA_CKARG compares poped stack element to |type|size|counted string... 0 ! symbol value and pushes result ! on stack ! ! STO_B pops stack and stores low byte |type|size| -1 ! at location pointer ! ! STO_W pops stack and stores low word |type|size| -1 ! at location pointer ! ! STO_LW pops stack and stores low |type|size| -1 ! longword at location pointer ! ! STO_QW pops stack and stores qwadword |type|size| -1 ! at location pointer ! ! STO_GBL stores value associated with |type|size|counted string... 0 ! global symbol at location ! pointer ! ! STO_CA stores contents of value |type|size|counted string... 0 ! associated with global symbol ! +8 at location pointer ! ! STO_RB adds offset from location |type|size|psect| quadword | 0 ! pointer to image offset value ! associated with psect index + ! quadword offset to low word ! at location pointer ! ! STO_AB stores value associated with |type|size|counted string... 0 ! global symbol in low 21 bits ! at location pointer ! ! STO_OFF pops offset into image from |type|size| -1 ! stack and stores the value in ! the linker's location counter ! ! STO_IMMR pops repeat count and stores |type|size| size |immediate... -1 ! this number of immediates at ! location counter ! ! STO_LP stores code address at |type|size|counted string... 0 ! location pointer and global ! symbol value at location ! pointer + 8 ! ! STO_IMM stores this number of |type|size| size |immediate... 0 ! immediates at location counter ! ! STO_GBL_LW stores low order 32 bits of |type|size|counted string... 0 ! value associated with global ! symbol at location pointer ! ! STO_LP_PSB stores code address at |type|size|counted string...|size|signature block...| 0 ! location pointer and global ! symbol value at location ! pointer + 8 and signature ! information in fixup section ! (following the LP_PSB fixups). ! ! STO_BR_GBL Store low order 23 bits as |type|size|ps1 |off1 |ps2 |off2 | ! signed offset from virtual |counted string 0 ! address signified by ps2 + ! off2 to virtual address of ! global symbol shifted two bits ! to the right into the 21 bit ! displacement field of instruction ! at location ps1 + off1. ! ! STO_BR_PS Store low order 23 bits as |type|size|ps1 |off1 |ps2 |off2 | ! signed offset from virtual |ps3 |off3 | 0 ! address signified by ps2 + ! off2 to virtual address ! signified by ps3 + off3 shifted ! two bits to the right into ! the 21 bit displacement field ! of instruction at location ! ps1 + off1. ! ! OPR_NOP nothing |type|size| 0 ! ! OPR_ADD pop two elements from stack |type|size| -1 ! adds and push results ! ! OPR_SUB pop two elements from stack |type|size| -1 ! subtracts and push results ! ! OPR_MUL pop two elements from stack |type|size| -1 ! multiplys and push results ! ! OPR_DIV pop two elements from stack |type|size| -1 ! divides and push results ! ! OPR_AND pop two elements from stack |type|size| -1 ! ANDs and push results ! ! OPR_IOR pop two elements from stack |type|size| -1 ! inclusive ors and push results ! ! OPR_EOR pop two elements from stack |type|size| -1 ! exclusive ors and push results ! ! OPR_NEG pop one element from stack |type|size| 0 ! negates and push results ! ! OPR_COM pop one element from stack |type|size| 0 ! compliments and push results ! ! OPR_INSV pop two elements from stack |type|size| -1 ! inserts bit field from first ! into second and push results ! ! OPR_USH pop two elements from stack |type|size| -1 ! unsigned shift and push results ! ! OPR_ASH pop two elements from stack |type|size| -1 ! arithmetic shift and push ! results ! ! OPR_ROT pop two elements from stack |type|size| -1 ! rotate and push results ! ! OPR_SEL pop three elements from stack |type|size| -2 ! if first is true ! then push third ! else push second ! ! OPR_REDEF pop value from stack and |type|size|counted string... -1 ! assign this value to global ! symbol ! ! OPR_DFLIT pop value from stack and |type|size|counted string... -1 ! assign this value to literal ! ! ! CTL_SETRB pop value from stack and move |type|size| -1 ! to location pointer ! ! CTL_AUGRB add quadword to location |type|size| quadword | 0 ! pointer ! ! CTL_DFLOC pop index from stack and save |type|size| quadword index | -1 ! current location pointer in ! debug table using index ! ! CTL_STLOC pop index from stack, get |type|size| quadword index | -1 ! saved location pointer in ! debug table using index and ! move it to current location ! pointer ! ! CTL_STKDL pop index from stack, get |type|size| quadword index | 0 ! saved location pointer in ! debug table using index and ! push it ! ! ! MNEUMONIC DESCRIPTION FORMAT STACK EFFECT ! --------- ----------- ------ ------------ ! 0 2 4 6 8 12 16 20 24 ! | | | | | | | | | ! v v v v v v v v v ! ! STC_LP If the linkage pair specified |type|size|lp index |counted string... 0 ! by the index is referenced, ! i.e. all instructions ref'ing ! it weren't successfully replaced ! by other STC_** commands, then ! store code address at location ! pointer and global symbol value ! at location pointer + 8. ! ! STC_LP_PSB If the linkage pair specified |type|size|lp index |counted string...|- 0 ! by the index is referenced, |size|signature block...| ! i.e. all instructions ref'ing ! it weren't successfully replaced ! by other STC_** commands, then ! store code address at location ! pointer and global symbol value ! at location pointer + 8. Store ! signature information in fixup ! section following the LP_PSB ! fixups. ! ! STC_GBL store value associated with |type|size|lp index |counted string... 0 ! global symbol (if norm bit is ! set this is the procedure desc. ! address) in the linkage pair ! pointed to by the index only ! if that part of the lp is referenced. ! When the norm bit is set the index will ! point to the second quadword of ! the linkage pair. ! ! STC_GCA store the value from the field |type|size|lp index |counted string... 0 ! ESDF$L_LP_1 of the global ! symbol in the linkage pair ! pointed to by the index only ! if that part of the lp is referenced. ! The global symbol must be a procedure, ! and the norm bit must be set. ! The lp index must point to the ! first quadword of the linkage pair. ! ! ! STC_PS store the address associated |type|size|lp index |psct|qw offset| 0 ! with the psect + offset in the ! lp pointed to by the index. ! The index may point to either ! quadword. ! ! STC_NOP_GBL Store a NOP (specified by the |type|size|lp index |psc1|qw off1 | - ! compiler) at the location |repl inst|psc2|qw off2 |counted string 0 ! pointed to by PS1, offset1 ! if the displacement from ! ps2, offset2 to the value in ! the EGSY$L_LP_1 field of the ! global symbol + its psect base ! can be squished into 21 bits. ! ! ! STC_NOP_PS Store a NOP (specified by the |type|size|lp index |psc1|qw off1 | - ! compiler) at the location |repl inst|psc2|qw off2 | - ! pointed to by PS1, offset1 |psc3|qw off3 | 0 ! if the displacement from ! ps2, offset2 to ps3,offset3 ! can be squished into 21 bits. ! ! STC_BSR_GBL Store a BSR (specified in |type|size|lp index |psc1|qw off1 | - ! repl inst) at the location |repl inst|psc2|qw off2 |counted string 0 ! pointed to by PS1, offset1 ! if the displacement from ! ps2, offset2 to the value in ! the EGSY$L_LP_1 field of the ! global symbol + its psect base ! can be squished into 21 bits. ! Insert the 21 bit displacement ! into the instruction. ! ! STC_BSR_PS Store a BSR (specified in |type|size|lp index |psc1|qw off1 | - ! repl inst) at the location |repl inst|psc2|qw off2 | - ! pointed to by PS1, offset1 |psc3|qw off3 | 0 ! if the displacement from ! ps2, offset2 to ps3,offset3 ! can be squished into 21 bits. ! Insert the 21 bit displacement ! into the instruction. ! ! STC_LDA_GBL Store a LDA (specified in |type|size|lp index |psc1|qw off1 | - ! repl inst) at the location |repl inst|psc2|qw off2 |counted string 0 ! pointed to by PS1, offset1 ! if the displacement from ! ps2, offset2 to the value in ! the EGSY$L_VALUE field of the ! global symbol + its psect base ! can be squished into 16 bits. ! The global symbol cannot be from ! a shareable image. ! Insert the 16 bit displacement ! into the instruction. ! The index is only nonzero if the ! instruction being replaced refs ! a linkage pair. ! ! STC_LDA_PS Store a LDA (specified in |type|size|lp index |psc1|qw off1 | - ! repl inst) at the location |repl inst|psc2|qw off2 | - ! pointed to by PS1, offset1 |psc3|qw off3 | 0 ! if the displacement from ! ps2, offset2 to ps3,offset3 ! can be squished into 16 bits. ! PS3 cannot be a shareable image psect. ! Insert the 16 bit displacement ! into the instruction. ! The index is only nonzero if the ! instruction being replaced refs ! a linkage pair. ! ! STC_BOH_GBL Store a BSR (specified in |type|size|lp index |ps1 |qw off1 | - ! repl inst) at the location |repl inst|ps2 |qw off2 |counted string 0 ! pointed to by ps1, off1 ! if the displacement from ! ps2, off2 to the value in ! the EGSY$L_LP_1 field of the ! global symbol + its psect base ! can be squished into 21 bits. ! Insert the 21 bit displacement ! into the instruction. If the ! displacement is too large, then ! store the low order 16 bits of ! the virtual address of the global ! symbol shifted two bits to the ! right into the location ! ps1 + off1. ! ! STC_BOH_PS Store a BSR (specified in |type|size|lp index |ps1 |qw off1 | - ! repl inst) at the location |repl inst|ps2 |qw off2 | - ! pointed to by PS1, off1 |ps3 |qw off3 | 0 ! if the displacement from ! ps2, off2 to ps3,off3 ! can be squished into 21 bits. ! Insert the 21 bit displacement ! into the instruction. If the ! displacement is too large, then ! store the low order 16 bits of ! the virtual address of the global ! symbol shifted two bits to the ! right into the location ! ps1, off1. ! ! STC_NBH_GBL Equivalent to STC_NOP_GBL, |type|size|lp index |ps1 |qw off1 | - ! index, ps1, off1, ins1, ps2, |repl ins1|ps2 |qw off2 | - ! off2 + 4, counted string, |repl ins2|counted string... 0 ! followed by STC_BOH_GBL, index, ! ps2, off2, ins2, ps2, off2 + 4, ! counted string. ! Implicit assumption is that ! the original instructions (LDQ, JSR) ! are contiguous. ! ! STC_NBH_PS Equivalent to STC_NOP_PS, |type|size|lp index |ps1 |qw off1 | - ! index, ps1, off1, ins1, ps2, |repl ins1|ps2 |qw off2 | - ! off2 + 4, ps3, off3, |repl ins2|ps3 |qw off3 | 0 ! followed by STC_BOH_PS, index, ! ps2, off2, ins2, ps2, off2 + 4, ! ps3, off3. ! Implicit assumption is that ! the original instructions (LDQ, JSR) ! are contiguous. ! ! *********************************************************************************************** ! ! ---- < End of module OBJFMT.R32 - 12-AUG-2010 13:57:04.00 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:58 by OpenVMS SDL EV3-3 ! Source: 20-JUL-1998 11:51:29 $1$DGA7361:[STARLET.SRC]OPCDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $OPCDEF *** literal OPC$_RQ_TERME = 1; ! ENABLE TERMINAL literal OPC$_RQ_LOGI = 2; ! INITIALIZE THE LOG literal OPC$_RQ_RQST = 3; ! OPERATOR REQUEST literal OPC$_RQ_REPLY = 4; ! OPERATOR REPLY literal OPC$_RQ_CANCEL = 5; ! CANCEL REQUEST literal OPC$_RQ_STATUS = 6; ! REQUEST OPERATOR STATUS literal OPC$_RQ_SECURITY = 7; ! MESSAGE TO SECURITY OPERATOR literal OPC$_RQ_LICENSE = 8; ! MESSAGE TO LICENSE OPERATOR literal OPC$M_RQ_NOOCS = 128; literal OPC$M_NM_CENTRL = %X'1'; literal OPC$M_NM_PRINT = %X'2'; literal OPC$M_NM_TAPES = %X'4'; literal OPC$M_NM_DISKS = %X'8'; literal OPC$M_NM_DEVICE = %X'10'; literal OPC$M_NM_CARDS = %X'20'; literal OPC$M_NM_NTWORK = %X'40'; literal OPC$M_NM_CLUSTER = %X'80'; literal OPC$M_NM_SECURITY = %X'100'; literal OPC$M_NM_REPLY = %X'200'; literal OPC$M_NM_SOFTWARE = %X'400'; literal OPC$M_NM_LICENSE = %X'800'; literal OPC$M_NM_OPER1 = %X'1000'; literal OPC$M_NM_OPER2 = %X'2000'; literal OPC$M_NM_OPER3 = %X'4000'; literal OPC$M_NM_OPER4 = %X'8000'; literal OPC$M_NM_OPER5 = %X'10000'; literal OPC$M_NM_OPER6 = %X'20000'; literal OPC$M_NM_OPER7 = %X'40000'; literal OPC$M_NM_OPER8 = %X'80000'; literal OPC$M_NM_OPER9 = %X'100000'; literal OPC$M_NM_OPER10 = %X'200000'; literal OPC$M_NM_OPER11 = %X'400000'; literal OPC$M_NM_OPER12 = %X'800000'; literal OPC$S_OPCDEF = 158; macro OPC$B_MS_TYPE = 0,0,8,0 %; ! MESSAGE TYPE macro OPC$R_MS_C_T_S_OVERLAY = 1,0,24,0 %; ! Class-Target-Status macro OPC$R_MS_TARG_STAT_OVERLAY = 1,0,24,0 %; macro OPC$R_MS_TARGET_OVERLAY = 1,0,8,0 %; macro OPC$B_MS_TARGET = 1,0,8,0 %; ! MESSAGE TARGET macro OPC$B_MS_ENAB = 1,0,8,0 %; ! MESSAGE ENABLES macro OPC$W_MS_STATUS = 2,0,16,0 %; ! MESSAGE STATUS macro OPC$Z_MS_TARGET_CLASSES = 1,0,24,0 %; literal OPC$S_MS_TARGET_CLASSES = 3; macro OPC$Z_MS_ENAB_TERMINALS = 1,0,24,0 %; literal OPC$S_MS_ENAB_TERMINALS = 3; macro OPC$R_MS_RPLYID_OVERLAY = 4,0,32,0 %; macro OPC$L_MS_RPLYID = 4,0,32,0 %; ! REPLY ID macro OPC$R_MS_MASK_OVERLAY = 4,0,32,0 %; macro OPC$L_MS_MASK = 4,0,32,0 %; ! MESSAGE MASK macro OPC$L_MS_RQSTID = 4,0,32,0 %; ! REQUEST ID macro OPC$R_MS_TEXT_OVERLAY = 8,0,32,0 %; macro OPC$L_MS_TEXT = 8,0,32,0 %; ! MESSAGE TEXT macro OPC$R_MS_TEXT_FIELDS = 8,0,24,0 %; macro OPC$W_MS_OUNIT = 8,0,16,0 %; ! OPERATOR UNIT NUMBER macro OPC$T_MS_ONAME = 10,0,8,0 %; ! OPERATOR NAME macro OPC$L_MS_OTEXT = 26,0,0,0 %; literal OPC$S_MS_OTEXT = 128; ! OPERATOR TEXT macro OPC$R_MS_MAXSZ_OVERLAY = 154,0,32,0 %; macro OPC$L_MS_MAXSZ = 154,0,32,0 %; ! MESSAGE MAX SIZE ! OPERATOR MESSAGE TYPES macro OPC$R_MS_MAXSZ_BITS = 154,0,24,0 %; macro OPC$V_NM_CENTRL = 154,0,1,0 %; ! macro OPC$V_NM_PRINT = 154,1,1,0 %; macro OPC$V_NM_TAPES = 154,2,1,0 %; macro OPC$V_NM_DISKS = 154,3,1,0 %; macro OPC$V_NM_DEVICE = 154,4,1,0 %; macro OPC$V_NM_CARDS = 154,5,1,0 %; macro OPC$V_NM_NTWORK = 154,6,1,0 %; macro OPC$V_NM_CLUSTER = 154,7,1,0 %; macro OPC$V_NM_SECURITY = 154,8,1,0 %; macro OPC$V_NM_REPLY = 154,9,1,0 %; macro OPC$V_NM_SOFTWARE = 154,10,1,0 %; macro OPC$V_NM_LICENSE = 154,11,1,0 %; macro OPC$V_NM_OPER1 = 154,12,1,0 %; macro OPC$V_NM_OPER2 = 154,13,1,0 %; macro OPC$V_NM_OPER3 = 154,14,1,0 %; macro OPC$V_NM_OPER4 = 154,15,1,0 %; macro OPC$V_NM_OPER5 = 154,16,1,0 %; macro OPC$V_NM_OPER6 = 154,17,1,0 %; macro OPC$V_NM_OPER7 = 154,18,1,0 %; macro OPC$V_NM_OPER8 = 154,19,1,0 %; macro OPC$V_NM_OPER9 = 154,20,1,0 %; macro OPC$V_NM_OPER10 = 154,21,1,0 %; macro OPC$V_NM_OPER11 = 154,22,1,0 %; macro OPC$V_NM_OPER12 = 154,23,1,0 %; literal OPC$M_OPR_CENTRAL = %X'1'; literal OPC$M_OPR_PRINTER = %X'2'; literal OPC$M_OPR_TAPES = %X'4'; literal OPC$M_OPR_DISKS = %X'8'; literal OPC$M_OPR_DEVICES = %X'10'; literal OPC$M_OPR_CARDS = %X'20'; literal OPC$M_OPR_NETWORK = %X'40'; literal OPC$M_OPR_CLUSTER = %X'80'; literal OPC$M_OPR_SECURITY = %X'100'; literal OPC$M_OPR_REPLY = %X'200'; literal OPC$M_OPR_SOFTWARE = %X'400'; literal OPC$M_OPR_LICENSE = %X'800'; literal OPC$M_OPR_USER1 = %X'1000'; literal OPC$M_OPR_USER2 = %X'2000'; literal OPC$M_OPR_USER3 = %X'4000'; literal OPC$M_OPR_USER4 = %X'8000'; literal OPC$M_OPR_USER5 = %X'10000'; literal OPC$M_OPR_USER6 = %X'20000'; literal OPC$M_OPR_USER7 = %X'40000'; literal OPC$M_OPR_USER8 = %X'80000'; literal OPC$M_OPR_USER9 = %X'100000'; literal OPC$M_OPR_USER10 = %X'200000'; literal OPC$M_OPR_USER11 = %X'400000'; literal OPC$M_OPR_USER12 = %X'800000'; literal OPC$S_OPC_OPRDEF = 3; macro OPC$V_OPR_CENTRAL = 0,0,1,0 %; macro OPC$V_OPR_PRINTER = 0,1,1,0 %; macro OPC$V_OPR_TAPES = 0,2,1,0 %; macro OPC$V_OPR_DISKS = 0,3,1,0 %; macro OPC$V_OPR_DEVICES = 0,4,1,0 %; macro OPC$V_OPR_CARDS = 0,5,1,0 %; macro OPC$V_OPR_NETWORK = 0,6,1,0 %; macro OPC$V_OPR_CLUSTER = 0,7,1,0 %; macro OPC$V_OPR_SECURITY = 0,8,1,0 %; macro OPC$V_OPR_REPLY = 0,9,1,0 %; macro OPC$V_OPR_SOFTWARE = 0,10,1,0 %; macro OPC$V_OPR_LICENSE = 0,11,1,0 %; macro OPC$V_OPR_USER1 = 0,12,1,0 %; macro OPC$V_OPR_USER2 = 0,13,1,0 %; macro OPC$V_OPR_USER3 = 0,14,1,0 %; macro OPC$V_OPR_USER4 = 0,15,1,0 %; macro OPC$V_OPR_USER5 = 0,16,1,0 %; macro OPC$V_OPR_USER6 = 0,17,1,0 %; macro OPC$V_OPR_USER7 = 0,18,1,0 %; macro OPC$V_OPR_USER8 = 0,19,1,0 %; macro OPC$V_OPR_USER9 = 0,20,1,0 %; macro OPC$V_OPR_USER10 = 0,21,1,0 %; macro OPC$V_OPR_USER11 = 0,22,1,0 %; macro OPC$V_OPR_USER12 = 0,23,1,0 %; literal OPC$K_SYSTEM = 1; literal OPC$K_GROUP = 2; literal OPC$K_USER = 3; literal OPC$K_UNSPEC = 4; literal OPC$C_SYSTEM = 1; literal OPC$C_GROUP = 2; literal OPC$C_USER = 3; literal OPC$C_UNSPEC = 4; literal OPC$K_SW_VERSION = 9; literal OPC$K_MAXREAD = 2560; literal OPC$K_MAXMESSAGE = 2048; literal OPC$K_COMHDRSIZ = 38; literal OPC$_OPCOMERROR = 99999; ! New error message literal OPC$_X_OPRENABLE = 10; literal OPC$_X_LOGFILE = 11; literal OPC$_X_REQUEST = 12; literal OPC$_X_REPLY = 13; literal OPC$_X_CANCEL = 14; literal OPC$_X_STATUS = 15; literal OPC$_X_SHUTDOWN = 16; literal OPC$_X_TIMESTAMP = 17; literal OPC$_X_SECURITY = 18; literal OPC$_X_CLUSMSG = 19; literal OPC$_X_DEBUG = 20; literal OPC$_X_CNXMAN = 21; literal OPC$_X_REQUEST_END_MARK = 22; literal OPC$K_CLM__ACKNOWLEDGEMENT = 1; ! Response to acknowledge request literal OPC$K_CLM__ACKNOWLEDGE_PLEASE = 2; ! Request for remote node to announce itself literal OPC$K_CLM__CANCEL = 3; ! Explicit cancel of request literal OPC$K_CLM__CHECK_OPERATOR = 4; ! Make sure this operator is in the database literal OPC$K_CLM__CHECK_REQUEST = 5; ! Make sure a request is in the database literal OPC$K_CLM__CLUMBX = 6; ! Cluster mailbox message passed from cnxman literal OPC$K_CLM__CLUSTER = 7; ! Cluster status change report literal OPC$K_CLM__DEVICE = 8; ! Device message (on-line, off-line etc) literal OPC$K_CLM__IMP_CANCEL = 9; ! Implicitly cancel a request literal OPC$K_CLM__IMP_DISABLE = 10; ! Implicitly disable an operator literal OPC$K_CLM__OPRENABLE = 11; ! Tell everyone else to enable or disable an operator literal OPC$K_CLM__REPLY = 12; ! REPLY /PEND etc command literal OPC$K_CLM__REPLY_COMPLETE = 13; ! Operator request completed by operator literal OPC$K_CLM__REQUEST = 14; ! Operator request literal OPC$K_CLM__RPYBRD = 15; ! Message from OPCOM to remotes, info for cluster REPLY /TERM, etc literal OPC$K_CLM__RPYBRD_LOCAL = 16; ! Broadcast message from REPLY to OPCOM on local node literal OPC$K_CLM__RPYNOT = 17; ! Reply notifications literal OPC$K_CLM__SECURITY = 18; ! Security alarm from remote literal OPC$K_CLM__SHUTDOWN = 19; ! Shut down operations literal OPC$K_CLM__LOGFILE = 20; ! Enable/disable logfile operator literal OPC$K_CLM__REQUEST_END_MARK = 21; literal OPC$K_HDR_SIZE = 26; ! Size of common header literal OPC$S_HEADER_MESSAGE = 26; macro OPC$B_RQSTCODE = 0,0,8,0 %; ! Request code macro OPC$B_SCOPE = 1,0,8,0 %; ! Request SCOPE macro OPC$L_OPTIONS = 2,0,32,0 %; ! Request independent option bits. macro OPC$L_RQ_OPTIONS = 6,0,32,0 %; ! Request dependent options macro OPC$B_RQOPT_CODE = 6,0,8,0 %; ! a code byte and some fill macro OPC$L_ATTNMASK1 = 10,0,32,0 %; ! Attention mask part 1 macro OPC$L_ATTNMASK2 = 14,0,32,0 %; ! Attention mask part 2 macro OPC$L_RQSTID = 18,0,32,0 %; ! User specified request id # macro OPC$L_UIC = 22,0,32,0 %; ! UIC of requestor literal OPC$M_NOLOG = %X'1'; literal OPC$M_NOBRD = %X'2'; literal OPC$M_NOCLUSTER = %X'4'; literal OPC$S_FILL_0_ = 4; macro OPC$V_NOLOG = 0,0,1,0 %; ! Do not log the action macro OPC$V_NOBRD = 0,1,1,0 %; ! Do not broadcast macro OPC$V_NOCLUSTER = 0,2,1,0 %; ! Do not send to cluster literal OPC$K_OPRENABLE_MIN_SIZE = 30; ! Min message size header + 4 literal OPC$S_OPRENABLE_MESSAGE = 26; macro OPC$T_OPRENABLE_OPR = 26,0,0,0 %; ! Start of oper dev name literal OPC$M_DISABLE = %X'1'; literal OPC$M_PERMOPER = %X'2'; literal OPC$M_NOREMIND = %X'4'; literal OPC$S_FILL_3_ = 4; macro OPC$V_DISABLE = 0,0,1,0 %; macro OPC$V_PERMOPER = 0,1,1,0 %; macro OPC$V_NOREMIND = 0,2,1,0 %; literal OPC$K_LOGFILE_MIN_SIZE = 30; ! Min message size header + 4 literal OPC$K_INITLOG = 0; ! If one is open, close logfile. Open new logfile. literal OPC$K_CLOSELOG = 1; ! Close logfile. literal OPC$K_ENABLELOG = 2; ! If no logfile is open, open a logfile. ! Add classes in ATTNMASK to logfile operator mask. literal OPC$K_DISABLELOG = 3; ! Remove classes in ATTNMASK from logfile operator mask. ! If mask goes to 0, close logfile. literal OPC$K_MAX_LOGOPT = 4; ! One more than maximum allowed literal OPC$S_LOGFILE_MESSAGE = 26; macro OPC$T_LOGFILE_OPR = 26,0,0,0 %; ! Start of oper dev name literal OPC$K_REQUEST_MIN_SIZE = 28; ! Min message size literal OPC$S_REQUEST_MESSAGE = 28; macro OPC$W_REQUEST_LENGTH = 26,0,16,0 %; ! Length of text macro OPC$T_REQUEST_TEXT = 28,0,0,0 %; ! Start of text literal OPC$K_SECURITY_MIN_SIZE = 28; ! Min message size literal OPC$S_SECURITY_MESSAGE = 28; macro OPC$W_SECURITY_LENGTH = 26,0,16,0 %; ! Length of text macro OPC$T_SECURITY_TEXT = 28,0,0,0 %; ! Start of text literal OPC$K_REPLY_MIN_SIZE = 32; literal OPC$S_REPLY_MESSAGE = 26; macro OPC$T_REPLY_OPR = 26,0,0,0 %; literal OPC$K_STATUS_MIN_SIZE = 30; ! Min message size header + 4 literal OPC$S_STATUS_MESSAGE = 26; macro OPC$T_STATUS_OPR = 26,0,0,0 %; ! Start of text literal OPC$K_TIMESTAMP_MIN_SIZE = 26; ! Min message size literal OPC$S_TIMESTAMP_MESSAGE = 26; literal OPC$K_SHUTDOWN_MIN_SIZE = 26; ! Min message size literal OPC$S_SHUTDOWN_MESSAGE = 26; literal OPC$M_CLUSTER = %X'1'; literal OPC$S_FILL_6_ = 4; macro OPC$V_CLUSTER = 0,0,1,0 %; literal OPC$K_CANCEL_MIN_SIZE = 26; ! Min message size literal OPC$S_CANCEL_MESSAGE = 26; literal OPC$M_RQSTDONE = %X'1'; literal OPC$S_FILL_9_ = 4; macro OPC$V_RQSTDONE = 0,0,1,0 %; literal OPCF_ARG$S_OPCF_ARG = 4; macro OPCF_ARG$l_arg_data = 0,0,32,1 %; ! argument data macro OPCF_ARG$r_arg_desc = 0,0,32,0 %; literal OPCF_ARG$s_arg_desc = 4; macro OPCF_ARG$w_arg_offset = 0,0,16,0 %; ! The offset to the argument data macro OPCF_ARG$w_arg_cntrl = 2,0,16,0 %; ! A control code for argument handling ! This structure defines a message sent to OPCOM using the MSG$_OPCFAO message type. literal OPCF$S_OPCFAO = 256; macro OPCF$w_msgtype = 0,0,16,0 %; ! Dispatch message type code macro OPCF$w_spare_1 = 2,0,16,0 %; ! Unused word - alignment macro OPCF$l_opc_msg = 4,0,32,0 %; ! The message file code for msg text macro OPCF$l_opc_class_msk = 8,0,32,0 %; ! The operator class mask macro OPCF$l_arg_count = 12,0,32,0 %; ! The number of arguments macro OPCF$r_variable_data = 16,0,0,0 %; literal OPCF$s_variable_data = 240; macro OPCF$r_item_arg = 16,0,0,0 %; literal OPCF$s_item_arg = 240; ! Argument items macro OPCF$t_item_cd = 16,0,0,0 %; literal OPCF$s_item_cd = 240; ! Argument data - character macro OPCF$l_item_ld = 16,0,0,0 %; literal OPCF$s_item_ld = 240; ! Argument data - long ! OPCFAO option codes. Unless commented otherwise, these codes correspond to ! the equivalent FAO op code (e.g. !AC --> AC, !%T --> T). These codes are ! used as input arguments to exe_std$sndopcfao as controls. literal OPCF$K_AC = 1; literal OPCF$K_AD = 2; literal OPCF$K_AF = 3; literal OPCF$K_AS = 4; literal OPCF$K_AS_DEVICE_NAME = 5; ! Pass UCB for conversion to device name string with descriptor literal OPCF$K_AZ = 6; literal OPCF$K_D = 7; literal OPCF$K_I = 8; literal OPCF$K_OA = 9; literal OPCF$K_OB = 10; literal OPCF$K_OH = 11; literal OPCF$K_OI = 12; literal OPCF$K_OJ = 13; literal OPCF$K_OL = 14; literal OPCF$K_OQ = 15; literal OPCF$K_OW = 16; literal OPCF$K_SA = 17; literal OPCF$K_SB = 18; literal OPCF$K_SH = 19; literal OPCF$K_SI = 20; literal OPCF$K_SJ = 21; literal OPCF$K_SL = 22; literal OPCF$K_SQ = 23; literal OPCF$K_SW = 24; literal OPCF$K_T = 25; literal OPCF$K_U = 26; literal OPCF$K_UA = 27; literal OPCF$K_UB = 28; literal OPCF$K_UH = 29; literal OPCF$K_UI = 30; literal OPCF$K_UJ = 31; literal OPCF$K_UL = 32; literal OPCF$K_UQ = 33; literal OPCF$K_UW = 34; literal OPCF$K_XA = 35; literal OPCF$K_XB = 36; literal OPCF$K_XH = 37; literal OPCF$K_XI = 38; literal OPCF$K_XJ = 39; literal OPCF$K_XL = 40; literal OPCF$K_XQ = 41; literal OPCF$K_XW = 42; literal OPCF$K_ZA = 43; literal OPCF$K_ZB = 44; literal OPCF$K_ZH = 45; literal OPCF$K_ZI = 46; literal OPCF$K_ZJ = 47; literal OPCF$K_ZL = 48; literal OPCF$K_ZQ = 49; literal OPCF$K_ZW = 50; literal OPCF$K_MIN_OPCFAO_CNTRL = 1; literal OPCF$K_MAX_OPCFAO_CNTRL = 50; literal OPCF$K_BY_REF = 1; ! Pass argument by reference literal OPCF$K_BY_VAL = 2; ! Pass argument by value literal OPCF$K_BY_DESC = 3; ! Pass argument by descriptor ! ! ---- < End of module OPCDEF.R32 - 12-AUG-2010 13:57:04.04 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:45 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:53:45 $1$DGA7361:[STARLET.SRC]OPCMSG.SDL;2 ! ******************************************************************************************************************************** !*** MODULE $OPCMSG *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:53:45.01 ! ! OPCMSG.MSG - SYSTEM DEFINITION FILE FOR OPCOM ! ! VERSION: 'X-19' ! ! *********************************************************************************************** ! * * ! * COPYRIGHT 2001,2002 COMPAQ INFORMATION TECHNOLOGIES GROUP, L.P. * ! * * ! * COMPAQ AND THE COMPAQ LOGO ARE TRADEMARKS OF COMPAQ INFORMATION TECHNOLOGIES GROUP, * ! * L.P. IN THE U.S. AND/OR OTHER COUNTRIES. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM COMPAQ REQUIRED FOR POSSESSION, USE OR * ! * COPYING. CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE, * ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL ITEMS ARE LICENSED TO * ! * THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD COMMERCIAL LICENSE. * ! * * ! *********************************************************************************************** ! ++ ! ! FACILITY: VAX/VMS SYSTEM MACRO LIBRARIES ! ! ABSTRACT: ! ! THIS FILE CONTAINS THE SOURCE FOR OPCOM MESSAGES. ! ! ENVIRONMENT: ! ! N/A ! ! -- ! ! ! AUTHOR: THE VMS GROUP CREATION DATE: 1-AUG-1976 ! ! MODIFIED BY: ! ! X-19 RAB0152 ROBERT A. BROOKS 23-FEB-2006 ! ADD SHADISSOLVED, SHAMEMEXPEL, AND SHAMEMDMT ! ! X-18 JJF0317 J. JEFFERY FRIEDRICHS 9-JUN-2005 ! ADD INSAMCVP AND HBMMRESET MESSAGES ! ! X-17 ABP ANU PANT 27-FEB-2003 ! FOR MVSUPMSG, ADD THE NAME OF THE NODE THAT IS IN MOUNT ! VERIFICATION. ! ! X-16 KSG0145 KEVIN GREANEY 11-FEB-2003 ! MOVE MESSAGE MVSUPMSG TO THE BOTTOM OF THE MESSAGE FILE. ! THIS WAY, THE ASSOCIATED MESSAGES NUMBERS WILL STAY THE ! SAME, AND ANY DEPENDENCE ON THOSE MESSAGE NUMBERS WILL NOT ! BE IMPACTED. ! X-15 ABP ANU PANT 22-JAN-2003 ! ADD NEW SUPPRESS MOUNT VERIFICAITON, MVSUPMSG, MESSAGE CODE. ! ! X-14 KSG0143 KEVIN GREANEY 19-MAR-2002 ! FIX THE TEXT IN THE WSINCLUSTER MESSAGE. OPC$ENABLE_OPA0 ! SHOULD BE OPC$OPA0_ENABLE, AND OPC$ENABLE_LOGFILE SHOULD ! BE OPC$LOGFILE_ENABLE. ! ! X-13 RAB010 ROBERT A. BROOKS 31-OCT-2001 ! FOR PATHAUTSW AND PATHMANSW, ADD THE NAME OF THE NODE THAT ! IS SERVING THE OLD AND NEW PATHS. ! ! X-12 KSG0138 KEVIN GREANEY 04-OCT-2000 ! CHANGE THE TEXT IN WSINCLUSTER TO REMOVE THE REFERENCE TO ! WORKSTATION. SINCE MANY ALPHA SERVERS ARE SHIPPING WITH ! GRAPHICS CARDS, THEY ARE SEEN AS WORKSTATIONS BY THE COMMAND ! PROCEDURE VMS$DEVICE_STARTUP.COM. CUSTOMERS MIGHT NOT BE ! HAPPY SEEING THEIR ALPHASERVER REFERRED TO AS A WORKSTATION. ! ! X-11 KSG0137 KEVIN GREANEY 07-SEP-2000 ! MOVE THE MESSAGE ADDED IN X-10 TO THE BOTTOM OF THE FILE. ! THIS WAY, MESSAGES WILL RETAIN THE SAME VALUE IN CASE ! SOMEONE USES THAT INSTEAD OF THE MESSAGE NAME. ! ! X-10 OH OLIVER HELLWIG 30-JUN-2000 ! PTR 75-45-848 & 75-52-354 ! ADD A NEW MESSAGE FOR THE FIBRE CHANNEL DRIVER (FGE) THAT ! IS USED TO TELL THE USER THAT A FIBRE CHANNEL STORAGE DEVICE ! REJECTED THE DRIVER PORT LOGIN. ! ! X-9 KSG0132 KEVIN GREANEY 12-AUG-1999 ! ADD A TRAILING BLANK LINE TO THE WSINCLUSTER MESSAGE ! ADDED BELOW. IT WILL MAKE IT STAND OUT A LITTLE MORE. ! ! X-8 KSG0132 KEVIN GREANEY 08-JUL-1999 ! ADD WSINCLUSTER MESSAGE TO LET USERS KNOW THAT THIS SYSTEM ! IS A WORKSTATION IN A CLUSTER. AND, BY DEFAULT, OPCOM WILL ! NOT ENABLE THE OPERATOR CONSOLE OR LOGFILE. ! ! X-7 KSG KEVIN GREANEY 15-APR-1999 ! ADD THE CODE TO INCLUDE THE STANDARD HEADER IN THE TWO ! MESSAGES THAT WERE ADDED IN EDIT X-6. ! ! ! X-6 KSG KEVIN GREANEY 05-APR-1999 ! ADD OPA0CLERR AND LOGFCLERR ERROR MESSAGES. THIS ! IS PART OF THE FIX FOR CFS.51506/PTR 70-3-112. ! ! NOTE: PATHINUSE WAS NOT ADDED IN EDIT X-5. THE ! REASON FOR THE OMISSION IS NOT KNOWN. ! ! X-5 JMB022 JAMES M. BLUE 14-JUL-1998 ! THE FOLLOWING MESSAGES HAVE BEEN ADDED FOR DK DRIVER - FIBRE ! CHANNEL AND MULTIPATH REQUIREMENTS - ! ! PATHINUSE - ANOTHER WORLD WIDE ID DEVICE IS CURRENTLY ! AT THE SAME PORT, TARGET, LUN COMBINATION. ! PATHNOTAVL - THE SPECIFIED PATH NO LONGER HAS DEVICES ! EITHER ENABLED OR ACCESSIBLE. ! PATHUSERD - THE PATH WAS DISABLED FOR USE BY POLLER. ! PATHAVL - THE SPECIFIED PATH HAS AT LEAST ONE DEVICE ! ENABLED AND ACCESSIBLE. ! PATHAUTSW - THE PATH TO THIS DEVICE HAS BEEN SWITCHED ! AUTOMATICALLY TO A NEW PATH. ! PATHMANSW - THE PATH TO THIS DEVICE HAS BEEN SWITCHED ! MANUALLY TO A NEW PATH. ! ! X-4 KDM0235 KATHLEEN D. MORSE 29-JUL-1993 ! ADD NEW SHADOW MESSAGES: SHANODMP AND SHADMPOK FOR ALPHA. ! ! X-3 DBM0001 DAVID B. MILLER 13-APR-1993 ! BLADE PARITY; MERGE OF LATEST CHANGES: ! ! X-5 JJA92B05_1 JOHN J. ANDRUSZKIEWICZ 21-DEC-1992 ! ALIGN TO EXPECTED VSC GENERATION NUMBER. ! MOVE THOSE VOLUME SHADOWING PHASE II MESSAGES. ! ! X-10 JJA92B05 JOHN J. ANDRUSZKIEWICZ 14-DEC-1992 ! ADD VOLUME SHADOWING PHASE II MESSAGES. ! ! X-2 WES WILLIAM E. SNAMAN 12-JUN-1992 14:32 ! CHANGE VAXCLUSTER TO VMSCLUSTER. FIX IDENT TO MATCH CMS. ! ! X-9 CWH5209 CW HOBBS 8-APR-1989 ! ADD REQUEST NUMBER TO NOPERATOR MESSAGE. ! ! X-8 CWH5208 CW HOBBS 12-MAR-1989 ! ADD A MORE MEANINGFUL MESSAGE FOR "OPCOM not running". ! ! X-7 WES0235 WILLIAM E. SNAMAN 08-JAN-1988 ! FIX SPACING ERROR IN MESSAGE. ! ! X-6 WES0185 WILLIAM E. SNAMAN 02-SEP-1987 ! ADD SOME NEW CLUSTER MESSAGES FOR SERVED QUORUM DISKS. ! ! X-5 WES0171 WILLIAM E. SNAMAN 29-JUL-1987 ! ADD SOME NEW CLUSTER MESSAGES AND FIX MODULE IDENT. ! ! X-2 NCD0001 NANCY C. DENARDO 29-DEC-1986 ! ADD LICENSE OPERATOR CLASS ! ! V04-001 DBM0400 DB MILLS 9-SEP-1985 ! ADD VOLUME SHADOWING MESSAGES. ! ! V03-013 CWH3013 CW HOBBS 2-SEP-1984 ! RESTORE THE EMBEDDED IN RQST_PROMPT WHICH WAS ! REMOVED IN ACG0449. ! ! V03-012 ACG0449 ANDREW C. GOLDSTEIN, 31-AUG-1984 13:41 ! FIX TEXT OF "counterfeit security alarm" MESSAGE ! ! V03-011 CWH3011 CW HOBBS 18-MAY-1984 ! CHANGE THE IN OPREPLY TO A !/ DIRECTIVE. ! ! V03-010 MHB0158 MARK BRAMHALL 7-MAY-1984 ! FIX UP THE SECURITY ALARM MESSAGE. ! ! V03-009 CWH3169 CW HOBBS 5-MAY-1984 ! SECOND PASS FOR CLUSTER-WIDE OPCOM: ! - CHANGE SEVERAL MESSAGES TO USE THE STANDARD HEADER, ONLY ! A FEW STILL USE THE SHORT HEADER. ! - CHANGE THE FORMAT OF THE HEADER SLIGHTLY, MAKE IT MORE ! CLEAR WHEN MESSAGES COME FROM OTHER NODES. ! - REMOVE THE UDA50MVER AND TM78MVER MESSAGES AND REPLACE ! THEM WITH THE SINGLE, GENERIC CTLRUCODE MESSAGE. ! - ADD THE CLU_NOQUORUM CONNECTION MANAGER MESSAGE - IT ! WAS APPARENTLY NEVER PUT IN. ! ! V03-008 CWH3008 CW HOBBS 12-APR-1984 ! CHANGE SOME OF THE CONNECTION MANAGER MESSAGES ! ! V03-007 RSH0114 R. SCOTT HANNA 12_MAR-1984 ! CHANGE THE OPC$_COUNTERFEIT MESSAGE. ! ! V03-006 RSH0110 R. SCOTT HANNA 28-FEB-1984 ! CHANGE THE FAO ARGUMENTS IN THE OPC$_SECUR_ALARM MESSAGE. ! ! V03-005 CWH3005 CW HOBBS 27-SEP-1983 ! IMPROVE CONNECTION MANAGER MESSAGES. ! ! V03-004 CWH3004 CW HOBBS 16-SEP-1983 ! SHORTEN HEADER ! ! V03-003 CWH3003 CW HOBBS 16-SEP-1983 ! ADD CONNECTION MANAGER MESSAGES. ! ! V03-002 CWH3001 CW HOBBS 30-JUL-1983 ! VARIOUS AND SUNDRY THINGS TO MAKE OPCOM DISTRIBUTED ! ACROSS THE CLUSTER. ! ! V03-001 RLRV3A1 ROBERT L. RAPPAPORT 5-APR-1982 ! ADDED MSG$_UDA50MVER AND MSG$_DUPUNITNO. ! ! V02-006 STJ0180 STEVEN T. JEFFREYS, 07-JAN-1981 ! ADDED MVCOMPLETE AND MVABORTED MESSAGES, AND SLIGHTLY ! CHANGE THE TEST OF THE EXISTING MOUNT VERIFICATION MESSAGES. ! ! V02-005 STJ0079 STEVEN T. JEFFREYS, 31-JUL-1981 ! ADDED BLANK MESSAGE FOR THE MAG. TAPE ACP. ! ! V02-004 STJ0063 STEVEN T. JEFFREYS, 14-JUL-1981 ! ADDED AN ALTERNATE CANCEL MESSAGE. ! ADDED AN INITIALIZE MESSAGE FOR THE MAG. TAPE ACP. ! ADDED MESSAGES FOR MOUNT VERIFICATION SUPPORT. ! ! V02-003 STJ0042 STEVEN T. JEFFREYS, 22-MAY-1981 ! CHANGE FORMAT OF RQSTCMPLTE, RQSTABORT, AND RQSTPEND ! TO BE ENABLE EXISTING CODE TO PARSE THE MESSAGES. ! ! V02-002 STJ0028 STEVEN T. JEFFREYS, 29-MAR-1981 ! MODIFY EXISTING MESSAGES AND ADD NEW ONES AS PART OF ! THE SUPPORT FOR THE NEW OPCOM. ! + ! OPERATOR COMMUNICATIONS MESSAGES ! - literal OPC$_FACILITY = 5; literal OPC$_TERMENAB = 360449; literal OPC$_LOGINIT = 360457; literal OPC$_TERMDSBL = 360465; literal OPC$_RQSTABORT = 360476; literal OPC$_RQSTPEND = 360481; literal OPC$_RQSTCMPLTE = 360489; literal OPC$_LOGFAIL = 360500; literal OPC$_TERMFAIL = 360508; literal OPC$_NOSUCHRQST = 360516; literal OPC$_DEVOFFLINE = 360524; literal OPC$_DEVONLINE = 360532; literal OPC$_NOCLI = 360540; literal OPC$_NOPERATOR = 360545; literal OPC$_UNKNOPR = 360556; literal OPC$_DEVNOTERM = 360564; literal OPC$_ILLRQST = 360572; literal OPC$_RQSTCAN = 360580; literal OPC$_OPRNOTIF = 360585; literal OPC$_OPREPLY = 360593; literal OPC$_LOGTIME = 360601; literal OPC$_LOGCLOS = 360612; literal OPC$_USERQST = 360619; literal OPC$_USERMSG = 360627; literal OPC$_LOGSTS = 360635; literal OPC$_OPERSTS = 360643; literal OPC$_RQSTSTST = 360651; literal OPC$_SHUTDOWN = 360659; literal OPC$_SYSTEMOPER = 360667; literal OPC$_GROUPOPER = 360675; literal OPC$_USEROPER = 360683; literal OPC$_NOTENABLED = 360691; ! ! THE FOLLOWING MESSAGES GIVE THE ASCII TEXT FOR THE OPERATOR TYPES. IT IS ! POSSIBLE TO CHANGE THE MESSAGE TEXT TO ANYTHING DESIRED. FOR EXAMPLE, AN ! INSTALLATION MIGHT WANT TO CALL OPER12 BY ANOTHER NAME, SAY FRONT_DESK. ! THAT INSTALLATION WOULD CHANGE THE LINE WITH OPER12 TO READ: ! ! OPER12 ! ! AFTERWARDS, USERS ON THAT SYSTEM COULD REPLY /ENABLE=FRONT_DESK, REQUEST /TO=FRONT, ! A FRONT_DESK OPERATOR COULD DO A REPLY /STAT AND SEE THAT FRONT_DESK WAS ENABLED. ! OF COURSE, A PROGRAMMER ON THAT SYSTEM WOULD USE THE SYMBOL OPC$_OPER12 TO SEND ! A MESSAGE TO THE FRONT_DESK, SINCE THE MESSAGE NAME CAN NOT BE CHANGED. ! literal OPC$_CENTRL = 360699; literal OPC$_PRINT = 360707; literal OPC$_TAPES = 360715; literal OPC$_DISKS = 360723; literal OPC$_DEVICE = 360731; literal OPC$_CARDS = 360739; literal OPC$_NTWORK = 360747; literal OPC$_CLUSTER = 360755; literal OPC$_SECURITY = 360763; literal OPC$_REPLY = 360771; literal OPC$_SOFTWARE = 360779; literal OPC$_LICENSE = 360787; literal OPC$_OPER1 = 360795; literal OPC$_OPER2 = 360803; literal OPC$_OPER3 = 360811; literal OPC$_OPER4 = 360819; literal OPC$_OPER5 = 360827; literal OPC$_OPER6 = 360835; literal OPC$_OPER7 = 360843; literal OPC$_OPER8 = 360851; literal OPC$_OPER9 = 360859; literal OPC$_OPER10 = 360867; literal OPC$_OPER11 = 360875; literal OPC$_OPER12 = 360883; ! literal OPC$_DEVOFFLINX = 360891; literal OPC$_WRONGVOL = 360899; literal OPC$_DEVWRTLCK = 360907; ! literal OPC$_INITAPE = 360915; literal OPC$_RQSTDONE = 360923; literal OPC$_BLANKTAPE = 360931; ! literal OPC$_MVCOMPLETE = 360939; literal OPC$_MVABORTED = 360947; literal OPC$_CTLRUCODE = 360955; literal OPC$_DUPUNITNO = 360963; literal OPC$_SECUR_ALARM = 360971; literal OPC$_COUNTERFEIT = 360979; literal OPC$_NODE_ACTIVE = 360987; literal OPC$_NODE_DELETE = 360995; literal OPC$_NODE_DEPARTED = 361003; literal OPC$_NODE_INIT = 361011; literal OPC$_NODE_RETRY = 361019; literal OPC$_NODE_START = 361027; literal OPC$_UNKNOWN = 361035; literal OPC$_CLUSCOMM = 361043; literal OPC$_VALUERR = 361052; literal OPC$_NOTRQCB = 361060; literal OPC$_REPLY_GENERAL = 361067; literal OPC$_REPLY_SHUTDOWN = 361075; literal OPC$_REPLY_URGENT = 361083; literal OPC$_REPLY_NOTALL = 361091; literal OPC$_REPLY_NOTALLN = 361099; literal OPC$_REPLY_NOTDEV = 361107; literal OPC$_REPLY_NOTUSE = 361115; literal OPC$_REPLY_NOTUSEN = 361123; literal OPC$_ON_NODE = 361131; ! PREPOSITION FOR "on nodename" ("on ATHENS") MESSAGES literal OPC$_HEADER = 361139; literal OPC$_RQST_PROMPT = 361147; literal OPC$_NOLCLBROAD = 361152; literal OPC$_NOREMBROAD = 361160; literal OPC$_NOREMWAIT = 361168; ! ! CLUSTER MAILBOX MESSAGES ! FAO PARAMETER LIST IS: ! ! TIMESTAMP - POINTER TO QUADWORD TIME ! LSYSNAML - LENGTH OF NAME OF LOCAL SYSTEM ! LSYSNAMA - ADDRESS OF NAME OF LOCAL SYSTEM ! LSYSIDW - HIGH ORDER WORD OF LOCAL SYSTEM ID ! LSYSIDL - LOW ORDER LONGWORD OF LOCAL SYSTEM ID ! LCSID - LOCAL SYSTEM CSID ! RSYSNAML - LENGTH OF NAME OF REMOTE SYSTEM ! RSYSNAMA - ADDRESS OF NAME OF REMOTE SYSTEM ! RSYSIDW - HIGH ORDER WORD OF REMOTE SYSTEM ID ! RSYSIDL - LOW ORDER LONGWORD OF REMOTE SYSTEM ID ! RCSID - REMOTE SYSTEM CSID ! ! MESSAGES USE THE "!+" DIRECTIVE TO SKIP OVER ITEMS WHICH ! ARE NOT MEANINGFUL OR USEFUL FOR A PARTICULAR MESSAGE. ! literal OPC$_CLU_NEWSYS = 361179; literal OPC$_CLU_CNX = 361187; literal OPC$_CLU_RECNX = 361195; literal OPC$_CLU_LOSTCNX = 361203; literal OPC$_CLU_TIMCNX = 361211; literal OPC$_CLU_INIFORM = 361219; literal OPC$_CLU_INIADD = 361227; literal OPC$_CLU_INIRECNFIG = 361235; literal OPC$_CLU_MEMREQ = 361243; literal OPC$_CLU_ABORT = 361251; literal OPC$_CLU_ADD = 361259; literal OPC$_CLU_DROPNODE = 361267; literal OPC$_CLU_FORNCLUS = 361275; literal OPC$_CLU_INQUORUM = 361283; literal OPC$_CLU_LOSTDISK = 361291; literal OPC$_CLU_GAINDISK = 361299; literal OPC$_CLU_DISKRDERR = 361307; literal OPC$_CLU_DISKWRERR = 361315; literal OPC$_CLU_DISKINVDAT = 361323; literal OPC$_CLU_DISKTIMEOUT = 361331; literal OPC$_CLU_LOSTMSG = 361339; literal OPC$_CLU_NOQUORUM = 361347; literal OPC$_CLU_FORNDISK = 361355; literal OPC$_CLU_COMPLETE = 361363; literal OPC$_CLU_QUORUM = 361371; literal OPC$_CLU_ECNX = 361379; literal OPC$_CLU_HAVEDISK = 361387; literal OPC$_CLU_REMOTE = 361395; literal OPC$_CLU_LOCAL = 361403; literal OPC$_CLU_WTCHTIMEOUT = 361411; literal OPC$_CLU_NOTRUST = 361419; ! ! FOLLOWING ARE DEVICE MESSAGE FOR SHADOWING. ! literal OPC$_SHACHASTA = 361427; literal OPC$_SHAMEMFAL = 361435; literal OPC$_SHARDUCED = 361443; literal OPC$_SHACOPCOM = 361451; literal OPC$_SHACOPBEG = 361459; literal OPC$_SHAALLCOM = 361467; literal OPC$_SHAWROMEM = 361475; literal OPC$_SHAREDZER = 361483; literal OPC$_SHAPOSMEM = 361491; literal OPC$_SHAORGMEM = 361499; literal OPC$_NOOPCOM = 361504; ! FOLLOWING ARE MORE DEVICE MESSAGE FOR SHADOWING. ! literal OPC$_SHAADPBAD = 361515; literal OPC$_SHAEMUPTH = 361523; literal OPC$_SHABENODMP = 361531; literal OPC$_SHABNODMP = 361539; literal OPC$_SHALOCDEV = 361547; literal OPC$_SHANOBPOK = 361555; literal OPC$_SHABDMPOK = 361563; literal OPC$_BOOTDMPOK = 361571; literal OPC$_SHABDBCK = 361579; literal OPC$_SHANODMP = 361587; literal OPC$_SHADMPOK = 361595; ! THE FOLLOWING MESSAGES ARE FOR FIBRE CHANNEL - MULTIPATH ! literal OPC$_PATHNOTAVL = 361603; literal OPC$_PATHAVL = 361611; literal OPC$_PATHUSERD = 361619; literal OPC$_PATHAUTSW = 361627; literal OPC$_PATHMANSW = 361635; literal OPC$_OPA0CLERR = 361640; literal OPC$_LOGFCLERR = 361648; literal OPC$_WSINCLUSTER = 361659; literal OPC$_LOGIN_REJECTED = 361664; literal OPC$_MVSUPMSG = 361675; literal OPC$_INSAMCVP = 361683; literal OPC$_HBMMRESET = 361691; literal OPC$_SHADISSOLVED = 361699; literal OPC$_SHAMEMEXPEL = 361707; literal OPC$_SHAMEMDMT = 361715; ! ! ---- < End of module OPCMSG.B32 - 12-AUG-2010 13:57:04.10 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:22 by OpenVMS SDL EV3-3 ! Source: 30-AUG-1993 14:29:13 $1$DGA7361:[STARLET.SRC]PPL$DEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE PPL$DEF *** ! Definitions for RTL Parallel Processing Facility - PPL ! ! Pre-defined event ids. ! literal PPL$K_ABNORMAL_EXIT = -2; ! abnormal participant termination literal PPL$K_NORMAL_EXIT = -1; ! normal participant termination ! ! Shared memory options flags. ! literal PPL$M_NOZERO = %X'1'; literal PPL$M_NOWRT = %X'2'; literal PPL$M_FLUSH = %X'4'; literal PPL$M_NOUNI = %X'8'; literal PPL$m_mopt_spare = %X'FFFFFFF0'; literal PPL$S_mem_options = 4; macro PPL$V_NOZERO = 0,0,1,0 %; ! not demand-zero macro PPL$V_NOWRT = 0,1,1,0 %; ! read-only macro PPL$V_FLUSH = 0,2,1,0 %; ! write to disk macro PPL$V_NOUNI = 0,3,1,0 %; ! non-unique name not requested macro PPL$v_mopt_spare = 0,4,28,0 %; literal PPL$s_mopt_spare = 28; ! extra bits ! ! Processing options flags. ! literal PPL$M_INIT_SYNCH = %X'1'; literal PPL$M_NODEBUG = %X'2'; literal PPL$M_STOP_CHILDREN = %X'4'; literal PPL$M_NON_BLOCKING = %X'8'; literal PPL$M_NOTIFY_ONE = %X'10'; literal PPL$M_SPIN_WAIT = %X'20'; literal PPL$M_FORMONLY = %X'40'; literal PPL$M_JOINONLY = %X'80'; literal PPL$M_PERM = %X'100'; literal PPL$M_SYSTEM = %X'200'; literal PPL$M_DELETEALL = %X'400'; literal PPL$M_TAILFIRST = %X'800'; literal PPL$M_ATHEAD = %X'1000'; literal PPL$M_FROMTAIL = %X'2000'; literal PPL$M_FORCEDEL = %X'4000'; literal PPL$M_NOCLISYM = %X'8000'; literal PPL$M_NOLOGNAM = %X'10000'; literal PPL$M_NOKEYPAD = %X'20000'; literal PPL$M_NOTIFY = %X'40000'; literal PPL$M_NOCONTROL = %X'80000'; literal PPL$M_CALL_UNIQUE = %X'100000'; literal PPL$M_PROC_UNIQUE = %X'200000'; literal PPL$M_SPIN_COUNTED = %X'400000'; literal PPL$M_NOSAVE_PROC_INFO = %X'800000'; literal PPL$M_IGNORE_EXITS = %X'1000000'; literal PPL$m_popt_spare = %X'FE000000'; literal PPL$S_proc_options = 4; macro PPL$V_INIT_SYNCH = 0,0,1,0 %; ! parent blocks until children init macro PPL$V_NODEBUG = 0,1,1,0 %; ! disable DEBUG macro PPL$V_STOP_CHILDREN = 0,2,1,0 %; ! stop children of terminating process macro PPL$V_NON_BLOCKING = 0,3,1,0 %; ! don't block if semaphore unavailable macro PPL$V_NOTIFY_ONE = 0,4,1,0 %; ! notify only one enabler for event macro PPL$V_SPIN_WAIT = 0,5,1,0 %; ! spin rather than $HIBER macro PPL$V_FORMONLY = 0,6,1,0 %; ! Only form (do not join) a new appl. macro PPL$V_JOINONLY = 0,7,1,0 %; ! Only join (do not form) a new appl. macro PPL$V_PERM = 0,8,1,0 %; ! Create a permanent application macro PPL$V_SYSTEM = 0,9,1,0 %; ! Create a system-wide application macro PPL$V_DELETEALL = 0,10,1,0 %; ! Delete all corresponding work items macro PPL$V_TAILFIRST = 0,11,1,0 %; ! Delete from tail of queue macro PPL$V_ATHEAD = 0,12,1,0 %; ! Insert at the head of queue macro PPL$V_FROMTAIL = 0,13,1,0 %; ! Remove from tail of queue macro PPL$V_FORCEDEL = 0,14,1,0 %; ! Force deletion of work queue macro PPL$V_NOCLISYM = 0,15,1,0 %; ! Do not inherit parent's CLI symbols macro PPL$V_NOLOGNAM = 0,16,1,0 %; ! Do not inherit parent's logicals macro PPL$V_NOKEYPAD = 0,17,1,0 %; ! Inherit parent's keypad state & defs macro PPL$V_NOTIFY = 0,18,1,0 %; ! Broadcast message on child terminate macro PPL$V_NOCONTROL = 0,19,1,0 %; ! No carriage control prefix on prompt macro PPL$V_CALL_UNIQUE = 0,20,1,0 %; ! Request call unique name macro PPL$V_PROC_UNIQUE = 0,21,1,0 %; ! Request process unique name macro PPL$V_SPIN_COUNTED = 0,22,1,0 %; ! Spin for counted period before hiber macro PPL$V_NOSAVE_PROC_INFO = 0,23,1,0 %; macro PPL$V_IGNORE_EXITS = 0,24,1,0 %; macro PPL$v_popt_spare = 0,25,7,0 %; literal PPL$s_popt_spare = 7; ! extra bits ! ! ---- < End of module PPL$DEF.R32 - 12-AUG-2010 13:57:04.16 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:15 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:15 $1$DGA7361:[STARLET.SRC]RMSFALMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $FALDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:15.71 ! ! ! VERSION: 'X-1' ! ! **************************************************************************** ! * * ! * COPYRIGHT (C) 1978, 1980, 1982, 1984 BY * ! * DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * ! * ALL RIGHTS RESERVED. * ! * * ! * THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * ! * ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * ! * INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * ! * COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * ! * OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * ! * TRANSFERRED. * ! * * ! * THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * ! * AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * ! * CORPORATION. * ! * * ! * DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * ! * SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * ! * * ! * * ! **************************************************************************** ! ! ++ ! FACILITY: ! ! MESSAGES ARE FOR THE FAL (DECNET FILE ACCESS LISTENER) FACILITY, BUT ! ARE GENERATED ON BEHALF OF FAL BY RMS. ! ! ABSTRACT: ! ! THIS MODULE DEFINES FAL STATUS CODE SYMBOLS AND CORRESPONDING MESSAGE ! TEXT. NOTE THAT THIS MESSAGE FILE IS MAINTAINED BY THE RMS FACILITY, ! NOT THE FAL FACILITY, BECAUSE RMS DOES THE TRANSLATION OF DAP STATUS ! INTO FAL STATUS CODES WHICH ARE REPORTED AS SECONDARY STATUS INFORMATION ! TO THE RMS$_NETFAIL AND RMS$_SUPPORT COMPLETION CODES ON BEHALF OF FAL. ! ! ENVIRONMENT: VAX/VMS ! ! AUTHOR: JAMES A. KRYCKA, CREATION DATE: 15-JAN-1982 ! ! MODIFIED BY: ! ! X-1 RAB RICHARD A. BISHOP 24-JUN-1991 ! MOVED TO [STARLET] FACILITY ! ! ================================== ! OLD AUDIT TRAIL FOLLOWS: ! ! X-3 SAD009 STUART A. DAVIDSON 06-OCT-1986 ! ADD STATUS CODES FOR SNADTF. ! ! X-2 DAS DAVID A. SOLOMON 01-AUG-1986 ! REMOVE /MACRO= ON .FACILITY SO THE PROPER MACROS WILL ! BE GENERATED IN THE SDL FILE. ! ! V03-001 JAK0147 J A KRYCKA 09-JUL-1984 ! ADD ERROR CODES THAT CORRESPOND TO DAP MICCODES 416 TO 470 ! (OCTAL) FOR MACCODES 4 THROUGH 7 DEFINED IN THE DAP V7.0 ! SPECIFICATION. ! ! -- ! ++ ! DEFINE FAL STATUS CODES FOR USE BY RMS AS SECONDARY STATUS CODES. ! ! LAYOUT OF MESSAGE SPACE: ! ! MSG NUMBERS MSG NUMBERS MSG CODES DESCRIPTION ! (DECIMAL) (HEXADECIMAL) (HEXADECIMAL) ! ! 0 - 1023 0000 - 03FF 8000 - 9FFF UNUSED ! 1024 - 2047 0400 - 07FF A000 - BFFF FOR RMS$_NETFAIL ! 2048 - 4095 0800 - 0FFF C000 - FFFF FOR RMS$_SUPPORT ! -- literal FAL$_FACILITY = 503; ! + ! DEFINE FAL STATUS CODES THAT ARE ASSOCIATED WITH THE RMS$_NETFAIL COMPLETION ! CODE AND RETURNED IN THE STV FIELD OF THE FAB OR RAB. ! ! USE THE FOLLOWING FORMULA TO MAP A DAP STATUS CODE (STSCODE FIELD WITH ! MACCODE = 4 THRU 7) INTO A CORRESPONDING FAL MESSAGE CODE (LOWER 16 BITS): ! ! MESSAGE-CODE = (2**15 + ((MICCODE + 1024) * 8) + SEVERITY-LEVEL) ! ! NOTE: THE FIRST THREE CHARACTERS OF THE MESSAGE IDENTIFICATION MNEMONIC ! FOR EACH MESSAGE CODE IN THIS SET INDICATES ITS ORIGIN AS FOLLOWS: ! ! RMS --- THE CODE IS DEFINED FOR RMS-11 OR RMS-20, BUT NOT FOR RMS-32. ! (RMS-32 COMPLETION CODES ARE DEFINED IN RMSDEF.MDL.) ! FCS --- THE CODE IS DEFINED FOR THE FCS-11 ENVIRONMENT. ! TEN --- THE CODE IS DEFINED FOR THE TOPS-10 ENVIRONMENT. ! DAP --- ORIGIN IN THE DAP SPECIFICATION IS UNKNOWN. ! - literal FAL$_OFFSET_A = 1024; ! MICCODE = 0000 (OCTAL) literal FAL$_DAPFAIL = 33005572; literal FAL$_RMSABO = 33005580; ! MICCODE = 0011 (OCTAL) literal FAL$_RMSAST = 33005644; literal FAL$_RMSBPA = 33005652; literal FAL$_RMSBPS = 33005660; ! MICCODE = 0026 (OCTAL) literal FAL$_RMSCLS = 33005748; ! MICCODE = 0056 (OCTAL) literal FAL$_RMSFID = 33005940; ! MICCODE = 0071 (OCTAL) literal FAL$_RMSINI = 33006028; ! MICCODE = 0102 (OCTAL) literal FAL$_RMSLBL = 33006100; literal FAL$_RMSLBY = 33006108; literal FAL$_RMSLCH = 33006116; ! MICCODE = 0106 (OCTAL) literal FAL$_RMSLOC = 33006132; literal FAL$_RMSMAP = 33006140; ! MICCODE = 0115 (OCTAL) literal FAL$_RMSNID = 33006188; ! MICCODE = 0117 (OCTAL) literal FAL$_RMSOPN = 33006204; ! MICCIDE = 0124 (OCTAL) literal FAL$_RMSPRM = 33006244; ! MICCODE = 0153 (OCTAL) literal FAL$_RMSSTK = 33006428; ! MICCODE = 0162 (OCTAL) literal FAL$_RMSVOL = 33006484; ! MICCODE = 0170 (OCTAL) literal FAL$_RMSCAA = 33006532; ! MICCODE = 0231 (OCTAL) literal FAL$_RMSBLK = 33006796; literal FAL$_RMSBSZ = 33006804; literal FAL$_RMSCDR = 33006812; literal FAL$_RMSCGJ = 33006820; literal FAL$_RMSCOF = 33006828; literal FAL$_RMSJFN = 33006836; literal FAL$_RMSPEF = 33006844; literal FAL$_RMSTRU = 33006852; literal FAL$_RMSUDF = 33006860; literal FAL$_RMSXCL = 33006868; literal FAL$_DAPDIRFUL = 33006876; literal FAL$_FCSHWR = 33006884; literal FAL$_FCSFHE = 33006892; literal FAL$_DAPWRTEOF = 33006900; literal FAL$_FCSONP = 33006908; literal FAL$_FCSDNA = 33006916; literal FAL$_FCSDAA = 33006924; literal FAL$_FCSDUN = 33006932; literal FAL$_FCSRSU = 33006940; literal FAL$_FCSOVR = 33006948; literal FAL$_FCSBCC = 33006956; literal FAL$_FCSNOD = 33006964; literal FAL$_FCSIFU = 33006972; literal FAL$_FCSHFU = 33006980; literal FAL$_FCSWAC = 33006988; literal FAL$_FCSCKS = 33006996; literal FAL$_FCSWAT = 33007004; literal FAL$_FCSALN = 33007012; literal FAL$_FCSBTF = 33007020; literal FAL$_FCSILL = 33007028; literal FAL$_FCS2DV = 33007036; literal FAL$_FCSFEX = 33007044; literal FAL$_FCSRNM = 33007052; literal FAL$_FCSFOP = 33007060; literal FAL$_FCSVER = 33007068; literal FAL$_FCSEOV = 33007076; literal FAL$_FCSDAO = 33007084; literal FAL$_FCSBBE = 33007092; literal FAL$_FCSEOT = 33007100; literal FAL$_FCSNBF = 33007108; literal FAL$_FCSNBK = 33007116; literal FAL$_FCSNST = 33007124; literal FAL$_FCSULK = 33007132; literal FAL$_FCSNLN = 33007140; literal FAL$_FCSSRE = 33007148; ! MICCODE = 0311 (OCTAL) literal FAL$_DAPQUOEXC = 33007180; ! MICCODE = 0346 (OCTAL) literal FAL$_DAPDIRCAF = 33007412; literal FAL$_DAPDIRCRA = 33007420; literal FAL$_DAPDIRPRO = 33007428; literal FAL$_DAPDIRPRA = 33007436; literal FAL$_DAPDIRNFA = 33007444; literal FAL$_DAPDIRCON = 33007452; ! MICCODE = 0416 (OCTAL) literal FAL$_TENFILMOD = 33007732; literal FAL$_TENDEVNA = 33007740; literal FAL$_TENDEVNF = 33007748; literal FAL$_TENPARALL = 33007756; literal FAL$_TENBNFREE = 33007764; literal FAL$_TENCSDF = 33007772; literal FAL$_TENCDDF = 33007780; literal FAL$_TENSFDNF = 33007788; literal FAL$_TENSLE = 33007796; literal FAL$_TENSFDCNT = 33007804; literal FAL$_TENNCESL = 33007812; literal FAL$_TENCUPFIL = 33007820; literal FAL$_TENNETCAP = 33007828; literal FAL$_TENTSKNA = 33007836; literal FAL$_TENNODNF = 33007844; literal FAL$_TENSFDREN = 33007852; literal FAL$_TENCDFNDR = 33007860; literal FAL$_TENJCREAD = 33007868; literal FAL$_TENRENSFD = 33007876; literal FAL$_TENDEVDWN = 33007884; literal FAL$_TENDEVRES = 33007892; literal FAL$_TENDEVMDA = 33007900; literal FAL$_TENDEVALL = 33007908; literal FAL$_TENILLDM = 33007916; literal FAL$_TENLPTPAG = 33007924; literal FAL$_TENLPTVFU = 33007932; literal FAL$_TENLPTCHR = 33007940; literal FAL$_TENLPTRAM = 33007948; literal FAL$_TENFILSPC = 33007956; ! MICCODE = 0453 (OCTAL) literal FAL$_TENNSNOD = 33007964; literal FAL$_TENANODI = 33007972; literal FAL$_TENSNODI = 33007980; literal FAL$_TENNSDEV = 33007988; literal FAL$_TENADEVI = 33007996; literal FAL$_TENSDEVI = 33008004; literal FAL$_TENNSDIR = 33008012; literal FAL$_TENADIRI = 33008020; literal FAL$_TENSDIRI = 33008028; literal FAL$_TENNSFIL = 33008036; literal FAL$_TENAFILI = 33008044; literal FAL$_TENSFILI = 33008052; literal FAL$_TENAFILR = 33008060; literal FAL$_TENSFILR = 33008068; ! MICCODE = 475 (OCTAL) literal FAL$_DTFFALSHT = 33008108; literal FAL$_DTFNOFIL = 33008116; literal FAL$_DTFNOREC = 33008124; literal FAL$_DTFNOTREG = 33008132; literal FAL$_DTFOPRABO = 33008140; ! MICCODE = 504 (OCTAL) literal FAL$_DTFRDCKP = 33008164; ! + ! DEFINE FAL STATUS CODES THAT ARE ASSOCIATED WITH THE RMS$_SUPPORT COMPLETION ! CODE AND RETURNED IN THE STV FIELD OF THE FAB OR RAB. ! ! USE THE FOLLOWING FORMULA TO MAP A DAP STATUS CODE (STSCODE FIELD WITH ! MACCODE = 2) INTO A CORRESPONDING FAL MESSAGE CODE (LOWER 16 BITS): ! ! MESSAGE-CODE = (2**15 + ((MICCODE + 2048) * 8) + SEVERITY-LEVEL) ! ! NOTE: THE INTENT IN THIS SECTION IS TO DEFINE FAL STATUS CODES ONLY FOR DAP ! FIELDS THAT CORRESPOND DIRECTLY TO RMS CONTROL BLOCK FIELDS USED FOR ! INPUT. FOR OTHER DAP FIELDS THAT MAY BE REJECTED BY THE REMOTE FAL AS ! BEING UNSUPPORTED, THE RMS$_SUP COMPLETION CODE IS RETURNED IN THE STS ! FIELD OF THE FAB OR RAB WITH AN ASSOCIATED DAP CODE IN THE STV FIELD. ! - literal FAL$_OFFSET_B = 2048; ! MICCODE = 0222 (OCTAL) literal FAL$_ORG = 33014932; literal FAL$_RFM = 33014940; literal FAL$_RAT = 33014948; literal FAL$_BLS = 33014956; literal FAL$_MRS = 33014964; literal FAL$_ALQ1 = 33014972; literal FAL$_BKS = 33014980; literal FAL$_FSZ = 33014988; literal FAL$_MRN = 33014996; ! MICCODE = 0234 (OCTAL) literal FAL$_DEQ1 = 33015012; literal FAL$_FOP1 = 33015020; ! MICCODE = 0241 (OCTAL) literal FAL$_LRL = 33015052; ! MICCODE = 0320 (OCTAL) literal FAL$_ACCFUNC = 33015428; ! MICCODE = 0323 (OCTAL) literal FAL$_FAC = 33015452; literal FAL$_SHR = 33015460; ! MICCODE = 0420 (OCTAL) literal FAL$_CTLFUNC = 33015940; ! MICCODE = 0422 (OCTAL) literal FAL$_RAC = 33015956; literal FAL$_KEY = 33015964; literal FAL$_KRF = 33015972; literal FAL$_ROP = 33015980; ! MICCODE = 0520 (OCTAL) literal FAL$_CONFUNC = 33016452; ! MICCODE = 0720 (OCTAL) literal FAL$_CMPFUNC = 33017476; literal FAL$_FOP2 = 33017484; ! MICCODE = 1221 (OCTAL) literal FAL$_FLG = 33019020; literal FAL$_DFL = 33019028; literal FAL$_IFL = 33019036; ! MICCODE = 1225 (OCTAL) literal FAL$_POS = 33019052; literal FAL$_SIZ = 33019060; literal FAL$_REF = 33019068; literal FAL$_KNM = 33019076; literal FAL$_NUL = 33019084; literal FAL$_IAN = 33019092; literal FAL$_LAN = 33019100; literal FAL$_DAN = 33019108; literal FAL$_DTP = 33019116; ! MICCODE = 1321 (OCTAL) literal FAL$_VOL = 33019532; literal FAL$_ALN = 33019540; literal FAL$_AOP = 33019548; literal FAL$_LOC = 33019556; ! MICCODE = 1326 (OCTAL) literal FAL$_ALQ2 = 33019572; literal FAL$_AID = 33019580; literal FAL$_BKZ = 33019588; literal FAL$_DEQ2 = 33019596; ! MICCODE = 1521 (OCTAL) literal FAL$_CDT = 33020556; literal FAL$_RDT = 33020564; literal FAL$_EDT = 33020572; literal FAL$_RVN = 33020580; ! MICCODE = 1621 (OCTAL) literal FAL$_OWNER = 33021068; literal FAL$_PROTSYS = 33021076; literal FAL$_PROTOWN = 33021084; literal FAL$_PROTGRP = 33021092; literal FAL$_PROTWLD = 33021100; ! ! ---- < End of module RMSFALMSG.R32 - 12-AUG-2010 13:57:04.23 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:15 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:14 $1$DGA7361:[STARLET.SRC]RMSMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $RMSDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:14.99 ! ! .TITLE RMSMSG -RMS COMPLETION CODES ! ************************************************************************* ! * * ! * COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION, 1976, 1977, 1978, 1979, * ! * 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, * ! * 1991,1992-1999 * ! * COMPAQ COMPUTER CORPORATION, 2000-2002 * ! * HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., 2003-2005 * ! * ALL RIGHTS RESERVED. * ! * UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED * ! * STATES. * ! * * ! * THE SOFTWARE CONTAINED ON THIS MEDIA IS PROPRIETARY TO AND EMBODIES * ! * THE CONFIDENTIAL TECHNOLOGY OF DIGITAL EQUIPMENT CORPORATION. * ! * POSSESSION, USE, DUPLICATION OR DISSEMINATION OF THE SOFTWARE AND * ! * MEDIA IS AUTHORIZED ONLY PURSUANT TO A VALID WRITTEN LICENSE FROM * ! * DIGITAL EQUIPMENT CORPORATION. * ! * * ! * RESTRICTED RIGHTS LEGEND USE, DUPLICATION, OR DISCLOSURE BY THE U.S. * ! * GOVERNMENT IS SUBJECT TO RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH * ! * (C)(1)(II) OF DFARS 252.227-7013, OR IN FAR 52.227-19, AS APPLICABLE. * ! * * ! ************************************************************************* ! ++ ! FACILITY: RMS ! ! ABSTRACT: ! ! THIS MODULE DEFINES ALL RMS COMPLETION CODES. ! ! ENVIRONMENT: ! ! THE MESSAGE TRANSLATOR MUST BE USED TO CONVERT RMSMSG.MSG INTO ! RMSMSG.SDL. THE SDL TRANSLATOR MUST THEN BE USED TO CONVERT ! RMSMSG.SDL INTO RMSMSG.MAR (AND RMSMSG.B32). ! ! AUTHOR: LEO F. LAVERDURE, CREATION DATE: 10-DEC-1976 ! ! MODIFIED BY: ! ! X-18 ACG0724 ANDY GOLDSTEIN, 10-FEB-2009 11:27 ! ADD RMS$_IVSF MESSAGE FOR INVALID SYMLINKS ! ! X-17 EMW0362 ELINOR M. WOODS 02-MAY-2005 ! ADD 2 NEW FATAL STATUSES RMS$_FOPEXTMBZ AND ! RMS$_INVOP_SSIO (WITHOUT STV) FOR SSIO SUPPORT. ! ! X-16 SAD STUART A. DAVIDSON 5-OCT-2004 ! ADD RMS$_ELOOP FOR SYMBOLIC LINK SUPPORT. ELOOP IS ! RETURNED IF MORE THAN A CERTAIN NUMBER OF SYMBOLIC LINKS ! ARE TRAVERSED IN A SINGLE FILE LOOKUP. ! ! X-15 EMW0300 ELINOR M. WOODS 03-JAN-2003 ! KP THREADING CHANGE: ADD ONE NEW FATAL ERROR STATUS ! (RSESTK_ALLOC) WITH AN ASSOCIATED STV THAT WILL CONTAIN ! THE ACTUAL STATUS RETURNED BY EXE$KP_ALLOC_RSE_STACK_P2. ! ! X-14 EMW0196 ELINOR M. WOODS 08-SEP-1999 ! BKT-LOCK ENHANCEMENTS: ADD ONE NEW FATAL ERROR ! STATUS (CRBUFOBJ) WITH AN ASSOCIATED STV. ! ! X-13 EMW0195 ELINOR M. WOODS 25-AUG-1999 ! BKT-LOCK ENHANCEMENTS: ADD TWO NEW FATAL ERROR ! STATUSES (BADGBD AND BADGBH). ! ! X-12 WBF BURNS FISHER 18-SEP-1997 ! CHANGE NAMLESS AND NAMLRSS TO FATAL. ADD NAMLFSINV AND ! NAMLFSSIZ. ! ! X-11 WBF BURNS FISHER 18-JULY-1997 ! INTEGRATE THE ONE HFS CHANGE INTO MAINSTREAM, AND ADD NAML ! MESSAGE ! ! TAM0015 TERI A. MANSEAU 18-APR-1997 ! ADDED TWO NAML WARNING MESSAGES RMS$_NAMLESS ! AND RMS$NAMLRSS. ! ! X-10 EMW0132 ELINOR M. WOODS 11-APR-1997 ! ADD NEW RMS-INTERNAL ERROR STATUS RMS$_EOFASY_SYNCH. ! FOR INTERNAL USE ONLY; NEVER RETURNED TO USER. ! ! X-9 EMW0084 ELINOR M. WOODS 08-FEB-1996 ! PW INTEGRATION: REMOVE NEW ALTERNATE SUCCESS STATUS: ! RMS$_OK_URECEOF. ENDED UP NOT NEEDED. ! ! X-8 WDBPI1 WALTER D. BLASCHUK, JR. 19-DEC-1995 ! PATHWORKS INTEGRATION: ADD NEW ALTERNATE SUCCESS ! STATUS: RMS$_OK_URECEOF . THIS SYMBOL SIGNIFIES THAT AN ! END-OF-FILE MARKER WAS ENCOUNTERED AND THERE WAS DATA ! IN THE BUFFER. THIS OCCURS WHEN THE LAST RECORD OF A ! SEQUENTIAL STREAM FILE DOES NOT HAVE A TERMINATING ! CHARACTER. THIS IS A SUCCESS STATUS AND DOES NOT HAVE ! A STV STATUS ASSOCIATED WITH IT. ! ! ! X-7 EMW ELINOR M. WOODS 10-AUG-1994 ! MERGE IN OPENVMS VAX DRAGON CHANGE: ! ! X-13 EMW0023 ELINOR M. WOODS 04-AUG-1994 ! RMS$_KRF CAN BE RETURNED BY $CONNECT OR $REWIND, AS ! WELL AS $GET/$FIND. MAKE TEXT ASSOCIATED WITH KRF ! STATUS MORE GENERIC BY REMOVING "for $GET/$FIND." ! ! X-6 EMW ELINOR M. WOODS 30-JUN-1994 ! MERGE IN OPENVMS VAX DRAGON CHANGE: ! ! X-12 EMW0026 ELINOR M. WOODS 15-JUN-1994 ! ADD ONE NEW USER-REPORTABLE STATUS: NXR ! . THIS STATUS VALUE IS USED ! AS AN STV ASSOCIATED WITH RNF STATUS (STS), AND IS ! REPORTED FOR AN EXACT KEY MATCH OF A SECONDARY KEY ! IF THE SECONDARY KEY ENTRY POINTS TO A NONEXISTENT ! PRIMARY DATA RECORD IN DISK FILE. NOTE: RNF ERROR ! STATUS PRE-EXISTED AS ERROR CODE WITHOUT STV. ! ! DEE RYAN 30-SEP-1993 ! CORRECTED USE OF DIGITAL PRODUCT NAMES. ! ! X-5 EMW ELINOR M. WOODS 28-SEP-1993 ! MERGE IN OPENVMS VAX CORAL FIX: ! ! X-10 EMW0019 ELINOR M. WOODS 21-SEP-1993 ! ADD ONE NEW USER-REPORTABLE ERROR STATUS (WITH AN ! ASSOCIATED STV): NETBTS. RELOCATE NEW IDXSEARCH STATUS ! (SEE X-9) FROM "ERROR with STV" SECTION TO "ERROR WITHOUT ! STV" section. Expand "WITH STV' AND "without STV" ! COMMENTS TO CLARIFY DIFFERENCE BETWEEN TWO. ! ! X-4 EMW0016 ELINOR M. WOODS 10-AUG-1993 ! MERGE IN CORAL FIX: ! ! MODIFY SEVERITY OF TWO DTF ERROR CODES (DTFACC AND ! DTFCRE) FROM FATAL TO ERROR, AS REQUESTED BY SNA/DTF ! FACILITY. ! ! ALSO MOVE NEW IDXSEARCH STATUS FROM ERROR WITH NO ! STV GROUPING TO ERROR WITH STV GROUPING. ! ! X-3 EMW0010 ELINOR M. WOODS 02-JUL-1993 ! TO SUPPORT NEW KEY-LESS-THAN FUNCTIONALITY, ADDITION ! OF ONE USER-REPORTABLE ERROR STATUS: IDXSEARCH, AND ! TWO NEW RMS-INTERNAL ERROR STATUSES: LSCAN AND ! ROOTSRCH. ! ! X-2 CW0019 CHRIS WHITAKER 11-NOV-1992 ! MERGE IN OPENVMS VAX V6.0 CHANGES ! ! X-8 JM0012 JOHN MUNZER 11-NOV-1992 ! CHANGE TEXT FOR RMS$_LNE. ! ! X-7 JM0006 JOHN MUNZER 17-APR-1992 ! ADD !XL PARAMETER TO RMS$_BUG TO REPORT R2. ! ! X-1 RAB RICHARD A. BISHOP 24-JUN-1991 ! MOVED TO [STARLET] FACILITY ! ! ================================== ! OLD AUDIT TRAIL FOLLOWS: ! ! X-33 LSS0154 LEONARD S. SZUBOWICZ 4-APR-1990 ! ALTER TEXT AND FAO PARAMETERS OF RMS$_RUH AND RMS$_BUG ! CONDITION VALUES FOR RMS/DDTM SUPPORT. ! ! X-32 PJH PAUL J. HOULIHAN 17-JAN-1990 ! CHANGE TEXT FOR RMS$_INCOMPSHR ERROR MESSAGE. ! ! X-31 LSS0130 LEONARD S. SZUBOWICZ 12-OCT-1989 ! MERGE OF RMS/DDTM GENERATION X-30D2. ! ADD GENERAL DDTM_ERR ERROR MESSAGE FOR DDTM SERVICE FAILURES; ! STV WILL CONTAIN THE FAILING SYSTEM SERVICE CONDITION VALUE. ! ! X-30 LSS0080 LEONARD S. SZUBOWICZ 06-OCT-1988 ! ADD RMS$_OK_ACT MESSAGE FOR USE BY FUTURE WORK TO $DISPLAY. ! THIS IS PART OF LATENT SUPPORT FOR RMS/DDTM. ! ! X-29 GJA0080 GARY J. ALLISON 06-JUN-1988 ! CHANGE TEXT OF SEMANTICS MESSAGE. ! ! X-28 GJA0072 GARY J. ALLISON 02-MAR-1988 ! ADD EXT_ERR, OPNOTSUP, EXTNOTFOU, AND SEMANTICS MESSAGES. ! ! X-27 PMV0072 PETER M. VATNE 08-OCT-1987 ! CHANGE RMS$_NOJNLLIC TO RMS$_JNLNOTAUTH. ! ! X-26 LSS0057 LEONARD S. SZUBOWICZ 15-SEP-1987 ! CHANGE TEXT FOR THE RMS$_OK_DUP STATUS SUCH THAT THE MESSAGE ! IS APPLICABLE TO $GET AS WELL AS $PUT. ! ! X-25 PMV0068 PETER M. VATNE 11-SEP-1987 ! ADD RMS$_NOJNLLIC, NO RMS JOURNALING LICENSE, FOR LMF. ! ! X-24 RNM0026 RUSSELL N. MURRAY 15-AUG-1987 ! ADD RMS$_SYNCH MESSAGE FOR NOTIFICATION OF SYNCHRONOUS ! COMPLETION. ! ! X-23 JEJ0479 JAMES E JOHNSON 13-AUG-1987 ! ADD RMS$_IVATRACE MESSAGE. ! ! X-22 PMV0061 PETER M. VATNE 03-AUG-1987 ! CHANGE RESERVED MESSAGE RMS$_BUG_XX5 TO RMS$_BUG_RU_COMMIT_FAIL ! TO CORRESPOND TO POSITIVE RMS BUGCHECK FTL$_RU_COMMIT_FAIL. ! ! X-21 LSS0042 LEONARD S. SZUBOWICZ 13-MAY-1987 ! CHANGE RESERVED MESSAGE RMS$_BUG_XX4 TO RMS$_BUG_RU_ABORT_FAIL ! TO CORRESPOND TO POSITIVE RMS BUGCHECK FTL$_RU_ABORT_FAIL ! ! X-20 SAD0034 STUART A. DAVIDSON 12-MAR-1987 ! DROP QUOTES FROM SNADTF MESSAGE TEXT. ! ! X-19 PJH PAUL J. HOULIHAN 19-JAN-1987 ! MERGE IN 17J1. ! ! X-17J1 PJH PAUL J. HOULIHAN 15-JAN-1987 ! FIX SEVERAL SMALL JNL PROBLEMS. ! ADD RMS$_BUG_FLUSH_JNL_FAILED CODE. ! ! X-18 KPS0148 KENNETH P. SIEGEL 04-DEC-1986 ! ADDED SNPPF (STATISTICS MONITORING NOT SUPPORTED FOR ! PROCESS PERMANENT FILES) ERROR MESSAGE. ! ! X-17 PMV0025 PETER M. VATNE 24-NOV-1986 ! ADD NEW MESSAGE, RMS$_NOTSAMEJNL. THIS STATUS IS ! USED TO RESTRICT AI/BI WITH RU JOURNALING TO A ! SINGLE LONG-TERM JOURNAL FILE. ! ! X-16 DAS DAVID A. SOLOMON 18-NOV-1986 ! ADD NEW MESSAGE, RMS$_DELJNS. REMOVE RMS$_XCR (BY REPLACING IT ! WITH A PLACEHOLDER), AS JOURNALING BITS ARE NO LONGER ! SPECIFIED IN THE $XABJNL. SLIGHT WORDING CHANGE ON DETACHED ! RU RECOVERY ERROR MESSAGES. ! ! X-15 DAS DAVID A. SOLOMON 12-NOV-1986 ! FIX ERROR IN X-5/X-6: JOURNALING VARIANT NOT MERGED ! CORRECTLY, RESULTING IN SEVERAL JOURNALING MESSAGES NUMBERS ! BEING DIFFERENT IN THE MAININE THAN WHAT THEY WERE ON THE ! JOURNALING VARIANT. ALSO, MOVE NEW SNADTF MESSAGES TO RE-USE ! AVAILABLE UNUSED MESSAGE NUMBERS, INSTEAD OF GENERATING NEW ! ONES. FINALLY, CHANGE RMS$_BUG_ABORT TO RMS$_BUG_RU_ACTIVE. ! ! X-14 SAD0014 STUART A. DAVIDSON 4-NOV-1986 ! SNADTF - FIX TYPO IN DTFACC, DTFCRE ! ! X-13 SAD0014 STUART A. DAVIDSON 3-NOV-1986 ! SNADTF - FIX TYPO, ADD 2 ADDITIONAL MESSAGES. ! ! X-12 JEJ0377 JAMES E JOHNSON 29-OCT-1986 ! ADD NOEXTEND ERROR CODE TO FLAG FAILED RELATIVE FILE ! EXTENDS DUE TO PREVIOUS FAILURES. ! ! X-11 KPS0131 KENNETH P. SIEGEL 25-OCT-1986 ! ADDED SNS ERROR CODE FOR STATISTICS NOT SUPPORT ON ! NON-DISK DEVICES. ! ! X-10 SAD009 STUART A. DAVIDSON 06-OCT-1986 ! ADD COMPLETION CODES FOR SNADTF (IBM DATA XFER) ! ! X-9 GJA0003 GARY J. ALLISON 29-SEP-1986 ! ADD DETACHED RECOVERY ERROR MESSAGES ! ! X-8 PMV0008 PETER M. VATNE 24-SEP-1986 ! MODIFY RMS$_ACC_AIJ, RMS$_ACC_BIJ, AND RMS$_ACC_ATJ ! TO ALSO OUTPUT THE STV. ! ! X-7 JWT0243 JIM TEAGUE 2-SEP-1986 ! ADD NEW ERRORS FOR COLLATED KEYS. ! ! X-6 GJA GARY J. ALLISON 29-JUL-1986 ! REMOVE DUPS FROM JNL MERGE. ! ! X-5 GJA GARY J. ALLISON 29-JUL-1986 ! MERGE JOURNALING INTO MAINLINE ! ! X-3J6 DAS DAVID A. SOLOMON 14-APR-1986 ! REMOVE RMS$_RUH_FILE (USING A GENERAL RUF MESSAGE INSTEAD). ! CHANGE RMS$_RUH TEXT TO NOT HAVE FAO PARAMETERS. ADD ! RMS$_BUG_RURECERR. ! ! X-3J5 JEJ0302 JAMES E JOHNSON 4-APR-1986 ! ADD RMS$_RRF (ERROR DURING RU RECOVERY) AND ! RMS$_RUH/RMS$_RUH_FILE (USED TO FORM TEXT OF RU HANDLER ERRORS ! SENT TO OPCOM). ! ! X-3J4 JEJ0272 JAMES E JOHNSON 11-FEB-1986 ! ADD RMS$_RUF, RMS$_BUG_ABORT CODES. ! ! X-3J3 JEJ0237 JAMES E JOHNSON 16-DEC-1985 ! ADD RMS$_RUNDOWN CODE ! ! X-3J2 JEJ0205 JAMES E JOHNSON 25-OCT-1985 ! ADD JOURNAL SPECIFIC WRTJNL_XXJ ERROR CODES TO REPLACE ! THE GENERIC ERRWRTJNL CODE. ! ! X-4 JEJ0216 JAMES E JOHNSON 18-NOV-1985 ! MERGE X-3J2 INTO MAIN LINE FOR V4.4. ! ! X-3J2 JEJ0205 JAMES E JOHNSON 25-OCT-1985 ! ADD JOURNAL SPECIFIC WRTJNL_XXJ ERROR CODES TO REPLACE ! THE GENERIC ERRWRTJNL CODE. ! ! X-3 JEJ0161 JAMES E JOHNSON 9-SEP-1985 ! UPDATE RMS JOURNALING MESSAGES. ! ! X-2 JWT0212 JIM TEAGUE 4-SEP-1985 ! ADD (WHAT IS FOR NOW) AN INTERNAL STATUS CODE TO ! DIFFERENTIATE BETWEEN FINDING A DELETED RECORD (DEL) ! AND FINDING IT BUT WITH A DIFFERENT KEY (KEY_MISMATCH). ! ! V03-024 RAS0314 RON SCHAEFER 21-JUN-1984 ! WORK OVER THE MESSAGES ONE MORE TIME: FIX TYPO IN OK_RNF, ! DELETE ACPEOF ERROR, DELETE WSF ERROR. ! ! V03-023 RAS0282 RON SCHAEFER 28-MAR-1984 ! MINOR TEXT CHANGES AND COMMENTS ADDED. ! DELETE RMS$_COP ERROR. ! ! V03-022 DAS0005 DAVID SOLOMON 19-MAR-1984 ! REMOVE RMS$_ECHO (NO LONGER NEEDED AS A RESULT OF NEW ! IMPLEMENTATION FOR ECHO SYS$INPUT -> SYS$OUTPUT). ! ! V03-021 JWT0150 JIM TEAGUE 01-FEB-1984 ! ADD RMS$_IFF FOR TRYING TO WRITE-ACCESS A FILE ON ! MAGTAPE THAT HAS NON-0 VALUE FOR ANSI BUFFER OFFSET. ! ! V03-020 RAS0233 RON SCHAEFER 9-JAN-1984 ! ADD RMS$_NOVALPRS ERROR FOR $SEARCH NOT PRECEDED BY ! VALID $PARSE. ! ! V03-019 JWT0148 JIM TEAGUE 20-DEC-1983 ! ADD A JNL XAB ERROR FOR CONFLICTING RU ATTRIBUTES ! ON $CREATE: RMS$_XCR. ! ! V03-018 RAS0171 RON SCHAEFER 28-JUL-1983 ! ADD RMS$_BUSY; A STRUCTURE-LESS ERROR (R0-ONLY STATUS) ! REPLACING TEMP3. ! ! V03-017 DAS0004 DAVID SOLOMON 28-JUN-1983 ! ADD RMS$_FILEPURGED; ADD RMS$_ACPEOF FOR ZALEWSKI. ! ! V03-016 KPL0007 PETER LIEBERWIRTH 8-JUN-1983 ! FIX SPELLING IN JNL ERROR MESSAGES, ADD CJF ERROR WHICH ! WILL SOON SUBSUME COP AND CQE. ! ! V03-015 DAS0003 DAVID SOLOMON 18-FEB-1983 ! ADD XNF (REPLACING TEMP9), TMR (NEW), LWC (NEW). ! ! V03-014 KBT0497 KEITH B. THOMPSON 18-FEB-1983 ! ADD INCOMPSHR ERROR (REUSE OF TEMP1 SLOT) ! ! V03-013 RAS0120 RON SCHAEFER 2-FEB-1983 ! ADD ECHO PSEUDO-STATUS TO SUPPORT ECHO OF SYS$INPUT ! TO SYS$OUTPUT. ! ! V03-012 JWH0174 JEFFRY W. HORN 24-JAN-1983 ! ADD CQE AND COP ERRORS. ! ! V03-011 KPL0006 PETER LIEBERWIRTH 7-JAN-1983 ! ADD OK_RULK FOR RECOVERY UNIT SUPPORT. ! ! ADD REENT ERROR FOR $RENAME. ! ! V03-009 JWH0153 JEFFREY W. HORN 8-DEC-1982 ! ADD NRU ERROR. ! ! V03-008 JWH0152 JEFFREY W. HORN 8-DEC-1982 ! ADD JNS ERROR. ! ! V03-007 MCN0002 MARIA DEL C. NASR 15-NOV-1982 ! REPLACE ORD ERROR CODE ELIMINATED BY MCN0001, SINCE ! THE NETWORK CODE REFERENCES IT. ! ! V03-006 MCN0001 MARIA DEL C. NASR 26-OCT-1982 ! PRINT KEY OF REFERENCE OR AREA IDENTIFICATION NUMBER ! INSTEAD OF XAB ADDRESS FOR ERRORS RETURNED DURING ! INDEXED FILE CREATION. ALSO RENAME ALL UNUSED ERROR ! CODES TO TEMP. ! ! V03-005 JWH0102 JEFFREY W. HORN 24-SEP-1982 ! ADD RUP ERROR. ! ! V03-004 RAS0095 RON SCHAEFER 7-SEP-1982 ! ADD OVRDSKQUOTA ERROR. ! ! V03-002 JWH0002 JEFFREY W. HORN 26-JUL-1982 ! CONVERT TO .MSG FORMAT. ADD RUM ERROR. ! ! V03-001 JWH0001 JEFFREY W. HORN 20-JUL-1982 ! ADD JNF, JOP, AND NOJ ERRORS. ! ! V02-042 KPL0005 PETER LIEBERWIRTH 4-FEB-1982 ! ADD ERROR MESSAGES RMS$_EXENQLM AND RMS$_DEADLOCK ! CORRECTLY. ! ! V02-041 CDS0001 C D SAETHER 24-JAN-1982 ! ADD GBC AND CRMP ERRORS. ! ! V02-040 JAK0069 J A KRYCKA 15-JAN-1982 ! ADD SUPPORT AND NETFAIL ERROR CODES. ! ! V02-039 JAK0068 J A KRYCKA 31-DEC-1981 ! MODIFY TEXT FOR SUP, NET, BUG_DAP, AND ENV ERROR MESSAGES. ! ! V02-038 LJA0001 LAURIE ANDERSON 20-DEC-1981 ! MODIFIED SOME MESSAGES TO READ BETTER. ! ! V02-037 JAK0063 J A KRYCKA 31-AUG-1981 ! ADD CRE_STM SUCCESS CODE. ! ! V02-036 KPL0004 PETER LIEBERWIRTH 13-JAN-1981 ! ADD ENQ SEVERE ERROR MESSAGE, TO INDICATE $ENQ/$DEQ FAILURE. ! ALSO ADD SUCCESS CODES OK_RRL, AND OK_WAT. ! ! V02-035 REFORMAT J A KRYCKA 30-JUL-1980 ! ! -- literal RMS$_FACILITY = 1; literal RMS$V_STVSTATUS = 14; ! MOVE TO BIT 14 OF THE ! STATUS CODE IT INDICATES ! THAT STV CONTAINS A SECONDARY ! STATUS CODE. literal RMS$_SUC = 65537; literal RMS$_NORMAL = 65537; ! + ! ! SUCCESS CODES ! ! - ! BIT 16 = BIT 15 = 1 literal RMS$_STALL = 98305; ! (NOTE: USER NEVER RECEIVES THIS CODE) literal RMS$_PENDING = 98313; literal RMS$_OK_DUP = 98321; literal RMS$_OK_IDX = 98329; ! (RECORD HAS BEEN INSERTED, BUT INDEX STRUCTURE IS NO LONGER ! OPTIMAL.) literal RMS$_OK_RLK = 98337; ! (BECAUSE LOCKER SET RLK IN ROP FIELD WHEN RECORD WAS LOCKED.) literal RMS$_OK_RRL = 98345; ! (BECAUSE READER SET RRL IN ROP FIELD WHEN ACCESSING RECORD.) ! (THIS CODE USED TO BE OK_RRV) ! OK_RRV ;MSG ! (BUT IT MAY NOT BE ACCESSIBLE VIA ONE-OR-MORE SECONDARY KEYS, ! AND NOT BY RFA ADDRESSING. FILE RE-ORGANIZATION RECOMMENDED!) literal RMS$_KFF = 98353; literal RMS$_OK_ALK = 98361; literal RMS$_OK_DEL = 98369; literal RMS$_OK_RNF = 98377; literal RMS$_OK_LIM = 98385; literal RMS$_OK_NOP = 98393; literal RMS$_OK_WAT = 98401; ! (BECAUSE WAT BIT IN ROP WAS SET AND RECORD WAS ALREADY ! LOCKED.) literal RMS$_CRE_STM = 98409; literal RMS$_OK_RULK = 98417; literal RMS$_SYNCH = 98425; literal RMS$_OK_ACT = 98433; literal RMS$_OK_NOCURTID = 98441; ! + ! ! SUCCESS CODES PASSED THRU FROM DRIVERS AND ACP - BIT 15 = 0 ! ! - literal RMS$_CONTROLC = 67153; ! TERMINAL I/O ABORTED DUE TO CTRL/C literal RMS$_CONTROLO = 67081; ! TERMINAL I/O ABORTED DUE TO CTRL/O literal RMS$_CONTROLY = 67089; ! TERMINAL I/O ABORTED DUE TO CTRL/Y literal RMS$_CREATED = 67097; ! FILE WAS CREATED, NOT OPENED literal RMS$_SUPERSEDE = 67121; ! CREATED FILE SUPERSEDED EXISTING VERSION literal RMS$_OVRDSKQUOTA = 67177; ! DISK USAGE EXCEEDS DISK QUOTA literal RMS$_FILEPURGED = 67193; ! CREATE FILE CAUSED OLDEST FILE ! VERSION TO BE PURGED ! + ! ! WARNING CODES ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_BOF = 98712; literal RMS$_RNL = 98720; literal RMS$_RTB = 98728; literal RMS$_TMO = 98736; literal RMS$_TNS = 98744; literal RMS$_BES = 98752; literal RMS$_PES = 98760; ! + ! ! ERROR CODES - WITHOUT STV (THAT IS, STV MAY BE USED BUT NO ASSOCIATED ! CONDITION CODE IS IN STV) ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_ACT = 98906; literal RMS$_DEL = 98914; literal RMS$_INCOMPSHR = 98922; literal RMS$_DNR = 98930; literal RMS$_EOF = 98938; literal RMS$_FEX = 98946; literal RMS$_FLK = 98954; literal RMS$_FNF = 98962; literal RMS$_PRV = 98970; literal RMS$_REX = 98978; literal RMS$_RLK = 98986; literal RMS$_RNF = 98994; ! (RECORD NEVER WAS IN FILE, OR HAS BEEN DELETED.) literal RMS$_WLK = 99002; literal RMS$_EXP = 99010; literal RMS$_NMF = 99018; literal RMS$_SUP = 99026; ! (NOTE THAT SUPPORT HAS REPLACED SUP EXCEPT WHEN RMS CANNOT ! MAP THE DAP STATUS CODE INTO A FAL STATUS CODE.) ! (NOTE ALSO THAT SUP SHOULD HAVE BEEN DEFINED AS A SEVERE ! ERROR CODE. HOWEVER, SUPPORT IS A SEVERE ERROR CODE.) literal RMS$_RSA = 99034; literal RMS$_CRC = 99042; literal RMS$_WCC = 99050; literal RMS$_IDR = 99058; literal RMS$_LWC = 99066; literal RMS$_UNUSED1 = 99074; literal RMS$_NOVALPRS = 99082; literal RMS$_KEY_MISMATCH = 99090; literal RMS$_RUH = 99098; literal RMS$_JND = 99106; literal RMS$_BADPHASE = 99114; literal RMS$_TOWDR = 99122; literal RMS$_NEXDR = 99130; literal RMS$_INVDRMSG = 99138; literal RMS$_RU_ACTIVE = 99146; literal RMS$_UNKRUFAC = 99154; literal RMS$_LIMBO = 99162; literal RMS$_IVATRACE = 99170; literal RMS$_OPNOTSUP = 99178; literal RMS$_EXTNOTFOU = 99186; literal RMS$_EXT_ERR = 99194; literal RMS$_SEMANTICS = 99202; literal RMS$_LSCAN = 99210; literal RMS$_ROOTSRCH = 99218; literal RMS$_IDXSEARCH = 99226; literal RMS$_NETBTS = 99234; literal RMS$_NXR = 99242; ! IF EXACT KEY MATCH ON SECONDARY KEY AND SECONDARY KEY ! ENTRY POINTS TO NONEXISTENT PRIMARY DATA RECORD IN ! DISK FILE. literal RMS$_EOFASY_SYNCH = 99250; literal RMS$_ELOOP = 99258; ! + ! ! ERROR CODES - WITH STV ERROR CODE (THAT IS, STV CONTAINS AN ASSOCIATED CONDITION CODE) ! ! - ! BIT 16 = BIT 15 = BIT 14 = 1 literal RMS$_ACC = 114690; literal RMS$_CRE = 114698; literal RMS$_DAC = 114706; literal RMS$_ENT = 114714; literal RMS$_EXT = 114722; literal RMS$_FND = 114730; literal RMS$_MKD = 114738; literal RMS$_DPE = 114746; literal RMS$_SPL = 114754; literal RMS$_DNF = 114762; literal RMS$_RUF = 114770; literal RMS$_WRTJNL_AIJ = 114778; literal RMS$_WRTJNL_BIJ = 114786; literal RMS$_WRTJNL_ATJ = 114794; literal RMS$_WRTJNL_RUJ = 114802; literal RMS$_RRF = 114810; literal RMS$_DDTM_ERR = 114818; ! + ! ! SEVERE ERROR CODES - WITHOUT STV (THAT IS, STV MAY BE USED BUT NO ASSOCIATED ! CONDITION CODE IS IN STV) ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_DTFCDDREC = 99308; literal RMS$_AID = 99316; literal RMS$_ALN = 99324; literal RMS$_ALQ = 99332; literal RMS$_ANI = 99340; literal RMS$_AOP = 99348; literal RMS$_BKS = 99356; literal RMS$_BKZ = 99364; literal RMS$_BLN = 99372; literal RMS$_BUG = 99380; literal RMS$_BUG_DDI = 99388; literal RMS$_BUG_DAP = 99396; literal RMS$_BUG_RU_ACTIVE = 99404; literal RMS$_BUG_RURECERR = 99412; literal RMS$_BUG_FLUSH_JNL_FAILED = 99420; literal RMS$_BUG_RU_ABORT_FAIL = 99428; literal RMS$_BUG_RU_COMMIT_FAIL = 99436; literal RMS$_BUG_XX6 = 99444; literal RMS$_BUG_XX7 = 99452; literal RMS$_BUG_XX8 = 99460; literal RMS$_BUSY = 99468; literal RMS$_CCR = 99476; literal RMS$_CHG = 99484; literal RMS$_CHK = 99492; literal RMS$_COD = 99500; literal RMS$_CUR = 99508; literal RMS$_DAN = 99516; literal RMS$_DEV = 99524; literal RMS$_DIR = 99532; literal RMS$_DME = 99540; literal RMS$_DNA = 99548; literal RMS$_DTP = 99556; literal RMS$_DUP = 99564; literal RMS$_DVI = 99572; literal RMS$_ESA = 99580; literal RMS$_ESS = 99588; literal RMS$_FAB = 99596; literal RMS$_FAC = 99604; literal RMS$_FLG = 99612; literal RMS$_FNA = 99620; literal RMS$_FNM = 99628; literal RMS$_FSZ = 99636; literal RMS$_FOP = 99644; literal RMS$_FUL = 99652; literal RMS$_IAL = 99660; literal RMS$_IAN = 99668; literal RMS$_IDX = 99676; literal RMS$_IFI = 99684; literal RMS$_IMX = 99692; literal RMS$_IOP = 99700; literal RMS$_IRC = 99708; literal RMS$_ISI = 99716; literal RMS$_KBF = 99724; literal RMS$_KEY = 99732; literal RMS$_KRF = 99740; literal RMS$_KSZ = 99748; literal RMS$_LAN = 99756; literal RMS$_RUNDOWN = 99764; literal RMS$_LNE = 99772; literal RMS$_DTFCVT = 99780; literal RMS$_MRN = 99788; literal RMS$_MRS = 99796; literal RMS$_NAM = 99804; literal RMS$_NEF = 99812; literal RMS$_DTFQUASYN = 99820; literal RMS$_NOD = 99828; literal RMS$_NPK = 99836; literal RMS$_ORD = 99844; ! ! NOT USED AS OF V4 literal RMS$_ORG = 99852; literal RMS$_PBF = 99860; literal RMS$_PLG = 99868; literal RMS$_POS = 99876; literal RMS$_DTFQUAVAL = 99884; literal RMS$_QUO = 99892; literal RMS$_RAB = 99900; literal RMS$_RAC = 99908; literal RMS$_RAT = 99916; literal RMS$_RBF = 99924; literal RMS$_RFA = 99932; literal RMS$_RFM = 99940; literal RMS$_RHB = 99948; literal RMS$_RLF = 99956; literal RMS$_ROP = 99964; literal RMS$_RRV = 99972; literal RMS$_RVU = 99980; literal RMS$_RSS = 99988; literal RMS$_RST = 99996; literal RMS$_RSZ = 100004; literal RMS$_SEQ = 100012; literal RMS$_SHR = 100020; literal RMS$_SIZ = 100028; literal RMS$_SQO = 100036; literal RMS$_DTFSESEST = 100044; literal RMS$_SYN = 100052; literal RMS$_TRE = 100060; literal RMS$_TYP = 100068; literal RMS$_UBF = 100076; literal RMS$_USZ = 100084; literal RMS$_VER = 100092; literal RMS$_XNF = 100100; literal RMS$_XAB = 100108; literal RMS$_ESL = 100116; literal RMS$_DTFSESTER = 100124; literal RMS$_ENV = 100132; literal RMS$_PLV = 100140; literal RMS$_MBC = 100148; literal RMS$_RSL = 100156; literal RMS$_WLD = 100164; literal RMS$_NET = 100172; ! (NOTE THAT NETFAIL HAS REPLACED NET EXCEPT WHEN RMS CANNOT ! MAP THE DAP STATUS CODE INTO A FAL STATUS CODE.) literal RMS$_IBF = 100180; literal RMS$_REF = 100188; literal RMS$_IFL = 100196; literal RMS$_DFL = 100204; literal RMS$_KNM = 100212; literal RMS$_IBK = 100220; literal RMS$_KSI = 100228; literal RMS$_LEX = 100236; literal RMS$_SEG = 100244; literal RMS$_SNE = 100252; ! ! NOT USED AS OF V4 literal RMS$_SPE = 100260; ! ! NOT USED AS OF V4 literal RMS$_UPI = 100268; literal RMS$_ACS = 100276; literal RMS$_STR = 100284; literal RMS$_FTM = 100292; literal RMS$_GBC = 100300; literal RMS$_DEADLOCK = 100308; literal RMS$_EXENQLM = 100316; literal RMS$_JOP = 100324; literal RMS$_RUM = 100332; literal RMS$_JNS = 100340; literal RMS$_NRU = 100348; literal RMS$_IFF = 100356; literal RMS$_DTFTRATBL = 100364; literal RMS$_DTFUNSTYP = 100372; literal RMS$_DTFVERMIS = 100380; ! + ! ! ERROR CODES - WITHOUT STV ! ! DTFACC AND DTFCRE WERE ORIGINALLY INCLUDED IN THIS FATAL SEVERITY ! (NO STV) GROUPING. IN ORDER TO CHANGE THEIR SEVERITY TO ERROR ! (NO STV) AND RETAIN THE SAME MESSAGE CODE VALUE, THE FOLLOWING ! SHIFTS IN SEVERITY FROM FATAL TO ERROR AND THEN BACK AGAIN ARE ! DONE, WHILE RETAINING THE SAME ORIGINAL BASE ASSOCIATED WITH EACH. ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_DTFACC = 100386; ! + ! ! SEVERE ERROR CODES - WITHOUT STV ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_BOGUSCOL = 100396; literal RMS$_ERRREADCOL = 100404; literal RMS$_ERRWRITECOL = 100412; literal RMS$_SNS = 100420; literal RMS$_NOEXTEND = 100428; ! + ! ! ERROR CODES - WITHOUT STV ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_DTFCRE = 100434; ! + ! ! SEVERE ERROR CODES - WITHOUT STV ! ! - ! BIT 16 = BIT 15 = 1, BIT 14 = 0 literal RMS$_DELJNS = 100444; literal RMS$_NOTSAMEJNL = 100452; literal RMS$_SNPPF = 100460; literal RMS$_NAML = 100468; literal RMS$_NAMLESS = 100476; literal RMS$_NAMLRSS = 100484; literal RMS$_NAMLFSSIZ = 100492; literal RMS$_NAMLFSINV = 100500; literal RMS$_BADGBH = 100508; literal RMS$_BADGBD = 100516; literal RMS$_FOPEXTMBZ = 100524; literal RMS$_INVOP_SSIO = 100532; literal RMS$_IVSF = 100540; ! + ! ! SEVERE ERRORS - WITH STV ERROR CODE (THAT IS, STV CONTAINS AN ASSOCIATED CONDITION CODE) ! ! - ! BIT 16 = BIT 15 = BIT 14 = 1 literal RMS$_ATR = 114892; literal RMS$_ATW = 114900; literal RMS$_CCF = 114908; literal RMS$_CDA = 114916; literal RMS$_CHN = 114924; literal RMS$_RER = 114932; literal RMS$_RMV = 114940; literal RMS$_RPL = 114948; literal RMS$_SYS = 114956; literal RMS$_WER = 114964; literal RMS$_WPL = 114972; literal RMS$_IFA = 114980; literal RMS$_WBE = 114988; literal RMS$_ENQ = 114996; literal RMS$_NETFAIL = 115004; literal RMS$_SUPPORT = 115012; literal RMS$_CRMP = 115020; literal RMS$_DTFCFGFIL = 115028; literal RMS$_REENT = 115036; literal RMS$_ACC_RUJ = 115044; literal RMS$_TMR = 115052; literal RMS$_ACC_AIJ = 115060; literal RMS$_ACC_BIJ = 115068; literal RMS$_ACC_ATJ = 115076; literal RMS$_DTFDEFFIL = 115084; literal RMS$_DTFREGFIL = 115092; literal RMS$_JNLNOTAUTH = 115100; literal RMS$_CRBUFOBJ = 115108; literal RMS$_RSESTK_ALLOC = 115116; ! ! ---- < End of module RMSMSG.R32 - 12-AUG-2010 13:57:04.28 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:10 by OpenVMS SDL EV3-3 ! Source: 26-FEB-2008 11:56:55 $1$DGA7361:[STARLET.SRC]RMSUSR.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $CVTFNMDEF *** ! ! String characteristic flags for SYS$CVT_FILENAME ! literal CVTFNM$M_WORD_CHARS = %X'1'; literal CVTFNM$M_NO_DELIMITERS = %X'2'; literal CVTFNM$M_FORCE_UPCASE = %X'4'; literal CVTFNM$S_INOUTFLAGS = 4; macro CVTFNM$V_WORD_CHARS = 0,0,1,0 %; ! characters are word-width macro CVTFNM$V_NO_DELIMITERS = 0,1,1,0 %; ! string does/should contain no fnm delimiters macro CVTFNM$V_FORCE_UPCASE = 0,2,1,0 %; ! do upcasing (ACPQIO-to-RMS onoly) ! ! Control codes for SYS$CVT_FILENAME ! literal CVTFNM$C_RMS_TO_ACPQIO = 1; literal CVTFNM$C_ACPQIO_TO_RMS = 2; literal CVTFNM$K_RMS_TO_ACPQIO = 1; literal CVTFNM$K_ACPQIO_TO_RMS = 2; !*** MODULE $FABDEF *** ! ! ! file access block (fab) definitions ! ! the fields thru ctx must not be modified due to ! commonality between fab/rab/xab ! literal FAB$C_BID = 3; ! code for fab literal FAB$M_PPF_RAT = %X'3FC0'; literal FAB$M_PPF_IND = %X'4000'; literal FAB$M_PPIFI = %X'8000'; literal FAB$M_ASY = %X'1'; literal FAB$M_MXV = %X'2'; literal FAB$M_SUP = %X'4'; literal FAB$M_TMP = %X'8'; literal FAB$M_TMD = %X'10'; literal FAB$M_DFW = %X'20'; literal FAB$M_SQO = %X'40'; literal FAB$M_RWO = %X'80'; literal FAB$M_POS = %X'100'; literal FAB$M_WCK = %X'200'; literal FAB$M_NEF = %X'400'; literal FAB$M_RWC = %X'800'; literal FAB$M_DMO = %X'1000'; literal FAB$M_SPL = %X'2000'; literal FAB$M_SCF = %X'4000'; literal FAB$M_DLT = %X'8000'; literal FAB$M_NFS = %X'10000'; literal FAB$M_UFO = %X'20000'; literal FAB$M_PPF = %X'40000'; literal FAB$M_INP = %X'80000'; literal FAB$M_CTG = %X'100000'; literal FAB$M_CBT = %X'200000'; literal FAB$M_SYNCSTS = %X'400000'; literal FAB$M_RCK = %X'800000'; literal FAB$M_NAM = %X'1000000'; literal FAB$M_CIF = %X'2000000'; literal FAB$M_ESC = %X'8000000'; literal FAB$M_TEF = %X'10000000'; literal FAB$M_OFP = %X'20000000'; literal FAB$M_KFO = %X'40000000'; literal FAB$M_EXTEND_FOP = %X'80000000'; literal FAB$M_ERL = %X'8000'; literal FAB$M_PUT = %X'1'; literal FAB$M_GET = %X'2'; literal FAB$M_DEL = %X'4'; literal FAB$M_UPD = %X'8'; literal FAB$M_TRN = %X'10'; literal FAB$M_BIO = %X'20'; literal FAB$M_BRO = %X'40'; literal FAB$M_EXE = %X'80'; literal FAB$M_SHRPUT = %X'1'; literal FAB$M_SHRGET = %X'2'; literal FAB$M_SHRDEL = %X'4'; literal FAB$M_SHRUPD = %X'8'; literal FAB$M_MSE = %X'10'; literal FAB$M_NIL = %X'20'; literal FAB$M_UPI = %X'40'; literal FAB$M_NQL = %X'80'; literal FAB$M_ORG = %X'F0'; literal FAB$C_SEQ = 0; ! sequential literal FAB$C_REL = 16; ! relative literal FAB$C_IDX = 32; ! indexed literal FAB$C_HSH = 48; ! hashed literal FAB$C_SPECIAL = 64; ! special file literal FAB$M_FTN = %X'1'; literal FAB$M_CR = %X'2'; literal FAB$M_PRN = %X'4'; literal FAB$M_BLK = %X'8'; literal FAB$M_MSB = %X'10'; literal FAB$C_FIFO = 1; ! FIFO special file literal FAB$C_CHAR_SPECIAL = 2; ! character special file literal FAB$C_BLOCK_SPECIAL = 3; ! block special file literal FAB$C_SYMLINK = 4; ! symbolic link special file for pre-V8.2 literal FAB$C_SYMBOLIC_LINK = 5; ! symbolic link special file for V8.2 and beyond literal FAB$C_RFM_DFLT = 2; ! var len is default literal FAB$C_UDF = 0; ! undefined (also stream binary) literal FAB$C_FIX = 1; ! fixed length records literal FAB$C_VAR = 2; ! variable length records literal FAB$C_VFC = 3; ! variable fixed control literal FAB$C_STM = 4; ! RMS-11 stream (valid only for sequential org) literal FAB$C_STMLF = 5; ! LF stream (valid only for sequential org) literal FAB$C_STMCR = 6; ! CR stream (valid only for sequential org) literal FAB$C_MAXRFM = 6; ! maximum rfm supported literal FAB$M_ONLY_RU = %X'1'; literal FAB$M_RU = %X'2'; literal FAB$M_BI = %X'4'; literal FAB$M_AI = %X'8'; literal FAB$M_AT = %X'10'; literal FAB$M_NEVER_RU = %X'20'; literal FAB$M_JOURNAL_FILE = %X'40'; literal FAB$M_SSIO_RQST = %X'1'; literal FAB$M_SSIO_GRANTED = %X'2'; literal FAB$M_SSIO_FOC = %X'4'; literal FAB$M_RCF_RU = %X'1'; literal FAB$M_RCF_AI = %X'2'; literal FAB$M_RCF_BI = %X'4'; literal FAB$S_FABDEF = 80; macro FAB$B_BID = 0,0,8,0 %; ! block id macro FAB$B_BLN = 1,0,8,0 %; ! block len macro FAB$R_IFI_OVERLAY = 2,0,16,0 %; macro FAB$W_IFI = 2,0,16,0 %; ! internal file index macro FAB$R_IFI_BITS = 2,0,16,0 %; macro FAB$V_PPF_RAT = 2,6,8,0 %; literal FAB$S_PPF_RAT = 8; ! rat value for process-permanent files macro FAB$V_PPF_IND = 2,14,1,0 %; ! indirect access to process-permanent file ! (i.e., restricted operations) macro FAB$V_PPIFI = 2,15,1,0 %; ! indicates that this is PPF file macro FAB$R_FOP_OVERLAY = 4,0,32,0 %; macro FAB$L_FOP = 4,0,32,0 %; ! file options macro FAB$R_FOP_BITS = 4,0,32,0 %; macro FAB$V_ASY = 4,0,1,0 %; ! asynchronous operations macro FAB$V_MXV = 4,1,1,0 %; ! maximize version number macro FAB$V_SUP = 4,2,1,0 %; ! supersede existing file macro FAB$V_TMP = 4,3,1,0 %; ! create temporary file macro FAB$V_TMD = 4,4,1,0 %; ! create temp file marked for delete macro FAB$V_DFW = 4,5,1,0 %; ! deferred write (rel and idx) macro FAB$V_SQO = 4,6,1,0 %; ! sequential access only macro FAB$V_RWO = 4,7,1,0 %; ! rewind mt on open macro FAB$V_POS = 4,8,1,0 %; ! use next magtape position macro FAB$V_WCK = 4,9,1,0 %; ! write checking macro FAB$V_NEF = 4,10,1,0 %; ! inhibit end of file positioning macro FAB$V_RWC = 4,11,1,0 %; ! rewind mt on close macro FAB$V_DMO = 4,12,1,0 %; ! dismount mt on close (not implemented) macro FAB$V_SPL = 4,13,1,0 %; ! spool file on close macro FAB$V_SCF = 4,14,1,0 %; ! submit command file on close macro FAB$V_DLT = 4,15,1,0 %; ! delete sub-option macro FAB$V_NFS = 4,16,1,0 %; ! non-file structured operation macro FAB$V_UFO = 4,17,1,0 %; ! user file open - no rms operations macro FAB$V_PPF = 4,18,1,0 %; ! process permanent file (pio segment) macro FAB$V_INP = 4,19,1,0 %; ! process-permanent file is 'input' macro FAB$V_CTG = 4,20,1,0 %; ! contiguous extension macro FAB$V_CBT = 4,21,1,0 %; ! contiguous best try macro FAB$V_SYNCSTS = 4,22,1,0 %; ! Synchronous status notification for asynchronous routines. macro FAB$V_RCK = 4,23,1,0 %; ! read checking macro FAB$V_NAM = 4,24,1,0 %; ! use name block dvi, did, and/or fid fields for open macro FAB$V_CIF = 4,25,1,0 %; ! create if non-existent macro FAB$V_ESC = 4,27,1,0 %; ! 'escape' to non-standard function ($modify) macro FAB$V_TEF = 4,28,1,0 %; ! truncate at eof on close (write-accessed seq. disk file only) macro FAB$V_OFP = 4,29,1,0 %; ! output file parse (only name type sticky) macro FAB$V_KFO = 4,30,1,0 %; ! known file open (image activator only release 1) macro FAB$V_EXTEND_FOP = 4,31,1,0 %; ! extend FOP macro FAB$R_FOP_BITS_OVERLAY = 4,0,32,0 %; macro FAB$V_ERL = 4,15,1,0 %; ! Erase Regardless of Lock macro FAB$L_STS = 8,0,32,0 %; ! status macro FAB$L_STV = 12,0,32,0 %; ! status value macro FAB$L_ALQ = 16,0,32,0 %; ! allocation quantity macro FAB$W_DEQ = 20,0,16,0 %; ! default allocation quantity macro FAB$R_FAC_OVERLAY = 22,0,8,0 %; macro FAB$B_FAC = 22,0,8,0 %; ! file access macro FAB$R_FAC_BITS = 22,0,8,0 %; macro FAB$V_PUT = 22,0,1,0 %; ! put access macro FAB$V_GET = 22,1,1,0 %; ! get access macro FAB$V_DEL = 22,2,1,0 %; ! delete access macro FAB$V_UPD = 22,3,1,0 %; ! update access macro FAB$V_TRN = 22,4,1,0 %; ! truncate access macro FAB$V_BIO = 22,5,1,0 %; ! block i/o access macro FAB$V_BRO = 22,6,1,0 %; ! block and record i/o access macro FAB$V_EXE = 22,7,1,0 %; ! execute access (caller must be exec or kernel mode, ! ufo must also be set) macro FAB$R_SHR_OVERLAY = 23,0,8,0 %; macro FAB$B_SHR = 23,0,8,0 %; ! file sharing macro FAB$R_SHR_BITS = 23,0,8,0 %; macro FAB$V_SHRPUT = 23,0,1,0 %; ! put access macro FAB$V_SHRGET = 23,1,1,0 %; ! get access macro FAB$V_SHRDEL = 23,2,1,0 %; ! delete access macro FAB$V_SHRUPD = 23,3,1,0 %; ! update access macro FAB$V_MSE = 23,4,1,0 %; ! multi-stream connects enabled macro FAB$V_NIL = 23,5,1,0 %; ! no sharing macro FAB$V_UPI = 23,6,1,0 %; ! user provided interlocking (allows multiple ! writers to seq. files) macro FAB$V_NQL = 23,7,1,0 %; ! no query locking (file level) macro FAB$L_CTX = 24,0,32,0 %; ! user context ! -----***** macro FAB$B_RTV = 28,0,8,1 %; ! retrieval window size macro FAB$R_ORG_OVERLAY = 29,0,8,0 %; macro FAB$B_ORG = 29,0,8,0 %; ! file organization macro FAB$R_ORG_BITS = 29,0,8,0 %; macro FAB$V_ORG = 29,4,4,0 %; literal FAB$S_ORG = 4; macro FAB$R_RAT_OVERLAY = 30,0,8,0 %; macro FAB$B_RAT = 30,0,8,0 %; ! record format macro FAB$R_RAT_BITS = 30,0,8,0 %; macro FAB$V_FTN = 30,0,1,0 %; ! fortran carriage-ctl macro FAB$V_CR = 30,1,1,0 %; ! lf-record-cr carriage ctl macro FAB$V_PRN = 30,2,1,0 %; ! print-file carriage ctl macro FAB$V_BLK = 30,3,1,0 %; ! records don't cross block boundaries macro FAB$V_MSB = 30,4,1,0 %; ! MSB formatted byte count macro FAB$B_SPECIAL_TYPE = 30,0,8,0 %; ! type of special file macro FAB$B_RFM = 31,0,8,0 %; ! record format macro FAB$R_JOURNAL_OVERLAY = 32,0,8,0 %; macro FAB$B_JOURNAL = 32,0,8,0 %; ! journaling options (from FH2$B_JOURNAL) macro FAB$R_JOURNAL_BITS = 32,0,8,0 %; ! note: only one of RU, ONLY_RU, NEVER_RU ! may be set at a time macro FAB$V_ONLY_RU = 32,0,1,0 %; ! file is accessible only in recovery unit macro FAB$V_RU = 32,1,1,0 %; ! enable recovery unit journal macro FAB$V_BI = 32,2,1,0 %; ! enable before image journal macro FAB$V_AI = 32,3,1,0 %; ! enable after image journal macro FAB$V_AT = 32,4,1,0 %; ! enable audit trail journal macro FAB$V_NEVER_RU = 32,5,1,0 %; ! file is never accessible in recovery unit macro FAB$V_JOURNAL_FILE = 32,6,1,0 %; ! this is a journal file macro FAB$B_RU_FACILITY = 33,0,8,0 %; ! recoverable facility id number macro FAB$R_FOPEXT_OVERLAY = 34,0,16,0 %; macro FAB$W_FOPEXT = 34,0,16,0 %; ! FOP extension macro FAB$R_FOPEXT_BITS = 34,0,16,0 %; macro FAB$V_SSIO_RQST = 34,0,1,0 %; ! SSIO access requested macro FAB$V_SSIO_GRANTED = 34,1,1,0 %; ! SSIO access granted macro FAB$V_SSIO_FOC = 34,2,1,0 %; ! SSIO flush-on-close macro FAB$L_XAB = 36,0,32,1 %; ! xab address macro FAB$R_NAM_OVERLAY = 40,0,32,0 %; macro FAB$L_NAM = 40,0,32,1 %; ! nam block address macro FAB$L_NAML = 40,0,32,1 %; ! naml block address macro FAB$L_FNA = 44,0,32,1 %; ! file name string address macro FAB$L_DNA = 48,0,32,1 %; ! default file name string addr macro FAB$B_FNS = 52,0,8,0 %; ! file name string size macro FAB$B_DNS = 53,0,8,0 %; ! default name string size macro FAB$W_MRS = 54,0,16,0 %; ! maximum record size macro FAB$L_MRN = 56,0,32,1 %; ! maximum record number macro FAB$W_BLS = 60,0,16,0 %; ! blocksize for tape macro FAB$B_BKS = 62,0,8,0 %; ! bucket size macro FAB$B_FSZ = 63,0,8,0 %; ! fixed header size macro FAB$L_DEV = 64,0,32,0 %; ! device characteristics macro FAB$L_SDC = 68,0,32,0 %; ! spooling device characteristics macro FAB$W_GBC = 72,0,16,0 %; ! Global buffer count macro FAB$R_ACMODES_OVERLAY = 74,0,8,0 %; macro FAB$B_ACMODES = 74,0,8,0 %; ! agent access modes macro FAB$R_ACMODES_BITS = 74,0,8,0 %; macro FAB$V_LNM_MODE = 74,0,2,0 %; literal FAB$S_LNM_MODE = 2; ! ACMODE for log nams macro FAB$V_CHAN_MODE = 74,2,2,0 %; literal FAB$S_CHAN_MODE = 2; ! ACMODE for channel macro FAB$V_FILE_MODE = 74,4,2,0 %; literal FAB$S_FILE_MODE = 2; ! ACMODE to use for determining file accessibility macro FAB$V_CALLERS_MODE = 74,6,2,0 %; literal FAB$S_CALLERS_MODE = 2; ! ACMODE for user structure probing; ! maximized with actual mode of caller macro FAB$R_RCF_OVERLAY = 75,0,8,0 %; ! recovery control flags macro FAB$B_RCF = 75,0,8,0 %; ! (only for use by RMS Recovery) macro FAB$R_RCF_BITS = 75,0,8,0 %; macro FAB$V_RCF_RU = 75,0,1,0 %; ! recovery unit recovery macro FAB$V_RCF_AI = 75,1,1,0 %; ! after image recovery macro FAB$V_RCF_BI = 75,2,1,0 %; ! before image recovery macro FAB$W_GBC_INITIAL = 76,0,16,0 %; ! Initial Global Buffer Count declared for file macro FAB$W_RESERVED_MBZ = 78,0,16,0 %; ! MBZ - reserved to HP for future use ! basealign on aggregate FABDEF operates after aggregate end literal FAB$K_BLN = 80; ! length of fab literal FAB$C_BLN = 80; ! length of fab !*** MODULE $RABDEF *** ! ! record access block (rab) definitions ! ! there is one rab per connected stream ! it is used for all communications between the user ! and rms concerning operations on the stream ! ! the fields thru ctx cannot be changed due to commonality ! with the fab ! literal RAB$C_BID = 1; ! code for rab literal RAB$M_PPF_RAT = %X'3FC0'; literal RAB$M_PPF_IND = %X'4000'; literal RAB$M_PPISI = %X'8000'; literal RAB$M_ASY = %X'1'; literal RAB$M_TPT = %X'2'; literal RAB$M_REA = %X'4'; literal RAB$M_RRL = %X'8'; literal RAB$M_UIF = %X'10'; literal RAB$M_MAS = %X'20'; literal RAB$M_FDL = %X'40'; literal RAB$M_REV = %X'80'; literal RAB$M_EOF = %X'100'; literal RAB$M_RAH = %X'200'; literal RAB$M_WBH = %X'400'; literal RAB$M_BIO = %X'800'; literal RAB$M_CDK = %X'1000'; literal RAB$M_LOA = %X'2000'; literal RAB$M_LIM = %X'4000'; literal RAB$M_SYNCSTS = %X'8000'; literal RAB$M_LOC = %X'10000'; literal RAB$M_WAT = %X'20000'; literal RAB$M_ULK = %X'40000'; literal RAB$M_RLK = %X'80000'; literal RAB$M_NLK = %X'100000'; literal RAB$M_KGE = %X'200000'; literal RAB$M_KGT = %X'400000'; literal RAB$M_NXR = %X'800000'; literal RAB$M_RNE = %X'1000000'; literal RAB$M_TMO = %X'2000000'; literal RAB$M_CVT = %X'4000000'; literal RAB$M_RNF = %X'8000000'; literal RAB$M_ETO = %X'10000000'; literal RAB$M_PTA = %X'20000000'; literal RAB$M_PMT = %X'40000000'; literal RAB$M_CCO = %X'80000000'; literal RAB$M_EQNXT = %X'200000'; literal RAB$M_NXT = %X'400000'; literal RAB$M_NQL = %X'1'; literal RAB$M_NODLCKWT = %X'2'; literal RAB$M_NODLCKBLK = %X'4'; literal RAB$C_SEQ = 0; ! sequential access literal RAB$C_KEY = 1; ! keyed access literal RAB$C_RFA = 2; ! rfa access literal RAB$C_STM = 3; ! stream access (valid only for sequential org) literal RAB$C_MAXRAC = 2; ! Maximum RAC value currently supported by RMS literal RAB$S_RABDEF = 68; macro RAB$B_BID = 0,0,8,0 %; ! block id macro RAB$B_BLN = 1,0,8,0 %; ! block length macro RAB$R_ISI_OVERLAY = 2,0,16,0 %; macro RAB$W_ISI = 2,0,16,0 %; ! internal stream index ! (ifi in fab) macro RAB$R_ISI_BITS = 2,0,16,0 %; macro RAB$V_PPF_RAT = 2,6,8,0 %; literal RAB$S_PPF_RAT = 8; ! rat value for process-permanent files macro RAB$V_PPF_IND = 2,14,1,0 %; ! indirect access to process-permanent file ! (i.e., restricted operations) macro RAB$V_PPISI = 2,15,1,0 %; ! indicates that this is process-permanent stream macro RAB$R_ROP_OVERLAY = 4,0,32,0 %; macro RAB$L_ROP = 4,0,32,0 %; ! record options macro RAB$R_ROP_BITS0 = 4,0,32,0 %; macro RAB$V_ASY = 4,0,1,0 %; ! asynchronous operations macro RAB$V_TPT = 4,1,1,0 %; ! truncate put - allow sequential put not at ! eof, thus truncating file (seq. org only) ! ! these next two should be in the byte for bits ! input to $find or $get, but there is no room there ! macro RAB$V_REA = 4,2,1,0 %; ! lock record for read only, allow other readers macro RAB$V_RRL = 4,3,1,0 %; ! read record regardless of lock ! macro RAB$V_UIF = 4,4,1,0 %; ! update if existent macro RAB$V_MAS = 4,5,1,0 %; ! mass-insert mode macro RAB$V_FDL = 4,6,1,0 %; ! fast record deletion macro RAB$V_REV = 4,7,1,0 %; ! reverse-search - can only be set with NXT or EQNXT ! macro RAB$V_EOF = 4,8,1,0 %; ! connect to eof macro RAB$V_RAH = 4,9,1,0 %; ! read ahead macro RAB$V_WBH = 4,10,1,0 %; ! write behind macro RAB$V_BIO = 4,11,1,0 %; ! connect for bio only macro RAB$V_CDK = 4,12,1,0 %; ! check for duplicate keys on $GET macro RAB$V_LOA = 4,13,1,0 %; ! use bucket fill percentage macro RAB$V_LIM = 4,14,1,0 %; ! compare for key limit reached on $get/$find seq. (idx only) macro RAB$V_SYNCSTS = 4,15,1,0 %; ! Synchronous status notification for asynchronous routines. ! ! the following bits are input to ! $find or $get, (see above also REA and RRL) ! (separate byte) ! macro RAB$V_LOC = 4,16,1,0 %; ! use locate mode macro RAB$V_WAT = 4,17,1,0 %; ! wait if record not available macro RAB$V_ULK = 4,18,1,0 %; ! manual unlocking macro RAB$V_RLK = 4,19,1,0 %; ! allow readers for this locked record macro RAB$V_NLK = 4,20,1,0 %; ! do not lock record macro RAB$V_KGE = 4,21,1,0 %; ! key > or = macro RAB$V_KGT = 4,22,1,0 %; ! key greater than macro RAB$V_NXR = 4,23,1,0 %; ! get non-existent record ! ! the following bits are terminal qualifiers only ! (separate byte) ! macro RAB$V_RNE = 4,24,1,0 %; ! read no echo macro RAB$V_TMO = 4,25,1,0 %; ! use time-out period macro RAB$V_CVT = 4,26,1,0 %; ! convert to upper case macro RAB$V_RNF = 4,27,1,0 %; ! read no filter macro RAB$V_ETO = 4,28,1,0 %; ! extended terminal operation macro RAB$V_PTA = 4,29,1,0 %; ! purge type ahead macro RAB$V_PMT = 4,30,1,0 %; ! use prompt buffer macro RAB$V_CCO = 4,31,1,0 %; ! cancel control o on output macro RAB$R_ROP_BITS1 = 4,0,24,0 %; macro RAB$V_EQNXT = 4,21,1,0 %; ! Synonyms for KGE and macro RAB$V_NXT = 4,22,1,0 %; ! KGT ! the following bits may be ! input to various rab-related ! operations ! macro RAB$R_ROP_FIELDS = 4,0,32,0 %; macro RAB$B_ROP1 = 5,0,8,0 %; ! various options macro RAB$B_ROP2 = 6,0,8,0 %; ! get/find options (use of this field discouraged ! due to REA and RRL being in a different byte) macro RAB$B_ROP3 = 7,0,8,0 %; ! terminal read options ! macro RAB$L_STS = 8,0,32,0 %; ! status macro RAB$R_STV_OVERLAY = 12,0,32,0 %; macro RAB$L_STV = 12,0,32,0 %; ! status value macro RAB$R_STV_FIELDS = 12,0,32,0 %; macro RAB$W_STV0 = 12,0,16,0 %; ! low word of stv macro RAB$W_STV2 = 14,0,16,0 %; ! high word of stv macro RAB$R_RFA_OVERLAY = 16,0,0,0 %; macro RAB$W_RFA = 16,0,0,0 %; literal RAB$S_RFA = 6; ! record's file address macro RAB$R_RFA_FIELDS = 16,0,0,0 %; macro RAB$L_RFA0 = 16,0,32,0 %; macro RAB$W_RFA4 = 20,0,16,0 %; ! to the rfa field to be a move quad, overwriting ! this reserved word) macro RAB$L_CTX = 24,0,32,0 %; ! user context ! -----***** macro RAB$R_ROP_2_OVERLAY = 28,0,16,0 %; ! macro RAB$W_ROP_2 = 28,0,16,0 %; ! extension to record options in traditional RAB macro RAB$R_ROP_2_BITS0 = 28,0,16,0 %; macro RAB$V_NQL = 28,0,1,0 %; ! no query locking (record level) macro RAB$V_NODLCKWT = 28,1,1,0 %; ! no deadlock wait macro RAB$V_NODLCKBLK = 28,2,1,0 %; ! no deadlock blocking macro RAB$B_RAC = 30,0,8,0 %; ! record access macro RAB$B_TMO = 31,0,8,0 %; ! time-out period macro RAB$W_USZ = 32,0,16,0 %; ! user buffer size macro RAB$W_RSZ = 34,0,16,0 %; ! record buffer size macro RAB$L_UBF = 36,0,32,1 %; ! user buffer address macro RAB$L_RBF = 40,0,32,1 %; ! record buffer address macro RAB$L_RHB = 44,0,32,1 %; ! record header buffer addr macro RAB$R_KBF_OVERLAY = 48,0,32,0 %; macro RAB$L_KBF = 48,0,32,1 %; ! key buffer address macro RAB$L_PBF = 48,0,32,1 %; ! prompt buffer addr macro RAB$R_KSZ_OVERLAY = 52,0,8,0 %; macro RAB$B_KSZ = 52,0,8,0 %; ! key buffer size macro RAB$B_PSZ = 52,0,8,0 %; ! prompt buffer size macro RAB$B_KRF = 53,0,8,0 %; ! key of reference macro RAB$B_MBF = 54,0,8,1 %; ! multi-buffer count macro RAB$B_MBC = 55,0,8,0 %; ! multi-block count macro RAB$R_BKT_OVERLAY = 56,0,32,0 %; macro RAB$L_BKT = 56,0,32,0 %; ! bucket hash code, vbn, or rrn macro RAB$L_DCT = 56,0,32,0 %; ! duplicates count on key accessed on alternate key macro RAB$L_FAB = 60,0,32,1 %; ! related fab for connect macro RAB$L_XAB = 64,0,32,1 %; ! XAB address ! end of traditional 32-bit rab literal RAB$K_BLN = 68; ! length of traditional 32-bit rab literal RAB$C_BLN = 68; ! length of traditional 32-bit rab ! ! 64-bit variant of the record access block (rab) definitions ! ! The 64-bit rab consists of the traditional 32-bit rab ! followed by additional cells, added mainly to provide ! support for a 64-bit address for user buffers (UBF, RBF, ! KBF, RHB). ! ! literal RAB64$C_BID = 1; ! code for rab literal RAB64$M_PPF_RAT = %X'3FC0'; literal RAB64$M_PPF_IND = %X'4000'; literal RAB64$M_PPISI = %X'8000'; literal RAB64$M_ASY = %X'1'; literal RAB64$M_TPT = %X'2'; literal RAB64$M_REA = %X'4'; literal RAB64$M_RRL = %X'8'; literal RAB64$M_UIF = %X'10'; literal RAB64$M_MAS = %X'20'; literal RAB64$M_FDL = %X'40'; literal RAB64$M_REV = %X'80'; literal RAB64$M_EOF = %X'100'; literal RAB64$M_RAH = %X'200'; literal RAB64$M_WBH = %X'400'; literal RAB64$M_BIO = %X'800'; literal RAB64$M_CDK = %X'1000'; literal RAB64$M_LOA = %X'2000'; literal RAB64$M_LIM = %X'4000'; literal RAB64$M_SYNCSTS = %X'8000'; literal RAB64$M_LOC = %X'10000'; literal RAB64$M_WAT = %X'20000'; literal RAB64$M_ULK = %X'40000'; literal RAB64$M_RLK = %X'80000'; literal RAB64$M_NLK = %X'100000'; literal RAB64$M_KGE = %X'200000'; literal RAB64$M_KGT = %X'400000'; literal RAB64$M_NXR = %X'800000'; literal RAB64$M_RNE = %X'1000000'; literal RAB64$M_TMO = %X'2000000'; literal RAB64$M_CVT = %X'4000000'; literal RAB64$M_RNF = %X'8000000'; literal RAB64$M_ETO = %X'10000000'; literal RAB64$M_PTA = %X'20000000'; literal RAB64$M_PMT = %X'40000000'; literal RAB64$M_CCO = %X'80000000'; literal RAB64$M_EQNXT = %X'200000'; literal RAB64$M_NXT = %X'400000'; literal RAB64$M_NQL = %X'1'; literal RAB64$M_NODLCKWT = %X'2'; literal RAB64$M_NODLCKBLK = %X'4'; literal RAB64$C_SEQ = 0; ! sequential access literal RAB64$C_KEY = 1; ! keyed access literal RAB64$C_RFA = 2; ! rfa access literal RAB64$C_STM = 3; ! stream access (valid only for sequential org) literal RAB64$C_MAXRAC = 2; ! Maximum RAC value currently supported by RMS literal RAB64$M_RESERVED29 = %X'20000000'; literal RAB64$M_RESERVED30 = %X'40000000'; literal RAB64$M_RESERVED31 = %X'80000000'; literal RAB$M_RESERVED29 = 536870912; literal RAB$M_RESERVED30 = 1073741824; literal RAB$M_RESERVED31 = -2147483648; literal RAB64$S_RAB64DEF = 144; macro RAB64$B_BID = 0,0,8,0 %; ! block id macro RAB64$B_BLN = 1,0,8,0 %; ! block length macro RAB64$R_ISI_OVERLAY = 2,0,16,0 %; macro RAB64$W_ISI = 2,0,16,0 %; ! internal stream index ! (ifi in fab) macro RAB64$R_ISI_BITS = 2,0,16,0 %; macro RAB64$V_PPF_RAT = 2,6,8,0 %; literal RAB64$S_PPF_RAT = 8; ! rat value for process-permanent files macro RAB64$V_PPF_IND = 2,14,1,0 %; ! indirect access to process-permanent file ! (i.e., restricted operations) macro RAB64$V_PPISI = 2,15,1,0 %; ! indicates that this is process-permanent stream macro RAB64$R_ROP_OVERLAY = 4,0,32,0 %; macro RAB64$L_ROP = 4,0,32,0 %; ! record options macro RAB64$R_ROP_BITS0 = 4,0,32,0 %; macro RAB64$V_ASY = 4,0,1,0 %; ! asynchronous operations macro RAB64$V_TPT = 4,1,1,0 %; ! truncate put - allow sequential put not at ! eof, thus truncating file (seq. org only) ! ! these next two should be in the byte for bits ! input to $find or $get, but there is no room there ! macro RAB64$V_REA = 4,2,1,0 %; ! lock record for read only, allow other readers macro RAB64$V_RRL = 4,3,1,0 %; ! read record regardless of lock ! macro RAB64$V_UIF = 4,4,1,0 %; ! update if existent macro RAB64$V_MAS = 4,5,1,0 %; ! mass-insert mode macro RAB64$V_FDL = 4,6,1,0 %; ! fast record deletion macro RAB64$V_REV = 4,7,1,0 %; ! reverse-search - can only be set with NXT or EQNXT ! macro RAB64$V_EOF = 4,8,1,0 %; ! connect to eof macro RAB64$V_RAH = 4,9,1,0 %; ! read ahead macro RAB64$V_WBH = 4,10,1,0 %; ! write behind macro RAB64$V_BIO = 4,11,1,0 %; ! connect for bio only macro RAB64$V_CDK = 4,12,1,0 %; ! check for duplicate keys on $GET macro RAB64$V_LOA = 4,13,1,0 %; ! use bucket fill percentage macro RAB64$V_LIM = 4,14,1,0 %; ! compare for key limit reached on $get/$find seq. (idx only) macro RAB64$V_SYNCSTS = 4,15,1,0 %; ! Synchronous status notification for asynchronous routines. ! ! the following bits are input to ! $find or $get, (see above also REA and RRL) ! (separate byte) ! macro RAB64$V_LOC = 4,16,1,0 %; ! use locate mode macro RAB64$V_WAT = 4,17,1,0 %; ! wait if record not available macro RAB64$V_ULK = 4,18,1,0 %; ! manual unlocking macro RAB64$V_RLK = 4,19,1,0 %; ! allow readers for this locked record macro RAB64$V_NLK = 4,20,1,0 %; ! do not lock record macro RAB64$V_KGE = 4,21,1,0 %; ! key > or = macro RAB64$V_KGT = 4,22,1,0 %; ! key greater than macro RAB64$V_NXR = 4,23,1,0 %; ! get non-existent record ! ! the following bits are terminal qualifiers only ! (separate byte) ! macro RAB64$V_RNE = 4,24,1,0 %; ! read no echo macro RAB64$V_TMO = 4,25,1,0 %; ! use time-out period macro RAB64$V_CVT = 4,26,1,0 %; ! convert to upper case macro RAB64$V_RNF = 4,27,1,0 %; ! read no filter macro RAB64$V_ETO = 4,28,1,0 %; ! extended terminal operation macro RAB64$V_PTA = 4,29,1,0 %; ! purge type ahead macro RAB64$V_PMT = 4,30,1,0 %; ! use prompt buffer macro RAB64$V_CCO = 4,31,1,0 %; ! cancel control o on output macro RAB64$R_ROP_BITS1 = 4,0,24,0 %; macro RAB64$V_EQNXT = 4,21,1,0 %; ! Synonyms for KGE and macro RAB64$V_NXT = 4,22,1,0 %; ! KGT ! the following bits may be ! input to various rab-related ! operations ! macro RAB64$R_ROP_FIELDS = 4,0,32,0 %; macro RAB64$B_ROP1 = 5,0,8,0 %; ! various options macro RAB64$B_ROP2 = 6,0,8,0 %; ! get/find options (use of this field discouraged ! due to REA and RRL being in a different byte) macro RAB64$B_ROP3 = 7,0,8,0 %; ! terminal read options ! macro RAB64$L_STS = 8,0,32,0 %; ! status macro RAB64$R_STV_OVERLAY = 12,0,32,0 %; macro RAB64$L_STV = 12,0,32,0 %; ! status value macro RAB64$R_STV_FIELDS = 12,0,32,0 %; macro RAB64$W_STV0 = 12,0,16,0 %; ! low word of stv macro RAB64$W_STV2 = 14,0,16,0 %; ! high word of stv macro RAB64$R_RFA_OVERLAY = 16,0,0,0 %; macro RAB64$W_RFA = 16,0,0,0 %; literal RAB64$S_RFA = 6; ! record's file address macro RAB64$R_RFA_FIELDS = 16,0,0,0 %; macro RAB64$L_RFA0 = 16,0,32,0 %; macro RAB64$W_RFA4 = 20,0,16,0 %; ! to the rfa field to be a move quad, overwriting ! this reserved word) macro RAB64$L_CTX = 24,0,32,0 %; ! user context ! -----***** macro RAB64$R_ROP_2_OVERLAY = 28,0,16,0 %; ! macro RAB64$W_ROP_2 = 28,0,16,0 %; ! extension to record options in traditional RAB macro RAB64$R_ROP_2_BITS0 = 28,0,16,0 %; macro RAB64$V_NQL = 28,0,1,0 %; ! no query locking (record level) macro RAB64$V_NODLCKWT = 28,1,1,0 %; ! no deadlock wait macro RAB64$V_NODLCKBLK = 28,2,1,0 %; ! no deadlock blocking macro RAB64$B_RAC = 30,0,8,0 %; ! record access macro RAB64$B_TMO = 31,0,8,0 %; ! time-out period macro RAB64$W_USZ = 32,0,16,0 %; ! user buffer size macro RAB64$W_RSZ = 34,0,16,0 %; ! record buffer size macro RAB64$L_UBF = 36,0,32,1 %; ! user buffer address macro RAB64$L_RBF = 40,0,32,1 %; ! record buffer address macro RAB64$L_RHB = 44,0,32,1 %; ! record header buffer addr macro RAB64$R_KBF_OVERLAY = 48,0,32,0 %; macro RAB64$L_KBF = 48,0,32,1 %; ! key buffer address macro RAB64$L_PBF = 48,0,32,1 %; ! prompt buffer addr macro RAB64$R_KSZ_OVERLAY = 52,0,8,0 %; macro RAB64$B_KSZ = 52,0,8,0 %; ! key buffer size macro RAB64$B_PSZ = 52,0,8,0 %; ! prompt buffer size macro RAB64$B_KRF = 53,0,8,0 %; ! key of reference macro RAB64$B_MBF = 54,0,8,1 %; ! multi-buffer count macro RAB64$B_MBC = 55,0,8,0 %; ! multi-block count macro RAB64$R_BKT_OVERLAY = 56,0,32,0 %; macro RAB64$L_BKT = 56,0,32,0 %; ! bucket hash code, vbn, or rrn macro RAB64$L_DCT = 56,0,32,0 %; ! duplicates count on key accessed on alternate key macro RAB64$L_FAB = 60,0,32,1 %; ! related fab for connect macro RAB64$L_XAB = 64,0,32,1 %; ! XAB address macro RAB64$R_VERSION64_OVERLAY = 68,0,32,0 %; macro RAB64$L_VERSION = 68,0,32,0 %; ! 64-bit rab extension version macro RAB$L_VERSION = 68,0,32,0 %; ! 64-bit rab extension version macro RAB64$R_VERSION_FIELDS_1 = 68,0,32,0 %; macro RAB64$W_VERMINOR = 68,0,16,0 %; ! minor version ident macro RAB64$W_VERMAJOR = 70,0,16,0 %; ! major version ident macro RAB64$R_VERSION_FIELDS_2 = 68,0,32,0 %; macro RAB$W_VERMINOR = 68,0,16,0 %; ! minor version ident macro RAB$W_VERMAJOR = 70,0,16,0 %; ! major version ident macro RAB64$R_UBF64_OVERLAY = 72,0,0,0 %; macro RAB64$PQ_UBF = 72,0,0,1 %; literal RAB64$S_UBF = 8; ! 64-bit user buffer address macro RAB$PQ_UBF = 72,0,0,1 %; literal RAB$S_UBF = 8; ! 64-bit user buffer address macro RAB64$R_USZ64_OVERLAY = 80,0,0,0 %; macro RAB64$Q_USZ = 80,0,0,0 %; literal RAB64$S_USZ = 8; ! 64-bit user buffer size macro RAB$Q_USZ = 80,0,0,0 %; literal RAB$S_USZ = 8; ! 64-bit user buffer size macro RAB64$R_RBF64_OVERLAY = 88,0,0,0 %; macro RAB64$PQ_RBF = 88,0,0,1 %; literal RAB64$S_RBF = 8; ! 64-bit record buffer address macro RAB$PQ_RBF = 88,0,0,1 %; literal RAB$S_RBF = 8; ! 64-bit record buffer address macro RAB64$R_RSZ64_OVERLAY = 96,0,0,0 %; macro RAB64$Q_RSZ = 96,0,0,0 %; literal RAB64$S_RSZ = 8; ! 64-bit record buffer size macro RAB$Q_RSZ = 96,0,0,0 %; literal RAB$S_RSZ = 8; ! 64-bit record buffer size macro RAB64$R_KBF64_OVERLAY = 104,0,0,0 %; macro RAB64$PQ_KBF = 104,0,0,1 %; literal RAB64$S_KBF = 8; ! 64-bit key buffer address macro RAB$PQ_KBF = 104,0,0,1 %; literal RAB$S_KBF = 8; ! 64-bit key buffer address macro RAB64$R_RHB64_OVERLAY = 112,0,0,0 %; macro RAB64$PQ_RHB = 112,0,0,1 %; literal RAB64$S_RHB = 8; ! 64-bit record header buffer addr macro RAB$PQ_RHB = 112,0,0,1 %; literal RAB$S_RHB = 8; ! 64-bit record header buffer addr macro RAB64$R_CTX64_OVERLAY = 120,0,0,0 %; macro RAB64$Q_CTX = 120,0,0,0 %; literal RAB64$S_CTX = 8; ! 64-bit user context macro RAB$Q_CTX = 120,0,0,0 %; literal RAB$S_CTX = 8; ! 64-bit user context macro RAB64$R_ROPEXT_OVERLAY_RAB64 = 128,0,32,0 %; macro RAB64$L_ROPEXT = 128,0,32,0 %; ! extended record options macro RAB$L_ROPEXT = 128,0,32,0 %; ! extended record options macro RAB64$R_ROPEXT_BITS0_1 = 128,0,32,0 %; macro RAB64$V_RESERVED29 = 128,29,1,0 %; ! MBZ - reserved for Digital macro RAB64$V_RESERVED30 = 128,30,1,0 %; ! MBZ - reserved for Digital macro RAB64$V_RESERVED31 = 128,31,1,0 %; ! MBZ - reserved for Digital macro RAB64$R_ROPEXT_BITS0_2 = 128,0,32,0 %; macro RAB$V_RESERVED29 = 128,29,1,0 %; ! MBZ - reserved for Digital macro RAB$V_RESERVED30 = 128,30,1,0 %; ! MBZ - reserved for Digital macro RAB$V_RESERVED31 = 128,31,1,0 %; ! MBZ - reserved for Digital macro RAB64$R_MBF_OVERLAY = 132,0,32,0 %; macro RAB64$L_MBF = 132,0,32,0 %; ! longword multi-buffer count macro RAB$L_MBF = 132,0,32,0 %; ! longword multi-buffer count macro RAB64$R_MBC_OVERLAY = 136,0,32,0 %; macro RAB64$L_MBC = 136,0,32,0 %; ! longword multi-block count macro RAB$L_MBC = 136,0,32,0 %; ! longword multi-block count macro RAB64$R_RESERVED_1_OVERLAY = 140,0,32,0 %; macro RAB64$L_RESERVED_1 = 140,0,32,0 %; ! MBZ - reserved for Digital macro RAB$L_RESERVED_1 = 140,0,32,0 %; ! MBZ - reserved for Digital ! end of 64-bit rab variant literal RAB64$K_BLN64 = 144; ! length of 64-bit rab variant literal RAB64$C_BLN64 = 144; ! length of 64-bit rab variant literal RAB$K_BLN64 = 144; ! length of 64-bit rab variant literal RAB$C_BLN64 = 144; ! length of 64-bit rab variant literal RAB$K_MAXBLN = 144; ! current maximum length of rab literal RAB$C_MAXBLN = 144; ! current maximum length of rab !*** MODULE $NAMDEF *** ! ! name block field definitions ! ! the nam block is used to communicate optional ! filename-related information ! literal NAM$C_BID = 2; ! code for nam block literal NAM$C_MAXRSS = 255; ! maximum resultant name string size (network) literal NAM$C_MAXRSSLCL = 255; ! maximum resultant name string size (local) literal NAM$M_PWD = %X'1'; literal NAM$M_FILL_1 = %X'2'; literal NAM$M_FILL_2 = %X'4'; literal NAM$M_SYNCHK = %X'8'; literal NAM$M_NOCONCEAL = %X'10'; literal NAM$M_SLPARSE = %X'20'; literal NAM$M_SRCHXABS = %X'40'; literal NAM$M_NO_SHORT_UPCASE = %X'80'; literal NAM$C_UFS = 0; ! Unknown file system for remote file access or ! not applicable for local file access or literal NAM$C_NO_RFS = 0; ! task-to-task operation literal NAM$C_RMS11 = 1; ! RMS-11 literal NAM$C_RMS20 = 2; ! RMS-20 literal NAM$C_RMS32 = 3; ! RMS-32 literal NAM$C_FCS11 = 4; ! FCS-11 literal NAM$C_RT11FS = 5; ! RT-11 file system literal NAM$C_TOPS20FS = 7; ! TOPS-20 file system literal NAM$C_TOPS10FS = 8; ! TOPS-10 file system literal NAM$C_RMS32S = 10; ! RMS-32 subset (e.g., VAXELAN) literal NAM$C_CPMFS = 11; ! CP/M file system literal NAM$C_MS_DOSFS = 12; ! MS/DOS file system literal NAM$C_ULTRIX32_FS = 13; ! Ultrix-32 file system literal NAM$C_ULTRIX11_FS = 14; ! Ultrix-11 file system literal DAP$K_SNADTF_FS = 15; ! SNADTF compatable FS ! +++++++++++++++++++++++ literal NAM$C_DVI = 16; ! length of dvi field ! +++++***** literal NAM$M_IFI = %X'10000'; literal NAM$M_SRCHNMF = %X'40000000'; literal NAM$M_SVCTX = %X'80000000'; literal NAM$K_BLN_V2 = 56; ! Version 2 name block length literal NAM$C_BLN_V2 = 56; ! Version 2 name block length literal NAM$M_EXP_VER = %X'1'; literal NAM$M_EXP_TYPE = %X'2'; literal NAM$M_EXP_NAME = %X'4'; literal NAM$M_WILD_VER = %X'8'; literal NAM$M_WILD_TYPE = %X'10'; literal NAM$M_WILD_NAME = %X'20'; literal NAM$M_EXP_DIR = %X'40'; literal NAM$M_EXP_DEV = %X'80'; literal NAM$M_WILDCARD = %X'100'; literal NAM$M_DIR_LVLS_G7 = %X'200'; literal NAM$M_WILD_SFDG7 = %X'400'; literal NAM$M_SEARCH_LIST = %X'800'; literal NAM$M_CNCL_DEV = %X'1000'; literal NAM$M_ROOT_DIR = %X'2000'; literal NAM$M_LOWVER = %X'4000'; literal NAM$M_HIGHVER = %X'8000'; literal NAM$M_PPF = %X'10000'; literal NAM$M_NODE = %X'20000'; literal NAM$M_QUOTED = %X'40000'; literal NAM$M_GRP_MBR = %X'80000'; literal NAM$M_WILD_DIR = %X'100000'; literal NAM$M_DIR_LVLS = %X'E00000'; literal NAM$M_WILD_UFD = %X'1000000'; literal NAM$M_WILD_SFD1 = %X'2000000'; literal NAM$M_WILD_SFD2 = %X'4000000'; literal NAM$M_WILD_SFD3 = %X'8000000'; literal NAM$M_WILD_SFD4 = %X'10000000'; literal NAM$M_WILD_SFD5 = %X'20000000'; literal NAM$M_WILD_SFD6 = %X'40000000'; literal NAM$M_WILD_SFD7 = %X'80000000'; literal NAM$M_WILD_GRP = %X'1000000'; literal NAM$M_WILD_MBR = %X'2000000'; literal NAM$M_DID = %X'1'; literal NAM$M_FID = %X'2'; literal NAM$M_RES_DID = %X'4'; literal NAM$M_RES_FID = %X'8'; literal NAM$M_RES_ESCAPE = %X'10'; literal NAM$M_RES_UNICODE = %X'20'; literal NAM$S_NAMDEF = 96; macro NAM$B_BID = 0,0,8,0 %; ! block id macro NAM$B_BLN = 1,0,8,0 %; ! block length ! +++++++++++++++++++++++ ! the following 3 fields must not be rearranged relative to each other ! macro NAM$B_RSS = 2,0,8,0 %; ! resultant string area size macro NAM$B_RSL = 3,0,8,0 %; ! resultant string length macro NAM$L_RSA = 4,0,32,1 %; ! resultant string area address ! ----------------------- macro NAM$R_NOP_OVERLAY = 8,0,8,0 %; macro NAM$B_NOP = 8,0,8,0 %; ! Name options macro NAM$R_NOP_BITS = 8,0,8,0 %; macro NAM$V_PWD = 8,0,1,0 %; ! Return password if present in nodespec string and any ! other task-specific data of the form /netacp_data" ! (default is to mask out password from expanded and ! resultant name strings and to create a logical name ! whose equivalence string is the unaltered nodespec) macro NAM$V_FILL_1 = 8,1,1,0 %; ! unused. (used to be undocumented ROD) macro NAM$V_FILL_2 = 8,2,1,0 %; ! unused. (used to be undocumented SOD) macro NAM$V_SYNCHK = 8,3,1,0 %; ! Only do syntax check on $parse operation macro NAM$V_NOCONCEAL = 8,4,1,0 %; ! Do not conceal device/root directory macro NAM$V_SLPARSE = 8,5,1,0 %; ! Parse search list (not documented) -- used by BACKUP. macro NAM$V_SRCHXABS = 8,6,1,0 %; ! Fill in attached XABS on $SEARCH operations over the ! network (not documented) -- used by directory. macro NAM$V_NO_SHORT_UPCASE = 8,7,1,0 %; ! Don't upcase the ESA macro NAM$B_RFS = 9,0,8,0 %; ! Remote file system type (currently not documented) ! Note: This field is reserved for use by Digital ! the following 3 fields must not be rearranged relative to each other ! macro NAM$B_ESS = 10,0,8,0 %; ! expanded string area size macro NAM$B_ESL = 11,0,8,0 %; ! expanded string length macro NAM$L_ESA = 12,0,32,1 %; ! expanded string area address ! ----------------------- macro NAM$R_RLF_OVERLAY = 16,0,32,0 %; macro NAM$L_RLF = 16,0,32,1 %; ! related file nam block addr macro NAM$L_RLF_NAML = 16,0,32,1 %; ! related file naml block addr macro NAM$T_DVI = 20,0,0,0 %; literal NAM$S_DVI = 16; ! device id ! the location of the following fields must not ! be changed due to their commonality with the fib macro NAM$R_FID_OVERLAY = 36,0,0,0 %; macro NAM$W_FID = 36,0,0,0 %; literal NAM$S_FID = 6; ! file id macro NAM$R_FID_FIELDS = 36,0,0,0 %; macro NAM$W_FID_NUM = 36,0,16,0 %; ! file number macro NAM$W_FID_SEQ = 38,0,16,0 %; ! sequence number macro NAM$R_FID_RVN_OVERLAY = 40,0,16,0 %; macro NAM$W_FID_RVN = 40,0,16,0 %; ! relative volume number macro NAM$R_FID_RVN_FIELDS = 40,0,16,0 %; macro NAM$B_FID_RVN = 40,0,8,0 %; ! alternate format RVN macro NAM$B_FID_NMX = 41,0,8,0 %; ! alternate format file number extension macro NAM$R_DID_OVERLAY = 42,0,0,0 %; macro NAM$W_DID = 42,0,0,0 %; literal NAM$S_DID = 6; ! directory id macro NAM$R_DID_FIELDS = 42,0,0,0 %; macro NAM$W_DID_NUM = 42,0,16,0 %; ! file number macro NAM$W_DID_SEQ = 44,0,16,0 %; ! sequence number macro NAM$R_DID_RVN_OVERLAY = 46,0,16,0 %; macro NAM$W_DID_RVN = 46,0,16,0 %; ! relative volume number macro NAM$R_DID_RVN_FIELDS = 46,0,16,0 %; macro NAM$B_DID_RVN = 46,0,8,0 %; ! alternate format RVN macro NAM$B_DID_NMX = 47,0,8,0 %; ! alternate format file number extension macro NAM$R_WCC_OVERLAY = 48,0,32,0 %; macro NAM$L_WCC = 48,0,32,0 %; ! wild card context macro NAM$R_WCC_BITS = 48,0,32,0 %; macro NAM$V_IFI = 48,16,1,0 %; ! the first word contains an IFI macro NAM$V_SRCHNMF = 48,30,1,0 %; ! no-more-files has been encountered on a search macro NAM$V_SVCTX = 48,31,1,0 %; ! save context across search calls macro NAM$R_FNB_OVERLAY = 52,0,32,0 %; macro NAM$L_FNB = 52,0,32,0 %; ! file name status bits macro NAM$R_FNB_BITS0 = 52,0,24,0 %; macro NAM$V_EXP_VER = 52,0,1,0 %; ! version was explicit macro NAM$V_EXP_TYPE = 52,1,1,0 %; ! type was explicit macro NAM$V_EXP_NAME = 52,2,1,0 %; ! name was explicit macro NAM$V_WILD_VER = 52,3,1,0 %; ! version contained a wild card macro NAM$V_WILD_TYPE = 52,4,1,0 %; ! type contained a wild card macro NAM$V_WILD_NAME = 52,5,1,0 %; ! name contained a wild card macro NAM$V_EXP_DIR = 52,6,1,0 %; ! directory was explicit macro NAM$V_EXP_DEV = 52,7,1,0 %; ! device was explicit macro NAM$V_WILDCARD = 52,8,1,0 %; ! filename string included a wild card ! (inclusive or of other wild card bits) macro NAM$V_DIR_LVLS_G7 = 52,9,1,0 %; ! Dir levels greater than 7 macro NAM$V_WILD_SFDG7 = 52,10,1,0 %; ! A subdir greater than 7 has a wildcard macro NAM$V_SEARCH_LIST = 52,11,1,0 %; ! search list present macro NAM$V_CNCL_DEV = 52,12,1,0 %; ! concealed device present macro NAM$V_ROOT_DIR = 52,13,1,0 %; ! root directory present macro NAM$V_LOWVER = 52,14,1,0 %; ! lower numbered version(s) of file exist(s) macro NAM$V_HIGHVER = 52,15,1,0 %; ! higher " ! macro NAM$V_PPF = 52,16,1,0 %; ! process-permanent file referenced indirectly macro NAM$V_NODE = 52,17,1,0 %; ! filename specification included a nodename macro NAM$V_QUOTED = 52,18,1,0 %; ! filename spec included a quoted string macro NAM$V_GRP_MBR = 52,19,1,0 %; ! directory spec was of group-member format macro NAM$V_WILD_DIR = 52,20,1,0 %; ! directory spec included a wild card macro NAM$V_DIR_LVLS = 52,21,3,0 %; literal NAM$S_DIR_LVLS = 3; ! number of directory levels (0=ufd only) macro NAM$R_FNB_BITS1 = 52,0,32,0 %; macro NAM$V_WILD_UFD = 52,24,1,0 %; ! ufd included a wild card macro NAM$V_WILD_SFD1 = 52,25,1,0 %; ! sfd1 included a wild card macro NAM$V_WILD_SFD2 = 52,26,1,0 %; ! sfd2 included a wild card macro NAM$V_WILD_SFD3 = 52,27,1,0 %; ! sfd3 included a wild card macro NAM$V_WILD_SFD4 = 52,28,1,0 %; ! sfd4 included a wild card macro NAM$V_WILD_SFD5 = 52,29,1,0 %; ! sfd5 included a wild card macro NAM$V_WILD_SFD6 = 52,30,1,0 %; ! sfd6 included a wild card macro NAM$V_WILD_SFD7 = 52,31,1,0 %; ! sfd7 included a wild card macro NAM$R_FNB_BITS2 = 52,0,32,0 %; macro NAM$V_WILD_GRP = 52,24,1,0 %; ! group contained a wild card macro NAM$V_WILD_MBR = 52,25,1,0 %; ! member contained a wild card ! -----***** ! (prior to 40 byte extension) ! ! Extend the NAM block by 40 bytes. ! macro NAM$B_NODE = 56,0,8,0 %; ! Nodespec length macro NAM$B_DEV = 57,0,8,0 %; ! Device length macro NAM$B_DIR = 58,0,8,0 %; ! Directory length macro NAM$B_NAME = 59,0,8,0 %; ! Filename length macro NAM$B_TYPE = 60,0,8,0 %; ! Filetype length macro NAM$B_VER = 61,0,8,0 %; ! Version number length macro NAM$R_NMC_OVERLAY = 62,0,8,0 %; ! Name characteristics macro NAM$B_NMC = 62,0,8,0 %; macro NAM$R_NMC_BITS = 62,0,8,0 %; macro NAM$V_DID = 62,0,1,0 %; ! Input file spec DIDed macro NAM$V_FID = 62,1,1,0 %; ! Input file spec FIDed macro NAM$V_RES_DID = 62,2,1,0 %; ! Result or Exp string spec DIDed macro NAM$V_RES_FID = 62,3,1,0 %; ! Result or Exp string spec FIDed macro NAM$V_RES_ESCAPE = 62,4,1,0 %; ! Result or Exp string spec has "^" macro NAM$V_RES_UNICODE = 62,5,1,0 %; ! Result or Exp string spec contains ^U macro NAM$L_NODE = 64,0,32,1 %; ! Nodespec address macro NAM$L_DEV = 68,0,32,1 %; ! Device address macro NAM$L_DIR = 72,0,32,1 %; ! Directory address macro NAM$L_NAME = 76,0,32,1 %; ! Filename address macro NAM$L_TYPE = 80,0,32,1 %; ! Filetype address macro NAM$L_VER = 84,0,32,1 %; ! Version number address macro NAM$W_FIRST_WILD_DIR = 88,0,16,0 %; ! First wild directory in related nam macro NAM$W_LONG_DIR_LEVELS = 90,0,16,0 %; ! Total number of directories ! basealign on aggregate NAMDEF operates after aggregate end literal NAM$K_BLN_DIRWC = 96; ! Not documented optional length literal NAM$C_BLN_DIRWC = 96; ! Not documented optional length literal NAM$K_BLN = 96; ! Name block length literal NAM$C_BLN = 96; ! Name block length ! Start NAML here ! ! name block field definitions ! ! The naml block is an extended version of the NAM ! block used to communicate optional filename-related ! information. It differs from the NAM in that it ! includes a default name and a file name field and that ! these as well as the result and expanded file names ! have 32-bit length fields (though the top 16 bits is ! required to be 0, limiting the length to 65535). There ! are also some additional flags available. ! ! In order for RMS to recognize this block as a NAML, it must ! have NAML$B_BLN set to NAML$C_BLN, and must have ! NAML$B_BID set to NAML$C_BID. ! literal NAML$C_BID = 4; ! code for naml block ! (Same as nam) literal NAML$C_MAXRSS = 4095; ! maximum resultant name string size literal NAML$M_PWD = %X'1'; literal NAML$M_FILL_1 = %X'2'; literal NAML$M_FILL_2 = %X'4'; literal NAML$M_SYNCHK = %X'8'; literal NAML$M_NOCONCEAL = %X'10'; literal NAML$M_SLPARSE = %X'20'; literal NAML$M_SRCHXABS = %X'40'; literal NAML$M_NO_SHORT_UPCASE = %X'80'; literal NAML$C_UFS = 0; ! Unknown file system for remote file access or ! not applicable for local file access or literal NAML$C_NO_RFS = 0; ! task-to-task operation literal NAML$C_RMS11 = 1; ! RMS-11 literal NAML$C_RMS20 = 2; ! RMS-20 literal NAML$C_RMS32 = 3; ! RMS-32 literal NAML$C_FCS11 = 4; ! FCS-11 literal NAML$C_RT11FS = 5; ! RT-11 file system literal NAML$C_TOPS20FS = 7; ! TOPS-20 file system literal NAML$C_TOPS10FS = 8; ! TOPS-10 file system literal NAML$C_RMS32S = 10; ! RMS-32 subset (e.g., VAXELAN) literal NAML$C_CPMFS = 11; ! CP/M file system literal NAML$C_MS_DOSFS = 12; ! MS/DOS file system literal NAML$C_ULTRIX32_FS = 13; ! Ultrix-32 file system literal NAML$C_ULTRIX11_FS = 14; ! Ultrix-11 file system ! +++++++++++++++++++++++ literal NAML$C_DVI = 16; ! length of dvi field ! +++++***** literal NAML$M_IFI = %X'10000'; literal NAML$M_SRCHNMF = %X'40000000'; literal NAML$M_SVCTX = %X'80000000'; literal NAML$K_BLN_V2 = 56; ! Version 2 name block length literal NAML$C_BLN_V2 = 56; ! Version 2 name block length literal NAML$M_EXP_VER = %X'1'; literal NAML$M_EXP_TYPE = %X'2'; literal NAML$M_EXP_NAME = %X'4'; literal NAML$M_WILD_VER = %X'8'; literal NAML$M_WILD_TYPE = %X'10'; literal NAML$M_WILD_NAME = %X'20'; literal NAML$M_EXP_DIR = %X'40'; literal NAML$M_EXP_DEV = %X'80'; literal NAML$M_WILDCARD = %X'100'; literal NAML$M_DIR_LVLS_G7 = %X'200'; literal NAML$M_WILD_SFDG7 = %X'400'; literal NAML$M_SEARCH_LIST = %X'800'; literal NAML$M_CNCL_DEV = %X'1000'; literal NAML$M_ROOT_DIR = %X'2000'; literal NAML$M_LOWVER = %X'4000'; literal NAML$M_HIGHVER = %X'8000'; literal NAML$M_PPF = %X'10000'; literal NAML$M_NODE = %X'20000'; literal NAML$M_QUOTED = %X'40000'; literal NAML$M_GRP_MBR = %X'80000'; literal NAML$M_WILD_DIR = %X'100000'; literal NAML$M_DIR_LVLS = %X'E00000'; literal NAML$M_WILD_UFD = %X'1000000'; literal NAML$M_WILD_SFD1 = %X'2000000'; literal NAML$M_WILD_SFD2 = %X'4000000'; literal NAML$M_WILD_SFD3 = %X'8000000'; literal NAML$M_WILD_SFD4 = %X'10000000'; literal NAML$M_WILD_SFD5 = %X'20000000'; literal NAML$M_WILD_SFD6 = %X'40000000'; literal NAML$M_WILD_SFD7 = %X'80000000'; literal NAML$M_WILD_GRP = %X'1000000'; literal NAML$M_WILD_MBR = %X'2000000'; literal NAML$M_DID = %X'1'; literal NAML$M_FID = %X'2'; literal NAML$M_RES_DID = %X'4'; literal NAML$M_RES_FID = %X'8'; literal NAML$M_RES_ESCAPE = %X'10'; literal NAML$M_RES_UNICODE = %X'20'; literal NAML$M_LONG_RESULT_ESCAPE = %X'1'; literal NAML$M_FILESYS_NAME_UCS2 = %X'2'; literal NAML$M_LONG_RESULT_DID = %X'4'; literal NAML$M_LONG_RESULT_FID = %X'8'; literal NAML$M_LONG_RESULT_UNICODE = %X'10'; literal NAML$M_MP_IN_PATH = %X'20'; literal NAML$M_SYMLNK_IN_PATH = %X'40'; literal NAML$M_OBJECT_SYMLINK = %X'80'; literal NAML$M_IS_DIRECTORY = %X'100'; literal NAML$M_NO_SHORT_OUTPUT = %X'1'; literal NAML$C_CASE_LOOKUP_BLIND = 2; ! case blind literal NAML$C_CASE_LOOKUP_SENSITIVE = 3; ! case sensitive literal NAML$M_OPEN_SPECIAL = %X'8'; literal NAML$C_SEARCH_SYMLINK_DEFAULT = 0; ! use process default literal NAML$C_SEARCH_SYMLINK_NONE = 1; ! use no symlinks literal NAML$C_SEARCH_SYMLINK_ALL = 2; ! use symlinks always literal NAML$C_SEARCH_SYMLINK_NOELLIPS = 3; ! use symlinks except in ellipsis literal NAML$S_NAMLDEF = 248; macro NAML$B_BID = 0,0,8,0 %; ! block id macro NAML$B_BLN = 1,0,8,0 %; ! block length ! +++++++++++++++++++++++ ! the following 3 fields must not be rearranged relative to each other ! macro NAML$B_RSS = 2,0,8,0 %; ! resultant string area size macro NAML$B_RSL = 3,0,8,0 %; ! resultant string length macro NAML$L_RSA = 4,0,32,1 %; ! resultant string area address ! ----------------------- macro NAML$R_NOP_OVERLAY = 8,0,8,0 %; macro NAML$B_NOP = 8,0,8,0 %; ! Name options macro NAML$R_NOP_BITS = 8,0,8,0 %; macro NAML$V_PWD = 8,0,1,0 %; ! Return password if present in nodespec string and any ! other task-specific data of the form /netacp_data" ! (default is to mask out password from expanded and ! resultant name strings and to create a logical name ! whose equivalence string is the unaltered nodespec) macro NAML$V_FILL_1 = 8,1,1,0 %; ! unused. (used to be undocumented ROD) macro NAML$V_FILL_2 = 8,2,1,0 %; ! unused. (used to be undocumented SOD) macro NAML$V_SYNCHK = 8,3,1,0 %; ! Only do syntax check on $parse operation macro NAML$V_NOCONCEAL = 8,4,1,0 %; ! Do not conceal device/root directory macro NAML$V_SLPARSE = 8,5,1,0 %; ! Parse search list (not documented) -- used by BACKUP. macro NAML$V_SRCHXABS = 8,6,1,0 %; ! Fill in attached XABS on $SEARCH operations over the ! network (not documented) -- used by directory. macro NAML$V_NO_SHORT_UPCASE = 8,7,1,0 %; ! Don't upcase the ESA macro NAML$B_RFS = 9,0,8,0 %; ! Remote file system type (currently not documented) ! Note: This field is reserved for use by Digital ! the following 3 fields must not be rearranged relative to each other ! macro NAML$B_ESS = 10,0,8,0 %; ! espanded string area size macro NAML$B_ESL = 11,0,8,0 %; ! expanded string length macro NAML$L_ESA = 12,0,32,1 %; ! expanded string area address ! ----------------------- macro NAML$R_RLF_OVERLAY = 16,0,32,0 %; macro NAML$L_RLF = 16,0,32,1 %; ! related file nam block addr macro NAML$L_RLF_NAML = 16,0,32,1 %; ! related file naml block addr macro NAML$T_DVI = 20,0,0,0 %; literal NAML$S_DVI = 16; ! device id ! the location of the following fields must not ! be changed due to their commonality with the fib macro NAML$R_FID_OVERLAY = 36,0,0,0 %; macro NAML$W_FID = 36,0,0,0 %; literal NAML$S_FID = 6; ! file id macro NAML$R_FID_FIELDS = 36,0,0,0 %; macro NAML$W_FID_NUM = 36,0,16,0 %; ! file number macro NAML$W_FID_SEQ = 38,0,16,0 %; ! sequence number macro NAML$R_FID_RVN_OVERLAY = 40,0,16,0 %; macro NAML$W_FID_RVN = 40,0,16,0 %; ! relative volume number macro NAML$R_FID_RVN_FIELDS = 40,0,16,0 %; macro NAML$B_FID_RVN = 40,0,8,0 %; ! alternate format RVN macro NAML$B_FID_NMX = 41,0,8,0 %; ! alternate format file number extension macro NAML$R_DID_OVERLAY = 42,0,0,0 %; macro NAML$W_DID = 42,0,0,0 %; literal NAML$S_DID = 6; ! directory id macro NAML$R_DID_FIELDS = 42,0,0,0 %; macro NAML$W_DID_NUM = 42,0,16,0 %; ! file number macro NAML$W_DID_SEQ = 44,0,16,0 %; ! sequence number macro NAML$R_DID_RVN_OVERLAY = 46,0,16,0 %; macro NAML$W_DID_RVN = 46,0,16,0 %; ! relative volume number macro NAML$R_DID_RVN_FIELDS = 46,0,16,0 %; macro NAML$B_DID_RVN = 46,0,8,0 %; ! alternate format RVN macro NAML$B_DID_NMX = 47,0,8,0 %; ! alternate format file number extension macro NAML$R_WCC_OVERLAY = 48,0,32,0 %; macro NAML$L_WCC = 48,0,32,0 %; ! wild card context macro NAML$R_WCC_BITS = 48,0,32,0 %; macro NAML$V_IFI = 48,16,1,0 %; ! the first word contains an IFI macro NAML$V_SRCHNMF = 48,30,1,0 %; ! no-more-files has been encountered on a search macro NAML$V_SVCTX = 48,31,1,0 %; ! save context across search calls macro NAML$R_FNB_OVERLAY = 52,0,32,0 %; macro NAML$L_FNB = 52,0,32,0 %; ! file name status bits macro NAML$R_FNB_BITS0 = 52,0,24,0 %; macro NAML$V_EXP_VER = 52,0,1,0 %; ! version was explicit macro NAML$V_EXP_TYPE = 52,1,1,0 %; ! type was explicit macro NAML$V_EXP_NAME = 52,2,1,0 %; ! name was explicit macro NAML$V_WILD_VER = 52,3,1,0 %; ! version contained a wild card macro NAML$V_WILD_TYPE = 52,4,1,0 %; ! type contained a wild card macro NAML$V_WILD_NAME = 52,5,1,0 %; ! name contained a wild card macro NAML$V_EXP_DIR = 52,6,1,0 %; ! directory was explicit macro NAML$V_EXP_DEV = 52,7,1,0 %; ! device was explicit macro NAML$V_WILDCARD = 52,8,1,0 %; ! filename string included a wild card ! (inclusive or of other wild card bits) macro NAML$V_DIR_LVLS_G7 = 52,9,1,0 %; ! Dir levels greater than 7 macro NAML$V_WILD_SFDG7 = 52,10,1,0 %; ! A subdir greater than 7 has a wildcard macro NAML$V_SEARCH_LIST = 52,11,1,0 %; ! search list present macro NAML$V_CNCL_DEV = 52,12,1,0 %; ! concealed device present macro NAML$V_ROOT_DIR = 52,13,1,0 %; ! root directory present macro NAML$V_LOWVER = 52,14,1,0 %; ! lower numbered version(s) of file exist(s) macro NAML$V_HIGHVER = 52,15,1,0 %; ! higher " ! macro NAML$V_PPF = 52,16,1,0 %; ! process-permanent file referenced indirectly macro NAML$V_NODE = 52,17,1,0 %; ! filename specification included a nodename macro NAML$V_QUOTED = 52,18,1,0 %; ! filename spec included a quoted string macro NAML$V_GRP_MBR = 52,19,1,0 %; ! directory spec was of group-member format macro NAML$V_WILD_DIR = 52,20,1,0 %; ! directory spec included a wild card macro NAML$V_DIR_LVLS = 52,21,3,0 %; literal NAML$S_DIR_LVLS = 3; ! number of directory levels (0=ufd only) macro NAML$R_FNB_BITS1 = 52,0,32,0 %; macro NAML$V_WILD_UFD = 52,24,1,0 %; ! ufd included a wild card macro NAML$V_WILD_SFD1 = 52,25,1,0 %; ! sfd1 included a wild card macro NAML$V_WILD_SFD2 = 52,26,1,0 %; ! sfd2 included a wild card macro NAML$V_WILD_SFD3 = 52,27,1,0 %; ! sfd3 included a wild card macro NAML$V_WILD_SFD4 = 52,28,1,0 %; ! sfd4 included a wild card macro NAML$V_WILD_SFD5 = 52,29,1,0 %; ! sfd5 included a wild card macro NAML$V_WILD_SFD6 = 52,30,1,0 %; ! sfd6 included a wild card macro NAML$V_WILD_SFD7 = 52,31,1,0 %; ! sfd7 included a wild card macro NAML$R_FNB_BITS2 = 52,0,32,0 %; macro NAML$V_WILD_GRP = 52,24,1,0 %; ! group contained a wild card macro NAML$V_WILD_MBR = 52,25,1,0 %; ! member contained a wild card macro NAML$B_NODE = 56,0,8,0 %; ! Nodespec length macro NAML$B_DEV = 57,0,8,0 %; ! Device length macro NAML$B_DIR = 58,0,8,0 %; ! Directory length macro NAML$B_NAME = 59,0,8,0 %; ! Filename length macro NAML$B_TYPE = 60,0,8,0 %; ! Filetype length macro NAML$B_VER = 61,0,8,0 %; ! Version number length macro NAML$R_NMC_OVERLAY = 62,0,8,0 %; ! Name characteristics macro NAML$B_NMC = 62,0,8,0 %; macro NAML$R_NMC_BITS = 62,0,8,0 %; macro NAML$V_DID = 62,0,1,0 %; ! Input file spec DIDed macro NAML$V_FID = 62,1,1,0 %; ! Input file spec FIDed macro NAML$V_RES_DID = 62,2,1,0 %; ! Result or Exp string spec DIDed macro NAML$V_RES_FID = 62,3,1,0 %; ! Result or Exp string spec FIDed macro NAML$V_RES_ESCAPE = 62,4,1,0 %; ! Result or Exp string spec has "^" macro NAML$V_RES_UNICODE = 62,5,1,0 %; ! Result or Exp string spec contains ^U macro NAML$L_NODE = 64,0,32,1 %; ! Nodespec address macro NAML$L_DEV = 68,0,32,1 %; ! Device address macro NAML$L_DIR = 72,0,32,1 %; ! Directory address macro NAML$L_NAME = 76,0,32,1 %; ! Filename address macro NAML$L_TYPE = 80,0,32,1 %; ! Filetype address macro NAML$L_VER = 84,0,32,1 %; ! Version number address macro NAML$W_FIRST_WILD_DIR = 88,0,16,0 %; ! First wild directory in related nam macro NAML$W_LONG_DIR_LEVELS = 90,0,16,0 %; ! Total number of directories ! New NAML-only items: macro NAML$L_LONG_DEFNAME_SIZE = 96,0,32,0 %; ! Analogous to FAB$B_DNS macro NAML$L_LONG_DEFNAME = 100,0,32,1 %; ! Analogous to FAB$L_DNS macro NAML$L_LONG_FILENAME_SIZE = 104,0,32,0 %; ! Analogous to FAB$B_FNS macro NAML$L_LONG_FILENAME = 108,0,32,1 %; ! Analogous to FAB$L_FNS macro NAML$L_LONG_NODE_SIZE = 112,0,32,0 %; ! Analogous to NAM$B_NODE macro NAML$L_LONG_NODE = 116,0,32,1 %; ! Analogous to NAM$L_NODE macro NAML$L_LONG_DEV_SIZE = 120,0,32,0 %; ! Analogous to NAM$B_DEV macro NAML$L_LONG_DEV = 124,0,32,1 %; ! Analogous to NAM$L_DEV macro NAML$L_LONG_DIR_SIZE = 128,0,32,0 %; ! Analogous to NAM$B_DIR macro NAML$L_LONG_DIR = 132,0,32,1 %; ! Analogous to NAM$L_DIR macro NAML$L_LONG_NAME_SIZE = 136,0,32,0 %; ! Analogous to NAM$B_NAME macro NAML$L_LONG_NAME = 140,0,32,1 %; ! Analogous to NAM$L_NAME macro NAML$L_LONG_TYPE_SIZE = 144,0,32,0 %; ! Analogous to NAM$B_TYPE macro NAML$L_LONG_TYPE = 148,0,32,1 %; ! Analogous to NAM$L_TYPE macro NAML$L_LONG_VER_SIZE = 152,0,32,0 %; ! Analogous to NAM$B_VER macro NAML$L_LONG_VER = 156,0,32,1 %; ! Analogous to NAM$L_VER ! The following three "LONG_EXPAND" fields must be fixed relative to each other macro NAML$L_LONG_EXPAND_SIZE = 160,0,32,0 %; ! Analogous to NAM$B_ESL macro NAML$L_LONG_EXPAND = 164,0,32,1 %; ! Analogous to NAM$L_ESA macro NAML$L_LONG_EXPAND_ALLOC = 168,0,32,0 %; ! Analogous to NAM$B_ESS macro NAML$L_RESERVED_MBZ_9 = 172,0,32,1 %; ! The following three "LONG_RESULT" fields must be fixed relative to each other macro NAML$L_LONG_RESULT_SIZE = 176,0,32,0 %; ! Analogous to NAM$B_RSL macro NAML$L_LONG_RESULT = 180,0,32,1 %; ! Analogous to NAM$L_RSA macro NAML$L_LONG_RESULT_ALLOC = 184,0,32,0 %; ! Analogous to NAM$B_RSS macro NAML$L_RESERVED_MBZ_8 = 188,0,32,1 %; ! Reserved to Digital for future use. Must be zero. ! The following three "FILESYS_NAME" fields must be fixed relative to each other macro NAML$L_FILESYS_NAME_SIZE = 192,0,32,0 %; macro NAML$L_FILESYS_NAME = 196,0,32,1 %; macro NAML$L_FILESYS_NAME_ALLOC = 200,0,32,0 %; macro NAML$R_OUTPUT_FLAGS_OVERLAY = 204,0,32,0 %; ! Flags set or cleared by RMS macro NAML$L_OUTPUT_FLAGS = 204,0,32,0 %; macro NAML$R_OUTPUT_FLAGS_BITS = 204,0,16,0 %; macro NAML$V_LONG_RESULT_ESCAPE = 204,0,1,0 %; ! There is an escape character in the long output macro NAML$V_FILESYS_NAME_UCS2 = 204,1,1,0 %; ! The filesys name output is 2-byte Unicode macro NAML$V_LONG_RESULT_DID = 204,2,1,0 %; ! There is DIDding in the long output macro NAML$V_LONG_RESULT_FID = 204,3,1,0 %; ! There is FIDding in the long output macro NAML$V_LONG_RESULT_UNICODE = 204,4,1,0 %; ! Long Result or Exp string spec contains ^U macro NAML$V_MP_IN_PATH = 204,5,1,0 %; ! mount point encountered in directory path macro NAML$V_SYMLNK_IN_PATH = 204,6,1,0 %; ! symlink encountered in directory path macro NAML$V_OBJECT_SYMLINK = 204,7,1,0 %; ! The specified object is a symlink ($OPEN, $SEARCH) macro NAML$V_IS_DIRECTORY = 204,8,1,0 %; ! The specified object is a directory ($OPEN, $SEARCH) ! The rest of the longword also reserved. macro NAML$R_INPUT_FLAGS_OVERLAY = 208,0,32,0 %; ! Flags specified by user to RMS macro NAML$L_INPUT_FLAGS = 208,0,32,0 %; macro NAML$R_INPUT_FLAGS_BITS = 208,0,8,0 %; macro NAML$V_NO_SHORT_OUTPUT = 208,0,1,0 %; ! Don't write to RSA and ESA macro NAML$V_CASE_LOOKUP = 208,1,2,0 %; literal NAML$S_CASE_LOOKUP = 2; ! name case lookup mode macro NAML$V_OPEN_SPECIAL = 208,3,1,0 %; ! $OPEN a special file, rather than the ! object referred to by the special file. macro NAML$V_SEARCH_SYMLINK = 208,4,2,0 %; literal NAML$S_SEARCH_SYMLINK = 2; ! Controls whether $SEARCH follows ! symlinks in directory paths ! NOTE: Symlink search mode encodings are coordinated across $JPIDEF, $LIBCQDEF, ! $LIBFILDEF, $PPROPDEF, and $NAMLDEF. ! The rest of the longword also reserved and must be zero. macro NAML$L_RESERVED_MBZ_7 = 212,0,32,1 %; ! Reserved to Digital for future use. Must be zero. macro NAML$Q_USER_CONTEXT = 216,0,0,0 %; literal NAML$S_USER_CONTEXT = 8; macro NAML$L_RESERVED_MBZ_6 = 224,0,32,1 %; ! Reserved to Digital for future use. Must be zero. macro NAML$L_RESERVED_MBZ_5 = 228,0,32,1 %; ! Reserved to Digital for future use. Must be zero. macro NAML$L_RESERVED_MBZ_4 = 232,0,32,1 %; ! Reserved to Digital for future use. Must be zero. macro NAML$L_RESERVED_MBZ_3 = 236,0,32,1 %; ! Reserved to Digital for future use. Must be zero. macro NAML$L_RESERVED_MBZ_2 = 240,0,32,1 %; ! Reserved to Digital for future use. Must be zero. macro NAML$L_RESERVED_MBZ_1 = 244,0,32,1 %; ! Reserved to Digital for future use. Must be zero. ! basealign on aggregate NAMLDEF operates after aggregate end literal NAML$K_BLN = 248; ! Name block length literal NAML$C_BLN = 248; ! Name block length !*** MODULE $XABDEF *** ! ! definitions for all xabs ! $xabdef ! ! the first four fields are shared in common between all xabs ! and hence are defined only once ! (the only exception is that the spare word may be used by some xabs) ! literal XAB$S_XABDEF = 20; macro XAB$B_COD = 0,0,8,0 %; ! xab id code macro XAB$B_BLN = 1,0,8,0 %; ! block length macro XAB$L_NXT = 4,0,32,1 %; ! xab chain link macro XAB$W_RVN = 8,0,16,0 %; macro XAB$R_RDT_OVERLAY = 12,0,0,0 %; macro XAB$Q_RDT = 12,0,0,1 %; literal XAB$S_RDT = 8; macro XAB$R_RDT_FIELDS = 12,0,0,0 %; macro XAB$L_RDT0 = 12,0,32,0 %; macro XAB$L_RDT4 = 16,0,32,0 %; ! COMMON AMONG DAT AND RDT XABS literal XAB$S_XABDEF1 = 23; macro XAB$B_BKZ = 22,0,8,0 %; ! COMMON TO FHC AND ALQ XABS literal XAB$C_CXT_VER1 = 1; ! RMS Context Extraction version 1 !*** MODULE $XABFHCDEF *** ! ! file header characteristics xab definitions ! $xabfhcdef ! ! the fields of this xab cannot be rearranged since ! they correspond to an on-disk structure ! literal XAB$C_FHC = 29; ! xabfhc id code literal XAB$M_FTN = %X'1'; literal XAB$M_CR = %X'2'; literal XAB$M_PRN = %X'4'; literal XAB$M_BLK = %X'8'; literal XAB$M_GBC_PERCENT = %X'1'; literal XAB$M_GBC_DEFAULT = %X'2'; literal XAB$S_XABFHCDEF = 44; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$B_RFO = 8,0,8,0 %; ! record format and file org macro XAB$B_ATR = 9,0,8,0 %; ! record attributes macro XAB$V_FTN = 9,0,1,0 %; ! fortran carriage-ctl macro XAB$V_CR = 9,1,1,0 %; ! lf-record-cr carriage ctl macro XAB$V_PRN = 9,2,1,0 %; ! print-file carriage ctl macro XAB$V_BLK = 9,3,1,0 %; ! records don't cross block boundaries macro XAB$W_LRL = 10,0,16,0 %; ! longest record's length macro XAB$R_HBK_OVERLAY = 12,0,32,0 %; macro XAB$L_HBK = 12,0,32,0 %; ! hi vbn allocated ! (n.b. reversed on disk!) macro XAB$R_HBK_FIELDS = 12,0,32,0 %; macro XAB$W_HBK0 = 12,0,16,0 %; macro XAB$W_HBK2 = 14,0,16,0 %; macro XAB$R_EBK_OVERLAY = 16,0,32,0 %; macro XAB$L_EBK = 16,0,32,0 %; ! eof vbn ! (n.b. reversed on disk) macro XAB$R_EBK_FIELDS = 16,0,32,0 %; macro XAB$W_EBK0 = 16,0,16,0 %; macro XAB$W_EBK2 = 18,0,16,0 %; macro XAB$W_FFB = 20,0,16,0 %; ! first free byte in eof block ! defined above in $xabdef,since it is shared by the fhc ! xab and has the same offset, of course) ! -----***** ! HAVE BEEN DEFINED BY $XABDEF ! defined above in $xabdef, since it is shared ! by the all xab) macro XAB$B_HSZ = 23,0,8,0 %; ! header size for vfc macro XAB$W_MRZ = 24,0,16,0 %; ! max record size macro XAB$W_DXQ = 26,0,16,0 %; ! default extend quantity macro XAB$W_GBC = 28,0,16,0 %; ! global buffer count (original word) macro XAB$W_GBC16 = 28,0,16,0 %; ! Alias macro XAB$B_RECATTR_FLAGS = 30,0,8,0 %; ! flags for record attribute area macro XAB$V_GBC_PERCENT = 30,0,1,0 %; ! Interpret value in GBC32 as percent instead of count macro XAB$V_GBC_DEFAULT = 30,1,1,0 %; ! RMS should set default for GBC at runtime and ignore ! any values in GBC16 or GBC32 macro XAB$L_GBC32 = 32,0,32,0 %; ! longword implementation of global buffer count macro XAB$W_VERLIMIT = 38,0,16,0 %; ! version limit for file. ! -----***** macro XAB$L_SBN = 40,0,32,0 %; ! starting lbn if contiguous ! basealign on aggregate XABFHCDEF operates after aggregate end literal XAB$K_FHCLEN = 44; ! length of xabfhc literal XAB$C_FHCLEN = 44; ! length of xabfhc !*** MODULE $XABALLDEF *** ! ! allocation xab definitions ! $xaballdef ! ! the fields thru bkz cannot be rearranged due to ! their commonality with fab ! literal XAB$C_ALL = 20; ! xaball id code literal XAB$M_HRD = %X'1'; literal XAB$M_ONC = %X'2'; literal XAB$M_CBT = %X'20'; literal XAB$M_CTG = %X'80'; literal XAB$C_ANY = 0; ! any allocation o.k. literal XAB$C_CYL = 1; ! cylinder boundary literal XAB$C_LBN = 2; ! allocate at specified lbn literal XAB$C_VBN = 3; ! allocate near specified vbn literal XAB$C_RFI = 4; ! allocate near related file literal XAB$S_XABALLDEF = 32; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$R_AOP_OVERLAY = 8,0,8,0 %; macro XAB$B_AOP = 8,0,8,0 %; ! allocation options macro XAB$R_AOP_BITS = 8,0,8,0 %; macro XAB$V_HRD = 8,0,1,0 %; ! fail if requested alignment impossible macro XAB$V_ONC = 8,1,1,0 %; ! locate allocated space within a cylinder macro XAB$V_CBT = 8,5,1,0 %; ! contiguous alllocation, best try macro XAB$V_CTG = 8,7,1,0 %; ! contiguous allocation macro XAB$B_ALN = 9,0,8,0 %; ! alignment type macro XAB$W_VOL = 10,0,16,0 %; ! relative volume no. for allocation ! (not applicable if aln = vbn or rfi) macro XAB$L_LOC = 12,0,32,0 %; ! allocation location macro XAB$L_ALQ = 16,0,32,0 %; ! allocation quantity macro XAB$W_DEQ = 20,0,16,0 %; ! default allocation quantity ! defined above in $xabdef,since it is shared by the fhc ! xab and has the same offset, of course) ! -----***** ! HAVE BEEN DEFINED BY $XABDEF macro XAB$B_AID = 23,0,8,0 %; ! area id number macro XAB$R_RFI_OVERLAY = 24,0,0,0 %; macro XAB$W_RFI = 24,0,0,0 %; literal XAB$S_RFI = 6; ! related file id macro XAB$R_RFI_FIELDS = 24,0,0,0 %; macro XAB$W_RFI0 = 24,0,16,0 %; ! file number macro XAB$W_RFI2 = 26,0,16,0 %; ! seq number macro XAB$W_RFI4 = 28,0,16,0 %; ! rev number ! basealign on aggregate XABALLDEF operates after aggregate end literal XAB$K_ALLLEN = 32; ! length of xaball literal XAB$C_ALLLEN = 32; ! length of xaball !*** MODULE $XABDATDEF *** ! ! date/time xab definitions ! $xabdatdef ! ! literal XAB$C_DAT = 18; ! xabdat id code literal XAB$K_DATLEN_V2 = 36; ! Version 2 XABDAT length literal XAB$C_DATLEN_V2 = 36; ! Version 2 XABDAT length literal XAB$K_DATLEN_V54 = 44; ! length of XABDAT literal XAB$C_DATLEN_V54 = 44; ! length of XABDAT literal XAB$K_DATLEN_PRE_ACCDATES = 60; ! XABDAT length before addition of 3 access dates literal XAB$C_DATLEN_PRE_ACCDATES = 60; ! XABDAT length before addition of 3 access dates literal XAB$K_DATLEN_POST_ACCDATES = 84; ! XABDAT length after addition of 3 access dates literal XAB$C_DATLEN_POST_ACCDATES = 84; ! XABDAT length after addition of 3 access dates literal XAB$S_XABDATDEF = 84; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$R_CDT_OVERLAY = 20,0,0,0 %; macro XAB$Q_CDT = 20,0,0,1 %; literal XAB$S_CDT = 8; ! creation date & time macro XAB$R_CDT_FIELDS = 20,0,0,0 %; macro XAB$L_CDT0 = 20,0,32,0 %; macro XAB$L_CDT4 = 24,0,32,0 %; macro XAB$R_EDT_OVERLAY = 28,0,0,0 %; macro XAB$Q_EDT = 28,0,0,1 %; literal XAB$S_EDT = 8; ! expiration date & time macro XAB$R_EDT_FIELDS = 28,0,0,0 %; macro XAB$L_EDT0 = 28,0,32,0 %; macro XAB$L_EDT4 = 32,0,32,0 %; macro XAB$R_BDT_OVERLAY = 36,0,0,0 %; macro XAB$Q_BDT = 36,0,0,1 %; literal XAB$S_BDT = 8; ! backup date and time macro XAB$R_BDT_FIELDS = 36,0,0,0 %; macro XAB$L_BDT0 = 36,0,32,0 %; macro XAB$L_BDT4 = 40,0,32,0 %; macro XAB$R_RCD_OVERLAY = 44,0,0,0 %; macro XAB$Q_RCD = 44,0,0,1 %; literal XAB$S_RCD = 8; ! Recorded date and time macro XAB$R_RCD_FIELDS = 44,0,0,0 %; macro XAB$L_RCD0 = 44,0,32,0 %; macro XAB$L_RCD4 = 48,0,32,0 %; macro XAB$R_EFF_OVERLAY = 52,0,0,0 %; macro XAB$Q_EFF = 52,0,0,1 %; literal XAB$S_EFF = 8; ! Effective date and time macro XAB$R_EFF_FIELDS = 52,0,0,0 %; macro XAB$L_EFF0 = 52,0,32,0 %; macro XAB$L_EFF4 = 56,0,32,0 %; macro XAB$R_ACC_OVERLAY = 60,0,0,0 %; macro XAB$Q_ACC = 60,0,0,1 %; literal XAB$S_ACC = 8; ! Access date and time macro XAB$R_ACC_FIELDS = 60,0,0,0 %; macro XAB$L_ACC0 = 60,0,32,0 %; macro XAB$L_ACC4 = 64,0,32,0 %; macro XAB$R_ATT_OVERLAY = 68,0,0,0 %; macro XAB$Q_ATT = 68,0,0,1 %; literal XAB$S_ATT = 8; ! Attribute change date and time macro XAB$R_ATT_FIELDS = 68,0,0,0 %; macro XAB$L_ATT0 = 68,0,32,0 %; macro XAB$L_ATT4 = 72,0,32,0 %; macro XAB$R_MOD_OVERLAY = 76,0,0,0 %; macro XAB$Q_MOD = 76,0,0,1 %; literal XAB$S_MOD = 8; ! data Modification date and time macro XAB$R_MOD_FIELDS = 76,0,0,0 %; macro XAB$L_MOD0 = 76,0,32,0 %; macro XAB$L_MOD4 = 80,0,32,0 %; ! basealign on aggregate XABDATDEF operates after aggregate end literal XAB$K_DATLEN = 84; ! length of XABDAT literal XAB$C_DATLEN = 84; ! length of XABDAT !*** MODULE $XABRDTDEF *** ! ! revision date/time xab definitions ! $xabrdtdef ! literal XAB$C_RDT = 30; ! xabrdt id code literal XAB$S_XABRDTDEF = 20; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF ! basealign on aggregate XABRDTDEF operates after aggregate end literal XAB$K_RDTLEN = 20; ! length of rdt xab literal XAB$C_RDTLEN = 20; ! length of rdt xab !*** MODULE $XABPRODEF *** ! ! protection xab field definitions ! $xabprodef ! ! literal XAB$C_PRO = 19; ! xabpro id code literal XAB$M_NOREAD = %X'1'; literal XAB$M_NOWRITE = %X'2'; literal XAB$M_NOEXE = %X'4'; literal XAB$M_NODEL = %X'8'; literal XAB$S_XABPRODEF = 1; macro XAB$R_XABPRODEF_BITS = 0,0,8,0 %; macro XAB$V_NOREAD = 0,0,1,0 %; ! deny read access macro XAB$V_NOWRITE = 0,1,1,0 %; ! deny write access macro XAB$V_NOEXE = 0,2,1,0 %; ! deny execution access macro XAB$V_NODEL = 0,3,1,0 %; ! deny delete access literal XAB$M_PROPAGATE = %X'1'; literal XAB$K_PROLEN_V3 = 16; ! V3a xabpro length literal XAB$C_PROLEN_V3 = 16; ! V3a xabpro length literal XAB$S_XABPRODEF1 = 88; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$R_PRO_OVERLAY = 8,0,16,0 %; macro XAB$W_PRO = 8,0,16,0 %; ! protection mask macro XAB$R_PRO_BITS = 8,0,16,0 %; macro XAB$V_SYS = 8,0,4,0 %; literal XAB$S_SYS = 4; ! system macro XAB$V_OWN = 8,4,4,0 %; literal XAB$S_OWN = 4; ! owner macro XAB$V_GRP = 8,8,4,0 %; literal XAB$S_GRP = 4; ! group macro XAB$V_WLD = 8,12,4,0 %; literal XAB$S_WLD = 4; ! world macro XAB$B_MTACC = 10,0,8,0 %; ! Magtape access control char. macro XAB$R_PROT_OPT_OVERLAY = 11,0,8,0 %; macro XAB$B_PROT_OPT = 11,0,8,0 %; ! XABPRO options field macro XAB$R_PROT_OPT_FIELDS = 11,0,8,0 %; macro XAB$V_PROPAGATE = 11,0,1,0 %; ! Propagate security attributes on $ENTER and $RENAME macro XAB$R_UIC_OVERLAY = 12,0,32,0 %; macro XAB$L_UIC = 12,0,32,0 %; ! uic code macro XAB$R_UIC_FIELDS = 12,0,32,0 %; macro XAB$W_MBM = 12,0,16,0 %; ! member code macro XAB$W_GRP = 14,0,16,0 %; ! group code macro XAB$R_PROT_MODE_OVERLAY = 16,0,0,0 %; ! RWED/mode protection for file macro XAB$Q_PROT_MODE = 16,0,0,1 %; literal XAB$S_PROT_MODE = 8; ! eventually may be a quadword macro XAB$R_PROT_MODE_FIELDS = 16,0,8,0 %; macro XAB$B_PROT_MODE = 16,0,8,0 %; ! but currently only a byte macro XAB$L_ACLBUF = 24,0,32,1 %; ! address of user's ACL buffer macro XAB$W_ACLSIZ = 28,0,16,0 %; ! size of user's ACL buffer macro XAB$W_ACLLEN = 30,0,16,0 %; ! return length of entire ACL macro XAB$L_ACLCTX = 32,0,32,0 %; ! ACL context field macro XAB$L_ACLSTS = 36,0,32,0 %; ! ACL return err status ! basealign on aggregate XABPRODEF1 operates after aggregate end literal XAB$K_PROLEN = 88; ! xabpro length literal XAB$C_PROLEN = 88; ! xabpro length !*** MODULE $XABTRMDEF *** ! ! terminal control xab field definitions ! $xabtrmdef ! ! literal XAB$C_TRM = 31; ! XABTRM ID CODE literal XAB$S_XABTRMDEF = 36; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$L_ITMLST = 8,0,32,1 %; ! item list address macro XAB$W_ITMLST_LEN = 12,0,16,0 %; ! item list length ! basealign on aggregate XABTRMDEF operates after aggregate end literal XAB$K_TRMLEN = 36; ! length of xab of type terminal control literal XAB$C_TRMLEN = 36; ! length of xab of type terminal control !*** MODULE $XABSUMDEF *** ! ! summary xab field definitions ! $xabsumdef ! literal XAB$C_SUM = 22; ! xabsum id code literal XAB$S_XABSUMDEF = 12; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$B_NOA = 8,0,8,0 %; ! number of defined areas for index file macro XAB$B_NOK = 9,0,8,0 %; ! number of defined keys for index file macro XAB$W_PVN = 10,0,16,0 %; ! prologue version number (relative and index files) ! basealign on aggregate XABSUMDEF operates after aggregate end literal XAB$K_SUMLEN = 12; ! xabsum length literal XAB$C_SUMLEN = 12; ! xabsum length !*** MODULE $XABKEYDEF *** ! ! key definition xab field definitions ! $xabkeydef ! literal XAB$C_KEY = 21; ! xabkey id code literal XAB$M_DUP = %X'1'; literal XAB$M_CHG = %X'2'; literal XAB$M_NUL = %X'4'; literal XAB$M_IDX_NCMPR = %X'8'; literal XAB$M_KEY_NCMPR = %X'40'; literal XAB$M_DAT_NCMPR = %X'80'; literal XAB$C_STG = 0; ! string literal XAB$C_IN2 = 1; ! signed 15 bit integer (2 bytes) literal XAB$C_BN2 = 2; ! 2 byte binary literal XAB$C_IN4 = 3; ! signed 31 bit integer (4 bytes) literal XAB$C_BN4 = 4; ! 4 byte binary literal XAB$C_PAC = 5; ! packed decimal (1-16 bytes) literal XAB$C_IN8 = 6; ! signed 63 bit integer (4 bytes) literal XAB$C_BN8 = 7; ! 8 byte binary literal XAB$C_COL = 8; ! collated literal XAB$C_MAX_ASCEND = 8; ! maximum ascending type literal XAB$C_DSTG = 32; ! descending string literal XAB$C_DIN2 = 33; ! " signed word literal XAB$C_DBN2 = 34; ! " unsigned word literal XAB$C_DIN4 = 35; ! " signed longword literal XAB$C_DBN4 = 36; ! " unsigned longword literal XAB$C_DPAC = 37; ! " packed decimal literal XAB$C_DIN8 = 38; ! " signed quadword literal XAB$C_DBN8 = 39; ! " unsigned quadword literal XAB$C_DCOL = 40; ! " collated literal XAB$C_MAXDTP = 40; ! max. legal data type literal XAB$K_KEYLEN_V2 = 64; ! old xabkey length literal XAB$C_KEYLEN_V2 = 64; ! old xabkey length ! literal XAB$C_PRG3 = 3; ! Prologue version three literal XAB$C_PRG2 = 2; ! Prologue version two literal XAB$C_PRG1 = 1; ! Prologue versoin one literal XAB$K_KEYLEN_V4 = 76; ! xabkey length until V5 literal XAB$C_KEYLEN_V4 = 76; ! xabkey length until V5 literal XAB$S_XABKEYDEF = 100; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF ! ! the field layout of the key xab is such that it matchs as ! closely as possible the layout of a key decriptor in the ! index file prologue. this is so the contents may be moved ! between the two structures as efficiently as possible. ! macro XAB$B_IAN = 8,0,8,0 %; ! index level area number macro XAB$B_LAN = 9,0,8,0 %; ! lowest index level area number macro XAB$B_DAN = 10,0,8,0 %; ! data level area number macro XAB$B_LVL = 11,0,8,0 %; ! level of root bucket macro XAB$B_IBS = 12,0,8,0 %; ! size of index buckets in virtual blocks macro XAB$B_DBS = 13,0,8,0 %; ! size of data buckets in virtual blocks macro XAB$L_RVB = 14,0,32,0 %; ! root bucket start vbn macro XAB$R_FLG_OVERLAY = 18,0,8,0 %; macro XAB$B_FLG = 18,0,8,0 %; ! key option flags macro XAB$R_FLG_BITS0 = 18,0,8,0 %; macro XAB$V_DUP = 18,0,1,0 %; ! duplicate key values allowed macro XAB$V_CHG = 18,1,1,0 %; ! alt key only --key field may change on update macro XAB$V_NUL = 18,2,1,0 %; ! alt key only --null key value enable macro XAB$V_IDX_NCMPR = 18,3,1,0 %; ! indicate index records for given key are not compressed macro XAB$V_KEY_NCMPR = 18,6,1,0 %; ! indicates key is not compressed in data record macro XAB$R_FLG_BITS1 = 18,0,8,0 %; macro XAB$V_DAT_NCMPR = 18,7,1,0 %; ! data record is not compressed macro XAB$B_DTP = 19,0,8,0 %; ! key field data type macro XAB$B_NSG = 20,0,8,0 %; ! number of key segments macro XAB$B_NUL = 21,0,8,0 %; ! nul key character macro XAB$B_TKS = 22,0,8,0 %; ! total key field size (bytes) macro XAB$B_REF = 23,0,8,0 %; ! key of reference (0=prim key, ! 1-254 = alternate keys) macro XAB$W_MRL = 24,0,16,0 %; ! minimun record length to contain key field macro XAB$W_IFL = 26,0,16,0 %; ! index bucket fill size (bytes) macro XAB$W_DFL = 28,0,16,0 %; ! data bucket fil size (bytes) macro XAB$R_POS_OVERLAY = 30,0,0,0 %; macro XAB$W_POS = 30,0,0,0 %; literal XAB$S_POS = 16; ! key field record offset positions macro XAB$R_POS_FIELDS = 30,0,0,0 %; macro XAB$W_POS0 = 30,0,16,0 %; ! segment 0 macro XAB$W_POS1 = 32,0,16,0 %; ! segment 1 macro XAB$W_POS2 = 34,0,16,0 %; ! segment 2 macro XAB$W_POS3 = 36,0,16,0 %; ! segment 3 macro XAB$W_POS4 = 38,0,16,0 %; ! segment 4 macro XAB$W_POS5 = 40,0,16,0 %; ! segment 5 macro XAB$W_POS6 = 42,0,16,0 %; ! segment 6 macro XAB$W_POS7 = 44,0,16,0 %; ! segment 7 macro XAB$R_SIZ_OVERLAY = 46,0,0,0 %; macro XAB$B_SIZ = 46,0,0,0 %; literal XAB$S_SIZ = 8; ! key field segment sizes macro XAB$R_SIZ_FIELDS = 46,0,0,0 %; macro XAB$B_SIZ0 = 46,0,8,0 %; ! segment 0 macro XAB$B_SIZ1 = 47,0,8,0 %; ! segment 1 macro XAB$B_SIZ2 = 48,0,8,0 %; ! segment 2 macro XAB$B_SIZ3 = 49,0,8,0 %; ! segment 3 macro XAB$B_SIZ4 = 50,0,8,0 %; ! segment 4 macro XAB$B_SIZ5 = 51,0,8,0 %; ! segment 5 macro XAB$B_SIZ6 = 52,0,8,0 %; ! segment 6 macro XAB$B_SIZ7 = 53,0,8,0 %; ! segment 7 ! ! the positions of the above fields are dictated by the key descriptor ! record layout in the index file prologue. ! macro XAB$L_KNM = 56,0,32,1 %; ! pointer to 32 character key name buffer macro XAB$L_DVB = 60,0,32,0 %; ! first data bucket start vbn ! Additions for prologue 3 files ! macro XAB$R_TYP_OVERLAY = 64,0,0,0 %; macro XAB$B_TYP = 64,0,0,0 %; literal XAB$S_TYP = 8; ! key field segment types macro XAB$R_TYP_FIELDS = 64,0,0,0 %; macro XAB$B_TYP0 = 64,0,8,0 %; ! segment 0 macro XAB$B_TYP1 = 65,0,8,0 %; ! segment 1 macro XAB$B_TYP2 = 66,0,8,0 %; ! segment 2 macro XAB$B_TYP3 = 67,0,8,0 %; ! segment 3 macro XAB$B_TYP4 = 68,0,8,0 %; ! segment 4 macro XAB$B_TYP5 = 69,0,8,0 %; ! segment 5 macro XAB$B_TYP6 = 70,0,8,0 %; ! segment 6 macro XAB$B_TYP7 = 71,0,8,0 %; ! segment 7 macro XAB$B_PROLOG = 72,0,8,0 %; ! indicate prologue version desired (primary key only) macro XAB$L_COLTBL = 76,0,32,1 %; ! address of collate table macro XAB$L_COLSIZ = 80,0,32,0 %; ! size of collate table macro XAB$L_COLNAM = 84,0,32,0 %; ! name of collate table ! -- ! ++ ! basealign on aggregate XABKEYDEF operates after aggregate end literal XAB$K_KEYLEN = 100; ! xabkey length for V5 literal XAB$C_KEYLEN = 100; ! xabkey length for V5 !*** MODULE $XABCXFDEF *** ! ! RMS Context XAB associated with the FAB ! $xabcxfdef ! literal XAB$C_CXF = 32; ! XABCXF id code literal XAB$M_CXFRST = %X'1'; literal XAB$S_XABCXFDEF = 60; ! UP TILL NOW COMMON AMONG ALL XABS ! ! Following in common with the CXR block, too. ! Do not rearrange without changing both. ! macro XAB$L_CXFSTS = 8,0,32,0 %; ! Status of the last file operation. macro XAB$L_CXFSTV = 12,0,32,0 %; ! Status Value of the last file operation. ! ! Top four bits of the options longword are reserved for the XABCXR. These ! bits describe the version of the key buffer. ! macro XAB$R_CXFCOP_OVERLAY = 16,0,32,0 %; macro XAB$L_CXFCOP = 16,0,32,0 %; ! Context Options. macro XAB$R_CXFCOP_BITS = 16,0,8,0 %; macro XAB$V_CXFRST = 16,0,1,0 %; ! Restore file state - use context blk as input. macro XAB$L_CXFBKP = 20,0,32,0 %; ! Bookkeeping bits macro XAB$W_CXFIFI = 24,0,16,0 %; ! Internal File Identifier macro XAB$B_CXFVER = 26,0,8,0 %; ! prologue version num ! ! Up Till now in common with XABCXR, too. ! ! The following fields correspond to those in the FAB or IFB ! They should not be rearranged as their order is assumed for ! purposes of moving large chunks of data rather than a byte ! or word at a time. Note: ASSUME is used in the actual code ! macro XAB$W_CXFDEQ = 32,0,16,0 %; ! Default extention quantity macro XAB$B_CXFFAC = 34,0,8,0 %; ! File access macro XAB$B_CXFSHR = 35,0,8,0 %; ! File Sharing macro XAB$W_CXFRTE = 36,0,16,0 %; ! (Not used) macro XAB$B_CXFORG = 39,0,8,0 %; ! file organization macro XAB$W_CXFGBC = 40,0,16,0 %; ! global buffer count macro XAB$B_CXFRTV = 42,0,8,0 %; ! retrieval window ! basealign on aggregate XABCXFDEF operates after aggregate end literal XAB$K_CXFLEN = 60; ! length of xab type CXF literal XAB$C_CXFLEN = 60; ! length of xab type CXF !*** MODULE $XABCXRDEF *** ! ! RMS Context XAB associated with the RAB ! $xabcxrdef ! literal XAB$C_CXR = 33; ! XABCXR id code literal XAB$M_CXRRST = %X'1'; literal XAB$C_CXB_VER1 = 1; literal XAB$C_CXRBLEN = 512; ! Length of CXRBUF (bytes) literal XAB$S_XABCXRDEF = 84; ! UP TILL NOW COMMON AMONG ALL XABS ! ! Following in common with the CXF block, too. ! Do not rearrange without changing it. ! macro XAB$L_CXRSTS = 8,0,32,0 %; ! Status of the last record operation. macro XAB$L_CXRSTV = 12,0,32,0 %; ! Status Value of the last record operation. macro XAB$R_CXRCOP_OVERLAY = 16,0,32,0 %; macro XAB$L_CXRCOP = 16,0,32,0 %; ! Context Options. macro XAB$R_CXRCOP_BITS = 16,0,32,0 %; macro XAB$V_CXRRST = 16,0,1,0 %; ! Restore file/record state - use context blk as input. macro XAB$V_CXRBVER = 16,28,4,0 %; literal XAB$S_CXRBVER = 4; ! Version of Key buffer macro XAB$L_CXRBKP = 20,0,32,0 %; ! Bookkeeping bits macro XAB$W_CXRISI = 24,0,16,0 %; ! Internal Record Identifier macro XAB$B_CXRVER = 26,0,8,0 %; ! prologue version num. ! ! Up Till now in common with XABCXF, too. ! ! ! The following elements are arranged such that large amounts of ! data can be moved at a time rather than words or bytes. Do not ! rearrange them without this consideration in mind. ! ! The following elements are stream dependent regardless of file org. ! macro XAB$B_CXRMBF = 32,0,8,0 %; ! Multibuffer count macro XAB$B_CXRMBC = 33,0,8,0 %; ! Multiblock count macro XAB$W_CXRBFZ = 34,0,16,0 %; ! sz in byte of CXRBUF ! ! The following elements are necessary for saving the NRP context for ! Sequential and Relative files. ! macro XAB$L_CXRVBN = 36,0,32,0 %; ! NRP VBN macro XAB$W_CXROFF = 40,0,16,0 %; ! NRP offset in VBN macro XAB$W_FILL_8 = 42,0,16,0 %; ! mbz - longword align ! ! The following elements are necessary for saving the NRP context for ! ISAM files. ! macro XAB$L_CXRPOS0 = 44,0,32,0 %; ! Primary Positioning RFA macro XAB$W_CXRPOS4 = 48,0,16,0 %; macro XAB$L_CXRCUR0 = 52,0,32,0 %; ! Current Positioning RFA macro XAB$W_CXRCUR4 = 56,0,16,0 %; macro XAB$L_CXRSID0 = 60,0,32,0 %; ! SIDR positioning RFA macro XAB$W_CXRSID4 = 64,0,16,0 %; macro XAB$W_CXRCNT = 68,0,16,0 %; ! SIDR array count macro XAB$B_CXRKREF = 70,0,8,0 %; ! Cur Key of Reference macro XAB$B_CXRKLEN = 71,0,8,0 %; ! Length of key macro XAB$L_CXRBUF = 72,0,32,1 %; ! address of key buf ! basealign on aggregate XABCXRDEF operates after aggregate end literal XAB$K_CXRLEN = 84; ! Length of XAB type CXR literal XAB$C_CXRLEN = 84; ! Length of XAB type CXR !*** MODULE $XABJNLDEF *** ! ! Journal XAB definitions ! $xabjnldef ! literal XAB$C_JNL = 34; ! xabjnl id code literal XAB$C_JNL_TYPE_NONE = 0; literal XAB$C_AI = 1; ! AI journal literal XAB$C_BI = 2; ! BI journal literal XAB$C_AT = 3; ! AT journal literal XAB$C_RU_DEFAULT = 4; ! default RU volume literal XAB$M_JOURNAL_DISABLED = %X'1'; literal XAB$M_BACKUP_DONE = %X'2'; literal XAB$S_XABJNLDEF = 80; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$B_XABJNL_TYPE = 8,0,8,0 %; ! type of $XABJNL macro XAB$R_JNL_FLAGS_OVERLAY = 10,0,16,0 %; macro XAB$W_JNL_FLAGS = 10,0,16,0 %; ! journal flags (from ACE$W_RMSJNL_FLAGS) macro XAB$R_JNL_FLAGS_BITS = 10,0,8,0 %; macro XAB$V_JOURNAL_DISABLED = 10,0,1,0 %; ! journaling disabled by BACKUP (AI/BI/AT) macro XAB$V_BACKUP_DONE = 10,1,1,0 %; ! Backup done since last $OPEN macro XAB$L_JNL_FAB = 12,0,32,1 %; ! address of journal file FAB macro XAB$L_VOLNAM_BUF = 16,0,32,1 %; ! address of journal volume name buffer macro XAB$W_VOLNAM_SIZ = 20,0,16,0 %; ! size of journal volume name buffer macro XAB$W_VOLNAM_LEN = 22,0,16,0 %; ! return length of journal volume name macro XAB$Q_JNL_VERIFY_CDATE = 24,0,0,0 %; literal XAB$S_JNL_VERIFY_CDATE = 8; ! journal file creation date (from ACE$Q_CDATE) ! (to match with journal file's creation date) macro XAB$L_JNLIDX = 32,0,32,0 %; ! Journal stream index within journal file macro XAB$L_BACKUP_SEQNO = 36,0,32,0 %; ! Backup sequence number. macro XAB$Q_JNL_MOD_TIME = 40,0,0,0 %; literal XAB$S_JNL_MOD_TIME = 8; ! Timestamp of last backup or last journal ! entry recovered. ! basealign on aggregate XABJNLDEF operates after aggregate end literal XAB$K_JNLLEN = 80; literal XAB$C_JNLLEN = 80; !*** MODULE $XABITMDEF *** ! ! Item XAB definitions ! literal XAB$C_ITM = 36; ! xabitm id code ! The following set of flags exactly mimic the FCHDEF flags defined in STARLET. ! They are here to provide an unsupported interface to the UCHAR longword maintained ! by the file system. ! ! Note: RESERVED6 is the counterpart of FCH$x_SCRATCH. This SCRATCH bit ! means the file is a temporary file that should only exist within the ! context of an XQP operation. This bit should NEVER be visible to a user. ! (It was implemented by XQP for ACP MOVEFILE subfunction. A 'scratch' ! file is created with the scratch bit set in the file header. This is ! made to be the 'moved' file, then the original file is replaced by the ! moved file, and finally everything is cleaned up. If a crash occurs, ! the scratch file is left lying around; the scratch bit is used to signal ! to ANALYZE/DISK/REPAIR that this header is not being used.) RMS should ! not provide any interface to sense or set this bit. ! literal XAB$M_WASCONTIG = %X'1'; literal XAB$M_NOBACKUP = %X'2'; literal XAB$M_WRITEBACK = %X'4'; literal XAB$M_READCHECK = %X'8'; literal XAB$M_WRITCHECK = %X'10'; literal XAB$M_CONTIGB = %X'20'; literal XAB$M_LOCKED = %X'40'; literal XAB$M_CONTIG = %X'80'; literal XAB$M_RESERVED1 = %X'100'; literal XAB$M_RESERVED2 = %X'200'; literal XAB$M_RESERVED3 = %X'400'; literal XAB$M_BADACL = %X'800'; literal XAB$M_SPOOL = %X'1000'; literal XAB$M_DIRECTORY = %X'2000'; literal XAB$M_BADBLOCK = %X'4000'; literal XAB$M_MARKDEL = %X'8000'; literal XAB$M_NOCHARGE = %X'10000'; literal XAB$M_ERASE = %X'20000'; literal XAB$M_RESERVED4 = %X'40000'; literal XAB$M_SHELVED = %X'80000'; literal XAB$M_RESERVED6 = %X'100000'; literal XAB$M_NOMOVE = %X'200000'; literal XAB$M_NOSHELVABLE = %X'400000'; literal XAB$M_PRESHELVED = %X'800000'; literal XAB$S_UCHAR_FLAGS = 3; ! mimics $FCHDEF macro XAB$V_WASCONTIG = 0,0,1,0 %; macro XAB$V_NOBACKUP = 0,1,1,0 %; macro XAB$V_WRITEBACK = 0,2,1,0 %; macro XAB$V_READCHECK = 0,3,1,0 %; macro XAB$V_WRITCHECK = 0,4,1,0 %; macro XAB$V_CONTIGB = 0,5,1,0 %; macro XAB$V_LOCKED = 0,6,1,0 %; macro XAB$V_CONTIG = 0,7,1,0 %; macro XAB$V_RESERVED1 = 0,8,1,0 %; macro XAB$V_RESERVED2 = 0,9,1,0 %; macro XAB$V_RESERVED3 = 0,10,1,0 %; macro XAB$V_BADACL = 0,11,1,0 %; macro XAB$V_SPOOL = 0,12,1,0 %; macro XAB$V_DIRECTORY = 0,13,1,0 %; macro XAB$V_BADBLOCK = 0,14,1,0 %; macro XAB$V_MARKDEL = 0,15,1,0 %; macro XAB$V_NOCHARGE = 0,16,1,0 %; macro XAB$V_ERASE = 0,17,1,0 %; macro XAB$V_RESERVED4 = 0,18,1,0 %; macro XAB$V_SHELVED = 0,19,1,0 %; macro XAB$V_RESERVED6 = 0,20,1,0 %; macro XAB$V_NOMOVE = 0,21,1,0 %; macro XAB$V_NOSHELVABLE = 0,22,1,0 %; macro XAB$V_PRESHELVED = 0,23,1,0 %; literal XAB$_NET_BUFFER_SIZE = 1; ! (sense) negociated buffer size literal XAB$_NET_BLOCK_COUNT = 2; ! (set,sense) requested block count literal XAB$_NET_REMOTE_SYSTEM = 3; ! (sense) remote system type literal XAB$_NET_REMOTE_FILE_SYSTEM = 4; ! (sense) remote file system type literal XAB$_NET_EXTPROT = 5; ! (set,sense) actual extended protection literal XAB$_NET_SYSCAP_LOCAL = 6; ! (sense) DAP SYSCAP of local system literal XAB$_NET_SYSCAP_REMOTE = 7; ! (sense) DAP SYSCAP of remote system literal XAB$_NET_DAPVER_LOCAL = 8; ! (sense) DAP version - local system literal XAB$_NET_DAPVER_REMOTE = 9; ! (sense) DAP version - remote system literal XAB$_NET_LINK_TIMEOUT = 10; ! (set,sense) logical link timeout (seconds) literal XAB$_NET_DATA_CRC_ENABLE = 11; ! (set,sense) DAP level CRC literal XAB$_NET_LINK_CACHE_ENABLE = 12; ! (set,sense) Logical link cache enable ! ,NET_DATA_COMPRESSION /* (set,sense) do data compression (FUTURE) literal XAB$K_NET_MIN = 1; literal XAB$K_NET_MAX = 12; literal XAB$_STAT_ENABLE = 64; ! (set,sense) Read statistics enable literal XAB$_FILE_LENGTH_HINT = 65; ! (set,sense) File length hint (set of 2 quadword fields) literal XAB$K_STAT_MIN = 64; literal XAB$K_STAT_MAX = 65; literal XAB$_UCHAR = 128; ! (sense) Read file characteristics (obsolete) literal XAB$_UCHAR_WASCONTIG = 129; ! (sense) FCH$V_WASCONTIG literal XAB$_UCHAR_NOBACKUP = 130; ! (set,sense) FCH$V_NOBACKUP literal XAB$_UCHAR_WRITEBACK = 131; ! (sense) FCH$V_WRITEBACK literal XAB$_UCHAR_READCHECK = 132; ! (set,sense) FCH$V_READCHECK literal XAB$_UCHAR_WRITECHECK = 133; ! (set,sense) FCH$V_WRITECHECK literal XAB$_UCHAR_CONTIGB = 134; ! (set,sense) FCH$V_CONTIGB literal XAB$_UCHAR_LOCKED = 135; ! (set,sense) FCH$V_LOCKED literal XAB$_UCHAR_CONTIG = 136; ! (sense) FCH$V_CONTIG literal XAB$_UCHAR_BADACL = 137; ! (sense) FCH$V_BADACL literal XAB$_UCHAR_SPOOL = 138; ! (sense) FCH$V_SPOOL literal XAB$_UCHAR_DIRECTORY = 139; ! (sense) FCH$V_DIRECTORY literal XAB$_UCHAR_BADBLOCK = 140; ! (sense) FCH$V_BADBLOCK literal XAB$_UCHAR_MARKDEL = 141; ! (sense) FCH$V_BADBLOCK literal XAB$_UCHAR_NOCHARGE = 142; ! (sense) FCH$V_NOCHARGE literal XAB$_UCHAR_ERASE = 143; ! (set,sense) FCH$V_ERASE literal XAB$_UCHAR_NOMOVE = 144; ! (set,sense) FCH$V_NOMOVE literal XAB$_UCHAR_SHELVED = 145; ! (sense) FCH$V_SHELVED literal XAB$_UCHAR_NOSHELVABLE = 146; ! (set,sense) FCH$V_NOSHELVABLE literal XAB$_UCHAR_PRESHELVED = 147; ! (sense) FCH$V_PRESHELVED literal XAB$K_UCHAR_MIN = 128; literal XAB$K_UCHAR_MAX = 147; literal XAB$_STORED_SEMANTICS = 192; ! (set,sense) Stored semantics of the file literal XAB$_ACCESS_SEMANTICS = 193; ! (set,sense) Access semantics of the file literal XAB$_RMS_EXTENSION = 194; ! (set,sense) Required RMS processing extension literal XAB$K_XLATE_MIN = 192; literal XAB$K_XLATE_MAX = 194; literal XAB$C_SEMANTICS_MAX_LEN = 64; ! max length for stored or access semantics literal XAB$K_SEMANTICS_MAX_LEN = 64; ! max length for stored or access semantics literal XAB$_MULTIBUFFER_COUNT = 256; ! (set-only) Multibuffer count (not limited to 127) ! legal only on $CONNECT literal XAB$_NORECORD = 257; ! (set-only) Norecord suppresses update of the expiration d/t, passed in on ! on $OPEN or $CLOSE literal XAB$_RECOVERY = 258; ! Used to indicate type of ! recovery in progress. literal XAB$_RUJVOLNAM = 259; ! Used to control RUJ placement literal XAB$_GBC32 = 260; ! (set/sense) GBC longword implementation literal XAB$_LINKCOUNT = 261; ! (set/sense) ODS-5 (hard) link count literal XAB$_GBCFLAGS = 262; ! (set/sense) GBC flags literal XAB$K_MISC_MIN = 256; literal XAB$K_MISC_MAX = 262; literal XAB$_TID = 320; ! (set/sense) TID literal XAB$K_TID_MIN = 320; literal XAB$K_TID_MAX = 320; literal XAB$_CACHING_OPTIONS = 384; ! (set,sense) VDC runtime caching options literal XAB$_CACHING_ATTRIBUTE = 385; ! (set, sense) VDC perm caching attribute literal XAB$K_CACHING_OPTIONS_MIN = 384; literal XAB$K_CACHING_OPTIONS_MAX = 385; literal XAB$_ACCDATE = 448; ! (set,sense) access date literal XAB$_ATTDATE = 449; ! (set,sense) attribute change date literal XAB$_MODDATE = 450; ! (set,sense) data modification date literal XAB$K_DATE_MIN = 448; literal XAB$K_DATE_MAX = 450; literal XAB$K_SENSEMODE = 1; literal XAB$K_SETMODE = 2; literal XAB$S_XABITMDEF = 32; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$L_ITEMLIST = 8,0,32,1 %; ! Address of the item list ! In the user interface, item codes are arbitrary integer values, so ! we may as well allow logical groups to have contiguous codes, with ! room for expansion (to allow table driven code). macro XAB$B_MODE = 12,0,8,0 %; ! must be either SETMODE or SENSEMODE ! basealign on aggregate XABITMDEF operates after aggregate end literal XAB$K_ITMLEN = 32; literal XAB$C_ITMLEN = 32; ! Define fields and constant values for XAB$_CACHING_OPTIONS longword. ! These must match [STARLET]FIBDEF.SDL exactly literal XAB$M_FILE_ATTRIBUTES = %X'F'; literal XAB$M_FILE_CONTENTS = %X'F0'; literal XAB$K_DEFAULT = 0; literal XAB$K_WRITETHROUGH = 1; literal XAB$K_WRITEBEHIND = 2; literal XAB$K_NOCACHING = 3; literal XAB$M_FLUSH_ON_CLOSE = %X'F00'; literal XAB$K_FLUSH = 1; literal XAB$K_NOFLUSH = 2; literal XAB$M_CACHECTL_MBZ = %X'FFFFF000'; literal XAB$S_XAB_CACHING_OPTIONS_FLAGS = 4; macro XAB$V_FILE_ATTRIBUTES = 0,0,4,0 %; literal XAB$S_FILE_ATTRIBUTES = 4; macro XAB$V_FILE_CONTENTS = 0,4,4,0 %; literal XAB$S_FILE_CONTENTS = 4; macro XAB$V_FLUSH_ON_CLOSE = 0,8,4,0 %; literal XAB$S_FLUSH_ON_CLOSE = 4; macro XAB$V_CACHECTL_MBZ = 0,12,20,0 %; literal XAB$S_CACHECTL_MBZ = 20; ! The following set of flags mimic the IFB$B_RECVRFLGS flags. ! They are here to provide an interface for RECOVER. literal XAB$M_RCF_RU = %X'1'; literal XAB$M_RCF_AI = %X'2'; literal XAB$M_RCF_BI = %X'4'; literal XAB$M_RCF_NOPAD = %X'8'; literal XAB$S_XAB_RCF_FLAGS = 1; macro XAB$V_RCF_RU = 0,0,1,0 %; macro XAB$V_RCF_AI = 0,1,1,0 %; macro XAB$V_RCF_BI = 0,2,1,0 %; macro XAB$V_RCF_NOPAD = 0,3,1,0 %; literal XAB$K_DISABLE = 0; literal XAB$K_ENABLE = 1; literal XAB$K_RT11 = 1; literal XAB$K_RSTS = 2; literal XAB$K_RSX11S = 3; literal XAB$K_RSX11M = 4; literal XAB$K_RSX11D = 5; literal XAB$K_IAS = 6; literal XAB$K_VAXVMS = 7; literal XAB$K_TOPS20 = 8; literal XAB$K_TOPS10 = 9; literal XAB$K_RTS8 = 10; literal XAB$K_OS8 = 11; literal XAB$K_RSX11MP = 12; literal XAB$K_COPOS11 = 13; literal XAB$K_P_OS = 14; literal XAB$K_VAXELN = 15; literal XAB$K_CPM = 16; literal XAB$K_MS_DOS = 17; literal XAB$K_ULTRIX_32 = 18; literal XAB$K_ULTRIX_11 = 19; literal XAB$K_RMS11 = 1; literal XAB$K_RMS20 = 2; literal XAB$K_RMS32 = 3; literal XAB$K_FCS11 = 4; literal XAB$K_RT11FS = 5; literal XAB$K_NO_FS = 6; literal XAB$K_TOPS20FS = 7; literal XAB$K_TOPS10FS = 8; literal XAB$K_OS8FS = 9; literal XAB$K_RMS32S = 10; literal XAB$K_CPMFS = 11; literal XAB$K_MS_DOSFS = 12; literal XAB$K_ULTRIX32_FS = 13; literal XAB$K_ULTRIX11_FS = 14; literal XAB$M_NET_NOREAD = %X'1'; literal XAB$M_NET_NOWRITE = %X'2'; literal XAB$M_NET_NOEXECUTE = %X'4'; literal XAB$M_NET_NODELETE = %X'8'; literal XAB$M_NET_NOAPPEND = %X'10'; literal XAB$M_NET_NODIRECTORY = %X'20'; literal XAB$M_NET_NOUPDATE = %X'40'; literal XAB$M_NET_NOCHANGE = %X'80'; literal XAB$M_NET_NOEXTEND = %X'100'; literal XAB$S_XABNETEXTPROT = 8; macro XAB$W_SYSTEM_ACC = 0,0,16,0 %; macro XAB$V_NET_NOREAD = 0,0,1,0 %; macro XAB$V_NET_NOWRITE = 0,1,1,0 %; macro XAB$V_NET_NOEXECUTE = 0,2,1,0 %; macro XAB$V_NET_NODELETE = 0,3,1,0 %; macro XAB$V_NET_NOAPPEND = 0,4,1,0 %; macro XAB$V_NET_NODIRECTORY = 0,5,1,0 %; macro XAB$V_NET_NOUPDATE = 0,6,1,0 %; macro XAB$V_NET_NOCHANGE = 0,7,1,0 %; macro XAB$V_NET_NOEXTEND = 0,8,1,0 %; macro XAB$W_OWNER_ACC = 2,0,16,0 %; macro XAB$W_GROUP_ACC = 4,0,16,0 %; macro XAB$W_WORLD_ACC = 6,0,16,0 %; literal XAB$S_XABNETDAPVER = 5; macro XAB$B_VER_DAP = 0,0,8,0 %; macro XAB$B_VER_ECO = 1,0,8,0 %; macro XAB$B_VER_CUS = 2,0,8,0 %; macro XAB$B_VER_DSV = 3,0,8,0 %; macro XAB$B_VER_CSV = 4,0,8,0 %; literal XAB$S_XABNETCAPDEF = 7; macro XAB$V_CAP_FILALL = 0,0,1,0 %; macro XAB$V_CAP_SEQORG = 0,1,1,0 %; macro XAB$V_CAP_RELORG = 0,2,1,0 %; macro XAB$V_CAP_EXTEND = 0,4,1,0 %; macro XAB$V_CAP_SEQFIL = 0,5,1,0 %; macro XAB$V_CAP_RANRRN = 0,6,1,0 %; macro XAB$V_CAP_RANVBN = 0,7,1,0 %; macro XAB$V_CAP_RANKEY = 0,8,1,0 %; macro XAB$V_CAP_RANRFA = 0,10,1,0 %; macro XAB$V_CAP_IDXORG = 0,11,1,0 %; macro XAB$V_CAP_SWMODE = 0,12,1,0 %; macro XAB$V_CAP_APPEND = 0,13,1,0 %; macro XAB$V_CAP_SUBMIT = 0,14,1,0 %; macro XAB$V_CAP_MDS = 0,16,1,0 %; macro XAB$V_CAP_DISPLAY = 0,17,1,0 %; macro XAB$V_CAP_MSGBLK = 0,18,1,0 %; macro XAB$V_CAP_UNRBLK = 0,19,1,0 %; macro XAB$V_CAP_BIGBLK = 0,20,1,0 %; macro XAB$V_CAP_DAPCRC = 0,21,1,0 %; macro XAB$V_CAP_KEYXAB = 0,22,1,0 %; macro XAB$V_CAP_ALLXAB = 0,23,1,0 %; macro XAB$V_CAP_SUMXAB = 0,24,1,0 %; macro XAB$V_CAP_DIRECTORY = 0,25,1,0 %; macro XAB$V_CAP_TIMXAB = 0,26,1,0 %; macro XAB$V_CAP_PROXAB = 0,27,1,0 %; macro XAB$V_CAP_FOPSPL = 0,29,1,0 %; macro XAB$V_CAP_FOPSCF = 0,30,1,0 %; macro XAB$V_CAP_FOPDLT = 0,31,1,0 %; macro XAB$V_CAP_SEQRAC = 4,1,1,0 %; macro XAB$V_CAP_BITOPT = 4,3,1,0 %; macro XAB$V_CAP_WARNING = 4,4,1,0 %; macro XAB$V_CAP_RENAME = 4,5,1,0 %; macro XAB$V_CAP_WILDCARD = 4,6,1,0 %; macro XAB$V_CAP_GNGOPT = 4,7,1,0 %; macro XAB$V_CAP_NAMMSG = 4,8,1,0 %; macro XAB$V_CAP_SEGMSG = 4,9,1,0 %; macro XAB$V_CAP_CHGATTCLS = 4,10,1,0 %; macro XAB$V_CAP_CHGTIMCLS = 4,11,1,0 %; macro XAB$V_CAP_CHGPROCLS = 4,12,1,0 %; macro XAB$V_CAP_CHGNAMCLS = 4,13,1,0 %; macro XAB$V_CAP_MODATTCRE = 4,14,1,0 %; macro XAB$V_CAP_NAM3PART = 4,15,1,0 %; macro XAB$V_CAP_CHGATTREN = 4,16,1,0 %; macro XAB$V_CAP_CHGTIMREN = 4,17,1,0 %; macro XAB$V_CAP_CHGPROREN = 4,18,1,0 %; macro XAB$V_CAP_CTLBLKCNT = 4,19,1,0 %; macro XAB$V_CAP_OCTALVER = 4,20,1,0 %; literal XAB$S_BUFFER_SIZE = 4; literal XAB$S_NETWORK_BLOCK_COUNT = 4; literal XAB$S_REMOTE_SYSTEM = 4; literal XAB$S_REMOTE_FILE_SYSTEM = 4; literal XAB$S_EXTPROT_LOCAL = 8; literal XAB$S_EXTPROT_REMOTE = 8; literal XAB$S_CAPABIL_LOCAL = 8; literal XAB$S_CAPABIL_REMOTE = 8; literal XAB$S_DAPVER_LOCAL = 5; literal XAB$S_DAPVER_REMOTE = 5; literal XAB$S_CACHE_TMO = 4; literal XAB$S_HINT_LENGTH = 16; literal XAB$S_GBC32_LENGTH = 4; literal XAB$S_GBCFLAGS_LENGTH = 4; !*** MODULE $XABRUDEF *** ! ! Recovery Unit XAB definitions ! $xabrudef ! literal XAB$C_RU = 35; ! xabru id code literal XAB$M_NOJOIN = %X'1'; literal XAB$S_XABRUDEF = 48; ! THESE 4 FIELDS ARE COMMON TO ALL XABS AND ! HAVE BEEN DEFINED BY $XABDEF macro XAB$R_RU_FLAGS_OVERLAY = 8,0,16,0 %; macro XAB$W_RU_FLAGS = 8,0,16,0 %; ! Flags macro XAB$R_RU_FLAGS_BITS = 8,0,8,0 %; macro XAB$V_NOJOIN = 8,0,1,0 %; ! Do not join any recovery unit macro XAB$L_RU_HANDLE = 12,0,32,0 %; ! RU handle to join (input field) macro XAB$L_RU_HANDLE_JOINED = 16,0,32,0 %; ! RU handle joined (output field) ! basealign on aggregate XABRUDEF operates after aggregate end literal XAB$K_RULEN = 48; literal XAB$C_RULEN = 48; !*** MODULE $FSCNDEF *** ! ! Descriptor codes for SYS$FILESCAN ! literal FSCN$M_NODE = %X'1'; literal FSCN$M_DEVICE = %X'2'; literal FSCN$M_ROOT = %X'4'; literal FSCN$M_DIRECTORY = %X'8'; literal FSCN$M_NAME = %X'10'; literal FSCN$M_TYPE = %X'20'; literal FSCN$M_VERSION = %X'40'; literal FSCN$M_NODE_PRIMARY = %X'80'; literal FSCN$M_NODE_ACS = %X'100'; literal FSCN$M_NODE_SECONDARY = %X'200'; literal FSCN$S_FLDFLAGS = 4; macro FSCN$V_NODE = 0,0,1,0 %; ! Node name present macro FSCN$V_DEVICE = 0,1,1,0 %; ! Device name present macro FSCN$V_ROOT = 0,2,1,0 %; ! Root directory present macro FSCN$V_DIRECTORY = 0,3,1,0 %; ! Directory present macro FSCN$V_NAME = 0,4,1,0 %; ! File name present macro FSCN$V_TYPE = 0,5,1,0 %; ! File type present macro FSCN$V_VERSION = 0,6,1,0 %; ! File version present macro FSCN$V_NODE_PRIMARY = 0,7,1,0 %; ! Primary (first) node present macro FSCN$V_NODE_ACS = 0,8,1,0 %; ! Primary ACS present macro FSCN$V_NODE_SECONDARY = 0,9,1,0 %; ! Secondary node present literal FSCN$_FILESPEC = 1; ! complete filespec literal FSCN$_NODE = 2; ! node:: field literal FSCN$_DEVICE = 3; ! device: field literal FSCN$_ROOT = 4; ! [root.] field literal FSCN$_DIRECTORY = 5; ! [directory] field literal FSCN$_NAME = 6; ! name field literal FSCN$_TYPE = 7; ! .typ field literal FSCN$_VERSION = 8; ! ;version field literal FSCN$_NODE_PRIMARY = 9; ! primary node field literal FSCN$_NODE_ACS = 10; ! acc. cont. str. fld. literal FSCN$_NODE_SECONDARY = 11; ! secondary node field literal FSCN$S_ITEM_LEN = 8; literal FSCN$S_FSCNDEF = 8; macro FSCN$W_LENGTH = 0,0,16,0 %; ! return length word macro FSCN$W_ITEM_CODE = 2,0,16,0 %; ! item code value macro FSCN$L_ADDR = 4,0,32,1 %; ! component address !*** MODULE $RMEDEF *** literal RME$C_SETRFM = 1; literal RME$C_PPFECHO = 2; literal RME$C_SETRCF = 3; literal RME$C_KEEP_LOCK_ON = 4; literal RME$C_KEEP_LOCK_OFF = 5; literal RME$C_RU_ACE_ON = 6; literal RME$C_RU_ACE_OFF = 7; literal RME$C_SET_RECATTR = 8; ! ! ---- < End of module RMSUSR.R32 - 12-AUG-2010 13:57:04.34 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:17 by OpenVMS SDL EV3-3 ! Source: 06-OCT-1986 13:38:24 $1$DGA7361:[STARLET.SRC]RUFMAC.SDL;1 ! ******************************************************************************************************************************** !*** MODULE STARLET *** ! ! RECOVERY UNIT SERVICES MACRO DEFINITIONS ! ! ! $ABORT_RU ! ! Abort Recovery Unit ! ! $ABORT_RU ru_handle ! ! ru_handle = address of recovery unit handle ! %if not %declared(%quote SDL$STARLET_REQ) %then ! MACRO to emit warning and default to 0 if required argument is missing ! macro SDL$STARLET_REQ(ARG1, arg2) = %IF not %NULL(ARG1) %THEN ARG1 %else %warn(%string('REQUIRED ARGUMENT ', %NAME(ARG2), ' MISSING')) 0 %FI %; %fi %if not %declared(%quote SDL$STARLET_OPT) %then ! Defaults omitted arguments to 0 if followed by additional arguments ! macro SDL$STARLET_OPT[ARG] = %IF %NULL(ARG) %THEN %IF NOT %NULL(%REMAINING) %THEN 0 %FI %ELSE ARG %FI %; %fi %if not %declared(%quote SDL$STARLET_LIST_0_REQ) %then ! Handles LIST parameters that are also OPTIONAL ! macro SDL$STARLET_LIST_0_REQ(ARG) = %IF NOT %NULL(ARG) %THEN %REMOVE(ARG) %FI %; %fi %if not %declared(%quote SDL$STARLET_LIST_1_REQ) %then ! Handles LIST parameters that are not OPTIONAL ! Emits warning and defaults to 0 if required argument is missing ! macro SDL$STARLET_LIST_1_REQ(ARG, ARG2) = %IF %NULL(ARG) %THEN %warn(%string('REQUIRED ARGUMENT ', %NAME(ARG2), ' MISSING')) 0 %ELSE SDL$STARLET_LIST_0_REQ(ARG) %FI %; %fi %if not %declared(%quote SDL$STARLET_CONCAT) %then ! Eliminates trailing null arguments ! macro SDL$STARLET_CONCAT[ARG] = %IF NOT %NULL(ARG) %THEN ARG %FI %; %fi ! *********************************** KEYWORDMACRO $ABORT_RU (RU_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$ABORT_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$ABORT_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) )) END %; ! ! $CANRUH ! ! Cancel Recovery Unit Handler ! ! $CANRUH [handler_id] ,[access_mode] ! ! handler_id = address of identification of handler ! ! access_mode = address of access mode of handler ! KEYWORDMACRO $CANRUH (HANDLER_ID=0,ACCESS_MODE=0) = BEGIN EXTERNAL ROUTINE SYS$CANRUH : BLISS ADDRESSING_MODE (GENERAL); SYS$CANRUH (SDL$STARLET_CONCAT( HANDLER_ID, ACCESS_MODE)) END %; ! ! $COMMIT_RU ! ! Commit Recovery Unit ! ! $COMMIT_RU ru_handle ! ! ru_handle = address of recovery unit handle ! KEYWORDMACRO $COMMIT_RU (RU_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$COMMIT_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$COMMIT_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) )) END %; ! ! $DCLRUH ! ! Declare Recovery Unit Handler ! ! $DCLRUH handler_address ,handler_id ,[access_mode] ! ! handler_address = address of recovery unit handler ! ! handler_id = address of identification of handler ! ! access_mode = address of access mode of handler ! KEYWORDMACRO $DCLRUH (HANDLER_ADDRESS,HANDLER_ID,ACCESS_MODE=0) = BEGIN EXTERNAL ROUTINE SYS$DCLRUH : BLISS ADDRESSING_MODE (GENERAL); SYS$DCLRUH (SDL$STARLET_CONCAT( SDL$STARLET_REQ(HANDLER_ADDRESS, %QUOTE HANDLER_ADDRESS) , SDL$STARLET_REQ(HANDLER_ID, %QUOTE HANDLER_ID) , ACCESS_MODE)) END %; ! ! $END_RU ! ! End Recovery Unit ! ! $END_RU ru_handle ! ! ru_handle = address of recovery unit handle ! KEYWORDMACRO $END_RU (RU_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$END_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$END_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) )) END %; ! ! $GET_RUID ! ! Get Recovery Unit Id ! ! $GET_RUID ru_handle ,ruid ,[access_mode] ,[flag] ! ! ru_handle = address of recovery unit handle ! ! ruid = address of recovery unit id ! ! access_mode = address of access mode of recovery unit ! ! flag = address of flag ! 0 -> get ruid corresponding to ru_handle ! 1 -> get default ruid for this access_mode ! KEYWORDMACRO $GET_RUID (RU_HANDLE,RUID,ACCESS_MODE=0,FLAG=0) = BEGIN EXTERNAL ROUTINE SYS$GET_RUID : BLISS ADDRESSING_MODE (GENERAL); SYS$GET_RUID (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) , SDL$STARLET_REQ(RUID, %QUOTE RUID) , ACCESS_MODE, FLAG)) END %; ! ! $JOIN_RU ! ! Join Recovery Unit ! ! $JOIN_RU ru_handle ,handler_id ,object_id ! ! ru_handle = address of recovery unit handle ! ! handler_id = address of identification of handler ! ! object_id = address of object-specific parameter ! KEYWORDMACRO $JOIN_RU (RU_HANDLE,HANDLER_ID,OBJECT_ID) = BEGIN EXTERNAL ROUTINE SYS$JOIN_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$JOIN_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) , SDL$STARLET_REQ(HANDLER_ID, %QUOTE HANDLER_ID) , SDL$STARLET_REQ(OBJECT_ID, %QUOTE OBJECT_ID) )) END %; ! ! $PREPARE_RU ! ! Prepare Recovery Unit ! ! $PREPARE_RU ru_handle ! ! ru_handle = address of recovery unit handle ! KEYWORDMACRO $PREPARE_RU (RU_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$PREPARE_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$PREPARE_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) )) END %; ! ! $RUNDOWN_RU ! ! Rundown Recovery Unit Services ! ! $RUNDOWN_RU [access_mode] ! ! access_mode = address of access mode to rundown ! KEYWORDMACRO $RUNDOWN_RU (ACCESS_MODE=0) = BEGIN EXTERNAL ROUTINE SYS$RUNDOWN_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$RUNDOWN_RU (SDL$STARLET_CONCAT( ACCESS_MODE)) END %; ! ! $START_RU ! ! Start Recovery Unit ! ! $START_RU ru_handle ! ! ru_handle = address of recovery unit handle ! KEYWORDMACRO $START_RU (RU_HANDLE) = BEGIN EXTERNAL ROUTINE SYS$START_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$START_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) )) END %; ! ! $UNJOIN_RU ! ! Unjoin Recovery Unit ! ! $UNJOIN_RU ru_handle ,handler_id ,object_id ! ! ru_handle = address of recovery unit handle ! ! handler_id = address of identification of handler ! ! object_id = address of object-specific parameter ! KEYWORDMACRO $UNJOIN_RU (RU_HANDLE,HANDLER_ID,OBJECT_ID) = BEGIN EXTERNAL ROUTINE SYS$UNJOIN_RU : BLISS ADDRESSING_MODE (GENERAL); SYS$UNJOIN_RU (SDL$STARLET_CONCAT( SDL$STARLET_REQ(RU_HANDLE, %QUOTE RU_HANDLE) , SDL$STARLET_REQ(HANDLER_ID, %QUOTE HANDLER_ID) , SDL$STARLET_REQ(OBJECT_ID, %QUOTE OBJECT_ID) )) END %; ! ! ---- < End of module RUFMAC.R32 - 12-AUG-2010 13:57:04.41 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:17 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:17 $1$DGA7361:[STARLET.SRC]RUFMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $RUFDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:17.38 ! ! ! COPYRIGHT (C) 1986 BY ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. ! ALL RIGHTS RESERVED. ! ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED ! ONLY IN ACCORDANCE OF THE TERMS OF SUCH LICENSE AND WITH THE ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY ! TRANSFERRED. ! ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT ! CORPORATION. ! ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. ! ++ ! FACILITY: ! ! VAX/VMS RECOVERY UNIT SERVICES ! ! ABSTRACT: ! ! THIS MODULE CONTAINS ALL OF THE RECOVERY UNIT SERVICES MESSAGES ! ! AUTHOR: ! ! GARY J. ALLISON ! ! CREATION DATE: 4-NOV-1985 ! ! MODIFICATION HISTORY: ! ! X-4 LSS0154 LEONARD S. SZUBOWICZ 4-APR-1990 ! ALTER TEXT AND FAO PARAMETERS OF RUF$_ERRRUHCOM AND ! RUF$_ERRRUHABO CONDITION VALUES FOR RMS/DDTM SUPPORT. ! ! X-3 LSS0023 LEONARD S. SZUBOWICZ 26-SEP-1987 ! ADD RUF$_RUNOTCOM TO INDICATE FAILURE TO COMMIT RU. ! ADD RUF$_RUNOTABO (FOR POSSIBLE FUTURE USED) TO INDICATE ! FAILURE TO ABORT RU. ! ! X-2 LSS0008 LEONARD S. SZUBOWICZ 12-SEP-1986 ! ADD RUF$_NOSUCHOBJ FOR NEW SYS$UNJOIN_RU SERVICE. ! ! X-1 PMV0001 PETER M. VATNE 17-MAR-1986 ! MODIFIED TO REFLECT RUF V1 SPECIFICATION. ! CHANGED TITLE TO RUF$MSGDEF. ! ADDED .BASE DIRECTIVES TO SPREAD OUT MESSAGE RANGES. ! ! DAS DAVID A. SOLOMON 29-APR-1986 ! ADD MESSAGE CODES FOR REPORTING EXTENDED STATUS INFORMATION ! ON RU HANDLER ERRORS (NEEDED BY THE RMS RU HANDLER, SINCE ! RMS MESSAGES CAN ONLY HAVE ONE FAO ARGUMENT). ! -- literal RUF$_FACILITY = 15; literal RUF$_RUREAONL = 1015809; literal RUF$_RUHOBJ = 1017859; literal RUF$_NOSUCHRU = 1019904; literal RUF$_RUABO = 1019912; literal RUF$_NOSUCHOBJ = 1019920; literal RUF$_RUNOTCOM = 1019928; literal RUF$_RUNOTABO = 1019936; literal RUF$_HANACTRU = 1021954; literal RUF$_RUALRABO = 1021962; literal RUF$_RUALRCOM = 1021970; literal RUF$_RUALRPRE = 1021978; literal RUF$_RUNOTPRE = 1021986; literal RUF$_ERRRUHSTA = 1021994; literal RUF$_ERRRUHPRE = 1022002; literal RUF$_ERRRUHCOM = 1022010; literal RUF$_ERRRUHABO = 1022018; literal RUF$_INVHANID = 1024004; literal RUF$_INVRUHAN = 1024012; literal RUF$_KERMODINV = 1024020; literal RUF$_SUPMODINV = 1024028; literal RUF$_USEMODINV = 1024036; ! ! ---- < End of module RUFMSG.R32 - 12-AUG-2010 13:57:04.45 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:16 by OpenVMS SDL EV3-3 ! Source: 12-OCT-1989 10:18:13 $1$DGA7361:[STARLET.SRC]RUFUSR.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $RUFRUHDEF *** ! ! Recovery unit handler argument list definition and ! recovery unit action codes passed to handlers ! literal RUF$K_TID_LENGTH = 16; ! length of a TID literal RUF$K_RU_MIN = 0; ! min constant literal RUF$K_RU_TO_TID = 0; literal RUF$K_TID_TO_RU = 1; literal RUF$K_DEFAULT = 2; literal RUF$K_RU_MAX = 2; ! max constant literal RUFRUH$K_START = 1; ! start a recovery unit literal RUFRUH$K_PREPARE = 2; ! prepare to commit literal RUFRUH$K_COMMIT = 3; ! commit the RU literal RUFRUH$K_ABORT = 4; ! abort the RU literal RUFRUH$K_MIN_CODE = 1; ! minimum action code literal RUFRUH$K_MAX_CODE = 4; ! maximum action code literal RUFRUH$S_RUFRUHDEF = 24; macro RUFRUH$B_ARGCOUNT = 0,0,8,0 %; ! argument count macro RUFRUH$A_ACTION = 4,0,32,0 %; ! address of action code ! ACTION codes macro RUFRUH$A_RU_HANDLE = 8,0,32,0 %; ! address of recovery unit handle macro RUFRUH$A_RUID = 12,0,32,0 %; ! address of recovery unit id macro RUFRUH$A_HANDLER_ID = 16,0,32,0 %; ! address of handler id macro RUFRUH$A_OBJECT_ID = 20,0,32,0 %; ! address of object id ! ! ---- < End of module RUFUSR.R32 - 12-AUG-2010 13:57:04.50 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:52 by OpenVMS SDL EV3-3 ! Source: 06-SEP-1984 10:04:59 $1$DGA7361:[STARLET.SRC]SCRDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $SCRDEF *** ! SCREEN PACKAGE REQUEST TYPES literal SCR$C_PUT_SCREEN = 0; ! SCR$PUT_SCREEN literal SCR$C_GET_SCREEN = 1; ! SCR$GET_SCREEN literal SCR$C_ERASE_PAGE = 2; ! SCR$ERASE_PAGE literal SCR$C_ERASE_LINE = 3; ! SCR$ERASE_LINE literal SCR$C_SET_CURSOR = 4; ! SCR$SET_CURSOR literal SCR$C_DOWN_SCROLL = 5; ! SCR$DOWN_SCROLL literal SCR$C_SCREEN_INFO = 6; ! SCR$SCREEN_INFO literal SCR$C_PUT_LINE = 7; ! SCR$PUT_LINE literal SCR$C_MOVE_CURSOR = 8; ! SCR$MOVE_CURSOR literal SCR$C_SET_SCROLL = 9; ! SCR$SET_SCROLL literal SCR$C_UP_SCROLL = 10; ! SCR$UP_SCROLL ! ! DEFINE BIT MASKS AND VALUES FOR SCREEN ATTRIBUTES ! literal SCR$M_BOLD = %X'1'; literal SCR$M_REVERSE = %X'2'; literal SCR$M_BLINK = %X'4'; literal SCR$M_UNDERLINE = %X'8'; literal SCR$M_NORMAL = 0; ! no bits set literal SCR$S_SCRDEF = 1; macro SCR$R_SCRDEF_BITS = 0,0,8,0 %; macro SCR$V_BOLD = 0,0,1,0 %; macro SCR$V_REVERSE = 0,1,1,0 %; macro SCR$V_BLINK = 0,2,1,0 %; macro SCR$V_UNDERLINE = 0,3,1,0 %; ! ! DEFINE FORMAT OF SCR$SCREEN_INFO RETURN BUFFER ! literal SCR$M_SCREEN = %X'1'; literal SCR$M_ANSICRT = %X'2'; literal SCR$M_REGIS = %X'4'; literal SCR$M_BLOCK = %X'8'; literal SCR$M_AVO = %X'10'; literal SCR$M_EDIT = %X'20'; literal SCR$M_DECCRT = %X'40'; literal SCR$K_LENGTH = 20; ! LENGTH OF INFO RETURN BUFFER literal SCR$C_LENGTH = 20; ! LENGTH OF INFO RETURN BUFFER literal SCR$S_SCRDEF1 = 20; macro SCR$R_FLAGS_OVERLAY = 0,0,32,0 %; macro SCR$L_FLAGS = 0,0,32,0 %; ! FLAGS LONGWORD macro SCR$R_FLAGS_BITS = 0,0,8,0 %; macro SCR$V_SCREEN = 0,0,1,0 %; ! 1 = SCREEN ORIENTED, 0 = SCROLLING macro SCR$V_ANSICRT = 0,1,1,0 %; ! ANSI TERMINAL macro SCR$V_REGIS = 0,2,1,0 %; ! REGIS TERMINAL macro SCR$V_BLOCK = 0,3,1,0 %; ! BLOCK MODE TERMINAL macro SCR$V_AVO = 0,4,1,0 %; ! ADVANCED VIDEO TERMINAL macro SCR$V_EDIT = 0,5,1,0 %; ! TERMINAL HAS EDIT CAPABILITY macro SCR$V_DECCRT = 0,6,1,0 %; ! TERMINAL IS A DEC CRT macro SCR$W_WIDTH = 4,0,16,0 %; ! WIDTH OF EACH LINE macro SCR$W_PAGESIZE = 6,0,16,0 %; ! LINES IN SCREEN macro SCR$B_DEVTYPE = 8,0,8,0 %; ! DEVICE TYPE (SEE $DCDEF) ! ! ---- < End of module SCRDEF.R32 - 12-AUG-2010 13:57:04.55 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:19 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:54:19 $1$DGA7361:[STARLET.OBJ]SECSRVMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $SECSRVMSGDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:54:19.83 ! ! + SECSRVMSG.MSG ! + IDENT X-7 ! ! MESSAGE FILE FOR SECSRV FACILITY ! ! VAX AND AXP STREAMS SHOULD BE IDENTICAL. ! ! REVISION HISTORY: ! X-7 JAH0342 JOHN A HARNEY 05-OCT-1999 ! ADD CLUSTER-WIDE INTRUSION DETECTION MESSAGES: ! CIACRECLUDB CREATED CLUSTER DATABASE ! CIACRELOCDB CREATED LOCAL DATABASE ! CIAEXISTCLU USING EXISTING CLUSTER DATABASE ! CIAEXISTLOC USING EXISTING LOCAL DATABASE ! ! X-6 JAH0298 JOHN A HARNEY 10-JUN-1998 ! REMOVE "try again later" FROM PROXYNOTACTIVE MESSAGE. ! ! X-5 JAH0166 JOHN A HARNEY 14-NOV-1994 ! FIX MORE MESSAGE TEXT. ! ! X-4 JAH0166 JOHN A HARNEY 09-NOV-1994 ! FIX MESSAGE TEXT AND SPELLING ERRORS AFTER REVIEW BY THE ! DOCUMENTATION GROUP. ! ! ** NOTE ** MAKE SURE WHEN YOU MODIFY THIS FILE THAT YOU ALSO MODIFY [SECSRV]SECSRVMSG_.ADA ! TO MATCH YOUR CHANGES HERE. ! literal SECSRV$_FACILITY = 1774; ! literal SECSRV$_SERVERRADIOACTIVE = 116299635; ! literal SECSRV$_SERVERRESTART = 116299643; literal SECSRV$_SERVERSHUTDOWN = 116299651; literal SECSRV$_COULDNTSTART = 116299659; literal SECSRV$_COULDNTRESTART = 116299667; literal SECSRV$_PROXYSHUTDOWN = 116299675; literal SECSRV$_CIASHUTDOWN = 116299683; literal SECSRV$_SERVERSTARTINGUP = 116299691; literal SECSRV$_PROXYSTARTINGUP = 116299699; literal SECSRV$_CIASTARTINGUP = 116299707; literal SECSRV$_INTRUDER = 116299715; literal SECSRV$_SUSPECT = 116299723; literal SECSRV$_CREATEPROXYDB = 116299731; literal SECSRV$_PROXYMODIFIED = 116299739; literal SECSRV$_NOSCANNEDINTRUDER = 116299747; literal SECSRV$_INVALIDTERMNAME = 116299755; literal SECSRV$_CIACRECLUDB = 116299763; literal SECSRV$_CIACRELOCDB = 116299771; literal SECSRV$_CIAEXISTCLU = 116299779; literal SECSRV$_CIAEXISTLOC = 116299787; literal SECSRV$_NORDPROXYREC = 116305632; literal SECSRV$_NOSUCHUSER = 116311634; literal SECSRV$_DUPLICATEUSER = 116311642; literal SECSRV$_INVALIDDELETE = 116311650; literal SECSRV$_UPDATEFAILED = 116311658; literal SECSRV$_NOSUCHPROXY = 116311666; literal SECSRV$_DBALREADYEXISTS = 116311674; literal SECSRV$_TOOMANYUSERS = 116311682; literal SECSRV$_BADNODENAMELEN = 116311690; literal SECSRV$_BADREMUSERLEN = 116311698; literal SECSRV$_BADLOCALUSERLEN = 116311706; literal SECSRV$_PROXYACTIVE = 116311714; literal SECSRV$_PROXYNOTACTIVE = 116311722; literal SECSRV$_NOPROXYDB = 116311730; literal SECSRV$_NOSUCHINTRUDER = 116311738; ! NOMATCH literal SECSRV$_CIADBEMPTY = 116311746; ! DBEMPTY literal SECSRV$_INSUFINFO = 116311754; literal SECSRV$_AUDITFAILED = 116311762; literal SECSRV$_ASSIGNFAILED = 116311770; literal SECSRV$_QIOFAILED = 116311778; literal SECSRV$_DASSGNFAILED = 116311786; literal SECSRV$_BADJOBTYPE = 116311794; literal SECSRV$_SERVERNOTACTIVE = 116311802; literal SECSRV$_PROXYNOTOPEN = 116311810; literal SECSRV$_PROXYTERMINATED = 116317636; literal SECSRV$_CIATERMINATED = 116317644; literal SECSRV$_SERVERTERMINATED = 116317652; literal SECSRV$_CREMBXFAILED = 116317660; literal SECSRV$_RUNNING = 116317668; literal SECSRV$_CONSTERROR = 116317676; literal SECSRV$_TASKERROR = 116317684; literal SECSRV$_OUTCOMTERMINATED = 116317692; literal SECSRV$_SRVREPLYTIMEOUT = 116317700; ! ! ADD TEMPORARY MESSAGES HERE. ! literal SECSRV$_CONVERT = 116323635; literal SECSRV$_VERIFY_CONVERSION = 116323643; literal SECSRV$_CONVERT_SUCCESS = 116323651; ! ! ---- < End of module SECSRVMSG.R32 - 12-AUG-2010 13:57:04.62 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:48 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:53:48 $1$DGA7361:[STARLET.SRC]SHRMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $SHRDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:53:48.18 ! ! SHRMSG.MSG - SYSTEM DEFINITION FILE FOR SHARED MESSAGES ! ! VERSION: 'X-13' ! ! ************************************************************************* ! * * ! * © COPYRIGHT 2003 HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. * ! * * ! * CONFIDENTIAL COMPUTER SOFTWARE. VALID LICENSE FROM HP AND/OR * ! * ITS SUBSIDIARIES REQUIRED FOR POSSESSION, USE, OR COPYING. * ! * * ! * CONSISTENT WITH FAR 12.211 AND 12.212, COMMERCIAL COMPUTER SOFTWARE, * ! * COMPUTER SOFTWARE DOCUMENTATION, AND TECHNICAL DATA FOR COMMERCIAL * ! * ITEMS ARE LICENSED TO THE U.S. GOVERNMENT UNDER VENDOR'S STANDARD * ! * COMMERCIAL LICENSE. * ! * * ! * NEITHER HP NOR ANY OF ITS SUBSIDIARIES SHALL BE LIABLE FOR TECHNICAL * ! * OR EDITORIAL ERRORS OR OMISSIONS CONTAINED HEREIN. THE INFORMATION * ! * IN THIS DOCUMENT IS PROVIDED "as is" WITHOUT WARRANTY OF ANY KIND AND * ! * IS SUBJECT TO CHANGE WITHOUT NOTICE. THE WARRANTIES FOR HP PRODUCTS * ! * ARE SET FORTH IN THE EXPRESS LIMITED WARRANTY STATEMENTS ACCOMPANYING * ! * SUCH PRODUCTS. NOTHING HEREIN SHOULD BE CONSTRUED AS CONSTITUTING AN * ! * ADDITIONAL WARRANTY. * ! * * ! ************************************************************************* ! ++ ! ! FACILITY: VAX/VMS SYSTEM MACRO LIBRARIES ! ! ABSTRACT: ! ! THIS FILE CONTAINS THE MDL SOURCE FOR THE SHARED MESSAGES. ! ! ENVIRONMENT: ! ! N/A ! ! -- ! ! ! AUTHOR: THE VMS GROUP CREATION DATE: 1-AUG-1976 ! ! MODIFIED BY: ! ! X-13 GP072104 GUY PELEG 21-JUL-2004 ! ADD SYMLINKERR. ! ! X-12 GP011104 GUY PELEG 11-JAN-2004 ! CHANGED TEXT OF MBXDEL. ! ! X-11 GP010604 GUY PELEG 06-JAN-2004 ! ADD NEW MESSAGE TO SUPPORT DELETE/MAILBOX. ! ! X-10 GP022503 GUY PELEG 25-FEB-2003 ! ADD NEW MESSAGES TO SUPPORT B2B IN DELETE,COPY AND PURGE ! ! X-9 TMS0357 TODD SCHOELLER 19-FEB-1998 ! ADD NOFIDS -- FIDS NOT PERMITTED. ! ! X-8 TMS0317 TODD SCHOELLER 9-MAR-1997 ! ADD MESSAGES FOR HFS INVOLVING INABILITY FOR PROCESSING ! FILES WITH DIDS AND FIDS (FILDID, FILFID, AND FILDIDFID). ! ! X-7 RG40042 RAY GUZMAN 11-JAN-1991 ! ADD A MESSAGE BADFORMAT TO INDICATE A FILE FORMAT IS ! INCOMPATIBLE. ! ! X-6 SEH0021 SUSAN E. HEIMBACH 14-DEC-1989 ! ADD MESSAGE NOMEANING; TO BE USED FOR QUEMAN'S ! START/QUEUE/MANAGER COMMAND'S OBSOLETE QUALIFIERS. ! ADD OPENERR AND CLOSEERR. ! ! X-5 SEH0011 SUSAN E. HEIMBACH 09-DEC-1988 ! ADD MESSAGE NOTDELETED; TO BE USED BY QUEMAN DELETE ! COMMANDS. ! ! X-4 RJS RON SOMMER 12-OCT_1987 ! ADD MESSAGE PRDCONT. COMMON LMF MESSAGE TO BE USED BY ! SYSTEM LAYERED PRODUCTS WHEN LICENSE CHECK HAS FAILED ! BUT PRODUCT EXECUTION IS CONTINUING. ! ! X-3 AEW0002 ANNE E. WARNER 08-DEC-1986 ! ADD MESSAGES ANBIGANS AND INVALANS USED FOR /CONFIRM ! IN COMMON QUALIFIER PACKAGE (LIBCQUAL). ! ! X-2 CWH5002 CW HOBBS 30-MAY-1986 ! CORRECT SPELLING IN NOSUCHID. ! ! V03-011 TSK0002 TAMAR KRICHEVSKY 28-MAR-1984 ! ADD NOSUCHID. ! ! V03-010 AEW0001 ANNE E. WARNER 6-MAR-1984 ! ADD FILSPCSRCH AND NOSRCHLIST. ! FILSPCSRCH - FILE SPECIFICATION CONTAINS A SEARCH LIST. ! NOSRCHLST - COMMAND DOES NOT SUPPORT SEARCH LISTS. ! BOTH MESSAGES ORIGINALLY IN [CLIUTL.SRC]SETDIR.B32. ! ! V03-009 TSK0001 TAMAR KRICHEVSKY 8-FEB-1984 ! ADD QUALMISS. ! ! V03-008 SHZ0004 STEPHEN H. ZALEWSKI, 28-FEB-1983 ! CHANGED TEXT OF NOFILPURG. ! ! V03-007 SHZ0003 STEPHEN H. ZALEWSKI, 11-JAN-1983 ! ADD FILNOTACC. MAKE DELINTERR AND DIRTOBUSY OBSOLETE. ! ! V03-006 SBL3006 STEVEN B. LIONEL, 19-NOV-1982 ! ADD NOFILES. ! ! V03-005 MLJ0094 MARTIN L. JACK, 31-JUL-1982 23:18 ! ADD INVQUAVAL. ! ! V03-004 SHZ0002 STEPHEN H. ZALEWSKI, 23-JUL-1982 16:40 ! ADDED TOTAL, PURGED, AND FILDELETED MESSAGES. ! ! V03-003 BLS0152 BENN SCHREIBER 25-MAY-1982 ! ADD PRODNOTINS MESSAGE ! ! V03-002 GAS0068 GERRY SMITH 31-MAR-1982 ! ADD NOTRUNC MESSAGE. ! ! V03-001 MLJ0084 MARTIN L. JACK, 28-MAR-1982 14:48 ! CLEAN UP INITIAL CAPITALIZATION ERRORS. ! ! THESE MESSAGE CODES SHOULD NOT BE USED DIRECTLY BY A FACILITY SINCE ! THEY DO NOT CONTAIN A SUBSYSTEM (I.E., FACILITY) IDENTIFIER OR A ! SEVERITY CODE. USE THE FOLLOWING FORMULA TO CALCULATE ACTUAL FACILITY ! MESSAGE CODES. ! FACILITY MESSAGE CODE = COMMON MESSAGE CODE + ! FACILITY ID * 65536 + ! SEVERITY CODE literal SHR$_FACILITY = 0; literal SHR$_APPENDEDB = 4096; literal SHR$_APPENDEDR = 4104; literal SHR$_BADBYTE = 4112; literal SHR$_BADFIELD = 4120; literal SHR$_BADLONG = 4128; literal SHR$_BADWORD = 4136; literal SHR$_BEGIN = 4144; literal SHR$_BEGIND = 4152; literal SHR$_BEGINT = 4160; literal SHR$_CLICB = 4168; literal SHR$_CLOSEIN = 4176; literal SHR$_CLOSEOUT = 4184; literal SHR$_COPIEDB = 4192; literal SHR$_COPIEDR = 4200; literal SHR$_CREATED = 4208; literal SHR$_ENDED = 4216; literal SHR$_ENDEDD = 4224; literal SHR$_ENDEDT = 4232; literal SHR$_NEWFILES = 4240; literal SHR$_OPENIN = 4248; literal SHR$_OPENOUT = 4256; literal SHR$_OVERLAY = 4264; literal SHR$_READERR = 4272; literal SHR$_REPLACED = 4280; literal SHR$_WILDCONCAT = 4288; literal SHR$_WILDOUTVER = 4296; literal SHR$_WRITEERR = 4304; literal SHR$_ABEND = 4312; literal SHR$_ABENDD = 4320; literal SHR$_ABENDT = 4328; literal SHR$_SYSERRORPC = 4336; literal SHR$_SYNTAX = 4344; literal SHR$_NOVALUE = 4352; literal SHR$_BADKEY = 4360; literal SHR$_BADVALUE = 4368; literal SHR$_BADDELIM = 4376; literal SHR$_BADLOGIC = 4384; literal SHR$_NOWILD = 4392; literal SHR$_TEXT = 4400; literal SHR$_IDXCONCAT = 4408; literal SHR$_RELCONCAT = 4416; literal SHR$_HIGHVER = 4424; literal SHR$_BADLOGICPC = 4432; literal SHR$_ATPC = 4440; literal SHR$_BADCOPIES = 4448; literal SHR$_BADFORM = 4456; literal SHR$_BADJOBID = 4464; literal SHR$_BADJOBNAME = 4472; literal SHR$_BADPRTY = 4480; literal SHR$_BADQNAME = 4488; literal SHR$_BADTIME = 4496; literal SHR$_NOQUEUE = 4504; literal SHR$_NOJOBID = 4512; literal SHR$_NOJOBNAME = 4520; literal SHR$_SYSERROR = 4528; literal SHR$_NOTCOPIED = 4536; literal SHR$_NOTCMPLT = 4544; literal SHR$_RMSERROR = 4552; literal SHR$_UNXPCTSTS = 4560; literal SHR$_HASHCONCAT = 4568; literal SHR$_INCOMPAT = 4576; literal SHR$_VALERR = 4584; literal SHR$_FILNOTDEL = 4592; literal SHR$_CONFDEL = 4600; literal SHR$_DELETED = 4608; literal SHR$_DELVER = 4616; literal SHR$_PURGEVER = 4624; literal SHR$_CLOSEDEL = 4632; literal SHR$_DIRTOOBUS = 4640; literal SHR$_NOFILPURG = 4648; literal SHR$_FILNOTPUR = 4656; literal SHR$_SEARCHFAIL = 4664; literal SHR$_DELINTERR = 4672; literal SHR$_PARSEFAIL = 4680; literal SHR$_FILPURGED = 4688; literal SHR$_ENDABORT = 4696; literal SHR$_ENDDIAGS = 4704; literal SHR$_ENDNOOBJ = 4712; literal SHR$_HALTED = 4720; literal SHR$_NOCMDMEM = 4728; literal SHR$_QEMPTY = 4736; literal SHR$_CBT = 4744; literal SHR$_EXISTS = 4752; literal SHR$_UNLOCKED = 4760; literal SHR$_RENAMED = 4768; literal SHR$_PROTECTED = 4776; literal SHR$_NOTLOCKED = 4784; literal SHR$_ACTIMAGE = 4792; literal SHR$_DIRNOTCRE = 4800; literal SHR$_NODESTQUE = 4808; literal SHR$_ILLDESQUE = 4816; literal SHR$_NOTTERM = 4824; literal SHR$_CONFQUAL = 4832; literal SHR$_ILLDIRCOPY = 4840; literal SHR$_INSVIRMEM = 4848; literal SHR$_CREATEDSTM = 4856; literal SHR$_NOTRUNC = 4864; literal SHR$_PRODNOTINS = 4872; literal SHR$_TOTAL = 4880; literal SHR$_FILPURG = 4888; literal SHR$_FILDEL = 4896; literal SHR$_INVQUAVAL = 4904; literal SHR$_NOFILES = 4912; literal SHR$_FILNOTACC = 4920; literal SHR$_QUALMISS = 4928; literal SHR$_FILSPCSRCH = 4936; literal SHR$_NOSRCHLST = 4944; literal SHR$_NOSUCHID = 4952; literal SHR$_AMBIGANS = 4960; literal SHR$_INVALANS = 4968; literal SHR$_PRDCONT = 4976; literal SHR$_NOTDELETED = 4984; literal SHR$_NOMEANING = 4992; literal SHR$_OPENERR = 5000; literal SHR$_CLOSEERR = 5008; literal SHR$_BADFORMAT = 5016; literal SHR$_FILDID = 5024; literal SHR$_FILFID = 5032; literal SHR$_FILDIDFID = 5040; literal SHR$_NOFIDS = 5048; literal SHR$_FILPURGBYT = 5056; literal SHR$_FILDELBYT = 5064; literal SHR$_TOTALBYT = 5072; literal SHR$_COPIEDBYT = 5080; literal SHR$_APPENDEDBYT = 5088; literal SHR$_MBXDEL = 5096; literal SHR$_SYMLINKERR = 5104; ! ! ---- < End of module SHRMSG.R32 - 12-AUG-2010 13:57:04.67 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:23 by OpenVMS SDL EV3-3 ! Source: 30-DEC-1996 15:42:00 $1$DGA7361:[STARLET.SRC]SMGDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $SMGDEF *** ! Definitions for RTL Screen Management Facility ! ! Input terminator codes ! literal SMG$K_TRM_NULL_CHAR = 0; ! NUL literal SMG$K_TRM_CTRLA = 1; ! SOH literal SMG$K_TRM_CTRLB = 2; ! STX literal SMG$K_TRM_CTRLC = 3; ! ETX literal SMG$K_TRM_CTRLD = 4; ! EOT literal SMG$K_TRM_CTRLE = 5; ! ENQ literal SMG$K_TRM_CTRLF = 6; ! ACK literal SMG$K_TRM_CTRLG = 7; ! BEL literal SMG$K_TRM_CTRLH = 8; ! BS literal SMG$K_TRM_CTRLI = 9; ! HT literal SMG$K_TRM_CTRLJ = 10; ! LF literal SMG$K_TRM_CTRLK = 11; ! VT literal SMG$K_TRM_CTRLL = 12; ! FF literal SMG$K_TRM_CTRLM = 13; ! CR literal SMG$K_TRM_CTRLN = 14; ! SO literal SMG$K_TRM_CTRLO = 15; ! SI literal SMG$K_TRM_CTRLP = 16; ! DLE literal SMG$K_TRM_CTRLQ = 17; ! DC1 literal SMG$K_TRM_CTRLR = 18; ! DC2 literal SMG$K_TRM_CTRLS = 19; ! DC3 literal SMG$K_TRM_CTRLT = 20; ! DC4 literal SMG$K_TRM_CTRLU = 21; ! NAK literal SMG$K_TRM_CTRLV = 22; ! SYN literal SMG$K_TRM_CTRLW = 23; ! ETB literal SMG$K_TRM_CTRLX = 24; ! CAN literal SMG$K_TRM_CTRLY = 25; ! EM literal SMG$K_TRM_CTRLZ = 26; ! SUB literal SMG$K_TRM_ESCAPE = 27; ! ESC literal SMG$K_TRM_FS = 28; ! FS literal SMG$K_TRM_GS = 29; ! GS literal SMG$K_TRM_RS = 30; ! RS literal SMG$K_TRM_US = 31; ! US literal SMG$K_TRM_SPACE = 32; ! SP literal SMG$K_TRM_EXCLAMATION_POINT = 33; ! ! literal SMG$K_TRM_DOUBLE_QUOTE = 34; ! " literal SMG$K_TRM_NUMBER_SIGN = 35; ! # literal SMG$K_TRM_DOLLAR_SIGN = 36; ! $ literal SMG$K_TRM_PERCENT_SIGN = 37; ! % literal SMG$K_TRM_AMPERSAND = 38; ! & literal SMG$K_TRM_QUOTE = 39; ! ' literal SMG$K_TRM_LEFT_PAREN = 40; ! ( literal SMG$K_TRM_RIGHT_PAREN = 41; ! ) literal SMG$K_TRM_ASTERISK = 42; ! * literal SMG$K_TRM_PLUS_SIGN = 43; ! + literal SMG$K_TRM_COMMA_CHAR = 44; ! , literal SMG$K_TRM_DASH = 45; ! - literal SMG$K_TRM_DOT = 46; ! . literal SMG$K_TRM_SLASH = 47; ! / literal SMG$K_TRM_ZERO = 48; ! 0 literal SMG$K_TRM_ONE = 49; ! 1 literal SMG$K_TRM_TWO = 50; ! 2 literal SMG$K_TRM_THREE = 51; ! 3 literal SMG$K_TRM_FOUR = 52; ! 4 literal SMG$K_TRM_FIVE = 53; ! 5 literal SMG$K_TRM_SIX = 54; ! 6 literal SMG$K_TRM_SEVEN = 55; ! 7 literal SMG$K_TRM_EIGHT = 56; ! 8 literal SMG$K_TRM_NINE = 57; ! 9 literal SMG$K_TRM_COLON = 58; ! : literal SMG$K_TRM_SEMICOLON = 59; ! ; literal SMG$K_TRM_LESS_THAN = 60; ! < literal SMG$K_TRM_EQUAL = 61; ! = literal SMG$K_TRM_GREATER_THAN = 62; ! > literal SMG$K_TRM_QUESTION_MARK = 63; ! ? literal SMG$K_TRM_AT_SIGN = 64; ! @ literal SMG$K_TRM_UPPERCASE_A = 65; ! A literal SMG$K_TRM_UPPERCASE_B = 66; ! B literal SMG$K_TRM_UPPERCASE_C = 67; ! C literal SMG$K_TRM_UPPERCASE_D = 68; ! D literal SMG$K_TRM_UPPERCASE_E = 69; ! E literal SMG$K_TRM_UPPERCASE_F = 70; ! F literal SMG$K_TRM_UPPERCASE_G = 71; ! G literal SMG$K_TRM_UPPERCASE_H = 72; ! H literal SMG$K_TRM_UPPERCASE_I = 73; ! I literal SMG$K_TRM_UPPERCASE_J = 74; ! J literal SMG$K_TRM_UPPERCASE_K = 75; ! K literal SMG$K_TRM_UPPERCASE_L = 76; ! L literal SMG$K_TRM_UPPERCASE_M = 77; ! M literal SMG$K_TRM_UPPERCASE_N = 78; ! N literal SMG$K_TRM_UPPERCASE_O = 79; ! O literal SMG$K_TRM_UPPERCASE_P = 80; ! P literal SMG$K_TRM_UPPERCASE_Q = 81; ! Q literal SMG$K_TRM_UPPERCASE_R = 82; ! R literal SMG$K_TRM_UPPERCASE_S = 83; ! S literal SMG$K_TRM_UPPERCASE_T = 84; ! T literal SMG$K_TRM_UPPERCASE_U = 85; ! U literal SMG$K_TRM_UPPERCASE_V = 86; ! V literal SMG$K_TRM_UPPERCASE_W = 87; ! W literal SMG$K_TRM_UPPERCASE_X = 88; ! X literal SMG$K_TRM_UPPERCASE_Y = 89; ! Y literal SMG$K_TRM_UPPERCASE_Z = 90; ! Z literal SMG$K_TRM_LEFT_BRACKET = 91; ! [ literal SMG$K_TRM_BACKSLASH = 92; ! \ literal SMG$K_TRM_RIGHT_BRACKET = 93; ! ] literal SMG$K_TRM_CARET = 94; ! ^ literal SMG$K_TRM_UNDERLINE = 95; ! _ literal SMG$K_TRM_GRAVE_ACCENT = 96; ! ` literal SMG$K_TRM_LOWERCASE_A = 97; ! a literal SMG$K_TRM_LOWERCASE_B = 98; ! b literal SMG$K_TRM_LOWERCASE_C = 99; ! c literal SMG$K_TRM_LOWERCASE_D = 100; ! d literal SMG$K_TRM_LOWERCASE_E = 101; ! e literal SMG$K_TRM_LOWERCASE_F = 102; ! f literal SMG$K_TRM_LOWERCASE_G = 103; ! g literal SMG$K_TRM_LOWERCASE_H = 104; ! h literal SMG$K_TRM_LOWERCASE_I = 105; ! i literal SMG$K_TRM_LOWERCASE_J = 106; ! j literal SMG$K_TRM_LOWERCASE_K = 107; ! k literal SMG$K_TRM_LOWERCASE_L = 108; ! l literal SMG$K_TRM_LOWERCASE_M = 109; ! m literal SMG$K_TRM_LOWERCASE_N = 110; ! n literal SMG$K_TRM_LOWERCASE_O = 111; ! o literal SMG$K_TRM_LOWERCASE_P = 112; ! p literal SMG$K_TRM_LOWERCASE_Q = 113; ! q literal SMG$K_TRM_LOWERCASE_R = 114; ! r literal SMG$K_TRM_LOWERCASE_S = 115; ! s literal SMG$K_TRM_LOWERCASE_T = 116; ! t literal SMG$K_TRM_LOWERCASE_U = 117; ! u literal SMG$K_TRM_LOWERCASE_V = 118; ! v literal SMG$K_TRM_LOWERCASE_W = 119; ! w literal SMG$K_TRM_LOWERCASE_X = 120; ! x literal SMG$K_TRM_LOWERCASE_Y = 121; ! y literal SMG$K_TRM_LOWERCASE_Z = 122; ! z literal SMG$K_TRM_LEFT_BRACE = 123; ! left curly brace literal SMG$K_TRM_VERTICAL_LINE = 124; ! | literal SMG$K_TRM_RIGHT_BRACE = 125; ! right curly brace literal SMG$K_TRM_TILDE = 126; ! ~ literal SMG$K_TRM_DELETE = 127; ! DEL ! ! Synonyms for control characters ! literal SMG$K_TRM_BS = 8; literal SMG$K_TRM_HT = 9; literal SMG$K_TRM_LF = 10; literal SMG$K_TRM_VT = 11; literal SMG$K_TRM_FF = 12; literal SMG$K_TRM_CR = 13; ! ! Keypad keys ! literal SMG$K_TRM_PF1 = 256; literal SMG$K_TRM_PF2 = 257; literal SMG$K_TRM_PF3 = 258; literal SMG$K_TRM_PF4 = 259; literal SMG$K_TRM_KP0 = 260; literal SMG$K_TRM_KP1 = 261; literal SMG$K_TRM_KP2 = 262; literal SMG$K_TRM_KP3 = 263; literal SMG$K_TRM_KP4 = 264; literal SMG$K_TRM_KP5 = 265; literal SMG$K_TRM_KP6 = 266; literal SMG$K_TRM_KP7 = 267; literal SMG$K_TRM_KP8 = 268; literal SMG$K_TRM_KP9 = 269; literal SMG$K_TRM_ENTER = 270; literal SMG$K_TRM_MINUS = 271; literal SMG$K_TRM_COMMA = 272; literal SMG$K_TRM_PERIOD = 273; ! ! Cursor positioning keys ! literal SMG$K_TRM_UP = 274; literal SMG$K_TRM_DOWN = 275; literal SMG$K_TRM_LEFT = 276; literal SMG$K_TRM_RIGHT = 277; ! ! Function keys ! literal SMG$K_TRM_F1 = 281; literal SMG$K_TRM_F2 = 282; literal SMG$K_TRM_F3 = 283; literal SMG$K_TRM_F4 = 284; literal SMG$K_TRM_F5 = 285; literal SMG$K_TRM_F6 = 286; literal SMG$K_TRM_F7 = 287; literal SMG$K_TRM_F8 = 288; literal SMG$K_TRM_F9 = 289; literal SMG$K_TRM_F10 = 290; literal SMG$K_TRM_F11 = 291; literal SMG$K_TRM_F12 = 292; literal SMG$K_TRM_F13 = 293; literal SMG$K_TRM_F14 = 294; literal SMG$K_TRM_F15 = 295; literal SMG$K_TRM_F16 = 296; literal SMG$K_TRM_F17 = 297; literal SMG$K_TRM_F18 = 298; literal SMG$K_TRM_F19 = 299; literal SMG$K_TRM_F20 = 300; ! ! Synonyms for function keys ! literal SMG$K_TRM_HELP = 295; literal SMG$K_TRM_DO = 296; ! ! Editing keys ! literal SMG$K_TRM_E1 = 311; ! FIND literal SMG$K_TRM_E2 = 312; ! INSERT_HERE literal SMG$K_TRM_E3 = 313; ! REMOVE literal SMG$K_TRM_E4 = 314; ! SELECT literal SMG$K_TRM_E5 = 315; ! PREV_SCREEN literal SMG$K_TRM_E6 = 316; ! NEXT_SCREEN ! ! Synonyms for editing keys ! literal SMG$K_TRM_FIND = 311; ! E1 literal SMG$K_TRM_INSERT_HERE = 312; ! E2 literal SMG$K_TRM_REMOVE = 313; ! E3 literal SMG$K_TRM_SELECT = 314; ! E4 literal SMG$K_TRM_PREV_SCREEN = 315; ! E5 literal SMG$K_TRM_NEXT_SCREEN = 316; ! E6 ! ! Locator keys ! literal SMG$K_TRM_FIRST_DOWN = 321; ! Left button down literal SMG$K_TRM_SECOND_DOWN = 322; ! Middle button down literal SMG$K_TRM_THIRD_DOWN = 323; ! Right button down literal SMG$K_TRM_FOURTH_DOWN = 324; ! Fourth button down literal SMG$K_TRM_FIRST_UP = 325; ! Left button up literal SMG$K_TRM_SECOND_UP = 326; ! Middle button up literal SMG$K_TRM_THIRD_UP = 327; ! Right button up literal SMG$K_TRM_FOURTH_UP = 328; ! Fourth button up ! ! Conditions ! literal SMG$K_TRM_CANCELLED = 508; ! I/O cancelled by SMG$CANCEL_INPUT literal SMG$K_TRM_TIMEOUT = 509; ! Timeout period expired literal SMG$K_TRM_BUFFER_FULL = 510; ! Buffer is full literal SMG$K_TRM_UNKNOWN = 511; ! Unknown terminator ! ! Screen Management request types - These constants are used internally ! by SMG$ and should not be used by users. ! literal SMG$C_CHANGE_RENDITION = 10; literal SMG$C_DELETE_CHARS = 11; literal SMG$C_ERASE_DISPLAY = 12; literal SMG$C_ERASE_LINE = 13; literal SMG$C_HOME_CURSOR = 14; literal SMG$C_INSERT_CHARS = 15; literal SMG$C_INSERT_LINE = 16; literal SMG$C_PUT_CHARS = 17; literal SMG$C_PUT_LINE = 18; literal SMG$C_PUT_DISPLAY_ENCODED = 19; literal SMG$C_RETURN_CURSOR_POS = 20; literal SMG$C_PUT_WITH_SCROLL = 21; literal SMG$C_SET_CURSOR_ABS = 22; literal SMG$C_SET_CURSOR_REL = 23; literal SMG$C_DELETE_LINE = 24; literal SMG$C_ERASE_CHARS = 25; literal SMG$C_SCROLL_DISPLAY_AREA = 26; literal SMG$C_CHANGE_VIRTUAL_DISPLAY = 27; literal SMG$C_LABEL_BORDER = 28; literal SMG$C_END_DISPLAY_UPDATE = 29; literal SMG$C_MOVE_TEXT = 30; ! ! Character Set Codes ! literal SMG$C_UNITED_KINGDOM = 0; ! Unused literal SMG$C_ASCII = 1; ! ASCII char set literal SMG$C_SPEC_GRAPHICS = 2; ! Line drawing set literal SMG$C_ALT_CHAR = 3; ! Unused literal SMG$C_ALT_GRAPHICS = 4; ! Unused literal SMG$C_UNKNOWN = 5; literal SMG$C_SUPPLEMENTAL = 6; literal SMG$C_JIS_ROMAN = 7; literal SMG$C_JIS_KANA = 8; literal SMG$C_KANJI = 9; literal SMG$C_HANZI = 10; literal SMG$C_HANYU = 11; literal SMG$C_HANGUL = 12; literal SMG$C_KS_ROMAN = 13; ! ! The following constants define corner cursor positions used in ! SMG$HOME_CURSOR. ! literal SMG$C_UPPER_LEFT = 0; ! Home cursor to upper left corner literal SMG$C_LOWER_LEFT = 1; ! Home cursor to lower left corner literal SMG$C_UPPER_RIGHT = 2; ! Home cursor to upper right corner literal SMG$C_LOWER_RIGHT = 3; ! Home cursor to lower right corner ! ! The following constants define label positions used in ! SMG$LABEL_BORDER. ! literal SMG$K_TOP = 0; ! Place label on top border literal SMG$K_BOTTOM = 1; ! Place label on bottom border literal SMG$K_LEFT = 2; ! Place label on left border literal SMG$K_RIGHT = 3; ! Place label on right border ! ! The following constants define menu types used in ! SMG$CREATE_MENU. ! literal SMG$K_BLOCK = 0; ! Matrix of menu items literal SMG$K_VERTICAL = 1; ! Vertical vector of menu items literal SMG$K_HORIZONTAL = 2; ! Horizontal vector of menu items ! ! Master color wheel for screen background colors. ! Used with SMG$CHANGE_PBD_CHARACTERISTICS. ! literal SMG$C_COLOR_UNKNOWN = 0; ! Unknown background literal SMG$C_COLOR_WHITE = 1; ! White background literal SMG$C_COLOR_BLACK = 2; ! Black background literal SMG$C_COLOR_BLUE = 3; ! Blue background literal SMG$C_COLOR_CYAN = 4; ! Cyan background literal SMG$C_COLOR_GREEN = 5; ! Green background literal SMG$C_COLOR_MAGENTA = 6; ! Magenta background literal SMG$C_COLOR_RED = 7; ! Red background literal SMG$C_COLOR_YELLOW = 8; ! Yellow background literal SMG$C_COLOR_LIGHT = 9; ! Light background literal SMG$C_COLOR_DARK = 10; ! Dark background literal SMG$C_COLOR_USER1 = 11; ! User 1 background literal SMG$C_COLOR_USER2 = 12; ! User 2 background literal SMG$C_COLOR_USER3 = 13; ! User 3 background literal SMG$C_COLOR_USER4 = 14; ! User 4 background literal SMG$C_COLOR_USER5 = 15; ! User 5 background literal SMG$C_COLOR_USER6 = 16; ! User 6 background literal SMG$C_COLOR_USER7 = 17; ! User 7 background literal SMG$C_COLOR_USER8 = 18; ! User 8 background ! ! The following constants describe the type of terminal ! and are used with SMG$GET_PASTEBOARD_ATTRIBUTES. ! literal SMG$K_UNKNOWN = 0; ! Unknown type literal SMG$K_VT05 = 1; ! Unused literal SMG$K_VT52 = 2; ! Unused literal SMG$K_VT100 = 3; ! Unused literal SMG$K_VTFOREIGN = 4; ! Foreign terminal (ft1-8) literal SMG$K_HARDCOPY = 5; ! Hardcopy device literal SMG$K_VTTERMTABLE = 6; ! Video terminal literal SMG$K_FIRST_PRIV_TYPE = 191; ! Used internally by SMG$ ! ! Define bits, masks, and fields for the control modes. ! literal SMG$K_BUF_ENABLED = 0; ! Enable Buffering literal SMG$K_MINUPD = 1; ! Enable minimal update literal SMG$K_CLEAR_SCREEN = 2; ! Clear screen on exit literal SMG$K_NOTABS = 3; ! Don't use physical tabs literal SMG$K_PROTECT = 4; ! Protect against ASTs literal SMG$K_IGNORE = 5; ! Don't output PBD if batched literal SMG$K_RELEASE_PBD = 6; ! Don't touch users part of PBD literal SMG$M_BUF_ENABLED = %X'1'; literal SMG$M_MINUPD = %X'2'; literal SMG$M_CLEAR_SCREEN = %X'4'; literal SMG$M_NOTABS = %X'8'; literal SMG$M_PROTECT = %X'10'; literal SMG$M_IGNORE = %X'20'; literal SMG$M_RELEASE_PBD = %X'40'; literal SMG$m_spare15 = %X'FFFFFF80'; literal SMG$S_SMGMODE_BITS = 4; macro SMG$V_BUF_ENABLED = 0,0,1,0 %; ! Enable buffering macro SMG$V_MINUPD = 0,1,1,0 %; ! Enable minimal update (default) macro SMG$V_CLEAR_SCREEN = 0,2,1,0 %; ! Clear screen on exit macro SMG$V_NOTABS = 0,3,1,0 %; ! Don't use physical tabs macro SMG$V_PROTECT = 0,4,1,0 %; ! Protect against ASTs macro SMG$V_IGNORE = 0,5,1,0 %; ! Don't output PBD if batched macro SMG$V_RELEASE_PBD = 0,6,1,0 %; ! Don't touch users part of PBD macro SMG$v_spare15 = 0,7,25,0 %; literal SMG$s_spare15 = 25; ! extra bits ! ! Key definition attributes ! literal SMG$M_KEY_NOECHO = %X'1'; literal SMG$M_KEY_TERMINATE = %X'2'; literal SMG$M_KEY_LOCK = %X'4'; literal SMG$M_KEY_PROTECTED = %X'8'; literal SMG$M_KEY_SETSTATE = %X'10'; literal SMG$m_spare18 = %X'FFFFFFE0'; literal SMG$S_KEY_DEF_ATTR = 4; macro SMG$V_KEY_NOECHO = 0,0,1,0 %; ! Don't echo strings macro SMG$V_KEY_TERMINATE = 0,1,1,0 %; ! This key terminates read macro SMG$V_KEY_LOCK = 0,2,1,0 %; ! Lock new state macro SMG$V_KEY_PROTECTED = 0,3,1,0 %; ! Definition is protected macro SMG$V_KEY_SETSTATE = 0,4,1,0 %; ! Definition sets a state (output only) macro SMG$v_spare18 = 0,5,27,0 %; literal SMG$s_spare18 = 27; ! extra bits ! ! Define bit masks and values for display renditions. ! literal SMG$M_BOLD = %X'1'; literal SMG$M_REVERSE = %X'2'; literal SMG$M_BLINK = %X'4'; literal SMG$M_UNDERLINE = %X'8'; literal SMG$M_INVISIBLE = %X'10'; literal SMG$M_USER1 = %X'100'; literal SMG$M_USER2 = %X'200'; literal SMG$M_USER3 = %X'400'; literal SMG$M_USER4 = %X'800'; literal SMG$M_USER5 = %X'1000'; literal SMG$M_USER6 = %X'2000'; literal SMG$M_USER7 = %X'4000'; literal SMG$M_USER8 = %X'8000'; literal SMG$m_spare14 = %X'FFFF0000'; literal SMG$S_SMGDEF_BITS = 4; macro SMG$V_BOLD = 0,0,1,0 %; ! Bold rendition macro SMG$V_REVERSE = 0,1,1,0 %; ! Reverse video rendition macro SMG$V_BLINK = 0,2,1,0 %; ! Blink rendition macro SMG$V_UNDERLINE = 0,3,1,0 %; ! Underline rendition macro SMG$V_INVISIBLE = 0,4,1,0 %; ! Invisible rendition macro SMG$V_USER1 = 0,8,1,0 %; ! User rendition 1 macro SMG$V_USER2 = 0,9,1,0 %; ! User rendition 2 macro SMG$V_USER3 = 0,10,1,0 %; ! User rendition 3 macro SMG$V_USER4 = 0,11,1,0 %; ! User rendition 4 macro SMG$V_USER5 = 0,12,1,0 %; ! User rendition 5 macro SMG$V_USER6 = 0,13,1,0 %; ! User rendition 6 macro SMG$V_USER7 = 0,14,1,0 %; ! User rendition 7 macro SMG$V_USER8 = 0,15,1,0 %; ! User rendition 8 macro SMG$v_spare14 = 0,16,16,0 %; literal SMG$s_spare14 = 16; ! extra bits literal SMG$M_NORMAL = 0; ! no bits set ! ! The following masks define values to be used ! to specify a display attribute. These may be added ! together to specify multiple attributes. ! literal SMG$M_BORDER = %X'1'; literal SMG$M_TRUNC_ICON = %X'2'; literal SMG$M_DISPLAY_CONTROLS = %X'4'; literal SMG$M_USER_DISPLAY = %X'8'; literal SMG$M_BLOCK_BORDER = %X'10'; literal SMG$M_PROTECT_DISPLAY = %X'20'; literal SMG$m_spare12 = %X'FFFFFFC0'; literal SMG$S_DISPLAY_ATTRIBUTES = 4; macro SMG$V_BORDER = 0,0,1,0 %; ! Display is bordered macro SMG$V_TRUNC_ICON = 0,1,1,0 %; ! Truncation icon enabled macro SMG$V_DISPLAY_CONTROLS = 0,2,1,0 %; ! Display carriage controls macro SMG$V_USER_DISPLAY = 0,3,1,0 %; ! User display for DEBUG macro SMG$V_BLOCK_BORDER = 0,4,1,0 %; ! Display is block bordered macro SMG$V_PROTECT_DISPLAY = 0,5,1,0 %; ! Protect display against ASTs macro SMG$v_spare12 = 0,6,26,0 %; literal SMG$s_spare12 = 26; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$CREATE_SUBPROCESS. ! literal SMG$M_TRUSTED = %X'1'; literal SMG$M_AUTHPRIV = %X'2'; literal SMG$M_SUBSYSTEM = %X'4'; literal SMG$m_spare20 = %X'FFFFFFF8'; literal SMG$S_CREATE_SUBPROCESS_FLAGS = 4; macro SMG$V_TRUSTED = 0,0,1,0 %; ! Set TRUSTED flag for LIB$SPAWN macro SMG$V_AUTHPRIV = 0,1,1,0 %; ! Set AUTHPRIV flag for LIB$SPAWN macro SMG$V_SUBSYSTEM = 0,2,1,0 %; ! Set SUBSYSTEM flag for LIB$SPAWN macro SMG$v_spare20 = 0,3,29,0 %; literal SMG$s_spare20 = 29; ! extra bits ! ! The following defines bits used with subprocess manipulation. ! literal SMG$M_DATA_FOLLOWS = %X'1'; literal SMG$M_SEND_EOF = %X'2'; literal SMG$M_NO_PRINT = %X'4'; literal SMG$m_spare11 = %X'FFFFFFF8'; literal SMG$S_SUBPROCESS_FLAGS = 4; macro SMG$V_DATA_FOLLOWS = 0,0,1,0 %; ! The next call specifies data. macro SMG$V_SEND_EOF = 0,1,1,0 %; ! Send an end-of-file to the subprocess macro SMG$V_NO_PRINT = 0,2,1,0 %; ! Do not output command to the display macro SMG$v_spare11 = 0,3,29,0 %; literal SMG$s_spare11 = 29; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$DELETE_PASTEBOARD. ! literal SMG$M_ERASE_PBD = %X'1'; literal SMG$M_IGNORE_BATCHED = %X'2'; literal SMG$m_spare10 = %X'FFFFFFFC'; literal SMG$S_DELETE_PBD_FLAGS = 4; macro SMG$V_ERASE_PBD = 0,0,1,0 %; ! Erase the pasteboard macro SMG$V_IGNORE_BATCHED = 0,1,1,0 %; ! Delete even if pbd is batched macro SMG$v_spare10 = 0,2,30,0 %; literal SMG$s_spare10 = 30; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$CREATE_PASTEBOARD. ! literal SMG$M_KEEP_CONTENTS = %X'1'; literal SMG$M_WORKSTATION = %X'2'; literal SMG$m_spare9 = %X'FFFFFFFC'; literal SMG$S_CREATE_PBD_FLAGS = 4; macro SMG$V_KEEP_CONTENTS = 0,0,1,0 %; ! Don't erase the pasteboard macro SMG$V_WORKSTATION = 0,1,1,0 %; ! Pasteboard is DECwindows terminal macro SMG$v_spare9 = 0,2,30,0 %; literal SMG$s_spare9 = 30; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$READ_xxxx. ! literal SMG$M_FUNC_KEYS = %X'1'; literal SMG$M_NOKEEP = %X'2'; literal SMG$M_NORECALL = %X'4'; literal SMG$m_spare8 = %X'FFFFFFF8'; literal SMG$S_READ_FLAGS = 4; macro SMG$V_FUNC_KEYS = 0,0,1,0 %; ! Disable line-editting. macro SMG$V_NOKEEP = 0,1,1,0 %; ! Don't save input in recall buffer macro SMG$V_NORECALL = 0,2,1,0 %; ! Disable input recall for this call macro SMG$v_spare8 = 0,3,29,0 %; literal SMG$s_spare8 = 29; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$SET_CURSOR_MODE. ! literal SMG$M_CURSOR_OFF = %X'1'; literal SMG$M_CURSOR_ON = %X'2'; literal SMG$M_SCROLL_JUMP = %X'4'; literal SMG$M_SCROLL_SMOOTH = %X'8'; literal SMG$m_spare16 = %X'FFFFFFF0'; literal SMG$S_SET_CURSOR_FLAGS = 4; macro SMG$V_CURSOR_OFF = 0,0,1,0 %; ! Turn the physical cursor off macro SMG$V_CURSOR_ON = 0,1,1,0 %; ! Turn the physical cursor on macro SMG$V_SCROLL_JUMP = 0,2,1,0 %; ! Set jump scroll macro SMG$V_SCROLL_SMOOTH = 0,3,1,0 %; ! Set smooth scroll macro SMG$v_spare16 = 0,4,28,0 %; literal SMG$s_spare16 = 28; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$GET_DISPLAY_ATTR. ! literal SMG$M_VIEWPORT = %X'1'; literal SMG$M_SUBPROCESS = %X'2'; literal SMG$M_MENU = %X'4'; literal SMG$m_spare7 = %X'FFFFFFF8'; literal SMG$S_GET_DISPLAY_FLAGS = 4; macro SMG$V_VIEWPORT = 0,0,1,0 %; ! Display contains a viewport macro SMG$V_SUBPROCESS = 0,1,1,0 %; ! Display contains a subprocess macro SMG$V_MENU = 0,2,1,0 %; ! Display contains a menu macro SMG$v_spare7 = 0,3,29,0 %; literal SMG$s_spare7 = 29; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$PUT_CHARS. ! literal SMG$M_ERASE_LINE = %X'1'; literal SMG$M_ERASE_TO_EOL = %X'2'; literal SMG$m_spare6 = %X'FFFFFFFC'; literal SMG$S_PUT_CHARS_FLAGS = 4; macro SMG$V_ERASE_LINE = 0,0,1,0 %; ! Erase the entire line macro SMG$V_ERASE_TO_EOL = 0,1,1,0 %; ! Erase from cursor to end of line macro SMG$v_spare6 = 0,2,30,0 %; literal SMG$s_spare6 = 30; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$MOVE_TEXT. ! literal SMG$M_TEXT_SAVE = %X'1'; literal SMG$M_TEXT_ONLY = %X'2'; literal SMG$m_spare17 = %X'FFFFFFFC'; literal SMG$S_MOVE_TEXT_FLAGS = 4; macro SMG$V_TEXT_SAVE = 0,0,1,0 %; ! Don't erase text after moving it macro SMG$V_TEXT_ONLY = 0,1,1,0 %; ! Don't move attributes macro SMG$v_spare17 = 0,2,30,0 %; literal SMG$s_spare17 = 30; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$PUT_PASTEBOARD and SMG$SNAPSHOT. ! literal SMG$M_FORM_FEED = %X'1'; literal SMG$m_spare5 = %X'FFFFFFFE'; literal SMG$S_SNAPSHOT_FLAGS = 4; macro SMG$V_FORM_FEED = 0,0,1,0 %; ! Output form feed before first row macro SMG$v_spare5 = 0,1,31,0 %; literal SMG$s_spare5 = 31; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$PUT_xxxx. ! literal SMG$M_WRAP_CHAR = %X'1'; literal SMG$M_WRAP_WORD = %X'2'; literal SMG$m_spare4 = %X'FFFFFFFC'; literal SMG$S_PUT_LINE_FLAGS = 4; macro SMG$V_WRAP_CHAR = 0,0,1,0 %; ! Do character wrapping at end of line macro SMG$V_WRAP_WORD = 0,1,1,0 %; ! Do word wrapping at end of line macro SMG$v_spare4 = 0,2,30,0 %; literal SMG$s_spare4 = 30; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$SET_KEYPAD_MODE. ! literal SMG$M_KEYPAD_APPLICATION = %X'1'; literal SMG$M_KEYPAD_NUMERIC = %X'2'; literal SMG$m_spare3 = %X'FFFFFFFC'; literal SMG$S_KEYPAD_MODES = 4; macro SMG$V_KEYPAD_APPLICATION = 0,0,1,0 %; ! Application keypad macro SMG$V_KEYPAD_NUMERIC = 0,1,1,0 %; ! Numeric keypad macro SMG$v_spare3 = 0,2,30,0 %; literal SMG$s_spare3 = 30; ! extra bits ! ! The following defines bits used with the FLAGS parameter for ! SMG$GET_PASTING_INFO. ! literal SMG$M_DISPLAY_PASTED = %X'1'; literal SMG$m_spare19 = %X'FFFFFFFE'; literal SMG$S_PASTING_INFO_FLAGS = 4; macro SMG$V_DISPLAY_PASTED = 0,0,1,0 %; ! Display is pasted macro SMG$v_spare19 = 0,1,31,0 %; literal SMG$s_spare19 = 31; ! extra bits ! ! The following defines bits used with menu manipulation. ! literal SMG$M_REMOVE_ITEM = %X'1'; literal SMG$M_FIXED_FORMAT = %X'2'; literal SMG$M_DOUBLE_SPACE = %X'4'; literal SMG$M_RETURN_IMMED = %X'8'; literal SMG$M_ERASE_MENU = %X'10'; literal SMG$M_WIDE_MENU = %X'20'; literal SMG$M_WRAP_MENU = %X'40'; literal SMG$M_FULL_FIELD = %X'80'; literal SMG$m_spare2 = %X'FFFFFF00'; literal SMG$S_MENU_FLAGS = 4; macro SMG$V_REMOVE_ITEM = 0,0,1,0 %; ! Only select item once macro SMG$V_FIXED_FORMAT = 0,1,1,0 %; ! Use fixed size cols macro SMG$V_DOUBLE_SPACE = 0,2,1,0 %; ! Double space menu rows macro SMG$V_RETURN_IMMED = 0,3,1,0 %; ! Ret on non-arrow key macro SMG$V_ERASE_MENU = 0,4,1,0 %; ! Erase menu when deleting macro SMG$V_WIDE_MENU = 0,5,1,0 %; ! Wide menu items macro SMG$V_WRAP_MENU = 0,6,1,0 %; ! Wrap menu items top to bottom macro SMG$V_FULL_FIELD = 0,7,1,0 %; ! Highlight entire field ! SCROLL_BARS bitfield mask; /* Use scroll bar indicators ! MARK_ITEM bitfield mask; /* Use def rend for chosen items macro SMG$v_spare2 = 0,8,24,0 %; literal SMG$s_spare2 = 24; ! extra bits ! ! The following are used with SMG$PUT_LINE_xxxx, ! SMG$SCROLL_DISPLAY_AREA, and SMG$DRAW_CHAR. ! literal SMG$M_UP = %X'1'; literal SMG$M_DOWN = %X'2'; literal SMG$M_RIGHT = %X'4'; literal SMG$M_LEFT = %X'8'; literal SMG$m_spare1 = %X'FFFFFFF0'; literal SMG$S_SCROLL_DIRS = 4; macro SMG$V_UP = 0,0,1,0 %; ! Up macro SMG$V_DOWN = 0,1,1,0 %; ! Down macro SMG$V_RIGHT = 0,2,1,0 %; ! Right macro SMG$V_LEFT = 0,3,1,0 %; ! Left macro SMG$v_spare1 = 0,4,28,0 %; literal SMG$s_spare1 = 28; ! extra bits ! ! Define data structures ! literal SMG$C_BAND_INFORMATION_TABLE = 12; ! Length of table in bytes ! literal SMG$C_PASTEBOARD_INFO_BLOCK = 36; ! Length of table in bytes ! literal SMG$C_KEYBOARD_INFO_BLOCK = 36; ! Length of table in bytes literal SMG$S_SMGDEF = 36; ! ! When an out-of-band AST triggers, the user's AST routine ! will get called. The first argument passed to his ! routine is the address of a Band Information Table. ! The offsets into this table are described below. ! To make it easy to access from certain languages, ! the table is arranged so that it is convenient to ! reference it as a longword vector as well as a byte block. ! macro SMG$R_BAND_INFORMATION_TABLE = 0,0,0,0 %; literal SMG$S_BAND_INFORMATION_TABLE = 12; macro SMG$L_PASTEBOARD_ID = 0,0,32,0 %; ! Pasteboard ID macro SMG$L_ARG = 4,0,32,0 %; ! User's AST argument macro SMG$R_CHARACTER_OVERLAY = 8,0,32,0 %; macro SMG$B_CHARACTER = 8,0,8,0 %; ! The character typed macro SMG$L_CHARACTER = 8,0,32,0 %; ! The character and 3 spaces ! When SMG$GET_PASTEBOARD_ATTRIBUTES is called, ! it returns data in a pasteboard information block. ! The following structure is used to reference fields ! in this block. ! Items marked with a plus (+) will be 0 unless the ! device is a terminal (DEVCLASS=DC$_TERM). ! macro SMG$R_PASTEBOARD_INFO_BLOCK = 0,0,0,0 %; literal SMG$S_PASTEBOARD_INFO_BLOCK = 36; macro SMG$L_DEVCHAR = 0,0,32,0 %; ! Device characteristics macro SMG$L_DEVDEPEND = 4,0,32,0 %; ! Specific characteristics (1) macro SMG$L_DEVDEPEND2 = 8,0,32,0 %; ! Specific characteristics (2) macro SMG$B_DEVCLASS = 12,0,8,0 %; ! Device class (e.g. DC$_TERM) macro SMG$B_SMG_DEVTYPE = 13,0,8,0 %; ! Internal SMG device type macro SMG$B_PHY_DEVTYPE = 14,0,8,0 %; ! Physical device type (e.g. DT$_VT100) macro SMG$B_ROWS = 15,0,8,0 %; ! Number of rows on device macro SMG$W_WIDTH = 16,0,16,0 %; ! Terminal width macro SMG$B_COLOR = 18,0,8,0 %; ! PBD background color macro SMG$B_PARITY = 19,0,8,0 %; ! Parity attributes (+) macro SMG$W_SPEED = 20,0,16,0 %; ! Terminal Speed (+) macro SMG$W_FILL = 22,0,16,0 %; ! Fill characteristics (+) macro SMG$W_CURSOR_ROW = 24,0,16,0 %; ! Row where physical cursor is ! (1-origin) macro SMG$W_CURSOR_COL = 26,0,16,0 %; ! Col where physical cursor is ! (1-origin) macro SMG$L_CURSOR_DID = 28,0,32,0 %; ! Display id of topmost ! display that cursor is in. ! 0 if cursor is not in a ! virtual display macro SMG$L_DEVDEPEND3 = 32,0,32,0 %; ! Specific characteristics (3) ! When SMG$GET_KEYBOARD_ATTRIBUTES is called, ! it returns data in a keyboard information block. ! The following structure is used to reference fields ! in this block. ! Items marked with a plus (+) will be 0 unless the ! device is a terminal (DEVCLASS=DC$_TERM). ! macro SMG$R_KEYBOARD_INFO_BLOCK = 0,0,0,0 %; literal SMG$S_KEYBOARD_INFO_BLOCK = 36; macro SMG$B_RECALL_SIZE = 13,0,8,0 %; ! Size of recall buffer (+) macro SMG$B_TYPEAHEAD_CHAR = 15,0,8,0 %; ! First char in typeahead buffer (+) macro SMG$W_TYPEAHEAD_COUNT = 18,0,16,0 %; ! Number of chars in typeahead buffer (+) ! ! Define the out-of-band information table used when an out-of-band ! AST routine is called as it's own record. ! literal SMG$S_OUT_OF_BAND_TABLE = 12; macro SMG$L_PBD_ID = 0,0,32,0 %; ! Pasteboard ID macro SMG$L_USER_ARG = 4,0,32,0 %; ! User's AST argument macro SMG$R_CHAR_OVERLAY = 8,0,32,0 %; macro SMG$B_CHAR = 8,0,8,0 %; ! The character typed macro SMG$L_CHAR = 8,0,32,0 %; ! The character and 3 spaces literal SMG$C_OUT_OF_BAND_TABLE = 12; ! Length of table in bytes ! ! Define the subprocess information table used when a subprocess ! AST routine is called as it's own record. ! literal SMG$S_SUBPROCESS_INFO_TABLE = 12; macro SMG$L_DISP_ID = 0,0,32,0 %; ! Display ID macro SMG$L_USR_ARG = 4,0,32,0 %; ! User's AST argument macro SMG$L_STATUS = 8,0,32,0 %; ! Status of executed command literal SMG$C_SUBPROCESS_INFO_TABLE = 12; ! Length of table in bytes ! ! Define an information table that can be used by both ! SMG$GET_PASTEBOARD_ATTRIBUTES and SMG$GET_KEYBOARD_ATTRIBUTES ! as it's own record. ! literal SMG$S_ATTRIBUTE_INFO_BLOCK = 36; macro SMG$L_DEV_CHAR = 0,0,32,0 %; ! Device characteristics macro SMG$L_DEV_DEPEND = 4,0,32,0 %; ! Specific characteristics (1) macro SMG$L_DEV_DEPEND2 = 8,0,32,0 %; ! Specific characteristics (2) macro SMG$B_DEV_CLASS = 12,0,8,0 %; ! Device class (e.g. DC$_TERM) macro SMG$R_DEV_OVERLAY = 13,0,8,0 %; macro SMG$B_PBD_TYPE = 13,0,8,0 %; ! Internal SMG device type macro SMG$B_RECALL_NUM = 13,0,8,0 %; ! Size of recall buffer (+) macro SMG$B_DEV_TYPE = 14,0,8,0 %; ! Physical device type (e.g. DT$_VT100) macro SMG$R_ROW_OVERLAY = 15,0,8,0 %; macro SMG$B_NUM_ROWS = 15,0,8,0 %; ! Number of rows on device macro SMG$B_TYPEAHD_CHAR = 15,0,8,0 %; ! First char in typeahead buffer (+) macro SMG$W_NUM_COLUMNS = 16,0,16,0 %; ! Terminal width macro SMG$R_COUNT_OVERLAY = 18,0,16,0 %; macro SMG$W_TYPEAHD_CNT = 18,0,16,0 %; ! Number of chars in typeahead buffer (+) macro SMG$R_COUNT_STRUCT = 18,0,16,0 %; literal SMG$S_COUNT_STRUCT = 2; macro SMG$B_PBD_COLOR = 18,0,8,0 %; ! PBD background color macro SMG$B_DEV_PARITY = 19,0,8,0 %; ! Parity attributes (+) macro SMG$W_DEV_SPEED = 20,0,16,0 %; ! Terminal Speed (+) macro SMG$W_DEV_FILL = 22,0,16,0 %; ! Fill characteristics (+) macro SMG$W_PHYS_CURSOR_ROW = 24,0,16,0 %; ! Row where physical cursor is macro SMG$W_PHYS_CURSOR_COL = 26,0,16,0 %; ! Col where physical cursor is macro SMG$L_DISPLAY_ID = 28,0,32,0 %; ! Display containing phy cursor macro SMG$L_DEV_DEPEND3 = 32,0,32,0 %; ! Specific characteristics (3) literal SMG$C_ATTRIBUTE_INFO_BLOCK = 36; ! Length of table in bytes ! ! ---- < End of module SMGDEF.R32 - 12-AUG-2010 13:57:04.71 > - ! ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:54:22 by OpenVMS SDL EV3-3 ! Source: 08-MAR-1995 13:57:57 $1$DGA7361:[STARLET.SRC]SMGTRMPTR.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $SMGTRMPTR *** ! Terminal Capability Pointers for RTL SMG$ facility ! ! Boolean capabilities here - 1 - 220 ! literal SMG$K_ADVANCED_VIDEO = 1; literal SMG$K_ANSI_CRT = 2; literal SMG$K_AUTO_MARGIN = 3; literal SMG$K_BACKSPACE = 4; literal SMG$K_BLOCK_MODE = 5; literal SMG$K_DEC_CRT = 6; literal SMG$K_EDIT = 7; literal SMG$K_EIGHT_BIT = 8; literal SMG$K_FULLDUP = 9; literal SMG$K_IGNORE_NEWLINE = 10; literal SMG$K_INSERT_MODE_NULLS = 11; literal SMG$K_LOWERCASE = 12; literal SMG$K_NO_ERASE = 13; literal SMG$K_NO_SCROLL = 14; literal SMG$K_OVERSTRIKE = 15; literal SMG$K_PRINTER_PORT = 16; literal SMG$K_REGIS = 17; literal SMG$K_SCOPE = 18; literal SMG$K_SIXEL_GRAPHICS = 19; literal SMG$K_SOFT_CHARACTERS = 20; literal SMG$K_PHYSICAL_TABS = 21; literal SMG$K_PHYSICAL_FF = 22; literal SMG$K_UNDERLINE = 23; literal SMG$K_CURSOR_REPORT_ANSI = 24; literal SMG$K_DEC_CRT_2 = 25; literal SMG$K_DEC_CRT_3 = 26; literal SMG$K_SET_CURSOR_COL_ROW = 27; literal SMG$K_TEXT16 = 28; literal SMG$K_DEC_CRT_4 = 29; literal SMG$K_DEC_CRT_5 = 30; literal SMG$K_ANSI_COLOR = 31; ! ! Private capabilities reserved for customer use. ! Put them at the end of the range. ! literal SMG$K_PRIVATE_BOO_1 = 211; literal SMG$K_PRIVATE_BOO_2 = 212; literal SMG$K_PRIVATE_BOO_3 = 213; literal SMG$K_PRIVATE_BOO_4 = 214; literal SMG$K_PRIVATE_BOO_5 = 215; literal SMG$K_PRIVATE_BOO_6 = 216; literal SMG$K_PRIVATE_BOO_7 = 217; literal SMG$K_PRIVATE_BOO_8 = 218; literal SMG$K_PRIVATE_BOO_9 = 219; literal SMG$K_PRIVATE_BOO_10 = 220; literal SMG$K_MAX_BOOLEAN_CODE = 220; ! ! Numeric capabilities here - 221 to 440 ! literal SMG$K_COLUMNS = 221; literal SMG$K_CR_FILL = 222; literal SMG$K_FRAME = 223; literal SMG$K_LF_FILL = 224; literal SMG$K_NUMBER_FN_KEYS = 225; literal SMG$K_ROWS = 226; literal SMG$K_VMS_TERMINAL_NUMBER = 227; literal SMG$K_WIDE_SCREEN_COLUMNS = 228; ! ! Private capabilities for customer use. ! Put them at the end of the range. ! literal SMG$K_PRIVATE_NUM_1 = 431; literal SMG$K_PRIVATE_NUM_2 = 432; literal SMG$K_PRIVATE_NUM_3 = 433; literal SMG$K_PRIVATE_NUM_4 = 434; literal SMG$K_PRIVATE_NUM_5 = 435; literal SMG$K_PRIVATE_NUM_6 = 436; literal SMG$K_PRIVATE_NUM_7 = 437; literal SMG$K_PRIVATE_NUM_8 = 438; literal SMG$K_PRIVATE_NUM_9 = 439; literal SMG$K_PRIVATE_NUM_10 = 440; literal SMG$K_MAX_NUMERIC_CODE = 440; ! ! String capabilities here - 441 - 660 ! literal SMG$K_BEGIN_ALTERNATE_CHAR = 441; literal SMG$K_BEGIN_BLINK = 442; literal SMG$K_BEGIN_BOLD = 443; literal SMG$K_BEGIN_DELETE_MODE = 444; literal SMG$K_BEGIN_INSERT_MODE = 445; literal SMG$K_BEGIN_LINE_DRAWING_CHAR = 446; literal SMG$K_BEGIN_REVERSE = 447; literal SMG$K_BEGIN_UNDERSCORE = 448; literal SMG$K_BOTTOM_T_CHAR = 449; literal SMG$K_CLEAR_TAB = 450; literal SMG$K_CROSS_CHAR = 451; literal SMG$K_CURSOR_DOWN = 452; literal SMG$K_CURSOR_LEFT = 453; literal SMG$K_CURSOR_RIGHT = 454; literal SMG$K_CURSOR_UP = 455; literal SMG$K_DARK_SCREEN = 456; literal SMG$K_DELETE_CHAR = 457; literal SMG$K_DELETE_LINE = 458; literal SMG$K_DEVICE_ATTRIBUTES = 459; literal SMG$K_DOUBLE_HIGH_BOTTOM = 460; literal SMG$K_DOUBLE_HIGH_TOP = 461; literal SMG$K_DOUBLE_WIDE = 462; literal SMG$K_DUPLICATE = 463; literal SMG$K_END_ALTERNATE_CHAR = 464; literal SMG$K_END_BLINK = 465; literal SMG$K_END_BOLD = 466; literal SMG$K_END_DELETE_MODE = 467; literal SMG$K_END_INSERT_MODE = 468; literal SMG$K_END_LINE_DRAWING_CHAR = 469; literal SMG$K_END_REVERSE = 470; literal SMG$K_END_UNDERSCORE = 471; literal SMG$K_ERASE_TO_END_DISPLAY = 472; literal SMG$K_ERASE_TO_END_LINE = 473; literal SMG$K_ERASE_WHOLE_DISPLAY = 474; literal SMG$K_ERASE_WHOLE_LINE = 475; literal SMG$K_HOME = 476; literal SMG$K_HORIZONTAL_BAR = 477; literal SMG$K_INIT_STRING = 478; literal SMG$K_INSERT_CHAR = 479; literal SMG$K_INSERT_LINE = 480; literal SMG$K_INSERT_PAD = 481; literal SMG$K_KEY_0 = 482; literal SMG$K_KEY_1 = 483; literal SMG$K_KEY_2 = 484; literal SMG$K_KEY_3 = 485; literal SMG$K_KEY_4 = 486; literal SMG$K_KEY_5 = 487; literal SMG$K_KEY_6 = 488; literal SMG$K_KEY_7 = 489; literal SMG$K_KEY_8 = 490; literal SMG$K_KEY_9 = 491; literal SMG$K_KEY_BACKSPACE = 492; literal SMG$K_KEY_COMMA = 493; literal SMG$K_KEY_DOWN_ARROW = 494; literal SMG$K_KEY_E1 = 495; literal SMG$K_KEY_E2 = 496; literal SMG$K_KEY_E3 = 497; literal SMG$K_KEY_E4 = 498; literal SMG$K_KEY_E5 = 499; literal SMG$K_KEY_E6 = 500; literal SMG$K_KEY_ENTER = 501; literal SMG$K_KEY_F1 = 502; literal SMG$K_KEY_F2 = 503; literal SMG$K_KEY_F3 = 504; literal SMG$K_KEY_F4 = 505; literal SMG$K_KEY_F5 = 506; literal SMG$K_KEY_F6 = 507; literal SMG$K_KEY_F7 = 508; literal SMG$K_KEY_F8 = 509; literal SMG$K_KEY_F9 = 510; literal SMG$K_KEY_F10 = 511; literal SMG$K_KEY_F11 = 512; literal SMG$K_KEY_F12 = 513; literal SMG$K_KEY_F13 = 514; literal SMG$K_KEY_F14 = 515; literal SMG$K_KEY_F15 = 516; literal SMG$K_KEY_F16 = 517; literal SMG$K_KEY_F17 = 518; literal SMG$K_KEY_F18 = 519; literal SMG$K_KEY_F19 = 520; literal SMG$K_KEY_F20 = 521; literal SMG$K_KEY_LEFT_ARROW = 522; literal SMG$K_KEY_MINUS = 523; literal SMG$K_KEY_PERIOD = 524; literal SMG$K_KEY_PF1 = 525; literal SMG$K_KEY_PF2 = 526; literal SMG$K_KEY_PF3 = 527; literal SMG$K_KEY_PF4 = 528; literal SMG$K_KEY_RIGHT_ARROW = 529; literal SMG$K_KEY_UP_ARROW = 530; literal SMG$K_LABEL_F1 = 531; literal SMG$K_LABEL_F2 = 532; literal SMG$K_LABEL_F3 = 533; literal SMG$K_LABEL_F4 = 534; literal SMG$K_LABEL_F5 = 535; literal SMG$K_LABEL_F6 = 536; literal SMG$K_LABEL_F7 = 537; literal SMG$K_LABEL_F8 = 538; literal SMG$K_LABEL_F9 = 539; literal SMG$K_LABEL_F10 = 540; literal SMG$K_LABEL_F11 = 541; literal SMG$K_LABEL_F12 = 542; literal SMG$K_LABEL_F13 = 543; literal SMG$K_LABEL_F14 = 544; literal SMG$K_LABEL_F15 = 545; literal SMG$K_LABEL_F16 = 546; literal SMG$K_LABEL_F17 = 547; literal SMG$K_LABEL_F18 = 548; literal SMG$K_LABEL_F19 = 549; literal SMG$K_LABEL_F20 = 550; literal SMG$K_LEFT_T_CHAR = 551; literal SMG$K_LIGHT_SCREEN = 552; literal SMG$K_LOWER_LEFT_CORNER = 553; literal SMG$K_LOWER_RIGHT_CORNER = 554; literal SMG$K_NAME = 555; literal SMG$K_NEWLINE_CHAR = 556; literal SMG$K_PAD_CHAR = 557; literal SMG$K_RESTORE_CURSOR = 558; literal SMG$K_RIGHT_T_CHAR = 559; literal SMG$K_SAVE_CURSOR = 560; literal SMG$K_SCROLL_FORWARD = 561; literal SMG$K_SCROLL_REVERSE = 562; literal SMG$K_SEL_ERASE_TO_END_DISPLAY = 563; literal SMG$K_SEL_ERASE_TO_END_LINE = 564; literal SMG$K_SEL_ERASE_WHOLE_DISPLAY = 565; literal SMG$K_SEL_ERASE_WHOLE_LINE = 566; literal SMG$K_SET_APPLICATION_KEYPAD = 567; literal SMG$K_SET_CHAR_NOT_SEL_ERASE = 568; literal SMG$K_SET_CHAR_SEL_ERASE = 569; literal SMG$K_SET_CURSOR_ABS = 570; literal SMG$K_SET_NUMERIC_KEYPAD = 571; literal SMG$K_SET_SCROLL_REGION = 572; literal SMG$K_SET_TAB = 573; literal SMG$K_SINGLE_HIGH = 574; literal SMG$K_TAB_CHAR = 575; literal SMG$K_TOP_T_CHAR = 576; literal SMG$K_UNDERLINE_CHAR = 577; literal SMG$K_UPPER_LEFT_CORNER = 578; literal SMG$K_UPPER_RIGHT_CORNER = 579; literal SMG$K_VERTICAL_BAR = 580; literal SMG$K_WIDTH_NARROW = 581; literal SMG$K_WIDTH_WIDE = 582; literal SMG$K_CURSOR_POSITION_REPORT = 583; literal SMG$K_REQUEST_CURSOR_POSITION = 584; literal SMG$K_CR_GRAPHIC = 585; literal SMG$K_FF_GRAPHIC = 586; literal SMG$K_LF_GRAPHIC = 587; literal SMG$K_HT_GRAPHIC = 588; literal SMG$K_VT_GRAPHIC = 589; literal SMG$K_TRUNCATION_ICON = 590; literal SMG$K_CURSOR_NEXT_LINE = 591; literal SMG$K_CURSOR_PRECEDING_LINE = 592; literal SMG$K_INDEX = 593; literal SMG$K_REVERSE_INDEX = 594; literal SMG$K_BEGIN_NORMAL_RENDITION = 595; literal SMG$K_BEGIN_AUTOWRAP_MODE = 596; literal SMG$K_END_AUTOWRAP_MODE = 597; literal SMG$K_BEGIN_AUTOREPEAT_MODE = 598; literal SMG$K_END_AUTOREPEAT_MODE = 599; literal SMG$K_SET_ORIGIN_RELATIVE = 600; literal SMG$K_SET_ORIGIN_ABSOLUTE = 601; literal SMG$K_ERASE_LINE_TO_CURSOR = 602; literal SMG$K_NEXT_LINE = 603; literal SMG$K_BEGIN_AUTOPRINT_MODE = 604; literal SMG$K_END_AUTOPRINT_MODE = 605; literal SMG$K_PRINT_SCREEN = 606; literal SMG$K_SET_CURSOR_ON = 607; literal SMG$K_SET_CURSOR_OFF = 608; literal SMG$K_SET_PRINTER_OUTPUT = 609; literal SMG$K_SET_SCREEN_OUTPUT = 610; literal SMG$K_ERASE_DISPLAY_TO_CURSOR = 611; literal SMG$K_REQUEST_PRINTER_STATUS = 612; literal SMG$K_PRINTER_READY = 613; literal SMG$K_PRINTER_NOT_READY = 614; literal SMG$K_NO_PRINTER = 615; literal SMG$K_SET_JUMP_SCROLL = 616; literal SMG$K_SET_SMOOTH_SCROLL = 617; literal SMG$K_ERROR_ICON = 618; literal SMG$K_PAGE_LENGTH = 619; ! ! Private capabilities reserved for customer use. ! Put them at the end of the range. ! literal SMG$K_PRIVATE_STR_1 = 651; literal SMG$K_PRIVATE_STR_2 = 652; literal SMG$K_PRIVATE_STR_3 = 653; literal SMG$K_PRIVATE_STR_4 = 654; literal SMG$K_PRIVATE_STR_5 = 655; literal SMG$K_PRIVATE_STR_6 = 656; literal SMG$K_PRIVATE_STR_7 = 657; literal SMG$K_PRIVATE_STR_8 = 658; literal SMG$K_PRIVATE_STR_9 = 659; literal SMG$K_PRIVATE_STR_10 = 660; literal SMG$K_MAX_STRING_CODE = 660; ! ! Second string capabilities here - 661 - 880 ! literal SMG$K_BEGIN_USER1 = 661; literal SMG$K_BEGIN_USER2 = 662; literal SMG$K_BEGIN_USER3 = 663; literal SMG$K_BEGIN_USER4 = 664; literal SMG$K_BEGIN_USER5 = 665; literal SMG$K_BEGIN_USER6 = 666; literal SMG$K_BEGIN_USER7 = 667; literal SMG$K_BEGIN_USER8 = 668; literal SMG$K_END_USER1 = 669; literal SMG$K_END_USER2 = 670; literal SMG$K_END_USER3 = 671; literal SMG$K_END_USER4 = 672; literal SMG$K_END_USER5 = 673; literal SMG$K_END_USER6 = 674; literal SMG$K_END_USER7 = 675; literal SMG$K_END_USER8 = 676; literal SMG$K_BLACK_SCREEN = 677; literal SMG$K_BLUE_SCREEN = 678; literal SMG$K_CYAN_SCREEN = 679; literal SMG$K_MAGENTA_SCREEN = 680; literal SMG$K_GREEN_SCREEN = 681; literal SMG$K_RED_SCREEN = 682; literal SMG$K_WHITE_SCREEN = 683; literal SMG$K_YELLOW_SCREEN = 684; literal SMG$K_USER1_SCREEN = 685; literal SMG$K_USER2_SCREEN = 686; literal SMG$K_BEGIN_STATUS_LINE = 687; literal SMG$K_END_STATUS_LINE = 688; literal SMG$K_BEGIN_LOCATOR = 689; literal SMG$K_END_LOCATOR = 690; literal SMG$K_KEY_FIRST_DOWN = 691; literal SMG$K_KEY_SECOND_DOWN = 692; literal SMG$K_KEY_THIRD_DOWN = 693; literal SMG$K_KEY_FOURTH_DOWN = 694; literal SMG$K_KEY_FIRST_UP = 695; literal SMG$K_KEY_SECOND_UP = 696; literal SMG$K_KEY_THIRD_UP = 697; literal SMG$K_KEY_FOURTH_UP = 698; literal SMG$K_USER3_SCREEN = 699; literal SMG$K_USER4_SCREEN = 700; literal SMG$K_USER5_SCREEN = 701; literal SMG$K_USER6_SCREEN = 702; literal SMG$K_USER7_SCREEN = 703; literal SMG$K_USER8_SCREEN = 704; literal SMG$K_SET_ASCII = 705; literal SMG$K_SET_SPEC_GRAPHICS = 706; literal SMG$K_SET_SUPPLEMENTAL = 707; literal SMG$K_SET_JIS_KANA = 708; literal SMG$K_SET_KANJI = 709; literal SMG$K_SET_JIS_ROMAN = 710; literal SMG$K_SET_HANZI = 711; literal SMG$K_SET_HANYU = 712; literal SMG$K_SET_HANGUL = 713; literal SMG$K_SET_KS_ROMAN = 714; literal SMG$K_MAX_STRING2_CODE = 880; ! ! ---- < End of module SMGTRMPTR.R32 - 12-AUG-2010 13:57:04.84 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:59 by OpenVMS SDL EV3-3 ! Source: 10-MAR-1995 15:41:35 $1$DGA7361:[STARLET.SRC]SRMDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $DSCDEF *** ! Define Procedure argument data types ! The following encoding is used for atomic data elements: ! Mnemonic Code Description literal DSC$K_DTYPE_Z = 0; ! Unspecified. The calling program has literal DSC64$K_DTYPE_Z = 0; ! specified no data type/* the called ! procedure should assume the argument is of ! the correct type. literal DSC$K_DTYPE_BU = 2; ! Byte Logical. 8-bit unsigned quantity. literal DSC64$K_DTYPE_BU = 2; literal DSC$K_DTYPE_WU = 3; ! Word Logical. 16-bit unsigned quantity. literal DSC64$K_DTYPE_WU = 3; literal DSC$K_DTYPE_LU = 4; ! Longword Logical. 32-bit unsigned literal DSC64$K_DTYPE_LU = 4; ! quantity. literal DSC$K_DTYPE_QU = 5; ! Quadword Logical. 64-bit unsigned literal DSC64$K_DTYPE_QU = 5; ! quantity. literal DSC$K_DTYPE_OU = 25; ! Octaword Logical. 128-bit unsigned literal DSC64$K_DTYPE_OU = 25; ! quantity. literal DSC$K_DTYPE_B = 6; ! Byte Integer. 8-bit signed 2's-complement literal DSC64$K_DTYPE_B = 6; ! integer. literal DSC$K_DTYPE_W = 7; ! Word Integer. 16-bit signed 2's-complement literal DSC64$K_DTYPE_W = 7; ! integer. literal DSC$K_DTYPE_L = 8; ! Longword Integer. 32-bit signed literal DSC64$K_DTYPE_L = 8; ! 2's-complement integer. literal DSC$K_DTYPE_Q = 9; ! Quadword Integer. 64-bit signed literal DSC64$K_DTYPE_Q = 9; ! 2's-complement integer. literal DSC$K_DTYPE_O = 26; ! Octaword Integer. 128-bit signed literal DSC64$K_DTYPE_O = 26; ! 2's-complement integer. literal DSC$K_DTYPE_F = 10; ! F_floating. 32-bit F_floating quantity representing literal DSC64$K_DTYPE_F = 10; ! a single-precision number. literal DSC$K_DTYPE_D = 11; ! D_floating. 64-bit D_floating quantity representing literal DSC64$K_DTYPE_D = 11; ! a double-precision number. literal DSC$K_DTYPE_G = 27; ! G_floating. 64-bit G_floating quantity representing literal DSC64$K_DTYPE_G = 27; ! a double-precision number. literal DSC$K_DTYPE_H = 28; ! H_floating. 128-bit H_floating quantity representing literal DSC64$K_DTYPE_H = 28; ! a quadruple-precision number. literal DSC$K_DTYPE_FC = 12; ! F_floating complex. Ordered pair of F_floating literal DSC64$K_DTYPE_FC = 12; ! quantities representing a single-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_DC = 13; ! D_floating complex. Ordered pair of D_floating literal DSC64$K_DTYPE_DC = 13; ! quantities representing a double-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_GC = 29; ! G_floating complex. Ordered pair of G_floating literal DSC64$K_DTYPE_GC = 29; ! quantities representing a double-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_HC = 30; ! H_floating complex. Ordered pair of H_floating literal DSC64$K_DTYPE_HC = 30; ! quantities representing a quadruple-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_FS = 52; ! IEEE floating basic single S. 32-bit quantity representing literal DSC64$K_DTYPE_FS = 52; ! a single-precision number. literal DSC$K_DTYPE_FT = 53; ! IEEE floating basic double T. 64-bit quantity representing literal DSC64$K_DTYPE_FT = 53; ! a double-precision number. literal DSC$K_DTYPE_FSC = 54; ! IEEE floating basic single S complex. Ordered pair of S_floating literal DSC64$K_DTYPE_FSC = 54; ! quantities representing a single-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_FTC = 55; ! IEEE floating basic double T complex. Ordered pair of T_floating literal DSC64$K_DTYPE_FTC = 55; ! quantities representing a double-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_FX = 57; ! IEEE floating basic quadruple X. 128-bit quantity representing literal DSC64$K_DTYPE_FX = 57; ! an extended-precision number. literal DSC$K_DTYPE_FXC = 58; ! IEEE floating basic quadruple X complex. Ordered pair of X_floating literal DSC64$K_DTYPE_FXC = 58; ! quantities representing an extended-precision complex ! number. The lower addressed quantity is the ! real part, the higher addressed quantity is the ! imaginary part. literal DSC$K_DTYPE_CIT = 31; ! COBOL Intermediate Temporary. Floating point literal DSC64$K_DTYPE_CIT = 31; ! datum with an 18 digit normalized decimal ! fraction and a 2 digit decimal exponent. The ! fraction is represented as a packed decimal ! number. The exponent is represented as a ! 16-bit 2's complement integer. ! The following string types are ordinarily described by a string ! descriptor. The data type codes below occur in those descriptors: literal DSC$K_DTYPE_T = 14; ! Character-coded text. A single 8-bit character literal DSC64$K_DTYPE_T = 14; ! (atomic data type) or a sequence of 0 to ! 2**16-1 8-bit characters (string data type). literal DSC$K_DTYPE_VT = 37; ! Varying Character-coded Text Data Type. literal DSC64$K_DTYPE_VT = 37; literal DSC$K_DTYPE_T2 = 38; ! 16-bit Text (Asian workstations) literal DSC64$K_DTYPE_T2 = 38; literal DSC$K_DTYPE_NU = 15; ! Numeric string, unsigned. literal DSC64$K_DTYPE_NU = 15; literal DSC$K_DTYPE_NL = 16; ! Numeric string, left separate sign. literal DSC64$K_DTYPE_NL = 16; literal DSC$K_DTYPE_NLO = 17; ! Numeric string, left overpunched sign. literal DSC64$K_DTYPE_NLO = 17; literal DSC$K_DTYPE_NR = 18; ! Numeric string, right separate sign. literal DSC64$K_DTYPE_NR = 18; literal DSC$K_DTYPE_NRO = 19; ! Numeric string, right overpunched sign. literal DSC64$K_DTYPE_NRO = 19; literal DSC$K_DTYPE_NZ = 20; ! Numeric string, zoned sign. literal DSC64$K_DTYPE_NZ = 20; literal DSC$K_DTYPE_P = 21; ! Packed decimal string. literal DSC64$K_DTYPE_P = 21; literal DSC$K_DTYPE_V = 1; ! Bit. An aligned bit string. literal DSC64$K_DTYPE_V = 1; literal DSC$K_DTYPE_VU = 34; ! Bit Unaligned. literal DSC64$K_DTYPE_VU = 34; ! The following encodings are used for miscellaneous data types: literal DSC$K_DTYPE_ZI = 22; ! Sequence of instructions. literal DSC64$K_DTYPE_ZI = 22; literal DSC$K_DTYPE_ZEM = 23; ! Procedure entry mask. literal DSC64$K_DTYPE_ZEM = 23; literal DSC$K_DTYPE_DSC = 24; ! Descriptor. This data type allows a descriptor literal DSC64$K_DTYPE_DSC = 24; ! to be an argument data type, thereby allowing ! the use of levels of descriptors. literal DSC$K_DTYPE_BPV = 32; ! Bound Procedure Value. A two longword entity literal DSC64$K_DTYPE_BPV = 32; ! in which the first longword contains the address ! of a procedure entry mask and the second longword ! contains the environment value. The environmeent ! value is determined in a language specific ! fashion when the original Bound Procedure Value ! is generated. When the bound procedure is ! invoked, the calling program loads the second ! longword into R1. This data type can be passed ! using the immediate value mechanism when the ! environment value is not needed. In this case ! the argument list entry contains the address of ! the procedure entry mask and the second longword ! is omitted. literal DSC$K_DTYPE_BLV = 33; ! Bound label value. literal DSC64$K_DTYPE_BLV = 33; literal DSC$K_DTYPE_ADT = 35; ! Absolute Date and Time literal DSC64$K_DTYPE_ADT = 35; ! K DTYPE_???,36 /* DTYPE code 36 is reserved for future definition ! The following types are used by the VAX/VMS Debug Facility: \FOR ! INTERNAL DOCUMENTATION ONLY. For details, see VAX/VMS Debug Facility ! Documentation.\ literal DSC$K_DTYPE_CAD = 178; ! Address calculation command literal DSC64$K_DTYPE_CAD = 178; literal DSC$K_DTYPE_ENT = 179; ! Entry global definition literal DSC64$K_DTYPE_ENT = 179; literal DSC$K_DTYPE_GBL = 180; ! Global symbol definition literal DSC64$K_DTYPE_GBL = 180; literal DSC$K_DTYPE_EPT = 181; ! Entry point to routine. literal DSC64$K_DTYPE_EPT = 181; literal DSC$K_DTYPE_R11 = 182; ! Line number relative to R11 correlation literal DSC64$K_DTYPE_R11 = 182; ! table. literal DSC$K_DTYPE_FLD = 183; ! BLISS FIELD name. literal DSC64$K_DTYPE_FLD = 183; literal DSC$K_DTYPE_PCT = 184; ! PSECT information. literal DSC64$K_DTYPE_PCT = 184; literal DSC$K_DTYPE_DPC = 185; ! PC correlation table for FORTRAN IV+ literal DSC64$K_DTYPE_DPC = 185; literal DSC$K_DTYPE_LBL = 186; ! LITERAL or LABEL literal DSC64$K_DTYPE_LBL = 186; literal DSC$K_DTYPE_SLB = 187; ! Label in non-assembly language modules literal DSC64$K_DTYPE_SLB = 187; literal DSC$K_DTYPE_MOD = 188; ! Beginning of new module literal DSC64$K_DTYPE_MOD = 188; literal DSC$K_DTYPE_EOM = 189; ! End of module literal DSC64$K_DTYPE_EOM = 189; literal DSC$K_DTYPE_RTN = 190; ! Beginning of new routine literal DSC64$K_DTYPE_RTN = 190; literal DSC$K_DTYPE_EOR = 191; ! End of routine literal DSC64$K_DTYPE_EOR = 191; ! The following type codes are RESERVED for future use: ! 37-177 RESERVED to DEC ! 192-255 RESERVED to CSS and customers ! ! A uniform descriptor mechanism is defined for use by all procedures ! which conform to this standard. Descriptors are uniformly typed and ! the mechanism is extensible. As new varieties of descriptor become ! necessary, they will be added to this catalogue. ! Note: ! ! All fields represent unsigned quantities unless explicitly stated ! otherwise. ! ! 32-bit Descriptor Prototype ! ! Each class of 32-bit descriptor consists of at least 2 longwords in ! the following format: ! ! +-------+-------+---------------+ ! | CLASS | DTYPE | LENGTH | :Descriptor ! +-------+-------+---------------+ ! | POINTER | ! +-------------------------------+ ! ! DSC$W_LENGTH A one-word field specific to the descriptor ! <0,15:0> class/* typically a 16-bit (unsigned) length. ! ! DSC$B_DTYPE A one-byte atomic data type code ! <0,23:16> ! ! DSC$B_CLASS A one-byte descriptor class code (see below) ! <0,31:24> ! ! DSC$A_POINTER A longword pointing to the first byte of the ! <1,31:0> data element described. ! ! 64-bit Descriptor Prototype ! ! Each class of 64-bit descriptor consists of at least 3 aligned ! quadwords in the following format: ! ! +-------+-------+---------------+ ! | CLASS | DTYPE | MBO (=1) | :Descriptor ! +-------+-------+---------------+ ! | MBMO (=-1) | ! +-------------------------------+ ! | | : 8 ! +- LENGTH -+ ! | | ! +-------------------------------+ ! | | : 16 ! +- POINTER -+ ! | | ! +-------------------------------+ ! ! DSC64$W_MBO A one-word field which must contain the value 1. ! <0,15:0> ! ! DSC64$B_DTYPE A one-byte atomic data type code ! <0,23:16> ! ! DSC64$B_CLASS A one-byte descriptor class code (see below) ! <0,31:24> ! ! DSC$L_MBMO A longword field which must contain the value -1. ! <1,31:0> ! ! DSC64$Q_LENGTH A quadword containing the length of the ! <2,63:0> data element described. ! ! DSC64$PQ_POINTER A quadword pointing to the first byte of the ! <4,63:0> data element described. ! ! Define the descriptor class codes ! literal DSC$K_CLASS_Z = 0; ! Unspecified literal DSC64$K_CLASS_Z = 0; ! Unspecified literal DSC$K_CLASS_S = 1; ! Scalar, String Descriptor literal DSC64$K_CLASS_S = 1; ! Scalar, String Descriptor literal DSC$K_CLASS_D = 2; ! Dynamic String Descriptor literal DSC64$K_CLASS_D = 2; ! Dynamic String Descriptor literal DSC$K_CLASS_V = 3; ! Reserved for use by Digital literal DSC64$K_CLASS_V = 3; ! Reserved for use by Digital literal DSC$K_CLASS_A = 4; ! Array Descriptor literal DSC64$K_CLASS_A = 4; ! Array Descriptor literal DSC$K_CLASS_P = 5; ! Procedure Descriptor literal DSC64$K_CLASS_P = 5; ! Procedure Descriptor literal DSC$K_CLASS_PI = 6; ! Procedure Incarnation Descriptor literal DSC64$K_CLASS_PI = 6; ! Procedure Incarnation Descriptor literal DSC$K_CLASS_J = 7; ! Reserved for use by Digital literal DSC64$K_CLASS_J = 7; ! Reserved for use by Digital literal DSC$K_CLASS_JI = 8; ! Obsolete literal DSC$K_CLASS_SD = 9; ! Decimal Scalar String Descriptor literal DSC64$K_CLASS_SD = 9; ! Decimal Scalar String Descriptor literal DSC$K_CLASS_NCA = 10; ! Non-contiguous Array Descriptor literal DSC64$K_CLASS_NCA = 10; ! Non-contiguous Array Descriptor literal DSC$K_CLASS_VS = 11; ! Varying String Descriptor literal DSC64$K_CLASS_VS = 11; ! Varying String Descriptor literal DSC$K_CLASS_VSA = 12; ! Varying String Array Descriptor literal DSC64$K_CLASS_VSA = 12; ! Varying String Array Descriptor literal DSC$K_CLASS_UBS = 13; ! Unaligned Bit String Descriptor literal DSC64$K_CLASS_UBS = 13; ! Unaligned Bit String Descriptor literal DSC$K_CLASS_UBA = 14; ! Unaligned Bit Array Descriptor literal DSC64$K_CLASS_UBA = 14; ! Unaligned Bit Array Descriptor literal DSC$K_CLASS_SB = 15; ! String with Bounds Descriptor literal DSC64$K_CLASS_SB = 15; ! String with Bounds Descriptor literal DSC$K_CLASS_UBSB = 16; ! Unaligned Bit String with Bounds Descriptor literal DSC64$K_CLASS_UBSB = 16; ! Unaligned Bit String with Bounds Descriptor ! ! The following descriptor class is FOR INTERNAL USE ONLY by the VAX ! Common Run-Time Library and Debugger. This descriptor is not passed ! between separately compiled modules. For further information, see ! VAX-11 BASIC Description of Generated Code, Software Document ! Retrieval Number JBS-79-004. literal DSC$K_CLASS_BFA = 191; ! BASIC File Array Descriptor ! Descriptor classes 17-190 are RESERVED to DEC. Classes ! 192 through 255 are RESERVED to CSS and customers. ! ! Array Descriptor (DSC$K_CLASS_A) ! ! An array descriptor consists of 3 contiguous blocks. The first block ! contains the descriptor prototype information and is part of every ! array descriptor. The second and third blocks are optional. If the ! third block is present then so is the second. ! ! A complete 32-bit array descriptor has the form: ! ! +-------+-------+---------------+ ! | 4 | DTYPE | LENGTH | :Descriptor ! +-------+-------+---------------+ ! | POINTER | ! +-------+-------+---------------+ ! | DIMCT | AFLAGS|DIGITS | SCALE | Block 1 - Prototype ! +-------+-------+---------------+ ! | ARSIZE | ! +-------------------------------+ ! ! +-------------------------------+ ! | A0 | ! +-------------------------------+ ! | M1 | ! +-------------------------------+ ! | ... | Block 2 - Multipliers ! +-------------------------------+ ! | M(n-1) | ! +-------------------------------+ ! | Mn | ! +-------------------------------+ ! ! +-------------------------------+ ! | L1 | ! +-------------------------------+ ! | U1 | ! +-------------------------------+ ! | ... | Block 3 - Bounds ! +-------------------------------+ ! | Ln | ! +-------------------------------+ ! | Un | ! +-------------------------------+ ! ! Block 1 of a 64-bit array descriptor has the following ! form. Blocks 2 and 3 have the same form as above, ! EXCEPT that the entries are QUADWORDS rather than ! longwords. ! ! +-------+-------+---------------+ ! | 4 | DTYPE | MBO | :Descriptor ! +-------+-------+---------------+ ! | MBMO | ! +-------+-------+---------------+ ! | | : 8 ! +- LENGTH -+ ! | | ! +-------------------------------+ ! | | : 16 ! +- POINTER -+ ! | | ! +-------------------------------+ ! | DIMCT | AFLAGS|DIGITS | SCALE | : 24 ! +-------+-------+---------------+ ! | MBZ | ! +-------+-------+---------------+ ! | | : 32 ! +- ARSIZE -+ ! | | ! +-------------------------------+ ! ! ! Define descriptor fields. 32-bit versions are defined first, followed ! by the 64-bit equivalents. ! ! \The following three fields are only valid for descriptor ! class DSC$K_CLASS_BFA (see above). \ literal DSC$S_DSCDEF = 14; macro DSC$A_HANDLE = -12,0,32,1 %; ! The address of a vector of data concerning the ! current state of processing of the array. This ! is set to zero by the creator of the ! descriptor, and maintained thereafter by the ! BASIC file array processing functions. macro DSC$L_BYTEOFF = -8,0,32,0 %; ! Byte offset in the file of element 0,0,...,0 ! of the array. This need not be within the ! array, or even within the file if the array ! does not have zero origin. macro DSC$L_LOGUNIT = -4,0,32,0 %; ! The logical unit number (BASIC channel) on ! which the file containing the array has ! been opened. This is set by the creator of the ! descriptor before first referencing the array. ! ! End of BASIC File Array specific descriptor fields. The remaining ! fields are common to all array descriptors. ! ! macro DSC$W_LENGTH = 0,0,16,0 %; ! A one-word field specifiec to the descriptor class; ! typically a 16-bit (unsigned) length. literal DSC$S_DSCDEF1 = 8; macro DSC$W_MAXSTRLEN = 0,0,16,0 %; ! Max length of the BODY field of the varying string ! in bytes in the range 0 to 2**16-1. ! (Classes VS, VSA) macro DSC$B_DTYPE = 2,0,8,0 %; ! A one-byte atomic data type code ! Symbols used in this filed have form: DSC$K_DTYPE_t ! where t is the data type mnemonic from above ! and agrees with methodology manual. macro DSC$B_CLASS = 3,0,8,0 %; ! A one-byte descriptor class code (see above). ! Symbols used in this field have form: DSC$K_CLASS_f ! where f is the argument form mnemonic from above ! and agrees with the methodology manual. macro DSC$A_POINTER = 4,0,32,1 %; ! An address pointing to the first byte of the data ! element described. literal DSC$K_Z_BLN = 8; ! Block length in bytes for Z class descr. literal DSC$C_Z_BLN = 8; ! Block length in bytes for Z class descr. literal DSC$K_S_BLN = 8; ! Block length in bytes for S class descr. literal DSC$C_S_BLN = 8; ! Block length in bytes for S class descr. literal DSC$K_D_BLN = 8; ! Block length in bytes for D class descr. literal DSC$C_D_BLN = 8; ! Block length in bytes for D class descr. literal DSC$K_P_BLN = 8; ! Block length in bytes for P class descr. literal DSC$C_P_BLN = 8; ! Block length in bytes for P class descr. literal DSC$K_J_BLN = 8; ! Block length in bytes for J class descr. literal DSC$C_J_BLN = 8; ! Block length in bytes for J class descr. literal DSC$K_VS_BLN = 8; ! Block length in bytes for VS class descr. literal DSC$C_VS_BLN = 8; ! Block length in bytes for VS class descr. literal DSC$S_DSCDEF2 = 8; macro DSC$A_BASE = 4,0,32,1 %; ! Base of address relative to which the signed relative ! bit position, POS, is used to locate the bit string. ! (Classes UBS, UBA and UBSB) ! + ! End of common definitions for all descriptors. ! - literal DSC$K_UBS_BLN = 12; ! Block length in bytes for UBS class descr. literal DSC$C_UBS_BLN = 12; ! Block length in bytes for UBS class descr. literal DSC$S_DSCDEF3 = 12; macro DSC$L_POS = 8,0,32,1 %; ! Signed longword relative bit position ! with respect to BASE of the first bit ! of unaligned bit string ! WARNING!! Do not use this symbol to reference ! class UBA descriptors! The DSC$L_POS in that ! descriptor is at a variable location after the ! bounds and multiplier blocks. ! + ! *Obsolete* Varying type descriptor definition ! This form should not be used. ! - literal DSC$S_DSCDEF4 = 12; macro DSC$W_MAXLEN = 8,0,16,0 %; ! An unsigned word specifying the ! maximum length of the data item ! (i.e., the space allocated) ! + ! Array Descriptor definitions ! - literal DSC$K_SD_BLN = 12; ! Block length in bytes for SD class descr. literal DSC$C_SD_BLN = 12; ! Block length in bytes for SD class descr. literal DSC$S_DSCDEF5 = 20; macro DSC$B_SCALE = 8,0,8,1 %; ! Signed power of ten multiplier to convert the ! internal form to external form. For example, ! if internal number is 123 and scale is +1, ! then the represented external number is 1230. macro DSC$B_DIGITS = 9,0,8,0 %; ! If non-zero, unsigned number of decimal ! digits in the external representation. If ! zero, the number of digits can be computed ! based on DSC$W_LENGTH. macro DSC$B_AFLAGS = 10,0,8,0 %; ! Array flag bits. macro DSC$V_FL_REDIM = 10,4,1,0 %; ! If set, the array can be redimensioned; ! i.e., DSC$A_A0, DSC$L_Mi, DSC$L_Li, and ! DSC$L_Ui may be changed. The redimensioned ! array cannot exceed the size allocated to ! the array (i.e. DSC$L_ARSIZE). macro DSC$V_FL_COLUMN = 10,5,1,0 %; ! If set, the elements of the array are ! stored by columns (FORTRAN)> Otherwise ! the elements are stored by rows. macro DSC$V_FL_COEFF = 10,6,1,0 %; ! If set, the multiplicative coefficients in ! Block 2 are present. macro DSC$V_FL_BOUNDS = 10,7,1,0 %; ! If set, the bounds information in Block 3 ! is present. macro DSC$B_DIMCT = 11,0,8,0 %; ! Number of dimensions macro DSC$L_ARSIZE = 12,0,32,0 %; ! Total size of array (in bytes unless DTYPE is ! EQUL DSC$K_DTYPE_V or DSC$K_DTYPE_P). macro DSC$A_A0 = 16,0,32,1 %; ! Address of element A(0,0,...,0). This ! need not be within the actual array/* it ! is the same as DSC$A_POINTER for 0-origin ! arrays. literal DSC$S_DSCDEF6 = 28; macro DSC$L_V0 = 16,0,32,1 %; ! Signed bit offset of element A(0,0,...0) with ! respect to BASE. (Class UBA) ! The following two fields have meaning only if the array is of ! class DSC$K_CLASS_NCA (Non-contiguous array). macro DSC$L_S1 = 20,0,32,0 %; ! Stride of the first dimension, i.e. the ! difference between the addresses of ! successive elements of the first dimension. macro DSC$L_S2 = 24,0,32,0 %; ! Stride of the second dimension. literal DSC$S_DSCDEF7 = 28; macro DSC$L_M1 = 20,0,32,0 %; ! Addressing coefficient M1 = U1-L1+1 macro DSC$L_M2 = 24,0,32,0 %; ! Addressing coefficient M2 = U2-L2+1 ! + ! Procedure Incarnation descriptor (DSC$K_CLASS_PI) and ! Label Incarnation descriptor (DSC$K_CLASS_JI). ! - literal DSC$K_PI_BLN = 12; ! Block length in bytes for PI class descr. literal DSC$C_PI_BLN = 12; ! Block length in bytes for PI class descr. literal DSC$K_JI_BLN = 12; ! block length in bytes for JI class descr. literal DSC$C_JI_BLN = 12; ! block length in bytes for JI class descr. literal DSC$S_DSCDEF8 = 12; macro DSC$A_FRAME = 8,0,32,1 %; ! Address of frame ! + ! String with Bounds descriptor (DSC$K_CLASS_SB). ! - literal DSC$S_DSCDEF9 = 16; macro DSC$L_SB_L1 = 8,0,32,1 %; ! Signed lower bound of first dimension macro DSC$L_SB_U1 = 12,0,32,1 %; ! Signed upper bound of first dimension ! + ! Unaligned Bit String with Bounds descriptor (DSC$K_CLASS_UBSB). ! - literal DSC$S_DSCDEF10 = 20; macro DSC$L_UBSB_L1 = 12,0,32,1 %; ! Signed lower bound of first dimension macro DSC$L_UBSB_U1 = 16,0,32,1 %; ! Signed upper bound of first dimension ! ! 64-bit versions of the descriptors defined above. These are expected ! to be quadword aligned. ! - literal DSC64$S_DSCDEF64 = 16; macro DSC64$Q_LENGTH = 8,0,0,0 %; literal DSC64$S_LENGTH = 8; ! 64-bit LENGTH field literal DSC64$S_DSCDEF1_64 = 24; macro DSC64$W_MBO = 0,0,16,0 %; ! 32-bit LENGTH field is MBO in 64-bit descs macro DSC64$B_DTYPE = 2,0,8,0 %; ! Identical to 32-bit form macro DSC64$B_CLASS = 3,0,8,0 %; ! Identical to 32-bit form macro DSC64$L_MBMO = 4,0,32,1 %; ! 32-bit POINTER field is MBMO in 64-bit descs macro DSC64$Q_MAXSTRLEN = 8,0,0,0 %; literal DSC64$S_MAXSTRLEN = 8; ! 64-bit MAXSTRLEN field macro DSC64$PQ_POINTER = 16,0,0,1 %; literal DSC64$S_POINTER = 8; ! 64-bit pointer field literal DSC64$K_Z_BLN = 24; ! Block length in bytes for 64-bit Z class descr. literal DSC64$C_Z_BLN = 24; ! Block length in bytes for 64-bit Z class descr. literal DSC64$K_S_BLN = 24; ! Block length in bytes for 64-bit S class descr. literal DSC64$C_S_BLN = 24; ! Block length in bytes for 64-bit S class descr. literal DSC64$K_D_BLN = 24; ! Block length in bytes for 64-bit D class descr. literal DSC64$C_D_BLN = 24; ! Block length in bytes for 64-bit D class descr. literal DSC64$K_P_BLN = 24; ! Block length in bytes for 64-bit P class descr. literal DSC64$C_P_BLN = 24; ! Block length in bytes for 64-bit P class descr. literal DSC64$K_J_BLN = 24; ! Block length in bytes for 64-bit J class descr. literal DSC64$C_J_BLN = 24; ! Block length in bytes for 64-bit J class descr. literal DSC64$K_VS_BLN = 24; ! Block length in bytes for 64-bit VS class descr. literal DSC64$C_VS_BLN = 24; ! Block length in bytes for 64-bit VS class descr. literal DSC64$S_DSCDEF2_64 = 24; macro DSC64$PQ_BASE = 16,0,0,1 %; literal DSC64$S_BASE = 8; ! 64-bit BASE field ! + ! End of common definitions for all descriptors. ! - literal DSC64$K_UBS_BLN = 32; ! Block length in bytes for 64-bit UBS class descr. literal DSC64$C_UBS_BLN = 32; ! Block length in bytes for 64-bit UBS class descr. literal DSC64$S_DSCDEF3_64 = 32; macro DSC64$Q_POS = 24,0,0,1 %; literal DSC64$S_POS = 8; ! 64-bit POS field ! ! 64-bit version of the array descriptor ! literal DSC64$K_SD_BLN = 32; ! Block length in bytes for 64-bit SD class descr. literal DSC64$C_SD_BLN = 32; ! Block length in bytes for 64-bit SD class descr. literal DSC64$S_DSCDEF5_64 = 48; macro DSC64$B_SCALE = 24,0,8,1 %; ! 64-bit descriptor SCALE macro DSC64$B_DIGITS = 25,0,8,0 %; ! 64-bit descriptor DIGITS macro DSC64$B_AFLAGS = 26,0,8,0 %; ! 64-bit descriptor AFLAGS macro DSC64$V_FL_REDIM = 26,4,1,0 %; macro DSC64$V_FL_COLUMN = 26,5,1,0 %; macro DSC64$V_FL_COEFF = 26,6,1,0 %; macro DSC64$V_FL_BOUNDS = 26,7,1,0 %; macro DSC64$B_DIMCT = 27,0,8,0 %; ! 64-bit descriptor DIMCT macro DSC64$L_MBZ = 28,0,32,0 %; ! MBZ field for quad alignment. macro DSC64$Q_ARSIZE = 32,0,0,0 %; literal DSC64$S_ARSIZE = 8; ! 64-bit descriptor ARSIZE macro DSC64$PQ_A0 = 40,0,0,1 %; literal DSC64$S_A0 = 8; ! 64-bit descriptor A0 literal DSC64$S_DSCDEF6_64 = 64; macro DSC64$Q_V0 = 40,0,0,1 %; literal DSC64$S_V0 = 8; ! 64-bit descriptor V0 macro DSC64$Q_S1 = 48,0,0,0 %; literal DSC64$S_S1 = 8; ! Stride of the first dimension macro DSC64$Q_S2 = 56,0,0,0 %; literal DSC64$S_S2 = 8; ! Stride of the second dimension. literal DSC64$S_DSCDEF7_64 = 64; macro DSC64$Q_M1 = 48,0,0,0 %; literal DSC64$S_M1 = 8; ! Addressing coefficient M1 = U1-L1+1 macro DSC64$Q_M2 = 56,0,0,0 %; literal DSC64$S_M2 = 8; ! Addressing coefficient M2 = U2-L2+1 literal DSC64$K_PI_BLN = 32; ! Block length in bytes for 64-bit PI class descr. literal DSC64$C_PI_BLN = 32; ! Block length in bytes for 64-bit PI class descr. literal DSC64$K_JI_BLN = 32; ! block length in bytes for 64-bit JI class descr. literal DSC64$C_JI_BLN = 32; ! block length in bytes for 64-bit JI class descr. literal DSC64$S_DSCDEF8_64 = 32; macro DSC64$PQ_FRAME = 24,0,0,1 %; literal DSC64$S_FRAME = 8; ! Address of frame literal DSC64$S_DSCDEF9_64 = 40; macro DSC64$Q_SB_L1 = 24,0,0,1 %; literal DSC64$S_SB_L1 = 8; ! Signed lower bound of first dimension macro DSC64$Q_SB_U1 = 32,0,0,1 %; literal DSC64$S_SB_U1 = 8; ! Signed upper bound of first dimension literal DSC64$S_DSCDEF10_64 = 48; macro DSC64$Q_UBSB_L1 = 32,0,0,1 %; literal DSC64$S_UBSB_L1 = 8; ! Signed lower bound of first dimension macro DSC64$Q_UBSB_U1 = 40,0,0,1 %; literal DSC64$S_UBSB_U1 = 8; ! Signed upper bound of first dimension !*** MODULE $SRMDEF *** ! + ! Define SRM Hardware symbols ! - literal SRM$K_INT_OVF_T = 1; ! Integer overflow trap code literal SRM$K_INT_DIV_T = 2; ! Integer divide by zero trap code literal SRM$K_FLT_OVF_T = 3; ! Floating overflow trap code literal SRM$K_FLT_DIV_T = 4; ! Floating/decimal Divide by zero trap code literal SRM$K_FLT_UND_T = 5; ! Floating Underflow trap code literal SRM$K_DEC_OVF_T = 6; ! Decimal string overflow trap code literal SRM$K_SUB_RNG_T = 7; ! Subscript range trap literal SRM$K_FLT_OVF_F = 8; ! Floating Overflow fault code literal SRM$K_FLT_DIV_F = 9; ! Floating Divide by zero fault code literal SRM$K_FLT_UND_F = 10; ! Floating Underflow fault code literal SRM$M_EXC_SUM_SWC = %X'1'; literal SRM$M_EXC_SUM_INV = %X'2'; literal SRM$M_EXC_SUM_DZE = %X'4'; literal SRM$M_EXC_SUM_OVF = %X'8'; literal SRM$M_EXC_SUM_UNF = %X'10'; literal SRM$M_EXC_SUM_INE = %X'20'; literal SRM$M_EXC_SUM_IOV = %X'40'; literal SRM$S_SRM = 4; macro SRM$L_EXC_SUM = 0,0,32,0 %; macro SRM$V_EXC_SUM_SWC = 0,0,1,0 %; macro SRM$V_EXC_SUM_INV = 0,1,1,0 %; macro SRM$V_EXC_SUM_DZE = 0,2,1,0 %; macro SRM$V_EXC_SUM_OVF = 0,3,1,0 %; macro SRM$V_EXC_SUM_UNF = 0,4,1,0 %; macro SRM$V_EXC_SUM_INE = 0,5,1,0 %; macro SRM$V_EXC_SUM_IOV = 0,6,1,0 %; ! ! ---- < End of module SRMDEF.R32 - 12-AUG-2010 13:57:04.88 > - ! ! ! ************************************************************************* ! * * ! * © Copyright 2010, Hewlett-Packard Development Company, L.P. * ! * * ! * Confidential computer software. Valid license from HP and/or * ! * its subsidiaries required for possession, use, or copying. * ! * * ! * Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * ! * Computer Software Documentation, and Technical Data for Commercial * ! * Items are licensed to the U.S. Government under vendor's standard * ! * commercial license. * ! * * ! * Neither HP nor any of its subsidiaries shall be liable for technical * ! * or editorial errors or omissions contained herein. The information * ! * in this document is provided "as is" without warranty of any kind and * ! * is subject to change without notice. The warranties for HP products * ! * are set forth in the express limited warranty statements accompanying * ! * such products. Nothing herein should be construed as constituting an * ! * additional warranty. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 12-Aug-2010 13:53:49 by OpenVMS SDL EV3-3 ! Source: 12-AUG-2010 13:53:49 $1$DGA7361:[STARLET.SRC]SSMSG.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $SSDEF *** ! ! This SDL File Generated by VAX-11 Message V04-00 on 12-AUG-2010 13:53:49.41 ! ! ! SSMSG.MSG - SYSTEM DEFINITION FILE FOR SYSTEM SERVICE MESSAGES ! ! VERSION: 'X-137' ! ! **************************************************************************** ! * * ! * © COPYRIGHT 1995-2005 HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. * ! * * ! * RESTRICTED RIGHTS LEGEND * ! * * ! * USE, DUPLICATION OR DISCLOSURE BY THE U.S. GOVERNMENT IS SUBJECT TO * ! * RESTRICTIONS AS SET FORTH IN SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS * ! * IN TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE IN DFARS 252.227-7013. * ! * * ! * HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P * ! * 3000 HANOVER STREET * ! * PALO ALTO, CA 94304 * ! * U.S.A. * ! * * ! * RIGHTS FOR NON-DOD U.S. GOVERNMENT DEPARTMENTS AND AGENCIES ARE AS * ! * SET FORTH IN FAR 52.227-19(C)(1,2). * ! * * ! **************************************************************************** ! ++ ! ! FACILITY: VMS SYSTEM MACRO LIBRARIES ! ! ABSTRACT: ! ! THIS FILE CONTAINS THE SDL SOURCE FOR SYSTEM SERVICE MESSAGES. ! ! GUIDELINES: ! ! WITH THE RELEASE OF HELP MESSAGE, MESSAGE DOCUMENTATION MUST EXACTLY ! MATCH THE MESSAGE TEXT IN THIS FILE IN ORDER FOR THE ONLINE SEARCH TO ! SUCCEED. TO AVOID DOCUMENTING EMBARRASSING TYPOS OR GRAMMATICAL ! ERRORS, PLEASE FORWARD YOUR NEW OR CHANGED MESSAGES TO THE MESSAGES ! WRITER FOR A QUICK EDIT. VMS SENIOR MANAGEMENT SUPPORTS ENFORCING ! STANDARD MESSAGE FORMATTING CONVENTIONS, WHICH ARE INCLUDED IN THE ! FOLLOWING GUIDELINES. ! ! O SS$ CODE NAMES SHOULD BE 15 OR FEWER CHARACTERS TO PREVENT TRUNCATION ! IN MESSAGE TEXT, WHICH CAUSES GENERAL CONFUSION. ! ! O WORDS IN MESSAGES SHOULD NOT BEGIN WITH CAPS UNLESS THEY WOULD START ! WITH CAPS IN RUNNING TEXT. FOR EXAMPLE, ! ! WRONG: ! RIGHT: ! ! THIS IS NOT WELL KNOWN, BUT THE $GETMSG SYSTEM SERVICE AUTOMATICALLY ! CONVERTS TO UPPERCASE THE INITIAL LETTER OF A MESSAGE WHEN RETRIEVING ! A MESSAGE IN AN ENVIRONMENT WHERE THE FACILITY, SEVERITY, AND ! IDENTIFICATION FIELDS HAVE BEEN SUPPRESSED. ! ! O ACRONYMS SHOULD BE UPPERCASE ONLY: ! ! ! ! O DO NOT USE PUNCTUATION AT THE END OF A MESSAGE. ! ! O AVOID USING CONTRACTIONS IN MESSAGES. FOR EXAMPLE, USE "cannot" ! INSTEAD OF "can't" AND "does not" INSTEAD OF "doesn't". ! ! O "It's" IS A CONTRACTION FOR "it is". THE POSSESSIVE IS "its". ! ! O USE THE WORDS "and" OR "or" INSTEAD OF A "/" WHENEVER POSSIBLE. ! ! WRONG: ! RIGHT: ! ! O AVOID USING HYPHENS TO SEPARATE CLAUSES. USE A SEMICOLON INSTEAD. ! ! WRONG: ! RIGHT: ! ! O SEMICOLONS SHOULD BE USED TO SEPARATE MAIN CLAUSES THAT ARE NOT ! JOINED BY "and" OR "but". IN THE ABOVE EXAMPLE, IT IS GRAMMATICALLY ! INCORRECT TO USE A COMMA IN PLACE OF THE SEMICOLON. A COMMA IS CORRECT ! WHEN EITHER CLAUSE DOES NOT FORM A COMPLETE SENTENCE OR WHEN THE COMMA ! IS USED TO SEPARATE ITEMS IN A LIST. FOR EXAMPLE, ! ! ! ! O ABOVE ALL, KEEP THE JARGON TO A MINIMUM AND CONCENTRATE ON ! COMMUNICATING A MESSAGE THAT IS AS INFORMATIVE AND HELPFUL AS YOU ! CAN MAKE IT. ! ! ! NOTE BENE: WHEN OBSOLETING OR ADDING MESSAGES: ! ! O REUSE OBSOLETE MESSAGE ENTRIES WHEN POSSIBLE. THESE ARE MARKED BY ! A MESSAGE NAME OF OBSOLETE_. ! ! O IF YOU MUST REMOVE A MESSAGE, DON'T SIMPLY DELETE IT. IF MESSAGES ! COME AFTER IT, OBSOLETE IT BY CHANGING THE NAME TO OBSOLETE_. ! LOOK FOR THE OTHER OBSOLETE MESSAGES TO FIND OUT WHAT THE NEXT FREE ! NUMBER IS. THIS WILL LET OTHERS KNOW THAT WHEN THEY WANT A SLOT, THEY ! CAN REUSE SOME OBSOLETE MESSAGE INSTEAD OF ADDING A NEW ONE. ! ! O THE 64-BIT PROJECT HAS ENABLED THE ENTIRE ALPHA VIRTUAL ADDRESS RANGE ! (WITH THE EXCEPTION OF THE GAP) TO BE AVAILABLE. THEREFORE, MESSAGES ! THAT DISPLAY ADDRESSES, INCLUDING PCS, MUST DISPLAY THE FULL 64-BITS ! OF THOSE ADDRESSES. USE THE !XH FAO DIRECTIVE FOR THIS PURPOSE. FAO ! (SYS$FAO & SYS$FAOL_64 ONLY) FOR ALPHA HANDLES QUADWORD ARGUMENTS ! BY VALUE SO YOU DO NOT HAVE TO SPECIFY THE INDIRECTION OPERATOR (@). ! -- ! ! AUTHOR: THE VMS GROUP CREATION DATE: 1-AUG-1976 ! ! MODIFIED BY: ! ! X-137 ACG0722 ANDY GOLDSTEIN, 15-OCT-2008 12:00 ! REMOVE UNUSED SS$_SYMLINKENTRY STATUS ! ALSO GENERALIZE TEXT OF TOOMANYVER MESSAGE ! ! X-136 AJ ANDERS JOHANSSON 10-OCT-2008 ! ADD INVKTLIM MESSAGE, AND ADJUST THE "room left" ACCORDINGLY ! FOR THAT SECTION. I ACTUALLY COUNTED THE MESSAGES, AND APPLIED ! A GREATER ADJUSTMENT TO MATCH THE DEFINED NUMBER OF MSGS IN ! THE COMMENT. ! ! X-135 SAN SANDEEP RAMAVANA 12-JUN-2008 ! ADD A NEW SUCCESS STATUS RETURN, LOWPREC ! ! X-134 LSH LON HILDE 31-OCT-2004 ! TWEAK ASTFLT MESSAGE CHANGING "target PC" TO "target PC or FV". ! ! X-133 MAS0823 MARK A. STILES 20-OCT-2006 ! IT'S BEEN A LONG AND FUN RIDE, VMS. THIS IS MY LAST ! CHECKIN ON MY LAST DAY. AN APPROPRIATE REMINDER STATUS ! FOR FUTURE NOTIFICATION. FIXUP REVISION NUMBERS TO MATCH VDE. ! ! X-132 DOUGLAS FYFE 29-NOV-2005 ! ADD SS$_TOOMANYPERSONA PERSONA ARRAY FULL STATUS. ! ! X-131 KGB KENNETH G. BLAYLOCK 23-SEP-2005 ! ADD IN THE SUCCESS STATUS OF SS$_SYMLINKENTRY TO ! INDICATE THAT THE DIRECTORY ENTRY HAS A SYMLINK ! HINT VALUE. ! ! X-129/130 WBF BURNS FISHER 12-MAY-2005 ! ADD "reason mask" FIELD TO SS$_DEBUG_FAULT. IT SHOULD BE ! JUST LIKE ACCVIO ! ! X-128 KGB KENNETH G. BLAYLOCK 29-NOV-2004 ! ADD IN A NEW FILE WARNING. FILEFULL WHICH INDICATES ! THAT THE SUPPORTED ALLOCATION FOR THE FILE IS FULL. ! ! X-127 RAB0122 ROBERT A. BROOKS -SEP-2004 ! CHANGE TEXT FOR NOMODNONEPOL TO CORRELATE WITH ! NAME CHANGE OF HBMM NONE POLICY TO NODEFAULT (NO DEFAULT). ! ERROR NAME STAYS THE SAME, OF COURSE. ! ! REMOVE THE WORD QIOSERVER FROM NOMOREPATHS. QIOSERVER IS ! DEAD, BUT THE ERROR MESSAGE IS STILL BEING USED BY MULTIPATH ! AND MULTIPATH-AWARE COMPONENTS ($GETDVI, FOR EXAMPLE). ! ! X-126 RUTH GOLDENBERG 10-AUG-2004 ! ADD INFORMATIONALS FOR GEM: ARGTYPN, FPMODECTL, FPMODEPC, FPMODERC ! ! X-125 RUTH GOLDENBERG 4-AUG-2004 ! TWEAK TEXT FOR SS$_TOOMANYLNAM. ! ! X-124 MAS0800 MARK A. STILES 7-JUL-2004 ! ADD GAMEOVER MESSAGE FOR INTERSTELLAR CONQUEST. ! ! X-123 RAB0106 ROBERT A. BROOKS 26-MAY-2004 ! MORE SHADOWING MESSAGES. ! ! X-122 RAB0103 ROBERT A. BROOKS 17-MAY-2004 ! MORE SHADOWING MESSAGES FOR HBMM. ! ! X-121 RAB0102 ROBERT A. BROOKS 11-MAY-2004 ! MORE SHADOWING MESSAGES FOR HBMM. ! ! X-120 SAD STUART A. DAVIDSON 7-MAY-2004 ! ADD SS$_QIO_FAULT FOR SPECIAL TREATMENT THAT $QIO ! NEEDS IN ORDER TO FAULT IN A PAGE IN CALLER'S MODE. ! SS$_QIO_FAULT IS HANDLED BY A CALLER'S MODE JACT, ! WHERAS QIO_CROCK IS HANDLED IN THE SYSTEM SERVICE ! DISPATCHER (WHICH IS PROBLEMATIC WITH THE IA64 CALLING ! STANDARD). ! ! X-119 RAB098 ROBERT A. BROOKS 05-MAY-2004 ! ADD SEVERAL SHADOWING-RELATED MESSAGES TO REPLACE THE ! TOO-GENERIC INCSHAMEM. ! ! X-118 CLAIR GRANT 21-APR-2004 ! ELIMINATE "Digital" AND "DEC" FROM ERROR TEXT STRINGS ! ! X-117 WBF BURNS FISHER 31-MAR-2004 ! ADD SS$_CALLUNDEFSYM ! ! X-116 JRC JOHN R. COVERT 12-MAR-2004 ! ADD XVALNOTVALID FOR EXTENDED LOCK VALUE BLOCK ! ! X-115 RAB086 ROBERT A. BROOKS 03-FEB-2004 ! ADD HBMMCREPOSTMRG FOR HBMM. ! ! X-114 DJM DENNIS MATTOON 27-JAN-2004 ! ADD SYMBOLS/MESSAGES FOR TIE ! ! X-113 RAB085 ROBERT A. BROOKS 16-JAN-2004 ! ADD WLGCANTHBMM FOR HBMM, TO INDICATE THAT OLDER ! DEVICES CAPABLE OF MSCP-BASED MINIMERGE (HSC/HSD/HSJ) ! CANNOT USE HBMM. ! ! X-112 RAB084 ROBERT A. BROOKS 14-JAN-2004 ! ADD SEVERAL MESSAGES FOR HOST-BASED MINIMERGE (HBMM). ! ! X-111 KLN3346 KAREN L. NOEL 7-SEP-2003 ! O CHANGE TAKEN_BRANCH TO USE DISPLAY PC/PS. ! O CHANGE NEW REASON MASKS TO BYTES OR WORDS INSTEAD OF QUADS. ! ! X-110 KLN3340 KAREN L. NOEL 28-AUG-2003 ! O ADD SS CODES FOR TAKEN BRANCH FAULT, IA32 TRAP, DEBUG ! FAULT AND SYSTEM BREAK. ! O FIX SEVERITY OF APPLICATION BREAK. ! O FIX NATFAULT TO DISPLAY REASON MASK INSTEAD OF ISR. ! ! X-109 KLN3299 KAREN L. NOEL 4-JUN-2003 ! ADD SS$_INSF_SHM_REG. ! ! X-108 LC0001 LARRY CAMILLI 12-MAR-2003 ! ADD SS$_FILENOTCACHED. ! ! X-107 PJB0044 PAUL BENOIT 02-DEC-2002 ! ADD SS$_BREAK_ARCH. ! ! X-106 PJB0029 PAUL BENOIT 08-NOV-2002 ! ADD SS$_BREAK_APPL. ! ! X-105 PJB0021 PAUL BENOIT 18-OCT-2002 ! ADD SS$_FLTDENORMAL. ! ! X-104 PJB0013 PAUL BENOIT 12-SEP-2002 ! ADD SS$_NATFAULT. ! ! X-103 SAD STUART A. DAVIDSON 18-JUL-2002 ! ADD TURSTCONF FOR USE WHEN AN OPERATION WOULD VIOLATE ! THE TRUSTED ENVIRONMENT FOR PRIVILEGED IMAGE EXECUTION. ! ! X-102 RUTH GOLDENBERG 10-MAY-2002 ! MODIFY SS$_INCOMPAT TEXT FOR USE BY $GETJPI IN A FAILURE ! TO GET AN UNDEFINED ITEM CODE FROM A TARGET SYSTEM. ! ! X-101 DJS011203 DAVE SWEENEY 07-DEC-2001 ! ADD SS$_FORCEX FOR USE BY DCL COMMAND STOP/IMAGE. ! ! X-100 EMW0253 ELINOR M. WOODS 15-OCT-2001 ! ADD SS$_EXITFORCED FOR USE BY SYS$DELPRC IN ! SUPPORT OF NEW EXIT FUNCTIONALITY. ! ! X-99 MAS0677 MARK A. STILES 24-AUG-2001 ! ADD SS$_PRESTO FOR USE BY INTERRUPT OR FORK SERVICE ! ROUTINES WHICH HAVE KNOWLEDGE THAT THE SAVED INTERRUPT ! OR EXCEPTION FRAME NEED NOT BE MULTIPLY PRESERVED. ! ! X-98 MAS0671 MARK A. STILES 16-MAR-2001 ! ADD SS$_FISH FOR MESSAGE TRANSLATION, OR LACK THEREOF. ! ! X-97 ABP ANU PANT 18-SEP-2000 ! ADD SS$_PATHAMBIG, SS$_INVMVIP, SS$_NOPATHAVAIL, ! AND SS$_NOENACURINV FOR USE BY MULTIPATH SYSTEM ! SERVICE. ! ! X-96 JMB224 JAMES M. BLUE 7-MAR-2000 ! ADD SS$_NOSUCHQPOOLID FOR USE BY QIOSERVER'S HANDLING OF ! POOL DEALLOCATION. CORRECT PREVIOUS QIOSERVER MESSAGE ! ADDS TO CONFORM WITH GUIDELINES ABOVE. ! ! X-95 KLN2158 KAREN L. NOEL 03-MAR-2000 ! ADD BADRAD. ! ! X-94 JMB197 JAMES M. BLUE 6-JAN-2000 ! ADD SS$_QPOOL_DEL_INIT, SS$_QPOOL_DEL_INPRG, AND ! SS$_QPOOL_DEL_BUSY FOR USE BY QIOSERVER'S HANDLING OF ! POOL DEALLOCATION. ! ! X-93 EMB ELLEN M. BATBOUTA 05-NOV-1999 ! ADD SS$_NOADD AND SS$_SYSTEMUIC MESSAGES FOR THE CLASS ! SCHEDULER. ! ! X-92 JMB183 JAMES M. BLUE 23-SEP-1999 ! ADD MESSAGES FOR QIOSERVER'S QIO$CONFIGURE AND QCP. ! ! X-91 EMB ELLEN M. BATBOUTA 12-AUG-1999 ! ADD SS$_INCLASS ERROR MESSAGE. THIS ERROR MESSAGE WILL ! BE RETURNED BY THE $SCHED SYSTEM SERVICE WHEN AN ATTEMPT ! IS MADE TO CLASS SCHEDULE A PROCESS/KERNEL THREAD WHEN ! IT ALREADY BELONGS TO A SCHEDULING CLASS FROM THE ! CLASS SCHEDULER DATABASE FILE. ! ! X-90 JMB076 JAMES M. BLUE 22-MAR-1999 ! ADD SS$_NOQIOSERVER - QIOSERVER'S QIO$CONFIGURE ! PROCESS IS NOT AVAILABLE TO HANDLE SYS$QIOSERVER ! REQUESTS. ADD SS$_INVQSRFNC - THE FUNCTION CODE ! IN THE SYS$QIOSERVER REQUEST IS INVALID. ! ! X-89 GP GENADY PERCHENKO 18-FEB-1999 ! ADD WRONGDRV ! ! X-88 JAH0323 JOHN A HARNEY 10-DEC-1998 ! ADD PERSONARESERVED FOR OPERATIONS ATTEMPTED ON ! A RESERVED PERSONA INDEX. ! ! X-87 JRK390 JIM KAUFFMAN 11-SEP-1998 ! ADD NOCPUMATCH AND TRIM CPUSELECTED TO FIT PAGE ! ! X-86 JRK390 JIM KAUFFMAN 9-JUL-1998 ! ADD CPUSELECTED ! ! X-85 KJP-SDOS KEVIN PLAYFORD 29-JUN-1998 ! UPDATE SNAPSHOT SERVICES MESSAGES BASED ON DEVICE NAME ! CHANGE. ! ! X-84 EMB ELLEN M. BATBOUTA 04-JUN-1998 ! ADD 2 NEW ERROR MESSAGES, NOFASTPATH AND CPUNOTAVAIL. ! ! X-83 GP GENADY PERCHENKO 26-MAY-1998 ! FIX A TYPO IN ERROR SYMBOL. IT SGOULD BE DEVNOTCON ! INSTEAD OF MPDEVNOTCON. ! ! X-82 GP GENADY PERCHENKO 20-MAY-1998 ! ADD SOME MORE MULTIPATH STATUS CODES. AND RENAME SOME ! EXISTING ONES. ! ! X-81 GP GENADY PERCHENKO 02-APR-1998 ! ADD NEW STATUS CODES FOR MULTIPATH. ! ! X-80 DAVE BERNARDO 24-FEB-1998 ! ADD BADLCKTBL AND MAKE BROKEN A SUCCESS STATUS CODE. ! MAKE THE ERROR TEXT MORE MEANINGFUL. ! ! X-79 AHM039 DREW MASON 17-FEB-1998 ! ADD MORE STATUS CODES FOR GALAXY MEMBERSHIP SERVICES. ! ! X-78 PKH-G006 PAUL K. HARTER, JR. 27-JAN-1998 ! ADDED TWO STATUS CODES FOR GALAXY MEMBERSHIP SERVICES. ! ! X-77 AHM034 DREW MASON 26-JAN-1998 ! ADD STATUS CODES FOR GALAXY MEMBERSHIP CALLBACKS. ! ! X-76 NELSON PAT NELSON 14-JAN-1998 ! CLEANED UP INSTRUCTIONS AT TOP OF FILE. ! ! X-75 DMB DAVE BERNARDO 07-JAN-1998 ! ADD MORE STATUS CODES FOR GALAXY LOCKING. ! ! X-74 HAR HAROLD READ 10-DEC-1997 ! ADD NEW STATUS CODE FOR MSCP ERRORS. ! ! X-73 JAH0250 JOHN A HARNEY 11-NOV-1997 ! ADD SS$_NOSUCHEXT FOR IMPERSONATION SERVICES TO TELL ! THE USER THERE'S NO SUCH EXTENSION. ! ! X-72 DMB DAVE BERNARDO 27-OCT-1997 ! ADD STATUS CODES FOR GALAXY LOCKING. ! ! X-71 KLN2008 KAREN L. NOEL 21-OCT-1997 ! ADD NEW STATUS CODES FOR GALAXY SHARED MEMORY. ! ! X-70 HAR HAROLD READ 18-SEP-1997 ! ADD TEN NEW ERROR MESSAGES FOR DU/TUDRIVER. ! ! X-69 ANDY KUEHNEL 10-SEP-1997 ! ADD SS$_SECREFOVF ERROR TO BE RETURNED IF ADDING MORE REFERENCES ! TO A GLOBAL SECTION WOULD CAUSE THE REFERENCE COUNT TO OVERFLOW. ! ! X-68 WDB:MTD20 WALTER BLASCHUK 13 AUG 1997 ! MULTIPLE TAPE DENSITY PROJECT: INSERT TWO INFORMATIONALS ! SS$_NOTATBOT AND SS$_PREVSDENS. ALPHA AND VAX. ! ! X-67 KJP-SDOS KEVIN PLAYFORD 18-JUL-1997 ! UPDATE SNAP CAPABLE DISK ERROR MESSAGES AND RESERVE SOME EXTRA ! MESSAGES. ! ! X-66 KJP-SDOS KEVIN PLAYFORD 11-JUN-1997 ! ADD SS$_TOOMANYFRAGS AND SS$_TOOMANYFAMILIES FOR SNAP CAPABLE ! DISK. ! ! X-65 IBB038 IAN BROCKBANK 4-JUN-1997 ! F11BXQP HFS LATENT SUPPORT - ADD SS$_NOTF11ODS5, ! SS$_NOCONVJNL AND SS$_NORAD50. ! ! X-64 BMAN BRIAN MAN 21-MAR-1997 ! NO CHANGES: CLEAN UP SOME SO DIFFS WORK BETTER BETWEEN ! THE VAX VERSION ! ! X-63 DOUGLAS FYFE 14-FEB-1997 ! MAINLINE MERGE OF PER-THREAD SECURITY SUPPORT: (GEN 58A1) ! ADD SS$_PERSONADELPEND TO BE RETURNED WHEN A REQUEST ! TO DELETE A PERSONA IS PREVENTED ONLY BY OUTSTANDING ! REFERENCES IN REFCOUNT. ! ! X-62 JMP-VDC JULIAN PALMER 29-JAN-1997 ! ADD SS$_FLUSHFAIL FOR VDC LATENT SUPPORT. ! ! CW-SD CHRIS WHITAKER 29-JAN-1997 ! ADD ADDITIONAL ERROR MESSAGES FOR SNAPSHOT-CAPABLE ! DISK. ! ! X-61 NYK656 NITIN Y. KARKHANSI 21-AUG-1996 ! ADDED SS$_NOSHPTS AS PART SHARED PAGE TABLE SUPPORT. ! ! X-60 KLN1572 KAREN L. NOEL 6-AUG-1996 ! O ADDED SS$_RES_MEM_INCON FOR RESERVED MEMORY REGISTRY. ! O ADDED SS$_PTE_NOT_EMPTY FOR SYSTEM PTE DEALLOCATION. ! ! X-59 NYK640 NITIN Y. KARKHANIS 17-JUL-1996 ! O ADDED SYSTEM SERVICE MESSAGE FOR SHARED PAGE TABLE SECTION ! CREATION, SS$_CREATED_SHPT. ! O REMOVED SS$_MRES_NOTREG, SS$_MRES_REGSMALL AND ! SS$_MRES_REGBIG FOR KAREN NOEL. ! ! X-58 KLN1546 KAREN L. NOEL 2-MAY-1996 ! ADDED SYSTEM SERVICE MESSAGES FOR MEMORY RESIDENT SECTIONS. ! MRES_REGSMALL, MRES_REGBIG, MRES_NOTREG, MRES_PFNSMALL, ! MRES_INCON, NORESERVEDMEM, RESERVEDMEMUSED, NOMEMRESID ! ! X-57 JACH0010 JEREMY A. C. HITT 2-MAR-1996 ! ADDED THE FOLLOWING MESSAGES FOR ACME: NOEXTAUTH, ! ERRMAPAUTH, AUTHFAIL AND INVUSER. ! ! X-56 WXD BILL DAVENPORT 13-DEC-1995 ! PER-THREAD SECURITY STAGE 1 CHECKIN: ! ! ADD NODELPERMANENT ERROR CODE TO BE RETURNED WHEN DELETION ! OF A PERMANENT PERSONA IS ATTEMPTED. ALSO, RENAME DETACH ! PRIVILEGE TO IMPERSONATE. ADD LITERAL SO THAT OLD SYMBOL ! STILL GETS CREATED. ! ! X-55 PKW338 PAUL K. M. WEISS 8-NOV-1995 ! ADD SS$_THREAD_UPCALL, WHICH IS USED TO COMMUNICATE FROM KERNEL ! INTERNAL SERVICES TO THE CALLER'S MODE JACKET THAT IT SHOULD ! MAKE AN UPCALL ! ! X-54 JCH703B JOHN C. HALLYBURTON, JR. 10-OCT-1995 ! ADD SS$_NOBUFOBJID (ATTEMPTED USER MODE CREATE BUFFER OBJECT ! WITHOUT A RIGHTS IDENTIFIER). ! ! X-53 KLN1520 KAREN L. NOEL 28-SEP-1995 ! 1. FIX SEVERAL NEW SS$ CODES TO BE ERRORS INSTEAD OF ! WARNINGS. ! 2. SHORTEN SEVERAL NEW SS$ CODE NAMES SO THEY ARE LESS ! THEN 15 CHARACTERS. OTHERWISE, THEY GET TRUNCATED IN THE ! MESSAGE TEXT. ! 3. FIX TEXT OF SS$_CHANVIO. ! ! X-52 KLN1514 KAREN L. NOEL 12-SEP-1995 ! 1. CHANGE MESSAGE TEXT FOR SS$_IVPROTECT TO INCLUDE ! INVALID GLOBAL SECTION PROTECTION ! 2. FIX TYPO IN SS$_OFFSET_NOTBLOCK MESSAGE ! ! X-51 WBF BURNS FISHER 7-SEP-1995 ! ADD SS$_EMULATE INFO MESSAGE ! ! X-50 JCH703A JOHN C. HALLYBURTON, JR. 8-MAR-1995 ! ADD EXBUFOBJLM ERROR CODE. ! ! X-49 NYK292 NITIN Y. KARKHANIS 28-FEB-1995 ! O DISPLAY THE FULL 64-BITS OF PCS WITH !XH. ! O REPLACED INSTANCES OF !XQ WITH !XH (!XQ WAS INTRODUCED ! IN EDIT X-47). ! ! X-48 RLP050 RAY PFAU 23-FEB-1995 ! ADD SS$_NOMORETHREAD FOR KERNEL THREADS. ! ! X-47 NYK280 NITIN Y. KARKHANIS 23-FEB-1995 ! 64-BIT PROJECT: PROMOTE ADDRESS ARGUMENTS IN SYSTEM MESSAGES ! FROM !XL TO !XQ. $FAO NOW HANDLES QUADWORD BY VALUE! ! ! X-46 KLN1389 KAREN L. NOEL 16-FEB-1995 ! ADD EVEN MORE SS$ CODES FOR 64-BIT GLOBAL SECTION ! SYSTEM SERVICES. ! ! X-45 KLN1377 KAREN L. NOEL 3-FEB-1995 ! ADD ANOTHER SS$ CODE FOR 64-BIT MMG SYSTEM SERVICES. ! ! X-43 KLN1342 KAREN L. NOEL 1-DEC-1994 ! ADD SOME FORGOTTEN CODES FOR 64-BIT MMG SYSTEM SERVICES. ! ! X-42 KLN1333 KAREN L. NOEL 16-NOV-1994 ! ADD NEW CODES NEEDED FOR 64-BIT MMG SYSTEM SERVICES. ! ! X-41 TRB TOM BENSON 02-NOV-1994 ! ADDED SS$_RESIGNAL_64 AND SS$_CONTINUE_64. THESE ARE VARIANTS ! OF THEIR 32-BIT COUNTERPARTS THAT TELL EXCEPTION THAT THE ! 64-BIT SIGNAL ARRAY SHOULD BE USED. ! ! X-40 LSS0312 LEONARD S. SZUBOWICZ 20-OCT-1994 ! ADD SS$_NOT64DEVFUNC. THIS IS RETURNED BY THE $QIO SYSTEM ! SERVICE IF THE P1 PARAMETER HAS MORE THAN 32 SIGNIFICANT ! BITS AND THE DRIVER DOES NOT SUPPORT 64-BITS. ! ! X-39 KLN1326 KAREN L. NOEL 18-OCT-1994 ! 64-BIT PROJECT: ! ADD SS$_ARG_GTR_32_BITS ! ! X-38 JCH703 JOHN C. HALLYBURTON, JR. 5-OCT-1994 ! ERROR CODES FOR FAST-IO: BADFANDLE THRU UNSUPVOLSET ! ! X-37 JFD0633 JAMES F. DUNHAM 15-SEP-1994 ! FOLD FROM X-33U3 - ADD MESSAGES TO SUPPORT SCSI-2 TCQ ! ! X-36 NANCY JEAN BURKHOLDER 19 SEP 1994 ! ADD SS$_ZEROALLOCLS MESSAGE ! ! X-35 DBK001 DAN KYLER 7-SEP-1994 ! ADD MESSAGES FOR SMFS LAYERED PRODUCT IN MME RESERVED REGION. ! FOLDED FROM X-33U1. ! ! X-34 DMB002 DAVID M. BERNARDO 28-AUG-1994 ! ADD SS$_NOMULTITHREAD, SS$_MTHREADACTIVE, SS$_MAXKTHREADS, ! SS$_NOSUCHTHREAD, SS$_NOTHREADMAN, SS$_NOSUCHUPCALL, ! SS$_TMACTIVE. ! ! X-33 JHH-BL5 JIM HOGG 6-JUL-1994 ! ADD SS$_INSFTHREADS & SS$_NOTSUPFS FOR F64 FILE SYSTEM. ! ! X-32 RAB0191 RICHARD A. BISHOP 3-JUN-1994 ! ADD SS$_SIGNAL64 FOR MIKE HARVEY ! ! X-31 SAD0308 STUART A. DAVIDSON 22-MAR-1994 ! ADD INSFP1POOL TO CLEARLY IDENTIFY INSUFFICIENT CTLPAGES. ! ! X-30 RAB RICHARD A. BISHOP 15-MAR-1994 ! PICK UP THE FOLLOWING CORAL CHANGE: ! ! X-35 FAK004 FORREST A. KENNEY 11-JAN-1994 ! ADD NEW MESSAGE , IOC$CLONE_UCB RETURNS THIS ! WHEN WE HAVE USED UP ALL THE AVAILABLE UNITS FOR A DEVICE. ! ! X-29 RWC136 RICHARD W. CRITZ, JR. 23-DEC-1993 ! ADD SS$_CONFIG_SYNTAX FOR 3PB SUPPORT. IT REPLACES ! SS$_OBSOLETE_6. ! ! X-28 RAB RICHARD A. BISHOP 9-DEC-1993 ! ADD IMPERSONATION MESSAGE CODES FOR STU DAVIDSON ! ! X-27 HH1241 HAI HUANG 06-OCT-1993 ! CORRECT PARAMETERS FOR SS$_ILLEGAL_SHADOW. ! ! X-26 DEE RYAN 30-SEP-1993 ! CORRECTED SPELLING, PUNCTUATION, AND LEGAL ERRORS IN ! MESSAGE TEXT. ! ! X-25 RAB RICHARD A. BISHOP 17-AUG-1993 ! PICK UP NEW VAX SYMBOL: ! ! X-32 WXD BILL DAVENPORT 11-AUG-1993 ! ADD SS$_IVNODNAM, INVALID NODE NAME FOR DECNET. ! ! X-24 HH1202 HAI HUANG 12-AUG-1993 ! ADD NEW IEEE ARITHMETIC EXCEPTIONS. ! ! X-23 HH1110 GENE LEACHE 15-JUL-1993 ! ADD SS$_NOCALLTRANS_SUP ! ! X-22 HH1110 HAI HUANG 14-JUN-1993 ! ADD SS$_TARGET_UNWIND, SS$_TARGET_GOTO_UNWIND. ! ! X-21 HH1101 HAI HUANG 26-MAY-1993 ! REPLACE REASON MASK WITH I/O STATUS IN PAGE READ ERRORS. ! ! X-20 MW MARK WATTS 25-MAY-1993 ! ADD A NEW FILESYSTEM ERROR MESSAGE CALLED SHELFERROR, THIS ! WILL BE RETURNED THROUGH THE FILESYSTEM BY THE SHELF HANDLER. ! ! X-19 RAB RICHARD A. BISHOP 14-MAY-1993 ! FOLD INITIAL CORAL CHANGES: ! ! X-21A1A1 MME001 MICHAEL BEELER 12-OCT-1992 ! ADD MME (MEDIA MANAGEMENT EXTENSION) MESSAGES ! ! X-18 RAB RICHARD A. BISHOP 14-APR-1993 ! FOLD OF BLADE/DELTA CLEANUP (REQUIRED SS$_FDT_COMPL TO ! CHANGE VALUE): ! ! X-14U3 RAB RICHARD A. BISHOP 14-APR-1993 ! MERGE BLADE CHANGES AND RESOLVE CONTENTION: ! ! X-25A1 AJM93032 ANDREW J. MOSKAL 11-MAR-1993 ! ADD NOTRANQUIL AND SMALLHEADER - MAC RELATED MESSAGES. ! ! X-17 EHL003 GENE LEACHE 1-APR-1993 ! ADD SIG_ARGMISMATCH ! ! X-16 EHL003 GENE LEACHE 22-MAR-1993 ! ADD SIG_INVARGTYPE, SIG_INVFLTARG, SIG_INVARGLIST ! ! X-15 WDB:HLL004 WALTER D. BLASCHUK, JR. 06-JAN-1993 ! HLLDD PROJECT: FDT PROCESSING CHANGES. ! ADD THE SS$_FDT_COMPL CONSTANT. THIS WILL INDICATE ! THAT FDT PROCESSING IS COMPLETE. IT SAYS NOTHING ! ABOUT THE PRESENCE OF AN ERROR. ! ! X-14 RLP017 RAY PFAU 18-DEC-1992 ! CLARIFY CPUSTOPPING TEXT. FIX TYPO IN NOTALLCANCELED ! TEXT. ! ! X-13 RAB RICHARD A. BISHOP 20-NOV-1992 ! NEW SYMBOLS FOR PAUL HOULIHAN (SCS), PLUS MORE BLADE CHANGES: ! ! PJH PAUL J. HOULIHAN 20-NOV-1992 ! ADD SCS INTERNAL STATUS. THESE ARE NEVER SEEN BY USERS. ! ! X-24 MWD0038 MICHAEL DANIELE 20-OCT-1992 14:13 ! ADD NAMESERVCOMMERR - "Name service communications error" ! ON BEHALF OF DECNET/OSI. ! ! X-23 DDP1354 DERRELL D. PIPER 30-SEP-1992 16:36 ! ADD MESSAGE FOR ATTEMPT TO ADD A PROTECTED SUBSYSTEM ID WITH ! ATTRIBUTES THAT EXCEED THOSE OF ITS HOLDER (SS$_SSANOTAUTH). ! ALSO ADD A MESSAGE FOR INVALID FILE OWNER (SS$_BADOWNER). ! ! X-22 DDP1337 DERRELL D. PIPER 16-SEP-1992 17:55 ! UPDATE NOPRIV, EXQUOTA, AND OBJNOTLOCKED MESSAGE TEXTS. ! ! X-12 RS00375 RICHARD SAYDE 1-SEP-1992 ! CORRECT MESSAGE TEXT FOR ALIGNMENT FAULT TRAP. REGISTER ! INFORMATION IS NO LONGER PROVIDED, IT IS NOW A FUNCTION ! CODE - 0 MEANS LOAD, 1 MEANS STORE. ! ! X-11 HH0974 HAI HUANG 16-AUG-1992 ! CORRECT MESSAGE TEXT FOR SS$_FLTINV. ! ! X-10 RAB RICHARD A. BISHOP 14-AUG-1992 ! PICK UP ANOTHER BLADE CHANGE: ! ! X-21 JAD045 JOSEPH A. DZIEDZIC 29-JUN-1992 ! ADD "page read error across access modes" STATUS, ! SS$_PAGRDERRXM. ! ! X-9 RAB RICHARD A. BISHOP 16-JUL-1992 ! PICK UP CHANGE FROM VAX, RESET IDENT & AUDIT TRAIL ! ! X-19 RLA095B ROBERT L. ADAMS 12-JUN-1992 ! OBSOLETE CHARGE CODE ACCOUNTING AND REPLACE WITH ! MORE DESCRIPTIVE PROTECTED SUBSYSTEMS ERRORS. ! ADD COMMENT ON OBSOLETING MESSAGES. ! ! X-22 EHL002 GENE LEACHE 8-JUL-1992 ! ADD SS$_ILLPOLICY ! ! X-21 EHL001 GENE LEACHE 18-JUN-1992 ! ADD SS$_ILLPRIPOL ! ! X-20 EMB0170 ELLEN M. BATBOUTA 12-JUN-1992 ! ADD 2 NEW FATAL ERROR MESSAGES, TRANSCALLER AND ! NOCALLTRANS. THESE MESSAGES INDICATE THAT A NATIVE ! IMAGE WAS NOT BUILT CORRECTLY TO INTEROPERATE WITH ! TRANSLATED CODE. ! ! X-19 HH0931 HAI HUANG 27-MAY-1992 ! CHANGE PSL IN ERROR MESSAGES TO PS. ! ! X-18 RAB RICHARD A. BISHOP 19-MAY-1992 ! PICK UP RECENT BLADE CHANGES: ! ! X-17 ATP014.17 ALAN POTTER 2-APR-1992 ! CHANGE ERROR MESSAGE TEXT FOR SS$_TPDISABLED AND ! SS$_NOLOG. ! ! X-15/16 DDP1198 DERRELL D. PIPER 24-MAR-1992 18:15 ! FIX PUNCTUATION OF MESSAGES FOR HELP/MESSAGE AND ADD SOME ! POMPOUS GUIDELINES FOR FUTURE GENERATIONS. ! ! X-17 HH0855 HAI HUANG 10-MAR-1992 ! -16 ADD STATUS FOR GENTRAP CODES. ! ! X-15 HH0853 HAI HUANG 26-FEB-1992 ! ADD SS$_GENTRAP, SS$_GOTO_UNWIND, SS$_EXIT_UNWIND. ! ! X-14 RAB0100 RICHARD A. BISHOP 30-JAN-1992 ! MERGE BLADE AND ALPHA VERSIONS OF THIS FILE. THIS ! IS BEING DONE SO AS TO LEAVE BLADE VALUES INTACT. ! WHERE CHANGES IN VALUES ARE NECESSARY, THEY ARE ! HAPPENING TO ALPHA. ! ! ALSO MOVE SS$_IMGDMP (PREVIOUS BLADE CHECKIN). THIS ! WAS WRONGLY PLACED, AND CAUSED SOME SYMBOLS TO MOVE. ! THEY NOW GO BACK TO THEIR ORIGINAL VALUES. ! ! AS LUCK WOULD HAVE IT, THIS CHECKIN IS GENERATION ! 14 ON BOTH MASTERPACKS..... ! ! ======================================== ! ! 30-JAN-1992: WHAT FOLLOWS IS THE BLADE AUDIT TRAIL ! FROM 30-NOV-1990 TO 20-DEC-1991 ! ! ======================================== ! ! X-13 SJVMAJ STEPHEN J. VIVIAN 20-DEC-1991 ! ADD SS$_IMGDMP SIGNAL FOR MAJIQ SUPPORT. ! ! X-12 CRB0711 COLIN R. BLAKE 18-DEC-1991 13:18:23.93 ! THIS IS THE C2 VERSION BEING INSERTED INTO MAINLINE. ! ! X-8A3A1A2 THE GREAT MERGER NASSER ABBASI 11-DEC-1991 ! MERGE T4 WITH BLADE_BLD6 ! COPY OF HISTORY FROM BLD6 MODULE ! -------------------------------- ! X-11 JFD0031 JAMES F. DUNHAM 8-JAN-1991 ! ADD MESSAGES TO SUPPORT ISO 9660 VOLUME MOUNTS ! ! X-8A3A1A1 DOR DENNIS O. ROGERS 26-NOV-1991 12:19 ! C2 BLADE MERGE (T4): ! ! X-10 CBD0238 CHARLES B. DUNN 14-OCT-1991 ! ADD SS$_TIMENOTSET FOR DTSS SUPPORT ! ! X-8A3A1 CRB0044 COLIN R. BLAKE 6-NOV-1991 08:58 ! T3 MERGE: ! ! X-9 EJL0610 EDWARD J. LOS 02-OCT-1991 ! RESET VERSION TO MATCH GENERATION. ADD SYSTEM SNAPSHOT ! VALIDATION ERRORS ! ! X-8A3 CRB0030 COLIN R. BLAKE 23-OCT-1991 ! MORE C2 MERGING: ! ! T-6T9 SAD0144 STUART A. DAVIDSON 18-OCT-1991 ! ADD NOOJBSRV ERROR -- OBJECT SERVER NOT RUNNING. ! ! X-8A2 FAK0003 FORREST A. KENNEY 16-OCT-1991 ! MERGE LATEST C2 CHANGES. ! ! T-9 DDP0887 DERRELL D. PIPER 4-OCT-1991 18:43 ! ADD ITEM CODE ERROR MESSAGES. ! ! X-8A1 FAK0002 FORREST A. KENNEY 20-SEP-1991 ! MERGE C2 MESSAGES INTO MAINLINE, FIX IDENT TO AGREE WITH ! CMS DUE TO MASTERPACK CLEANUP. ! ! X-80T8 LMP0542 L. MARK PILANT, 29-JUL-1991 16:42 ! ADD A MESSAGE TO INDICATE THAT DELETION OF FILES WITH ! ACTIVE RMS JOURNALING IS NOT ALLOWED. ! ! LMP0544 L. MARK PILANT, 30-JUL-1991 14:45 ! ADD A MESSAGE TO INDICATE THE SUPPLIED FILE ! SPECIFICATION IS INVALID FOR THE ATTEMPTED OPERATION. ! ! T-7 RLA ROBERT L. ADAMS 26-JUN-1991 ! FOLD MAGIC CHANGES INTO TRANQUILITY. ! ! T-6 DDP0977 DERRELL D. PIPER 7-JUN-1991 10:01 ! ADD OVRMAXAUD. ! ! T-5 AJM ANDREW J. MOSKAL 13-MAY-1991 ! ADD INVSECOPER, NOCLASSSUPPORT - MAC PROTECTION RELATED ! MESSAGES. ! ! T-4 SAD0116 STUART A. DAVIDSON 3-MAY-1991 ! ADD ILLRSDM (ILLEGAL RESOURCE DOMAIN OPERATION) ! ! X-80T3 SAD0109 STUART A. DAVIDSON 19-APR-1991 ! ADD OBJECT CONTEXT NOT LOCKED MESSAGE. ! ! X-80T2 SAD0109 STUART A. DAVIDSON 11-MAR-1991 ! ADD MISSED MESSAGES FOR SECURITY OBJECT MANAGEMENT ! ! X-81 RLA0147 ROBERT L. ADAMS 15-FEB-1991 ! ADD SECURITY MESSAGES ADDED FOR PHOENIX WORK. ! ! X-87 PMV0169 PETER M. VATNE 20-JUN-1991 ! ADD SS$_DEVNOTWS. ! ! X-86 CW CHRIS WHITAKER 10-MAR-1991 ! ADD SS$_REMEMBER ALIAS. ! ! X-85 FAK001 FORREST A. KENNEY 08-MAR-1991 ! ADD SS$_QUEUED. ! ! X-84 JLBBP01 J.L. BERG 28-FEB-1991 ! ADD SS$_NOREADER AND SS$_NOWRITER. ! ! X-83 CW CHRIS WHITAKER 26-FEB-1991 ! ADD ERROR CODES FOR DECDTM V1.2 SUPPORT. ! ! X-82 RG40077 RAY GUZMAN 21-FEB-1991 ! ADD 4 NEW CODES. SS$_BADCHECKSUM, SS$_INVSECDOMAIN, ! SS$_ARBTOOBIG, AND SS$_ORBTOOBIG. ! ! X-81 RKK0058 ROBERT K. KOSAKOWSKI 19-FEB-1991 ! RESERVE 20 MESSAGE CODES FOR MEDIA MANAGEMENT EXTENSIONS. ! (FOR DAN KYLER) ! ! X-46U12 LPL0001 LEE LEAHY 30 NOV 1990 ! MERGED EDIT X-74 ! ! X-74 LPL0001 LEE LEAHY 12 OCT 1990 ! ADDED SS$_INVBUSNAM, SS$_INVCOMPTYPE, SS$_INVCOMPID, ! SS$_INVCOMPLIST, SS$_RMTPATH, AND NOCOMPLSTS. ! ! ======================================== ! ! 30-JAN-1992: WHAT FOLLOWS IS THE ALPHA AUDIT TRAIL ! FROM 16-JUL-1990 TO 18-DEC-1991 ! ! ======================================== ! ! X-13 RS00233 RICHARD SAYDE 18-DEC-1991 ! ADD ERROR CODES FOR ALIGNMENT FAULT REPORTING. ! ! X-12 TNS001 TOM SCARPELLI 24-OCT-1991 ! ADD MESSAGES FROM VAX SIDE FOR NEW QUEUE MANAGER. ! ! X-11 DMB001 DAVID M. BERNARDO 23-OCT-1991 ! ADD SLICING_DISABLED. ! ! X-10 WMC010 WAYNE CARDOZA 24-SEP-1991 ! ADD UNALIGNED SP LOAD. ! ! X-9 TNS001 TOM SCARPELLI 17-JUN-1991 ! ADD MESSAGES FROM VAX SIDE FOR $FORGE_WORD SYSTEM SERVICE. ! ! X-8 RWC038 RICHARD W. CRITZ, JR. 12-JUN-1991 ! CHANGE SS$_DRVEXISTS AND SS$_DEVEXISTS FROM INFORMATIONALS ! TO WARNINGS. ! ! X-7 HH0624 HAI HUANG 09-APR-1991 ! ADD SS$_ALTER, ALTER STACK FRAMES, FOR TIE SUPPORT. ! ! X-K10 LPL001 LEE LEAHY 4 APR 1991 ! INCLUDED THE DEFINITIONS FROM IOWA/SIGMA. ! ! X-46U12 LPL0001 LEE LEAHY 30 NOV 1990 ! MERGED EDIT X-74 ! ! X-74 LPL0001 LEE LEAHY 12 OCT 1990 ! ADDED SS$_INVBUSNAM, SS$_INVCOMPTYPE, SS$_INVCOMPID, ! SS$_INVCOMPLIST, SS$_RMTPATH, AND NOCOMPLSTS. ! ! X-K9 HH0610 HAI HUANG 25-FEB-1991 ! ADD ALPHA HARDWARE EXCEPTIONS SS$_HPARITH, SS$_ALIGN. ! ! X-K8 RFH002 ROBERT F. HOFFMAN 23-JAN-1991 ! ADD SS$_QIO_CROCK FOR SPECIAL TREATMENT THAT $QIO ! NEEDS IN ORDER TO FAULT IN A PAGE IN CALLER'S MODE. ! ! X-K7 MSH1062 MICHAEL S. HARVEY 13-DEC-1990 ! ADD SS$_INVARG FOR $CRMPSC AND $MPGBLSC SERVICES. ! ! X-K6 RFH001 ROBERT F. HOFFMAN 11-DEC-1990 ! ADD SS$_QUEUED FOR TTDRIVER PORT (REPLACES AN UNUSED ! MESSAGE) ! ! X-K5 RWC003 RICHARD W. CRITZ, JR. 1-NOV-1990 ! ADD SS$_DRVNOTVALID. ! ! X-K4 RWC003 RICHARD W. CRITZ, JR. 11-OCT-1990 ! ADD $LOAD_DRIVER STATUSES. ! ! X-K3 KLN1027 KAREN L. NOEL 25-JUL-1990 ! ADD SS$_NOT_LOADED ! ! X-K2 WMC0K2 WAYNE CARDOZA 16-JUL-1990 ! ADD WAIT IN CALLERS MODE. ! ! ======================================== ! ! 30-JAN-1992: WHAT FOLLOWS IS THE COMMON AUDIT TRAIL ! UP TO 21-MAY-1990 ! ! ======================================== ! ! X-46U11 CW1024 CHRIS WHITAKER 21-MAY-1990 ! ADD SS$_VOLATILE. ! ! X-46U10 DDP0643 DERRELL D. PIPER 28-MAR-1990 15:55 ! ADD SS$_USEGENPWD. ! ! X-46U9 MAS0254 MARK A. STILES 20-FEB-1990 ! FIXUP OUT-OF-ORDER CODES. MOVE SOME NEW CODES INTO ! UNUSED SLOTS. FIX TEXT OF INSFSPT TO BE MORE GENERIC. ! ! X-46U8 CAM0109 CHRISTOPHER A. MEGA 12-FEB-1990 ! ADD BOOTREJECT WARNING STATUS - USED BY START/CPU CODE IF A CPU ! FAILS TO BOOT BECAUSE IT IS IN THE BOOT_REJECTED STATE. ! ! X-46U7 LBB0010 LEE BARTON 30-NOV-1989 ! ADD SS$_ARCHIVING, SS$_ARCHIVED (XQP SUPPORT OF ALM) ! ! X-46U6 LMP0517 L. MARK PILANT, 17-OCT-1989 16:42 ! ADD PROTECTED SUBSYSTEM SUPPORT. ! ! X-46U5 RLF RICHARD L. FRANK 16-OCT-1989 ! MODIFY INSFSPTS TO BE MORE GENERIC. ADD INSFRPGS AND ! INSFLPGS. ! ! X-46U4 CAM0072 CHRISTOPHER A. MEGA 06-OCT-1989 ! CHANGED CPUSTOPPD TO CPUSTOPPING ! ! X-46U3 DDP0546 DERRELL D. PIPER 4-OCT-1989 14:24 ! ADD SS$_NOCALLPRIV FOR $CHECK_ACCESS. ! ! X-46U2 PRD0503 PAUL R. DESTEFANO 25-SEP-1989 ! ADD SS$_NOSUCHFAC FOR EVENT FACILITY OBJECT SECURITY. ! ! X-46U1 PRD0495 PAUL R. DESTEFANO 18-SEP-1989 ! ADD SS$_INVEVENT FATAL MESSAGE FOR $SETEVTAST AND ! $CANEVTAST. ! ! X-46 SAS0203 SCOTT A. SHURTS 15-SEP-1989 ! ADD SS$_INCONOLCK FATAL MESSAGE FOR $CHANGE_ACL. ! ! X-45 CAM0063 CHRISTOPHER A. MEGA 13-SEP-1989 ! ADD WARNING AND INFORMATIONAL STATUS FOR ENHANCED PRIMARY ! CPU SWITCHING: CPUSTARTIP, CPUSTARTD, CPUSTOPPD, PRIMNOSTP. ! ALSO ADDED /FAO=1 TO NSTPPD. ! ! X-44 DDP0429 DERRELL D. PIPER 11-SEP-1989 16:57 ! CHANGE THE SEVERITY OF THE NEW PASSWORD STATUS CODES ! FROM FATAL TO ERROR. ! ! X-43 CBD0198 CHARLES B. DUNN 14-AUG-1989 ! ADD SS$_EFNOTSET FOR IOC$PRE_SIMREQCOM SUPPORT ! ! X-42 RAP0491 ROD A. PAYNE 15-AUG-89 ! ADD SS$_HSTBUFACC, TO REPORT HOST BUFFER ACCESS ERRORS. ! ! X-41 CJB0041 CHERYL J. BULMER 9-AUG-1989 ! ADD SS$_LOADER, TO REPORT LOADER CYCLE ERRORS. ! ! X-40 MAS0238 MARK A. STILES 9-AUG-1989 ! ADD SS$_CPUCAP FOR USE WHEN A REQUESTED CPU DOES NOT ! HAVE THE CAPABILITIES REQUIRED TO RUN THE PROCESS. ! [FOLD FROM X-29U11 IN V5.3 STREAM] ! ! X-39 MVI0033 MICHAEL V. ILES, 28-JUL-1989 10:08:05.45 ! ADD MESSAGE CODE NOSUCHCPB AND CHANGE TEXT FOR ACLFULL ! ! X-38 DDP0387 DERRELL D. PIPER 25-JUL-1989 12:47 ! ADD MESSAGE CODES FOR SITE-SPECIFIC PASSWORD POLICIES. ! ! X-37 DDP0375 DERRELL D. PIPER 31-MAY-1989 15:12 ! REPLACE SOME OBSOLETE MESSAGE CODES. ! ! X-36 HH0340 HAI HUANG 03-OCT-1988 ! ADD VECALIGN ERROR. ! ! X-35 SSA0002 STAN AMWAY 30-SEP-1988 ! CORRECT TEXT FOR SS$_VECFULL. ! ! X-34 JEJ0550 JAMES E JOHNSON 19-SEP-1988 ! ADD ALRCURTID, RMALRDCL, NOSUCHPART, INVLOG, BADLOGVER, ! LOGSTALL, LOGFULL, LOGNAME. ! ! X-33 SSA0001 STAN AMWAY 14-SEP-1988 ! ADD NOSUSPEND ("process cannot be suspended"). ! ! X-32 RJB0165 RICHARD J. BOUCHARD JR. 14-SEP-1988 ! ADD NOMOREDEV MESSAGE FOR $DEVICE_SCAN SERVICE. ! ! X-31 ACG0559 ANDREW C. GOLDSTEIN, 31-AUG-1988 16:28 ! ADD HWM_STALL FOR ABORT OF STALLED INTERNAL IRP'S ! ! X-30 HH0334 HAI HUANG 31-AUG-1988 ! REPLACE SYSVERDIF WITH A NEW VALUE (I.E. SEVERITY) AND ! A NEW MESSAGE. ! ! X-29 DDP0308 DERRELL D. PIPER 21-JUL-1988 14:02 ! ADD PWDSYNTAX, INVPWDLEN, AND PWDNOTDIF. ! ! X-28 JEJ0527 JAMES E JOHNSON 27-JUN-1988 ! ADD NOSUCHTID, NOCURTID, WRONGSTATE, VETO, UNKRESULT, ! FORGET, PREPARED, NOSUCHRM, ITEMNOTFOUND, NOMOREITEMS ! ! X-26 HH0315 HAI HUANG 18-APR-1988 ! -27 ADD NEW STATUS CODES FOR VECTOR SUPPORT. ! ! X-25 PT00010 PANKAJ TANDON 30-DEC-1987 ! ADD ALLSTARTED,ALRDYSTRT,ALRDYSTPPD AND NSTPPD FOR ! $START/STOP CPU ERRONEOUS CASES. ! ! X-24 LMP0465 L. MARK PILANT, 28-OCT-1987 15:58 ! ADD A NEW MESSAGE, SS$_NORIGHTSDB, TO INDICATE THAT THERE ! IS NOT A RIGHTS DATABASE IS NOT PRESENT ON THE SYSTEM. ! ! X-23 SJF STU FARNHAM 5-OCT-1987 ! ADD NOSUCHCPU ! ! X-22 DLM006 DAN MURPHY 13-SEP-1987 ! INFORMATIONAL CODES FOR $GETSECI. ! ! X-21 WMC0021 WAYNE CARDOZA 4-SEP-1987 ! FIX A MISSPELLING IN VA_IN_USE. ! ! X-20 WMC0020 WAYNE CARDOZA 27-JUL-1987 ! ADD NODELETE. ! ! X-19 WMC0019 WAYNE CARDOZA 10-MAR-1987 ! EXPRCLM SHOULD NOT MENTION SUBPROCESSES. ! ! X-18 WMC0018 WAYNE CARDOZA 19-FEB-1987 ! ADD VA_IN_USE. ! ! X-17 DDP0029 DERRELL D. PIPER 21-JAN-1987 ! CONVERT SS$_BADXXXCTX TO SINGLE BADCONTEXT MSG. ! ! X-16 DDP0027 DERRELL D. PIPER 12-JAN-1987 ! ADD SS$_TOOMUCHCTX AND SS$_BADUAICTX. ! ! X-15 HH0237 HAI HUANG 06-JAN-1987 ! ADD SS$_UNSUPPORTED. ! ! X-14 DDP0008 DERRELL D. PIPER 08-DEC-1986 ! ADD SS$_LASTID, SS$_NOMOREID, SS$_RLSEMPTY, AND ! SS$_BADJPICTX FOR JPI$_RIGHTSLIST ITEM CODE. ! (NB: S VARIANT IS NOW OBSOLETE.) ! ! X-9 NCD0001 NANCY C. DENARDO 21-OCT-1986 ! ADDED SS$_EXLICENSE, SS$_INVLICENSE, SS$_LICENSE_LEVEL, ! AND SS$_INV_HW_ID FOR LMF SERVICE. ! ! X-8 SAS001 SCOTT A. SHURTS 02-OCT-1986 ! ADDED SS$_SRVMMAT TO INDICATE CRYPTOGRAPHIC SERVICE ! MISMATCH. ! ! X-7 KL 0001 KEITH LOEPERE 12-JUN-1986 ! ADDED SS$_REMOVED TO INDICATE DIR ENTRY ONLY REMOVED. ! ! X-6 CWH5006 CW HOBBS 30-MAY-1986 ! ADD SS$_REMOTE_PROC ERROR MESSAGE FOR CWPS. ! ! X-5H2 SJF STU FARNHAM 29-MAY-1986 ! ADD SS$_CPUNOTACT TO INDICATE THAT THE REQUESTED ! CPU IN AN SMP SYSTEM IS NOT ACTIVE. ! ! X-5 PRD0184 PAUL R. DESTEFANO 07-NOV-1985 ! ADD SS$_DATALOST "data lost" TO INDICATE DLS END ! FLAG SET IN CACHING TAPE DRIVE OR DRIVER HAS OTHERWISE ! DETECTED THE LOSS OF CACHED DATA. ! ! X-4 LMP0382 L. MARK PILANT, 6-NOV-1985 10:10 ! ADD SS$_OBJLOCKHELD TO INDICATE THAT A PROCESS ALREADY HOLDS ! THE OBJECT'S ACL LOCK. ! ! X-3 JMK0002 JOSEPH M. KRAETSCH 17-SEP-1985 ! ADD SS$_RUCONFLICT "file has active RUs by another facility". ! REMOVE NOTMPJNL, NOPRMJNL (OBSOLETE). ! ! V04-001 ROW0466 RALPH O. WEBER 11-JUN-1985 ! REPLACE SS$_SHACPYINP (A NO LONGER USED SHADOWING ERROR ! STATUS) WITH SS$_DEVNOTSHR, "device not currently shareable". ! SS$_DEVNOTSHR IS AN ERROR STATUE FOR USE WITH DEVICES MARKED ! FOR EXCLUSIVE ACCESS BY SOMEONE ELSE BY AN MSCP CONTROLLER. ! ! --- ! + ! SYSTEM STATUS CODES ! ! LAYOUT OF MESSAGE SPACE: ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 0-127 0-3FF 128 FATAL ERRORS ! 128-191 400-5FF 64 HARDWARE DEFINED FATAL ERRORS ! 192-255 600-7FF 64 SUCCESS CODES ! 256-383 800-BFF 128 WARNING CODES ! 384-447 C00-DFF 64 INFORMATIONAL CODES ! 448-511 E00-FFF 64 NONFATAL ERROR CODES ! 512-1023 1000-1FFF 512 SHARED MESSAGES (NOT HERE, SEE SHRMSG) ! 1024-1279 2000-27FF 256 FATAL ERRORS (CONTINUED FROM 3FF) ! 1280-1343 2800-29FF 64 NO PRIVILEGE ERRORS ! 1344-1375 2A00-2AFF 32 EXCEEDED QUOTA ERRORS ! 1376-1407 2B00-2BFF 32 RESERVED FOR MEDIA MGMT EXTENSIONS ! 1408-1663 2C00-33FF 256 NONFATAL ERROR CODES (CONTINUED FROM FFF) ! 1664-1695 3400-341F 32 FATAL ERRORS (CONTINUED FROM 27FF) ! 1696-4031 3420-7DFF 2334 (UNUSED) ! 4032-4095 7E00-7FFF 64 RESERVED FOR SCS SYSAPS ! ! - ! ! EXPLICITLY DEFINED SUCESS CODES ! ! DO NOT MIX THESE CODES WITH INCREMENTAL ASSIGNMENTS BELOW ! literal SYSTEM$_FACILITY = 0; literal SS$_NORMAL = 1; ! ! NOTE THAT CONTINUE,WASCLR,WASSET,REMEMBER DO NOT HAVE ANY MESSAGE TEXT ! SINCE THESE CODES USE THE SAME MESSAGE NUMBER AS NORMAL AND ACCVIO, ! THEY CAN NEVER BE MADE TO HAVE MESSAGES ASSOCIATED WITH THEM. ! literal SS$_CONTINUE = 1; literal SS$_WASCLR = 1; literal SS$_WASSET = 9; literal SS$_REMEMBER = 1; ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 0-127 0-3FF 128 FATAL ERRORS ! 1024-1279 2000-27FF 256 FATAL ERRORS (CONTINUED FROM 3FF) ! literal SS$_ACCVIO = 12; literal SS$_BADPARAM = 20; literal SS$_EXQUOTA = 28; literal SS$_NOPRIV = 36; ! MAKE THE ABOVE ERRORS FALL INTO SHORT LITERALS literal SS$_ABORT = 44; literal SS$_BADATTRIB = 52; literal SS$_BADESCAPE = 60; literal SS$_BADIMGHDR = 68; literal SS$_CHANINTLK = 76; literal SS$_CTRLERR = 84; literal SS$_DATACHECK = 92; literal SS$_DEVFOREIGN = 100; literal SS$_DEVMOUNT = 108; literal SS$_DEVNOTMBX = 116; literal SS$_DEVNOTMOUNT = 124; literal SS$_DEVOFFLINE = 132; literal SS$_DRVERR = 140; literal SS$_DUPLNAM = 148; literal SS$_FILACCERR = 156; literal SS$_FILALRACC = 164; literal SS$_FILNOTACC = 172; literal SS$_FILNOTEXP = 180; literal SS$_FORMAT = 188; literal SS$_GPTFULL = 196; literal SS$_GSDFULL = 204; literal SS$_LCKPAGFUL = 212; literal SS$_ILLBLKNUM = 220; literal SS$_ILLCNTRFUNC = 228; literal SS$_ILLEFC = 236; literal SS$_ILLIOFUNC = 244; literal SS$_ILLPAGCNT = 252; literal SS$_ILLSER = 260; literal SS$_INCVOLLABEL = 268; literal SS$_INSFARG = 276; literal SS$_INSFWSL = 284; literal SS$_INSFMEM = 292; literal SS$_INSFRAME = 300; literal SS$_IVADDR = 308; literal SS$_IVCHAN = 316; literal SS$_IVDEVNAM = 324; literal SS$_IVGSDNAM = 332; literal SS$_IVLOGNAM = 340; literal SS$_IVLOGTAB = 348; literal SS$_IVQUOTAL = 356; literal SS$_IVSECFLG = 364; literal SS$_IVSSRQ = 372; literal SS$_IVSTSFLG = 380; literal SS$_IVTIME = 388; literal SS$_LENVIO = 396; literal SS$_LKWSETFUL = 404; literal SS$_MBTOOSML = 412; literal SS$_MEDOFL = 420; literal SS$_NODATA = 428; literal SS$_NOIOCHAN = 436; literal SS$_NOLOGNAM = 444; literal SS$_NONEXDRV = 452; literal SS$_NOTFILEDEV = 460; literal SS$_NOTINTBLSZ = 468; literal SS$_NOTLABELMT = 476; literal SS$_NOTSQDEV = 484; literal SS$_PAGOWNVIO = 492; literal SS$_PARITY = 500; literal SS$_PARTESCAPE = 508; literal SS$_PFMBSY = 516; literal SS$_PSTFULL = 524; literal SS$_RESULTOVF = 532; literal SS$_SECTBLFUL = 540; literal SS$_TAPEPOSLOST = 548; literal SS$_TIMEOUT = 556; literal SS$_UNASEFC = 564; literal SS$_UNSAFE = 572; literal SS$_VASFULL = 580; literal SS$_VECINUSE = 588; literal SS$_VOLINV = 596; literal SS$_WRITLCK = 604; literal SS$_NOTAPEOP = 612; literal SS$_IVCHNLSEC = 620; literal SS$_NOMBX = 628; literal SS$_NOLINKS = 636; literal SS$_NOSOLICIT = 644; literal SS$_NOSUCHNODE = 652; literal SS$_REJECT = 660; literal SS$_TOOMUCHDATA = 668; literal SS$_BUGCHECK = 676; literal SS$_FILNOTCNTG = 684; literal SS$_BADSTACK = 692; literal SS$_MCHECK = 700; literal SS$_DEVACTIVE = 708; literal SS$_HANGUP = 716; literal SS$_OPINCOMPL = 724; literal SS$_ILLSEQOP = 732; literal SS$_IVSECIDCTL = 740; literal SS$_NOTNETDEV = 748; literal SS$_IVPROTECT = 756; literal SS$_ACPVAFUL = 764; literal SS$_MTLBLLONG = 772; literal SS$_BUFBYTALI = 780; literal SS$_NOAQB = 788; literal SS$_WRONGACP = 796; literal SS$_BUFNOTALIGN = 804; literal SS$_DEVCMDERR = 812; literal SS$_DEVREQERR = 820; literal SS$_INSFBUFDP = 828; literal SS$_INSFMAPREG = 836; literal SS$_IVBUFLEN = 844; literal SS$_IVMODE = 852; literal SS$_MCNOTVALID = 860; literal SS$_POWERFAIL = 868; literal SS$_SHMGSNOTMAP = 876; literal SS$_TOOMANYLNAM = 884; literal SS$_SHMNOTCNCT = 892; literal SS$_NOTCREATOR = 900; literal SS$_INTERLOCK = 908; literal SS$_BADQUEUEHDR = 916; literal SS$_NOSLOT = 924; literal SS$_SUSPENDED = 932; literal SS$_EXPORTQUOTA = 940; literal SS$_NOSHMBLOCK = 948; literal SS$_BADQFILE = 956; literal SS$_NOQFILE = 964; literal SS$_QFACTIVE = 972; literal SS$_QFNOTACT = 980; literal SS$_DUPDSKQUOTA = 988; literal SS$_NODISKQUOTA = 996; literal SS$_EXDISKQUOTA = 1004; literal SS$_IDMISMATCH = 1012; literal SS$_NOWRT = 1020; ! ************** ! NOTE: THE ABOVE SET OF SEVERE ERROR MESSAGES IS FULL!!!! ! ANY ADDITIONAL SEVERE ERROR MESSAGES MUST BE ADDED ! BELOW, IN THE RANGE HEX 2000-2800. ! ************** literal SS$_BADISD = 8196; literal SS$_RELINK = 8204; literal SS$_NOTINSTALL = 8212; literal SS$_SHARTOOBIG = 8220; literal SS$_NOP1VA = 8228; literal SS$_MULTRMS = 8236; literal SS$_VECFULL = 8244; literal SS$_IVLVEC = 8252; literal SS$_INSFSPTS = 8260; literal SS$_DISCONNECT = 8268; literal SS$_PRIVINSTALL = 8276; literal SS$_PROTINSTALL = 8284; literal SS$_BADVEC = 8292; literal SS$_REMRSRC = 8300; literal SS$_PROTOCOL = 8308; literal SS$_THIRDPARTY = 8316; literal SS$_NOSUCHUSER = 8324; literal SS$_SHUT = 8332; literal SS$_UNREACHABLE = 8340; literal SS$_INVLOGIN = 8348; literal SS$_NOSUCHOBJ = 8356; literal SS$_EXCPUTIM = 8364; literal SS$_OPRABORT = 8372; literal SS$_SHRIDMISMAT = 8380; literal SS$_COMMHARD = 8388; literal SS$_IVCHAR = 8396; literal SS$_DEVINACT = 8404; literal SS$_CONNECFAIL = 8412; literal SS$_LINKABORT = 8420; literal SS$_LINKDISCON = 8428; literal SS$_LINKEXIT = 8436; literal SS$_PATHLOST = 8444; literal SS$_CLEARED = 8452; literal SS$_RESET = 8460; literal SS$_UNSOLICIT = 8468; literal SS$_TOOMANYREDS = 8476; literal SS$_IVLOCKID = 8484; literal SS$_SUBLOCKS = 8492; literal SS$_PARNOTGRANT = 8500; literal SS$_CVTUNGRANT = 8508; literal SS$_FORCEDERROR = 8516; literal SS$_ILLSELF = 8524; literal SS$_ILLCDTST = 8532; literal SS$_NOLISTENER = 8540; literal SS$_EXGBLPAGFIL = 8548; literal SS$_BADRCT = 8556; literal SS$_DIRNOTEMPTY = 8564; literal SS$_FORCEDEXIT = 8572; literal SS$_NOTPRINTED = 8580; literal SS$_JBCERROR = 8588; literal SS$_NOLICENSE = 8596; literal SS$_VCBROKEN = 8604; literal SS$_VCCLOSED = 8612; literal SS$_INSFCDT = 8620; literal SS$_DEVNOTDISM = 8628; literal SS$_NOSHRIMG = 8636; literal SS$_DUPUNIT = 8644; literal SS$_BADACLCTX = 8652; literal SS$_SERIOUSEXCP = 8660; literal SS$_TEMPLATEDEV = 8668; literal SS$_IVACL = 8676; literal SS$_NOSUCHID = 8684; literal SS$_NOLCLMEDA = 8692; literal SS$_NOREGAVIL = 8700; literal SS$_NOREGSUIT = 8708; literal SS$_NOSUCHPGM = 8716; literal SS$_PGMLDFAIL = 8724; literal SS$_PGMSTDALN = 8732; literal SS$_IVIDENT = 8740; literal SS$_DUPIDENT = 8748; literal SS$_INCSEGTRA = 8756; literal SS$_NODELEAVE = 8764; literal SS$_KERNELINV = 8772; literal SS$_EXLNMQUOTA = 8780; literal SS$_PARENT_DEL = 8788; literal SS$_PARNOTSYS = 8796; literal SS$_INSSWAPSPACE = 8804; literal SS$_VOLOERR = 8812; literal SS$_DATALATE = 8820; literal SS$_OVRMAXARG = 8828; literal SS$_SHACHASTA = 8836; literal SS$_TERMNETDEV = 8844; literal SS$_NOLOGTAB = 8852; literal SS$_WRONGNAME = 8860; literal SS$_NOVOLACC = 8868; literal SS$_NOFILACC = 8876; literal SS$_INVEXHLIST = 8884; literal SS$_NOACLSUPPORT = 8892; literal SS$_INVSECLASS = 8900; literal SS$_INCSHAMEM = 8908; literal SS$_DEVNOTSHR = 8916; literal SS$_RUCONFLICT = 8924; literal SS$_DATALOST = 8932; literal SS$_REMOTE_PROC = 8940; literal SS$_CPUNOTACT = 8948; literal SS$_SRVMMAT = 8956; literal SS$_EXLICENSE = 8964; literal SS$_INVLICENSE = 8972; literal SS$_LICENSE_LEVEL = 8980; literal SS$_INV_HW_ID = 8988; literal SS$_BADCONTEXT = 8996; literal SS$_TOOMUCHCTX = 9004; literal SS$_VA_IN_USE = 9012; literal SS$_NODELETE = 9020; literal SS$_NOSUCHCPU = 9028; literal SS$_IMGVEXC = 9036; literal SS$_NOSAVPEXC = 9044; literal SS$_NOSUCHTID = 9052; literal SS$_NOSUCHRM = 9060; literal SS$_NOCURTID = 9068; literal SS$_WRONGSTATE = 9076; literal SS$_VETO = 9084; literal SS$_PWDSYNTAX = 9092; literal SS$_PWDNOTDIF = 9100; literal SS$_INVPWDLEN = 9108; literal SS$_SYSVERDIF = 9116; literal SS$_HWM_STALL = 9124; literal SS$_NOSUSPEND = 9132; literal SS$_NOSUCHPART = 9140; literal SS$_RMALRDCL = 9148; literal SS$_ALRCURTID = 9156; literal SS$_INVLOG = 9164; literal SS$_BADLOGVER = 9172; literal SS$_OPINPROG = 9180; literal SS$_WRONGACMODE = 9188; literal SS$_SUBTRACED = 9196; literal SS$_ARCHIVING = 9204; literal SS$_ARCHIVED = 9212; literal SS$_SITEPWDFAIL = 9220; literal SS$_NOSUCHCPB = 9228; literal SS$_CPUCAP = 9236; literal SS$_LOADER = 9244; literal SS$_HSTBUFACC = 9252; literal SS$_INCONOLCK = 9260; literal SS$_INVEVENT = 9268; literal SS$_NOSUCHFAC = 9276; literal SS$_NOCALLPRIV = 9284; literal SS$_INSFLPGS = 9292; literal SS$_INSFRPGS = 9300; literal SS$_BADREASON = 9308; literal SS$_NOSUCHBID = 9316; literal SS$_NOTORIGIN = 9324; literal SS$_NOLOG = 9332; literal SS$_TPDISABLED = 9340; literal SS$_BRANCHENDED = 9348; literal SS$_BRANCHSTARTED = 9356; literal SS$_NOSUCHREPORT = 9364; literal SS$_BADTIME = 9372; literal SS$_PARTJOINED = 9380; literal SS$_NOPRESUME = 9388; literal SS$_RECOVERCANCEL = 9396; literal SS$_CURTIDCHANGE = 9404; literal SS$_NOREADER = 9412; literal SS$_NOWRITER = 9420; literal SS$_DEVNOTWS = 9428; literal SS$_NOCLASS = 9436; literal SS$_CONTEXTSKEW = 9444; literal SS$_BADFORGEDB = 9452; literal SS$_NODOMAIN = 9460; literal SS$_OVRMAXAUD = 9468; literal SS$_BADCHAIN = 9476; literal SS$_BADBUFLEN = 9484; literal SS$_BADITMCOD = 9492; literal SS$_BADBUFADR = 9500; literal SS$_BADRETLEN = 9508; literal SS$_SSINOTHELD = 9516; literal SS$_SSAMISSING = 9524; literal SS$_SSANOTAUTH = 9532; literal SS$_BADOWNER = 9540; literal SS$_NAMESERVCOMMERR = 9548; literal SS$_IVNODNAM = 9556; literal SS$_CONFIG_SYNTAX = 9564; literal SS$_SHELVED = 9572; literal SS$_DRVNOTVALID = 9580; literal SS$_SLICING_DISABLED = 9588; literal SS$_NOCALLTRANS = 9596; literal SS$_TRANSCALLER = 9604; literal SS$_ILLPRIPOL = 9612; literal SS$_ILLPOLICY = 9620; literal SS$_INSFRSPID = 9628; literal SS$_INSFCREDITL = 9636; literal SS$_INSFCREDITH = 9644; literal SS$_INSFMAP = 9652; literal SS$_SIG_INVARGTYPE = 9660; literal SS$_SIG_INVFLTARG = 9668; literal SS$_SIG_INVARGLIST = 9676; literal SS$_SIG_INVFUNCTYPE = 9684; literal SS$_SIG_ARGMISMATCH = 9692; literal SS$_NOTRANQUIL = 9700; literal SS$_NOCALLTRANS_SUP = 9708; literal SS$_DEVLISTFULL = 9716; literal SS$_INSFP1POOL = 9724; literal SS$_SIGNAL64 = 9732; literal SS$_ZEROALLOCLS = 9740; literal SS$_QUEUE_FULL = 9748; literal SS$_DEVICE_RESET = 9756; literal SS$_ACA_ACTIVE = 9764; literal SS$_BUS_PHASE_ERROR = 9772; literal SS$_NOMULTITHREAD = 9780; literal SS$_MTHREADACTIVE = 9788; literal SS$_MAXKTHREADS = 9796; literal SS$_NOSUCHTHREAD = 9804; literal SS$_NOTHREADMAN = 9812; literal SS$_NOSUCHUPCALL = 9820; literal SS$_BADFANDLE = 9828; literal SS$_FANDLEBUSY = 9836; literal SS$_UNALIGNED = 9844; literal SS$_BADIOSADR = 9852; literal SS$_ILLBUFOBJ = 9860; literal SS$_ILLMODIFIER = 9868; literal SS$_NOCCBBUFFOBJ = 9876; literal SS$_NORDACC = 9884; literal SS$_NOWRTACC = 9892; literal SS$_NOTNOCNVRT = 9900; literal SS$_UNSUPVOLSET = 9908; literal SS$_ARG_GTR_32_BITS = 9916; literal SS$_NOT64DEVFUNC = 9924; literal SS$_CHANVIO = 9932; literal SS$_GBLSEC_MISMATCH = 9940; literal SS$_ILLRELPAG = 9948; literal SS$_IVACMODE = 9956; literal SS$_IVREGFLG = 9964; literal SS$_IVREGID = 9972; literal SS$_IVREGPROT = 9980; literal SS$_IVVAFLG = 9988; literal SS$_LEN_NOTBLKMULT = 9996; literal SS$_LEN_NOTPAGMULT = 10004; literal SS$_NOT_PROCESS_VA = 10012; literal SS$_OFF_NOTBLKALGN = 10020; literal SS$_OFF_NOTPAGALGN = 10028; literal SS$_OFFSET_TOO_BIG = 10036; literal SS$_REGOWNVIO = 10044; literal SS$_PROTVIO = 10052; literal SS$_TOO_MANY_ARGS = 10060; literal SS$_VA_NOTPAGALGN = 10068; literal SS$_NOEXTAUTH = 10076; literal SS$_AUTHFAIL = 10084; literal SS$_INVUSER = 10092; literal SS$_ERRMAPAUTH = 10100; literal SS$_NORAD50 = 10108; literal SS$_BADMEDIA = 10116; literal SS$_UNRECOVRDER = 10124; literal SS$_IVFORMAT = 10132; literal SS$_IVUNITFLAG = 10140; literal SS$_IVPARAM = 10148; literal SS$_NOSUCHENTRY = 10156; literal SS$_ALLOCFAILED = 10164; literal SS$_SHMEM_INCON = 10172; literal SS$_IVLOCKOP = 10180; literal SS$_IVLOCKTBL = 10188; literal SS$_LOCKINUSE = 10196; literal SS$_LOCK_TIMEOUT = 10204; literal SS$_BADLCKTBL = 10212; literal SS$_NOBREAK = 10220; literal SS$_IVPROTOCOL = 10228; literal SS$_NOWAIT = 10236; ! ! ***** NOTE: NO ROOM FOR MORE MESSAGES IN THIS SECTION ***** ! ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 128-191 400-5FF 64 HARDWARE DEFINED FATAL ERRORS ! literal SS$_PLHLDR = 1028; literal SS$_ASTFLT = 1036; literal SS$_BREAK = 1044; literal SS$_CMODSUPR = 1052; literal SS$_CMODUSER = 1060; literal SS$_COMPAT = 1068; literal SS$_OPCCUS = 1076; literal SS$_OPCDEC = 1084; literal SS$_PAGRDERR = 1092; literal SS$_RADRMOD = 1100; literal SS$_ROPRAND = 1108; literal SS$_SSFAIL = 1116; literal SS$_TBIT = 1124; literal SS$_DEBUG = 1132; ! THE FOLLOWING CODES MUST BE IN ORDER SINCE THEY ARE CALCULATED literal SS$_ARTRES = 1140; literal SS$_INTOVF = 1148; literal SS$_INTDIV = 1156; literal SS$_FLTOVF = 1164; literal SS$_FLTDIV = 1172; literal SS$_FLTUND = 1180; literal SS$_DECOVF = 1188; literal SS$_SUBRNG = 1196; literal SS$_FLTOVF_F = 1204; literal SS$_FLTDIV_F = 1212; literal SS$_FLTUND_F = 1220; ! THE ABOVE CODES MUST BE IN ORDER SINCE THEY ARE CALCULATED literal SS$_INHCHMK = 1228; literal SS$_INHCHME = 1236; literal SS$_VECDIS = 1244; literal SS$_VARITH = 1252; literal SS$_ILLVECOP = 1260; literal SS$_VECALIGN = 1268; literal SS$_IMGDMP = 1276; literal SS$_HPARITH = 1284; literal SS$_ALIGN = 1292; literal SS$_UNALIGN_SP_LOAD = 1300; literal SS$_GENTRAP = 1308; literal SS$_FLTINV = 1316; literal SS$_FLTINE = 1324; literal SS$_DECDIV = 1332; literal SS$_DECINV = 1340; literal SS$_ASSERTERR = 1348; literal SS$_NULPTRERR = 1356; literal SS$_STKOVF = 1364; literal SS$_STRLENERR = 1372; literal SS$_SUBSTRERR = 1380; literal SS$_RANGEERR = 1388; literal SS$_SUBRNG1 = 1396; literal SS$_SUBRNG2 = 1404; literal SS$_SUBRNG3 = 1412; literal SS$_SUBRNG4 = 1420; literal SS$_SUBRNG5 = 1428; literal SS$_SUBRNG6 = 1436; literal SS$_SUBRNG7 = 1444; literal SS$_PAGRDERRXM = 1452; literal SS$_ILLEGAL_SHADOW = 1460; literal SS$_FLTINV_F = 1468; literal SS$_FLTINE_F = 1476; literal SS$_INTOVF_F = 1484; literal SS$_NATFAULT = 1492; literal SS$_FLTDENORMAL = 1500; literal SS$_BREAK_SYS = 1508; literal SS$_BREAK_ARCH = 1516; ! ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 2 MORE MESSAGES IN THIS SECTION ***** ! ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 192-255 600-7FF 64 SUCCESS CODES ! literal SS$_BUFFEROVF = 1537; literal SS$_CONTROLO = 1545; literal SS$_CONTROLY = 1553; literal SS$_CREATED = 1561; literal SS$_MSGNOTFND = 1569; literal SS$_NOTRAN = 1577; literal SS$_SUPERSEDE = 1585; literal SS$_WASECC = 1593; literal SS$_DEVALRALLOC = 1601; literal SS$_REMOTE = 1609; literal SS$_CONTROLC = 1617; literal SS$_NOTMODIFIED = 1625; literal SS$_RDDELDATA = 1633; literal SS$_OVRDSKQUOTA = 1641; literal SS$_OBSOLETE_1 = 1649; literal SS$_FILEPURGED = 1657; literal SS$_NOTALLPRIV = 1665; literal SS$_SYNCH = 1673; literal SS$_CONCEALED = 1681; literal SS$_INCOMPAT = 1689; literal SS$_DBGOPCREQ = 1697; literal SS$_ALRDYCLOSED = 1705; literal SS$_LNMCREATED = 1713; literal SS$_ACEIDMATCH = 1721; literal SS$_DBGEVENT = 1729; literal SS$_REMOVED = 1737; literal SS$_QUEUED = 1745; literal SS$_SUBDISABLED = 1753; literal SS$_FORGET = 1761; literal SS$_PREPARED = 1769; literal SS$_NOMOREITEMS = 1777; literal SS$_VOLATILE = 1785; literal SS$_CLASSUPER = 1793; literal SS$_CONTINUE_64 = 1801; literal SS$_THREAD_UPCALL = 1809; literal SS$_CREATED_SHPT = 1817; literal SS$_PERSONADELPEND = 1825; literal SS$_DEVAVAIL = 1833; literal SS$_LONGGAP = 1841; literal SS$_BROKEN = 1849; literal SS$_QPOOL_DEL_INIT = 1857; literal SS$_UNUSED_1 = 1865; literal SS$_LOWPREC = 1873; ! ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 18 MORE MESSAGES IN THIS SECTION ***** ! ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 256-383 800-BFF 128 WARNING CODES ! literal SS$_ACCONFLICT = 2048; literal SS$_BADCHKSUM = 2056; literal SS$_BADFILEHDR = 2064; literal SS$_BADFILENAME = 2072; literal SS$_BADFILEVER = 2080; literal SS$_BADIRECTORY = 2088; literal SS$_CANCEL = 2096; literal SS$_DATAOVERUN = 2104; literal SS$_DEVALLOC = 2112; literal SS$_DEVASSIGN = 2120; literal SS$_DEVICEFULL = 2128; literal SS$_DEVNOTALLOC = 2136; literal SS$_DIRFULL = 2144; literal SS$_DUPFILENAME = 2152; literal SS$_ENDOFFILE = 2160; literal SS$_ENDOFTAPE = 2168; literal SS$_TMACTIVE = 2176; literal SS$_FCPREADERR = 2184; literal SS$_FCPREWNDERR = 2192; literal SS$_FCPSPACERR = 2200; literal SS$_FCPWRITERR = 2208; literal SS$_FILELOCKED = 2216; literal SS$_FILENUMCHK = 2224; literal SS$_FILESEQCHK = 2232; literal SS$_FILESTRUCT = 2240; literal SS$_HEADERFULL = 2248; literal SS$_IDXFILEFULL = 2256; literal SS$_MBFULL = 2264; literal SS$_NOHOMEBLK = 2272; literal SS$_NONEXPR = 2280; literal SS$_NONLOCAL = 2288; literal SS$_NOHANDLER = 2296; literal SS$_NOSIGNAL = 2304; literal SS$_NOSUCHDEV = 2312; literal SS$_NOSUCHFILE = 2320; literal SS$_RESIGNAL = 2328; literal SS$_UNWIND = 2336; literal SS$_UNWINDING = 2344; literal SS$_NOMOREFILES = 2352; literal SS$_BEGOFFILE = 2360; literal SS$_BLOCKCNTERR = 2368; literal SS$_MUSTCLOSEFL = 2376; literal SS$_WAITUSRLBL = 2384; literal SS$_ILLUSRLBLRD = 2392; literal SS$_ILLUSRLBLWT = 2400; literal SS$_ILLLBLAST = 2408; literal SS$_ENDOFUSRLBL = 2416; literal SS$_NOSUCHSEC = 2424; literal SS$_CLIFRCEXT = 2432; literal SS$_FCPREPSTN = 2440; literal SS$_TOOMANYVER = 2448; literal SS$_NOTVOLSET = 2456; literal SS$_ENDOFVOLUME = 2464; literal SS$_NOMOREPROC = 2472; literal SS$_NODEVAVL = 2480; literal SS$_NOTQUEUED = 2488; literal SS$_DGQINCOMP = 2496; literal SS$_DIRALLOC = 2504; literal SS$_ACLEMPTY = 2512; literal SS$_NOENTRY = 2520; literal SS$_NOMOREACE = 2528; literal SS$_RIGHTSFULL = 2536; literal SS$_VALNOTVALID = 2544; literal SS$_ACLFULL = 2552; literal SS$_NOMORENODE = 2560; literal SS$_NOMORELOCK = 2568; literal SS$_BEGOFTAPE = 2576; literal SS$_OBJLOCKHELD = 2584; literal SS$_CPUSTARTIP = 2592; literal SS$_ALLSTARTED = 2600; literal SS$_ALRDYSTRT = 2608; literal SS$_ALRDYSTPPD = 2616; literal SS$_NSTPPD = 2624; literal SS$_UNKRESULT = 2632; literal SS$_ITEMNOTFOUND = 2640; literal SS$_NOMOREDEV = 2648; literal SS$_EFNOTSET = 2656; literal SS$_PRIMNOSTP = 2664; literal SS$_BOOTREJECT = 2672; literal SS$_RMTPATH = 2680; literal SS$_OBJECT_EXISTS = 2688; literal SS$_NOSUCHOBJECT = 2696; literal SS$_NOVOLDESC = 2704; literal SS$_NOPTBLDIR = 2712; literal SS$_DRVEXISTS = 2720; literal SS$_DEVEXISTS = 2728; literal SS$_GOTO_UNWIND = 2736; literal SS$_EXIT_UNWIND = 2744; literal SS$_SMALLHEADER = 2752; literal SS$_FDT_COMPL = 2760; literal SS$_TARGET_UNWIND = 2768; literal SS$_TARGET_GOTO_UNWIND = 2776; literal SS$_RESIGNAL_64 = 2784; literal SS$_NOMOREREG = 2792; literal SS$_PAGNOTINREG = 2800; literal SS$_REGISFULL = 2808; literal SS$_PAGTYPVIO = 2816; literal SS$_NOSUCHPAG = 2824; literal SS$_PAGNOTWRITE = 2832; literal SS$_NOMORETHREAD = 2840; literal SS$_NOTF11ODS5 = 2848; literal SS$_NOCONVJNL = 2856; literal SS$_MPDEVBUSY = 2864; literal SS$_MPDEVUSERDISABLE = 2872; literal SS$_NOCPUMATCH = 2880; literal SS$_NOMORECLIENTS = 2888; literal SS$_NOMOREDEVICES = 2896; literal SS$_NOMOREFILTERS = 2904; literal SS$_NOMOREPATHS = 2912; literal SS$_NOMORESERVERS = 2920; literal SS$_FISH = 2928; literal SS$_FILENOTCACHED = 2936; literal SS$_INSF_SHM_REG = 2944; literal SS$_HBMMNOTENABLED = 2952; literal SS$_HBMMALREADYON = 2960; literal SS$_NODEVPOL = 2968; literal SS$_NONAMPOL = 2976; literal SS$_XVALNOTVALID = 2984; literal SS$_FILEFULL = 2992; literal SS$_REMINDER = 3000; ! ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 8 MORE WARNING MESSAGES IN ABOVE SECTION ***** ! ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 384-447 C00-DFF 64 INFORMATIONAL CODES ! literal SS$_EOTIN = 3075; literal SS$_CHAINW = 3083; literal SS$_NOTINSEC = 3091; literal SS$_NONXPAG = 3099; literal SS$_LOGNAME = 3107; literal SS$_CPUSTARTD = 3115; literal SS$_CPUSTOPPING = 3123; literal SS$_NOTALLCANCELED = 3131; literal SS$_NOTHINGDONE = 3139; literal SS$_EVTNOTENAB = 3147; literal SS$_NOPATHTBL = 3155; literal SS$_RESELECTION = 3163; literal SS$_EMULATED = 3171; literal SS$_REMDONE = 3179; literal SS$_REMINPROG = 3187; literal SS$_DEVCON = 3195; literal SS$_DEVNOTCON = 3203; literal SS$_CPUSELECTED = 3211; literal SS$_QPOOL_DEL_INPRG = 3219; literal SS$_PRESTO = 3227; literal SS$_TAKEN_BRANCH = 3235; literal SS$_IA32_TRAP = 3243; literal SS$_DEBUG_FAULT = 3251; literal SS$_BREAK_APPL = 3259; literal SS$_TIE_GET_FRAMES = 3267; literal SS$_TIE_PRE_UNWIND = 3275; literal SS$_TIE_UNWIND = 3283; literal SS$_TIE_GOTO_UNWIND = 3291; literal SS$_HBMMCREPOSTMRG = 3299; literal SS$_FPMODECTL = 3307; literal SS$_FPMODEPC = 3315; literal SS$_FPMODERC = 3323; literal SS$_ARGTYP1 = 3331; literal SS$_ARGTYP2 = 3339; literal SS$_ARGTYP3 = 3347; literal SS$_ARGTYP4 = 3355; literal SS$_ARGTYP5 = 3363; literal SS$_ARGTYP6 = 3371; literal SS$_ARGTYP7 = 3379; literal SS$_ARGTYP8 = 3387; literal SS$_DEFER_ASTS = 3395; ! ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 23 MORE MESSAGES IN THIS SECTION ***** ! ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 448-511 E00-FFF 64 NONFATAL ERROR CODES ! literal SS$_LINEABRT = 3586; literal SS$_DEADLOCK = 3594; literal SS$_NOLOCKID = 3602; literal SS$_EXDEPTH = 3610; literal SS$_PARTMAPPED = 3618; literal SS$_CANCELGRANT = 3626; literal SS$_RETRY = 3634; literal SS$_BADACL = 3642; literal SS$_ACEEXISTS = 3650; literal SS$_UNSUPPORTED = 3658; literal SS$_NORIGHTSDB = 3666; literal SS$_LOGSTALL = 3674; literal SS$_LOGFULL = 3682; literal SS$_PWDINDIC = 3690; literal SS$_PWDINHIS = 3698; literal SS$_PWDWEAK = 3706; literal SS$_USEGENPWD = 3714; literal SS$_INVBUSNAM = 3722; literal SS$_INVCOMPTYPE = 3730; literal SS$_INVCOMPID = 3738; literal SS$_INVCOMPLIST = 3746; literal SS$_NOCOMPLSTS = 3754; literal SS$_INVSECDOMAIN = 3762; literal SS$_BADCHECKSUM = 3770; literal SS$_ARBTOOBIG = 3778; literal SS$_ORBTOOBIG = 3786; literal SS$_INVAJLNAM = 3794; literal SS$_TOOMANYAJL = 3802; literal SS$_RSDMINUSE = 3810; literal SS$_RSDMNOTFOU = 3818; literal SS$_INVUICGRP = 3826; literal SS$_RSDM_ACTIVE = 3834; literal SS$_OBJLOCKED = 3842; literal SS$_NOTMPNAM = 3850; literal SS$_INVCLSITM = 3858; literal SS$_NOTSHRTBL = 3866; literal SS$_MMATORB = 3874; literal SS$_NOSUCHVOL = 3882; literal SS$_OBJNOTLOCKED = 3890; literal SS$_ILLRSDM = 3898; literal SS$_NOCLASSSUPPORT = 3906; literal SS$_INVSECOPER = 3914; literal SS$_NODELJNLACT = 3922; literal SS$_INVFILFOROP = 3930; literal SS$_NOOBJSRV = 3938; literal SS$_NOFILEACCESS = 3946; literal SS$_BADFILESIZE = 3954; literal SS$_NOTFULLYMAPPED = 3962; literal SS$_BADWINCNT = 3970; literal SS$_BADWINLBN = 3978; literal SS$_BADWINRVN = 3986; literal SS$_EXTRAWINDOW = 3994; literal SS$_REVISED = 4002; literal SS$_TIMENOTSET = 4010; literal SS$_WAIT_CALLERS_MODE = 4018; literal SS$_NOT_LOADED = 4026; literal SS$_DRV_NOUNLOAD = 4034; literal SS$_INVARG = 4042; literal SS$_QIO_CROCK = 4050; literal SS$_ALTER = 4058; literal SS$_AFR_ENABLED = 4066; literal SS$_AFR_NOT_ENABLED = 4074; literal SS$_SHELFERROR = 4082; literal SS$_PERSONANONGRATA = 4090; ! ************** ! NOTE: THE ABOVE SET OF NONFATAL ERROR MESSAGES IS FULL!!!! ! ANY ADDITIONAL NONFATAL ERROR MESSAGES MUST BE ADDED ! BELOW, IN THE RANGE HEX 2C00-33FF. ! ************** ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 1280-1343 2800-29FF 64 NO PRIVILEGE ERRORS ! ! ! NB: THESE MESSAGES MUST BE KEPT IN THE SAME ORDER AS THE PRIVILEGE BIT ! DEFINITIONS ($PRVDEF) AS THE PRIVILEGE BIT POSITION IS USED AS AN INDEX INTO ! THESE MESSAGE CODES BY THE $CHECK_PRIVILEGE SYSTEM SERVICE. ! literal SS$_NOPRIVSTRT = 10240; literal SS$_NODETACH = 10284; literal SS$_NOCMKRNL = 10244; literal SS$_NOCMEXEC = 10252; literal SS$_NOSYSNAM = 10260; literal SS$_NOGRPNAM = 10268; literal SS$_NOALLSPOOL = 10276; literal SS$_NOIMPERSONATE = 10284; literal SS$_NODIAGNOSE = 10292; literal SS$_NOLOG_IO = 10300; literal SS$_NOGROUP = 10308; literal SS$_NOACNT = 10316; literal SS$_NOPRMCEB = 10324; literal SS$_NOPRMMBX = 10332; literal SS$_NOPSWAPM = 10340; literal SS$_NOALTPRI = 10348; literal SS$_NOSETPRV = 10356; literal SS$_NOTMPMBX = 10364; literal SS$_NOWORLD = 10372; literal SS$_NOMOUNT = 10380; literal SS$_NOOPER = 10388; literal SS$_NOEXQUOTA = 10396; literal SS$_NONETMBX = 10404; literal SS$_NOVOLPRO = 10412; literal SS$_NOPHY_IO = 10420; literal SS$_NOBUGCHK = 10428; literal SS$_NOPRMGBL = 10436; literal SS$_NOSYSGBL = 10444; literal SS$_NOPFNMAP = 10452; literal SS$_NOSHMEM = 10460; literal SS$_NOSYSPRV = 10468; literal SS$_NOBYPASS = 10476; literal SS$_NOSYSLCK = 10484; literal SS$_NOSHARE = 10492; literal SS$_NOUPGRADE = 10500; literal SS$_NODOWNGRADE = 10508; literal SS$_NOGRPPRV = 10516; literal SS$_NOREADALL = 10524; literal SS$_NOIMPORT = 10532; literal SS$_NOAUDIT = 10540; literal SS$_NOSECURITY = 10548; literal SS$_NOPRIVEND = 10751; ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 1344-1375 2A00-2AFF 32 EXCEEDED QUOTA ERRORS ! literal SS$_EXQUOTASTRT = 10752; literal SS$_EXASTLM = 10756; literal SS$_EXBIOLM = 10764; literal SS$_EXBYTLM = 10772; literal SS$_EXDIOLM = 10780; literal SS$_EXFILLM = 10788; literal SS$_EXPGFLQUOTA = 10796; literal SS$_EXPRCLM = 10804; literal SS$_EXTQELM = 10812; literal SS$_EXENQLM = 10820; ! SYSTEMWIDE QUOTA -- WORK FROM END OF REGION literal SS$_EXBUFOBJLM = 11004; literal SS$_EXQUOTAEND = 11007; ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 1376-1407 2B00-2BFF 32 RESERVED FOR MEDIA MGMT EXTENSIONS ! literal SS$_MMSFAILED = 11012; literal SS$_QPOOL_DEL_BUSY = 11020; ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 1 MORE MESSAGE IN THIS SECTION ***** literal SS$_TOOFEWDEV = 11032; literal SS$_AVRWAIT = 11040; ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 3 MORE MESSAGES IN THIS SECTION ***** literal SS$_NO_MMS = 11075; literal SS$_MMSREADY = 11083; literal SS$_MMSNOTREADY = 11091; literal SS$_SKIP_CHECKS = 11099; literal SS$_NO_NOTIFY = 11107; literal SS$_SKIP_EXPIRATION = 11115; literal SS$_NOTATBOT = 11123; literal SS$_PREVDENS = 11131; ! A NEW BASE SHOULD BE CREATED FOR INFORMATIONALS ! ***** NOTE: ROOM FOR 0 MORE MESSAGES IN ABOVE SECTION ***** literal SS$_RDBERR = 11140; literal SS$_MDMSERR = 11148; literal SS$_IVMEDTYP = 11156; literal SS$_IVDENS = 11164; literal SS$_IVPOOL = 11172; literal SS$_IVEXPDAT = 11180; literal SS$_NOCONFMEDIA = 11188; literal SS$_PTE_NOT_EMPTY = 11196; literal SS$_CPUNOTAVAIL = 11204; literal SS$_NOFASTPATH = 11212; literal SS$_EXITFORCED = 11220; literal SS$_FORCEX = 11228; ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 1408-1663 2C00-33FF 256 NONFATAL ERROR CODES (CONTINUED FROM FFF) ! literal SS$_NOTASSUMING = 11266; literal SS$_ALREADYASSUMING = 11274; literal SS$_INUSE = 11282; literal SS$_USERDISABLED = 11290; literal SS$_NOCHJIB = 11298; literal SS$_NOTSUPFS = 11306; literal SS$_INSFTHREADS = 11314; literal SS$_NOBUFOBJID = 11322; literal SS$_NODELPERMANENT = 11330; literal SS$_NOMEMRESID = 11338; literal SS$_MRES_PFNSMALL = 11346; literal SS$_MRES_INCON = 11354; literal SS$_NORESERVEDMEM = 11362; literal SS$_RESERVEDMEMUSED = 11370; literal SS$_RES_MEM_INCON = 11378; literal SS$_NOSHPTS = 11386; literal SS$_FLUSHFAIL = 11394; literal SS$_NOTINSTALLED = 11402; literal SS$_POOLDEVEXISTS = 11410; literal SS$_NOUNITS = 11418; literal SS$_NOTAPOOL = 11426; literal SS$_MISSINGUNITS = 11434; literal SS$_DISKDEVEXISTS = 11442; literal SS$_TOOMANYUNITS = 11450; literal SS$_NOTINPOOL = 11458; literal SS$_WRONGPOOL = 11466; literal SS$_ALRBOUND = 11474; literal SS$_NOTPOOLMOUNTED = 11482; literal SS$_POOLINUSE = 11490; literal SS$_DISKINUSE = 11498; literal SS$_SDDISABLED = 11506; literal SS$_UNITINPOOL = 11514; literal SS$_FAMILYTOOBIG = 11522; literal SS$_NODISKNAME = 11530; literal SS$_DISKNAMEEXISTS = 11538; literal SS$_INSUFFREESEGS = 11546; literal SS$_NOTBOUND = 11554; literal SS$_TOOMANYFRAGS = 11562; literal SS$_TOOMANYFAMILIES = 11570; literal SS$_DISKISBOUND = 11578; literal SS$_SNAPINFAM = 11586; literal SS$_CHKSNAPVER = 11594; literal SS$_BADSNAPVER = 11602; literal SS$_SD_RESERVED4 = 11610; literal SS$_SD_RESERVED5 = 11618; literal SS$_SECREFOVF = 11626; literal SS$_DATAERR = 11634; literal SS$_INVPFN = 11642; literal SS$_INV_SHMEM = 11650; literal SS$_INV_SHM_CPP = 11658; literal SS$_INV_SHM_REG = 11666; literal SS$_ONEMAPPER = 11674; literal SS$_NOSUCHEXT = 11682; literal SS$_CBKEXISTS = 11690; literal SS$_NOSUCHCBK = 11698; literal SS$_NOTAMEMBER = 11706; literal SS$_GLXSPIUNAVAIL = 11714; literal SS$_MPDEVILLCURPATH = 11722; literal SS$_MPDEVINCOMPAT = 11730; literal SS$_MPDEVNOT = 11738; literal SS$_MPDEVNOTCONF = 11746; literal SS$_PERSONARESERVED = 11754; literal SS$_WRONGDRV = 11762; literal SS$_BADRAD = 11770; literal SS$_INVQSRFNC = 11778; literal SS$_NOQIOSERVER = 11786; literal SS$_INCLASS = 11794; literal SS$_INVBOOTDEV = 11802; literal SS$_CLIENT_UNAVAILABLE = 11810; literal SS$_CONFIGFILE_ERROR = 11818; literal SS$_INVDEVALLOC = 11826; literal SS$_DEVICE_UNAVAILABLE = 11834; literal SS$_INVDEVMOUNT = 11842; literal SS$_LOGGING_DISABLED = 11850; literal SS$_NOSUCHCLIENT = 11858; literal SS$_NOSUCHDEVICE = 11866; literal SS$_NOSUCHFILTER = 11874; literal SS$_NOSUCHPATH = 11882; literal SS$_NOSUCHSERVER = 11890; literal SS$_RQSTIMOUT = 11898; literal SS$_SERVER_UNAVAILABLE = 11906; literal SS$_QSRVINTERR = 11914; literal SS$_NOADD = 11922; literal SS$_SYSTEMUIC = 11930; literal SS$_NOSUCHQPOOLID = 11938; literal SS$_PATHAMBIG = 11946; literal SS$_INVMVIP = 11954; literal SS$_NOPATHAVAIL = 11962; literal SS$_NOENACURINV = 11970; literal SS$_TRUSTCONF = 11978; literal SS$_QIO_FAULT = 11986; literal SS$_HBVS_REDO_IO = 11994; literal SS$_TOOMANYPERSONA = 12002; literal SS$_INVKTLIM = 12010; ! ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 162 MORE NONFATAL MESSAGES IN ABOVE SECTION ***** ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 1664-1695 3400-341F 32 FATAL ERROR CODES (CONTINUED FROM 27FF) literal SS$_MAXNAMPOL = 13316; literal SS$_HBMMENABLED = 13324; literal SS$_NOMODNONEPOL = 13332; literal SS$_SHADFEATNOMNT = 13340; literal SS$_NOTSUPALLNODES = 13348; literal SS$_WLGCANTHBMM = 13356; literal SS$_CALLUNDEFSYM = 13364; literal SS$_NOADDMCPYMBR = 13372; literal SS$_CANTDODDS = 13380; literal SS$_TOOMANYMBRS = 13388; literal SS$_SCBREADFAIL = 13396; literal SS$_SCBWRITEFAIL = 13404; literal SS$_NOMEMFORWBM = 13412; literal SS$_MUSTDMTVU = 13420; literal SS$_ONLYSRCMUSTSTAY = 13428; literal SS$_NOWBMDURINGCOPY = 13436; literal SS$_WBMERR = 13444; literal SS$_BADPOLCHAR = 13452; literal SS$_HBMMVERSIONBAD = 13460; literal SS$_ANADSKSHDBBLK = 13468; literal SS$_HBMMBADPOLSPEC = 13476; literal SS$_NOSHADOWSERVER = 13484; literal SS$_GAMEOVER = 13492; ! N.B. DO NOT CORRECT THE GRAMMAR IN GAMEOVER, THE MESSAGE IS AS INTENDED ! NEW SYMBOLS SHOULD BE ADDED IMMEDIATELY BEFORE THIS COMMENT ! ***** NOTE: ROOM FOR 9 MORE FATAL MESSAGES IN ABOVE SECTION ***** ! ! MSG #S RANGE # MSGS DESCRIPTION ! ! 4032-4095 7E00-7FFF 64 RESERVED FOR SCS SYSAPS ! ! MESSAGE CODES IN THIS BLOCK ARE GUARANTEED NOT TO ! BE TRANSLATED BY VMS WHEN THEY ARE SEND OUT BY VMSSCS ! OR WHEN THEY ARE RECEIVED BY VMSSCS. SCA SYSAPS ARE ! FREE TO USE THESE CODES IN ANY SYSAP-DEPENDENT MANNER ! IN WHICH THEY CHOOSE. ! ! THIS ADDRESS OF THIS BLOCK OF CODES MUST BE IN CONFORMANCE ! WITH THE SCA ARCHITECTURE, I.E., MUST NOT BE MOVED. ! literal SS$_SYSAPMIN = 32256; literal SS$_SYSAPMAX = 32767; ! ! ---- < End of module SSMSG.R32 - 12-AUG-2010 13:57:04.94 > - ! !Version: X-4 ! ! COPYRIGHT (c) 1990 BY ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. ! ALL RIGHTS RESERVED. ! ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED ! ONLY IN ACCORDANCE OF THE TERMS OF SUCH LICENSE AND WITH THE ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY ! TRANSFERRED. ! ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT ! CORPORATION. ! ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. !++ ! FACILITY: ! ! VMSLIB -- BIGPAGE_MACROS_STARLET.REQ ! ! ABSTRACT: ! ! The macros defined in this file are used by any applications ! to provide commonality in varying page size implementations. ! ! AUTHORS: ! ! Robert F. Hoffman ! ! CREATION DATE: 20 June 1990 ! ! MODIFICATION HISTORY: ! ! X-4 Karen L. Noel KLN1322 20-Sep-1994 ! 64-Bit project: internal programming ! Add process/system space macros. ! ! X-3 Karen L. Noel KLN1322 14-Sep-1994 ! Add $IS_32BITS macro. ! ! X-2 Robert F. Hoffman RFH002 23-Apr-1991 ! Fix conditionalization on VAXPAGE/BIGPAGE ! ! X-1 Robert F. Hoffman RFH001 20-Jun-1990 ! Create module. !-- KEYWORDMACRO $START_OF_PAGE (SOURCE_VA, DEST_VA, USER_MASK_ADDR)= ! ! USER_MASK_ADDR - location of application-computed (from pagesize ! returned by $GETSYI) byte-within-page mask ! Converts a virtual address to the address of the first byte ! within that page. ! ! .if ndf MMG$C_VAX_PAGE_SIZE ! $pagedf ! .endc %if %NULL(user_mask_addr) %then BEGIN %if VAXPAGE %then BEGIN %if %NULL(dest_va) %then source_va = .source_va AND (NOT MMG$C_VAX_PAGE_SIZE-1); %else !%NULL(dest_va) dest_va = .source_va AND (NOT MMG$C_VAX_PAGE_SIZE-1); %fi !%NULL(dest_va) END %fi !VAXPAGE %if BIGPAGE %then BEGIN %if %NULL(dest_va) %then source_va = .source_va AND (NOT .MMG$GL_BWP_MASK); %else !%NULL(dest_va) dest_va = .source_va AND (NOT .MMG$GL_BWP_MASK); %fi !%NULL(dest_va) END %fi !BIGPAGE END %else !%NULL(user_mask_addr) BEGIN %if %NULL(dest_va) %then source_va = .source_va AND (NOT .user_mask_addr); %else !%NULL(dest_va) dest_va = .source_va AND (NOT .user_mask_addr); %fi !%NULL(dest_va) END %fi !%NULL(user_mask_addr) %; KEYWORDMACRO $NEXT_PAGE (SOURCE_VA, DEST_VA, CLEARBWP=NO, USER_PAGESIZE_ADDR, USER_MASK_ADDR)= ! ! CLEARBWP - if YES, masks the Byte-within-page portion of the VA. ! Adds pagesize to address. The CLEARBWP=NO option is a performance ! enhancement, avoiding unnecessary instructions where you ! know you are starting on a page boundary or you are ! intending to divide by pagesize anyway. ! ! .if ndf MMG$C_VAX_PAGE_SIZE ! $pagedf ! .endc %IF %NULL(user_pagesize_addr) %THEN BEGIN %IF VAXPAGE %THEN BEGIN %IF %NULL(dest_va) %THEN BEGIN source_va = .source_va + MMG$C_VAX_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN source_va = .source_va AND (NOT MMG$C_VAX_PAGE_SIZE-1); %FI !if %IDENTICAL(CLEARBWP,YES) END %ELSE !%NULL(dest_va) BEGIN dest_va = .source_va + MMG$C_VAX_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN dest_va = .dest_va AND (NOT MMG$C_VAX_PAGE_SIZE-1); %FI !if %IDENTICAL(CLEARBWP,YES) END %FI !%NULL(dest_va) END %FI !VAXPAGE %IF BIGPAGE %THEN BEGIN %IF %NULL(dest_va) %THEN BEGIN source_va = .source_va + .MMG$GL_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN source_va = .source_va AND (NOT .MMG$GL_BWP_MASK); %FI !if %IDENTICAL(CLEARBWP,YES) END %ELSE !%NULL(dest_va) BEGIN dest_va = .source_va + .MMG$GL_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN dest_va = .dest_va AND (NOT .MMG$GL_BWP_MASK); %FI !if %IDENTICAL(CLEARBWP,YES) END %FI !%NULL(dest_va) END %FI !BIGPAGE END %ELSE !%NULL(user_pagesize_addr) BEGIN %IF %NULL(dest_va) %THEN BEGIN source_va = .source_va + user_pagesize_addr; %IF %IDENTICAL(CLEARBWP,YES) %THEN BEGIN %IF %NULL(user_mask_addr) %THEN source_va = .source_va AND (NOT (.user_pagesize_addr - 1)); %ELSE !%NULL(user_mask_addr) source_va = .source_va AND (NOT .user_mask_addr); %FI !%NULL(user_mask_addr) END %FI !%IDENTICAL(CLEARBWP,YES) END %ELSE !%NULL(dest_va) BEGIN dest_va = .source_va + .user_pagesize_addr; %IF %IDENTICAL(CLEARBWP,YES) %THEN BEGIN %IF %NULL(user_mask_addr) %THEN dest_va = .dest_va AND (NOT (.user_pagesize_addr - 1)); %ELSE !%NULL(user_mask_addr) dest_va = .dest_va AND (NOT .user_mask_addr); %FI !%NULL(user_mask_addr) END %FI !%IDENTICAL(CLEARBWP,YES) END %FI !%NULL(dest_va) END %FI !%NULL(user_pagesize_addr) %; KEYWORDMACRO $PREVIOUS_PAGE (SOURCE_VA, DEST_VA, CLEARBWP=NO, USER_PAGESIZE_ADDR, USER_MASK_ADDR)= ! ! CLEARBWP - if YES, masks the Byte-within-page portion of the VA. ! Subtracts pagesize from address. The CLEARBWP=NO option is a performance ! enhancement, avoiding unnecessary instructions where you ! know you are starting on a page boundary or you are ! intending to divide by pagesize anyway. ! ! ! .if ndf MMG$C_VAX_PAGE_SIZE ! $pagedf ! .endc %IF %NULL(user_pagesize_addr) %THEN BEGIN %IF VAXPAGE %THEN BEGIN %IF %NULL(dest_va) %THEN BEGIN source_va = .source_va - MMG$C_VAX_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN source_va = .source_va AND (NOT MMG$C_VAX_PAGE_SIZE-1); %FI !if %IDENTICAL(CLEARBWP,YES) END %ELSE !%NULL(dest_va) BEGIN dest_va = .source_va - MMG$C_VAX_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN dest_va = .dest_va AND (NOT MMG$C_VAX_PAGE_SIZE-1); %FI !if %IDENTICAL(CLEARBWP,YES) END %FI !%NULL(dest_va) END %FI !VAXPAGE %IF BIGPAGE %THEN BEGIN %IF %NULL(dest_va) %THEN BEGIN source_va = .source_va - .MMG$GL_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN source_va = .source_va AND (NOT .MMG$GL_BWP_MASK); %FI !if %IDENTICAL(CLEARBWP,YES) END %ELSE !%NULL(dest_va) BEGIN dest_va = .source_va - .MMG$GL_PAGE_SIZE; %IF %IDENTICAL(CLEARBWP,YES) %THEN dest_va = .dest_va AND (NOT .MMG$GL_BWP_MASK); %FI !if %IDENTICAL(CLEARBWP,YES) END %FI !%NULL(dest_va) END %FI !BIGPAGE END %ELSE !%NULL(user_pagesize_addr) BEGIN %IF %NULL(dest_va) %THEN BEGIN source_va = .source_va - user_pagesize_addr; %IF %IDENTICAL(CLEARBWP,YES) %THEN BEGIN %IF %NULL(user_mask_addr) %THEN source_va = .source_va AND (NOT (.user_pagesize_addr - 1)); %ELSE !%NULL(user_mask_addr) source_va = .source_va AND (NOT .user_mask_addr); %FI !%NULL(user_mask_addr) END %FI !%IDENTICAL(CLEARBWP,YES) END %ELSE !%NULL(dest_va) BEGIN dest_va = .source_va - .user_pagesize_addr; %IF %IDENTICAL(CLEARBWP,YES) %THEN BEGIN %IF %NULL(user_mask_addr) %THEN dest_va = .dest_va AND (NOT (.user_pagesize_addr - 1)); %ELSE !%NULL(user_mask_addr) dest_va = .dest_va AND (NOT .user_mask_addr); %FI !%NULL(user_mask_addr) END %FI !%IDENTICAL(CLEARBWP,YES) END %FI !%NULL(dest_va) END %FI !%NULL(user_pagesize_addr) %; KEYWORDMACRO $PAGES_TO_BYTES (SOURCE_PAGCNT, DEST_BYTCNT, LEFTSHIFT)= ! ! LEFTSHIFT - location of application-computed value ! to shift (in lieu of multiply/divide), defaults to ! MMG$GL_xxx in SYSTEM_DATA_CELLS. ! Similar to EXTRACT_VPN and MAKE_VA, but leaves high bits alone ! and in the proper context more clearly describes the ! intent of the operation. ! %IF %NULL(leftshift) %THEN %IF VAXPAGE %THEN %IF %NULL(dest_bytcnt) %THEN source_pagcnt = .source_pagcnt ^ VA$V_VPN; %ELSE dest_bytcnt = .source_pagcnt ^ VA$V_VPN; %FI %FI %IF BIGPAGE %THEN %IF %NULL(dest_bytcnt) %THEN source_pagcnt = .source_pagcnt ^ .MMG$GL_VPN_TO_VA; %ELSE dest_bytcnt = .source_pagcnt ^ .MMG$GL_VPN_TO_VA; %FI %FI %ELSE !%NULL(leftshift) %IF %NULL(dest_bytcnt) %THEN source_pagcnt = .source_pagcnt ^ .leftshift; %ELSE dest_bytcnt = .source_pagcnt ^ .leftshift; %FI %FI !%NULL(leftshift) %; KEYWORDMACRO $BYTES_TO_PAGES (SOURCE_BYTCNT, DEST_PAGCNT, RIGHTSHIFT, ROUNDUP=YES)= ! ! RIGHTSHIFT - location of application-computed value ! to shift (in lieu of multiply/divide), defaults to ! MMG$GL_xxx in SYSTEM_DATA_CELLS. ! ROUNDUP - if YES, pagesize-1 is added to byte count before ! shifting! if NO, page count is truncated! any other ! value is treated as the user specified address of the ! pagesize-1 value ! - Note that ROUNDUP=YES and RIGHTSHIFT=user_shift doesn't ! make sense and will generate an error ! Similar to EXTRACT_VPN and MAKE_VA, but leaves high bits alone ! and in the proper context more clearly describes the ! intent of the operation. ! %IF %IDENTICAL(ROUNDUP,YES) %THEN BEGIN %IF %NULL(rightshift) %THEN BEGIN %IF VAXPAGE %THEN BEGIN %IF %NULL(dest_pagcnt) %THEN source_bytcnt = (.source_bytcnt + MMG$C_VAX_PAGE_SIZE-1) ^ -VA$V_VPN; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = (.source_bytcnt + MMG$C_VAX_PAGE_SIZE-1) ^ -VA$V_VPN; %FI !%NULL(dest_pagcnt) END %FI !VAXPAGE %IF BIGPAGE %THEN BEGIN %IF %NULL(dest_pagcnt) %THEN source_bytcnt = (.source_bytcnt + .MMG$GL_BWP_MASK) ^ .MMG$GL_VA_TO_VPN; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = (.source_bytcnt + .MMG$GL_BWP_MASK) ^ .MMG$GL_VA_TO_VPN; %FI !%NULL(dest_pagcnt) END %FI !BIGPAGE END %ELSE !%NULL(rightshift) %ERROR('Inconsistent Macro invocation') %FI !%NULL(rightshift) END %ELSE !%IDENTICAL(ROUNDUP,YES) BEGIN %IF %IDENTICAL(ROUNDUP,NO) %THEN BEGIN %IF %NULL(rightshift) %THEN BEGIN %IF VAXPAGE %THEN %IF %NULL(dest_pagcnt) %THEN source_bytcnt = .source_bytcnt ^ -VA$V_VPN; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = .source_bytcnt ^ -VA$V_VPN; %FI !%NULL(dest_pagcnt) %FI !VAXPAGE %IF %DECLARED(bigpage) %THEN %IF %NULL(dest_pagcnt) %THEN source_bytcnt = .source_bytcnt ^ .MMG$GL_VA_TO_VPN; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = .source_bytcnt ^ .MMG$GL_VA_TO_VPN; %FI !%NULL(dest_pagcnt) %FI !%DECLARED(bigpage) END %ELSE !%NULL(rightshift) %IF %NULL(dest_pagcnt) %THEN source_bytcnt = .source_bytcnt ^ .rightshift; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = .source_bytcnt ^ .rightshift; %FI !%NULL(dest_pagcnt) %FI !%NULL(rightshift) END %ELSE !%IDENTICAL(ROUNDUP,NO) BEGIN %IF VAXPAGE %THEN %IF %NULL(dest_pagcnt) %THEN source_bytcnt = (.source_bytcnt + .roundup) ^ -VA$V_VPN; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = (.source_bytcnt + .roundup) ^ -VA$V_VPN; %FI !%NULL(dest_pagcnt) %FI !VAXPAGE %IF BIGPAGE %THEN %IF %NULL(dest_pagcnt) %THEN source_bytcnt = (.source_bytcnt + .roundup) ^ .MMG$GL_VA_TO_VPN; %ELSE !%NULL(dest_pagcnt) dest_pagcnt = (.source_bytcnt + .roundup) ^ .MMG$GL_VA_TO_VPN; %FI !%NULL(dest_pagcnt) %FI !BIGPAGE END %FI !%IDENTICAL(ROUNDUP,NO) END %FI !%IDENTICAL(ROUNDUP,YES) %; KEYWORDMACRO $ROUND_RETADR (RETADR, FULL_RANGE, USER_MASK_ADDR, DIRECTION=ASCENDING)= ! ! RETADR - address of array of two 32-bit addresses, typically ! returned from $CRMPSC or similar service! may be in ! form of label or (Rx). ! FULL_RANGE - output array of two longwords, FULL_RANGE[0] is ! RETADR[0] rounded down to CPU-specific page boundary ! and FULL_RANGE[1] is RETADR[1] rounded up ! USER_MASK_ADDR - location of application-computed (from pagesize ! returned by $GETSYI) byte-within-page mask - if blank, ! uses MMG$GL_BWP_MASK ! DIRECTION - ASCENDING: RETADR[0] < RETADR[1] ! DESCENDING: RETADR[1] < RETADR[0] ! UNKNOWN: Macro will test ! %IF %IDENTICAL(DIRECTION,ASCENDING) %THEN %IF %NULL(user_mask_addr) %THEN BEGIN %IF VAXPAGE %THEN BEGIN full_range = .retadr AND (NOT MMG$C_VAX_PAGE_SIZE-1); full_range+4 = .(retadr+4) OR MMG$C_VAX_PAGE_SIZE-1; END %FI !VAXPAGE %IF BIGPAGE %THEN BEGIN full_range = .retadr AND (NOT .MMG$GL_BWP_MASK); full_range+4 = .(retadr+4) OR .MMG$GL_BWP_MASK; END %FI !BIGPAGE END %ELSE !%NULL(user_mask_addr) BEGIN full_range = .retadr AND (NOT .user_mask_addr); full_range+4 = .(retadr+4) OR .user_mask_addr; END %FI !%NULL(user_mask_addr) %FI !%IDENTICAL(DIRECTION,ASCENDING) %IF %IDENTICAL(DIRECTION,DESCENDING) %THEN %IF %NULL(user_mask_addr) %THEN BEGIN %IF VAXPAGE %THEN BEGIN full_range+4 = .(retadr+4) AND (NOT MMG$C_VAX_PAGE_SIZE-1); full_range = .retadr OR MMG$C_VAX_PAGE_SIZE-1; END %FI !VAXPAGE %IF BIGPAGE %THEN BEGIN full_range+4 = .(retadr+4) AND (NOT .MMG$GL_BWP_MASK); full_range = .retadr OR .MMG$GL_BWP_MASK; END %FI !BIGPAGE END %ELSE !%NULL(user_mask_addr) BEGIN full_range+4 = .(retadr+4) AND (NOT .user_mask_addr); full_range = .retadr OR .user_mask_addr; END %FI !%NULL(user_mask_addr) %FI !%IDENTICAL(DIRECTION,DESCENDING) %IF %IDENTICAL(DIRECTION,UNKNOWN) %THEN %IF %NULL(user_mask_addr) %THEN BEGIN %IF VAXPAGE %THEN BEGIN IF .(retadr+4) GTRA .retadr THEN BEGIN full_range = .retadr AND (NOT MMG$C_VAX_PAGE_SIZE-1); full_range+4 = .(retadr+4) OR MMG$C_VAX_PAGE_SIZE-1; END ELSE BEGIN full_range+4 = .(retadr+4) AND (NOT MMG$C_VAX_PAGE_SIZE-1); full_range = .retadr OR MMG$C_VAX_PAGE_SIZE-1; END END %FI !VAXPAGE %IF BIGPAGE %THEN BEGIN IF .(retadr+4) GTRA .retadr THEN BEGIN full_range = .retadr AND (NOT .MMG$GL_BWP_MASK); full_range+4 = .(retadr+4) OR .MMG$GL_BWP_MASK; END ELSE BEGIN full_range+4 = .(retadr+4) AND (NOT .MMG$GL_BWP_MASK); full_range = .retadr OR .MMG$GL_BWP_MASK; END END %FI !BIGPAGE END %ELSE !%NULL(user_mask_addr) BEGIN IF .(retadr+4) GTRA .retadr THEN BEGIN full_range = .retadr AND (NOT .user_mask_addr); full_range+4 = .(retadr+4) OR .user_mask_addr; END ELSE BEGIN full_range+4 = .(retadr+4) AND (NOT .user_mask_addr); full_range = .retadr OR .user_mask_addr; END END %FI !%NULL(user_mask_addr) %FI !%IDENTICAL(DIRECTION,UNKNOWN) %; KEYWORDMACRO $IS_32BITS (ARG)= ! ! ARG - 64-bit argument ! BEGIN LOCAL temp: SIGNED LONG; ! Local 32-bit sign-extended copy of arg temp = arg; (arg EQLU .temp) END%; KEYWORDMACRO $IS_P0_VA (VA)= ! ! Returns 1 if VA is a P0 space address. ! ($IS_32BITS (arg=va) AND ((va AND VA$M_P1) NEQ VA$M_P1) AND ((va AND VA$M_SYSTEM) NEQ VA$M_SYSTEM)) %; KEYWORDMACRO $IS_P1_VA (VA)= ! ! Returns 1 if VA is a P1 space address. ! ($IS_32BITS (arg=va) AND ((va AND VA$M_P1) EQL VA$M_P1) AND ((va AND VA$M_SYSTEM) NEQ VA$M_SYSTEM)) %; KEYWORDMACRO $IS_P2_VA (VA,PROCESS_LIMIT)= ! ! Returns 1 if VA is a P2 space address. ! (NOT $IS_32BITS (arg=va) AND %IF %NULL (process_limit) %THEN (va LSSU .mmg$gq_process_space_limit)) %ELSE (va LSSU process_limit)) %FI %; KEYWORDMACRO $IS_PROCESS_VA (VA,PROCESS_LIMIT)= ! ! Returns 1 if VA is a process space address. ! %IF %NULL (process_limit) %THEN (va LSSU .mmg$gq_process_space_limit) %ELSE (va LSSU process_limit) %FI %; KEYWORDMACRO $IS_S2_VA (VA,SYSTEM_BASE)= ! ! Returns 1 if VA is an S2 space address. ! (NOT $IS_32BITS (arg=va) AND %IF %NULL (system_base) %THEN (va GEQU .mmg$gq_system_virtual_base)) %ELSE (va GEQU system_base)) %FI %; KEYWORDMACRO $IS_S0S1_VA (VA)= ! ! Returns 1 if VA is a S0S1 space address. ! ($IS_32BITS (arg=va) AND ((va AND VA$M_SYSTEM) EQL VA$M_SYSTEM)) %; KEYWORDMACRO $IS_SYSTEM_VA (VA,SYSTEM_BASE)= ! ! Returns 1 if VA is an S2 space address. ! %IF %NULL (system_base) %THEN (va GEQU .mmg$gq_system_virtual_base) %ELSE (va GEQU system_base) %FI %; ! ! ---- < End of module BIGPAGE_MACROS_STARLET.REQ - 12-AUG-2010 13:57:05.07 > - ! ! Version: 'X-21' ! !***************************************************************************** ! Copyright 2002 Compaq Information Technologies Group, L.P. ! ! Compaq and the Compaq logo are trademarks of Compaq Information ! Technologies Group, L.P. in the U.S. and/or other countries. ! ! Confidential computer software. Valid license from Compaq required for ! possession, use or copying. Consistent with FAR 12.211 and 12.212, ! Commercial Computer Software, Computer Software Documentation, and ! Technical Data for Commercial Items are licensed to the U.S. Government ! under vendor's standard commercial license. !****************************************************************************/ ! ! BUILTINS.B32 -- Macro replacements for Bliss-32V built-ins which are not ! in Bliss-32E. Also, redefine the Alpha PAL calls for non-Alpha systems. ! ! Written by: ! Eric Postpischil 30-Jul-1990 ! ! Modified by: ! ! X-21 WBF Burns Fisher 19-Sep-2003 ! Change PAL_CHMU to be a system service ! ! X-20 KLN3306 Karen L. Noel 17-Jun-2003 ! Remove mfpr_fen, mtpr_fen, mfpr_mces, mtpr_mces. ! ! X-19 Burns Fisher 06-May-2003 ! Change PAL_CHMS to be a system service (done for .MAR in March) ! ! X-18 Clair Grant 10-Dec-2002 ! For IA64 PAL_RSCC, use getreg rather than calling a service. ! ! X-17 Burns Fisher 24-Oct-2002 ! Define PAL_CHMU and PAL_CHMS, undefine MFPR_PCBB ! (since IPF version gets virtual address) ! ! X-16 Clair Grant 15-Aug-2002 ! Previous edit needs to in NOT ALPHA conditionalization. ! ! X-15 Clair Grant 14-Aug-2002 ! Redefine PAL_GENTRAP, PAL_BUGCHK, and PAL_BPT ! ! X-14 Clair Grant 10-Jun-2002 ! More conditionalization. ! ! X-13 Clair Grant 14-May-2002 ! Under conditionals, 32b and 64b version of CRC. ! (BUITLINS.B32 is now in LIB.L64.) ! ! X-12 Clair Grant 10-May-2002 ! In DEFINE_ROUTINE and DEFINE_BUILTIN, prevent multiple ! definitions. ! ! X-11 Clair Grant HP merger day ! Add DEFINE_BUILTIN macro ! ! X-10 Clair Grant 30-Apr-2002 ! Add a DEFINE_ROUTINE for each Alpha PAL call builtin. ! Replace PAL_HALT with BARRIER in a couple macros. ! ! X-9 TNS003 Tom Scarpelli 25-Jun-1993 ! Fix ASHQ when shift value is more than 64 bits. ! ! X-7 TNS003 Tom Scarpelli 9-Jun-1993 ! Fix MOVC5 when srclena and out0 are specified as ! the same variable. ! ! X-6 TNS002 Tom Scarpelli 23-Nov-1992 ! Fix MOVTUC macro to correctly check for destination ! length of zero. ! ! X-5 TNS002 Tom Scarpelli 17-Nov-1992 ! Added MACROs to support INSQUE_D builtins. ! ! X-10 MFS0084 Mark F. Scanlon 2-Nov-1992 ! Added MACROs to support REMQUE_D builtins. ! ! X-9 GAS Gordon Saladino 24-Sep-1992 ! Fix anomaly with sign bit propagation in ASHQ for QAR 03740, ! and parameter overlap in the string instruction macros ! for QAR 04055. ! ! X-8 KAB Karen Barth 4-Feb-1992 ! Remove the TESTBITxx macros, which are now ! supported by the compiler. ! ! X-7 KAB Karen Barth 23-Oct-1991 ! Temporary change to make TESTBITxx macros ! atomic. The next compiler should have real ! builtins that do the right thing, at which ! point these TESTBITxx macros will be obsoleted. ! ! X-6 KAB Karen Barth 9-Aug-1991 ! Fix MOVTUC so there's no chance of two ! consecutive field references, and fix ! the TESTBITxx macros to illiminate clobbered ! bitfields. ! ! X-5 KAB Karen Barth 16-May-1991 ! Add output parameter to REMQUEL and REMQUEQ ! instead of rolling our own. ! ! X-4 KAB Karen Barth 10-Apr-1991 ! Fix FFC and FFS field reference problem by ! taking parentheses out of SIZE argument. ! ! 3 edp Eric Postpischil 8-Apr-1991 ! Pass value, not address, in MTPR. ! ! 1K8 KAB Karen Barth 06-Feb-1991 ! Add "PAL_" to all PAL code instructions. ! ! 1K7 KAB Karen Barth 04-Feb-1991 ! Add ASHQ, EDIV, EMUL, SCANC, SPANC, MATCHC ! and MOVTUC (courtesy of the RTL group). ! ! 1K6 KAB Karen Barth 21-Jan-1991 ! Add missing queue instructions. ! ! 1K5 KAB Karen Barth 5-Dec-1990 ! Update and fix queue instructions. ! ! 1K4 LAF Lisa A. Farley 8-Nov-1990 ! Correct bugs in FFS, FFC, changed auxiliary macro ! names. ! ! 1K3 edp Eric Postpischil 6-Sep-1990 ! Correct bugs in SKPC, LOCC, and FFS. ! ! 1K2 edp Eric Postpischil 24-Aug-1990 ! Remove parentheses around uses of BITFIELD argument ! in TESTBIT macros so field references will work. ! !-- ! The following macro declares a macro which declares a macro. The purpose ! of this is to support writing macros in Bliss-32E which will replace ! Bliss-32 built-ins which are not built into Bliss-32E. ! ! For example, consider the FFC built-in. It will appear in the source ! first as: ! BUILTIN FFC; or BUILTIN ..., FFC, ...; ! Later, it will probably appear one or more times as: ! ... FFC(postion, size, base, destination) ... ! ! For a macro to replace the FFC built-in with minimal source changes, it must ! work correctly in both of these situations. That is accomplished by using ! an auxiliary macro called $FFC. FFC is declared for an entire module by ! including it in a library file, but $FFC is not declared globally. FFC ! does not take any parameters. ! ! When FFC is invoked, it checks to see if $FFC is declared (by using ! the %DECLARED lexical function). Initially in any given block, $FFC ! is not declared. FFC then declares $FFC to be a macro which contains ! code to replace the FFC built-in. ! ! When FFC is invoked a second or successive time in a block, $FFC has ! been declared from the first invocation. In these cases, FFC expands ! to "$FFC". This produces "$FFC" in the input stream followed by the ! parameters of the call to the FFC built-in. The $FFC macro does take ! parameters and expands to the replacement code. ! ! Note that when FFC appears as: ! BUILTIN FFC; or BUILTIN ..., FFC, ...; ! the FFC macro expands to a declaration of the $FFC macro. To do this, ! it is necessary to terminate the BUILTIN declaration, declare the ! macro, and resume the BUILTIN declaration (in case any other built-ins ! follow FFC in the list). This is accomplished by having FFC expand to ! HALT; ! MACRO $FFC(arguments) = definition %; ! BUILTIN HALT ! ! All of this requires conditional compilation using %IF clauses. The ! process of defining the replacement macros is made easier by declaring ! a macro to define macros like the FFC macro described above. This ! definition macro is called DEFINE_MACRO and is invoked with: ! DEFINE_MACRO(name, auxiliary, arguments, code) ! where: ! "name" is the name of the Bliss-32 built-in being replaced. ! "auxiliary" is a unique name for the auxiliary macro, such ! as the name preceded by a dollar sign (e.g., $FFC). ! "arguments" is a parenthesized list of the arguments that the ! built-in accepts. ! "code" is a parenthesized block of Bliss code that performs ! the function of the built-in. ! ! Note that "code" contains references to the arguments specified in ! "arguments" and that "code" can contain lexical functions. However, ! such lexical functions must be quoted so that they are passed to ! DEFINE_MACRO and become part of the macro definition and are evaluated ! when auxiliary macro is invoked rather than being evaluated at the ! time DEFINE_MACRO is invoked. MACRO DEFINE_MACRO(name, auxiliary, arguments, code) = MACRO name = %QUOTE %IF NOT %DECLARED(%QUOTE %QUOTE %QUOTE %QUOTE auxiliary) %QUOTE %THEN BARRIER; MACRO auxiliary arguments = code %QUOTE %QUOTE %QUOTE %; BUILTIN BARRIER %QUOTE %ELSE auxiliary %QUOTE %FI %QUOTE % ; %; ! The following macro, CHECK_SYMBOL, expands to a compile-time test to ! determine if a given symbol is declared. If the symbol is declared, a ! warning message is emitted. This macro uses a very large number of %QUOTE ! lexemes in order to preserve the quotations through the passing of this ! macro as a parameter to DEFINE_MACRO, expansion of the macro it defines, ! and final expansion of the auxiliary macro. ! ! This macro is intended to be placed anywhere in the stream of lexemes ! passed as the "code" parameter to the DEFINE_MACRO macro. MACRO CHECK_SYMBOL(mname, symbol) = %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %IF %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %DECLARED( %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE symbol) %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %THEN %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %WARN( %QUOTE %STRING( 'Symbol ', %QUOTE %QUOTE symbol, ' conflicts with symbol used inside macro ', %QUOTE %QUOTE mname )) %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %QUOTE %FI %; ! This macro, DEFINE_ROUTINE, is analogous to DEFINE_MACRO except that ! it causes the auxiliary to be declared as an external routine, rather ! than a macro. MACRO DEFINE_ROUTINE(name, auxiliary) = MACRO name = %QUOTE %IF NOT %DECLARED(%QUOTE %QUOTE %QUOTE %QUOTE auxiliary) %QUOTE %THEN BARRIER; LITERAL %NAME('-SEEN-',%QUOTE %QUOTE %QUOTE %QUOTE name) = 1; EXTERNAL ROUTINE auxiliary : ADDRESSING_MODE(GENERAL); BUILTIN BARRIER %QUOTE %ELSE auxiliary %QUOTE %FI %QUOTE % ; %; DEFINE_ROUTINE(CALLG, BLI$CALLG) ! DEFINE_BUILTIN is used so that builtins being renamed with either the ! DEFINE_MACRO or DEFINE_ROUTINE macros only get defined once. MACRO DEFINE_BUILTIN (builtin_name) = %IF NOT %DECLARED (%NAME('-SEEN-', %QUOTE %QUOTE builtin_name)) %THEN BUILTIN builtin_name; %FI %; ! Redefine the Alpha PALcall builtins %IF NOT %TARGET(ALPHA) %THEN ! Verified for IA64 port - Clair Grant DEFINE_ROUTINE(PAL_MFPR_ASTEN, SYS$PAL_MFPR_ASTEN) DEFINE_ROUTINE(PAL_MTPR_ASTEN, SYS$PAL_MTPR_ASTEN) DEFINE_ROUTINE(PAL_MFPR_ASTSR, SYS$PAL_MFPR_ASTSR) DEFINE_ROUTINE(PAL_MTPR_ASTSR, SYS$PAL_MTPR_ASTSR) DEFINE_ROUTINE(PAL_MTPR_DATFX, SYS$PAL_MTPR_DATFX) DEFINE_ROUTINE(PAL_MFPR_ESP, SYS$PAL_MFPR_ESP) DEFINE_ROUTINE(PAL_MTPR_ESP, SYS$PAL_MTPR_ESP) DEFINE_ROUTINE(PAL_MTPR_IPIR, SYS$PAL_MTPR_IPIR) DEFINE_ROUTINE(PAL_MFPR_IPL, SYS$PAL_MFPR_IPL) DEFINE_ROUTINE(PAL_MTPR_IPL, SYS$PAL_MTPR_IPL) DEFINE_ROUTINE(PAL_MFPR_PRBR, SYS$PAL_MFPR_PRBR) DEFINE_ROUTINE(PAL_MTPR_PRBR, SYS$PAL_MTPR_PRBR) DEFINE_ROUTINE(PAL_MTPR_SIRR, SYS$PAL_MTPR_SIRR) DEFINE_ROUTINE(PAL_MFPR_SISR, SYS$PAL_MFPR_SISR) DEFINE_ROUTINE(PAL_MFPR_SSP, SYS$PAL_MFPR_SSP) DEFINE_ROUTINE(PAL_MTPR_SSP, SYS$PAL_MTPR_SSP) DEFINE_ROUTINE(PAL_MTPR_TBIA, SYS$PAL_MTPR_TBIA) DEFINE_ROUTINE(PAL_MTPR_TBIAP, SYS$PAL_MTPR_TBIAP) DEFINE_ROUTINE(PAL_MTPR_TBIS, SYS$PAL_MTPR_TBIS) DEFINE_ROUTINE(PAL_MTPR_TBISD, SYS$PAL_MTPR_TBISD) DEFINE_ROUTINE(PAL_MTPR_TBISI, SYS$PAL_MTPR_TBISI) DEFINE_ROUTINE(PAL_MFPR_USP, SYS$PAL_MFPR_USP) DEFINE_ROUTINE(PAL_MTPR_USP, SYS$PAL_MTPR_USP) DEFINE_ROUTINE(PAL_MFPR_WHAMI, SYS$PAL_MFPR_WHAMI) DEFINE_ROUTINE(PAL_IMB, SYS$PAL_IMB) DEFINE_ROUTINE(PAL_PROBER, SYS$PAL_PROBER) DEFINE_ROUTINE(PAL_PROBEW, SYS$PAL_PROBEW) DEFINE_ROUTINE(PAL_RD_PS, SYS$PAL_RD_PS) DEFINE_ROUTINE(PAL_SWASTEN, SYS$PAL_SWASTEN) DEFINE_ROUTINE(PAL_WR_PS_SW, SYS$PAL_WR_PS_SW) DEFINE_ROUTINE(PAL_READ_UNQ, SYS$PAL_READ_UNQ) DEFINE_ROUTINE(PAL_WRITE_UNQ, SYS$PAL_WRITE_UNQ) DEFINE_ROUTINE(PAL_HALT, SYS$PAL_HALT) DEFINE_ROUTINE(PAL_CFLUSH, SYS$PAL_CFLUSH) DEFINE_ROUTINE(PAL_LDQP, SYS$PAL_LDQP) DEFINE_ROUTINE(PAL_STQP, SYS$PAL_STQP) DEFINE_ROUTINE(PAL_CHMS, SYS$PAL_CHMS) DEFINE_ROUTINE(PAL_CHMU, SYS$PAL_CHMU) DEFINE_MACRO (PAL_RSCC, $PAL_RSCC, , (BUILTIN GETREG; GETREG (IA64_REG$_AR_ITC) ) ) DEFINE_MACRO (PAL_BUGCHK, $PAL_BUGCHK, (BREAKCODE), (BUILTIN BREAK2; BREAK2(BREAK$C_SYS_BUGCHECK,BREAKCODE) ) ) DEFINE_MACRO (PAL_GENTRAP, $PAL_GENTRAP, (BREAKCODE), (BUILTIN BREAK2; BREAK2(BREAK$C_SYS_GENTRAP,BREAKCODE) ) ) DEFINE_MACRO (PAL_BPT, $PAL_BPT, , (BUILTIN BREAK; BREAK (BREAK$C_DBG_PAL_BPT) ) ) %FI DEFINE_MACRO(MOVC3, $EVAX_MOVC3, (lena, srcaddr, dstaddr, out0, out1, out2, out3, out4, out5), ( ! If the out3 parameter was specified, set it to the result of CH$MOVE, the ! address just beyond the last byte of the destination. %QUOTE %IF NOT %QUOTE %NULL(out3) %QUOTE %THEN out3 = %QUOTE %FI CH$MOVE(.(lena)<0,16>, srcaddr, dstaddr); ! Return a value in each specified output parameter. They are mostly zero, ! except out1 which is the address just beyond the last byte of the source. %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN out0 = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN out1 = (srcaddr) + .(lena)<0,16>; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out2) %QUOTE %THEN out2 = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out4) %QUOTE %THEN out4 = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out5) %QUOTE %THEN out5 = 0; %QUOTE %FI ) ) DEFINE_MACRO(MOVC5, $EVAX_MOVC5, (srclena, srcaddr, fill, dstlena, dstaddr, out0, out1, out2, out3, out4, out5), ( ! If the out3 parameter was specified, set it to the result of CH$MOVE, the ! address just beyond the last byte of the destination. %QUOTE %IF NOT %QUOTE %NULL(out3) %QUOTE %THEN out3 = %QUOTE %FI CH$COPY(.(srclena)<0,16>, srcaddr, .(fill)<0,8>, .(dstlena)<0,16>, dstaddr); ! Return a value in each specified output parameter. ! out1 is the address just beyond the last byte used from the source. %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN out1 = (srcaddr) + MINU(.(srclena)<0,16>, .(dstlena)<0,16>); %QUOTE %FI ! out0 is the length of the unused bytes of the source. %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN IF .(srclena)<0,16> GEQU .(dstlena)<0,16> THEN out0 = .(srclena)<0,16> - .(dstlena)<0,16> ELSE out0 = 0; %QUOTE %FI ! The remaining outputs are zero. %QUOTE %IF NOT %QUOTE %NULL(out2) %QUOTE %THEN out2 = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out4) %QUOTE %THEN out4 = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out5) %QUOTE %THEN out5 = 0; %QUOTE %FI ) ) ! ! Output parameters for CMPC3 and CMPC5 are not supported because there ! exist no CH$ functions that provide the information. These could be ! gotten via additional code, but it is probably not worth it. ! DEFINE_MACRO(CMPC3, $EVAX_CMPC3, (lena, src1a, src2a), ( CH$COMPARE(.(lena)<0,16>, src1a, .(lena)<0,16>, src2a) ) ) DEFINE_MACRO(CMPC5, $EVAX_CMPC5, (src1lena, src1a, filla, src2lena, src2a), ( CH$COMPARE(.(src1lena)<0,16>, src1a, .(src2lena)<0,16>, src2a, .(filla)<0,8>) ) ) DEFINE_MACRO(LOCC, $EVAX_LOCC, (char, lena, addr, out0, out1), ( CHECK_SYMBOL(LOCC, %QUOTE $LOCC_TEMP) CHECK_SYMBOL(LOCC, %QUOTE $LOCC_FAILURE) LOCAL $LOCC_TEMP, $LOCC_FAILURE; ! CH$FIND_CH returns either a pointer to the matching character or a null ! pointer. We want to change that to be a pointer to where the search ! stopped, regardless of whether it stopped because of success or because ! the string length was reached. $LOCC_TEMP = CH$FIND_CH(.(lena)<0,16>, addr, .(char)<0,8>); $LOCC_FAILURE = CH$FAIL(.$LOCC_TEMP); IF .$LOCC_FAILURE THEN $LOCC_TEMP = (addr) + .(lena)<0,16>; ! If out0 was specified, we set it to the number of bytes remaining. %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN out0 = (addr) + .(lena)<0,16> - .$LOCC_TEMP; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN out1 = .$LOCC_TEMP; %QUOTE %FI ! We return 1 or 0 depending on whether a match was found or not. .$LOCC_FAILURE XOR 1 ) ) DEFINE_MACRO(SKPC, $EVAX_SKPC, (chara, lena, addr, out0, out1), ( CHECK_SYMBOL(SKPC, %QUOTE $SKPC_TEMP) CHECK_SYMBOL(SKPC, %QUOTE $SKPC_FAILURE) LOCAL $SKPC_TEMP, $SKPC_FAILURE; ! CH$FIND_CH returns either a pointer to the unequal character or a null ! pointer. We want to change that to be a pointer to where the search ! stopped, regardless of whether it stopped because of success or because ! the string length was reached. $SKPC_TEMP = CH$FIND_NOT_CH(.(lena)<0,16>, addr, .(chara)<0,8>); $SKPC_FAILURE = CH$FAIL(.$SKPC_TEMP); IF .$SKPC_FAILURE THEN $SKPC_TEMP = (addr) + .(lena)<0,16>; ! If out0 was specified, we set it to the number of bytes remaining. %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN out0 = (addr) + .(lena)<0,16> - .$SKPC_TEMP; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN out1 = .$SKPC_TEMP; %QUOTE %FI ! We return 1 or 0 depending on whether an unequal character was found or not. .$SKPC_FAILURE XOR 1 ) ) DEFINE_MACRO(MOVTC, $EVAX_MOVTC, (srclena, srcaddr, fill, tbladdr, dstlena, dstaddr, out0, out1, out2, out3, out4, out5), ( ! If out5 was specified, we set it to the result of CH$TRANSLATE, the ! address just beyond the last byte in the destination string. %QUOTE %IF NOT %QUOTE %NULL(out5) %QUOTE %THEN out5 = %QUOTE %FI CH$TRANSLATE(tbladdr, .(srclena)<0,16>, srcaddr, .(fill)<0,8>, .(dstlena)<0,16>, dstaddr); ! out0 gets the number of unused bytes in the source string. %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN IF .(srclena)<0,16> GEQU .(dstlena)<0,16> THEN out0 = .(srclena)<0,16> - .(dstlena)<0,16> ELSE out0 = 0 ; %QUOTE %FI ! out1 gets the address just beyond the last byte used in the source string. %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN out1 = (srcaddr) + MINU(.(srclena)<0,16>, .(dstlena)<0,16>); %QUOTE %FI ! out3 gets the address of the table, and the remaining outputs are zero. %QUOTE %IF NOT %QUOTE %NULL(out2) %QUOTE %THEN out2 = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out3) %QUOTE %THEN out3 = tbladdr; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out4) %QUOTE %THEN out4 = 0; %QUOTE %FI ) ) DEFINE_MACRO(CRC, $EVAX_CRC, (tableaddr, inicrcaddr, strlenaddr, streamaddr, dstaddr), ( EXTERNAL ROUTINE LIB$CRC : ADDRESSING_MODE(GENERAL); CHECK_SYMBOL(CRC, %QUOTE $CRC_DESCRIPTOR) %IF %BLISS(BLISS32) %THEN ! Verified for IA64 port - Clair Grant LOCAL $CRC_DESCRIPTOR : VECTOR[2,LONG] INITIAL(0); $CRC_DESCRIPTOR[0] = .(strlenaddr)<0,16>; $CRC_DESCRIPTOR[1] = streamaddr; %ELSE LOCAL $CRC_DESCRIPTOR : VECTOR[3,QUAD] INITIAL(WORD(1),WORD(0),LONG(-1), QUAD(0),QUAD(0)); $CRC_DESCRIPTOR[1] = .strlenaddr; $CRC_DESCRIPTOR[2] = streamaddr; %FI dstaddr = LIB$CRC(tableaddr, inicrcaddr, $CRC_DESCRIPTOR); ) ) DEFINE_MACRO(ADDM, $EVAX_ADDM, (size, src1a, src2a, dsta), ( EXTERNAL ROUTINE LIB$ADDX : ADDRESSING_MODE(GENERAL); LIB$ADDX(src1a, src2a, dsta, %REF(size)); ! The return value of LIB$ADDX is ignored. The RTL manual describes it as ! being either success or integer-overflow. The Bliss-32 ADDM built-in does ! not return this information. Presumably, other errors (such as access ! violations) will generate signals or traps as appropriate. ) ) DEFINE_MACRO(SUBM, $EVAX_SUBM, (size, src1a, src2a, dsta), ( EXTERNAL ROUTINE LIB$SUBX : ADDRESSING_MODE(GENERAL); LIB$SUBX(src2a, src1a, dsta, %REF(size)); ! The return value of LIB$SUBX is ignored. The RTL manual describes it as ! being either success or integer-overflow. The Bliss-32 SUBM built-in does ! not return this information. Presumably, other errors (such as access ! violations) will generate signals or traps as appropriate. ) ) DEFINE_MACRO(CMPM, $EVAX_CMPM, (size, src1a, src2a), ( ! There's no library routine for extended-length integer comparison, so we ! do it ourselves. ! First, the operands are bound to longword arrays, just in case that's ! not what they are declared as outside this macro. CHECK_SYMBOL(CMPM, %QUOTE $CMPM_SRC1) CHECK_SYMBOL(CMPM, %QUOTE $CMPM_SRC2) CHECK_SYMBOL(CMPM, %QUOTE $CMPM_I) BIND $CMPM_SRC1 = src1a : VECTOR[size,LONG], $CMPM_SRC2 = src2a : VECTOR[size,LONG]; LOCAL $CMPM_I : INITIAL((size)-1); ! We'll check most of the elements of the integers in a loop, but the ! first elements are done correctly because they have a sign bit, but ! the remaining elements do not. So they need a different test. IF .$CMPM_SRC1[.$CMPM_I] NEQ .$CMPM_SRC2[.$CMPM_I] THEN IF .$CMPM_SRC1[.$CMPM_I] GTR .$CMPM_SRC2[.$CMPM_I] THEN 1 ELSE -1 ELSE ! Next, we check the elements of the integers, from the most significant ! down to the next-to-last. As soon as we find two unequal elements, we ! know the integers are unequal one way or the other. We don't check ! the least significant element in the loop because the elements where ! the loop stops are tested again to determine the return value. BEGIN WHILE (.$CMPM_I GTRU 0) AND (.$CMPM_SRC1[.$CMPM_I] EQLU .$CMPM_SRC2[.$CMPM_I]) DO $CMPM_I = .$CMPM_I-1; ! Finally, we return 1, 0, or -1 depending on whether src1 is greater than, ! equal to, or less than src2. IF .$CMPM_SRC1[.$CMPM_I] GTRU .$CMPM_SRC2[.$CMPM_I] THEN 1 ELSE IF .$CMPM_SRC1[.$CMPM_I] EQLU .$CMPM_SRC2[.$CMPM_I] THEN 0 ELSE -1 END ) ) ! The following code comes from macros provided by Mark Cotton. DEFINE_MACRO (INSQUE, $EVAX_INSQUE, (ENTRY, HEADER), ( %QUOTE %QUOTE $$INSQUE (ENTRY, HEADER) ) ) DEFINE_MACRO (REMQUE, $EVAX_REMQUE, (ENTRY, ADDR), ( %QUOTE %QUOTE $$REMQUE (ENTRY, ADDR) ) ) DEFINE_MACRO (INSQHI, $EVAX_INSQHI, (ENTRY, HEADER), ( %QUOTE %QUOTE $$INSQHI (ENTRY, HEADER) ) ) DEFINE_MACRO (REMQHI, $EVAX_REMQHI, (HEADER, ADDR), ( %QUOTE %QUOTE $$REMQHI (HEADER, ADDR) ) ) DEFINE_MACRO (INSQTI, $EVAX_INSQTI, (ENTRY, HEADER), ( %QUOTE %QUOTE $$INSQTI (ENTRY, HEADER) ) ) DEFINE_MACRO (REMQTI, $EVAX_REMQTI, (HEADER, ADDR), ( %QUOTE %QUOTE $$REMQTI (HEADER, ADDR) ) ) DEFINE_MACRO (INSQUE_D, $EVAX_INSQUE_D, (ENTRY, ADDR), ( %QUOTE %QUOTE $$INSQUE_D (ENTRY, ADDR) ) ) DEFINE_MACRO (REMQUE_D, $EVAX_REMQUE_D, (ENTRY, ADDR), ( %QUOTE %QUOTE $$REMQUE_D (ENTRY, ADDR) ) ) MACRO $$REMQUE(ENTRY,ADDR) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN BEGIN BUILTIN PAL_REMQUEL; ! !Give him the entry we removed ! CASE PAL_REMQUEL(ENTRY; ADDR) FROM -1 TO 1 OF SET [-1] : 3; [ 0] : 2; [ 1] : 0; TES END %ELSE BEGIN BUILTIN PAL_REMQUEQ; CASE PAL_REMQUEQ(ENTRY; ADDR) FROM -1 TO 1 OF SET [-1] : 3; [ 0] : 2; [ 1] : 0; TES END %FI %, $$INSQUE(ENTRY,HEADER) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN BEGIN BUILTIN PAL_INSQUEL; ! !Args reversed on alpha ! PAL_INSQUEL(HEADER,ENTRY) END %ELSE BEGIN BUILTIN PAL_INSQUEQ; PAL_INSQUEQ(HEADER,ENTRY) END %FI %, $$REMQTI(HEADER,ADDR) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN BEGIN BUILTIN PAL_REMQTIL; CASE PAL_REMQTIL(HEADER;ADDR) FROM -1 TO 2 OF SET [-1] : 1; [ 0] : 3; [ 1] : 0; [ 2] : 2; TES END %ELSE BEGIN BUILTIN PAL_REMQTIQ; CASE PAL_REMQTIQ(HEADER;ADDR) FROM -1 TO 2 OF SET [-1] : 1; [ 0] : 3; [ 1] : 0; [ 2] : 2; TES END %FI %, $$INSQHI(ENTRY,HEADER) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN ! !Args reversed on alpha ! BEGIN BUILTIN PAL_INSQHIL; CASE PAL_INSQHIL(HEADER,ENTRY) FROM -1 TO 1 OF SET [-1] : 1; [ 0] : 0; [ 1] : 2; TES END %ELSE BEGIN BUILTIN PAL_INSQHIQ; CASE PAL_INSQHIQ(HEADER,ENTRY) FROM -1 TO 1 OF SET [-1] : 1; [ 0] : 0; [ 1] : 2; TES END %FI %, $$REMQHI(HEADER,ADDR) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN BEGIN BUILTIN PAL_REMQHIL; CASE PAL_REMQHIL(HEADER;ADDR) FROM -1 TO 2 OF SET [-1] : 1; [ 0] : 3; [ 1] : 0; [ 2] : 2; TES END %ELSE BEGIN BUILTIN PAL_REMQHIQ; CASE PAL_REMQHIQ(HEADER;ADDR) FROM -1 TO 2 OF SET [-1] : 1; [ 0] : 3; [ 1] : 0; [ 2] : 2; TES END %FI %, $$INSQTI(ENTRY,HEADER) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN ! !Args reversed on alpha ! BEGIN BUILTIN PAL_INSQTIL; CASE PAL_INSQTIL(HEADER,ENTRY) FROM -1 TO 1 OF SET [-1] : 1; [ 0] : 0; [ 1] : 2; TES END %ELSE BEGIN BUILTIN PAL_INSQTIQ; CASE PAL_INSQTIQ(HEADER,ENTRY) FROM -1 TO 1 OF SET [-1] : 1; [ 0] : 0; [ 1] : 2; TES END %FI %, $$INSQUE_D(ENTRY,HEADER) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN BEGIN BUILTIN PAL_INSQUEL_D; ! !Args reversed on alpha ! PAL_INSQUEL_D(HEADER,ENTRY) END %ELSE BEGIN BUILTIN PAL_INSQUEQ_D; PAL_INSQUEQ_D(HEADER,ENTRY) END %FI %, $$REMQUE_D(ENTRY,ADDR) = %IF %BLISS(BLISS32) ! Verified for IA64 port - Clair Grant %THEN BEGIN BUILTIN PAL_REMQUEL_D; ! !Give him the entry we removed ! CASE PAL_REMQUEL_D(ENTRY; ADDR) FROM -1 TO 1 OF SET [-1] : 3; [ 0] : 2; [ 1] : 0; TES END %ELSE BEGIN BUILTIN PAL_REMQUEQ_D; CASE PAL_REMQUEQ_D(ENTRY; ADDR) FROM -1 TO 1 OF SET [-1] : 3; [ 0] : 2; [ 1] : 0; TES END %FI %; DEFINE_MACRO(FFS, $EVAX_FFS, (STARTPOS, SIZE, BASE, FINDPOS), ( CHECK_SYMBOL (FFS, %QUOTE $FFS_FOUND) LOCAL $FFS_FOUND : VECTOR[1,LONG] INITIAL(LONG(0)); IF .SIZE NEQU 0 THEN BEGIN CHECK_SYMBOL (FFS, %QUOTE $FFS_XBASE) BIND $FFS_XBASE = BASE : BITVECTOR; (FINDPOS) = (BEGIN CHECK_SYMBOL (FFS, %QUOTE $FFS_POS) LOCAL $FFS_POS; CHECK_SYMBOL (FFS, %QUOTE $FFS_I) $FFS_POS = (INCRU $FFS_I FROM .(STARTPOS) TO (.SIZE-1) + .(STARTPOS) DO IF .$FFS_XBASE[.$FFS_I] THEN EXITLOOP .$FFS_I); IF .$FFS_POS GTRU ((.SIZE-1) + .(STARTPOS)) THEN BEGIN $FFS_FOUND = 1; ! return no bit found .SIZE + .(STARTPOS) END ELSE .$FFS_POS END); END ELSE BEGIN (FINDPOS) = .(STARTPOS); $FFS_FOUND = 1; END; .$FFS_FOUND ) ) DEFINE_MACRO(FFC, $EVAX_FFC, (STARTPOS, SIZE, BASE, FINDPOS), ( CHECK_SYMBOL (FFC, %QUOTE $FFC_FOUND) LOCAL $FFC_FOUND : VECTOR[1,LONG] INITIAL(LONG(0)); IF .SIZE NEQU 0 THEN BEGIN CHECK_SYMBOL (FFC, %QUOTE $FFC_XBASE) BIND $FFC_XBASE = BASE : BITVECTOR; (FINDPOS) = (BEGIN CHECK_SYMBOL (FFC, %QUOTE $FFC_POS) LOCAL $FFC_POS; CHECK_SYMBOL (FFC, %QUOTE $FFC_I) $FFC_POS = (INCRU $FFC_I FROM .(STARTPOS) TO (.SIZE-1) + .(STARTPOS) DO IF NOT .$FFC_XBASE[.$FFC_I] THEN EXITLOOP .$FFC_I); IF .$FFC_POS GTRU ((.SIZE-1) + .(STARTPOS)) THEN BEGIN $FFC_FOUND = 1; ! return no bit found .SIZE + .(STARTPOS) END ELSE .$FFC_POS END); END ELSE BEGIN (FINDPOS) = .(STARTPOS); $FFC_FOUND = 1; END; .$FFC_FOUND ) ) ! MFPR and MTPR use additional macros $$MFPR and $$MTPR in order to avoid ! quoting problems with yet another level of macro definition. ! DEFINE_MACRO(MFPR, $EVAX_MFPR, (procreg, dstaddr, srcaddr), ( %QUOTE %QUOTE $$MFPR(procreg, dstaddr, srcaddr) ) ) DEFINE_MACRO(MTPR, $EVAX_MTPR, (srcaddr, procreg), ( %QUOTE %QUOTE $$MTPR(srcaddr, procreg) ) ) MACRO $$MFPR (PROCREG, DSTADDR, SRCADDR) = %IF %LENGTH NEQU 3 AND %LENGTH NEQU 2 AND %LENGTH NEQU 0 %THEN %ERROR ('Incorrect # of arguments to $MFPR') %FI BEGIN MACRO %QUOTE $$$REMOVE_PR$_ (P1, P2, P3, P4) = %STRING (%REMAINING) %QUOTE %, %QUOTE $$$IPR_NAME (P1) = $$$REMOVE_PR$_ (%EXPLODE (%STRING (P1))) %QUOTE %; BUILTIN %NAME ('PAL_MFPR_', $$$IPR_NAME (PROCREG)); DSTADDR = %NAME ('PAL_MFPR_', $$$IPR_NAME (PROCREG)) (SRCADDR) END %; MACRO $$MTPR (SRCADDR, PROCREG) = %IF %LENGTH NEQU 2 AND %LENGTH NEQU 0 %THEN %ERROR ('Incorrect # of arguments to $MTPR') %FI BEGIN MACRO %QUOTE $$$REMOVE_PR$_ (P1, P2, P3, P4) = %STRING (%REMAINING) %QUOTE %, %QUOTE $$$IPR_NAME (P1) = $$$REMOVE_PR$_ (%EXPLODE (%STRING (P1))) %QUOTE %; BUILTIN %NAME ('PAL_MTPR_', $$$IPR_NAME (PROCREG)); %IF %IDENTICAL (%STRING (PROCREG), 'PR$_TBIA') OR %IDENTICAL (%STRING (PROCREG), 'PR$_TBIAP') %THEN %NAME ('PAL_MTPR_', $$$IPR_NAME (PROCREG)) () %ELSE %NAME ('PAL_MTPR_', $$$IPR_NAME (PROCREG)) (.SRCADDR) %FI END %; ! !The original BLISS32V implementation of the ASHQ, EDIV, and EMUL builtins !return the VAX PSL as their result. ! !Since there is no exact analog (to the VAX PSL) on Alpha, I chose to implement !the code for these pseudo builtins as null valued expressions. ! !Any attempt to use these primitives in a value required context will result !in the following compiler informational: ! ! INFO#212 L1:0813 ! Null expression appears in value-required context ! DEFINE_MACRO(ASHQ, $EVAX_ASHQ, (shift, srcaddr, dstaddr), ( CHECK_SYMBOL(ASHQ, %QUOTE $ASHQ_TEMP) CHECK_SYMBOL(ASHQ, %QUOTE $ASHQ_SHIFT) CHECK_SYMBOL(ASHQ, %QUOTE $ASHQ_SRCADDR) CHECK_SYMBOL(ASHQ, %QUOTE $ASHQ_DSTADDR) BIND $ASHQ_SHIFT = (shift) : BYTE SIGNED, $ASHQ_SRCADDR = (srcaddr) : VECTOR[2,LONG], $ASHQ_DSTADDR = (dstaddr) : VECTOR[2,LONG]; IF (.$ASHQ_SHIFT GTR 64) THEN BEGIN $ASHQ_DSTADDR[0] = 0; $ASHQ_DSTADDR[1] = 0; END ELSE IF (.$ASHQ_SHIFT EQL 0) THEN BEGIN $ASHQ_DSTADDR[0] = .$ASHQ_SRCADDR[0]; $ASHQ_DSTADDR[1] = .$ASHQ_SRCADDR[1]; END ELSE IF (.$ASHQ_SHIFT GTR 0) THEN BEGIN LOCAL $ASHQ_TEMP : LONG INITIAL (.($ASHQ_SRCADDR[0])<32 - .$ASHQ_SHIFT,.$ASHQ_SHIFT>); $ASHQ_DSTADDR[0] = .$ASHQ_SRCADDR[0] ^ .$ASHQ_SHIFT; $ASHQ_DSTADDR[1] = (.$ASHQ_SRCADDR[1] ^ .$ASHQ_SHIFT) OR .$ASHQ_TEMP; END ELSE BEGIN LOCAL $ASHQ_TEMP : LONG INITIAL (.($ASHQ_SRCADDR[1])<0,-.$ASHQ_SHIFT>); $ASHQ_DSTADDR[1] = .$ASHQ_SRCADDR[1] ^ .$ASHQ_SHIFT; $ASHQ_DSTADDR[0] = ( (.$ASHQ_SRCADDR[0] ^ .$ASHQ_SHIFT) AND (%x'7FFFFFFF' ^ (.$ASHQ_SHIFT + 1)) ) OR (.$ASHQ_TEMP ^ (32 + .$ASHQ_SHIFT)); END; )) DEFINE_MACRO(EDIV, $EVAX_EDIV, (divisor, dividend, quotient, remainder), ( CHECK_SYMBOL(EDIV, %QUOTE $EDIV_TEMP) LOCAL $EDIV_TEMP; EXTERNAL ROUTINE LIB$EDIV : ADDRESSING_MODE(GENERAL); $EDIV_TEMP = LIB$EDIV(divisor, dividend, quotient, remainder); )) DEFINE_MACRO(EMUL, $EVAX_EMUL, (multiplier, multiplicand, addend, product), ( CHECK_SYMBOL(EMUL, %QUOTE $EMUL_TEMP) LOCAL $EMUL_TEMP; EXTERNAL ROUTINE LIB$EMUL : ADDRESSING_MODE(GENERAL); $EMUL_TEMP = LIB$EMUL(multiplier, multiplicand, addend, product); )) DEFINE_MACRO(MATCHC, $EVAX_MATCHC, (objlena, objaddr, srclena, srcaddr, out0, out1, out2, out3), ( CHECK_SYMBOL(MATCHC, %QUOTE $MATCHC_OBJLENA) CHECK_SYMBOL(MATCHC, %QUOTE $MATCHC_OBJADDR) CHECK_SYMBOL(MATCHC, %QUOTE $MATCHC_SRCLENA) CHECK_SYMBOL(MATCHC, %QUOTE $MATCHC_SRCADDR) CHECK_SYMBOL(MATCHC, %QUOTE $MATCHC_TEMP) LOCAL $MATCHC_OBJLENA : WORD INITIAL(.(objlena)<0,16,0>), $MATCHC_OBJADDR : REF VECTOR[,BYTE] INITIAL(objaddr), $MATCHC_SRCLENA : WORD INITIAL(.(srclena)<0,16,0>), $MATCHC_SRCADDR : REF VECTOR[,BYTE] INITIAL(srcaddr), $MATCHC_TEMP; $MATCHC_TEMP = CH$FIND_SUB( .$MATCHC_SRCLENA, CH$PTR($MATCHC_SRCADDR[0]), .$MATCHC_OBJLENA, CH$PTR($MATCHC_OBJADDR[0])); IF NOT CH$FAIL(.$MATCHC_TEMP) THEN BEGIN %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN (out0) = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN (out1) = $MATCHC_OBJADDR[0] + .$MATCHC_OBJLENA; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out2) %QUOTE %THEN (out2) = .$MATCHC_SRCLENA - (.$MATCHC_TEMP - $MATCHC_SRCADDR[0] + .$MATCHC_OBJLENA); %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out3) %QUOTE %THEN (out3) = .$MATCHC_TEMP + .$MATCHC_OBJLENA; %QUOTE %FI 1 END ELSE BEGIN %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN (out0) = .$MATCHC_OBJLENA; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN (out1) = $MATCHC_OBJADDR[0]; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out2) %QUOTE %THEN (out2) = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out3) %QUOTE %THEN (out3) = $MATCHC_SRCADDR[0] + .$MATCHC_SRCLENA; %QUOTE %FI 0 END )) DEFINE_MACRO(MOVTUC, $EVAX_MOVTUC, ( srclena, srcaddr, escaddr, tbladdr, dstlena, dstaddr, out0, out1, out2, out3, out4, out5 ), ( CHECK_SYMBOL(MOVTUC, %QUOTE $MOVTUC_SRCLENA) CHECK_SYMBOL(MOVTUC, %QUOTE $MOVTUC_SRCADDR) CHECK_SYMBOL(MOVTUC, %QUOTE $MOVTUC_ESCADDR) CHECK_SYMBOL(MOVTUC, %QUOTE $MOVTUC_TBLADDR) CHECK_SYMBOL(MOVTUC, %QUOTE $MOVTUC_DSTLENA) CHECK_SYMBOL(MOVTUC, %QUOTE $MOVTUC_DSTADDR) LOCAL $MOVTUC_SRCLENA : WORD INITIAL(.(srclena)<0,16,0>), $MOVTUC_SRCADDR : REF VECTOR[,BYTE] INITIAL(srcaddr), $MOVTUC_ESCADDR : REF VECTOR[,BYTE] INITIAL(escaddr), $MOVTUC_TBLADDR : REF VECTOR[,BYTE] INITIAL(tbladdr), $MOVTUC_DSTLENA : WORD INITIAL(.(dstlena)<0,16,0>), $MOVTUC_DSTADDR : REF VECTOR[,BYTE] INITIAL(dstaddr); IF ((.$MOVTUC_SRCLENA GTRU 0) AND (.$MOVTUC_DSTLENA GTRU 0)) THEN BEGIN WHILE ((.$MOVTUC_SRCLENA NEQU 0) AND (.$MOVTUC_DSTLENA NEQU 0)) DO IF (.$MOVTUC_TBLADDR[.$MOVTUC_SRCADDR[0]] NEQU .$MOVTUC_ESCADDR[0]) THEN BEGIN $MOVTUC_DSTADDR[0] = .$MOVTUC_TBLADDR[.$MOVTUC_SRCADDR[0]]; $MOVTUC_SRCLENA = .$MOVTUC_SRCLENA - 1; $MOVTUC_SRCADDR = .$MOVTUC_SRCADDR + 1; $MOVTUC_DSTLENA = .$MOVTUC_DSTLENA - 1; $MOVTUC_DSTADDR = .$MOVTUC_DSTADDR + 1; END ELSE EXITLOOP; END; %QUOTE %IF NOT %QUOTE %NULL(out0) %QUOTE %THEN (out0) = .$MOVTUC_SRCLENA; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out1) %QUOTE %THEN (out1) = .$MOVTUC_SRCADDR; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out2) %QUOTE %THEN (out2) = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out3) %QUOTE %THEN (out3) = .$MOVTUC_TBLADDR; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out4) %QUOTE %THEN (out4) = .$MOVTUC_DSTLENA; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL(out5) %QUOTE %THEN (out5) = .$MOVTUC_DSTADDR; %QUOTE %FI IF (.$MOVTUC_SRCLENA EQLU 0) THEN 0 ELSE .$MOVTUC_SRCADDR )) DEFINE_MACRO(SCANC, $EVAX_SCANC, (lena, addr, tbladdr, maska, out0, out1, out2, out3), ( CHECK_SYMBOL(SCANC, %QUOTE $SCANC_I) CHECK_SYMBOL(SCANC, %QUOTE $SCANC_LENA) CHECK_SYMBOL(SCANC, %QUOTE $SCANC_ADDR) CHECK_SYMBOL(SCANC, %QUOTE $SCANC_TBLADDR) CHECK_SYMBOL(SCANC, %QUOTE $SCANC_MASKA) LOCAL $SCANC_LENA : WORD INITIAL(.(lena)<0,16,0>), $SCANC_ADDR : REF VECTOR[,BYTE] INITIAL(addr), $SCANC_TBLADDR : REF VECTOR[,BYTE] INITIAL(tbladdr), $SCANC_MASKA : BYTE INITIAL(.(maska)<0,8,0>), $SCANC_I; $SCANC_I = 0; WHILE( .$SCANC_I LEQ .$SCANC_LENA - 1 ) DO BEGIN IF ( (.$SCANC_MASKA AND .$SCANC_TBLADDR[ .$SCANC_ADDR [ .$SCANC_I ]]) NEQ 0 ) THEN EXITLOOP; $SCANC_I = .$SCANC_I + 1; END; %QUOTE %IF NOT %QUOTE %NULL( out0 ) %QUOTE %THEN (out0) = .LENA - .$SCANC_I; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL( out1 ) %QUOTE %THEN (out1) = $SCANC_ADDR[ .$SCANC_I ]; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL( out2 ) %QUOTE %THEN (out2) = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL( out3 ) %QUOTE %THEN (out3) = $SCANC_TBLADDR[0]; %QUOTE %FI IF (.$SCANC_LENA EQL .$SCANC_I) THEN 0 ELSE $SCANC_ADDR[ .$SCANC_I ] )) DEFINE_MACRO(SPANC, $EVAX_SPANC, (lena, addr, tbladdr, maska, out0, out1, out2, out3), ( CHECK_SYMBOL(SPANC, %QUOTE $SPANC_I) CHECK_SYMBOL(SPANC, %QUOTE $SPANC_LENA) CHECK_SYMBOL(SPANC, %QUOTE $SPANC_ADDR) CHECK_SYMBOL(SPANC, %QUOTE $SPANC_TBLADDR) CHECK_SYMBOL(SPANC, %QUOTE $SPANC_MASKA) LOCAL $SPANC_LENA : WORD INITIAL(.(lena)<0,16,0>), $SPANC_ADDR : REF VECTOR[,BYTE] INITIAL(addr), $SPANC_TBLADDR : REF VECTOR[,BYTE] INITIAL(tbladdr), $SPANC_MASKA : BYTE INITIAL(.(maska)<0,8,0>), $SPANC_I; $SPANC_I = 0; WHILE( .$SPANC_I LEQ .$SPANC_LENA - 1 ) DO BEGIN IF ( (.$SPANC_MASKA AND .$SPANC_TBLADDR[ .$SPANC_ADDR [ .$SPANC_I ]]) EQL 0 ) THEN EXITLOOP; $SPANC_I = .$SPANC_I + 1; END; %QUOTE %IF NOT %QUOTE %NULL( out0 ) %QUOTE %THEN (out0) = .$SPANC_LENA - .$SPANC_I; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL( out1 ) %QUOTE %THEN (out1) = $SPANC_ADDR[ .$SPANC_I ]; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL( out2 ) %QUOTE %THEN (out2) = 0; %QUOTE %FI %QUOTE %IF NOT %QUOTE %NULL( out3 ) %QUOTE %THEN (out3) = $SPANC_TBLADDR[0]; %QUOTE %FI IF (.$SPANC_LENA EQL .$SPANC_I) THEN 0 ELSE $SPANC_ADDR[ .$SPANC_I ] )) UNDECLARE %QUOTE CHECK_SYMBOL, %QUOTE DEFINE_MACRO, %QUOTE DEFINE_ROUTINE; ! ! ---- < End of module BUILTINS.REQ - 12-AUG-2010 13:57:05.14 > - ! !************************************************************************* !* * !* © Copyright 1978, 1980, 1982, 1984, 2002-2004 * !* Compaq Information Technologies Group, L.P. * !* * !* Compaq and the Compaq logo are trademarks of Compaq Information * !* Technologies Group, L.P. in the U.S. and/or other countries. * !* * !* Confidential computer software. * !* Valid license from Compaq required for possession, use or copying. * !* Consistent with FAR 12.211 and 12.212, Commercial Computer Software, * !* Computer Software Documentation, and Technical Data for Commercial * !* Items are licensed to the U.S. Government under vendor's standard * !* commercial license. * !* * !* Compaq shall not be liable for technical or editorial errors or * !* omissions contained herein. The information is provided "as is" * !* without warranty of any kind and is subject to change without notice. * !* The warranties for Compaq products are set forth in the express * !* warranty statements accompanying such products. Nothing herein * !* should be construed as constituting an additional warranty. * !* * !************************************************************************* ! ! !++ ! ! MODULE: CRFMAC.REQ ! ! FACILITY: CROSS REFERENCE UTILITY INTERFACE ! ! ABSTRACT: REQUIRE FILE WHICH DEFINES THE CRF INTERFACING MACROS ! I.E. THOSE WHICH INITIALIZE THE FORMAT DESCRIPTION TABLES ! ! HISTORY: ! ! VERSION: 'V07-008' ! ! AUTHOR: T.J. PORTER 24-MAY-77 ! ! MODIFICATIONS: ! ! NO. DATE PROGRAMMER PURPOSE ! --- ---- ---------- ------- ! 001 24-JUN-77 T.J. PORTER CROSS REFERENCE KEY TYPES IN MACROS. ! 002 11-JUL-77 T.J. PORTER ADD ERROR AND OUTPUT ROUTINE ADDRESSES ! TO CONTROL TABLE. ! INITIALIZE ENTRY AND NODE SIZES IN TABLE. ! KEY TYPES ARE NOW EXTERNAL. ! 003 29-OCT-79 B.L. SCHREIBER DEFINE ALL LITERALS SO IT CAN GO INTO SYSTEM ! LIBRARIES. ! 004 11-DEC-79 B.L. SCHREIBER EXPAND CONTROL TABLE ! ! 005 27-Mar-2002 H. Becker In $CRFCTLTABLE: ! Inititalize the first longword with ! LONG() so that BLISS64 won't use a ! quadword literal. ! ! 006 1-Nov-2002 J.R. Deininger In $CRFCTLTABLE: ! Replace INITIAL attribute with PRESET ! (more maintainable and BLISS-64 safe); ! Add CTLTABVER, VALTYPE, and REFTYPE ! fields; add CRF$K_ASCIZ and ! CRF$K_BIN_U64 symbols. ! In $CRFFIELD: ! Add ALIGN(2) so that BLISS64 will place ! successive field entries in contiguous ! memory. ! ! 007 26-Oct-2003 T.M.Schoeller Add constants for latent support of ! FootNoting. ! 008 29-Sep-2003 T.M.Schoeller Add flag bit for multi-definers in ! FLAGS field. !-- ! !++ ! ! FUNCTIONAL DESCRIPTION: ! ! THIS REQUIRE FILE DEFINES THE BLISS MACROS TO BE USED BY A UTILITY ! WHICH USES THE CROSS REFERENCE UTILITY. THESE KEYWORD ! MACROS ARE THOSE FOR INITIALIZING THE TABLES REQUIRED ! BY CROSS REFERENCE FOR DESCRIPTION OF THE OUTPUT LINE ! FORMATS. ! !-- ! DECLARE TABLE AND ENTRY SIZES ! **NOTE** DEPENDENCE ON OTHER MODULES DETAILED BELOW *** ! ! ! CRF$K_TBLSIZE must match the CRFDEF structure defined in ! [STARLET]CRF.SDL. ! LITERAL CRF$K_TBLSIZE = 96; ! SIZE OF CONTROL TABLE (BYTES) ! ! CRF$K_FIELDSIZE must match the $FLDDEF structure defined in ! [CRF]CRFMDL.SDL. ! LITERAL CRF$K_FIELDSIZE = 12; ! FIELD TABLE ENTRY SIZE (BYTES) ! ! The symbols below must match the symbols defined in [CRF]CRFGLOBAL.MAR. ! LITERAL ! KEY TYPES CRF$K_ASCIC = 0, ! ASCII COUNTED STRING KEYS CRF$K_BIN_U32 = 1, ! 32 BIT UNSIGNED BINARY KEYS CRF$K_ASCIZ = 2, ! ASCII ZERO-TERMINATED STRING KEYS CRF$K_BIN_U64 = 3, ! 64 BIT UNSIGNED BINARY KEYS ! ! MODES OF OUTPUT CRF$K_VALUES = 0, ! CROSS REFERENCE WITH VALUES CRF$K_VALS_REFS = 1, ! JUST REFERENCES CRF$K_DEFS_REFS = 2, ! FULL CROSS REFERENCE CRF$K_FOOTBYNAME = 3, ! FOOTNOTES BY NAME CRF$K_FOOTBYINDEX = 4, ! FOOTNOTES BY INDEX ! ! SAVE/DELETE TREE INDICATORS CRF$K_DELETE = 0, ! INDICATOR TO DELETE THE TABLES CRF$K_SAVE = 1, ! INDICATOR TO SAVE THE TABLES ! ! DEFINITION OR REFERENCE IN CRF$INSRTREF CALL CRF$K_REF = 0, ! REFERENCE TO A SYMBOL CRF$K_DEF = 1, ! DEFINITION OF SYMBOL ! ! FOOTNOTE FUNCTION INDICATORS DURING CRF$OUT CRF$K_FN_INACTIVE = 0, CRF$K_FN_CROP = 1, CRF$K_FN_ACTIVE = 2, ! ! FOOTNOTE DATABASE DISPOSITION DURING CRF$OUT CRF$K_FN_DELETE = 0, CRF$K_FN_SAVE = 1; ! ! GENERATE THE CROSS REFERENCE CONTROL TABLE ! ! The $CRFCTLTABLE defined here must match the CRFDEF3 structure ! defined in [STARLET]CRF.SDL and the $CRFCTLTABLE structure defined ! in [STARLET]CRFMACROS.MAR. ! ! The CTLTABVER field was undefined before version 1 of the structure. ! It was in a reserved field and was initialized to 0. ! Prior to version 1, VALTYPE and REFTYPE were undefined, reserved fields ! initialized to 0. KEYWORDMACRO $CRFCTLTABLE(KEYTYPE=ASCIC,VALTYPE=BIN_U32,REFTYPE=ASCIC, ERROR=0,OUTPUT=0, MEMEXP=50, KEY1TABLE=0, KEY2TABLE=0, VAL1TABLE=0, VAL2TABLE=0, REF1TABLE=0, REF2TABLE=0, MULDEF=0)= BLOCK[CRF$K_TBLSIZE,BYTE] ALIGN(0) PRESET( [CRF$W_CTLTABVER] = 1, ! INCREMENT WHEN STRUCTURE DEF. CHANGES [CRF$B_KEYTYPE] = %NAME('CRF$K_',KEYTYPE), ! TYPE OF KEY [CRF$B_VALTYPE] = %NAME('CRF$K_',VALTYPE), ! TYPE OF SYMBOL VALUE [CRF$B_REFTYPE] = %NAME('CRF$K_',REFTYPE), ! TYPE OF SYMBOL REFERENCE [CRF$L_MAXBLK] = MEMEXP*512, ! SIZE IN BYTES OF VA TO ALLOCATE [CRF$L_MEMEXP] = MEMEXP, ! SIZE IN PAGELETS OF VA TO ALLOCATE [CRF$L_ERROR] = ERROR, ! ERROR ROUTINE ADDRESS [CRF$L_OUTPUT] = OUTPUT, ! OUTPUT ROUTINE ADDRESS [CRF$L_K1FMTBL] = KEY1TABLE, ! POINTER TO PRIMARY KEY FIELD DESCRIPTION TABLE [CRF$L_K2FMTBL] = KEY2TABLE, ! POINTER TO SECOND KEY FIELD DESCRIPTION TABLE [CRF$L_V1FMTBL] = VAL1TABLE, ! POINTER TO TABLE DESCRIBING ! THE KEY VALUE FIELD [CRF$L_V2FMTBL] = VAL2TABLE, ! POINTER TO SECONDARY ! VALUE FIELD DESCRIPTION TABLE [CRF$L_R1FMTBL] = REF1TABLE, ! POINTER TO PRIMARY ! REFERENCE FIELD DESCRIPTION TABLE [CRF$L_R2FMTBL] = REF2TABLE, ! POINTER TO SECONDARY REFERENCE ! FIELD DESCRIPTION TABLE [CRF$V_MULDEF] = MULDEF ! SET MULDEF INICATOR )%; ! ! GENERATE AN ENTRY IN A TABLE DESCRIBING FORMATS OF A PARTICULAR ! FIELD OF THE LINE ! ! The $CRFFIELD defined here must match the $CRFFIELD structure defined ! in [STARLET]CRFMACROS.MAR. KEYWORDMACRO $CRFFIELD(BIT_MASK=0,FAO_STRING,SET_CLEAR=1,FIELD_WIDTH)= BLOCK[CRF$K_FIELDSIZE,BYTE] ALIGN(2) INITIAL(WORD(BIT_MASK OR %X'8000'), ! BIT PATTERN FOR MATCH BYTE(SET_CLEAR), ! MATCH ON SET OR CLEAR BYTE(FIELD_WIDTH), ! WIDTH OF FIELD LONG(%CHARCOUNT(FAO_STRING)), ! LENGTH OF FAO STRING LONG(UPLIT(FAO_STRING)))%, ! ADDRESS OF TEXT STRING ! ! GENERATE A FIELD TABLE END INDICATOR ! $CRFFIELDEND = WORD INITIAL(0)%; ! ! ---- < End of module CRFMAC.REQ - 12-AUG-2010 13:57:05.21 > - ! ! ! Version: 'V04-000' ! !**************************************************************************** !* * !* COPYRIGHT (c) 1978, 1980, 1982, 1984 BY * !* DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * !* ALL RIGHTS RESERVED. * !* * !* THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * !* ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * !* INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * !* COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * !* OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * !* TRANSFERRED. * !* * !* THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * !* AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * !* CORPORATION. * !* * !* DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * !* SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * !* * !* * !**************************************************************************** ! !+ ! FACILITY : ! EDITPC Pattern Operator Encodings ! ! ABSTRACT : ! The EDITPC instruction, Edit Packed to Character String, performs the ! editing according to the pattern string which consists of one byte ! pattern operators. Some pattern operators take no operands. Some ! take a repeat count which is contained in the rightmost nibble of the ! pattern operator itself. The rest take a one byte operand which ! follows the pattern operator immediately. This operand is either an ! unsigned integer length or byte character. Edit patterns must end ! with the EO$END pattern operator. ! ! The EODEF macros permit easy construction of the edit pattern. ! ! ENVIRONMENT: ! ! AUTHOR: ! R. P. Grosso, Creation Date 9-Oct-1980 ! ! MODIFIED BY: ! ! V02-001 RPG0001 Bob Grosso 3-Aug-1981 ! Parenthesize use of formals and use signed relational ! expressions. ! !- ! EO$END edit pattern operator encoding MACRO EO$END = BYTE(%X'00') %; ! EO$END_FLOAT edit pattern operator encoding MACRO EO$END_FLOAT = BYTE(%X'01') %; ! EO$CLEAR_SIGNIF edit pattern operator encoding MACRO EO$CLEAR_SIGNIF = BYTE(%X'02') %; ! EO$SET_SIGNIF edit pattern operator encoding MACRO EO$SET_SIGNIF = BYTE(%X'03') %; ! EO$STORE_SIGN edit pattern operator encoding MACRO EO$STORE_SIGN = BYTE(%X'04') %; ! EO$LOAD_FILL edit pattern operator encoding ! Where CH is the fill character MACRO EO$LOAD_FILL(CH) = BYTE(%X'40',CH) %; ! EO$LOAD_SIGN edit pattern operator encoding ! Where CH is loaded into the sign register MACRO EO$LOAD_SIGN(CH) = BYTE(%X'41',CH) %; ! EO$LOAD_PLUS edit pattern operator encoding ! Where CH is loaded into the sign register MACRO EO$LOAD_PLUS(CH) = BYTE(%X'42',CH) %; ! EO$LOAD_MINUS edit pattern operator encoding ! Where CH is loaded into the sign register MACRO EO$LOAD_MINUS(CH) = BYTE(%X'43',CH) %; ! EO$INSERT edit pattern operator encoding ! Where CH is the character inserted MACRO EO$INSERT(CH) = BYTE(%X'44',CH) %; ! EO$BLANK_ZERO edit pattern operator encoding !Fix up the destination to be blank when the value is zero !Where the fill character is stored in the last LEN bytes !when the source string is zero. !If LEN EQL 0 then unpredictable MACRO EO$BLANK_ZERO(LEN) = %IF (LEN) LEQ 0 %THEN %WARN('EO$BLANK_ZERO - Length must be greater than zero') %FI BYTE(%X'45', LEN) %; ! EO$REPLACE_SIGN edit pattern operator encoding ! Fix up the destination sign when the value is -0 ! Where contents of fill register are stored ! in last LEN bytes of destination. ! If LEN EQL 0 then unpredictable MACRO EO$REPLACE_SIGN(LEN) = %IF (LEN) LEQ 0 %THEN %WARN('EO$REPLACE_SIGN - Length must be greater than zero') %FI BYTE(%X'46', LEN) %; ! EO$ADJUST_INPUT edit pattern operator encoding ! Handle source strings with lenths different from the output ! if LEN EQL 0 or LEN GTR 31 then unpredictable MACRO EO$ADJUST_INPUT(LEN) = %IF (LEN) LEQ 0 %THEN %WARN('EO$ADJUST_INPUT - Length must be greater than zero') %ELSE %IF (LEN) GTR 31 %THEN %WARN('EO$ADJUST_INPUT - Length must be less than 32') %FI %FI BYTE(%X'47', LEN) %; ! EO$FILL edit pattern operator encoding ! Insert the fill character. ! where R is the repeat count. ! R must fit in a nibble. MACRO EO$FILL(R) = %IF (R) LEQ 0 %THEN %WARN('EO$FILL - Repeat must be greater than zero') %ELSE %IF (R) GTR 15 %THEN %WARN('EO$FILL - Repeat must be less than 16') %FI %FI BYTE(%X'80' + R) %; ! EO$MOVE edit pattern operator encoding ! Move digits. ! where R is the repeat count. ! R must fit in a nibble. MACRO EO$MOVE(R) = %IF (R) LEQ 0 %THEN %WARN('EO$MOVE - Repeat must be greater than zero') %ELSE %IF (R) GTR 15 %THEN %WARN('EO$MOVE - Repeat must be less than 16') %FI %FI BYTE(%X'90' + R) %; ! EO$FLOAT edit pattern operator encoding ! Move digits, floating the sign across insignificant digits. ! where R is the repeat count. ! R must fit in a nibble. MACRO EO$FLOAT(R) = %IF (R) LEQ 0 %THEN %WARN('EO$FLOAT - Repeat must be greater than zero') %ELSE %IF (R) GTR 15 %THEN %WARN('EO$FLOAT - Repeat must be less than 16') %FI %FI BYTE(%X'A0' + R) %; !+ ! ! End EDITPC edit pattern operator encodings ! !- ! ! ---- < End of module EODEFB.B32 - 12-AUG-2010 13:57:05.27 > - ! ! RMSMAC.REQ - REQUIRE FILE FOR BLISS-32 INTERFACE TO RMS-32 ! Version 'X-14' ! !**************************************************************************** !* * !* COPYRIGHT (c) 1978, 1980, 1982, 1984 BY * !* DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * !* ALL RIGHTS RESERVED. * !* * !* THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * !* ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * !* INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * !* COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * !* OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * !* TRANSFERRED. * !* * !* THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * !* AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * !* CORPORATION. * !* * !* DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * !* SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * !* * !* * !**************************************************************************** ! ! ! !++ ! ! FACILITY: RMS-32 Interface from BLISS ! ! FUNCTIONAL DESCRIPTION: ! ! This file is to be used as a REQUIRE FILE in any BLISS-32 program ! using RMS-32. Its MACROs permit the BLISS-32 program to allocate ! and statically initialize the control blocks of interest to RMS-32, ! dynamically initialize these control blocks, access the fields of ! these control blocks, and invoke the functions supported by RMS-32. ! Note that any changes made to any structure definitions must also ! be reflected in the file RMS32MAC.MAR which contains the same ! information for MACRO-32 programs. ! ! ENVIRONMENT: Link (automatically) with STARLET.OLB ! ! AUTHOR: Peter A. Belmont, CREATION DATE: 27-May-77 ! ! ********************* CAUTION ************************ ! ! The macros ($FAB, $RAB, $NAM ...) in this module can be used ! positionally (e.g., $RAB key,nlk,,32) as well as with keywords. ! If there is any unused space that is made into a new cell, it ! should be added at the end of the existing definition; otherwise, ! there could be a regression in existing usage. EWoods, 3/21/00. ! ! *************************************************************** ! ! MODIFIED BY: ! ! X-14 EMW0321 Elinor M. Woods 30-Apr-2003 ! Add quadword alignment [ALIGN(3)] to the $xxx_DECL ! macros that allocate RMS structures to help Bliss ! applications that use these macros to transparently ! avoid alignment faults. The performance improvement ! compensates for the small increase in memory consumption. ! ! Note that the ALIGN(3) MUST be inserted prior to the ! BLOCK specification because it is context sensitive ! when the RMS macro is used with a REF in the user ! application. ! ! X-13 AJ Anders Johansson 04-Oct-2002 ! Make sure $RAB64_DECL definitions etc are included ! on IPF builds as well as on Alpha builds. ! ! (Audit trail was out of step.. VDE expects 13) ! ! X-14 EMW0208 Elinor M. Woods 21-Mar-2000 ! RMSLCK: Add new ROP_2 word cell at end of $RAB64 ! and $RAB64_INIT macros (X-13 correction). See ! caution above. ! ! X-13 EMW0206 Elinor M. Woods 09-Mar-2000 ! RMSLCK: Add new ROP_2 word cell to traditional ! section of RAB in $RAB, $RAB_INIT, $RAB64, and ! $RAB64_INIT macros. ! ! X-12 EMW Elinor M. Woods 25-Jul-1997 ! HFS-1/RMS: Remove USER_CONTEXT as input to $NAML ! and $NAML_INIT macros. Quadword is not recognized ! by Bliss32 and do not want to restrict (conditionalize) ! its usage to Bliss64 (which was required for RAB64). ! ! X-11 EMW0142 Elinor M. Woods 24-Jul-1997 ! HFS-1/RMS: Add 3 new FILESYS fields and USER_CONTEXT ! field to $NAML and $NAML_INIT macros (as well as ! 6 more RESERVED_MBZ_n fields). Remove temporary ! BLN_SELF_POINTER field from $NAML and relocate ! FIRST_WILD_DIR and LONG_DIR_LEVELS to short NAM spare ! field. ! ! X-10 EMW Elinor M. Woods 16-Jul-1997 ! HFS-1/RMS: Remove temporary default setting of NAML bit ! in NOP for $NAML and $NAML_INIT macros. ! ! X-9 EMW Elinor M. Woods 10-Jul-1997 ! HFS-1/RMS: And this time remove an extra comma. ! Also remove NAML$L_BLN_SELF_POINTER field initialization. ! This field will be removed completely once RMSUSR ! NAMLDEF is changed. ! ! X-8 EMW Elinor M. Woods 10-Jul-1997 ! HFS-1/RMS: Correction to X-7 (add missing comma to $NAML). ! ! X-7 EMW0139 Elinor M. Woods 08-Jul-1997 ! HFS-1/RMS: Make following changes to $NAML and ! $NAML_INIT macros: (1) initialize new NAML ! NAML$L_BLN_SELF_POINTER field; and (2) ! temporarily (until removed from RMS code) set ! NAM$V_NAML bit in NAM$B_NOP field. The latter ! required setting a bit by default and was accomplished ! with two new temporary macros ($RMS_BITFLD_NAML and ! $RMS_BITFLD_INI_NAML)). Also initialize two ! new fields that were added to NAML definition ! (NAML$L_RESERVED_MBZ_n). ! ! X-6 MLH Mark Hopkins 24-JUN-1997 ! Correct macro name in $naml ! ! X-5 MLH0005 Mark Hopkins 23-JUN-1997 ! HFS-1/RMS: Add fields FIRST_WILD_DIR and LONG_DIR_LEVELS to ! NAML macro. Fold in changes to layout of the long ! expanded name and long resultant name fields since the X-4 ! checkin. ! ! X-4 WBF Burns Fisher 14-Mar-1997 ! Add Matt Doremus' NAML macros ! ! X-3 EMW0038 Elinor M. Woods 20-Oct-1994 ! 64-bit support: Modify new macro $RAB64_INIT. ! ! X-2 EMW0037 Elinor M. Woods 26-Sep-1994 ! 64-bit support: add new macros ($RAB64 and $RAB64_INIT) ! to initialize EXTENDED RAB control block when module is ! compiled with BLISS64E compiler. ! ! X-1 RAB Richard A. Bishop 24-Jun-1991 ! Moved to [STARLET] facility ! ! ================================== ! Old audit trail follows: ! ! X-16 SAD0041 Stuart A. Davidson 23-JUN-1987 ! Insert module history missed for x-15 ! ! X-15 SAD0041 Stuart A. Davidson 11-JUN-1987 ! Fix MODE parameter to XABITM macro to supply the XAB$C_ prefix. ! ! X-14 SAD0032 Stuart A. Davidson 16-FEB-1987 ! Remove XABSTAT and XABNET support in favor of XABITM. ! ! X-13 KPS140 Kenneth P. Siegel 27-Oct-1986 ! Macros were still busted ! I fixed XABSTAT macros ! yet again. AAAARRRGGGHHHH. ! ! X-12 PLL0000 Pam Levesque 26-Oct-1986 ! Try again - remove extra comma in $XABSTAT_INIT. ! ! X-11 PLL0000 Pam Levesque 26-Oct-1986 ! Add missing comma to XABSTAT macro. ! ! X-10 KPS0133 Kenneth P. Siegel 25-Oct-1986 ! Change XABSTAT macros AGAIN to reflect yet more changes ! in XABSTATDEF in RMSUSR. ! ! X-9 KPS0102 Kenneth P. Siegel 08-Oct-1986 ! Changed XABSTAT macros to reflect changes to the ! XABSTATDEF macro in RMSUSR. ! ! X-8 JWT0243 Jim Teague 4-Sep-1986 ! Add new fields to $XABKEY for collated keys. ! ! X-7 SAD002 Stuart A. Davidson 3-SEP-1986 ! Add $XABNET macros. ! ! X-6 KPS062 Kenneth P. Siegel 06-Aug-1986 ! Added $XABSTAT macro definitions. ! ! X-5 DAS David A. Solomon 30-Nov-1985 ! Add $XABRU. ! ! X-4 JEJ0170 James E Johnson 16-Sep-1985 ! Another $XABJNL change. Remove LAST_RFA and add ! JNLIDX, BACKUP_SEQNO, and BACKUP_DONE. ! ! X-3 DAS David A. Solomon 08-Aug-1985 ! Track $XABJNL interface changes. Add FAB$B_JOURNAL ! and FAB$B_RU_FACILITY. ! ! V04-001 JEJ0084 James E Johnson 25-Mar-1985 ! Fix the item list references in the $XABTRM macro. ! ! V03-017 DAS0005 David Solomon 06-Jun-1984 ! Remove extra comma in $XABTRM_INIT. ! ! V03-016 DGB0037 Donald G. Blair 27-Mar-1984 ! Fix XAB$B_MTACC, which has never been initializable ! from the $XABPRO macro. ! ! V03-015 DGB0035 Donald G. Blair 23-Mar-1984 ! Add fields to protection xab: XAB$B_PROT_OPT, ! XAB$L_ACLBUF, XAB$W_ACLSIZ, XAB$W_ACLLEN, ! XAB$L_ACLCTX, XAB$L_ACLSTS ! ! V03-014 DAS0004 David Solomon 13-Feb-1984 ! Fix typos in $XABJNL_INIT. Add support for FAB$V_LNM_MODE, ! FAB$V_CHAN_MODE, FAB$V_FILE_MODE, and XAB$B_PROT_MODE. ! ! V03-013 DAS0003 David Solomon 01-Aug-1983 ! Fix missing comma in NOP changes in V03-012. ! ! V03-012 RAS0169 Ron Schaefer 12-Jul-1983 ! Add NOP parameter and delete $XABACE macros. ! ! V03-011 LJA0066 Laurie J. Anderson 01-Mar-1983 ! Add initialization of CXRBFZ (new field in XABCXR) ! length of the CXRBUF in bytes. ! Fix XABCXR_INIT which is missing a ). ! ! V03-010 JWH0190 Jeffrey W. Horn 21-Feb-1983 ! Add $XABACE macros for the Access Control Entry XAB. ! ! V03-009 DAS0002 David Solomon 09-Feb-1983 ! Add $XABTRM macros for the terminal XAB. ! ! V03-008 JWH0179 Jeffrey W. Horn 02-Feb-1983 ! Fix bug in JWH0165. ! ! V03-007 JWH0165 Jeffrey W. Horn 05-Jan-1983 ! Fix Journal XAB macros to relect changes to XAB layout. ! ! V03-006 LJA0047 Laurie J. Anderson 28-Dec-1982 ! Add comments/initialization for SEQ/REL NRP context ! ! V03-005 LJA0036 Laurie J. Anderson 27-Oct-1982 ! Allow for initialization of the key buffer pointers in XABCXR ! Fix up initialization of context XAB's due to rearrangement. ! ! V03-004 CWH0001 CW Hobbs 27-Aug-1982 ! Standard form service calls ($CLOSE, etc) are now ! defined in STARLET.SDL. The declarations ! in this module have been commented away. ! ! V03-003 JWH0001 Jeffrey W. Horn 07-Jul-1982 ! Add XABJNL, Journaling XAB. ! ! V03-002 LJA0010 Laurie Anderson 6-Jul-1982 ! Fix problem with initialization of RAB$L_XAB ! ! V03-001 LJA0009 Laurie Anderson 14-Jun-1982 ! Add RAB$L_XAB, to support new context XAB (XABCXR) ! Add two new XABs (of type context), one for FAB, other ! for RAB, XABCXF and XABCXR, respectively. ! ! V02-010 RAS0061 Ron Schaefer 15-Jan-1982 ! Add FAB$W_GBC and fix the bad status-check macros. ! ! V02-009 KBT0003 Keith B Thompson 8-Jan-1982 ! Remove COMP, change STRUCT to PROLOG and add MTACC ! ! V02-008 CDS0001 C Saether 4-Nov-1981 ! Use the symbolic value "xab$c_none" to specify ! default value for the key xab "struct" and "compat" fields. ! ! V02-007 PSK0002 Paulina S Knibbe 26-Aug-1981 ! Make more things symbolic ! ! V02-006 PSK0001 Paulina S Knibbe 21-Aug-1981 ! Add support for new long key XAB fields. ! ! V02-005 RAS0069 Ron Schaefer 17-Jun-1981 ! Correct the service macros (eg. $CLOSE) to have the ! correct linkage declaration and addressing mode. ! ! V02-004 KRM0015 Karl Malik 18-May-1981 ! Modify $NAM and $NAM_INIT to include the additional ! 40 bytes of the extended NAM block. ! ! V02-003 MCN0007 Maria del C. Nasr 12-May-1981 ! Use old symbol for new length of backup date and time XAB. ! ! V02-002 RAS0042 Ron Schaefer 11-Feb-1981 ! Add the missing SUC parameters to the following file ! processing macros: ! $CLOSE, $CREATE, $DISPLAY, $ERASE, $EXTEND, $MODIFY, $OPEN ! ! V02-001 MCN0004 Maria del C. Nasr 17-Dec-1980 ! Change definition of $XABDAT to include backup date and ! time. ! ! REVISION HISTORY: ! ! Peter A. Belmont, 22-Jun-77 ! - added $CLOSE, etc., to $RMS_CLOSE, etc. ! - revised RMS_OKSTATUS macro ! - changed "$K_" back to "$C_" ! - fixed ASYN in $RAB to recognize YES (ASYN=YES) ! ! Peter A. Belmont, 6-July-77 ! - added the XXX_INIT and XXX_INI macros ! - which implement dynamic initialization of ! - control blocks. ! ! Christopher Cooper, 31-Oct-78 ! - A lot has happened since the last update of this ! history. ! - Added XABKEY and XABSUM initialization/declaration ! macros. ! ! Alan Lehotsky 13-Dec-78 ! - No support in $FAB and $FAB_INIT macros for DNM or ! FNM keywords. Cannot completely support the MACRO-32 ! semantics, as we cannot force the file-name string ! into the $RMSNAM psect. ! ! Unknown RMS V1.5 person Spring 1979 ! - Support added for the ISAM segments, KEY XAB's and additional ! key fields in RAB's and FAB's. ! - Support DNM and FNM keywords by allowing the names to go into ! the $PLIT$ psect. ! ! Ron Schaefer 22-Oct-79 ! - Support for the POS and SIZ multiple fields within the ! $XABKEY and $XABKEY_INIT macros. ! Either POS or POSn forms are accepted. ! ! Ron Schaefer 30-Oct-79 ! - Support for AID, BKZ and DEQ fields in $XABALL and ! $XABALL_INIT. Also remove spurious support for ! NOA, NOK and PVN fields in $XABSUM and $XABSUM_INIT, ! since these fields are readonly. ! ! DOCUMENTATION: ! ! RMSMPP.RNO Mini Project Plan, BLISS RMS Support Project ! RMSSPC.RNO Functional Specifications, BLISS RMS Support ! User Documentation, BLISS RMS-32 Support ! Maintenance Documentation, BLISS RMS-32 Support ! !-- !++ ! ! $RMS_OFFSET ! ! User macro. Takes name of an RMS-32 field as ! parameter and evaluates to the BYTE offset ! of that field from the base of the control block. ! ! Use: ! OFFSET = $RMS_OFFSET(FAB$L_ABC); ! !-- MACRO $RMS_OFFSET(NAME) = $RMS_OFFSET_1(%REMOVE(NAME)) %, $RMS_OFFSET_1 (X) = X %; !++ ! ! STATIC INITIALIZATION MACRO UTILITIES ! ! Internal macros. Used by the initialization ! macros below to assign initial values to ! the fields of the RMS-32 control blocks. ! !-- MACRO !++ ! ! $RMS_BITFLD (and its support macros ...) ! ! Internal macro. Allows the initialization ! of a field with the OR of one or more (named) bits. ! ! $RMS_BITFLD(ALLOC,PREFIX,VALUE) builds an ! initial value of size ALLOC ( BYTE, WORD, ! or LONG ), setting the bits whose names ! are of the form PREFIX//VAL where ! VAL is either VALUE or one of the elements ! of VALUE when VALUE is a tuple (i.e., ). ! !-- $RMS_BITS(A,B)[]= %NAME(A,B) $RMS_OR(%REMAINING) $RMS_BITS(A,%REMAINING) %, $RMS_OR[]= OR %, $RMS_BITFLD(ALLOC,PREFIX,VALUE)= %IF %NULL(VALUE) %THEN ALLOC(0) %ELSE ALLOC($RMS_BITS(PREFIX,%REMOVE(VALUE))) %FI %, !++ ! ! $RMS_BITFLD_INI ! ! Internal macro. Permits the dynamic initialization ! of a field with the OR of one or more named bits. ! ! $RMS_BITFLD_INI(BLK,NAME,PREFIX,VALUE) stores ! into BLK[NAME] the value obtained by OR'ing ! together the bits whose names are PREFIX//VAL ! where VAL is either VALUE or is one of the ! elements of VALUE when VALUE is a tuple. ! !-- $RMS_BITFLD_INI(BLK,NAME,PREFIX,VALUE)= %IF %NULL(VALUE) %THEN %EXITMACRO %FI BLOCK[BLK,%REMOVE(NAME);0,BYTE] = $RMS_BITS(PREFIX,%REMOVE(VALUE)) %, !++ ! ! $RMS_CODFLD ! ! Internal macro. Allows the initialization ! of a field with a named value. ! ! $RMS_CODFLD(ALLOC,PREFIX,VALUE) ! allocates a value of size ALLOC (BYTE, WORD, or LONG) ! and initializes it with the value whose name ! is PREFIX//VALUE. ! !-- $RMS_CODFLD(ALLOC,PREFIX,VALUE)= ALLOC(%NAME(PREFIX,%REMOVE(VALUE))) %, !++ ! ! $RMS_CODFLD_INI ! ! Internal macro. Allows the dynamic initialization ! of a field with a named value. ! ! $RMS_CODFLD_INI(BLK,NAME,PREFIX,VALUE) ! assigns to BLK[NAME] the value whose name is ! PREFIX//VALUE ! !-- $RMS_CODFLD_INI(BLK,NAME,PREFIX,VALUE)= %IF %NULL(VALUE) %THEN %EXITMACRO %FI BLOCK[BLK,%REMOVE(NAME);0,BYTE] = (%NAME(PREFIX,%REMOVE(VALUE))) %, !++ ! ! $RMS_VALFLD ! ! Internal macro. Permits the initialization ! of a field with a general value. ! ! $RMS_VALFLD(ALLOC,VALUE) allocates ! a field of size ALLOC (BYTE, WORD, or LONG) ! and initializes it with the (general) value, VALUE. ! !-- $RMS_VALFLD(ALLOC,VALUE)= ALLOC(VALUE) %, !++ ! ! $RMS_VALFLD_INI ! ! Internal macro. Permits the dynamic initialization ! of a field with a general value. ! ! $RMS_VALFLD_INI(BLK,NAME,VALUE) stores the value VALUE ! the field BLK[NAME]. ! !-- $RMS_VALFLD_INI(BLK,NAME,VALUE)= %IF %NULL(VALUE) %THEN %EXITMACRO %FI %IF %IDENTICAL(VALUE,0) %THEN %EXITMACRO %FI BLOCK[BLK,%REMOVE(NAME);0,BYTE] = VALUE %, !++ ! ! $RMS_8FLD ! ! Internal macro. Permits the initialization of 8 contiguous fields ! named by the technique XXX$A_FLDn, where n ranges from 0 to 7. ! ! $RMS_8FLD(ALLOC,VALUE0,VALUE1,VALUE2,VALUE3,VALUE4,VALUE5,VALUE6,VALUE7) ! allocates a 8 continguous fields of size ALLOC (BYTE, WORD or LONG) ! and initializes them with the values VALUE0 thru VALUE7. A value of 0 ! is supplied for any values that are null. ! !-- $RMS_8FLD(ALLOC,VAL0,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7)= ALLOC( %IF %NULL(VAL0) %THEN (0) %ELSE (VAL0) %FI, %IF %NULL(VAL1) %THEN (0) %ELSE (VAL1) %FI, %IF %NULL(VAL2) %THEN (0) %ELSE (VAL2) %FI, %IF %NULL(VAL3) %THEN (0) %ELSE (VAL3) %FI, %IF %NULL(VAL4) %THEN (0) %ELSE (VAL4) %FI, %IF %NULL(VAL5) %THEN (0) %ELSE (VAL5) %FI, %IF %NULL(VAL6) %THEN (0) %ELSE (VAL6) %FI, %IF %NULL(VAL7) %THEN (0) %ELSE (VAL7) %FI )%, !++ ! ! $RMS_8FLD_INI ! ! Internal macro. Permits the dynamic initialization of 8 contiguous ! fields named by the technique XAB$f_FLDn, where n ranges from 0 to 7. ! ! $RMS_8FLD-INI(BLK,NAME)[VALUE_LIST] ! initializes up to 8 fields with the values in VALUE_LIST. ! !-- $RMS_8FLD_INI(BLK,NAME) [VAL]= %IF %COUNT GEQ 8 %THEN %ERROR('Excess POS or SIZ values.') %EXITMACRO %FI $RMS_VALFLD_INI(BLK, (%NAME(NAME,%COUNT)), VAL) %, !++ ! ! $RMS_VALPRO (and support macros ...) ! ! Internal macro. Permits the initialization ! of a protection-word following the RSX-11M ! and STARLET conventions. ! !-- $RMS_VALPR2(RWEDCHAR)[]= AND NOT %IF %IDENTICAL(RWEDCHAR,'R') %THEN XAB$M_NOREAD %ELSE %IF %IDENTICAL(RWEDCHAR,'W') %THEN XAB$M_NOWRITE %ELSE %IF %IDENTICAL(RWEDCHAR,'E') %THEN XAB$M_NOEXE %ELSE %IF %IDENTICAL(RWEDCHAR,'D') %THEN XAB$M_NODEL %ELSE 0 %ERROR('Illegal value "', RWEDCHAR, '" of parameter PRO') %FI %FI %FI %FI $RMS_VALPR2(%REMAINING) %, $RMS_VALPR1(RWEDGROUP)= %B'1111' $RMS_VALPR2(%EXPLODE(RWEDGROUP)) %, $RMS_VALPRO(SYSTEM,OWNER,GROUP,WORLD)= %IF %LENGTH GTR 4 %THEN WORD(0) %ERROR('Illegal value of parameter PRO') %ELSE WORD( ($RMS_VALPR1(SYSTEM)) OR ($RMS_VALPR1(OWNER))^4 OR ($RMS_VALPR1(GROUP))^8 OR ($RMS_VALPR1(WORLD))^12) %FI %, !++ ! ! $RMS_VALPRO_INI ! ! Internal macro. Permits the dynamic initialization ! of a protection word following the RSX-11M and STARLET ! convention. ! !-- $RMS_VALPRO_INI(BLK,SYSTEM,OWNER,GROUP,WORLD)= %IF %LENGTH GTR 5 %THEN %ERROR('Illegal value of parameter PRO') %EXITMACRO %FI %IF %LENGTH EQL 1 %THEN %EXITMACRO %FI BLOCK[BLK,XAB$W_PRO;0,BYTE] = ($RMS_VALPR1(SYSTEM) OR ($RMS_VALPR1(OWNER))^4 OR ($RMS_VALPR1(GROUP))^8 OR ($RMS_VALPR1(WORLD))^12) %, !++ ! ! $RMS_VALUIC ! ! Internal macro. Permits the initialization ! of the two-word item, MEMBER/GROUP ! !-- $RMS_VALUIC(GROUP,MEMBER)= %IF %LENGTH NEQ 2 %THEN REP 2 OF WORD(0) %ERROR('Illegal value of parameter UIC') %ELSE WORD(MEMBER,GROUP) %FI %, !++ ! ! $RMS_VALUIC_INI ! ! Internal macro. Permits the dynamic initialization ! of the two-word item, MEMBER/GROUP ! !-- $RMS_VALUIC_INI(BLK,GROUP,MEMBER)= %IF %LENGTH NEQ 3 %THEN %ERROR('Illegal value of parameter UIC') %EXITMACRO %FI %IF %IDENTICAL(GROUP,0) AND %IDENTICAL(MEMBER,0) %THEN %EXITMACRO %FI BLOCK[BLK,XAB$L_UIC;0,BYTE] = ((MEMBER) OR (GROUP)^16) %, !++ ! ! $RMS_VALRFI ! ! Internal macro. Permits the initialization ! of the three-word RFI field with ! FILENO, SEQNO, RVN ! !-- $RMS_VALRFI(FILENO,SEQNO,RVN)= %IF %LENGTH NEQ 3 %THEN REP 3 OF WORD(0) %ERROR('Illegal value of parameter RFI') %ELSE WORD(FILENO,SEQNO,RVN) %FI %, !++ ! ! $RMS_VALRFI_INI ! ! Internal macro. Permits the dynamic initialization ! of the three-word RFI field with FILENO, SEQNO, and RVN. ! !-- $RMS_VALRFI_INI(BLK,FILENO,SEQNO,RVN)= %IF %LENGTH NEQ 4 %THEN %ERROR('Illegal value of parameter RFI') %EXITMACRO %FI %IF %IDENTICAL(FILENO,0) AND %IDENTICAL(SEQNO ,0) AND %IDENTICAL(RVN ,0) %THEN %EXITMACRO %FI BLOCK[BLK,XAB$W_RFI0;0,BYTE]= FILENO; BLOCK[BLK,XAB$W_RFI2;0,BYTE]= SEQNO; BLOCK[BLK,XAB$W_RFI4;0,BYTE]= RVN %; !++ ! ! $FAB_DECL ! ! Used to declare a FAB control block where ! initialization is not required. !-- MACRO $FAB_DECL = ALIGN(3) BLOCK[FAB$C_BLN,BYTE] %; !++ ! ! $FAB ! ! Used to allocate and statically initialize ! a FAB control block. ! !-- KEYWORDMACRO $FAB( FAC=GET, SHR, FNA=0, FNS=0, DNA=0, DNS=0, RTV=0, ORG=SEQ, RAT, FOP, XAB=0, MRS=0, JOURNAL, MRN=0, ALQ=0, DEQ=0, BLS=0, NAM=0, RFM=VAR, FSZ=0, FNM, DNM, BKS=0, CTX=0, GBC=0, LNM_MODE=0, CHAN_MODE=0, FILE_MODE=0, RU_FACILITY=0 )= $FAB_DECL INITIAL( $RMS_VALFLD(BYTE, FAB$C_BID), ! BID $RMS_VALFLD(BYTE, FAB$C_BLN), ! BLN $RMS_VALFLD(WORD, 0), ! IFI $RMS_BITFLD(LONG, FAB$M_, FOP), ! FOP $RMS_VALFLD(LONG, 0), ! STS $RMS_VALFLD(LONG, 0), ! STV $RMS_VALFLD(LONG, ALQ), ! ALQ $RMS_VALFLD(WORD, DEQ), ! DEQ $RMS_BITFLD(BYTE, FAB$M_, FAC), ! FAC $RMS_BITFLD(BYTE, FAB$M_, SHR), ! SHR $RMS_VALFLD(LONG, CTX), ! CTX $RMS_VALFLD(BYTE, RTV), ! RTV $RMS_CODFLD(BYTE, FAB$C_, ORG), ! ORG $RMS_BITFLD(BYTE, FAB$M_, RAT), ! RAT $RMS_CODFLD(BYTE, FAB$C_, RFM), ! RFM $RMS_BITFLD(BYTE, FAB$M_, JOURNAL), ! JOURNAL $RMS_VALFLD(BYTE, RU_FACILITY), ! RU_FACILITY $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, XAB), ! XAB $RMS_VALFLD(LONG, NAM), ! NAM %IF %NULL(FNM) %THEN $RMS_VALFLD(LONG, FNA), ! FNA %ELSE $RMS_VALFLD(LONG, UPLIT BYTE(FNM)), ! FNA %FI %IF %NULL(DNM) %THEN $RMS_VALFLD(LONG, DNA), ! DNA %ELSE $RMS_VALFLD(LONG, UPLIT BYTE(DNM)), ! DNA %FI %IF %NULL(FNM) %THEN $RMS_VALFLD(BYTE, FNS), ! FNS %ELSE $RMS_VALFLD(BYTE, %CHARCOUNT(FNM)), ! FNS %FI %IF %NULL(DNM) %THEN $RMS_VALFLD(BYTE, DNS), ! DNS %ELSE $RMS_VALFLD(BYTE, %CHARCOUNT(DNM)), ! DNS %FI $RMS_VALFLD(WORD, MRS), ! MRS $RMS_VALFLD(LONG, MRN), ! MRN $RMS_VALFLD(WORD, BLS), ! BLS $RMS_VALFLD(BYTE, BKS), ! BKS $RMS_VALFLD(BYTE, FSZ), ! FSZ $RMS_VALFLD(LONG, 0), ! DEV $RMS_VALFLD(LONG, 0), ! SDC $RMS_VALFLD(WORD, GBC), ! GBC BYTE( ! ACMODES ( LNM_MODE ^ $BITPOSITION(FAB$V_LNM_MODE) ) + ( CHAN_MODE ^ $BITPOSITION(FAB$V_CHAN_MODE) ) + ( FILE_MODE ^ $BITPOSITION(FAB$V_FILE_MODE) ) ), $RMS_VALFLD(BYTE, 0), ! RCF $RMS_VALFLD(LONG, 0) ! SPARE ) %; !++ ! ! $FAB_INIT ! ! Used to dynamically initialize ! a FAB control block. ! !-- KEYWORDMACRO $FAB_INIT( FAB, FAC=GET, SHR, FNA, FNS, DNA, DNS, RTV, ORG, RAT, FOP, XAB, MRS, JOURNAL, MRN, ALQ, DEQ, BLS, NAM, RFM=VAR, FSZ, FNM, DNM, BKS, CTX, GBC, LNM_MODE, CHAN_MODE, FILE_MODE, RU_FACILITY )= ( BIND $RMS_PTR = FAB; CH$FILL(0,FAB$C_BLN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(FAB$B_BID), FAB$C_BID); ! BID $RMS_VALFLD_INI($RMS_PTR,(FAB$B_BLN), FAB$C_BLN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(FAB$W_IFI), 0); ! IFI $RMS_BITFLD_INI($RMS_PTR,(FAB$L_FOP), FAB$M_, FOP); ! FOP ! $RMS_VALFLD_INI($RMS_PTR,(FAB$L_STS), 0); ! STS ! $RMS_VALFLD_INI($RMS_PTR,(FAB$L_STV), 0); ! STV $RMS_VALFLD_INI($RMS_PTR,(FAB$L_ALQ), ALQ); ! ALQ $RMS_VALFLD_INI($RMS_PTR,(FAB$W_DEQ), DEQ); ! DEQ $RMS_BITFLD_INI($RMS_PTR,(FAB$B_FAC), FAB$M_, FAC); ! FAC $RMS_BITFLD_INI($RMS_PTR,(FAB$B_SHR), FAB$M_, SHR); ! SHR $RMS_VALFLD_INI($RMS_PTR,(FAB$L_CTX), CTX); ! CTX $RMS_VALFLD_INI($RMS_PTR,(FAB$B_RTV), RTV); ! RTV $RMS_CODFLD_INI($RMS_PTR,(FAB$B_ORG), FAB$C_, ORG); ! ORG $RMS_BITFLD_INI($RMS_PTR,(FAB$B_RAT), FAB$M_, RAT); ! RAT $RMS_CODFLD_INI($RMS_PTR,(FAB$B_RFM), FAB$C_, RFM); ! RFM $RMS_BITFLD_INI($RMS_PTR,(FAB$B_JOURNAL), FAB$M_, JOURNAL); ! JOURNAL $RMS_VALFLD_INI($RMS_PTR,(FAB$B_RU_FACILITY), RU_FACILITY); ! RU_FACILITY ! $RMS_VALFLD_INI($RMS_PTR,(FAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(FAB$L_XAB), XAB); ! XAB $RMS_VALFLD_INI($RMS_PTR,(FAB$L_NAM), NAM); ! NAM $RMS_VALFLD_INI($RMS_PTR,(FAB$L_FNA), %IF %NULL(FNM) %THEN FNA %ELSE UPLIT BYTE(FNM) %FI); ! FNA $RMS_VALFLD_INI($RMS_PTR,(FAB$L_DNA), %IF %NULL(DNM) %THEN DNA %ELSE UPLIT BYTE(DNM) %FI); ! DNA $RMS_VALFLD_INI($RMS_PTR,(FAB$B_FNS), %IF %NULL(FNM) %THEN FNS %ELSE %CHARCOUNT(FNM) %FI); ! FNS $RMS_VALFLD_INI($RMS_PTR,(FAB$B_DNS), %IF %NULL(DNM) %THEN DNS %ELSE %CHARCOUNT(DNM) %FI); ! DNS $RMS_VALFLD_INI($RMS_PTR,(FAB$W_MRS), MRS); ! MRS $RMS_VALFLD_INI($RMS_PTR,(FAB$L_MRN), MRN); ! MRN $RMS_VALFLD_INI($RMS_PTR,(FAB$W_BLS), BLS); ! BLS $RMS_VALFLD_INI($RMS_PTR,(FAB$B_BKS), BKS); ! BKS $RMS_VALFLD_INI($RMS_PTR,(FAB$B_FSZ), FSZ); ! FSZ ! $RMS_VALFLD_INI($RMS_PTR,(FAB$L_DEV), 0); ! DEV ! $RMS_VALFLD_INI($RMS_PTR,(FAB$L_SDC), 0); ! SDC $RMS_VALFLD_INI($RMS_PTR,(FAB$W_GBC), GBC); ! GBC ! $RMS_VALFLD_INI($RMS_PTR,(FAB$B_ACMODES), 0); ! ACMODES $RMS_VALFLD_INI($RMS_PTR,(FAB$V_LNM_MODE), LNM_MODE); ! LNM_MODE $RMS_VALFLD_INI($RMS_PTR,(FAB$V_CHAN_MODE), CHAN_MODE); ! CHAN_MODE $RMS_VALFLD_INI($RMS_PTR,(FAB$V_FILE_MODE), FILE_MODE); ! FILE_MODE ! $RMS_VALFLD_INI($RMS_PTR,(FAB$B_RCF), 0); ! RCF ! $RMS_VALFLD_INI($RMS_PTR,(FAB$L_SPARE), 0); ! SPARE 0 ) %; !++ ! ! $NAM_DECL ! ! Permits the declaration of the NAM control block ! where initialization is not required. ! !-- MACRO $NAM_DECL = ALIGN(3) BLOCK[NAM$C_BLN,BYTE] %; !++ ! ! $NAM ! ! Macro to allocate and initialize the NAM control block. ! !-- KEYWORDMACRO $NAM( RSA=0, RSS=0, ESA=0, ESS=0, RLF=0, NOP)= $NAM_DECL INITIAL( $RMS_VALFLD(BYTE, NAM$C_BID), ! BID $RMS_VALFLD(BYTE, NAM$C_BLN), ! BLN $RMS_VALFLD(BYTE, RSS), ! RSS $RMS_VALFLD(BYTE, 0), ! RSL $RMS_VALFLD(LONG, RSA), ! RSA $RMS_BITFLD(BYTE, NAM$M_, NOP), ! NOP $RMS_VALFLD(BYTE, 0), ! RFS $RMS_VALFLD(BYTE, ESS), ! ESS $RMS_VALFLD(BYTE, 0), ! ESL $RMS_VALFLD(LONG, ESA), ! ESA $RMS_VALFLD(LONG, RLF), ! RLF REP 8 OF $RMS_VALFLD(WORD, 0), ! DVI REP 3 OF $RMS_VALFLD(WORD, 0), ! FID REP 3 OF $RMS_VALFLD(WORD, 0), ! DID $RMS_VALFLD(LONG, 0), ! WCC $RMS_VALFLD(LONG, 0), ! FNB $RMS_VALFLD(BYTE, 0), ! NODE $RMS_VALFLD(BYTE, 0), ! DEV $RMS_VALFLD(BYTE, 0), ! DIR $RMS_VALFLD(BYTE, 0), ! NAME/QUOTED $RMS_VALFLD(BYTE, 0), ! TYPE $RMS_VALFLD(BYTE, 0), ! VER $RMS_VALFLD(BYTE, 0), ! NMC $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! NODE $RMS_VALFLD(LONG, 0), ! DEV $RMS_VALFLD(LONG, 0), ! DIR $RMS_VALFLD(LONG, 0), ! NAME/QUOTED $RMS_VALFLD(LONG, 0), ! TYPE $RMS_VALFLD(LONG, 0), ! VER $RMS_VALFLD(WORD, 0), ! FIRST_WILD_DIR $RMS_VALFLD(WORD, 0), ! LONG_DIR_LEVELS $RMS_VALFLD(LONG, 0) ! SPARE ) %; !++ ! ! $NAM_INIT ! ! Used to dynamically initialize ! a NAM control block. ! !-- KEYWORDMACRO $NAM_INIT( NAM, RSA, RSS, ESA, ESS, RLF, NOP)= ( BIND $RMS_PTR = NAM; CH$FILL(0,NAM$C_BLN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(NAM$B_BID), NAM$C_BID); ! BID $RMS_VALFLD_INI($RMS_PTR,(NAM$B_BLN), NAM$C_BLN); ! BLN $RMS_VALFLD_INI($RMS_PTR,(NAM$B_RSS), RSS); ! RSS ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_RSL), 0); ! RSL $RMS_VALFLD_INI($RMS_PTR,(NAM$L_RSA), RSA); ! RSA $RMS_BITFLD_INI($RMS_PTR,(NAM$B_NOP), NAM$M_, NOP); ! NOP ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_RFS), 0); ! RFS $RMS_VALFLD_INI($RMS_PTR,(NAM$B_ESS), ESS); ! ESS ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_ESL), 0); ! ESL $RMS_VALFLD_INI($RMS_PTR,(NAM$L_ESA), ESA); ! ESA $RMS_VALFLD_INI($RMS_PTR,(NAM$L_RLF), RLF); ! RLF ! REP 8 OF $RMS_VALFLD_INI($RMS_PTR,(NAM$W_DVI), 0); ! DVI ! REP 3 OF $RMS_VALFLD_INI($RMS_PTR,(NAM$W_FID), 0); ! FID ! REP 3 OF $RMS_VALFLD_INI($RMS_PTR,(NAM$W_DID), 0); ! DID ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_WCC), 0); ! WCC ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_FNB), 0); ! FNB ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_NODE), 0); ! NODE ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_DEV), 0); ! DEV ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_DIR), 0); ! DIR ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_NAME), 0); ! NAME/QUOTED ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_TYPE), 0); ! TYPE ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_VER), 0); ! VER ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_NMC), 0); ! NMC ! $RMS_VALFLD_INI($RMS_PTR,(NAM$B_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_NODE), 0); ! NODE ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_DEV), 0); ! DEV ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_DIR), 0); ! DIR ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_NAME), 0); ! NAME/QUOTED ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_TYPE), 0); ! TYPE ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_VER), 0); ! VER ! $RMS_VALFLD_INI($RMS_PTR,(NAM$W_FIRST_WILD_DIR), 0); ! FIRST_WILD_DIR ! $RMS_VALFLD_INI($RMS_PTR,(NAM$W_LONG_DIR_LEVELS), 0); ! LONG_DIR_LEVELS ! $RMS_VALFLD_INI($RMS_PTR,(NAM$L_SPARE), 0); ! SPARE 0 ) %; MACRO $NAML_DECL = ALIGN(3) BLOCK[NAML$C_BLN,BYTE] %; KEYWORDMACRO $NAML (RSA=0, RSS=0, ESA=0, ESS=0, RLF=0, NOP, LONG_DNM, LONG_DEFNAME=0, LONG_DEFNAME_SIZE=0, LONG_FNM, LONG_FILENAME=0, LONG_FILENAME_SIZE=0, LONG_EXPAND=0, LONG_EXPAND_ALLOC=0, LONG_RESULT=0, LONG_RESULT_ALLOC=0, FILESYS_NAME=0, FILESYS_NAME_ALLOC=0, INPUT_FLAGS ) = $NAML_DECL INITIAL ($RMS_VALFLD(BYTE, NAML$C_BID), ! BID $RMS_VALFLD(BYTE, NAML$C_BLN), ! BLN $RMS_VALFLD(BYTE, RSS), ! RSS $RMS_VALFLD(BYTE, 0), ! RSL $RMS_VALFLD(LONG, RSA), ! RSA $RMS_BITFLD(BYTE, NAML$M_, NOP), ! NOP $RMS_VALFLD(BYTE, 0), ! RFS $RMS_VALFLD(BYTE, ESS), ! ESS $RMS_VALFLD(BYTE, 0), ! ESL $RMS_VALFLD(LONG, ESA), ! ESA $RMS_VALFLD(LONG, RLF), ! RLF REP 8 OF $RMS_VALFLD(WORD, 0), ! DVI REP 3 OF $RMS_VALFLD(WORD, 0), ! FID REP 3 OF $RMS_VALFLD(WORD, 0), ! DID $RMS_VALFLD(LONG, 0), ! WCC $RMS_VALFLD(LONG, 0), ! FNB $RMS_VALFLD(BYTE, 0), ! NODE $RMS_VALFLD(BYTE, 0), ! DEV $RMS_VALFLD(BYTE, 0), ! DIR $RMS_VALFLD(BYTE, 0), ! NAME/QUOTED $RMS_VALFLD(BYTE, 0), ! TYPE $RMS_VALFLD(BYTE, 0), ! VER $RMS_VALFLD(BYTE, 0), ! NMC $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! NODE $RMS_VALFLD(LONG, 0), ! DEV $RMS_VALFLD(LONG, 0), ! DIR $RMS_VALFLD(LONG, 0), ! NAME/QUOTED $RMS_VALFLD(LONG, 0), ! TYPE $RMS_VALFLD(LONG, 0), ! VER $RMS_VALFLD(WORD, 0), ! FIRST_WILD_DIR $RMS_VALFLD(WORD, 0), ! LONG_DIR_LEVELS $RMS_VALFLD(LONG, 0), ! SPARE %IF %NULL(LONG_DNM) %THEN $RMS_VALFLD(LONG, LONG_DEFNAME_SIZE), ! LONG_DEFNAME_SIZE %ELSE $RMS_VALFLD(LONG, %CHARCOUNT(LONG_DNM)), ! LONG_DEFNAME_SIZE %FI %IF %NULL(LONG_DNM) %THEN $RMS_VALFLD(LONG, LONG_DEFNAME), ! LONG_DEFNAME %ELSE $RMS_VALFLD(LONG, UPLIT BYTE(LONG_DNM)), ! LONG_DEFNAME %FI %IF %NULL(LONG_FNM) %THEN $RMS_VALFLD(LONG, LONG_FILENAME_SIZE), ! LONG_FILENAME_SIZE %ELSE $RMS_VALFLD(LONG, %CHARCOUNT(LONG_FNM)), ! LONG_FILENAME_SIZE %FI %IF %NULL(LONG_FNM) %THEN $RMS_VALFLD(LONG, LONG_FILENAME), ! LONG_FILENAME %ELSE $RMS_VALFLD(LONG, UPLIT BYTE(LONG_FNM)), ! LONG_FILENAME %FI $RMS_VALFLD(LONG, 0), ! LONG_NODE_SIZE $RMS_VALFLD(LONG, 0), ! LONG_NODE $RMS_VALFLD(LONG, 0), ! LONG_DEV_SIZE $RMS_VALFLD(LONG, 0), ! LONG_DEV $RMS_VALFLD(LONG, 0), ! LONG_DIR_SIZE $RMS_VALFLD(LONG, 0), ! LONG_DIR $RMS_VALFLD(LONG, 0), ! LONG_NAME_SIZE $RMS_VALFLD(LONG, 0), ! LONG_NAME $RMS_VALFLD(LONG, 0), ! LONG_TYPE_SIZE $RMS_VALFLD(LONG, 0), ! LONG_TYPE $RMS_VALFLD(LONG, 0), ! LONG_VER_SIZE $RMS_VALFLD(LONG, 0), ! LONG_VER $RMS_VALFLD(LONG, 0), ! LONG_EXPAND_SIZE $RMS_VALFLD(LONG, LONG_EXPAND), ! LONG_EXPAND $RMS_VALFLD(LONG, LONG_EXPAND_ALLOC), ! LONG_EXPAND_ALLOC $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_9 $RMS_VALFLD(LONG, 0), ! LONG_RESULT_SIZE $RMS_VALFLD(LONG, LONG_RESULT), ! LONG_RESULT $RMS_VALFLD(LONG, LONG_RESULT_ALLOC), ! LONG_RESULT_ALLOC $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_8 $RMS_VALFLD(LONG, 0), ! FILESYS_NAME_SIZE $RMS_VALFLD(LONG, FILESYS_NAME), ! FILESYS_NAME $RMS_VALFLD(LONG, FILESYS_NAME_ALLOC), ! FILESYS_NAME_ALLOC $RMS_VALFLD(LONG, 0), ! OUTPUT_FLAGS $RMS_BITFLD(LONG, NAML$M_, INPUT_FLAGS), ! INPUT_FLAGS $RMS_VALFLD(LONG, 0), ! USER_CONTEXT(0) $RMS_VALFLD(LONG, 0), ! USER_CONTEXT(1) $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_7 $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_6 $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_5 $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_4 $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_3 $RMS_VALFLD(LONG, 0), ! RESERVED_MBZ_2 $RMS_VALFLD(LONG, 0) ! RESERVED_MBZ_1 ) %; KEYWORDMACRO $NAML_INIT (NAML, RSA, RSS, ESA, ESS, RLF, NOP, LONG_DNM, LONG_DEFNAME, LONG_DEFNAME_SIZE, LONG_FNM, LONG_FILENAME, LONG_FILENAME_SIZE, LONG_EXPAND, LONG_EXPAND_ALLOC, LONG_RESULT, LONG_RESULT_ALLOC, FILESYS_NAME, FILESYS_NAME_ALLOC, INPUT_FLAGS ) = (BIND $RMS_PTR = NAML; CH$FILL(0,NAML$C_BLN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(NAML$B_BID), NAML$C_BID); ! BID $RMS_VALFLD_INI($RMS_PTR,(NAML$B_BLN), NAML$C_BLN); ! BLN $RMS_VALFLD_INI($RMS_PTR,(NAML$B_RSS), RSS); ! RSS $RMS_VALFLD_INI($RMS_PTR,(NAML$L_RSA), RSA); ! RSA $RMS_BITFLD_INI($RMS_PTR,(NAML$B_NOP), NAML$M_, NOP); ! NOP $RMS_VALFLD_INI($RMS_PTR,(NAML$B_ESS), ESS); ! ESS $RMS_VALFLD_INI($RMS_PTR,(NAML$L_ESA), ESA); ! ESA $RMS_VALFLD_INI($RMS_PTR,(NAML$L_RLF), RLF); ! RLF $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_DEFNAME), %IF %NULL(LONG_DNM) %THEN LONG_DEFNAME %ELSE UPLIT BYTE(LONG_DNM) %FI); ! LONG_DEFNAME $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_DEFNAME_SIZE), %IF %NULL(LONG_DNM) %THEN LONG_DEFNAME_SIZE %ELSE %CHARCOUNT(LONG_DNM) %FI); ! LONG_DEFNAME_SIZE $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_FILENAME), %IF %NULL(LONG_FNM) %THEN LONG_FILENAME %ELSE UPLIT BYTE(LONG_FNM) %FI); ! LONG_FILENAME $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_FILENAME_SIZE), %IF %NULL(LONG_FNM) %THEN LONG_FILENAME_SIZE %ELSE %CHARCOUNT(LONG_FNM) %FI); ! LONG_FILENAME_SIZE $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_RESULT_ALLOC), LONG_RESULT_ALLOC); ! LONG_RESULT_ALLOC $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_RESULT), LONG_RESULT); ! LONG_RESULT $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_EXPAND_ALLOC), LONG_EXPAND_ALLOC); ! LONG_EXPAND_ALLOC $RMS_VALFLD_INI($RMS_PTR,(NAML$L_LONG_EXPAND), LONG_EXPAND); ! LONG_EXPAND $RMS_VALFLD_INI($RMS_PTR,(NAML$L_FILESYS_NAME), FILESYS_NAME); ! FILESYS_NAME $RMS_VALFLD_INI($RMS_PTR,(NAML$L_FILESYS_NAME_ALLOC), FILESYS_NAME_ALLOC); ! FILESYS_NAME_ALLOC $RMS_BITFLD_INI($RMS_PTR,(NAML$L_INPUT_FLAGS), NAML$M_, INPUT_FLAGS); ! INPUT_FLAGS 0 ) %; !++ ! ! $XABDAT_DECL ! ! Permits the declaration of the XABDAT control block ! where initialization is not required. ! !-- MACRO $XABDAT_DECL = ALIGN(3) BLOCK[XAB$C_DATLEN,BYTE] %; !++ ! ! $XABDAT ! ! Macro to allocate and initialize the XABDAT control block. ! !-- KEYWORDMACRO $XABDAT( NXT=0, RVN=0, EDT0=0, EDT4=0)= $XABDAT_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_DAT), ! COD $RMS_VALFLD(BYTE, XAB$C_DATLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(WORD, RVN), ! RVN $RMS_VALFLD(WORD, 0), ! SPARE REP 2 OF $RMS_VALFLD(LONG, 0), ! RDT REP 2 OF $RMS_VALFLD(LONG, 0), ! CDT $RMS_VALFLD(LONG, EDT0), ! EDT0 $RMS_VALFLD(LONG, EDT4), ! EDT4 REP 2 OF $RMS_VALFLD(LONG, 0) ! BDT ) %; !++ ! ! $XABDAT_INIT ! ! Macro to dynamically initialize the XABDAT control block. ! !-- KEYWORDMACRO $XABDAT_INIT( XAB, NXT=0, RVN=0, EDT0=0, EDT4=0)= ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_DATLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_DAT); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_DATLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_VALFLD_INI($RMS_PTR,(XAB$W_RVN), RVN); ! RVN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE ! REP 2 OF $RMS_VALFLD_INI($RMS_PTR,(XAB$L_RDT), 0); ! RDT ! REP 2 OF $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CDT), 0); ! CDT $RMS_VALFLD_INI($RMS_PTR,(XAB$L_EDT0), EDT0); ! EDT0 $RMS_VALFLD_INI($RMS_PTR,(XAB$L_EDT4), EDT4); ! EDT4 ! REP 2 OF $RMS_VALFLD_INI($RMS_PTR,(XAB$L_BDT), 0); ! BDT 0 ) %; !++ ! ! $XABRDT_DECL ! ! Permits the declaration of the XABRDT control block ! where initialization is not required. ! !-- MACRO $XABRDT_DECL = ALIGN(3) BLOCK[XAB$C_RDTLEN,BYTE] %; !++ ! ! $XABRDT ! ! Macro to allocate and initialize the XABRDT control block. ! !-- KEYWORDMACRO $XABRDT( NXT=0, RVN=0 )= $XABRDT_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_RDT), ! COD $RMS_VALFLD(BYTE, XAB$C_RDTLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(WORD, RVN), ! RVN $RMS_VALFLD(WORD, 0), ! SPARE REP 2 OF $RMS_VALFLD(LONG, 0) ! RDT ) %; !++ ! ! $XABRDT_INIT ! ! Macro to dynamically initialize the XABRDT control block. ! !-- KEYWORDMACRO $XABRDT_INIT( XAB, NXT=0, RVN=0 )= ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_RDTLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_RDT); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_RDTLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_VALFLD_INI($RMS_PTR,(XAB$W_RVN), RVN); ! RVN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE ! REP 2 OF $RMS_VALFLD_INI($RMS_PTR,(XAB$L_RDT), 0); ! RDT 0 ) %; !++ ! ! $XABPRO_DECL ! ! Permits the declaration of the XABPRO control block ! where initialization is not required. ! !-- MACRO $XABPRO_DECL = ALIGN(3) BLOCK[XAB$C_PROLEN,BYTE] %; !++ ! ! $XABPRO ! ! Macro to allocate and initialize the XABPRO control block. ! !-- KEYWORDMACRO $XABPRO( NXT=0, UIC=<0,0>, PRO, MTACC=0, PROT_OPT, PROT_MODE=0, ACLBUF=0, ACLSIZ=0, ACLCTX=0 )= $XABPRO_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_PRO), ! COD $RMS_VALFLD(BYTE, XAB$C_PROLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALPRO(%REMOVE(PRO)), ! PRO $RMS_VALFLD(BYTE, MTACC), ! MTACC $RMS_BITFLD(BYTE, XAB$M_, PROT_OPT), ! PROT_OPT $RMS_VALUIC(%REMOVE(UIC)), ! UIC $RMS_VALFLD(BYTE, PROT_MODE), ! PROT_MODE $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! SPARE $RMS_VALFLD(LONG, ACLBUF), ! ACLBUF $RMS_VALFLD(WORD, ACLSIZ), ! ACLSIZ $RMS_VALFLD(WORD, 0), ! ACLLEN $RMS_VALFLD(LONG, ACLCTX), ! ACLCTX $RMS_VALFLD(LONG, 0) ! ACLSTS ) %; !++ ! ! $XABPRO_INIT ! ! Macro to dynamically initialize the XABPRO control block. ! !-- KEYWORDMACRO $XABPRO_INIT( XAB, NXT=0, UIC=<0,0>, PRO, MTACC=0, PROT_OPT, PROT_MODE=0, ACLBUF=0, ACLSIZ=0, ACLCTX=0 )= ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_PROLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_PRO); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_PROLEN); ! BLN ! $RMS_VALFLD_INI(SPARE); $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_VALPRO_INI($RMS_PTR,%REMOVE(PRO)); ! PRO $RMS_VALFLD_INI($RMS_PTR,(XAB$B_MTACC), MTACC); ! MTACC $RMS_BITFLD_INI($RMS_PTR,(XAB$B_PROT_OPT), XAB$M_, PROT_OPT); ! PROT_OPT $RMS_VALUIC_INI($RMS_PTR,%REMOVE(UIC)); ! UIC $RMS_VALFLD_INI($RMS_PTR,(XAB$B_PROT_MODE), PROT_MODE); ! PROT_MODE ! $RMS_VALFLD_INI(SPARE); $RMS_VALFLD_INI($RMS_PTR,(XAB$L_ACLBUF), ACLBUF); ! ACLBUF $RMS_VALFLD_INI($RMS_PTR,(XAB$W_ACLSIZ), ACLSIZ); ! ACLSIZ $RMS_VALFLD_INI($RMS_PTR,(XAB$W_ACLLEN), 0); ! ACLLEN $RMS_VALFLD_INI($RMS_PTR,(XAB$L_ACLCTX), ACLCTX); ! ACLCTX $RMS_VALFLD_INI($RMS_PTR,(XAB$L_ACLSTS), 0); ! ACLSTS 0 ) %; !++ ! ! $XABALL_DECL ! ! Permits the declaration of the XABALL control block ! where initialization is not required. ! !-- MACRO $XABALL_DECL = ALIGN(3) BLOCK[XAB$C_ALLLEN,BYTE] %; !++ ! ! $XABALL ! ! Macro to allocate and initialize the XABALL control block. ! !-- KEYWORDMACRO $XABALL( NXT=0, AID=0, ALN=ANY, ALQ=0, AOP, BKZ=0, DEQ=0, LOC=0, RFI=<0,0,0>, VOL=0)= $XABALL_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_ALL), ! COD $RMS_VALFLD(BYTE, XAB$C_ALLLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_BITFLD(BYTE, XAB$M_, AOP), ! AOP $RMS_CODFLD(BYTE, XAB$C_, ALN), ! ALN $RMS_VALFLD(WORD, VOL), ! VOL $RMS_VALFLD(LONG, LOC), ! LOC $RMS_VALFLD(LONG, ALQ), ! ALQ $RMS_VALFLD(WORD, DEQ), ! DEQ $RMS_VALFLD(BYTE, BKZ), ! BKZ $RMS_VALFLD(BYTE, AID), ! AID $RMS_VALRFI(%REMOVE(RFI)), ! RFI $RMS_VALFLD(WORD, 0) ! SPARE ) %; !++ ! ! $XABALL_INIT ! ! Macro to dynamically initialize the XABALL control block. ! !-- KEYWORDMACRO $XABALL_INIT( XAB, NXT=0, AID=0, ALN, ALQ=0, AOP, BKZ=0, DEQ=0, LOC=0, RFI=<0,0,0>, VOL=0)= ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_ALLLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_ALL); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_ALLLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_BITFLD_INI($RMS_PTR,(XAB$B_AOP), XAB$M_, AOP); ! AOP $RMS_CODFLD_INI($RMS_PTR,(XAB$B_ALN), XAB$C_, ALN); ! ALN $RMS_VALFLD_INI($RMS_PTR,(XAB$W_VOL), VOL); ! VOL $RMS_VALFLD_INI($RMS_PTR,(XAB$L_LOC), LOC); ! LOC $RMS_VALFLD_INI($RMS_PTR,(XAB$L_ALQ), ALQ); ! ALQ $RMS_VALFLD_INI($RMS_PTR,(XAB$W_DEQ), DEQ); ! DEQ $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BKZ), BKZ); ! BKZ $RMS_VALFLD_INI($RMS_PTR,(XAB$B_AID), AID); ! AID $RMS_VALRFI_INI($RMS_PTR,%REMOVE(RFI)); ! RFI ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE 0 ) %; !++ ! ! $XABFHC_DECL ! ! Permits the declaration of the XABFHC control block ! where initialization is not required. ! !-- MACRO $XABFHC_DECL = ALIGN(3) BLOCK[XAB$C_FHCLEN,BYTE] %; !++ ! ! $XABFHC ! ! Macro to allocate and initialize the XABFHC control block. ! !-- KEYWORDMACRO $XABFHC( NXT=0)= $XABFHC_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_FHC), ! COD $RMS_VALFLD(BYTE, XAB$C_FHCLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT REP 9 OF $RMS_VALFLD(LONG, 0) ! REMAINING FIELDS ) %; !++ ! ! $XABFHC_INIT ! ! Macro to dynamically initialize the XABFHC control block. ! !-- KEYWORDMACRO $XABFHC_INIT( XAB, NXT=0)= ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_FHCLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_FHC); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_FHCLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT ! REP 9 OF $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! REMAINING FIELDS 0 ) %; !++ ! ! $XABKEY_DECL ! ! Permits the declaration of the XABKEY control block where ! initialization is not required. ! !-- MACRO $XABKEY_DECL = ALIGN(3) BLOCK[XAB$C_KEYLEN,BYTE] %; !++ ! ! $XABKEY ! ! Macro to allocate and initialize the XABKEY control block. ! !-- KEYWORDMACRO $XABKEY( DAN=0, DFL=0, DTP=STG, FLG, IAN=0, IFL=0, KNM=0, LAN=0, NXT=0, NUL=0, POS, POS0=0, POS1=0, POS2=0, POS3=0, POS4=0, POS5=0, POS6=0, POS7=0, KREF=0, SIZ, SIZ0=0, SIZ1=0, SIZ2=0, SIZ3=0, SIZ4=0, SIZ5=0, SIZ6=0, SIZ7=0, PROLOG=0, COLTBL=0, COLSIZ=0, COLNAM=0)= $XABKEY_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_KEY), ! COD $RMS_VALFLD(BYTE, XAB$C_KEYLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(BYTE, IAN), ! IAN $RMS_VALFLD(BYTE, LAN), ! LAN $RMS_VALFLD(BYTE, DAN), ! DAN $RMS_VALFLD(BYTE, 0), ! LVL $RMS_VALFLD(BYTE, 0), ! IBS $RMS_VALFLD(BYTE, 0), ! DBS $RMS_VALFLD(LONG, 0), ! RVB $RMS_BITFLD(BYTE, XAB$M_, FLG), ! FLG $RMS_CODFLD(BYTE, XAB$C_, DTP), ! DTP $RMS_VALFLD(BYTE, 0), ! NSG $RMS_VALFLD(BYTE, NUL), ! NUL $RMS_VALFLD(BYTE, 0), ! TKS $RMS_VALFLD(BYTE, KREF), ! REF $RMS_VALFLD(WORD, 0), ! MRL $RMS_VALFLD(WORD, IFL), ! IFL $RMS_VALFLD(WORD, DFL), ! DFL %IF %NULL(POS) %THEN $RMS_VALFLD(WORD, POS0), ! POS0 $RMS_VALFLD(WORD, POS1), ! POS1 $RMS_VALFLD(WORD, POS2), ! POS2 $RMS_VALFLD(WORD, POS3), ! POS3 $RMS_VALFLD(WORD, POS4), ! POS4 $RMS_VALFLD(WORD, POS5), ! POS5 $RMS_VALFLD(WORD, POS6), ! POS6 $RMS_VALFLD(WORD, POS7), ! POS7 %ELSE $RMS_8FLD(WORD, %REMOVE(POS)), ! POS %FI %IF %NULL(SIZ) %THEN $RMS_VALFLD(BYTE, SIZ0), ! SIZ0 $RMS_VALFLD(BYTE, SIZ1), ! SIZ1 $RMS_VALFLD(BYTE, SIZ2), ! SIZ2 $RMS_VALFLD(BYTE, SIZ3), ! SIZ3 $RMS_VALFLD(BYTE, SIZ4), ! SIZ4 $RMS_VALFLD(BYTE, SIZ5), ! SIZ5 $RMS_VALFLD(BYTE, SIZ6), ! SIZ6 $RMS_VALFLD(BYTE, SIZ7), ! SIZ7 %ELSE $RMS_8FLD(BYTE, %REMOVE(SIZ)), ! SIZ %FI $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, KNM), ! KNM $RMS_VALFLD(LONG, 0), ! DVB $RMS_VALFLD(BYTE, 0), ! TYP0 $RMS_VALFLD(BYTE, 0), ! TYP1 $RMS_VALFLD(BYTE, 0), ! TYP2 $RMS_VALFLD(BYTE, 0), ! TYP3 $RMS_VALFLD(BYTE, 0), ! TYP4 $RMS_VALFLD(BYTE, 0), ! TYP5 $RMS_VALFLD(BYTE, 0), ! TYP6 $RMS_VALFLD(BYTE, 0), ! TYP7 $RMS_VALFLD(BYTE, PROLOG), ! PROLOG $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, COLTBL), ! Address of collate table $RMS_VALFLD(LONG, COLSIZ), ! Size of collate table $RMS_VALFLD(LONG, COLNAM) ! Name of collate table ) %; !++ ! ! $XABKEY_INIT ! ! Macro to dynamically initialize the XABKEY control block. ! !-- KEYWORDMACRO $XABKEY_INIT( XAB, DAN=0, DFL=0, DTP=STG, FLG, IAN=0, IFL=0, KNM=0, LAN=0, NXT=0, NUL=0, POS, POS0=0, POS1=0, POS2=0, POS3=0, POS4=0, POS5=0, POS6=0, POS7=0, KREF=0, SIZ, SIZ0=0, SIZ1=0, SIZ2=0, SIZ3=0, SIZ4=0, SIZ5=0, SIZ6=0, SIZ7=0, PROLOG=0, COLTBL=0, COLSIZ=0, COLNAM=0 )= ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_KEYLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_KEY); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_KEYLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_VALFLD_INI($RMS_PTR,(XAB$B_IAN), IAN); ! IAN $RMS_VALFLD_INI($RMS_PTR,(XAB$B_LAN), LAN); ! LAN $RMS_VALFLD_INI($RMS_PTR,(XAB$B_DAN), DAN); ! DAN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_LVL), 0); ! LVL ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_IBS), 0); ! IBS ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_DBS), 0); ! DBS ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_RVB), 0); ! RVB $RMS_BITFLD_INI($RMS_PTR,(XAB$B_FLG), XAB$M_, FLG); ! FLG $RMS_CODFLD_INI($RMS_PTR,(XAB$B_DTP), XAB$C_, DTP); ! DTP ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_NSG), 0); ! NSG $RMS_VALFLD_INI($RMS_PTR,(XAB$B_NUL), NUL); ! NUL ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_TKS), 0); ! TKS $RMS_VALFLD_INI($RMS_PTR,(XAB$B_REF), KREF); ! REF ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_MRL), 0); ! MRL $RMS_VALFLD_INI($RMS_PTR,(XAB$W_IFL), IFL); ! IFL $RMS_VALFLD_INI($RMS_PTR,(XAB$W_DFL), DFL); ! DFL %IF %NULL(POS) %THEN $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS0), POS0); ! POS0 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS1), POS1); ! POS1 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS2), POS2); ! POS2 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS3), POS3); ! POS3 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS4), POS4); ! POS4 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS5), POS5); ! POS5 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS6), POS6); ! POS6 $RMS_VALFLD_INI($RMS_PTR,(XAB$W_POS7), POS7); ! POS7 %ELSE $RMS_8FLD_INI($RMS_PTR, %STRING('XAB$W_POS'), %REMOVE(POS)); ! POS %FI %IF %NULL(SIZ) %THEN $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ0), SIZ0); ! SIZ0 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ1), SIZ1); ! SIZ1 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ2), SIZ2); ! SIZ2 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ3), SIZ3); ! SIZ3 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ4), SIZ4); ! SIZ4 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ5), SIZ5); ! SIZ5 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ6), SIZ6); ! SIZ6 $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SIZ7), SIZ7); ! SIZ7 %ELSE $RMS_8FLD_INI($RMS_PTR, %STRING('XAB$B_SIZ'), %REMOVE(SIZ)); ! SIZ %FI ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_KNM), KNM); ! KNM ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_DVB), 0); ! DVB $RMS_VALFLD_INI($RMS_PTR,(XAB$B_PROLOG), PROLOG); ! PROLOG ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! spare $RMS_VALFLD_INI($RMS_PTR,(XAB$L_COLTBL), COLTBL); ! address of collate table $RMS_VALFLD_INI($RMS_PTR,(XAB$L_COLSIZ), COLSIZ); ! size of collate table $RMS_VALFLD_INI($RMS_PTR,(XAB$L_COLNAM), COLNAM); ! name of collate table ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! spare ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! spare ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! spare 0 ) %; !++ ! ! $XABSUM_DECL ! ! Permits the declaration of the XABSUM control block where ! initialization is not required. ! !-- MACRO $XABSUM_DECL = ALIGN(3) BLOCK[XAB$C_SUMLEN,BYTE] %; !++ ! ! $XABSUM ! ! Macro to allocate and initialize the XABSUM control block. ! !-- KEYWORDMACRO $XABSUM( NXT=0)= $XABSUM_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_SUM), ! COD $RMS_VALFLD(BYTE, XAB$K_SUMLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(BYTE, 0), ! NOA $RMS_VALFLD(BYTE, 0), ! NOK $RMS_VALFLD(WORD, 0) ! PVN ) %; !++ ! ! $XABSUM_INIT ! ! Macro to dynamically initialize the XABSUM control block. ! !-- KEYWORDMACRO $XABSUM_INIT( XAB, NXT=0)= (BIND $RMS_PTR = XAB; CH$FILL(0, XAB$C_SUMLEN, CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_SUM); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_SUMLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_NOA), NOA); ! NOA ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_NOK), NOK); ! NOK ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_PVN), PVN); ! PVN 0 ) %; !++ ! ! $XABCXF_DECL ! ! Permits the declaration of the XABCXF control block where ! initialization is not required. ! !-- MACRO $XABCXF_DECL = ALIGN(3) BLOCK[XAB$C_CXFLEN,BYTE] %; !++ ! ! $XABCXF ! ! Macro to allocate and initialize the XABCXF control block. ! !-- KEYWORDMACRO $XABCXF( NXT=0)= $XABCXF_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_CXF), ! COD $RMS_VALFLD(BYTE, XAB$K_CXFLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(LONG, 0), ! STS $RMS_VALFLD(LONG, 0), ! STV $RMS_VALFLD(LONG, 0), ! COP $RMS_VALFLD(LONG, 0), ! BKPBITS $RMS_VALFLD(WORD, 0), ! IFI $RMS_VALFLD(BYTE, 0), ! CXFVER $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! SPARE ! Above in common with XABCXR $RMS_VALFLD(WORD, 0), ! DEQ $RMS_VALFLD(BYTE, 0), ! FAC $RMS_VALFLD(BYTE, 0), ! SHR $RMS_VALFLD(WORD, 0), ! RTDEQ $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(BYTE, 0), ! ORGCASE $RMS_VALFLD(WORD, 0), ! GBC $RMS_VALFLD(BYTE, 0), ! RTV $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! SPARE $RMS_VALFLD(LONG, 0) ! SPARE ) %; !++ ! ! $XABCXF_INIT ! ! Macro to dynamically initialize the XABCXF control block. ! !-- KEYWORDMACRO $XABCXF_INIT( XAB, NXT=0)= (BIND $RMS_PTR = XAB; CH$FILL(0, XAB$C_CXFLEN, CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_CXF); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_CXFLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_STS), STS); ! STS ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_STV), STV); ! STV ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_COP), COP); ! COP ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_BKPBITS), BKPBITS); ! BKPBITS ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_IFI), IFI); ! IFI ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXFVER, 0); ! CXFVER ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! SPARE ! All of above in common with XABCXR ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_DEQ), DEQ); ! DEQ ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_FAC), FAC); ! FAC ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SHR), SHR); ! SHR ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_RTDEQ), RTDEQ); ! RTDEQ ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_ORGCASE), ORGCASE); ! ORGCASE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_CXFGBC), 0); ! GBC ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXFRTV), 0); ! RETRIEVAL WINDOW ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! SPARE 0 ) %; !++ ! ! $XABCXR_DECL ! ! Permits the declaration of the XABCXR control block where ! initialization is not required. ! !-- MACRO $XABCXR_DECL = ALIGN(3) BLOCK[XAB$C_CXRLEN,BYTE] %; !++ ! ! $XABCXR ! ! Macro to allocate and initialize the XABCXR control block. ! !-- KEYWORDMACRO $XABCXR( NXT=0,CXRBUF=0,CXFBFZ=0)= $XABCXR_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_CXR), ! COD $RMS_VALFLD(BYTE, XAB$K_CXRLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(LONG, 0), ! STS $RMS_VALFLD(LONG, 0), ! STV $RMS_VALFLD(LONG, 0), ! COP $RMS_VALFLD(LONG, 0), ! BKPBITS $RMS_VALFLD(WORD, 0), ! ISI $RMS_VALFLD(BYTE, 0), ! CXRVER $RMS_VALFLD(BYTE, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! SPARE ! Above in common with XABCXF $RMS_VALFLD(BYTE, 0), ! CXRMBF $RMS_VALFLD(BYTE, 0), ! CXRMBC $RMS_VALFLD(WORD, CXRBFZ), ! CXRBFZ $RMS_VALFLD(LONG, 0), ! CXRVBN $RMS_VALFLD(LONG, 0), ! CXROFF $RMS_VALFLD(LONG, 0), ! CXRPOS0 $RMS_VALFLD(WORD, 0), ! CXRPOS4 $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! CXRCUR0 $RMS_VALFLD(WORD, 0), ! CXRCUR4 $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, 0), ! CXRSID0 $RMS_VALFLD(WORD, 0), ! CXRSID4 $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(WORD, 0), ! CXRCNT $RMS_VALFLD(BYTE, 0), ! CXRKRF $RMS_VALFLD(BYTE, 0), ! CXRKLEN $RMS_VALFLD(LONG, CXRBUF), ! CXRBUF $RMS_VALFLD(LONG, 0), ! SPARE $RMS_VALFLD(LONG, 0) ! SPARE ) %; !++ ! ! $XABCXR_INIT ! ! Macro to dynamically initialize the XABCXR control block. ! !-- KEYWORDMACRO $XABCXR_INIT( XAB, NXT=0,CXRBUF=0,CXRBFZ=0)= (BIND $RMS_PTR = XAB; CH$FILL(0, XAB$C_CXRLEN, CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_CXR); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_CXRLEN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_STS), STS); ! STS ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_STV), STV); ! STV ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_COP), COP); ! COP ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_BKPBITS), BKPBITS); ! BKPBITS ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_ISI), ISI); ! ISI ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXRVER), 0); ! CXRVER ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! SPARE ! All of above in common with XABCXF ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXRMBF), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXRMBC), 0); $RMS_VALFLD_INI($RMS_PTR,(XAB$W_CXRBFZ), CXRBFZ); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CXRVBN), CXRVBN); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CXROFF), CXROFF); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CXRPOS0), CXRPOS0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_CXRPOS4), CXRPOS4); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CXRCUR0), CXRCUR0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_CXRCUR4), CXRCUR4); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CXRSID0), CXRSID0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_CXRSID4), CXRSID4); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_SPARE), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$W_CXRCNT), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXRKRF), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$B_CXRKLEN), 0); $RMS_VALFLD_INI($RMS_PTR,(XAB$L_CXRBUF), CXRBUF); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); ! $RMS_VALFLD_INI($RMS_PTR,(XAB$L_SPARE), 0); 0 ) %; !++ ! ! $XABJNL_DECL ! ! Permits the declaration of the XABJNL control bock where ! initialization is not required ! !-- MACRO $XABJNL_DECL = ALIGN(3) BLOCK[XAB$C_JNLLEN,BYTE] %; !++ ! ! $XABJNL ! ! Macro to allocate and initialize the XABJNL control block ! !-- KEYWORDMACRO $XABJNL( XABJNL_TYPE=JNL_TYPE_NONE, JNL_FLAGS, JNL_FAB=0, VOLNAM_BUF=0, VOLNAM_SIZ=0, NXT= 0 ) = $XABJNL_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_JNL), !COD $RMS_VALFLD(BYTE, XAB$C_JNLLEN), !BLN $RMS_VALFLD(WORD, 0), !SPARE $RMS_VALFLD(LONG, NXT), !NXT $RMS_CODFLD(BYTE, XAB$C_, XABJNL_TYPE), !XABJNL_TYPE $RMS_VALFLD(BYTE, 0), !SPARE $RMS_BITFLD(WORD, XAB$M_, JNL_FLAGS), !JNL_FLAGS $RMS_VALFLD(LONG, JNL_FAB), !JNL_FAB $RMS_VALFLD(LONG, VOLNAM_BUF), !VOLNAM_BUF $RMS_VALFLD(WORD, VOLNAM_SIZ), !VOLNAM_SIZ $RMS_VALFLD(WORD, 0), !VOLNAM_LEN REP 2 OF $RMS_VALFLD(LONG, 0), !JNL_VERIFY_CDATE $RMS_VALFLD(LONG, 0), !JNLIDX $RMS_VALFLD(LONG, 0) !BACKUP_DONE ) %; !++ ! ! $XABJNL_INIT ! ! Macro to dynamically initialize the XABJNL control block ! !-- KEYWORDMACRO $XABJNL_INIT( XAB, XABJNL_TYPE=JNL_TYPE_NONE, JNL_FLAGS, JNL_FAB=0, VOLNAM_BUF=0, VOLNAM_SIZ=0, NXT= 0 ) = ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_JNLLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_JNL); !COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_JNLLEN); !BLN $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); !NXT $RMS_CODFLD_INI($RMS_PTR,(XAB$B_XABJNL_TYPE), XAB$C_, XABJNL_TYPE); !XABJNL_TYPE $RMS_BITFLD_INI($RMS_PTR,(XAB$W_JNL_FLAGS), XAB$M_, JNL_FLAGS); !JNL_FLAGS $RMS_VALFLD_INI($RMS_PTR,(XAB$L_JNL_FAB), JNL_FAB); !JNL_FAB $RMS_VALFLD_INI($RMS_PTR,(XAB$L_VOLNAM_BUF), VOLNAM_BUF); !VOLNAM_BUF $RMS_VALFLD_INI($RMS_PTR,(XAB$W_VOLNAM_SIZ), VOLNAM_SIZ); !VOLNAM_SIZ 0 ) %; !++ ! ! $XABITM_DECL ! ! Permits the declaration of the XABITM control bock where ! initialization is not required ! !-- MACRO $XABITM_DECL = ALIGN(3) BLOCK[XAB$C_ITMLEN,BYTE] %; !++ ! ! $XABITM ! ! Macro to allocate and initialize the XABITM control block ! !-- KEYWORDMACRO $XABITM( ITEMLIST = 0, MODE = SENSEMODE, NXT = 0 ) = $XABITM_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_ITM), ! COD $RMS_VALFLD(BYTE, XAB$C_ITMLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(LONG, ITEMLIST), ! ITEMLIST $RMS_CODFLD(BYTE, XAB$K_, MODE) ! MODE ) %; !++ ! ! $XABITM_INIT ! ! Macro to dynamically initialize the XABITM control block ! !-- KEYWORDMACRO $XABITM_INIT( XAB, NXT=0, ITEMLIST, MODE=SENSEMODE ) = ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_ITMLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_ITM); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_ITMLEN); ! BLN $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_VALFLD_INI($RMS_PTR,(XAB$L_ITEMLIST), ITEMLIST); ! ITEMLIST $RMS_CODFLD_INI($RMS_PTR,(XAB$B_MODE), XAB$K_, MODE); ! MODE 0 ) %; !++ ! ! $XABRU_DECL ! ! Permits the declaration of the XABRU control bock where ! initialization is not required ! !-- MACRO $XABRU_DECL = ALIGN(3) BLOCK[XAB$C_RULEN,BYTE] %; !++ ! ! $XABRU ! ! Macro to allocate and initialize the XABRU control block ! !-- KEYWORDMACRO $XABRU( RU_HANDLE=0, NXT=0 ) = $XABRU_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_RU), !COD $RMS_VALFLD(BYTE, XAB$C_RULEN), !BLN $RMS_VALFLD(WORD, 0), !SPARE $RMS_VALFLD(LONG, NXT), !NXT $RMS_BITFLD(WORD, 0), !RU_FLAGS (not implemented) $RMS_BITFLD(WORD, 0), !SPARE $RMS_VALFLD(LONG, RU_HANDLE) !RU_HANDLE ) %; !++ ! ! $XABRU_INIT ! ! Macro to dynamically initialize the XABRU control block ! !-- KEYWORDMACRO $XABRU_INIT( XAB, RU_HANDLE=0, NXT=0 ) = ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_RULEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_RU); !COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_RULEN); !BLN $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); !NXT $RMS_VALFLD_INI($RMS_PTR,(XAB$L_RU_HANDLE), RU_HANDLE); !RU_HANDLE 0 ) %; !++ ! ! $XABTRM_DECL ! ! Permits the declaration of the XABTRM control block ! where initialization is not required. ! !-- MACRO $XABTRM_DECL = ALIGN(3) BLOCK[XAB$C_TRMLEN,BYTE] %; !++ ! ! $XABTRM ! ! Macro to allocate and initialize the XABTRM control block. ! !-- KEYWORDMACRO $XABTRM( NXT=0, ITMLST=0, ITMLST_LEN=0 ) = $XABTRM_DECL INITIAL( $RMS_VALFLD(BYTE, XAB$C_TRM), ! COD $RMS_VALFLD(BYTE, XAB$C_TRMLEN), ! BLN $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, NXT), ! NXT $RMS_VALFLD(LONG, ITMLST), ! ITMLST $RMS_VALFLD(WORD, ITMLST_LEN) ! ITMLST_LEN ) %; !++ ! ! $XABTRM_INIT ! ! Macro to dynamically initialize the XABTRM control block. ! !-- KEYWORDMACRO $XABTRM_INIT( XAB, NXT=0, ITMLST=0, ITMLST_LEN=0 ) = ( BIND $RMS_PTR = XAB; CH$FILL(0,XAB$C_TRMLEN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(XAB$B_COD), XAB$C_TRM); ! COD $RMS_VALFLD_INI($RMS_PTR,(XAB$B_BLN), XAB$C_TRMLEN); ! BLN $RMS_VALFLD_INI($RMS_PTR,(XAB$L_NXT), NXT); ! NXT $RMS_VALFLD_INI($RMS_PTR,(XAB$L_ITMLST), ITMLST); ! ITMLST $RMS_VALFLD_INI($RMS_PTR,(XAB$W_ITMLST_LEN), ITMLST_LEN); ! ITMLST_LEN 0 ) %; !++ ! ! $RAB_DECL and $RAB_DECL_ASYN ! ! Permit the declaration of the RAB control block ! where initialization is not required. ! ! Note that a RAB intended for ASYNCHRONOUS I/O ! differs from one intended for SYNCHRONOUS I/O ! in some RMS implementations. ! USE: ! LOCAL RAB_01 : $RAB_DECL_ASYN; ! for ASYNCHRONOUS I/O ! LOCAL RAB_02 : $RAB_DECL; ! for SYNCHRONOUS I/O ! MAP RAB_03 : $RAB_DECL; ! EXTERNAL RAB_04 : $RAB_DECL_ASYN; ! !-- MACRO $RAB_DECL = ALIGN(3) BLOCK[RAB$C_BLN,BYTE] %, $RAB_DECL_ASYN = ALIGN(3) BLOCK[RAB$C_BLN,BYTE] %; !++ ! ! $RAB ! ! Macro to allocate and initialize the RAB control block. ! To indicate that the RAB may be used for ASYNCHRONOUS I/O, ! indicate a value for the ASYN keywordparameter as in ! the example: ! ! OWN RAB_01 : $RAB ( ASYN=YES , ....); ! ASYNCHRONOUS ! !-- KEYWORDMACRO $RAB( RAC=SEQ, ROP, UBF=0, USZ=0, RBF=0, RSZ=0, BKT=0, KBF=0, PBF=0, KSZ=0, PSZ=0, RHB=0, FAB=0, MBF=0, MBC=0, TMO=0, CTX=0, KRF=0, ASYN=NO, XAB=0, ROP_2)= %IF %IDENTICAL(%STRING(ASYN),'YES') %THEN $RAB_DECL_ASYN %ELSE $RAB_DECL %FI INITIAL( $RMS_VALFLD(BYTE, RAB$C_BID), ! BID $RMS_VALFLD(BYTE, RAB$C_BLN), ! BLN $RMS_VALFLD(WORD, 0), ! ISI $RMS_BITFLD(LONG, RAB$M_, ROP), ! ROP $RMS_VALFLD(LONG, 0), ! STS $RMS_VALFLD(LONG, 0), ! STV REP 3 OF $RMS_VALFLD(WORD, 0), ! RFA $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, CTX), ! CTX $RMS_BITFLD(WORD, RAB$M_, ROP_2), ! ROP_2 $RMS_CODFLD(BYTE, RAB$C_, RAC), ! RAC $RMS_VALFLD(BYTE, TMO), ! TMO $RMS_VALFLD(WORD, USZ), ! USZ $RMS_VALFLD(WORD, RSZ), ! RSZ $RMS_VALFLD(LONG, UBF), ! UBF $RMS_VALFLD(LONG, RBF), ! RBF $RMS_VALFLD(LONG, RHB), ! RHB $RMS_VALFLD(LONG, (KBF)+(PBF)), ! KBF and PBF $RMS_VALFLD(BYTE, (KSZ)+(PSZ)), ! KSZ and PSZ $RMS_VALFLD(BYTE, KRF), ! KRF $RMS_VALFLD(BYTE, MBF), ! MBF $RMS_VALFLD(BYTE, MBC), ! MBC $RMS_VALFLD(LONG, BKT), ! BKT $RMS_VALFLD(LONG, FAB), ! FAB $RMS_VALFLD(LONG, XAB) ! XAB ) %; !++ ! ! $RAB_INIT ! ! Macro to dynamically initialize the RAB control block. ! !-- KEYWORDMACRO $RAB_INIT( RAB, RAC, ROP, UBF=0, USZ=0, RBF=0, RSZ=0, BKT=0, KBF=0, PBF=0, KSZ=0, PSZ=0, RHB=0, FAB=0, MBF=0, MBC=0, TMO=0, CTX=0, KRF=0, ASYN=NO, XAB=0, ROP_2)= ( BIND $RMS_PTR = RAB; CH$FILL(0,RAB$C_BLN,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(RAB$B_BID), RAB$C_BID); ! BID $RMS_VALFLD_INI($RMS_PTR,(RAB$B_BLN), RAB$C_BLN); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_ISI), 0); ! ISI $RMS_BITFLD_INI($RMS_PTR,(RAB$L_ROP), RAB$M_, ROP); ! ROP ! $RMS_VALFLD_INI($RMS_PTR,(RAB$L_STS), 0); ! STS ! $RMS_VALFLD_INI($RMS_PTR,(RAB$L_STV), 0); ! STV ! REP 3 OF $RMS_VALFLD_INI($RMS_PTR,(RAB$W_RFA), 0); ! RFA ! REP 1 OF $RMS_VALFLD_INI($RMS_PTR,(RAB$L_SPARE), 0); ! SPARE $RMS_VALFLD_INI($RMS_PTR,(RAB$L_CTX), CTX); ! CTX $RMS_BITFLD_INI($RMS_PTR,(RAB$W_ROP_2), RAB$M_, ROP_2); ! ROP_2 $RMS_CODFLD_INI($RMS_PTR,(RAB$B_RAC), RAB$C_, RAC); ! RAC $RMS_VALFLD_INI($RMS_PTR,(RAB$B_TMO), TMO); ! TMO $RMS_VALFLD_INI($RMS_PTR,(RAB$W_USZ), USZ); ! USZ $RMS_VALFLD_INI($RMS_PTR,(RAB$W_RSZ), RSZ); ! RSZ $RMS_VALFLD_INI($RMS_PTR,(RAB$L_UBF), UBF); ! UBF $RMS_VALFLD_INI($RMS_PTR,(RAB$L_RBF), RBF); ! RBF $RMS_VALFLD_INI($RMS_PTR,(RAB$L_RHB), RHB); ! RHB %IF NOT %IDENTICAL(KBF,0) OR NOT %IDENTICAL(PBF,0) %THEN $RMS_VALFLD_INI($RMS_PTR,(RAB$L_KBF), (KBF)+(PBF)); ! KBF and PBF %FI %IF NOT %IDENTICAL(KSZ,0) OR NOT %IDENTICAL(PSZ,0) %THEN $RMS_VALFLD_INI($RMS_PTR,(RAB$B_KSZ), (KSZ)+(PSZ)); ! KSZ and PSZ %FI $RMS_VALFLD_INI($RMS_PTR,(RAB$B_KRF), KRF); ! KRF $RMS_VALFLD_INI($RMS_PTR,(RAB$B_MBF), MBF); ! MBF $RMS_VALFLD_INI($RMS_PTR,(RAB$B_MBC), MBC); ! MBC $RMS_VALFLD_INI($RMS_PTR,(RAB$L_BKT), BKT); ! BKT $RMS_VALFLD_INI($RMS_PTR,(RAB$L_FAB), FAB); ! FAB $RMS_VALFLD_INI($RMS_PTR,(RAB$L_XAB), XAB); ! XAB 0 ) %; %IF %BLISS(BLISS64E) OR %BLISS(BLISS64I) %THEN !++ ! ! $RAB64_DECL and $RAB64_DECL_ASYN ! ! Permit the declaration of the EXTENDED RAB control block ! where initialization is not required. ! ! Note that an EXTENDED RAB intended for ASYNCHRONOUS I/O ! differs from one intended for SYNCHRONOUS I/O ! in some RMS implementations. ! USE: ! LOCAL RAB_01 : $RAB64_DECL_ASYN; ! for ASYNCHRONOUS I/O ! LOCAL RAB_02 : $RAB64_DECL; ! for SYNCHRONOUS I/O ! MAP RAB_03 : $RAB64_DECL; ! EXTERNAL RAB_04 : $RAB64_DECL_ASYN; ! !-- MACRO $RAB64_DECL = ALIGN(3) BLOCK[RAB$C_BLN64,BYTE] %, $RAB64_DECL_ASYN = ALIGN(3) BLOCK[RAB$C_BLN64,BYTE] %; !++ ! ! $RAB64 ! ! Macro to allocate and initialize the EXTENDED RAB control block. ! To indicate that the EXTENDED RAB may be used for ASYNCHRONOUS I/O, ! indicate a value for the ASYN keywordparameter as in ! the example: ! ! OWN RAB_01 : $RAB64 ( ASYN=YES , ....); ! ASYNCHRONOUS ! !-- KEYWORDMACRO $RAB64( RAC=SEQ, ROP, UBF=0, USZ=0, RBF=0, RSZ=0, BKT=0, KBF=0, PBF=0, KSZ=0, PSZ=0, RHB=0, FAB=0, MBF=0, MBC=0, TMO=0, CTX=0, KRF=0, ASYN=NO, XAB=0, ROPEXT, ROP_2)= %IF %IDENTICAL(%STRING(ASYN),'YES') %THEN $RAB64_DECL_ASYN %ELSE $RAB64_DECL %FI INITIAL( $RMS_VALFLD(BYTE, RAB$C_BID), ! BID $RMS_VALFLD(BYTE, RAB$C_BLN64), ! BLN $RMS_VALFLD(WORD, 0), ! ISI $RMS_BITFLD(LONG, RAB$M_, ROP), ! ROP $RMS_VALFLD(LONG, 0), ! STS $RMS_VALFLD(LONG, 0), ! STV REP 3 OF $RMS_VALFLD(WORD, 0), ! RFA $RMS_VALFLD(WORD, 0), ! SPARE $RMS_VALFLD(LONG, CTX), ! CTX $RMS_BITFLD(WORD, RAB$M_, ROP_2), ! ROP_2 $RMS_CODFLD(BYTE, RAB$C_, RAC), ! RAC $RMS_VALFLD(BYTE, TMO), ! TMO $RMS_VALFLD(WORD, 0), ! USZ constant $RMS_VALFLD(WORD, 0), ! RSZ constant ! -1 indicates its 64-bit counterpart in extended area should be used $RMS_VALFLD(LONG, -1), ! UBF constant $RMS_VALFLD(LONG, -1), ! RBF constant $RMS_VALFLD(LONG, -1), ! RHB constant %IF NOT %IDENTICAL(PBF,0) %THEN $RMS_VALFLD(LONG, PBF), ! PBF $RMS_VALFLD(BYTE, PSZ), ! PSZ %ELSE $RMS_VALFLD(LONG, -1), ! KBF constant $RMS_VALFLD(BYTE, KSZ), ! KSZ %FI $RMS_VALFLD(BYTE, KRF), ! KRF $RMS_VALFLD(BYTE, MBF), ! MBF $RMS_VALFLD(BYTE, MBC), ! MBC $RMS_VALFLD(LONG, BKT), ! BKT $RMS_VALFLD(LONG, FAB), ! FAB $RMS_VALFLD(LONG, XAB), ! XAB $RMS_VALFLD(WORD, 0), ! VERMINOR constant $RMS_VALFLD(WORD, 1), ! VERMAJOR constant $RMS_VALFLD(QUAD, UBF), ! UBF QUAD $RMS_VALFLD(QUAD, USZ), ! USZ QUAD $RMS_VALFLD(QUAD, RBF), ! RBF QUAD $RMS_VALFLD(QUAD, RSZ), ! RSZ QUAD $RMS_VALFLD(QUAD, KBF), ! KBF QUAD $RMS_VALFLD(QUAD, RHB), ! RHB QUAD $RMS_VALFLD(QUAD, CTX), ! CTX QUAD $RMS_BITFLD(LONG, RAB$M_, ROPEXT), ! ROPEXT $RMS_VALFLD(WORD, 0), ! MBF WORD - not implemented $RMS_VALFLD(WORD, 0) ! MBC WORD - not implemented ) %; !++ ! ! $RAB64_INIT ! ! Macro to dynamically initialize the EXTENDED RAB control block. ! !-- KEYWORDMACRO $RAB64_INIT( RAB, RAC, ROP, UBF=0, USZ=0, RBF=0, RSZ=0, BKT=0, KBF=0, PBF=0, KSZ=0, PSZ=0, RHB=0, FAB=0, MBF=0, MBC=0, TMO=0, CTX=0, KRF=0, ASYN=NO, XAB=0, ROPEXT, ROP_2)= ( BIND $RMS_PTR = RAB; CH$FILL(0,RAB$C_BLN64,CH$PTR($RMS_PTR)); $RMS_VALFLD_INI($RMS_PTR,(RAB$B_BID), RAB$C_BID); ! BID $RMS_VALFLD_INI($RMS_PTR,(RAB$B_BLN), RAB$C_BLN64); ! BLN ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_ISI), 0); ! ISI $RMS_BITFLD_INI($RMS_PTR,(RAB$L_ROP), RAB$M_, ROP); ! ROP ! $RMS_VALFLD_INI($RMS_PTR,(RAB$L_STS), 0); ! STS ! $RMS_VALFLD_INI($RMS_PTR,(RAB$L_STV), 0); ! STV ! REP 3 OF $RMS_VALFLD_INI($RMS_PTR,(RAB$W_RFA), 0); ! RFA ! REP 1 OF $RMS_VALFLD_INI($RMS_PTR,(RAB$L_SPARE), 0); ! SPARE ! $RMS_VALFLD_INI($RMS_PTR,(RAB$L_CTX), 0); ! CTX constant $RMS_BITFLD_INI($RMS_PTR,(RAB$W_ROP_2), RAB$M_, ROP_2); ! ROP_2 $RMS_CODFLD_INI($RMS_PTR,(RAB$B_RAC), RAB$C_, RAC); ! RAC $RMS_VALFLD_INI($RMS_PTR,(RAB$B_TMO), TMO); ! TMO ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_USZ), 0); ! USZ constant ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_RSZ), 0); ! RSZ constant ! -1 indicates its 64-bit counterpart in extended area should be used $RMS_VALFLD_INI($RMS_PTR,(RAB$L_UBF), -1); ! UBF constant $RMS_VALFLD_INI($RMS_PTR,(RAB$L_RBF), -1); ! RBF constant $RMS_VALFLD_INI($RMS_PTR,(RAB$L_RHB), -1); ! RHB constant %IF NOT %IDENTICAL(PBF,0) %THEN $RMS_VALFLD_INI($RMS_PTR,(RAB$L_PBF), PBF); ! PBF $RMS_VALFLD_INI($RMS_PTR,(RAB$B_PSZ), PSZ); ! PSZ %ELSE $RMS_VALFLD_INI($RMS_PTR,(RAB$L_KBF), -1); ! KBF constant $RMS_VALFLD_INI($RMS_PTR,(RAB$B_KSZ), KSZ); ! KSZ %FI $RMS_VALFLD_INI($RMS_PTR,(RAB$B_KRF), KRF); ! KRF $RMS_VALFLD_INI($RMS_PTR,(RAB$B_MBF), MBF); ! MBF $RMS_VALFLD_INI($RMS_PTR,(RAB$B_MBC), MBC); ! MBC $RMS_VALFLD_INI($RMS_PTR,(RAB$L_BKT), BKT); ! BKT $RMS_VALFLD_INI($RMS_PTR,(RAB$L_FAB), FAB); ! FAB $RMS_VALFLD_INI($RMS_PTR,(RAB$L_XAB), XAB); ! XAB ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_VERMINOR), 0); ! VERMINOR constant $RMS_VALFLD_INI($RMS_PTR,(RAB$W_VERMAJOR), 1); ! VERMAJOR constant $RMS_VALFLD_INI($RMS_PTR,(RAB$PQ_UBF), UBF); ! UBF QUAD $RMS_VALFLD_INI($RMS_PTR,(RAB$Q_USZ), USZ); ! USZ QUAD $RMS_VALFLD_INI($RMS_PTR,(RAB$PQ_RBF), RBF); ! RBF QUAD $RMS_VALFLD_INI($RMS_PTR,(RAB$Q_RSZ), RSZ); ! RSZ QUAD $RMS_VALFLD_INI($RMS_PTR,(RAB$PQ_KBF), KBF); ! KBF QUAD $RMS_VALFLD_INI($RMS_PTR,(RAB$PQ_RHB), RHB); ! RHB QUAD $RMS_VALFLD_INI($RMS_PTR,(RAB$Q_CTX), CTX); ! CTX QUAD $RMS_BITFLD_INI($RMS_PTR,(RAB$L_ROPEXT), RAB$M_, ROPEXT); ! ROPEXT ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_MBF), 0); ! MBF WORD not implemented ! $RMS_VALFLD_INI($RMS_PTR,(RAB$W_MBC), 0); ! MBC WORD not implemented 0 ) %; %FI !++ ! ! RMS-11 Compatibility Macros ! ! $RMS_INIT ! $RMS_INITIF ! $RMS_POOL ! $RMS_ORG ! ! All these macros, necessary only in RMS-11, are ! coded as no-ops here, being executable ! expressions with value 0. ! !-- MACRO $RMS_INIT(XX) = BEGIN 0 END %, $RMS_INITIF(XX) = BEGIN 0 END %, $RMS_POOL(XX) = BEGIN 0 END %, $RMS_ORG(XX) = BEGIN 0 END %, !++ ! ! $RMS_OKSTATUS ! $RMS_OK ! $RMS_SUC ! ! Macros to examine status (STS) values. ! ! $RMS_OK(sts_val) examines the value sts_val and ! yields 1 if this is a good status value, 0 otherwise. ! ! $RMS_SUC(sts_val) examines the value sts_val and ! yields 1 if this equals RMS$_SUC. ! ! $RMS_OKSTATUS(addr) extracts the STS field from ! the RAB or FAB at addr and yields ! 1 if this is a good status value, 0 otherwise. ! !-- $RMS_OKSTATUS(XX) = (.BLOCK[(XX),FAB$L_STS;0,BYTE] AND 1) %, $RMS_OK(VAL)= ((VAL) AND 1) %, $RMS_SUC(VAL)= (EXTERNAL LITERAL RMS$_SUC;(VAL) EQL RMS$_SUC) %; !++ ! ! FUNCTIONAL CALLS TO RMS-32 ! ! EXAMPLES OF USE: ! ! status = $RMS_OPEN(FAB=FAB_01); ! status = $RMS_GET(SUC=SUC_01,RAB=RAB_03); ! ! !-- KEYWORDMACRO $RMS_CLOSE(FAB,ERR,SUC)= $RMS_CALL(SYS$CLOSE,FAB,ERR,SUC) %, $RMS_CONNECT(RAB,ERR,SUC)= $RMS_CALL(SYS$CONNECT,RAB,ERR,SUC) %, $RMS_CREATE(FAB,ERR,SUC)= $RMS_CALL(SYS$CREATE,FAB,ERR,SUC) %, $RMS_DELETE(RAB,ERR,SUC)= $RMS_CALL(SYS$DELETE,RAB,ERR,SUC) %, $RMS_DISCONNECT(RAB,ERR,SUC)= $RMS_CALL(SYS$DISCONNECT,RAB,ERR,SUC) %, $RMS_DISPLAY(FAB,ERR,SUC)= $RMS_CALL(SYS$DISPLAY,FAB,ERR,SUC) %, $RMS_ERASE(FAB,ERR,SUC)= $RMS_CALL(SYS$ERASE,FAB,ERR,SUC) %, $RMS_EXTEND(FAB,ERR,SUC)= $RMS_CALL(SYS$EXTEND,FAB,ERR,SUC) %, $RMS_FIND(RAB,ERR,SUC)= $RMS_CALL(SYS$FIND,RAB,ERR,SUC) %, $RMS_FLUSH(RAB,ERR,SUC)= $RMS_CALL(SYS$FLUSH,RAB,ERR,SUC) %, $RMS_FREE(RAB,ERR,SUC)= $RMS_CALL(SYS$FREE,RAB,ERR,SUC) %, $RMS_GET(RAB,ERR,SUC)= $RMS_CALL(SYS$GET,RAB,ERR,SUC) %, $RMS_MODIFY(FAB,ERR,SUC)= $RMS_CALL(SYS$MODIFY,FAB,ERR,SUC) %, $RMS_NXTVOL(RAB,ERR,SUC)= $RMS_CALL(SYS$NXTVOL,RAB,ERR,SUC) %, $RMS_OPEN(FAB,ERR,SUC)= $RMS_CALL(SYS$OPEN,FAB,ERR,SUC) %, $RMS_PUT(RAB,ERR,SUC)= $RMS_CALL(SYS$PUT,RAB,ERR,SUC) %, $RMS_PARSE(FAB,ERR,SUC)= $RMS_CALL(SYS$PARSE,FAB,ERR,SUC) %, $RMS_READ(RAB,ERR,SUC)= $RMS_CALL(SYS$READ,RAB,ERR,SUC) %, $RMS_RELEASE(RAB,ERR,SUC)= $RMS_CALL(SYS$RELEASE,RAB,ERR,SUC) %, $RMS_REWIND(RAB,ERR,SUC)= $RMS_CALL(SYS$REWIND,RAB,ERR,SUC) %, $RMS_SEARCH(FAB,ERR,SUC)= $RMS_CALL(SYS$SEARCH,FAB,ERR,SUC) %, $RMS_ENTER(FAB,ERR,SUC)= $RMS_CALL(SYS$ENTER,FAB,ERR,SUC) %, $RMS_REMOVE(FAB,ERR,SUC)= $RMS_CALL(SYS$REMOVE,FAB,ERR,SUC) %, $RMS_RENAME(OLDFAB,ERR,SUC,NEWFAB)= $RMS_CALL(SYS$RENAME,OLDFAB,ERR,SUC,NEWFAB) %, $RMS_SPACE(RAB,ERR,SUC)= $RMS_CALL(SYS$SPACE,RAB,ERR,SUC) %, $RMS_TRUNCATE(RAB,ERR,SUC)= $RMS_CALL(SYS$TRUNCATE,RAB,ERR,SUC) %, $RMS_UPDATE(RAB,ERR,SUC)= $RMS_CALL(SYS$UPDATE,RAB,ERR,SUC) %, $RMS_WAIT(RAB,ERR,SUC)= $RMS_CALL(SYS$WAIT,RAB,ERR,SUC) %, $RMS_WRITE(RAB,ERR,SUC)= $RMS_CALL(SYS$WRITE,RAB,ERR,SUC) %; !** The rest of these calls are now defined in STARLET.SDL !** $CLOSE(FAB,ERR,SUC)= !** $RMS_CALL(SYS$CLOSE,FAB,ERR,SUC) %, !** !** $CONNECT(RAB,ERR,SUC)= !** $RMS_CALL(SYS$CONNECT,RAB,ERR,SUC) %, !** !** $CREATE(FAB,ERR,SUC)= !** $RMS_CALL(SYS$CREATE,FAB,ERR,SUC) %, !** !** $DELETE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$DELETE,RAB,ERR,SUC) %, !** !** $DISCONNECT(RAB,ERR,SUC)= !** $RMS_CALL(SYS$DISCONNECT,RAB,ERR,SUC) %, !** !** $DISPLAY(FAB,ERR,SUC)= !** $RMS_CALL(SYS$DISPLAY,FAB,ERR,SUC) %, !** !** $ERASE(FAB,ERR,SUC)= !** $RMS_CALL(SYS$ERASE,FAB,ERR,SUC) %, !** !** $EXTEND(FAB,ERR,SUC)= !** $RMS_CALL(SYS$EXTEND,FAB,ERR,SUC) %, !** !** $FIND(RAB,ERR,SUC)= !** $RMS_CALL(SYS$FIND,RAB,ERR,SUC) %, !** !** $FLUSH(RAB,ERR,SUC)= !** $RMS_CALL(SYS$FLUSH,RAB,ERR,SUC) %, !** !** $FREE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$FREE,RAB,ERR,SUC) %, !** !** $GET(RAB,ERR,SUC)= !** $RMS_CALL(SYS$GET,RAB,ERR,SUC) %, !** !** $MODIFY(FAB,ERR,SUC)= !** $RMS_CALL(SYS$MODIFY,FAB,ERR,SUC) %, !** !** $NXTVOL(RAB,ERR,SUC)= !** $RMS_CALL(SYS$NXTVOL,RAB,ERR,SUC) %, !** !** $OPEN(FAB,ERR,SUC)= !** $RMS_CALL(SYS$OPEN,FAB,ERR,SUC) %, !** !** $PUT(RAB,ERR,SUC)= !** $RMS_CALL(SYS$PUT,RAB,ERR,SUC) %, !** !** $PARSE(FAB,ERR,SUC)= !** $RMS_CALL(SYS$PARSE,FAB,ERR,SUC) %, !** !** $READ(RAB,ERR,SUC)= !** $RMS_CALL(SYS$READ,RAB,ERR,SUC) %, !** !** $RELEASE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$RELEASE,RAB,ERR,SUC) %, !** !** $REWIND(RAB,ERR,SUC)= !** $RMS_CALL(SYS$REWIND,RAB,ERR,SUC) %, !** !** $SEARCH(FAB,ERR,SUC)= !** $RMS_CALL(SYS$SEARCH,FAB,ERR,SUC) %, !** !** $ENTER(FAB,ERR,SUC)= !** $RMS_CALL(SYS$ENTER,FAB,ERR,SUC) %, !** !** $REMOVE(FAB,ERR,SUC)= !** $RMS_CALL(SYS$REMOVE,FAB,ERR,SUC) %, !** !** $RENAME(OLDFAB,ERR,SUC,NEWFAB)= !** $RMS_CALL(SYS$RENAME,OLDFAB,ERR,SUC,NEWFAB) %, !** !** $SPACE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$SPACE,RAB,ERR,SUC) %, !** !** $TRUNCATE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$TRUNCATE,RAB,ERR,SUC) %, !** !** $UPDATE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$UPDATE,RAB,ERR,SUC) %, !** !** $WAIT(RAB,ERR,SUC)= !** $RMS_CALL(SYS$WAIT,RAB,ERR,SUC) %, !** !** $WRITE(RAB,ERR,SUC)= !** $RMS_CALL(SYS$WRITE,RAB,ERR,SUC) %; !** !** End of macros defined in STARLET.SDL !**************************************************** !++ ! ! $RMS_CALL ! ! Internal macro. Processes the functional calls ! by counting the parameters, putting them in ! the right order, and calling RMS-32 as required. ! !-- MACRO $ITR_RMS_CALL[ARG] = %IF %NULL(ARG) %THEN 0 %ELSE ARG %FI %, $RMS_CALL(ROUT,BLK) = BEGIN EXTERNAL ROUTINE ROUT: BLISS ADDRESSING_MODE(GENERAL); ROUT( %IF NOT %NULL( %REMAINING) %THEN $ITR_RMS_CALL(BLK, %REMAINING) %ELSE BLK %FI ) END %; !++ ! ! FIELD DEFINITIONS, NAMED BIT MASKS, AND NAMED VALUES ! ! Produced automatically by the SDL processor ! acting on the input file RMSUSR.SDL ! !-- ! ! ---- < End of module RMSMAC.REQ - 12-AUG-2010 13:57:05.36 > - ! !+ ! This file, RTLMACB32.REQ, holds macros for STARLET.L32. !- ! !**************************************************************************** !* * !* COPYRIGHT (c) 1978, 1980, 1982, 1984 BY * !* DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * !* ALL RIGHTS RESERVED. * !* * !* THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * !* ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * !* INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * !* COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * !* OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * !* TRANSFERRED. * !* * !* THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * !* AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * !* CORPORATION. * !* * !* DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * !* SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * !* * !* * !**************************************************************************** ! ! Edit history: ! ! 1-001 - Original, with just $LIB_KEY_TABLE. JBS 19-DEC-1979 ! 1-002 - Add copyright notice. SBL 11-MAR-1980 !-- !+ ! Macro to build a keyword table for the LIB$KEY_LOOKUP keyword lookup routine. !- MACRO $LIB_KEY_TABLE (FIRST) = ! Generate a keyword table VECTOR[2*%LENGTH+1] INITIAL( (2*%LENGTH) $LIB$KEY_INIT(FIRST,%REMAINING) ) %, $LIB$KEY_INIT (ENTRY) [] = ! Initialize the entire keyword table $LIB$KEY_ENTRY(%REMOVE(ENTRY)) $LIB$KEY_INIT(%REMAINING) %, $LIB$KEY_ENTRY (KEYWORD) = ! Initialize a single keyword table entry (2 longwords) ,UPLIT(%ASCIC%STRING(KEYWORD)), %REMAINING %; ! End of $LIB_KEY_TABLE macro ! End of file RTLMACB32.REQ ! ! ---- < End of module RTLMACB32.REQ - 12-AUG-2010 13:57:05.41 > - ! ! Version: 'X-9' ! !**************************************************************************** !* * !* COPYRIGHT (c) 1978, 1990, 1992 * !* DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * !* ALL RIGHTS RESERVED. * !* * !* THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * !* ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * !* INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * !* COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * !* OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * !* TRANSFERRED. * !* * !* THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * !* AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * !* CORPORATION. * !* * !* DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * !* SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * !* * !* * !**************************************************************************** !++ ! ! UTLDEF.B32 - UTILITY DEFINITION MACROS FOR BLISS PROCESSING ! OF STARLET DEFINITION MACROS. ! ! MODIFIED BY: ! ! X-9 RAE Rae A. Eastland 02-Feb-1999 ! Fix string descriptor macro to work with BLISS64. ! ! X-8 This generation number was inserted to get in synch with VDE. ! ! X-7 NYK517 Nitin Y. Karkhanis 30-Nov-1995 ! Added $is_itmlst64 macro. ! ! X-6 TRB Tom Benson 12-Oct-1994 ! Added $is_desc64 macro. ! ! X-6 KAB Karen Marion Barth 15-May-1992 ! Simplify last edit. ! ! X-5 KAB Karen Marion Barth 6-May-1992 ! Add workaround so that VAX Bliss doesn't croak on BLISS64E ! and BLISS32E keywords. ! ! X-4 MAS Mary A. Sullivan 01-Apr-1992 ! Conditionalize $BBLOCK definition for Alpha only, since the ! VAX BLISS compiler doesn't support BLOCK_BYTE. ! ! X-3 MAS Mary A. Sullivan 25-Mar-1992 ! Restore $BBLOCK macro definition, but just call the compiler ! builtin under its new name, BLOCK_BYTE. ! ! X-2 MAS Mary A. Sullivan 10-Feb-1992 ! Remove $BBLOCK macro definition now that BLISS supports ! this in the cross-compilers. ! ! X-1K1 RWC010 Richard W. Critz, Jr. 28-Nov-1990 ! Make all addresses signed for inclusion in STARLET.R64. !***MODULE RENAMED TO UTLDEFB.REQ ! ! X-3 RRD00025 Ray Davis 13-Oct-1989 ! Finally add ITM$L_TERMINATOR. ! ! X-2 22-June-1988 Steve Lionel ! Use BIND in $INIT_DYNDESC so that any expression can ! be passed to it. V4 QAR #1797 ! ! V03-005 GRR3005 Greg Robert 12-Nov-1982 ! Added an allocation check to $ITMLST_INIT and ! modified to produce better code. ! ! V03-004 SBL3004 Steve Lionel 8-Nov-1982 ! Change error message in $ASSUME so as to not try to ! display the macro arguments, since BLISS can't handle ! expressions in %ERRORMACRO. ! ! V03-003 GRR3003 Greg Robert 22-Oct-1982 ! Add $ITMLST macros and structure definition to ! define and initialized item lists. ! ! V03-002 SBL3002 Steve Lionel 21-Oct-1982 ! Add $ASSUME macro to verify compiletime assumptions. ! ! V03-001 BLS0181 Benn Schreiber 27-Jul-1982 ! Add $init_dyndesc macro to initialize a dynamic ! descriptor ! !-- ! ! MACROS TO EXTRACT OFFSETS, FIELD WIDTHS, ETC., FROM FIELD EXTRACTION MACROS. ! MACRO $BYTEOFFSET (OFFSET, POSITION, WIDTH, SIGN) = OFFSET%; MACRO $BITPOSITION (OFFSET, POSITION, WIDTH, SIGN) = POSITION%; MACRO $FIELDWIDTH (OFFSET, POSITION, WIDTH, SIGN) = WIDTH%; MACRO $EXTENSION (OFFSET, POSITION, WIDTH, SIGN) = SIGN%; MACRO $FIELDMASK (OFFSET, POSITION, WIDTH, SIGN) = (1^(POSITION+WIDTH) - 1^POSITION)%; ! ! MACRO TO GENERATE EQULST CONSTRUCTS. ! MACRO $EQULST(P,G,I,S)[A]= %NAME(P,GET1ST_ A) = %IF NUL2ND_ A %THEN (I) + %COUNT*(S) ! ASSUMES I, S ALWAYS GENERATED BY CONVERSION PROGRAM %ELSE GET2ND_ A %FI %, GET1ST_(A,B)= A %, GET2ND_(A,B)= B %, ! KNOWN NON-NULL NUL2ND_(A,B)= %NULL(B) %; ! ! MACRO TO GENERATE A STRING DESCRIPTOR PLIT ! MACRO $DESCRIPTOR[]= UPLIT LONG(%CHARCOUNT(%REMAINING),UPLIT BYTE(%REMAINING))%; ! ! $SHR_MSGDEF - a macro which defines facility-specific message codes ! which are based on the system-wide shared message codes. ! ! $SHR_MSGDEF( name, code, scope, (msg,severity), ... ) ! ! where: ! name is the name of the facility (e.g., COPY) ! code is the corresponding facility code (e.g., 103) ! scope is GLOBAL for global definitions (anything else gets ! LOCAL) ! msg is the name of the shared message (e.g., BEGIN) ! severity is the desired message severity (e.g., 1, 0, 2, or ! WARNING, SUCCESS, INFO, ERROR, SEVERE) ! MACRO $SHR_MSGDEF( FACILITY_NAME, FACILITY_CODE, SCOPE) = %IF %IDENTICAL(%STRING(SCOPE),'GLOBAL') %THEN GLOBAL LITERAL $SHR_MSGIDS( FACILITY_NAME, FACILITY_CODE, %REMAINING ); %ELSE LITERAL $SHR_MSGIDS( FACILITY_NAME, FACILITY_CODE, %REMAINING ); %FI%, $SHR_MSGIDS( FACILITY_NAME, FACILITY_CODE) [ VALUE ] = $SHR_MSGCALC( FACILITY_NAME, FACILITY_CODE, %REMOVE(VALUE) ) %, $SHR_MSGCALC( FACILITY_NAME, FACILITY_CODE, MSG_ID, SEVERITY ) = %NAME(FACILITY_NAME,'$_',MSG_ID) = %NAME('SHR$_',MSG_ID) + FACILITY_CODE*65536 + %IF %DECLARED(%NAME('STS$K_',SEVERITY)) %THEN %NAME('STS$K_',SEVERITY) %ELSE SEVERITY %FI %; ! ! Define VMS block structures - use compiler builtin. ! (Don't define for VAX since XSDA uses the Alpha STARLET.) ! %IF NOT %BLISS(BLISS32V) %THEN MACRO $BBLOCK = BLOCK_BYTE %; %FI ! ! Macro to initialize a dynamic descriptor ! MACRO $init_dyndesc(d) = begin bind _d = (d) : $bblock; _d[dsc$w_length] = 0; _d[dsc$b_class] = dsc$k_class_d; _d[dsc$b_dtype] = dsc$k_dtype_t; _d[dsc$a_pointer] = 0; end%; ! ! Macro to check for a 64-bit format descriptor ! MACRO $is_desc64(d) = begin bind _d = (d) : REF $bblock; (._d[dsc64$l_mbmo] EQL -1) AND (._d[dsc64$w_mbo] EQL 1) end%; !++ ! ! FUNCTIONAL DESCRIPTION: ! These macros facilitate the allocation and initialization ! of item lists in Bliss. The lists are suitable for use ! with GETDVI, GETSYI, GETJPI etc. ! ! MACROS: ! $ITMLST_DECL - allocates storage and declares the structure ! $ITMLST_INIT - dynamically initializes an item list ! $ITMLST_UPLIT - generates an UPLIT to a static (read-only) item list ! ! INPUT PARAMETERS: ! ITEMS - Number of items in the list (default=1) ! ITMLST - Address of the item list ! ITMCOD - Item to be obtained ! BUFSIZ - Size of the buffer to receive the item (default=4) ! BUFADR - Address of the buffer to receive the item ! RETLEN - Address of word to receive the resultant item size (default=0) ! ! EXAMPLE: ! ! LOCAL ! LIST: $ITMLST_DECL (ITEMS=4), ! DEVCLASS, ! DEVTYPE, ! DEVDEPEND, ! DEVNAM: VECTOR [64, BYTE], ! DEVNAMSIZ; ! ! BEGIN ! $ITMLST_INIT (ITMLST=LIST, ! (ITMCOD=DVI$K_DEVCLASS, BUFADR=DEVCLASS), ! (ITMCOD=DVI$K_DEVTYPE, BUFADR=DEVTYPE), ! (ITMCOD=DVI$K_DEVDEPEND, BUFADR=DEVDEPEND), ! (ITMCOD=DVI$K_DEVNAM, BUFADR=DEVNAM, BUFSIZ=64, RETLEN=DEVNAMESIZ) ! ); ! ! $GETDVI (ITMLST=LIST, DEVNAM=$DESCRIPTOR('SYS$OUTPUT')); ! END; ! ! STRUCTURES: ! $ITMBLK [items, item_size, allocation_unit] ! ! This structure defines an item list as a blockvector with ! a trailing longword used to terminate the list. ! ! You must specify the number of items in the list. The size of ! each item defaults to 12 and the allocation unit defaults to BYTE. ! ! Fields in an item list declared with this structure can be ! referenced in the following way: ! ! item_list_address [item_number, field_specifier] ! ! For example, ITMLST [3, ITM$W_ITMCOD] references the item code ! field of the third item in the item list. ! ! ! First define macro's to access item fields ! MACRO ITM$S_ITEM = 12 %, ! Item list member size ITM$W_BUFSIZ = 0,0,16,0 %, ! Target buffer size ITM$W_ITMCOD = 2,0,16,0 %, ! Item code ITM$L_BUFADR = 4,0,32,1 %, ! Target buffer address ITM$L_RETLEN = 8,0,32,1 %, ! Address of word to receive length ITM$L_TERMINATOR = 0,0,32,0 %; ! Terminating longword ! ! Define an item list structure ! STRUCTURE $ITMBLK [I, O, P, S, E; N, BS=ITM$S_ITEM, UNIT=1] = [N*BS*UNIT+4] ($ITMBLK+(I*BS+O)*UNIT); ! ! Define the allocation macro ! KEYWORDMACRO $ITMLST_DECL (ITEMS=1) = $ITMBLK [ITEMS] % ; ! ! Define the list initialization macro ! MACRO $ITMLST_INIT (ITMLST) [ITEM_VALUES] = %IF %COUNT EQL 0 %THEN $$ITM_INITIATE (ITMLST, NUMITM = %LENGTH - 1) %FI $$ITM_INIT (%REMOVE (ITEM_VALUES)) %IF %COUNT EQL %LENGTH - 2 %THEN $$ITMBLKPTR [0, 0, 32, 0] = 0; $$ITMBLKPTR = .$$ITMBLKPTR + 4 END %FI % ; ! ! Define the list initiation macro ! KEYWORDMACRO $$ITM_INITIATE (ITMLST, NUMITM) = %IF %ALLOCATION (ITMLST) LSSU ((NUMITM) * ITM$S_ITEM + 4) %THEN %ERRORMACRO ('initialization data exceeds allocation of ', ITMLST) %FI BEGIN LOCAL $$ITMBLKPTR: REF $BBLOCK; $$ITMBLKPTR = (ITMLST); % ; ! ! Define the item initialization macro ! KEYWORDMACRO $$ITM_INIT ( BUFSIZ=4, ! Size of return buffer ITMCOD, ! Item code BUFADR, ! Address of return buffer RETLEN=0 ! Address of word to receive resultant length ) = %IF %NULL (ITMCOD) OR %NULL (BUFADR) %THEN %ERRORMACRO ('ITMCOD and BUFADR must be specified') %FI $$ITMBLKPTR [ITM$W_BUFSIZ] = (BUFSIZ); $$ITMBLKPTR [ITM$W_ITMCOD] = (ITMCOD); $$ITMBLKPTR [ITM$L_BUFADR] = (BUFADR); $$ITMBLKPTR [ITM$L_RETLEN] = (RETLEN); $$ITMBLKPTR = .$$ITMBLKPTR + ITM$S_ITEM; % ; ! ! Define the static list macro ! MACRO $ITMLST_UPLIT [] = UPLIT ( $$ITMLST_UPLIT_REPEAT (%REMAINING) , LONG (0)) % ; ! ! Define the repetition macro ! MACRO $$ITMLST_UPLIT_REPEAT [ITEM] = $$ITMLST_UPLIT_ITEM ( %REMOVE (ITEM) ) % ; ! ! Define the static item macro ! KEYWORDMACRO $$ITMLST_UPLIT_ITEM ( BUFSIZ=4, ! Size of return buffer ITMCOD, ! Item code BUFADR, ! Address of return buffer RETLEN=0 ! Address of word to receive resultant length ) = %IF %NULL (ITMCOD) OR %NULL (BUFADR) %THEN %ERRORMACRO ('ITMCOD and BUFADR must be specified') %FI WORD (BUFSIZ, ITMCOD), LONG (BUFADR, RETLEN) % ; ! ! $IS_ITMLST64 ! ! This macro tests the specified item list to determine if it is a 64-bit item ! list. A 64-bit item list has a one in the first word and a -1 in the second ! longword. ! ! ! ARGUMENTS: ! ! Itmlst: Specifies the item list to be examined. ! ! ! USAGE: ! Flag = $IS_ITMLST64 (ITMLST = Item_list); ! KEYWORDMACRO $IS_ITMLST64 (Itmlst) = BEGIN MAP Itmlst : REF BLOCK [, BYTE]; ((.Itmlst [Ilea_64$w_mbo] EQL 1) AND (.Itmlst [Ilea_64$l_mbmo] EQL -1)) END%; ! ! $ASSUME - Test compile-time relation assumptions ! ! Format: ! ! $ASSUME (val-1, cond, val-2) ! ! val-1 - A compile-time constant expression to be compared with val-2. ! cond - The relation that is to hold between val-1 and val-2. For ! example, EQL, LSSU, etc. ! val-2 - A compile-time constant expression to be compared with val-1. ! ! Result: ! The empty sequence. If the given relation does not hold, an ! error message is issued. ! MACRO $ASSUME (V1, COND, V2) = %IF NOT (V1 COND V2) %THEN %ERROR ('$ASSUME relationship does not hold') %FI %; ! ! ---- < End of module UTLDEFB.REQ - 12-AUG-2010 13:57:05.47 > - !