{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: SJLOOP864)}} ====== SJLOOP864 ====== (George Source) **Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:FINDACTX|FINDACTX]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FRITE|FRITE]], [[george:macro:FSHCODE|FSHCODE]], [[george:macro:FSHENTRY|FSHENTRY]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNTANY|HUNTANY]], [[george:macro:JBC|JBC]], [[george:macro:JBS|JBS]], [[george:macro:JMBS|JMBS]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:PHOTO|PHOTO]], [[george:macro:PICKREP|PICKREP]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SJCHAINY|SJCHAINY]], [[george:macro:STEP|STEP]], [[george:macro:STOPACT|STOPACT]], [[george:macro:TESTMOVE|TESTMOVE]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TESTREPNOT|TESTREPNOT]], [[george:macro:TESTREPX|TESTREPX]], [[george:macro:TRANSFIN|TRANSFIN]], [[george:macro:TRANSRET|TRANSRET]] 22FL SEG SJLOOP,,MIKE PUTNAM,FILESTORE 22^= [ 23DW SEGENTRY K1SJLOOP,XENT1 23FH ... FSHENTRY K2SJLOOP,XENT2,,XENT2 23G8 ...[ 23GT ...XENT2 23HG ... FSHCODE A,XFSHASJ 23J7 ...( 23JS ...# THIS IS A SPECIAL ENTRY POINT FOR THE SHARED FILESTORE ENHANCEMENT 23KF ...# TO DO AN SJCHAINY WITHIN MACHINE A 23LR ... MHUNTW 3,GMON,JRNAL [PTR TO GMON/JRNAL BLOCK IN X3 23N5 ... LDX 4 JWAITER(3) 23NQ ... BZE 4 XSJCHAIN [J IF AUTONOMOUS 23PC ... LDX 4 ACTNUM(2) [ACTIVITY NUMBER OF CURRENT ACTIVITY 23Q4 ... STO 4 JWAITER(3) [RESET ACTIVITY NUMBER OF GMON/JRNAL 23QP ...XSJCHAIN 23RB ... SJCHAINY 3 [WRITE ENTRY TO SYSTEM JOURNAL 23S3 ... BZE 4 NOTRANSFIN [J IF AUTONOMOUS TRANSBEG 23SN ... TRANSFIN [RETURN TO M/C B 23T* ...NOTRANSFIN 23W2 ... TRANSRET [RETURN TO TRANSFER ROUTINES 23WM ...XFSHASJ 23X# ...) 23YG [ 24D6 # THIS CHAPTER APPENDS RECORDS TO THE SYSTEM JOURNAL FILE 24XQ # ENTRY CONDITIONS:- 25CB # ENTER BY EMS AT K1 NB ACTIVITY ZEROISED 25X2 # ALSO FROM SJOPEN CHAPTER BY AN ACROSS, VARIOUS BITS OF JSWITCH1 ARE 26BL # SET.THESE ARE:- 26W= # B0-BJFILOPEN-A FILE IS OPEN FOR USE 27*W # B1-BJFILINIT-A FILE IS BEING INITIALISED 27TG # B2-BJFILREADY-A NEW,INITIALISED, FILE IS READY 27YL ...# B3-BJFILSWITCH-SOMEONE WANTS AN IMMEDIATE FILE SWITCH 283Q ...# E.G. A WRITE FAIL HAS CAUSED SOME BLOCKS TO BE SWAPPED SO 286W ...# THE FILE MUST BE CLOSED TO ENSURE THAT THE BLOCKS RECORD 28=2 ...# IS ACCURATE IN THE DIRECTORY 28*6 28SQ 29#B NOBLOCKS 29S2 STOPACT SJ [STOP ACTIVITY 2=?L XENT1 2=R= JBC NOFILE,2,BJFILOPEN [NO FILE OPEN 2?=W 2?QG NEXTBLOC [X2 NOT = FX2****** 2#=6 NEXTBLK1 2##* ...# 2#BJ ...# SOMEONE MAY HAVE SET THE 'FORCE FILE SWITCH ' BIT SO WE TEST FOR 2#DR ...# AND ACT ON IT. 2#H2 ...# 2#K9 ... LDX 2 FX2 2#MD ... JBS XNEWFILE,2,BJFILSWITCH 2#PQ CALL 6 SJSEARCH [HUNT FOR A GMON/JRNAL BLOCK 2*9B BRN NOBLOCKS [NO BLOCK EXIT 2*P2 LDX 4 1 2B8L # BLOCK FOUND ADDRESS IN X1 AND X4 2BN= PHOTO 5 2C7W 2CMG LDEX 3 JRECHEAD1(1) [NO OF WORDS. 2D76 STEP 0,0(3) [APPEND TO FILE 0, ADDR IN X3 2DLQ TESTMOVE 5,NOTMOVED 2F6B # REHUNT FOR JOURNAL BLOCK 2FL2 CALL 6 SJSEARCH 2G5L BRN NOBLOCK1 [TO A TESTING GEOERR. 2GK= LDX 4 1 2H4W PHOTO 5 2HJG 2J46 NOTMOVED 2JHQ LDX 1 4 [COPY BACK 2K3B TESTREP FILEFULL,XNEWFILE 2KH2 LDN 2 JRECHEAD1(1) [ADDRESS FROM 2L2L LDX 7 JWAITER(1) [0 IF AUTONOMOUS 2LG= LDEX 1 JRECHEAD1(1) 2L^W MOVE 2 0(1) [MOVE DATA IN 2MFG FREECORE 4 [FREE GMON/JRNAL 2M^6 BNZ 7 NONAUTO 2NDQ TESTREPNOT FNEARLY,NEXTBLOC 2NYB NEARLY 2PD2 JMBS NEXTBLK1,2,BJFILINIT,BJFILREADY [J IF DONT NEED ANOTHER FILE 2PXL NOFILE 2QC= ACROSS SJOPEN,1 [AUTONOMOUS GET 2QWW 2RBG # FILEFULL REPLY CLOSE FILE. 2RW6 2S*Q XNEWFILE 2STB ACROSS SJOPEN,3 [CLOSE ENTRY. 2T*2 2TSL NONAUTO [NONAUTONOMOUS BS. TRANSFER. 2W#= # GET A FILE/FAPB AND COPY DATA ACROSS 2WRW # FREECORE BLOCK AND MARK AS FAPB PRESENT. 2X?G 2XR6 PICKREP 6 2Y=Q FRITE ,NONAUTO 2YQB FINDACTX 2,7 [LOCATE CALLING ACTIVITY 2^=2 FPUT [PUT IT BCK ON TIST 2^PL TESTREPX 6,FNEARLY,NEARLY 329= BRN NEXTBLK1 32NW 338G 33N6 SJSEARCH 347Q HUNTANY 1,GMON,JRNAL,BSJC,XL1 34MB ADN 6 1 [BLOCK EXISTS 3572 XL1 EXIT 6 0 35LL 366= NOBLOCK1 36KW GEOERR 1,JBLKLOST 375G 37K6 # TESTING AREA 384Q MENDAREA 200100-90,K99SJLOOP 38JB #END ^^^^ ...52662037000200000000