13 229S ... SEG INCTAPES,867,P.SMITH,INCDUMP 4 22FL ...[ 14 22PD ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 4 22_= # 12 23DW SEGENTRY K1INCTAPES,X1INCTAPES 12 23YG SEGENTRY K2INCTAPES,X2INCTAPES 12 24D6 SEGENTRY K3INCTAPES,X3INCTAPES 12 24PW ... SEGENTRY K31INCTAPES,(GEOERR) 12 253M ... SEGENTRY K4INCTAPES,X4INCTAPES 12 257J ... SEGENTRY K5INCTAPES,(GEOERR) 12 25?F ... SEGENTRY K7INCTAPES,(GEOERR) 12 25CB ... SEGENTRY K8INCTAPES,(GEOERR) 4 25H? ...# 3 25M8 ... 3 25R5 ... 21 25X2 USER +10 [PRESET FABSNB O FOR OPENING TAPE 9 26BL 12HDUMPER 5 26W= MTNAME 11 27*W 12HGEO3DUMPTAPE 15 27TG #10000000 [REEL NO. 0 15 28*6 #10000000 [GEN. NO. 0 8 28SQ 4H 16 29#B MIN 14HUNAVAILABILITY [2ND PARAMETERS 21 29S2 MFAIL 15HFAILURE HISTORY [ TO MONFILE MESSAGE ^I 20 2=3S ...MTW 16HTW DUMP [2ND PARAMETER TO MONFILE MESS 4 2=?L # 13 2=DS ...XFILE 23HA FILES-ONLY INCREMENT 13 2=L2 ...XREST 23HA RESTORABLE INCREMENT 14 2=PG ... BITDEFS AWORK1,3,XBDTSABWT,XBCDPOOL 14 2=PP ...# B4 SET IFF CD LOAD POOL TAPE ISSUED 3 2=PY ... 19 2=QK ...# B3 SET IF DTS HAS BEEN KICKED DURING ABANDONMENT OF A DUMP 19 2=R= # AWORK1 USED AS FOLLOWS:- B0=1 HAVE ASKED FOR A POOL TAPE 20 2?=W # B1=1 RECORD FOR THIS INCR. INSERTED IN 19 2?QG # (AT END OF) INCINDEX 21 2#=6 # B2=1 INCINDEX ALREADY OPEN (K3 ENTRY ONLY) 11 2#PQ # AWORK2 USED AS FOLLOWS:- B0=1 4 2*9B # 7 2*P2 # SUBROUTINES 4 2B8L # 21 2BN= # SEARCHES THROUGH DIRECTORY FOR MT WHOSE SERIAL NO. IS IN X5 & PRODUCE 21 2C7W # POINTER TO ITS DIR. ENTRY (IN X3). 1ASSUMES DIRECTORY IS REWOUND (IF 21 2CMG # NEEDS TO BE) & CHANGES STATUS OF THE MT (I.E. FREE TO USED OR VICE VE 21 2D76 # IF HITS END OF :DUMPER, JUST OUTPUTS A MESSAGE & EXITS AS NORMAL WITH 11 2DLQ # CHANGING ANYTHING (BUT X3=0). 19 2F6B # ON ENTRY, X5=SERIAL NO. TO BE FOUND. X4 IS S/R LINK. 21 2FL2 # ON EXIT, X1=FX1, X2=FX2, X3->RECORD FOUND(STEP POINTER), X5=SERIAL NO 16 2G5L # X3=0(IF TAPE NOT FOUND). USES X0. 5 2GK= SERLOOK 8 2H4W SBX 4 FX1 6 2H#N ... REWIND 5 2HJG SSTEP 16 2J46 STEP [X3-> NEXT RECORD 17 2JHQ BZE 3 SEOF [J IF END OF :DUMPER 9 2K3B LDX 0 ERESN(3) 17 2KH2 BNZ 0 SSTEP [J IF NOT NAME RECORD 19 2L2L BXU 5 ESERN(3),SSTEP [J IF NOT SERIAL NO. REQUIRED 8 2LG= ADX 4 FX1 20 2L_W STCHANGE [ENTRY IF RECORD ALREADY FOUND 8 2MFG SBX 4 FX1 20 2M_6 CALL 7 STEPWRITE [ENSURE INFORMATION WRITTEN TO BS 21 2NDQ BI 3,BNUSEDUMP [CHANGE STATUS OF MT (FREE TO USED OR 12 2NYB [ 9 2PD2 #SKI K6INCTAPES>99-99 4 2PXL ( 16 2QC= TRACE ESERN(3),INC SER [SERIAL NO. OF MT 15 2QWW TRACE EINCLOOKN(3),INC MTST [STATUS OF MT 4 2RBG ) 4 2RW6 SOUT 8 2S*Q ADX 4 FX1 7 2STB EXIT 4 0 21 2T*2 SEOF [THIS SHOULD BE GEOERR SOMETIMES (E.G 21 2TSL [ ENTRY FROM THIS SEGMENT). HOWEVER,I 21 2W#= [ ENTRY FROM INCCANT, POSSIBLE FOR MT 21 2WRW [NOT TO BELONG TO DUMPER (GEORGE BROK 21 2X?G [MT BEING GOT & SERIAL & DIR. CHANGED 21 2XR6 [CLOSED BUT RENAME PERI NOT YET DONE. 21 2Y=Q [RESTARTED, WHEN MT LOADED ,MT RETURN 18 2YQB [SINCE CALLED POOL TAPE. 18 2_=2 CONSERNO 5,ACOMMUNE1 [CONVERT TSN TO CHARS. 17 2_PL OUTPARAM ACOMMUNE1(2),ACOMMUNE2 [TSN AS PARAM. 21 329= MONOUT INCNDUMP [COMMENT ^MT %A NOT OWNED BY :DUM 8 32NW BRN SOUT 4 338G # 11 33N6 # OPENS :DUMPER IN GENERAL MODE 16 347Q # ON ENTRY, X4 IS S/R LINK. 13 34MB # ON EXIT, X1=FX1, X2=FX2. USES X0. 4 3572 # 6 35LL OPENDUMPER 8 366= SBX 4 FX1 11 36KW SETNCORE 4,2,FILE,FABSNB 7 375G LDN 0 4 17 37K6 STO 0 A1(2) [SET LENGTH OF NAME 9 384Q ADN 1 USER+1 8 38JB ADN 2 A1+1 16 3942 MOVE 1 3 [INSERT DUMPER 19 39HL OPEN NOBREAK,GENERAL [OPEN :DUMPER IN GENERAL MODE 10 3=3= MFREEW FILE,FABSNB 8 3=GW ADX 4 FX1 7 3?2G EXIT 4 0 4 3?G6 # 20 3?_Q # THIS SUBROUTINE SIMPLY DOES A STEPWRITE (EXPANSION >40 WORDS). 19 3#FB # ON ENTRY,X3-> RECORD TO STEPWRITE. X7 IS S/R LINK. 21 3#_2 # ON EXIT, X1=FX1, X2=FX2, X3->CURRENT RECORD. USES X0. MAY COORDINATE. 4 3*DL # 6 3*Y= STEPWRITE 8 3BCW SBX 7 FX1 7 3BXG STEPWRITE 8 3CC6 ADX 7 FX1 7 3CWQ EXIT 7 0 4 3DBB # 21 3DW2 # THIS SUBROUTINE SEARCHES DOWN FGET BLOCK FOR AN ENTRY WHICH DOES NOT 13 3F*L # HAVE A TAPE (I.E. THE TSN IS -IVE). 17 3FT= # ON ENTRY, X4 IS S/R LINK. 20 3G#W # ON EXIT, X2-> LOCATION (IN FGET BLOCK) WHERE TSN NEEDED (IF ANY). 16 3GSG # USES X0,X1 & X7. NO COORDINATION. 19 3H#6 # EXITS+0 IF NO TAPE NEEDED : EXITS+1 IF TAPE NEEDED. 4 3HRQ # 5 3J?B TNEEDMT 10 3JR2 MHUNTW 2,FILE,FGET 16 3K=L ... LDX 0 INCCOPIES(2) [X0= NO OF MTS 21 3KQ= BZE 0 TNOFGET [J IF NO MTS IN FGET (CAN HAPPEN IF 21 3L9W [ ABOUT TO ABANDON & OBLITERATE INC 16 3MNQ ADN 2 FGETSER [X2-> FIRST TSN 6 3N8B TMOREFGET 17 3NN2 LDX 1 0(2) [X1= NEXT TSN IN FGET 17 3P7L BNG 1 TFGET [J IF MT NEEDED HERE 19 3PM= ADN 2 FGETLEN [UPDATE POINTER TO NEXT TSN 18 3Q6W BCT 0 TMOREFGET [J IF MORE TSNS TO TEST 5 3QLG TNOFGET 15 3R66 EXIT 4 0 [NO MT NEEDED 5 3RKQ TFGET 15 3S5B EXIT 4 1 [MT NEEDED 4 3SK2 # 4 3T4L # 20 3T#Y ...# THIS SUBROUTINE SEARCHES THE FDUCOM FOR A TSN SUPPLIED AS A 20 3TK= ...# PARAMETER TO THE DUMP COMMAND WHICH HAS NOT ALREADY BEEN TRIED 7 3TTJ ...# X4 IS LINK 12 3W5W ...# EXITS +0 IF NO TAPES AVAILABLE 14 3WB8 ...# EXITS +1 IF TAPE AVAILABLE, ..X3-> TSN 5 3WLG ...TGIVENMT 10 3WWS ... HUNTW 3,FI,FDUCOM 20 3X76 ... BNG 3 TFDUCOM [ IF NO FDUCOM- CAN BE NO TAPES 15 3XCD ... LDX 0 FDUTSNCT(3) [ NO OF TAPES 16 3XMQ ... BZE 0 TFDUCOM [ J IF NO TAPES 6 3XY4 ...TMOREFDUCOM 9 3Y8B ... LDX 1 FDUTSN(3) 18 3YDN ... BPZ 1 TISFDUCOM [ FOUND A SUITABLE TAPE 7 3YP2 ... ADN 3 1 16 3Y_# ... BCT 0 TMOREFDUCOM [ TRY NEXT TAPE 5 3_9L ...TFDUCOM 16 3_FY ... EXIT 4 0 [ NO TAPES LEFT 16 3_Q= ... [** ***** **** 6 422J ...TISFDUCOM 16 42=W ... EXIT 4 1 [ FOUND A TAPE 16 42H8 ... [ ***** * **** 4 42RG ...# 19 433S ...# THIS SUBROUTINE GETS A POINTER GETS A POINTER TO A SPERA 9 43#6 ...# TAPE IN A FDUMPTAPES 3 43JD ... 6 43SQ ...TFDUMPTAPES 11 4454 ... HUNTW 3,FI,FDUMPTAPES 17 44*B ... BNG 3 NOFDUMPTAPE [ J IF NO FDUMPTAPES 18 44KN ... LDX 0 ALOGLEN(3) [ OR IF NO SPARE TAPES 12 44W2 ... BZE 0 NOFDUMPTAPE [ 5 456# ...TFDUMP 15 45BL ... LDX 1 FDTTAPE(3) [ NEXT TAPE 17 45LY ... BPZ 1 TISFDUMP [ FOUND A SPARE TAPE 7 45X= ... ADN 3 1 15 467J ... BCT 0 TFDUMP [ TRY NEXT TAPES 6 46CW ...NOFDUMPTAPE 16 46N8 ... EXIT 4 0 [ NO TAPES LEFT 16 46YG ... [ ** ***** **** 5 478S ...TISFDUMP 16 47F6 ... EXIT 4 1 [ FOUND A TAPE 16 47PD ... [ ***** * **** 12 47_Q ...# # # # # 4 48=4 ...# 4 48GB ...# 19 48QN ...# THIS THE MAIN ENTRY POINT TO THE SEGMENT ( FROM INCSTART) 21 4932 ...# WE DECIDE IF WE HAVE ENOUGH TAPES , IF NOT WE TRY TO OBTAIN SOME 17 49?# ...# FROM SPECIFIED TAPES ,SPARE TAPES THEN POOL TAPES 6 49HL ...X1INCTAPES 9 49MR ... BC 2,XBCDPOOL 21 49RY ... SETNCORE 0,1,FI,FREJTAPES [ SET UP AN EMPTY LIST OF CD'ED TAPES 17 4=4= ... BRN X1INC [ JUMP INTO MAIN LOOP 5 4=#J ...MTCHECK 16 4=JW ... OPENINC ,GENERAL [ OPEN INCINDEX 5 4=T8 ...X1INC 18 4?5G ... JBS ZINSREC,,BDUMPAB [ JUMP IF DUMP CANCELLED 16 4?*S ... CALL 4 OPENDUMPER [ OPEN :DUMPER 21 4?L6 ... JBS XCLOSE,,BDUMPAB [ JUMP TO DELETE RECORD AND A 6 4?WD ...NEXTGIVEN 20 4#6Q ... CALL 4 TNEEDMT [ SEE IF WE NEED ANY MORE TAPES 17 4#C4 ... BRN XCLOSE [ J IF EE HAVE ENOUGH 21 4#MB ... CALL 4 TGIVENMT [ SEE IF WE CAN USE ANY SPECIFIED TAP 20 4#XN ... BRN SPARETAPES [ NO ... TRY USING SPARE TAPES 18 4*82 ... LDX 5 FDUTSN(3) [ PICK UP SPARE TAPE 18 4*D# ... BS 3,FDUTSNUSED [ MARK AS USED IN FDUCOM 16 4*NL ... STO 5 0(2) [ STICK IN FGET 17 4*YY ... [ CLEAR STATE WORD 12 4B9= ... STOZ FGETSTATE-FGETSER(2) 18 4BFJ ... CALL 4 SERLOOK [ FIND TAPE IN :DUMPER 17 4BPW ... BZE 3 SPARETAPES [ JUMP IF TAPE DEADED 18 4C28 ... BS 3,BNUSEDUMP [ ENSURE MARKED AS USED 19 4C=G ... BRN NEXTGIVEN [ SEE IF WE STILL NEED TAPES 16 4CGS ... [ **** 15 4CR6 ...# EITHER THERE ARE NO TAPES LEFT IN FDUCOM 15 4D3D ...# OR WE ARE NOT ALLOWED TO USE CURRENT TAPES 6 4D?Q ...SPARETAPES 17 4DJ4 ... HUNTW 3,FI,FDUCOM [ GET FDUCOM IF ANY 21 4DSB ...# *********************** **************************************** 16 4F4N ... SEGENTRY K80INCTAPES [ NULLED BY ON 16 4F*2 ... BRN NUDTPLOFF [ RESTORED BY OFF 19 4FK# ...# THE FOLLOWING FEW LINES ARE INVOKED BY THE NEWDTPOOL MACRO 19 4FTL ... BNG 3 XCLOSE [ NO DU COMMAND SO USE POOL 19 4G5Y ... JBC XCLOSE,3,BFDSPARE [ USE POOL UNLESS DU SPARE 6 4GB= ...NUDTPLOFF 10 4GLJ ... SEGENTRY K81INCTAPES 21 4GWW ... BNG 3 SPARE2 [ IF NO FDUCOM WE CAN USE SPARE TAPE 21 4H78 ... JBS XCLOSE,3,BFDPOOL [J IF WE HAVE BEEN TOLD TO UES POOL 5 4HCG ...SPARE2 20 4HMS ... CALL 4 SFDUMPTAPES [ SET UP LIST OF SPARE DUMPTAPES 6 4HY6 ...NEXTSPARE 18 4J8D ... CALL 4 TNEEDMT [ DO WE STILL NEED MTS 9 4JDQ ... BRN XCLOSE 21 4JP4 ... CALL 4 TFDUMPTAPES [ GET A POINTER TO NEXT SPARE TAPE 18 4J_B ... BRN XCLOSE [ NONE LEFT TRY POOL 16 4K9N ... LDX 5 FDTTAPE(3) [ PICK UP TAPE 17 4KG2 ... STO 5 0(2) [ STICK IT IN FGET 17 4KQ# ... STOZ FGETSTATE-FGETSER(2) [ CLEAR STATE WORD 3 4L2L ... 20 4L=Y ... BS 3,FDTTAPEUSED [ M MARK AS USED IN FDTUMPTAPES 18 4LH= ... CALL 4 SERLOOK [ SET USED BIT IN :DUMPER 17 4LRJ ... CALL 4 TNEEDMT [ ANY MORE TAPES EYT 16 4M3W ... BRN XCLOSE [ GOT ENUFF TAPES 15 4M#8 ... BRN NEXTSPARE [ TRY AGAIN 4 4MJG ...# 6 4MSS ...# POOL 3 4N56 ... 21 4N*D ...# ****************************************************************** 18 4NKQ ...WAITCCDU [ DUMP HAS BEEN CANCELLED 16 4NW4 ... OPENINC ,GENERAL [ OPEN INCINDEX 9 4P6B ... BRN ZINSREC 5 4PBW XCLOSE 16 4PWG CLOSETOP [CLOSE :DUMPER 8 4QB6 LDCT 0 #400 9 4QTQ ORS 0 AWORK2(2) 21 4R*B ERS 0 AWORK2(2) [ENSURE ^FREE MT FOUND^ BIT NOT SET 4 4RT2 # 5 4S#L ZINSREC 21 4SS= WIND [POSITION INCINDEX AFTER LAST RECORD 8 4T?W LDCT 0 #200 9 4TRG ANDX 0 AWORK1(2) 21 4W?6 BZE 0 ZINS [J IF NO REC. FOR THIS INCR. PREVIOUS 19 4WQQ [ INSERTED 21 4X=B DELETE [DELETE CURRENT REC. FOR THIS INCR. 4 4XQ2 ZINS 19 4XT6 ... JBCC NOTCANCEL,,BDUMPAB [ J IF DUMP NOT CANCELLED 7 4XY= ... CLOSETOP 5 4Y3B ... UP 6 4Y6G ...NOTCANCEL 8 4Y9L LDCT 0 #200 21 4YP= ORS 0 AWORK1(2) [SET ^RECORD FOR THIS INCR. INSERTED^ 10 4_8W MHUNTW 3,FILE,FWB 10 4_NG MHUNTW 2,FILE,FGET 20 5286 ... LDX 0 AMTS(3) [X0= NO. OF TSNS TO MOVE 5 53M2 ZTAPE 18 546L LDX 1 FGETSER(2) [MOVE TSN FROM FGET BLOCK 19 54L= STO 1 AMAG(3) [ TO NEXT POSITION IN FWB 18 555W STOZ AMAGSTATE(3) [CLEAR TAPE STATE WORD 20 55KG ADN 2 FGETLEN [UPDATE MODIFIERS IN FGET BLOCK 16 5656 ADN 3 INCMAGLEN [ & FWB 18 56JQ BCT 0 ZTAPE [J IF MORE TSNS TO MOVE 6 574B STEP 21 57J2 INSERT [INSERT REC. FOR THIS INCR. AT END OF 21 583L [INCINDEX - APPEND NOT ALLOWED FOR 18 58H= [ INDEXED SERIAL FILES. 5 592W ZNOMTS 16 59GG CLOSETOP [CLOSE INCINDEX 12 5=26 ... CALL 4 TNEEDMT [ 19 5=FQ ... BRN YCHECK [ J IF WE HAVE ENOUGH TAPES 4 5#XW POOL 8 5*54 ... LDX 2 FX2 19 5*== ... JBS NOPOOL,2,XBCDPOOL [ J IF JUST CD'D POOL TAPE 11 5*CG SETNCORE 10,2,FILE,FABSNB 8 5*X6 ADN 2 A1 8 5BBQ ADN 1 USER 21 5BWB MOVE 1 10 [MOVE :DUMPER.GEO3DUMPTAPE TO FABSNB 21 5CB2 MONOUT INCPOOL [OUTPUT ^DUMPER REQUIRES A POOL TAPE^ 17 5DSW GET [GET POOL TAPE NOW 21 5F#G MHUNT 1,FILE,FABSNB [NOW LENGTH OF FABSNB = REC. HEAD +2 8 5FS6 SMO A1(1) 18 5G?Q LDX 5 A1+1(1) [X5= TSN OF TAPE JUST GOT 15 5GRB FREECORE 1 [FREE FABSNB 20 5H?2 ... TESTREP2 NOTAV,NOPOOL [J IF CANTDO ON POOL TAPE REQUEST 17 5HGS ... TESTREP2 NODECKS,NOPOOL1 [NO DECKS AVAILABLE 19 5HQL CALL 4 OPENDUMPER [OPEN :DUMPER IN GENERAL MODE 21 5J== CALL 4 SERLOOK [MARK DIR. ENTRY OF TAPE AS ^USED BY 16 5JPW CLOSETOP [CLOSE :DUMPER 21 5K9G ... BZE 3 MTCHECK [J IF TAPE NOT ACTUALLY IN :DUMPE 21 5LNB CALL 4 TNEEDMT [FIND POSITON IN FGET OF REQUIRED TAP 18 5M82 BRN NFGET [GEOERR IF NO TAPE NEEDED 17 5MML STO 5 0(2) [INSERT TSN INTO FGET 16 5N7= STOZ FGETSTATE-FGETSER(2)[CLEAR STATE WORD 11 5NLW ... BRN MTCHECK [ 5 5P6G ...NOPOOL 19 5PL6 ... JBCS MTCHECK,2,XBCDPOOL [ J IF FIRST CD LOAD POOL 5 5PTY ...NOPOOL1 16 5Q5Q ... BS ,BDUMPAB [ SIMULATE CC DU 21 5QKB ... BRN MTCHECK [ BACK TO SEE IF ANY NEW DUMP TAPES 4 5R52 ...# 4 5SHW # 21 5T3G [ THE DUMPER MAKES KNOWN ITS REQUIREMENTS TO THE SCHEDULER. 21 5TH6 [ THE TAPES TO BE DUMPED ON ARE MOVED FROM THE FILE/FINC BLOCK TO 21 5W2Q [ THE FILE/FGET BLOCK AND THE SCHEDULER WOKEN UP. THE SCHEDULER THEN 21 5WGB [ POSITIONS THE MTS AND THEN WAKES UP THE DUMPER EACH TIME A TAPE 20 5X22 [ IS POSITIONED.THE DUMPER THEN LOOKS TO SEE IF ALL TAPES ARE 21 5XFL [ POSITIONED AND IF NOT GOES BACK TO SLEEP. IF THE SCHEDULER FINDS 20 5X_= [ THAT A TAPE IS UNOBTAINABLE IT INFORMS THE DUMPER. THE DUMPER 21 5YDW [ THEN FINDS OUT WHETHER OR NOT DUMPING ON THE SAME NO OF TAPES IS 20 5YYG [ REQUIRED AND IF SO FINDS A NEW TAPE,THE FILE/FGET BLOCK BEING 10 5_D6 [ ALTERED ACCORDINGLY. 4 5_XQ # 5 62CB REQMT 18 62D* ... JBS WAITCCDU,,BDUMPAB [ JUMP IF DUMP CANCELLED 10 62F# ... MHUNTW 1,FILE,FGET 19 62H= ... JBC NPLL,,BPARALLEL [FIRST PARAM ONLY IF PLL MODE 17 62K8 ... LDN 2 XFILE [^A FILES-ONLY INCR^ 17 62M6 ... JBC NREST,1,BINCGENRES [J UNLESS RESTABLE 17 62P4 ... LDN 2 XREST [^A RESTORABLE INCR^ 5 62R2 ...NREST 19 62SY ... MHUNTW 3,FILE,FQUAL [MOVE PARAM INTO CONVENIENT 14 62WW ... LDN 3 A1(3) [BLOCK 8 62YS ... ADX 2 FX1 7 632Q ... MOVE 2 6 15 634N ... OUTPARN 23,A1,FILE,FQUAL [OUTPUT IT 9 636L ... BRN PARAM2 20 638J ...NPLL OUTNULL [NON PLL SO OUTPUT NULL 1ST PARAM 5 63=G ...PARAM2 14 63=N ...# DUMPER INTENDS TO DUMP %A ON MT%B %C 18 63=W ... MHUNTW 1,FILE,FWB [ COPY OF NEW INC RECORD 20 63?4 ... NAME 1,FILE,APROC [ RENAMED APROC FOR OUTTSNS TO 21 63?= ... OUTTSNS [ OUTPUT LIST OF TSNS AS PARAMETER 10 63?D ... MHUNTW 1,FILE,APROC 17 63?L ... NAME 1,FILE,FWB [ BACK TO FWB AGAIN 12 6M8C ...# MARK ALL TAPES AS REQUESTED 10 6M9B ... MHUNTW 3,FILE,FGET 10 6M=* ... LDX 1 INCCOPIES(3) 5 6M?# ...NEXTREQ 9 6M#? ... BS 3,BFGETREQ 9 6M*= ... ADN 3 FGETLEN 9 6MB9 ... BCT 1 NEXTREQ 21 6MC= MONOUT INCINTENT [OUTPUT ^DUMPER INTENDS TO DUMP ON MT 19 6MM4 ... BC 2,XBCDPOOL [ NOT JUST DONE CD LOAD POOL TAPE 21 6MWW BS ,BMTSREQ [SET ^DUMPER TAPE REQUESTS NEED SERVIC 20 6NBG [ MARKER FOR DUMP TAPE SCHEDULER 18 6NW6 STARTACT RET [KICK DTS IF NECESSARY 5 6P*Q YFGOT 18 6PKJ ... JBS WAITCCDU,,BDUMPAB [ JUMP IF DUMP CANCELLED 21 6PTB COOR3 FGOTWAIT [WAIT UNTIL SOME MORE TAPES POSITIONE 21 6Q*2 [ (IF WOKEN UP WITHOUT ANY TAPES HAVI 19 6QSL [ REACHED A TERMINAL STATE) 4 6R#= # 5 6RRW YCHECK 10 6S?G ... MHUNTW 3,FILE,FGET 19 6SR6 LDX 7 INCCOPIES(3) [X7= NO. OF MTS DUMPING ON 16 6T=Q ... LDN 5 FGETSER [OFFSET DOWN FGET 17 6W=2 LDN 6 0 [CLEAR MARKER WORD 5 6WPL YSTATE 7 6X9= SMO 5 19 6XNW LDX 4 FGETSTATE-FGETSER(3)[X4= FGET STATE WORD FOR TAPE 21 6Y8G BZE 4 YNEW [J IF NOT NOTIFIED TO RETRIEVAL SYSTE 9 6Y=D ...#SKIP JDUMPTW 4 6Y#B ...( 15 6YB# ... SLL 4 5 [GET BIT 5 21 6YD= ... BNG 4 YTAPETW [BRANCH IF TAPE MARKED^TO BE TW'D^ 17 6YG8 ... SMO 5 [MODIFIER DOWN FGET 20 6YJ6 ... LDX 4 FGETSTATE-FGETSER(3)[RELOAD FGETSTATE WORD FOR TAPE 4 6YL4 ...) 7 6YN6 SLL 4 1 17 6_7Q BNG 4 YUPMOD [J IF TAPE POSITIONED 7 6_MB SLL 4 1 18 7272 BNG 4 YTAPEUN [J IF TAPE UNOBTAINABLE 21 72LL ORN 6 1 [SET ^TAPE NOT DEALT WITH^ MARKER (RE 20 736= [ SYSTEM MUST BE REQUESING OR 17 73KW [ POSITIONING TAPE) 5 745G YUPMOD 17 74K6 ADN 5 FGETLEN [UPDATE MOD DOWN FGET 20 754Q BCT 7 YSTATE [J IF MORE STATE WORDS TO INSPECT 21 75JB BNG 6 REQMT [J IF TO TELL RETRIEVAL SYSTEM ABOUT 18 7642 [ SOME NEW TAPES 7 76HL SRC 6 1 21 773= BPZ 6 YPOS [J IF ALL TAPES SUCCESSFULLY POSITION 15 77GW BRN YFGOT [GO & WAIT 4 782G YNEW 21 78G6 ORX 6 GSIGN [SET ^NEW TAPES TO TELL RETRIEVAL SYS 17 78_Q BRN YUPMOD [ ABOUT^ MARKER 4 79FB # 9 79H# ...#SKIP JDUMPTW 4 79K= ...( 5 79M8 ...YTAPETW 20 79P6 ... LDN 4 #6467 [LOAD INDICATOR ^TW^ TO SHOW THAT 20 79R4 ... [THIS TAPE IS MARKED ^TO BE TW'D^ 8 79T2 ... BRN YTAP1 4 79WY ...) 5 79_2 YTAPEUN 7 7=DL SLL 4 1 5 7=ND ...YTAP1 7 7=Y= SMO 5 19 7?CW LDX 6 0(3) [X6= TSN OF OFFENDING TAPE 18 7?XG CONSERNO 6,ACOMMUNE1 [CONVERT TSN TO CHARS. 18 7#C6 OUTPARAM ACOMMUNE1(2),ACOMMUNE2 [OUTPUT TSN AS PARAM. 21 7#WQ LDN 1 MIN [SET ^INAVAILABILITY^ AS PARAMETER 18 7*BB BPZ 4 YNOHIST [J IF NOT HISTORIC FAIL 21 7*W2 LDN 1 MFAIL [SET ^FAILURE HISTORY^ AS PARAMETER 5 7B*L YNOHIST 9 7BC* ...#SKIP JDUMPTW 4 7BF4 ...( 8 7BGR ... SBN 4 #6467 19 7BJG ... BNZ 4 YNOH2 [TAPE NOT MARKED TO BE TW'D 14 7BL9 ...# TAPE IS MARKED ^TO BE TW'D^ 19 7BMY ... LDN 1 MTW [SET ^TW DUMP^ AS PARAMETER 5 7BPM ...YNOH2 4 7BRB ...) 8 7BT= ADX 1 FX1 9 7C#W ADN 2 ACOMMUNE1 20 7CSG MOVE 1 4 [PUT 2ND PARAMETER IN ACT. BLOCK 18 7D#6 OUTPARN 16,ACOMMUNE1 [OUTPUT INAVAILABILITY OR 20 7DRQ [ FAILURE HISTORY 21 7F?B MONOUT INCHIST [OUTPUT ^DUMPER= MT %A NOT RE-USED 20 7FR2 [ DUE TO %B^ 12 7FW8 ...# ADD TSN TO LIST OF CD'ED TAPES 11 7F_B ... MHUNTW 1,FI,FREJTAPES 18 7G4J ... LDX 3 ALOGLEN(1) [ INCREASE LENGTH BY 1 7 7G7Q ... ADN 3 1 11 7G=Y ... ALTLENG 1,3,SFREJTAPES 11 7GB6 ... MHUNTW 3,FI,FREJTAPES 19 7GF# ... SMO ALOGLEN(3) [ STORE TSN AT END OF LIST 12 7GJG ... STO 6 FRJTAPE-1(3) [ 21 7GMN ...# ################################################################## 4 7GQW ...# 18 7GW4 ...# THE FOLLOWING FEW LINES ARE ALL THAT REMAIN OF INCCANT 4 7G_= ...# 18 7H4D ... LDX 7 5 [ X5 IS POINTER DOWN FGET 10 7H7L ... HUNTW 1,FILE,FINTER 19 7H=S ... BNG 1 YNONECPL [J IF NO RETRIEVABLE INCRS. 21 7HB2 ... LDX 4 AMTS(1) [X4= NO. OF TAPES WITH LAST RETRIEVAB 4 7HF8 ...YSER 21 7HJB ... BXE 6 AMAG(1),YRET [J IF TAPE CANTDONE CONTAINS LAST RET 18 7HMJ ... ADN 1 INCMAGLEN [UPDATE MOD DOWN FINTER 18 7HQQ ... BCT 4 YSER [J IF MORE TSNS TO TEST 5 7HTY ...YNONECPL 9 7HX2 ... OPENINC ,GENERAL 9 7HX= ... STO 7 AWORK3(2) 9 7HXG ... LDX 7 AWORK1(2) 9 7HXQ ... STO 7 AWORK4(2) 9 7HY4 ... STOZ AWORK1(2) 20 7J28 ... CALL 7 R1 [REMOVE ^MT USED BY DUMPER^ BIT FROM 9 7J2P ... LDX 7 AWORK4(2) 9 7J3= ... STO 7 AWORK1(2) 9 7J3R ... LDX 7 AWORK3(2) 21 7J4# ... [DIR. ENTRY & ALSO SEARCH INCINDEX FO 21 7J7G ... [SETTING THE TSN -IVE & MAGSTATE WORD 16 7J=N ... [ZERO IF FOUND 4 7J*W ...YRET 16 7JF4 ... MHUNTW 3,FILE,FGET [X3-> FGET BLOCK 8 7JJ= ... LDCT 0 #400 21 7JMD ... SMO 7 [SET TSN -IVE IN FGET BLOCK TO SHOW N 21 7JQL ... STO 0 0(3) [ TAPE NOW PRESENT IN THIS ELEMENT 20 7JTS ... [WE LEAVE THE STATE WORD SET UP 20 7J_2 ... [SO AS TO STOP SCHED LOOKING AT 16 7K48 ... [OUR NEGATIVE TSN 17 7K7B ... BRN MTCHECK [ TRY.TRY . TRY AGAIN 4 7K=J ...# 18 7K*Q ...SFREJTAPES [ SUBROUTINE FOR ALTLENG 11 7KDY ... MHUNTW 2,FI,FREJTAPES 12 7KJ6 ... EXIT 1 0 [ 4 7KK5 ...# 4 7KL4 ...# 4 89DN ...YPOS 10 89F3 ... MHUNTW 1,FILE,FGET 15 89FB ... LDX 3 INCCOPIES(1) [NO OF MTS 18 89FP ... SLL 3 1 [NO OF WORDS IN TSN LIST 5 89G4 ...UNITNO 7 89GC ... SMO 3 12 89GQ ... LDX 7 FGETSER-FGETLEN(1) 7 89H5 ... SMO 3 12 89HD ... LDEX 6 FGETSTATE-FGETLEN(1) 18 89HR ... LDN 5 1 [LENGTH OF MESSAGE PARAMS 18 89J6 ... LDN 4 JPDTSN [THE FIRST PARAM IS A TSN 7 89JF ... LDN 0 7 8 89JS ... OUTPACKX 0,5,4 18 89K7 ... LDN 4 JPDNUMA [THE SECOND THE UNIT NO. 7 89KG ... LDN 0 6 8 89KT ... OUTPACKX 0,5,4 9 89L8 ... MONOUT ADUMPUNIT 10 89LH ... MHUNTW 1,FILE,FGET 9 89LW ... SBN 3 FGETLEN 9 89M9 ... BNZ 3 UNITNO 18 89MJ ... UPPLUS 1 [ ALL TAPES POSITIONED 5 8=8= NFGET 7 8=MW #SKI K6INCTAPES 20 8?7G GEOERR BRIEFPM,INC FGET [NO TAPE NEEDED WHEN THOUGHT DID 4 8?M6 # 5 8#6Q NOBREAK 7 8#LB #SKI K6INCTAPES 21 8*62 GEOERR BRIEFPM,INCBREAK [DUMPER CAN'T BE BROKEN-IN ON SINCE O 19 8*KL [ SYSTEM-INITIATED JOB 4 8B5= # 4 8BJW # 6 8C4G X2INCTAPES 19 8CJ6 CALL 4 OPENDUMPER [OPEN :DUMPER IN GENERAL MODE 4 8D3Q UP 5 8DHB UP 4 8F32 # 7 8F=S ...# SUBROUTINE R1 4 8FGL # 21 8G2= # MARK THE DIR. ENTRY FOR TAPE IN X6 AS ^NOT USED BY DUMPER^ (I.E. REMO 21 8GFW # B0 OF EINCLOOK) & IF IT IS MENTIONED IN INCINDEX (AS IT SHOULD BE,IN 21 8G_G # INCR. NOT SUITABLE FOR RETRIEVING) SET B0 OF ITS TSN & ZEROISE ITS 21 8HF6 # MAGSTATE WORD. NEED TO SEARCH INCINDEX SINCE IF GEORGE BROKE WHEN ABO 21 8HYQ # TO DUMP INCR. N & UPON RESTART INCR. N+1 WAS ABANDONED & OBLITERATED, 21 8JDB # WOULD NEXT DUMP ON SAME TAPES AS IN INCR. N EVEN THOUGH THOSE NOT IN 21 8JY2 # 'SUITABLE FOR RETRIEVING' INCR. WOULD NOT BE MARKED ^USED BY DUMPER^ 9 8KCL # (BUG 3879 IN MK 7). 21 8KX= # WE LOOK FOR TSN IN MORE INCINDEX RECORDS THAN WE STRICTLY SHOULD DO, 21 8LBW # IT SHOULD NOT BE IN THESE OTHER RECORDS & ROUTINE IS ONLY RARELY ENTE 4 8LWG # 21 8P#L X3INCTAPES [INCINDEX OPEN - ENTRY FROM INCSTART 19 8PS= SETBIT 2,AWORK1(2) [SET ^INCINDEX OPEN^ MARKER 6 8Q?W REWIND 8 8QF4 ... CALL 7 R1 5 8QL= ... UP 4 8QRG R1 8 8R3# ... SBX 7 FX1 14 8R?6 LDX 5 6 [X5= TSN 19 8RQQ CALL 4 OPENDUMPER [OPEN :DUMPER IN GENERAL MODE 7 8RXY ... STO 7 6 3 8S56 ... 21 8S=B CALL 4 SERLOOK [REMOVE ^USED BY DUMPER^ BIT FOR TAPE 7 8S?Y ... LDX 7 6 9 8S*G ... BZE 3 (GEOERR) 17 8SDL ... BC 3,BNUSEDUMP [[ ENSURE USED BIT CLEAR 7 8SHQ ...#UNS IDCTRACE 10 8SLW ... TRACEVER 5,X3INCT 16 8SQ2 CLOSETOP [CLOSE :DUMPER 5 8T9L RSTEP 18 8TP= STEP [NEXT RECORD IN INCINDEX 14 8W8W BZE 3 RZERO [J IF END 21 8WNG JBC RSTEP,3,BINSUITRVR [J IF INCR SUITABLE FOR RETRIEVING (T 21 8X86 [SHOULD NOT APPEAR IN SUCH INCRS, BUT 21 8XMQ [IF IN INCINDEX TWICE (B 7351 IN MK7) 18 8Y7B LDX 6 AMTSR(3) [X6= NO. OF MTS IN RECORD 15 8YM2 BZE 6 RSTEP [J IF NONE 18 8_6L LDN 4 0 [CLEAR MOD DOWN RECORD 5 8_L= RNEXT 7 925W SMO 4 16 92KG BXE 5 AMAGR(3),RFOUND [J IF TSN FOUND 9 9356 ADN 4 INCMAGLEN 19 93JQ BCT 6 RNEXT [J IF MORE TSNS TO LOOK AT 8 944B BRN RSTEP 5 94J2 RFOUND 7 94RS ... STO 7 6 18 953L CALL 7 STEPWRITE [STEPWRITE INFORMATION 7 95?D ... LDX 7 6 8 95H= LDCT 0 #400 7 962W SMO 4 21 96GG ORS 0 AMAGR(3) [SET TSN -IVE (I.E. ^NO TSN PRES&NT^) 7 9726 SMO 4 16 97FQ STOZ AMAGSTATER(3) [CLEAR MAGSTATE 8 97_B BRN RSTEP 5 98F2 RZERO 20 98YL BBS 2,AWORK1(2),REND [J IF INCINDEX TO BE LEFT OPEN 7 99D= CLOSETOP 4 99XW REND 8 9==? ... ADX 7 FX1 7 9=JN ... EXIT 7 0 4 9=X6 # 18 9=X7 ...SFINDFDUMP [ SUBROUTINE FOR ALTLENG 11 9=X8 ... MHUNTW 2,FI,FDUMPTAPES 7 9=X9 ... EXIT 1 0 4 9=X= ...# 21 9=X? ...# THIS ENTRY POINT IS USED BY DUMP TAPES TO SET UP A LIST OF SPARE T 4 9=X# ...# 4 9=X* ...# 6 9=XB ...X4INCTAPES 16 9=XC ... CALL 4 OPENDUMPER [ OPEN : DUMPER 21 9=XD ... CALL 4 SFDUMPTAPES [ SET UP AND FILL THE LIST OF TAPES 16 9=XF ... CLOSETOP [ CLOSE :DUMPER 16 9=XG ... UP [ UP UP AND AWAY 4 9=XH ...# 15 9=XJ ...# THIS SUBROUTINE SETS UP THE LIST OF TAPES 12 9=XK ...SFDUMPTAPES [ 16 9=XL ... SBX 4 FX1 [ RELATIVISE LINK 19 9=XM ... HUNTW 3,FI,FDUMPTAPES [ IF A FDUMPTAPES DOES NOT 19 9=XN ... BPZ 3 NOFD [ ALREADY EXIST SET ONE UP 16 9=XP ... SETNCORE 0,3,FI,FDUMPTAPES [ EMPTY OF COURSE 4 9=XQ ...NOFD 18 9=XR ... ALTLENGD 3,0,SFINDFDUMP [ RESET LENGTH TO ZERO 14 9=XS ... REWIND [ :DUMPER 6 9=XT ...STEPSPARE 6 9=XW ... STEP 9 9=XX ... BZE 3 SPAREND 12 9=XY ... BWNZ ERESN(3),STEPSPARE 11 9=X_ ... JBC STEPSPARE,3,BNLIB 14 9=Y2 ... JMBS STEPSPARE,3,BNERASE,BNUSEDUMP 12 9=Y3 ... BWNZ EREELN(3),STEPSPARE 15 9=Y4 ... TESTNAMX 3,ELOC1N(3),MTNAME(1),STEPSPARE 19 9=Y5 ...# IF THERE IS A FREJTAPES MAKE SORE THE TAPE IS NOT IN IT 15 9=Y6 ... LDX 5 ESERN(3) [ PICK UP TSN 12 9=Y7 ... HUNTW 2,FI,FREJTAPES [ 18 9=Y8 ... BNG 2 NOFREJ [ JUMP IF NO FREJTAPES 18 9=Y9 ... LDX 0 ALOGLEN(2) [ J IF EMPTY FREJTAPES 9 9=Y= ... BZE 0 NOFREJ 5 9=Y? ...NEXTFREJ 20 9=Y# ... BXE 5 FRJTAPE(2),STEPSPARE [ J IF THIS TAPE HAS BEEN CD'ED 16 9=Y* ... ADN 2 1 [ MOVE POINTER 16 9=YB ... BCT 0 NEXTFREJ [ CHECK NEXT TAPE 5 9=YC ...NOFREJ 15 9=YD ... MHUNTW 3,FI,FDUMPTAPES [ LENGTHEN 17 9=YF ... LDX 6 ALOGLEN(3) [ THE FDUMPTAPE BY 15 9=YG ... ADN 6 2 [ TWO WORDS 11 9=YH ... ALTLENG 3,6,SFINDFDUMP 7 9=YJ ... STEPAGAIN 11 9=YK ... MHUNTW 1,FI,FDUMPTAPES 4 9=YL ...# 18 9=YM ... LDX 0 EWRITDAYN(3) [ PICK UP DATE WWRITTEN 18 9=YN ... SBN 6 2 [ FIND NO OF USED WORDS 17 9=YP ... BZE 6 NOWINSERT [ JUMP IF NONE USED 4 9=YQ ...NEXT 19 9=YR ... SBN 6 2 [ JUMP IF OFF START OF BLOCK 9 9=YS ... BNG 6 MOVETSNS 21 9=YT ... SMO 6 [ JUMP IF NOT YET REACHED THE PLACE 12 9=YW ... BXL 0 FDTDATE(1),NEXT [ 13 9=YX ...# FOUND THE POSITION FOR THE TAPE 5 9=YY ...MOVETSNS 16 9=Y_ ... LDX 0 ALOGLEN(1) [ FIND THE NUMBER 17 9=_2 ... SBX 0 6 [ OF WORDS TO MOVE 7 9=_3 ... SBN 0 4 18 9=_4 ... BZE 0 MOVENONE [ JUMP IF NO WORDS TO MOVE 10 9=_5 ... ADX 1 ALOGLEN(1) 7 9=_6 ... SBN 1 4 5 9=_7 ...NEXTWORD 16 9=_8 ... LDX 2 FDTDATE(1) [ MOVE THE WORD 10 9=_9 ... STO 2 FDTDATE+2(1) 17 9=_= ... SBN 1 1 [ MOVE THE POINTERS 9 9=_? ... BCT 0 NEXTWORD 5 9=_# ...MOVENONE 19 9=_* ... ADN 6 2 [ X6 POINTS TO POSN TO INSETR 6 9=_B ...NOWINSERT 12 9=_C ... MHUNTW 1,FI,FDUMPTAPES [ 7 9=_D ...#UNS IDCTRACE 8 9=_F ... TRACEVER 6,6 7 9=_G ...#UNS IDCTRACE 10 9=_H ... BLOCKTRACE 1,FDUMPFB 15 9=_J ... LDX 0 ESERN(3) [ PICK UP TSN 7 9=_K ... SMO 6 15 9=_L ... STO 0 FDTTAPE(1) [ IN BLOCK 17 9=_M ... LDX 0 EWRITDAYN(3) [ DATE LAST WRITTEN 12 9=_N ... SMO 6 [ 15 9=_P ... STO 0 FDTDATE(1) [ IN BLOCK 7 9=_Q ...#UNS IDCTRACE 11 9=_R ... BLOCKTRACE 1,FDUMPTAP 9 9=_S ... BRN STEPSPARE 5 9=_T ...SPAREND 15 9=_W ...# THE FDUMPTAPES CONSISTS OF TWO WORDS FOR 13 9=_X ...# EACH TAPE - WE HAVE TO SHORTEN IT 11 9=_Y ... MHUNTW 1,FI,FDUMPTAPES 14 9=__ ... LDX 3 ALOGLEN(1) [ LENGTH 9 9?22 ... BZE 3 NOSPARET 16 9?23 ... SRL 3 1 [ NUMBER OF TAPES 18 9?24 ... LDN 2 0 [ MODIFIER TO TSN TO MOVE 5 9?25 ...NEXTM 7 9?26 ... SMO 2 15 9?27 ... LDX 0 FDTTAPE(1) [ PICK UP TSN 10 9?28 ... STO 0 FDTTAPE(1) 7 9?29 ... ADN 2 1 17 9?2= ... ADN 1 1 [ INCREASE POINTERS 17 9?2? ... BCT 3 NEXTM [ BACK FOR NEXT TAPE 12 9?2# ... MHUNTW 3,FI,FDUMPTAPES [ 16 9?2* ... LDX 6 ALOGLEN(3) [ LENGTH OF BLOCK 20 9?2B ... SRL 6 1 [ DIVIDED BY TWO IS NEW LENGTH 12 9?2C ... ALTLENG 3,6,SFINDFDUMP [ 5 9?2D ...NOSPARET 12 9?2F ... ADX 4 FX1 [ 7 9?2G ... EXIT 4 0 4 9?B7 ...# 21 9?B? ...# ****************************************************************** 4 9?BC ...# 11 9?BQ MENDAREA 30,K99INCTAPES 4 9?WB # 4 9#B2 #END 8 ____ ...37170752000200000000