*DECK FCSIICT 
USETEXT TEXTFCS 
      PROC FCSIICT; 
*CALL COPYRITE
# TITLE FCSIICT - INITIALIZE COMMAND TABLES.                           #
  
      BEGIN                            # FCSIICT                       #
  
# 
**    FCSIICT - INITIALIZE COMMAND TABLES.
* 
*     C. J. RAMSAY                     87/11/03 
* 
*     THIS PROCEDURE BUILDS THE COMMAND AND PARAMETER DESCRIPTOR TABLES.
* 
*     PROC FCSIICT
* 
*     ENTRY   NOT MUCH NEEDED BEFORE THIS.
* 
*     EXIT    COMMAND AND PARAMETER DESCRIPTOR/NAME TABLES INITIALIZED. 
* 
*     NOTES 
* 
*     FIVE DEFS ARE USED IN THE MANNER OF COMPASS MACROS TO 
*     BUILD THE TABLES. 
* 
*     1. SETUP MUST BE CALLED ONCE AT THE BEGINNING OF THE ROUTINE. 
*          SETUP - NO PARAMETERS. 
* 
*     2. CSETUP IS CALLED TO DEFINE A COMMAND.
*          CSETUP(CNUM,ABRV,SIZE) 
*            . CNUM     - INTEGER NUMBER ASSOCIATED WITH THIS COMMAND.
*            . ABRV     - ABBREVIATION FOR THIS COMMAND (< 16 CHARS). 
*            . SIZE     - NUMBER OF CHARACTERS IN ABBREVIATION. 
* 
*     3. CSETUP2 IS CALLED IMMEDIATELY AFTER A CALL TO CSETUP TO
*        FINISH THE TABLE INITIALIZATION.  IT IS NEEDED BECAUSE 
*        THE CODE REQUIRED FOR PARAMETER TABLE INITIALIZATION WILL
*        NOT FIT IN THE MAXIMUM SIZE OF A SYMPL DEF. IT IS ONLY 
*        CALLED IF THE TABLE ENTRY IS FOR THE LONG FORM OF THE COMMAND. 
*          CSETUP2(LNAME,LSIZE) 
*            . LNAME    - LONG NAME FOR THIS COMMAND (< 31 CHARS).
*            . LSIZE    - NUMBER OF CHARACTERS IN LONG NAME.
* 
*     4. PSETUP IS CALLED TO DEFINE A COMMAND PARAMETER.  IT IS 
*        ASSOCIATED WITH THE COMMAND DEFINED BY THE PREVIOUS
*        CSETUP CALL. 
*          PSETUP(ABRV,SIZE,TYPE,REQD)
*            . ABRV     - ABBREVIATION FOR THIS PARAMETER (< 16 CHARS). 
*            . SIZE     - NUMBER OF CHARACTERS IN ABBREVIATION. 
*            . TYPE     - PARAMETER TYPE , MAY BE PTNAME, PTUNAME,
*                         PTFILE, PTBOOLEAN, OR PTKEYWORD.
*            . REQD     - TRUE INDICATES PARAMETER IS REQUIRED. 
* 
*     5. PSETUP2 IS CALLED IMMEDIATELY AFTER A CALL TO PSETUP TO
*        FINISH THE TABLE INITIALIZATION.  IT IS NEEDED BECAUSE 
*        THE CODE REQUIRED FOR PARAMETER TABLE INITIALIZATION WILL
*        NOT FIT IN THE MAXIMUM SIZE OF A SYMPL DEF.
*          PSETUP2(LNAME,LSIZE) 
*            . LNAME    - LONG NAME FOR THIS PARAMETER (< 31 CHARS).
*            . LSIZE    - NUMBER OF CHARACTERS IN LONG NAME.
* 
*     THE ORGANIZATION OF THE NON-EXECUTABLE CODE IS AS FOLLOWS-
* 
*       ALL PARAMETERS USED IN THE CALLS ARE DEFINED EITHER AS
*       DEFS OR AS PRESET ARRAYS.  THE ORDER IS - COMMAND 
*       ABBREVIATIONS, COMMAND LONG NAMES, PARAMETER
*       ABBREVIATIONS, PARAMETER LONG NAMES, PARAMETER TYPES, 
*       PARAMETER DEFAULTS. 
* 
*       MISCELLANEOUS DEFS AND LOCAL VARIABLES ARE DEFINED NEXT.
* 
*       THE DEFS USED AS MACROS ARE DEFINED LAST. 
* 
*     METHOD
* 
*     THE METHOD IN THIS ROUTINE IS VERY SIMPLE.  AFTER SETUP IS CALLED 
*     TO INITIALIZE THE VARIABLES, CSETUP, CSETUP2, PSETUP AND PSETUP2
*     ARE CALLED TO DEFINE THE COMMANDS AND PARAMETERS. 
* 
*     *****  CAUTION  ***** 
* 
*     1. ANY TIME A NEW COMMAND IS ADDED, THE SIZE OF FCS$CDT, FCS$CNT, 
*        FCS$PDT AND FCS$PNT IN TEXTFCS NEED TO BE ADJUSTED ACCORDINGLY.
* 
*     2. ALL CALLS TO CSETUP WHICH ALSO REQUIRE A CSETUP2 CALL SHOULD 
*        OCCUR BEFORE CALLS TO CSETUP WHICH DO NOT REQUIRE A CSETUP2
*        CALL, AND SHOULD BE ORDERED BY COMMAND NUMBER. 
* 
*        REASON FOR NUMBER 2 IS TO MINIMIZE TABLE SPACE FOR CNT.
*        THIS WAY WE DONT NEED A ONE TO ONE CORRESPONDENCE BETWEEN
*        CDT AND CNT, BUT WHEN THE MACRO CSETUP AND CSETUP2 ARE CALLED
*        THE SAME INDEX USED FOR CDT IS USED FOR CNT. 
# 
  
# 
****  PROC FCSIICT - XREF LIST
# 
      XREF
        BEGIN 
        PROC NETUCAS;                  # COPY AN ASCII STRING          #
        PROC NETUCLR;                  # CLEAR AN AREA OF MEMORY       #
        END 
# 
****
# 
  
# 
****  DEFS REQUIRED FOR DEFINING COMMANDS AND PARAMETERS  ****
# 
  
# 
*     COMMAND ABBREVIATIONS 
# 
  
      DEF ABRV$APPE    #X"415050450000000"#; # APPE                    #
      DEF ABRV$APPEND  #X"415050454E44000"#; # APPEND                  #
      DEF ABRV$APPF    #X"415050460000000"#; # APPF                    #
      DEF ABRV$BELL    #X"42454C4C0000000"#; # BELL                    #
      DEF ABRV$BYE     #X"425945000000000"#; # BYE                     #
      DEF ABRV$CD      #X"434400000000000"#; # CD                      #
      DEF ABRV$CDUP    #X"434455500000000"#; # CDUP                    #
      DEF ABRV$CHAALM  #X"434841414C4D000"#; # CHAALM                  #
      DEF ABRV$CHABM   #X"434841424D00000"#; # CHABM                   #
      DEF ABRV$CHACS   #X"434841435300000"#; # CHACS                   #
      DEF ABRV$CHADM   #X"434841444D00000"#; # CHADM                   #
      DEF ABRV$CHAEE   #X"434841454500000"#; # CHAEE                   #
      DEF ABRV$CHAFN   #X"434841464E00000"#; # CHAFN                   #
      DEF ABRV$CHAIF   #X"434841494600000"#; # CHAIF                   #
      DEF ABRV$CHAOF   #X"4348414F4600000"#; # CHAOF                   #
      DEF ABRV$CHAPCM  #X"43484150434D000"#; # CHAPCM                  #
      DEF ABRV$CHATT   #X"434841545400000"#; # CHATT                   #
      DEF ABRV$CHAVM   #X"434841564D00000"#; # CHAVM                   #
      DEF ABRV$CHAWD   #X"434841574400000"#; # CHAWD                   #
      DEF ABRV$CLOSE   #X"434C4F534500000"#; # CLOSE                   #
      DEF ABRV$CRED    #X"435245440000000"#; # CRED                    #
      DEF ABRV$CREHC   #X"435245484300000"#; # CREHC                   #
      DEF ABRV$CWD     #X"435744000000000"#; # CWD                     #
      DEF ABRV$DEBUG   #X"444542554700000"#; # DEBUG                   #
      DEF ABRV$DEFAL   #X"444546414C00000"#; # DEFAL                   #
      DEF ABRV$DELD    #X"44454C440000000"#; # DELD                    #
      DEF ABRV$DELE    #X"44454C450000000"#; # DELE                    #
      DEF ABRV$DELETE  #X"44454C455445000"#; # DELETE                  #
      DEF ABRV$DELF    #X"44454C460000000"#; # DELF                    #
      DEF ABRV$DELHC   #X"44454C484300000"#; # DELHC                   #
      DEF ABRV$DIR     #X"444952000000000"#; # DIR                     #
      DEF ABRV$DISCI   #X"444953434900000"#; # DISCI                   #
      DEF ABRV$DISCLE  #X"444953434C45000"#; # DISCLE                  #
      DEF ABRV$DISD    #X"444953440000000"#; # DISD                    #
      DEF ABRV$DISFN   #X"444953464E00000"#; # DISFN                   #
      DEF ABRV$DISFO   #X"444953464F00000"#; # DISFO                   #
      DEF ABRV$DISLH   #X"4449534C4800000"#; # DISLH                   #
      DEF ABRV$DISRH   #X"444953524800000"#; # DISRH                   #
      DEF ABRV$DISWD   #X"444953574400000"#; # DISWD                   #
      DEF ABRV$ELEWD   #X"454C45574400000"#; # ELEWD                   #
      DEF ABRV$GET     #X"474554000000000"#; # GET                     #
      DEF ABRV$GETF    #X"474554460000000"#; # GETF                    #
      DEF ABRV$HELP    #X"48454C500000000"#; # HELP                    #
      DEF ABRV$LIST    #X"4C4953540000000"#; # LIST                    #
      DEF ABRV$LOGU    #X"4C4F47550000000"#; # LOGU                    #
      DEF ABRV$LS      #X"4C5300000000000"#; # LS                      #
      DEF ABRV$MKD     #X"4D4B44000000000"#; # MKD                     #
      DEF ABRV$MKDIR   #X"4D4B44495200000"#; # MKDIR                   #
      DEF ABRV$NLST    #X"4E4C53540000000"#; # NLST                    #
      DEF ABRV$OPEN    #X"4F50454E0000000"#; # OPEN                    #
      DEF ABRV$PUT     #X"505554000000000"#; # PUT                     #
      DEF ABRV$PWD     #X"505744000000000"#; # PWD                     #
      DEF ABRV$Q       #X"510000000000000"#; # Q                       #
      DEF ABRV$QUI     #X"515549000000000"#; # QUI                     #
      DEF ABRV$QUOTE   #X"51554F544500000"#; # QUOTE                   #
      DEF ABRV$RECV    #X"524543560000000"#; # RECV                    #
      DEF ABRV$RENAME  #X"52454E414D45000"#; # RENAME                  #
      DEF ABRV$REPF    #X"524550460000000"#; # REPF                    #
      DEF ABRV$RETR    #X"524554520000000"#; # RETR                    #
      DEF ABRV$RMD     #X"524D44000000000"#; # RMD                     #
      DEF ABRV$RMDIR   #X"524D44495200000"#; # RMDIR                   #
      DEF ABRV$SEND    #X"53454E440000000"#; # SEND                    #
      DEF ABRV$SENFC   #X"53454E464300000"#; # SENFC                   #
      DEF ABRV$STATUS  #X"535441545553000"#; # STATUS                  #
      DEF ABRV$STOR    #X"53544F520000000"#; # STOR                    #
      DEF ABRV$TYPEC   #X"545950450000000"#; # TYPE                    #
      DEF ABRV$USERC   #X"555345520000000"#; # USER                    #
      DEF ABRV$VERBOSE #X"564552424F53450"#; # VERBOSE                 #
  
# 
*     COMMAND NAMES 
# 
  
      ARRAY NAME$APPF   [0:0] S(4);        # APPEND_FILE               #
        BEGIN 
        ITEM APPF1  U(00,00,60) = [X"415050454E445F4"]; # APPEND_(F)   #
        ITEM APPF2  U(01,00,60) = [X"6494C4500000000"]; # (F)ILE       #
        ITEM APPF3  U(02,00,60) = [0];
        ITEM APPF4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAALM [0:0] S(4);        # CHANGE_AUTO_LOGIN_MODE    #
        BEGIN 
        ITEM CHAALM1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(A)  #
        ITEM CHAALM2 U(01,00,60) = [X"155544F5F4C4F47"]; # (A)UTO_LOG  #
        ITEM CHAALM3 U(02,00,60) = [X"494E5F4D4F44450"]; # IN_MODE     #
        ITEM CHAALM4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$CHABM  [0:0] S(4);        # CHANGE_BELL_MODE          #
        BEGIN 
        ITEM CHABM1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(B)   #
        ITEM CHABM2 U(01,00,60) = [X"2454C4C5F4D4F44"]; # (B)ELL_MOD   #
        ITEM CHABM3 U(02,00,60) = [X"450000000000000"]; # E            #
        ITEM CHABM4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHACS  [0:0] S(4);        # CHANGE_CODE_SET           #
        BEGIN 
        ITEM CHACS1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(C)   #
        ITEM CHACS2 U(01,00,60) = [X"34F44455F534554"]; # (C)ODE_SET   #
        ITEM CHACS3 U(02,00,60) = [0];
        ITEM CHACS4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHADM  [0:0] S(4);        # CHANGE_DEBUG_MODE         #
        BEGIN 
        ITEM CHADM1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(D)   #
        ITEM CHADM2 U(01,00,60) = [X"4454255475F4D4F"]; # (D)EBUG_MO   #
        ITEM CHADM3 U(02,00,60) = [X"444500000000000"]; # DE           #
        ITEM CHADM4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAEE  [0:0] S(4);     # CHANGE_EXPRESSION_EVALUATION #
        BEGIN 
        ITEM CHAEE1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(E)   #
        ITEM CHAEE2 U(01,00,60) = [X"558505245535349"]; # (E)XPRESSI   #
        ITEM CHAEE3 U(02,00,60) = [X"4F4E5F4556414C5"]; # ON_EVAL(U)   #
        ITEM CHAEE4 U(03,00,60) = [X"54154494F4E0000"]; # (U)ATION     #
        END 
  
      ARRAY NAME$CHAFN  [0:0] S(4);        # CHANGE_FILE_NAME          #
        BEGIN 
        ITEM CHAFN1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(F)   #
        ITEM CHAFN2 U(01,00,60) = [X"6494C455F4E414D"]; # (F)ILE_NAM   #
        ITEM CHAFN3 U(02,00,60) = [X"450000000000000"]; # E            #
        ITEM CHAFN4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAIF  [0:0] S(4);        # CHANGE_INPUT_FILE         #
        BEGIN 
        ITEM CHAIF1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(I)   #
        ITEM CHAIF2 U(01,00,60) = [X"94E5055545F4649"]; # (I)NPUT_FI   #
        ITEM CHAIF3 U(02,00,60) = [X"4C4500000000000"]; # LE           #
        ITEM CHAIF4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAOF  [0:0] S(4);        # CHANGE_OUTPUT_FILE        #
        BEGIN 
        ITEM CHAOF1 U(00,00,60) = [X"4348414E47455F4"]; # CHANGE_(O)   #
        ITEM CHAOF2 U(01,00,60) = [X"F55545055545F46"]; # (O)UTPUT_F   #
        ITEM CHAOF3 U(02,00,60) = [X"494C45000000000"]; # ILE          #
        ITEM CHAOF4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAPCM [0:0] S(4);        # CHANGE_PORT_COMMAND_MODE  #
        BEGIN 
        ITEM CHAPCM1 U(00,00,60) = [X"4348414E47455F5"]; # CHANGE_(P)  #
        ITEM CHAPCM2 U(01,00,60) = [X"04F52545F434F4D"]; # (P)ORT_COM  #
        ITEM CHAPCM3 U(02,00,60) = [X"4D414E445F4D4F4"]; # MAND_MO(D)  #
        ITEM CHAPCM4 U(03,00,60) = [X"445000000000000"]; # E           #
        END 
  
      ARRAY NAME$CHATT  [0:0] S(4);        # CHANGE_TRANSFER_TYPE      #
        BEGIN 
        ITEM CHATT1 U(00,00,60) = [X"4348414E47455F5"]; # CHANGE_(T)   #
        ITEM CHATT2 U(01,00,60) = [X"452414E53464552"]; # (T)RANSFER   #
        ITEM CHATT3 U(02,00,60) = [X"5F5459504500000"]; # _TYPE        #
        ITEM CHATT4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAVM  [0:0] S(4);        # CHANGE_VERBOSE_MODE       #
        BEGIN 
        ITEM CHAVM1 U(00,00,60) = [X"4348414E47455F5"]; # CHANGE_(V)   #
        ITEM CHAVM2 U(01,00,60) = [X"64552424F53455F"]; # (V)ERBOSE_   #
        ITEM CHAVM3 U(02,00,60) = [X"4D4F44450000000"]; # MODE         #
        ITEM CHAVM4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CHAWD  [0:0] S(4);        # CHANGE_WORKING_DIRECTORY  #
        BEGIN 
        ITEM CHAWD1 U(00,00,60) = [X"4348414E47455F5"]; # CHANGE_(W)   #
        ITEM CHAWD2 U(01,00,60) = [X"74F524B494E475F"]; # (W)ORKING_   #
        ITEM CHAWD3 U(02,00,60) = [X"4449524543544F5"]; # DIRECTO(R)   #
        ITEM CHAWD4 U(03,00,60) = [X"259000000000000"]; # (R)Y         #
        END 
  
      ARRAY NAME$CRED   [0:0] S(4);        # CREATE_DIRECTORY          #
        BEGIN 
        ITEM CRED1  U(00,00,60) = [X"4352454154455F4"]; # CREATE_(D)   #
        ITEM CRED2  U(01,00,60) = [X"449524543544F52"]; # (D)IRECTOR   #
        ITEM CRED3  U(02,00,60) = [X"590000000000000"]; # Y            #
        ITEM CRED4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$CREHC  [0:0] S(4);        # CREATE_HOST_CONNECTION    #
        BEGIN 
        ITEM CREHC1 U(00,00,60) = [X"4352454154455F4"]; # CREATE_(H)   #
        ITEM CREHC2 U(01,00,60) = [X"84F53545F434F4E"]; # (H)OST_CON   #
        ITEM CREHC3 U(02,00,60) = [X"4E454354494F4E0"]; # NECTION      #
        ITEM CREHC4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DEFAL  [0:0] S(4);        # DEFINE_AUTO_LOGIN         #
        BEGIN 
        ITEM DEFAL1 U(00,00,60) = [X"444546494E455F4"]; # DEFINE_(A)   #
        ITEM DEFAL2 U(01,00,60) = [X"155544F5F4C4F47"]; # (A)UTO_LOG   #
        ITEM DEFAL3 U(02,00,60) = [X"494E00000000000"]; # IN           #
        ITEM DEFAL4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DELD   [0:0] S(4);        # DELETE_DIRECTORY          #
        BEGIN 
        ITEM DELD1  U(00,00,60) = [X"44454C4554455F4"]; # DELETE_(D)   #
        ITEM DELD2  U(01,00,60) = [X"449524543544F52"]; # (D)IRECTOR   #
        ITEM DELD3  U(02,00,60) = [X"590000000000000"]; # Y            #
        ITEM DELD4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DELF   [0:0] S(4);        # DELETE_FILE               #
        BEGIN 
        ITEM DELF1  U(00,00,60) = [X"44454C4554455F4"]; # DELETE_(F)   #
        ITEM DELF2  U(01,00,60) = [X"6494C4500000000"]; # (F)ILE       #
        ITEM DELF3  U(02,00,60) = [0];
        ITEM DELF4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DELHC  [0:0] S(4);        # DELETE_HOST_CONNECTION    #
        BEGIN 
        ITEM DELHC1 U(00,00,60) = [X"44454C4554455F4"]; # DELETE_(H)   #
        ITEM DELHC2 U(01,00,60) = [X"84F53545F434F4E"]; # (H)OST_CON   #
        ITEM DELHC3 U(02,00,60) = [X"4E454354494F4E0"]; # NECTION      #
        ITEM DELHC4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DISCI  [0:0] S(4);      # DISPLAY_COMMAND_INFORMATION #
        BEGIN 
        ITEM DISCI1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISCI2 U(01,00,60) = [X"F434F4D4D414E44"]; # (_)COMMAND   #
        ITEM DISCI3 U(02,00,60) = [X"5F494E464F524D4"]; # _INFORM(A)   #
        ITEM DISCI4 U(03,00,60) = [X"154494F4E000000"]; # (A)TION      #
        END 
  
      ARRAY NAME$DISCLE [0:0] S(4);      # DISPLAY_COMMAND_LIST_ENTRY  #
        BEGIN 
        ITEM DISCLE1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)  #
        ITEM DISCLE2 U(01,00,60) = [X"F434F4D4D414E44"]; # (_)COMMAND  #
        ITEM DISCLE3 U(02,00,60) = [X"5F4C4953545F454"]; # _LIST_E(N)  #
        ITEM DISCLE4 U(03,00,60) = [X"E54525900000000"]; # (N)TRY      #
        END 
  
      ARRAY NAME$DISD   [0:0] S(4);        # DISPLAY_DIRECTORY         #
        BEGIN 
        ITEM DISD1  U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISD2  U(01,00,60) = [X"F4449524543544F"]; # (_)DIRECTO   #
        ITEM DISD3  U(02,00,60) = [X"525900000000000"]; # RY           #
        ITEM DISD4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DISFN [0:0] S(4);         # DISPLAY_FILE_NAMES        #
        BEGIN 
        ITEM DISFN1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISFN2 U(01,00,60) = [X"F46494C455F4E41"]; # (_)FILE_NA   #
        ITEM DISFN3 U(02,00,60) = [X"4D4553000000000"]; # MES          #
        ITEM DISFN4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DISFO [0:0] S(4);         # DISPLAY_FTP_OPTIONS       #
        BEGIN 
        ITEM DISFO1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISFO2 U(01,00,60) = [X"F4654505F4F5054"]; # (_)FTP_OPT   #
        ITEM DISFO3 U(02,00,60) = [X"494F4E530000000"]; # IONS         #
        ITEM DISFO4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DISLH [0:0] S(4);         # DISPLAY_LOCAL_HELP        #
        BEGIN 
        ITEM DISLH1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISLH2 U(01,00,60) = [X"F4C4F43414C5F48"]; # (_)LOCAL_H   #
        ITEM DISLH3 U(02,00,60) = [X"454C50000000000"]; # ELP          #
        ITEM DISLH4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DISRH [0:0] S(4);         # DISPLAY_REMOTE_HELP       #
        BEGIN 
        ITEM DISRH1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISRH2 U(01,00,60) = [X"F52454D4F54455F"]; # (_)REMOTE_   #
        ITEM DISRH3 U(02,00,60) = [X"48454C500000000"]; # HELP         #
        ITEM DISRH4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$DISWD [0:0] S(4);         # DISPLAY_WORKING_DIRECTORY #
        BEGIN 
        ITEM DISWD1 U(00,00,60) = [X"444953504C41595"]; # DISPLAY(_)   #
        ITEM DISWD2 U(01,00,60) = [X"F574F524B494E47"]; # (_)WORKING   #
        ITEM DISWD3 U(02,00,60) = [X"5F4449524543544"]; # _DIRECT(O)   #
        ITEM DISWD4 U(03,00,60) = [X"F52590000000000"]; # (O)RY        #
        END 
  
      ARRAY NAME$ELEWD [0:0] S(4);         # ELEVATE_WORKING_DIRECTORY #
        BEGIN 
        ITEM ELEWD1 U(00,00,60) = [X"454C45564154455"]; # ELEVATE(_)   #
        ITEM ELEWD2 U(01,00,60) = [X"F574F524B494E47"]; # (_)WORKING   #
        ITEM ELEWD3 U(02,00,60) = [X"5F4449524543544"]; # _DIRECT(O)   #
        ITEM ELEWD4 U(03,00,60) = [X"F52590000000000"]; # (O)RY        #
        END 
  
      ARRAY NAME$GETF   [0:0] S(4);        # GET_FILE                  #
        BEGIN 
        ITEM GETF1  U(00,00,60) = [X"4745545F46494C4"]; # GET_FIL(E)   #
        ITEM GETF2  U(01,00,60) = [X"500000000000000"]; # (E)          #
        ITEM GETF3  U(02,00,60) = [0];
        ITEM GETF4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$LOGU   [0:0] S(4);        # LOGIN_USER                #
        BEGIN 
        ITEM LOGU1  U(00,00,60) = [X"4C4F47494E5F555"]; # LOGIN_U(S)   #
        ITEM LOGU2  U(01,00,60) = [X"345520000000000"]; # (S)ER        #
        ITEM LOGU3  U(02,00,60) = [0];
        ITEM LOGU4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$QUIT   [0:0] S(4);        # QUIT                      #
        BEGIN 
        ITEM QUIT1  U(00,00,60) = [X"515549540000000"]; # QUIT         #
        ITEM QUIT2  U(01,00,60) = [0];
        ITEM QUIT3  U(02,00,60) = [0];
        ITEM QUIT4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$REMH   [0:0] S(4);        # REMOTEHELP                #
        BEGIN 
        ITEM REMH1  U(00,00,60) = [X"52454D4F5445484"]; # REMOTEH(E)   #
        ITEM REMH2  U(01,00,60) = [X"54C500000000000"]; # (E)LP        #
        ITEM REMH3  U(02,00,60) = [0];
        ITEM REMH4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$REPF   [0:0] S(4);        # REPLACE_FILE              #
        BEGIN 
        ITEM REPF1  U(00,00,60) = [X"5245504C4143455"]; # REPLACE(_)   #
        ITEM REPF2  U(01,00,60) = [X"F46494C45000000"]; # (_)FILE      #
        ITEM REPF3  U(02,00,60) = [0];
        ITEM REPF4  U(03,00,60) = [0];
        END 
  
      ARRAY NAME$SENFC [0:0] S(4);         # SEND_FTP_COMMAND          #
        BEGIN 
        ITEM SENFC1 U(00,00,60) = [X"53454E445F46545"]; # SEND_FT(P)   #
        ITEM SENFC2 U(01,00,60) = [X"05F434F4D4D414E"]; # (P)_COMMAN   #
        ITEM SENFC3 U(02,00,60) = [X"440000000000000"]; # D            #
        ITEM SENFC4 U(03,00,60) = [0];
        END 
  
      ARRAY NAME$SENP   [0:0] S(4);        # SENDPORT                  #
        BEGIN 
        ITEM SENP1  U(00,00,60) = [X"53454E44504F525"]; # SENDPOR(T)   #
        ITEM SENP2  U(01,00,60) = [X"400000000000000"]; # (T)          #
        ITEM SENP3  U(02,00,60) = [0];
        ITEM SENP4  U(03,00,60) = [0];
        END 
  
# 
*     PARAMETER ABBREVIATIONS 
# 
  
      DEF ABRV$ABOR   #X"410000000000000"#; # A                        #
      DEF ABRV$ACCO   #X"410000000000000"#; # A                        #
      DEF ABRV$AUTL   #X"414C4D000000000"#; # ALM                      #
      DEF ABRV$COMM   #X"430000000000000"#; # C                        #
      DEF ABRV$CODS   #X"435300000000000"#; # CS                       #
      DEF ABRV$FAMI   #X"460000000000000"#; # F                        #
      DEF ABRV$FILE   #X"460000000000000"#; # F                        #
      DEF ABRV$HOST   #X"480000000000000"#; # H                        #
      DEF ABRV$INPU   #X"490000000000000"#; # I                        #
      DEF ABRV$LOCF   #X"4C4600000000000"#; # LF                       #
      DEF ABRV$MODE   #X"4D0000000000000"#; # M                        #
      DEF ABRV$NAME   #X"4E0000000000000"#; # N                        #
      DEF ABRV$NEWF   #X"4E464E000000000"#; # NFN                      #
      DEF ABRV$OUTP   #X"4F0000000000000"#; # O                        #
      DEF ABRV$PARA   #X"500000000000000"#; # P                        #
      DEF ABRV$PASS   #X"505700000000000"#; # PW                       #
      DEF ABRV$PROJ   #X"500000000000000"#; # P                        #
      DEF ABRV$REMF   #X"524600000000000"#; # RF                       #
      DEF ABRV$STAT   #X"535441545553000"#; # STATUS                   #
      DEF ABRV$TYPEP  #X"540000000000000"#; # T                        #
      DEF ABRV$USERP  #X"550000000000000"#; # U                        #
  
# 
*     PARAMETER NAMES 
# 
  
      ARRAY NAME$ABOR [0:0] S(4); 
        BEGIN 
        ITEM ABOR1 U(00,00,60) = [X"41424F525400000"]; # ABORT         #
        ITEM ABOR2 U(01,00,60) = [0]; 
        ITEM ABOR3 U(02,00,60) = [0]; 
        ITEM ABOR4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$ACCO [0:0] S(4); 
        BEGIN 
        ITEM ACCO1 U(00,00,60) = [X"4143434F554E540"]; # ACCOUNT       #
        ITEM ACCO2 U(01,00,60) = [0]; 
        ITEM ACCO3 U(02,00,60) = [0]; 
        ITEM ACCO4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$AUTL [0:0] S(4); 
        BEGIN 
        ITEM AUTL1 U(00,00,60) = [X"4155544F5F4C4F4"]; # AUTO_LO(G)    #
        ITEM AUTL2 U(01,00,60) = [X"7494E5F4D4F4445"]; # (G)IN_MODE    #
        ITEM AUTL3 U(02,00,60) = [0]; 
        ITEM AUTL4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$COMM [0:0] S(4); 
        BEGIN 
        ITEM COMM1 U(00,00,60) = [X"434F4D4D414E440"]; # COMMAND       #
        ITEM COMM2 U(01,00,60) = [0]; 
        ITEM COMM3 U(02,00,60) = [0]; 
        ITEM COMM4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$CODS [0:0] S(4); 
        BEGIN 
        ITEM CODS1 U(00,00,60) = [X"434F44455F53455"]; # CODE_SE(T)    #
        ITEM CODS2 U(01,00,60) = [X"400000000000000"]; #(T)            #
        ITEM CODS3 U(02,00,60) = [0]; 
        ITEM CODS4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$FAMI [0:0] S(4); 
        BEGIN 
        ITEM FAMI1 U(00,00,60) = [X"46414D494C59000"]; # FAMILY        #
        ITEM FAMI2 U(01,00,60) = [0]; 
        ITEM FAMI3 U(02,00,60) = [0]; 
        ITEM FAMI4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$FILE [0:0] S(4); 
        BEGIN 
        ITEM FILE1 U(00,00,60) = [X"46494C450000000"]; # FILE          #
        ITEM FILE2 U(01,00,60) = [0]; 
        ITEM FILE3 U(02,00,60) = [0]; 
        ITEM FILE4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$HOST [0:0] S(4); 
        BEGIN 
        ITEM HOST1 U(00,00,60) = [X"484F53540000000"]; # HOST          #
        ITEM HOST2 U(01,00,60) = [0]; 
        ITEM HOST3 U(02,00,60) = [0]; 
        ITEM HOST4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$LOCF [0:0] S(4); 
        BEGIN 
        ITEM LOCF1 U(00,00,60) = [X"4C4F43414C5F464"]; # LOCAL_F(I)    #
        ITEM LOCF2 U(01,00,60) = [X"94C450000000000"]; # (I)LE         #
        ITEM LOCF3 U(02,00,60) = [0]; 
        ITEM LOCF4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$INPU [0:0] S(4); 
        BEGIN 
        ITEM INPU1 U(00,00,60) = [X"494E50555400000"]; # INPUT         #
        ITEM INPU2 U(01,00,60) = [0]; 
        ITEM INPU3 U(02,00,60) = [0]; 
        ITEM INPU4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$MODE [0:0] S(4); 
        BEGIN 
        ITEM MODE1 U(00,00,60) = [X"4D4F44450000000"]; # MODE          #
        ITEM MODE2 U(01,00,60) = [0]; 
        ITEM MODE3 U(02,00,60) = [0]; 
        ITEM MODE4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$NAME [0:0] S(4); 
        BEGIN 
        ITEM NAME1 U(00,00,60) = [X"4E414D450000000"]; # NAME          #
        ITEM NAME2 U(01,00,60) = [0]; 
        ITEM NAME3 U(02,00,60) = [0]; 
        ITEM NAME4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$NEWF [0:0] S(4); 
        BEGIN 
        ITEM NEWF1 U(00,00,60) = [X"4E45575F46494C4"]; # NEW_FIL(E)    #
        ITEM NEWF2 U(01,00,60) = [X"55F4E414D450000"]; # (E)_NAME      #
        ITEM NEWF3 U(02,00,60) = [0]; 
        ITEM NEWF4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$OUTP [0:0] S(4); 
        BEGIN 
        ITEM OUTP1 U(00,00,60) = [X"4F5554505554000"]; # OUTPUT        #
        ITEM OUTP2 U(01,00,60) = [0]; 
        ITEM OUTP3 U(02,00,60) = [0]; 
        ITEM OUTP4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$PARA [0:0] S(4); 
        BEGIN 
        ITEM PARA1 U(00,00,60) = [X"504152414D45544"]; # PARAMET(E)    #
        ITEM PARA2 U(01,00,60) = [X"552530000000000"]; # (E)RS         #
        ITEM PARA3 U(02,00,60) = [0]; 
        ITEM PARA4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$PASS [0:0] S(4); 
        BEGIN 
        ITEM PASS1 U(00,00,60) = [X"50415353574F524"]; # PASSWOR(D)    #
        ITEM PASS2 U(01,00,60) = [X"400000000000000"]; # (D)           #
        ITEM PASS3 U(02,00,60) = [0]; 
        ITEM PASS4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$PROJ [0:0] S(4); 
        BEGIN 
        ITEM PROJ1 U(00,00,60) = [X"50524F4A4543540"]; # PROJECT       #
        ITEM PROJ2 U(01,00,60) = [0]; 
        ITEM PROJ3 U(02,00,60) = [0]; 
        ITEM PROJ4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$REMF [0:0] S(4); 
        BEGIN 
        ITEM REMF1 U(00,00,60) = [X"52454D4F54455F4"]; # REMOTE_(F)    #
        ITEM REMF2 U(01,00,60) = [X"6494C4500000000"]; # (F)ILE        #
        ITEM REMF3 U(02,00,60) = [0]; 
        ITEM REMF4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$STAT [0:0] S(4); 
        BEGIN 
        ITEM STAT1 U(00,00,60) = [X"535441545553000"]; # STATUS        #
        ITEM STAT2 U(01,00,60) = [0]; 
        ITEM STAT3 U(02,00,60) = [0]; 
        ITEM STAT4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$TYPE [0:0] S(4); 
        BEGIN 
        ITEM TYPE1 U(00,00,60) = [X"545950450000000"]; # TYPE          #
        ITEM TYPE2 U(01,00,60) = [0]; 
        ITEM TYPE3 U(02,00,60) = [0]; 
        ITEM TYPE4 U(03,00,60) = [0]; 
        END 
  
      ARRAY NAME$USER [0:0] S(4); 
        BEGIN 
        ITEM USER1 U(00,00,60) = [X"555345520000000"]; # USER          #
        ITEM USER2 U(01,00,60) = [0]; 
        ITEM USER3 U(02,00,60) = [0]; 
        ITEM USER4 U(03,00,60) = [0]; 
        END 
  
# 
****  END OF DEFS REQUIRED FOR DEFINING COMMANDS AND PARAMETERS *** 
# 
  
      ITEM CMDNUM        I;       # CURRENT INDEX INTO CDT             #
      ITEM DIND          I;       # DESTINATION INDEX                  #
      ITEM PARNUM        I;       # CURRENT INDEX INTO PDT             #
      ITEM TCMDNUM       I;       # TEMPORARY INDEX INTO CDT           #
      CONTROL EJECT;
# 
*     DEFS USED AS MACROS IN THE CODE 
# 
      DEF SETUP 
         #CMDNUM = 0; 
          PARNUM = 0#;
  
      DEF CSETUP (CNUM, ABRV, SIZE) 
         #CMDNUM = CMDNUM + 1;
          DIND = 0; 
          P<TBUF> = LOC(CDT$NAMEN[CMDNUM]); 
          NETUCAS(ABRV, 0, SIZE, TBUF, DIND); 
          CDT$SIZE[CMDNUM] = SIZE;
          CDT$CNUM[CMDNUM] = CNUM#; 
  
      DEF CSETUP2 (LNAME, LSIZE)
         #DIND = 0; 
          P<TBUF> = LOC(CNT$NAMEN[CMDNUM]); 
          NETUCAS (LNAME, 0, LSIZE, TBUF, DIND);
          CNT$SIZE[CMDNUM] = LSIZE; 
          CDT$PPTR[CMDNUM] = 0; 
          CDT$PSIZ[CMDNUM] = 0#;
  
      DEF PSETUP (ABRV, SIZE, TYPE, REQD) 
         #PARNUM = PARNUM + 1;
          DIND = 0; 
          P<TBUF> = LOC(PDT$NAMEN[PARNUM]); 
          NETUCAS (ABRV, 0, SIZE, TBUF, DIND);
          PDT$SIZE[PARNUM] = SIZE;
          PDT$TYPE[PARNUM] = TYPE;
          PDT$REQD[PARNUM] = REQD#; 
  
      DEF PSETUP2 (LNAME, LSIZE)
         #IF CDT$PSIZ[CMDNUM] EQ 0
          THEN
            BEGIN 
            CDT$PPTR[CMDNUM] = PARNUM;
            END 
          CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDNUM] + 1;
          DIND = 0; 
          P<TBUF> = LOC(PNT$NAMEN[PARNUM]); 
          NETUCAS (LNAME, 0, LSIZE, TBUF, DIND);
          PNT$SIZE[PARNUM] = LSIZE#;
      CONTROL EJECT;
# 
*     START MAIN PROCEDURE
# 
      SETUP;                           # INITIALIZE VARIABLES          #
      NETUCLR (LOC(CDT$NAMEN[1]), CDTSIZ$ * DTSIZ$);
      NETUCLR (LOC(CNT$NAMEN[1]), CNTSIZ$ * NTSIZ$);
      NETUCLR (LOC(PDT$NAMEN[1]), PDTSIZ$ * DTSIZ$);
      NETUCLR (LOC(PNT$NAMEN[1]), PNTSIZ$ * NTSIZ$);
# 
*     C O M M A N D S   S T A R T   H E R E 
# 
# 
*     APPEND_FILE   LOCAL_FILE = <FILE> 
*                   REMOTE_FILE = <NAME>
*                   STATUS = <NAME> 
# 
      CSETUP (CMDAPPF, ABRV$APPF, 4); 
      CSETUP2 (NAME$APPF, 11);
        PSETUP (ABRV$LOCF, 2, PTFILE, RQYES); 
        PSETUP2 (NAME$LOCF, 10);
        PSETUP (ABRV$REMF, 2, PTNAME, RQNO);
        PSETUP2 (NAME$REMF, 11);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_AUTO_LOGIN_MODE   MODE = <BOOLEAN> 
*                              STATUS = <NAME>
# 
      CSETUP (CMDCHAALM, ABRV$CHAALM, 6); 
      CSETUP2 (NAME$CHAALM, 22);
        PSETUP (ABRV$MODE, 1, PTBOOLEAN, RQYES);
        PSETUP2 (NAME$MODE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_BELL_MODE   MODE = <BOOLEAN> 
*                        STATUS = <NAME>
# 
      CSETUP (CMDCHABM, ABRV$CHABM, 5); 
      CSETUP2 (NAME$CHABM, 16); 
        PSETUP (ABRV$MODE, 1, PTBOOLEAN, RQYES);
        PSETUP2 (NAME$MODE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_CODE_SET    CODE_SET = <KEYWORD> 
*                        STATUS = <NAME>
# 
      CSETUP (CMDCHACS, ABRV$CHACS, 5); 
      CSETUP2 (NAME$CHACS, 15); 
        PSETUP (ABRV$CODS, 2, PTKEYWORD, RQYES);
        PSETUP2 (NAME$CODS, 8); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_DEBUG_MODE   MODE = <BOOLEAN>
*                         STATUS = <NAME> 
# 
      CSETUP (CMDCHADM, ABRV$CHADM, 5); 
      CSETUP2 (NAME$CHADM, 17); 
        PSETUP (ABRV$MODE, 1, PTBOOLEAN, RQYES);
        PSETUP2 (NAME$MODE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_EXPRESSION_EVALUATION   MODE = <BOOLEAN> 
*                                    STATUS = <NAME>
# 
      CSETUP (CMDCHAEE, ABRV$CHAEE, 5); 
      CSETUP2 (NAME$CHAEE, 28); 
        PSETUP (ABRV$MODE, 1, PTBOOLEAN, RQYES);
        PSETUP2 (NAME$MODE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_FILE_NAME   FILE = <NAME>
*                        NEW_FILE_NAME = <NAME> 
*                        STATUS = <NAME>
# 
      CSETUP (CMDCHAFN, ABRV$CHAFN, 5); 
      CSETUP2 (NAME$CHAFN, 16); 
        PSETUP (ABRV$FILE, 1, PTNAME, RQYES); 
        PSETUP2 (NAME$FILE, 4); 
        PSETUP (ABRV$NEWF, 3, PTNAME, RQYES); 
        PSETUP2 (NAME$NEWF, 13);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_INPUT_FILE   INPUT = <FILE>
*                         STATUS = <NAME> 
# 
      CSETUP (CMDCHAIF, ABRV$CHAIF, 5); 
      CSETUP2 (NAME$CHAIF, 17); 
        PSETUP (ABRV$INPU, 1, PTFILE, RQYES); 
        PSETUP2 (NAME$INPU, 5); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_OUTPUT_FILE   OUTPUT = <FILE>
*                          STATUS = <NAME>
# 
      CSETUP (CMDCHAOF, ABRV$CHAOF, 5); 
      CSETUP2 (NAME$CHAOF, 18); 
        PSETUP (ABRV$OUTP, 1, PTFILE, RQYES); 
        PSETUP2 (NAME$OUTP, 6); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_PORT_COMMAND_MODE   MODE = <BOOLEAN> 
*                                STATUS = <NAME>
# 
      CSETUP (CMDCHAPCM, ABRV$CHAPCM, 6); 
      CSETUP2 (NAME$CHAPCM, 24);
        PSETUP (ABRV$MODE, 1, PTBOOLEAN, RQYES);
        PSETUP2 (NAME$MODE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_TRANSFER_TYPE   TYPE = <KEYWORD> 
*                            STATUS = <NAME>
# 
      CSETUP (CMDCHATT, ABRV$CHATT, 5); 
      CSETUP2 (NAME$CHATT, 20); 
        PSETUP (ABRV$TYPEP, 1, PTKEYWORD, RQYES); 
        PSETUP2 (NAME$TYPE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_VERBOSE_MODE   MODE = <BOOLEAN>
*                           STATUS = <NAME> 
# 
      CSETUP (CMDCHAVM, ABRV$CHAVM, 5); 
      CSETUP2 (NAME$CHAVM, 19); 
        PSETUP (ABRV$MODE, 1, PTBOOLEAN, RQYES);
        PSETUP2 (NAME$MODE, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CHANGE_WORKING_DIRECTORY   NAME = <NAME>
*                                STATUS = <NAME>
# 
      CSETUP (CMDCHAWD, ABRV$CHAWD, 5); 
      CSETUP2 (NAME$CHAWD, 24); 
        PSETUP (ABRV$NAME, 1, PTNAME, RQYES); 
        PSETUP2 (NAME$NAME, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CREATE_DIRECTORY   NAME = <NAME>
*                        STATUS = <NAME>
# 
      CSETUP (CMDCRED, ABRV$CRED, 4); 
      CSETUP2 (NAME$CRED, 16);
        PSETUP (ABRV$NAME, 1, PTNAME, RQYES); 
        PSETUP2 (NAME$NAME, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     CREATE_HOST_CONNECTION   HOST = <NAME>
*                              AUTO_LOGIN_MODE = <BOOLEAN>
*                              STATUS = <NAME>
# 
      CSETUP (CMDCREHC, ABRV$CREHC, 5); 
      CSETUP2 (NAME$CREHC, 22); 
        PSETUP (ABRV$HOST, 1, PTUNAME, RQYES);
        PSETUP2 (NAME$HOST, 4); 
        PSETUP (ABRV$AUTL, 3, PTBOOLEAN, RQNO); 
        PSETUP2 (NAME$AUTL, 15);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DEFINE_AUTO_LOGIN   HOST = <NAME> 
*                         USER = <NAME> 
*                         PASSWORD = <NAME> 
*                         FAMILY = <NAME> 
*                         ACCOUNT = <NAME>
*                         PROJECT = <NAME>
*                         STATUS = <NAME> 
# 
      CSETUP (CMDDEFAL, ABRV$DEFAL, 5); 
      CSETUP2 (NAME$DEFAL, 17); 
        PSETUP (ABRV$HOST, 1, PTUNAME, RQYES);
        PSETUP2 (NAME$HOST, 4); 
        PSETUP (ABRV$USERP, 1, PTNAME, RQYES);
        PSETUP2 (NAME$USER, 4); 
        PSETUP (ABRV$PASS, 2, PTNAME, RQNO);
        PSETUP2 (NAME$PASS, 8); 
        PSETUP (ABRV$FAMI, 1, PTNAME, RQNO);
        PSETUP2 (NAME$FAMI, 6); 
        PSETUP (ABRV$ACCO, 1, PTNAME, RQNO);
        PSETUP2 (NAME$ACCO, 7); 
        PSETUP (ABRV$PROJ, 1, PTNAME, RQNO);
        PSETUP2 (NAME$PROJ, 7); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DELETE_DIRECTORY   NAME = <NAME>
*                        STATUS = <NAME>
# 
      CSETUP (CMDDELD, ABRV$DELD, 4); 
      CSETUP2 (NAME$DELD, 16);
        PSETUP (ABRV$NAME, 1, PTNAME, RQYES); 
        PSETUP2 (NAME$NAME, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DELETE_FILE   NAME = <SCLNAME>
*                   STATUS = <NAME> 
# 
      CSETUP (CMDDELF, ABRV$DELF, 4); 
      CSETUP2 (NAME$DELF, 11);
        PSETUP (ABRV$NAME, 1, PTNAME, RQYES); 
        PSETUP2 (NAME$NAME, 4); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DELETE_HOST_CONNECTION   STATUS = <NAME>
# 
      CSETUP (CMDDELHC, ABRV$DELHC, 5); 
      CSETUP2 (NAME$DELHC, 22); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_COMMAND_INFORMATION   COMMAND = <NAME>
*                                   STATUS = <NAME> 
# 
      CSETUP (CMDDISCI, ABRV$DISCI, 5); 
      CSETUP2 (NAME$DISCI, 27); 
        PSETUP (ABRV$COMM, 1, PTUNAME, RQYES);
        PSETUP2 (NAME$COMM, 7); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_COMMAND_LIST_ENTRY   STATUS = <NAME>
# 
      CSETUP (CMDDISCLE, ABRV$DISCLE, 6); 
      CSETUP2 (NAME$DISCLE, 26);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_DIRECTORY   NAME = <NAME> 
*                         OUTPUT = <FILE> 
*                         STATUS = <NAME> 
# 
      CSETUP (CMDDISD, ABRV$DISD, 4); 
      CSETUP2 (NAME$DISD, 17);
        PSETUP (ABRV$NAME, 1, PTNAME, RQNO);
        PSETUP2 (NAME$NAME, 4); 
        PSETUP (ABRV$OUTP, 1, PTFILE, RQNO);
        PSETUP2 (NAME$OUTP, 6); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_FILE_NAMES   NAME = <NAME>
*                          OUTPUT = <FILE>
*                          STATUS = <NAME>
# 
      CSETUP (CMDDISFN, ABRV$DISFN, 5); 
      CSETUP2 (NAME$DISFN, 18); 
        PSETUP (ABRV$NAME, 1, PTNAME, RQNO);
        PSETUP2 (NAME$NAME, 4); 
        PSETUP (ABRV$OUTP, 1, PTFILE, RQNO);
        PSETUP2 (NAME$OUTP, 6); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_FTP_OPTIONS   STATUS = <NAME> 
# 
      CSETUP (CMDDISFO, ABRV$DISFO, 5); 
      CSETUP2 (NAME$DISFO, 19); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_LOCAL_HELP   STATUS = <NAME>
# 
      CSETUP (CMDDISLH, ABRV$DISLH, 5); 
      CSETUP2 (NAME$DISLH, 18); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_REMOTE_HELP   COMMAND = <NAME>
*                           STATUS = <NAME> 
# 
      CSETUP (CMDDISRH, ABRV$DISRH, 5); 
      CSETUP2 (NAME$DISRH, 19); 
        PSETUP (ABRV$COMM, 1, PTNAME, RQNO);
        PSETUP2 (NAME$COMM, 7); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     DISPLAY_WORKING_DIRECTORY   STATUS = <NAME> 
# 
      CSETUP (CMDDISWD, ABRV$DISWD, 5); 
      CSETUP2 (NAME$DISWD, 25); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     ELEVATE_WORKING_DIRECTORY   STATUS = <NAME> 
# 
      CSETUP (CMDELEWD, ABRV$ELEWD, 5); 
      CSETUP2 (NAME$ELEWD, 25); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     GET_FILE   REMOTE_FILE = <NAME> 
*                LOCAL_FILE = <FILE>
*                STATUS = <NAME>
# 
      CSETUP (CMDGETF, ABRV$GETF, 4); 
      CSETUP2 (NAME$GETF, 8); 
        PSETUP (ABRV$REMF, 2, PTNAME, RQYES); 
        PSETUP2 (NAME$REMF, 11);
        PSETUP (ABRV$LOCF, 2, PTFILE, RQNO);
        PSETUP2 (NAME$LOCF, 10);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     LOGIN_USER   USER = <NAME>
*                  PASSWORD = <NAME>
*                  FAMILY = <NAME>
*                  ACCOUNT = <NAME> 
*                  PROJECT = <NAME> 
*                  STATUS = <NAME>
# 
      CSETUP (CMDLOGU, ABRV$LOGU, 4); 
      CSETUP2 (NAME$LOGU, 10);
        PSETUP (ABRV$USERP, 1, PTNAME, RQYES);
        PSETUP2 (NAME$USER, 4); 
        PSETUP (ABRV$PASS, 2, PTNAME, RQNO);
        PSETUP2 (NAME$PASS, 8); 
        PSETUP (ABRV$FAMI, 1, PTNAME, RQNO);
        PSETUP2 (NAME$FAMI, 6); 
        PSETUP (ABRV$ACCO, 1, PTNAME, RQNO);
        PSETUP2 (NAME$ACCO, 7); 
        PSETUP (ABRV$PROJ, 1, PTNAME, RQNO);
        PSETUP2 (NAME$PROJ, 7); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     QUIT   ABORT = <BOOLEAN>
*            STATUS = <NAME>
# 
      CSETUP (CMDQUIT, ABRV$QUI, 3);
      CSETUP2 (NAME$QUIT, 4); 
        PSETUP (ABRV$ABOR, 1, PTBOOLEAN, RQNO); 
        PSETUP2 (NAME$ABOR, 5); 
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     REPLACE_FILE   LOCAL_FILE = <FILE>
*                    REMOTE_FILE = <NAME> 
*                    STATUS = <NAME>
# 
      CSETUP (CMDREPF, ABRV$REPF, 4); 
      CSETUP2 (NAME$REPF, 12);
        PSETUP (ABRV$LOCF, 2, PTFILE, RQYES); 
        PSETUP2 (NAME$LOCF, 10);
        PSETUP (ABRV$REMF, 2, PTNAME, RQNO);
        PSETUP2 (NAME$REMF, 11);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     SEND_FTP_COMMAND   COMMAND = <NAME> 
*                        PARAMETERS = <NAME>
*                        STATUS = <NAME>
# 
      CSETUP (CMDSENFC, ABRV$SENFC, 5); 
      CSETUP2 (NAME$SENFC, 16); 
        PSETUP (ABRV$COMM, 1, PTNAME, RQYES); 
        PSETUP2 (NAME$COMM, 7); 
        PSETUP (ABRV$PARA, 1, PTNAME, RQNO);
        PSETUP2 (NAME$PARA, 10);
        PSETUP (ABRV$STAT, 0, PTNAME, RQNO);
        PSETUP2 (NAME$STAT, 6); 
# 
*     C O M M A N D   A L I A S E S   S T A R T   H E R E 
# 
# 
*     APPEND_FILE ALIASES 
# 
      CSETUP (CMDAPPF, ABRV$APPEND, 6); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDAPPF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDAPPF]; 
      CSETUP (CMDAPPF, ABRV$APPE, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDAPPF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDAPPF]; 
# 
*     CHANGE_BELL_MODE ALIASES
# 
      CSETUP (CMDCHABM, ABRV$BELL, 4);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHABM];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHABM];
# 
*     CHANGE_CODE_SET ALIASES 
# 
      CSETUP (CMDCHACS, ABRV$CODS, 5);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHACS];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHACS];
# 
*     CHANGE_DEBUG_MODE ALIASES 
# 
      CSETUP (CMDCHADM, ABRV$DEBUG, 5); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHADM];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHADM];
# 
*     CHANGE_FILE_NAME ALIASES
# 
      CSETUP (CMDCHAFN, ABRV$RENAME, 6);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHAFN];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHAFN];
# 
*     CHANGE_PORT_COMMAND_MODE ALIASES
# 
      CSETUP (CMDCHAPCM, NAME$SENP, 8); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHAPCM]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHAPCM]; 
# 
*     CHANGE_TRANSFER_TYPE ALIASES
# 
      CSETUP (CMDCHATT, ABRV$TYPEC, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHATT];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHATT];
# 
*     CHANGE_VERBOSE_MODE ALIASES 
# 
      CSETUP (CMDCHAVM, ABRV$VERBOSE, 7); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHAVM];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHAVM];
# 
*     CHANGE_WORKING_DIRECTORY ALIASES
# 
      CSETUP (CMDCHAWD, ABRV$CD, 2);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHAWD];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHAWD];
      CSETUP (CMDCHAWD, ABRV$CWD, 3); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCHAWD];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCHAWD];
# 
*     CREATE_DIRECTORY ALIASES
# 
      CSETUP (CMDCRED, ABRV$MKDIR, 5);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCRED]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCRED]; 
      CSETUP (CMDCRED, ABRV$MKD, 3);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCRED]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCRED]; 
# 
*     CREATE_HOST_CONNECTION ALIASES
# 
      CSETUP (CMDCREHC, ABRV$OPEN, 4);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDCREHC];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDCREHC];
# 
*     DELETE_DIRECTORY ALIASES
# 
      CSETUP (CMDDELD, ABRV$RMDIR, 5);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDELD]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDELD]; 
      CSETUP (CMDDELD, ABRV$RMD, 3);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDELD]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDELD]; 
# 
*     DELETE_FILE ALIASES 
# 
      CSETUP (CMDDELF, ABRV$DELETE, 6); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDELF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDELF]; 
      CSETUP (CMDDELF, ABRV$DELE, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDELF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDELF]; 
# 
*     DELETE_HOST_CONNECTION ALIASES
# 
      CSETUP (CMDDELHC, ABRV$CLOSE, 5); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDELHC];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDELHC];
# 
*     DISPLAY_DIRECTORY ALIASES 
# 
      CSETUP (CMDDISD, ABRV$DIR, 3);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISD]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISD]; 
      CSETUP (CMDDISD, ABRV$LIST, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISD]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISD]; 
# 
*     DISPLAY_FILE_NAMES ALIASES
# 
      CSETUP (CMDDISFN, ABRV$LS, 2);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISFN];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISFN];
      CSETUP (CMDDISFN, ABRV$NLST, 4);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISFN];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISFN];
# 
*     DISPLAY_FTP_OPTIONS ALIASES 
# 
      CSETUP (CMDDISFO, ABRV$STATUS, 6);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISFO];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISFO];
# 
*     DISPLAY_LOCAL_HELP ALIASES
# 
      CSETUP (CMDDISLH, ABRV$HELP, 4);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISLH];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISLH];
# 
*     DISPLAY_REMOTE_HELP ALIASES 
# 
      CSETUP (CMDDISRH, NAME$REMH, 11); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISRH];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISRH];
# 
*     DISPLAY_WORKING_DIRECTORY ALIASES 
# 
      CSETUP (CMDDISWD, ABRV$PWD, 3); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDDISWD];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDDISWD];
# 
*     ELEVATE_WORKING_DIRECTORY ALIASES 
# 
      CSETUP (CMDELEWD, ABRV$CDUP, 4);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDELEWD];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDELEWD];
# 
*     GET_FILE ALIASES
# 
      CSETUP (CMDGETF, ABRV$GET, 3);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDGETF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDGETF]; 
      CSETUP (CMDGETF, ABRV$RECV, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDGETF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDGETF]; 
      CSETUP (CMDGETF, ABRV$RETR, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDGETF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDGETF]; 
# 
*     LOGIN_USER ALIASES
# 
      CSETUP (CMDLOGU, ABRV$USERC, 4);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDLOGU]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDLOGU]; 
# 
*     QUIT ALIASES
# 
      CSETUP (CMDQUIT, ABRV$BYE, 3);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDQUIT]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDQUIT]; 
      CSETUP (CMDQUIT, ABRV$Q, 1);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDQUIT]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDQUIT]; 
# 
*     REPLACE_FILE ALIASES
# 
      CSETUP (CMDREPF, ABRV$PUT, 3);
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDREPF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDREPF]; 
      CSETUP (CMDREPF, ABRV$SEND, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDREPF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDREPF]; 
      CSETUP (CMDREPF, ABRV$STOR, 4); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDREPF]; 
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDREPF]; 
# 
*     SEND_FTP_COMMAND ALIASES
# 
      CSETUP (CMDSENFC, ABRV$QUOTE, 5); 
        CDT$PPTR[CMDNUM] = CDT$PPTR[CMDSENFC];
        CDT$PSIZ[CMDNUM] = CDT$PSIZ[CMDSENFC];
  
      RETURN;                          # RETURN TO CALLER              #
  
      END                              # FCSIICT                       #
  
      TERM
