15 22FL #SEG CONMXC [JOHN BAILEY. 8 22PD #OPT K6CONMXC=700 7 22_= ...#OPT K0CONMXC=0 14 2394 ...#LIS K0CONMXC>K0CONMX>K0MULTIPLX>K0ALLGEO 10 23DW 8HCONMXC80 4 23YG # 4 24D6 # 19 24XQ # THIS SEGMENT MONITORS AND SERVICES THE PERI INSTRUCTIONS 19 25CB # ISSUED BY THE OBJECT PROGRAM TO A CONCEPTUAL MPX OR UPX 20 25X2 # THE FIRST PERI MUST HAVE MODE #4000 TO ESTABLISH AN INTERRUPT 20 26BL # FLAG AREA FOR THE DEVICE (SERVICED BY CONMXA), CONMXC CHECKS 10 26W= # SUBSEQUENT PERIS AND 19 27*W # 1.REPERIES THE PERIS TO THE ATTACHED LINES TO EXECUTIVE 21 27TG # USING THE CONTROL AREA IN THE AMOP ACTIVITY BLOCK ASSOCIATED 21 28*6 # WITH THE PARTICULAR LINE INVOLVED.IN THE CORRESPONDING ENTRANT 20 28SQ # IN CONLCB BLOCK THE CONTENT OF ADDMOP AND BPTR IS NOT EQUAL 21 29#B # ZERO.INTERRUPT FLAGS ON ATTACHED LINES FOR THE OBJECT PROGRAM 21 29S2 # ARE RAISED AUTONOMOUSLY FROM THE AMOP WITHOUT ENTERING EITHER 20 2=?L # 2.PERIS TO LINES WHICH DO NOT EXIST ON THE CONCEPTUAL MPX,BUT 21 2=R= # WHOSE EXISTENCE IS POSSIBLE(LINE NO LESS THAN 64) ARE SERVICED 15 2?=W # BY THE SEGMENT AS NON IMPLEMENTED PERIS 4 2?QG # 20 2#=6 # 3.ON RECEIVING A MODE #1000 PERI,THE CONCEPTUAL IS DEEMED TO 19 2#PQ # HAVE BEEN RELEASED AND THE LINE CONTROL BLOCK IS FREED 4 2*9B # 21 2*P2 # 4.ON RECEIVING PERIS TO LINE ZERO AND NON ATTACHED LINES SEGMENT 12 2B8L # JUMPS ACROSS TO K1CONMXB 4 2BN= # 4 2C7W # 4 2CMG # 11 2D76 SEGENTRY K1CONMXC,X1CONMXC 6 2D## ...#SKI JSKI14 12 2DFG ... SEGENTRY K92CONMXC,X92CONMXC 4 2DLQ # 4 2F6B # 4 2FL2 # 4 2G5L # 12 2GK= #DEF ZLEN=INTRECLEN+INTTIME-INTENT 4 2H4W # 4 2HJG # 4 2J46 # 4 2JHQ # 7 2K3B #SKI BALROG<1$1 4 2KH2 ( 8 2L2L ZAFW +AFW1 8 2LG= +AFW2 8 2L_W +AFW3 8 2MFG +AFW4 4 2M_6 ) 4 2NDQ # 9 2NYB RMASK #60077777 10 2PD2 RECCON +CONRECLEN 19 2PXL PJYCOLI +JYCOLI [CONCEPTUAL LINE NO.ILLEGAL 20 2QC= PJYNOCA +JYNOCA [CONTROL AREA OUT OF RESERVATIONS 18 2QWW PJYRESVIOL +JYRESVIOL [RESERVATION VIOLATION 16 2RBG PJYCOUNT +JYCOUNT [COUNT OUT RANGE 16 2RW6 PJYMODE +JYMODE [MODE IN ERROR 20 2S*Q PAIR1 LINK CONMXC,1 [ENTRY POINT FOR ILLEGAL ROUTINES 4 2STB # 10 2T*2 SUFR STO 0 ACOMMUNE9(2) 10 2TSL LDX 2 APETADDR(2) 10 2W#= FADDRESS 2,1,HLOCK2 8 2WRW LDX 2 FX2 10 2X?G LDX 0 ACOMMUNE9(2) 7 2XR6 EXIT 0 0 4 2Y=Q # 21 2YQB # SUBROUTINE NAFLC FINDS THE CORRESPONDING FLAGCOUNT IN OLPA,PUTS IT 17 2_=2 # IN X4 AND IN X3 IS PUT THE CHARACTER/WORD MODIFIER 4 2_PL # 4 329= # 17 32NW NAFLC LDX 3 AWORK3(2) [CONCEPTUAL LINE NO. 7 338G SRC 3 2 7 33N6 SMO 2 9 347Q LDCH 4 FLAGCT(3) 7 34MB EXIT 0 0 4 3572 # 4 35LL # 20 366= # SUBROUTINE NFLWR CREATES THE PATTERN FOR SETTING/UNSETTING THE 17 36KW # FLAG IN FLAG AREA IN X4 AND THE WORD MODIFIER IN X3 4 375G # 14 37K6 NFLWR LDX 3 AWORK3(2) [LINE NO. 8 384Q BNZ 3 REGO 8 38JB LDCT 4 #200 7 3942 EXIT 0 0 7 39HL REGO SRC 3 4 7 3=3= LDCH 5 3 9 3=GW ANDX 3 HALFTOP 7 3?2G SLC 3 4 8 3?G6 LDCT 4 #400 17 3?_Q SRL 4 0(3) [CREATE THE PATTERN 18 3#FB LDX 3 5 [LOAD THE WORD MODIFIER 7 3#_2 EXIT 0 0 4 3*DL # 4 3*Y= # 4 3BCW # 21 3BXG # SUBROUTINE SETS FLAGS.THE NUMBER OF FLAGS,BY WHICH IS THE FLAGCOUNT 12 3CC6 # TO BE INCREASED,IS EXPECTED IN X5 9 3CWQ SUB3 STO 0 AWORK1(2) 8 3DBB CALL 0 NAFLC 7 3DW2 ADX 4 5 7 3F*L SMO 2 9 3FT= DCH 4 FLAGCT(3) 7 3G#W SBX 4 5 8 3GSG BZE 4 MFNOS 9 3H#6 ZORKA LDX 0 AWORK1(2) 7 3HRQ EXIT 0 0 8 3J?B MFNOS CALL 0 NFLWR 9 3JR2 LDX 1 CFLAG(2) 7 3K=L ADX 1 3 8 3KQ= CALL 0 SUFR 8 3L9W ORS 4 0(1) 18 3LPG LDX 4 CMEMBER(2) [PROGRAM MEMBER NUMBER 10 3M96 TICKLE JOBNO(2),4 8 3MNQ BRN ZORKA 4 3N8B # 15 3NN2 # THIS SUBROUTINE CHECKS WHETHER 22AM OR 15 AM 10 3P7L RMODE LDX 7 APETADDR(2) 9 3PM= LDX 2 EVENT1(2) 8 3Q6W PMODES 2,7 8 3QLG ANDN 2 #10 8 3R66 BNZ 2 REXMO 8 3RKQ LDX 1 FX1 9 3S5B ANDX 5 RMASK(1) 8 3SK2 REXMO LDX 2 FX2 7 3T4L EXIT 0 0 4 3TJ= # 17 3W3W # SUBROUTINE CHECKS RESV RESV.VIOLATION AND CALCULATES 20 3WHG # GE0,ADDRESS OF REPLY WORD FO- NULL LINES AND LINE ZERO ROUTINE 14 3X36 SUB5 CHECKB 5,,RESV3,APETADDR(2),,RGER1 7 3XGQ EXIT 4 0 21 3Y2B # FOR THIS SUBROUTINE ONE ASSUMES HLOCKN IN X1 AND THE ADDRESS TO BE 11 3YG2 # CONVERTED IN X5 (N=1,2...N ) 4 3Y_L # 10 3_F= SUB6 ADX 1 APETADDR(2) 8 3_YW FADDRESS 1,5 7 42DG EXIT 4 0 4 42Y6 # 7 43CQ SUB7 LDX 4 6 7 43XB ANDN 4 2 8 44C2 BZE 4 RDOP 8 44WL CALL 0 NAFLC 8 45B= BZE 4 RDOP 7 45TW LDN 4 0 7 46*G SMO 2 9 46T6 DCH 4 FLAGCT(3) 8 47#Q CALL 0 NFLWR 9 47SB LDX 1 CFLAG(2) 19 48#2 ADX 1 3 [CLEAR THE BIT IN FLAGWORD 8 48RL CALL 0 SUFR 8 49?= ERS 4 0(1) 7 49QW RDOP EXIT 7 0 21 4==G # THIS SUBROUTINE MOVES NUMBER OF WORDS DEFINED IN X7 FROM AREA DEFINED 20 4=Q6 # IN X4(RELATIVE TO OBJECT PROG.) TO AREA DEFINED IN X5 (IN GEORGE) 10 4?9Q SUB9 SMO APETADDR(2) 9 4?PB LDN 1 HLOCK1 10 4#92 STO 0 ACOMMUNE9(2) 9 4#NL FOUTMOVE 1,4,5,7 10 4*8= LDX 0 ACOMMUNE9(2) 7 4*MW EXIT 0 0 4 4B7G # 20 4BM6 SREWO SLC 6 1 [SET EITHER B4 AND B5,OR B4 ONLY 8 4C6Q RSEW BNG 6 RMAJ 8 4CLB LDCT 4 #30 7 4D62 EXIT 0 0 8 4DKL RMAJ LDCT 4 #20 7 4F5= EXIT 0 0 4 4FJW # 8 4G4G OUTAC LDX 2 FX2 11 4GJ6 MACCS ,APETADDR(2),3 8 4H3Q LDCT 0 #400 8 4HHB STO 0 9(3) 8 4J32 BRN MOLFI 8 4JGL OUTRE LDX 2 FX2 11 4K2= MACCS ,APETADDR(2),3 8 4KFW STOZ 9(3) 5 4K_G MOLFI 8 4LF6 #SKI K6CONMX>99-99 10 4LYQ TRACE 9(3),WOKEN UP 8 4MDB LDX 1 FX1 9 4MY2 OLPFIN1 PAIR1(1) 4 4NCL # 4 4NX= # 10 4PBW NOLIL LDX 5 PJYCOLI(1) 8 4PWG BRN MCURD 8 4QB6 RESV2 LDX 1 FX1 10 4QTQ LDX 5 PJYNOCA(1) 8 4R*B BRN MCURD 8 4RT2 RESV3 LDX 1 FX1 10 4S#L LDX 5 PJYRESVIOL(1) 8 4SS= BRN MCURD 8 4T?W MCOWR LDX 1 FX1 10 4TRG LDX 5 PJYCOUNT(1) 8 4W?6 BRN MCURD 10 4WQQ MODIL LDX 5 PJYMODE(1) 8 4X=B MCURD LDX 2 FX2 11 4XQ2 MACCS ,APETADDR(2),3 8 4Y9L STOZ 9(3) 9 4YP= TOPCA1 PAIR1(1) 6 4_8W UNPLUG 7 4_NG ILLEGALX 5 6 4_P2 ...#SKI JSKI14 4 4_PG ...( 8 4_Q2 ...RCHN LDX 2 FX1 8 4_QG ... SBN 2 A1 9 4_R2 ... LDX 1 ATYPE(2) 8 4_RG ... BNZ 1 ZNNN 9 4_S2 ... LDX 1 BPTR(2) 8 4_SG ... BZE 1 ZNNN 9 4_T2 ... SMO FPTR(2) 8 4_TG ... STO 1 BPTR 9 4_W2 ... LDX 1 FPTR(2) 9 4_WG ... SMO BPTR(2) 8 4_X2 ... STO 1 FPTR 9 4_XG ... STOZ BPTR(2) 9 4_Y2 ... STO 2 FPTR(2) 8 4_YG ...ZNNN LDX 1 FX1 8 4__2 ... LDX 2 FX2 7 4__G ... EXIT 0 0 7 5222 ...RMV LDEX 3 4 8 522G ... BZE 3 ZEMV 7 5232 ... SMO 3 7 523G ...NMV MOVE 1 0 7 5242 ... ADX 1 3 7 524G ... ADX 2 3 7 5252 ... SBX 4 3 8 525G ...ZEMV LDN 3 512 8 5262 ... BNZ 4 NMV 7 526G ... EXIT 0 0 4 5272 ...) 20 5286 # [ENTRY FOR ALL SUBSEQUENT PERIS. 5 52MQ X1CONMXC 4 537B # 21 53M2 # IN EVENT 2 IN OLPA IS THE ADDRESS OF CA RELATIVE TO OP DATUM 15 546L # IN EVENT 3 IN OLPA IS THE LINE NO. 16 54L= # IN APETADDR IN OLPA IS THE PCA ADDRESS 6 54RD ...#SKI JSKI14 8 54YL ... CALL 0 RCHN 7 555W STOZ 6 10 55KG LDX 1 APETADDR(2) 19 5656 LDX 3 EVENT2(2) [ADDRESS OF CA RELATIVE TO OP 19 56JQ LOCKCA 1,3,3 [GEO.ADDR.OF CA IN OP INTO X3 18 574B STO 3 AWORK4(2) [GEORGE ADDRESS OF OP CA 17 57J2 LDX 5 CFLAG(2) [LOCK F.A INTO HLOCK1 8 583L CALL 4 SUB5 8 58H= LDX 5 0(3) 18 592W ANDX 5 BSP16 [B9-B23 OF TYPE/MODE WORD 15 59GG STO 5 AWORK1(2) [INTO AWORK1 8 5=26 LDX 1 FX1 17 5=FQ BZE 5 MODIL [MODE #0 IS ILLEGAL 20 5=_B LDN 4 #4200 [J. IF MODE #4000 OR MODE #200. 7 5?F2 ANDX 4 5 8 5?YL BNZ 4 TICK1 19 5#D= MHUNTW 3,AMXOR,CONLCB [DEFINE GA OF A1 IN CONLCB 7 5#XW LDX 7 3 8 5*CG ADN 3 A1 17 5*X6 LDN 4 #1000 [BRANCH IF MODE #1000 9 5BBQ BXE 5 4,M1000 15 5BWB LDX 4 CMAXLINE(2) [IS IT UPX 9 5CB2 STOZ AWORK3(2) 4 5CTL # 8 5D*= #SKI K6CONMX>99-99 4 5DSW ( 11 5F#G TRACE EVENT3(2),LINE NO 11 5FS6 TRACE AWORK1(2),MODE 4 5G?Q ) 8 5GRB BZE 4 UNIPL 17 5H?2 LDX 2 EVENT3(2) [LOAD THE LINE NUMBER 7 5HQL SRL 2 6 8 5J== SMO FX2 14 5JPW STO 2 AWORK3 [LINE NO. 18 5K9G BZE 2 NICLI [J TO LINE ZERO ROUTINES 19 5KP6 BXL 2 4,NOLAJ [LINE NO LE OR EQ 9 5L8Q BXE 2 4,NOLAJ 8 5LNB LDN 4 #100 17 5M82 BXGE 2 4,NOLIL [LINE NO GE OR EQ 64 19 5MML LDCT 6 #600 [SET MARKER NOT LINE ZERO END 20 5N7= LDX 2 FX2 [J TO NON EXISTENT LINES ROUTINE 8 5NLW BRN VUBLI 19 5P6G NOLAJ MPA 2 RECCON(1) [CALCULATE THE ADDRESS OF THE 18 5PL6 LDX 2 FX2 [CORRESPONDING ELEMENT 19 5Q5Q UNIPL STO 3 AWORK2(2) [ELEMENT ADDRESS INTO AWORK2 16 5QKB LDX 4 ADDMOP(3) [WHEN EQUALS ZERO 21 5R52 BZE 4 NOOPR [J TO NON ATTACHED-NULL LINE ROUTINES 8 5RJL LDCT 6 #400 15 5S4= STO 4 AWORK4(2) [AMOP ADDRESS 7 5SHW SMO 4 8 5T3G LDX 0 CPPTR 19 5TH6 STO 0 ACOMMUNE2(2) [POINTER TO THE DEVICE LIST 9 5W2Q LDX 0 ACTUAL(3) 8 5WGB ANDX 0 BSP16 16 5X22 STO 0 ACOMMUNE1(2) [ACTUAL LINE NO 7 5XFL LDX 4 1 13 5X_= FINDLCA ACOMMUNE2(2),ACOMMUNE1(2) 10 5YDW STO 1 ACOMMUNE3(2) 7 5YYG LDX 1 4 8 5_D6 BRN VUBLI 17 5_XQ NOOPR LDCT 6 #200 [NON ATTACHED LINES 21 62CB RIDIO SBS 7 AWORK2(2) [DISTANCE OF THE CONLCB ENTRANT FROM 19 62X2 [THE BEGINNING OF THE BLOCK 9 63BL ACROSS CONMXB,1 8 63W= NICLI LDX 2 FX2 16 64*W STO 3 AWORK2(2) [ELEMENT ADDRESS 8 64TG BRN RIDIO 4 65*6 # 4 65SQ # 17 66#B # TYPE/MODE WORD IS CHECKED-IF MODE #2000 ONLY -B20 SET 20 66S2 # -IF MODE #2000 WITH OTHER MODES -B21 SET 20 67?L # -IF MODE #2000 TOGETHER WITH #10 MODE - 21 67R= # ERROR IN MODE DISPLAYED AND PERI REJECTED 4 68=W # 15 68QG VUBLI LDX 5 AWORK1(2) [MODE WORD 20 69=6 LDX 4 5 [CHECK IF BITS 14,15,16,17 SET 8 69PQ ANDN 4 #1700 8 6=9B BNZ 4 MODIL 8 6=P2 LDN 4 #2000 20 6?8L BXU 5 4,NEDVO [IF MODE #2000 ONLY SET BIT 20 8 6?N= ORN 6 #10 8 6#7W BRN NODUT 7 6#MG NEDVO ANDX 4 5 19 6*76 BZE 4 NEKAM [J IF NOT MODE #2000 AT ALL 8 6*LQ ANDN 5 #10 20 6B6B BNZ 5 MODIL [IF MODE #10 PRESENT,GO ILLEGAL 18 6BL2 ORN 6 4 [IN OTHER CASE SET B21 17 6C5L NODUT CALL 0 NAFLC [FLAGCOUNT INTO X4 8 6CK= BNZ 4 RFVP 21 6D4W BRN TONCA [TEMPORARY FRIG ONLY!!!!!!!!!!!!!!!! 4 6DJG # 4 6F46 # 4 6FHQ # 16 6G3B LDX 1 ACOMMUNE3(2) [LCA DISPLACEMENT 10 6GH2 DLCA 1,LDX,0,FLAG 8 6H2L ANDN 0 #77 21 6HG= BZE 0 TONCA [IF NOT A FLAG DO NOTHING DND CARRY O 15 6H_W LDX 1 AWORK2(2) [CONLCB ENTRY 7 6JFG LDCT 0 1 9 6J_6 SMO BPTR(1) 9 6KDQ ORS 0 FOURTHWD 8 6KYB BRN TONCA 7 6LD2 RFVP SBN 4 1 19 6LXL SMO 2 [UNSET IN FLAGCOUNT ONE FLAG 9 6MC= DCH 4 FLAGCT(3) 8 6MWW BZE 4 TYNA 10 6NBG LDX 4 CMEMBER(2) 10 6NW6 TICKLE JOBNO(2),4 8 6P*Q BRN TONCA 21 6PTB TYNA [FLAG PATTERN INTO X4, MODIFIER INTO 13 6Q*2 CALL 0 NFLWR [X3 21 6QSL LDX 1 CFLAG(2) [RELATIVE ADDRESS OF F.A AND REL.ADDR 20 6R#= ADX 1 3 [OF THE CORRESPONDING WORD IN IT 8 6RRW CALL 0 SUFR 15 6S?G ERS 4 0(1) [SET THE FLAG 4 6SR6 # 4 6T=Q # 4 6TQB # 19 6W=2 TONCA LDX 4 6 [IF MODE #2000 ONLY ACCEPTED 17 6WPL ANDN 4 #10 [AND WAKE THE PROGRAM 8 6X9= BZE 4 NEKAM 18 6XNW LDX 5 EVENT2(2) [RELATIVE ADDRESS OF CA 19 6Y8G ADN 5 1 [DEFINE REL.ADDRESS OF CA2 9 6YN6 LDN 1 HLOCK1 17 6_7Q CALL 4 SUB6 [CONVERT TO GEO.ADDR. 7 6_MB SMO 5 7 7272 LDX 5 0 15 72LL CALL 0 RMODE [CHECK MODE 21 736= CALL 4 SUB5 [CHECK WHETHER REPLY WORD WITHIN RESV 8 73KW BRN OUTAC 4 745G # 15 74K6 # THIS SUBROUTINE ANALYSES MODES LE OR EQ #63 4 754Q # 4 75JB # 4 7642 # 19 76HL NEKAM LDX 3 AWORK2(2) [ADDRESS OF CONLCB INTO X3 13 773= LDX 4 AWORK1(2) [MODE 7 77GW ANDN 4 7 7 782G SBN 4 3 8 78G6 BZE 4 RCHE 7 78_Q SBN 4 3 18 79FB BNZ 4 ROKO [IF DOUBLE TRANSFER CHECK 20 79_2 RCHE LDN 5 7 [WHETHER THE WHOLE(7 WORDS) OF CA 21 7=DL CHECKEXT EVENT2(2),5,RESV2,APETADDR(2),,RGER1,HLOCK1 [IS WITHIN 15 7=Y= [RESERVATIONS 9 7?CW ROKO LDX 4 AWORK1(2) 17 7?XG ANDN 4 #77 [MASK LAST SIX BITS 16 7#C6 LDN 5 #30 [IF MODE LE #30 J 9 7#WQ BXL 4 5,MODNI 4 7*BB # 18 7*W2 LDN 5 #40 [IF MODE GE OR EQ #40 J 9 7B*L BXGE 4 5,MODVY 20 7BT= BRN MODIL [IN ANY OTHER CASE ERROR IN MODE 4 7C#W # 4 7CSG # 4 7D#6 # 17 7DRQ MODVY SRC 4 5 [IF B19 SET J MOD60 8 7F?B BNG 4 MOD60 4 7FR2 # 7 7G=L SLC 4 1 17 7GQ= BNG 4 MOD50 [IF B20 SET J MOD50 4 7H9W # 7 7HPG SLC 4 4 15 7J96 ERN 4 #42 [MODE #42 ? 8 7JNQ BNZ 4 MOD43 8 7K8B LDN 4 #42 9 7KN2 STO 4 AWORK1(2) 14 7L7L STOZ AWORK2(2) [MODE #42 8 7LM= BRN MODOK 4 7M6W [ 15 7MLG MOD43 ERN 4 1 [MODE #43? 17 7N66 BNZ 4 MODIL [IF NOT GO ILLEGAL 4 7NKQ [ 7 7P5B LDN 4 1 9 7PK2 STO 4 AWORK1(2) 8 7Q4L LDN 4 #42 14 7QJ= STO 4 AWORK2(2) [MODE #43 8 7R3W BRN MODOK 7 7RHG MOD60 SLC 4 5 15 7S36 ERN 4 #62 [MODE #62? 8 7SGQ BNZ 4 MOD66 8 7T2B LDN 4 #62 9 7TG2 STO 4 AWORK1(2) 14 7T_L STOZ AWORK2(2) [MODE #62 8 7WF= BRN MODOK 4 7WYW [ 15 7XDG MOD66 ERN 4 4 [MODE #66? 8 7XY6 BNZ 4 MODIL 8 7YCQ LDN 4 #42 9 7YXB STO 4 AWORK1(2) 8 7_C2 LDN 4 #22 14 7_WL STO 4 AWORK2(2) [MODE #66 8 82B= BRN MODOK 4 82TW [ 7 83*G MOD50 SLC 4 4 15 83T6 ERN 4 #53 [MODE #53? 8 84#Q BNZ 4 MODIL 18 84SB ORN 6 2 [SET B22 IN X6 -MODE #10 8 85#2 LDN 4 #11 14 85RL STO 4 AWORK1(2) [MODE #53 8 86?= LDN 4 #42 9 86QW STO 4 AWORK2(2) 8 87=G BRN MODOK 17 87Q6 MODNI SRC 4 5 [B19 SET,MOD #20 ? 8 889Q BPZ 4 MOMAL 15 88PB SLC 4 2 [B21 SET ? 8 8992 BNG 4 MOD26 7 89NL SLC 4 3 15 8=8= ERN 4 #22 [MODE #22 ? 8 8=MW BNZ 4 MOD23 14 8?7G LDN 4 #22 [MODE #22 9 8?M6 STO 4 AWORK1(2) 9 8#6Q STOZ AWORK2(2) 8 8#LB BRN MODOK 4 8*62 [ 19 8*KL MOD23 ERN 4 3 [IF NOT MODE #21 MODE ILLEGAL 8 8B5= BNZ 4 MODIL 8 8BJW LDN 4 #21 14 8C4G STO 4 AWORK1(2) [MODE #21 9 8CJ6 STOZ AWORK2(2) 8 8D3Q BRN MODOK 4 8DHB [ 7 8F32 MOD26 SLC 4 3 20 8FGL ERN 4 #26 [IF MODE #26 THAN OK OTHERWISE 14 8G2= BNZ 4 MODIL [ILLEGAL 7 8GFW LDN 4 2 9 8G_G STO 4 AWORK1(2) 8 8HF6 LDN 4 #22 14 8HYQ STO 4 AWORK2(2) [MODE #26 8 8JDB BRN MODOK 20 8JY2 MOMAL SLC 4 1 [IF BIT 20 IN X4 NOT SET J MODJE 8 8KCL BPZ 4 MODJE 4 8KX= [ 7 8LBW SLC 4 4 15 8LWG ERN 4 #11 [MODE #11 ? 8 8MB6 BNZ 4 MOD13 18 8MTQ ORN 6 2 [SET B22 IN X6 -MODE #10 8 8N*B LDN 4 #11 9 8NT2 STO 4 AWORK1(2) 14 8P#L STOZ AWORK2(2) [MODE #11 8 8PS= BRN MODOK 4 8Q?W [ 21 8QRG MOD13 ERN 4 2 [IF ALSO NOT MODE #13,MODE ILLEGAL 8 8R?6 BNZ 4 MODIL 7 8RQQ ORN 6 2 8 8S=B LDN 4 #11 9 8SQ2 STO 4 AWORK1(2) 7 8T9L LDN 4 2 14 8TP= STO 4 AWORK2(2) [MODE #13 16 8W8W BRN MODOK [B22 - MOD *10 4 8WNG [ 18 8X86 MODJE SLC 4 1 [IF B21 NOT SET J M123 8 8XMQ BPZ 4 M123 4 8Y7B [ 14 8YM2 SLC 4 3 [MODE#4 ? 7 8_6L ERN 4 4 8 8_L= BNZ 4 MODIL 14 925W LDX 3 ACOMMUNE3(2) [MODE *4 20 92KG JLUNBUSY 3,OUTAC [ACCEPT IMMEDIATELY IF NOT BUSY. 20 9356 LDX 4 ACOMMUNE1(2) [PERI *40004 + LINE NO INTO DCA 7 93JQ SRC 4 9 8 944B ORX 4 BIT9 7 94J2 ORN 4 4 13 953L DCA ACOMMUNE2(2),STO,4,MODE 10 95H= GLPERI ACOMMUNE2(2) 9 962W JLBUSY 3,OUTRE 8 96GG BRN OUTAC 7 9726 M123 LDN 0 1 7 97FQ LDN 5 2 7 97_B SLC 4 3 7 98F2 SBN 4 2 16 98YL BNG 4 MOD1 [J FOR MODE #1 16 99D= BZE 4 MOD2 [J FOR MODE #2 9 99XW STO 0 AWORK1(2) 14 9=CG STO 5 AWORK2(2) [MODE #3 8 9=X6 BRN MODOK 14 9?BQ MOD2 STO 5 AWORK1(2) [MODE #2 8 9?WB BRN ROK 14 9#B2 MOD1 STO 0 AWORK1(2) [MODE #1 9 9#TL ROK STOZ AWORK2(2) 4 9**= # 19 9*SW MODOK SLC 6 1 [CHECK IF NORMAL LINES OR 20 9B#G BNG 6 ZVLAL [LEGAL LINES BUT NOT AVAILABLE 21 9BS6 SRC 6 1 [OR LINE REFERRING TO NULL ELEMENT 4 9C?Q # 20 9CRB CALL 7 SUB7 [CALL SUBROUTINE WHICH CHECKS THE 21 9D?2 [PRESENCE OF M #10 & UNSETS ALL FLAGS 18 9DQL LDX 3 AWORK4(2) [ADDRESS OF AMOP INTO X3 9 9F== LDX 4 AWORK1(3) 20 9FPW ADN 4 1 [STORE MAX.NO OF CHARACTERS TO BE 18 9G9G STO 4 AWORK3(2) [TRANSFERRED INTO AWORK3 4 9GP6 # 20 9H8Q LDX 3 ACOMMUNE3(2) [LINE ENTRY DISPLACEMENT IN LCA 21 9HNB LDN 4 1 [PRESET TO ACCESS WDS 2-4 OF O.P. CA. 18 9J82 JLUNBUSY 3,RLCFR [J. IF CURRENT IS FREE. 20 9JML LDX 0 AWORK2(2) [J. TO REJECT IF DOUBLE TRANSFER 8 9K7= BNZ 0 OUTRE 18 9KLW JLSBUSY 3,OUTRE [OR SPOUT IS ALSO BUSY. 20 9L6G RSPOU ADN 3 ILMODE2-ILMODE [SET MODIFIER TO ACCESS SPOUT. 21 9LL6 RLCFR ADX 4 EVENT2(2) [PTR. TO RELEVANT PART OF O.P. C.A. 21 9M5Q LDN 5 5 [MOVE 3 WDS (CA2-CA4 OR CA5-CA7) INTO 15 9MKB LDN 7 3 [X5,X6,X7. 8 9N52 CALL 0 SUB9 13 9NJL LDX 4 AWORK1(2) [MODE 18 9P4= ORX 4 BIT9 [PLUS ADDITIVE #40000. 15 9PHW RELO DLCA 3,DLA,6,COUNT [SET UP LCA. 10 9Q3G DLCA 3,STO,7,CTSA 20 9QH6 DLCA 3,DLA,4,MODE [RWA GOES IN LAST TO PREVENT ANY 20 9R2Q DLCA 3,STO,5,CREP [PREMATURE DESPOUTING BY EXEC. 20 9RGB LDX 0 AWORK2(2) [J. IF SPOUT NOW DEALT WITH OR IF 16 9S22 BZE 0 RKON [SINGLE TRANSFER. 18 9SFL LDN 4 4 [ACCESS O.P.'S CA5-CA7. 17 9S_= STO 0 AWORK1(2) [STORE SPOUTED MODE. 21 9TDW STOZ AWORK2(2) [SET MARKER TO SHOW FINISHED AT NEXT 14 9TYG BRN RSPOU [TEST. 15 9WD6 RKON LDX 3 ACOMMUNE3(2) [LCA POINTER. 21 9WXQ JLLD 3,XDESP [J. UNLESS CURRENT TERMINATED WHILE 21 9XCB DLCA 3,STOZ,,CREP2 [LOADING SPOUT: IF SO CLEAR SPOUT & 20 9XX2 BRN RELO [J. TO SET UP CURRENT INSTEAD. 14 9YBL XDESP LDX 4 ACOMMUNE1(2) [LINE NO. 7 9YW= SRC 4 9 21 9_*W DCA ACOMMUNE2(2),STO,4,MODE [INTO TOP 9 BITS OF K50 MODE WORD 10 9_TG LDX 4 APETADDR(2) 8 =2*6 ADN 4 ASTOP 13 =2SQ DCA ACOMMUNE2(2),STO,4,DTSA 10 =3#B RX3 GLPERI ACOMMUNE2(2) 7 =3S2 LDX 4 9 8 =4?L BNG 4 OUTAC 11 =4R= MACCS ,APETADDR(2),3 8 =5=W STOZ 9(3) 8 =5QG LDX 1 FX1 7 =6=6 #SKI BALROG<1$1 4 =6PQ ( 10 =79B SMO APETADDR(2) 8 =7P2 LDCH 3 ANM 8 =88L SMO FX1 9 =8N= LDX 3 ZAFW(3) 10 =97W SMO APETADDR(2) 8 =9MG LDN 0 0(3) 10 ==76 SMO APETADDR(2) 10 ==LQ STO 0 CHAINADD+K47 4 =?6B ) 6 =?L2 #SKI BALROG 4 =#5L ( 10 =#K= LDX 0 APETADDR(2) 7 =*4W SMO 0 10 =*JG STO 0 CHAINADD+K47 4 =B46 ) 9 =BHQ LINKSET 2,PAIR1 6 =C3B COOR1X 4 =CH2 # 17 =D2L # THIS ROUTINE SERVICES LINES LEGAL BUT NOT AVAILABLE 4 =DG= # 13 =D_W ZVLAL LDX 4 AWORK1(2) [MODE 19 =FFG SBN 4 4 [IF MODE #4,ACCEPT THE PERI 8 =F_6 BZE 4 OUTAC 7 =GDQ SRC 6 1 21 =GYB CALL 7 SUB7 [SUB7 CHECKS THE PRESENCE OF MODE #10 7 =HD2 STOZ 7 7 =HXL LDN 5 1 20 =JC= ZDENA ADX 5 EVENT2(2) [REL.ADDRESS OF THE CA2 OR CA5 9 =JWW LDN 1 HLOCK1 19 =KBG CALL 4 SUB6 [CALCULATE GA OF CA2 OR CA5 7 =KW6 SMO 5 7 =L*Q LDX 5 0 18 =LTB CALL 0 RMODE [CHECK MODE OF REPLY WORD 20 =M*2 CALL 4 SUB5 [CHECK WHETHER WITHIN RESV.VIOL 9 =MSL LDN 1 HLOCK3 16 =N#= CALL 4 SUB6 [GEO ADDR OF R.W. 21 =NRW LDCT 4 #20 [SET IN THE 1ST OR 2ND R.W.B4 - NOT 15 =P?G SMO 5 [IMPLEMENTED 7 =PR6 STO 4 0 15 =Q=Q ADN 7 1 [NO OF FLAGS 9 =QQB LDX 0 AWORK2(2) 17 =R=2 BZE 0 SEPAP [IF SINGLE TRANSFER J 9 =RPL STOZ AWORK2(2) 7 =S9= LDN 5 4 5 =SNW #SKI G4 12 =T8G CLEAR APETADDR(2),0,HLOCK3 8 =TN6 BRN ZDENA 7 =W7Q SEPAP LDX 5 7 21 =WMB CALL 0 SUB3 [CALL SUBROUTINE FOR SETTING FLAGS 8 =X72 BRN OUTAC 4 =XLL # 4 =Y6= # 14 =YKW # THIS ROUTINE SERVICES MODE #200 PERIS. 4 =_5G # 4 =_K6 # 21 ?24Q TICK1 ANDN 4 #4000 [MODE #4000 IS ILLEGAL AT THIS POINT. 8 ?2JB BNZ 4 MODIL 21 ?342 LDX 6 CMAXLINE(2) [MODE #200 IS ILLEGAL FOR UNIPLEXERS. 8 ?3HL BZE 6 MODIL 20 ?43= LDX 1 EVENT2(2) [GET 2ND. WORD OF CONTROL AREA. 7 ?4GW ADN 1 1 10 ?52G SMO APETADDR(2) 9 ?5G6 LDN 3 HLOCK1 8 ?5_Q FADDRESS 3,1 20 ?6FB LDXC 6 0(1) [NO. OF 100 MILLISEC. INTERVALS 21 ?6_2 BCS MODIL [REQUIRED BETWEEN TIMING INTERRUPTS. 18 ?7DL BZE 6 MODIL [ILLEGAL IF -VE. OR ZERO. 8 ?7Y= #SKI K6CONMXC>99-99 10 ?8CW TRACE 6,MODE 200 21 ?8XG LDX 7 EVENT3(2) [CONTENTS OF (POSSIBLY REPLACED) X. 21 ?9C6 ADN 6 1 [GEORGE TIMING IS IN 200 MILLISECS. 15 ?9WQ ANDN 7 #77 [GET UNIT NO. 20 ?=BB SRL 6 1 [ROUND COUNT UP & DIVIDE BY 2. 21 ?=W2 TICK2 HUNTMISB 3,AMXOR,INTRPT [LOOK FOR TABLE OF THE TICKLEWORTHY. 19 ??*L BPZ 3 TICK8 [J. IF ONE ALREADY EXISTS. 21 ??T= BNG 4 TICK6 [J. IF WE'VE JUST SET ONE UP & ITS OK 21 ?##W BNZ 4 TICK4 [J. IF ONE WAS THERE BUT NO LONGER IS 21 ?#SG LDN 3 INTTIME-INTENT [NO BLOCK THERE : MUST SET ONE UP. 21 ?*#6 LDCT 4 #400 [SET SWITCH TO SHOW START FROM SCRATC 7 ?*HY ...#SKI JSKI14<1$1 21 ?*RQ TICK3 SETNCORE INTRECLEN(3),1,AMXOR,INTRPT [GET A NEW (OR LARGER) BLOCK. 6 ?*T7 ...#SKI JSKI14 4 ?*WJ ...( 11 ?*X_ ...TICK3 GETCOREN INTRECLEN(3),0 8 ?*_B ... BRN YSCOR 8 ?B2R ... CALL 0 RCHN 8 ?B48 ... COOR3 #1 8 ?B4W ... CALL 0 RCHN 8 ?B5K ... BRN TICK3 7 ?B72 ...YSCOR FINDCORE 1 11 ?B8C ... NAME 1,AMXOR,INTRPT 4 ?B9S ...) 21 ?B?B STOZ INTENT(1) [ONLY REALLY NEEDED FOR NEW BLOCK. 7 ?BR2 LDX 5 1 6 ?BTK ...#SKI JSKI14 4 ?BY8 ...( 8 ?C2R ... CALL 0 RCHN 7 ?C5B ... LDX 1 5 4 ?C7_ ...) 20 ?C=L BRN TICK2 [FIND TABLE (IF ANY) AFTER COOR. 21 ?CQ= TICK4 LDN 4 ZLEN [TABLE GONE : CUT NEW ONE TO 1 ENTRY. 21 ?D9W TICK5 ALTLENG 1,4 [CUT BACK SIZE OF BLOCK JUST SET UP. 7 ?DPG LDX 1 5 7 ?F96 TICK6 LDX 3 5 21 ?FNQ CHAIN 1,BMISC+1 [CHAIN NEW BLOCK INTO MISCELLANEOUS 14 ?G8B LDX 1 3 [CHAIN. 19 ?GN2 LDN 0 1 [ADD 1 TO COUNT OF ENTRIES. 10 ?H7L ADX 1 ALOGLEN(3) 9 ?HM= ADS 0 INTENT(3) 9 ?J6W LDX 4 JOBNO(2) 21 ?JLG TICK7 LDX 5 CFLAG(2) [ADDRESS OF 1ST. WD. OF FLAG AREA. 20 ?K66 STO 6 INTTIME-ZLEN(1) [NO. OF SPRING CLEANS PER TICKLE. 21 ?KKQ ADN 5 3 [INTERRUPT FLAG GOES IN LAST WORD. 14 ?L5B STO 7 INTUNIT-ZLEN(1) [UNIT NO. 21 ?LK2 STO 6 INTNEXT-ZLEN(1) [######SC'S TO NEXT TICKLE. (+1 INITI 21 ?M4L STO 5 INTFLAG-ZLEN(1) [ADDRESS OF FLAG WORD. [ALLY). 14 ?MJ= STO 4 INTJOBNO-ZLEN(1) [JOB NO. 18 ?N3W BRN OUTAC [SET ^ACCEPTED^ & OLPFIN. 18 ?NHG TICK8 BZE 4 TIK10 [J. IF 1ST. TIME THROUGH. 21 ?P36 LDX 2 ALOGLEN(3) [IS BLOCK JUST SET UP STILL BIG ENOUG 20 ?PGQ BXGE 2 ALOGLEN(1),TICK9 [J. IF NOT, TO GET ANOTHER ONE 20 ?Q2B LDN 4 INTENT(3) [OTHERWISE SHIFT CONTENTS OF OLD 17 ?QG2 LDN 5 INTENT(1) [BLOCK INTO NEW ONE. 8 ?Q_L MOVE 4 0(2) 20 ?RF= SBN 5 INTENT [REMEMBER ADDRESS OF NEW BLOCK. 21 ?RYW LDN 4 INTRECLEN(2) [& SIZE OF OLD 1 PLUS 1 TABLE ENTRY. 16 ?SDG FREECORE 3 [FREE OLD BLOCK. 19 ?SY6 LDX 1 5 [J. IF NEW BLOCK JUST RIGHT 11 ?TCQ BXE 4 ALOGLEN(1),TICK6 21 ?TXB BRN TICK5 [OTHERWISE SHORTEN IT AS NECESSARY. 21 ?WC2 TICK9 FREECORE 1 [FREE NEW BLOCK ('COS ITS TOO SHORT). 18 ?WWL BRN TIK13 [J. TO GET NEW NEW BLOCK. 20 ?XB= TIK10 LDX 4 JOBNO(2) [SEE IF THERE IS ALREADY AN ENTRY 16 ?XTW LDN 1 ZLEN(3) [FOR THIS UNIT. 9 ?Y*G LDX 0 INTENT(3) 10 ?YT6 TIK11 LDN 5 INTRECLEN(1) 13 ?_#Q BXU 4 INTJOBNO-ZLEN(1),TIK12 21 ?_SB BXE 7 INTUNIT-ZLEN(1),TICK7 [J. IF AN OLD ENTRY FOUND : OVERWRI 21 #2#2 TIK12 LDX 1 5 [IT. 8 #2RL BCT 0 TIK11 21 #3?= TIK13 LDX 3 ALOGLEN(3) [NO PREVIOUS ENTRY : GET NEW, LONGER 20 #3QW BRN TICK3 [BLOCK & COPY OLD TABLE INTO IT. 4 #4=G # 4 #4Q6 # 15 #59Q # THIS ROUTINE SERVICES MODE #1000 PERIS. 4 #5PB # 4 #692 # 5 #6NL M1000 8 #78= #SKI K6CONMX>99-99 11 #7MW TRACE AWORK1(2),M1000 19 #87G LDX 6 CMAXLINE(2) [HIGHEST LINE NO AS A COUNT 15 #8M6 BZE 6 SECOM [UPX OR MPX ? 20 #96Q LDX 1 ADDMOP(3) [CHECK IF ANY TRANSFER CONCERNING 18 #9LB BZE 1 MJEJE [LINE ZERO IN PROGRESS 8 #=62 BRN OUTRE 21 #=KL SECOM SBN 3 CONRECLEN [IN X3 IS THE ADDR OF A1 IN CONLCB 7 #?5= ADN 6 1 21 #?JW MJEJE ADN 3 CONRECLEN [CREATE THE ADDRESS OF NEXT ENTRANT 21 ##4G LDX 4 BPTR(3) [THE LINE IS CHECKED WHETHER IT IS 21 ##J6 BZE 4 METE [BUSY.IF BPTR=0 LINE CAN'T BE BUSY 20 #*3Q LDX 4 ADDMOP(3) [IF BPTR IS NOT ZERO AND ADDMOP=0 20 #*HB BZE 4 OUTRE [LINE IS BUSY-A NON-ATTACHED LINE 16 #B32 [WITH STORED READ 7 #BGL SMO 4 18 #C2= LDX 1 CPPTR [POINTER TO DEVICE LIST 9 #CFW STO 1 AWORK2(2) 21 #C_G LDX 4 ACTUAL(3) [LOAD THE ACTUAL LINE NO AND UNIT NO 14 #DF6 ANDX 4 BSP16 [INTO X4 10 #DYQ FINDLCA AWORK2(2),4 9 #FDB JLBUSY 1,OUTRE 20 #FY2 METE BCT 6 MJEJE [IF NOT BUSY CHECK FURTHER LINE 11 #GCL MACCS ,APETADDR(2),1 16 #GX= LDX 0 GSIGN [SET W9 ACCEPTED 8 #HBW STO 0 9(1) 4 #HWG # 21 #JB6 # THIS ROUTINE UNRINGS THE ELEMENTS IN AMXOR,ALINES AND CONLCB BLOCKS 4 #JTQ # 20 #K*B LDX 6 CMAXLINE(2) [MAX.NO.OF ENTRANTS AS THE COUNT 15 #KT2 BNZ 6 UNRI [UPX OR MPX ? 7 #L#L ADN 6 1 21 #LS= UNRI LDX 1 BPTR(3) [IS IT AN ENTRANT CORRESPONDING TO 21 #M?W BZE 1 RJEST [AN ATTACHED LINE - UNLESS IT IS J 19 #MRG STOZ BPTR(1) [ZEROIZE BPTR IN AMXOR,ALINES 18 #N?6 STOZ BPTR(3) [ZEROIZE BPTR IN CONLCB 20 #NQQ RJEST SBN 3 CONRECLEN [CREATE ADDRESS OF NEXT ELEMENT 8 #P=B BCT 6 UNRI 18 #PQ2 LDN 6 CHAINADD(2) [FIND ENTRY FOR THIS OLPA 20 #Q9L HUNT2B 2,APERI,APERIRES [IN THE PERIPHERAL RESERVATION 18 #QP= PIDAS LDX 4 A1+1(2) [BLOCK IN ORDER TO GET 9 #R8W ANDX 4 BITS22LS 7 #RNG TXU 6 4 8 #S86 BCC ZUPIK 20 #SMQ ADN 2 2 [TYPE/UNIT NO. ENTRY FOR RELEASE. 8 #T7B BRN PIDAS 8 #TM2 ZUPIK RELOFP A1(2) 4 #W6L # 19 #WL= RGER1 GEOERR 1,COORDERR [COORDINATION DURING CHECKA 4 #X5W # 4 #XKG # 6 #XL2 ...#SKI JSKI14 4 #XLG ...( 6 #XM2 ...X92CONMXC 18 #XMG ... LDX 2 3 [START ADDRESS IN BLK. 8 #XN2 ... SBN 1 A1 16 #XNG ... LDX 6 ALOGLEN(1) [LTH. OF CHAPTER 7 #XP2 ... LDX 4 6 8 #XPG ... ADN 4 A1 16 #XQ2 ... CALL 0 RMV [MOVE INTO BLOCK 16 #XQG ... LDX 3 2 [SAVE END OF CHAP 7 #XR2 ... SBX 2 6 7 #XRG ... SBX 1 6 15 #XS2 ... STO 2 FX1 [RESET FX1 8 #XSG ... SBN 2 A1 18 #XT2 ... STOZ ATYPE(2) [MARK ^CHAPTER IN BLOCK^ 9 #XTG ... STOZ BPTR(2) 9 #XW2 ... STO 2 FPTR(2) 8 #XWG ... ORX 2 GSIGN 16 #XX2 ... STO 2 KTAB+KCONMXC [RESET KTAB ENTRY 9 #XXG ... ADNC 2 ZRS+A1 18 #XY2 ... BRN (2) [JUMP INTO COPIED VERSION 8 #XYG ...ZRS SBN 1 A1 9 #X_2 ... TXU 1 GFIXCHAP 8 #X_G ... BCS NOTFX 9 #Y22 ... STOZ BACK2(1) 8 #Y27 ... BRN TINFX 5 #Y2# ...NOTFX 9 #Y2G ... LDX 0 ASIZE(1) 9 #Y2H ... LDX 2 AFLAG(1) 7 #Y2J ... ANDN 2 2 8 #Y2K ... BZE 2 NVREZ 18 #Y2L ...[ J IF NOT FROZEN CHAPTER 9 #Y2M ... SBS 0 FREZCHAP 19 #Y2N ...[ UPDATE FROZEN CHAPTER SIZE 8 #Y2P ... BRN TVREE 5 #Y2Q ...NVREZ 15 #Y32 ... SBS 0 ACHAP [UPDATE ACHAP 5 #Y3= ...TVREE 17 #Y3G ... FREECORE 1 [FREE CHAPTER BLOCK 9 #Y42 ...TINFX ACROSS CONMXA,92 4 #Y4G ...) 8 #Y56 #SKI K6ALLGEO>99-99 10 #YJQ MENDAREA 40,K100CONMXC 4 #_4B # 4 #_J2 # 4 *23L #END 8 ____ ...56305213003200000000