UNJAMMER866

(George Source)

Macros used: ACROSS, BC, BI, BSON, BXE, BXGE, BXL, BXU, COBJUNUSE, COBJUSE, COREWAKE, FINDJOBQ, FREECORE, FREEFILE, FREEFURB, FREEFUWB, FREEHALF, FREEHALL, FREEIN, FREEOUT, FREHFURB, FRSOFURB, FRSOFUWB, GSCAN, JBC, JBS, MENDAREA, MOBJQUOTA, ON, SEGENTRY, TEST, TRACE, TRACEDP

UNJAMMER866.txt
22FL ...#SEG  UNJAMMER                     [DEK BEASLEY 
22^=    #OPT  K0UNJAMMER=0  
23DW    #LIS  K0UNJAMMER>K0ALLGEO>K0LLS 
23YG          8HUNJAMMER
24D6    #   
24XQ    #     THIS IS THE MAIN SEGMENT OF THE CORE UNJAMMER,ENTERED IF NECESSARY
25CB    #     IN BLANKET
25X2    #   
26BL    #     THERE IS ONE MAIN ENTRY POINT:K1 AND ONE RETURN FROM JAMSWAP IF NO
26W=    #     CANDIDATE FOR SWAPOUT CAN BE FOUND:K2 
27*W          SEGENTRY K1UNJAMMER,XX1U  
27TG          SEGENTRY K2UNJAMMER,XX2U  
28SQ    #   
28XW ...#UNS  ISTDP 
2932 ...TARGET         +CUNJAMTARG  
2966 ...#UNS  ISTDP 
299= ...#SKI
29#B    TARGET         #12000   
29S2    T15            +CJTHRESH15  
2=?L    T2             +CJTHRESH2   
2=R=    T3             +CJTHRESH3   
2?=W    T4             +CJTHRESH4   
2?QG
2CMG    TEST
2D76          TXL   6  CJTARGET 
2D?3 ...#UNS  ISTDP 
2DBY ...#SKI
2DGT ...(   
2DLQ          BCC      R11A                [END IF TARGET REACHED   
2F6B          EXIT  7  0
2F85 ...)   
2F9S ...#UNS  ISTDP 
2F?H ...(   
2F*= ...      BCS      (7)  
2FB^ ...#UNS  ISTDPSTATS
2FDN ...      TRACEDP AJAMSUC   
2FGC ...      BRN      R11A 
2FJ6 ...)   
2FL2    #   
2G5L    #     S/R TO FIND JOBLOCK IN X3,LINK X7,EXITS 0 IF MISSING  
2GK=    #   
2H4W    TJOB  FINDJOBQ 3,CJJOBNO,(7)
2HJG          EXIT  7  1
2J46    #   
2JHQ    #     SUBROUTINE TO SCAN UP THROUGH THE CORE, SPLITTING OFF FROM THE END
2K3B    #     BLOCKS ANY EXCESS, AND CHAIN ANY CORE THUS RECLAIMED INTO THE FREE
2KH2    #     AT END OF ROUTINE ANY ACTIVITIES WAITING ON THE QUEUE FOR CORE ARE
2L2L    #     UP. LINK X7. NO COORDINATION. ON EXIT, X1=FX1,X2=FX2, ALL OTHERS E
2LG=    #     ARE DESTROYED.
2L^W    #     IN A SENSE THIS ROUTINE IS AN EXTENSION OF THE CORE ALLOCATION SYS
2MFG    #   
2MKC ...#UNS  ISFC  
2MP# ...#SKI
2MT9 ...(   
2M^6    QCJ1
2N3P ...#UNS CA1D   
2N6# ...(   
2N8X ...      ANDX  7  BITS22LS               [ENSURE B0 & 1 CLEAR  
2N?G ...      ORX   7  0                   [SET B0 OF X7 ACCORDING TO SOURCE
2NB5 ...)   
2NDQ          LDX   3  GLOW                [START OF VARIABLE CORE='THIS'   
2NYB          LDN   4  BFREE               [THE 'FREE BLOCK' BELOW THIS 
2PD2    NEXT  TXU   4  BPTR(3)             [IF THE BLOCK CHAINED BEFORE THIS IS 
2PXL          BCC      XFREE               [BLOCK BELOW IT, THEN THIS BLOCK IS F
2QC=          LDX   0  AFLAG(3) 
2QWW          ANDN  0  2
2RBG          BNZ   0  NONE                [IGNORE ANY FROZEN BLOCK 
2RW6          LDX   0  ALOGLEN(3)          [LOGICAL LENGTH  
2S*Q          ANDX  0  BITS22LS 
2STB          TXU   0  ALOGLEN(3)   
2T*2          BCS      (GEOERR)                [JUMP IF CORRUPTION HAS OCCURRED 
2TD6 ...#UNS CA1D   
2TH= ...      ADX   0  CIRNDB   
2TLB ...#UNS CA1D   
2TPG ...#SKI
2TSL          ADN   0  A1+IROUND-1  
2W#=          ANDX  0  IROUNDNG 
2WRW          LDX   5  ASIZE(3)            [ACTUAL SIZE 
2X?G          ANDX  5  BITS22LS 
2XR6          SBX   5  0                   [EXCESS  
2Y=Q          BZE   5  NONE                [J IF NONE   
2YQB          BNG   5  (GEOERR) 
2YR* ...#UNS CA1D   
2YS# ...(   
2YT? ...      BPZ   7  NEXT1
2YW= ...                                        [J ACCORDING TO CONSTANT REQD   
2YX9 ...      TXL   5  CIROUND  
2YY8 ...      BCS      NONE 
2Y^7 ...      BRN      NEXT2
2^26 ...NEXT1   
2^35 ...      TXL   5  CSPLIT   
2^44 ...      BCS      NONE 
2^53 ...NEXT2   
2^62 ...)   
2^6^ ...#UNS CA1D   
2^7Y ...#SKI
2^8X ...(   
2^=2          SMO      7
2^PL          TXL   5  0
329=          BCS      NONE                [JUMP IF NOT ENOUGH  
32F4 ...)   
32NW          LDX   1  ATYPE(3) 
338G          TXU   1  GCHTY               [TEST IF A CHAPTER BLOCK 
33N6          BCS      XCHAP               [NO  
347Q          SBS   5  ACHAP               [ADJUST TOTAL OF CORE USED FOR CHAPTE
34MB    XCHAP   
3572          ADS   5  CFREE               [NEW FREE TOTAL  
35LL          SBS   5  ASIZE(3)            [NEW BLOCK SIZE  
366=          ADX   6  5                   [UPDATE COUNT OF WORDS FREED 
36KW          ADX   3  0                   [ADDRESS F/C BLOCK   
375G          LDX   2  4                   [PRECEDING F/C BLOCK 
37K6          LDX   1  FPTR(2)             [ADDRESS SUCCEEDING F/C BLOCK
384Q          LDX   0  3                   [PRESERVE ADDRESS
38JB          ADX   0  5                   [ADDRESS OF NEXT BLOCK IN CORE   
3942          TXU   0  1
39HL          BCS      NOAML               [JUMP IF THIS IS     NOT FREE
3=3=          ADX   5  ASIZE(1)            [NEW SIZE FREE BL AFTER AMALGAMATION 
3=5T ...#UNS ISFC   
3=8D ...(   
3=?3 ...      FREEOUT  1                   [REMOVE BLK FROM SIZE RING   
3=*L ...      LDX   2  4                   [RESTORE X2  
3=D9 ...)   
3=GW          LDX   1  FPTR(1)             [NEW SUCCEEDING F/C BLOCK
3?2G          SMO      BPTR(1)  
3?G6          TXU   1  FPTR 
3?^Q          BCS      (GEOERR)            [J IF CORRUPTED  
3#FB    NOAML STO   2  BPTR(3)             [THESE INSTRUCTIONS  
3#^2          STO   1  FPTR(3)             [CHAIN IN
3*DL          STO   3  FPTR(2)             [THE NEW 
3*Y=          STO   3  BPTR(1)             [FREECORE BLOCK  
3B2# ...#UNS ISFC   
3B4B ...(   
3B6D ...      STO   5  ASIZE(3) 
3B8G ...                                   [SET SIZE FOR FREEIN 
3B=L ...      FREEIN   3                   [CHAIN BLK INTO SIZE RING
3B*= ...)   
3BCW    #SKI  CAMK7>4-4 
3BXG    (   
3CC6          STO   5  ASIZE(3) 
3CWQ          LDN   5  1
3DBB          STO   5  AFLAG(3) 
3DW2    )   
3F*L    #SKI  CAMK7<5-5 
3FT=    (   
3G#W          ORX   5  GSIGN               [MARK AS FREE
3GSG          STO   5  ASIZE(3)            [SET SIZE
3H#6          STOZ     AFLAG(3) 
3HRQ    )   
3J?B    XFREE LDX   4  3                   [COPY ADDR OF NEW FREE BLOCK BELOW   
3JR2    NONE  SMO      ASIZE(3) 
3K=L          ADN   3  0                   [GET ADDR OF NEXT BLOCK  
3KQ=          SMO      BPTR(3)  
3L9W          TXU   3  FPTR 
3LPG          BCS      (GEOERR)            [ J IF CORRUPTED 
3M96          TXU   3  GFIXCHAP            [TEST IF REACHED THE END OF VARIABLE 
3MNQ          BCS      NEXT                [NO  
3N8B          COREWAKE                     [WAKE UP ANY ACTIVITIES AWAITING CORE
3NN2          EXIT  7  1
3NN9 ...)   
3NND ...#UNS  ISFC  
3NNM ...(   
3NNW ...QCJ1
3NP5 ...      LDX   3  GLOW                [START OF VARIABLE CORE='THIS'   
3NP# ...NEXT  JBS  NONE,3,AFFREE
3NPH ...      LDX   0  AFLAG(3) 
3NPQ ...      ANDN  0  2
3NP^ ...      BNZ   0  NONE                [IGNORE ANY FROZEN BLOCK 
3NQ8 ...      LDX   0  ALOGLEN(3)          [LOGICAL LENGTH  
3NQC ...      ANDX  0  BITS22LS 
3NQL ...      TXU   0  ALOGLEN(3)   
3NQT ...      BCS      (GEOERR)                [JUMP IF CORRUPTION HAS OCCURRED 
3NR4 ...#UNS CA1D   
3NR? ...      ADX   0  CIRNDB   
3NRG ...#UNS CA1D   
3NRP ...#SKI
3NRY ...      ADN   0  A1+IROUND-1  
3NS7 ...      ANDX  0  IROUNDNG 
3NSB ...      LDX   5  ASIZE(3)            [ACTUAL SIZE 
3NSK ...      ANDX  5  BITS22LS 
3NSS ...      SBX   5  0                   [EXCESS  
3NT3 ...      BZE   5  NONE                [J IF NONE   
3NT= ...      BNG   5  (GEOERR) 
3NTF ...#UNS CA1D   
3NTN ...(   
3NTX ...      BXL   5    4,NONE 
3NW6 ...)   
3NW* ...#UNS CA1D   
3NWJ ...#SKI
3NWR ...(   
3NX2 ...      SMO      7
3NX9 ...      TXL   5  0
3NXD ...      BCS      NONE                [JUMP IF NOT ENOUGH  
3NXM ...)   
3NXW ...      LDX   1  ATYPE(3) 
3NY5 ...      TXU   1  GCHTY               [TEST IF A CHAPTER BLOCK 
3NY# ...      BCS      XCHAP               [NO  
3NYH ...      SBS   5  ACHAP               [ADJUST TOTAL OF CORE USED FOR CHAPTE
3NYQ ...XCHAP   
3NY^ ...      ADX   6  5   [UPDATE RUNNING TOTAL
3N^8 ...      SBS   5  ASIZE(3)    [NEW SIZE
3N^C ...      ADX   3  ASIZE(3)    [X3->FRAG
3N^L ...      STO   3  FPTR(3)  
3N^T ...      STO   3  BPTR(3)    [CHAIN FRAG   
3P24 ...      STOZ     AFLAG(3) 
3P26 ...      LDX   0  FPSEUTYP      [SET TO PSEUD BLOCK
3P28 ...      STO   0  ATYPE(3)     [FOR FREECORE INTERFACE 
3P2? ...      STO   5  ASIZE(3) 
3P2G ...      LDN   0  ARINGNO+1
3P2P ...      BXL   5  0,SHORT  
3P2Y ...      LDCT  0  2
3P37 ...      STO   0  ARINGNO(3)   
3P3B ...SHORT LDX   2  3
3P3S ...      FREECORE 2
3P4= ...NONE  SMO      ASIZE(3) 
3P4F ...      ADN   3  0                   [GET ADDR OF NEXT BLOCK  
3P4N ...NONE1   
3P4X ...      SMO      BPTR(3)  
3P56 ...      TXU   3  FPTR 
3P5* ...      BCS      (GEOERR)            [ J IF CORRUPTED 
3P5J ...      TXU   3  GFIXCHAP            [TEST IF REACHED THE END OF VARIABLE 
3P5R ...      BCS      NEXT                [NO  
3P62 ...      EXIT  7  1
3P69 ...)   
3P7L    #   
3PM=    #     SUBROUTINE TO FREE UNUSED LINK BLOCKS. X7=LINK
3Q6W    #     NO COOR. ON EXIT X2& X3 DESTROYED & X4
3QLG    #   
3R66    #   
3RKQ    QCJ2
3S5B          LDN   2  BACT+ACTRING        [SEARCH ACTIVITY RING
3SK2    QCJ21 LDX   2  FPTR(2)  
3T4L          BXE   2  BACTR,(7)           [EXIT AT END 
3TJ=
3W3W          LDX   3  ALINKRING-ACTRING(2) 
3WHG          BXE   3  0(3),QCJ21          [J IF NO LINK BLOCK  
3X36          SBN   3  BLINKRING           [X3 -> START OF LINK BLOCK   
3XGQ          LDX   0  ALOGLEN(3)   
3Y2B          SBN   0  3
3YG2          BPZ   0  QCJ21               [ J IF NO SPARE  
3Y^L          LDX   4  2
3^F=          ADX   6  ASIZE(3) 
3^YW          FREECORE 3                   [FREE EMPTY LINK BLOCK.  
42DG          LDX   2  4                   [RESTORE POINTER ROUND ACTRING   
42Y6          BRN      QCJ21
43CQ    #   
43XB    #     SUBROUTINES USED BY FREE---- MACROS ABOVE 
44C2    #   
44WL          FREEFILE  
45B=    #   
45TW    #     SUBROUTINE TO FREE BSTB/BFREEW BLOCKS.X7=LINK.NO COORDINATION.
46*G    #   
46T6    QCJ7
47#Q          LDN   5  BSTB+BFREEW  
47SB          LDX   2  BACT 
48#2    SQ2   TXU   2  CXAC 
48RL          BCC      SQ99 
49?=          LDX   4  FPTR(2)             [GET NEXT BLOCK  
49QW          LDX   0  ATYPE(2) 
4==G          SRL   0  12   
4=Q6          SBX   0  5
4?9Q          BNZ   0  SQ1  
4?PB          ADX   6  ASIZE(2)            [UPDATE COUNT OF WORDS FREED 
4#92          FREECORE 2                   [FREE THIS BLOCK IF RIGHT TYPE   
4#NL    SQ1   LDX   2  4                   [RESTORE ADDRESS OF NEXT BLOCK   
4*8=          BRN      SQ2  
4*MW    SQ99
4B7G          EXIT  7  0
4BM6    #   
4C6Q    #     ENTERED HERE FROM CHARGESC WHEN CORE USAGE SUM IS > OR = FIRST
4CLB    #     THRESHOLD, OR A FAILED SWAPIN HAS LEFT BIT SET IN INOUTPC REQUESTI
4D62    #     ENTRY TO RECLAIMING ROUTINES ONE AND TWO. 
4DKL    #     THE AMOUNT OF CORE UNJAMMING ACTION TAKEN DEPENDS UPON THE SERIOUS
4F5=    #     THE JAM, AS INDICATED BY THE VALUE OF THE CORE JAM SUM(CJSUM) WHIC
4FJW    #     BUILT UP, RELATIVE TO THE THRESHOLD VALUES.   
4G4G    #   
4GJ6    XX1U                                [K1UNJAMMER: MAIN ENTRY 
4H3Q          GSCAN    CFREE,COREJAM
4HHB          TRACE    ACHAP,ACHAP  
4J32          TRACE    CJSUM,CJSUM  
4J88 ...#SKI  K6UNJAMMER>499-499
4J*B ...      GSCAN FX2,JAMACT  
4JGL    #SKI  CAMK7<6-6 
4K2=          EXTENDLL  
4KFW          LDN   6  0
4LF6          LDX   0  CLEANCT  
4LYQ          STO   0  CJTIME              [FOR BUFFERED *DA
4MDB ...#UNS  ISTDPSTATS
4MN8 ...      TRACEDP AJAMCORE  
4MRD ...      BXE   2  BSWINT,YD3          [J IF LLS INITIATED  
4MS5 ...      JBC XSWAP,,ASWOUTING         [J IF NO SWAPOUT IN PROGRESS 
4MY2 ...      LDN   0  CJDANGER            [AS SWAPOUT IN PROGRESS  
4N3X ...      BXL   0  CFREE,R11A          [DO NOTHING IF CFREE>128 
4N7S ...      BRN      YD1                 [OTHERWISE,CONTINUE WITH UNJAM   
4N?P ...XSWAP   
4NCL          COBJUSE   
4NX=    #SKI  G4
4P4D ...(   
4P9L ...      LDX   6  AOBJFAIL 
4PBS ...      SLL   6  10   
4PJ2 ...      ADX   0  6
4PP8 ...)   
4Q8S ...      MOBJQUOTA MAX,6   
4QND ...      BXGE  6  0,YD1
4R*B          BRN      TH4                 [SWAPOUT IMMEDIATELY,IF EXCEEDING
4RT2                                       [ OBJECTQUOTA
4S#L ...YD3 
4SS= ...#UNS  ISTDPSTATS
4T?W ...      TRACEDP AJAMLLS   
4TRG ...      LDX   0  CJTARGTN            [IF UNJAMMING ACTION INITIATED BY PC 
4^8W          ADN   0  #3000               [ SET TARGET TO SHORTFALL + 3/2 K
4^NG          STO   0  CJTARGET 
4^P? ...#UNS  ADPLLSKIP 
4^Q4 ...(   
4^QT ...      LDN   0  1                    [- DATAPASS COUNT OF
4^RL ...      SMO      ADPSWPPTR            [- LLS INITIATES
4^SC ...      ADS   0  9                    [- COREJAMS 
4^T8 ...)   
5286          BRN      YD   
52MQ    YD1   LDX   1  FX1  
537B          LDX   0  TARGET(1)
53M2          STO   0  CJTARGET 
53MF ...[     AS ENTERED FOR FAILED GETCORE 
53MY ...[     IF X=0,CONTINUE TO UNJAM  
53NC ...[     IF X<CJTARGET,SET CJTARGET=CJTARGET-X 
53NW ...[     OTHERWISE AS >OR= CJTARGET,JOIN SUCCESS EXIT  
53P* ...[     WHERE X=TOTAL UN-FROZEN FREE PROGRAM CORE/PAGES   
53PS ...[   
53Q? ...#SKI  G3
53QQ ...(   
53R9 ...      LDX   0  FREZTOT  
53RN ...      BZE   0  NONFROZ             [J IF NO CORE FREEZE ACTIVE  
53S7 ...      LDN   3  BOBJUNUSE           [NOW TOTAL UN-FROZEN FPB'S   
53SL ...      LDN   6  0
53T5 ...NEXTFPB 
53TJ ...      LDX   3  FPTR(3)  
53W3 ...      BXE   3  CXOBJUN,SOMFROZ     [J IF END OF CHAIN REACHED   
53WG ...      JBS NEXTFPB,3,AFFROZ          [J IF FROZEN
53W^ ...      ADX   6  ALOGL(3)            [INCREMENT COUNT OF UNFROZEN FPB'S   
53XD ...      BRN      NEXTFPB  
53XX ...NONFROZ 
53YB ...)   
53YT ...#SKI  G4
53^# ...(   
53^R ...      LDX   0  CFPCFREZ 
542= ...      BNZ   0  YD   
542P ...)   
5438 ...      COBJUNUSE 6   
543M ...SOMFROZ 
5446 ...      BZE   6  YD   
544K ...      BXGE  6  CJTARGET,R11AA   
5454 ...      SBS   6  CJTARGET 
545H ...#UNS  ISTDPSTATS
5462 ...      TRACEDP AJAMADJ,6 
546L    YD    LDN   6  0
548T ...#UNS  ADPLLSKIP 
54?4 ...(   
54*? ...      LDN   0  1                    [- DATAPASS COUNT OF
54CG ...      SMO      ADPSWPPTR            [- LEVEL 1 COREJAMS 
54FP ...      ADS   0  5
54HY ...)   
54L=          CALL  7  QCJ2                [FREE 2-WORD LINK BLOCKS 
555W          LDX   7  CJDELAYCNT3  
55KG          BPZ   7  TN1                 [SKIP IF DONE RECENTLY   
5656          LDN   7  CJDELAY3 
56JQ          STO   7  CJDELAYCNT3  
56PY ...#UNS CA1D   
56X7 ...      LDX   4  CSPLIT   
574B          CALL  7  QCJ1                [FREE EXCESS CORE FROM ENDS OF BLOCKS
57J2                   +CSPLITLN           [BUT ONLY IN AMOUNTS > OR = CSPLITLN 
583L    TN1   CALL  7  TEST 
58H=          LDX   7  CJDELAYCNT1  
592W          BPZ   7  TH2                 [SKIP RECLAIMING ROUTINE ONE IF DONE 
59GG          LDN   7  CJDELAY1 
5=26          STO   7  CJDELAYCNT1         [INDICATE DONE RECENTLY  
5=FQ          CALL  7  QCJ7                [FREE BFREEW BLOCKS  
5=^B          CALL  7  TEST 
5?F2          FRSOFURB                     [FURBS/FURRBS ASSOCIATED WITH SWAPPED
5?YL                                       [OUT PROGRAMS ONLY TO BE FREED   
5#D=          CALL  7  TEST 
5#XW          FRSOFUWB                     [FUWBS/FURWBS ASSOCIATED WITH SWAPPED
5*CG                                       [OUT PROGRAMS ONLY TO BE FREED   
5*X6          CALL  7  TEST 
5BBQ          FREEHALF                     [FREE HALF THE HALFOPEN CHAIN
5BWB          CALL  7  TEST 
5CB2          FREHFURB                     [HALF OF FURBS/FURRBS TO BE FREED
5CTL          CALL  7  TEST 
5D*=    TH2 
5DSW          LDX   2  FX2  
5F#G          BSON     EMSBIT,QEMS  
5FS6 ...      BXE   2  BSWINT,TH3          [J IF LLS INITIATED  
5GRB    QEMS
5H?2          LDX   0  CJSUM
5HQL          SMO      FX1  
5J==          TXL   0  T15  
5JPW          BCS      R11A                [END IF CJSUM<LEVEL ONE AND A HALF   
5K9G    TH3   LDX   7  CJDELAYCNT2  
5KP6          BPZ   7  TMESS               [JUMP IF ROUTINE ONE DONE RECENTLY   
5L8Q          LDN   7  CJDELAY2 
5LNB          STO   7  CJDELAYCNT2         [SET NEW DELAY   
5M82          FREEHALF                     [FREE HALF THE HALFOPEN CHAIN
5MML          CALL  7  TEST 
5N7=          FREHFURB                     [HALF OF FURBS/FURRBS TO BE FREED
5NLW          CALL  7  TEST 
5N^? ...      LDX   2  FX2  
5P?N ...      BXE   2  BSWINT,TH3A         [J IF LLS INITIATED  
5PL6          LDX   0  CJSUM
5Q5Q          SMO      FX1  
5QKB          TXL   0  T2   
5R52          BCS      R11A                [END IF CJSUM<LEVEL TWO  
5RJL    TH3A  FREEHALL                     [FREE ALL HALFOPEN CHAIN 
5RLT ...#UNS  ADPLLSKIP 
5RP4 ...(   
5RR? ...      LDN   0  1                    [- DATAPASS COUNT OF
5RTG ...      SMO      ADPSWPPTR            [- LEVEL 2 COREJAMS 
5RXP ...      ADS   0  6
5R^Y ...)   
5S4=          CALL  7  TEST 
5SHW          FREEFURB                     [FREE ALL FURBS & FURRBS 
5T3G          CALL  7  TEST 
5TH6          FREEFUWB                     [WRITE & FREE ALL FUWBS & SOME FURWBS
5W2Q          CALL  7  TEST 
5WGB    #SKI  G3
5X22          ON       CJAMAB   
5XFL ...TMESS LDX   2  FX2  
5X^= ...      BXE   2  BSWINT,R11A         [J IF LLS INITIATED  
5YDW ...TH4 
7KN2          ACROSS   SCHEDOUT,3   
7L7L    XX2U
7LM=    TH4A
7M6W          BI       ,CJNOSO             [IF NO CANDIDATES FOR
7MLG          JBC      TH4AA,,CJNOSO       [SWAPOUT AND OQ EXCEEDED 
7N66          COBJUSE   
7NKQ    #SKI  G4
7NQY ...(   
7NY6 ...      LDX   6  AOBJFAIL 
7P5# ...      SLL   6  10   
7P=G ...      ADX   0  6
7PCN ...)   
7PK2          SBX   0  COBJQUOTA
7Q4L          NGX   0  0                   [WE MARK THIS AND TRY
7QJ=          BNG   0  YD1                 [ NORMAL UNJAMMING - ONCE
7R3W          BC       ,CJNOSO  
7RHG    TH4AA   
7S36          LDX   6  CJSUM
7SGQ          SMO      FX1  
7T2B          TXL   6  T3                  [TEST IF CJSUM<LEVEL THREE   
7TG2          BCS      R11A                [YES; TERMINATE  
7TJ9 ...#UNS  ADPLLSKIP 
7TLD ...(   
7TNM ...      LDN   0  1                    [- DATAPASS COUNT OF
7TQW ...      SMO      ADPSWPPTR            [- LEVEL 3 COREJAMS 
7TT5 ...      ADS   0  7
7TX# ...)   
7TY4 ...#UNS CA1D   
7TYT ...      LDX   4  CIROUND  
7T^L          CALL  7  QCJ1                [FREE EXCESS CORE FROM ENDS OF BLOCKS
7WF=                   +IROUND             [IN AMOUNTS=IROUND   
7WYW          ACROSS   JAMSWAP,1
7XDG    #   
7XY6    #     TERMINATE 
7YCQ    #   
7YL= ...R11AA   
7YSQ ...#UNS  ISTDPSTATS
7^3= ...      TRACEDP AJAMFPC   
7^9Q ...#UNS  ISTDPSTATS
7^D= ...      TRACEDP AJAMSUC   
7^LQ ...R11A
7^T= ...      BC ,ASWCORJAM                [CLEAR UNJAM IN PROGRESS MARKER  
823Q ...      LDX   2  FX2  
82== ...      BXU   2  BSWINT,R11D         [J IF NOT LLS INITIATED  
82DQ ...      ACROSS CORESHED,2            [BACK TO CORESHED
82M= ...R11D  BC ,CJNOSO
82TW          ACROSS   CHARGESC,1   
83*G          MENDAREA 50,K99UNJAMMER   
83T6    #END
^^^^ ...226732420001
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1