########## GENERALIZED UPDATE, 1401 SOURCE                                      
01010          JOB  GENERALIZED FILE UPDATE, INITALIZE                     GENUP
01020          CTL  6611                                                   GENUP
01030          SEQNC                                                       GENUP
0104081        DCW  @!@                                                    GENUP
01050          INDEX                                                       GENUP
01060          ORG  101                                                    GENUP
01070CONTRL    DA   1X20                                                   GENUP
01080RL             8,10                                                   GENUP
01090HEADER         11,20                                                  GENUP
01100          DA   4X5                                                    GENUP
01110LOC            3                                                      GENUP
01120LN             4,5                                                    GENUP
01130          ORG  336                                                    GENUP
01140          DCW  @!@                                                    GENUP
01150START     R                                                           GENUP
01160          C    7,@CONTROL@        Q. CONTROL CARD                     GENUP
01170          BU   ERROR                                                  GENUP
01180NOCTL     EQU  *&1                                                    GENUP
02010          MRCM 1,201                                                       
02020          WCSCS1                                                      GENUP
02030          MRCM 1,CONTRL                                               GENUP
02040          SW   1,4                                                    GENUP
02050          SW   6                                                      GENUP
02060*                                                                     GENUP
02070FLDST     A    LN&X2,X1           INITIALIZE FOR COMPARES             GENUP
02080          SW   6&X1                                                   GENUP
02090          SBR  COMPR&6&X3,5&X1                                        GENUP
02100          MN   LOC&X2,COMPR&3&X3                                      GENUP
02110          MN                                                          GENUP
02120          MLC                                                         GENUP
02130          SBR  X2,5&X2                                                GENUP
02140          SBR  X3,17&X3                                               GENUP
02150          BCE  SVCOL,COMPR&X3,M                                       GENUP
02160          BCE  *&5,LN&X2,                                             GENUP
02170          B    FLDST                                                  GENUP
02180          MLCWABUP&4,COMPR&4&X3                                       GENUP
02190SVCOL     SBR  MOVE&3,5&X1                                            GENUP
02200          MZ   @K@,MOVE&2                                             GENUP
02210          A    *-6,RL                                                 GENUP
02220          MN   RL,QEOB&6                                              GENUP
02230          MN                                                          GENUP
02240          MLC                                                         GENUP
               S    X2&1                                                        
03010*                                                                     GENUP
03020* INITIALIZE TAPES                                                    GENUP
03030*                                                                     GENUP
03040          RWD  1                                                      GENUP
03050          RWD  2                                                      GENUP
03060          B    COPY                                                   GENUP
03070          R                                                           GENUP
               RT   1,IOAREA                                                    
               BEF  LTM                                                         
               BSP  1                                                           
03080          B    GETBLK                                                 GENUP
     LTM       WTM  2                                                           
               B    GETBLK                                                      
01010          JOB  GENERALIZED FILE UPDATE, PROCESS                       GENUP
04010*                                                                     GENUP
04020* WRITE LAST BLOCK, READ NEXT BLOCK                                   GENUP
04030*                                                                     GENUP
04040WTAPE2    WT   2,IOAREA           WRITE BLOCK                         GENUP
04050          BER  TAPERR                                                 GENUP
04060          BEF  ERROR                                                  GENUP
04070EOF2      EQU  *&1                                                    GENUP
04090          B    GETBLK                                                 GENUP
04100NOISE     A    *-6,NOISEC         COUNT NOISE RECORDS                 GENUP
04110GETBLK    RT   1,IOAREA           READ BLOCK                          GENUP
04120          SBR  X1                                                     GENUP
04130          BEF  EOT1               Q. EOF                              GENUP
04140          BCE  NOISE,IOAREA&11,!  Q. NOISE RECORD                     GENUP
04150          CHAIN11                                                     GENUP
04160          B    *&9                                                    GENUP
04170          RT   1,IOAREA                                               GENUP
04180          BER  TAPERR             Q. RED ERROR                        GENUP
04185          SBR  X3,IOAREA-1                                            GENUP
04190          SW   15999&X1           FIRST TIME ONLY MAKE GM-WM.         GENUP
04200          MLC  @N@,*-10                                               GENUP
04210          BWZ  QPAD9,15999&X1,1   Q. WLR                              GENUP
04220          B    ERROR                                                  GENUP
04230WLR       EQU  *&1                                                    GENUP
05002*                                                                     GENUP
05004* GET NEXT RECORD TO PROCESS                                          GENUP
05006*                                                                     GENUP
05010SCAN9     MLC  X3,X1              FIRST CHAR OF RECORD WAS 9, SCAN    GENUP
05020          SBR  X1,1&X1             FOR ALL 9S.                        GENUP
05030          BCE  *-14,1&X1,9                                            GENUP
05040          BCE  GETREC&7,1&X1,\                                        GENUP
05050          B    QPAD9&8                                                GENUP
05060GETREC    A    *-6,RECNT          COUNT PROCESSED INPUT RECORD        GENUP
05070QEOB      BCE  WTAPE2,0&1&X3,!    Q. END BLOCK, 0 IS RECORD LENGTH    GENUP
05080          SBR  X3                 SET TO NEXT RECORD OF BLOCK         GENUP
05090QPAD9     BCE  SCAN9,1&X3,9       Q. PADDING                          GENUP
06010*                                                                     GENUP
06020* RECORD IS AVAILABLE, TEST FOR UPDATE                                GENUP
06030*                                                                     GENUP
06040LCSW      NOP  GETREC             EOF CARD SWITCH                     GENUP
06050COMPR     C    0&X3,*             Q. FIELD 1 EQUAL                    GENUP
06060          BH   GETREC                                                 GENUP
06070          BL   SEQER                                                  GENUP
06080          C    0&X3,*                      2                          GENUP
06090          BH   GETREC                                                 GENUP
06100          BL   SEQER                                                  GENUP
06110          C    0&X3,*                      3                          GENUP
06120          BH   GETREC                                                 GENUP
06130          BL   SEQER                                                  GENUP
06140          C    0&X3,*                      4                          GENUP
06150          BH   GETREC                                                 GENUP
06160          BL   SEQER                                                  GENUP
07010*                                                                     GENUP
07020* RECORD IS TO BE UPDATED                                             GENUP
07030*                                                                     GENUP
07040UPDATE    MLC  5,X2               LENGTH DATA PLUS COLUMN DATA        GENUP
07060          MN   3,MOVE&6                                               GENUP
07070          MN                                                          GENUP
07080          MLC                                                         GENUP
07090MOVE      MLC  0&X2,0&X3          MOVE FROM CARD TO TAPE              GENUP
08010*                                                                     GENUP
08020* GET NEXT UPDATE                                                     GENUP
08030*                                                                     GENUP
08040READC     BLC  EOFC                                                   GENUP
               R                                                                
               BCE  EOFC,1,,                                                    
               B    COMPR                                                       
08060EOFC      MLC  @B@,LCSW                                               GENUP
08070          B    GETREC                                                      
08080*                                                                     GENUP
08090* UNMATCHED INPUT                                                     GENUP
08100*                                                                     GENUP
08110SEQER     MRCM 1,201                                                  GENUP
08120          MLC  @SEQ ER OR UNMATCHED@,300                              GENUP
08130          WCSCS,READC                                                 GENUP
01010          JOB  GENERALIZED FILE UPDATE, EOJ AND SUBROUTINES           GENUP
09010*                                                                     GENUP
09020* END OF INPUT TAPE                                                   GENUP
09030*                                                                     GENUP
09040EOT1      WTM  2                                                      GENUP
09050          B    COPY                                                   GENUP
09060          WTM  2                                                      GENUP
09070          RWD  2                                                      GENUP
09080          RWU  1                                                      GENUP
09090          BCE  ERROR,LCSW,N       Q. UNPROCESSED INPUT                GENUP
09100UNPRO     EQU  *&1                                                    GENUP
               MCS  RECNT,220                                                   
               WCSCS1,,@RECORDS@,228                                            
               MCS  NOISEC,220                                                  
               BCE  NONSE,220,                                                  
               WCSCS,,@NOISE RECORDS@,234                                       
               CC   1                                                           
     NONSE     BLC  ERROR                                                       
09130EOJ       EQU  *&1                                                    GENUP
               SBR  X1,1                                                        
     CWRD      CW   0&X1                                                        
               BCE  *&12,X1-1,8                                                 
               SBR  X1,1&X1                                                     
               B    CWRD                                                        
               BCE  SORT7,2,                                                    
               SW   1                                                           
               B    1                                                           
     SORT7     SORT7                                                            
0363 *                                                                     PAYAB
10010TAPERR    SBR  COMAND&16          TAPE ERROR ROUTINE                  GENUP
10020          SBR  *&4                                                    GENUP
10030          C    *,COMAND&13                                            GENUP
10040          C                                                           GENUP
10050          MLC                                                         GENUP
10060          MLNS COMAND&17,COMAND&18                                    GENUP
10070          MLNS COMAND&3,BACKSP&3                                      GENUP
10080REPEAT    A    *-6,COMAND&18                                          GENUP
10090          C    COMAND&18,COMAND&17                                    GENUP
10100          BU   *&7                                                    GENUP
10110          H                                                           GENUP
10120          BSS  COMAND&13,G                                            GENUP
10130BACKSP    BSP  1                                                      GENUP
10140          BCE  COMAND,COMAND&7,R                                      GENUP
10150          BL   COMAND                                                 GENUP
10160          SKP  1                                                      GENUP
10170COMAND    NOP  *,*,*                                                  GENUP
10180          BER  REPEAT                                                 GENUP
10190          B    *                                                      GENUP
10200          DCW  7                                                      GENUP
10210          DCW  @ @                                                    GENUP
11010*                                                                     GENUP
     * COPY 80 OR 120 CHAR HEADER OR TRAILER LABEL                              
11030*                                                                     GENUP
11040COPY      SBR  COPYX&3                                                GENUP
11050          C    HEADER,BLK10#10    Q. DOES TAPE HAVE LABELS            GENUP
11060          BE   COPYX                                                  GENUP
11070          RT   1,201              READ LABEL                          GENUP
11080          BER  TAPERR                                                 GENUP
11090          BEF  ERROR                                                  GENUP
11100EOFER     EQU  *&1                                                         
               BCE  L120,321,!                                                  
11120          BCE  *&5,281,!          Q. 80 CHAR LABEL                    GENUP
11130          B    ERROR                                                  GENUP
11140LBN80     EQU  *&1                                                    GENUP
11160          SW   281                                                    GENUP
               B    LW                                                          
     L120      SW   321                                                         
11170LW        WT   2,201                                                  GENUP
11180          BER  TAPERR                                                 GENUP
11190          WCSCSS                                                      GENUP
11200COPYX     B    *                                                      GENUP
12010*                                                                     GENUP
12020* PRINT ERROR MESSAGE AND HALT                                        GENUP
12030*                                                                     GENUP
12040          DCW  @UNDEFINED ERROR@                                      GENUP
12050ERRORU    DCW  #3                                                          
11110          ICODEDCW,@TM INSTEAD OF TAPE LABEL@,,EOFER                       
11150          ICODEDCW,@TAPE LABEL NOT 80 CHAR@,,LBN80                         
09140          ICODEDCW,@END OF JOB@,,EOJ                                       
09110          ICODEDCW,@NOTE UNPROCESSED INPUT@,,UNPRO                    GENUP
04240          ICODEDCW,@A WLR HAS BEEN READ@,,WLR                              
04080          ICODEDCW,@SHORT OUTPUT TAPE@,,EOF2                          GENUP
01190          ICODEDCW,@NO CONTROL CARD@,,NOCTL                           GENUP
12070ERROR     SBR  ERRORU                                                 GENUP
12080          SBR  X3,ERROR&3                                             GENUP
12090ERROR2    C    15997&X3                                               GENUP
12100          SBR  X3                                                     GENUP
12110          C    0&X3,ERRORU                                            GENUP
12120          BU   ERROR2                                                 GENUP
12130          MLC  15997&X3,260                                           GENUP
12140          WCSCSA                                                      GENUP
12150          H    *-3                                                    GENUP
12160*                                                                     GENUP
12170* CONSTANTS                                                           GENUP
12180*                                                                     GENUP
12190BUP       BIN  UPDATE,                                                GENUP
     NOISEC    DCW  #4                                                          
     RECNT     DCW  #6                                                          
12200          LTORG*                                                      GENUP
12   IOAREA    EQU  *&1                                                    GENUP
12             END  START                                                  GENUP
