(George Source)
Macros used: ADDINMODE, BXL, BXU, CAPCA, CHECKEXT, CHEKPRIV, DFJUMPS, DFLOAD, DOWN, FREECORE, GEOERR, GETWORD, GSCAN, HLSXONCH, HUNT, ILLEGAL, LGEOG, MENDAREA, MFREE, MHUNT, MONOUT, MTHWSPD, OUTMOVE, OUTPACK, OUTPACKB, OUTPAR, OUTPARB, PROGBRKIN, PUTPERENT, RUNPROG, SEGENTRY, SETNCORE, SETUPMODE, SKIP, STEPBACK, SWITRACE, TESTREP, TESTREPNOT, USEROPEX, VFREE, WORDFIN
22FL #LIS K0OLMTC 22^= #SEG OLMTC65 [N.R.BOULT 23DW 8HOLMTC 23YG SEGENTRY K1OLMTC,QK1OLMTC 24D6 SEGENTRY K2OLMTC,QK2OLMTC 24XQ SEGENTRY K3OLMTC,QK3OLMTC 25CB [LIST OF CONSTANTS 25X2 OWNMON #34000 [OWN MONITORING(OPENFILE) BITS 26BL MASKMON #76000 [MASK FOR OWN MONITORING BITS 26W= QMT #55640000 27*W QTEN 100 27TG REELMAX +512 28*6 REMPROP #77700077 28JY ...PRIVFR 8HFREEZE 28SQ [ 29#B [ENTRY POINT FOR PERIS MODE #100,#200,AND #300 29S2 [ENTRY IS FROM PERIXCOD, WITH X4=TYPE(B0-8)/UNIT NO(B9-23), 2=?L [ 2=R= QK1OLMTC 2?=W ANDX 4 REMPROP(1) 2?QG [SET UP CPAR/GPERCON BLOCK & INSERT TYPE,UNIT NR & REQUIREMENTS FOR WP R 2#=6 SETNCORE 3,3,CPAR,GPERCON 2#PQ STO 4 A1(3) [TYPE/UNIT NO. 2*9B STOZ A1+1(3) [NO WPR CONDITIONS UNLESS PROVED OTHE 2*P2 STOZ A1+2(3) 2B8L LDX 0 EVENT4(2) [1ST WORD OF CONTROL AREA 2BN= SETUPMODE 7,,READ 2C7W ANDN 0 #777 2CMG SRL 0 6 [MODE/#100 2D76 SMO 0 2DLQ SWIT BRN SWIT [SWITCH ON MODE TO INSERT WP RING DET 2F6B BRN Q1 [MODE #100,WP RING NOT SPECIFIED 2FL2 BRN Q2 [MODE #200,WP RING SPECIFIED ABSENT 2G5L BRN Q3 [MODE #300,WP RING SPECIFIED PRESENT 2GK= Q3 2H4W SETUPMODE 7,,WRITE 2HJG LDN 0 1 2J46 STO 0 A1+1(3) [SET WP RING BIT 2JHQ Q2 LDN 0 1 2K3B STO 0 A1+2(3) [SET WPR SPECIFIED BIT 2KH2 [SET UP FILE/FABSNB AND MOVE PERI CONTROL AREA INTO IT. 2L2L Q1 2LG= SETNCORE 11,1,FILE,FABSNB 2L^W LDN 6 9 [LENGTH OF AREA 2MFG CHECKEXT EVENT2(2),6,RERR2B,,W,Q5,HLOCK1 2M^6 [CONTROL AREA IN CORE 2NDQ Q5 HUNT 1,FILE,FABSNB 2NYB LDN 1 A1+4(1) 2PD2 LDN 3 2 2PXL ADX 3 EVENT2(2) [ADDRESS OF WORD 2 OF CONTROL AREA 2QC= LDN 6 6 2QWW OUTMOVE FX2,3,1,6 2RBG ... LDX 5 EVENT4(2) [X5 => FIRST WORD OF PERI CONTROL ARE 2RW6 ... LDX 6 EVENT2(2) [X6 -> PERI CONTROL AREA 2S*Q ... ADN 6 2 [X6 -> REPLY WORD + 1 2STB [MAKE OBJ PROG SWAPPABLE,HAVING EXTRACTED REQUIRED DATA. 2T*2 CAPCA FILE,FABSNB,CPAR,GPERCON 2TD6 ...#UNS JWPHASE4 2TH= ...( 2TLB ... HLSXONCH PBRKIN,4,QHLSMODE [ASK HLS IF JOB CAN HAVE ANUVER TAPE 2TPG ...) 2TSL [REARRANGE DETAILS IN FABSNB BLOCK 2W#= HUNT 3,FILE,FABSNB [LOCATE BLOCK 2WRW LDN 0 10 2X?G STO 0 A1(3) [PUT IN RECORD HEADER FOR 10 WD RECOR 2XR6 LDN 0 CPREFIX(2) 2Y=Q LDN 1 A1+1(3) 2YQB MOVE 0 3 [MOVE IN CURRENT USER NAME 2^=2 LDX 0 A1+9(3) 2^PL STO 0 A1+10(3) [MOVE UP RETENTION PERIOD 329= STOZ A1+9(3) [SET LANGUAGE WORD ZERO 32NW LDX 0 A1+7(3) [REEL 338G SMO FX1 33N6 TXL 0 REELMAX 347Q BCC NERIL [BRANCH IF REEL NO OUT OF RANGE 34MB BNZ 0 ZER 3572 LDCT 0 #100 35LL STO 0 A1+7(3) [ZERO MEANT BIT 366= ZER 36KW LDX 0 A1+8(3) [GENERATION 375G BZE 0 QGIA [ANY GENERATION 37K6 ANDN 0 #7777 [TRUNCATE 384Q BNZ 0 QGI [NOT NOW ZERO 38JB LDCT 0 #100 [ZERO SPECIFIED BIT 3942 QGI STO 0 A1+8(3) [RESET 39HL QGIA LDN 0 #1001 [SET LOCAL NAME ONLY AND 3=3= ORS 0 ATYPE(3) [MT BITS FOR USEROPEX 3=GW [GO TO GET TAPE 3?2G SETUPMODE ,3,HDDRLAB [LEAVE FLIB/GOLMT BLOCK 3?G6 LDX 1 FX1 3?^Q LDX 0 5 3#FB ANDX 0 MASKMON(1) 3#^2 TXU 0 OWNMON(1) 3*DL BCS QON1 [NOT OWN MONITORING 3*Y= ADDINMODE ,3,TAPEUP [DONT WAIT IF TAPE NOT LOADED 3BCW QON1 3BG5 ...#UNSET FTS1 3BJ# ...( 3BLH ... CHEKPRIV 0,PRIVFR,NOFP [CHECK IF PROPER USER HAS FREEZE PVLG 3BNQ ... ADDINMODE ,3,FROZEN [USER CAN OPEN TAPE IF FROZEN 3BQ^ ...NOFP 3BT8 ...) 3BXG USEROPEX PBRKIN,7,3 3CC6 [TEST IF TAPE OBTAINED AND IF SO CONNECT TO OBJECT PROGRAM 3CWQ TESTREPNOT OK,Q8 [J IF NO TAPE 3DBB MFREE CPAR,GPERCON [RELEASE DATA BLOCKS 3DW2 MFREE FILE,FABSNB 3F*L VFREE FILE,ENT [THIS BLOCK MAY BE SET UP BY T.R.H. 3FT= GSCAN 4,OLMCPER [TRACE X4 MODES #100,#200,#300, 3G#W LDX 3 CPPTR(2) 3GJN ... LDX 7 6 [PUTPERENT CORRUPTS X6 3GSG PUTPERENT 4,3 3H4# ... LDX 6 7 [REINSTATE X6 3H#6 STOZ CPPTR(2) 3HRQ [SET REPLY AND RESTART OBJECT PROGRAM 3J?B OUTPAR TIMENOW 3JR2 LGEOG 3,5 3K=L SJ1 3KQ= OUTPACK 5,1,GEOPER,SJ1 3L9W SJ2 3LPG OUTPACKB 4,1,PERINAME,SJ2 3M96 DFLOAD 3,TSN,5 3MNQ SJ2A 3N8B OUTPACKB 5,1,TSN,SJ2A 3NN2 SJ3 3P7L MHUNT 3,FLIB,GOLMT 3PM= OUTPACKB A1+4(3),3,LOCNAME,SJ3 3Q6W SJ4 3QLG MHUNT 3,FLIB,GOLMT 3R66 OUTPACKB A1+8(3),1,GENNUM,SJ4 3RKQ SJ5 3S5B MHUNT 3,FLIB,GOLMT 3SK2 OUTPACKB A1+7(3),1,REELNUM,SJ5 3T4L OUTPARB SKIP 3TJ= MONOUT JPER 3TRC ... LDN 4 8 [NUMBER OF WORDS TO CHECK AND MOVE 3W2J ... SBN 6 1 [X6 -> REPLY WORD 3W9P ... LDN 7 0 [X7 USED IF CONTROL AREA OVER PAGE BO 3WDW ...SJLOOP1 [LOOP IF TWO GETWORDS NECESSARY 3WN3 ... GETWORD 6,3,WRITE,5,4 [GET CORE IMAGE 3WX8 ... TESTREPN OK,NERR2 [GEOERR 3X6* ... MHUNT 2,FLIB,GOLMT [CONTAINS REPLY DETAILS 3X*G ... SMO 7 [ 3XJM ... LDN 2 A1+3(2) [X2 -> FIRST WORD TO BE MOVED 3XRS ... BXL 5 4,SJLOOP2 [J IF ANOTHER GETWORD NECESSARY 3Y2^ ... LDX 5 4 [X5 => NUMBER OF WORDS TO MOVE 3Y=6 ...SJLOOP3 [ 3YF? ... SMO 5 [X5 => NUMBER OF WORDS TO MOVE 3YND ... MOVE 2 0 [UPDATE CONTROL AREA 3YXK ... BXU 4 5,SJLOOP1 [J IF ANOTHER GETWORD IS NECESSARY 3^6Q ... MFREE FLIB,GOLMT [NO LONGER REQUIRED 3^*X ... WORDFIN [TERMINATE GETWORD SEQUENCE 3^K4 ... RUNPROG [RERUN PROGRAM 3^S9 ...SJLOOP2 [ 423B ... SBX 4 5 [X4 => REMAINING WORDS FOR NEXT GETWO 42=H ... LDX 7 5 [X7 => NUMBER OF WORDS MOVED THIS TIM 42FN ... ADX 6 5 [UPDATE CONTROL AREA POINTER 42NT ... BRN SJLOOP3 [DO MOVE AND SECOND GETWORD 42Y6 [PREPARTION FOR SETTING REPLY IN OWN MONITORING CAS[ 43CQ Q7 43XB LDCT 4 #400 [REPLY 44C2 BRN SETIN [J TO INSERT REPLY 44WL PBRKIN 45B= STEPBACK 45TW PROGBRKIN [RE-ENTER COMMAND PROCESSOR 45YF ...#UNS JWPHASE4 4634 ...( 465M ...QHLSMODE 468= ... MONOUT ERHLSMODE [HLS HAS FORBID ACQUISITION OF TAPE 46=T ...) 46*G Q8 VFREE FILE,ENT [RELEASE DATA BLOCKS 46T6 MFREE FILE,FABSNB 47#Q MFREE CPAR,GPERCON 47SB ANDX 5 MASKMON(1) [MONITORING BITS 48#2 TXU 5 OWNMON(1) [TEST IF OWN MONITORING 48RL BCC Q7 [YES-J TO SET SIGN BIT OF REPLY WORD 49?= QI 49QW ... LDCT 5 5 4==G ... ANDX 4 BSP16 4=Q6 ... ADX 5 4 4?9Q ... OUTPACK 5,1,PERINAME,QI 4J32 STEPBACK [STEPBACK OBJECT PROGRAM 4JGL ILLEGAL PERFAIL 4K2= [ENTRY POINT FOR OPEN MODE #500 (RENAME) PERIS 4KFW [X4,5 HOLD A COPY OF THE PRB ENTRY 4K^G QK2OLMTC 4LF6 #SKI K6OLMT>99-99 4LYQ ( 4MDB SWITRACE 4,OLTCPRB1 4MY2 SWITRACE 5,OLTCPRB2 4NCL ) 4NX= DFJUMPS 5,NONS,NERO [J/MP IF NON STANDARD TAPE 4PBW [NOW CHECK RESERVATIONS OF CONTROL AREA :EXEC2 OF PCA CONTAINS PROGRAM 4PWG [ADDRESS OF CONTROL AREA 4QB6 SETNCORE 7,1,AONBS,GREN 4QTQ LDN 1 9 4R*B CHECKEXT EVENT2(2),1,RERR2A,,W,P3,HLOCK1 4RT2 P3 MHUNT 1,AONBS,GREN 4S#L [MOVE OUT WORDS OF CONTROL AREA REQUIRED IN THE RENAMING OF THE TAPE. 4SS= LDN 1 A1+1(1) 4T?W LDX 6 EVENT2(2) 4TRG ADN 6 2 [ADD. NAME IN CA. (USED AT SETIN) 4W?6 LDN 3 6 4WQQ OUTMOVE FX2,6,1,3 4X=B # CHECK VALIDITY OF NEW TAPE NAME 4XQ2 MHUNT 3,AONBS,GREN [FIND NAME BLOCK 4Y9L LDCH 0 A1+1(3) 4YP= SBN 0 #41 4^8W BNG 0 NERRR [ERROR < A 4^NG SBN 0 #32 5286 BPZ 0 NERRR [ERROR > Z 52MQ LDN 1 11 [COUNT OF 11 537B NMCH1 BCHX 3 £ [STEP POINTER 53M2 LDCH 0 A1+1(3) 546L SBN 0 #41 54L= BPZ 0 NMCH2 [J >= A 555W ADN 0 23 55KG BNG 0 NMCH3 [OK IF DIGIT 5656 SBN 0 6 56JQ BZE 0 NMCH3 [OK IF SPACE 574B SBN 0 #15 57J2 BZE 0 NMCH3 [OK IF HYPHEN 583L BRN NERRR [ELSE ERROR 58H= NMCH2 SBN 0 #32 592W BPZ 0 NERRR [ERROR > Z 59GG NMCH3 BCT 1 NMCH1 [IF CHECK NOT FINISHED,BACK FOR NEXT 5=26 BCHX 3 £ 5=FQ LDX 0 A1+1(3) 5=^B SMO FX1 5?F2 TXL 0 REELMAX 5?YL BCC NERRR 5#D= [CHANGE INTO COMMAND ACTIVITY,RECHAINING DATA BLOCK AND LEAVING THE 5#XW [OBJECT PROGRAM SWAPPABLE WHILE RENAMING IS DONE 5*CG LDX 7 EVENT4(2) [USED AT LABEL P2 5*X6 CAPCA AONBS,GREN 5BBQ STO 5 CPPTR(2) 5BWB STO 4 ACOMMUNE1(2) 5CB2 STOZ ACOMMUNE2(2) 5CTL STOZ ACOMMUNE3(2) 5D*= GSCAN 4,OLCRMT [TRACE X4- MODE #400 5DSW DOWN RENAMEMT,1 [GO TO RENAME TAPE 5F#G BRN NEREL [NO WPR,ILLEGAL 5FS6 TESTREPN OK,P2 5G?Q MHUNT 1,AONBS,GREN 5GRB LDX 4 A1(1) 5H?2 FREECORE 1 5HQL [FILL IN REPLY WORD OF CONTROL AREA 5J== SETIN 5JPW SBN 6 1 [ADDRESS OF REPLY WORD 5K9G GETWORD 6,3,WRITE 5KP6 TESTREPNOT OK,NERR2 5L8Q STO 4 0(3) 5LNB WORDFIN [RESET OBJ PROG 5M82 RUNPROG 5MML [ 5N7= [DEAL WITH FAILURE TO RENAME CASE 5NLW P2 5P6G MFREE AONBS,GREN 5PL6 ANDX 7 MASKMON(1) 5Q5Q BXU 7 OWNMON(1),QI 5QKB LDX 4 GSIGN 5R52 BRN SETIN [IF THERE,J TO SET REPLY NEGATIVE 5RJL # 5S4= # 5SHW NEREL MFREE AONBS,GREN 5T3G ILLEGAL NOWPR 5TH6 NERIL MFREE FILE,FABSNB 5W2Q BRN NERRR 5WGB RERR2A 5X22 MFREE AONBS,GREN 5XFL BRN RERR2 5X^= RERR2B 5YDW MFREE FILE,FABSNB 5YYG MFREE CPAR,GPERCON 5^D6 BRN RERR2 5^XQ RERR 62CB MFREE FLIB,GOLMT 62X2 RERR2 ILLEGAL NOCA 63BL NERRR ILLEGAL ILLINS 63W= NERO ILLEGAL MODE 64*W NERR2 GEOERR 1,NOIMAGE 64TG #PAGE 65*6 # 65SQ # K3OLMTC 66#B # 66S2 [ENTRY POINT FOR MODE #600 67?L [ 67R= QK3OLMTC 68=W ANDX 4 REMPROP(1) 68QG LDX 6 EVENT2(2) 69=6 ADN 6 2 69PQ LDN 1 9 [CHECK RESERVATION AND ENSURE 6=9B CHECKEXT EVENT2(2),1,RERR2,,W,QZ,HLOCK1 6=P2 QZ 6?8L LDX 5 EVENT4(2) 6?N= LDN 3 0 6#7W LDX 7 EVENT3(2) [X OR REPLACED X 6#MG #SKI K6OLMT>99-99 6*76 SWITRACE 7,OLTCPROP 6*LQ SRL 7 6 6B6B ANDN 7 #777 [EXTRACT ANY PROPERTY CODE 6BL2 BZE 7 QPR9 [BRANCH IF NO PROPERTY SPECIFIED 6BNK ...#UNS JMODGCR 6BR8 ... MTHWSPD 7,3 6BTR ...#UNS JMODGCR 6BYB ...#SKI 6C2^ ...( 6C5L LDN 0 #400 6CK= ANDX 0 7 6D4W BZE 0 QPR2 [BRANCH UNLESS 'NONE' 6DJG LDN 0 #200 [9 TRACK BIT 6F46 ANDX 0 7 6FHQ BNZ 0 QPR1 6G3B LDN 3 GLIBTRA9 6GH2 BRN QPR9 6H2L QPR1 6HG= LDN 3 GLIBTRA7 6H^W BRN QPR9 6JFG QPR2 6J^6 LDN 0 #200 [9 TRACK BIT 6KDQ ANDX 0 7 6KYB BNZ 0 QPR3 [BRANCH IF 9 TRACK 6LD2 LDN 3 GLIBTRA7 6LXL BRN QPR6 6MC= QPR3 6MWW LDN 0 3 6NBG ANDX 0 7 6NW6 SBN 0 1 6P*Q BNZ 0 QPR4 6PTB LDN 3 GLIBNRZI 6Q*2 BRN QPR6 6QSL QPR4 6R#= SBN 0 1 6RRW BNZ 0 QPR5 6S?G LDN 3 GLIBPE 6SR6 BRN QPR6 6T=Q QPR5 6TQB LDN 3 GLIBTRA9 6W=2 QPR6 6WPL LDN 0 #140 [B11-12 SPEED 6X9= ANDX 0 7 6XNW BZE 0 QPR9 6Y8G ANDN 0 #100 6YN6 BZE 0 QPR7 6^7Q ADN 3 GLIBFAST 6^MB BRN QPR9 7272 QPR7 72LL LDN 0 GLIBTRA7 736= ANDX 0 3 73KW BZE 0 QPR9 745G ADN 3 GLIBSLOW 74*# ...) 74K6 QPR9 754Q LDX 7 3 75JB #SKI K6OLMT>199-199 7642 SWITRACE 7,OLTCSPD 76HL CAPCA 76NS ...#UNS JWPHASE4 76W2 ... HLSXONCH PBRKIN,4,QHLSWK [ASK HLS IF JOB CAN HAVE ANUVER TAPE 773= LDX 0 5 77GW ANDX 0 MASKMON(1) 782G TXU 0 OWNMON(1) 78G6 BCS QN1 [NOT MONITORED 78^Q SETUPMODE ,0,TAPEUP [OWN MONITOR 79FB BRN QN2 79^2 QN1 LDN 0 0 7=DL QN2 STO 0 AWORK2(2) 7=Y= LDX 3 4 7?CW LDN 4 7 [WORKTAPE,UPDATE C O R ,SET UP FABSKB 7?XG STO 7 ACOMMUNE1(2) 7#C6 DOWN LIBREQC,1 [GET WORK TAPE 7#WQ BRN PBRKIN [BREAKIN 7*BB LDX 4 3 7*W2 TESTREPNOT OK,QJ [TAPE NOT AVAILABLE 7B*L GSCAN 4,OLCPLT [TRACEX4-MODE #600- POOL TAPE 7BT= LDX 3 CPPTR(2) 7C#W STOZ CPPTR(2) 7CSG STO 6 7 [PUTPERENT USES X6 7D#6 PUTPERENT 4,3 [SET UP PRB ENTRY 7DRQ OUTPAR TIMENOW 7F?B LGEOG 3,5 7FR2 QSJ1 7G=L OUTPACK 5,1,GEOPER,QSJ1 7GQ= QSJ2 7H9W OUTPACKB 4,1,PERINAME,QSJ2 7HPG DFLOAD 3,TSN,5 7J96 QSJ3 7JNQ OUTPACKB 5,1,TSN,QSJ3 7K8B QSJ4 7KN2 MHUNT 2,FILE,FABSNB 7L7L SMO HDREC(2) 7LM= ADN 2 A1-6 7M6W OUTPACKB 0(2),3,LOCNAME,QSJ4 7MLG QSJ5 7N66 MHUNT 2,FILE,FABSNB 7NKQ SMO HDREC(2) 7P5B ADN 2 A1-6 7PK2 OUTPACKB 4(2),1,GENNUM,QSJ5 7Q4L QSJ6 7QJ= MHUNT 2,FILE,FABSNB 7R3W SMO HDREC(2) 7RHG ADN 2 A1-6 7S36 OUTPACKB 3(2),1,REELNUM,QSJ6 7SGQ OUTPARB SKIP 7T2B MONOUT JPER 7TG2 SBN 7 1 7T^L GETWORD 7,3,WRITE 7WF= TESTREP OK,QA 7WYW GEOERR BRIEFPM,GETWORD 7XDG QA STO 5 0(3) 7XY6 WORDFIN 7YCQ RUNPROG 7YG* ...#UNS JWPHASE4 7YJY ...( 7YMH ...QHLSWK 7YQ6 ... MONOUT ERHLSMODE 7YSP ...) 7YXB QJ ANDX 5 MASKMON(1) [MASKOUT 'OWN MONITORING' BITS 7^C2 TXU 5 OWNMON(1) [TEST IF PRESENT 7^WL BCC Q7 [INSERT REPLY 82B= BRN QI 82TW MENDAREA 50,K99OLMTC 83*G #END ^^^^ ...63672345000400000000