15 22FL #SEG RELPER [JOHN BAILEY. 16 22PD ...# (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982. 11 22_= #LIS K0RELPER>K0PUTPER>K0ALLGEO 7 23DW 8HRELPER80 9 23YG #OPT K6RELPER=K6ALLGEO 4 24D6 # 12 24XQ SEGENTRY K1RELPER,SK1RELPER 6 25CB #SKI ARETLO 12 25X2 SEGENTRY K11RELPER,SK11RELPER 12 26BL SEGENTRY K2RELPER,SK2RELPER 12 26W= SEGENTRY K3RELPER,SK3RELPER 12 27*W SEGENTRY K31RELPER,SK31RELPER 4 27TG # 4 28*6 # 19 28SQ # THIS SEG IMPLEMENTS RELPERENT,RELOFP AND PERCOUNT MACROS 11 29#B # FIRSTLY,RELPERENT AND RELOFP 21 29S2 # ON ENTRY TO THIS SEGMENT,THE PRB BLOCK IS HUNTED FOR AND WHEN FOUND 21 2=?L # A CHECK IS MADE THAT THE ENTRY TO BE CHECKED OR DELETED IS IN THE PRB 19 2=R= # AN ERROR INDICATOR IS SET IF IT IS NOT AND THE ROUTINE GOES UP 21 2?=W # IF THE ENTRY IS TO BE RETAINED,THEN THE ROUTINE SETS THE REPLY WORD 7 2?QG # AND GOES UP 21 2#=6 # OTHERWISE THE PRB ENTRY IS DELETED,AND IF THE PERI ASSOCIATED WITH IT 20 2#PQ # WAS ONLINE THEN THE PERI WILL BE DISENGAGED(IF AN INPUT DEVICE)AND 7 2*9B # FREED(EITHER) 21 2*P2 # OTHERWISE THE ROUTINE WILL GO DOWN TO THE APPROPRIATE ROUTINE TO DEAL 21 2B8L # WITH THE CLOSING OF THE FILE AND ON CONTROL RETURNING TO THIS ROUTINE 21 2BN= # IN EITHER CASE THE REPLY WORD WILL BE SET AND THE ROUTINE WILL GO UP 4 2C7W # 17 2CMG # SECONDLY PERCOUNT MACRO : ONLY LOGGING MESSAGES O/P. 4 2D76 # 15 2DK8 # AWORK4 IS USED AS A MARKER: B0 =1 => RELOFP 15 2F3= # B0 =0 => RELPER 16 2FF# # B1 =1 => RELPER ALL 15 2FXB # B2 =1 => PERCOUNT 16 2G*D # B3 =1 => PERCOUNT ALL 19 2GRG # B4 =1 => THIS PER IS BEING KEPT 19 2H9J # B5 =1 => ENGINEERS' MESSAGE (227). 17 2HML # B22=1 => RETAIN REGARDLESS 19 2J5N # B23=1 => RETAIN IF KEEP MARKER SET 4 2JHQ # 4 2K3B # 7 2K3Q ...#UNS JWPHASE4 4 2K46 ...( 5 2K4G ...TELLHLS 17 2K4W ...[ TELL HLS WHEN REAL PERIPH. RELEASED 4 2K5= ...[ 15 2K5L ...[ ON ENTRY X2=FX2. CALL ON X6. USES X0,X1,X2,X7 4 2K62 ...[ 8 2K6B ... SBX 6 FX1 16 2K6Q ... HLSINFORM (GEOERR),RELEASE,JOBNO(2),,SETSUP 8 2K76 ... ADX 6 FX1 7 2K7G ... EXIT 6 0 4 2K7W ...[ 11 2K8= ...[ NOTE - HLSINFORM CALLS SETSUP 4 2K8L ...[ 20 2K92 ...[ SETSUP IS USED BY HLSINFORM TO SET UP AN ADATA-GSUP. IT RETURNS 19 2K9B ...[ TO THE ROUTINE WHICH CALLED TELLHLS TO GET MORE INFORMATION. 18 2K9Q ...[ THIS ROUTINE WILL RETURN TO RESUP.IT MUST NOT CORRUPT X7 4 2K=6 ...[ 21 2K=G ...[ NOTE - ALL RFERENCES TO ADATA-GSUP IN COMMENTS REALLY MEAN ADATA-ASUP 4 2K=W ...[ 5 2K?= ...SETSUP 8 2K?L ... SBX 7 FX1 11 2K#2 ... SETNCORE 3,1,ADATA,ASUP 7 2K#B ... LDX 0 4 16 2K#Q ... SRL 0 15 [GET DEV. TYPE 17 2K*6 ... STO 0 A1(1) [AND STORE IN GSUP 8 2K*G ... SMO FX1 21 2K*W ... EXIT 6 1 [RETURN TO ROUTINE WHICH CALLED TELL 4 2KB= ...[ 4 2KBL ...[ 17 2KC2 ...[ RESUP FINISHES OFF GSUP. IT THEN RETURNS TO HLSINFORM. 21 2KCB ...[ ON ENTRY X0=GEOG. NO., X1 POINTS AT GSUP, AND X2=TSN OR CSN OR ZERO 4 2KCQ ...[ 5 2KD6 ...RESUP 17 2KDG ... STO 0 A1+1(1) [STORE GEOG NO. 17 2KDW ... STO 2 A1+2(1) [STORE TSN OR CSN 8 2KF= ... ADX 7 FX1 18 2KFL ... EXIT 7 0 [RETURN TO HLSINFORM 4 2KG2 ...[ 4 2KGB ...) 4 2KH2 # 21 2L2L # SUBROUTINE TO OUTPUT LOGGING MESSAGE: IDENTIFIER IN LOCATION AFTER CAL 10 2LG= # X5 IS -VE IF OFFLINE 20 2L_W # EXPECTS X4 TO HAVE PERINAME/GEOPER,AWORK2 TO HOLD TRANSFER CT 4 2MFG # 9 2M_6 RM1 LDX 3 AWORK2(2) 19 2NDQ BZE 3 XIT1 [DONT BOTHER IF NO TRANSFERS 16 2NYB RM1A LDX 5 GSIGN [OFFLINE MARKER 8 2PD2 SBX 6 FX1 16 2PXL OUTPACKC 4,1,PERINAME [O/P PERI NAME 8 2QC= BRN MEET 9 2QWW RM LDX 3 AWORK2(2) 19 2RBG BZE 3 XIT1 [DONT BOTHER IF NO TRANSFERS 8 2RW6 RMA SBX 6 FX1 8 2S*Q LGEOG 5,4 8 2STB GEOPACK 4,4,4 10 2T*2 OUTPACKC 4,1,GEOPER 18 2TSL MEET OUTPACKC AWORK2(2),1,TRANSCT [OUTPUT TRANSFER COUNT 19 2TWT #SKI JSKI06 [ENHANCEMENT NO. 8001 (B). 4 2T_4 ( 8 2W3? LDCT 0 #010 21 2W5G ANDX 0 AWORK4(2) [OUTPUT TIME IF ENGINEERS' MESS.(227) 8 2W7P BNZ 0 XXX 4 2W9Y ) 8 2W#= LDCT 0 #160 9 2WRW ANDX 0 AWORK4(2) 20 2X?G BNZ 0 RETN [IF PERCOUNT/RETAINED : NO TIME 9 2XR6 XXX OUTPARC TIMENOW 15 2Y=Q RETN BNG 5 NONE [J IF OFFLINE 8 2YQB LREPEATS 5,3 7 2YXJ #SKI JSKI06<1$1 4 2_4Q ( 8 2_=2 LFAILS 5,0 8 2_PL BNZ 3 SOME 18 329= BZE 0 NONE [DONT BOTHER IF BOTH ZERO 10 32NW SOME OUTPACKC 3,1,REPEATS 8 338G LFAILS 5,3 16 33N6 OUTPACKC 3,1,FAILCT [OUTPUT COUNTS 4 33P3 ) 18 33PY #SKI JSKI06 [ENHANCEMENT NO 8001 (B). 4 33QT ( 8 33RQ LFAILS 5,4 10 33RS ... HUNTW 2,ADATA,ELOUT 18 33RW ... BNG 2 NOEL [J IF NO ERROR LOG BLOCK 11 33RY ... STO 3 ELHEADER+11(2) 18 33S2 ... BZE 4 NOEL [J IF NO FAILS TO LOG 7 33S4 ... STOZ 3 8 33S6 ... SLL 34 16 19 33S8 ... STO 3 ELHEADER+12(2) [INSERT FAIL COUNT IN LOG 11 33S= ... ORS 4 ELHEADER+13(2) 8 33S? ... SRL 34 16 8 33S# ... LREPEATS 5,3 4 33SB ...NOEL 8 33SD ... LDX 2 FX2 8 33SM BNZ 3 SOME 17 33TJ BZE 4 NONE [EXCLUDE BOTH IF ZERO 10 33WF SOME OUTPACKC 3,1,REPEATS 10 33XB OUTPACKC 4,1,FAILCT 8 33Y? ... LDCT 0 #010 9 33_8 ANDX 0 AWORK4(2) 21 3425 ... BZE 0 NONE [J. IF NOT RELEASE OR PERIODIC REPORT 17 3432 DECANTCT 5,3,REPEAT [RESET REPEATS COUNT. 17 343X DECANTCT 5,4,FAIL [RESET FAILS COUNT. 19 344S INFORM 1,JSDREP,1,7 [SEND ALSO TO OPS' CONSOLE. 8 345P BRN XIT 4 346L ) 9 347Q NONE LDCH 0 AWORK4(2) 7 34MB ADX 1 6 7 3572 ANDN 0 4 18 35LL BZE 0 UNKP [J IF NOT PRFGRESS REPORT 15 366= MONOUTX 0(1),7 [X7 HAS JOBNO 8 36KW BRN XIT 8 375G UNKP MONOUTX 0(1) 4 377P ...XIT 10 379Y ... HUNTW 1,ADATA,ELOUT 9 37#7 ... BNG 1 NOCHAN 9 37BB ... LDX 2 BELOGACT 10 37DK ... LDX 3 ACTRING(2) 9 37GS ... SBN 3 ACTRING 9 37K3 ... LDX 3 BPTR(3) 8 37M= ... CHAIN 1,3 8 37PF ... STARTACT ELOG 8 37RN ... LDX 2 FX2 5 37TX ...NOCHAN 8 37Y6 ... LDX 1 FX1 7 382* ... ADX 6 1 7 384Q XIT1 EXIT 6 1 4 38JB # 15 3942 # THIS SUBROUTINE FINDS REQUIRED/NEXT ENTRY 21 39HL # EXPECTS X2=FX2,ACOMMUNE7 = PER TYPE/UNIT NO OR -VE IF ALL ,X3->PCA 11 3=3= # IF ALL,REL PTR IN AWORK3 17 3=GW # LINK X4,X6 WILL CONTAIN COUNT OF OFFLINE PERIS, 15 3?2G # X5 WILL CONTAIN SECOND INFORMATION WORD 13 3?G6 # X1 WILL -> START OF PRB ON EXIT 16 3?_Q # EXITS +0 IF END OF BLOCK FOUND BEFORE ENTRY IS 11 3#FB # EXITS +1 IF ENTRY FOUND 11 3#_2 PHIND HUNT2 3,APERI,APERIRES 5 3*DL PHIND1 7 3*Y= LDX 1 3 17 3BCW ADX 3 AWORK3(2) [UPDATE BY REL PTR 8 3BXG P2 LDX 0 A1(3) 14 3CC6 BNG 0 P1A [J IF END 9 3CWQ LDX 5 A1+1(3) 10 3DBB ERX 0 ACOMMUNE7(2) 8 3DW2 BZE 0 P4A 15 3F*L BNG 0 P4A [J IF FOUND 8 3FT= BPZ 5 P3 15 3G#W ADN 6 1 [UPDATE COUNT 15 3GSG P3 BDX 3 P2 [UPDATE PTR 7 3H#6 P1A EXIT 4 0 7 3HRQ P4A EXIT 4 1 4 3J?B # 4 3JR2 P1 8 3K=L #SKI K6ALLGEO>99-99 9 3KQ= TRACE 4,RELP NO 8 3L9W BRN RUNUP 4 3LPG # 19 3M96 # ENTRY POINT FOR RELOFP MACRO = UNPLUG + RELPER + RUNPROG 4 3MNQ # 6 3N8B SK2RELPER 18 3NN2 LDX 4 ACOMMUNE7(2) [PICK TYPE/UNIT NUMBER 17 3P7L FINDLINK 3 [PTR -> LINK IN X3 19 3PM= FREELINK [LINK BLOCK TO PREVIOUS STATE 21 3Q6W TOPCA1 ALINK1(3) [LEAVE OPLA'S LINK -> INST AFTER DOWN 17 3QLG UNPLUG 2 [ALWAYS COMES BACK 16 3R66 CAPCA [RETURN TO CPA 10 3RKQ STO 4 ACOMMUNE7(2) 10 3S5B STOZ ACOMMUNE8(2) 10 3SK2 STOZ ACOMMUNE9(2) 8 3T4L LDCT 0 #400 17 3TJ= STO 0 AWORK4(2) [INDICATE K2 ENTRY 8 3W3W BRN XJOIN 6 3WHG #SKI ARETLO 4 3X36 ( 4 3XGQ # 12 3Y2B # ENTRY POINT FOR RELPER MACRO 4 3YG2 # 6 3Y_L SK11RELPER 8 3_F= LDCT 0 #200 15 3_YW STO 0 AWORK4(2) [SET MARKER 8 42DG LDX 0 GSIGN 15 42Y6 STO 0 ACOMMUNE7(2) [ALL MARKER 8 43CQ BRN XJOIN 4 43XB ) 6 44C2 SK1RELPER 10 44WL STOZ ACOMMUNE8(2) 14 45B= STOZ AWORK4(2) [K1 ENTRY 10 45TW XJOIN LDX 0 ACOMMUNE8(2) 20 46*G ORS 0 AWORK4(2) [KEEP MARKERS,1=>KEEP,2=> KEEPALL 18 46T6 UNRET STOZ AWORK3(2) [CLEAR RELATIVE POINTER 18 47#Q LDN 6 1 [INITIALISE OFFLINE COUNT 16 47SB FPCACA 3,2 [FIND THE PCA. 4 48#2 # 4 48RL REL 6 49?= #SKI ARETLO 4 49QW ( 9 4==G LDEX 7 AWORK4(2) 21 4=Q6 SBN 7 1 [0 IF KEEP,-VE IF NONE,+VE IF KEEPALL 4 4?9Q ) 8 4?PB CALL 4 PHIND 16 4#92 BRN P1 [J IF NOT FOUND 4 4#NL [ 17 4*8= P4 LDX 4 A1(3) [TYPE / UNIT NUMBER 15 4*MW BPZ 5 P7 [J. IF ONLINE 6 4B7G #SKI ARETLO 4 4BM6 ( 8 4C6Q LDX 1 FX2 17 4CLB BNG 7 P7A [J IF NOT TO BE KEPT 7 4D62 LDX 5 6 11 4DKL TOUR FINDACTF 2,,AOLPT,,,FPTR 15 4F5= BCT 5 TOUR [FIND OLPA 4 4FJW ) 7 4G4G LDX 5 6 8 4GJ6 ORX 5 GSIGN 6 4H3Q #SKI ARETLO 4 4HHB ( 10 4J32 LDXC 0 ARETAIN(2) 17 4JGL BCS PHOUND [J IF KEEP MARKER SET 18 4K2= BZE 7 P7A [NOT KEPT UNLESS KEEPALL 17 4KFW LDX 0 ATMARK(2) [NOW TEST IF KEEPABLE 14 4K_G BZE 0 PHOUND [OK IF 0 7 4LF6 SBN 0 3 13 4LYQ BNZ 0 P7A [OR 3 5 4MDB PHOUND 9 4MY2 LDX 0 ACOUNT(2) 7 4NCL SBX 3 1 7 4NX= ADN 3 2 8 4PBW LDX 2 FX2 9 4PWG STO 0 AWORK2(2) 18 4QB6 STO 3 AWORK3(2) [KEEP RELATIVE POINTER 7 4QTQ ADN 6 1 17 4R*B STO 6 AWORK1(2) [KEEP OFFLINE COUNT 8 4RT2 LDCT 0 #20 18 4S#L ORS 0 AWORK4(2) [SET RETAIN THIS PER BIT 8 4SS= CALL 6 RM1 16 4T?W +JREL2 [OFFLINE RETAINED 8 4TRG BRN RUNUP 4 4W?6 ) 7 4WQQ #SKI ARETLO<1$1 8 4X=B BRN P7A 4 4XQ2 # 19 4Y9L P7 LOBJPERIS 5,6 [GET EXEC'S SCHEDULING COUNT 15 4YP= STO 6 AWORK2(2) [SAVE COUNT 17 4_8W P7A LDX 0 A1+2(3) [DELETE THE ENTRY. 8 4_NG STO 0 A1(3) 20 5286 BNG 0 P8 [BRANCH IF END OF BLOCK REACHED 18 52MQ LDX 0 A1+3(3) [DELETE 2ND WORD OF ENTRY 9 537B STO 0 A1+1(3) 21 53M2 BDX 3 P7A [UPDATE PTR. & J. TO CONTINUE DELETIO 4 546L [ 17 54L= P8 LDX 3 ALOGLEN(1) [GET LOGICAL LENGTH 7 555W SBN 3 2 7 55KG LDX 6 1 19 5656 ALTLEN 6,3 [DECREASE LOGICAL LENGTH BY 2 18 56=# ... SEGENTRY JKCRELPER [TO NULL BRANCH IN RELPERI 17 56CG ... RELPERI 4 [FOR KEPT CHAPTERS 16 56JQ FPCACA 3,2 [RELOCATE PCA. 16 574B P8A FJOCA 1,2 [FIND JOB BLOCK. 18 57J2 TESTRCTP 1,P6 [J. IF TRUSTED PROGRAM. 8 583L BRN P9 16 58H= P6 FINDPUC 3,1 [FIND PUC'S PCA 7 592W LDN 0 2 21 59GG SBS 0 APRB(1) [UPDATE POINTER TO LAST REC IN TP PRB 4 5=26 # 4 5=FQ P9 8 5=_B #SKI K6ALLGEO>99-99 9 5?F2 TRACE 4,RELPYES 16 5?YL BNG 5 P10 [J. IF OFFLINE 4 5#D= # 11 5#XW # RELEASE ONLINE PERIPHERAL 4 5*CG # 7 5*JN ...#UNS JWPHASE4 4 5*PW ...#SKI 19 5*X6 P9A LDX 7 ACOMMUNE9(2) [PRESERVE FOR LOWER ROUTINES 7 5*XQ ...#UNS JWPHASE4 4 5*YB ...( 19 5*_2 ...P9A LDX 3 ACOMMUNE9(2) [SAVE FOR LOWER ROUTINES 9 5*_L ... CALL 6 TELLHLS 8 5B2= ... BRN ZLS1 21 5B2W ...[ HLSINFORM FINISHED - GO TO ZLS1 4 5B3G ...[ 9 5B46 ...[ GET MORE DATA FOR GSUP 4 5B4Q ...[ 8 5B5B ... LTYPE 5,2 7 5B62 ... SBN 2 5 5 5B66 ...#UNS AR1 4 5B6= ...( 7 5B6B ... CLHLFDON 5 4 5B6G ...) 17 5B6L ... BNZ 2 NMTLS [J IF NOT MT 17 5B7= ... LADDP 5,2 [GET APIA ENTRY 16 5B7W ... BNG 2 NMTLS [J IF NONE 7 5B8G ... SMO 2 7 5B96 ... LDX 2 2 15 5B9Q ...[ GET TSN 8 5B=B ... BRN YMTLS 17 5B?2 ...NMTLS LDN 2 0 [ZERO IF NO TSN 8 5B?L ...YMTLS LGEOG 5,0 17 5B#= ...[ GET GEOG NUMBER 16 5B#W ... BRN RESUP [FINISH GSUP 7 5B*G ...ZLS1 LDX 7 3 4 5BB6 ...) 18 5BBQ OUTBLOCN 10 [SET UP PARAMETER BLOCK 18 5BWB CALL 6 RMA [OUTPUT LOGGING MESSAGE 16 5CB2 +JREL1 [ONLINE RELEASED 21 5CTL ... JNREALT 5,P9B [J IF REALTIME NOT NEEDED FOR THIS DE 17 5D*= ... CJOBLOCK 1 [FIND THE JOB BLOCK. 7 5FS6 LDN 0 1 21 5G?Q SBS 0 AEXCO(1) [SUBTRACT 1 FROM CT OF RT PERIPHERALS 16 5GRB P9B LTYPE 5,6 [PER TYPE TO X6 17 5H?2 STO 7 ACOMMUNE9(2) [RESET INFORMATION 17 5HQL SBN 6 5 [MAGNETIC TAPE TYPE 16 5J== BZE 6 P16 [BRANCH IF YES. 17 5JPW JEXOTIC 5,P9D [NOT IN IDF IF EXOTIC 21 5K9G SBN 6 5 [J. IF NOT A MULTIPLEXOR OR UNIPLEXOR 21 5KP6 STO 5 ACOMMUNE1(2) [PTR., FOR UNITOFF OR YUNITOFF MACRO 8 5L8Q BZE 6 P9C 7 5LNB SBN 6 1 8 5M82 BZE 6 P9C 15 5MML SBN 6 13 [AND NOT IPB. 8 5N7= BNZ 6 P9D 7 5N=B ...#UNS IDFMARK8 19 5N*G ... YUNITOFF (GEOERR) [FREE IPB IN IDF 7 5NDL ...#UNS IDFMARK8 4 5NHQ ...#SKI 16 5NLW YUNITOFF [FREE IPB IN IDF 8 5P6G BRN P9D 7 5P9L ...#UNS IDFMARK8 19 5P#Q ...P9C UNITOFF (GEOERR) [FREE PLEXOR IN IDF 7 5PCW ...#UNS IDFMARK8 4 5PH2 ...#SKI 17 5PL6 P9C UNITOFF [FREE PLEXOR IN IDF 9 5Q5Q P9D STO 5 CPPTR(2) 15 5QKB FREEPER [FREE OL PER 6 5R52 #SKI ARETLO 4 5RJL ( 8 5S4= PUP LDCT 0 #200 9 5SHW ANDX 0 AWORK4(2) 16 5T3G BNZ 0 MORE [J IF RELPER ALL 8 5TH6 PUP1 SETREP OK 8 5W2Q LDCT 0 #20 9 5WGB ANDX 0 AWORK4(2) 17 5X22 BNZ 0 SET [J IF LAST ONE KEPT 8 5XFL LDCT 0 #200 9 5X_= ANDX 0 AWORK4(2) 17 5YDW BZE 0 UP [J IF NOT RELPER ALL 8 5YYG FPCACA 3,2 11 5_D6 HUNT2 3,APERI,APERIRES 10 5_XQ LDX 0 ALOGLEN(3) 16 62CB BZE 0 UP [J IF NONE KEPT 8 62X2 SET SETREP KEPT 5 63BL UP UP 17 63W= MORE LDX 6 AWORK1(2) [GET OFFLINE COUNT 17 64*W LDCT 0 #20 [RETAIN THIS PER BIT 9 64TG ANDX 0 AWORK4(2) 14 65*6 ERS 0 AWORK4(2) [CLEAR IT 8 65SQ LDX 0 GSIGN 10 66#B STO 0 ACOMMUNE7(2) 8 66S2 FPCACA 3,2 16 67?L BRN REL [GO ROUND AGAIN 4 67R= ) 7 68=W #SKI ARETLO<1$1 4 68QG ( 4 69=6 UP 5 69PQ PUP UP 4 6=9B ) 4 6=P2 [ 12 6?8L [OFFLINE PERIPHERAL RELEASE SECTION 4 6?N= [ 16 6#7W P10 ANDN 5 #377 [OFF-LINE COUNT 20 6#MG P11 FINDACTFB 3,,AOLPT,,,FPTR [FIND NEXTOFFLINE ACTIVITY BLOCK. 19 6*76 BCT 5 P11 [J. IF NOT THE CORRECT BLOCK. 19 6*LQ LDX 6 ACOUNT(3) [GET THE SCHEDULING COUNT. 16 6B6B LOCK 3 [LOCK THE 'OLPA' 15 6BL2 SMO ATMARK(3) [SWITCH WORD. 19 6C5L BRN P12 [BRANCH BY THE SWITCH WORD 4 6CK= [ 7 6D4W [BRANCH TABLE 4 6DJG [ 21 6F46 P12 BRN P13 [FILE STORE OR PSEUDO O/L SLOW OUTPUT 16 6FHQ BRN P14 [BACKING STORE 18 6G3B BRN P15 [OL MAG TAPE WITH OLPA 19 6GH2 BRN P17 [PSEUDO ONLINE SLOW INPUT. 16 6H2L BRN P18 [COMMAND ISSUER 5 6HG= #SKI G4 6 6H_W NULL 5 6JFG #SKI G3 18 6J_6 BRN P19 [CONCEPTUAL MULTIPLEXOR. 19 6KDQ BRN P20 [INTER-PROGRAM COMMUNICATOR 16 6KYB BRN P21 [CONCEPTUAL IPB 15 6LD2 BRN P22 [ONLINE DRUM. 6 6LDG ...#UNS AV7900S 16 6LF2 ... BRN P23 [VIRTUAL 7900. 6 6LFG ...#UNS AV7900S 4 6LG2 ...#SKI 4 6LGG ...( 7 6LH6 ...#SKI JSKI04<1$1 6 6LL= ... NULL 6 6LPB ...#SKI JSKI04 17 6LSG ... BRN P18 [BULK COMMAND ISSUER. 4 6LW4 ...) 15 6LX4 ... BRN P24 [LPS14 - NIP 4 6LXL [ 21 6MC= P13 ORELP 3 [RELEASE THE FILE-STORE PERIPHERAL 21 6MWW BRN OUTM [J. TO OUTPUT THE LOGGING MESSAGE. 4 6NBG [ 20 6NW6 P14 DOWN CLOSBAC,2 [RELEASE BACKING STORE PERIPHERAL 7 6NW# ...#UNS JWPHASE4 4 6NWG ...( 9 6NWN ... STO 6 AWORK2(2) 15 6NWW ... LDX 3 ACOMMUNE8(2) [GET CSN 17 6NX4 ... LDX 5 ACOMMUNE9(2) [GET GEOG NO. 17 6NX= ... CALL 6 TELLHLS [TELL HLS ABOUT RELEASE 20 6NXD ... BRN ZLS2 [J IF HLSINFORM FINISHED 4 6NXL ...[ 11 6NXS ...[ GET CSN AND GEOG NO. FOR GSUP 4 6NY2 ...[ 7 6NY8 ... LDX 2 3 7 6NYB ... LDX 0 5 18 6NYJ ... BRN RESUP [GO TO FINISH GSUP 4 6NYQ ...ZLS2 4 6NYY ...) 7 6N_= ... LDX 0 4 7 6P4B ... SEGENTRY ADX 6 6P7G ... NULL 7 6P=L ... DLA 0 4 7 6P?= ...#UNS JWPHASE4 8 6P?W ... BRN OUTZ 7 6P#G ...#UNS JWPHASE4 4 6P*6 ...#SKI 21 6P*Q BRN OUTM [J. TO OUTPUT THE LOGGING MESSAGE. 4 6PTB [ 21 6Q*2 P15 MTPTR 3,5 [GET POINTER TO MAG. TAPE DEVICE LIST 17 6QSL MURDER 3 [RELEASE THE OLPA. 17 6R#= STO 6 AWORK2(2) [SAVE TRANSFER COUNT 8 6RRW BRN P9A 17 6S?G P16 LDX 4 5 [DEVICE LIST POINTER. 18 6SR6 DOWN CLOSEMT,1 [RELEASE THE PERIPHERAL. 5 6T=Q UP 4 6TK7 ...P17 16 6TXJ ... MURDER 3 [RELEASE THE OLPA 21 6W=2 BRN OUTM [J. TO OUTPUT THE LOGGING MESSAGE. 4 6WPL [ 19 6X9= P18 DOWN CIMOP,4 [RELEASE THE COMMAND CHANNEL 21 6XNW BRN OUTM [J. TO OUTPUT THE LOGGING MESSAGE. 4 6Y8G [ 5 6YN6 #SKI G3 4 6_7Q ( 9 6_MB P19 DOWN CONMXA,2 8 7272 BRN OUTM 4 72LL ) 4 736= [ 15 73KW P20 DOWN IPCPERI,3 [RELEASE IPC 8 745G BRN OUTM 4 74K6 [ 18 754Q P21 DOWN CDCIPB,1 [RELEASE CONCEPTUAL IPB 8 75JB BRN OUTM 4 7642 [ 4 76=Y ...P22 9 76FW ... DOWN DRUM,3 6 76NS ...#UNS AV7900S 8 76W2 ... BRN OUTM 4 773= [ 6 775T ...#UNS AV7900S 4 778D ...( 21 77?3 ...P23 DOWN VIPBPERI,2 [RELEASE A VIRTUAL 7900 COMMS CHANNEL 4 77*L ...[ 4 77D9 ...) 8 77DM ... BRN OUTM 12 77F# ...[ IF NIP TYPE FH - THEN RELEASE FH 12 77FH ...[ THIS MACRO NEVER EXITS FOR BREAKIN 4 77FQ ...P24 17 77FS ... LDX 0 ANIPSW [J IF NOT LPS14 - NIP 8 77FW ... BZE 0 P13 14 77F_ ... MURDER 3 [MURDER AOLPA 10 77G8 ... NIPREL (GEOERR),4 15 77GW OUTM STO 6 AWORK2(2) [SAVE COUNT 7 77N4 ...#UNS JWPHASE4 4 77T= ...OUTZ 18 782G CALL 6 RM1A [OUTPUT LOGGING MESSAGE 16 78G6 +JREL [OFFLINE RELEASED 9 78_Q RUNUP LDX 0 AWORK4(2) 16 79FB BPZ 0 PUP [K1 ENTRY = GO UP 14 79_2 RUNPROG [K2 ENTRY 4 7=DL [ 10 7=Y= # ENTRY FOR PERCOUNT 6 7?CW SK3RELPER 15 7?XG LDCT 0 #120 [SET MARKERS 9 7#C6 STO 0 AWORK4(2) 18 7#WQ LDX 0 GSIGN [SET ALL FOR REPORTING 15 7*BB STO 0 ACOMMUNE7(2) [SET MARKER 18 7*W2 LDN 6 1 [INITIALISE OFFLINE COUNT 9 7B*L STO 6 AWORK1(2) 16 7BT= STOZ AWORK3(2) [CLEAR REL PTR 14 7C#W ROUND FPCACA 3,2 [X3-> PCA 7 7CSG LDX 7 3 8 7D#6 CALL 4 PHIND 8 7DRQ BRN UP 15 7F?B LDX 4 A1(3) [GET PER NAME 7 7FR2 SBX 3 1 16 7G=L ADN 3 2 [UPDATE REL PTR 15 7GQ= STO 3 AWORK3(2) [SAVE REL PTR 8 7H9W BPZ 5 ONLIN 14 7HPG LDX 3 7 [X3-> PCA 18 7J96 LDX 7 6 [OFFLINE PERI CT -> X7 15 7JNQ R1 FINDACTF 3,,AOLPT,,,FPTR [X3 -> OLPA 8 7K8B BCT 7 R1 7 7KN2 ADN 6 1 17 7L7L STO 6 AWORK1(2) [UPDATE OFFLINE COUNT 9 7LM= LDX 0 ATMARK(3) 7 7M6W SBN 0 2 8 7MLG BZE 0 MAGT 9 7N66 LDX 0 ACOUNT(3) 9 7NKQ STO 0 AWORK2(2) 8 7P5B BRN OUT 8 7PK2 MAGT MTPTR 3,5 8 7Q4L ONLIN LOBJPERIS 5,0 9 7QJ= STO 0 AWORK2(2) 16 7R3W OUT BZE 0 SUB [J IF NO TRANS 7 7RHG OUTBLOCN 8 8 7S36 BNG 5 OFF 8 7SGQ CALL 6 RM 16 7T2B +JREL3 [ONLINE RETAINED 8 7TG2 BRN SUB 8 7T_L OFF CALL 6 RM1 16 7WF= +JREL2 [OFFLINE RETAINED 8 7WYW SUB LDX 0 GSIGN 15 7XDG STO 0 ACOMMUNE7(2) [RESET MARKER 17 7XY6 LDX 6 AWORK1(2) [GET OFFLINE COUNT 16 7YCQ BRN ROUND [BACK FOR NEXT 4 7YXB # 16 7_C2 # SUBROUTINE TO DO OUTBLOCN FOLLOWED BY JOBLOCK. 19 7_WL # ONLY NEEDED BECAUSE THESE ARE SUCH BORINGLY LONG MACROS. 4 82B= # 16 82TW SOUT1 SBX 4 FX1 [RELATIVISE LINK. 18 83*G OUTBLOCN 10 [SET UP GMON/ASET BLOCK. 16 83T6 ADX 4 1 [RETRIEVE LINK. 17 84#Q SOUT2 JOBLOCK 7,3 [FIND THE JOB BLOCK. 7 84SB EXIT 4 0 4 85#2 # 10 85RL # ENTRY FOR PERCOUNT ALL 6 86?= SK31RELPER 8 86QW LDCT 0 #40 9 87=G STO 0 AWORK4(2) 9 87Q6 STOZ AWORK3(2) 14 889Q # AFTER THIS INITIALISATION SEARCH JOB QUEUE 7 88PB OUTBLOCN 8 8 8992 LDN 3 BJOBQ 9 89NL SEEK LDX 3 FPTR(3) 8 8=8= SEEK1 TXU 3 CXJO 18 8=MW BCC OPENG [-> O/P ENGINEER MESSAGES 10 8?7G LDX 0 ALOGLEN(3) 9 8?M6 SBN 0 ASTJOB 17 8#6Q BZE 0 SEEK [IGNORE NO USER JOBS 16 8#LB LDX 7 JOBNUM(3) [KEEP JOB NUMBER 9 8*62 OUTPARC TIMENOW 12 8*KL OUTPACKC HTIMEJ(3),2,JOBMILL 9 8B5= LDEX 6 JMISC(3) 6 8BJW #SKI ARETLO 4 8C4G ( 16 8CJ6 BNZ 6 XCI [J IF CORE IMAGE 9 8D3Q LDX 6 JCLASS(3) 8 8DHB ANDN 6 #200 4 8F32 ) 20 8FGL BZE 6 NOCI [J IF NO PERIPHERAL CTS TO O/P 13 8G2= XCI OUTPACKC HCLOCKTIME(3),2,PROGMILL 20 8GFW NOCI MONOUT JPROGREP,7 [O/P PROGRESS REPORT -> JOURNAL 21 8G_G CALL 4 SOUT1 [SET UP GMON/ASET BLOCK FOR NEXT TIME 16 8HF6 BNG 3 REFIND [J IF NOW GONE 9 8HYQ LDEX 6 JMISC(3) 17 8JDB BZE 6 SEEK [J IF NO CORE IMAGE 16 8JY2 LDN 6 1 [INITIALISE COUNT 9 8KCL STO 6 AWORK1(2) 5 8KX= RETURN 15 8LBW FPCAJO 1,3 [X1 -> PCA 19 8LWG PCATEST 1,TP,TP [->TP IF TP -OR NORMAL APET 16 8MB6 FINDTP 1,1 [X1 -> TP APET 10 8MTQ TP STO 1 ACOMMUNE1(2) 18 8N*B HUNT2J 1,APERI,APERIRES,,SEEK [-> SEEK IF MISSING 7 8NT2 LDX 3 1 8 8P#L LDX 0 GSIGN 10 8PS= STO 0 ACOMMUNE7(2) 9 8Q?W CALL 4 PHIND1 18 8QRG BRN NEXT [IF END,GO TO GET NEXT 19 8R?6 STO 6 AWORK1(2) [KEEP COUNT OF OFFLINE PERIS 8 8RQQ LDX 4 A1(3) 7 8S=B SBX 3 1 16 8SQ2 ADN 3 2 [UPDATE REL PTR 15 8T9L STO 3 AWORK3(2) [KEEP REL PTR 14 8TP= LDX 1 ACOMMUNE1(2) [X1-> PCA 15 8WNG BPZ 5 MAG2 [J IF ONLINE 12 8X86 R2 FINDACTF 1,,AOLPT,,MISS1,FPTR 9 8XMQ TXU 7 JOBNO(1) 20 8Y7B BCS MISS1 [J IF NOT FOUND WITH SAME JOBNO 8 8YM2 BCT 6 R2 7 8_6L LDN 0 1 17 8_L= ADS 0 AWORK1(2) [UPDATE OLPA COUNT 9 925W LDX 0 ATMARK(1) 7 92KG SBN 0 2 14 9356 BZE 0 MAG1 [J IF MT 9 93JQ LDX 0 ACOUNT(1) 9 944B STO 0 AWORK2(2) 8 94J2 CALL 6 RM1 18 953L +JRELPRO [OFFLINE PROGRESSREPORT 8 95H= BRN PAST 16 962W MISS1 CALL 4 SOUT2 [FIND JOB BLOCK. 8 96GG BRN MISS2 17 9726 MAG1 MTPTR 1,5 [X5 -> DEVICE LIST 8 97FQ MAG2 LOBJPERIS 5,0 17 97_B STO 0 AWORK2(2) [KEEP TRANSFER COUNT 8 98F2 ONLN CALL 6 RM 18 98YL +JRELPRO1 [ONLINE PROGRESS RPORT 4 99D= PAST 9 99XW #SKI K6RELPER>499-499 4 9=CG ( 9 9=X6 TRACE 4,TYPE 11 9?BQ TRACE AWORK2(2),NUMBER 9 9?WB TRACE 7,JOBNO2 4 9#B2 ) 19 9#TL CALL 4 SOUT1 [DO OUTBLOCN & FIND JOB BLOCK 9 9**= MISS2 LDX 6 AWORK1(2) 9 9*SW BNG 3 REFIND 9 9B24 ... LDEX 4 JMISC(3) 17 9B7= ... BZE 4 SEEK [J IF NO CORE IMAGE 9 9B#G BRN RETURN 4 9BS6 # 20 9C?Q NEXT CALL 4 SOUT1 [DO OUTBLOCN & FIND JOB BLOCK. 9 9CRB BNG 3 REFIND 15 9D?2 STOZ AWORK3(2) [INITIALISE 8 9DQL BRN SEEK 19 9F== REFIND [GET POINTER TO NEXT BLOCK 9 9FPW #SKI K6RELPER>499-499 9 9G9G TRACE 7,JOBNO 8 9GP6 LDN 3 BJOBQ 9 9H8Q R3 LDX 3 FPTR(3) 8 9HNB TXU 3 CXJO 18 9J82 BCC OPENG [-> O/P ENGINEER MESSAGES 9 9JML TXL 7 JOBNUM(3) 16 9K7= BCS SEEK1 [J IF NEXT ONE 8 9KLW BRN R3 14 9L6G OPENG LDN 7 0 [JOB NO 7 9L?N #SKI JSKI06<1$1 4 9LDW ( 15 9LL6 FINDRPDE 3,RETRY,UP,4 [-> UP AT END 8 9M5Q OUTBLOCN 10 7 9MKB LDX 5 3 8 9N52 LGPERIS 3,0 18 9NJL STO 0 AWORK2(2) [FOR S/R:COUNT OF TRANS 16 9P4= STO 4 AWORK1(2) [KEEP WORK ACC. 18 9PHW CALL 6 RM [OUTPUT LOGGING MESSAGE 7 9Q3G +JRELPRO1 7 9QH6 LDX 3 5 19 9R2Q LDX 4 AWORK1(2) [RESTORE INFO FOR FINDRPDEV 15 9RGB CLCOUNT 3,GEORGE [CLEAR COUNTS 9 9S22 CLCOUNT 3,FAIL 9 9SFL CLCOUNT 3,REPEAT 4 9SG6 ) 19 9SGL #SKI JSKI06 [ENHANCEMENT NO. 8001 (B). 4 9SH6 ( 8 9SHL LDCT 0 #010 20 9SJ6 ORS 0 AWORK4(2) [SET MARKER = ENG. MESS. (227). 19 9SJL FINDRPDE 3,RETRY,UP,4 [GET ADDR. OF NEXT DEVICE. 8 9SK6 LGPERIS 3,0 20 9SKL BZE 0 RETRY [NO MESSAGE IF ZERO TRANSFERS. 19 9SL6 STO 0 AWORK2(2) [COUNT OF TRANSFERS FOR S/R. 20 9SLL DECANTCT 3,0,GEORGE [RESET GEORGE TRANSFER COUNT. 18 9SM6 STO 4 AWORK1(2) [KEEP WORK ACCUMULATOR. 9 9SM7 ... JENVNOT YNOT,CME 9 9SM8 ... JCAFSDV 3,YNOT 8 9SM9 ... LDN 4 22 8 9SM= ... SETELOG 2,4,3 8 9SM? ... LDN 5 #2460 10 9SM# ... ORS 5 ELHEADER+1(2) 7 9SM* ... STOZ 4 8 9SMB ... SMO FX2 9 9SMC ... LDX 5 AWORK2 7 9SMD ... SLL 45 8 10 9SMF ... ORS 4 ELHEADER+9(2) 11 9SMG ... STO 5 ELHEADER+10(2) 8 9SMH ... LDX 2 FX2 4 9SMJ ...YNOT 19 9SML LDX 5 3 [DEVICE LIST POINTER FOR S/R. 8 9SN6 OUTBLOCN 16 8 9SNL LTYPE 3,4 17 9SP6 OUTPACKC 4,1,PERITYPE [OUTPUT TYPE AS %A. 7 9SPL SBN 4 6 15 9SQ6 BZE 4 XXY [J. IF EDS. 8 9SQL SBN 4 20 16 9SR6 BNZ 4 XXZ [J. IF NOT EMDS. 8 9SRL XXY LADDP 3,3 17 9SS6 LDX 4 BSUNIT5(3) [GET CSN FROM APIA. 19 9SSL OUTPACKC 4,1,CSN [O/P CSN AS %B IF EDS OR EMDS 8 9ST6 BRN XYX 19 9STL XXZ OUTNULL [ELSE NULL %B IF OTHER TYPE. 18 9SW6 XYX CALL 6 RM [OUTPUT LOGGING MESSAGE. 7 9SWL +JSDREP 21 9SX6 LDX 3 5 [RESTORE DEVICE LIST POINTER FOR S/R, 21 9SXL LDX 4 AWORK1(2) [RESTORE WORK ACCUMULATOR FOR S/R. 4 9SY6 ) 15 9S_= BRN RETRY [BACK AGAIN 4 9TDW # 10 9TYG MENDAREA 20,K100RELPER 4 9WD6 #END 8 ____ ...17414373000100000000