*DECK TXCMDCS
PROC TXCMDCS;
# TITLE TXCMDCS - SYMPL TEXT FOR CS COMMAND ELEMENT. #
BEGIN # TXCMDCS #
CONTROL PRESET;
#
** TXCMDCS - SYMPL TEXT FOR CS COMMAND ELEMENT.
*
* C. BRION 82/03/01.
* C. BRION 82/05/07.
*
* THIS PROC GENERATES A SYMPL TEXT FOR COMPILING THE CS ROUTINES
* THAT COMPRISE THE COMMAND ELEMENT. IT CONTAINS THE DEFINITIONS
* OF SYMBOLS AND PARAMETERS, COMMON BLOCKS ECT. USED THROUGHOUT
* THE COMMAND PROCESSING PROCS.
#
CONTROL STEXT;
#
** GLOBAL DEFINITIONS
#
DEF MCMDL$ # 30 #; # MAX NUMBER CMD PARAMETER #
# WORDS FOR THE PARMS ARRAY #
DEF MCMDSTL$ # 60 #; # MAX NUM CHARS IN CMD STRING#
DEF MCMDWL$ # 6 #; # MAX NUM STRING CMD WORDS #
#
** CMDMEM - COMMON COMMAND MEMORY DEFINITIONS.
*
* ARRAY AND BASED ARRAY DEFINITIONS FOR THE VARIOUS PARTS THAT
* COMPRISE THE COMMAND STRING, VALID COMMAND AND ROUTED COMMAND.
#
COMMON CMDMEM;
BEGIN
#
** HDRCMD - HEADER WORD FOR VALID AND ROUTED COMMANDS.
*
* THE COMMAND HEADER WORD CONTAINS THE PARAMETERS THAT DESCRIBE
* THE WORD LENGTH OF THE SYNTAX PARAMETERS LIST, THE WORD LENGTH
* OF THE ADDRESS PARAMETERS LIST, THE CHARACTER LENGTH OF THE
* ACTUAL COMMAND STRING, THE OPERATOR ID OF THE COMMAND AND THE
* COMMAND VERB.
* THERE EXISTS A TWO PORTION PART OF THE HEADER WORD SO AS TO
* EASE THE GENERATION OF THE OUTGOING COMMAND FROM THE INCOMING.
#
ARRAY HDRCMD [00:01] S(1);
BEGIN
ITEM HDR$WORD U(00,00,60); # FULL WORD REFERENCE #
ITEM HDR$SPCNT U(00,00,06); #SYNTAX PARAMETER COUNT#
ITEM HDR$OPORD U(00,06,12); #OPERATOR ORDINAL#
ITEM HDR$APCNT U(00,18,06); #ADDRESS PARAMETER COUNT#
ITEM HDR$TXWCNT U(00,24,06); #CMD TEXT WORD COUNT#
ITEM HDR$VERB C(00,30,03); #COMMAND VERB #
ITEM HDR$BOF B(00,41,01); # BREAK OCCURRED FLAG #
ITEM HDR$TXCCNT U(00,48,12); #CMD TEXT CHAR LENGTH#
END
#
** PARMS - PARAMETER LIST ARRAY.
*
* THIS ARRAY HOLDS THE COMMAND PARAMETER LIST.
#
ARRAY PARMS [00:MCMDL$] S(1);
BEGIN
ITEM PAR$WORD U(00,00,60);
ITEM PAR$ELNAME C(00,00,07); # ELEMENT NAME #
ITEM PAR$VCNAME C(00,00,05); # SVC NAME #
ITEM PAR$NCIR U(00,00,08); # CIRCUITS TO ENABLE/DISABLE #
ITEM PAR$SVCFLG B(00,00,01); # SVC BOOLEAN FLAG #
ITEM PAR$SVCNAM C(00,00,05); # SVC 5-CHAR NAME #
ITEM PAR$SVCORD C(00,30,02); # SVC 2 HEX CHAR ORDINAL #
ITEM PAR$ORD U(00,00,12); # ORDINAL VALUE #
ITEM PAR$ELADDR U(00,00,08); # ELEMENT ADDRESS #
ITEM PAR$LLTYPE B(00,00,01); # LLINK TYPE FOR LLA #
ITEM PAR$LLNID1 U(00,08,08); # LINK NODE 1 FOR LLA #
ITEM PAR$LLNID2 U(00,16,08); # LINK NODE 2 FOR LLA #
ITEM PAR$PCODE C(00,42,03); # 3 CHAR PARAMETER CODE #
ITEM PAR$MSGCL U(00,00,42); # CHAR LEN OF MSG PARAMETER #
ITEM PAR$PCHR1 C(00,42,01); # 1ST CHAR OF PCODE #
ITEM PAR$PCHR2 C(00,48,01); # 2ND CHARACTER OF PCODE #
ITEM PAR$PCHR3 C(00,54,01); # 3RD CHARACTER OF PCODE #
END
#
** CMDLINE - TEXT ARRAY FOR CMD TEXT EVENT MESSAGES TO THE LOG
* FILE.
#
ARRAY CMDLINE [00:00] S(8);
BEGIN
ITEM CMD$CSID C(00,00,03) = ["CS/"]; # CS PROGRAM ID #
ITEM CMD$TNAM C(00,18,07); # TERMINAL NAME #
ITEM CMD$TXT1 C(01,00,60); # TIME STAMP WORD #
ITEM CMD$TEXT C(02,00,60); # 60 CHAR MAX TEXT #
END
#
** MSCMD - BASED ARRAY FOR MOVING TEXT INTO CMDLINE ARRAY.
#
BASED ARRAY MSCMD [00:00] S(1);
BEGIN
ITEM MSC$WORD U(00,00,60);
END
END # CMDMEM #
END # TXCMDCS #
TERM