*DECK EVAL
USETEXT TENVIRN 
USETEXT TXSTD 
      PROC EVAL;
  
#----------------------------------------------------------------------#
#                                                                      #
#  THE FOLLOWING PROCS ARE XDEF"D WITHIN THIS DECK:                    #
#                                                                      #
#     EVAL                         COMMON PROCESSING FOR MOVE/EVALUATE #
#                                                                      #
#----------------------------------------------------------------------#
  
      BEGIN 
  
      XDEF BASED ARRAY AA S(2); 
      ITEM EVBEF U(0,24,18),
           EVAFT U(0,42,18),
           MVBEF U(1,24,18),
           MVAFT U(1,42,18);
      XDEF ITEM AANDX        I;    # INDEX IN BASED ARRAY *AA*. SET BY #
                                   # *EVAPTR3* IN *BEFAFT*.            #
      XDEF ITEM AFTER        B;    # FLAG FOR MOVE/EVAL *AFTER*        #
      XDEF ITEM ALL          B;    # FLAG FOR *ALL* IN THE MOVE/EVAL   #
      XDEF ITEM DIRPTR       I;    # POINTER TO THE DIRECTIVE ENTRY    #
      XDEF ITEM MVFLAG       B;    # TRUE FOR MOVE, FALSE FOR EVALUATE #
      XDEF ITEM NOSEL        B;    # FLAG FOR *NO SELECT*              #
       DEF DFTRPWD #O"40000000000001000000"#;  #DEFAULT VALUE FOR 
                                                REPORTLIST WORD 1,
                                                BEYOND IS ON, 
                                                LINE NB IS 1# 
         DEF DFTRPWD2 #O"04010000000000000000"#;
  
      XDEF ITEM TBLA         I; 
  
  
  
#----------------------------------------------------------------------#
  
  
  
  
# BEGINNING OF EXECUTABLE CODE FOR   E V A L                           #
#                                                                      #
          BEGIN 
          IF RECORDFLAG            # IF RECORDING                      #
          THEN
            BEGIN 
            STDNO;
            END 
          IF NOT FULLSYNTX THEN STDNO;
        IF NOT MVFLAG THEN
        BEGIN 
              IF AFTER THEN 
          EVAFT[AANDX] = TBLA;
              ELSE
          EVBEF[AANDX] = TBLA;
        END 
        ELSE
        BEGIN 
          IF AFTER THEN 
          MVAFT[AANDX] = TBLA;
          ELSE
          MVBEF[AANDX] = TBLA;
        END 
              DIRPTR = 0; 
          STDNO;
          END 
  
  
  
  
#----------------------------------------------------------------------#
  
  
      END 
      TERM
