UNSAVE867

(George Source)

Macros used: ALTLEN, ALTLENG, BC, BS, BXE, BXL, CHANBLOK, CHJOBLOCK, CLOSE, COOR3, ENRING, ERASE, FCAJO, FILECOUNT, FJOBLOCK, FLONGWAIT, FON, FREECORE, FSHENTRY, GEOERR, HLSAV, ICT, JOBLOCK, LINK, LINKSET, LOCK, MASK, MENDAREA, MFREEW, MONOUT, MURDER, OUTPAR, READHUNT, RESTACTF, RESTCHN, RESTRBLOK, SEGENTRY, SETNCORE, SETREP, SETUPCORE, SHLSQ, TESTREPNOT, THAWSAVE, TRACE, UP, UPPLUS

UNSAVE867.txt
22FL    #LIS  K0SAVEJOB>K0UNSAVE>K0HLS>K0GREATGEO>K0ALLGEO  
22^=    #SEG  UNSAVE6                      [RICHARD GRIMWADE
234B ...[   
237G ...[   
23=L ...[  (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1983   
23*Q ...[   
23DW                8HUNSAVE
23YG    #   
24D6    #           IMPLEMENTS THE UNSAVE MACRO WHICH RESTORES A JOB STORED IN  
24XQ    #           A FILE GIVEN THE JOB NUMBER 
25CB    #   
25X2          SEGENTRY K1UNSAVE,XK1 
27H4 ...      FSHENTRY K2UNSAVE,XK2,,XK2
27N= ...      FSHENTRY K3UNSAVE,XK3,XK3,XK3 
27QW ...      FSHENTRY K4UNSAVE,XK4,,XK4
27TG    #   
28*6    #           CONSTANTS   
28SQ    XLANG       4H####                 [LANGUAGE CODE FOR SAVING FILE   
29#B    XFSLINK 
2=?L          LINK     HLSEVENT,4   
2#PQ    MASK           #777777  
2*9B    X850
2*P2    #HAL  +8,+50
2BN=    X860
2C7W    #HAL            +8,+60  
2CMG    XMILLPEXP   #73737373   
2D76    XHLSACT 
2DLQ    #HAL        ACTSAVE+GENERAL,0   
2G5L    #   
2GK=    # SUBROUTINE TO FIND CPAT: SHOULD ONLY BE USED AFTER RINGING ON JOBRING 
2H4W    #   
2HJG    SCPAT FCAJO    3
2J46          EXIT  6  0
2JHQ    # SUBROUTINE TO FIND JOBBLOCK. USED BY ALTLENG  
2K3B    SJOB  STO   1  GEN0 
2KH2          CALL  6  SJOBQ
2L2L          LDX   2  3
2LG=          BRN      (GEN0)   
2L^W    # SUBROUTINE TO FIND JOBLOCK
2MFG    SJOBQ JOBLOCK  7,3  
2M^6          EXIT  6  0
2NDQ    # SUBROUTINE TO FIND HLSQ BLOCK 
2NYB    SHLSQ SHLSQ    7,2,(6)  
2PD2          EXIT  6  1
2PXL    #   
35LL    # SUBROUTINE TO SET WORD 6 OF RECORD SUCH THAT IT CAN BE
366=    # DEALT WITH IN A LOOP  
36KW    X6SET   
375G          LDXC  0  6(2)                [CONREC IE LATEST RESET  
37K6          BCS      X6EX                [DEFAULT THUS OK 
384Q          LDXC  5  6(3)                [LAST REST BUT ONE IN HLSQ   
38JB          BCS      X6EX                [DEFAULT THUS CAN BE ENTIRLY OVERWRIT
3942          ANDN  0  3                   [ISOLATE FS AND TS BITS  
39HL          BNZ   0  TESTEP              [NOT DEFAULT IN CONREC   
3=3=          ANDN  5  3                   [ISOLATE BITS IN HLSQ
3=GW          ORS   5  6(2)                [STORE IN CONREC 
3?2G          LDX   5  6(3) 
3?G6    TESTEP  
3?^Q          LDX   0  6(2) 
3#FB          ANDN  0  #14                 [ISOLATE EP AND CCEP BITS
3#^2          BNZ   0  X6EX 
3*DL          ANDN  5  #14                 [ISOLATE BITS
3*Y=          ORS   5  6(2)                [STORE IN CONREC 
3BCW    X6EX  EXIT  6  0
3BXG    # THIS SUBROUTINE SETS X6 TO THE INCLUSIVE WORD COUNT OF THE
3CC6    # NEEDS (OR 0 IF NO NEEDS),X4 IS SET TO THE POSN OF THE NEEDS   
3CWQ    # X5 IS SET TO THE NEW POSN.ON ENTRY X3 MUST POINT TO THE JOBBLOCK  
3DBB    SETPTRS 
3DW2          LDX   6  JNEEDSPTR(3) 
3F*L          BZE   6  XITSET      [J IF NO NEEDS IN JOBQ   
3FT=          SMO      6
3G#W          LDN   4  JOBNUM(3)
3GSG          SMO      4
3H#6          LDX   6  0
3HRQ    XITSET  
3J?B          EXIT  2  0
3JR2    # THIS SUBROUTINE MOVES THE NEEDS IN THE JOBBLOCK FROM THE  
3K=L    # OLD POSITION TO THE NEW POSITION.ON EXIT X6 = INCLUSIVE WORD  
3KQ=    #  COUNT OF NEEDS IF THE MOVE WAS UPWARDS (I.E. X4>X5)  
3L9W    XMOVENEEDS  
3LPG          CALL  2  SETPTRS  
3M96          BZE   6  XITMVNDS            [NO NEEDS REQUIREMENTS   
3MNQ          LDN   5  JBPERIS(3)   
3N8B          LDN   0  JBPERIS-JOBNUM   
3NN2          STO   0  JNEEDSPTR(3) 
3P7L          BXL   4  5,XMVNDSDWN  
3PM=          SMO      6
3Q6W          MOVE  4  0
3QLG          BRN      XITMVNDS 
3R66    XMVNDSDWN   
3RKQ          ADX   4  6
3S5B          ADX   5  6
3SK2    XMV   SBN   4  1
3T4L          SBN   5  1
3TJ=          SMO      4
3W3W          LDX   0  0
3WHG          SMO      5
3X36          STO   0  0
3XGQ          BCT   6  XMV  
3Y2B    XITMVNDS
3YG2          EXIT  1  0
3Y^L    # THIS SUBROUTINE ALTERS THE LENGTH OF THE JOBBLOCK 
3^F=    # ON ENTRY X6 MUST EQUAL INCLUSIVE WORD COUNT OF NEEDS REQUIREMENTS 
3^YW    XALTLEN 
42DG          SBX   4  FX1  
42Y6          ADN   6  EXTJOB   
43CQ          ALTLEN   3,6  
43XB          ADX   4  FX1  
44C2          EXIT  4  0
44WL    XK1 
45B=    #SKIP       K6UNSAVE>99-99  
45TW          TRACE    ACOMMUNE1(2),UNSAVE  
46*G          LDX   7  ACOMMUNE1(2) 
46T6          SETNCORE  10,3,FILE,FABSNB
47#Q          CALL  6  SHLSQ
47SB          BRN      WAIT1
48#2          HLSAV    2,SET,UNSAVE,HLSQ,WAIT   
48RL          HLSAV    2,SET,UNSAVE,HLSQ
49?=          LDN   0  10   
49QW          STO   0  A1(3)               [SET RECORD HEADER   
4==G          LDN   4  HLSUNAM(2)   
4=Q6          LDN   5  A1+1(3)  
4?9Q          MOVE  4  3                   [MOVE USER NAME TO FABSNB
4?PB          LDN   4  HLSJNAM(2)   
4#92          LDN   5  A1+4(3)  
4#NL          MOVE  4  3                   [MOVE JOB NAME TO FABSNB 
4*8=          STOZ     A1+7(3)             [SET RECORD NON DEFAULT  
4*MW          STOZ     A1+8(3)  
4B7G          LDX   4  XLANG(1) 
4BM6          STO   4  A1+9(3)  
4C6Q          THAWSAVE XBRK 
4CLB          TESTREPNOT   OK,XNOTOK
4D62          ERASE 
4DKL          MFREEW   FILE,FABSNB  
4F5=          READHUNT XNOJOB   
4FJW          LDX   4  FRH+1(3) 
4G4G          BPZ   4  XNOJOB   
4GJ6          LDCT  4  JOBQE/8  
4H3Q          TXU   4  FRH+2(3) 
4HHB          BCS      XNOJOB   
4J32          CHANBLOK 1,2  
4JGL          LDX   3  BPTR(2)  
4K2=          LDN   4  AJBRING(3)   
4KFW          STO   4  AJBRING(3)   
4K^G          STO   4  AJBRING+1(3) 
4PWG    XCHAN   
4QB6          CHJOBLOCK  3                 [JOB BLOCK   
4QTQ          RESTRBLOK 
4R*B          BRN      XNOCPAT             [END OF FILE 
4RT2          BRN      XNOCPAT             [NOT A BLOCK 
4S#L          LDCT  5  CPAT/8   
4SS=          LDX   3  BPTR(2)             [PICK UP RESTORED BLOCK  
4T?W          TXU   5  ATYPE(3) 
4TRG          BCS      XNOCPATA 
4W?6    XCPAT   
4WQQ          LDX   4  3                   [KEEP POINTER
4X=B          CALL  6  SJOBQ               [X3 -> JOBLOCK   
4XQ2          LDN   2  AJBRING(3)   
4Y9L          SMO      4
4YP=          LDN   1  JOBRING  
4^8W          STOZ     1(1) 
4^NG          ENRING   1,2  
537B          CALL  6  SJOBQ
53M2          LDX   2  3
546L          CALL  6  SCPAT
54L=          LDX   0  JURGE(2) 
555W          STO   0  ACOMMUNE9(3) 
55KG          LDCH  0  ACC7(3)  
5656          SBN   0  GEORGE       [X0=0 IF NO G3 OR G4 CONVERSION 
56JQ          SMO      FX2  
574B          STO   0  ACOMMUNE4
57J2          LDX   5  ACC7(3)  
583L          LDX   3  2
58H=          ANDX  5  MASK(1)  
5=26          SBX   5  X860(1)  
5=FQ          BPZ   5  NMKCONV6            [J IF NO MARK CONVERSION 
5=^B          ADN   5  10   
5?F2          BPZ   5  XFR850   
5?YL          LDN   6  0
5#D=          CALL  4  XALTLEN             [INCREASE LENGTH 
5#XW          CALL  6  SJOBQ
5*CG          STOZ     JNEEDSPTR(3) 
5CB2          BRN      STOZMILL 
5CTL    XFR850  
5D*=          CALL  2  SETPTRS  
5DSW          CALL  4  XALTLEN  
5F#G          CALL  6  SJOBQ
5FS6          CALL  1  XMOVENEEDS   
5NLW    STOZMILL
5P6G          STOZ     AMILLP(3)
5PDX ...      LDN   4  0
5PR# ...      DEX   0  ACOREP(3)
5Q5Q          BRN      NOCONV   
5QKB    NMKCONV6
5R52          BZE   0  NOCONV              [J IF NO 3 TO 4 OR VICE VERSA CONVERS
5WGB          CALL  1  XMOVENEEDS   
5^XQ          CALL  4  XALTLEN  
62CB          BRN      NOCONV   
6Q*2    NOCONV  
6R#=          READHUNT XONLYONE 
6RRW    XLOOP   
6S?G          STO   7  ACOMMUNE4(2)        [SAVEFILE INTERFACE  
6SR6          RESTACTF 7                   [RESTORE ALL FILES   
6T=Q          BRN      XEND                [END OF FILE 
6TQB    XPCA
6W=2          RESTCHN                      [AND BLOCKS  
6WPL          BRN      XEND                [END OF FILE 
6X9=          BRN      XCPNTLST 
6XNW    XEND
6Y8G          CLOSE                        [CLOSE THE SAVING FILE   
6YN6          CALL  6  SJOBQ
6^7Q          HLSAV 3,CLEAR,SAVING,JOBQ 
72LL          CALL  6  SHLSQ
736=          BRN      NOHLSQ   
73KW          LDX   0  HLSPRIV(2)   
745G          STO   0  JPRIV(3)       [RESTORE CORRECT WKP'S
7*BB          CALL  6  SHLSQ
7*W2          BRN      NOHLSQ   
7B*L          LDX   0  ALOGLEN(2)   
7BT=          SBN   0  AHLS 
7C#W          BZE   0  NORESETS 
7CSG          SMO      FX2  
7D#6          LDX   0  ATYPE
7DRQ          BXE   0  XHLSACT(1),RSCND    [J IF BEING STARTED BY HLS   
7F?B          LDN   5  A1+AHLS-2(2)       [X5-> CONTROL RECORD IN HLSQ  
7FR2          CALL  6  SJOBQ             [X3->JOBBLOCK  
7G=L          LDX   2  5
7GQ=          LDXC  0  7(2)                [PTR. TO NEEDS DATA  
7H9W          BCS      RSC3                [J IF NO NEEDS   
7HPG          LDX   5  CONRECSIZE(2)       [START OF NEEDS DATA 
7J96          ADN   5  EXTJOB   
7JNQ          ALTLENG  3,5,SJOB            [REQ.SIZE OF JOBLOCK+NEEDS   
7K8B          CALL  6  SJOBQ               [X3-> JOBBLOCK   
7KN2          CALL  6  SHLSQ               [X2->HLSQ
7L7L          BRN      (GEOERR) 
7LM=          ADN   2  A1+AHLS-2
7M6W    RSC3  FCAJO    1,3  
7MLG          LDX   0  2(2) 
7N66          BNG   0  RSC4                [J IF NO CPI 
7NKQ          STO   0  JCPI(3)             [STO CPI IN JOBBLOCK 
7P5B    RSC4  LDX   5  3(2) 
7PK2          BNG   5  RSC5                [J IF NO JT  
7Q4L          LDN   4  1000 
7QJ=          MPY   5  4                   [CONVERT TO MILLISECONDS 
7R3W          STO   5  ATIMEJ(3)
7RHG          STO   6  ATIMEJ+1(3)         [STORE JT IN JOBBLOCK
7S36    RSC5  LDX   0  4(2) 
7SGQ          BPZ   0  RSC6                [J IF    URGENCY SPECIFIED   
7T2B          LDEX  5  JURGE(3) 
7TG2          BNZ   5  RSC7                [J IF UR PREVIOUSLY SET  
7T^L          LDX   0  6(2) 
7WF=          BNG   0 RSC7                 [J IF NO CHANGE TO STATUS
7WYW          ANDN  0 2 
7XDG          BZE   0  RSC7                [J IF NOT BECOMING FS
7XY6          LDN   0  #55                 [DEFAULT = M 
7YCQ    RSC6  DSA   0  JURGE(3)            [STORE UR IN JOBBLOCK
7YXB    RSC7  LDX   0  5(2) 
7^C2          BNG   0  RSC8                [J IF NO MAXSIZE SPECIFIED   
7^WL          STO   0  JSIZE(3)            [STORE MZ IN JOBBLOCK
82B=    RSC8  LDXC  6  7(2)                [PTR TO NEEDS
82TW          BCS      RSC84               [J IF NO NEED DATA   
83*G          LDN   4  CONRECSIZE(2)
83T6          SMO      6
84#Q          LDN   5  JBPERIS  
84SB          SMO      CONRECSIZE(2)
85#2          MOVE  4  0                   [STORE NEEDS REQ. IN JOBBLOCK
85RL          LDN   0  JBPERIS-JOBNUM   
86?=          SMO      6
86QW          STO   0  JNEEDSPTR        [SET PTR TO NEEDS FIELD 
87=G    RSC84   
8?7G          LDX   4  AMILLP(3)           [GET JOB'S MP
8?M6          LDXC  0  6(2) 
8#6Q          BCS      XCOREP              [NEITHER EP NOR CCEP 
8#LB          ANDN  0  #14  
8*62          BZE   0  XCOREP              [NEITHER EP NOR CCEP 
8*KL          ANDN  0  4
8B5=          BNZ   0  XCCEP               [J IF CCEP BIT SET   
8BJW    # EP ISSUED 
8C4G          BS       3,JBEXPREQ   
8CJ6          SMO      FX1  
8D3Q          LDX   4  XMILLPEXP           [DEFAULT FOR EXPRESS MILL P  
8DHB          LDXC  0  10(2)
8F32          BCC      STORECP             [IF NO CORE PRIORITY 
8FGL          LDN   0  60                  [SPECIFIED SET CORE P
8G2=          BRN      STORECP             [TO 60   
8GFW    XCCEP   
8G^G          BC       3,JBEXPREQ   
8HF6          LDN   4  0
8HYQ ...      DEX   4  ACOREP(3)
8JDB    XCOREP  
8JY2          LDXC  0  10(2)
8KCL          BCC      STORECP             [CORE PRIORITY SPECIFIED 
8KX= ...      LDEX  0  ACOREP(3)           [NO ACTION IF
8LBW          BNZ   0  XLVECOR             [PREVIOUSLY SET  
8LWG          LDX   0  BACKCP   
8MB6          LDX   5  JSOURCE(1)   
8MTQ          BZE   5  STORECP             [J IF CENTRAL JOB
8N*B          LDX   0  CLUSBACKCP   
8NT2    STORECP 
8P#L ...      DEX   0  ACOREP(3)
8PS=    XLVECOR 
8PTS ...#UNS  ICT   
8PXB ...#SKI
8PYY ...(   
8Q2G ...[  ENSURE THAT ACT PRI FIELD ZERO IF
8Q44 ...[  UNSAVING IN NON-ICT ENVIRONMENT  
8Q5L ...      LDCT  0  #30  
8Q78 ...      ANDX  0  ACOREP(3)
8Q8Q ...      ERS   0  ACOREP(3)
8Q=# ...)   
8Q?W          LDX   5  11(2)
8QRG          BZE   5  XMOVEMILLP          [NO ACTION IF PREVIOUSLY SET 
8R?6          LDX   4  5
8RQQ    XMOVEMILLP  
8S=B          STO   4  AMILLP(3)
8SQ2          LDXC  0  6(2) 
8T9L          BCS      RSC90               [J IF NO STATUS REQUESTED
8TP=          ANDN  0  3
8W8W          BZE   0  RSC90               [J IF NO CHANGE TO STATUS
8WNG          SBN   0  1
8X86          BZE   0  RSC90               [J IF TO BE T.S. 
8XMQ          BS       1,EXFULLY           [F.S. IND. FOR FS MESSAGE O/P BY HLSE
8Y7B          LDN   4  1
8YM2          LDN   0  #6000
8^6L          ERS   0  CONTEXT(1)          [SWITCH TS/FS BITS...
8^L=          LDX   0  GSIGN               [... CPAT AND... 
925W          ERS   0  JURGE(3)            [...IN JOBBLOCK  
92KG          ADS   4  HLSCOUNT+1          [UPDATE COUNT OF FS JOBS 
9356    RSC90 SBN   2  A1+AHLS-2           [X2->HLSQ BLOCK  
93JQ          BRN      SL6  
944B    RSCND LDX   3  FX2  
94J2          ADX   3  AWORK3(3)           [X3 TO STARTJOB CONREC   
953L          ADN   2  A1+AHLS-2           [X2 TO RESET CONREC  
95H=          LDXC  0  7(3)                [J IF NEEDS IN STARTJOB  
962W          BCC      RSC2 
96GG          LDXC  0  7(2)                [J IF NO NEEDS IN RESET  
9726          BCS      RSC2 
97FQ          LDX   5  CONRECSIZE(2)
97^B          SETUPCORE 5,1,ADATA,CSTORE
98F2          LDX   3  FX2  
98YL          ADX   3  AWORK3(3)
99D=          CALL  6  SHLSQ
99XW          BRN      NOHLSQ   
9=CG          ADN   2  A1+AHLS-2
9=X6          LDN   4  CONRECSIZE(2)
9?BQ          LDN   5  A1(1)
9?WB          SMO      CONRECSIZE(2)
9#B2          MOVE  4  0                   [COPY NEEDS  
9#TL          STOZ     7(3) 
9**=    # SWITCH X2 AND X3  
9*SW    RSC2  LDX   5  3                   [X3 NOW POINTS TO RESET(IN HLSQ) 
9B#G          LDX   3  2                   [X2 TO STARTJOB (IN OLPA)
9BS6          LDX   2  5
9C?Q          CALL  6  X6SET
9FPW          LDN   4  ASTCON-1 
9G9G    SL1 
9GP6          LDXC  0  2(2) 
9H8Q          BCC      SL2  
9HNB          LDX   0  2(3) 
9J82          STO   0  2(2) 
9JML    SL2 
9K7=          ADN   2  1
9KLW          ADN   3  1
9L6G          BCT   4  SL1  
9MKB    # SET UP MILL PRIORITIES
9N52          LDN   4  4
9NJL    SL3   LDCH  0  2(2) 
9P4=          BNZ   0  SL4  
9PHW          LDCH  0  2(3) 
9Q3G          DCH   0  2(2) 
9QH6    SL4   BCHX  2  £
9R2Q          BCHX  3  £
9RGB          BCT   4  SL3  
9SFL          CALL  6  SHLSQ
9S^=          BRN      NOHLSQ   
9TDW    NORESETS
9WD6    SL6   LDX   4  HLSJONO(2)   
9WXQ          FREECORE 2                   [FREE HLS BLOCK  
9WY2 ...#   
9WY= ...#     FRIG TO PUT THE CPA BACK ON THE QUEUE SO IT WILL GET WOKEN UP BY  
9WYG ...#     PROCONTX AND FPUT IN THE BREAKIN CASE - THIS MEANS THAT SAVING
9WYQ ...#     JOBS CAN ONLY OCCUR WHEN WAITING TO BE FULLY STARTED AT LEAST 
9W^2 ...#     UNTIL FLONGWAITX  
9W^= ...#   
9X=Q ...      CALL  6  SJOBQ               [LOCATE THE JOB'S JOB BLOCK AGAIN!!! 
9X?2 ...#   
9X?= ...      FCAJO    2,3  
9X?G ...      LINKSET  2,XFSLINK(1) 
9X#= ...      LDN   0  #32  
9X#G ...      DEX   0  CLONG1(2)
9X#Q ...      LDX   0  JOBNO(2) 
9X*2 ...      STO   0  CLONG2(2)
9X*= ...      FLONGWAIT #32 
9XCB          SETREP   OK   
9XX2          FON      #116 
9^*W          OUTPAR   TIMENOW  
9^TG          MONOUT   JUNSAVE,4           [OUTPUT JOB UNSAVED TO SJ
=2SQ    UPPL  UPPLUS   1
=3#B    WAIT  COOR3    #116 
=3S2    WAIT1   
=4?L          SETREP   ALREADY  
=4R=          CALL  6  SHLSQ
=5=W          BRN      UPPL                [MEANS 1ST UNSAVE OK 
=5QG          HLSAV    2,SET,UNSAVE,HLSQ,WAIT [ELSE GOTO FIRST ERROR BELOW: 
=6=6    #   
=6PQ    #              ERROR ROUTINES   
=79B    #   
=7P2          GEOERR   1,BIT GONE          [HLSQ BLOCK STILL THERE BUT UNSAVE BI
=88L    XBRK  GEOERR   0,BRKINUNS   
=8N=    #              NO HLSQ BLOCK
=97W    NOHLSQ  
=9MG          GEOERR   0,NOHLSQ 
==76    #              FREE ACTIVITIES IN JOB TO BE UNSAVED 
==LQ    XA  
=?6B    #     TEMPORARY ACTION  
=?L2          BRN      XGERR
=#5L          LDX   3  FX2  
=#K=    XA1   LDX   3  BPTR(3)  
=*4W          LDX   4  ATYPE(3) 
=*JG          TXL   4  CACT            [NOT AN  
=B46          BCS      XA1             [ACTIVITY BLOCK  
=BHQ          TXU   7  JOBNO(3) 
=C3B          BCS      XB              [NO MORE BLOCKS  
=CH2          LOCK     3
=D2L    XA2 
=DG=          FILECOUNT 4   
=D^W          BZE   4  XA3  
=FFG          GEOERR   0,NOCHFILE      [TO BE REPLACED BY A CHANGEFILE MACRO
=F^6          CLOSE 
=GDQ          BRN      XA2  
=GYB    #              CPA ONLY SO NO BACKING STORE TO BE FREED 
=HD2    XA3   MURDER   3
=HXL          BRN      XA   
=JC=    #              FREE JOB BLOCK   
=JWW    XB  
=KBG    #     TEMPORARY ACTION  
=KW6          BRN      XGERR
=L*Q          JOBLOCK  7,3  
=LTB          FJOBLOCK 3                   [FREE THE JOB BLOCK  
=M*2    #              CLOSE THE SAVING FILE
=MSL    XC  
=N#=    #     TEMPORARY ACTION  
=NRW          BRN      XGERR
=P?G          CLOSE 
=PR6    #              SET REPLY
=Q=Q    XD  
=QQB    #     TEMPORARY ACTION  
=R=2    XGERR   
=RPL          GEOERR   0,FUNFIT 
=S9=          UP
=SNW    #              NOT OK REPLY WHEN OPENING SAVING FILE
=T8G    XNOTOK  
=TN6    #SKIP          K6UNSAVE>99-99   
=W7Q          TRACE    A1+3(3),FUNFITA  
=WMB          BRN      XD   
=X72    #              NO JOB BLOCK 
=XLL    XNOJOB  
=Y6=    #SKIP          K6UNSAVE>99-99   
=YKW          TRACE    FRH+2(3),FUNFITD 
=^5G          BRN      XC   
=^K6    #              NO BLOCK RECORD WHERE CPAT SHOULD BE 
?24Q    XNOCPAT 
?2JB          LDX   3  BPTR(2)  
?342    #SKIP          K6UNSAVE>99-99   
?3HL          TRACE    ATYPE(3),FUNFITE 
?43=          FREECORE 3
?4GW          BRN      XB   
?52G    #              NOT A CPAT BLOCK AT HEAD OF CHAIN
?5G6    XNOCPATA
?5^Q    #SKIP          K6UNSAVE>99-99   
?6FB          TRACE    ATYPE(3),FUNFITE 
?6^2          FREECORE 3
?7DL          BRN      XB   
?7Y=    #              ONLY CPAT BLOCK IN ACTIVITY CHAIN
?8CW    XONLYONE
?8XG    #SKIP          K6UNSAVE>99-99   
?9C6          TRACE    6,FUNFITF
?9WQ          BRN      XA   
?=BB    #              CPA NOT LAST ACTIVITY SAVED  
?=W2    XCPNTLST
??*L    #SKIP          K6UNSAVE>99-99   
??T=          TRACE    6,FUNFITG
?##W          BRN      XA   
#R8W          MENDAREA 20,K99UNSAVE 
#RNG    #END
^^^^ ...726035700001