*COMDECK SYMPL00
CONTROL NOLIST;                    # *CALL XSTD FOLLOWS                #
*CALL XSTD
CONTROL LIST; 
  
#----------------------------------------------------------------------#
#                                                                      #
#     S Y N I N I T                                                    #
#                                                                      #
# THIS PROC MUST BE CALLED WHEN THIS OVERLAY IS LOADED. IT TELLS *STD* #
# VIA EXTERNALS ABOUT THE LOCATIONS OF THE NEW SYNTAX TABLES AND SWITCH#
# VECTOR JUST LOADED.                                                  #
  
      XDEF PROC SYNINIT;
      PROC SYNINIT; 
      BEGIN 
      XREF ARRAY LBLPTRS;;         # ARRAY XDEFFED IN SYNGEN DECK      #
      XREF ARRAY LEXICON;;         # ARRAY XDEFFED IN SYNGEN DECK      #
      XREF ARRAY LEXWORDS;;        # ARRAY XDEFFED IN SYNGEN DECK      #
      XREF ARRAY SYNTBLE;;         # ARRAY XDEFFED IN SYNGEN DECK      #
  
  
      PLBLPTRS = LOC(LBLPTRS);
      PLEXICON = LOC(LEXICON);
      PLEXWORDS = LOC(LEXWORDS);
      PSYNTBLE = LOC(SYNTBLE);
      PSWVECTR = LOC(SWVECTR);
  
#----------------------------------------------------------------------#
#                                                                      #
#     B E G I N    O P T I O N A L    D E B U G    C O D E             #
#                                                                      #
*IF DEF,DEBUG 
*CALL  DEBUGCOM 
*ENDIF
#     E N D    O F    O P T I O N A L    D E B U G    C O D E          #
#                                                                      #
#----------------------------------------------------------------------#
  
      RETURN; 
      END 
  
CONTROL EJECT;
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   C T L                              #
                                #                                      #
      XREF PROC STOPEXEC;       # TERMINATE QU EXECUTION               #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #     C U M F U N C                    #
                                #                                      #
      XREF PROC CUMFUN;         # SAVE CUMULATIVE FUNCTION CODE        #
      XREF PROC CUMFUPM;        # BUILD CUMULATIVE FUNCTION PARAMETERS #
                                #                                      #
                                #--------------------------------------#
  
  
                                                                         QU3A334
                                #--------------------------------------# QU3A334
                                #                                      # QU3A334
                                # FOLLOWING ROUTINES ARE CONTAINED IN  # QU3A334
                                #                                      # QU3A334
                                #     C U R T T                        # QU3A334
                                #                                      # QU3A334
      XREF PROC CURTT;          # FETCH ATTRIBUTES OF CURRENT REGISTERS# QU3A334
                                #                                      # QU3A334
                                #--------------------------------------# QU3A334
                                                                         QU3A334
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   D A T A N A M                      #
                                #                                      #
      XREF PROC CHKDLUP;        # GO TO STDNO IF CALLED FROM DEL-UP-SYN#
      XREF PROC FIGSUBS;        # ANALYZES USE OF FIGURATIVE SUBSCRIPT.#
      XREF PROC GETAREANAME;    # GETS NAME GIVEN IN UPDATE AREANAME   #
      XREF PROC GETNAME;        # CHECKS CURWORD AGAINST DEF-DESC LISTS#
      XREF PROC INTSUBS;        # STORE INTEGER ITEM SUBSCRIPT         #
      XREF PROC ITMNAM;         # STORE ITEM NAME IN FIELDNAME TABLE   #
      XREF PROC NEWATTRIB;      # SETS FLAGS FOR RENAMING BY -AS-      #
      XREF PROC RESETNAM;       # RESET FIELDNAME TABLE                #
      XREF PROC STORLIT;        # STORES LIT AND RETURNS DESCRIPTION.  #
      XREF PROC SUBSCRIPT;      # ANALYZES USE OF NUMERIC SUBSCRIPT.   #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   E X P A N A L                      #
                                #                                      #
      XREF PROC CHKLOGOPFLAG;   # DUPLICATE MISSING PARTS OF A RELATION#
      XREF PROC CONDINIT;       # INITIALIZES FOR CONDITION ANALYSIS.  #
      XREF PROC ENDABEXPR;      # COMPLETES ARITH/BOOL EXPR ANALYSIS.  #
      XREF PROC ENDCOND;        # COMPLETES CONDITION ANALYSIS.        #
      XREF PROC ENDEXPRESS;     # COMPLETES EXPRESSION ANALYSIS.       #
      XREF PROC EXPRESSDATA;    # STACKS DATA ENTRY ON DATA STACK.     #
      XREF PROC EXPRINIT;       # INITIALIZES FOR EXPRESSION ANALYSIS. #
      XREF PROC FUNCPARAM;      # ANALYZES PARAMETER USE IN FUNCTIONS. #
      XREF PROC FUNCTION;       # STACKS FUNCTION OR REGISTER OP       #
      XREF PROC IFSAME;         # FETCHES PROGRAMSTACK OF PREVIOUS *IF*#
      XREF PROC LOGOP;          # STACKS LOGICAL OP ON OP STACK.       #
      XREF PROC NOTOP;          # STACKS "NOT" OPERATOR ON OP STACK.   #
      XREF PROC OPENPAREN;      # STACKS ( ON OPERATOR STACK.          #
      XREF PROC OPERAND;        # COMPLETES STACK ENTRIES FOR FUNCTION.#
      XREF PROC OPERATOR;       # MANAGES OPERATOR STACK BY PRECEDENCE.#
      XREF PROC RECSAME;        # *NO* IF RECORDING THE *SAME*         #
      XREF PROC RELOP;          # STACKS RELATIONAL OP ON OP STACK.    #
      XREF PROC STKOPNDSAVED;   # DUPLICATE MISSING HALF OF A RELATION.#
      XREF PROC UNARYOP;        # STACKS UNARY MINUS ON OPERATOR STACK.#
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   H E L P S Y N                      #
                                #                                      #
      XREF PROC DIAFULL;        # *DIAG,FULL* SEMANTICS                #
      XREF PROC DIAPART;        # *DIAG,PART* SEMANTICS                #
      XREF PROC HELP;           # CALLS *PDT* TO PROCESS DIAGNOSTIC    #
      XREF PROC PLUGARY;        # SAVE LEXICAL ID FOR *HELP*           #
      XREF PROC PLUGD;          # SAVE DIAGNOSTIC NUMBER FOR *HELP*    #
                                # (HELP) TEXT.                         #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #      P E R E X E C                   #
                                #                                      #
      XREF PROC PERBEGIN;       # BEGIN OR CONTINUE A *PERFORM*        #
      XREF PROC PERCKDM;        # CHECK IF DUMMY *PERFORM*             #
      XREF PROC PEREND;         # ERROR - ERASE ALL -PERFORM- SESSIONS #
      XREF PROC PERINIT;        # INITIALIZE -PERFORM- BUFFERS         #
      XREF PROC PERNEXT;        # GET NEXT SESSION  FOR -PERFORM-      #
      XREF PROC TSVETO;         # PERFORM - WRITE OUT VETO MSG/REPLY   #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   R P T E X I T                      #
                                #                                      #
      XREF PROC RPTCLR;         # CLEARS *RPTFLAG*, STDNO.             #
      XREF PROC RPTEXIT;        # CALLS *PRINTPS* FOR A *COMPILE*.     #
                                # CLEARS RPTFLAG (END OF BUILDING TBLS)#
                                # DETECTS EMPTY REPORT (RETURN TO STDNO#
                                # AFTER FREEING SPACE ALLOCATED).      #
                                # SETS PRIMARY OVERLAY LEVEL FOR THE   #
                                # OVERLAY THAT WILL USE THE TABLES.    #
                                # SETS SECONDARY OVERLAY LEVEL FOR     #
                                # RE-ENTRY TO SYNTAX IN (1,1) IN CASE  #
                                # OF MULTIPLE REPORTS.                 #
                                # CALLS *EXIT10* TO LOAD THE OVERLAY   #
      XREF PROC RPTSET;         # SETS *RPTFLAG*, STDNO.               #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   S T D                              #
                                #                                      #
      XREF PROC STD$RETURN;     # RETURN TO CALLER OF *STD$START*      #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   S T K O U T                        #
                                #                                      #
      XREF PROC STKOUT;         # TO RECORD DIRECTIVE ON CATALOG       #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   S T X 0 0                          #
                                #                                      #
      XREF PROC CHKTEMP;        # *NO* IF OLDTYPE = 7777B, ELSE *YES*  #
      XREF PROC CHK40;          # EOT PROCESSING + OVL SELECTION       #
      XREF PROC ENDBASC;        # *NO* IF BASIC FILEPASS DIRECTIVE WAS #
                                # RECEIVED.                            #
      XREF PROC RLSBASC;        # RELEASE MEMORY OF BASIC TABLES       #
      XREF PROC UPDMODE;        # TESTS IF READ-ONLY MODE IS ON.       #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
                                #--------------------------------------#
                                #                                      #
                                # FOLLOWING ROUTINES ARE CONTAINED IN  #
                                #                                      #
                                #   S Y N T A X                        #
                                #                                      #
      XREF PROC CALLIO;         # READ NEXT TRANSMISSION FROM THE      #
                                # APPROPRIATE SOURCE.                  #
      XREF PROC CHKIFLG;        # *YES* IF CURRENT XMISSN PRECEDED BY  #
                                # FALSE *IF* CONDITION                 #
      XREF PROC CHKLFN;         # *YES* IF LEGAL LFN, ELSE *NO*        #
      XREF PROC CHKNAME;        # *YES* IF NEXT WORD IS A DATANAME     #
      XREF PROC CHKNOTE;        # SAME AS $NOTE EXCEPT SUCCESS DOES NOT#
                                # ADVANCE NEXWORD TO CURWORD           #
      XREF PROC CHKNXID;        # TEST IF NEXT WORD IS A  DIRECTIVE    #
      XREF PROC CLRFLGS;        # CLEAR FUNCTION AND REGISTER FLAGS    #
      XREF PROC CLRNEXT;        # CLEAR FLAGS FOR FALSE *IF* AND STAND-#
                                # ALONE *IF*                           #
      XREF PROC CLRPARM;        # CLEAR FUNCTION PARAMETER FLAG        #
      XREF PROC CRECFLG;        # *NO* IF RECORDING, ELSE *YES*        #
      XREF PROC IFRPTD;         # *YES* IF THIS DIRECTIVE WAS A REPORT #
                                # DIRECTIVE, ELSE *NO*                 #
      XREF PROC INCREM;         # STORES VALUE OF INCREMENT FOR        #
                                # *RECORDING/DUPLICATE*                #
      XREF PROC ISIT77;         # CHECK FOR USER DIRECTIVE *WHERE* OR  #
                                # INTERNAL DIRECTIVE                   #
      XREF PROC LOAD1X;         # LOAD THE (1,X) OVERLAY FOR THIS DIR  #
      XREF PROC RPTSYN;         # STDYES IF *RPTFLAG* SET, ELSE STDNO  #
      XREF PROC SAMEOVL;        # *NO* IF *KEYTEST*, ELSE SET IT TRUE  #
                                # AND *YES*                            #
      XREF PROC SAVCP1A;        # SAVES PART OF THE CURRENT P1 IN      #
                                # LFNINDEX AND *NO*                    #
      XREF PROC SETDIRX;        # PICK UP TYPEALOW, LEXID FOR DIRECTIVE#
      XREF PROC SETPARM;        # FLAG THAT DATANAME IS FUNCTION PARAM #
      XREF PROC SPLACFG;        # SET *PLACEFLAG* TO 77B INDICATING A  #
                                # NON-RECORDABLE DIRECTIVE             #
      XREF PROC STKINIT;        # TO INITIALIZE DIRECTIVE STACKING     #
      XREF PROC WRDIRT;         # LIST ERRONEOUS DIRECTIVE FOR USER    #
                                #                                      #
                                #--------------------------------------#
  
  
  
  
#----------------------------------------------------------------------#
#                                                                      #
#  IT IS NOW THE RESPONSIBILITY OF THE CALLING DECK TO PROVIDE THE     #
# FOLLOWING SECTIONS TO COMPLETE THIS SYNTAX INTERFACE DECK.           #
#                                                                      #
#  FIRST, A LIST OF ALL THE PROCS WHICH ARE XREFFED BY THE SWITCH      #
# VECTOR...LISTED BY THE DECK IN WHICH THEY ARE CONTAINED, AND ORDERED #
# ALPHABETICALLY WITHIN THAT LIST. ALL PROCS LISTED IN THE SUB-NN DECKS#
# MUST BE XREFFED.                                                     #
#                                                                      #
# AFTER THE XREFS, THE SWITCH VECTOR MUST BE DEFINED. ITS NAME IS      #
# *SWVECTR*, AND MUST BE FOLLOWED BY A  *CALL,SUB-NN WHICH WILL FORM   #
# THE SWITCH IDENTICAL TO THAT IN THE SYNGEN DECK FOR THIS OVERLAY.    #
# THE SWITCH VECTOR IS ACTUALLY A LABEL FOLLOWED BY A SERIES OF PROC   #
# CALLS. THE LABEL IS USED BY *STD* AS THE ZERO WORD IN THE LIST OF    #
# *SYMPL* GENERATED *RJ*S TO THE PROCS IN THE SUB-NN DECK. *STD* USES  #
# A *SYNGEN* GENERATED ORDINAL INTO THIS LIST FOR SUBROUTINE CALLS FROM#
# THE SYNTAX SECTIONS.                                                 #
#                                                                      #
# THE SWITCH VECTOR IS THEN FOLLOWED BY AN *END* AND A *TERM* TO       #
# COMPLETE THIS DECK.                                                  #
#                                                                      #
#----------------------------------------------------------------------#
