14 22FL #LIS K0FAIL>K0ALLGEO>K0GREATGEO>K0COMMAND 16 22_= #SEG FAIL5 [R.H.THOMPSON F6 7 23DW #OPT K6FAIL=0 9 23YG 8HFAIL 10 24D6 SEGENTRY K1FAIL,XX1F 10 24XQ PFCATCH #77777700 9 25CB WORDSIXMASK #17777777 9 25X2 WORNINEMSK1 #40077777 9 26BL WORNINEMSK2 #37700000 10 26W= ZMEM 12HIN MEMBER 21 27*W #DEF XBLEN=3 [SO THAT APEDSP1+XBLEN IS A RELATIVE 20 27TG [POINTER TO MESSAGE IN APED BLOCK 4 28*6 # 1 21 28SQ # 1 THE FAIL SEGMENT HANDLES THE COMMAND -FAIL-. ACTION TAKEN DEPENDS 21 29#B # 1 ON WHETHER THE USER WISHES TO MONITOR HIS OWN ILLEGALS 21 29S2 # 1 AND, IF SO, WHETHER THE COMMAND WAS ISSUED AT BREAK-IN 4 2=?L # 1 4 2=R= # 2 10 2?=W # 2 INPUT -1.USER WORD 8 14 2?QG # 2 2.JOB REQUEST SLIP (AOBRES). 16 2#=6 # 2 3.COMMAND PROCESSING BLOCK (CPB/CALAS). 15 2#PQ # 2 4.ACTIVITY BLOCK POINTED TO BY X2 4 2*9B # 2 4 2*P2 # 3 18 2B8L # 3 OUTPUT-1.USER WORD 8 SAVED IN PROGRAM WORD 14 IF OWN 21 2BN= # 3 MONIT.ALSO B1-8 OF WORD 9 WILL BE SAVED IN WORD 15,B22-23 17 2C7W # 3 OF WHICH WILL BE SET TO THE MEMBER NO. 21 2CMG # 3 2.USER WORD 8 SET EQUAL TO USER ILLEG. MONIT IF OWN MONIT. 21 2D76 # 3 3.CATEGORY BITS SET EQUAL TO 6 IF BREAK-IN DURING RUNNING 19 2DLQ # 3 OF OBJECT PROGRAM AND NOT OWN MONITOR. 21 2F6B # 3 4.OLD PROGRAM EVENT DESTROYED AND 'FAIL' EVENT CREATED IF 20 2FL2 # 3 NOT OWN MONIT, OR OWN MONIT AND NOT BREAK-IN 16 2G5L # 3 DURING OBJECT PROGRAM RUNNING 20 2GK= # 3 5.MESSAGE TO USER MONITOR FILE PROVIDED BREAK-IN DURING 20 2H4W # 3 OBJECT PROGRAM CONDITION AND OWN MONIT. CONDITION DO 12 2HJG # 3 NOT EXIST TOGETHER 20 2J46 # 3 6.IF USER OWN MONIT WORD IS NOT ZERO,B0,1 ARE SET ZERO 20 2JHQ # 3 AFTER ORIGINAL CONTENTS MOVED TO WORD 8 OF PROGRAM 4 2K3B # 3 4 2KH2 # 4 18 2L2L # 4 ERROR ACTION - GEOERR (FAILGETW) IF MINI-SWAP-IN FAILS 20 2LG= # 4 GEOERR (FAILNOIP) IF CPB/CALAS BLOCK NOT FOUND 4 2L_W # 4 21 2MFG # 4 THE CONDITION 'ALREADY CATEGORY 6' IS NOT CHECKED 4 2M_6 # 4 4 2NDQ # 7 18 2NYB # 7 FIXED STORE SEGMENTS CALLED - NONE EXCEPT VIA MACROS 18 2PD2 # 7 BACKING STORE CHAPTERS CALLED - NONE EXCEPT VIA MACROS 4 2PXL # 7 4 2QC= XX1F 8 2QWW #SKI K6FAIL>699-699 9 2RBG TRACE 1,STRTFAIL 20 2RW6 LDN 4 8 [OBJECT PROGRAM ADDRESS REQUIRED 17 2S*Q # [FOR POSSIBLE CHANGE 11 2STB GETWORD 4,5,READ,,,ZBRK 9 2T*2 TESTREP2 OK,PFOK 10 2TSL TESTREP2 LOADERR,PFA11 8 2W#= BRN PFERR 4 2WRW PFOK 17 2X?G FPCACA 2 [GET POINTER TO PCA 5 2XR6 #SKI G4 4 2Y=Q ( 10 2YQB HUNT2 3,BSTB,BSCB,2 14 2_=2 LDX 6 AQUOTA(3) [QUOTA 8 2_PL ANDN 6 #7777 15 329= LDX 7 ATSWAPS(3) [PAGETURNS 8 32NW SMO FX2 9 338G STO 6 AWORK3 8 33N6 SMO FX2 9 347Q STO 7 AWORK4 4 34MB ) 20 3572 HUNT2 3,AOBRES,0,2 [GET POINTER TO JOB REQUEST SLIP 21 35LL # [IF FAILURE OCCURS, HUNT2 WILL LOOP 9 366= LDX 6 ANM(2) 7 36KW ANDN 6 3 8 375G SMO FX2 9 37K6 STO 6 AWORK1 7 384Q LDN 0 0 9 38JB LDX 4 A1+6(3) 11 3942 ANDX 4 WORDSIXMASK(1) 20 39HL TXU 0 4 [WILL USER MONITOR OWN ILLEGALS? 20 3=3= BCC PFA08 [NO, SO END MINISWAP PROCEDURES 7 3=GW #SKI GENIE<1$1 4 3?2G ( 10 3?G6 LDX 6 APROCESSOR(2) 7 3?_Q ANDN 6 4 19 3#FB BZE 6 PFA08 [NOT OWN MONIT UNLESS B21 SET 4 3#_2 ) 6 3*DL #SKI GENIE 4 3*Y= ( 8 3BCW LDCT 6 #200 9 3BXG ANDX 6 AMON(2) 19 3CC6 BNZ 6 PFA08 [NOT OWN MONITORING IF B1 SET 4 3CWQ ) 8 3DBB #SKI K6FAIL>699-699 9 3DW2 TRACE 1,FAILOWNM 19 3F*L ADN 0 1 [MARK MONITOR OWN ILLEGALS 18 3FT= LDX 6 A1+6(3) [GET USER MONITOR ADDRESS 21 3G#W STO 4 A1+6(3) [SAVE OWN MONIT ADDR. WITH B0,1 CLEAR 7 3GSG SMO 5 18 3H#6 LDX 4 0 [GET USER LAST POSITION 7 3HRQ SMO 5 18 3J?B STO 4 6 [STORE OLD ONR IN USER 14 7 3JR2 SMO 5 20 3K=L STO 6 0 [USER WILL NOW 'RESUME' AT THE 20 3KQ= # [START OF HIS MONITORING ROUTINE 7 3L9W SMO 5 7 3LPG LDX 4 1 11 3M96 ANDX 4 WORNINEMSK2(1) 11 3MNQ LDX 6 WORNINEMSK1(1) 7 3N8B SMO 5 7 3NN2 ANDS 6 1 8 3P7L LDX 2 FX2 9 3PM= ADX 4 AWORK1(2) 10 3Q6W LDN 3 ACOMMUNE4(2) 9 3QLG LDN 2 ZMEM(1) 7 3R66 MOVE 2 3 7 3RKQ SMO 5 18 3S5B STO 4 7 [B22,23 HOLD MEMBER NO. 19 3SK2 LDX 4 0 [SAVE OWN/NOT OWN CONDITION 5 3T4L PFA08 19 3TJ= LDX 6 4 [SAVE OWN/NOT OWN CONDITION 21 3W3W WORDFIN [DON'T NEED OBJECT PROGRAM ANY MORE 8 3WHG #SKI K6FAIL>699-699 9 3X36 TRACE 6,PFSTATE1 17 3XGQ LDX 4 CONTEXT(2) [CHECK IF BREAK-IN 17 3Y2B SLL 4 9 [ALIGN RIGHT FLAG BIT 15 3YG2 BPZ 4 PFA4 [NOT BREAK-IN 4 3Y_L PFA1 8 3_F= #SKI K6FAIL>699-699 8 3_YW TRACE 1,PFA1 9 42DG LDEX 7 EXT+10(2) 8 42Y6 LDX 3 FX2 16 43CQ PFA2 HUNT2 3,CPB,CALAS [FIND THE CALAS 16 43XB LDEX 4 CPBCPLEV(3) [BLOCK AT FIRST 15 44C2 TXU 4 7 [BRK-IN LEVEL 8 44WL BCS PFA2 16 45B= LDX 4 CPBFSD(3) [FETCH CATEGORY 8 45TW #SKI K6FAIL>699-699 9 46*G TRACE 4,CATEGIN 14 46T6 LDX 5 4 [SAVE IT 18 47#Q ANDN 4 #77 [ONLY BITS 18-23 WANTED 17 47SB SBN 4 5 [WE WANT CATEGORY 5 19 48#2 BNZ 4 PFA4 [IF NOT ZERO WE DO NOT CHANGE 17 48RL SBN 6 1 [OWN/NOT OWN MONITOR 18 49?= BZE 6 PFA11 [OWN MONIT. SO THAT'S ALL 17 49QW ANDX 5 PFCATCH(1) [MASK OUT LAST 6 BITS 15 4==G ORN 5 #6 [MAKE IT 6 17 4=Q6 STO 5 CPBFSD(3) [STORE NEW CATEGORY 18 4?9Q PFA4 [START OF MAIN PROCESSING 8 4?PB #SKI K6FAIL>699-699 8 4#92 TRACE 1,PFA4 11 4#NL HUNTW 3,APED,ANEVENT 15 4*8= BNG 3 PFA42 [NONE FOUND 18 4*MW FREECORE 3 [BLOCK FOUND SO FREE IT 19 4B7G BRN PFA44 [ONE OR THE OTHER NOT BOTH 11 4BM6 PFA42 HUNTW 3,APED,ADELETE 15 4C6Q BNG 3 PFA44 [NONE FOUND 18 4CLB FREECORE 3 [BLOCK FOUND SO FREE IT 5 4D62 PFA44 18 4DKL SPARANOT 1 [GET USER MESSAGE, IF ANY 20 4F5= HUNT 3,CPB,CUNI [FIND BLOCK FORMED BY PARA- MACRO 18 4FJW LDX 6 ANUM(3) [TEST FOR NO PARAMETERS 15 4G4G BNG 6 PFA5 [IF NEGATIVE 16 4GJ6 BNZ 6 PFA6 [PARAMETER EXISTS 17 4H3Q PFA5 [WHAT TO DO WHEN NONE 8 4HHB #SKI K6FAIL>699-699 8 4J32 TRACE 1,PFA5 20 4JGL NAME 3,APED,ANEVENT [FROM CPB/CUNI TO APED/ANEVENT 17 4K2= PHOTO 5 [TRY NO HUNT LATER 18 4KFW ALTLEND 3,XBLEN,APED,ANEVENT [JUST PREFACE LENGTH 9 4K_G TESTMOVE 5,PFA55 5 4LF6 PFA53 8 4LYQ #SKI K6FAIL>699-699 8 4MDB TRACE 1,PFA53 11 4MY2 HUNTW 3,APED,ANEVENT 16 4NCL PFA55 [HUNT OR NO HUNT 8 4NX= #SKI K6FAIL>699-699 8 4PBW TRACE 1,PFA55 18 4PWG STOZ APEDSP1+2(3) [ZERO FOR CHARACTER COUNT 9 4QB6 LDX 7 AWORK1(2) 21 4QTQ STO 7 APEDSP1(3) [PUT MEMBER NO. IN APED/ANEVENT BLOCK 19 4R*B LDN 5 APEDFAIL [CONTROL VALUE FOR IF COMMAND 10 4RT2 STO 5 APEDSP1+1(3) 5 4S#L #SKI G4 21 4SS= LDN 5 7 [NO. OF WDS. FOR PARAMS. +1 WORD EACH 5 4T?W #SKI G3 20 4TRG LDN 5 3 [2-WORD TIME + 1 WORD EACH PARAM. 8 4W?6 BZE 7 PFA57 21 4WQQ ADN 5 4 [3-WORD PARAM FOR MEMBER NO. + 1 WORD 20 4X=B PFA57 OUTBLOCK 5 [GET THE MONITORING FILE BLOCK 17 4XQ2 OUTMILL [TAG WITH THE TIME 5 4Y9L #SKI G4 4 4YP= ( 7 4_8W #SKI JNLPACK 4 4_NG ( 9 5286 LDX 4 AWORK3(2) 9 52MQ LDX 5 AWORK4(2) 15 537B OUTPACKC 4,1,QUOTA [OUTPUT QUOTA 16 53M2 OUTPACKC 5,1,PAGETURN [OUTPUT PAGETURNS 4 546L ) 8 54L= #SKI JNLPACK<1$1 4 555W ( 15 55KG OUTNUM AWORK3(2),0 [OUTPUT QUOTA 16 5656 OUTNUM AWORK4(2),0 [OUTPUT PAGETURNS 4 56JQ ) 4 574B ) 8 57J2 BZE 7 PFA10 8 583L LDX 3 GSIGN 7 58H= ADX 3 2 21 592W DCH 7 ACOMMUNE6(3) [APPEND MEMBER NO. TO CHAR. STRING 19 59GG OUTPARN 11,ACOMMUNE4 [PREPARE PARAM FOR MEMBER NO. 10 5=26 # NO MESSAGE 17 5=FQ BRN PFA10 [CARRY ON SERGEANT 16 5=_B PFA6 [CARRY ON SMILING 8 5?F2 #SKI K6FAIL>699-699 8 5?YL TRACE 1,PFA6 17 5#D= LDEX 5 ANUM(3) [GET CHARACTER COUNT 20 5#XW SBN 5 41 [MAX. TO BE PASSED ON ANYWAY (+1) 18 5*CG BNG 5 PFA7 [40 OR LESS CHARACTERS. 5 5*X6 PFA65 8 5BBQ #SKI K6FAIL>699-699 8 5BWB TRACE 1,PFA65 16 5CB2 LDN 5 40 [TRUNCATE TO 40 18 5CTL BRN PFA8 [SKIP ROUND TO GET CORE 16 5D*= PFA7 [USE ACTUAL SIZE 8 5DSW #SKI K6FAIL>699-699 8 5F#G TRACE 1,PFA7 16 5FS6 ADN 5 41 [BACK TO NORMAL 19 5G?Q PFA8 [CONFLUENCE OF CODE STREAMS 8 5GRB #SKI K6FAIL>699-699 8 5H?2 TRACE 1,PFA8 19 5HQL LDX 6 5 [SAVE COUNT FOR GETTING CORE 19 5J== LDX 7 6 [AND AGAIN TO MOVE MESSAGE 20 5JPW ADN 5 XBLEN*4+3 [ROUND AND INCLUDE APED/ANEVENT 16 5K9G SRL 5 2 [REDUCE TO WORDS 20 5KP6 SETUPCORE 5,5,APED,ANEVENT [GET SPACE FOR AND NAME NEW BLOCK 18 5L8Q HUNT 3,CPB,CUNI [GET MESSAGE BLOCK BACK 18 5LNB LDX 4 5 [SAVE BLOCK START ADDRESS 17 5M82 ADN 7 3 [ROUND FOR WORD MOVE 16 5MML SRL 7 2 [REDUCE TO WORDS 19 5N7= ADN 3 APARA [MOVE UP TO MESSAGE -FROM- 18 5NLW ADN 4 APEDSP1+XBLEN [MOVE UP TO MESSAGE -TO- 18 5P6G SMO 7 [PURE PROCEDURE MODIFY 16 5PL6 MOVE 3 0 [MOVE THE MESSAGE 18 5Q5Q LDX 3 5 [SWITCH FOR GOOD MODIFIER 17 5QKB PFA9 [OTHER INITIALIZATION 8 5R52 #SKI K6FAIL>699-699 8 5RJL TRACE 1,PFA9 16 5S4= STO 6 APEDSP1+2(3) [CHARACTER COUNT 18 5SHW LDX 5 7 [SAVE MESSAGE WORD COUNT 9 5T3G LDX 7 AWORK1(2) 15 5TH6 STO 7 APEDSP1(3) [MEMBER NO. 19 5W2Q LDN 4 APEDFAIL [CONTROL VALUE FOR IF COMMAND 10 5WGB STO 4 APEDSP1+1(3) 5 5X22 #SKI G4 21 5XFL ADN 5 9 [NO. OF WDS. FOR PARAMS. +1 WORD EACH 5 5X_= #SKI G3 21 5YDW ADN 5 5 [TWO WORD TIME + ONE WORD EACH PARAM 8 5YYG BZE 7 PFA91 20 5_D6 ADN 5 3 [THREE WORD PARAM FOR MEMBER NO. 20 5_XQ PFA91 OUTBLOCK 5 [GET THE MONITORING FILE BLOCK 14 62CB OUTMILL [TIME TAG 5 62X2 #SKI G4 4 63BL ( 7 63W= #SKI JNLPACK 4 64*W ( 9 64TG LDX 4 AWORK3(2) 9 65*6 LDX 5 AWORK4(2) 15 65SQ OUTPACKC 4,1,QUOTA [OUTPUT QUOTA 16 66#B OUTPACKC 5,1,PAGETURN [OUTPUT PAGETURNS 4 66S2 ) 8 67?L #SKI JNLPACK<1$1 4 67R= ( 15 68=W OUTNUM AWORK3(2),0 [OUTPUT QUOTA 16 68QG OUTNUM AWORK4(2),0 [OUTPUT PAGETURNS 4 69=6 ) 4 69PQ ) 8 6=9B BZE 7 PFA92 8 6=P2 LDX 3 GSIGN 7 6?8L ADX 3 2 21 6?N= DCH 7 ACOMMUNE6(3) [APPEND MEMBER NO. TO CHAR. STRING 19 6#7W OUTPARN 11,ACOMMUNE4 [PREPARE PARAM FOR MEMBER NO. 8 6#MG BRN PFA93 19 6*76 PFA92 OUTNULL [MEMBER NO. NOT APPLICABLE 21 6*LQ PFA93 OUTPARAM 6,APEDSP1+XBLEN,APED,ANEVENT [PREPARE MON. OUT BLOCK 5 6B6B PFA10 8 6BL2 #SKI K6FAIL>699-699 9 6C5L TRACE 1,PFA10 5 6CK= #SKI G4 10 6D4W MONOUT JZFAILEDG4 5 6DJG #SKI G3 16 6F46 MONOUT JZFAILED [SHOOT IT AWAY 21 6FHQ # PRODUCES - TIME FAILED IN MEMBER N:MESSAGE (N>0) 21 6G3B # OR - TIME FAILED :MESSAGE (N=0) 5 6GH2 PFA11 8 6H2L #SKI K6FAIL>699-699 8 6HG= TRACE 1,PFA11 19 6H_W ENDCOM RETURN TO COMMAND PROCESSOR 15 6JFG PFERR [BADSWAP-IN 10 6J_6 GEOERR 1,FAILGETW 7 6KDQ ZBRK COMBRKIN 10 6KYB MENDAREA 20,K100FAIL 4 6LD2 #END 8 ____ ...26246436000100000000