SETLIST864

(George Source)

Macros used: BC, BS, BSOFF, BXGE, CHAIN, COOR1, EMSCORE, FINDCORE, FIXTRA, FPUT, FREEBAX, FREECORE, FSHCODE, FSHSKIP, FSHTEST, GEOERR, INFORM, JENVNOT, MENDAREA, MHUNT, MHUNTW, MOD, MONOUT, NAME, OUTBLOCK, OUTNUM, SEGENTRY, SETNCORE, TRACE, UP

SETLIST864.txt
22FL    #SEG  SETLIST70                    [JOHN BAILEY 
22^=    #LIS  K0SETLIST>K0EMS>K0ALLGEO  
23DW          8HSETLIST 
23YG    #   
24D6          SEGENTRY K1SETLIST,QK1SETLIST 
24MY ...      SEGENTRY K2SETLIST,SWAPFREE   
24XQ    #   
25CB    #SKIP G4
25X2    (   
26BL     SEGENTRY K99SETLIST     [USED IN SWAPSPACE MACRO.  
26W=                   +0   
27*W    MAXLFN         +16  
27TG    MAXBSA      #4001                  [
28*6    )   
28B9 ...#UNS ANOTALLOC  
28C# ...(   
28DC ...      FSHSKIP  B
28FG ...(   
28GK ...#   
28HN ...#     TABLE FOR NOTALLOC MACRO  
28JR ...#   
28KW ...      FIXTRA   ANOTALRES
28L^ ...               +0   
28N4 ...               +0   
28P7 ...               +0   
28Q= ...)   
28R* ...)   
28RS ...MINWELL        +50  
28S? ...MAXWELL        +500 
28SQ    QK1SETLIST  
29#B    #                                  CHECK SHEET SIZE, ALTER IF NECCESSARY
29BK ...      JENVNOT  NOTMEEP,MEEP        [ J. IF NOT MEEP 
29DS ...      LDX   0  BSSS                [ SHEET SIZE 
29H3 ...      SBN   0  1024                [ CHECK IF 1K
29K= ...      BZE   0  NOTMEEP             [ J. IF IT IS
29L* ...      LDN   0  1024                [ ELSE RESET SHEETSIZE   
29MD ...      STO   0  BSSS                [ TO BE 1K FOR MEEP  
29NH ...      MONOUT   BMWRNGSHSZ          [ AND INFORM OPERATORS   
29PN ...NOTMEEP 
29S2          NGN   6  1
2=?L          NGN   7  1
2=R=          STOZ     AWORK1(2)           [USED TO HOLD LFN.   
2?=W          LDX   3  ALFTP               [POINTER TO ALFTABLE.
2?QG          LDX   5  ALOGLEN(3)   
2#=6          ADX   5  3
2#PQ    PA    LDX   1  A1(3)
2*9B          BNG   1  PB                  [JUMP IF THIS FILE NON EXISTENT. 
2*P2          LDCT  4  #200 
2B8L          ANDX  4  A1(3)
2BN=          BZE   4  PB                  [JUMP IF NOT SWAP FILE.  
2C7W          LDN   6  0
2CMG          ANDN  1  #7777
2D76          ADX   1  AFDTP               [X1 POINTS TO FILE DESCRIPTION.  
2DLQ          LDCH  0  A1(1)
2F6B          LDX   4  A1+2(1)             [WORDS OR BLOCKS IN FILE IF DRUM 
2FL2          SBN   0  9
2G5L          BZE   0  PC                  [JUMP IF 1964 DRUM   
2GK=          SBN   0  16   
2H4W          BZE   0  PCA                 [JUMP IF 2851
2HJG          LDX   4  A1+4(1)             [SEGMENTS/CYLINDER   
2J46    PCA   SLL   4  7                   [CONVERT TO WORDS
2JHQ    PC    TXL   4  BSSS 
2K3B          BCC      PB                  [JUMP IF SHEET < FILE OR SHEET AREA. 
2KH2          STO   4  BSSS                [OTHERWISE THIS IS NEW SHEET SIZE.   
2L2L          LDN   7  0                   [SET  MARKER.
2LG=          LDX   0  AWORK1(2)
2L^W          STO   0  AWORK2(2)           [SAVE  LFN  TO OUTPUT LATER. 
2MFG    PB    LDN   0  1                   [UPDATE L.F.N
2M^6          ADS   0  AWORK1(2)
2NDQ          ADN   3  2
2NYB          TXL   3  5
2PD2          BCS      PA                  [JUMP IF NOT END OF BLOCK.   
2PXL          BZE   6  PD   
2QC=          GEOERR   1,SWAPFILE   
2QWW    PD    BNG   7  PE   
2RBG    #   MESSAGE JSTLST1 OUTPUT  
2RW6          LDN   4  4
2S*Q          OUTBLOCK  4                  [CREATE PARAMETER BLOCK  
2STB          LDX   4  BSSS 
2T*2          SRL   4  10   
2TSL          OUTNUM  4,0   
2W#=          LDX   4  AWORK2(2)           [LFN 
2WRW          OUTNUM  4,0   
2X?G          INFORM  1,JSTLST1,1          [OUTPUT THE MESSAGE  
2XR6    #     EACH LOGICAL FILE IS CHECKED TO ENSURE THAT:- 
2Y=Q    #   1 FOR DRUM -FILE SIZE IS A MULTIPLE OF SHEET SIZE   
2YQB    #   2 FOR EDS/FDS NUMBER OF WORDS/CYLINDER IS A MULTIPLE OF SHEET SIZE  
2^=2    #     IF NOT THE FILE DESCRIPTION (FDTABLE) IS ALTERED AND A MESSAGE
2^PL    #     IS OUTPUT TO TELL THE OPERATORS HOW MUCH OF THE FILE HAS BEEN 
329=    #     REMOVED   
32NW    #   
338G    PE    LDX   7  BSSS 
33N6          LDX   3  ALFTP
347Q          LDX   5  ALOGLEN(3)   
34MB          ADX   5  3
3572          STO   5  AWORK1(2)
35LL          STOZ     AWORK2(2)
366=    XA    LDX   2  A1(3)
36KW          BNG   2  XK                  [J. IF FILE NONEXISTENT. 
375G          LDCT  4  #200 
37K6          ANDX  4  A1(3)
384Q          BZE   4  XK                  [J. IF NOT SWAP FILE.
38JB          ANDN  2  #7777
3942          ADX   2  AFDTP               [POINTER  TO FILE DESCRIPTION TABLE. 
39HL          LDCH  6  A1(2)
3=3=          SBN   6  9
3=GW          BZE   6  XC                  [J. IF DRUM. 
3?2G          SBN   6  16   
3?G6          BZE   6  XCA                 [JUMP IF 2851
3?^Q          LDX   4  A1+4(2)  
3#FB          SLL   4  7                   [WORDS/SEEK AREA 
3#^2    XB    SBX   4  7
3*DL          BZE   4  XF                  [J. IF SHEET SIZE FACTOR OF FILEWIDTH
3*Y=          BPZ   4  XB   
3BCW          ADX   4  7
3BXG          SRL   4  7
3CC6          SBS   4  A1+4(2)             [UPDATE SEGMENTS/SEEK AREA   
3CWQ          MPY   4  A1+3(2)             [NUMBER OF BLOCKS LOST   
3DBB          SBS   5  A1+1(3)             [UPDATE BLOCKLETS COUNT  
3DW2          LDX   0  5
3F*L          SRL   0  3                   [X0= K WORDS LOST
3FT=          BRN      XE1  
3G#W    XCA   LDX   0  A1+2(2)             [BLOCKS IN FILE  
3GSG          SLL   0  7                   [WORDS   
3H#6          LDX   4  0
3HRQ    XCB   SBX   0  7
3J?B          BZE   0  XF                  [JUMP IF FILE SIZE  MULTIPLE OF  
3JR2          BPZ   0  XCB  
3K=L          ADX   0  7                   [X0 HOLDS WORDS LOST 
3KQ=          SBS   0  4                   [X4 -NEW FILE SIZE IN WORDS  
3L9W          SRL   4  7                   [BLOCKS IN FILE  
3LPG          STO   4  A1+2(2)             [UPDATE FDTABLE  
3M96          SRL   0  10                  [UNITS OF 1K FOR MESSAGE 
3MNQ          BRN      XE   
3N8B    XC    LDX   0  A1+2(2)             [DRUM PART.  
3NN2    XD    SBX   0  7
3P7L          BZE   0  XF                  [J. IF SHEET SIZE FACTOR OF FILE SIZE
3PM=          BPZ   0  XD   
3Q6W          ADX   0  7
3QLG          SBS   0  A1+2(2)             [UPDATE WORDS/SEEK AREA  
3R66          SRL   0  10                  [UNITS OF 1K WORDS.  
3RKQ          LDX   4  A1+2(2)  
3S5B          SRL   4  7
3SK2    XE    STO   4  A1+1(3)             [UPDATE BLOCKETS CT. IN ALFTABLE.
3T4L    XE1   SMO      FX2  
3TJ=          STO   0  AWORK3   
3W3W    #  MESSAGE JSTLST2  OUTPUT  
3WHG          LDN   4  4
3X36          OUTBLOCK  4                  [CREATE PARAMETER BLOCK  
3XGQ          LDX   4  AWORK2(2)           [LFN 
3Y2B          OUTNUM  4,0   
3YG2          LDX   4  AWORK3(2)           [AMOUNT REDUCED IN K 
3Y^L          OUTNUM  4,0   
3^F=          INFORM  1,JSTLST2,1          [OUTPUT MESSAGE  
3^YW    XF    LDX   7  BSSS 
42DG    XK    LDX   2  FX2  
42Y6          LDN   0  1
43CQ          ADS   0  AWORK2(2)           [UPDATE LFN. 
43XB          ADN   3  2
44C2          TXL   3  AWORK1(2)
44WL          BCS      XA                  [BACK TO DO IT ALL AGAIN.
45B=          LDX   3  ALFTP               [POINTER TO ALF TABLE
45TW          LDN   7  0
46*G    #SKI  K6SETLIST>499-499 
46T6          TRACE    3,ALF
46XP ...#UNS FSHTEST
472# ...#SKI
474X ...(   
477G ...      FSHSKIP  B
47=5 ...(   
47#Q ...T2    BXGE  7  ALOGLEN(3),ZSWSP    [J. IF END OF ALF TABLE. 
47BN ...)   
47DL ...)   
47GJ ...      FSHCODE  B,XFSHBBSFREE
47JG ...(   
47LD ...T2    BXGE  7  ALOGLEN(3),SWAPFREE [J IF END OF /ALFTABLE   
47NB ...XFSHBBSFREE 
47Q# ...)   
47SB    #SKI  K6SETLIST>599-599 
48#2          TRACE    7,ALF MOD
48RL          SMO      7
49?=          LDX   4  A1(3)
49QW          BNG   4  T6                  [J. IF LOGICAL FILE NON-EXISTENT.
4==G          LDX   5  BSBS4
4=?2 ...#UNS FSHTEST
4=?G ...(   
4=#2 ...      FSHCODE  A,NOTINMCA   
4=#G ...(   
4=*2 ...      LDX   0  7
4=*G ...      SBN   0  8                   [ CHECK IF RES. 4
4=B2 ...      BZE   0  T6                  [ OMIT RES 4 IM M/C A IN TEST ENVIR. 
4=BG ...NOTINMCA
4=C2 ...)   
4=CG ...)   
4=D2 ...      FSHCODE  B,XFSHBBS1A  
4=DG ...(   
4=F2 ...      LDCT  0  #200 
4=FG ...      SMO      7
4=G2 ...      ANDX  0  A1(3)
4=GG ...      BNZ   0  XFSHBBS1            [J IF SWAP FILE  
4=H2 ...      LDN   5  FSHBSBLOCKS         [64 BLOCKS FOR FILESTORE RESIDENCE   
4=HG ...XFSHBBS1
4=J2 ...#UNS FSHTEST
4=JG ...(   
4=K2 ...      BZE   0  XFSHBBS1A           [ J. IF F/S RES  
4=KG ...      LDX   0  7
4=L2 ...      SBN   0  8                   [ CHECK IF RES 4 
4=LG ...      BNZ   0  T6               [ IGNORE SWAP RES IF NOT RES 4 IN M/C B 
4=M2 ...)   
4=MG ...XFSHBBS1A   
4=N2 ...)   
4=NG ...      FSHSKIP   
4=P2 ...(   
4=Q6          BSOFF    BSBITS,T2A   
4?9Q          SMO      7
4?PB          LDX   5  A1+1(3)  
4#92    #SKI  K6SETLIST>399-399 
4#NL          TRACE    5,FILE SIZ   
4*8=          LDX   4  BSSS                [X4=WORDS/SHEET  
4*MW          LDCT  0  #200 
4B7G          SMO      7
4BM6          ANDX  0  A1(3)
4C6Q          BNZ   0  Q1                  [JUMP IF SWAP FILE   
4CLB          LDX   4  BSBS                [OTHERWISE X4=WORDS/BLOCK
4D62    Q1    SRL   4  7                   [BLOCKLETS/SHEET OR BLOCK
4DKL          DVS   4  4                   [X5=NUMBER OF BLOCKS OR SHEETS IN FIL
4F5=          LDN   1  24   
4FJW          DVS   4  1                   [NO.OF WORDS 
4G4G          BZE   4  T3   
4GJ6          ADN   5  1                   [ROUND UP
4H3Q    T3    SMO      BSBS4
4H?J ...)   
4HHB    T2A   ADN   5  BSRLEN-A1
4J32          EMSCORE  5
4JGL          FINDCORE 2
4K2=          NAME     2,BSTB,BSLIST
4KFW          SRL   7  1
4K^G          STO   7  BACK1(2)            [LOG FILE NO 
4LF6          SLL   7  1
4LYQ          LDX   1  5
4MDB    T3A   SMO      2
4MY2          STOZ     A1-1(1)  
4NCL          BCT   1  T3A  
4NX=          NGN   4  1
4PBW          STO   4  BACK2(2)            [SET UP  
4PWG          STO   4  BSRLEN(2)           [EMPTY   
4QB6          SMO      7
4QTQ          LDX   5  A1+1(3)             [NO OF BKTS  
4R*B          LDX   4  BSSS 
4RT2          LDCT  0  #200 
4S#L          SMO      7
4SS=          ANDX  0  A1(3)
4T?W          BNZ   0  Q2   
4TRG          LDX   4  BSBS 
4W?6    Q2    SRL   4  7
4WQQ          DVS   4  4
4X=B          STO   5  A1+3(2)             [NO OF BLKS  
4XQ2          SMO      7
4Y9L          LDX   4  A1(3)
4YP=          ANDN  4  #7777               [MOD FOR FDTABLE 
4^8W          LDX   1  AFDTP               [POINTER TO FD TABLE 
4^NG          SMO      4
5286          LDCH  5  A1(1)               [DEVICE TYPE 
52MQ          SRL   5  1                   [TURN
537B          ERN   5  1                   [INTO
53M2          ANDN  5  3                   [LETHARGY
546L          STO   5  A1+4(2)  
546X ...#UNS ANOTALLOC  
5478 ...(   
547F ...      FSHSKIP  B
547Q ...(   
5483 ...#   
548# ...#     MARK BSLIST BLOCKS FOR DO NOT ALLOCATE RESIDENCES 
548K ...#   
548W ...      FIXTRA   K100SETLIST         [USED BY NOTALLOC MACRO  
5497 ...      BRN      NOTAL3              [BRANCH NULLED OUT BY NOTALLOC   
549D ...#   
549P ...#UNS FSHTEST
54=2 ...(   
54=? ...      FSHCODE  B,NOTINB 
54=J ...      BRN      NOTAL3   
54=T ...NOTINB  
54?6 ...)   
54?C ...      LDN   1  0                   [CLEAR WORD MODIFIER 
54?N ...      LDX   4  BACK1(2) 
54?^ ...      SBN   4  24   
54#= ...      BNG   4  NOTAL1              [J IF RESIDENCE NO. < 24 
54#H ...      ADN   1  1                   [INCREASE WORD MODIFIER  
54#S ...      SBN   4  24   
54*5 ...      BNG   4  NOTAL1              [J IF RESIDENCE NO. < 48 
54*B ...      ADN   1  1                   [INCREASE WORD MODIFIER  
54*M ...      SBN   4  24   
54*Y ...NOTAL1  
54B9 ...      ADN   4  24                  [ADJUST SHIFT FACTOR 
54BG ...      SMO      FX1  
54BR ...      LDX   6  ANOTALRES(1)        [PICK UP RELEVANT WORD IN TABLE  
54C4 ...      SMO      4
54C* ...      SLL   6  0                   [SHIFT UNTIL REQUIRED BIT IN BIT 0   
54CL ...      BPZ   6  NOTAL3              [J IF BIT NOT SET
54CX ...      LDCT  0  #200                [IS IT SWAPFILE  
54D8 ...      SMO      7
54DF ...      ANDX  0  A1(3)
54DQ ...      BZE   0  NOTAL2              [NO -SO OK TO MARK   
54F3 ...      LDN   5  2                   [YES -SO ERROR   
54F# ...      LDX   4  BACK1(2)            [RESIDENCE NO
54FK ...      OUTBLOCK 5
54FW ...      OUTNUM   4,0  
54G7 ...      INFORM   1,JSTLST3,1         [OUTPUT ERROR MSG
54GD ...      MHUNT    2,BSTB,BSLIST       [RELOCATE BSLIST 
54GP ...      BRN      NOTAL3   
54H2 ...NOTAL2  
54H? ...      LDCT  0  #200                [SET BIT 1 (BSMARK) TO MARK DO NOT   
54HJ ...      ORS   0  A1+4(2)             [ALLOCATE
54HT ...NOTAL3  
54J6 ...#   
54JC ...      FIXTRA   K101SETLIST  
54JN ...#   
54J^ ...)   
54K= ...)   
54L=          LDCT  0  #200                [J. IF NOT MARKED AS A SWAP FILE.
555W          SMO      7
55KG          ANDX  0  A1(3)
5656          BZE   0  T4   
56JQ          LDCT  0  #400                [SET MARKER IN LETHARGY WORD.
574B          ORS   0  A1+4(2)  
57BR ...      LDN   0  BWELL
57P8 ...      STO   0  BSRESERVE(2)        [SET RESERVE TANK =BWELL 
583L          BRN      T5   
584? ...#   
584Y ...#     ALLOCATE SIZE OF RESERVE TANK AS 1% OF SIZE OF RESIDENCE  
585K ...#     WITH MIN SIZE 50 BLOCKS AND MAX 500   
586= ...#   
586X ...T4    LDX   1  FX1  
587J ...      LDN   0  100                 [CALC 1% OF  
5889 ...      LDX   5  BSTOT(2)            [SIZE OF RESIDENCE   
588W ...      DVS   4  0
589H ...      LDX   0  5                   [SAVE IN X0  
58=8 ...      SBX   5  MINWELL(1)          [LESS THAN 50 BLOCKS 
58=T ...      BPZ   5  TT6                 [NO  
58?G ...      LDX   5  BSTOT(2)            [IS SIZE OF RESIDENCE
58#7 ...      SBX   5  MINWELL(1)          [LESS THAN 50 BLOCKS 
58#S ...      BPZ   5  TT4                 [NO  
58*F ...#   
58B6 ...#     RESIDENCE LESS THAN 25K   
58BR ...#   
58CD ...      LDN   5  2                   [OUTPUT WARNING  
58D5 ...      LDX   4  BACK1(2) 
58DQ ...      OUTBLOCK 5                   [MSG 
58FC ...      OUTNUM   4,0  
58G4 ...      INFORM   1,JSTLST4,1  
58GP ...      MHUNT    2,BSTB,BSLIST
58HB ...#   
58J3 ...TT4   LDX   0  MINWELL(1)          [SET RESERVE TANK TO 50 BLOCKS   
58JN ...TT5   STO   0  BSRESERVE(2) 
58KF ...      FSHCODE  B,NOTFSHB
58MN ...(   
58PX ...      STOZ     A1(2)               [ BSPOI = 0 FOR F/S RES IN MACH. B   
58S6 ...      NGX   0  BSTOT(2)            [SET BSFRE=BSTOT FOR FS RES IN   
58W* ...NOTFSHB 
58YJ ...)                                  [ MACHINE B, OTHERWISE NEGATE
599H ...T5    NGS   0  BSFREE(2)           [MACHINE B OTHERWISE NEGATE  
59GG          CHAIN    2,BMISC+1
5=26    T6    ADN   7  2
5=FQ          BRN      T2   
5=H3 ...#   
5=J# ...TT6   SBN   5  450                 [IS RESERVE TANK 
5=KK ...      BNG   5  TT5                 [GREATER THAN 500 BLOCKS 
5=LW ...      LDX   0  MAXWELL(1)          [YES SO SET TO 500 BLOCKS
5=N7 ...      BRN      TT5  
5=PJ ...SWAPFREE
5=PY ...#UNS FSHTEST
5=Q# ...(   
5=QN ...      FSHCODE  A,NOTLOOP1   
5=R4 ...(   
5=RD ...      BS       2,BFSHACTB          [ SWAP ACT TO M/C B  
5=RS ...      FPUT  
5=S8 ...      COOR1                        [ TO GET CHAINS SWAPPED  
5=SJ ...      LDN   7  0                   [ REINIT. ALFTABLE POINTER   
5=SY ...      BRN      T2                  [ TO SET UP /BSLISTS IN M/C B
5=T# ...NOTLOOP1
5=TN ...)   
5=W4 ...      FSHCODE  B,NOTLOOP2   
5=WD ...(   
5=WS ...      BC       2,BFSHACTB          [ SWAP ACT BACK TO M/C A 
5=X8 ...      FPUT  
5=XJ ...      COOR1                        [ AND GET CHAINS SWAPPED AGAIN   
5=XY ...NOTLOOP2
5=Y# ...)   
5=YN ...)   
5=^B    #   
5?F2    #     FREE  ALL BACKING STORE  ON SWAP FILES
5?YL    #   
5#D=    T7    LDX   7  BSSS                [SHEET SIZE  
5#XW          LDX   3  ALFTP
5*CG          LDX   5  ALOGLEN(3)   
5*X6          ADX   5  3
5BBQ          STO   5  AWORK1(2)
5BWB          STOZ     AWORK2(2)
5CB2          SETNCORE 512,2,BSTB,FULLB 
5CTL    YC    LDX   0  A1(3)
5D*=          BNG   0  YA   
5DSW          LDCT  4  #200 
5F#G          ANDX  4  A1(3)
5FS6          BZE   4  YA   
5G?Q          SMO      FX2  
5GRB          LDX   0  AWORK2              [LOGICAL FILE NO.
5H?2          STO   0  A1+1(2)  
5H?T ...#UNS FSHTEST
5H#N ...(   
5H*H ...      FSHCODE  A,NSMACA 
5HBB ...(   
5HC9 ...      LDX   0  A1+1(2)  
5HD4 ...      SBN   0  4                   [ CHECK IF RESIDENCE 4 AND IF SO 
5HDX ...      BZE   0  YA                  [ IGNORE IT IN M/C A IN TEST ENVIR.  
5HFQ ...NSMACA  
5HGK ...)   
5HHD ...      FSHCODE  B,NSMACB 
5HJ? ...(   
5HK6 ...      LDX   0  A1+1(2)  
5HK^ ...      SBN   0  4                   [ CHECK IF RESIDENCE 4 AND IF NOT
5HLS ...      BNZ   0  YA                  [ IGNORE IT IN M/C B IN TEST ENVIR.  
5HMM ...NSMACB  
5HNG ...)   
5HP* ...)   
5HQL          SRL   7  7                   [SHEET SIZE IN BLOCKLETS.
5J==          LDX   5  A1+1(3)             [NO. OF BLOCKLETS IN FILE.   
5JPW          DVS   4  7                   [X5= NO. OF SHEETS IN FILE.  
5K9G    #SKI  K6SETLIST>199-199 
5KP6          BNZ   4  XER                 [ERROR IF A REMAINDER.   
5L8Q          LDN   6  0
5LNB    XG    LDN   4  510  
5M82          STO   4  A1(2)               [NO. OF BLOCKS TO BE FREED.  
5MML          TXL   4  5
5N7=          BCS      XL   
5NLW          STO   5  A1(2)               [IF LESS THAN 510 THIS TIME. 
5P6G    XL    LDN   0  2
5PL6          ADS   0  A1(2)               [UPDATE RECORD HEADER
5Q5Q    XH    STO   6  A1+2(2)             [INSERT SHEET NO.
5QKB          SBN   5  1
5R52          BZE   5  XI                  [J. IF END OF FILE.  
5RJL          ADN   2  1
5S4=          ADX   6  7                   [UPDATE SHEET NO.
5SHW          BCT   4  XH                  [J. IF BLOCK NOT YET FULL.   
5T3G    XI    FREEBAX   
5TH6          MHUNTW   2,BSTB,EMPTYB
5W2Q          NAME     2,BSTB,FULLB        [OTHERWISE RENAME BLOCK  
5WGB          BZE   5  YA   
5X22          BRN      XG                  [AND START AGAIN.
5XFL    YA    LDX   1  2
5X^=          LDX   2  FX2  
5YDW          LDN   0  1
5YYG          ADS   0  AWORK2(2)           [UPDATE LFN. 
5^D6          ADN   3  2
5^XQ          TXL   3  AWORK1(2)
62CB          BCC      YB   
62X2          LDX   2  1
63BL          LDX   7  BSSS 
63W=          BRN      YC   
64*W    YB    FREECORE 1
64M= ...#SKIP G4
64QB ...(   
64TG    #     THIS SECTION CALCULATES THE TOTAL NO OF SHEETS AVAILABLE FOR  
65*6    #     SWAP SPACE - NOT COUNTING THOSE RESERVED FOR FAILURES - CONVERTS  
65SQ    #     IT TO A NO. OF PAGES & STORES IT IN EFSWAPSP  
66#B    #   
67R=          LDCT  4  0                   [INIT MAX LFN
68=W          LDCT  5  #400                [INIT MIN LFN
68QG          LDN   6  0
69=6          LDN   3  BMISC               [BASE OF MISCELLANEOUS CHAIN 
69PQ    ZS2   LDX   3  FPTR(3)             [NEXT BLOCK  
6=9B          TXU   3  CXMI                [J WHEN WE HAVE BEEN RIGHT ROUND 
6=P2          BCC      ZS4  
6?8L          LDX   0  ATYPE(3) 
6?N=          SRL   0  12   
6#7W          SBN   0  BSTB+BSLIST         [IGNORE ALL EXCEPT BSTB/BSLIST BLKS  
6#MG          BNZ   0  ZS2  
6*76          LDX   0  A1+4(3)  
6*LQ          BPZ   0  ZS2                 [IGNORE UNLESS IT REFERS TO SWAPFILE 
6B6B          TXL   5  BACK1(3)            [COMPARE LFN WITH MIN
6BL2          BCS      ZS3  
6C5L          LDX   5  BACK1(3) 
6CK=    ZS3   TXL   4  BACK1(3)            [COMPARE LFN WITH MAX
6D4W          BCC      ZS3A 
6DJG          LDX   4  BACK1(3) 
6F46    ZS3A
6FHQ          ADX   6  A1+1(3)             [ACC TOTAL NO OF SHEETS FOR SWAPPING 
6G3B          BVS      (GEOERR)            [ERROR IF OVERFLOW   
6GH2          LDX   7  A1+3(3)             [SIZE OF FILE
6H2L          LDX   0  ASHEETSIZE          [CONVERT TO PAGE NO. 
6HG=          SRL   0  10   
6H^W          MPY   7  0
6JFG          BNZ   7  (GEOERR) 
6J^6          TXL   0  MAXBSA(1)           [ERROR IF FILE EXCEEDS PERMITTED SIZE
6KDQ          BCC      (GEOERR) 
6KYB          BRN      ZS2  
6LD2    ZS4   LDX   0  ASHEETSIZE   
6LXL          SRL   0  10                  [NO OF PAGES PER SHEET   
6MC=          MPY   6  0                   [CONVERT TOTAL NO OF SHEETS TO PAGES 
6MWW          BNZ   6  (GEOERR) 
6NBG          LDX   0  K99SETLIST(1)
6NW6          BZE   0  ZS5                 [ JUMP IF NO SWAPSPACE MACRO.
6P*Q          LDX   6  7
6PTB          MPY   6  0                   [ MULTIPLY BY PARAMETER, AND 
6Q*2          SRA   67 7                   [ DIVIDE BY 128  
6QSL          BNZ   6  ZSGR 
6R#=          BZE   7  ZSGR 
6RRW          BRN      ZS5  
6S?G    ZSGR
6SR6          GEOERR   1,SWAPSPAC   
6T=Q    ZS5 
6TQB          STO   7  EFSWAPSP 
6W=2          BNG   5  (GEOERR)            [ERROR IF NO SWAPFILE
6WPL          STO   5  EMINSSLFN           [STORE MIN LFN ALLOCATED AS SWAPSPACE
6X9=          SBX   4  5                   [DIFFERENCE BETWEEN MAX & MIN
6XNW          TXL   4  MAXLFN(1)           [ERROR IF TOO LARGE  
6Y8G          BCC      (GEOERR) 
6YN6    )   
6YXY ...ZSWSP   
6YY? ...#UNS FSHTEST
6YYL ...(   
6YY^ ...      FSHCODE  A,NIFINB 
6Y^# ...(   
6Y^M ...      LDX  2  FX2   
6^22 ...      BS      2,BFSHACTB          [ PUT ACT INTO M/C B  
6^2* ...      FPUT  
6^2N ...      COOR1                       [ AND GET CHAINS ETC SWAPPED  
6^33 ...      BRN      T7                 [ TO REPEAT FREEBAXES IN M/C B
6^3B ...NIFINB  
6^3P ...)   
6^44 ...      FSHCODE  B,NIFINA 
6^4C ...(   
6^4Q ...      LDX   2  FX2  
6^55 ...      BC       2,BFSHACTB         [ RETURN ACT TO M/C A 
6^5D ...      FPUT  
6^5R ...      COOR1                       [ TO SWAP CHAINS ETC AGAIN
6^66 ...NIFINA  
6^6F ...)   
6^6S ...)   
6^7Q          UP
6^MB    #   
7272    #SKI  K6SETLIST>199-199 
72LL    XER   GEOERR   1,SHEETSIZ   
736=    #   
73KW          MENDAREA 20,K98SETLIST
745G    #   
74K6    #END
^^^^ ...035443100003