*DECK TSBASIC 
      PROC TSBASIC; 
      BEGIN 
      CONTROL STEXT;
  
  
           #   COMMON BLOCK TO COMMUNICATE BETWEEN THE SYNTAX          #
           # ANALYSIS MODULES IN OVERLAYS 1-X AND THE EXECUTION        #
           # MODULES FOR USE, INSERT, UPDATE, MOVE, IF, DELETE         #
       COMMON CBASIC; 
        BEGIN 
            ITEM  INDEX;     # JUMP INDEX TO THE PROC TO EXECUTE IN THE#
                             # CURRENT PRIMARY OVERLAY.                #
                             # OVERLAY 5-0                             #
                               #      0  UNUSE ( FOR OWNCODE )       #
                             #       1 USE                             #
                             #       2 QULOAD                          #
                             #       3 EXECUTE                         #
            ITEM  DIRCODE C(1);  # DIRECTIVE CODE, USED BY THE OWNCODE
                               ROUTINES AND IN THE LOGFILE RECORDS. 
                                   0 USE     1 DISPLAY
                                   2 DELETE  3 DELETE USING 
                                   4 INSERT  5 INSERT USING 
                                   6 UPDATE  7 UPDATE USING 
                                   8 STOP    9 OTHERS                  #
      ITEM REFERFILE;    # FLAG FOR AREA FILE REFERENCE IN 4,0 #
                         #  0 = NO REFERENCE,  1 = READ,       #
                         #  77B = WRITE ON FILE                #
      ITEM BASTABLOC;   # ADDRESS OF BASICTABLE # 
      ITEM BASCPTR;  # POINTER TO CURRENT BASICTABLE #                  006250
      ITEM BASTABIND;    # INDEX INTO BASICTABLE #
                                   # AN ENTRY FOR EACH POSSIBLE -SAME- #
      ARRAY SAME [1:3] S(1);       # 1 = IF, 2 = DISPLAY, 3 = USING    #
        BEGIN 
        ITEM SAMUSED B(0,00,01);   # TRUE IF THIS DIR USED -SAME-      #
        ITEM SAMLEN  U(0,24,18);   # CHAR LENGTH OF -SAME- LIST        #
        ITEM SAMADDR U(0,42,18);   # ADDRESS OF -SAME- LIST            #
        ITEM SAMWD   U(0,00,60);   # WHOLE WORD                        #
        END 
  
      ITEM SAMINIF B;              # TRUE WHEN -IF- CONDITION INCLUDES #
                                   # -SAME-, IN WHICH CASE NEW -SAME-  #
                                   # LIST MUST BE ADDED ON TO OLD      #
          ITEM IFRSLTLOC; 
      ITEM IFFLAG B;       # TRUE WHEN -IF- IS IN EFFECT #              006330
      ITEM USINGFLAG B;    # TRUE WHEN -USING- SEEN #                   006340
      ITEM WRTRECD B;      # TRUE WHEN MOVE SHOULD WRITE REC #          006350
      ITEM FILEPASS B;   # TRUE IF FILE PASS REQUIRED IN 4,0 #          005020
      ITEM KEYLIT;   # SET TO BASICTABLE POINTER IF A KEY WAS # 
                     # SPECIFIED FOR INS/UPD/DEL, OVERRIDES FILEPASS #
      ITEM AREAORG;  # FILE ORGANIZATION FOR AREA FILE #
      ITEM VERAREATBL I;           # ADDRESS OF AREA TABLE OF AREA WITH#
                                   # ACTIVE VERIFY LIST                #
      ITEM VERIBUF;          # ADDRESS OF VERIFY BUFFER # 
            ITEM  RECORDLENGTH; 
                             # CHARACTER LENGTH OF CURRENT AREA RECORD #
            ITEM  AREALOC;   # ADDRESS OF FIT FOR AREA                 #
           ITEM SCANALLAREA B;                                          002970
           ITEM WCURRENT I;  # CURRENT WRD ADDR FOR CALL TO NEXTGET#    002980
           ITEM IFKEYLOC I;  # ADDRESS OF IFKEY TABLE#                  002990
          ITEM CCOMLOC;      #ADDRESS OF COMMON BLOCK /CCOMMON/        #000140
            # THE FOLLOWING ARE BOOLEAN ITEMS WITH THE VALUE 0 WHEN THE#
            # CONDITION IS FALSE. NOT 0 WHEN THE CONDITION IS TRUE     #
  
            ITEM  MODPERM B; # MODIFY PERMISSION HAS BEEN GRANTED ORNOT#
            ITEM LOGKEYSIZE; # KEY LENGTH IN CHARACTERS ROUNDED UP TO 
                               NEAREST MULTIPLE OF 10 (TO SPEED UP
                               LOGGING ROUTINES)                       #
      ITEM DATALOC; 
           ITEM TORECORDLOC;
           ITEM IFFROMFLAG B; 
      ITEM ACCESSES;               # NO. RECRDS OR RECORD SETS ACCESSED#
      ITEM HITS;                   # NO. RECORDS THAT MET QUERY OR     #
                                   # UPDATE CRITERIA                   #
      ITEM IOS;                    # NO. GETS OR GETNS FOR CURRENT DIR.#
      ITEM OWNREJ;      # NO. RECORDS REJECTED BY OWNCODE # 
      ITEM OWNFORCD;    # NO. RECORDS FORCED BY OWNCODE # 
           ITEM DESPASS B;
          ITEM HASNOKEY B;
      ITEM BITINDEX;
      ITEM RTBLLOC; 
      ITEM KEYLIST; #ADDRESS OF KEY LIST RETURNED BY BLP# 
      ITEM KEYFILE U; #LFN OF KEY FILE RETURNED BY BLP# 
                    #0=NO KEY FILE IN USED# 
      ITEM AKEY B;                 # TRUE IF XMISSN (OR GROUP OF       #
                                   # XMISSNS, IF XMISSNS JOINED BY *IF*#
                                   # OR *UPDATE*) CONTAINS *IF         #
                                   # ALTERNATE KEY* OR *IF MAJOR       #
                                   # ALTERNATE KEY*                    #
      ITEM PKEY B;                 # TRUE IF XMISSN (OR GROUP OF       #
                                   # XMISSNS, IF XMISSNS JOINED BY *IF*#
                                   # OR *UPDATE*) CONTAINS *IF PRIMARY #
                                   # KEY* OR *IF MAJOR PRIMARY KEY*    #
      ITEM DISUPD; #1=DISPLAY, 2=UPDATE#
      ITEM ONEAKEY B;              # TRUE IF XMISSN CONTAINS *IF* ON   #
                                   # EXACTLY ONE ALTERNATE KEY.  THE   #
                                   # SAME ALT KEY MAY BE REFERENCED    #
                                   # MORE THAN ONCE                    #
      ITEM USIPTR I;               # ADDRESS OF ELEMENTARY ENTRY OF    #
                                   # SEARCH KEY SPEC IN *USING* CLAUSE #
        END 
      END 
      TERM
