13 22FL #LIS K0PCTCON>K0PCT>K0ALLGEO>K0GREATGEO 16 22_= #SEG PCTCON8 [G CONSTANTINIDES 9 23DW 8HPCTCON8 7 23YG # ENTRY POINTS 11 24D6 SEGENTRY K1PCTCON,Z1PCTCON 11 24MY ... SEGENTRY K2PCTCON,Z2PCTCON 11 24XQ SEGENTRY K3PCTCON,Z3PCTCON 12 25CB MENDAREA APCTGAP,K100PCTCON 4 25X2 [ 20 26BL [ THIS SEGMENT IS THE CENTRAL CONTROL SEGMENT FOR THE PCT ROUTINES 4 26W= [ 4 27*W # 14 27TG XALPHA #74 [ALPHA 13 28*6 XBETA #75 [BETA 14 28SQ XDELTA #76 [DELTA 8 29#B XDELMAX #40 4 29S2 # 5 2=?L TABTYPE 16 2=R= [OUTPUT ROUTINE 17 2?=W BRN ZLP [LINE PRINTER 7021 17 2?QG BRN ZCR [CARD READER 7022 17 2#=6 BRN ZTW [TELE-TYPEWRITER 7023 17 2#PQ BRN ZTR [TAPE READER 7024 17 2*9B BRN ZTP [TAPE PUNCH 7025 4 2*P2 # 4 2B8L ZLP 17 2BN= ACROSS PCTLPTP,1 [LINE PRINTER ROUTINE 4 2C7W ZCR 17 2CMG ACROSS PCTCRTR,1 [CARD READER ROUTINE 4 2D76 ZTW 18 2DLQ ACROSS PCTCIN,1 [TELE-TYPE INPUT ROUTINE 4 2F6B ZTR 17 2FL2 ACROSS PCTCRTR,1 [TAPE READER ROUTINE 4 2G5L ZTP 17 2GK= ACROSS PCTLPTP,1 [TAPE PUNCH ROUTINE 4 2H4W # 10 2HJG XLINK PAIR PCTSTART,1 4 2J46 # 9 2JHQ PHUINOP +HUINOP 9 2K3B PJINOP +JINOP 11 2KH2 ONEDAY 24*3600/K9*1000 9 2L2L YEMODE40004 #40004 4 2LG= # 18 2L_W [ THIS SUBROUTINE CHECKS WHETHER IT IS NECESSARY TO ABANDON 18 2MFG [ SYSTEM USE OF THE LINE, AND ATTEMPTS TO DO SO IF IT IS. 4 2M_6 [ 21 2NDQ [ IT EXITS AT LINK+1 IF NO CLOSE DOWN REQUIRED, AND AT LINK+0 IF NOT YET 21 2NYB [ ABLE TO CLEAR UP BECAUSE ACTIVITIES &/OR CONSOLE OUTPUT STILL EXIST 21 2PD2 [ (IF ENTRY IS FROM THE INOP. PATH IT DOESN'T BOTHER ABOUT CONSOLE O/P). 21 2PXL [ IF EVERYTHING IS CLEARED UP IT DOES NOT EXIT, BUT SUICIDES INSTEAD. 4 2QC= # 19 2QWW QOFF1 ORX 5 GSIGN [SET MARKER FOR QOFF1 ENTRY. 8 2RBG LDX 2 FX2 11 2RW6 QOFF2 MHUNTW 3,A7020,INFORM 18 2S*Q LDXC 0 ALINESTAT(3) [J. IF NOT MOPPING OFF. 8 2STB BCS YMPOF 21 2T*2 LDCT 0 #100 [OR FINISHING (^FINISH NOW^ BIT SET^) 9 2TSL ANDX 0 FINISH 15 2W#= BZE 0 QOFF5 [TO EXIT +1. 18 2WRW LDCT 0 #600 [SET THE FINISH MARKER. 10 2X?G ORS 0 ALINESTAT(3) 21 2XR6 YMPOF LDX 0 JOBRING+BPTR(2) [J. IF ACTIVITIES STILL BEING CREATED 10 2Y=Q SBN 0 JOBRING(2) 8 2YQB BNZ 0 (5) 21 2_=2 LDN 2 FPTPCT(3) [J. UNLESS SOME ACTIVITIES ARE STILL 21 2_PL BXE 2 BPTPCT(3),ZMPOF [RUNNING, IN WHICH CASE ENSURE THAT 21 329= LDCT 4 1 [THE MOP OFF MARKER IS SET IN EACH 21 32NW STOP LDX 2 FPCT(2) [BUFFER BLOCK, AND THAT THE ACTIVITY 17 338G LDXC 0 APCTID-FPTPCT(2) [IS KICKED INTO LIFE. 8 33N6 BCS (5) 11 347Q ORS 4 EWAIT-FPTPCT(2) 7 34MB LDX 7 2 9 3572 SBN 2 FPTPCT 7 35LL LDX 1 2 7 366= PCTFACT 2 9 36KW LDX 0 EWAIT(1) 9 375G STOC 0 EWAIT(1) 19 37K6 BCC QOFF3 [J. UNLESS WAITING ON COOR1. 6 384Q FPUT 8 38JB BRN QOFF4 21 3942 QOFF3 WAITSTOP QOFF4 [WAKE UP IF IN LONG WAIT OR DEMAND. 7 39HL QOFF4 LDX 2 7 17 3=3= BRN STOP [J. BACK FOR NEXT. 4 3=GW # 7 3?2G QOFF5 ADN 5 1 21 3?G6 BRN (5) [EXIT +1 (X5 MAY BE -VE : DON'T SET V 4 3?_Q # 21 3#FB ZMPOF BNG 5 QOFF6 [J. IF ENTRY FROM INOP. LINE PATH. 21 3#_2 HUNTW 2,A7020,CONSOUT [J. IF TW O/P STILL TO BE DEALT WITH. 8 3*DL BPZ 2 (5) 21 3*Y= LDX 2 3 [ARE ANY INTERFACES STILL FLIPPED? 7 3BCW LDN 0 0 10 3BXG NXFLP LDXC 4 APCTSTAT(2) 8 3CC6 BCS NOTOP 9 3CWQ ORX 0 APCTD(2) 9 3DBB ORX 0 APCTX(2) 7 3DW2 NOTOP ADNC 4 1 9 3F*L ADN 2 APCTRLEN 8 3FT= BNZ 4 NXFLP 8 3G#W ANDN 0 #77 8 3GSG BNZ 0 (5) 21 3H#6 QOFF6 MHUNTW 3,A7020,ALCB [CLEAR UP THE RING & DIE GRACEFULLY. 10 3HRQ STOZ A1+BPTR(3) 10 3J?B LDX 2 A1+FPTR(3) 8 3JR2 LDX 4 GSIGN 9 3K=L STOZ BPTR(2) 10 3KQ= ORS 4 FOURTHWD(2) 9 3KST ... FSHCODE B,NOKILLA 4 3KXD ...( 7 3L23 ... FSHKILL 5 3L4L ...NOKILLA 4 3L79 ...) 7 3L9W SUICIDE 4 3LPG # 4 3M96 # 21 3MNQ [ THIS SUBROUTINE SETS UP CPA ACTIVITIES FOR C/R, T/R OR CONSOLE INPUT 17 3N8B [ ENGAGES AND ACTLF'S WHEN THE L/P OR T/P ARE ENGAGED 11 3NN2 [ THE ROUTINE IS CALLED FROM X7 20 3P7L [ ON ENTRY X4 CONTAINS IN CH.3. THE INTERFACE BIT POSITIONS FOR THE 12 3PM= [ ACTIVITIES WHICH NEED TO BE SET UP 4 3Q6W [ 5 3QLG SETACT 16 3R66 SLL 4 6 [REMOVE THE 'NO 16 3RKQ ERS 4 APCTD(2) [ACTIVITY' BITS 15 3S5B LDX 2 FX2 [REMEMBER THE 15 3SK2 STO 6 ACOMMUNE1(2) [STATUS REPLY 21 3T4L SMO APCTP(3) [REMEMBER THIS PCT'S IDENTIFIER WORD. 10 3TJ= LDX 0 IDUNIQUE(3) 19 3W3W SBX 7 FX1 [RELITAVISE THE CALL ADDRESS 16 3WHG STO 7 ACOMMUNE2(2) [AND REMEMBER IT 10 3X36 STO 0 ACOMMUNE3(2) 21 3XGQ LDX 2 3 [X2 TO POINT TO THE INFORMATION BLOCK 19 3Y2B LDN 6 12 [DEVICE DESCRIPTION LENGTH 8 3YG2 BRN NWACT 19 3Y_L NEWAC MHUNTW 2,A7020,INFORM [FIND THE INFORMATION BLOCK 19 3_F= NWACT LDX 3 APCTP(2) [SET X3 TO CURRENT PCT RECORD 17 3_YW ADX 2 APCTP(2) [GET RECORD ADDRESS 13 42DG NXACT SMO 6 [GET 16 42Y6 LDX 7 APCTDEV-2(2) [THE DEVISE BIT 15 43CQ SRL 7 6 [CHARACTER 18 43XB ANDX 7 4 [IS AN ACTIVITY REQUIRED? 17 44C2 BNZ 7 OKGET [YES - THEN GET IT 17 44WL SBN 6 2 [NO - THEN TRY THE 15 45B= BNZ 6 NXACT [NEXT DEVISE 17 45TW SBX 2 3 [X3 TO POINT TO THE 17 46*G LDX 3 2 [INFORMATION BLOCK 14 46T6 LDX 2 FX2 [RESET X2 14 47#Q LDX 6 ACOMMUNE1(2) [RESET X6 14 47SB LDX 7 ACOMMUNE2(2) [DATUMISE 14 48#2 ADX 7 FX1 [THE LINK 15 48RL LDX 2 APCTP(3) [X2 TO RECORD 14 49?= ADX 2 3 [POINTER 14 49QW EXIT 7 0 [FINISH 4 4==G # 19 4=Q6 NOCOR MHUNTW 2,A7020,INFORM [FIND THE INFORMATION BLOCK 19 4?9Q LDX 3 APCTP(2) [RELATIVE PCT RECORD POINTER 19 4?PB ADX 2 APCTP(2) [STOP TO CURRENT PCT RECORD 16 4#92 SMO 6 [ACCESS THE FIRST 15 4#NL LDX 0 APCTDEV-2(2) [DEVISE WORD 14 4*8= SRL 0 6 [ISOLATE 18 4*MW ANDN 0 #7700 [INTERFACE BIT POSITION 20 4B7G ORS 0 APCTD(2) [RESET THE 'NO ACTIVITY' MARKER 20 4BM6 ERS 0 4 [REMOVE THE 'SET UP' ACTIVITY BIT 8 4BWY ... LDX 2 FX2 19 4C6Q BRN MORAC [BACK FOR THE NEXT ACTIVITY 5 4CLB OKGET 17 4D62 ADX 2 6 [POINT TO THE RECORD 21 4DKL LDX 7 APCTDEV-2(2) [ACCESS THE BIT SIGNIFICANT CHARACTER 18 4F5= DSA 3 7 [FORM THE IDENTIFIER WORD 18 4FJW LDX 0 APCTDEV-1(2) [JUMP IF WE ARE SETTING 20 4G4G SMO FX2 [REMEMBER THE 2ND DEVISE RECORD 20 4GJ6 STO 0 ACOMMUNE4 [THROUGH THE NEXT CO-ORDINATION 17 4H3Q BPZ 0 SETLF [SOURCE INTERFACE? 18 4HHB LDN 5 CPAT [ACCESS THE ACTIVITY TYPE 16 4J32 LDN 3 CPATLEN [LENGTH OF A CPAT 17 4JGL XGET SLL 5 12 [SET BLOCK TYPE WORD. 17 4K2= GETACTXO NOCOR,5,3 [OPTIONAL GETCORE. 19 4KFW LDX 1 BPTR(2) [POINTER TO THE NEW ACTIVITY 21 4K_G ENRINGD JOBRING(1),JOBRING(2)[RING ACTIVITY INTO TEMPORARY RING. 10 4LF6 LDX 0 ACOMMUNE3(2) 17 4LYQ LDX 3 ACOMMUNE4(2) [DEVISE RECORD WORD 19 4MDB LDX 2 BPTR(2) [POINTER TO THE NEW ACTIVITY 19 4MY2 STO 0 JSOURCE1(2) [STORE THE PCT IDENTIFIER. 21 4NCL STO 3 ACC4(2) [STORE THE SECOND DEVISE RECORD WORD 19 4NX= STO 7 ACC5(2) [STORE THE IDENTIFIER WORD 17 4PBW LINKSET 2,XLINK(1) [LINK TO K1PCTSTART 19 4PWG FPUT [PUT THE ACTIVITY ON THE LIST 15 4QB6 MORAC SBN 6 2 [HAVE ALL THE 17 4QTQ BNZ 6 NEWAC [BITS BEEN LOOKED AT? 14 4R*B LDX 6 ACOMMUNE1(2) [RESET X6 14 4RT2 LDX 7 ACOMMUNE2(2) [DATUMISE 14 4S#L ADX 7 FX1 [THE LINK 19 4SS= MHUNTW 3,A7020,INFORM [REFIND THE INFORMATION BLOCK 14 4T?W LDX 2 APCTP(3) [RESET 15 4TRG ADX 2 3 [THE POINTERS 14 4W?6 EXIT 7 0 [AND EXIT 20 4WQQ SETLF LDN 5 ACTLF+GREMOTE [ACCESS LISTFILE ACTIVITY TYPE 18 4X=B LDN 3 ACTLFLEN+GREMOTELEN [LENGTH OF A REM ACTLF 17 4XQ2 BRN XGET [NON GET THE ACTIVITY 4 4Y9L # 4 4YP= # 4 4_8W [ 21 4_NG [ THIS SUBROUTINE CAUSES THE PCT ACTIVITY TO WAIT. IT EXITS 1 UPON AN 13 5286 [ EVENT AND EXITS 0 ON A TIME INTERUPT 4 52MQ [ 5 537B PAUSE 19 53M2 SBX 5 FX1 [RELITAVISE THE CALL ADDRESS 16 546L LONGSET #62,XFAIL [SET WAIT FIELD 20 54L= LONGSTOP XEVENT,XWAIT [WAIT FOR EVENT OR TIME INTERUPT 5 555W XEVENT 19 55KG ADX 5 FX1 [DATUMISE THE CALL ADDRESS 16 5656 EXIT 5 1 [EXIT UPON EVENT 21 56JQ XWAIT LONGOFF [IF TIME WAKEUP - CLEAR WAIT FIELD 19 574B MHUNTW 3,A7020,INFORM [J. IF MOP OFF HAS OCCURRED. 10 57J2 LDXC 0 ALINESTAT(3) 9 583L BCS XEVENT 19 58H= ADX 5 FX1 [DATUMISE THE CALL ADDRESS 18 592W EXIT 5 0 [EXIT FOR TIME INTERUPT 10 59GG XFAIL GEOERR 1,WAIT SET 4 5=26 # 4 5=FQ # 4 5=_B # 4 5?F2 [ 21 5?YL [ THIS IS THE SUBROUTINE TO RELOCATE THE LCB, AS REQUIRED BY LOCKC MACRO 4 5#D= [ 5 5#XW ZFINDLCB 10 5*CG MHUNTW 2,A7020,ALCB 7 5*X6 EXIT 1 0 4 5BBQ # 4 5BWB # 4 5CB2 # 4 5CTL [ 20 5D*= [ THIS IS THE 7020 POLING ROUTINE. IT SELECTS THE NEXT INTERFACE TO 6 5DSW [ BE POLED 4 5F#G [ 5 5FS6 Z1PCTCON 4 5G?Q POLE 19 5GRB MHUNTW 3,A7020,INFORM [FIND THE INFORMATION BLOCK 19 5H?2 SMO APCTP(3) [GET THE SECONDARY FLIP MASK. 9 5HQL LDX 0 APCTX(3) 9 5J== LDX 7 HALFTOP 8 5JPW ANDN 0 #77 17 5K9G BZE 0 TIMETEST [J. IF NOTHING TO DO 18 5KP6 SMO APCTP(3) [OTHERWISE RESET PRIMARY 17 5L8Q ORS 0 APCTD(3) [AND CLEAR SECONDARY. 9 5LNB BRN TIMETEST 4 5M82 [ 5 5MML Z3PCTCON 11 5N7= MHUNTW 3,A7020,INFORM 15 5NLW NGN 7 #7701 [#77770077 5 5P6G TIMETEST 21 5PL6 SMO APCTP(3) [CLEAR ^INTERFACE ACTIVE^ MARKER, IF 21 5Q5Q ANDS 7 APCTX(3) [SET (ALSO SECONDARY FLIP IF K3 ENTRY 10 5QKB LDX 0 ATSLICE(3) 17 5R52 BZE 0 ONEPCT [J. IF NOT MULTIDROP 8 5RJL LDX 0 JTIME 10 5S4= SBX 0 APCTCLNCT(3) 8 5SHW BPZ 0 NODAY 20 5T3G ADX 0 ONEDAY(1) [ADD IN 24 HRS. IF PAST MIDNIGHT. 10 5TH6 NODAY TXL 0 ATSLICE(3) 17 5W2Q BCS ONEPCT [J. IF TIME SLICE UP 14 5WGB NXT SMO APCTP(3) [HAS THE 16 5X22 LDX 0 APCTSTAT+APCTRLEN(3) [LAST MULTIDROP 7 5XFL ADN 0 1 17 5X_= BZE 0 NEND [PCT BEEN REACHED? 15 5YDW LDN 0 APCTRLEN [NO - THEN 18 5YYG ADS 0 APCTP(3) [STEP RELATIVE POINTER 8 5_D6 BRN NOTED 17 5_XQ NEND STOZ APCTP(3) [BACK TO FIRST PCT 8 62CB NOTED LDX 0 JTIME 15 62X2 STO 0 APCTCLNCT(3) [TIME COUNT 5 63BL ONEPCT 7 63W= LDX 1 3 9 64*W ADX 1 APCTP(3) 16 64TG LDX 7 APCTHADD(1) [HARDWARE ADDRESS 19 65*6 CALL 1 ZFINDLCB [FIND THE LINE CONTROL BLOCK, 16 65SQ LOCKC 2,ZFINDLCB [LOCK IT, & AGAIN 19 66#B MHUNTW 3,A7020,ALCB [FIND THE LINE CONTROL BLOCK 21 66S2 DSA 7 GENQ1(3) [SET HARDWARE ADDRESS IN ENQ SEQUENCE 10 67?L LDN 7 APCTERRNUM 4 67R= REP 10 68=W LDX 4 GUNITNO(3) 8 68QG FINDLCA ,4 8 69=6 SLL 4 15 10 69PQ DCA ,STO,4,MODE 8 6=9B LDN 0 #11 10 6=P2 DLCA 1,DLA,0,MODE 9 6?8L LDN 0 GREP1(3) 10 6?N= DLCA 1,STO,0,CREP 7 6#7W LDN 0 7 10 6#MG DLCA 1,DLA,0,COUNT 9 6*76 LDN 0 GENQ1(3) 10 6*LQ DLCA 1,STO,0,CTSA 7 6B6B LDN 0 2 10 6BL2 DLCA 1,DLA,0,MODE2 9 6C5L LDN 0 GREP2(3) 10 6CK= DLCA 1,STO,0,CREP2 8 6D4W LDN 0 16 11 6DJG DLCA 1,DLA,0,COUNT2 9 6F46 LDN 0 GENQ3(3) 10 6FHQ DLCA 1,STO,0,CTSA2 6 6G3B PERI GLPERI 8 6GH2 WAIT1 LDX 0 JTIME 9 6H2L STO 0 GTIM(3) 18 6HG= WAIT LDX 0 GSIGN [SET MARKER IN PCT'S LCB 20 6H_W ORS 0 GWAIT(3) [WAITING FOR AMOP TO FPUT THE PCT 15 6JFG COOR1 [GO TO SLEEP 19 6J_6 LDX 0 GREP1(3) [ACCESS WRITE PART REPLY WORD 18 6KDQ BNG 0 WAIT [HAS THE PERI FINISHED? 7 6KYB ADXC 0 0 9 6LD2 BCS XINOP1 7 6LXL SLC 0 4 9 6MC= BPZ 0 XINOP1 7 6MWW ANDN 0 3 9 6NBG LDX 4 GREP2(3) 8 6NW6 BNZ 0 XERRX 8 6P*Q BPZ 4 WAIT2 9 6PTB LDX 0 GTIM(3) 8 6Q*2 BNG 0 WAIT1 8 6QSL BRN WAIT 7 6R#= WAIT2 ADXC 4 4 9 6RRW BCS XINOP2 7 6S?G SLC 4 4 9 6SR6 BPZ 4 XINOP2 7 6T=Q ANDN 4 7 9 6TQB BNZ 4 XERROR 9 6W=2 LDCH 6 GENQ3(3) 11 6WPL BXL 6 XALPHA(1),XSHAD 7 6X9= SLL 6 6 8 6XNW BCHX 3 SHADD 8 6Y8G XSHAD LDN 6 #7400 9 6YN6 SHADD LDCH 0 GENQ3(3) 7 6_7Q ORX 6 0 9 6_MB LDX 0 GENQ1(3) 8 7272 ANDN 0 -1 9 72LL BXU 6 0,XERROR 7 736= BCHX 3 / 7 73KW SRL 0 6 9 745G LDCH 6 GENQ3(3) 11 74K6 BXL 6 XALPHA(1),XSHST 7 754Q LDX 0 6 7 75JB BCHX 3 / 9 7642 LDCH 6 GENQ3(3) 8 76HL XSHST SBNC 0 #75 8 773= BCS YALPH 8 77GW BZE 0 YOUT 8 782G SBN 6 #30 11 78G6 BXL 6 XDELMAX(1),YOUT 8 78_Q ADN 6 #74 8 79FB YALPH SBN 6 #40 9 79_2 YOUT ANDX 3 BITS22LS 7 7=DL UNLOCK 3 21 7=Y= CALL 5 QOFF2 [TEST FOR MOP OFF, ATTACH OR FINISH. 21 7?CW NULL [DON'T WORRY IF CAN'T YET BE STOPPED. 9 7?XG LDX 2 APCTP(3) 20 7#C6 ADX 2 3 [STEP TO THE CURRENT PCT RECORD 15 7#WQ LDXC 0 APCTSTAT(2) [WAS THE PCT 15 7*BB BCC NOTOUT [INOPERABLE? 15 7*W2 LDX 0 BITS22LS [UNSET THE 16 7B*L ANDS 0 APCTINOP(3) ['ALL OUT' MARKER 21 7BT= ANDS 0 APCTSTAT(2) [AND THE INOP. & INACTIVE BITS, AND 21 7C#W LDN 0 1 [ADD 1 TO THE COUNT OF ACTIVE PCTS. 10 7CSG ADS 0 APCTACT(3) 5 7D#6 NOTOUT 21 7DRQ BZE 6 WAITAWYL [J. TO WAIT IF CONSOLE INPUT PRESSED. 21 7F?B LDCH 0 APCTX(2) [GET THIS TERMINAL'S CONSOLE OUTPUT 21 7FR2 BZE 0 STOCON [INTERFACE : J. OUT IF NO CONSOLE. 21 7G=L SRL 0 1 [CONSOLE INPUT INTERFACE IS PAIRED WI 21 7GQ= ANDX 0 6 [IS THE CONSOLE INPUT INTERFACE ACTIV 15 7H9W BZE 0 STOCON [J. IF NOT. 14 7HPG LDX 4 APCTD(2) [IS THERE 15 7J96 SRL 4 6 [ALREADY A 15 7JNQ ANDX 4 0 [CPA FOR IT ? 21 7K8B BZE 4 TESTFLIP [J TO SEE IF FLIPPED BEFORE WAITING 16 7KN2 CALL 7 SETACT [NO - SET IT UP 21 7L7L BZE 4 WAITAWYL [OK? - NO, THEN REPOLL IN A WHILE. 16 7LM= BRN NEWDEV [NOW AWAIT FLIP 4 7M6W # 5 7MLG STOCON 13 7N66 BCHX 2 / [NO 21 7NKQ LDCH 5 APCTD(2) [GET THE OPERABILITY FROM LAST TIME 21 7P5B LDCH 0 APCTX(2) [& MASK FOR ^LISTFILE TYPE INTERFACES 18 7PK2 DCH 6 APCTD(2) [REMEMBER THE OPERABILITY 20 7Q4L ANDX 5 0 [PREVIOUSLY OPERABLE LPS & TPS. 7 7QJ= LDN 4 0 20 7R3W ... LDXC 0 ALINESTAT(3) [DON'T SET UP ANY ACTIVITIES IF 15 7RHG BCS OFFED [MOPPING OFF. 7 7S36 BCHX 2 / 16 7SGQ LDCH 4 APCTD(2) [NO-ACTIVITY MASK 9 7T2B OFFED ANDX 2 BITS22LS 15 7TG2 LDCH 0 APCTD(2) [RIGHT MASK. 17 7T_L ANDX 4 0 [WITH THE RIGHT MASK 17 7WF= ANDX 4 6 [NOW WITH THE STATUS 21 7WYW ANDX 5 4 [KNOCK DOWN BITS FOR LPS & TPS EXCEPT 21 7XDG ERX 4 5 [ANY WHICH HAVE ONLY JUST BECOME OPER 16 7XY6 BZE 4 NCO [ARE THERE ANY 18 7YCQ CALL 7 SETACT [ACTIVITIES TO BE SET UP? 17 7YXB NCO LDCH 7 APCTD(2) [PUT THE RIGHT MASK 18 7_C2 ANDX 7 APCTD(2) [WITH THE FLIP CHARACTER 17 7_WL BNZ 7 YDEVISE [ANYTHING TO SERVISE 21 82B= BNZ 4 NEWDEV [NO - THEN DID WE SET UP NEW ACTS? 14 82TW LDCT 0 #200 [WAS THIS 17 83*G ANDX 0 APCTSTAT(2) [PCT INACTIVE BEFORE? 15 83T6 BZE 0 SINAZ [J. IF NOT 19 84#Q LDX 4 APCTACT(3) [ARE ANY PCTS STILL ACTIVE? 9 84SB BNZ 4 POLENX 21 85#2 SINAK LDX 5 APCTP(3) [NO - POLL NEXT UNLESS ON FIRST DROP 18 85RL BNZ 5 POLENX [IN WHICH CASE ALLOW TIME 18 86?= BRN WAITAWYL [FOR SOMETHING TO HAPPEN. 5 86QW SINACT 14 87=G LDCT 0 #200 [SET THE 18 87Q6 ORS 0 APCTSTAT(2) [MARKER TO SAY 'INACTIVE' 14 889Q LDX 0 APCTACT(3) [REDUCE 13 88PB SBN 0 1 [THE 16 8992 STO 0 APCTACT(3) ['ACTIVE' COUNT 15 89NL BNZ 0 POLENX [NO - GO ON 21 8=8= ... SEGENTRY K50PCTCON [USED BY MACRO POLLTIM 5 8=MW WAITAWYL 7 8?7G LDN 6 1 9 8?M6 BRN TIMEWAIT 18 8#6Q TESTFLIP [FOR CONSOLE INPUT ONLY 17 8#LB ANDX 0 APCTD(2) [MASK OUT FLIP BIT 21 8*62 BNZ 0 SELECTCI [J IF FLIPPED WHEN APCT WAS ON LIST 5 8*KL NEWDEV 15 8B5= CALL 5 PAUSE [WAIT A TIME 16 8BJW BRN NEWDEV [CONTINUE WAITING 5 8C4G SELECTCI 19 8CJ6 MHUNTW 3,A7020,INFORM [FIND THE INFORMATION BLOCK 15 8D3Q LDX 2 3 [STOP TO THE 17 8DHB ADX 2 APCTP(3) [CURRENT PCT RECORD 16 8F32 LDCT 4 #200 [WAS THE TERMINAL 17 8FGL ANDX 4 APCTSTAT(2) [INACTIVE LAST TIME 16 8G2= BZE 4 NOINACT [IT WAS POLLED? 19 8GFW ERS 4 APCTSTAT(2) [UNSET THE INACTIVE MARKER 15 8G_G LDN 4 1 [AND UPDATE 17 8HF6 ADS 4 APCTACT(3) [ACTIVE PCT COUNT. 5 8HYQ NOINACT 17 8JDB LDCH 7 APCTD(2) [FLIPED AND RIGHTED 15 8JY2 ANDX 7 APCTD(2) [CHARACTER 20 8KCL ANDX 7 6 [WITH THE OPERABILITY CHARACTER 15 8KX= BRN SELECT [NOW SELECT 5 8LBW YDEVISE 15 8LWG LDCT 4 #200 [WAS THIS PCT 18 8MB6 ANDX 4 APCTSTAT(2) [INACTIVE THE LAST TIME 16 8MTQ BZE 4 NOTINAC [IT WAS POLED? 19 8N*B ERS 4 APCTSTAT(2) [UNSET THE INACTIVE MARKER 13 8NT2 LDN 4 1 [AND 20 8P#L ADS 4 APCTACT(3) [INCREMENT THE ACTIVE PCT COUNT. 5 8PS= NOTINAC 15 8Q?W ORX 7 6 [FLIPPED AND 18 8QRG ERX 7 6 [INOPERABLE INTERFACES 20 8R?6 BZE 7 NOWOP [NO - JUMP TO MASK OP.INTERFACES 8 8RQQ LDN 4 12 16 8S=B SNXT SMO 4 [ACCESS THE FIRST 17 8SQ2 LDXC 5 APCTDEV-2(2) [DEVISE RECORD WORD 18 8T9L BCS SONXCON [JUMP IF CONSOLE OUTPUT 21 8TP= SRL 5 12 [ISOLATE THE INTERFACE BIT POSITION 17 8W8W ANDX 5 7 [JUMP IF AN ENGAGE 19 8WNG BNZ 5 SMARK [IS REQUIRED ON THAT DEVISE 14 8X86 SONX SBN 4 2 [ON TO 16 8XMQ BNZ 4 SNXT [THE NEXT DEVISE 20 8Y7B BRN NOWOP [OR MARK THOSE DEVISES WHICH ARE 14 8YM2 [ENGAGED 5 8_6L SONXCON 12 8_L= [X7 HAS FLIPPED AND INOP INTERFACES 8 925W SRL 5 12 7 92KG ANDX 5 7 20 9356 BZE 5 SONX [J IF CONSOLE OUTPUT NOT FLIPPED 18 93JQ LDX 5 IDUNIQUE(2) [THE TERMINAL IDENTIFIER 21 944B DOWN PCTCOUT,2 [REROUTE ANY OUTPUT FOR INOP CONSOLE. 14 94J2 MHUNTW 3,A7020,INFORM [RESET 13 953L LDX 2 3 [X2 14 95H= ADX 2 APCTP(3) [AND X3 14 962W BRN SONX [POINTERS 14 96GG SMARK LDN 0 #0100 [SET THE 18 9726 SMO 4 [WAS THE 'PLEASE ENGAGE' 14 97FQ ANDX 0 APCTDEV-1(2) [BIT SET? 16 97_B BNZ 0 SONX [JUMP IF IT WAS 15 98F2 LDN 0 #0100 [IF NOT SET 14 98YL SMO 4 [SET THIS 18 99D= ORS 0 APCTDEV-1(2) ['PLEASE ENGAGE' MARKER 16 99XW SLL 5 12 [FORM THE DEVISE 15 9=CG ORX 5 APCTP(3) [IDENTIFIER 14 9=X6 LDX 2 3 [FIND THE 17 9?BQ PCT7020 2,5 [7020 BUFFER BLOCK 17 9?WB LDCT 0 #040 [SET THE DISENGAGED 16 9#B2 ORS 0 EWAIT(2) [DEVISE MARKER 16 9#TL LDX 0 GSIGN [IS THE ACTIVITY 17 9**= ANDX 0 EWAIT(2) [WAITING FOR DATA? 15 9*SW BZE 0 RFIND [NO - PASS ON 16 9B#G ERS 0 EWAIT(2) [REMOVE THE WAIT 17 9BS6 PCTFACT 2 [FIND THE ACTIVITY 16 9C?Q FPUT [AND SET IT GOING 18 9CRB RFIND LDX 2 3 [RESET BLOCK AND RECORD 14 9D?2 ADX 2 APCTP(3) [POINTERS 19 9DQL BRN SONX [AND ON TO THE NEXT INTERFACE 15 9F== NOWOP LDCH 7 APCTD(2) [INTERFACES 17 9FPW ANDX 7 APCTD(2) [RIGHTED AND FLIPPED 15 9G9G ANDX 7 6 [OPERABLE TOO 16 9GP6 BZE 7 SINACT [NONE TO SERVISE? 8 9H8Q LDN 4 12 16 9HNB RNXT SMO 4 [ACCESS THE FIRST 17 9J82 LDXC 5 APCTDEV-2(2) [DEVISE RECORD WORD 18 9JML BCS RONX [JUMP IF CONSOLE OUTPUT 16 9K7= SRL 5 12 [JUMP IF ACTIVE 16 9KLW ANDX 5 7 [DEVISE IS ACTIVE 15 9L6G BNZ 5 REMOV [AND OPERABLE 14 9LL6 RONX SBN 4 2 [ON TO 16 9M5Q BNZ 4 RNXT [THE NEXT DEVISE 15 9MKB BRN SELECT [NOW SELECT 14 9N52 REMOV LDN 0 #0100 [WAS THE 16 9NJL SMO 4 [^PLEASE ENGAGE^ 15 9P4= ANDX 0 APCTDEV-1(2) [MARKER SET? 21 9PHW BZE 0 RONX [IF NOT - RETURN TO TEST NEXT INTER. 16 9Q3G SMO 4 [IF SO - REMOVE 15 9QH6 ERS 0 APCTDEV-1(2) [THE MARKER 13 9R2Q SLL 5 12 [FIND 13 9RGB ORX 5 APCTP(3) [THE 17 9S22 LDN 2 FPTPCT(3) [RELEVANT ACTIVITY 21 9SFL PCTFIND 2,5 [AND UNSET THE ^PLEASE ENGAGE^ MARKER 9 9S_= SBN 2 FPTPCT 8 9TDW LDCT 0 #40 9 9TYG ERS 0 EWAIT(2) 18 9WD6 NUDGE [WAKE UP THE ACTIVITY. 18 9WXQ LDX 2 3 [RESET BLOCK AND RECORD 14 9XCB ADX 2 APCTP(3) [POINTERS 19 9XX2 BRN RONX [AND ON TO THE NEXT INTERFACE 5 9YBL SELECT 13 9YW= LDN 4 12 [FIND 13 9_*W NXTES SMO 4 [THE 14 9_TG LDX 0 APCTDEV-2(2) [HIGHEST 14 =2*6 SRL 0 12 [PRIORITY 15 =2SQ ANDX 0 7 [INTERFACE 15 =3#B BNZ 0 XFND [REQUIRING 14 =3S2 SBN 4 2 [SEVICE 8 =4?L BNZ 4 NXTES 21 =4R= SINAZ LDEX 0 APCTX(2) [J. IF NONE. (N.B. ACTIVE INT. MARK=0 9 =5=W BZE 0 SINACT 8 =5QG BRN SINAK 4 =6=6 # 21 =6PQ XFND SLL 7 6 [SET THE ^INTERFACE ACTIVE^ MARKER. 9 =79B ORS 7 APCTX(2) 19 =7P2 ADX 2 4 [POINTER TO DEVICE WORD PAIR. 19 =88L LDX 5 APCTDEV-2(2) [GET THE DEVISE DESCRIPTION 18 =8N= BNG 5 TOUT [JUMP IF TELE-TYPE OUT 13 =97W LDX 0 APCTP(3) [FORM 17 =9MG DSA 0 5 [THE IDENTIFER WORD 18 ==76 ADN 3 FPTPCT [STEP TO THE RING ELEMENT 20 ==LQ LDX 1 3 [SET X1 READY FOR PCT RING SEARCH 20 =?6B PCTFIND 1,5 [FIND THE RELEVANT 7020 BUFFER 20 =?L2 LDX 4 2 [REMEMBER POINTER TO PCT RECORD 14 =#5L RERING 1,3 [RE-RING 19 =#K= [AT THE HEAD OF THE PCT RING 19 =*4W LDX 2 4 [RESTORE PCT RECORD POINTER 17 =*JG LDX 6 APCTDEV-1(2) [GET DEVISE RECORD 18 =B46 ANDN 6 #77 [ISOLATE THE DEVISE TYPE 21 =BHQ LDX 7 APCTDEV-2(2) [REMEMBER FIRST WORD OF DEVISE RECORD 7 =C3B SBN 6 3 8 =CH2 BZE 6 XFND1 12 =D2L LDXC 1 ALINESTAT-FPTPCT(3) 8 =DG= BCC XFND1 8 =D_W SRL 5 12 11 =FFG SMO APCTP-FPTPCT(3) 11 =F_6 ERS 5 APCTD-FPTPCT(3) 21 =GDQ BRN WAITAWYL [DON'T SELECT BULK DEVICES IF CLOSING 7 =GYB XFND1 ADN 6 3 7 =HD2 SMO 6 9 =HXL BRN TABTYPE-1 4 =JC= # 4 =JWW TOUT 17 =KBG ACROSS PCTCOUT,1 [FOR CONSOLE OUTPUT 4 =KW6 # 4 =L*Q # 5 =LTB XINOP1 15 =M*2 LDX 0 GREP2(3) [HAS THE READ 15 =MSL BPZ 0 XINOP2 [TERMINATED? 21 =N#= XINPX LDEX 4 GUNITNO(3) [SET UP, AND ISSUE, ^SOFT^ CANCEL. 7 =NRW SRC 4 9 8 =P?G SMO FX1 10 =PR6 ORX 4 YEMODE40004 10 =Q=Q DCA ,STO,4,MODE 8 =QQB BRN PERI 4 =R=2 # 20 =RPL XERRX BNG 4 XINPX [J. IF READ STILL IN PROGRESS. 5 =S9= XERROR 8 =SNW LDX 1 FX1 9 =SYN ... ANDX 3 BITS22LS 21 =T8G BCT 7 REP [REPEAT IF NOT YET >APCTERRNUM ERRORS 4 =TN6 # 5 =W7Q XINOP2 9 =WMB ANDX 3 BITS22LS 15 =X72 UNLOCK 3 [UNLOCK LCB 4 =XLL [ 20 =Y6= [ THIS IS THE ENTRY POINT IF THE LINK GOES INOPERABLE WHEN A DEVISE 10 =YKW [ HAS ALREADY BEEN SELECTED 4 =_5G [ 5 =_*# ...Z2PCTCON 4 =_K6 # 4 ?24Q # 19 ?2JB MHUNTW 3,A7020,INFORM [FIND THE INFORMATION BLOCK 18 ?342 LDX 2 APCTP(3) [GET PCT RECORD POINTER 18 ?3HL ADX 2 3 [ADD IN ABSOLUTE ADDRESS 14 ?43= LDX 0 APCTSTAT(2) [WAS THE 18 ?48D ... BPZ 0 NWINO [J IF NOT ALREADY INOP 10 ?4*L ... LDXC 0 APCTINOP(3) 21 ?4GS ... BCC POLENX [DO NOT COUNT AGAIN UNLESS ALL INOP 9 ?4N2 ... BRN XLKINOP 5 ?4T8 ...NWINO 15 ?52G LDCT 0 #200 [WAS THIS PCT 17 ?5G6 ANDX 0 APCTSTAT(2) [PREVIOUSLY INACTIVE? 18 ?5_Q ERS 0 APCTSTAT(2) [UNSET INACTIVE MARKER 16 ?6FB BNZ 0 SINAC [NO-THEN GO ON 13 ?6_2 LDN 0 1 [AND 19 ?7DL SBS 0 APCTACT(3) [REDUCE THE ACTIVE PCT COUNT. 5 ?7Y= SINAC 16 ?8CW LDX 0 GSIGN [SET INOPERABLE 14 ?8XG ORS 0 APCTSTAT(2) [MARKER 20 ?9C6 DOWN PCTINOP,1 [OUTPUT INOP MESSAGE AND CLEAR UP 19 ?9WQ MHUNTW 3,A7020,INFORM [REFIND THE INFORMATION BLOCK 5 ?=BB XLKINOP 20 ?=W2 LDX 0 APCTINOP(3) [GET THE NUMBER OF 'INOP' PCT'S 14 ??*L ADN 0 1 [STEP IT 15 ??T= STO 0 APCTINOP(3) [UP BY ONE 13 ?##W ANDX 0 BITS22LS [ARE 13 ?#SG SBX 0 APCTNUM(3) [THEY 14 ?*#6 BNZ 0 POLENX [ALL OUT? 21 ?*RQ LDXC 0 APCTINOP(3) [NO - THEN HAS THE 'ALL OUT' MESSAGE 15 ?B?B BCS OUTMESGN [BEEN GIVEN? 16 ?BR2 MHUNTW 3,A7020,ALCB [POINTER TO THE 8 ?C=L LDX 2 FX2 8 ?CQ= LGEOG ,5 14 ?D9W LDX 6 GUNITNO(3) [AND THE 6 ?DPG #SKI JNL 4 ?F96 ( 8 ?FNQ GEOPACK 5,5,5 10 ?G8B OUTPACK 5,1,GEOPER 4 ?GN2 ) 7 ?H7L #SKI JNL<1$1 21 ?HM= OUTNUM 5,0 [UNIT NUMBER INTO MF PARAMETER FORM 7 ?J6W LDN 5 1 20 ?JLG LDX 3 PHUINOP(1) [UNIT M HAS BECOME INOPERABLE. 8 ?K66 BZE 6 OUTMX 21 ?KKQ LDX 3 PJINOP(1) [UNIT N LINE X HAS BECOME INOPERABLE. 21 ?L5B OUTNUM 6,0 [LINE NUMBER INTO MF PARAMETER FORM 8 ?LK2 OUTMX INFORMX 5,3,1 19 ?M4L MHUNTW 3,A7020,INFORM [FIND THE INFORMATION BLOCK 5 ?MJ= OUTMESGN 8 ?N3W LDX 0 GSIGN 16 ?NHG STO 0 APCTINOP(3) [RESET INOP COUNT 21 ?P36 CALL 5 QOFF1 [TEST FOR MOP OFF, ATTACH OR FINISH. 9 ?PGQ BRN WAITAWYL 4 ?Q2B # 5 ?QG2 TIMELOOP 20 ?Q_L LDN 6 APOLETIME/FONINTP [POLE INTERVAL WHILE LINE INOP. 4 ?RF= [ 19 ?RYW [ THIS INSTRUCTION SHOULD BE A LDX OF AN INSTALLATION PARAMETER 4 ?SDG [ 5 ?SY6 TIMEWAIT 14 ?TCQ LDX 2 FX2 [RESET X2 15 ?TXB STILL CALL 5 PAUSE [WAIT A BIT 20 ?WC2 BCT 6 STILL [HAS THE POLETIME BEEN EXCEEDED? 19 ?WWL NOW MHUNTW 3,A7020,INFORM [FIND THE INFORMATION BLOCK 5 ?XB= POLENX 10 ?XFK ... LDX 0 ATSLICE(3) 17 ?XJY ... BZE 0 ZAONE [J IF ONLY ONE 7020 9 ?XN? ... SMO APCTP(3) 12 ?XRL ... LDX 0 APCTSTAT+APCTRLEN(3) 7 ?XW_ ... ADN 0 1 16 ?Y2# ... BZE 0 ZANEN [J IF LAST 7020 9 ?Y5M ... LDN 0 APCTRLEN 16 ?Y92 ... ADS 0 APCTP(3) [POINT AT NEXT 8 ?Y#* ... BRN ZATIU 17 ?YCN ...ZANEN STOZ APCTP(3) [POINT AT FIRST 7020 8 ?YH3 ...ZATIU LDX 0 JTIME 18 ?YLB ... STO 0 APCTCLNCT(3) [UPDATE TIME ON THIS 7020 5 ?YPP ...ZAONE 21 ?YT6 SMO APCTP(3) [YES - RESET THE PRIMARY FLIP MASK 17 ?_#Q LDEX 0 APCTX(3) [FROM THE SECONDARY. 8 ?_JJ ... ANDN 0 #77 9 ?_SB BZE 0 ONEPCT 9 #2#2 SMO APCTP(3) 9 #2RL ORS 0 APCTD(3) 9 #3?= SMO APCTP(3) 9 #3QW ERS 0 APCTX(3) 9 #4=G BRN ONEPCT 4 #4Q6 # 4 #59Q # 4 #5PB #END 8 ____ ...63424777001200000000