*DECK TXCMDNV
PROC TXCMDNV;
# TITLE TXCMDNV - SYMPL TEXT FOR NVF COMMAND ELEMENT. #
BEGIN # TXCMDNV #
#
** TXCMDNV - SYMPL TEXT FOR NVF COMMAND ELEMENT.
*
* A. LIM. 82/03/18.
*
* THIS PROC GENERATES A SYMPL TEXT FOR COMPILING THE NVF 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
#
# *** PARAMETER LIST *** #
DEF MCMDL$ # 30 #; # MAX NUMBER CMD PARAMETER #
# WORDS FOR THE PARMS ARRAY #
# *** COMMAND SYNTAX TABLE- COMMAND VERB *** #
DEF DIA$ # "DIA" #; # DISABLE APPL #
DEF DIH$ # "DIH" #; # DISABLE HOST #
DEF ENA$ # "ENA" #; # ENABLE APPLICATION #
DEF HIL$ # "HIL" #; # HISTORY #
DEF IDA$ # "IDA" #; # IDLE APPLICATION #
DEF IDH$ # "IDH" #; # IDLE HOST #
DEF SSA$ # "SSA" #; # STATUS OF TERMINALS IN APPL #
DEF SSU$ # "SSU" #; # STATUS OF USER #
DEF STA$ # "STA" #; # STATUS OF APPLICATION #
DEF STS$ # "STS" #; # STATUS OF APPLICATIONS #
DEF STT$ # "STT" #; # STATUS OF A TERMINAL #
DEF STU$ # "STU" #; # STATUS OF A USER #
DEF SUA$ # "SUA" #; # STATUS OF USERS IN APPL #
# *** COMMAND SYNTAX TABLE- PROCESS CODE *** #
DEF APPL$ # "APL" #; # APPLICATION COMMAND #
DEF HISTORY$ # "HIS" #; # HISTORY COMMAND #
DEF HOST$ # "HST" #; # HOST COMMAND #
DEF STATUS$ # "STA" #; # STATUS COMMAND #
# *** COMMAND SYNTAX TABLE - PARAMETER CODE *** #
DEF AC$ # "AC0" #; # ACTIVE #
DEF APP$ # "APP" #; # APPLICATION #
# *** HISTORY BUFFER *** #
DEF MXHSBCNT$ # 50 #; # MAX NO OF LINES IN HISTORY BUF#
# *** MESSAGE LENGTH IN CHARACTERS. (MULTIPLE OF 10) *** #
DEF LMSG20$ # 20 #;
DEF LMSG30$ # 30 #;
DEF LMSG40$ # 40 #;
# *** UNSOLICITED MESSAGE IDENTIFERS FOR LOGGING *** #
DEF USMSGID$ # "NV/ " #;
DEF HOCMDID$ # "NV/HOSTNVF" #;
# *** WORD POSITION AND MASK FOR SERIAL SEARCHER REQUEST *** #
DEF WPOSA$ # 03 #; # APPL-ORD POSITION IN VCB ENYRY#
DEF WPOST$ # 00 #; # TRM-NAME POSITION IN VCB ENTRY#
DEF WPOSU$ # 04 #; # USR-NAME POSITION IN VCB ENTRY#
DEF MASKA$ # O"00000000000000000777" #; # MASK FOR ACN #
DEF MASKT$ # O"77777777777777000000" #; # MASK FOR T-NAME #
DEF MASKU$ # O"77777777777777000000" #; # MASK FOR U-NAME #
#
** CMDMEM - COMMON COMMAND MEMORY DEFINITIONS.
*
* COMMON BLOCK FOR VARIOUS PARTS OF NVF COMMAND ELEMENT.
#
COMMON CMDMEM;
BEGIN
# *** ITEMS AND FLAGS *** #
ITEM CMDINPGF B; # COMMAND-IN-PROGRESS FLAG #
ITEM CRNT$CMD C(3); # CURRENT COMMAND I.D. IN PROG #
ITEM DATA$ B; # SET IF MATCH IN VCB FILES #
ITEM HOPENDWF B; # HOP/END-WARNING FLAG #
ITEM HSBCNT I; # HISTORY BUF LINE COUNT #
ITEM LEFTPL I; # PAGE LENGTH OF LEFT K-DISPLAY #
ITEM RIGHTPL I; # PAGE LENGTH OF RIGHT K-DSPLAY #
#
** AST$ENT - AST ENTRY
*
* THIS ARRAY DEFINES A BUFFER USED TO CONTAIN A AST ENTRY FOR NVF
* THIS IS USED FORMAT STATUS INFORMATION FOR NVF. THIS IS NEEDED
* BECAUSE THERE IS NO ENTRY IN THE AST FOR NVF.
#
ARRAY AST$ENT [00:02] S(1);
BEGIN
ITEM AE$WORD I(00,00,60);
END
#
** 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$WORDU U(00,00,60);
ITEM PAR$WORDC C(00,00,10);
ITEM PAR$ELNAME C(00,00,07); # ELEMENT NAME #
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 #
END
END # CMDMEM #
END # TXCMDNV #
TERM