BMFIXIT864

(George Source)

Macros used: ACROSS, ALTLENG, BACKREAD, BACKSPACE, BACKWRITE, BC, BLOCKMAP, BS, BSOFF, BSON, BXE, BXGE, BXL, BXU, CHAIN, CLOSETOP, DELETE, DOWN, FINDLINK, FREECORE, FREELINK, FULLBPAS, GEOERR, GETBAX, HUNT, HUNTMISB, HUNTW, JBS, JMBS, MBS, MFREE, MFREEW, MHUNT, MHUNTW, MONOUT, MONOUTX, NAME, NAMETOP, NEXTENT, OPENDIR, OUTPACK, OUTPACKX, POP, READ, READAGAIN, REPLACE, REWIND, REWRITE, SEG, SEGENTRY, SETNCORE, STEP, STEPAGAIN, STEPREWRITE, TOPFCB2, UP, VOP

BMFIXIT864.txt
22FL          SEG      BMFIXIT,84,EDWARD MOON,FILESTORE 
22^=                                       [ THIS SEGMENT IMPLEMENTS RECOVERY   
23DW                                       [ PROCEDURES FOR FILEBENT AND
23YG                                       [ BLKTWICE CORRUPTIONS   
245? ...      SEGENTRY K1BMFIXIT,Z1BMFIXIT  
24=4 ...      SEGENTRY K2BMFIXIT,Z2BMFIXIT  
24BT ...      SEGENTRY K3BMFIXIT,Z3BMFIXIT  
24HL ...      SEGENTRY K4BMFIXIT,Z4BMFIXIT  
25X2    NSIZRONG       +BMSIZEWRONG        [ SIZE INCONSISTENCY ETC.
26BL    MDUBALBLK1     +BM2ALBLK1          [
26W=    MDUBALBLK2     +BM2ALBLK2          [ HEADER MESSAGES FOR BLOCKTWICES
27*W    M2ALHEAD       +BM2ALHEADS         [
27TG    MFILERONG      +BMTWICEFILE        [ DETAILS OF FILE AND BLOCK  
28*6    TYPEFTWICE  
28SQ    #HAL +FI+FTWICE,0                  [ FI/FTWICE TYPE/SUBTYPE 
29#B    SUB1                               [ SUBROUTINE TO HUNT FI/FONCE
29S2          HUNTMISB 2,FI,FONCE   
2=?L          EXIT  1  0
2=CH ...SUB2                               [ SUBROUTINE TO HUNT FI/FTWICE   
2=HD ...      HUNTMISB 2,FI,FTWICE  
2=M* ...      EXIT  1  0
2=R=    MONOUT                             [ SUBROUTINE TO DO MONOUTX   
2?=W          SBX   6  FX1  
2?QG          MONOUTX  7
2#=6          ADX   6  FX1  
2#PQ          EXIT  6  0
2*9B    OUTPACK                            [ SUBROUTINE TO DO OUTPACK   
2*P2          SBX   7  FX1  
2B8L          OUTPACKX 4,5,6
2BN=          ADX   7  FX1  
2C7W          EXIT  7  0
2CMG    XHUNTFTWICE                        [ SUBROUTINE TO HUNT FI/FTWICE   
2D76          HUNTMISB 3,FI,FTWICE  
2DLQ          EXIT  7  0
2F6B    Z1BMFIXIT   
2FL2                                       [ ENTRY POINT FOR BLOCKTWICE RECOVERY
2G5L                                       [ ON FIRST PASS BLOCK NO.PUT IN FONCE
2GK=                                       [ ON SECOND PUT IN FTWICE WITH NAME  
2GP7 ...      LDX   5  ACOMMUNE5(2)        [COUNT OF BLOCKS NOT YET MAPPED. 
2GT4 ...      LDX   4  ACOMMUNE1(2)        [PRESERVE ACOMMUNE1 FOR BLOCKMAP 
2GY^ ...                                   [IN CASE STEPAGAIN COORDINATES.  
2H4W          STEPAGAIN 
2H#N ...      STO   4  ACOMMUNE1(2) 
2HJG          LDX   6  ERESN(3)            [ RESIDENCE NO.  
2HS# ...      BZE   6  MAPFCB   
2JHQ ...      LDX   1  ACOMMUNE1(2)        [ NO. OF BLOCKS IN FILE  
2K3B          ADN   1  ESERN(3)            [ ADDRESS OF FIRST BLOCK NO. 
2KH2          SBX   1  5                   [ GET POINTER TO BLOCK BEING MAPPED  
2L2L          LDX   4  0(1)                [ BLOCK NO.  
2LG= ...      BSON     BMBLKTWICE,PUTINFTWICE   
2L^W                                       [ J. IF ON SECOND PASS   
2MFG          CALL  1  SUB1                [ HUNT FONCE 
2M^6 ...      NGN   7  2                   [ INITIALISE COUNTER 
2NDQ    NXTBLK  
2NYB ...      ADN   7  2
2PD2          BXGE  7  A1(2),PUTINFONCE    [ J. IF END OF USED SPACE
2PXL          SMO      7
2QC= ...      LDX   0  A1+1(2)             [ COMPARE RESIDENCE NOS. 
2QWW          SBX   0  6
2RBG          BNZ   0  NXTBLK              [ J. IF DIFFERENT
2RW6          SMO      7
2S*Q ...      LDX   0  A1+2(2)             [ COMPARE BLOCK NOS. 
2STB          SBX   0  4
2T*2          BZE   0  NALREADY            [ J. IF SAME NO. ALREADY THERE   
2W#=          BRN      NXTBLK              [ J. IF DIFFERENT
2WRW    PUTINFONCE                         [ IF ON FIRST PASS   
2X?G          LDX   0  A1(2)
2XR6          ADN   0  2
2Y2Y ...      STO   0  A1(2)
2Y=Q          BXL   0  ALOGLEN(2),NOLEN    [ J. IF BLOCK NOT FULL   
2YQB          LDX   0  ALOGLEN(2)   
2^=2          ADN   0  10   
2^PL          ALTLENG  2,0,SUB1            [ OTHERWISE LENGTHEN IT  
2^^D ...      CALL  1  SUB1 
329=    NOLEN   
32NW          SMO      7
338G ...      STO   4  A1+2(2)             [ STORE BLOCK NO.
347Q          SMO      7
34MB ...      STO   6  A1+1(2)             [ AND RESIDENCE NO.  
3572    NALREADY
35LL          UP                           [ TO CARRY ON WITH MAPPING   
366=    PUTINFTWICE                        [ IF ON SECOND PASS  
36KW ...      LDX   2  BSACHAPTR
375G          POP      PUTINFTWICE,2,FTABWAIT [ LOCK OUT OTHER ACTIVITIES   
37K6          BACKSPACE 
384Q          STEPAGAIN                    [ TO NAME RECORD 
38#J ...      STO   3  AWORK3(2)           [ SAVE PTR. TO NAME REC. 
38JB ...      STO   6  AWORK4(2)           [ SAVE RESIDENCE NO. FOR LATER   
38S8 ...REHUNT  
3942          LDN   1  BMISC               [
39HL    NEXT                               [ SEARCH MISCELLANEOUS CHAIN 
3=3=          LDX   1  BPTR(1)             [ BACKWARDS FOR FI/FTWICES   
3=GW          BXE   1  CXMI,SETUPFTWICE    [ END OF SEARCH AT BASE OF CHAIN 
3?2G          LDX   0  ATYPE(1) 
3?=# ...      SMO      FX1  
3?G6          BXU   0  TYPEFTWICE,NEXT     [ J.IF NOT A FTWICE  
3?WL ...      TOPFCB2  3
3#?6 ...      LDX   5  FME1(3)  
3#ML ...      LDX   6  FME2(3)           [ COMPARE USERNAME OF FILE 
3*46 ...      LDX   7  FME3(3)  
3*DL          TXU   5  FTUSE(1) 
3*Y=          TXU   6  FTUSE+1(1)          [ WITH THAT IN FTWICE
3BCW          TXU   7  FTUSE+2(1)   
3BXG          BCS      NEXT                [J.IF DIFFERENT TO FIND NEXT FTWICE  
3C7# ...      LDX   3  AWORK3(2)
3CC6          LDX   5  ELOC1N(3)
3CWQ          LDX   6  ELOC2N(3)           [ COMPARE LOCAL NAME OF FILE 
3DBB          LDX   7  ELOC3N(3)
3DW2          TXU   5  FTLOC(1) 
3F*L          TXU   6  FTLOC+1(1)          [ WITH THAT IN FTWICE
3FT=          TXU   7  FTLOC+2(1)   
3G#W          BCS      NEXT                [J. IF DIFFERENT 
3GSG          LDX   5  FTGEN(1) 
3H#6          LDX   6  FTLAN(1)            [ COMPARE GENERATION AND LANGUAGE
3HRQ          TXU   5  EGENN(3) 
3J?B          TXU   6  ELANN(3)            [ WITH THOSE OF FILE 
3JR2          BCS      NEXT                [ J.IF DIFFERENT ELSE THIS IS
3K=L          LDX   0  ALOGLEN(1)          [THE ONE WE WANT 
3KQ=          SBX   0  A1(1)               [CHECK IF LONG ENOUGH FOR
3L9W          LDN   7  2                   [ EXTRA ENTRY
3LD6 ...      BXL   7  0,NOSET2            [ J.IF IT IS 
3LLB ...      CHAIN    1,BMISC+1
3LSL ...      LDX   1  BMISC+1  
3M2W ...      LDX   0  ALOGLEN(1)   
3M96 ...      ADN   0  2
3MCB ...      ALTLENG  1,0,SUB2 
3MKL ...      CALL  1  SUB2 
3MRW ...      LDX   1  2
3N26 ...      BRN      NOSET2   
3N8B    SETUPFTWICE 
3NN2 ...      SETNCORE 15,1,FI,FTWICE      [ SET UP FTWICE IF ONE NOT FOUND 
3P7L          LDN   0  FTRES-A1 
3PM=          STO   0  A1(1)               [ INITIAL RECORD HEADER  
3PN9 ...      CHAIN    1,BMISC+1
3PP8 ...      TOPFCB2  1
3PQ7 ...      LDN   5  FME1(1)  
3PR6 ...      LDX   1  BMISC+1  
3PS5 ...      LDN   6  FTUSE(1) 
3PT4 ...      MOVE  5  3                  [ USERNAME INTO FTWICE
3PW3 ...      STEPAGAIN 
3PX2 ...      LDX   1  BMISC+1  
3PX^ ...      LDN   5  ELOC1N(3)
3PYY ...      ADN   6  3
3P^X ...      MOVE  5  3                  [ LOCALNAME INTO FTWICE   
3Q2W ...      LDX   0  EGENN(3) 
3Q3T ...      STO   0  FTGEN(1)           [ AND GENERATION  
3Q4S ...      LDX   0  ELANN(3) 
3Q5R ...      STO   0  FTLAN(1)           [ AND LANGUAGE CODE   
3Q6W    NOSET2  
3QF? ...      LDX   2  FX2  
3QRN ...      LDX   6  AWORK4(2)           [ RECOVER RESIDENCE NO.  
3R66          LDN   0  1
3RKQ          SMO      A1(1)
3S5B ...      STO   6  A1(1)               [ STORE RESIDENCE NO.
3SK2          ADS   0  A1(1)               [ UPDATE RECORD HEADER   
3T4L          SMO      A1(1)
3TJ= ...      STO   4  A1(1)               [ STORE BLOCK NO.
3W3W          ADS   0  A1(1)               [ UPDATE RECORD HEADER   
3W?N ...      LDX   2  BSACHAPTR
3WHG          VOP      2,FTABWAIT          [ END LOCKOUT
3X36          STEP                         [ BACK TO BLOCKS RECORD  
3X=Y ...MAPFCB  
3XGQ          UP                           [ TO CARRY ON MAPPING
3Y2B                                       [
3YG2    Z2BMFIXIT                          [ ENTRY POINT FOR ECOPS NOT =
3Y^L                                       [ BLOCKS RECORD  
3^9D ...                                   [ X5 = NO. OF BLOCKS FROM REC. HDR.  
3^F= ...      LDX   0  ACOMMUNE2(2) 
3^P4 ...      STO   0  AWORK4(2)
3^YW          BACKSPACE 
42DG          STEPAGAIN                    [ ON NAME RECORD 
42Y6          JBS      NOGEOERR,3,BNWORK   [ J. IF WORKFILE 
43=H ...      FREELINK  
43JY ...      ACROSS   BMAPONE,12   
43XB    NOGEOERR
443? ...      SLL   5  15   
4478 ...      ORN   5  1
44?5 ...      STO   5  ECOPSN(3)
44C2          MBS      3,BNBMUWB,BNTEMP,BNERASE 
44WL          STEPREWRITE                  [ MARK TO BE ERASED IN BMAPTWO   
45B=          LDN   4  ELOC1N(3)
45TW          LDN   5  3
46*G          LDN   6  4
46T6          CALL  7  OUTPACK             [ OUTPACK LOCAL NAME OF ! FILE   
47#Q ...      LDX   7  NSIZRONG(1)  
47SB          CALL  6  MONOUT              [ MONOUT SIZE MESSAGE
47XG ...      FINDLINK 2
482L ...      BS       2,AW2PUTINFL 
48RL          STEP                         [ TO BLOCKS RECORD AGAIN 
48YS ...      LDX   0  AWORK4(2)
4962 ...      STO   0  ACOMMUNE2(2) 
49?=          UP                           [ TO MAP NEXT ENTRY  
49QW                                       [
4==G                                       [ ENTRY POINT TO CORRECT BLOCKTWICES 
4=Q6                                       [
4?9Q    Z3BMFIXIT   
4?PB ...      SETNCORE 10,3,FILE,FABSNB    [ SET UP FABSNB FOR  
4#92          LDN   0  10                  [ OPENING DIRECTORIES
4#NL          STO   0  A1(3)
4*8= ...      SETNCORE 3,3,BSTB,EMPTYB     [ SET UP EMPTYB  
4*MW          LDN   0  3                   [ FOR GETBAXES   
4B7G          STO   0  A1(3)
4BM6 ...      LDX   7  MDUBALBLK1(1)
4C6Q          CALL  6  MONOUT   
4CLB ...      LDX   7  MDUBALBLK2(1)
4D62          CALL  6  MONOUT   
4DKL ...      LDX   7  M2ALHEAD(1)  
4F5=          CALL  6  MONOUT              [ OUTPUT HEADINGS
4FJW          CALL  7  XHUNTFTWICE  
4G4G    NEXTFTWICE  
4GJ6          MHUNT    2,FILE,FABSNB
4GP# ...      LDN   0  10   
4GWG ...      STO   0  A1(2)
4H3Q          LDN   6  A1+1(3)  
4HHB          LDN   7  A1+1(2)  
4J32          MOVE  6  6                   [ FILENAME INTO FABSNB   
4J88 ...      ADN   6  6
4J*B ...      ADN   7  6
4JGL          LDN   0  1
4K2=          SMO      7
4KFW          STO   0  0                   [ REEL NO.   
4K^G          ADS   0  7                   [ UPDATE POINTER 
4LF6          MOVE  6  2                   [ DETAILS
4LYQ          OPENDIR  XBR,GENERAL         [ OPEN DIRECTORY 
4NJR ...      READAGAIN                    [ READ BLOCKS RECORD OF FILE 
4NX=          MHUNT    3,FILE,FRB   
4PBW          NAMETOP  3,FILE,FWB          [ RENAME FRB TO FWB  
4PWG ...      LDX   4  ERES(3)  
4QB6          MHUNT    2,BSTB,EMPTYB
4QTQ ...      STO   4  A1+1(2)             [ STORE RESIDENCE NO.
4RT2          SMO      FX2  
4S#L ...      STOZ     AWORK1              [ POINTER TO BLOCK NOS. IN FTWICE
4SS=    NEXTSWAP
4T?W          GETBAX                       [ GET A NEW BLOCK TO SWAP FOR OLD
4TRG          CALL  7  XHUNTFTWICE  
4W?6          SMO      AWORK1(2)
4WQQ          LDX   6  FTBLK(3)            [ OLD BLOCK NO. FOR BACKREAD 
4X=B ...      BACKREAD ,BSBS,RFAIL,EX4,EX6  
4XQ2          MHUNT    3,BSTB,BREAD 
4XR5 ...      BPZ   3  READOK   
4XRL ...RFAIL   
4XS8 ...      LDX   6  BA3(2)   
4XT? ...      SETNCORE 512,3,BSTB,BREAD 
4XWB ...      LDN   0  32   
4XXF ...      STO   0  A1(3)
4XYJ ...      LDN   0  #41  
4X^M ...      STO   0  A1+1(3)  
4Y2Q ...      LDN   0  A1+2(3)  
4Y3T ...      LDN   0  A1+3(3)  
4Y4Y ...      STOZ     A1+2(3)  
4Y63 ...      MOVE  0  35   
4Y76 ...      STO   6  BACK2(3) 
4Y89 ...READOK  
4Y9L          LDX   6  BACK2(3)            [ RECOVER OLD BLOCK NO.  
4YP=          MHUNT    2,BSTB,FULLB 
4^8W          LDX   5  A1+2(2)             [FIND NEW BLOCK NO. FROM GETBAX  
4^NG          STO   5  BACK2(3)            [ SWAP NOS. IN BREAD BLOCK   
5286          NAMETOP  2,BSTB,EMPTYB       [ RENAME FULLB FOR REUSE 
52MQ          MHUNT    2,FILE,FWB   
537B          ADN   2  ERES 
53M2    NEXTNO  
546L          ADN   2  1                   [ GET POINTER TO NEXT BLOCK NO.  
54L=          BXU   6  0(2),NEXTNO         [ J. IF NOT DOUBLY ALL. BLOCK NO.
555W          STO   5  0(2)                [ ELSE REPLACE WITH NEW NO.  
55KG ...      BACKWRITE FREE,BSBS,,EX4,BACK2(3)    [ REWRITE NEW BLOCK  
5656          LDN   0  2
56JQ          ADS   0  AWORK1(2)           [ UPDATE POINTER TO BLOCK NOS.   
574B          CALL  7  XHUNTFTWICE  
57J2          LDN   0  FTBLK(3)            [ POINTER TO FIRST BLOCK NO. 
583L          ADX   3  A1(3)
58H= ...      ADN   3  A1+1                [POINTER TO END OF BLOCK 
592W ...      SBX   3  AWORK1(2)           [ LESS NO.OF BLOCKS SWAPPED  
59GG ...      BXL   0  3,NEXTSWAP          [ J. IF NOT ALL SWAPPED YET  
5=26          REPLACE                      [ BLOCKS RECORD  
5=9Y ...      MFREEW   FILE,FWB 
5=FQ          BACKSPACE 
5=QM ...      MHUNTW   3,FILE,ENT          [ TO NAME RECORD 
5?3J ...      NAME     3,FILE,FWB   
5?#F ...      BS       3,BEBLOCK2   
5?KB ...      REWRITE   
5?W? ...      MHUNTW   3,FILE,FWB   
5#78 ...      JMBS     XCLOSE,3,BEONLINE,BEALLINCS,BEDUMP,BEINDEX   [WANT TO OUT
5#D=                                                 [ALWAYSDUMP,KEEPONLINE SET 
5#XW ...      LDX   0  EINC(3)                       [ OR IF NOT DUMPED 
5*CG          BZE   0  XCLOSE   
5BBQ          STOZ     0
5BHY ...      DLA   0  ECOPS(3)                      [ ELSE PUT OFFLINE 
5BP6 ...      BC       3,BEBLOCK2   
5BW# ...      REWRITE   
5C3G ...      MFREE    FILE,FWB 
5C8N ...      READ  
5C*W ...      MHUNTW   1,FILE,FRB   
5CH4 ...      NAME     1,BSTB,FULLB 
5CN= ...      FULLBPAS 1,2  
5CTL          DELETE                        [ AND DELETE BLOCKS RECORD  
5G?Q    XCLOSE  
5GRB          CALL  7  XHUNTFTWICE  
5H?2          LDN   4  FTUSE(3) 
5HQL          LDN   5  3
5J==          LDN   6  3
5JPW          CALL  7  OUTPACK             [ USERNAME   
5K9G          CALL  7  XHUNTFTWICE  
5KP6          LDN   4  FTLOC(3) 
5L8Q          LDN   5  3
5LNB          LDN   6  4
5M82          CALL  7  OUTPACK             [ LOCALNAME  
5MML          CALL  7  XHUNTFTWICE  
5N7=          LDN   4  FTGEN(3) 
5NLW          LDN   5  1
5P6G          LDN   6  5
5PL6          CALL  7  OUTPACK             [ GEN. NO.   
5Q5Q          CALL  7  XHUNTFTWICE  
5QKB          LDN   4  FTLAN(3) 
5R52          LDN   5  1
5RJL          LDN   6  6
5S4=          CALL  7  OUTPACK             [ LANGUAGE   
5SHW          CALL  7  XHUNTFTWICE  
5T3G          LDN   4  FTRES(3) 
5TH6          LDN   5  1
5W2Q          LDN   6  33   
5WGB          CALL  7  OUTPACK             [ RES. NO.   
5X22          CALL  7  XHUNTFTWICE  
5XFL          LDN   4  FTBLK(3) 
5X^=          LDN   5  1
5YDW          LDN   6  42   
5YYG          CALL  7  OUTPACK             [ BLOCK NO.  
5^D6 ...      LDX   7  MFILERONG(1) 
5^XQ          CALL  6  MONOUT              [ COMPLETED FILENAME + BLOCK NO. 
62CB          CALL  7  XHUNTFTWICE  
62X2          FREECORE 3                   [ FREE THIS FILES FTWICE 
63W=          CLOSETOP                     [ DIRECTORY  
64*W          CALL  7  XHUNTFTWICE  
64TG          BPZ   3  NEXTFTWICE   
6BL2          CALL  1  SUB1 
6C5L          FREECORE 2                   [ FONCE  
6CK= ...      MFREE    BSTB,EMPTYB  
6D4W          MFREE    FILE,FABSNB         [ TIDY UP
6DJG          UP
6F46 ...Z4BMFIXIT   
6GH2 ...NEXTWICE
6H2L ...      CALL  7  XHUNTFTWICE  
6HG= ...      BNG   3  TWICESGONE   
6H^W ...      FREECORE 3                   [ FREE ALL TWICES
6JFG ...      BRN      NEXTWICE 
6J^6 ...TWICESGONE  
6K=3 ...NEXTFWB 
6KGY ...      HUNTMISB 3,FILE,FWB   
6KRT ...      BNG   3  NOMORFWB 
6L4Q ...      FREECORE 3                   [ FREE ALL FWB'S IN MISC. CHAIN  
6L*M ...      BRN      NEXTFWB  
6LLJ ...NOMORFWB
6LXL ...      HUNTMISB 3,FI,FUSER   
6MC= ...      LDX   0  A1(3)
6MWW ...      ADN   0  A1(3)           [ PTR. TO END OF BLOCK   
6NBG ...      LDN   2  A1(3)
6NW6 ...NEXTONE 
6P*Q ...      ADN   2  5              [  NEXT WORD TO TEST  
6PTB ...      BXL   0  2,NOMOR        [  END OF BLOCK   
6R#= ...      STOZ     0(2) 
6T=Q ...      BRN      NEXTONE  
6TQB ...NOMOR   
6W=2 ...      HUNTW    3,FILE,FTAB  
6WPL ...      BNG   3  NOWFTAPE 
6X9= ...      FREECORE 3
6XNW ...      BRN      NOMOR             [  FREE ALL FTABS  
6Y8G ...NOWFTAPE
6YN6 ...      HUNTMISB 3,FI,FTAPE   
6^7Q ...      LDX   0  A1(3)
6^MB ...      ADN   0  A1(3)
7272 ...      LDN   2  A1+1(3)  
72LL ...      LDCT  6  #400 
736= ...NEXTAPE 
73KW ...      BXL   0  2,NONLEFT
745G ...      ORS   6  0(2) 
74K6 ...      ERS   6  0(2) 
754Q ...      ADN   2  4                  [   CLEAR ALL FOUND BITS  
75JB ...      BRN      NEXTAPE  
7642 ...NONLEFT 
76HL ...      HUNT      3,BSTB,FBSIB
773= ...      BNG   3  NOWSETMUP
77GW ...      FREECORE 3                  [ FREE ALL FBSIBS 
782G ...      BRN      NONLEFT  
78G6 ...NOWSETMUP   
78^Q ...      DOWN     BACKROOM,1          [  SET THEM UP AGAIN 
79FB ...      HUNTMISB 3,FI,FLIST   
79^2 ...      STOZ     A1(3)
7=DL ...      REWIND
7=Y= ...      REWIND     1  
7?CW ...      REWIND     2               [ RESET FILES TO BEGINNING 
7?XG ...      BSOFF    BMBLKTWICE,STARTAGAIN  [ I.E. J. IF PARTRES  
7#C6 ...      HUNTMISB 3,FI,FONCE   
7#WQ ...      LDX   1  FX1  
7*BB ...      LDX   2  FX2  
7*W2 ...      LDX   6  A1(3)
7B*L ...      ADN   6  A1(3)               [ PTR.TO END OF BLOCK
7BT= ...      LDN   3  A1(3)
7C#W ...      LDN   4  1
7CSG ...NEXTENT 
7D#6 ...      LDN   5  3                   [ SET PSEUDO PTRS. FOR BLOCKMAP  
7DRQ ...      LDX   0  1(3)               [ CHECK FOR RES.3 BLK.0   
7F?B ...      SBN   0  3
7FR2 ...      BNZ   0  MAPIT              [ J. IF NOT RES.3 
7G=L ...      LDX   0  2(3) 
7GQ= ...      ADN   3  1                  [ UPDATE PTR. FOR NOT MAPPING CASE
7H9W ...      BZE   0  NOMAPIT            [ J. IF BLK.0 
7HPG ...      SBN   3  1                  [ DECR. PTR. IF WE ARE MAPPING
7J96 ...MAPIT   
7JNQ ...      BLOCKMAP XBR,XBR  
7K8B ...NOMAPIT 
7KN2 ...      ADN   3  1
7L7L ...      LDX   7  3
7LM= ...      ADN   7  1
7M6W ...      BXL   7  6,NEXTENT       [ J. IF NOT FINISHED 
7MLG ...STARTAGAIN  
7N66 ...      ACROSS     BMAPONE,1  
8GFW ...XBR 
8G^G ...      GEOERR   1,BMFIXIT
8HF6 ...[   
8HYQ ...#END
^^^^ ...562066150002