{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: TRANFAIL866)}} ====== TRANFAIL866 ====== (George Source) **Macros used:** [[george:macro:ALTLEN|ALTLEN]], [[george:macro:ALTLEND|ALTLEND]], [[george:macro:BACKREAD|BACKREAD]], [[george:macro:BACKWRITE|BACKWRITE]], [[george:macro:BC|BC]], [[george:macro:BS|BS]], [[george:macro:COOR1|COOR1]], [[george:macro:COOR2|COOR2]], [[george:macro:DATUMBLK|DATUMBLK]], [[george:macro:DOWN|DOWN]], [[george:macro:FINDFAIL|FINDFAIL]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FSHACCWK|FSHACCWK]], [[george:macro:FSHACTPR|FSHACTPR]], [[george:macro:FSHCODE|FSHCODE]], [[george:macro:FSHENTRY|FSHENTRY]], [[george:macro:FSHKILL|FSHKILL]], [[george:macro:FSHSKIP|FSHSKIP]], [[george:macro:FSHTEST|FSHTEST]], [[george:macro:GEOERR|GEOERR]], [[george:macro:GETBACK|GETBACK]], [[george:macro:HUNT|HUNT]], [[george:macro:HUNT2|HUNT2]], [[george:macro:HUNTW|HUNTW]], [[george:macro:JBC|JBC]], [[george:macro:LISTFAIL|LISTFAIL]], [[george:macro:LOCK|LOCK]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNT|MHUNT]], [[george:macro:OFFQUE|OFFQUE]], [[george:macro:OPTRAN|OPTRAN]], [[george:macro:PAIR|PAIR]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SETUPCORE|SETUPCORE]], [[george:macro:TRACE|TRACE]], [[george:macro:TRANSBEG|TRANSBEG]], [[george:macro:UNLOCK|UNLOCK]], [[george:macro:UNSETFB|UNSETFB]] 22FL ... SEG TRANFAIL,863,FRANK BLUNDELL,BSTS 23YG # 24D6 SEGENTRY K1TRANFAIL,QK1TR 27TG # 27Y5 ...# ENTRY POINTS FOR UNANTICIPATED CLOSEDOWN 282N ...# 285? ... FSHENTRY K10TRANFAIL,XXSHFS,,XXSHFS 287W ... FSHENTRY K11TRANFAIL,XSHFSB,,XSHFSB 28=F ...# 28*6 # 28SQ # K1TRANFAIL DEALS WITH TRANSFER FAILS FROM TFA ACTIVITY 29#B # 29S2 # IDENTIFIERS FOR BSTB/BLUFF 2=?L #OPT STRAN=A1 [TYPE OF TRANSFER 2=R= #OPT SLENG=STRAN+1 2?=W #OPT SBLNUM=SLENG+1 2?QG #OPT SCORE=SBLNUM+1 [CORE ADDRESS 2#=6 #OPT SPCA=SCORE+1 [PCA ADDRESS 2#PQ #OPT SDATUM=SPCA+1 [DATUMISED BLOCK NUMBER 2*9B #OPT SBSA=SDATUM+1 2*P2 #OPT SNEWB=SBSA+1 [NEW BLOCK NUMBER 2B8L #OPT SMARK=SNEWB+1 [MARKER IF FAILED BLOCKLETS 2BN= #OPT SNEWDAT=SMARK+1 [DATUMISED BLOCK NUMBER (NEW) 2C7W #OPT SLFN=SNEWDAT+1 2CMG #OPT SP1=SLFN+1 2D76 #OPT SP2=SP1+1 [( ) 2DLQ #OPT SP3=SP2+1 [(BACKREAD/WRITE PARAMETERS ) 2F6B #OPT SP4=SP3+1 [( ) 2FL2 #OPT SP5=SP4+1 [( ) 2G5L #OPT START=SP5+1 [ START OF 128 WORD BUFFER 2GK= # 2H4W #OPT SBONL=2 [ONLINE BIT 2HJG # 2HKX ...# LINKS FOR UNANTICIPATED CLOSEDOWN 2HM# ...# 2HNP ... FSHCODE AORB 2HQ6 ...( 2HRH ...SCDLINK1 2HSY ... PAIR TRANFAIL,10 2HW* ...SCDLINK2 2HXQ ... PAIR TRANFAIL,11 2H^7 ...) 2J2J ...# 2J46 # 2JHQ TERR1 GEOERR 0,WRNGBLK 2JNY ...XNFILE 2JW6 ... GEOERR 0,WRNGLFN 2K3B XM1 #77777774 2KH2 # 2L2L QK1TR [***** 2L5H ...PSTART 2L8D ... HUNTW 1,BSTB,BWRITE 2L=Q ... BNG 1 XSTART 2L*4 ... DOWN BSBLFAIL,1 [DEAL WITH BLANKET FAILS 2LCB ... BRN TDE [SEE IF ANYTHING MORE TO DO 2LFN ...XSTART 2LJ4 ... ADN 2 BSCHANAD 2LL^ ... TXU 2 0(2) 2LPW ... BCC TERR1 2LSR ... LDX 2 FPTR(2) 2LXN ... SBN 2 CHAINADD [ POINTER TO QUEUE BLOCK 2M2K ... LDX 7 ATYPE(2) 2M5G ... SBX 7 CACT [ ACTIVITY TYPE 2M8C ... BNG 7 XNACT [ J IF NOT ACTIVITY 2M?# ... LDX 0 BA1(2) [ MODE FROM ACTIVITY 2MB9 ... BRN XMODE 2MF6 ...XNACT LDX 0 ATRAN(2) [ MODE FROM BSTS BQBLK 2MJ3 ...XMODE SLC 0 7 2MLY ... ANDN 0 #17 [ ISOLATE MODE 2MPT ... BNZ 0 XNR [ J NOT READ TRANSFER FAIL 2MSQ ... DOWN READFAIL,2 [ GO TO DEAL WITH FAIL 2MXM ... LDX 3 BSCHANAD(2) 2N2J ... OFFQUE 3 [ DECHAIN QUEUE BLOCK 2N5F ... SBN 3 CHAINADD 2N8B ... BPZ 7 XACT [ J IF ACTIVITY BLOCK 2N?? ... LDX 7 BIT10 [ BACKWAIT BIT - SET BY ACTIVITY 2NB8 ... ANDX 7 ATRAN(3) [ TEST IF BIT SET IN BQBLK 2NF5 ... LDX 1 3 2NJ2 ...XBW LDX 3 BPTR(3) [ CHAIN BACK TO 2NLX ... LDX 0 ATYPE(3) [ ACTIVITY 2NPS ... TXL 0 CACT [ BLOCK 2NSP ... BCS XBW 2NXL ... FREECORE 1 [ FREE BQBLK 2P2H ... BZE 7 XFIN [ DONT FPUT IF ACTIVITY NOT WAITIG 2P5D ...XACT LDX 2 3 2P8* ... FPUT [ FPUT ACTIVITY 2P?= ...XFIN BRN TDE [ J TO SEE IF MORE TO DO 2PB7 ...XNR 2PH^ ... LDX 1 FX1 2PLW ... HUNT 3,BSTB,BLUFF 2PPR ... BPZ 3 TA1 [JUMP IF ALREADY GOT DATA BLOCK 2PSN ... SETNCORE START-A1+1,3,BSTB,BLUFF 2PXL TA1 STOZ SMARK(3) 2S72 ... LDX 2 FX2 2S75 ...#UNS FSHTEST 2S78 ...( 2S7? ... LDX 2 BSCHANAD(2) [POINTER TO QBLOCK 2S7B ... SBN 2 CHAINADD 2S7F ... LDX 0 ATYPE(2) 2S7J ... TXL 0 CACT 2S7M ... BCC SFT2 [J IF ACTIVITY BLOCK 2S7Q ...SFT1 LDX 2 BPTR(2) 2S7T ... LDX 0 ATYPE(2) 2S7Y ... TXL 0 CACT 2S83 ... BCS SFT1 2S86 ...SFT2 JBC SFT3,2,BFSHACTB [J IF M/C 'A' QBLOCK 2S89 ... LDX 2 FX2 2S8# ... BS 2,BFSHACTB [MAKE TFA RUN IN M/C B 2S8C ... FPUT 2S8G ... COOR1 2S8K ... MHUNT 3,BSTB,BLUFF 2S8N ...SFT3 LDX 2 FX2 2S8R ...) 2S99 ... LDX 2 BSCHANAD(2) 2S*Q SBN 2 CHAINADD 2STB LDX 0 ATYPE(2) [CHECK Q BLOCK TYPE 2T*2 TXL 0 CACT 2TSL BCS TA2 [JUMP IF NOT ACTIVITY 2W#= LDN 4 BA1(2) [RESCUE PARAMETERS 2WRW LDX 6 ACOMMUNE9(2) [ DATUMISED BLOCK NO. 2X?G LDX 7 ACOMMUNE8(2) [ BSA ADDRESS 2XR6 BRN TA3 2Y=Q TA2 2YQB #SKI K6TRANFAIL>99-99 2^=2 ( 2^PL TXU 0 STYPE(1) [CHECK IF BSTB/BQBLK 329= BCS TERR1 [JUMP IF NOT - ERROR 32NW ) 338G LDN 4 ATRAN(2) 33N6 LDX 6 ADBLKNO(2) 347Q LDX 7 ABSA(2) 34MB TA3 LDN 5 STRAN(3) 3572 MOVE 4 5 35LL STO 6 SDATUM(3) 366= STO 7 SBSA(3) 36KW LDX 0 SLENG(3) 375G ANDN 0 #377 37K6 STO 0 SLFN(3) 384Q LDN 0 #400 38JB ANDX 0 STRAN(3) 3942 BNZ 0 XCHANGE 397X ...#UNS FSHTEST 39?S ...#SKI 39CP ...( 39HL #SKI K6TRANFAIL>99-99 3=3= ( 3=GW TRACE SBLNUM(3),TRANFAIL 3?2G TRACE SLFN(3), 3?G6 #SKI K6TRANFAIL>199-199 3?^Q ( 3#FB TRACE STRAN(3), 3#^2 TRACE SBSA(3), 3*DL ) 3*Y= ) 3B84 ...) 3BCW TZ2 LDX 7 SLFN(3) 3BXG ...# * PHOTO 5 3C25 ... FSHCODE B,SHFSP1 3C4N ...( 3C7? ... FSHACTPR [SET UP PAIRED BTFAIL IN MACHINE A 3C9W ...SHFSP1 3C#F ...) 3CC6 GETBACK [GET A BLOCK OF BACKING STORE 3CFP ... FSHCODE B,SHFSK1 3CJ# ...( 3CLX ... FSHKILL [KILL PAIRED BTFAIL IN MACHINE A 3CPG ...SHFSK1 3CS5 ...) 3CWQ ...# * TESTMOVE 5,TA3A 3DBB MHUNT 3,BSTB,BLUFF 3DW2 TA3A STO 7 SNEWB(3) 3F*L LDX 1 SLFN(3) 3FT= SLL 1 1 3G#W ADX 1 ALFTP 3GSG LDX 4 A1(1) 3H#6 BNG 4 XNFILE [JUMP IF THIS LFN DOES NOT EXIST-ERRO 3HRQ ANDN 4 #7777 3J?B ADX 4 AFDTP [X4 POINTS TO ENTRY IN FD TABLE 3JR2 DATUMBLK SNEWB(3),4 [DATUMISE 3K=L BZE 1 XNFILE [JUMP IF BLOCK NO. OUT OF RANGE -ERRO 3KQ= MHUNT 3,BSTB,BLUFF 3L9W STO 1 SNEWDAT(3) [SAVE DATUMISED ADDRESS 3LPG #SKI K6TRANFAIL>99-99 3M96 ( 3MNQ TRACE SNEWB(3),NEWBLOCK 3N8B #SKI K6TRANFAIL>199-199 3NN2 TRACE SNEWDAT(3), 3P7L ) 3PM= LDX 0 SLENG(3) 3Q6W SRL 0 8 3QLG SBN 0 3*128+1 3R66 BPZ 0 VA1 [JUMP IF MORE THAN 3BLOCKLETS INVOLVE 3RKQ LDN 0 129+START-A1 3S5B TXL 0 ALOGLEN(3) 3SK2 BCS TA3B [JUMP IF BLOCK LONG ENOUGH FOR BUFFE 3T4L ALTLEND 3,129+START-A1 3TJ= MHUNT 3,BSTB,BLUFF 3W3W TA3B LDX 5 SLFN(3) 3WHG LDX 4 SBLNUM(3) 3X36 ANDX 4 BSTSMASK [ROUND DOWN FOR SEARCH 3XGQ FINDFAIL 7,4,5,PFL,TA4,SBSA(3) 3Y2B [ 3YG2 [FIND PERMANENT FAIL ENTRY IF ANY 3Y^L SMO 7 3^F= LDX 0 1 3^YW SLC 0 6 [GET BLOCKLET BITS FROM RECORD 42DG ANDN 0 #17 42Y6 STO 0 SMARK(3) 43CQ #SKI K6TRANFAIL>199-199 43XB TRACE SMARK(3),BLOCKLET 44C2 TA4A LOCK 3 44WL LDN 4 4 45B= LDX 5 SMARK(3) 45TW LDN 0 128 [PARAMETERS FOR BACKREAD/WRITE 46*G STO 0 SP1(3) 46T6 LDX 0 SLFN(3) 47#Q STO 0 SP2(3) 47SB LDX 0 SBLNUM(3) 48#2 ANDX 0 XM1(1) 48RL STO 0 SP3(3) 49?= LDN 0 START(3) 49QW STO 0 SP4(3) 4==G LDX 0 SNEWB(3) 4=Q6 STO 0 SP5(3) 4?9Q TB2 LDN 6 0 4?PB SRL 56 1 4#92 BNG 6 TB1 [JUMP IF THIS BLOCKLET UNREADABLE 4#NL BACKREAD BSET+FLAW,SP1(3),TC1,SP2(3),SP3(3),SP4(3) 4*8= BACKWRITE BSET+FLAW,SP1(3),TZ1,SP2(3),SP5(3),SP4(3) 4*MW TB1 LDN 0 1 4B7G ADS 0 SP5(3) [UPDATE BLOCKLET NUMBERS 4BM6 ADS 0 SP3(3) [ 4C6Q BCT 4 TB2 4CLB UNLOCK 3 [UNLOCK BUFFER 4D62 BRN VA1 4DKL # 4F5= TA4 STOZ SMARK(3) [NO PFL ENTRY 4FJW LDN 7 0 4G4G BRN TA4A 4GJ6 # 4H3Q TC1 LDN 0 #20 4HHB SMO 4 4J32 SRL 0 0 4JGL ORS 0 SMARK(3) [SET APPROPRIATE BIT 4K2= #SKI K6TRANFAIL>199-199 4KFW TRACE SMARK(3),NEWFAIL 4K^G BRN TB1 4LF6 # 4LYQ TZ1 UNLOCK 3 [WRITE FAILURE 4MDB #SKI K6TRANFAIL>199-199 4MY2 TRACE SNEWB(3),BLKFAIL 4NCL ...# * PHOTO 5 4NX= LISTFAIL SP2(3),SNEWB(3) [PUT BLOCK NO. IN FFL 4PBW ...# * TESTMOVE 5,TZ2 4PWG MHUNT 3,BSTB,BLUFF 4QB6 BRN TZ2 4QTQ # 4R*B # 4RT2 XCHANGE 4S#L #SKI K6TRANFAIL>199-199 4SS= TRACE SBLNUM(3),TFCHANGE 4SSF ... FSHCODE AORB 4SSN ...( 4SSX ...# 4ST6 ...# 4ST* ...# 4STJ ...# 4STR ... LDX 7 SBLNUM(3) 4SW2 ... ANDX 7 BSTSMASK [BLOCK NO ROUNDED DOWN 4SW9 ... LDX 6 SLFN(3) 4SWD ... FINDFAIL 4,7,6,PFL,XCERR,SBSA(3) [GET POINTER TO PFL ENTRY 4SWM ... LDX 1 SBLNUM(3) 4SWW ... ANDN 1 3 4SX5 ... SRC 1 2 4SX# ... LDCH 7 BSMAGIC(1) 4SXH ... STO 7 0 4SXQ ... LDX 5 SLENG(3) 4SX^ ... SRL 5 8 4SY8 ...SHFS1 4SYC ... SBN 5 GSBS4 4SYL ... BNG 5 SHFS2 4SYT ... BZE 5 SHFS2 4S^4 ... BCHX 1 £ 4S^? ... LDCH 7 BSMAGIC(1) 4S^G ... ADX 0 7 4S^P ... BRN SHFS1 4S^Y ...SHFS2 4T27 ... LDX 1 4 [PFL POINTER 4T2B ... LDX 7 1(1) 4T2K ... SLC 7 6 4T2S ... ANDN 7 #17 4T33 ... ERX 0 7 4T3= ... ANDX 0 7 4T3F ... BZE 0 SHFSA [J IF ALL CORRUPTION CLEARED 4T3N ... SRC 0 6 4T3X ... STO 0 1(1) [RESET PFL ENTRY 4T46 ... DSA 6 1(1) 4T4* ... LDCT 0 #200 4T4J ... ORS 0 1(1) 4T4R ... LDX 0 SLFN(3) 4T52 ... STO 0 ACOMMUNE1(2) 4T59 ... LDX 0 SBLNUM(3) 4T5D ... STO 0 ACOMMUNE2(2) 4T5M ... LDX 0 1(1) 4T5W ... STO 0 ACOMMUNE3(2) 4T65 ... CALL 0 XTRAN [RESET PFL ENTRY IN OTHER M/C 4T6# ... LDX 7 SBLNUM(3) 4T6H ... STO 7 SNEWB(3) 4T6Q ... LDX 7 SDATUM(3) 4T6^ ... STO 7 SNEWDAT(3) 4T78 ... LDX 2 BSCHANAD(2) 4T7C ... SBN 2 CHAINADD 4T7L ... BRN TB3Z 4T7T ...# 4T84 ...# SUBROUTINE TO GO TO ALIEN M/C TO UPDATE OR DELETE PFL ENTRY 4T8? ...# 4T8G ...XTRAN 4T8P ... SBX 0 FX1 4T8Y ... STO 0 AWORK4(2) 4T8^ ... SETNCORE 1,3,FSH,FSHAMBLES [ 4T92 ... LDX 0 SCDLINK1(1) [ SET UP BLOCK FOR UNANT. CLOSEDOWN 4T93 ... STO 0 FSHCDLINK(3) [ 4T97 ... TRANSBEG FSHTFID,RITEFAIL,7,NOBLOCKS,,ACOMMUNE4,XSHFS,SUP 4T98 ... BRN XSHFS 4T99 ...XXSHFS 4T9= ... FSHACCWK 4T9B ...XSHFS 4T9F ... MFREEW FSH,FSHAMBLES 4T9K ... MHUNT 3,BSTB,BLUFF 4T9S ... LDX 0 AWORK4(2) 4T=3 ... ADX 0 FX1 4T== ... EXIT 0 0 4T=F ...SHFSA 4T=N ... LDX 2 BSCHANAD(2) 4T=X ... SBN 2 CHAINADD 4T?6 ... LDN 0 #400 4T?* ...) 4T?W LDX 7 STRAN(3) 4TRG BPZ 7 XCH1 4W?6 ERS 0 ATRAN(2) 4WQQ BRN XCH2 4X=B XCH1 ERS 0 BA1(2) 4XQ2 XCH2 LDX 7 SBLNUM(3) 4Y9L ANDX 7 BSTSMASK [ROUND DOWN FOR SEARCH 4YP= LDX 5 SLFN(3) 4YQ^ ... FSHCODE AORB 4YSN ...( 4YWC ... LDX 2 FX2 4YY6 ... STO 5 ACOMMUNE1(2) [LFN 4Y^T ... STO 7 ACOMMUNE2(2) [BLOCK NO 4^3J ... STOZ ACOMMUNE3(2) [MARKER TO DELETE THIS PFL ENTRY 4^5? ... CALL 0 XTRAN [IN THE ALIEN MACHINE 4^72 ...) 4^8W LDX 6 3 4^NG FINDFAIL 3,7,5,PFL,XCERR,SBSA(3) 5286 NGN 1 1 52MQ XC2 LDX 0 2(3) 537B STO 0 0(3) 53M2 TXU 0 1 546L BCC XC1 54L= ADN 3 1 555W BRN XC2 55KG XC1 LDX 3 6 5656 BZE 4 VA2 [J IF JUST REMOVING PFL ENTRY 56JQ STO 7 SNEWB(3) 574B LDX 6 SBLNUM(3) 57J2 ANDN 6 3 [GET BLOCKLET BITS 583L ORS 6 SNEWB(3) [AND PUT IN NEW BLOCK NO. 58H= LDX 6 SBLNUM(3) 592W LDX 1 SDATUM(3) 59GG STO 1 SNEWDAT(3) 5=26 LDX 0 SBSA(3) 5=FQ SMO FX2 5=^B STO 0 AWORK1 5?F2 BRN XC3 5?YL XCERR GEOERR 0,NOPFL 5#D= # NOW TO CHANGE THE BLOCK NUMBERS .REQUEUE Q BLOCKS,IF NECESSARY 5#XW # AND UNSET ANY FAIL BITS 5*CG # 5*X6 VA1 LDX 2 FX2 5BBQ LDN 4 0 5BWB LDCT 0 #200 [IF ANOTHER FAILURE IN A CORRUPT 5CB2 ANDX 0 SBLNUM(3) [BLOCK REMOVE OLD PFL ENTRY 5CTL BNZ 0 XCH2 5D*= VA2 5DSW LDX 0 SLFN(3) 5F#G STO 0 ACOMMUNE1(2) [L.F.N 5FS6 LDX 0 SBLNUM(3) 5G?Q ANDX 0 BSTSMASK 5GRB STO 0 ACOMMUNE2(2) [BLOCK NUMBER 5H?2 LDX 0 SBSA(3) 5HQL STO 0 AWORK1(2) [BSA ADDRESS 5J== CALL 0 XLIST [CHANGE ENTRY FROM CFL TO FFL 5JPW MHUNT 3,BSTB,BLUFF 5K9G LDX 0 SMARK(3) 5KP6 BZE 0 TB3 [JUMP IF NO ENTRY IN PFL 5KYY ... FSHSKIP 5L8Q HUNT2 2,BSTB,BFAIL,SBSA(3) 5L9? ... FSHCODE AORB 5L9S ...( 5L=* ...SHFS5 5L=W ... HUNT2 2,BSTB,BFAIL,SBSA(3) 5L?C ... LDX 0 A1(2) 5L?Y ... BPZ 0 SHFS6 [J IF BLOCK NOT BEING TAMPERED WITH 5L#F ... COOR2 [ELSE WAIT 5L*2 ... BRN SHFS5 5L*H ...SHFS6 5LB4 ... LDN 1 A1-1(2) 5LBK ... NGN 0 1 5LC6 ...SHFS7 5LCM ... ADN 1 2 5LD8 ... TXU 0 0(1) 5LDP ... BCS SHFS7 [J IF TERMINATOR NOT FOUND YET 5LF= ... SBN 1 A1-3(2) 5LFR ... TXL 1 ALOGLEN(2) [HAS BLOCK GOT TO BE LENGTHENED? 5LG# ... BCS SHFS8 [J IF NOT 5LGT ... LDX 4 ALOGLEN(2) 5LHB ... ADN 4 AFAILEX [NEW LENGTH 5LHX ... LDX 5 GSIGN 5LJD ... ORS 5 A1(2) 5LJ^ ... ALTLEN 2,4 5LKG ... MHUNT 3,BSTB,BLUFF 5LL3 ... HUNT2 2,BSTB,BFAIL,SBSA(3) 5LLJ ... ERS 5 A1(2) [CLEAR 'BEING TAMPERED WITH' BIT 5LM5 ...SHFS8 5LML ...) 5LNB [FIND THE CFL/PFL 5M82 ADN 2 A1-1 5MML NGN 0 1 5N7= TB4 ADN 2 2 [SEARCH FOR END OF BLOCK 5NLW TXU 0 0(2) 5P6G BCS TB4 [JUMP IF NOT END OF LIST 5PL6 STO 0 2(2) 5Q5Q LDX 0 SNEWB(3) 5QKB STO 0 0(2) [BLOCK NUMBER 5R52 LDX 0 SP2(3) 5RJL STO 0 1(2) [L.F.N FOR THIS BLOCK 5S4= LDX 4 SMARK(3) 5SHW SRC 4 6 [BLOCKLET MARKERS 5T3G ORS 4 1(2) 5TH6 LDCT 0 BSPFL [PERMANENT FAIL MARKER 5W2Q ORS 0 1(2) 5WGB ORS 0 SNEWB(3) [FAILED BLOCKLET MARKER 5X22 #SKI K6TRANFAIL>199-199 5XFL ( 5X^= TRACE 0(2),PFL 5YDW TRACE 1(2) 5YYG TRACE 2(2) 5^D6 ) 5^FH ... FSHCODE AORB 5^GY ...( 5^J* ...# CREATE NEW PFL ENTRY IN OTHER M/C ALSO. 5^KQ ... LDX 5 SLFN(3) 5^M7 ... LDX 6 0(2) 5^NJ ... LDX 7 1(2) 5^NX ... SETNCORE 1,3,FSH,FSHAMBLES [ 5^P= ... LDX 0 SCDLINK2(1) [ SET UP BLOCK FOR UNANT. CLOSEDOWN 5^PK ... STO 0 FSHCDLINK(3) [ 5^P^ ... TRANSBEG FSHTFID,RITEFAIL,8,NOBLOCKS,,ACOMMUNE4,SHFSB,SUP 5^Q# ... BRN SHFSB 5^QM ...XSHFSB 5^R2 ... FSHACCWK 5^RB ...SHFSB 5^S4 ... MFREEW FSH,FSHAMBLES 5^SR ... MHUNT 3,BSTB,BLUFF 5^W8 ...) 5^XQ TB3 LDX 1 SNEWDAT(3) 62CB LDX 5 SLFN(3) 62X2 LDX 6 SBLNUM(3) 63BL LDX 7 SNEWB(3) 63W= XC LDX 0 6 64*W ANDN 0 3 [GET BLOCKLET BITS 64TG ORS 0 1 [TO DATUMISED ADDRESS 65*6 ORS 0 SNEWDAT(3) 65SQ ORS 0 SNEWB(3) 66#B ORS 0 7 66S2 XC3 67?L #SKI K6TRANFAIL>199-199 67R= ( 68=W TRACE 1,FAILURE1 68QG TRACE 5, 69=6 TRACE 6, 69PQ TRACE 7, 6=9B ) 6=P2 CALL 0 XFAIL 6?8L LDX 2 BSCHANAD(2) [CHANGE BLOCK NO. IN THIS Q BLOCK 6?N= MHUNT 3,BSTB,BLUFF 6#7W LDX 4 SNEWB(3) 6#MG LDX 5 SNEWDAT(3) 6*76 SBN 2 CHAINADD 6*LQ LDX 0 ATYPE(2) 6B6B TXL 0 CACT 6BL2 BCS TB3X 6C5L STO 4 BA3(2) 6CK= STO 5 ACOMMUNE9(2) 6D4W BRN TB3Z 6DJG TB3X STO 4 BLKNO(2) 6F46 STO 5 ADBLKNO(2) 6FHQ TB3Z LDX 6 3 6G3B LDN 3 CHAINADD(2) 6GH2 OFFQUE 3 6H2L LDX 3 6 6HG= OPTRAN 2,SNEWDAT(3),SBSA(3) 6H^W LDX 1 FX1 6JFG LDX 2 FX2 6J^6 LDX 3 6 6KDQ LDX 0 SBSA(3) 6KYB STO 0 AWORK1(2) 6LD2 LDX 0 SLFN(3) 6LXL STO 0 ACOMMUNE1(2) 6MC= LDX 0 SNEWB(3) 6MWW ANDX 0 BSTSMASK 6NBG STO 0 ACOMMUNE2(2) 6NW6 CALL 0 XWAIT [REQUEUE BLOCKS FROM WAIT Q 6P*Q MHUNT 3,BSTB,BLUFF 6PN7 ... LDX 1 SBSA(3) 6Q2J ... CALL 7 UNSTFB [ UNSET FAIL BIT 6Q57 ...TDE 6Q7Q ...#UNS FSHTEST 6Q=* ...( 6Q#Y ... LDX 2 FX2 6QCH ... BC 2,BFSHACTB [TFA TO M/C A 6QG6 ... FPUT 6QJP ... COOR1 6QM# ...) 6QPX ... HUNTW 3,BSTB,BWRITE [SEE IF ANY MORE FAILS TO DEAL WITG 6QSL BPZ 3 TDB [J IF MORE FAILED BLANKET TRANSFERS 6R#= ADN 2 BSCHANAD 6RRW TXU 2 0(2) 6S?G BCS TDA [J IF MORE ORDINARY FAILS 6SR6 HUNTW 3,BSTB,BLUFF [ 6T=Q BNG 3 TDC 6TQB FREECORE 3 [FREE DATA BLOCK 6W=2 TDC COOR1 [GO TO SLEEP-NOTHING MORE TO DO 6WPL BRN PSTART 6X9= TDB HUNTW 3,BSTB,BLUFF 6XNW BNG 3 TDA 6Y8G FREECORE 3 [FREE BLUFF IF BLANKET FAILS TO DO 6YN6 TDA LDX 1 FX1 6^7Q LDX 2 FX2 6^MB BRN PSTART 83*G # 83T6 # 842# ...STYPE 847G ...#HAL +BSTB+BQBLK,0 84#Q # 9YBL # 9YW= # 9^*W # SR TO REQUE BLOCKS FROM BSWQ TO BSA Q. 9^TG # AWORK1 CONTAINS ADDRESS OF BSA =2*6 # ACOMMUNE1 CONTAINS LFN OR BSUN =2SQ # ACOMMUNE2 CONTAINS ZERO IF BSUN IN 1 OR BLOCK NUMBER =3#B # LINK X0 STORED IN ACOMMUNE6 =3S2 XWAIT =4?L STO 0 ACOMMUNE6(2) =4R= LDX 1 AWORK1(2) =5=W LDN 7 0 =5QG LDX 0 ACOMMUNE2(2) =6=6 BNZ 0 SCA [JUMP IF OFFLINE =6PQ LDN 7 2 =79B SCA LDN 6 BSQWCHAN(1) [BASE OF WAIT Q =7P2 LDX 3 6 =88L SH LDX 3 FPTR(3) [ADDRESS OF Q BLOCK =8N= SHA LDX 2 FX2 =97W TXU 3 6 =9MG BCC SD [JUMP IF END OF Q ==76 SBN 3 CHAINADD ==LQ LDN 4 BA1(3) [RESCUE PARAMETERS BA AREA IF ACTIVIT =?6B LDX 1 EXEC3(3) [DATUMISED BLOCK NUMBER =?L2 LDX 0 ATYPE(3) =#5L SMO FX1 =#K= TXU 0 STYPE =*4W BCS SR1 =*JG LDX 1 ADBLKNO(3) =B46 LDN 4 ATRAN(3) =BHQ SR1 LDN 5 AWORK2(2) =C3B MOVE 4 3 =CH2 LDX 0 AWORK2(2) =D2L ANDN 0 2 =DG= ERX 0 7 =D^W BNZ 0 SG [JUMP IF WRONG TYPE OF TRANSFER =FFG BNZ 7 SY [JUMP IF ONLINE =F^6 LDX 0 AWORK3(2) =GDQ ANDN 0 #377 =GYB TXU 0 ACOMMUNE1(2) =HD2 BCS SG [JUMP IF WRONG LFN =HXL LDX 0 AWORK4(2) =JC= ANDX 0 BSTSMASK =JWW TXU 0 ACOMMUNE2(2) =KBG BCS SG =KW6 SY LDX 4 CHAINADD(3) =L*Q #SKI K6TRANFAIL>199-199 =LTB ( =M*2 TRACE 3,REQUE =MSL TRACE 6, =N#= ) =NRW ADN 3 CHAINADD =P?G OFFQUE 3 =PR6 SBN 3 CHAINADD =Q=Q OPTRAN 3,1,AWORK1(2) =QQB LDX 3 4 =R=2 BRN SHA =RPL SG ADN 3 CHAINADD [ADJUST POINTER =S9= BRN SH =SNW SD LDX 1 FX1 =T8G LDX 2 FX2 =TN6 LDX 0 ACOMMUNE6(2) =W7Q EXIT 0 0 ?8CW # SR TO REMOVE ANENTRY FROM THE CFL AND PLACE IT IN THE FFL ?8XG # X0 LINK STORED IN AWORK4 ?9C6 # LFN IN ACOMMUNE1,BLOCK NUMBER IN ACOMMUNE2 ?9WQ # USES ALL ACCS X1=FX1 X2=FX2 ?=BB # ?=W2 XLIST ??*L SBX 0 FX1 ??T= STO 0 AWORK4(2) ?##W LDX 6 ACOMMUNE1(2) ?#SG LDX 7 ACOMMUNE2(2) ?*#6 XDA HUNT2 2,BSTB,BFRAIL,ATFAPTR ?*RQ LDX 0 A1(2) [CHECK IF LIST BEING ALTERED ?B?B BPZ 0 XDB [JUMP IF OK ?BR2 COOR2 ?C=L BRN XDA ?CQ= XDB LDN 1 A1-1(2) ?D9W NGN 0 1 ?DPG XD ADN 1 2 [CHECK IF ROOM IN LIST FOR NEW ENTRY ?F96 TXU 0 0(1) ?FNQ BCS XD ?G8B SBN 1 A1-3(2) ?GN2 TXL 1 ALOGLEN(2) ?H7L BCS XE ?HM= LDX 4 ALOGLEN(2) ?J6W ADN 4 AFRAILEX ?JLG LDCT 0 #400 [LOCKOUT MARKER ?K66 ORS 0 A1(2) ?KKQ LDX 3 2 ?L5B ALTLEN 3,4 ?LK2 HUNT2 3,BSTB,BFRAIL,ATFAPTR ?M4L LDCT 0 #400 ?MJ= ERS 0 A1(3) ?N3W LDX 4 3 ?NHG XEA FINDFAIL 3,7,6,CFL,XERR,AWORK1(2) ?P36 LDX 2 4 ?PGQ NGN 0 1 ?Q2B XF ADN 2 2 ?QG2 TXU 0 A1-1(2) [SEARCH FOR END OF F.F LIST ?Q^L BCS XF ?RF= LDX 0 0(3) [SET UP RECORD ?RYW STO 0 A1-1(2) [BLOCK NUMBER ?SDG LDX 0 6 ?SY6 SRC 0 6 [ ?TCQ STO 0 A1(2) [ L.F.N IN B0-B23 ?TXB NGN 0 1 ?WC2 STO 0 A1+1(2) [END OF BLOCK MARKER ?WWL SBN 3 1 ?XB= PA ADN 3 1 [REMOVE RECORD FROM CFL BY MOVING ?XTW LDX 4 2(3) [REMAINDER UP ?Y*G STO 4 0(3) ?YT6 TXU 4 0 [TEST FOR END OF LIST ?^#Q BCS PA ?^B7 ... FSHCODE B,XIAMA ?^CJ ...( ?^D^ ... LDN 4 3 [LENGTH ?^GB ... SETUPCORE 4,3,FSH,FSHBDEL [USED BY DELBLKS MACRO ?^HR ... STO 4 A1(3) [RECORD HEADER ?^K8 ... STO 6 A1+1(3) [RESIDENCE NO ?^LK ... STO 7 A1+2(3) [BLOCK NO ?^N2 ... TRANSBEG FSHTFID,RITEFAIL,5,FSH,FSHBDEL,ACOMMUNE1,YLIST,AUT,SUP ?^PC ...XIAMA ?^QS ...) ?^SB LDX 2 FX2 #2#2 YLIST HUNT2 3,BSTB,BFAIL,AWORK1(2) #2RL LDN 0 1 #3?= SBS 0 A1(3) [SUBTRACT ONE FROM CFL COUNT #3QW LDX 1 FX1 #4=G LDX 2 FX2 #4Q6 LDX 0 AWORK4(2) #59Q ADX 0 FX1 #5PB EXIT 0 0 #692 XE LDX 4 2 #6NL LDX 2 FX2 #78= BRN XEA #7MW XERR GEOERR 0,CFRECLST #87G ...XFAIL LDX 2 FX2 #8M6 ... SBX 0 FX1 #96Q ... STO 0 AWORK4(2) #9LB ... STO 1 ACOMMUNE1(2) #=62 ... DOWN RITEFAIL,4 [FAILURE MACRO #=KL LDX 0 AWORK4(2) #=TD ... ADX 0 FX1 #?5= EXIT 0 0 **P4 ...# **QL # **ST ...# SUBROUTINE TO UNSET OFFLINE FAIL BIT **X4 ...# **^? ...UNSTFB *B3G ... UNSETFB 1,1 *B5P ... EXIT 7 0 *B7Y ...# *BPW #END ^^^^ ...115302350002