DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Hard and Floppy Disks

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Hard and Floppy Disks

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦beb5d37a0⟧ TextFile

    Length: 21622 (0x5476)
    Types: TextFile
    Names: »CTERM.DECL.S«

Derivation

└─⟦c174207bd⟧ Bits:30005194 8" CR80 Floppy CR80FD_0192 ( VOL: FLOPPY )
    └─⟦194c604ac⟧ 
        └─ ⟦this⟧ »CTERM.0001.D!CTERM.DECL.S« 

TextFile

"PAGE «ff»
"DECLARATION CONCERNING MTCB
"---------------------------

TYPE MTCB_WORK_SPACE_TYPE = ARRAY[0..7] OF INTEGER;

TYPE REAL_MTCB_TYPE =
  RECORD
    TAGFIELD:        INTEGER;
    APREC:           INTEGER;
    IPREC:           INTEGER;
    CLASS:           INTEGER;
    SPEC:            INTEGER;
    MTYPE:           INTEGER;
    LENGTH:          INTEGER;       "NOTE: CORRESPOND TO WORD4 IN PSEUDO_MTCB_TYPE
    HDB_ADDRESS:     LONG;
    WORD4:           INTEGER;
    WORD5:           INTEGER;
    WORD6:           INTEGER;
    WORD7:           INTEGER;
  END;

TYPE PSEUDO_MTCB_TYPE =
  RECORD
    TAGFIELD:        INTEGER;
    CATEGORY:        INTEGER;
    SUBCAT:          INTEGER;
    BYTE1:           INTEGER;
    WORD2:           INTEGER;
    WORD3:           INTEGER;
    WORD4:           INTEGER;       "NOTE: CORRESPOND TO LENGTH IN REAL_MTCB_TYPE
    WORD5:           INTEGER;
    WORD6:           INTEGER;
    WORD7:           INTEGER;
  END;

CONST
  RETRIEVE_DTG_REF         = ADDRESS(0@REAL_MTCB_TYPE.WORD6);   "ORDINARY MESSAGE
  DT_MSG_ID_REF            = ADDRESS(0@PSEUDO_MTCB_TYPE.WORD3); "AT DT-TRANSFER

  MTCB_BUFFER_SIZE         = MAX(SIZE(REAL_MTCB_TYPE),SIZE(PSEUDO_MTCB_TYPE));
"PAGE «ff»
CONST

MTCB                       = 107;

"MTCB FUNCTIONS                           MTCB COMPLITION CODE
"--------------                           --------------------
INITMTCB                   = 0;           PCBI_OUT_OF_RANGE      = #0901;
CREATEMTCB                 = 1;           NOT_INITED             = #0902;
RESERVEMTCB                = 2;           MTCBI_OUT_OFRANGE      = #0903;
RELEASEMTCB                = 3;           MTCB_NOT_IN_USE        = #0904;
WRITEMTCB                  = 4;           ALL_SAVE_AREAS_USED    = #0905;
READMTCB                   = 5;           SUBSYSNO_OUT_OF_RANGE  = #0906;
CREATEMTCBFILE             = 6;           NO_MTCB_AVAILABLE      = #0907;
GETMTCBFILE                = 7;           ILLEGAL_UPDATE_CODE    = #0908;
RELEASEMTCBFILE            = 8;           USE_COUNT_GT1          = #0909;
                                          FILE_ALREADY_EXISTS    = #090A;
                                          NO_IMF_SPACE_AVAILABLE = #090B;
                                          NO_PDB_FILE_AVAILABLE  = #090C;
                                          NO_FILE_REF            = #090D;
                                          NO_FILE_IN_USE         = #090E;

"MTCB  WAITOPTIONS                        MTCB_TYPES
"----------------                         ----------
NO_WAIT_NORMAL_MTCB        = 0;           TYPE_PSEUDO_MTCB       = 0;
WAIT_NORMAL_MTCB           = 1;           TYPE_REAL_MTCB         = 1;
NO_WAIT_PRIVILEGED_MTCB    = 2;
WAIT_PRIVILEGED_MTCB       = 3;

"MTCB FILE TYPES                          MESSAGE TYPES (IN MTYPE)
"---------------                          ------------------------
IMF_FILE                   = 1;           NARRATIVE_MESSAGE    = 0;
PDB_FILE                   = 2;           MEDE_CONTROL_MESSAGE = 1;
HDB_FILE                   = 3;           NODE_CONTROL_MESSAGE = 3;

"PAGE «ff»
"DECLARATION CONSERNING QACCESS
"-------------------------------

QACCESS                    = 108;

TYPE QIOCB_TYPE =
  RECORD
    W1:                INTEGER;
    W2:                INTEGER;
    W3:                INTEGER;
    W4:                INTEGER;
    W5:                INTEGER;
    S0_7:              ARRAY[0..7] OF INTEGER;
  END;

CONST

"FUNNTIONS                                COMPLITION CODES
"---------                                ----------------
INITIALIZE_QACCESS             = 0;       OK                       = #0800;
SET_THRESHOLD                  = 1;       OPERATION_FAILED         = #0801;
LENGTH_OF_QUEUE                = 2;       ILLEGAL_INPUT_PARAM      = #0802;
LENGTH_OF_GROUP                = 3;       QUEUE_EMPTY              = #0803;
READ_NON_DESTRUCTIVE           = 4;       FIRST_ENTRY_NOT_ACTIVE   = #0804;
READ_DESTRUCTIVE               = 5;       QUEUE_OVERFLOW           = #0805;
READ_GROUP_ELEMENT             = 6;       FIRST_ENTRY_PENDING_READ = #0806;
DELETE_ELEMENT                 = 7;
WRITE_ELEMENT                  = 8;
REORGANIZE_QUEUE               = 9;
APPEND_QUEUE                   = 10;
RELEASE_ACTIVE_FLAG            = 11;

"PAGE «ff»
"QUEUE DESTINATION          SIMPLE FLAG READ                 ENTRY FUNCTIONS
"-----------------          ----------------                 ---------------
LAST_ENTRY            = 0;  SET_FIRST_ENTRY_ACTIVE  = 0;     NO_WAIT_NORMAL_QACCESS     = 0;
FIRST_ENTRY           = 1;  NO_ACTIVATION           = 1;     WAIT_NORMAL_QACCESS        = 1;
                                                             NO_WAIT_PRIVILEGED_QACCESS = 3;
                                                             WAIT_PRIVILEGED_QACCESS    = 4;


DT_TERM_NO                     = 0;      "SUPERVISOR DT TERMINAL NUMBER
DT_QUEUE_NO                    = 0;      "SUPERVISOR DT TERMINAL-QUEUE NUMBER
%WHEN CCIS_VERSION = TRUE SKIP
MDS_TERM_NO                    = 31;     "MDS TERMINAL NUMBER
%COMPILE
%WHEN CCIS_VERSION = FALSE SKIP
MDS_TERM_NO                    = 38;     "USED AS INPUT-Q TO CPIPX
%COMPILE

"PAGE «ff»

"DECLARATION CONCERNING RDF-MONITOR USE
"--------------------------------------

CONST
  RDF                = 109;

  GET_ANO_AIG        = 1;
  GET_AIG_EXIST      = 4;
  GET_ANO_TERM       = 3;

TYPE

  GET_ANO_AIG_SAVE = RECORD
                       FA:  FILE_ADDRESS;
                       BLE: BUFFER_LIST_ELEMENT;
                       S:   REGISTERS;
                     END;

  GET_ANO_AIG_WORK = RECORD
                        AIG: INTEGER;
                        ENTRY_LENGTH: INTEGER;
                        A,B,E,F,H,K,L,N: ARRAY[0..6] OF INTEGER;
                        T,U,V,W,X: ARRAY[0..15] OF INTEGER;
                     END;

  GET_ANO_TERM_WORK = RECORD
                         ANO: INTEGER;
                         TERM_NO: INTEGER;
                         S: REGISTERS;
                      END;

  GET_AIG_EXIST_WORK = RECORD
                          S: REGISTERS;
                       END;

"PAGE «ff»

CONST

  RDF_WORK_AREA_SIZE      = MAX(SIZE(GET_ANO_AIG_SAVE),
                                SIZE(GET_ANO_TERM_WORK),
                                SIZE(GET_AIG_EXIST_WORK));

TYPE

  ANO_CODE_TYPE           = (TO_ADDRESS,
                             INFO_ADDRESS,
                             NEG_TO_ADDRESS,
                             NEG_INFO_ADDRESS,
                             TO_AIG_ADDRESS,
                             XMT_AIG_ADDRESS,
                             FM_ADDRESS,
                             SPARE_ANO_TYPE);


CONST

  "MONITOR PROCEDURES
  "------------------
  GETDTG       = 111;
  CONVDTG      = 112;
  LOG_JOURNAL  = 114;
  TESTHDB      = 113;
  SENDREPORT   = 115;
  LCFH         = 121;

"PAGE «ff»

"DECLARATION CONCERNING DTG
"--------------------------

CONST
  DTG_WORK_LENGTH          = 60;         "LENGTH OF DTG_WORK_AREA
  DTG_EDIT_LENGTH          = 72;         "LENGTH OF DTG_EDIT_AREA

TYPE
  DTG_WORK_AREA_TYPE       = ARRAY[0..DTG_WORK_LENGTH-1]       OF CHAR;
  DTG_EDIT_AREA_TYPE       = ARRAY[0..DTG_EDIT_LENGTH-1]       OF CHAR;

"REFERENCES IN DTG_WORK
"----------------------

CONST
  CONVERSION_FLAG_REF       = 0;
  DTG_ASCII_REF             = 2;           "BYTE OFFSET
  DTG_INTEGER_REF           = 8;           "WORD OFFSET
  DTG_ASCII_LENGTH          = 14;          "BYTE LENGTH

CONST
  LOC_RELEASE_DTG           = 24;          "BYTE OFFSET
  LOC_RETRIE_DTG            = 57;          "BYTE OFFSET


  "SENDREPORT DECLARATIONS
  "-----------------------
TYPE
  SENDREPORT_WORK_AREA_TYPE  = ARRAY[0..20] OF INTEGER;

CONST
  REF_TYPE                  = 0;

"PAGE «ff»

"DECLARATION CONCERNING MESSAGE_JOURNAL
"--------------------------------------

CONST
  LOG_JOURNAL_WORK_LENGTH        = 13 + 8;      "LENGTH OF LOG_JOURNAL_WORK_AREA
TYPE
  LOG_JOURNAL_WORK_AREA_TYPE     = ARRAY[0..LOG_JOURNAL_WORK_LENGTH-1]  OF INTEGER;

"DECLARATIONS CONCERNING TERMINAL CONTROL BLOCKS
"-----------------------------------------------
CONST
  TCB_LENGTH             = 16;               "IN BYTES

TYPE
  TCB_TYPE               = ARRAY[0..TCB_LENGTH-1] OF CHAR;

CONST
  U_TID_OFFSET           = 0;
  V_USID_OFFSET          = 4;                "BYTE OFFSET
  K_USC_OFFSET           = 13;               "BYTE OFFSET
  U_ANO_OFFSET           = 7;                "WORD OFFSET

"PAGE «ff»
"DECLARATION CONCERNING BINARY_HEADER (NARRATIVE MESSAGE)
"--------------------------------------------------------
CONST
  BINARY_HEADER_LENGTH           = 26;          "LENGTH IN BYTES
  REF_MESSAGE_LENGTH             = 4;           "WORD ADDRESS IN BINARY_HEADER
  REF_ADDRESS_LIST_OFFSET        = 6;           "WORD ADDRESS IN BINARY_HEADER
  REF_SIGNAL_HEADER_LENGTH       = 8;           "WORD ADDRESS IN BINARY_HEADER
  REF_ACCEPT_DTG                 = 9;           "WORD ADDRESS IN BINARY_HEADER
  REF_MSG_ID_OFFSET              = 11;          "WORD ADDRESS IN BINARY_HEADER
  REF_SIC_REFERENCE              = 12;          "WORD ADDRESS IN BINARY_HEADER
  REF_ACTION_PREC                = 2;           "BYTE OFFSET IN BINARY HEADER
  REF_INFO_PREC                  = 14;          "BYTE OFFSET IN BINARY HEADER
  REF_CLASSIFICATION             = 11;          "BYTE OFFSET IN BINARY HEADER
  REF_SPEC_CODE                  = 10;          "BYTE OFFSET IN BINARY HEADER

"OFFSETS/REFFERENCES IN CONTROL MESSAGES
"---------------------------------------
  OFFSET_MAINTYPE                = 3;           "BYTE OFFSET IN MESSAGE
  OFFSET_PRECEDENCE              = 2;           "BYTE OFFSET IN MESSAGE
  OFFSET_MESSAGE_LENGTH          = 4;           "WORD OFFSET IN MESSAGE
  OFFSET_CATEGORY                = 11;          "BYTE OFFSET IN MESSAGE
  OFFSET_TYPE                    = 10;          "BYTE OFFSET IN MESSAGE
  OFFSET_ORIGINATOR              = 12;          "BYTE OFFSET IN MESSAGE
  OFFSET_ACK_CHANNEL_NO          = 38;          "BYTE OFFSET IN MESSAGE
  OFFSET_NACK_CHANNEL_NO         = 39;          "BYTE OFFSET IN MESSAGE


  "CONTROL MESSAGE TYPES (SUBCATEGORY)
  "-----------------------------------
  MESSAGE_ACK            = 1;
  MESSAGE_NACK           = 2;
  OPEN_LINK_REQUEST      = 3;
  OPEN_LINK_AGREEMENT    = 4;
  OPEN_LINK_REJECTION    = 5;
  CLOSE_LINK             = 6;
  KEEP_ALIVE             = 7;

  CCIS_CATEGORY          = 16;

"PAGE «ff»
  "CCIS LINK STATUS (IN CONFIG.CONSTANT_BLOCK.CCIS_STATUS)
  "------------------------------------------------------
  CCIS_LINK_NOT_EXIST    = 0;
  CCIS_LINK_CLOSED       = 1;
  CCIS_LINK_OPEN         = 2;
  CCIS_LINK_FAILED       = 3;

  "CHANNEL DECLARARTIONS
  "---------------------
TYPE
  CHANNELS =
  (CONTROL_CHANNEL,                       "(= 0)
   NARRATIVE_CHANNEL,                     "(= 1)
   NO_OF_CHANNELS);                       "(= 2)

  CHANNELS_ARRAY                 = ARRAY[0..NO_OF_CHANNELS-1] OF INTEGER;

  "DEFINITION OF BITS IN STATUS-WORD
  "---------------------------------
CONST
  CONTROL_CHANNEL_ACTIVE         = CONTROL_CHANNEL;     "(=0)
  NARRATIVE_CHANNEL_ACTIVE       = NARRATIVE_CHANNEL;   "(=1)

  OUTSTANDING_OPEN_REQUEST       = 8;

  OPEN_LINK_TIMEOUT              = 10*60*10;            "10 MINUTES

  MAX_FILE_LENGTH                = 9000;                "MAX. LENGTH OF NARRATIVE MESSAGE
"PAGE «ff»
TYPE

  INTEGERS          = ARRAY[0..#FF] OF INTEGER;
  LONGSE            = RECORD LONGS:ARRAY[0..#FFF] OF LONG; END;
  LONGSO            = RECORD ODDOFFSET:INTEGER; LONGS:ARRAY[0..#FFF] OF LONG; END;

TYPE STATIC_RECORD_TYPE =
  RECORD
    NO_OF_MESSAGES:   INTEGER;
    NO_OF_ANOS:       INTEGER;
    NO_OF_BYTES:      LONG;
  END;

CONST

  MAX_WORK_AREA_SIZE  = MAX(SIZE(MTCB_WORK_SPACE_TYPE),
                            SIZE(DTG_WORK_AREA_TYPE),
                            SIZE(SENDREPORT_WORK_AREA_TYPE),
                            SIZE(LOG_JOURNAL_WORK_AREA_TYPE),
                            RDF_WORK_AREA_SIZE);

"PAGE «ff»
CONST

"  LABEL USED IN CTERM-PROCESS                  RAISED BY (CALL OF)                    WANTED ACTION           BY CODE
"  ---------------------------                  -------------------                    -------------           -------

  GETROOT_MOVHEAD_ERROR             = 101;  "   MON(IO,GETROOT)                        ?/SWITCHOVER            ALL
  GETROOT_FIXHEAD_ERROR             = 102;  "   MON(IO,GETROOT)                        ?/SWITCHOVER            ALL
  LOOKUP_RDF_ERROR                  = 103;  "   MON(IO,LOOKUP) OF RDF-FILE             ?/SWITCHOVER            ALL

  INITMTCB_ERROR                    = 300;  "   MON(MTCB,INIT)                         ?/SWITCHOVER            ALL
  CREATEMTCB_ERROR                  = 301;  "   MON(MTCB,CREATE)                       WAIT 30 S, TRY AGAIN    LOCAL_FIX_UP
                                            "                                          ?/SWITCHOVER            OTHERS
  RESERVEMTCB_ERROR                 = 302;  "   MON(MTCB,RESERVE)                      ?/SWITCHOVER            ALL
  RELEASEMTCB_ERROR                 = 303;  "   MON(MTCB,RELEASE)                      ?/SWITCHOVER            ALL
  WRITEMTCB_ERROR                   = 304;  "   MON(MTCB,WRITE)                        ?/SWITCHOVER            ALL
  READMTCB_ERROR                    = 305;  "   MON(MTCB,READ)                         ?/SWITCHOVER            ALL
  CREATEMTCBFILE_ERROR              = 306;  "   MON(MTCB,CREATEMTCBFILE)               WAIT 30 S, TRY AGAIN    LOCAL_FIX_UP
                                            "                                          ?/SWITCHOVER            OTHERS
  GETMTCBFILE_ERROR                 = 307;  "   MON(MTCB,GETMTCBFILE)                  ?/SWITCHOVER            ALL
  RELEASEMTCBFILE_ERROR             = 308;  "   MON(MTCB,RELEASEFILE)                  ?/SWITCHOVER            ALL

  ENQUEUE_TO_MDS_ERROR              = 401;  "   MON(QACCESS,WRITE_ELEMENT)             WAIT 30 S, TRY AGAIN    LOCAL_FIX_UP
                                            "                                          ?/SWITCHOVER            OTHERS

  GET_START_RESTART_FLAG_ERROR      = 501;  "   MON(REGION,RCOPYN) FROM CONFIG         ?/SWITCHOVER            ALL
  GET_TERM_NO_CCIS_ERROR            = 502;  "   MON(REGION,RCOPYN) FROM CONFIG         ?/SWITCHOVER            ALL
  GET_STATUS_CCIS_ERROR             = 503;  "   MON(REGION,RCOPYN) FROM CONFIG         ?/SWITCHOVER            ALL
  GET_TCB_CCIS_ERROR                = 504;   "  MON(REGION,RCOPYN) FROM XTCBCR         ?/SWITCHOVER            ALL
  ENTER_CONFIG_ERROR                = 511;   "  MON(REGION,ENTER) OF CONFIG            ?/SWITCHOVER            ALL
  UPDATE_CONFIG_ERROR               = 512;   "  MON(REGION,RPUT) IN CONFIG             ?/SWITCHOVER            ALL
  LEAVE_CONFIG_ERROR                = 513;   "  MON(REGION,LEAVE) OF CONFIG            ?/SWITCHOVER            ALL
  ENTER_STATIC_ERROR                = 521;   "  MON(REGION,ENTER) OF STATIC            ?/SWITCHOVER            ALL
  READ_STATIC_ERROR                 = 522;   "  MON(REGION,RGETN) FROM STATIC          ?/SWITCHOVER            ALL
  UPDATE_STATIC_ERROR               = 523;   "  MON(REGION,RPUTN) IN STATIC            ?/SWITCHOVER            ALL
  LEAVE_STATIC_ERROR                = 524;   "  MON(REGION,LEAVE) OF STATIC            ?/SWITCHOVER            ALL

"PAGE «ff»
"  LABEL USED IN CTERM-PROCESS                  RAISED BY (CALL OF)                    WANTED ACTION           BY CODE
"  ---------------------------                  -------------------                    -------------           -------

  READ_MESSAGE_ERROR                = 601;  "   MON(IO,READBYTES)                      ?/SWITCHOVER            ALL
  WRITE_MESSAGE_ERROR               = 602;  "   MON(IO,MODIFYBYTES)                    ?/SWITCHOVER            ALL
  INSERT_ACCEPT_DTG_ERROR           = 603;  "   MON(IO,MODIFYBYTES)                    ?/SWITCHOVER            ALL
  GETFILEINFORMATION_ERROR          = 604;  "   MON(IO,GETFILEINFORMATION)             ?/SWITCHOVER

  DTG_CONVERSION_ERROR              = 701;  "   MON(CONVDTG)                           ?/SWITCHOVER            ALL
  LOG_JOURNAL_ERROR                 = 702;  "   MON(LOG_JOURNAL)                       ?/SWITCHOVER            ALL
  SENDREPORT_ERROR                  = 703;  "   MON(SENDREPORT)                        ?/SWITCHOVER            ALL

  CHECKPOINT_ERROR                  = 801;  "  AT CHECKPOINTING                        ?/SWITCHOVER           #FFFF

  GET_AIG_ERROR                     = 901;  "  MON(RDF,GET_ANO_AIG)                    ?/SWITCHOVER            ALL

"PAGE «ff»
"  LABELS USED IN CONNECTION WITH DETECTION OF ERRORS IN MESSAGE PROCESSING

   ILLEGAL_CATEGORY                 = #8001;      "OF CONTROL MESSAGE
   UNKNOWN_CONTROL_MESSAGE          = #8002;
   ILLEGAL_ACK_NACK                 = #8003;

   ILLEGAL_FILE_LENGTH              = #9001;
   ILLEGAL_MESSAGE_LENGTH           = #9002;
   ILLEGAL_ANO_LIST_OFFSET          = #9003;
   ILLEGAL_SIC_OFFSET               = #9004;
   ILLEGAL_REF_SIGNAL_HEADER        = #9005;
   ILLEGAL_REF_MSGID                = #9006;
   ILLEGAL_ACTION_PREC              = #9007;
   ILLEGAL_INFO_PREC                = #9008;
   ILLEGAL_SIC_CODE                 = #9009;
   ILLEGAL_CLASSIFICATION           = #9010;

"PAGE «ff»
VAR

  STATUS:                    INTEGER;
  STATUS_CCIS:               INTEGER;
  TERM_NO_CCIS:              INTEGER;

  MES_BUF:                   MESSAGE_BUFFER;

  QIOCB:                     QIOCB_TYPE;

  MTCBID:                    INTEGER;

  MSG_ID:                    ARRAY[0..5] OF CHAR;  "STORAGE OF MESSAGE ID

  FILEID_MOVHEAD:            INTEGER;
  FILEID_FIXHEAD:            INTEGER;
  FILEID:                    INTEGER;

  RDF_FILE_ID:               INTEGER;

  FILEADDR:                  FILE_ADDRESS;

  BLE_BUFFER:                BUFFER_LIST_ELEMENT;  "MISCELLANEOUS USE

  FILEADDR_DTG:              FILE_ADDRESS;
  BLE_DTG:                   BUFFER_LIST_ELEMENT;

"PAGE «ff»
  CPIP_NAME:                 PROCESS_NAME;
  CTERM_NAME:                PROCESS_NAME;
  CHECKP_NAME:               PROCESS_NAME;

  CONFIG_NAME:               REGION_NAME;
  XTCBCR_NAME:               REGION_NAME;
  STATIC_NAME:               REGION_NAME;

  CHECKP_MESS_BUF0:          CHECKPOINT_MESSAGE;
  CHECKP_MESS_BUF1:          CHECKPOINT_MESSAGE;

  DUMPREGS_0:                REGISTERS;
  DUMPREGS_1:                REGISTERS;
  DUMPREGS_2:                REGISTERS;

  MTCB_BUFFER:               ARRAY[0..MTCB_BUFFER_SIZE-1] OF INTEGER;

  TCB_CCIS:                  TCB_TYPE;

  STATIC_RECORD:             STATIC_RECORD_TYPE;

  RDF_NAME:                  FILE_NAME;

  VOLUME_MOVHEAD:            VOLUME_NAME;
  VOLUME_FIXHEAD:            VOLUME_NAME;

  FILE_SYSTEM:               FILE_SYSTEM_NAME;

  WORK_AREA:                 ARRAY[0..MAX_WORK_AREA_SIZE-1] OF INTEGER;

  AIG_BUFFER:                ARRAY[0..SIZE(GET_ANO_AIG_WORK)-1] OF INTEGER;

  BUFFER:                    ARRAY[0..511] OF CHAR;

"PAGE «ff»
INIT

"CHECKPINT MESSAGES
"------------------

"RETRIVE OF CCIS_STATUS (AT RESTART)
"-----------------------------------
  CHECKP_MESS_BUF0              = (RETRIEVE_CHECKPOINT       SHIFTLL 15)              "COMMAND
                                + (SYSTEM_CHECKPOINTS        SHIFTLL 8)
                                + (CHECKPOINT_SINGLE_WORD    SHIFTLL 4),
                                  OFFSET_CCIS_STATUS,
                                  0;

"ENQUEUE TO MDS
"--------------
  CHECKP_MESS_BUF1              = (STORE_CHECKPOINT          SHIFTLL 15)              "COMMAND
                                + (MTCB_CHECKPOINTS          SHIFTLL 8)
                                + (ENQUEUE_SINGLE            SHIFTLL 4)
                                + (1                         SHIFTLL MTCB_UPDATE)
                                + (1                         SHIFTLL CLEAR_QUEUE_MAP),
                                  '*',                                                "MTCB_INDEX
                                  MDS_TERM_NO,                                        "MDS-TERMINAL NO - T0
                                  '*';                                                "QUEUE NO - TO


"PAGE «ff»
  STATUS_CCIS                          = CCIS_LINK_CLOSED;

  BLE_BUFFER.KIND                      = BMLOCALLOWER;
  BLE_BUFFER.LINK                      = 0;
  BLE_BUFFER.ADDR                      = ADDRESS(BUFFER);
  BLE_BUFFER.BYTE_SIZE                 = SIZE(BUFFER)*2;

  FILEADDR_DTG.FIRST_BYTE              = REF_ACCEPT_DTG*2;
  FILEADDR_DTG.BYTE_COUNT              = 4;          "BYTE_SIZE(LONG)

  BLE_DTG.KIND                         = BMLOCALLOWER;
  BLE_DTG.LINK                         = 0;
  BLE_DTG.ADDR                         = ADDRESS(WORK_AREA) + DTG_INTEGER_REF;
  BLE_DTG.BYTE_SIZE                    = 4;          "BYTE_SIZE(LONG)

  CPIP_NAME.NAME                       = 'CPIP';
  CTERM_NAME.NAME                      = 'CTERM';
  %WHEN CCIS_VERSION = FALSE SKIP
  CPIP_NAME.NAME                       = 'CPIPX';
  CTERM_NAME.NAME                      = 'CTERMX';
  %COMPILE
  CHECKP_NAME.NAME                     = 'CHECKP';

  CONFIG_NAME.NAME                     = 'CONFIG';
  XTCBCR_NAME.NAME                     = 'XTCBCR';
  STATIC_NAME.NAME                     = 'STATIC';

  FILE_SYSTEM.PNAME.NAME               = 'DMA000';
  FILE_SYSTEM.GNAME                    = 'FILE';

  RDF_NAME                             = 'RDF';

  VOLUME_MOVHEAD                       = 'MOVHEAD';
  VOLUME_FIXHEAD                       = 'FIXHEAD';