FLAWMAP866

(George Source)

Macros used: BACKTRAN, CHTRAN, CLOSEST, CONVERT, FINDSU, FREECORE, GEOERR, INFORM, LADDP, LOCKC, LTYPE, MENDAREA, MFIND, MFINDSU, MHUNTW, MUSEST, OPENST, OUTBLOCK, OUTPARAM, READST, RELST, RELSTX, SEGENTRY, SETNCORE, SETUPCORE, SUSESTX, TESTREPNOT, TRACE, UNLOCKSU, UP, UPPLUS, USEST

FLAWMAP866.txt
22FL    #SEG  FLAWMAP70         [NEIL BOULT 
22^=    #LIS  K0FLAWMAP 
23DW          8HFLAWMAP 
23YG    #  BACKMAP COMES DOWN TO THIS SEGMENT AFTER  IT HAS CREATED A BITMAP
24D6    #  OF UNALLOCATED BS BLOCKS. FLAWMAP GOES THROUGH THE FLAW INDEX FOR
24XQ    #  EACH STORAGE UNIT HOLDING FILESTORE, AND UNSETS THE BIT IN THE   
25CB    #  BITMAP IF IT FINDS A FLAW ENTRY FOR A FILESTORE BLOCK
25X2    #   
26BL          SEGENTRY K1FLAWMAP,QK1FLAWMAP 
26DT ...#SKI  JSKI34
26H4 ...(   
26K? ...      SEGENTRY   K2FLAWMAP,QK2FLAWMAP   
26MG ...#DEF  FLBSUN=FBLCNT 
26PP ...#DEF  FLBCSN=FLCORE 
26RY ...)   
26W=    #   
27*W    #   DATA AREA     IN ACTIVITY BLOCK 
27TG    #   
28*6    #DEF  PA=AWORK1 
28SQ    #DEF  SER=AWORK2
29#B    # DATA AREA IN /GEXD BLOCK  
29S2    #   
2=?L    #DEF SCYL=EFDC  
2=R=    #DEF TCYL=ENEWRP
2?=W    #DEF  SB=ENEWG  
2?QG    #DEF  TB=FNAMER 
2#=6    #DEF  SEEK=EHOME
2#PQ    #DEF  MAP=FNAMER+1  
2*9B    #DEF  REP=MAP+1 
2*P2    #   
2B8L    #   
2BN=    XCON   10000
2C7W    SIX7  #777777   
2CMG    Q3  
2D76    #HAL  +BSTB+FBSIB,0 
2DLQ    NCAN  GEOERR 1,FLAWCANT 
2F6B    WERR  GEOERR 1,XFLAWMAP 
2FL2    WREAD SBX   6  FX1  
2G5L          READST 2,NOTCOR   
2GK=          TESTREPNOT OK,WR1 
2H4W          LDX   1  ECOR(3)  
2HJG    NOTCOR  
2J46          ADX   6  FX1  
2JHQ          EXIT  6  1
2K3B    WR1   TESTREPNOT EXFAIL,WERR
2KH2          ADX   6  FX1  
2L2L          EXIT  6  0
2LG=    XCON10 LDN   5  0   [CONVERT TO DECIMAL S/R 
2L^W          SMO   FX1 
2MFG          DVD   4  XCON    [10000   
2M^6          ADN   5  1     [ROUND UP  
2NDQ          LDN   6  3      [COUNT FOR ZERO SUPPRESSION   
2NYB          LDX   4  5
2PD2          LDN   5  0
2PXL          ADN   2  ACOMMUNE1
2QC=          MODE   1  
2QWW    YCON1  CBD   4  0(2)
2RBG          BCHX   2  £   
2RW6          BCT   6  YCON1
2S*Q          MODE  0      [DONT SUPPRESS ZERO IF LAST DIGIT
2STB          CBD   4  0(2) 
2T*2          BCHX   2  £   
2TSL          EXIT   0  0   
2W#=    XCON8 LDN   7  6                   [CONVERT TO OCTAL S/R
2WRW    ZCON1  STOZ 4   
2X?G          SLL   45  3   
2XR6          DCH   4  0(2) 
2Y=Q          BCHX   2  £   
2YQB          BCT   7  ZCON1
2^=2          EXIT   0  0   
2^PL    QK1FLAWMAP  
329=    #SKI  K6FLAWMAP>99-99   
32NW          TRACE FX2,FLAWMAP1
338G          SETNCORE GEXDLEN,3,EWDAS,GEXD 
33N6          STOZ  REP(3)  
347Q          STOZ  PA(2)   
34MB          STOZ  SER(2)  
3572          LDX   0  Q3(1)
35LL          STO   0  MAP(3)      [STORE /FBSIB BLOCK TYPE AND SUBTYPE 
366=    QA    LDX   1  ALFTP       [POINTER TO ALFTABLE BLOCK   
36KW          LDX   4  PA(2)       [POINTER TO ENTRY IN BLOCK   
375G          TXL   4  ALOGLEN(1)   
37K6          BCS      QB          [J. UNLESS END OF ALFTABLE   
384Q          LDX   4  REP(3)      [SAVE FLAW COUNT 
38JB          LDX   0  SER(2)   
3942          BZE   0  QNOC                [ANY OPEN SUS
39HL          CLOSEST NCOR1 
3=3=          TESTREPNOT OK,WERR
3=GW    NCOR1 UNLOCKSU 5
3?2G          RELST 5   
3?G6          MHUNTW   3,EWDAS,GEXD 
3?^Q    QNOC  FREECORE 3
3#FB          STO   4  EXEC3(2)   [)TO BE PASSED ...........(FLAWCOUNT) 
3#^2          STOZ  AWORK4(2)     [)UP  
3*DL          UP
3*Y=    #   
3BCW    #   
3BXG    #   
3CC6    QB    ADX   1  4          [A1(1) NOW POINTS TO CORRECT ENTRY
3CWQ          LDCT  0  #600 
3DBB          ANDX  0  A1(1)
3DW2          BNZ   0  QD         [J. IF B0,B1 SET  
3F*L          LDX   0  A1(1)      [ELSE......START WORK 
3FT=          BRN   QC  
3G#W    #   
3GSG    QD    LDN   0  2          [UPDATE POINTER TO NEXT ENTRY 
3H#6          ADS   0  PA(2)
3HRQ          BRN   QA            [J.   
3J?B    QC    SRL   4  1
3JR2          DSA   4  MAP(3)     [LOGICAL FILE NR  
3K=L    #SKI  K6FLAWMAP>99-99   
3KQ=          TRACE MAP(3),LOGICALF 
3L9W          ANDN  0  #7777
3LPG          ADX   0  AFDTP      [AFDTP: POINTER TO FDTABLE
3M96          LDX   1  0          [X1 POINTS TO APPROPRIATE FDTABLE ENTRY   
3MNQ          LDX   5  A1(1)
3N8B          SRL   5  18   
3NN2          SBN   5  6
3P7L          BZE   5  QCA       [J. TO  QCA UNLESS NEITHER 
3PM=          SBN   5  7         [FDS OR
3Q6W          BZE   5  QCA  
3QLG          SBN   5  13                  [OR EDS 30   
3R66          BZE   5  QCA                 [J IF EDS 30 
3RKQ          LDX   5  AWORK2(2)           [SAVE SERIAL NO. IN CASE LAST
3S5B                                       [FILE DESCRIPION IS FOR DRUM 
3SK2          BRN      QD                  [GO FOR NEXT (IF ANY)
3T4L    QCA   LDX   0  A1+4(1)  
3TJ=          STO   0  SEEK(3)   [STORE BLOCK DEPTH OF LOGICAL FILE 
3W3W          LDX   0  A1+3(1)  
3WHG          SBN   0  1         [NO.OF CYLINDERS IN FILE MINUS 1   
3X36          STO   0  TCYL(3)  
3XGQ          LDX   0  A1+1(1)  
3Y2B          STO   0  SCYL(3)   [START CYL. OF FILE PLUS CYL. ADDRESS  
3YG2                             [OF START OF SU
3Y^L          ADS   0  TCYL(3)   [END CYL ..............
3^F=    [SCYL,TCYL REFER TO CYLINDER NOS RELATIVE TO START OF HARDWARE UNIT 
3^YW          LDX   0  A1+4(1)  
42DG          SBN   0  1           [BLOCK DEPTH MINUS 1 
42Y6          STO   0  TB(3)
43CQ          LDX   0  A1+2(1)  
43XB          STO   0  SB(3)       [START BLOCK OF LOGICAL FILE 
44C2          ADS   0  TB(3)       [END BLOCK OF LOGICAL FILE   
44WL    [   
45B=    RB    LDN   0  1
45TW          ADS   0  TCYL(3)    [)ADD 1 TO END CYL/BLK FOR
46*G          ADS   0  TB(3)      [)EASIER COMPARISON LATER 
46T6          LDX   5  A1+5(1)     [X1 POINTS TO FDTABLE
47#Q          SMO  FX1  
47SB          ANDX   5  SIX7       [#777777,X7 =SERIAL NO   
48#2          FINDSU   1,5,QD   
48RL          LDX   0  ASUBASE(1)  [DATUM OF S.U.   
49?=          SBS   0  SCYL(3)     [START AND END CYLINDER  
49QW          SBS   0  TCYL(3)     [RELATIVE TO S.U.
4==G    #   
4=Q6    #SKI K6FLAWMAP>199-199  
4?9Q    (   
4?PB          TRACE 5,FLAWSERL  
4#92          TRACE SCYL(3),SCYL
4#NL          TRACE TCYL(3),TCYL
4*8=          TRACE SB(3),SB
4*MW          TRACE TB(3),TB
4B7G    )   
4BM6          LDX   4  HBLOCK(1)   [SAVE BLOCKS/CYL 
4C6Q          LDX   7  HFLAW(1)    [SAVE WORD ADDRESS OF FIRST FLAW CELL
4CLB          BZE   7  QD          [J. IF NO FLAW CELLS ON THIS SU  
4D62          LDX   0  SER(2)   
4DKL          BZE   0  ZX          [J. IF NO PREVIOUS SU
4F5=          STO   5  6           [SAVE CURRENT SERIAL NR. 
4FJW          TXU   0  5                   [X0:PREVIOUS SU SERIAL NR,X5 CURRENT 
4G4G          BCC      Z                   [J IF CURRENT UNIT SAME AS PREVIOUS  
4GJ6          LDX   5  0
4H3Q          CLOSEST NCOOR 
4HHB          TESTREPNOT OK,WERR
4J32          MHUNTW 3,EWDAS,GEXD   
4JGL    NCOOR UNLOCKSU 5
4K2=          RELST 5              [RELEASE OLD UNIT
4KFW          LDX   5  6       [RESTORE SERIAL NR OF SU CURRENTLY REQUIRED  
4K^G    #SKI  ENTWINE<1$1   
4LF6    ZX    USEST 5,NOT   
4LYQ    #SKI  ENTWINE   
4MDB    ZX    USEST    5,NOT,,WERR,WERR 
4MY2    XB    MHUNTW 3,EWDAS,GEXD   
4NCL          OPENST 5  
4NX=    Z     LDX   2  7
4PBW    #SKI K6FLAWMAP>199-199  
4PWG          TRACE  7,FLAWADDR 
4QB6    XC    CALL  6  WREAD    [WORD ADDRESS IN X2.GET CORE POINTER IN X1  
4QTQ          BRN   XTRAN       [TRANSFER FAIL  
4R*B          LDX   2  0(1)     [TRANSFER OK,SAVE WD ADDRESS OF 
4RT2                            [NEXT FLAW CELL IN X2,IF ANY
4S#L          STO   2  FNAMER+3(3)     [SAVE NEXT FLAW INDEX CELL ADDR  
4SS=          ADN   1  1
4T?W    YLOOP ADN   1  1
4TRG          LDX   7  0(1)     [NEXT FLAW BLK ADDRESS IN THIS FLAW CELL
4W?6          BNG   7  NEWFI    [BRN TO NEXT FLAW CELL  
4WQQ          BZE   7  YLOOP    [ENTRY NOT USED;UPDATE POINTER  
4X=B          DVS   6  4        [X7=CYL NO;X6=BLK NO
4XQ2    #SKI K6FLAWMAP>199-199  
4Y9L    (   
4YP=          TRACE  7,CYLNO
4^8W          TRACE  6,BLKNO
4^NG    )   
5286          LDX   0  6
52MQ          LDX   6  7
537B          LDX   7  0        [SWITCH X6,X7   
53M2          TXL   6  TCYL(3)  
546L          BCC      YLOOP    [J. IF CYL TOO BIG  
54L=          TXL   7  TB(3)    [TO NEXT ENTRY.ALSO IF BLK TOO BIG  
555W          BCC      YLOOP
55KG          SBX   6  SCYL(3)  
5656          SBX   7  SB(3)
56JQ          BNG   6  YLOOP   [J. IF BLK OR CYL TOO SMALL  
574B          BNG   7  YLOOP   [TO NEXT ENTRY   
57J2          MPA   6  SEEK(3) [X6= NO OF HARDWARE BLKS IN LOGICAL FILE 
583L          SRL   67 2       [NO OF FILESTORE BLKS IN LF  
58H=          LDN   0  24   
592W          DVD   6  0
59GG    [ EVERY BIT IS A MARKER FOR A FILESTORE BLK. X7 IS WORD ADDR
5=26    [ AND X6 IS BIT ADDR OF BIT TO BE UNSET IN /FBSIB BLOCK 
5=FQ    #SKI  K6FLAWMAP>99-99   
5=^B    (   
5?F2          TRACE 7,WORDBIT   
5?YL          TRACE 6, BITBIT   
5#D=    )   
5#XW          MFIND 2,MAP(3)
5*CG          TXL   7  ALOGLEN(2)   
5*X6          BCS      QJA  
5BBQ          GEOERR 1,FMAPLLEN 
5BWB    QJA   NGNC  0  1          [UNSET B0 OF X0. B1-23=#37777777  
5CB2          SMO      6
5CTL          SRC   0  0          [SHIFT UNSET BIT TO RIGHT PLACE   
5D*=    #SKI K6FLAWMAP>199-199  
5DSW          TRACE 0,BITWORD   
5F#G          ADX   2  7          [ADJUST POINTER TO RIGHT WORD 
5FS6          ANDS  0  A1(2)      [UNSET CORRECT BIT FOR FLAWED F/STORE BLK 
5G?Q          LDN   0  1
5GRB          ADS   0  REP(3)     [UPDATE FLAW COUNT
5H?2          BRN      YLOOP      [GO TO NEXT FLAW ENTRY
5HQL    NEWFI LDX   2  FNAMER+3(3)    [J IF MORE FLAW INDEX CAELLS ON SU
5J==          BNZ   2  XC   
5JPW          LDX   2  FX2         [ELSE......  
5K9G          STO   5  SER(2)      [STORE SERIAL NR OF SU JUST SEARCHED 
5KP6    #SKI  K6FLAWMAP>99-99   
5L8Q          TRACE  SER(2),SERIALNR
5LNB          BRN QD               [J TO NEXT LOGICAL FILE ENTRY IN ALFTABLE
5M82    #SKI  ENTWINE<1$1   
5MML    NOT   MUSEST 5,NCAN,NCAN
5N7=    #SKI  ENTWINE   
5NLW    NOT   MUSEST   5,NCAN,NCAN,,WERR
5P6G          BRN   XB  
5PL6    XTRAN LDX   0  MAP(3)   
5Q5Q          DSA   0  4     [LFN IN X4 
5QKB          LDX   2  FX2  
5R52          STO   5  ACOMMUNE2(2)     [SERIAL NO  
5RJL          STO   5  SER(2)   
5S4=          CALL 0  XCON10    [CONVERT LFN TO DECIMAL RESULT IN ACOM1 
5SHW          LDX   5  0(2)       [ACOM2
5T3G          SLL   5  6
5TH6    [   B0 TO B17 = SERIAL NO   
5W2Q          CALL   0  XCON8     [CONVERT SERISL NO TO OCTAL   
5WGB          LDX   2  FX2     [RESULT IN ACOM2 TO ACOM3.1  
5X22          LDN   7  5     [FOR OUTBLOCK.  NO OF WORDS
5XFL          OUTBLOCK 7
5X^=          LDN   7  4     [FOR OUTPARAM5CH. COUNT)   
5YDW          OUTPARAM 7,ACOMMUNE1  
5YYG          LDN   7  6
5^D6          OUTPARAM 7,ACOMMUNE2  
5^XQ          INFORM 1,FLAWNOT,1    [OUTPUT MESSAGE 'FLAWMAPPING OF LFN %A  
62CB    [ ON SU #%B NOT COMPLETED ' 
62X2          LDX   5  SER(2)   
63BL          BRN   QD      [J. FOR NEXT LF 
63BQ ...#   
63BW ...#   
63C2 ...#SKI  JSKI34
63C6 ...(   
63C= ...QK2FLAWMAP  
63CB ...      LTYPE    ACOMMUNE6(2),0      [ DEVICE TYPE IN B18-23  
63CG ...      SBN   0  6
63CL ...      BZE   0  UDAS                [ J IF EDS 8 
63CQ ...      SBN   0  7
63CW ...      BZE   0  UDAS                [ J IF FDS   
63D2 ...      SBN   0  #15  
63D6 ...      BNZ   0  XUPL                [ J IF NOT EDS30/60  
63D= ...UDAS  LADDP    ACOMMUNE6(2),3      [ PTR TO APIA IN X3  
63D? ...      LDX   0  BSUNIT5(3)   
63D# ...      BZE   0  XUPL 
63D* ...      FINDSU   1,BSUNIT5(3),XUPL
63DB ...      LDCT  0  #100 
63DC ...      ANDX  0  ASMARK(1)           [IN USE BY S-TRUSTED 
63DD ...      BNZ   0  XUPL                [J IF SO 
63DF ...#UNS  IPBD  
63DG ...      SUSESTX  BSUNIT5(3),XUPL     [ CHECK FOR AND KEEP SU ONLINE   
63DH ...#UNS  IPBD  
63DJ ...#SKI
63DK ...      TSUSESTX BSUNIT5(3),XUPL     [ CHECK FOR AND KEEP SU ONLINE   
63DL ...      LDX   2  FX2  
63DM ...      LDX   7  HBLOCK(1)           [ BLOCKS/CYL FROM ASTUC  
63DQ ...      MPY   7  ACOMMUNE7(2)        [ ABS. BLKNUM OF START OF CYLINDER   
63DW ...      ADX   0  ACOMMUNE8(2)        [ ABS. BLKNUM OF START OF TRANSFER   
63F2 ...      LDX   6  ACOMMUNE9(2)        [ LENGTH OF TRANSFER IN WORDS
63F6 ...      SRL   67 7                   [ X6 HOLDS NO. OF BLKS IN TRANSFER   
63F= ...      BNZ   7  NDBLK               [ X7 HOLDS NO. OF REMAINING WORDS
63FB ...      SBN   6  1
63FG ...NDBLK ADX   6  0                   [ BLKNUM OF END OF TRANSFER  
63FL ...      LDX   7  0                   [ BLKNUM OF START OF TRANSFER
63FQ ...      LDN   4  FLADDR              [ LENGTH OF EWDAS/FLAWB BLOCK
63FW ...      LDX   5  HSTUN(1) 
63G2 ...      ANDX  5  BSB18               [ PRESERVE CSN   
63G6 ...      CALL  0  SETFLAWB            [ GET A EWDAS/FLAWB AND LOCK IT  
63G= ...      LDX   0  ABSUN(1) 
63GB ...      STO   0  FLBSUN(3)           [ PRESERVE BSUN FOR BACKTRAN 
63GG ...      STO   5  FLBCSN(3)           [ PRESERVE CSN   
63GL ...      LDN   0  0
63GQ ...      STO   0  FLBS1(3)            [ MODE FOR BACKTRAN  
63GW ...XNDX  LDX   5  FLSTART(3)          [ WORD ADDRESS OF FLAW INDEX 
63H2 ...      DVS   4  FLBS2(3)            [ CALCULATE BLOCK ADDRESS
63H6 ...      TXU   5  7                   [ COMPARE FLAW INDEX ADDRESS 
63H= ...      BCC      XRET                [ J IF SAME AS PERIPHERAL INCIDENT   
63HB ...      LDX   1  5                   [ ADDRESS TO BE CONVERTED
63HG ...      CONVERT  FLBS4(3),FLTYPE(3),FLBASE(3),FLDEP(3)
63HL ...#DEF  P=BSET+BONL+FLAW  
63HQ ...      BACKTRAN FLBS1(3),P,FLBS2(3),,FLBSUN(3),FLBS4(3),FLBS3(3) 
63HW ...      CHTRAN   FLTYPE(3),XRET,XRET [ CHECK THE TRANSFER 
63J2 ...      TXU   5  FLBUFF(3)           [ CHECK CORRECT BLOCK
63J6 ...      BCS      XRET                [ J IF NOT   
63J= ...      LDX   1  FLBUFF+1(3)  
63JB ...      BZE   1  SUMOK               [ J IF NO CHECKSUM   
63JG ...      LDN   1  FLBUFF(3)
63JL ...      SUM   0  128                 [ CHECKSUM THE BLOCK 
63JQ ...      BNZ   0  XRET                [ J IF CHECKSUM INCORRECT
63JW ...SUMOK NGN   0  1
63K2 ...      ADX   0  4                   [ MODIFIER TO START OF FLAW INDEX
63K6 ...SCH   ADN   0  1                   [ START OF SEARCH LOOP   
63K= ...      SMO      0
63KB ...      LDX   1  FLBUFF+2(3)         [ NEXT ENTRY IN FLAW INDEX   
63KG ...      BZE   1  SCH                 [ BLOCK IN FLAW AREA UNUSED  
63KL ...      BNG   1  XNEXT               [ END OF INDEX -GO FOR NEXT  
63KQ ...      TXL   1  7                   [ TEST BLKNUM < LOWER BOUND  
63KW ...      BCS      XNO  
63L2 ...      TXL   6  1                   [ TEST BLKNUM > UPPER BOUND  
63L6 ...      BCC      XFND                [ J IF WITHIN RANGE  
63L= ...XNO   TXL   0  FLBS2(3)            [ TEST FOR END OF INDEX  
63LB ...      BCS      SCH                 [ CONTINUE SEARCH IF NOT 
63LG ...XNEXT SMO      4
63LL ...      LDX   0  FLBUFF(3)           [ WORD ADDRESS OF NEXT FLAW INDEX
63LQ ...      STO   0  FLSTART(3)          [ WORD ADDRESS OF NEXT FLAW INDEX
63LW ...      BNZ   0  XNDX                [ GO FOR NEXT FLAW INDEX 
63M2 ...XRET  CALL  7  TIDY 
63M6 ...XUPL  UPPLUS   1
63M= ...XFND  CALL  7  TIDY 
63MB ...      UP
63MG ...#   
63ML ...#     SUBROUTINE TO TIDY UP BY FREECOREING THE FLAWB AND RELEASING THE  
63MQ ...#   STORAGE UNIT. (FREECORE IMPLICITLY UNLOCKS A BLOCK) 
63MW ...#   
63N2 ...TIDY  SBX   7  FX1  
63N6 ...      LDX   5  FLBCSN(3)
63N= ...      FREECORE 3
63N? ...#UNS  IPBD  
63N# ...      RELSTX   5,TID1   
63N* ...#UNS  IPBD  
63NB ...#SKI
63NC ...      TRELSTX  5,TID1   
63NG ...TID1  ADX   7  FX1  
63NL ...      EXIT  7  0
63NQ ...#   
63NW ...#     SUBROUTINE TO GET A EWDAS/FLAWB, LOCK IT, AND FILL IN VARIOUS 
63P2 ...#   DETAILS OBTAINED FROM THE ASTUC.
63P6 ...#     ON ENTRY   X4= REQUIRED LENGTH OF THE FLAWB   
63P= ...#                X5= CSN OF FAILING DISC
63PB ...#   
63PG ...#     ON EXIT    X3  POINTS TO THE FLAWB
63PL ...#                X1  POINTS TO THE ASTUC
63PQ ...#                X2=FX2 
63PW ...#   
63Q2 ...SETFLAWB
63Q6 ...      SBX   0  FX1  
63Q= ...      STO   0  AWORK1(2)           [ PRESERVE LINK  
63QB ...      SETUPCORE 4,3,EWDAS,FLAWB,1  [ GET THE FLAWB  
63QG ...      LOCKC    3,PTFLB             [ LONGLOCK IT
63QJ ...      MHUNTW   3,EWDAS,FLAWB
63QL ...      MFINDSU  1,5                 [ FIND THE ASTUC 
63QQ ...      LDX   0  HTYPE(1) 
63QW ...      STO   0  FLTYPE(3)           [ TYPE/SUBTYPE TO   FLAWB
63R2 ...      LDX   0  ASUBASE(1)   
63R6 ...      STO   0  FLBASE(3)           [ START CYL. OF SU.  
63R= ...      LDX   0  HBLOCK(1)
63RB ...      STO   0  FLDEP(3)            [ BLOCK/CYL. ON SU.  
63RG ...      LDX   0  HFLAW(1) 
63RL ...      STO   0  FLSTART(3)          [ POINTER TO FIRST FLAW INDEX
63RQ ...      LDN   0  128  
63RW ...      STO   0  FLBS2(3)            [ LENGTH FOR BACKTRAN
63S2 ...      LDN   0  FLBUFF(3)
63S6 ...      STO   0  FLBS3(3)            [ BUFFER ADDRESS FOR BACKTRAN
63S= ...      LDX   0  AWORK1(2)
63SB ...      ADX   0  FX1  
63SG ...      EXIT  0  0
63SL ...#   
63SQ ...#   
63SW ...PTFLB   
63T2 ...      MHUNTW   2,EWDAS,FLAWB
63T6 ...      EXIT  1  0
63T= ...#   
63TB ...#   
63TG ...)   
63W=          MENDAREA 50,K99FLAWMAP
64*W    #END
^^^^ ...77515514000100000000