FAILURE
(GIN Macro)
Defined in: MACROS RMD10
Used in: LOADERI867, MESSAG, MESSB, MESSBA, MESSBG, MESSBH, MESSDB, MESSDC, PMFSB84, RESTERR864, RITEFAIL864
- FAILURE.mac.txt
39NL ...[??? FAILURE SECT FILE FGN 16 DOC 3=G6 ...# MACRO TO CHANGE BLOCK NOS IN FILESTORE BLOCKS, ACTS, AND Q-BLOCKS 3=WW ...#MAC FAILURE 3??L ...[ THIS MACRO SEARCHES THE ACTIVITY CHAIN WITH DETOURS VIA THE 3?NB ...[ WORKFILE RINGS & THEN THE FILE CHAIN LOOKING FOR BLOCKS WHICH NEED TO 3#56 ...[ BE UPDATED BY THE WRITE FAILURE SWAP MECHANISM 3#FW ...[IT DOES NOT CO-ORDINATE (OR IT WOULD LOSE ITS PLACE). 3#WL ...[ ON ENTRY X1=NEW DATUMISED BLOCK NUMBER 3*?B ...[ X5=RESIDENCE NUMBER 3*N6 ...[ X6=OLD BLOCK NUMBER 3B4W ...[ X7=NEW (REPLACEMENT) BLOCK NUMBER 3BFL ...[ 3BWB ... STO 1 GEN0 3C?6 ... STOZ GEN1 3CMW ... LDN 0 BTHREE [MASTER'S DIRECTORY 3D4L ... LDN 1 ADMASTDIR [ENTRY 3DFB ... TXU 5 0 3DW6 ... BXU 6 1,M0FAIL [J UNLESS :MASTER'S DIR ENT 3F7N ... GEOERR 1,MASSADED [WRITE FAIL ON :MASTER'S DIRECTORY 3FF= ... [ ENTRY CAN'T BE SWAPPED - FIXED 3FQS ... [ POSITION 3G4B ...M0FAIL 3GF6 ... ORN 6 3 [SET BLT BITS 3GTW ... ORN 7 3 3H=L ... LDX 1 BACT [BASE OF ACTIVITY CHAIN 3HMB ...[ 3J46 ...M1FAIL [CHECK BLOCK TYPE 3JDW ...[ 3JTL ... LDX 0 ATYPE(1) 3K=B ... SRL 0 12 3KM6 ... SBN 0 #6000 [MINIMUM ACTIVITY BLOCK TYPE 3L3W ... BPZ 0 M5FAIL [J IF ACTIVITY BLOCK 3LDL ... LDN 2 M92FAIL-M91FAIL [NUMBER OF BLOCK TYPES IN TABLE 3LTB ...M2FAIL 3M=6 ... SMO FX1 3MLW ... BXE 0 M91FAIL-1(2),M3FAIL [J IF BLOCK TYPES MATCH 3N3L ... BCT 2 M2FAIL [TRY NEXT TYPE IN TABLE 3NDB ... BRN M4FAIL [TRY NEXT BLOCK IN CHAIN 3NT6 ...[ 3P9W ...M3FAIL 3PLL ... LDN 3 ALENLFN [QBLK RELATIVISER 3Q3B ... LDN 4 ADBLKNO [ DITTO 3QD6 ... SBN 2 4 3QSW ... BZE 2 M7FAIL [J IF QBLK (4TH IN TABLE) 3R9L ... BNG 2 M8FAIL [J IF FCB OR FULLB OR FTABLE 3RLB ...[ 3S36 ...[ MUST BE BACK1/2 TYPE 3SCW ...[ 3SSL ... LDN 0 3 3T56 ... ORX 0 BACK2(1) [PLUS BLOCKLET BITS (MAY BE SET 3T*L ... [ ALREADY) 3TL6 ... TXU 5 BACK1(1) 3W2W ... BXU 6 0,M4FAIL [J UNLESS RESIDENCE & BLOCKS MATCH 3WCL ... ERX 0 7 3WSB ... ERS 0 BACK2(1) [SET NEW BL.NO. 3X96 ...[ 3XKW ...M4FAIL [GET NEXT BLOCK & CHECK FOR END OF CHAIN 3Y2L ...[ 3YCB ... LDX 1 FPTR(1) 3YS6 ... BXE 1 BACT,M40FAIL [J IF END OF ACTIVITY CHAIN 3^8W ... BXE 1 BFILE,M94FAIL [J TO EXIT IF END OF FILE CHAIN 3^KL ... BXU 1 GEN1,M1FAIL [J UNLESS END OF WORKFILE RING 422B ... SBN 1 BWORKRING [RECOVER CPAT ADDRESS 42C6 ... BRN M51FAIL 42RW ...[ 438L ...M40FAIL 43KB ... LDX 1 BFILE [START ON FILE CHAIN 4426 ... BRN M1FAIL 44BW ...[ 44RL ...M5FAIL [ACT. BLOCK SECTION 458B ... SMO FX1 45K6 ... BXU 0 M93FAIL,M51FAIL [J UNLESS CPAT 45^W ... ADN 1 BWORKRING [->WORKFILE RING 46BL ... STO 1 GEN1 [SAVE IT 46RB ... BRN M4FAIL 4786 ...[ 47JW ...M51FAIL 47^L ... BBUS 14,BA1(1),M4FAIL [J UNLESS TRANSFER IN PROGRESS 48BB ... LDN 3 BA2 [RELATIVISER FOR ACTIVITY TO BA WORDS 48R6 ... LDN 4 ACOMMUNE9 [ DITTO 497W ...M7FAIL [ACTIVITY OR QBLK 49JL ... LDN 0 #377 49^B ... ADX 3 1 4=B6 ... ANDX 0 0(3) 4=QW ... LDN 2 3 4?7L ... ORX 2 1(3) [BL. NO. 4?JB ... TXU 5 0 4?^6 ... BXU 6 2,M4FAIL [J UNLESS BLOCKS MATCH 4#*W ... ERX 2 7 4#QL ... ERS 2 1(3) [SET NEW NO. 4#^2 ... LDN 0 3 [UPDATE DATUMISED BLK NO 4*7B ... SMO 4 4**Q ... ANDS 0 0(1) [REMOVE OLD BLK NO LEAVING BLT BITS 4*J6 ... ORX 0 GEN0 [PICK UP NEW BLK NO AND 4*QG ... ERN 0 3 [REMOVE BLT BITS 4*YW ... SMO 4 4B7= ... ORS 0 0(1) [SET NEW BLK NO 4B*L ... BRN M4FAIL 4BQB ...[ 4C76 ...M8FAIL [FCB/FTABLE/FULLB 4CHW ...[ 4CYL ... ADN 2 2 [NOW ZERO IF FTABLE & NEGATIVE IF FCB 4D*B ... LDX 0 2 4DQ6 ... BNG 2 M42FAIL [J IF FCB 4F6W ... LDN 3 A1+1(1) [ADDRESS OF LFN IN FULLB 4FHL ... LDX 2 A1(1) 4FYB ... SBN 2 2 [NO. OF BLOCK NOS. 4G*6 ... BRN M43FAIL 4GPW ...[ 4H6L ...M42FAIL 4HHB ... LDX 2 FUSEBL(1) 4HY6 ... SBN 2 FBLKS-A1 [NUMBER OF BLOCKS IN FCB 4J#W ... LDN 3 BSPRE(1) [RELATIVISER TO BLOCK LIST 4JPL ...M43FAIL 4K6B ... BZE 2 M4FAIL [J IF NO BLOCKS 4KH6 ... LDX 4 0(3) [RESIDENCE NUMBER (SOMETIMES HAS 4KXW ... ANDN 4 #377 [ OTHER BITS SET) 4L#L ... BXU 5 4,M4FAIL [J IF WRONG RESIDENCE 4LS= ... ERN 6 3 [CLEAR BLOCKLET BITS IN OLD BLOCK 4M?W ... [ NUMBER 4W?L ...M9FAIL 4WNB ... SMO 2 4X56 ... BXE 6 0(3),M90FAIL [J IF BLOCK NUMBER FOUND 4XFW ... BCT 2 M9FAIL [TRY NEXT BLOCK NUMBER 4XWL ... BRN M44FAIL [TRY NEXT BLOCK IN CHAIN 4Y?B ...[ 4YN6 ...M90FAIL 4YYL ... ERN 7 3 [CLEAR BLOCKLET BITS IN NEW BLOCK 4^96 ... [ NUMBER 4^FL ... SMO 2 4^WB ... STO 7 0(3) [NEW BLOCK NO. 52?6 ... BPZ 0 M44FAIL [J UNLESS FCB 52MW ... JBC M9005FAIL,1,BFREV [J UNLESS REVERED (SJFILE) 534L ... BS BSJACT,BJFILSWITCH [FORCE CLOSE TO UPDATE BLOCKS RECORD 53FB ... LDX 3 1 [SAVE SEARCH POSITION 53W6 ... STARTACT SJ [WAKE JOURNAL ACTIVITY (FAILS IF 54=W ... LDX 1 3 [RECOVER SEARCH POSITION TEMPACT) 54ML ...M9005FAIL 554B ... MBS 1,BFALTB,BFALTR [SET REEL & BLOCKS ALTERED BITS 55F6 ... JBC M44FAIL,1,BFCARE [J UNLESS CAREFUL FILE 55TW ... LDX 0 FFSFMAPP 56=L ... LDX 2 1 56MB ...M4305FAIL 5746 ... LDX 2 FPTR(2) [X2->NEXT BLOCK IN FILA CHAIN 57DW ... BXU 0 ATYPE(2),M4305FAIL [J UNLESS FMAPP BLOCK 57TL ... LDN 0 1 [UPDATE FBCOMM TO INDICATE ALTERED 5842 ... [ BLOCK 58=B ... ANDX 0 FBCOMM(2) 58M6 ... ADN 0 1 593W ... ORS 0 FBCOMM(2) 59DL ...M44FAIL 59TB ... ORN 7 3 [REPLACE BLOCKLET BITS 5==6 ... ORN 6 3 [ DITTO 5=LW ... BRN M4FAIL 5?3L ...[ 5?DB ...M91FAIL [*** THESE 5?T6 ... +FILE+FCB-#6000 [*** FOUR 5#9W ... +FI+FTABLE-#6000 [*** BLOCKS 5#LL ... +BSTB+FULLB-#6000 [*** MUST 5*3B ... +BSTB+BQBLK-#6000 [*** REMAIN IN THE SAME ORDER 5*D6 ... +FILE+FURB-#6000 5*SW ... +FILE+FUWB-#6000 5B9L ... +FILE+FURWB-#6000 5BLB ... +FILE+FURRB-#6000 5C36 ... +BSTB+BREAD-#6000 5CCW ... +BSTB+FLOUR-#6000 5CSL ...M92FAIL 5DL6 ...[ 5F2W ...M93FAIL +CPAT-#6000 5FCL ...[ 5FSB ...M94FAIL 5G96 ...#NOR