*DECK POINTERS
      PROC POINTERS;
      BEGIN 
#                                                                      #
#                      P O I N T E R S                                 #
#                                                                      #
#  THIS PROC CONTAINS BASED ARRAYS, ITEMS, ETC., USED IN QU.           #008300
#  THESE ARE ALL EXTERNAL DEFINITIONS SO THAT THEY WILL APPEAR IN THE  #
#  LOAD MAP AND CROSS REFERENCE LISTING.                               #
#                                                                      #
#**********************************************************************#
#  THE FOLLOWING ITEMS AND ARRAYS ARE USED IN PROCESSING THE LIST      #
#  OF LOCAL FILES.                                                     #
  
      XDEF ITEM LFNLIST I =0;      # POINTER TO FIRST TABLE IN THE     #
                                   # LFN LIST.                         #
      XDEF ITEM CURRENTLFPTR;      # POINTER TO LFN TABLE CURRENTLY    #
                                   # IN USE.                           #
      XDEF ITEM UPONLFN   C(07);   # LFN OF UPON FILE                  #
      XDEF ITEM FRMLFN C(7);       # LFN OF -FROM- OR -KEY IN- FILE    #
      XDEF ITEM FROMKEYINFIT I;    # ADDRESS OF *FROM* OR *KEY IN* FIT #
      XDEF BASED ARRAY LFNINFO;;   # ONE ENTRY IN THE LFN LIST.        #
      XDEF BASED ARRAY DESPTR;;    # ARRAY HOLDING POINTER TO DESCRIBE #
                                   # LIST AND COUNT OF USERS OF LIST.  #
      XDEF ITEM SAVELFNAME C(10);  # THIS HOLDS THE LOCAL FILE NAME    #
                                   # WHICH IS CURRENTLY IN USE.        #
      XDEF ITEM DESLIST;           # POINTER TO FIRST WORD IN A        #
                                   # DESCRIBE LIST.                    #
      XDEF ITEM DEFLIST;           # POINTER TO FIRST WORD IN A DEFINE #
                                   # LIST.                             #
      XDEF ITEM SPELIST;           # POINTER TO FIRST WORD IN A SPECIFY#
                                   # LIST.                             #
  
#  END OF ITEMS AND ARRAYS USED IN LFN PROCESSING.                     #
#**********************************************************************#
  
  
                                   #-----------------------------------#
                                   # FLAGS AND POINTERS FOR            #
                                   # THE 1-5 AND 5-X OVERLAYS          #008500
  
                                   # POINTERS TO THE TEMP FDB(S)       #
      XDEF ITEM  TAREA1;           # POINTER TO THE AREA  FDB          #
      XDEF ITEM  TAREA2;           # POINTER TO THE INDEX FDB          #
      XDEF ITEM  TAREA3;           # POINTER TO THE SUB SCHEMA FDB     #
      XDEF ITEM  TAREA4;           # POINTER TO FIRST BLOCK OF THE     #
                                   # RELATION STRING                   #
      XDEF ITEM  TAREA4X;          # POINTER THE THE CURRENT BLOCK     #
                                   # IN THE RELATION STRING            #
      XDEF ITEM  TAREA5;           # POINTER TO SUBSCHEMA NAME         # POINTER
      XDEF ITEM  TRELINDX;         # INDEX TO THE NEXT POSITION IN     #
                                   # THE RELATION STRING               #
      XDEF ITEM  USEDIR B;         # TRUE IF USE / FALSE IF CREATE     # POINTER
      XDEF ITEM  VERDIR B;         # TRUE IF VERSION                   # POINTER
      XDEF ITEM  CDCSCAT B;        # TRUE IF CDCS VERSION              # POINTER
      XDEF ITEM  CDCSDBM B;        # TRUE IF CDCS USE/CREATE           # POINTER
      XDEF ITEM  SBSCKSM I;        # CHECKSUM OF SUBSCHEMA IN USE      # POINTER
      XDEF ITEM  MODIFYFLAG  B;    # MODIFY KEYWORD FOUND              #
      XDEF ITEM  INDEX$PFP  B;     # PF PARAMS GIVEN WITH INDEX NAME   #
      XDEF ITEM  INVOKED B;        # TRUE IF AN -INVOKE- IN EFFECT     #008700
      XDEF ITEM  IOFLAG I;         # 0 - SUBSCHEMA BEING READ BY CRM   #008800
                                   # 1 - SUBSCHEMA BEING READ BY       #008900
                                   #     DIRECTORY ACCESS ROUTINES     #009000
      XDEF ITEM  PFPTR I;          # PTR TO PF PARAM CHANGE TABLE      #008500
      XDEF ITEM  VERSBSCHPTR I;    # POINTER TO 1ST AREA TABLE (SBS)   #009100
                                   # IF IN CDCS CATALOG MODE           #009200
      XDEF ITEM  AREATBLPTR;       # POINTER TO THE FIRST AREA TABLE   #
      XDEF ITEM  RELATBLPTR;       # POINTER TO FIRST RELATION TABLE   #
      XDEF BASED ARRAY DBSTAT;;    # DATA BASE STATUS BLOCK            #
                                   # POINTER TO THE SUB-SCHEMA FIT     #
      XDEF BASED ARRAY  SCHEMAFIT;; 
                                   #-----------------------------------#
  
  
      XDEF ITEM VIAPOINT;          # POINTER TO RELATION TABLE ENTRY   #
                                   # FOR RELATION SPECIFIED IN LAST    #
                                   # VIA DIRECTIVE                     #
  
      XDEF ITEM LIT$GROUPID I = 0; # CMM GROUP ID FOR LITERAL SPACE    #
  
      XDEF ITEM SM$GROUPID;        # GROUP ID OF CMM BLOCKS ALLOCATED  #
                                   # FOR A DIRECTIVE.                  #
      XDEF ITEM CATBLPTR I;        # PTR TO BASED ARRAY *CATABLE*      #
      XDEF ITEM CATGORD I;         # IF CDCS CATALOG MODE, AREA ORDINAL#
                                   # OF CATALOG FILE                   #
      XDEF ITEM CATRORD I;         # IF CDCS CATALOG MODE, RECORD      #009400
                                   # ORDINAL OF CATALOG FILE           #009500
      XDEF ARRAY CPAKORD;;         # IF CDCS CATALOG MODE, ITEM AND    #009600
                                   # RECORD ORDINALS OF CATALOG FILE   #009700
      XDEF ITEM SBSCADD I;         # FWA OF SUBSCHEMA WITHIN SUBSCHEMA #
                                   # LIBRARY                           #
      XDEF BASED ARRAY RUSLIST;;   # RELATION USAGE LIST               #
      XDEF ITEM CDCSUP B = TRUE;   # TRUE IF ACTUALLY CALL CDCS        #
  
      XDEF ITEM CURRELATION =O"37777777777777777777"; 
      XDEF ITEM DBVNAME C(7);      # DATABASE VERSION NAME             #
  
                                   # FLAGS TO TURN DIRECTORY ON/OFF    #
      XDEF ARRAY DIRECTFLAG;       # FOR DISPLAY AND EXTRACT COMMANDS  #
        BEGIN 
        ITEM DIROVRIDE U(00,00,02)=[0];# OVERRIDE OF -DISPDIR/EXTRDIR- #
        ITEM DISPDIR B(00,02,01)=[TRUE]; # CONTROLS DISPLAY DIRECTORY  #
        ITEM EXTRDIR B(00,03,01)=[TRUE]; # CONTROLS EXTRACT DIRECTORY  #
        ITEM DIRONOFF  B(00,04,01);    # TRUE IF DIRECTORY REQUESTED   #
        END 
      XDEF ITEM RECNAM I;          # RECORD DIRECTORY WORD ADDRESS     #
      XDEF ITEM SRECNAM I;         # *SAME* RECORD DIRECTORY WORD ADDR #
      XDEF ITEM LOOKORDER I = 0;   # CODE INDICATING DATANAME LOOKUP   #
                                   # ORDER ...                         #
                                   #   0 - DESCRIBED FILES FIRST       #
                                   #   1 - DESCRIBED FILES ONLY        #
                                   #   2 - DATABASE FIRST              #
                                   #   3 - DATABASE ONLY               #
      XDEF ITEM LOWRELATION I;     # ORDINAL OF LOWEST RELATION IN USE,#
                                   # STARTING WITH 1. SET IN -RELSCAN-.#
      XDEF ITEM PFLAG;             # PREVIEW FLAG FOR *REPORT*         #
      XDEF ITEM PREDBVN C(7);      # PREVIOUS DATABASE VERSION NAME    #
      XDEF ITEM RESTRNO;           # NUMBER OF RESTRICTS.              #
      XDEF ITEM RESTARTPTR;        # PTR TO START OF RESTRICT STRING.  #
      XDEF ITEM RESTACKLOC;        # PTR TO PRGM STACK FOR RESTRICT.   #
      XDEF ITEM RESTRICTPROC B;    # TRUE--PROCESSING RESTRICT.        #
      XDEF ITEM SAVEQUIWSA;        # SAVES POINTER TO QUIWSA           #
      XDEF ITEM SAVEQURL;          # SAVES QUIRL.                      #
      XDEF ITEM SAVESEP C(10);     # SAVES CURRENT SEPARATOR.          #
      XDEF ITEM SAVEREFER;         # SAVES VALUE OF REFERFILE.         #
      XDEF ITEM SAVEDTYPE;         # USED TO HOLD -DATATYPE- ON A -KEY-#
                                   # DIRECTIVE.                        #
      XDEF ITEM SAVEBASLOC;        # SAVES POINTER TO BASICTABLE.      #
      XDEF ITEM SAVECLP I;         # SAVE OF CURRENT LF PTR.           #
                                   # USED WHILE PROCESSING RESTRICTS.  #
  
      XDEF BASED ARRAY RESLIST;;   # RESTRICT CHARACTER STRING.        #
      XDEF ITEM RSTKLEN;           # LENGTH OF RESTRICT STRING.        #
      XDEF ITEM LOWAREA I;         # ORDINAL OF AREA (IN -SAVDAREA-)   #
                                   # THAT IS USED BY -LOWRELATION-.    #
      XDEF ITEM RECDORD I;         # RECORD ORDINAL USED AS INDEX INTO #
                                   # KEY$TBL.  HAS VALUES 1 TO M FOR   #
                                   # EACH AREA IN CONTRACT TO SUBSCHEMA#
                                   # RECORD ORDINAL WHICH HAS VALUES   #
                                   # 1 TO N FOR THE ENTIRE SUBSCHEMA.  #
      XDEF ITEM ATPTR I;           # P<AREA$TABLE> AT CALL TO *NEXTGET*#
                                   # OR *CALLOWN* OR, IF SINGLE AREA   #
                                   # UPDATE OR QUERY IN CDCS DATA BASE #
                                   # MODE, AT CALL TO *CTL50*.         #
      XDEF ITEM UPDTEMP B;
      XDEF ITEM UPDATEAREA B = FALSE;   # TRUE IF -UPDATE AREANAME- WAS#
                                        # PROCESSED. FALSE IF NO       #
                                        # -UPDATE AREANAME-.           #
      XDEF ITEM SCANNING B;        # TRUE IF DOING A -SCAN- FUNCTION.  #
      XDEF ITEM NEWNAME B;         # TRUE--RENAME IN -EXTRACT-.        #
      XDEF ITEM OLDNAMELG;         # HOLDS OLD FIELDNAMELG.            #
      XDEF ITEM TEMPTBLPTR;        # PTR TO AREA TABLE IN WHICH AN ITEM#
                                   # WAS FOUND--SET IN -DATANAM-.      #
      XDEF ITEM LOWSTKENTRY;       # ORDINAL OF ENTRY IN PROGSTACK THAT#
                                   # APPLIES TO THE LOW AREA.          #
      XDEF ITEM CURRVIANUM;        # PATH BIT NUMBER SPECIFIED BY      #
                                   # CURRENT -VIA-.                    #
      XDEF ITEM CURRELLOC;         # ADDRESS OF CURRENT RELATION TABLE.#
      XDEF ITEM UPDATING B =FALSE; # TRUE--UPDATE OPERATION BEING      #
                                   # PROCESSED.                        #
      XDEF ITEM TARGETAREA I = 0;  # WILL HOLD AREA TABLE LOCATION FOR #
                                   # THE AREA WE ARE TO UPDATE         #
      XDEF BASED ARRAY SAVDAREA;;  # ARRAY USED TO HOLD ADDRESSES OF   #
                                   # AREA TABLES BEING USED.           #
        XDEF BASED ARRAY ORDSAVE;;  # ARRAY USED TO HOLD ORDINALS TO   #
                                   # AREA TABLE ADDRESSES IN SAVDAREA.# 
                                    # THESE ORDINALS ARE IN ALPHABETIC #
                                    # ORDER BY LFN.  ORDSAVE IS BUILD  #
                                    # IN -STKSCAN- AND USED IN -CTL40-.#
      XDEF ITEM TEMPSTKPTR I;      # POINTER TO COPY OF PROGRAMSTACK   #
                                   # USED BY -IFKEY-, CREATED IN CHK40.#
      XDEF ITEM SORTUNIQUE B;      # TRUE MEANS THAT SORT SHOULD ONLY  #
                                   # OUTPUT UNIQUE RECORDS.            #
      XDEF ITEM DBP$FWA I = 0;     # POINTER TO FWA OF LOADED DBP-S.   #
      XDEF ITEM DBP$NAM C(7) = " ";  # NAME OF DBP WE CALL (DIAG INFO) #
      XDEF ITEM IDIRCODE I = 0;    # INTEGER VALUE OF DIRECTIVE CODE   #
      XDEF ITEM CURANY = 1; 
      XDEF ITEM SLOPERF      B = TRUE;  # SLOW PERFORM IF TRUE         #
      XDEF ITEM DEFCAT       B = FALSE;  # TRUE IF DEFAULT CATALOG     #
                                   # HAS BEEN INITIALIZED              #
  
      XDEF ITEM MODCAT       B = FALSE;  # TRUE IF CATALOG FILE WAS    #
                                         # MODIFIED SINCE LAST CLOSE.  #
  
      XDEF ITEM JOBNAME C(10);     # JOBNAME BY WHICH THE JOB IS KNOWN #
                                   # IN THE SYSTEM DAYFILE.            #
      XDEF BASED ARRAY REPORTLIST;;  # POINTER WORD FOR LIST OF HIGH   #
                                     # CORE REPORT TABLES DURING A     #
                                     #  *PREPARE/PREVIEW/COMPILE*.     #
      XDEF ITEM REP I = -1;        # NUMBER OF REPORTS TO PREPARE      #
      XDEF ITEM SAVEAD I = 0;      # POINTER TO GET/FREE CM BLOCK      #
      XDEF ITEM SLVL I = 0;        # NUMBER OF REPORTS                 #
      XDEF ITEM SILFN I = 0;       # MAIN REPORT NAME                  #
      XDEF ITEM SLFNLG I = 0;      # MAIN REPORT NAME LENGTH           #
      XDEF ARRAY RPTS [9] S(3);;   # REPORT FILE INFORMATION           #
      XDEF ARRAY AKT$TBL [0:0] S(1);;  # DESCRIPTION OF SINGLE ALTERNT #
                                       # KEY USED FOR RECORD RETRIEVAL #
      XDEF ITEM RO B = FALSE;      # READ ONLY MODE FLAG               #
      XDEF ITEM TRANSLG I = 0;     # ITEM TO HOLD TRANSMISSION LENGTH  #
      XDEF ITEM DIAGABT  B=FALSE;  # TRUE IF ABORTED ON FATAL DIAG     #
      XDEF ITEM FATALCT  I=0;      # COUNT OF FATAL DIAGNOSTICS        #
      XDEF ITEM FATFLAG  B=FALSE;  # TRUE IF LAST DIAG WAS FATAL       #
      XDEF ITEM UPROCESSED B=FALSE;  # TRUE IF DONT ABORT ON FATAL DIAG#
      XDEF ITEM AFPROCESSED B=FALSE;  # TRUE IF WILL ACCEPT UPDATED    #
                                      # UNCLOSED FILE                  #
      XDEF ITEM USECONVERT B = FALSE;  # *CONVERT* CALLED BY *USINGEX* # QU3A094
      XDEF ITEM ANYAREAITEM B;     # TRUE IF *SETTING* OR *SMMOVE* LIST#
                                   # CONTAINS AN AREA ITEM             #
      XDEF ITEM SEARCHKEY B;       # TRUE IF SEARCH KEY FOUND          #
      XDEF ITEM PROMTYPE I;        # QU PROMPT/POSITION INDICATOR      #
  
#     ANOTHER FUNCTION SERVED BY POINTERS IS TO PRESET THE ASSOCIATIVE #
#     VECTORS IN /VECTOR/ AND GUARANTEE THAT IT RESIDES IN (0,0)       #
  
      CONTROL PRESET; 
  
*CALL VECTORS 
  
      END 
      TERM; 
