BSUJSTAT867

(George Source)

Macros used: ALTLEN, APPEND, BXE, BXGE, BXL, BXU, CLOSE, FREECORE, JBC, MENDAREA, MFREEW, MHUNTW, NAME, OPEN, SEG, SEGENTRY, SETNCORE, SETUPCORE, TESTRPN2, TRACE, UP

BSUJSTAT867.txt
22FL          SEG      BSUJSTAT,83,PETER CAMPBELL,BSUNJ 
22J9 ...[   
22LS ...[   
22PC ...[  (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982   
22S2 ...[   
22WK ...[   
22^=          SEGENTRY K1BSUJSTAT,X1BSUJSTAT
23DW          SEGENTRY K2BSUJSTAT,X2BSUJSTAT
23YG          SEGENTRY K3BSUJSTAT,X3BSUJSTAT
24D6          SEGENTRY K4BSUJSTAT,X4BSUJSTAT
24XQ          SEGENTRY K5BSUJSTAT,X5BSUJSTAT
25CB          SEGENTRY K7BSUJSTAT,X7BSUJSTAT
25X2          SEGENTRY K8BSUJSTAT,X8BSUJSTAT
26BL          SEGENTRY K9BSUJSTAT,X9BSUJSTAT
26W=
273D ...      SEGENTRY K90BSUJSTAT  
278L ...               +150               [ VALUE OF RETAINRV   
27*W    TOTIM          +864000/K9*100      [NO OF CLEANCTS IN 24 HRS
27TG    XNAME          +10  
28*6                   12HDUMPER
28SQ                   12HUNJAMMER  
29#B                   +1   
29S2                   #20000001           [NEXT GEN+1  
2=?L                   4HB1B0   
2=R= ...XLEN           +58                 [LENGTH OF MAIN RECORD   
2?=W    NFRES          +4                  [LENTH OF RESIDENCE RECORDS  
2?QG                                       [IN F/FRESNUM BLOCK  
2#=6    [     ENTRY TO OPEN THE STATISTICS FILE 
2#PQ    X1BSUJSTAT  
2*9B          SETNCORE 10,3,FILE,FABSNB 
2*P2          LDN   5  XNAME(1) 
2B8L          LDN   6  A1(3)
2BN=          MOVE  5  10   
2C7W          OPEN     XOPERR,CREATE,APPEND,QUERY   
2CMG          TESTRPN2  OK,XOPERR   
2D76    [     RENAME AS FAPB FOR MAIN STAT RECORD AND INITIALISE
2DLQ          MHUNTW   3,FILE,FABSNB
2F6B          NAME     3,FILE,FAPB  
2FL2          LDX   4  XLEN(1)  
2G5L          ALTLEN   3,4,FILE,FAPB
2GK=          MHUNTW   3,FILE,FAPB  
2H4W    XZER  LDX   2  XLEN(1)  
2HJG          STO   2  A1(3)               [SET UP HEADER   
2J46          STOZ     A1+1(3)  
2JHQ          LDN   0  A1+1(3)  
2K3B          LDN   1  A1+2(3)  
2KH2          SBN   2  2
2L2L          MOVE  0  0(2)                [ZEROISE BLOCK   
2LG=          LDX   1  EDATE
2L^W          STO   1  A1+2(3)  
2MFG          LDX   1  CLEANCT  
2M^6          STO   1  A1+3(3)             [TIME AT START OF PASS   
2NDQ          LDX   0  GMTNOW   
2NYB          STO   0  A1+6(3)  
2PD2          LDN   0  1                   [SET FLAG FOR BSUNJAM
2PXL          SMO      FX2  
2QC=          STO   0  ACOMMUNE1           [THAT STATS FILE OPENED OK   
2QWW          UP                           [RETURN TO MAIN UNJAMMER 
2RBG    X2BSUJSTAT  
2RW6          LDN   6  0                   [SET'DO NOT CLOSE' MARKER
2S*Q    START MHUNTW   3,FILE,FAPB  
2STB          LDX   0  CLEANCT  
2T*2          STO   0  A1+4(3)             [TIME AT END OF PASS 
2TSL          LDX   0  FORMULA  
2W#=          STO   0  A1+5(3)             [VALUE OF FORMULA ON THIS PASS   
2WRW          LDX   0  BSJAM
2X?G          STO   0  A1+48(3) 
2XR6          LDX   0  BACKTHRESH   
2Y=Q          STO   0  A1+49(3) 
2YQB          LDX   0  IDEALJAM 
2^=2          STO   0  A1+50(3) 
2^PL          LDX   0  GMTNOW   
2^RJP...#SKI IFS
2^TGP...(   
2^XDP...      SMO      BFCBRING 
2^^BP...      SBX   0  FLASTJAM-FCBRING 
323#P...)   
325=P...#SKI IFS<1$1
3278P...(   
329=          SMO      BFILE               [MASTER'S FCB
32NW          SBX   0  FLASTJAM            [CONTAINS TIME OF LAST JAM   
32YNP...)   
338G          STO   0  A1+51(3)            [STORE TIME SINCE LAST JAM   
33N6          SMO      FX2  
347Q          LDX   0  AWORK4   
34MB          BPZ   0  NOTMDNT  
3572    [     UNJAM PASSED THROUGH MIDNIGHT-CORRECT COUNT   
35LL          ADX   0  TOTIM(1)            [ADD IN CLEANCTS IN 24 HRS   
366=    NOTMDNT 
36KW          STO   0  A1+34(3)            [NO OF CLEANCTS SPENT WAITING
375G          LDN   0  27?                 [ 3,4 FOR GEORGE 3,4 
37K6          STO   0  A1+52(3) 
384Q          LDX   0  GVERSION            [ VERSION OF GEORGE  
38JB          DSA   0  A1+53(3) 
38LK ...      LDN   0  1
38NS ...      STO   0  A1+54(3)            [ SET NORMAL BS ALGORITHM MARKER 
38R3 ...      JBC      NOTLEEDS,,BABSA     [JUM IF NORMAL ALGORITHM 
38T= ...      LDN   0  2
38XF ...      STO   0  A1+54(3)            [SET LEEDS B S A  MARKER 
38XR ...NOTLEEDS
38Y5 ...      SEGENTRY K10BSUJSTAT  
38YC ...      BRN      NOFF 
38YP ...      LDN   4  BSUJFORM1           [STORE PARAMETERS FOR FILE FORMULA   
38^3 ...      LDN   5  A1+38(3) 
38^* ...      MOVE  4  4
38^M ...      SEGENTRY K11BSUJSTAT  
38^^ ...NOFF
392D ...      LDX   4  K90BSUJSTAT(1)           [ VALUE OF RETAINRV 
3938 ...      STO   4  A1+55(3)                    [ FOR STATISTICS 
3942          APPEND
39HL          MHUNTW   3,FILE,FAPB  
3=3=          BZE   6  XZER 
3=GW    [     CLOSE THE FILE
3?2G          FREECORE 3
3?G6          CLOSE 
3?^Q          UP
3#FB    X5BSUJSTAT  
3#^2          LDN   6  1                   [SET'CLOSE'MARKER
3*DL          BRN      START
3*Y=    X3BSUJSTAT  
3BCW                                       [ DUMPING,ELSE X6=1  
3BXG          MHUNTW   3,FILE,INCUNJ
3CC6          STO   6  A1+2(3)             [DUMP,OR NOT DUMP,MARKER 
3CFP ...      LDN   6   490 
3CJ# ...      BXGE  6  A1(3),SHORTINC      [TRUNCATE RECORD IF > 490 INCS TO BE 
3CLX ...#     REDUMPED - UNLIKELY BUT CODE ALLOWS FOR IT
3CPG ...      STO   6  A1(3)
3CS5 ...SHORTINC
3CWQ          LDX   6  A1(3)
3DBB          SETUPCORE 6,3,FILE,FAPB   
3DW2          MHUNTW   2,FILE,INCUNJ
3F*L          ADN   2  A1   
3FT=          ADN   3  A1   
3G#W          LDX   1  6
3GSG          MOVE  2  0(1) 
3H#6          LDN   6  2
3HRQ          STO   6  1(3) 
3J?B          APPEND
3JR2          MFREEW   FILE,FAPB
3K=L          UP
3KQ=    X4BSUJSTAT  
3L9W          MHUNTW   1,FILE,INCUNJ
3LPG          LDX   4  IRESNUM(1)   
3M96          LDN   6  15                  [15 WORDS PER BSTIST RECORD  
3MNQ          MPY   4  6                   [X4 HOLDS NUMBER OF BSLIST BLOCKS
3N8B          ADN   5  2
3NN2          SETUPCORE 5,3,FILE,FAPB   
3P7L          STO   5  A1(3)
3PM=          LDN   6  1
3Q6W          STO   6  A1+1(3)             [TYPE 1 RECORD   
3QLG          ADN   3  A1+2 
3R66          LDX   5  3                   [KEEP ADDR OF 1ST BSLIST RECORD  
3RKQ          LDN   1  BMISC
3S5B          LDX   6  BSAB 
3SK2    XMISC LDX   1  FPTR(1)  
3T4L          BXE   1  CXMI,XOUT           [J IF END OF CHAIN   
3TJ=          BXU   6  ATYPE(1),XMISC      [J IF NOT BSLIST BLOCK   
3W3W          LDX   2  BSLETH(1)
3WHG          BNG   2  XMISC               [J IF SWAPFILE   
3X36          LDN   2  BACK1(1)            [MOVE 8 WORD AREA
3XGQ          MOVE  2  3                   [ STARTING AT BACK1  
3Y2B          ADN   3  3
3YG2          LDN   2  BSPOINT(1)          [AVOID ARINGNO IF PRESENT
3Y^L          MOVE  2  7
3^F=          ADN   3  7
3^YW          STOZ     0(3)                [COUNT OF NUMBER OF TEMP FILES   
42DG          STOZ     1(3)                [COUNT OF SIZE OF TEMP FILES 
42Y6          ADN   3  2
43CQ    #     NOW MOVE NUMBER AND SIZE THROWN OFF PLUS STATE OF RES FROM FRESNUM
43XB          MHUNTW   2,FILE,FRESNUM   
44C2    NOK 
44WL          LDX   4  FRNUM(2)            [PICK UP RES NUMBER  
45B=          BXE   4  BACK1(1),TOK        [IS IT THIS RESIDENCE
45TW          SMO      FX1  
46*G          ADX   2  NFRES               [NO -STEP ON TO NEXT RECORD  
46T6          BRN      NOK  
47#Q    TOK 
47SB          LDN   2  FRSTATE(2)          [YES -MOVE CONTENTS OF RECORD
48#2          MOVE  2  3                   [TO F/FAPB   
48RL          ADN   3  3
49?=          BRN      XMISC
49QW    XCPAT          #7600
4=2NP...#SKI IFS<1$1
4==G    XFCB           #44010000
4=Q6    XOUT
4?9Q          LDN   6  1
4?PB          LDX   2  FX2  
4#92    NACT  LDX   2  ACTRING(2)          [PICK UP NEXT ACTIVITY BLOCK 
4#NL          SBN   2  ACTRING  
4*8=          BXE   2  FX2,NMORE           [END OF CHAIN?   
4*MW          LDX   4  ATYPE(2)            [CHECK IF A CPAT 
4B7G          SRL   4  12   
4BM6          SMO      FX1  
4C6Q          BXU   4  XCPAT,NACT          [J IF NOT
4C8FP...#SKI IFS
4C=8P...(   
4C?XP...      BASEWORK   2,1
4C*LP...NWFIL   
4CC*P...      NEXTWORK   2,1,NACT   
4CF4P...)   
4CGRP...#SKI IFS<1$1
4CJGP...(   
4CLB          LDX   1  BWORKRING(2) 
4D62          LDN   0  BWORKRING(2)        [START ADDR OF WORKFILE RING 
4DKL          BXE   1  0,NACT              [CPAT BUT NO WORKFILES   
4F5=    NWFIL SMO      FX1  
4FJW          LDX   4  XFCB 
4G4G          BXU   4  ATYPE(1),NFCB
4G##P...)   
4GJ6          LDX   3  5                   [BACK TO A1+2 OF FAPB
4H3Q          LDX   4  BSPRE(1) 
4HHB    NRES  BXE   4  0(3),TRES
4J32          ADN   3  15                  [SKIP TO NEXT BSLIST 
4JGL          BRN      NRES                [AND REPEAT  
4K2=    TRES  ADN   3  10   
4KFW          ADS   6  0(3)                [NUMBER OF WFILES ON THIS RES
4K^G          LDX   4  ALOGLEN(1)   
4LF6          ADN   4  A1                  [SIZE OF FCB 
4LYQ          SBN   4  FBLKS               [LEAVES NUMBER OF BLOCKS 
4MDB          ADS   4  1(3)                [ACCUMULATE SIZE 
4MKJP...#SKI IFS<1$1
4MQQP...(   
4MY2    NFCB  LDX   1  0(1)                [SKIP TO NEXT BLOCK IN WFRING
4NCL          BXE   1  0,NACT              [J IF END OF CHAIN   
4NMDP...)   
4NX=          BRN      NWFIL
4PBW    NMORE   
4PGR ...      MHUNTW   3,FILE,FAPB  
4PLN ...XAPPEND 
4PQK ...      LDN   6  482  
4PWG ...      BXL   6  A1(3),XLONG         [ JUMP IF MORE THAN 32 RESIDENCES
4Q2C ...      APPEND
4Q6# ...      MFREEW   FILE,FAPB
4Q=9 ...      UP
4QB6 ...XLONG   
4QG3 ...      LDX   5  A1(3)               [PRESERVE ORIGINAL RECORD HEADER 
4QKY ...      STO   6  A1(3)               [
4QPT ...      APPEND                       [ APPEND RECORD FOR FIRST 32 RESIDENC
4QTQ ...      MHUNTW   3,FILE,FAPB  
4Q^M ...      LDN   0  3                   [ RECORD TYPE FOR CONTINUATION RECORD
4R5J ...      STO   0  A1+1(3)  
4R9F ...      SBN   5  480                 [ REDUCE RECORD HEADER BY 32 RESIDENC
4R*B ...      STO   5  A1(3)
4RF? ...      LDN   1  A1+2(3)  
4RK8 ...      LDN   0  A1+482(3)
4RP5 ...#     THE NEXT CODE SHOULD SIMULATE ' MOVE 0 N ' - WHERE N MAY BE >512  
4RT2 ...#     THIS REMOVES THE FIRST 32 RESIDENCES , SINCE A RECORD HAS BEEN
4RYX ...#     APPENDED FOR THEM 
4S4S ...      LDX   2  5
4S8P ...      MOVE  0  0(2) 
4S#L ...#     MIVE FORST X5 MOD 512 WORDS   
4SDH ...      LDEX  2  5                   [ X2:= X5 MOD 512
4SJD ...      SBX   5  2
4SN* ...      BZE   5  XAPPEND  
4SS= ...#     JUMP TO APPEND THE LAST RESIDENCES RECORD 
4SY7 ...#     THE NEXT CODE IS ONLY OBEYED IF THERS ARE MORE THAN 64 RESIDENCES 
4T44 ...      ADX   0  2                   [ UPDATE POINTER FOR MOVE
4T7^ ...      ADX   1  2
4T?W ...XMORE MOVE  0  0                   [ MOVE 512 WORDS 
4TCR ...      SBN   5  512  
4THN ...      BZE   5  XAPPEND  
4TMK ...      BNG   5  XAPPEND  
4TRG ...#     NEXT CODE IS ONLY OBEYED IF MORE THAN 96 RESIDENCES   
4TXC ...      ADN   0  512  
4W3# ...      ADN   1  512  
4W79 ...      BRN      XMORE
4W?6    X7BSUJSTAT  
4WQQ                                       [X6 CONTAINS CATEGORY,NO.OF BLOCKS   
4X=B                                       [IS IN AWORK1
4XQ2          LDX   5  AWORK1(2)
4Y9L          LDN   4  1
4YP=          MHUNTW   3,FILE,FAPB  
4^8W          ADX   3  6
4^NG          ADS   4  A1(3)
5286          ADS   5  A1+1(3)  
52MQ          UP
537B    X8BSUJSTAT  
53M2    [     WRITE A RECORD ABOUT THE DIRECTORY THAT CANT BE OPENED
546L          LDX   4  EXEC3(2)            [PRESERVE REPLY  
54L=          SETNCORE  13,3,FILE,FAPB  
555W          LDN   1  13   
55KG          STO   1  A1(3)
5656          ADN   3  A1+1 
56JQ          MHUNTW   2,FILE,FABSNB
574B          ADX   2  A1(2)
57J2          SBN   2  12-A1               [X2 POINTS TO SUP.OF DIRECTORY   
583L          MOVE  2  12                  [LAST TWO NAMES  
58H=          ADX   3  1
592W          STO   4  0(3)                [REPLY WORD  
59GG          APPEND   -1   
5=26          MFREEW   FILE,FAPB
5=FQ          UP
5=^B    X9BSUJSTAT  
5?F2    #              UPDATES NUMBER AND SIZE OF FILES THROWN OFF  
5?YL          MHUNTW   3,FILE,FRESNUM   
5#D=    NERES LDX   0  FRNUM(3)            [CHECK TO SEE IF THIS RES
5#XW          BXE   0  AWORK2(2),THRES     [J IF OK 
5*CG          ADX   3  NFRES(1)            [LOOK AT NEXT RECORD IF NOT  
5*X6          BRN      NERES
5BBQ    THRES   
5BWB          LDN   0  1
5CB2          ADS   0  FRNTOFF(3)          [UPDATE NUMBER THROWN OFF
5CTL          MHUNTW   1,FILE,ENT   
5D*=          LDX   0  ECOPS(1) 
5DSW          SRL   0  15   
5F#G          ADS   0  FRSTOFF(3)          [AND SIZE THROWN OFF 
5FS6          UP
5G?Q    XOPERR  
5GRB          TRACE    ACOMMUNE9(2),NOBSTATS   [ERROR IN OPENING STATS FILE 
5H?2          STOZ     ACOMMUNE1(2)        [SET FLAG FOR BSUNJAM
5HQL          UP                           [SO GIVE UP COLLECTING STATS 
5J==          MENDAREA 20,K99BSUJSTAT   
5JPW    #END
^^^^ ...53404303000200000000