(George Source)
Macros used: BXU, CLOSEDIR, CLOSETOP, COMBRKIN, COMERR, COMERRX, DELETE, DOWN, ENDCOM, ERROR, ERRORX, ERRTEST, FREETAB, GEOERR, GETDIR, HUNT, HUNT2, INSERT, JWPR, MENDAREA, MFREE, MHUNT, MONOUT, NAME, NAMETOP, OPEN, OPENDIR, OPENSYS, OUTPACK, PICKREP2, PUTREP, READ, REPERR, RETURNB, SDSEARCH, SEG, SEGENTRY, SETNCORE, SETUPCORE, SETUPTAB, SSCOR, SSEARCH, STEPAGAIN, STEPWRITE, TABSET, TABULATE, TAPEOPEN, TESTREP, UNLOAD
22FL SEG RENAMDIR,,N.R.BOULT,LIBRARY 22^= SEGENTRY K1RENAMDIR,QK1RENAMDIR 23DW ZNOTNOWN +ERUNKNOWN 23YG ZNOTOWN +ERNOTOWN 24D6 ZPRONG +ERDESCWRNG 24XQ ZERMAK +ERMAKAL 25CB ZERNAM +ERNAME 25X2 ZJGLOCNA +JGLOCNA 26BL ZOPWRNG +EROPWRONG 26W= QMASK #77377777 27*W POOLHD 12HPOOL TAPE 27TG XDUMP 12HDUMPER 28*6 QK1RENAMDIR 28SQ MHUNT 3,FILE,FABSNB 29#B LDX 6 ALOGLEN(3) 29S2 SMO A1(3) 2=?L LDX 7 A1+1(3) [TSN 2=R= SSEARCH NOTNOWN,7 [LOOK FOR ENTRY IN :SYSTEM.SERIAL 2?=W LDX 0 5(3) 2?QG SLC 0 3 2#=6 ANDN 0 7 2#PQ BNZ 0 NOTOWN 2*9B LDX 0 5(3) 2*P2 SLC 0 5 2B8L BNG 0 OPWRNGA [BRANCH IF TAPE OPERATOR WRONGED 2BN= SLC 0 2 2C7W ANDN 0 1 2CMG STO 0 AWORK1(2) [INITIAL Q STATUS 2D76 MHUNT 2,FILE,FABSNB 2DLQ LDN 4 3 2F6B OWNL 2FL2 SMO 4 2G5L LDX 0 A1(2) 2GK= SMO 4 2H4W BXU 0 1(3),NAME [BRANCH IF WRONG DIR NAME 2HJG BCT 4 OWNL 2J46 STEPWRITE 2JHQ LDCT 0 4 2K3B ORS 0 5(3) [SET Q STATUS 2KH2 LDN 0 1 2L2L ADS 0 5(3) 2LG= LDX 2 FX2 2L^W STO 0 AWORK2(2) 2MFG CLOSETOP 2M^6 # GET TAPE PUT UP 2NDQ TAPEOPEN YBRKIN,7,,NOQUERY,NOTOL,NOSS 2NYB ...NOPEN REPERR OPEN [OUTPUT ERROR MESSAGE UNLESS OK 2PD2 BRN NOTAVA 2PXL OPEN 2QC= OPENSYS YBRKIN,DOCUMENT,GENERAL 2QWW SDSEARCH ,TSN,7 [FIND ENTRY IN :SYSTEM.DOCUMENT 2RBG OPENSYS XBRKIN,SERIAL,GENERAL 2RW6 SSEARCH ,7 [FIND ENTRY IN :SYSTEM.SERIAL 2S*Q LDX 0 5(3) 2STB BNG 0 TNOTOWN [BRANCH IF TO BE RETURNED 2T*2 SLL 0 2 2TSL BNG 0 TNOTOWN [BRANCH IF TO BE DEADED 2W#= SLL 0 3 2WRW BNG 0 OPWRNG [BRANCH IF OPERATOR WRONGED 2X?G LDX 5 4(3) [OWNER 2XR6 LDX 4 3(3) 2Y=Q LDX 3 2(3) 2YQB TXU 3 XDUMP(1) 2^=2 TXU 4 XDUMP+1(1) 2^PL TXU 5 XDUMP+2(1) 329= BCC OPEN2 [BRANCH IF TAPE BELONGS TO :DUMPER 32NW STEPAGAIN 1 338G LDN 4 3 33N6 PLOOP 347Q SMO 4 34MB LDX 0 2(3) 3572 SMO 4 35LL BXU 0 POOLHD-1(1),OPEN2 366= BCT 4 PLOOP 36B4 ... SEGENTRY K40RENAMDIR 36KW BRN POOL 375G OPEN2 37K6 SETUPCORE 6,2,FILE,FABSNB 384Q HUNT2 1,FILE,FABSNB,2 38JB LDX 0 ATYPE(1) 3942 ORN 0 1 39HL DSA 0 ATYPE(2) [SYNTAX BITS 3=3= ADN 1 A1 3=GW ADN 2 A1 3?2G LDX 3 6 3?G6 MOVE 1 0(3) [COPY FABSNB 3?^Q ADX 2 0(2) 3#FB SBN 2 7 3#^2 LDN 1 6 3*DL OPEN3 3*Y= SMO 1 3BCW STOZ 0(2) [REMOVE LOCAL NAME 3BXG BCT 1 OPEN3 3CC6 OPENDIR WBRKIN,GENERAL,QUERY 3CWQ TESTREP OK,OPEN4 3DBB ERRTEST 3,TEND2,NAME,NOUSER,NOFILE 3DW2 GEOERR 1,RENDREP 3F*L OPEN4 3FT= MFREE FILE,FABSNB 3G#W # IS DIRECTORY ENTRY ALREADY RIGHT? 3GSG STEPAGAIN 2 3H#6 MHUNT 2,FILE,ENT 3HRQ LDN 1 4 3J?B SAME 3JR2 SMO 1 3K=L LDX 0 ELOC1-1(2) [LOCAL NAME FROM DIRECTORY 3KQ= SMO 1 3L9W BXU 0 2(3),SAME1 3LPG BCT 1 SAME 3M96 LDX 0 7(3) [GENERATION 3MNQ ANDN 0 #7777 3N8B BXU 0 EGEN(2),SAME1 3NN2 SMO FX2 3P7L STOZ AWORK2 3PM= BRN SHDDR 3Q6W # IS THE NAME IN THE PARAMETER RIGHT? 3QLG SAME1 3R66 MHUNT 2,FILE,FABSNB 3RKQ LDN 1 3 3S5B ADX 2 A1(2) 3SK2 SAME2 3T4L SMO 1 3TJ= LDX 0 A1-7(2) [NAME FROM PARAMETER 3W3W SMO 1 3WHG BXU 0 2(3),RERR2 [BRANCH IF PARAMETER WRONG 3X36 BCT 1 SAME2 3XGQ LDX 0 A1-3(2) 3Y2B ANDN 0 #777 [REEL NUMBER FROM PARAMETER 3YG2 BXU 0 6(3),RERR2 [J IF WRONG REEL NO. 3Y^L LDX 0 7(3) [GENERATION NO. FROM HEADER 3^F= ANDN 0 #7777 [TRUNCATE GENERATION NO. 3^YW LDX 1 A1-2(2) 42DG ANDN 1 #7777 [GENERATION NUMBER FROM PARAMETER 42Y6 BXU 0 1,RERR2 43CQ SETNCORE 6,3,FILE,FLOCNB 43XB # CHECK NAME NOT ALREADY USED BY FILE 44C2 MHUNT 2,FILE,FABSNB 44WL ADN 3 A1 45B= ADX 2 A1(2) 45TW ADN 2 A1-6 46*G MOVE 2 3 [MOVE LOCAL NAME INTO FLOCNB 46T6 STOZ 3(3) 47#Q STOZ 4(3) 47SB STOZ 5(3) 48#2 SETUPTAB 48RL TABSET [REMEMBER POSITION IN DIR. 49?= GETDIR 1 49QW TESTREP OK,RERR3 [BRANCH IF NAME ALREADY USED BY FILE 4==G TABULATE [REPOSITION AT DIRECTORY ENTRY 4=Q6 FREETAB 4?9Q # CORRECT LOCAL NAME, GENERATION AND REL NO. IN DIRECTORY ENTRY 4?PB MHUNT 2,FILE,FABSNB 4#92 ADX 2 A1(2) 4#NL ADN 2 A1-6 4*8= MHUNT 3,FILE,ENT 4*MW ADN 3 ELOC1 4B7G MOVE 2 6 [ALTER NAME IN DIR5CTORY ENTRY 4BM6 SBN 3 ELOC1 4C6Q LDN 0 #777 4CLB ANDS 0 EREEL(3) 4D62 LDN 0 #7777 4DKL ANDS 0 EGEN(3) 4F5= MHUNT 1,FILE,FLOCNB 4FJW LDN 4 1 4G4G ORS 4 ATYPE(1) [SET MAG TAPE BIT 4GJ6 LDX 4 2 4H3Q LDN 5 A1(1) 4HHB MOVE 4 5 [SET UP DETAILS FOR GETDIR 4J32 LDN 0 #7777 4JGL ANDX 0 A1+4(1) [GEN NO. 4K2= BNZ 0 UPD [J IF NOT ZERO OTHERWISE 4KFW LDCT 0 #100 [SET BIT INDICATING ZERO GEN. 4K^G UPD STO 0 A1+4(1) 4LF6 LDX 4 ENUSE(3) 4LYQ NAMETOP 3,FILE,FRB 4MDB LDX 5 4 [LOAD NO. OF TRAPS RECORDS 4MY2 BZE 4 UPD2 4NCL UPD1 READ 4NX= BCT 4 UPD1 4PBW UPD2 LDX 4 5 4PWG ADN 4 1 4QB6 UPD2A 4QTQ DELETE 4R*B BCT 4 UPD2A 4RT2 ADN 5 1 4S#L GETDIR 2 4SS= TESTREP OK,UPD3,NOFILE,UPD3 4T?W GEOERR 1,RENAMDIR 4TRG UPD3 4W?6 MFREE FILE,FLOCNB 4WQQ UPD4 4X=B LDX 4 5 4XQ2 UPD5 4Y9L HUNT2 2,FILE,FRB 4YP= BCT 4 UPD5 4^8W NAMETOP 2,FILE,FWB [RECORD TO WRITE AWAY 4^NG INSERT [SET UP NEW DIRECTORY ENTRY 5286 TESTREP OK,UPD6,FNEARLY,UPD6 52MQ GEOERR 1,RENAMDIR 537B UPD6 53M2 MFREE FILE,FWB 546L BCT 5 UPD4 54L= STOZ AWORK2(2) 555W SHUTDIR 55KG CLOSETOP 5656 # UPDATE QUERY STATUS AND FINISH 56JQ TEND 574B CLOSEDIR 57J2 TEND0 583L STEPWRITE 58H= SSCOR 0(3),DEC [DECREASE COUNT OF REQUESTERS 592W LDX 0 AWORK2(2) [QUERY STATUS 59GG BNZ 0 TEND1 [LEAVE AT QUERY STATUS 5=26 LDX 4 QMASK(1) 5=FQ ANDS 4 5(3) [REMOVE Q STATUS BIT 5=^B TEND1 5?F2 CLOSETOP 5?YL LDX 0 CPPTR(2) 5#D= BZE 0 TEND1A 5#XW UNLOAD ,,,AUT,UNL 5*CG TEND1A 5*X6 ENDCOM 5BBQ TEND2 5BWB LDX 2 FX2 5CB2 LDX 0 AWORK1(2) 5CTL STO 0 AWORK2(2) 5D*= BRN TEND 5DSW # THIS SECTION DEALS WITH ERROR MESSAGES 5F#G RERR2 5FS6 SMO FX1 5G?Q LDX 3 ZPRONG 5GRB NGN 4 1 5H?2 BRN RERR 5HQL RERR3 5J== LDX 1 FX1 5JPW LDX 3 ZERMAK(1) 5K9G LDX 4 ZJGLOCNA(1) 5KP6 RERR 5L8Q ERRORX 3,4 5LNB LDX 0 AWORK1(2) 5M82 BNZ 0 SHUTDIR [BRANCH UNLESS Q STATUS JUST SPOTTED 5MML DOWN LIBQUERY,2 5N7= BRN TEND 5NLW SHDDR 5P6G ERROR ERHDDRSAME 5PL6 BRN SHUTDIR 5Q5Q NOTNOWN 5QKB LDX 4 ZNOTNOWN(1) 5R52 BRN TERR 5RJL NOTOWN 5S4= SMO FX1 5SHW LDX 4 ZNOTOWN 5T3G BRN TERR 5TH6 NAME 5W2Q LDX 4 ZERNAM(1) 5WGB BRN TERR 5X22 OPWRNGA 5XFL LDX 4 ZOPWRNG(1) 5X^= TERR 5YDW CLOSETOP 5YYG COMERRX 4 5^D6 NOTAVA 5^XQ OPENSYS NOTAVA,SERIAL,GENERAL 62CB SSEARCH ,7 62X2 BRN TEND0 63BL OPWRNG 63W= LDX 4 ZOPWRNG(1) 64*W BRN TNOT 64TG TNOTOWN 65*6 LDX 0 5(3) 65SQ SLC 0 6 66#B ANDN 0 1 66S2 STO 0 AWORK2(2) 67?L SMO FX1 67R= LDX 4 ZNOTOWN 68=W TNOT 68QG ERRORX 4 69=6 BRN TEND 69PQ # DEAL WITH BREAKIN 6=9B WBRKIN 6=P2 CLOSEDIR [CLOSE SYSTEMHDOCUMENT 6?8L BRN YBRKA 6?N= XBRKIN 6#7W CLOSETOP [CLOSE SYSTEM.DOCUMENT 6#MG YBRKIN 6*76 OPENSYS YBRKIN,SERIAL,GENERAL 6*LQ TESTREP OK,YBRKA 6B6B GEOERR 1,RENDREP 6BL2 YBRKA 6C5L SSEARCH ,7 6CK= STEPWRITE 6D4W SSCOR 0(3),DEC [DECREASE COUNT OF REQUESTERS 6DJG CLOSETOP 6F46 LDX 0 CPPTR(2) 6FHQ BZE 0 YBRKB [BRANCH IF TAPE NOT ALLOCATED 6G3B UNLOAD ,,,AUT,UNL 6GH2 YBRKB 6H2L COMBRKIN 6HG= # RETURN POOL TAPE 6HMD ...[ ENTRY POINT FOR RENAMEPOOL RESTORE TIME MACRO 6HSL ... SEGENTRY K41RENAMDIR 6H^W POOL 6JFG STEPAGAIN 6J^6 STEPWRITE 6KDQ SSCOR 0(3),DEC [DECREASE COUNT OF REQUESTERS 6KYB CLOSETOP 6LD2 CLOSETOP 6LXL UNLOAD ,,,AUT,UNL 6MC= SETNCORE 2,3,AONBS,GLIST 6MWW LDN 0 1 6NBG STO 0 A1(3) 6NW6 STO 7 A1+1(3) 6P*Q MHUNT 3,FILE,FABSNB 6PTB LDN 0 6 6Q*2 SBS 0 A1(3) 6QSL LDN 0 0 6R#= DSA 0 ATYPE(3) 6RRW RETURNB 6S?G COMERR ERPOOLTAPE 6S?^ ...[ ENTRYPOINT FOR ON ACTION FOR RENAMEPOOL 6S#D ... SEGENTRY K42RENAMDIR 6S#X ... CLOSETOP 6S*B ... CLOSETOP 6SBR ... JWPR ,STAR 6SC= ... UNLOAD ,,,UNL 6SCP ... TAPEOPEN YBRKIN,7,WRITE,NOQUERY,NOTOL,NOSS 6SCX ... BRN NOPEN 6SD5 ...STAR OUTPACK 7,1,TSN 6SD? ... MONOUT ARENPOOL 6SDF ... SETNCORE 7,3,AONBS,GREN 6SDM ... STOZ A1(3) 6SF6 ... STOZ ACOMMUNE2(2) 6SFK ... HUNT 2,FILE,FABSNB 6SG4 ... ADX 2 A1(2) 6SGH ... ADN 2 A1-6 6SH2 ... ADN 3 A1+1 6SHF ... MOVE 2 6 6SHY ... DOWN RENAMEMT,2 6SJC ... NULL 6SJW ... MFREE AONBS,GREN 6SK* ... PICKREP2 4 6SKS ... OPENSYS YBRKIN,DOCUMENT,GENERAL 6SL? ... SDSEARCH ,TSN,7 6SLQ ... OPENSYS XBRKIN,SERIAL,GENERAL 6SM9 ... SSEARCH ,7 6SMN ... PUTREP 4 6SN7 ... TESTREP OK,OPEN2 6SNL ... ERROR FAILMAG 6SNT ... STOZ AWORK2(2) 6SP5 ... BRN TEND 6SPJ ...[ 6SQ3 ...[ 6SR6 MENDAREA 50,K99RENAMDIR 6T=Q #END ^^^^ ...36111552000300000000