{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: ACCESSMACROS)}} ====== ACCESSMACROS ====== (George Source) 22FL ... [JUDY BIDGOOD. 22^= [ PLEASE DO NOT REMOVE THIS LISTING FROM ROOM D7. 23DW [ PLEASE ENSURE THAT ALL EDITS ARE CHECKED BY THE CURRENT OWNER. 23YG #OPT ASTEPQ=2+HLINK [STEP MACRO LINK. 24D6 #OPT ASTEPR=ASTEPQ+1 [STEP(APPEND) MACRO LINK. 24XQ #OPT FNEARLY=4 [FILE NEARLY FULL-4 BLOCKS LEFT 25CB # MACROS FOR "RINGS & THINGS" IN THE FILESTORE 25X2 # 26BL # THIS SUBFILE CONTAINS THE FOLLOWING MACROS IN THIS ORDER 26W= # (NB PLEASE UPDATE !! ) 27*W # 27TG # INSERT 28*6 # REPLACE 28SQ # APPEND ACCESS MACROS 29#B # DELETE 29S2 # REWRITE 2=?L # WIND 2=R= # WRITEB 2?=W # STEP 2?QG # QSTEPC 2#=6 # READ 2#PQ # BACKSPACE 2*9B # REWIND 2*P2 # FASTREWIND 2B8L # ! GETFNAME 2BN= # VSKIP 2C7W # SKIP 2CMG # SUBSTITUTE 2D76 # STEPREWRITE 2DLQ # STEPWRITE 2F6B # READBACK 2FL2 # READAGAIN 2G5L # READB 2GK= # STEPAGAIN 2H4W # CURTAIL 2HJG # 2J46 # GETDIR 2JHQ # GDE 2K3B # FINDREC 2KH2 # READDICT 2L2L # READDICU 2LG= # GETSOUT 2L^W # GETJOB 2MFG # LOCATE 2M^6 # NEXTENT 2NDQ # NEXTENT3 2NYB # 2PD2 # 2PXL # GETAFURB [LEXICON ACCESS 2QC= # STEPFBLOCK [M&CROS 2QWW # SCURFUB 2RBG # FUWBSET 2RW6 # 2R^= ...# CORRUPTB 2S4B ...# CHECKBL 2S7G ...# BSCHECK 2S94 ...# DISCFAIL [ NOT FOR GENERAL USE ! 2S=L ...# 2S*Q # MACRO DEFINITIONS FOR TESTING RINGS AND THINGS 2STB # 2T58 ...[??? INSERT SECT FILE FGN 19 DOC 2T*2 #MAC INSERT 2TSL #STR %A 2W#= ( 2WRW LDCT 0 %A 2X?G SMO FX2 2XR6 STO 0 ACOMMUNE7 2Y=Q DOWN INSERT,1 2YQB ) 2^=2 #STR %A 2^PL #SKI 329= DOWN INSERT,11 32NW #NOR 32YN ...[??? REPLACE SECT FILE FGN 19 DOC 338G #MAC REPLACE 33N6 #STR %A 347Q ( 34MB LDCT 0 %A 3572 SMO FX2 35LL STO 0 ACOMMUNE7 366= DOWN INSERT,2 36KW ) 375G #STR %A 37K6 #STR 384Q DOWN INSERT ,12 38JB #NOR 38S8 ...[??? APPEND SECT FILE FGN 19 DOC 3942 #MAC APPEND 39HL #STR %A 3=3= #SKI 3=GW ( 3?2G #STR %B 3?G6 ( 3?^Q #STR ANSWER,%B 3#FB #SKI 3#^2 DOWN APPEND,13 3*DL #STR FORCED,%B 3*Y= #SKI 3BCW DOWN APPEND,12 3BXG #STR ANSWER,%B 3CC6 ( 3CWQ #STR FORCED,%B 3DBB ( 3DW2 #OPT M10APPEND=1 3F*L DOWN APPEND,14 3FT= ) 3G#W ) 3GSG ) 3H#6 #STR %B 3HRQ #SKI 3J?B DOWN APPEND,11 3JR2 ) 3K=L #STR %A 3KQ= ( 3L9W LDCT 0 %A 3LPG SMO FX2 3M96 STO 0 ACOMMUNE7 3MNQ #STR %B 3N8B ( 3NN2 #STR ANSWER,%B 3P7L #SKI 3PM= DOWN APPEND,9 3Q6W #STR FORCED,%B 3QLG #SKI 3R66 DOWN APPEND,8 3RKQ #STR ANSWER,%B 3S5B ( 3SK2 #STR FORCED,%B 3T4L ( 3TJ= #OPT M10APPEND=1 3W3W DOWN APPEND,10 3WHG ) 3X36 ) 3XGQ ) 3Y2B #STR %B 3YG2 #SKI 3Y^L DOWN APPEND,1 3^F= ) 3^YW #OPT M10APPEND=0 42DG #SKI M10APPEND 42Y6 #SKI 43CQ NULL 43XB #SKI M10APPEND 44C2 BRN %B 44WL #FRE M10APPEND 45B= #NOR 45L4 ...[??? DELETE SECT FILE FGN 19 DOC 45TW #MAC DELETE 46*G #STR %A 46T6 #SKI 47#Q DOWN DELETE,22 47SB #STR %A 48#2 ( 48RL LDCT 0 %A 49?= SMO FX2 49QW STO 0 ACOMMUNE7 4==G DOWN DELETE,2 4=Q6 ) 4?9Q #NOR 4?FJ ...[??? REWRITE SECT FILE FGN 19 DOC 4?PB #MAC REWRITE 4#92 #STR %A 4#NL #SKI 4*8= DOWN REWRITE,33 4*MW #STR %A 4B7G ( 4BM6 LDCT 0 %A 4C6Q SMO FX2 4CLB STO 0 ACOMMUNE7 4D62 DOWN REWRITE,3 4DKL ) 4F5= #NOR 4F*4 ...[??? WIND SECT FILE FGN 19 DOC 4FJW #MAC WIND 4G4G #STR %A 4GJ6 #SKI 4H3Q DOWN REWRITE,44 4HHB #STR %A 4J32 ( 4JGL LDCT 0 %A 4K2= SMO FX2 4KFW STO 0 ACOMMUNE7 4K^G DOWN REWRITE,4 4LF6 ) 4LYQ #NOR 4M8J ...[??? WRITEB SECT FILE FGN 19 DOC 4MDB #MAC WRITEB 4MY2 #STR %A 4NCL #SKI 4NX= ( 4PBW #STR %B 4PWG ( 4QB6 #STR ANSWER,%B 4QTQ #SKI 4R*B DOWN REWRITE,57 4RT2 #STR FORCED,%B 4S#L #SKI 4SS= DOWN REWRITE,58 4T?W #STR ANSWER,%B 4TRG ( 4W?6 #STR FORCED,%B 4WQQ ( 4X=B #OPT M10WRITEB=1 4XQ2 DOWN REWRITE,56 4Y9L ) 4YP= ) 4^8W ) 4^NG #STR %B 5286 #SKI 52MQ DOWN REWRITE,55 537B ) 53M2 #STR %A 546L ( 54L= LDCT 0 %A 555W SMO FX2 55KG STO 0 ACOMMUNE7 5656 #STR %B 56JQ ( 574B #STR ANSWER,%B 57J2 #SKI 583L DOWN REWRITE,52 58H= #STR FORCED,%B 592W #SKI 59GG DOWN REWRITE,53 5=26 #STR ANSWER,%B 5=FQ ( 5=^B #STR FORCED,%B 5?F2 ( 5?YL #OPT M10WRITEB=1 5#D= DOWN REWRITE,51 5#XW ) 5*CG ) 5*X6 ) 5BBQ #STR %B 5BWB #SKI 5CB2 DOWN REWRITE,5 5CTL ) 5D*= #OPT M10WRITEB=0 5DSW #SKI M10WRITEB 5F#G #SKI 5FS6 NULL 5G?Q #SKI M10WRITEB 5GRB BRN %B 5H?2 #FRE M10WRITEB 5HQL #NOR 5J2D ...[??? STEP SECT FILE FGN 19 DOC 5J== #MAC STEP 5JPW #STR %B 5K9G #SKI 5KP6 ( 5L8Q #STR %A 5LNB ( 5M82 LDCT 3 %A 5MML CALL 1 (ASTEP13) 5N7= DOWN READFILE,2 5NLW CALL 1 (ASTEP14) 5P6G ) 5PL6 #STR %A 5Q5Q #SKI 5QKB ( 5R52 CALL 1 (ASTEP11) 5RJL DOWN READFILE,22 5S4= CALL 1 (ASTEP12) 5SHW ) 5T3G ) 5TH6 #STR %B 5W2Q ( 5WGB #STR %A 5X22 ( 5XFL #STR %B,0(3) 5X^= #SKI 5YDW ( 5YYG LDCT 0 %A 5^D6 ADX 3 0 5^XQ ) 62CB #STR %B,0(3) 62X2 ( 63BL LDCT 3 %A 63W= ADN 3 %B 64*W ) 64TG CALL 1 (ASTEP17) 65*6 #STR %C 65SQ ( 66#B #STR ANSWER,%C 66S2 #SKI 67?L DOWN APPEND,21 67R= #STR FORCED,%C 68=W #SKI 68QG DOWN APPEND,20 69=6 #STR ANSWER,%C 69PQ ( 6=9B #STR FORCED,%C 6=P2 ( 6?8L #OPT M10APPEND=1 6?N= DOWN APPEND,22 6#7W ) 6#MG ) 6*76 ) 6*LQ #STR %C 6B6B #SKI 6BL2 DOWN APPEND,2 6C5L #OPT M10APPEND=0 6CK= #SKI M10APPEND 6D4W #SKI 6DJG NULL 6F46 #SKI M10APPEND 6FHQ BRN %C 6G3B #FRE M10APPEND 6GH2 CALL 1 (ASTEP18) 6H2L ) 6HG= #STR %A 6H^W #SKI 6JFG ( 6J^6 LDN 3 %B 6KDQ CALL 1 (ASTEP15) 6KYB #STR %C 6LD2 ( 6LXL #STR ANSWER,%C 6MC= #SKI 6MWW DOWN APPEND,21 6NBG #STR FORCED,%C 6NW6 #SKI 6P*Q DOWN APPEND,20 6PTB #STR ANSWER,%C 6Q*2 ( 6QSL #STR FORCED,%C 6R#= ( 6RRW #OPT M10APPEND=1 6S?G DOWN APPEND,22 6SR6 ) 6T=Q ) 6TQB ) 6W=2 #STR %C 6WPL #SKI 6X9= DOWN APPEND,2 6XNW #OPT M10APPEND=0 6Y8G #SKI M10APPEND 6YN6 #SKI 6^7Q NULL 6^MB #SKI M10APPEND 7272 BRN %C 72LL #FRE M10APPEND 736= CALL 1 (ASTEP16) 73KW ) 745G ) 74K6 #NOR 74SY ...[??? QSTEPC SECT FILE FGN 19 DOC 754Q #MAC QSTEPC 75JB [ J.TO %B IF WE HAVE TO COORDINATE TO DO A STEP ON FILE @ DEPTH %A 7642 #STR %A 76HL ( 773= LDCT 3 %A 77GW CALL 1 (ASTEP13) 782G ) 78G6 #STR %A 78^Q #SKI 79FB CALL 1 (ASTEP11) 79^2 LDX 1 FX1 7=DL LDX 2 FX2 7=Y= BRN %B 7?CW NULL 7?XG #NOR 7#7# ...[??? READ SECT FILE FGN 19 DOC 7#C6 #MAC READ 7#WQ #STR %A 7*BB #SKI 7*W2 DOWN READFILE,21 7B*L #STR %A 7BT= ( 7C#W LDCT 0 %A 7CSG SMO FX2 7D#6 STO 0 ACOMMUNE7 7DRQ DOWN READFILE,1 7F?B ) 7FR2 #NOR 7G2S ...[??? BACKSPAC SECT FILE FGN 19 DOC 7G=L #MAC BACKSPACE 7GQ= #STR %A 7H9W #SKI 7HPG DOWN PERUSFIL,44 7J96 #STR %A 7JNQ ( 7K8B LDCT 0 %A 7KN2 SMO FX2 7L7L STO 0 ACOMMUNE7 7LM= DOWN PERUSFIL,40 7M6W ) 7MLG #NOR 7MW# ...[??? REWIND SECT FILE FGN 19 DOC 7N66 #MAC REWIND 7NKQ #STR %A 7P5B #SKI 7PK2 DOWN PERUSFIL,31 7Q4L #STR %A 7QJ= ( 7R3W LDCT 0 %A 7RHG SMO FX2 7S36 STO 0 ACOMMUNE7 7SGQ DOWN PERUSFIL,30 7T2B ) 7TG2 #NOR 7TPS ...[??? FASTREWI SECT FILE FGN 19 DOC 7T^L #MAC FASTREWIND 7WF= [ REWINDS TOP FILE BUT DOESN'T DISPOSE OF USAGE BLOX 7WYW TOPFCA %A 7XDG NGS %A FREADBLOCK(%A) 7XY6 NGS %A FREADWORD(%A) 7YCQ #NOR 7YMJ ...[??? GETFNAME SECT FILE FGN 19 DOC 7YXB #MAC GETFNAME 7^C2 #STR %A 7^WL #SKI 82B= DOWN CHANFILE,24 82TW #STR %A 83*G ( 83T6 LDCT 0 %A 84#Q SMO FX2 84SB STO 0 ACOMMUNE7 85#2 DOWN CHANFILE,4 85RL ) 86?= #NOR 86H4 ...[??? SKIP SECT FILE FGN 19 DOC 86QW #MAC SKIP 87=G #STR %A 87Q6 ( 889Q LDCT 0 %A 88PB ADN 0 %B 8992 ) 89NL #STR %A 8=8= #SKI 8=MW LDN 0 %B 8?7G CALL 1 (ASTEP23) 8?M6 DOWN READFILE,2 8#6Q CALL 1 (ASTEP14) 8#LB #NOR 8#W8 ...[??? VSKIP SECT FILE FGN 19 DOC 8*62 #MAC VSKIP 8*KL ...#STR %A 8B5= ( 8BJW LDCT 0 %A 8C4G ADN 0 %B 8CJ6 ) 8D3Q ...#STR %A 8DHB #SKI 8F32 LDN 0 %B 8FGL CALL 1 (ASTEP32) 8G2= ... DOWN READFILE,9 8GFW CALL 1 (ASTEP34) 8G^G #NOR 8H9# ...[??? SUBSTITU SECT FILE FGN 19 DOC 8HF6 #MAC SUBSTITUTE 8HYQ #STR %A 8JDB ( 8JY2 LDCT 0 %A 8KCL SMO FX2 8KX= STO 0 ACOMMUNE7 8LBW DOWN REWRITE,7 8LWG ) 8MB6 #STR %A 8MTQ #SKI 8N*B DOWN REWRITE,77 8NT2 #NOR 8P4S ...[??? STEPREWR SECT FILE FGN 19 DOC 8P#L #MAC STEPREWRITE 8PS= #STR %A 8Q?W ( 8QRG STO 3 GEN6 8R?6 ... LOADNUM 3,%A 8RQQ LDX 2 FX2 8S=B FFCA 8SQ2 LDX 3 GEN6 8T9L ) 8TP= #STR %A 8W8W #SKI 8WNG TOPFCA 2 8X86 SBX 3 FREADWORD(2) 8XMQ NAME 3,FILE,FUWB 8Y7B ADX 3 FREADWORD(2) 8YM2 LDX 2 FX2 8^6L #NOR 8^BD ...[??? STEPWRIT SECT FILE FGN 19 DOC 8^L= #MAC STEPWRITE 925W #STR %A 92KG #SKI 9356 TOPFCA 2 93JQ #STR %A 944B ( 94J2 ... LOADNUM 3,%A 953L LDX 2 FX2 95H= FFCA 962W ) 96GG PSTAC 1,2 9726 BFCBX 1,1 97FQ JBC M2STEPWRITE,2,BAMCLEAN [J IF NOT OPEN IN CLEAN MODE 97^B GEOERR 1,CANTSTWR 98F2 M2STEPWRITE 98YL JBC M1STEPWRITE,1,BFCARE [J IF NOT CAREFUL 99D= LDX 2 FREADBLOCK(2) 99XW SBN 2 FBLKS-1 9=CG MAPBCH 2,1 9=X6 BNZ 0 M1STEPWRITE [J.IF BLK ALREADY SUBBED 9?BQ SUBSTITUTE %A 9?WB M1STEPWRITE 9#B2 STEPAGAIN %A 9#TL STEPREWRITE %A 9**= #NOR 9*K4 ...[??? READAGAI SECT FILE FGN 19 DOC 9*SW #MAC READAGAIN 9B#G #STR %A 9BS6 #SKI 9C?Q DOWN PERUSFIL,81 9CRB #STR %A 9D?2 ( 9DQL LDCT 0 %A 9F== SMO FX2 9FPW STO 0 ACOMMUNE7 9G9G DOWN PERUSFIL,80 9GP6 ) 9H8Q #NOR 9HDJ ...[??? READBACK SECT FILE FGN 19 DOC 9HNB #MAC READBACK 9J82 #STR %A 9JML #SKI 9K7= DOWN PERUSFIL,83 9KLW #STR %A 9L6G ( 9LL6 LDCT 0 %A 9M5Q SMO FX2 9MKB STO 0 ACOMMUNE7 9N52 DOWN PERUSFIL,82 9NJL ) 9P4= #NOR 9P#4 ...[??? READB SECT FILE FGN 19 DOC 9PHW #MAC READB 9Q3G #STR %A 9QH6 ( 9R2Q LDCT 0 %A 9RGB SMO FX2 9S22 STO 0 ACOMMUNE7 9SFL DOWN PERUSFIL,16 9S^= ) 9TDW #STR %A 9TYG #SKI 9WD6 DOWN PERUSFIL,67 9WXQ #NOR 9X7J ...[??? STEPAGAI SECT FILE FGN 19 DOC 9XCB #MAC STEPAGAIN 9XX2 #STR %A 9YBL ( 9YW= LDCT 3 %A 9^*W CALL 1 (ASTEP21) 9^TG DOWN READFILE,3 =2*6 CALL 1 (ASTEP22) =2SQ ) =3#B #STR %A =3S2 #SKI =4?L ( =4R= CALL 1 (ASTEP19) =5=W DOWN READFILE,23 =5QG CALL 1 (ASTEP20) =6=6 ) =6PQ #NOR =6^J ...[??? CURTAIL SECT FILE FGN 19 DOC =79B # THIS RESETS THE APPEND POINTERS OF A FILE TO ITS READ POINTERS, =7P2 # UNLESS POSITIONED AT OR JUST BEFORE E.O.F. IN WHICH CASE THE APPEN =88L # POINTERS ARE UNALTERED. NB - THIS MACRO HAS A LARGE EXPANSION. =8N= #MAC CURTAIL =97W SFSTACK %A,1,2 =9MG BFCBX 2,2 ==76 STO 1 GEN5 ==LQ LDX 0 FBLMOD(2) =?6B STO 0 GEN6 =?L2 LDX 0 FREADBLOCK(1) =#5L LDX 1 FREADWORD(1) =#K= BNG 0 M1CURTAIL =*4W SBN 0 A1 =*JG BXE 0 FBLMOD(2),M3CURTAIL =B46 BNG 1 M2CURTAIL =BHQ ADN 0 1 =C3B BRN M2CURTAIL =CH2 M1CURTAIL =D2L LDN 0 FBLKS-A1 =DG= M2CURTAIL =D^W STO 0 FBLMOD(2) =FFG STO 1 CMOD(2) =F^6 MBS 2,BFALTB,BFALTR [SET 'FILE AND BLOCK NOS. ALTERED' =GDQ [BITS,AS IN GENERAL BLOCKS WILL BE =GYB [LOST FROM THE FILE. =G^J ... LDN 0 4 =H2Q ... ANDX 0 FCOMM(2) =H3Y ... BZE 0 M4CURTAIL =H56 ... LDX 1 FPTR(2) =H6# ...M5CURTAIL =H7G ... LDX 1 FPTR(1) =H8N ... LDX 0 ATYPE(1) =H9W ... BXE 0 FILEPLUSFCB,M4CURTAIL =H?4 ... BXU 0 FFSFMAPP,M5CURTAIL =H#= ... LDN 0 3 =H*D ... STO 0 FBCOMM(1) =HBL ...M4CURTAIL =HD2 LDX 0 GEN6 =HXL SBX 0 FBLMOD(2) =JC= BZE 0 M3CURTAIL =JWW LDX 2 GEN5 =KBG SUBCUBS 2,0,JOB =KW6 M3CURTAIL =L*Q LDX 1 FX1 =LTB LDX 2 FX2 =M*2 #NOR =MJS ...[??? GETDIR SECT FILE FGN 19 DOC =MSL #MAC GETDIR =N#= DOWN GETDIR,1%A =NRW #NOR =P3N ...[??? GDE SECT FILE FGN 19 DOC =P?G #MAC GDE =PR6 GETDIR 1 =Q=Q #NOR =QGJ ...[??? FINDREC SECT FILE FGN 19 DOC =QQB #MAC FINDREC =R=2 M1FINDREC =RPL STEP %A =S9= BZE 3 %D =SNW LDX 0 %B(3) =T8G BXU 0 %C,M1FINDREC =TN6 #NOR =TXY ...[??? READDICT SECT FILE FGN 19 DOC =W7Q #MAC READDICT =WMB #STR %A =X72 LDX 0 %A =XLL #STR %A =Y6= #SKI =YKW LDN 0 0 =^5G SMO FX2 =^K6 STO 0 ACOMMUNE9 ?24Q #STR %B ?2JB ( ?342 LDN 0 %B ?3HL LDX 2 FX2 ?43= LDN 1 ACOMMUNE1(2) ?4GW MOVE 0 3 ?52G ) ?5G6 #STR %B ?5^Q #SKI ?6FB ( ?6^2 LDX 2 FX2 ?7DL STOZ ACOMMUNE1(2) ?7Y= ) ?8CW #STR %C ?8XG ( ?9C6 LDCT 0 #400 ?9WQ STO 0 ACOMMUNE7(2) ?=BB ) ?=W2 #STR %C ??*L #SKI ??T= STOZ ACOMMUNE7(2) ?##W DOWN LOCATE,5 ?#SG #NOR ?*4# ...[??? READDICU SECT FILE FGN 19 DOC ?*#6 #MAC READDICU ?*RQ #STR %A ?B?B #SKI ?BR2 LDN 0 0 ?C=L #STR %A ?CQ= LDX 0 %A ?D9W SMO FX2 ?DPG STO 0 ACOMMUNE9 ?F96 #ACC %B ?FNQ ( ?G8B LDX 0 %B ?GN2 SMO FX2 ?H7L STO 0 ACOMMUNE7 ?HM= ) ?J6W #ACC %B ?JLG #STR ?K66 ( ?KKQ SMO FX2 ?L5B STO %B ACOMMUNE7 ?LK2 ) ?M4L DOWN LOCATE,2 ?MJ= #NOR ?MS4 ...[??? GETSOUT SECT FILE FGN 19 DOC ?N3W #MAC GETSOUT ?NHG #STR %A ?P36 LDX 0 %A ?PGQ #STR %A ?Q2B #SKI ?QG2 LDN 0 0 ?Q^L SMO FX2 ?RF= STO 0 ACOMMUNE9 ?RYW LDX 0 %B ?SDG SMO FX2 ?SY6 STO 0 ACOMMUNE7 ?TCQ LDX 0 %C ?TXB SMO FX2 ?WC2 STO 0 ACOMMUNE1 ?WWL DOWN LOCATE,4 ?XB= #NOR ?XL4 ...[??? GETJOB SECT FILE FGN 19 DOC ?XTW #MAC GETJOB ?XXD ...#UNS JWPHASE3 ?X^2 ...( ?Y2J ...#STR %C ?Y46 ...( ?Y5N ... LDX 0 %C ?Y7= ... SMO FX2 ?Y8S ... STO 0 ACOMMUNE9 ?Y=B ...) ?Y?Y ...) ?Y*G #STR USER,%B ?YT6 #SKI ?^#Q ( ?^SB LDX 0 %A #2#2 LDX 2 FX2 #2RL LDN 1 ACOMMUNE1(2) #3?= MOVE 0 3 #3*8 ...#UNS JWPHASE3 #3C6 ...( #3F4 ...#STR %C #3H2 ... DOWN LOCATE,9 #3JY ...) #3LW ...#STR %C #3NS ...#SKI #3QW DOWN LOCATE,7 #4=G ) #4Q6 #STR SYSTEM,%B #59Q #SKI #5PB ( #692 #ACC %A #6NL ( #78= LDX 0 %A #7MW SMO FX2 #87G STO 0 ACOMMUNE7 #8M6 ) #96Q #ACC %A #9LB #STR #=62 ( #=KL SMO FX2 #?5= STO %A ACOMMUNE7 #?JW ) #?LS ...#UNS JWPHASE3 #?NQ ...( #?QN ...#STR %C #?SL ... DOWN LOCATE,10 #?WJ ...) #?YG ...#STR %C ##2D ...#SKI ##4G DOWN LOCATE,8 ##J6 ) #*3Q #NOR #*HB ...[??? NEXTENT SECT FILE FGN 19 DOC #DF6 #MAC NEXTENT #DYQ [ THIS MACRO EXPECTS A DIRECTORY OPEN AT LEVEL %A, POSITIONED ON #FDB [ A NAME RECORD,AND IT EXPECTS A FILE/ENT BLOCK FOR THIS ENTRY TO #FY2 [ BE IN THE ACTIVITY CHAIN. #GCL MHUNTW 1,FILE,ENT #GX= #SKI K6ACCESS>99$99 #HBW ( #HWG BPZ 1 M1NEXTENT #JB6 M2NEXTENT #JTQ GEOERR 1,NEXTENT! #K*B M1NEXTENT #KT2 ) #L#L LDEX 2 ECOPS(1) #LS= ADX 2 ENUSE(1) #M?W LDN 0 #1000 #MRG ANDX 0 EINF2(1) #N?6 BZE 0 M3NEXTENT #NQQ ADN 2 1 #P=B M3NEXTENT #PQ2 SKIP %A,1(2) #Q9L BZE 3 M4NEXTENT #QP= #SKI K6ACCESS>99$99 #R8W ( #RNG LDEX 0 EREC-A1(3) #S86 SBN 0 FRDE #SMQ BNZ 0 M2NEXTENT #T7B LDX 0 ERES-A1(3) #TM2 BNZ 0 M2NEXTENT #W6L ) #WL= M4NEXTENT #X5W #NOR #X*N ...[??? NEXTENT3 SECT FILE FGN 19 DOC #XKG #MAC NEXTENT3 #Y56 [ AS FOR NEXTENT,EXCEPT THAT IT ASSUMES X3 -> ENTRY RATHER THAN #YJQ #SKI K6ACCESS>99$99 #^4B CALL 1 M1NEXTENT3 #^J2 LDEX 2 ECOPS-A1(3) *23L ADX 2 ENUSE-A1(3) *2H= LDN 0 #1000 *32W ANDX 0 EINF2-A1(3) *3GG BZE 0 M2NEXTENT3 *426 ADN 2 1 *4FQ #SKI K6ACCESS>99-99 *4^B ( *5F2 BRN M2NEXTENT3 *5YL M1NEXTENT3 *6D= LDX 0 EREC-A1(3) *6XW SBN 0 FRDE *7CG BNZ 0 M3NEXTENT3 *7X6 LDX 0 ERES-A1(3) *8BQ BZE 0 (1) *8WB M3NEXTENT3 *9B2 GEOERR 1,NEXTENT3 *9TL ) *=*= M2NEXTENT3 *=SW SKIP %A,1(2) *?#G BZE 3 M4NEXTENT3 *?S6 #SKI K6ACCESS>99$99 *#?Q ( *#RB CALL 1 M1NEXTENT3 **?2 LDX 1 FX1 **QL ) *B== M4NEXTENT3 *BPW #NOR *B^N ...[??? GETAFURB SECT FILE FGN 19 DOC *C9G # THIS ATTEMPTS TO LEAVE THE CURRENT BLOCK IN THE FILE CHAIN AS A *CP6 # FILE/USAGE BLOCK [IT MAY NOT RE THERE AFTER COMING UP *D8Q #MAC GETAFURB *DNB #STR %A *F82 ( *FML LDCT 0 %A *G7= SMO FX2 *GLW STO 0 ACOMMUNE7 *H6G DOWN PERUSFIL,7 *HL6 ) *J5Q #STR %A *JKB #SKI *K52 DOWN PERUSFIL,27 *KJL #NOR *KSD ...[??? STEPFBLO SECT FILE FGN 19 DOC *L4= # THIS MACRO IS TO UPDATE THE BLOCK POINTER FOR THE FILE OPEN AT *LHW # DEPTH %A (ZERO IF ABSENT).IF THIS IS NEGAT VE,SETS POINTING TO 2ND *M3G # BLOCK *MH6 # %BCOPTIONAL>IS A LABEL TO JUMP TO ON READING FF END OF BL CLIST. *N2Q #MAC STEPFBLOCK *NGB #STR %A *P22 SFSTACK %A,1 *PFL #STR %A *P^= #SKI *QDW TOPFCA 1 *QYG LDX 0 FREADBLOCK(1) *RD6 BPZ 0 M1STEPFBLOC *RXQ LDN 0 FBLKS *SCB M1STEPFBLOC *SX2 ADN 0 1 *TBL STO 0 FREADBLOCK(1) *TW= #STR %B *W*W ( *WTG PSTAC 1,1 *X*6 BFCBX 1,1 *XSQ SBX 0 FBLMOD(1) *Y#B SBN 0 A1 *YS2 BZE 0 %B *^?L BNG 0 M2STEPFBLOC *^R= GEOERR 1,ENDFILE B2=W M2STEPFBLOC B2QG ) B3=6 LDX 1 FX1 B3PQ #NOR B3^J ...[??? SCURFUB SECT FILE FGN 19 DOC B49B # THIS MACRO SETS %A POINTING TO THE CURRENT USAGE BLOCK OF THE B4P2 # FILE OPEN AT DEPTH [%B] & JUMPS TO %C IF THE BLOCK'S NOT THERE B58L #MAC SCURFUB B5N= #STR %B B67W SFSTACK %B,1,2 B6MG #STR %B B776 #SKI B7LQ ( B86B TOPFCA 1 B8L2 PSTAC 2,1 B95L ) B9K= LDX 0 FREADBLOCK(1) B=4W BPZ 0 M1SCURFUB B=JG LDN 0 FBLKS B?46 STO 0 FREADBLOCK(1) B?HQ M1SCURFUB B#3B LDX 0 2 B#H2 BFCBX 2,2 B*2L ADX 2 FREADBLOCK(1) B*G= LDX 1 0 B*^W SFUB 1,0(2),%A,%C BBFG #STR %A,1 BB^6 #SKI BCDQ #OPT M2SCURFUB=1 BCYB #STR %A,2 BDD2 #SKI BDXL #OPT M2SCURFUB=2 BFC= #OPT M2SCURFUB=0 BFWW #SKI M2SCURFUB$1 BGBG LDX 1 FX1 BGW6 #SKI M2SCURFUB$2 BH*Q LDX 2 FX2 BHTB #FRE M2SCURFUB BJ*2 #NOR BJJS ...[??? FUWBSET SECT FILE FGN 19 DOC BJSL # THIS MACRO I LIKE STEPREWRITE - IT RENAMES T E CURRENT USA E BK#= # BLOCK A FILE/FUWB J TO %B IF BLOCK NOT THERE BKRW #MAC FUWBSET BL?G SCURFUB 1,%A,%B BLR6 LDX 0 FFSFUWB BM=Q STO 0 ATYPE(1) BMQB #NOR BN28 ...[??? CORRUPTB SECT FILE FGN 19 DOC BN=2 ...#UNS JSKI33 BNPL ...( BP9= ...# THIS DEALS WITH FILES IN WHICH CORRUPTION HAS BEEN FOUND BPNW ...#MAC CORRUPTB BQ8G ...#ACC %A BQN6 ...( BR7Q ... LDX 0 %A BRMB ... SMO FX2 BS72 ... STO 0 ACOMMUNE2 BSLL ...) BT6= ...#ACC %A BTKW ...#SKI BW5G ...( BWK6 ... SMO FX2 BX4Q ... STO %A ACOMMUNE2 BXJB ...) BY42 ...#ACC %B BYHL ...( B^3= ... LDX 0 %B B^GW ... SMO FX2 C22G ... STO 0 ACOMMUNE3 C2G6 ...) C2^Q ...#ACC %B C3FB ...#SKI C3^2 ...( C4DL ... SMO FX2 C4Y= ... STO %B ACOMMUNE3 C5CW ...) C5XG ... DOWN READFAIL,1 C6C6 ...#NOR C6G= ...) C6KB ...[??? CHECKBL SECT FILE FGN 19 DOC C6NG ...#UNS JSKI33 C6RL ...( C6WQ ...# THIS CALLS A SUBROUTINE IN STEP TO CHECK RECORD HEADERS C7BB ...#MAC CHECKBL C7W2 ...#STR %A,1 C8*L ... LDX 1 %A [SKIPPED IF %A=1 C8T= ...#STR %B,2 C9#W ... LDX 2 %B [SKIPPED IF %B=2 C9SG ... CALL 0 (HCHBL) C=#6 ... BRN %C C=RQ ...#NOR C=WW ...) C?22 ...[??? BSCHECK SECT FILE FGN 19 DOC C?56 ...#UNS JSKI33 C?8= ...( C??B ...# THIS IS A RESTORE TIME MACRO TO SWITCH CORRUPTION CHECKING C?R2 ...# DURING READ TRANSFERS ON AND OFF. C#=L ...#MAC BSCHECK C#Q= ...#STR %A,ON C*9W ...#SKI C*PG ...( CB96 ...#STR %B CBNQ ...( CC8B ...#CON ILLEGAL USE OF PARAMETERS CCN2 ...#EXI CD7L ...) CDM= ...) CF6W ...#MEN STEP CFLG ...#STR %A,ON CG66 ...#SKI CGKQ ...( CH5B ...#TRA K1STEP+1 CHK2 ... BRN K1STEP+4 CJ4L ...) CJJ= ...#STR %A,OFF CK3W ...#SKI CKHG ...( CL36 ...#STR %B,USER CLGQ ...#SKI CM2B ...( CMG2 ...#TRA K1STEP+1 CM^L ... LDX 0 FINFC(1) CNF= ... ANDN 0 #77 CNYW ... BZE 0 (GEN0) CPDG ...) CPY6 ...#STR %B,SYSTEM CQCQ ...#SKI CQXB ...( CRC2 ...#TRA K1STEP+1 CRWL ... LDX 0 FINFC(1) CSB= ... ANDN 0 #77 CSTW ... BNZ 0 (GEN0) CT*G ...) CTT6 ...#STR %B,ALL CW#Q ...#SKI CWSB ...( CX#2 ...#TRA K1STEP+1 CXRL ... BRN (GEN0) CY?= ...) CYQW ...) C^=G ...#END C^Q6 ...#NOR D29Q ...) D2PB ...#MAC DISCFAIL D392 ...[ D3NL ...[ THERE ARE FRIGS IN THIS RESTORE TIME MACRO TO GENERATE TRANSFER FAILUR D48= ...[ D4MW ...[ IP MANAGER1 CAN BE SET TO THE FOLLOWING: D57G ...[ #1 FAIL ANY TRANSFER D5M6 ...[ #2 ANY AUTONOMOUS TRANSFER D66Q ...[ #4 A SWAP TRANSFER D6LB ...[ #10 ANY DUMPER TRANSFER D762 ...[ #20 TERMINAL FILE TRANSFER DURING DUMPING D7KL ...[ #40 A VITAL SYSTEM FILE DURING DUMPING D85= ...[ #100 NON AUTONOMOUS, NON CHAPTER TRANSFER D8JW ...[ #200 CHAPTER TRANSFER D94G ...[ #400 WRITE TRANSFERS AS WELL AS READ TRANSFERS D9J6 ...[ D=3Q ...[ ALL TRANSFERS FAILED ARE READ TRANSFERS UNLESS #400 IS INCLUDED. D=HB ...[ D?32 ...[ %A CAN BE SET TO THE NUMBER OF TRANSFERS DURING BACKMAP BEFORE D?GL ...[ A FAIL (20 IS A GOOD FIGURE ... CAUSES PARTIAL RESTORE) D#2= ...[ D#FW ...#SKI %A D#^G ...( D*F6 ... FCMENDV D*YQ ..NBMAP +%A DBDB ... FCENDV DBY2 ...) DCCL ...#MEN BSQ DCX= ...#TRA K1BSQ+115 DDBW ... BRN FCPCM DDWG ...#END DFB6 ... FCMEND DFTQ ...FCPCM DG*B ... STO 0 BSMODE(3) DGT2 ... BNZ 0 K1BSQ+116 DH#L ... LDCT 0 2 DHS= ... ANDX 0 BA1(2) DJ?W ... BNZ 0 K1BSQ+116 [ J IF SWAP DJRG ... LDX 0 BIT9 DK?6 ... ORS 0 ATRAN(3) [ SET BIT 9 IN ATRAN FOR DUMPER TEST DKQQ ... DL=B ... BRN K1BSQ+116 DLQ2 ... FCEND DM9L ...#MEN BSTS DMP= ...#TRA K1BSTS+221 DN8W ... BRN FCPCM1 [ TRANS ENTRY DNNG ...#SKI %A DP86 ...( DPMQ ...#TRA K1BSTS+237 DQ7B ... BZE 3 FCPCMA [ BMAP ENTRY DQM2 ...) DR6L ...#END DRL= ... FCMEND DS5W ...#SKI %A DSKG ...( DT56 ...FCPCMA DTJQ ... BSOFF EMSBIT,K1BSTS+239 DW4B ... LDX 0 HBMAP DWJ2 ... SBN 0 1 DX3L ... STO 0 HBMAP DXH= ... BNZ 0 K1BSTS+239 DY2W ... BRN FCPCMF DYGG ...) D^26 ...FCPCM1 D^FQ ... BSON EMSBIT,XOK [ DONT FAIL IF BMAP D^^B ... LDX 0 INSTPARAM+1 F2F2 ... ANDN 0 #400 F2YL ... BNZ 0 FCPCM8 [ J - IF NOT TO ALLOW WRITE FAILS. F3D= ... SMO CPPTR(2) F3XW ... LDEX 3 IMODE F4CG ... BNZ 3 XOK [ DONT FAIL WRITE TRANS F4X6 ...FCPCM8 LDX 3 BSCHANAD(2) F5BQ ... SBN 3 CHAINADD F5WB ... LDX 0 INSTPARAM+1 F6B2 ... ANDN 0 #1 [ ANY TRANSFER F6TL ... BZE 0 FCPCM2 F7*= ... ERS 0 INSTPARAM+1 F7SW ...FCPCMF F8#G ...# FAILURE PART F8S6 ... LDCT 0 #040 F9?Q ... STO 0 CPRW1(2) F9RB ... BRN K1BSTS+253 F=?2 ...XOK F=QL ...# NON FAIL PART F?== ... LDX 3 JMBSTS F?PW ... BRN K1BSTS+222 F#9G ... F#P6 ...FCPCM2 F*8Q ... LDX 0 ACOMMUNE1(2) F*NB ... BPZ 0 FCPCMC [ NON AUTO TRANS FB82 ... LDX 0 INSTPARAM+1 FBML ... ANDN 0 #2 [ ANY AUTO TRANS FC7= ... BZE 0 FCPCM3 FCLW ... ERS 0 INSTPARAM+1 FD6G ... BRN FCPCMF FDL6 ...FCPCM3 FF5Q ... LDX 0 BIT9 FFKB ... ANDX 0 ATRAN(3) FG52 ... BNZ 0 FCPCM4 [ DUMPER !!! FGJL ... LDCT 0 2 FH4= ... ANDX 0 ATRAN(3) FHHW ... BZE 0 XOK FJ3G ... LDN 0 #4 [ SWAP TRANS FJH6 ... BRN FCPCM6 FK2Q ...FCPCM4 [ DUMPER FKGB ... LDX 3 BPTR(3) FL22 ... LDX 0 ATYPE(3) FLFL ... TXL 0 CACT FL^= ... BCS FCPCM4 FMDW ... HUNT2 3,FILE,ENT FMYG ... LDX 0 INSTPARAM+1 FND6 ... ANDN 0 #10 [ DUMP FAIL FNXQ ... BZE 0 FCPCMD FPCB ... ERS 0 INSTPARAM+1 FPX2 ... BRN FCPCMF FQBL ...FCPCMD FQW= ... JMBS FCPCM5,3,BECARE,BECOOR,BEINDEX,BEREVERE FR*W ...[ NO DY ETC FRTG ... LDN 0 #20 [ TERMINAL FILE FS*6 ... BRN FCPCM6 FSSQ ...FCPCM5 FT#B ... LDN 0 #40 [ VSF FTS2 ...FCPCM6 FW?L ...# COMMON CODE FWR= ... ANDX 0 INSTPARAM+1 FX=W ... BZE 0 XOK FXQG ... ERS 0 INSTPARAM+1 FY=6 ... BRN FCPCMF FYPQ ... F^9B ...FCPCMC F^P2 ...[ NON-AUTO TRANSFERS G28L ... LDN 0 ASWAP G2N= ... ANDX 0 ACOMMUNE1(2) G37W ... BZE 0 FCPCM9 [ NOT A SWAP TRANSFER G3MG ... LDN 0 #4 G476 ... BRN FCPCM6 [ SWAP FAILURE G4LQ ...FCPCM9 G56B ... LDCT 0 #200 G5L2 ... ANDX 0 ACOMMUNE1(2) G65L ... BNZ 0 FCPCM7 [ CHAPTER FAIL G6K= ... LDN 0 #100 G74W ... BRN FCPCM6 [ NON CHAPTER, NON AUTO FAIL G7JG ...FCPCM7 G846 ... LDN 0 #200 [ CHAPTER FAIL G8HQ ... BRN FCPCM6 G93B ... FCEND G9H2 ...#NOR ^^^^ ...71446300002500000000