BSBLFAIL867

(George Source)

Macros used: ALTLEN, BACKWRITE, CHAIN, COOR2, COOR3, FREECORE, FSHACTPR, FSHCODE, FSHKILL, GETBACK, HUNTW, JBC, LISTFAIL, LOCK, MHUNT, MHUNTW, OFFQUE, OPTRAN, SEG, SEGENTRY, SETUPCORE, TIDYFAIL, TRACE, UNLOCK, UNSETFB, UP

BSBLFAIL867.txt
22FL ...      SEG      BSBLFAIL,866 
22^= ...#   
23DW ...      SEGENTRY K1BSBLFAIL,QK1BL 
23YG ...#   
24D6 ...#              THIS SEGMENT DEALS WITH BLANKET FAILS. PROCONTX CHAINS A 
24XQ ...#              BSTB/BWRITE ON THE ACTIVITY CHAIN WITH BACK1 AND BACK2   
25CB ...#              CONTAINING THE BS HOME   
25X2 ...#   
26BL ...QK1BL MHUNTW   1,BSTB,BWRITE
74K6    RW1   LDX   7  BACK1(1) 
754Q          BNG   7  SPA1                [BLANKET PSEUDO FAIL 
75JB          STO   7  AWORK1(2)           [BACKING STORE HOME  
7642          LDX   0  BACK2(1)            [
76HL          STO   0  AWORK2(2)           [
76L2 ...RW4 
76NB ...      FSHCODE  B,SHFSP2 
76QQ ...(   
76T6 ...      FSHACTPR                     [SET UP PAIRED BTFAIL IN MACHINE A   
76XG ...SHFSP2  
76^W ...)   
774= ...      GETBACK   
776L ...      FSHCODE  B,SHFSK2 
7792 ...(   
77?B ...      FSHKILL                      [KILL PAIRED BTFAIL IN MACHINE A 
77*Q ...SHFSK2  
77D6 ...)   
77GW          STO   7  AWORK3(2)
782G          HUNTW    3,BSTB,BWRITE
78G6          LOCK     3                   [LOCK BSTB/BWRITE
78^Q          LDN   1  A1(3)
79FB          BACKWRITE BSET+FLAW,ALOGLEN(3),RW3,AWORK1(2),AWORK3(2),1 [WRITE AW
7=68 ...      LDX   0  AWORK1(2)
7=?B ...      STO   0  ACOMMUNE1(2) 
7=DJ ...      CALL  0  XBSA 
7=KQ ...      CALL  0  SETFLRS  
7=N* ...      UNLOCK   3
7=QY ...      TIDYFAIL ACOMMUNE1(2),AWORK2(2),AWORK3(2),1 [CHANGE OLD TO NEW
7=Y=    #SKI  K6TRANFAIL>99-99  
7?CW          TRACE    AWORK3(2),BLFAIL 
7?XG          LDX   6  AWORK1(2)           [PUT OLD BLOCK NO IN PFL 
7#C6          LDX   7  AWORK2(2)
7#WQ    XJA   MHUNT    3,BSTB,BFRAIL
7*BB          LDX   0   A1(3)              [SET A1 -VE TO INDICATE BLOCK BEING A
7*W2          BPZ   0  XJB                 [SOMEONE ELSE
7B*L          COOR2                        [WAIT TILL THEY HAVE FINISHED
7BT=          BRN      XJA  
7C#W    XJB   LDN   1   A1-1(3)            [CHECK IF ENOUGH ROOM FOR NEW ENTRY  
7CSG          NGN   0  1                   [-1 TERMINATES LIST  
7D#6    XJD   ADN   1  2                   [STEP ON POINTER 
7DRQ          TXU   0  0(1) 
7F?B          BCS      XJD                 [J NOT -1
7FR2         SBN    1  A1-3(3)  
7G=L          TXL  1    ALOGLEN(3)  
7GQ=          BCS       XJG                [J FI ENOUGH ROOM
7H9W          LDX   4   ALOGLEN(3)  
7HPG          ADN   4  AFRAILEX            [PLUS EXTENTION  
7J96          LDCT  0  #400                [LOCK OUT MARK   
7JNQ          ORS   0   A1(3)   
7K8B          ALTLEN   3,4                 [EXTEND BSTB/BFRAIL  
7KN2          MHUNT     3,BSTB,BFRAIL   
7L7L          LDCT  0  #400                [REMOVE LOCKOUT BIT  
7LM=          ERS   0  A1(3)
7M6W          NGN   0  1
7MLG    XJG   ADN   3  2                   [SEARCH FOR END  
7N66          TXU   0  A1-1(3)  
7NKQ          BCS      XJG                 [J NOT END   
7P5B          LDX   0  AWORK2(2)
7PK2          STO   0  A1-1(3)             [BLOCK NO.   
7Q4L          LDX   0  AWORK1(2)
7QJ=          SLL   0  18   
7R3W          STO   0  A1(3)               [LFN 
7RHG          NGN   0  1
7S36          STO   0  A1+1(3)             [MARKER FOR END (-1) 
7SGQ          MHUNT    3,BSTB,BWRITE
7T2B          FREECORE 3                   [FREE BSTB/BWRITE
7TG2          LDN   0  1
7T^L          SBS   0  BACK1(2)            [REDUCE COUNT OF BLANKET FAILS   
7W9D ...XJEND HUNTW    1,BSTB,BWRITE       [ANY MORE BLANKET FAILS TO DO
7WF= ...      BPZ   1  RW1                 [YES 
7WP4 ...      UP
7WYW    #   
7XDG    #     FAILS AGAIN WHILE WRITING BLANKET TO NEW BLOCK
7XY6    #   
7YCQ    RW3   UNLOCK   3                   [UNLOCK BSTB,BWRITE  
7YXB    #SKI  K6TRANFAIL>99-99  
7^C2 ...# *      TRACE    AWORK3(2),NEWBLFL 
7^WL          LDX   7  AWORK1(2)
82B=          LISTFAIL 7,AWORK3(2)         [CLEAR FAIL  
82TW          BRN      RW4                 [TRY AGAIN   
83*G    #   
##J6 ...SPA1  ERX   7  GSIGN               [ CLEAR BIT 0
#B32          STO   7  BACK1(1) 
#C2=          LDX   0  BACK2(1)            [PARAMETERS  
#CFW          STO   0  AWORK2(2)           [FOR 
#C^G          STO   0  AWORK3(2)           [BACKWRITE   
#DF6          LDX   3  1                   [PRESERVE POINTE TO BWRITE BLOCK 
#GX=          STO   7  ACOMMUNE1(2)        [LFN 
#HBW          CALL  0  XBSA                [ADDRESS OF BSA INTO AWORK1(2)   
#HWG ...XWT   LDX   1  AWORK1(2)
#JB6 ...      LDX   0  BSFAIL(1)           [ARE FAILS OR CARTRIDGE COMMAND IN   
#JTQ ...      ANDN  0  BKARTWT+CGINPROG    [PROGRESS
#K*B ...      BZE   0  XLCK                [ J IF DEVICE NOW OK 
#KT2 ...      COOR3    #41                 [ WAIT   
#L#L ...      BRN      XWT                 [ GO TO GHECK AGAIN  
#LS= ...XLCK
#M44 ...      MHUNTW   3,BSTB,BWRITE
#M?W ...      LOCK     3
#MRG ...      LDN   1  A1(3)
#N?6 ...      BACKWRITE   BSET+FLAW,ALOGLEN(3),RW3,EX7,AWORK3(2),1  
#NQQ ...      CALL  0  SETFLRS  
#P=B ...      UNLOCK   3
*7CG    SPA2  LDX   0  BACK1(3)            [PREPARE 
*7X6          STO   0  ACOMMUNE1(2)        [ PARAMETERS 
*8BQ          LDX   0  BACK2(3)            [  FOR   
*8WB          STO   0  ACOMMUNE2(2)        [   XWAIT
*9B2          FREECORE  3   
*9TL          CALL  0  XWAIT
*=83 ...      LDX   1  AWORK1(2)
*=GD ...      UNSETFB 1,1                  [UNSET OFFLINE FAIL BIT  
*=SW          LDN   0  1
*?#G          SBS   0  BACK1(2)            [REDUCE COUNT OF BLANKET FAILS   
*?S6          LDX   1  AWORK1(2)
*#?Q          LDX   1  FPTR(1)             [ADDRESS OF BFAIL
*#RB          SBS   0  A1(1)               [REDUCE COUNT OF FAILS IN BFAIL  
**3# ...      BRN      XJEND
**?? ...#   
**?J ...#    SUBROUTINE TO CREATE FLOUR BLOCKS FOR APPROPRIATE Q BLOCKS 
**?T ...#                             ON THE BSA'S WAIT QUEUE   
**#6 ...SETFLRS 
**#C ...      SBX   0  FX1  
**#N ...      STO   0  ACOMMUNE2(2) 
**#^ ...      SMO      AWORK1(2)
***= ...      LDN   1  BSQWCHAN            [BS WAIT Q   
***H ...      TXU   1  0(1)                [TEST FOR END
***S ...      BCC      SFLR                [J IF END
**B5 ...      LDX   1  0(1) 
**BB ...SPA6  SBN   1  CHAINADD            [ADDRESS OF QBLOCK   
**BM ...      LDX   0  ATYPE(1)            [TYPE
**BY ...      TXL   0  CACT 
**C9 ...      BCS      SPA4                 [J IF BQBLK 
**CG ...      LDX   7  BA1(1)              [PARAMS  
**CR ...      LDX   6  BA2(1)              [  FROM  
**D4 ...      LDX   5  BA3(1)              [    ACTIVITY
**D* ...      LDX   4  ACOMMUNE7(1)        [      QBLOCK
**DL ...      BRN      SPA5 
**DX ...SPA4  LDX   7  ATRAN(1)            [PARAMS  
**F8 ...      LDX   6  ALENLFN(1)          [  FROM  
**FF ...      LDX   5  BLKNO(1)            [    BSTB
**FQ ...      LDX   4  BSMODE(1)           [    BQBLK   
**G3 ...SPA5  LDX   0  6
**G# ...      ANDN  0  #377                [LFN IN  QBLOCK  
**GK ...      TXU   0  BACK1(3)            [SAME AS BWRITE? 
**GW ...      TXU   5  BACK2(3)            [SAME  HOME ADDRESS? 
**H7 ...      BCS      SPA3                [J IF NOT
**HD ...      BNZ   4  SPA3                [J NOT READ  
**HP ...      ANDN  7  BOBJ+BSET
**J2 ...      BNZ   7  SPA3 
**J? ...      SRL   6  8                   [LENGTH  
**JJ ...      LDX   5  1              [PRESERVE PTR TO QBLOCK   
**JL ...      LDX   7  1
**JN ...      JBC      SPA7,7,AFLOCK       [J IF BLOCK NOT LOCKED   
**JQ ...      STOZ     7                   [INDICATOR NOT TO UNLOCK BLOCK   
**JS ...      BRN      SPA8 
**JW ...SPA7  LOCK     5
**JY ...SPA8  SETUPCORE  6,4,BSTB,FLOUR    [SET UP READ BUFFER  
**K2 ...      BZE   7  SPA9 
**K4 ...      UNLOCK   5
**K6 ...SPA9  CHAIN  4,5                   [CHAIN AFTER QBLOCK  
**KC ...      LDX   1  5                   [RESTORE PTR 
**KN ...      SMO      4
**K^ ...      LDN   6  BACK1
**L= ...      LDN   5  BACK1(3) 
**LH ...      MOVE  5  2                   [BS HOME IN READ BUFFER BLOCK
**LS ...SPA3  SMO      AWORK1(2)
**M5 ...      LDN   0  BSQWCHAN            [BS WAIT Q   
**MB ...      LDX   1  CHAINADD(1)         [NEXT QBLOCK 
**MM ...      TXU   0  1                   [TEST FOR END
**MY ...      BCS      SPA6 
**N9 ...SFLR  LDX   0  ACOMMUNE2(2) 
**NG ...      ADX   0  FX1  
**NR ...      EXIT  0  0
**NY ...#   
**P5 ...#   
**P= ...STYPE   
**PC ...#HAL            +BSTB+BQBLK,0   
**PJ ...#   
**PP ...#   
**PW ...#   
**Q3 ...#     SR TO REQUE  BLOCKS FROM  BSWQ TO BSA Q.  
**Q8 ...#     AWORK1    CONTAINS  ADDRESS OF BSA
**Q* ...#     ACOMMUNE1 CONTAINS  LFN OR BSUN   
**QG ...#     ACOMMUNE2 CONTAINS  ZERO IF BSUN IN 1 OR  BLOCK NUMBER
**QM ...#     LINK  X0  STORED IN ACOMMUNE6 
**QS ...XWAIT   
**Q^ ...      STO   0  ACOMMUNE6(2) 
**R6 ...      LDX   1  AWORK1(2)
**R? ...      LDN   7  0
**RD ...      LDX   0  ACOMMUNE2(2) 
**RK ...      BNZ   0  SCA                 [JUMP IF OFFLINE 
**RQ ...      LDN   7  2
**RX ...SCA   LDN   6  BSQWCHAN(1)         [BASE OF WAIT Q  
**S4 ...      LDX   3  6
**S9 ...SH    LDX   3  FPTR(3)             [ADDRESS OF Q BLOCK  
**SB ...SHA   LDX   2  FX2  
**SH ...      TXU   3  6
**SN ...      BCC      SD                  [JUMP IF END OF Q
**ST ...      SBN   3  CHAINADD 
**T2 ...      LDN   4  BA1(3)              [RESCUE PARAMETERS BA AREA IF ACTIVIT
**T7 ...      LDX   1  EXEC3(3)            [DATUMISED BLOCK NUMBER  
**T# ...      LDX   0  ATYPE(3) 
**TF ...      SMO      FX1  
**TL ...      TXU   0  STYPE
**TR ...      BCS      SR1  
**TY ...      LDX   1  ADBLKNO(3)   
**W5 ...      LDN   4  ATRAN(3) 
**W= ...SR1   LDN   5  AWORK2(2)
**WC ...      MOVE  4  3
**WJ ...      LDX   0  AWORK2(2)
**WP ...      ANDN  0  2
**WW ...      ERX   0  7
**X3 ...      BNZ   0  SG                  [JUMP IF WRONG TYPE OF TRANSFER  
**X8 ...      BNZ   7  SY                  [JUMP IF ONLINE  
**X* ...      LDX   0  AWORK3(2)
**XG ...      ANDN  0  #377 
**XM ...      TXU   0  ACOMMUNE1(2) 
**XS ...      BCS      SG                  [JUMP IF WRONG LFN   
**X^ ...      LDX   0  AWORK4(2)
**Y6 ...      ANDX  0  BSTSMASK 
**Y? ...      TXU   0  ACOMMUNE2(2) 
**YD ...      BCS      SG   
**YK ...SY    LDX   4  CHAINADD(3)  
**YQ ...#SKI  K6TRANFAIL>199-199
**YX ...(   
**^4 ...      TRACE    3,REQUE  
**^9 ...      TRACE    6,   
**^B ...)   
**^H ...      ADN   3  CHAINADD 
**^N ...      OFFQUE   3
**^T ...      SBN   3  CHAINADD 
*B22 ...      OPTRAN   3,1,AWORK1(2)
*B27 ...      LDX   3  4
*B2# ...      BRN      SHA  
*B2F ...SG    ADN   3  CHAINADD            [ADJUST POINTER  
*B2L ...      BRN      SH   
*B2R ...SD    LDX   1  FX1  
*B2Y ...      LDX   2  FX2  
*B35 ...      LDX   0  ACOMMUNE6(2) 
*B3= ...      EXIT  0  0
*B3C ...#     SR TO  CONVERT LFN IN ACOMMUNE1  TO  ADDRESS OF APPROPRIATE  BSA  
*B3J ...#     ADDRESS OF BSA LEFT IN AWORK1  X1,X2 RESET TO FX1,FX2 
*B3P ...#     LINK X0   
*B3W ...#   
*B43 ...#   
*B48 ...XBSA
*B4* ...      LDX   1  ACOMMUNE1(2) 
*B4G ...      SLL   1  1
*B4M ...      ADX   1  ALFTP
*B4S ...      LDX   1  A1(1)
*B4^ ...      SRL   1  12   
*B56 ...XBSB  MPY   1  ASBSAB   
*B5? ...      NGX   2  2
*B5D ...      ADX   2  BBAC 
*B5K ...      ADX   2  ASBSAB   
*B5Q ...      SMO      FX2  
*B5X ...      STO   2  AWORK1   
*B64 ...      LDX   2  FX2  
*B69 ...      LDX   1  FX1  
*B6B ...      EXIT  0  0
*B7Y ...#   
*BPW    #END
^^^^ ...235502570001