17 22FL ...#LIS K0NEWOWN>K0ALLGEO>K0GREATGEO>K0LIBRARY 14 22_= SEG NEWOWN,865,N.R.BOULT,LIBRARY 11 23DW SEGENTRY K1NEWOWN,QK1NEW 13 23YG ... FSHENTRY K2NEWOWN,,QK2NEW,QK2NEW 4 24D6 # 17 24XQ # ENTRY POINT FOR UNANTICIPATED CLOSEDOWN OF M/C 'B' 4 25CB # 13 25KL ... FSHENTRY K3NEWOWN,QK3NEW,,QK3NEW 13 25RW ... FSHENTRY K4NEWOWN,QK4NEW,,QK4NEW 13 2626 ... FSHENTRY K5NEWOWN,,QK5NEW,QK5NEW 13 268B ... FSHENTRY K7NEWOWN,,QK7NEW,QK7NEW 4 26BL # 9 26W= MASK #37777777 9 27*W MASK2 #77377777 7 27TG MASK3 #57377777 10 28*6 ZERAL +ERALKNOWN 9 28SQ ZTINUSE +ERTINUSE 10 29#B ZPARWRNG +ERPARWRNG 9 29S2 ZEROWN +EROWN 9 2=?L ZFAILMAG +FAILMAG 10 2=R= ZOPWRONG +EROPWRONG 10 2?=W ZUSWRONG +ERUSWRONG 9 2?QG ZNOTAV +ERNOTAV 7 2#=6 POOLHD 0 9 2#PQ 4HPOOL 9 2*9B 4H TAP 8 2*P2 4HE 7 2B8L 0 7 2BN= 0 7 2C7W 0 8 2CMG ... FSHCODE AORB 4 2D76 ( 4 2DLQ # 12 2F6B # LINK FOR UNANTICIPATED CLOSEDOWN 4 2FL2 # 5 2G5L SCDLINK 9 2GK= PAIR NEWOWN,3 4 2H4W # 5 2H=4 ...S2CDLINK 9 2HC= ... PAIR NEWA,5 4 2HJG ) 5 2J46 QK1NEW 10 2JHQ SETNCORE 1,3,FLIB,FMES 9 2K3B LDX 0 CPPTR(2) 8 2KH2 STO 0 A1(3) 9 2L2L STOZ CPPTR(2) 9 2L3F ... FSHCODE B,XNOTINB 4 2L4# ...( 15 2L57 ... TRANSBEG FSHNEWID,NEWOWN,4,CLB,,ACOMMUNE1 8 2L62 ... BRN TEND 9 2L6T ... BRN YBRKIN 5 2L7N ...XNOTINB 4 2L8H ...) 9 2L9B ... FSHCODE A,XNOTINA 4 2L=9 ...( 5 2L?4 ...QK4NEW 9 2L?X ... NOTALIEN XNOTINA 10 2L#Q ... SETNCORE 1,3,FLIB,FMES 9 2L*K ... LDX 0 CPPTR(2) 8 2LBD ... STO 0 A1(3) 9 2LC? ... STOZ CPPTR(2) 5 2LD6 ...XNOTINA 4 2LD_ ...) 5 2LG= NEWK1 9 2MFG STOZ AWORK2(2) 9 2M_6 STOZ AWORK3(2) 7 2PD2 LDN 3 0 5 2PXL NEXTP 7 2QC= ADN 3 1 10 2QWW MHUNT 1,AONBS,GLIST 21 2RBG BXE 3 ALOGLEN(1),TEND [BR IF NO MORE PARAMETERS TO END CMD 9 2RL# ... STOZ AWORK1(2) 20 2RW6 STOZ AWORK4(2) [USED TO INDICATE IF CNT OF REQ. UPDATED 15 2S*Q STO 3 AWORK2(2) [PARAM. NO. 7 2STB SMO 3 16 2T*2 LDX 7 A1(1) [LOAD NEXT TSN 19 2TSL BZE 7 NEXTP [NOTHING TO DO IF PARAM ZERO 9 2TXQ ... LDX 0 AWORK3(2) 9 2W2W ... BNZ 0 NEXTP1 18 2W62 ... CALL 5 OPENFLS [OPEN SYS.DOC.&SYS.SER. 5 2W96 ...NEXTP1 21 2W#= CALL 5 SSEARCH [SEARCH SYS.SERIAL FOR TAPE AND BR 21 2WRW BRN TAPENEW [TO TAPENEW IF ENTRY FOR TSN NOT FOUN 4 2X?G # 21 2XR6 # ENTRY FOUND IN SYS.SERIAL SO TSN MUST BE QUERY STATUS, 20 2Y=Q # THOUGHT TO BE A POOL TAPE,AND NOT WRONGED,FOR USER TO 12 2YQB # BE ABLE TO CLAIM IT 5 2_28 ...NEXTP2 19 2_=2 CALL 5 STACH [CALL STACH TO CHECK ENTRY 18 2_PL BRN UNCL1 [TAPE CANNOT BE CLAIMED 19 329= # TAPE CAN BE CLAIMED - TAPE MUST NOW BE LOADED 19 32NW # AND HEADER LABEL NAME CHECKED FOR AGREEMENT WITH 15 338G # LABEL NAME SUPPLIED IN PARAMETER 21 33N6 READAGAIN [READ SYS.SERIAL AGAIN TO GET FILE/FR 21 347Q MHUNT 3,FILE,FRB [BLOCK TO UPDATE CNT OF REQUESTERS 7 34MB LDN 0 1 19 3572 ADS 0 A1+5(3) [INCREMENT CNT OF REQUESTERS 17 35LL STO 0 AWORK4(2) [INDICATE CNT UPDATED 18 366= CALL 5 XREWR [REWRITE UPDATED RECORD 17 36KW CALL 5 SYSCLOSE [CLOSE SYS SER AND SYS DOC 10 36LX ... FSHCODE A,X2NOTINA 4 36MY ...( 14 36N_ ...[ MUST CARRY OUT TAPEOPEN IN HOME MACHINE 9 36Q2 ... NOTALIEN X2NOTINA 11 36R3 ... SETNCORE 2,3,FSH,FSHAMBLES 10 36S4 ... LDX 0 S2CDLINK(1) 10 36T5 ... STO 0 FSHCDLINK(3) 10 36W6 ... STO 7 FSHWORK(3) 18 36X7 ... TRANSBEG FSHNEWID,NEWOWN,5,NOBLOCKS,,ACOMMUNE1,UNCL 9 36Y8 ... BRN NEXTP3 9 36_9 ... BRN ZBRKIN 5 372= ...X2NOTINA 4 373? ...) 5 374# ...QK5NEW 14 375G TAPEOPEN ZBRKIN,7,,NOTOL,NOQUERY,NOSS 10 378T ... MFREE CPAR,GPERCON 5 37#8 ...NEXTP3 10 37CH ... FSHCODE B,X4NOTINB 4 37GW ...( 8 37L9 ... BRN TRFN2 5 37PJ ...X4NOTINB 4 37SX ...) 8 37Y= ... FSHCODE AORB 4 383K ...( 10 386Y ... VFREEW FSH,FSHAMBLES 8 38=? ... LDX 1 FX1 8 38*L ... LDX 2 FX2 4 38D_ ...) 21 38JB TESTREPN OK,TORPNOK [BR IF REPLY NOT OK TO FLAG ERRORS 15 3942 [+ TIDY UP 9 3998 ... CALL 5 OPENFLS 4 39HL # 20 3=3= # RECHECK ENTRY IN SYS.SER AS IT MAY HAVE BEEN ALTERED 13 3=GW # WHILE TAPEOPEN EXECUTED 4 3?2G # 17 3?G6 CALL 5 SSEARCH [SEARCH SYS.SERIAL 21 3?_Q BRN NOMORE [ENTRY NO LONGER IN SYS.SER - BR TO 11 3#FB ... [ ALLOCATE IT TO THE USER 20 3*DL CALL 5 STACH [CHECK IF ENTRY CAN BE CLAIMED 21 3*Y= BRN UNCL [ENTRY PRESENT BUT CANNOT BE CLAIMED 16 3BCW CALL 5 SDSEARCH [SEARCH SYS.DOC 21 3BXG BRN NOSD [BR IF NO ENTRY FOUND TO FLAG SYS ERR 18 3CC6 CALL 5 SEEKFAB [FIND FILE/FABSNB BLOCK 4 3CWQ # 19 3DBB # CHECK THAT NAME,GEN NO. AND RTN PER. CORRESPOND 19 3DW2 # IN HEADER LABEL IN SYS. DOC. AND IN FILE/FABSNB 21 3F*L ADX 1 A1(1) [X1 NOW POINTS TO RETENTION PERIOD 20 3FT= LDX 0 7(3) [GEN NO FROM HEADER IN SYS. DOC 14 3G#W ANDN 0 #7777 [TRUNCATE 17 3GSG LDX 5 A1-2(1) [GEN NO FROM FABSNB 14 3H#6 ANDN 5 #7777 [TRUNCATE 16 3HRQ BXU 5 0,PRONG [BR IF NOT EQUAL 17 3J?B LDX 0 A1-3(1) [REEL NO FROM FABSNB 8 3JR2 ANDN 0 #777 21 3K=L BXU 0 6(3),PRONG [BR IF NOT EQUAL TO REEL NO IN HDR 7 3KQ= LDN 2 3 5 3L9W PARCH1 7 3LPG SMO 2 9 3M96 LDX 0 A1-7(1) 7 3MNQ SMO 2 19 3N8B BXU 0 2(3),PRONG [BRANCH IF PARAMETER WRONG 9 3NN2 BCT 2 PARCH1 15 3P7L # THIS TAPE CAN NOW BE CLAIMED BY THE USER 16 3PM= CALL 5 USERENT [SET UP DIR ENT 8 3Q6W BRN UNCL 8 3QLG CALL 5 UPLSD 7 3R66 READAGAIN 10 3RKQ MHUNT 3,FILE,FRB 8 3S5B CALL 5 NAME 9 3SK2 LDN 2 A1+2(3) 15 3T4L MOVE 1 3 [USER NAME 8 3TJ= SMO FX1 8 3W3W LDX 0 MASK2 16 3WHG ANDS 0 A1+5(3) [REMOVE Q STATUS 18 3X36 CALL 5 XREWR [REWRITE ALTERED RECORD 4 3XGQ UNCL 8 3Y2B SMO FX2 9 3YG2 LDX 0 AWORK4 8 3Y_L BZE 0 UNCL1 7 3_F= READAGAIN 10 3_YW MHUNT 3,FILE,FRB 19 42DG SSCOR A1(3),DEC [DECREASE COUNT OF REQUESTERS 9 42Y6 LDX 4 A1+5(3) 18 43CQ CALL 5 XREWR [REWRITE ALTERED RECORD 5 43XB UNCL1 17 44C2 CALL 5 SYSCLOSE [CLOSE SYS SER AND SYS DOC 10 44DJ ... FSHCODE A,X8NOTINA 4 44G6 ...( 13 44HN ...[ UNLOAD THE TAPE FROM THE HOME MACHINE 9 44K= ... NOTALIEN X8NOTINA 18 44LS ... TRANSBEG FSHNEWID,NEWOWN,7,NOBLOCKS,,ACOMMUNE1,TSUB 8 44NB ... BRN TSUB 5 44PY ...X8NOTINA 4 44RG ...) 5 44T4 ...QK7NEW 9 44WL LDX 0 CPPTR(2) 19 45B= BZE 0 TSUB [BRANCH IF TAPE NOT ALLOCATED 7 45TW LDN 3 0 19 46*G UNLOAD ,3,4,AUT,RET [FREE DECK FROM T IS ACTIVITY 8 46T6 BRN TSUB 5 47#Q NOMORE 11 47SB ...[ MARK TAPE LOADED BY TAPEOPEN 7 48#2 ... LDN 0 1 9 48RL ... STO 0 AWORK1(2) 8 49?= ... BRN TDIR 4 4F5= # 4 4FJW # 21 4G4G # ENTRY NOT FOUND IN SYS.SERIAL SO TAPE CAN BE 'NEWED' IN F 13 4GJ6 # USER IF HIS BUDGET ALLOWS 4 4H3Q # 4 4HHB # 20 4J32 # FIRST CHECK IF TAPE IS LOADED AND ALLOCATE IF POSS. 5 4JGL TAPENEW 10 4JJ* ... FSHCODE A,X4NOTINA 4 4JL4 ...( 20 4JMR ...[ ONLY GO TO THE SLAVE IF WE HAVE TO - SEARCH :SYSTEM.DOCUMENT FIRST 9 4JPG ... CALL 5 SDSEARCH 8 4JR9 ... BRN TDIR 7 4JSY ... REWIND 1 5 4JWM ...X4NOTINA 4 4JYB ...) 17 4K2= CALL 5 SFINDPER [SEE IF TAPE LOADED 7 4KFW FSHSKIP 8 4K_G BNG 3 TDIR 10 4LF6 ... FSHCODE A,THISMACH 4 4LYQ ( 19 4MDB BPZ 3 THISMACH [ J. IF LOADED IN THIS M/C 12 4MY2 SETNCORE 1,2,FSH,FSHAMBLES [ 21 4NCL LDX 0 SCDLINK(1) [ (JUST IN CASE 'B' GOES DOWN WHILE 18 4NX= STO 0 FSHCDLINK(2) [ WE'RE THERE !!!!) 20 4PBW ... TRANSBEG FSHNEWID,NEWA,7,NOBLOCKS,,ACOMMUNE1,TOTHERDOWN,SUP 21 4PWG [ ELSE CHECK IF LOADED IN OTHER M/C 21 4QB6 BRN TINUSE [ TRANSFIN +0 IF IN USE IN OTHER M/C 6 4QTQ TOTHERDOWN 21 4R*B BRN TDIR [ TRANSFIN +1 IF NOT LOADED IN OTHER 21 4RT2 [ M/C - OR IF UNLOADED (NOT ALLOC'D) 5 4S#L THISMACH 4 4SS= ) 9 4T?W JALLOC 3,TINUSE 7 4TRG SETALLOC 3 9 4W?6 STO 3 CPPTR(2) 4 4WQQ TDIR 10 4X=B ... FSHCODE A,X5NOTINA 4 4XQ2 ( 20 4Y9L VFREEW FSH,FSHAMBLES [ NOW SAFE FROM 'B' GOING DOWN 5 4YFD ...X5NOTINA 4 4YP= ) 10 4_8W # CREATE DIRECTORY ENTRY 18 4_NG CALL 5 USERENT [CREATE DIRECTORY ENTRY 8 5286 BRN TDEAL 9 52MQ LDX 3 AWORK2(2) 16 537B SPARANOX 3 [PASS PARAMETER 10 53M2 MHUNT 3,CPB,CUNI 9 546L LDX 4 ANUM(3) 8 54L= ANDN 4 #7777 11 555W OUTPARAM 4,APARA,CPB,CUNI 9 55KG MFREE CPB,CUNI 8 5656 MTINFORM GNEW 17 56JQ # UPDATE THE PERIPHERAL LIST AND :SYSTEM.DOCUMENT 5 574B TSEROP 8 57J2 CALL 5 UPLSD 13 583L # APPEND RECORD TO :SYSTEM.SERIAL 8 58H= LDCT 4 #200 20 592W CALL 5 SAP [APPEND RECORD TO :SYSTEM.SERIAL 5 59GG TDEAL 8 5=26 LDX 2 FX2 14 5=63 ...[ IF OPENED BY TAPEOPEN GO TO UNLOAD TAPE 9 5=9Y ... LDX 0 AWORK1(2) 8 5=*T ... BNZ 0 UNCL1 9 5=FQ LDX 3 CPPTR(2) 19 5=_B BZE 3 TSUB [BRANCH IF TAPE NOT ALLOCATED 16 5?F2 CLALLOC 3 [DE-ALLOCATE DECK 9 5?YL STOZ CPPTR(2) 20 5#D= LONGON #61,7 [WAKE UP ACTS. WAITING FOR TAPE 8 5#XW LONGON #61 4 5*CG TSUB 10 5*FP ... FSHCODE B,X3NOTINB 4 5*HY ...( 7 5*L7 ...TRFN2 LDN 4 0 7 5*NB ...TRFIN TRANSFIN 4 5 5*QK ...X3NOTINB 4 5*SS ...) 9 5*X6 CALL 5 SEEKFAB 7 5BBQ FREECORE 1 15 5BWB LDX 3 AWORK2(2) [PARAM. NO. 20 5CB2 BRN NEXTP [BR BACK TO DEAL WITH NEXT ENTRY 11 5CTL # END OF COMMAND 4 5D*= TEND 17 5DSW CALL 5 SYSCLOSE [CLOSE SYS SER AND SYS DOC 10 5F#G MHUNT 1,FLIB,FMES 8 5FS6 LDX 0 A1(1) 9 5G?Q STO 0 CPPTR(2) 7 5GRB FREECORE 1 10 5GT_ ... FSHCODE A,X10NOTINA 4 5GYJ ...( 9 5H37 ... TRANSFIN ,,ALIEN 6 5H5Q ...X10NOTINA 4 5H8* ...) 6 5H?2 ENDCOM 4 5HQL # 10 5J== # ERROR PATHS 4 5JPW # 5 5K9G TINUSE 10 5KP6 ... FSHCODE A,X7NOTINA 4 5L8Q ( 20 5LNB VFREEW FSH,FSHAMBLES [ NOW SAFE FROM 'B' GOING DOWN 5 5LY8 ...X7NOTINA 4 5M82 ) 8 5MML SMO FX1 15 5N7= LDX 4 ZTINUSE [TAPE IN USE 17 5NLW CALL 5 ZERROR [OUTPUT ERROR MESSAGE 8 5P6G BRN TSUB 5 5PL6 TORPNOK 9 5Q5Q LDX 4 ZNOTAV(1) 10 5QKB TESTREP NOTAV,TAPREP 9 5R52 LDX 4 ZEROWN(1) 5 5RJL TAPREP 9 5S4= CALL 5 ZERROR 13 5S9D ...[ HAVE TO UPDATE :SYSTEM.SERIAL ENTRY 9 5SBL ...TPRP2 CALL 5 OPENFLS 9 5SHS ... CALL 5 SSEARCH 8 5SP2 ... BRN UNCL1 8 5SW8 ... BRN UNCL 4 5T3G NOSD 10 5TH6 GEOERR 1,NOSYSDOC 5 5W2Q PRONG 8 5WGB SMO FX1 15 5X22 LDX 4 ZPARWRNG [NAME WRONG 9 5XFL CALL 5 ZERROR 8 5X_= BRN UNCL 13 5YDW # SPACEMT BUDGET OVERDRAWN OR ZERO 5 5YYG ODRAWN 9 5_D6 ACROSS NEWA,1 7 5_XQ # BREAKIN 5 62CB ZBRKIN 10 62FK ... FSHCODE B,X5NOTINB 4 62HS ...( 7 62L3 ... LDN 4 1 8 62N= ... BRN TRFIN 5 62QF ...X5NOTINB 4 62SN ...) 9 62X2 ACROSS NEWA,2 10 62Y? ... FSHCODE B,X2NOTINB 4 62_J ...( 13 632T ...[ TERMINATE IN THE SLAVE AFTER BREAKIN 5 6346 ...YBRKIN 10 635C ... MHUNT 1,FLIB,FMES 8 636N ... LDX 0 A1(1) 9 637_ ... STO 0 CPPTR(2) 7 639= ... FREECORE 1 7 63=H ... COMBRKIN 5 63?S ...X2NOTINB 4 63*5 ...) 4 63BL # 8 63W= # SUBROUTINES 4 64*W # 13 64TG # APPEND RECORD TO :SYSTEM.SERIAL 4 65*6 SAP 8 65SQ SBX 5 FX1 7 66#B LDX 6 5 10 66S2 SETNCORE 6,3,FILE,FWB 7 67?L LDN 0 6 16 67R= STO 0 A1(3) [RECORD HEADER 13 68=W STO 7 A1+1(3) [TSN 15 68QG CALL 5 NAME [USER NAME 9 69=6 LDN 2 A1+2(3) 7 69PQ MOVE 1 3 9 6=9B STOZ A1+5(3) 8 6=P2 LDX 2 FX2 8 6?8L LDX 1 FX2 5 6?N= SAP2A 9 6#7W LDX 1 FPTR(1) 9 6#MG LDX 0 ATYPE(1) 10 6*76 BXGE 0 CACT,SAP2D 8 6*LQ SRL 0 12 9 6B6B SBN 0 FLIB+FSPD 8 6BL2 BNZ 0 SAP2A 9 6C5L LDX 0 ATYPE(1) 8 6CK= ANDN 0 #7777 11 6D4W BXU 0 AWORK2(2),SAP2A 8 6DJG LDX 0 A1(1) 10 6F46 STO 0 ACOMMUNE1(2) 6 6FHQ MTCHAR 7 6FMM ...#UNS JMODGCR 4 6FRJ ...#SKI 4 6FXF ...( 10 6G3B LDX 2 ACOMMUNE1(2) 19 6GH2 BNG 2 SAP2D [JUMP IF NO TRACK PROPERTIES 7 6H2L LDX 1 2 7 6HG= ANDN 2 3 8 6H_W ERN 1 #200 16 6JFG BZE 1 SAP2D [JUMP IF TRACK9 7 6J_6 SRL 1 5 7 6KDQ ADX 2 1 18 6KYB ... BRN SAP2B [FSPD USED TO UPDATE PROPS 4 6L63 ...) 7 6L?N ...#UNS JMODGCR 4 6LF* ...( 10 6LM2 ... LDX 0 ACOMMUNE1(2) 8 6LSM ... BNG 0 SAP2D 7 6M2# ... LDX 1 0 9 6M7_ ... ERN 1 HWPTRACK9 8 6M*L ... BZE 1 SAP2D 8 6MH? ... BRN SAP2F 4 6MNY ...) 5 6MWW SAP2D 8 6NBG LDX 2 FX2 9 6NW6 LDX 0 CPPTR(2) 17 6P*Q BZE 0 SAP2C [J TAPE NOT LOADED 7 6PC# ...#UNS JMODGCR 4 6PDW ...( 8 6PGD ... LPROP ,0 5 6PJ2 ...SAP2F 8 6PKJ ... MTHWSER 0,2 4 6PM6 ...) 7 6PNN ...#UNS JMODGCR 4 6PQ= ...#SKI 4 6PRS ...( 20 6PTB LPROP ,5 [TAPE LOADED SO PROPERTIES CAN BE 15 6Q*2 LDN 2 4 [DETERMINED 7 6QSL LDX 0 5 8 6R#= ANDN 0 #200 8 6RRW BZE 0 SAP2B 7 6S?G LDX 2 5 7 6SR6 ANDN 2 3 4 6T2Y ...) 5 6T=Q SAP2B 7 6TCY ...#UNS JMODGCR 4 6TK6 ...#SKI 8 6TQB SLL 2 13 10 6W28 ... MHUNT 3,FILE,FWB 9 6W=2 ORS 2 A1+5(3) 5 6WPL SAP2C 10 6X9= #SKI K6NEW>199-199 4 6XNW ( 11 6Y8G TRACE A1+1(3),NEWSAP1 11 6YN6 TRACE A1+2(3),NEWSAP2 11 6_7Q TRACE A1+5(3),NEWSAP5 4 6_MB ) 17 7272 CALL 5 SSEARCH [LOCATE ENTRY IN SS 8 72LL BRN SAP2E 10 736= GEOERR 1,REC PRES 5 73KW SAP2E 17 745G INSERT [PUT ENTRY IN SERIAL 12 74K6 TESTREP OK,SAP3,FNEARLY,SAP3 10 754Q GEOERR 1,FILEFULL 4 75JB SAP3 9 7642 MFREE FILE,FWB 8 76HL ADX 6 FX1 7 773= EXIT 6 0 5 77GW SSEARCH 4 782G # 16 78G6 # SUBROUTINE TO LOCATE ENTRIAS IN :SYSTEM.SERIAL 19 78_Q # X5 = LINK ; X7 = TSN ; EXIT +0 IF NOT FOUND ELSE EXIT +1 4 79FB # 8 79_2 SBX 5 FX1 10 7=DL SSEARCH NOTSNINSER,7 7 7=Y= ADN 5 1 6 7?CW NOTSNINSER 8 7?XG ADX 5 FX1 7 7#C6 EXIT 5 0 4 7#WQ # 14 7*BB # SUBROUTINE TO SEE IF THE TAPE IS LOADED 17 7*W2 # X5 = LINK ; X7 = TSN ; X3 REQUIRED => DEVICE LIST 4 7B*L # 5 7BT= SFINDPER 10 7C#W FINDPEREC 3,APTSER,7 7 7CSG EXIT 5 0 4 7D#6 # 16 7DRQ # SUBROUTINE TO LOCATE ENTRY IN :SYSTEM.DOCUMENT 18 7F?B # X5 = LINK ; X7 = TSN ; EXIT +0 IF NOT FOUND ELSE +1 4 7FR2 # 5 7G=L SDSEARCH 8 7GQ= SBX 5 FX1 8 7GTB ... FSHCODE AORB 4 7GYG ...( 12 7H3L ...[ IF SHFS SEARCH ON BOTH MACHINES 12 7H6Q ... SDSEARCH NONTRY2,TSN,7,1,BOTH 4 7H9W ...) 7 7H*2 ... FSHSKIP 4 7HD6 ...( 11 7HH= ... SDSEARCH NONTRY2,TSN,7,1 4 7HLB ...) 18 7HPG ADN 5 1 [ ADJUST LINK IF FOUND 5 7J96 NONTRY 8 7JNQ ADX 5 FX1 15 7K8B EXIT 5 0 [ ELSE EXIT 5 7K#? ...NONTRY2 7 7KD8 ... REWIND 1 9 7KJ5 ... BRN NONTRY 4 7KN2 # 15 7L7L # SUBROUTINE TO REWRITE AND FREE A FILE/FRB 13 7LM= # X5 = LINK ; EXPECTS X3 => FILE/FRB 4 7M6W # 5 7MLG XREWR 8 7N66 SBX 5 FX1 10 7NKQ NAMETOP 3,FILE,FWB 7 7P5B REWRITE 9 7PK2 MFREE FILE,FWB 8 7Q4L ADX 5 FX1 7 7QJ= EXIT 5 0 4 7R3W # 4 7RHG # 18 7S36 # SUBROUTINE TO SET POOL/WORKTAPE BIT IN PERIPHERAL LIST 15 7SGQ # AND UNSET INSECURE BIT IN :SYSTEM.DOCUMENT 7 7T2B # X5=LINK 7 7TG2 # X7 = TSN 5 7T_L UPLSD 8 7WF= SBX 5 FX1 16 7WYW LDX 4 5 [PRESERVE LINK 9 7YXB CALL 5 SDSEARCH 8 7_C2 ... BRN SAP5 8 7_WL READAGAIN 1 10 82B= MHUNT 3,FILE,FRB 9 82TW LDX 0 MASK3(1) 9 83*G ANDS 0 A1+21(3) 10 83T6 NAMETOP 3,FILE,FWB 7 84#Q REWRITE 1 9 84SB MFREE FILE,FWB 5 85#2 SAP4A 7 85RL REWIND 1 4 86?= SAP5 16 86QW LDX 5 4 [RESTORE LINK 8 87=G ADX 5 FX1 7 87Q6 EXIT 5 0 19 889Q # SUBROUTINE TO FIND THE FILE/FABSNB BLOCK FOR THE TSN IN X7 14 88PB # X5 IS THE LINK AND X2,3,4,6 ARE UNUSED 5 8992 SEEKFAB 8 89NL LDX 1 FX2 5 8=8= SEEK1 9 8=MW LDX 1 FPTR(1) 9 8?7G LDX 0 ATYPE(1) 10 8?M6 BXL 0 CACT,SEEK2 10 8#6Q GEOERR 1,FAB LOST 5 8#LB SEEK2 8 8*62 SRL 0 12 10 8*KL SBN 0 FILE+FABSNB 8 8B5= BNZ 0 SEEK1 8 8BJW SMO A1(1) 10 8C4G BXU 7 A1+1(1),SEEK1 10 8CJ6 #SKI K6NEW>299-299 9 8D3Q TRACE 7,NEWSEEK 7 8DHB EXIT 5 0 14 8F32 # SUBROUTINE TO OUTPUT AN ERROR MESSAGE 15 8FGL # IDENTIFIER IS IN X4 AND X5 HOLDS THE LINK 5 8G2= ZERROR 8 8GFW SBX 5 FX1 8 8G_G SMO FX2 9 8HF6 LDX 3 AWORK2 21 8HYQ SPARANOX 3 [PASS PARAMETER WHOSE NO. IS IN X3 7 8JDB ERRORX 4 9 8JY2 MFREE CPB,CUNI 8 8KCL ADX 5 FX1 7 8KX= EXIT 5 0 4 8LBW # 21 8LWG # SUBROUTINE TO OPEN SYSTEM SERIAL AND SYSTEM DOCUMENT 4 8MB6 # 5 8MTQ OPENFLS 8 8N*B SBX 5 FX1 13 8NT2 OPENSYS ZBRKIN,DOCUMENT,GENERAL 7 8P#L LDN 0 1 9 8PS= ADS 0 AWORK3(2) 10 8Q?W ... TESTREPN OK,OPENSER0 12 8RQQ OPENSYS ZBRKIN,SERIAL,GENERAL 7 8S=B LDN 0 1 9 8SQ2 ADS 0 AWORK3(2) 10 8T9L TESTREP OK,OPENSER1 5 8TFD ...OPENSER0 9 8TP= GEOERR 1,NEWREP 5 8W8W OPENSER1 8 8WNG ADX 5 FX1 7 8X86 EXIT 5 0 4 8XMQ # 16 8Y7B # SUBROUTINE TO CLOSE ANY OPEN FILES 17 8YM2 # X5 HOLDS THE LINK. ON EXIT X1=FX1, X2=FX2 5 8_6L SYSCLOSE 8 8_L= SBX 5 FX1 8 925W SCL1 SMO FX2 9 92KG LDX 0 AWORK3 8 9356 BZE 0 SCLZ 7 93JQ CLOSETOP 7 944B LDN 0 1 9 94J2 SBS 0 AWORK3(2) 8 953L BRN SCL1 8 95H= SCLZ ADX 5 FX1 7 962W EXIT 5 0 4 96GG # 17 9726 # SUBROUTINE TO UPDATE OR REUPDATE BUDGET 4 97FQ # 5 97_B UPBUDG 7 98F2 LDN 4 1 9 98YL BRN UPBUD1 5 99D= REBUDG 7 99XW NGN 4 1 5 9=CG UPBUD1 8 9=X6 SBX 5 FX1 19 9?BQ SETNCORE 4,2,FILE,FABSNB [SET UP FABSNB IN ORDER TO 19 9?WB HUNT2 1,FILE,FABSNB,2 [GET THE APPROPRIATE DICT ENT 7 9#B2 LDN 0 4 8 9#TL STO 0 A1(2) 8 9**= LDX 0 A1(1) 8 9*SW SBN 0 10 9 9B#G BZE 0 UPBUD1A 8 9BS6 ADX 1 A1(1) 8 9C?Q SBN 1 12 5 9CRB UPBUD1A 8 9D?2 ADN 1 A1+1 8 9DQL ADN 2 A1+1 7 9F== MOVE 1 3 15 9FPW OPENBUDO UPBUD6 [GET DICT ENT 5 9G9G UPBUD2 10 9GP6 BUDGINCR GSPACEMT,4 9 9H8Q TESTREP OK,UPBUD4 10 9HNB TESTREP NOMORE,UPBUD4 10 9J82 TESTREP ODRAWN,UPBUD3 11 9JML TESTREP INCREASE,UPBUD3 9 9K7= GEOERR 1,NEWREP 5 9KLW UPBUD3 9 9L6G BNG 4 UPBUD4 7 9LL6 NGX 4 4 9 9M5Q BRN UPBUD2 5 9MKB UPBUD4 7 9N52 ADX 5 4 7 9NJL CLOSBUDG 5 9P4= UPBUD5 8 9PHW ADX 5 FX1 7 9Q3G EXIT 5 1 5 9QH6 UPBUD6 10 9R2Q GEOERR 1,NOUSERNE 20 9RGB # SUBROUTINE TO SET UP A DIRECTORY ENTRY AND UPDATE THE BUDGETS 5 9S22 USERENT 8 9SFL SBX 5 FX1 7 9S_= LDX 6 5 18 9TDW CALL 5 SEEKFAB [FIND FILE/FABSNB BLOCK 7 9TYG LDN 0 1 9 9WD6 ORS 0 ATYPE(1) 9 9WXQ LDX 3 BPTR(1) 5 9XCB USENTA1 20 9XX2 LDX 0 ATYPE(3) [LOCATE THE ADJUNCTS BLOCK WHICH 17 9YBL BXGE 0 CACT,USENTNA [GOES WITH OUR FABSNB 20 9YW= SRL 0 12 [I.E. THE 1ST ADJUNCT FOUND IN A 20 9_*W SBN 0 FILE+ADJUNCTS [SEARCH TOWARDS THE CPAT BETWEEN 20 9_TG BZE 0 USENTA2 [OUR FABSNB AND NEXT ONE OR CPAT 11 =2*6 ADN 0 ADJUNCTS-FABSNB 19 =2SQ BZE 0 USENTNA [ERROR IF FABSNB FOUND FIRST 9 =3#B LDX 3 BPTR(3) 9 =3S2 BRN USENTA1 5 =4?L USENTA2 8 =4R= LDX 2 FX2 19 =5=W CHAIN 1,2 [RECHAIN AFTER ACTIVITY BLOCK 8 =5QG CHAIN 3,2 16 =6=6 CALL 5 UPBUDG [UPDATE BUDGETS 9 =6PQ BRN ODRAWN 9 =79B BRN ZBRKIN 9 =7P2 LDX 5 AWORK2(2) 5 =88L USENT0 10 =8N= HUNT2OPT 2,AONBS,GROT 9 =97W BNG 2 USENT0A 9 =9MG LDX 0 ATYPE(2) 8 ==76 ANDN 0 #7777 9 ==LQ BXU 0 5,USENT0 10 =?6B NAME 2,FILE,FTRAP 9 =?L2 BRN USENT0 5 =#5L USENT0A 8 =#K= SMO FX2 9 =*4W LDX 3 AWORK2 7 =*JG SPARANOX 3 7 =B46 #UNSET FTS1 5 =BHQ #SKIP 18 =C3B USEROPEN USENT2,CREATE,REPLY [SET UP DIRECTORY ENTRY 7 =CH2 #UNSET FTS1 20 =D2L USEROPEN USENT2,CREATE,REPLY,FROZEN [DET UP DIRECTORY ENTRY 9 =DG= REPERR USENT2A 5 =D_W USENT1 9 =FFG CALL 5 REBUDG 9 =F_6 BRN USENT3 9 =GDQ BRN USENT1 5 =GYB USENT2 9 =HD2 CALL 5 REBUDG 9 =HXL BRN ZBRKIN 9 =JC= BRN USENT2 5 =JWW USENT2A 7 =KBG #UNS ILOGACC 4 =KW6 ( 16 =L*Q ...[ THIS CODE SHOULD NOW ONLY BE OBEYED IN THE MASTER 18 =PR6 OPENDIR (GEOERR),READ,QUERY [OPEN DIR FOR LOGACCESS 10 =R=2 TESTREP OK,USENT2B 9 =RPL GEOERR 1,NEWLOG 5 =S9= USENT2B 8 =SNW LOGACCESS 8 7 =T8G CLOSETOP 4 =TN6 ) 7 =W7Q ADN 6 1 5 =WMB USENT3 10 =X72 MFREEW FILE,ADJUNCTS 9 =XLL MFREE CPB,CUNI 8 =Y6= ADX 6 FX1 7 =YKW EXIT 6 0 5 =_5G USENTNA 10 =_K6 GEOERR 1,NEWNOADJ 17 ?24Q # SUBROUTINE TO SET X1= ADDRESS OF DIRECTORY NAME 4 ?2JB NAME 7 ?342 LDX 2 5 9 ?3HL CALL 5 SEEKFAB 8 ?43= LDX 0 A1(1) 8 ?4GW SBN 0 10 8 ?52G BZE 0 NAME1 8 ?5G6 ADX 1 A1(1) 8 ?5_Q SBN 1 12 5 ?6FB NAME1 8 ?6_2 ADN 1 A1+1 7 ?7DL EXIT 2 0 5 ?7Y= STACH 8 ?8CW LDX 1 FX1 9 ?8XG LDX 4 ZERAL(1) 8 ?9C6 LDX 0 5(3) 7 ?9WQ SLL 0 6 16 ?=BB BPZ 0 STACHERR [NOT QUERY STATUS 9 ?=W2 LDX 4 ZEROWN(1) 8 ??*L LDX 0 2(3) 15 ??T= BNZ 0 STACHERR [OWNED TAPE 10 ?##W LDX 4 ZOPWRONG(1) 8 ?#SG LDX 0 5(3) 7 ?*#6 SLL 0 5 16 ?*RQ BNG 0 STACHERR [OPERATOR WRONGED 21 ?B?B EXIT 5 1 [OK - QUERY STATUS THOUGHT TO BE POOL 5 ?BR2 STACHERR 7 ?C=L LDX 6 5 8 ?CQ= SBX 6 FX1 9 ?D9W CALL 5 ZERROR 8 ?DPG ADX 6 FX1 7 ?F96 EXIT 6 0 4 ?FNQ # 19 ?G8B # ENTRY POINT TO CHECK IF TAPE LOADED IN 'OTHER MACHINE' FOR 14 ?GN2 # FOR SHARED FILESTORE ONLY. 4 ?H7L # 5 ?JLG QK2NEW 13 ?K66 ... [ MOVED TO K7NEWA FOR REASONS OF SPACE 8 ?KKQ ... FSHCODE AORB 4 ?L5B ...( 4 ?QG2 # 13 ?Q_L # ENTRY FOR UNANTICIPATED CLOSEDOWN 4 ?RF= # 5 ?RYW QK3NEW 21 ?SDG FSHACCWK [ RECOVER THE DUMPED 'ACC' + 'AWORK' 21 ?SY6 BRN TDIR [ AND CARRY ON LIKE NOTHING HAPPENED 4 ?TCQ # 4 ?TXB ) 11 ?WC2 MENDAREA 1023-0?,K99NEW 4 ?WWL #END 6 ____ ...372512560013