CLOSEMAS863
(George Source)
Macros used: ACROSS, BACKREAD, BITDEFS, BXE, BXU, CHAIN, FREEBAX, GEOERR, JBC, JBS, MBC, MFREEW, MHUNTW, SEG, SEGENTRY, TRACEIF
- CLOSEMAS863.txt
22CB ... SEG CLOSEMAS,863,SECTION FILE,CLOSE 22SQ ...# 23=6 ...# USE OF X7 23MG ...# --- -- -- 244W ... BITDEFS 7,22,XBAUTO [AUTONOMOUS CLOSE 24G= ...# 24XQ # 25CB SEGENTRY K1CLOSEMAS,XENT1 25X2 ...# 26BL ...SFINDEXF 26W= ...#HAL FI+FINDEXF,0 27*W ...# 27TG # 28*6 # THIS ROUTINE UPDATES MASTER'S DIRECTORY ENTRY. IT IS ONLY ENTERED 28SQ ...# (FROM CLOSEND) WHEN AN ACTIVITY IS DOING A FULL 'CLOSE' ON MASTER. 29#B # ENSURES THAT ONLY ONE ACTIVITY IS REWRITING MASTER'S DIRECTORY ENTRY 29S2 ...# TIME BY SETTING B0 OF CTOPEN IN THE MASTER FCB BEFORE ENTERING CLOSE 2=?L # 2=R= XENT1 2=XN ... TRACEIF K6CLOSEMAS,99,299,7,MA [MASTER'S DIRECTORY BEING READ BY 2?46 ...#UNS CLOSESTATS 2?8J ...( 2?*2 ... LDN 0 1 2?FD ... ADS 0 CLSTAT5 [NO. OF READS OF MASTER'S DIRECTORY E 2?KW ...) 2?QG LDN 6 BTHREE 2#=6 LDN 4 ADMASTDIR 2#PQ ... BACKREAD ,BSBS,,EX6,EX4 [READ MASTER'S DIRECTORY ENTRY 2*9B MHUNTW 3,BSTB,BREAD 2*P2 ... LDX 1 BFILE [X1-> MASTER'S FCB (ASSUME IT IS 1ST 2B8L ... LDX 0 FLASTJAM(1) 2BN= ... STO 0 ELASTJAM(3) [UPDATE GMT OF LAST BS JAM 2C7W ... LDX 0 FGMTBS(1) 2CMG ... STO 0 EGMTBS(3) [UPDATE CURRENT GMT 2D76 ... MBC 1,BFALTB,BFALTR,BFDIRUPDATE [CLEAR 'FILE & BLOCKS ALTERED 2FL2 SMO A1(3) 2G5L ... LDN 2 A1(3) [SET X2->COPIES RECORD IN MASTER'S DI 2H4W LDX 4 FBLMOD(1) 2HJG SBN 4 FBLKS-A1-2 2J46 ... STO 4 0(2) [UPDATE BLOCKS RECORD HEADER 2JHQ ADN 2 1 2K3B ADN 1 BSPRE 2KH2 SMO 4 2L2L ... MOVE 1 511 [OVERWRITE COPIES RECORD WITH RES. NO 2LG= ... SBN 1 BSPRE [X1-> MASTER'S FCB 2L^W ... SMO FX1 2MFG ... LDX 0 SFINDEXF 2M^6 ...NIND [LOCATE FINDEXF BLOCK FOR :MASTER 2NDQ ... LDX 1 FPTR(1) 2NYB ... BXE 0 FILEPLUSFCB,XERRIND [GEOERR IF NO FINDEXF 2PD2 ... BXU 0 ATYPE(1),NIND [J IF NOT FINDEXF 2PXL ... ADX 2 4 2QC= ... SBN 2 1 [X2-> INDEX RECORD IN MASTER'S DIRECT 2QWW ... LDX 4 A1(1) [MOVE NEW INDEX RECORD TO MASTER'S DI 2W#= ADN 1 A1 2WRW SMO 4 2X?G MOVE 1 0 2Y=Q SMO 4 2YQB ... STOZ 0(2) [SET ZERO AT END OF INDEX RECORD IN D 33N6 ADN 3 A1 33T# ... LDCT 0 #200 342G ... ERS 0 0(3) [INVERT MARKER TO SAY WE'VE CHANGED T 347Q LDN 4 GSBS/2(3) 34MB ... MOVE 3 GSBS/2 [DUPLICATE 1ST HALF OF DIR. ENTRY BLO 3572 ... BACKWRIT FREE,BSBS,TFAIL [REWRITE MASTER'S DIRECTORY ENTRY NON 35LL ... LDX 2 BFILE [X2-> MASTER'S FCB 366= ... JBC NOFREE,2,BFCARE [PERHAPS THERE COULD BE NO FMAPP 36KW ... LDX 0 FFSFMAPP 375G ...NEXTRY [LOCATE FILE/FMAPP BLOCK (IN X2) 3=3= LDX 2 FPTR(2) 3=GW ... BXU 0 ATYPE(2),NEXTRY 3?2G ... STOZ FBCOMM(2) [REINITIALIZE FMAPP BLOCK 3?G6 ... STOZ FBITS(2) 3?^Q ... JBS MASAUT,,XBAUTO [J IF IN AUTONOMOUS CLOSE 3#FB ... LDX 5 2 [X5-> FMAPP 3#^2 ... LDX 6 FFSFULLB 3*DL ... LDN 4 0 [ZEROISE COUNT OF FULLBS 3*Y= ...NEXTBS 3BCW ... SMO 5 3BXG ... LDX 2 FPTR 3CC6 ... BXU 6 ATYPE(2),TOFREE [J IF NEXT BLOCK NOT FULLB 3S5B CHAIN 2,FX2 [RECHAIN SPARE BS TO ACT 3SK2 BUX 4 NEXTBS 3T4L TOFREE 3TJ= ... BZE 4 NOFREE [J IF NO FULLBS TO FREE 3W3W NEXTFREE 3WHG FREEBAX [FREE IT 3X36 MFREEW BSTB,EMPTYB 3XGQ BCT 4 NEXTFREE 3Y2B NOFREE 3YG2 ... ACROSS CLOSEND,2 [NON-AUTONOMOUS CLOSE EXIT 3Y^L ...MASAUT 3^F= ... ACROSS CLOSEALT,5 [AUTONOMOUS CLOSE EXIT 3^YW ...# 42DG ...TFAIL 42Y6 ... GEOERR BRIEFPM,MAS FAIL [WRITE FAIL ON MASTER'S DIRECTORY ENT 43CQ ...XERRIND 43XB ... GEOERR BRIEFPM,NOMASIND [FI/FINDEXF BLOCK MISSING FOR :MASTER 45TW #END ^^^^ ...30130541000500000000