*DECK CKOVLY
USETEXT TENVIRN 
USETEXT TXSTD 
      PROC CKOVLY;
  
#----------------------------------------------------------------------#
#                                                                      #
#  THE FOLLOWING PROCS ARE XDEF"D WITHIN THIS DECK:                    #
#                                                                      #
#     CKOVLY                       STDYES IF IN PROPER SECONDARY FOR   #
#                                  THIS MOVE/EVALUATE DIRECTIVE. ELSE  #
#                                  RETURN THROUGH STDNO.               #
#                                                                      #
#----------------------------------------------------------------------#
  
      BEGIN 
  
      XREF ITEM IMFDBM B;          # TRUE IF IN IMF DATABASE MODE      #
      DEF MOVEVAL$OVL  #O"07"#;    # SECONDARY OVERLAY LEVEL FOR THE   #
                                   # BASIC *MOVE*/*EVALUATE* DIRECTIVE #
      DEF QUIMF$OVL    #O"60"#;    # SECONDARY OVERLAY LEVEL FOR       #
                                   # DIRECTIVES IN QU/IMF MODE         #
  
  
  
  
  
  
#----------------------------------------------------------------------#
#                                                                      #
#    EXECUTABLE CODE FOR    C K O V L Y                                #
#                                                                      #
#  THIS ROUTINE CHECKS THE OVERLAY LEVEL FOR *MOVE*/*EVALUATE*. SINCE  #
# EACH OF THESE DIRECTIVES LEADS A DUAL LIFE (REPORT SPECIFICATION VS. #
# BASIC DIRECTIVE), THIS ROUTINE IS USED TO ENSURE EACH IS PROCESSED IN#
# THE PROPER OVERLAY. THE KEYWORDS *BEFORE* AND *AFTER*, IF PRESENT IN #
# *NEXWORD*, INDICATE A REPORT FORMAT SPECIFICATION DIRECTIVE. ALL     #
# OTHER CASES MUST BE HANDLED BY THE BASIC DIRECTIVE SYNTAX.           #
#                                                                      #
# THIS ROUTINE RETURNS THROUGH *STDYES* IF THIS IS THE CORRECT OVERLAY,#
# ELSE THROUGH *STDNO* TO INDICATE AN OVERLAY SWAP MUST OCCUR.         #
  
      BEGIN 
      IF NLXNUM[0] EQ O"542"       # IF NEXWORD IS *AFTER*             #
        OR NLXNUM[0] EQ O"543"     # OR NEXWORD IS *BEFORE*            #
      THEN
        BEGIN 
        STKFLAG = TRUE;            # THIS IS A REPORT DIRECTIVE        #
        END 
  
      ELSE
        BEGIN 
        STKFLAG = FALSE;           # THIS IS NOT A REPORT DIRECTIVE    #
        IF IMFDBM                  # IF IN IMF DATABASE MODE           #
        THEN
          BEGIN 
          CP2B[0] = QUIMF$OVL;     # SET SECONDARY OVERLAY LEVEL FOR   #
          END                      # DIRECTIVES IN QU/IMF MODE         #
        ELSE
          BEGIN 
          CP2B[0] = MOVEVAL$OVL;   # SET SECONDARY OVERLAY LEVEL FOR   #
          END                      # BASIC -MOVE/EVALUATE- OVERLAY     #
        END 
      IF SECONDARY EQ CP2B[0]      # IF IN PROPER OVERLAY              #
      THEN
        BEGIN 
        STDYES;                    # IN PROPER OVERLAY. GOOD RETURN    #
        END 
  
      ELSE
        BEGIN 
        STDNO;                     # IN WRONG OVERLAY. BAD RETURN      #
        END 
      END 
  
  
  
  
#----------------------------------------------------------------------#
  
  
      END 
      TERM
