Google
 

Trailing-Edge - PDP-10 Archives - BB-H138E-BM - language-sources/dap-codes.req
There are 15 other files named dap-codes.req in the archive. Click here to see a list.
!
!Common definitions for DAP
!
! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY  BE  USED
! OR COPIED ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
!
! COPYRIGHT  (C)  DIGITAL  EQUIPMENT  CORPORATION 1985.
! ALL RIGHTS RESERVED.

LIBRARY 'CONDIT';

! Codes defined in the DAP protocol specification -- v 7.0
! 
! Revision History
!
!  1 - Develop this parameter file
!  2 - PDT and BDT were reversed, and ADT needs to be added.
!

!DAP buffer size
LITERAL DAP$K_BUFFER_SIZE=2500;

!The FAL Object Type

LITERAL DAP$K_FAL=17;
!
!	DAP MESSAGE TYPES DEFINED
!
LITERAL
	DAP$K_CONFIG=1,		! CONFIGURATION 
	DAP$K_ATTRIBUTES=2,	! ATTRIBUTES
	DAP$K_ACCESS=3,		! ACCESS
	DAP$K_CONTROL=4,        ! CONTROL
	DAP$K_CONTINUE=5,       ! CONTINUE
	DAP$K_ACK=6,		! ACKNOWLEDGE
	DAP$K_ACCESS_COMPLETE=7,! ACCESS COMPLETE
	DAP$K_DATA=8,		! DATA
	DAP$K_STATUS=9,		! STATUS
	DAP$K_KEY=10,		! KEY DEFINITION
	DAP$K_ALLOCATION=11,    ! ALLOCATION
	DAP$K_SUMMARY=12,       ! SUMMARY ATTRIBUTES MESSAGE
	DAP$K_DATE_TIME=13,     ! DATE & TIME ATTRIBUTES MESSAGE
	DAP$K_PROTECTION=14,	! PROTECTION
	DAP$K_NAME=15,		! NAME MESSAGE
	DAP$K_ACL=16;		! ACCESS CONTROL LIST

!
!Bits within FLAGS byte
!
! We do not use these, see description of $DAP_DESCRIPTOR
%(
LITERAL
	DAP$V_MFLAGS_STREAMID=0,	! STREAMID present
	DAP$V_MFLAGS_LENGTH=1,	! LENGTH field present
	DAP$V_MFLAGS_LEN256=2,	!2-byte length field present
	DAP$V_MFLAGS_BITCNT=3,  !BIT COUNT in DATA message only
                                !4 is reserved
        DAP$V_MFLAGS_SYSPEC=5,  !System-specific field
        DAP$V_MFLAGS_MORE=6;    !Not last segment of message
)%
!
!	FIELDS WITHIN CONFIGURATION MESSAGES
!
!       SEE CONFIG.REQ for definition of CONFIG block
!
!DAP Operating system type codes defined:
!

LITERAL	DAP$K_RT11=1,
	DAP$K_RSTS=2,
	DAP$K_RSX11S=3,
	DAP$K_RSX11M=4,
	DAP$K_RSX11D=5,
	DAP$K_IAS=6,
	DAP$K_VMS=7,
	DAP$K_TOPS20=8,
	DAP$K_TOPS10=9,
        DAP$K_RTS8=10,
        DAP$K_OS8=11,
        DAP$K_RSX11MPLUS=12,
        DAP$K_COPOS11=13,
        DAP$K_POS=14,
        DAP$K_SEABOARD=15;

LITERAL DAP$K_OSTYPE_MAX=15;

!
!DAP File system type codes defined:
!

LITERAL	DAP$K_FILESYS_RMS11=1,
	 DAP$K_RMS11=DAP$K_FILESYS_RMS11,
	DAP$K_FILESYS_RMS20=2,
	 DAP$K_RMS20=DAP$K_FILESYS_RMS20,
	DAP$K_FILESYS_RMS32=3,
	 DAP$K_RMS32=DAP$K_FILESYS_RMS32,
	DAP$K_FILESYS_FCS11=4,
	 DAP$K_FCS11=DAP$K_FILESYS_FCS11,
	DAP$K_FILESYS_RT11=5,
	DAP$K_FILESYS_NONE=6,
        DAP$K_FILESYS_TOPS20=7,
        DAP$K_FILESYS_TOPS10=8,
        DAP$K_FILESYS_OS8=9;

LITERAL DAP$K_FILESYS_MAX=9;
!
!	DAP ATTRIBUTE MESSAGE FIELD DEFINITIONS
!
%(
![5.0]	SYSCAP BITS
LITERAL
	SYS_PREALLOCATE=0,	!PREALLOCATION
	SYS_SEQ_ORG=1,	!Sequential file organization
	SYS_REL_ORG=2,	!Relative...
	SYS_DIR_ORG=3,	!Direct... (reserved)
	SYS_1KEY_ORG=4,	!Single keyed indexed... (reserved)
	SYS_SEQ_ACC=5,	!Sequential file access
	SYS_REC_ACC=6,	!Access by record #
	SYS_VBN_ACC=8,	!Access by VBN
	SYS_KEY_ACC=9,	!Random access by Key
	SYS_HSH_ACC=10,	!User generated hash code access (reserved)
	SYS_RFA_ACC=11,	!Access by RFA
	SYS_NKEY_ORG=12,!Multi-key indexed organization
	SYS_SWITCH_ACC=13,	!Switching access mode
	SYS_APPEND=14,	!Append
	SYS_SUBMIT_ACC=16, !SUBMIT access message
	SYS_COMPRESS=17, !File compression (reserved)
	SYS_STREAMS=18,	!Multiple data streams
	SYS_STSRET=19,	!Status return
	SYS_BLOCKING=20,!DAP message blocking
	SYS_SBLOCKING=21, !Blocking across responses
	SYS_LEN256=22,	!2-byte length field supported
	SYS_CHECKSUM=24,!File checksum
	SYS_KDF=25,	!KEY definition XAM
	SYS_ALLOC=26,	!ALLOCATION XAM
	SYS_SUM=27,	!Summary attributes XAM
	SYS_FHC=28,	!File header characteristics XAM
	SYS_DTM=29,	!Date & time XAM
	SYS_PRO=30,	!Protection XAM
	SYS_ACL=32,		!Access control list XAM
	SYS_SPOOL_FOP=33,	!Spool via FOP field
	SYS_SUBMIT_FOP=34,	!Submit via FOP field
	SYS_ERASE_FOP=35,	!Delete via FOP field
	SYS_DEFAULT_FSP=36,	!Default filespec
	SYS_RELATED_FSP=37,	!Related filespec
	SYS_RECOVERY=38,	!Recovery option (reserved)
	SYS_BITCNT=40;		!BITCOUNT field
)%
!	MENU OF FIELDS IN ATTRIBUTES MESSAGE

LITERAL
	DAP$V_ATTMENU_DAT=0,		! DATA TYPE
	DAP$V_ATTMENU_ORG=1,
	DAP$V_ATTMENU_RFM=2,
	DAP$V_ATTMENU_RAT=3,
	DAP$V_ATTMENU_BLS=4,
	DAP$V_ATTMENU_MRS=5,
	DAP$V_ATTMENU_ALQ=6,
	DAP$V_ATTMENU_BKS=7,
	DAP$V_ATTMENU_FSZ=8,
	DAP$V_ATTMENU_MRN=9,
	DAP$V_ATTMENU_RUN=10,
	DAP$V_ATTMENU_DEQ=11,
	DAP$V_ATTMENU_FOP=12,	!FOP
	DAP$V_ATTMENU_BSZ=13,   !Byte size
	DAP$V_ATTMENU_DEV=14,	!Device characteristics
	DAP$V_ATTMENU_SDC=15,	!Spooled dev char. (reserved)
        DAP$V_ATTMENU_LRL=16,   ! Longest record length
        DAP$V_ATTMENU_HBK=17,   ! High block number
        DAP$V_ATTMENU_EBK=18,   ! EOF block number
        DAP$V_ATTMENU_FFB=19,   ! First free byte in last block
        DAP$V_ATTMENU_SBN=20;   ! Starting block number (contiguous file only)

!	DATATYPE FIELD DEFINITIONS

LITERAL
	DAP$V_DATATYPE_ASCII=0,		! ASCII DATA
	DAP$V_DATATYPE_IMAGE=1,         ! IMAGE MODE (DEFAULT)
	DAP$V_DATATYPE_EBCDIC=2,        ! EBCDIC
	DAP$V_DATATYPE_COMPRESSED=3,    ! COMPRESSED
	DAP$V_DATATYPE_EXECUTABLE=4,    ! EXECUTABLE
	DAP$V_DATATYPE_PRIVELEGED=5,    ! PRIVILEGED
                                        ! 6 is reserved
	DAP$V_DATATYPE_ZERO_ON_DELETE=7;! Zero on delete [5.0]

!	ORG FIELD

LITERAL
	DAP$K_ORG_SEQ=0,		! SEQUENTIAL (DEFAULT)
	DAP$K_ORG_REL=%O'20',		! RELATIVE
	DAP$K_ORG_IDX=%O'40',		! INDEXED
	DAP$K_ORG_DIR=%O'60';		! DIRECT

! RECORD FORMAT (RFM) FIELD

LITERAL
	DAP$K_RFM_UDF=0,		! UNDEFINED RECORD FORMAT
	DAP$K_RFM_FIX=1,		! FIXED LENGTH (DEFAULT)
	DAP$K_RFM_VAR=2,		! VARIABLE LENGTH
	DAP$K_RFM_VFC=3,		! VARIABLE WITH FIXED CONTROL
	DAP$K_RFM_STM=4,		! ASCII STREAM
	DAP$K_RFM_LSA=5;		! LINE SEQUENCED ASCII

!	RAT FIELD - RECORD ATTRIBUTES

LITERAL
	DAP$V_RAT_FTN=0,        ! FORTRAN CARRIAGE CONTROL
	DAP$V_RAT_CR=1,		! LF/CR ENVELOPE
	DAP$V_RAT_BLK=3,        ! RECORDS DO NOT SPAN BLOCKS
        DAP$V_RAT_EFC=4,        ! EMBEDDED FORMAT CONTROL
	DAP$V_RAT_CBL=5,        ! COBOL CARRIAGE CTL
        DAP$V_RAT_LSA=6,        ! LINE SEQUENCED ASCII
        DAP$V_RAT_MACY11=7;     ! MACY11 FORMAT


!	DEV FIELD - GENERIC DEVICE CHARACTERISTICS

LITERAL
	DAP$V_DEV_REC=0,		! RECORD ORIENTED
	DAP$V_DEV_CCL=1,		! CARRAIGE CONTROL DEVICE
	DAP$V_DEV_TRM=2,		! TERMINAL
	DAP$V_DEV_MDI=3,		! DIRECTORY STRUCTURED
	DAP$V_DEV_SDI=4,		! SINGLE DIRECTORY
	DAP$V_DEV_SQD=5,		! INHERENTLY SEQUENTIAL

	DAP$V_DEV_FOD=7,		! FILES ORIENTED DEVICE
	DAP$V_DEV_SHR=8,		! SHARABLE DEVICE
	DAP$V_DEV_SPL=9,		! DEVICE IS BEING SPOOLED
	DAP$V_DEV_MNT=10,		! DEVICE IS CURRENTLY MOUNTED
	DAP$V_DEV_DMT=11,		! DEV MARKED FOR DISMOUNT
	DAP$V_DEV_ALL=12,		! DEV ALLOCATED
	DAP$V_DEV_IDV=13,		! DEVICE CAPABLE OF INPUT

	DAP$V_DEV_ODV=14,		! DEVICE CAPABLE OF OUTPUT
	DAP$V_DEV_SWL=15,		! SOFTWARE WRITE=LOCKED
	DAP$V_DEV_AVL=16,		! DEVICE AVAILABLE
	DAP$V_DEV_ELG=17,		! ERROR LOGGING ENABLED
	DAP$V_DEV_MBX=18,		! DEVICE IS A MAILBOX
	DAP$V_DEV_RTM=19,		! DEVICE IS REAL-TIME IN NATURE
	DAP$V_DEV_RAD=20;		! DEVICE IS RANDOM ACCESS

!	FOP - FILE ACCESS OPTIONS REQUIRED

LITERAL
	DAP$V_FOP_RWO=0,		! REWIND ON OPEN
	DAP$V_FOP_RWC=1,		! REWIND ON CLOSE
	DAP$V_FOP_POS=3,		! MAG TAPE POSITIONED PAST LAST FILE
	DAP$V_FOP_DLK=4,		! DO NOT LOCK IF CLOSE OK
	DAP$V_FOP_ACK=6,		! VERIFY ATTRIBUTES

	DAP$V_FOP_CTG=7,		! CONTIGUOUS ALLOCATION
	DAP$V_FOP_SUP=8,		! SUPERSCEDE EXISTING FILE
	DAP$V_FOP_NEF=9,		! FORTRAN TAPE OPEN UPDATE
	DAP$V_FOP_TMP=10,		! CREATE TEMP FILE
	DAP$V_FOP_MKD=11,		! MARK FOR DELETION
	DAP$V_FOP_FID=12,		! OPEN BY FILE ID
	DAP$V_FOP_DMP=13,		! DISMOUNT ON CLOSE

	DAP$V_FOP_WCK=14,		! WRITE CHECKING
	DAP$V_FOP_RCK=15,		! READ CHECKING
	DAP$V_FOP_CIF=16,		! NEW FILE ONLY
	DAP$V_FOP_LKO=17,		! OVERRIDE FILE LOCK ON OPEN
	DAP$V_FOP_SQO=18,		! SEQUENTIAL ACCESS ONLY
	DAP$V_FOP_MVN=19,		! Maximum version number
	DAP$V_FOP_SPL=20,		! Spool to printer

	DAP$V_FOP_SCF=21,		! Submit to BATCH on close
	DAP$V_FOP_DLT=22,		! Delete on close
	DAP$V_FOP_CBT=23,		! Contiguous best try
	DAP$V_FOP_WAT=24;		! Wait if locked by another user

!	MENU BITS FOR DATE & TIME MESSAGE

LITERAL
	DAP$V_DTM_CDT=0,		! CREATION DATE PRESENT
	DAP$V_DTM_RDT=1,		! ACCESS DATE PRESENT
	DAP$V_DTM_EDT=2,		! SCRATCH DATE PRESENT
        DAP$V_DTM_RVN=3,                ! Revision number present
        DAP$V_DTM_BDT=4,                ! Backup date present    	!M002
        DAP$V_DTM_PDT=5,                ! Internal date present         !M002
        DAP$V_DTM_ADT=6;                ! Internal date present         !A002


!	MENU BITS FOR PROTECTION MESSAGE

LITERAL
	DAP$V_PROTMENU_OWNER=0,		! OWNER FIELD PRESENT
	DAP$V_PROTMENU_PROTSYS=1,       ! SYSTEM PROTECTION FIELD PRESENT
	DAP$V_PROTMENU_PROTOWN=2,       ! OWNER PROTECTION FIELD PRESENT
	DAP$V_PROTMENU_PROTGRP=3,       ! GROUP PROTECTION FIELD PRESENT
	DAP$V_PROTMENU_PROTWLD=4;       ! WORLD PROTECTION FIELD PRESENT

!	BIT DEFINITIONS IN PROTECTION FIELDS

LITERAL
	DAP$V_PROT_RDV=0,		! DENY READ ACCESS
	DAP$V_PROT_WRV=1,		! DENY WRITE ACCESS
	DAP$V_PROT_EXE=2,		! DENY EXECUTE ACCESS
	DAP$V_PROT_DLE=3,		! DENY DELETE ACCESS
	DAP$V_PROT_APP=4,		! DENY APPEND ACCESS
	DAP$V_PROT_LST=5,		! DENY LIST (directory) ACCESS
	DAP$V_PROT_UPD=6,		! DENY UPDATE ACCESS
	DAP$V_PROT_CNG=7,		! DENY CHANGE PROTECTION ACCESS
	DAP$V_PROT_EXT=8;		! DENY EXTEND ACCESS
!
!	ACCESS MESSAGE FIELD DEFINITIONS
!

!	ACCESS FUNCTION FIELD


LITERAL
	DAP$K_OPEN=1,                   ! OPEN EXISTING FILE
	DAP$K_CREATE=2,                 ! LCREATE NEW FILE
	DAP$K_RENAME=3,                 ! RENAME FILE
	DAP$K_ERASE=4,                  ! ERASE A FILE
	DAP$K_DIRECTORY=6,		! DIRECTORY LIST
	DAP$K_SUBMIT=7,                 ! SUBMIT AS A BATCH JOB
	DAP$K_EXECUTE=8,		! EXECUTE A BATCH JOB

        DAP$K_ACCFUNC_MAX=8;            ! Maximum value for ACCFUNC


!	FAC FIELD - FILE ACCESS OPERATIONS REQUIRED

                                        ! Following are bit numbers
LITERAL
	DAP$V_FAC_PUT=0,		! PUT ACCESS
	DAP$V_FAC_GET=1,		! GET ACCESS
	DAP$V_FAC_DEL=2,		! DELETE ACCESS
	DAP$V_FAC_UPD=3,		! UPDATE ACCESS
	DAP$V_FAC_TRN=4,		! TRUNCATE ACCESS
	DAP$V_FAC_BIO=5;		! BLOCK I/O ACCESS
!
!	CONTROL MESSAGE FIELD DEFINITIONS
!

!	CONTROL FUNCTION CODES

LITERAL
	DAP$K_GET=1,                    ! GET RECORD
	DAP$K_CONNECT=2,		! INITIATE A DATA STREAM
	DAP$K_UPDATE=3,                 ! UPDATE CURRENT RECORD
	DAP$K_PUT=4,                    ! PUT FOLLOWING RECORDS
	DAP$K_DELETE=5,                 ! DELETE CURRENT RECORD
	DAP$K_REWIND=6,                 ! REWIND FILE
	DAP$K_TRUNCATE=7,		! TRUNCATE FILE
        DAP$K_MODIFY=8,                 ! MODIFY FILE ATTRIBUTES
	DAP$K_RELEASE=9,		! UNLOCK RECORD
	DAP$K_FREE=10,                  ! UNLOCK ALL RECORDS
	DAP$K_EXTEND_BEGIN=11,		! EXTEND FILE BY ALC MSG
	DAP$K_FLUSH=12,                 ! WRITE OUT ALL MODIFIED I/O BUFS
	DAP$K_NXTVOL=13,		! START NEXT VOLUME
	DAP$K_FIND=14,                  ! FIND RECORD
	DAP$K_EXTEND_END=15,		! EXTEND FILE BY ALC MSG
	DAP$K_DISPLAY=16,		! RETRIEVE ATTRIBUTES MESSAGE
	DAP$K_SPACE_FORWARD=17,         ! FORWARD SPACE
	DAP$K_SPACE_BACKWARD=18,        ! BACKWARD SPACE
        DAP$K_CHECKPOINT=19,            ! CHECKPOINT
        DAP$K_RECOVERY_GET=20,          ! GET, recovering after checkpoint
        DAP$K_RECOVERY_PUT=21,          ! PUT, recovering after checkpoint

        DAP$K_CTLFUNC_MAX=21;           ! Highest defined function code

!	CONTROL MESSAGE MENU FIELD

LITERAL
	DAP$V_CTL_RAC=0,		! RAC FIELD PRESENT
	DAP$V_CTL_KEY=1,
	DAP$V_CTL_KRF=2,
	DAP$V_CTL_ROP=3,
	DAP$V_CTL_HSH=4,
	DAP$V_CTL_DISPLAY=5;

!	RAC FIELD DEFINITIONS

LITERAL
	DAP$K_RAC_SEQ=0,		! SEQUENTIAL RECORD ACCESS
	DAP$K_RAC_KEY=1,		! KEYED ACCESS
	DAP$K_RAC_RFA=2,		! ACCESS BY RECORD FILE ADDRESS
	DAP$K_RAC_TRA=3,		! SEQUENTIAL FILE TRANSFER
	DAP$K_RAC_BLK=4,		! ACCESS BY VIRTUAL BLOCK NUMBER
	DAP$K_RAC_BFT=5;		! BLOCK MODE FILE TRANSFER

!	ROP FIELD - RECORD PROCESSING FEATURES

LITERAL
	DAP$V_ROP_EOF=0,		! POSITION TO EOF
	DAP$V_ROP_HSH=3,		! USE HASH CODE IN HSH FIELD
	DAP$V_ROP_LOA=4,		! FOLLOW FILL QUANTITIES
	DAP$V_ROP_ULK=5,		! MANUAL LOCKING/UNLOCKING
	DAP$V_ROP_RAH=7,		! READ AHEAD
	DAP$V_ROP_WBH=8,		! WRITE BEHIND
	DAP$V_ROP_KGE=9,		! KEY IS >=
	DAP$V_ROP_KGT=10;		! KEY IS >

!	DISPLAY FIELD DEFINITIONS

LITERAL
	DAP$V_DISPLAY_ATT=0,		! MAIN ATTRIBUTES MESSAGE
	DAP$V_DISPLAY_KEY=1,		! KEY DEF ATTRIBUTES
	DAP$V_DISPLAY_ALL=2,		! ALLOCATION ATTRIBUTES
	DAP$V_DISPLAY_SUM=3,		! SUMMARY ATTRIBUTES
	DAP$V_DISPLAY_DTM=4,		! DATE/TIME
        DAP$V_DISPLAY_PRO=5,            ! PROTECTION
        DAP$V_DISPLAY_ACL=7,            ! ACCESS CONTROL LIST
        DAP$V_DISPLAY_NAM=8;            ! RESULTANT FILE NAME
!
!	CONTINUE TRANSFER MESSAGE FIELDS
!

!	RECOVERY ACTION DEFINITIONS

LITERAL
	DAP$K_CON_TRY=1,		! TRY AGAIN
	DAP$K_CON_SKP=2,		! SKIP RECORD
	DAP$K_CON_ABO=3;		! ABORT TRANSFER
!
!	ACCESS COMPLETE FIELD DEFINITIONS
!

!	FUNCTION DEFINITIONS

LITERAL
	DAP$K_ACCOMP_COMMAND=1,		! COMMAND - CLOSE THE FILE
	DAP$K_ACCOMP_RESPONSE=2,        ! RESPONSE
	DAP$K_ACCOMP_PURGE=3,		! PURGE FILE
	DAP$K_ACCOMP_EOS=4;		! END STREAM (DISCONNECT)
!
!	STATUS message
!

LITERAL
	DAP$M_MACCODE=%O'170000',
	DAP$M_MICCODE=%O'7777';

!
!	MACCODE FIELD VALUES
!

LITERAL
	DAP$K_MAC_PENDING =    %O'00000',       ! OPERATION IN PROGRESS
	DAP$K_MAC_SUCCESS =    %O'10000',       ! SUCCESS
	DAP$K_MAC_UNSUPPORTED= %O'20000',       ! UNSUPPORTED
	DAP$K_MAC_OPEN =       %O'40000',       ! ERROR IN OPEN
	DAP$K_MAC_TRANSFER =   %O'50000',       ! ERROR IN TRANSFER
	DAP$K_MAC_WARNING =    %O'60000',	! WARNING
	DAP$K_MAC_TERMINATION= %O'70000',       ! ERROR IN TERMINATION
	DAP$K_MAC_FORMAT =     %O'100000',      ! BAD FORMAT
	DAP$K_MAC_INVALID =   %O'110000',       ! FIELD OF MESSAGE INVALID
	DAP$K_MAC_SYNC =      %O'120000';       ! MESSAGE OUT OF SEQUENCE
!
!	MICCODE VALUES FOR MACCODE 2,8,9
!

LITERAL

!	FIRST 6 BITS FOR DAP MESSAGE TYPE NUMBER
	
	DAP$K_MIC_MISC=0,               ! UNSPECIFIED DAP MSG ERROR
	DAP$K_MIC_CONFIG=%O'0100',      ! IN CONFIGURATION
	DAP$K_MIC_ATTRIBUTES=%O'0200',  ! IN ATTRIBUTES
	DAP$K_MIC_ACCESS=%O'0300',      ! IN ACCESS
	DAP$K_MIC_CONTROL=%O'0400',     ! IN CONTROL
	DAP$K_MIC_CONTINUE=%O'0500',    ! IN CONTINUE
	DAP$K_MIC_ACKNOWLEDGE=%O'0600', ! IN ACKNOWLEDGE
	DAP$K_MIC_ACCESS_COMPLETE=%O'0700', ! IN ACCOMP
	DAP$K_MIC_DATA=%O'1000',        ! IN DATA
	DAP$K_MIC_STATUS=%O'1100',      ! IN STATUS
	DAP$K_MIC_KEY=%O'1200',		! IN KEY DEF MSG
	DAP$K_MIC_ALLOCATION=%O'1300',  ! IN ALLOCATION MSG
        DAP$K_MIC_SUMMARY=%O'1400',     ! IN SUMMARY MSG
        DAP$K_MIC_DATE_TIME=%O'1500',   ! IN DATE/TIME MSG
        DAP$K_MIC_PROTECTION=%O'1600',  ! IN PROTECTION MSG
        DAP$K_MIC_NAME=%O'1700',        ! IN NAME MSG
	DAP$K_MIC_ACL=%O'2000';		! IN ACCESS CONTROL LIST

!
!       MICCODE VALUES TO INDICATE WHICH FIELD IS IN ERROR
!       (For MACCODE=2,8,9)
!

        ! Common to all messages
LITERAL
        DAP$K_MIC_UNKNOWN=0,            ! Unknown field
        DAP$K_MIC_FLAGS=%O'10',         ! Message flags
        DAP$K_MIC_STREAMID=%O'11',      ! Stream Identifier
        DAP$K_MIC_LENGTH=%O'12',        ! Length
        DAP$K_MIC_LEN256=%O'13',        ! Len256 (hi byte of length)
        DAP$K_MIC_BITCNT=%O'14',        ! Bit Count
        DAP$K_MIC_SYSPEC=%O'15';        ! System specific field

        ! Configuration message errors by field
LITERAL
        DAP$K_MIC_CONFIG_BUFFER_SIZE=DAP$K_MIC_CONFIG+%O'20',
        DAP$K_MIC_CONFIG_OSTYPE=DAP$K_MIC_CONFIG+%O'21',
        DAP$K_MIC_CONFIG_FILESYS=DAP$K_MIC_CONFIG+%O'22',
        DAP$K_MIC_CONFIG_VERNUM=DAP$K_MIC_CONFIG+%O'23',
        DAP$K_MIC_CONFIG_ECONUM=DAP$K_MIC_CONFIG+%O'24',
        DAP$K_MIC_CONFIG_USRNUM=DAP$K_MIC_CONFIG+%O'25',
        DAP$K_MIC_CONFIG_SOFTVER=DAP$K_MIC_CONFIG+%O'26',
        DAP$K_MIC_CONFIG_USRSOFT=DAP$K_MIC_CONFIG+%O'27',
        DAP$K_MIC_CONFIG_SYSCAP=DAP$K_MIC_CONFIG+%O'30';

        !Attributes message errors by field
LITERAL
        DAP$K_MIC_ATTRIBUTES_ATTMENU=DAP$K_MIC_ATTRIBUTES+%O'20',
        DAP$K_MIC_ATTRIBUTES_DATATYPE=DAP$K_MIC_ATTRIBUTES+%O'21',
        DAP$K_MIC_ATTRIBUTES_ORG=DAP$K_MIC_ATTRIBUTES+%O'22',
        DAP$K_MIC_ATTRIBUTES_RFM=DAP$K_MIC_ATTRIBUTES+%O'23',
        DAP$K_MIC_ATTRIBUTES_RAT=DAP$K_MIC_ATTRIBUTES+%O'24',
        DAP$K_MIC_ATTRIBUTES_BLS=DAP$K_MIC_ATTRIBUTES+%O'25',
        DAP$K_MIC_ATTRIBUTES_MRS=DAP$K_MIC_ATTRIBUTES+%O'26',
        DAP$K_MIC_ATTRIBUTES_ALQ=DAP$K_MIC_ATTRIBUTES+%O'27',
        DAP$K_MIC_ATTRIBUTES_BKS=DAP$K_MIC_ATTRIBUTES+%O'30',
        DAP$K_MIC_ATTRIBUTES_FSZ=DAP$K_MIC_ATTRIBUTES+%O'31',
        DAP$K_MIC_ATTRIBUTES_MRN=DAP$K_MIC_ATTRIBUTES+%O'32',
        DAP$K_MIC_ATTRIBUTES_RUNSYS=DAP$K_MIC_ATTRIBUTES+%O'33',
        DAP$K_MIC_ATTRIBUTES_DEQ=DAP$K_MIC_ATTRIBUTES+%O'34',
        DAP$K_MIC_ATTRIBUTES_FOP=DAP$K_MIC_ATTRIBUTES+%O'35',
        DAP$K_MIC_ATTRIBUTES_BSZ=DAP$K_MIC_ATTRIBUTES+%O'36',
        DAP$K_MIC_ATTRIBUTES_DEV=DAP$K_MIC_ATTRIBUTES+%O'37',
        DAP$K_MIC_ATTRIBUTES_SDC=DAP$K_MIC_ATTRIBUTES+%O'40',
        DAP$K_MIC_ATTRIBUTES_LRL=DAP$K_MIC_ATTRIBUTES+%O'41',
        DAP$K_MIC_ATTRIBUTES_HBK=DAP$K_MIC_ATTRIBUTES+%O'42',
        DAP$K_MIC_ATTRIBUTES_EBK=DAP$K_MIC_ATTRIBUTES+%O'43',
        DAP$K_MIC_ATTRIBUTES_FFB=DAP$K_MIC_ATTRIBUTES+%O'44',
        DAP$K_MIC_ATTRIBUTES_SBN=DAP$K_MIC_ATTRIBUTES+%O'45';

        ! Access message errors by field
LITERAL
        DAP$K_MIC_ACCESS_ACCFUNC=DAP$K_MIC_ACCESS+%O'20',
        DAP$K_MIC_ACCESS_ACCOPT=DAP$K_MIC_ACCESS+%O'21',
        DAP$K_MIC_ACCESS_FILESPEC=DAP$K_MIC_ACCESS+%O'22',
        DAP$K_MIC_ACCESS_FAC=DAP$K_MIC_ACCESS+%O'23',
        DAP$K_MIC_ACCESS_SHR=DAP$K_MIC_ACCESS+%O'24',
        DAP$K_MIC_ACCESS_DISPLAY=DAP$K_MIC_ACCESS+%O'25',
        DAP$K_MIC_ACCESS_PASSWORD=DAP$K_MIC_ACCESS+%O'26';

        ! Control message errors by field
LITERAL
        DAP$K_MIC_CONTROL_CTLFUNC=DAP$K_MIC_CONTROL+%O'20',
        DAP$K_MIC_CONTROL_CTLMENU=DAP$K_MIC_CONTROL+%O'21',
        DAP$K_MIC_CONTROL_RAC=DAP$K_MIC_ACCESS+%O'22',
        DAP$K_MIC_CONTROL_KEY=DAP$K_MIC_CONTROL+%O'23',
        DAP$K_MIC_CONTROL_KRF=DAP$K_MIC_CONTROL+%O'24',
        DAP$K_MIC_CONTROL_ROP=DAP$K_MIC_CONTROL+%O'25',
        DAP$K_MIC_CONTROL_HSH=DAP$K_MIC_CONTROL+%O'26',
        DAP$K_MIC_CONTROL_DISPLAY=DAP$K_MIC_CONTROL+%O'27';

        ! Continue message errors by field
LITERAL
        DAP$K_MIC_CONTINUE_CONTFUNC=DAP$K_MIC_CONTINUE+%O'20';

        ! Acknowledge message errors by field

        ! None

        ! Access complete message errors by field
LITERAL
        DAP$K_MIC_ACCOMP_CMPFUNC=DAP$K_MIC_ACCESS_COMPLETE+%O'20',
        DAP$K_MIC_ACCOMP_FOP=DAP$K_MIC_ACCESS_COMPLETE+%O'21',
        DAP$K_MIC_ACCOMP_CHECK=DAP$K_MIC_ACCESS_COMPLETE+%O'22';

        ! Data message errors by field
LITERAL
        DAP$K_MIC_DATA_RECNUM=DAP$K_MIC_DATA+%O'20',
        DAP$K_MIC_DATA_FILEDATA=DAP$K_MIC_DATA+%O'21';

        ! Status message errors by field
LITERAL
        DAP$K_MIC_STATUS_MACCODE=DAP$K_MIC_STATUS+%O'20',
        DAP$K_MIC_STATUS_MICCODE=DAP$K_MIC_STATUS+%O'21',
        DAP$K_MIC_STATUS_RFA=DAP$K_MIC_STATUS+%O'22',
        DAP$K_MIC_STATUS_RECNUM=DAP$K_MIC_STATUS+%O'23',
        DAP$K_MIC_STATUS_STV=DAP$K_MIC_STATUS+%O'24';

        ! Key Definition message errors by field
LITERAL
        DAP$K_MIC_KEY_KEYMENU=DAP$K_MIC_KEY+%O'20',
        DAP$K_MIC_KEY_FLG=DAP$K_MIC_KEY+%O'21',
        DAP$K_MIC_KEY_DFL=DAP$K_MIC_KEY+%O'22',
        DAP$K_MIC_KEY_IFL=DAP$K_MIC_KEY+%O'23',
        DAP$K_MIC_KEY_SEGCNT=DAP$K_MIC_KEY+%O'24',
        DAP$K_MIC_KEY_POS=DAP$K_MIC_KEY+%O'25',
        DAP$K_MIC_KEY_SIZ=DAP$K_MIC_KEY+%O'26',
        DAP$K_MIC_KEY_REF=DAP$K_MIC_KEY+%O'27',
        DAP$K_MIC_KEY_KNM=DAP$K_MIC_KEY+%O'30',
        DAP$K_MIC_KEY_NUL=DAP$K_MIC_KEY+%O'31',
        DAP$K_MIC_KEY_IAN=DAP$K_MIC_KEY+%O'32',
        DAP$K_MIC_KEY_LAN=DAP$K_MIC_KEY+%O'33',
        DAP$K_MIC_KEY_DAN=DAP$K_MIC_KEY+%O'34',
        DAP$K_MIC_KEY_DTP=DAP$K_MIC_KEY+%O'35',
        DAP$K_MIC_KEY_RVB=DAP$K_MIC_KEY+%O'36',
        DAP$K_MIC_KEY_HAL=DAP$K_MIC_KEY+%O'37',
        DAP$K_MIC_KEY_DVB=DAP$K_MIC_KEY+%O'40',
        DAP$K_MIC_KEY_DBS=DAP$K_MIC_KEY+%O'41',
        DAP$K_MIC_KEY_IBS=DAP$K_MIC_KEY+%O'42',
        DAP$K_MIC_KEY_LVL=DAP$K_MIC_KEY+%O'43',
        DAP$K_MIC_KEY_TKS=DAP$K_MIC_KEY+%O'44',
        DAP$K_MIC_KEY_MRL=DAP$K_MIC_KEY+%O'45';

        ! Allocation message errors by field
LITERAL
        DAP$K_MIC_ALLOCATION_ALLMENU=DAP$K_MIC_ALLOCATION+%O'20',
        DAP$K_MIC_ALLOCATION_VOL=DAP$K_MIC_ALLOCATION+%O'21',
        DAP$K_MIC_ALLOCATION_ALN=DAP$K_MIC_ALLOCATION+%O'22',
        DAP$K_MIC_ALLOCATION_AOP=DAP$K_MIC_ALLOCATION+%O'23',
        DAP$K_MIC_ALLOCATION_LOC=DAP$K_MIC_ALLOCATION+%O'24',
        DAP$K_MIC_ALLOCATION_RFI=DAP$K_MIC_ALLOCATION+%O'25',
        DAP$K_MIC_ALLOCATION_ALQ=DAP$K_MIC_ALLOCATION+%O'26',
        DAP$K_MIC_ALLOCATION_AID=DAP$K_MIC_ALLOCATION+%O'27',
        DAP$K_MIC_ALLOCATION_BKZ=DAP$K_MIC_ALLOCATION+%O'30',
        DAP$K_MIC_ALLOCATION_DEQ=DAP$K_MIC_ALLOCATION+%O'31';

        ! Summary message errors by field
LITERAL
        DAP$K_MIC_SUMMARY_SUMENU=DAP$K_MIC_SUMMARY+%O'20',
        DAP$K_MIC_SUMMARY_NOK=DAP$K_MIC_SUMMARY+%O'21',
        DAP$K_MIC_SUMMARY_NOA=DAP$K_MIC_SUMMARY+%O'22',
        DAP$K_MIC_SUMMARY_NOR=DAP$K_MIC_SUMMARY+%O'23',
        DAP$K_MIC_SUMMARY_PVN=DAP$K_MIC_SUMMARY+%O'24';

        ! Date/Time message errors by field
LITERAL
        DAP$K_MIC_DATE_TIME_DATMENU=DAP$K_MIC_DATE_TIME+%O'20',
        DAP$K_MIC_DATE_TIME_CDT=DAP$K_MIC_DATE_TIME+%O'21',
        DAP$K_MIC_DATE_TIME_RDT=DAP$K_MIC_DATE_TIME+%O'22',
        DAP$K_MIC_DATE_TIME_EDT=DAP$K_MIC_DATE_TIME+%O'23',
        DAP$K_MIC_DATE_TIME_RVN=DAP$K_MIC_DATE_TIME+%O'24';

        ! Protection message errors by field
LITERAL
        DAP$K_MIC_PROTECTION_PROTMENU=DAP$K_MIC_PROTECTION+%O'20',
        DAP$K_MIC_PROTECTION_OWNER=DAP$K_MIC_PROTECTION+%O'21',
        DAP$K_MIC_PROTECTION_PROTSYS=DAP$K_MIC_PROTECTION+%O'22',
        DAP$K_MIC_PROTECTION_PROTOWN=DAP$K_MIC_PROTECTION+%O'23',
        DAP$K_MIC_PROTECTION_PROTGRP=DAP$K_MIC_PROTECTION+%O'24',
        DAP$K_MIC_PROTECTION_PROTWLD=DAP$K_MIC_PROTECTION+%O'25';
        
        ! Name message errors by field
LITERAL
        DAP$K_MIC_NAME_NAMETYPE=DAP$K_MIC_NAME+%O'20',
        DAP$K_MIC_NAME_NAMESPEC=DAP$K_MIC_NAME+%O'21';

        ! ACL message errors by field
LITERAL
        DAP$K_MIC_ACL_ACLCNT=DAP$K_MIC_ACL+%O'20',
        DAP$K_MIC_ACL_ACL=DAP$K_MIC_ACL+%O'21';
!
!	MICCODE VALUES FOR MACCODE=4,5,6,7   THESE ARE OPEN ERRORS
!
LITERAL
	DAP$K_ERR_ABO=1,		! OPERATION ABORTED
	DAP$K_ERR_ACC=2,		! COULD NOT ACCESS FILE
	DAP$K_ERR_ACT=3,		! FILE ACTIVITY PRECLUDES OP
	DAP$K_ERR_AID=4,		! BAD AREA ID
	DAP$K_ERR_ALN=5,		! ALIGNMENT OPTIONS ERROR
	DAP$K_ERR_ALQ=6,		! ALLOCATION QUANTITY TOO LARGE
	DAP$K_ERR_ANI=7,		! NOT ANSI 'D' FORMAT
	DAP$K_ERR_AOP=8,		! ALLOC OPTION ERROR
	DAP$K_ERR_AST=9,		! INVALID OP AT AST LEVEL
	DAP$K_ERR_ATR=10,		! ATTRIBUTE READ ERR
	DAP$K_ERR_ATW=11,		! ATTRIBUTE WRITE ERROR
	DAP$K_ERR_BKS=12,		! BUCKET SIZE TOO LARGE
	DAP$K_ERR_BKZ=13,		! "
	DAP$K_ERR_BLN=14,		! BLN LENGTH ERROR
	DAP$K_ERR_BOF=15,		! BEGINNING OF FILE DETECTED
	DAP$K_ERR_BPA=16,		! PRIVATE POOL ADT NOT MULT OF 4
	DAP$K_ERR_BPS=17,		! PRIVATE POOL SIZE NOT MULT OF 4
	DAP$K_ERR_BUG=18,		! Internal RMS Error
	DAP$K_ERR_CCR=19,		! Can't connect RAB
	DAP$K_ERR_CHG=20,		! $UPDATE changed a key w/o XB$CHG
	DAP$K_ERR_CHK=21,		! Bucket format Check-byte error
	DAP$K_ERR_CLS=22,		! RSTS/E close function failed *
	DAP$K_ERR_COD=23,		! Invalid or unsupported COD field (STV=XAB)
	DAP$K_ERR_CRE=24,		! F11ACP could not create file *
	DAP$K_ERR_CUR=25,		! No current record (no GET/FIND)
	DAP$K_ERR_DAC=26,		! F11ACP deaccess error in CLOSE *
	DAP$K_ERR_DAN=27,		! Data "AREA" number invalid (STV=XAB)
	DAP$K_ERR_DEL=28,		! RFA-Accessed record was deleted
	DAP$K_ERR_DEV=29,		! Bad device or inappropriate device type
	DAP$K_ERR_DIR=30,		! Error in directory name
	DAP$K_ERR_DME=31,		! Dynamic memory exhausted
	DAP$K_ERR_DNF=32,		! Directory not found
	DAP$K_ERR_DNR=33,		! Device not ready
	DAP$K_ERR_DPE=34,		! Device has positioning error *
	DAP$K_ERR_DTP=35,		! "DTP" field invalid (STV=XAB)
	DAP$K_ERR_DUP=36,		! Duplicate key detected, XB$DUP not set
	DAP$K_ERR_ENT=37,		! RSX-F11ACP enter failed *
	DAP$K_ERR_ENV=38,		! Operation not selected in ORG$ macro
	DAP$K_ERR_EOF=39,		! end of file
	DAP$K_ERR_ESS=40,		! Expanded string area too short
	DAP$K_ERR_EXP=41,		! File hasn't expired yet
	DAP$K_ERR_EXT=42,		! Extend failure *
	DAP$K_ERR_FAB=43,		! Not valid FAB ("BID" not FB$BID)
	DAP$K_ERR_FAC=44,		! Illegal FAC for REC-OP 0 or no FB$PUB (create)
	DAP$K_ERR_FEX=45,		! File already exists
	DAP$K_ERR_FID=46,		! Invalid File-ID
	DAP$K_ERR_FLG=47,		! Invalid Flag-bits combination (STV=XAB)
	DAP$K_ERR_FLK=48,		! File is locked
	DAP$K_ERR_FND=49,		! RSX-F11ACP FIND function failed
	DAP$K_ERR_FNF=50,		! file not found
	DAP$K_ERR_FNM=51,		! Error in File name
	DAP$K_ERR_FOP=52,		! Invalid "FOP" Options
	DAP$K_ERR_FUL=53,		! Device or file full
	DAP$K_ERR_IAN=54,		! Index "AREA" number invalid #
	DAP$K_ERR_IFI=55,		! Invalid IFI value or unopened file
	DAP$K_ERR_IMX=56,		! Maximum number of areas/key XABs exceeded #
	DAP$K_ERR_INI=57,		! INIT$ never issued
	DAP$K_ERR_IOP=58,		! Operation illegal or invalid for file org
	DAP$K_ERR_IRC=59,		! Illegal record encountered in sequential file
	DAP$K_ERR_ISI=60,		! Invalid ISI value, on unconnected RAB
	DAP$K_ERR_KBF=61,		! Bad KEY buffer address
	DAP$K_ERR_KEY=62,		! Invalid key field
	DAP$K_ERR_KRF=63,		! Invalid key-of-reference
	DAP$K_ERR_KSZ=64,		! Key size too large
	DAP$K_ERR_LAN=65,		! Lowest-level-index "AREA" number invalid #
	DAP$K_ERR_LBL=66,		! Not ANSI labeled tape
	DAP$K_ERR_LBY=67,		! Logical channel busy
	DAP$K_ERR_LCH=68,		! Logical channel number too large
	DAP$K_ERR_LEX=69,		! Logical extend error, prior extend still valid #
	DAP$K_ERR_LOC=70,		! "LOC" field invalid #
	DAP$K_ERR_MAP=71,		! Buffer mapping error
	DAP$K_ERR_MKD=72,		! F11ACP could not mark file for deletion #
	DAP$K_ERR_MRN=73,		! MRN value negative or relative key>MRN
	DAP$K_ERR_MRS=74,		! MRS value=0 for fix len record or rel file
	DAP$K_ERR_NAM=75,		! "NAM" block address invalid
	DAP$K_ERR_NEF=76,		! Not positioned at EOF
	DAP$K_ERR_NID=77,		! Can't allocate internal file descriptor
	DAP$K_ERR_NPK=78,		! Indexed file--no primary key defined
	DAP$K_ERR_OPN=79,		! RSTS/E OPEN failure *
	DAP$K_ERR_ORD=80,		! XAB's not in correct order #
	DAP$K_ERR_ORG=81,		! Invalid file organization value
	DAP$K_ERR_PLG=82,		! Error in file's prologue (reconstruct file)
	DAP$K_ERR_POS=83,		! "POS" field invalid (>MRS) #
	DAP$K_ERR_PRM=84,		! Bad file date field retrived #
	DAP$K_ERR_PRV=85,		! Protection violation
	DAP$K_ERR_RAB=86,		! Not a valid RAB ("BID" not = RB$BID)
	DAP$K_ERR_RAC=87,		! Illegal RAC value
	DAP$K_ERR_RAT=88,		! Illegal record attributes
	DAP$K_ERR_RBF=89,		! Invalid record buffer addr
	DAP$K_ERR_RER=90,		! File Read Error *
	DAP$K_ERR_REX=91,		! Record already exists
	DAP$K_ERR_RFA=92,		! Bad RFA value (RFA=0)
	DAP$K_ERR_RFM=93,		! Invalid record format
	DAP$K_ERR_RLK=94,		! Target bucket locked by another stream
	DAP$K_ERR_RMV=95,		! RSX-F11ACP REMOVE function failed *
	DAP$K_ERR_RNF=96,		! Record not found (STV=0)
	DAP$K_ERR_RNL=97,		! Record not locked
	DAP$K_ERR_ROP=98,		! Invalid record options
	DAP$K_ERR_RPL=99,		! Error while reading prologue *
	DAP$K_ERR_RRV=100,		! Invalid RRV record encountered
	DAP$K_ERR_RSA=101,		! RAB stream currently active
	DAP$K_ERR_RSZ=102,		! Bad record size (>MRS or <>MRS for fixed len)
	DAP$K_ERR_RTB=103,		! Record too big for user buffer (STV=actual size)
	DAP$K_ERR_SEQ=104,		! Primary key out of sequence
	DAP$K_ERR_SHR=105,		! }"SHR" field invalid (can't share sequential)
	DAP$K_ERR_SIZ=106,		! "SIZ" field invalid #
	DAP$K_ERR_STK=107,		! Stack too big for save area
	DAP$K_ERR_SYS=108,		! System directive error *
	DAP$K_ERR_TRE=109,		! Index tree error
	DAP$K_ERR_TYP=110,		! Error in file type, extension on FNS too big
	DAP$K_ERR_UBF=111,		! Invalid user buffer address
	DAP$K_ERR_USZ=112,		! Invalid user buffer size
	DAP$K_ERR_VER=113,		! Error in version number
	DAP$K_ERR_VOL=114,		! Invalid volume number
	DAP$K_ERR_WER=115,		! File write error *
	DAP$K_ERR_WLK=116,		! Device is write-locked
	DAP$K_ERR_WPL=117,		! Error while writing prologue
	DAP$K_ERR_XAB=118,		! Invalid XAB
	DAP$K_ERR_BUGDDI=119,		! Default directory invalid
	DAP$K_ERR_CCA=120,		! Can't access argument list
	DAP$K_ERR_CCF=121,		! Can't close file *
	DAP$K_ERR_CDA=122,		! Can't deliver AST
	DAP$K_ERR_CHN=123,		! Channel assignment failure *
	DAP$K_ERR_CNTRLO=124,		! Terminal output ignored due to ^O
	DAP$K_ERR_CNTRLY=125,		! Terminal input aborted due to ^Y
	DAP$K_ERR_DNA=126,		! Default filename string address error
	DAP$K_ERR_DVI=127,		! Invalid device ID field
	DAP$K_ERR_ESA=128,		! Expanded string address error
	DAP$K_ERR_FNA=129,		! Filename string address error
	DAP$K_ERR_FSZ=130,		! FSZ field invalid
	DAP$K_ERR_IAL=131,		! Invalid argument list
	DAP$K_ERR_KFF=132,		! Known file found
	DAP$K_ERR_LNE=133,		! Logical name error
	DAP$K_ERR_NOD=134,		! Node name error
	DAP$K_ERR_NORMAL=135,		! Operation successful
	DAP$K_ERR_OK_DUP=136,		! Record inserted had duplicate key
	DAP$K_ERR_OK_IDX=137,		! Index update occurred, record inserted
	DAP$K_ERR_OK_RLK=138,		! Record locked, but read anyway
	DAP$K_ERR_OK_RRV=139,		! Record inserted in primary, maybe not secondary or RFA
	DAP$K_ERR_OPENED=140,		! Existing file opened
	DAP$K_ERR_PBF=141,		! Bad prompt buffer address
	DAP$K_ERR_PNDING=142,		! Asyncronous operation pending
	DAP$K_ERR_QUO=143,		! Quoted string error
	DAP$K_ERR_RHB=144,		! Record header buffer invalid
	DAP$K_ERR_RLF=145,		! Invalid related file
	DAP$K_ERR_RSS=146,		! Invalid resultant string size
	DAP$K_ERR_RST=147,		! Invalid resultant string address
	DAP$K_ERR_SQO=148,		! Operation not sequential
	DAP$K_ERR_SUC=149,		! Operation successful
	DAP$K_ERR_SPRSED=150,		! Superceding existing file
	DAP$K_ERR_SYN=151,		! Filename syntax error
	DAP$K_ERR_TMO=152,		! Timeout period expired
	DAP$K_ERR_BLK=153,		! FB$BLK record attribute not supported
	DAP$K_ERR_BSZ=154,		! Bad byte size
	DAP$K_ERR_CDR=155,		! Can't disconnect RAB
	DAP$K_ERR_CGJ=156,		! Can't get JFN for file
	DAP$K_ERR_COF=157,		! Can't open file
	DAP$K_ERR_JFN=158,		! Bad JFN value
	DAP$K_ERR_PEF=159,		! Can't position to EOF
	DAP$K_ERR_TRU=160,		! Can't truncate file
	DAP$K_ERR_UDF=161,		! File is in an undefined state, access denied
	DAP$K_ERR_XCL=162,		! File must be opened for exclusive access
	DAP$K_ERR_DFL=163,		! Directory full
	DAP$K_ERR_RDD=183,		! Rename-- 2 different devices
	DAP$K_ERR_RFE=184,		! Rename-- file already exists
	DAP$K_ERR_ALC=193,		! File exceeds allocated space
	DAP$K_ERR_NLN=196,		! No file accessed on LUN
	DAP$K_ERR_NMF=199,		! No more files
	DAP$K_ERR_DCK=200,		!DAP checksum error
	DAP$K_ERR_QEX=201;		!Quota Exceeded



!
!NAME message:
!

!NAME MESSAGE TYPE BITS

LITERAL
	DAP$K_NAMETYPE_FSP=0,		! File specification
	DAP$K_NAMETYPE_NAM=1,		! File name only
	DAP$K_NAMETYPE_DIR=2,		! Directory name only
	DAP$K_NAMETYPE_STR=3,		! Volume or structure name
	DAP$K_NAMETYPE_DEF=4,		! Default file specifation
	DAP$K_NAMETYPE_REL=5;		! Related file specifation


LITERAL                                 ! Trace function codes
        DAP$K_TRACE_INPUT=1,
        DAP$K_TRACE_OUTPUT=2,
        DAP$K_TRACE_INPUT_INTERRUPT=5,
        DAP$K_TRACE_OUTPUT_INTERRUPT=6;

!
! Error Codes Defined
!

LITERAL DAP$K_FACILITY_CODE=%O'30000000';

COMPILETIME DAP$K_ERRTAB_LENGTH=0;

MACRO ERR_DS(MAC,MIC)=((MAC+MIC)^3+DAP$K_FACILITY_CODE+STS$K_ERROR) %;

MACRO $DAP$ERROR[CODE,VALUE,SEVERITY,TEXT]=
                %ASSIGN(DAP$K_ERRTAB_LENGTH,%COUNT+1)
                CODE=(VALUE^3)+DAP$K_FACILITY_CODE+%NAME(STS$K_,SEVERITY) %;

MACRO $DAP$ERRORS=$DAP$ERROR(

DAP$_DEV,   %O'040035',   ERROR,     'Structure not mounted, or bad device',
DAP$_DIR,   %O'040036',   ERROR,     'Error in directory name',
DAP$_DNF,   %O'040040',   ERROR,     'Directory not found',
DAP$_DNR,   %O'040041',   ERROR,     'Device not ready',
DAP$_FEX,   %O'040055',   ERROR,     'File already exists',
DAP$_FLK,   %O'040060',   ERROR,     'File locked by another user',
DAP$_FNF,   %O'040062',   ERROR,     'File not Found',
DAP$_FNM,   %O'040063',   ERROR,     'Error in File Name',
DAP$_FOP,   %O'040064',   ERROR,     'Error in File Options',
DAP$_FUL,   %O'040065',   ERROR,     'Device/File Full',
DAP$_MRS,   %O'040112',   ERROR,     'MRS=0 for fixed or relative file',
DAP$_PRV,   %O'040125',   ERROR,     'Protection violation',
DAP$_RAT,   %O'040130',   ERROR,     'Illegal record attributes',
DAP$_RFM,   %O'040135',   ERROR,     'Illegal Record Format',
DAP$_SHR,   %O'040151',   ERROR,     'Invalid SHR field',
DAP$_TYP,   %O'040156',   ERROR,     'Error in file type',
DAP$_GES,   %O'040161',   ERROR,     'Version must be explicit or *',
DAP$_WLK,   %O'040164',   ERROR,     'Device is write-locked',
DAP$_SYN,   %O'040227',   ERROR,     'Filename syntax error',
DAP$_CGJ,   %O'040234',   ERROR,     'Can''t get JFN',
DAP$_COF,   %O'040235',   ERROR,     'Can''t open file',
DAP$_DFL,   %O'040243',   ERROR,     'Directory full',
DAP$_RTD,   %O'040267',   ERROR,     'Rename: two different devices',
DAP$_RFX,   %O'040270',   ERROR,     'Rename: new file name already in use',
DAP$_NMF,   %O'040307',   WARNING,   'No more files',

DAP$_CRC,   %O'070310',   ERROR,     'DAP file transfer CRC error',

DAP$_TFL,   %O'050065',   ERROR,     'Device or File Full',
DAP$_EOF,   %O'050047',   ERROR,     'End of File',
DAP$_RER,   %O'050132',   ERROR,     'File Read Error',
DAP$_RLK,   %O'050136',   ERROR,     'Target bucket locked by another stream',
DAP$_RNF,   %O'050140',   ERROR,     'Record not found',
DAP$_ROP,   %O'050142',   ERROR,     'Invalid record options',
DAP$_RSZ,   %O'050146',   ERROR,     'Invalid record size',
DAP$_RTB,   %O'050147',   ERROR,     'Record too big for user''s buffer',
DAP$_WER,   %O'050163',   ERROR,     'File Write Error',
DAP$_QEX,   %O'050311',   ERROR,     'Disk quota exceeded',
DAP$_LAE,   %O'050347',   ERROR,     'Error reading file attributes',
DAP$_LNP,   %O'050350',   ERROR,     'Protection failure reading file name',
DAP$_LAP,   %O'050351',   ERROR,     'Protection failure reading file attributes',

DAP$_AOR,   %O'770100',   FATAL,     'Argument out of range',
DAP$_FTL,   %O'770010',   ERROR,     'Field Too Long',
DAP$_SYNC,  %O'120000',   ERROR,     'Remote system sent message out of sync'
) %;

LITERAL $DAP$ERRORS;