*DECK TABS
USETEXT TOPTION 
USETEXT TREPORT 
USETEXT TXSTD 
      PROC TABS;
  
#----------------------------------------------------------------------#
#                                                                      #
#  THE FOLLOWING PROCS ARE XDEF"D WITHIN THIS DECK:                    #
#                                                                      #
#     INITAB                       INITIALIZE TABS TO ZERO             #
#     TABEX                        SET A FLAG FOR THIS TAB             #
#                                                                      #
#----------------------------------------------------------------------#
  
      BEGIN 
  
      ITEM I            I;         # SCRATCH TEMPORARY                 #
      ITEM J            I;         # SCRATCH TEMPORARY                 #
  
      XREF PROC DIAG;              # ISSUE DIAGNOSTIC MESSAGE TO USER  #
  
  
  
  
#----------------------------------------------------------------------#
  
  
  
  
      XDEF PROC INITAB; 
      PROC INITAB;    # TO CLEAR ALL TABS  #
      BEGIN 
          TAB[0]=0;  TAB[1]=0;  TAB[2]=0;  STDNO; 
      END 
  
  
  
  
#----------------------------------------------------------------------#
  
  
  
  
      XDEF PROC TABEX;
      PROC TABEX; 
      BEGIN 
      IF ICWI[5] GR MAXCOL         # IF COLUMN NO. FOR TAB TOO LARGE   #
        OR ICWI[5] LS 1            # OR COLUMN NO. FOR TAB TOO SMALL   #
      THEN
        BEGIN 
        DIAG(107,ICW[0],MAXCOL);   # DIAG COLUMN NO. OUTSIDE LIMITS    #
        STDNO;                     # BAD RETURN                        #
        END 
  
      I = ICWI[5] / 60;            # SET BIT IN TAB ARRAY              #
      J = ICWI[5] - 60 * I; 
      IF B<J,1>TAB[I] NQ 0         # IF DUPLICATE TAB POSITION         #
      THEN
        BEGIN 
        DIAG(951);                 # PRINT WARNING MSG INDICATING      #
                                   # DUPLICATES ARE IGNORED            #
        STDNO;                     # NORMAL RETURN                     #
        END 
      B<J,1>TAB[I] = 1; 
      STDNO;                       # NORMAL RETURN                     #
      END  #TABEX#
  
  
  
  
#----------------------------------------------------------------------#
  
  
      END 
      TERM
