7 22FL ...#SEG INTWIN80 9 22_= ...#LIS K0TWINSET>K0INTWIN 7 23DW ... 8HINTWIN 4 23YG ...[ 16 24D6 ...[ K1 FROM TWINSETA - INITIALISE FIRST TIME 18 24XQ ...[ K2 FROM TWINSETA - INITIALISE OTHER FIRST TIME 11 25CB ...[ K3 FOR SIMULATION 4 25X2 ...[ 11 26BL ... SEGENTRY K1INTWIN,QK1TW 11 26W= ... SEGENTRY K2INTWIN,QK2TW 17 27*W ... SEGENTRY K3INTWIN [=0 IF NO SIMULATION 18 2?K? +JSKI11 [=UNIT NO. OF IPB IF ON 9 2?M2 ... SEGENTRY K4INTWIN 8 2?NP ... +0 4 2?QG # 4 2#=6 # 9 2#PQ # IPCREAD SUBROUTINE 4 2*9B # 5 2*P2 XIPCREAD 8 2B8L SBX 7 FX1 10 2BN= DOWN TWINSETD,1 8 2C7W BRN XIT 4 2CMG # 10 2D76 # IPCWRITE SUBROUTINE 4 2DLQ # 6 2F6B XIPCWRITE 8 2FL2 SBX 7 FX1 10 2G5L DOWN TWINSETD,2 8 2GK= XIT ADX 7 FX1 7 2H4W EXIT 7 0 4 2HJG # 4 2J46 # 4 2JHQ # 4 2K3B # 18 2KH2 XIPCSTATE [GET STATE IN ACOMMUNE1 8 2L2L SBX 7 FX1 16 2LG= DOWN RELIEF,4 [TO DO IPCSTATE 15 2L_W LDX 3 ACOMMUNE1(2) [LOAD RESULT 8 2MFG ADX 7 FX1 9 2M_6 TRACE 3,CSTATE 8 2NDQ EXIT 7 0 4 2NYB # 5 2PD2 XIDENT 7 2PXL ADN 0 2 8 2QC= STO 0 EX4 13 2QWW ... FINDPEREC 3,APGEOG,IPBTWIN,,,XCME 10 2RBG LRIDENT 3,5,ZND,ZNG 19 2RW6 STO 5 AWORK3(2) [STORE FIRST WD OF IDENTITY 19 2S*Q STO 6 AWORK4(2) [STORE SECOND WD OF IDENTITY 13 2STB # GET UNIQUE NUMBER FROM IDENTIES 20 2T*2 LDN 1 IDENTITY [PTR TO 1ST WORD OF OUR IDENTITY 19 2TSL LDN 2 AWORK3(2) [PTR TO 1ST WORD OF THEIRS 18 2W#= LDN 5 8 [8 CHARACTERS TO CHECK 19 2WRW NAE LDCH 0 0(1) [FIRST/NEXT WD OF IDENTITY... 18 2X?G LDCH 3 0(2) [AND OF OTHER PROCESSORS 7 2XR6 TXU 3 0 15 2Y=Q BCS NADD [J IF DIFFER 15 2YQB BCHX 1 / [UPDATE MODS 12 2_=2 ... BCHX 2 / [ 8 2_PL BCT 5 NAE 7 329= NADD SBX 0 3 17 32NW STO 0 AFTERU [STORE UNIQUE NUMBER 8 32YN ... LDX 2 FX2 21 338G LDX 5 AWORK3(2) [RELOAD 1ST WORD OF THEIR IDENTITY 14 33N6 BRN (EX4) [J IF OK 8 347Q ZND NGNC 0 1 18 34MB ZNG LDN 0 1 [NOT GEORGE ON OTHER END 8 3572 SBS 0 EX4 18 35LL BRN (EX4) [AND EXIT AS APPROPRIATE 4 366= # 6 36KW OPENWRITE 8 375G LDX 2 FX2 8 37K6 SBX 0 FX1 10 384Q STO 0 ACOMMUNE9(2) 7 38JB LDN 3 3 16 3942 IPCOPEN W,3,5,IPBTWIN [OPEN WRITE LINK 10 39HL LDX 0 ACOMMUNE9(2) 8 3=3= ADX 0 FX1 8 3=GW EXIT 0 0 20 3=K_ ...# SUBROUTINE TO WAKE ACTIVITIES WAITING FOR IPB (TWAIT MACRO) 15 3=M2 ...# AND FREE ANY EWDAS/ITCH BLOCKS. X6 LINK 4 3=N3 ...# 10 3=P4 ...XIPBD HUNTW 1,EWDAS,ITCH 8 3=Q5 ... BNG 1 NOIT 7 3=R6 ... FREECORE 1 8 3=S7 ... BRN XIPBD 8 3=T8 ...NOIT LONGON IPBDE 7 3=W9 ... EXIT 6 0 4 3=X= ...# 4 3=Y? ...# 4 3?2G # 7 3?G6 # CONSTANTS 4 3?_Q # 9 3#_2 XM2 #41773757 17 3*Y= XM4 #76167777 [CLEARS BITS 5,6,7,11 4 3CWQ # 4 3DBB # 4 3DW2 # 20 3F*L X ANDS 0 ETWINMK [WAKE UP ACTIVITY DEMANDING STATE 17 3FT= LONGON EPWT [OF OTHER PROCESSOR 7 3G#W EXIT 6 0 4 3GSG # 4 3H#6 # 10 3HRQ # CLEAR BIT11 OF ETWINMK 4 3J?B # 5 3JR2 XB11CL 9 3K=L LDX 0 ETWINMK 8 3KQ= ANDX 0 BIT11 9 3L9W ERS 0 ETWINMK 7 3LPG EXIT 7 0 4 3M96 # 4 3Q6W # 12 3QLG # SUBROUTINE TO DO THE FOLLOWING 4 3R66 # 14 3RKQ # X6=0 CHAIN ENLINK ON TO JOBRING 4 3S5B # 21 3SK2 # X6 NON ZERO DECHAIN ENLINK FROM ESEND,LONGCLEAR ACTIVITY (IF ANY) 11 3T4L # AND PUT REPLY IN 4 3TJ= # 10 3W3W R1A MHUNTW 3,EWDAS,ESEND 9 3WHG R1 LDN 0 ENTRGA(3) 10 3X36 TXU 0 ENTRGA+1(3) 17 3XGQ BCC R2 [J IF NOTHING CHAINED 9 3Y2B LDX 4 ENTRGA(3) 15 3YG2 DERING ENTRGA(3) [ELSE DECHAIN 18 3Y_L SBN 4 ENLA [PTR TO START OF ENLINK 7 3_F= LDX 1 4 15 3_YW STO 6 ENRP(1) [STORE REPLY 20 42DG BZE 6 R3 [J IF ACTIVITY NOT TO BE WOKEN 18 42Y6 R4 LDX 1 BPTR(1) [LOOK BACK FOR ACTIVITY 9 43CQ LDX 0 ATYPE(1) 8 43XB TXL 0 CACT 16 44C2 BCS R4 [J NOT ACTIVITY 7 44WL SMO 4 17 45B= LDX 3 ENWTS [GET WAITING STYLE 18 45TW LONGCLEAR 1,0(3),R3A [AND WAKE UP IF WAITING 7 46*G R3A EXIT 7 0 18 46T6 R3 ENRING 1,ETBRING(2) [PUT ON END OF JOBRING 7 47#Q R2 EXIT 7 0 4 4T?W # 4 4TRG # 20 4W?6 # SUBROUTINE TO CLEAR LOCK OUT AND SET DISENGAGABLE BY US BIT 10 4WQQ # FOR ALL SHARED UNITS 4 4X=B # 15 4XQ2 R3D CALL 7 X6 [GET DL PTR 9 4Y9L BRN NOTWINS 16 4YP= U4 LADDP 3,2 [GET PTR TO APIA 16 4_8W JSHARED 2,U3 [TO U3 IF SHARED 14 4_NG UX CALL 7 X3 [GET NEXT 9 5286 BRN NOMORE 15 52MQ BRN U4 [GO TO CHECK 8 537B U3 SMO FX1 8 53M2 LDX 0 XM4 16 546L ANDS 0 BSUNIT(2) [CLEAR LOCK-OUT 7 54L= LDN 0 4 19 555W ORS 0 BSUNIT3(2) [SET DISENGAGEABLE BY US BIT 8 55KG BRN UX 5 5656 NOMORE 7 56JQ EXIT 6 0 4 574B # 5 57J2 NOTWINS 9 583L GEOERR 1,NOTWINS 4 58H= # 9 5KP6 TWDA 4HTWDA 4 5L8Q ...# 14 5LNB ...# INITIALISE: ENTWIN IS CURRENT ACTIVITY 4 5M82 ...# 5 5MML ...QK2TW 7 5R52 NGNC 0 1 8 5RJL QK1TW [***** 4 5S4= N3 19 5SHW LDN 0 0 [X0=0 FOR K1 OR =1 FOR K20 8 5T3G LDX 2 FX2 17 5TH6 STO 0 AWORK1(2) [STORE MARKER 9 5W2Q LDX 7 TWDA(1) 7 5WGB ... LDN 0 5 21 5X22 ... STO 0 ETIOUT [SET TIME OUT TO FIVE SPRING CLEANS 9 5XFL CALL 0 XIDENT 15 5X_= BRN NA [NO DIAG 15 5YDW BRN NB [NOT GEORGE 9 5YYG TXU 5 IDENTITY 10 5_D6 TXU 6 IDENTITY+1 7 5_MY #SKI JSKI11<1$1 17 5_XQ BCC NC [J IF IDENTITIES SAME 6 624Y #SKI JSKI11 19 62=6 BCC / [IGNORE IDENTITY CHECK RESULT 9 62CB LDN 0 JNOCHAT 9 62X2 ANDX 0 ETWINMK 18 63BL BZE 0 NA [J IF WE HAVE ALREADY OFW 15 63W= ERS 0 ETWINMK [ELSE CLEAR 9 64*W CALL 0 OPENWRITE 8 64TG BRN NA 4 65*6 # 12 65SQ # REMOTE PROCESSOR NOT GEORGE 4 66#B # 14 66S2 NB LDN 6 16 [REPLY 8 67?L BRN NAC 4 67R= # 8 68=W # SAME IDENTITY 4 68QG # 14 69=6 NC LDN 6 8 [REPLY 8 69PQ BRN NAC 4 6=9B # 9 6=P2 # NOW OPEN READ LINK 4 6?8L # 9 6?N= NA LDX 6 ETWINMK 8 6#7W ANDN 6 JOFR 17 6#MG BZE 6 NE [J IF ALREADY OPEN 15 6*76 LDX 5 IDENTITY [OUR IDENTITY 10 6*LQ LDX 6 IDENTITY+1 7 6B6B LDN 4 3 6 6B8K #SKI JSKI11 4 6B=S ( 8 6B*3 LDX 1 FX1 20 6BC= ... IPCOPEN R,4,5,K3INTWIN(1) [OPEN CHANNEL JSKI11 FOR READING 4 6BFF ) 7 6BHN #SKI JSKI11<1$1 17 6BL2 IPCOPEN R,4,5,IPBTWIN [AND OPEN READ LINK 8 6C5L LDN 0 JOFR 14 6CK= ERS 0 ETWINMK [OFR NOW 16 6D4W LDX 0 AWORK1(2) [PICK UP MARKER 21 6DJG BZE 0 NE [J IF FIRST TIME I.E.FROM K1 15 6DKX ...[ PUT UP READ TRANSFER AND WAIT FOR FINISH 18 6DM# ...[ BUT LET TWINSETA INSPECT THE RESULT. (TWINSETA LOOPS 18 6DNP ...[ IF THERE IS AN ESEND ON THE Q AND TQE READ IS NOT DONE 9 6DQ6 ... CALL 7 XIPCREAD 16 6DRH ...[ IF THE LINKS WERE NOT PREVIOUSLY ESTABLISHED 20 6DSY ...[ BITT11 WILL BE SET IF THE LINKS ARE NOW ESTABLISHED THE READ 19 6DW* ...[ TRANSFER WILL WORK BUT BIT11 WILL REMAIN SET UNLESS THERE 21 6DXQ ...[ IS A GHIN TO SEND. THIS BIT SENDS A GHIN IF POSS AND SETS BIT11 4 6D_7 ...[ 9 6F2J ... LDN 0 JNOCHAT 9 6F3_ ... ANDX 0 ETWINMK 18 6F5B ... BNZ 0 NCHK [J IF WRITE LINK NOT OPEN 8 6F6R ... LDX 0 BIT11 9 6F88 ... ORS 0 ETWINMK 15 6F9K ... CALL 7 XF25 [SET UP GHIN 14 6F?2 ... CALL 7 XIPCWRITE [DO WRITE 8 6F#C ...NCHK IPCREP R,3 8 6F*S ... BPZ 3 XFIN 7 6FC9 ... SUSPEND 7 6FDL ... BRN NCHK 13 6FG3 ...XFIN LDN 0 IPBDOWN+GEODOWN+ETMFAIL 9 6FHQ ANDX 0 ETWINMK 17 6G3B BZE 0 NAD [J IF ALL OK 20 6GH2 ERS 0 ETWINMK [ELSE CLEAR FAIL BITS.. 21 6H2L LDN 0 ETMFAIL [..AND SET ETMFAIL SO THAT 20 6HG= ORS 0 ETWINMK [PLEASE ISSUE IS OUTPUT 21 6H_W BRN NAD [AS CRIPPLE MODE STATE MAY 17 6JFG [HAVE CHANGED 9 6J_6 NE LDX 0 ETWINMK 9 6KDQ ANDN 0 JNOCHAT 16 6KYB ... BNZ 0 NEA [J IF NO DIALOGUE 9 6LD2 LDX 0 ETWINMK 9 6LXL ANDN 0 JIOUTS 18 6MC= BNZ 0 NEA [J IF WRITE OUTSTANDING 15 6MWW CALL 7 XF25 [SET UP ESEND 8 6NBG LDN 0 GHL 9 6NW6 STO 0 ENMARK(1) 15 6P*Q CALL 7 XIPCWRITE [SAY HELLO 9 6PTB NEA LDX 0 ETWINMK 18 6Q*2 ANDN 0 JROUTS [J IF READ OUTSTANDING 8 6QSL BNZ 0 NM 17 6R#= NG CALL 7 XIPCREAD [AND LISTEN FOR REPLY 17 6RRW NM IPCREP R,3 [GET REPLY TO READ 8 6S?G LDCT 0 #20 16 6SR6 BPZ 3 NH [J IF FINISHED 7 6T=Q ANDX 0 3 17 6TQB BNZ 0 W4 [ERROR IF REJECTED 15 6W=2 BRN NI [ELSE WAIT 4 6WPL # 9 6X9= # READ HAS FINISHED 4 6XNW # 9 6Y8G NH LDX 5 ETWINMK 9 6YN6 ANDN 5 JROUTS 19 6_7Q ERS 5 ETWINMK [CLEAR READ OUTSTANDING MKR 9 6_MB LDX 5 ETWINMK 9 7272 ANDN 5 JNOCHAT 16 72LL BZE 5 NJ [J IF DIALOGUE 7 736= ANDX 0 3 18 73KW BZE 0 N3 [TRY AGAIN IF IMPLEMENTED 17 745G BRN NK [FIND CAUSE OF ERROR 17 74K6 NJ IPCREP W,2 [GET REPLY TO WRITE 7 754Q LDX 6 2 8 75JB LDCT 0 #20 16 7642 BPZ 2 NL [J IF FINISHED 7 76HL ANDX 0 2 17 773= BNZ 0 W4 [ERROR IF REJECTED 4 77GW # 11 782G # WAIT FOR BOTH TO FINISH 4 78G6 # 7 78_Q NI SUSPEND 15 79FB BRN NM [LOOK AGAIN 10 79_2 W4 GEOERR 1,REJECTED 4 7=DL # 4 7=Y= # 11 7?CW # READ AND WRITE FINISHED 4 7?XG # 9 7#C6 NL LDX 5 ETWINMK 9 7#WQ ANDN 5 JIOUTS 19 7*BB ERS 5 ETWINMK [CLEAR WRITE OUSTANDING MKR 11 7*HH ... HUNTW 1,EWDAS,ESENDT 8 7*K= ... BNG 1 NLZ 7 7CSG FREECORE 1 8 7D#6 NLZ LDX 1 FX1 8 7DRQ LDCT 0 #20 15 7F?B ANDX 0 3 [READ REPLY 19 7FR2 BNZ 0 NK [J IF READ NOT IMPLEMENTED 8 7G=L LDCT 0 #20 7 7GQ= ANDX 0 6 19 7H9W BNZ 0 NK [J IF WRITE NOT IMPLEMENTED 8 7HC4 ... TRACE 6,WOK 8 7HJ= ... TRACE 3,ROK 9 7HPG NAM LDX 0 XM8(1) 7 7J96 CALL 6 X 16 7JNQ LDX 0 ETBUFS(2) [GET REQUEST TYPE 8 7K8B SBN 0 GHL 14 7KN2 BZE 0 NO [J IF GHL 9 7L7L LDX 0 ETBUFS(2) 8 7LM= SBN 0 GHLR 15 7M6W BZE 0 NP [J IF GHLR 9 7MLG LDX 0 ETBUFS(2) 8 7N66 SBN 0 GHIN 16 7NKQ BZE 0 NG [AWAIT GHLR REPLY 9 7P5B GEOERR 1,RONGREQ 4 7PK2 # 10 7Q4L # AN ERROR HAS OCCURRED 4 7QJ= # 4 7R3W NK 8 7RHG LDX 1 FX2 9 7S36 STO 6 AWORK1(1) 16 7SGQ STO 3 AWORK2(1) [ READ 8 7SHB ... SMO FX1 9 7SJ3 ... LDX 0 K4INTWIN 16 7SK# ... BZE 0 NTRAC1 [_ IF NO TRACING 18 7SLK ... LDN 0 #4562 [TRACE IDENTIFIER ^ER^ 10 7SMW ... STO 0 ACOMMUNE1(1) 9 7SP7 ... LDX 0 ETWINMK 10 7SQD ... STO 0 ACOMMUNE2(1) 18 7SRP ... STO 6 ACOMMUNE3(1) [WRITE REPLY FROM IPCREP 18 7ST2 ... STO 3 ACOMMUNE4(1) [READ REPLY FROM IPCREP 17 7SW? ... STO 7 ACOMMUNE5(1) [LINK FOR LAST CALL 7 7SXJ ... TWTRACE 5 7SYT ...NTRAC1 9 7T2B #SKI K6TWINSETC>99-99 4 7TG2 ( 9 7T_L TRACE 6,WREP 9 7WF= TRACE 3,RREP 4 7WYW ) 9 7XDG LDX 5 ETWINMK 9 7XY6 ANDN 5 JNOCHAT 17 7YCQ CALL 7 XIPCREAD [PUT UP ANOTHER READ 16 7YXB BNZ 5 NN [J IF NO DIALOGUE 15 7_C2 CALL 7 XF25 [SET UP ESEND 8 7_WL LDN 0 GHL 9 82B= STO 0 ENMARK(1) 17 82TW CALL 7 XIPCWRITE [PUT UP ANOTHER WRITE 7 83*G NN LDN 6 0 8 83T6 LDCT 0 #20 9 84#Q ANDX 0 AWORK2(2) 9 84SB LDX 7 AWORK2(2) 19 85#2 BNZ 0 NS [J IF READ NOT IMPLEMENTED 16 85RL BZE 5 NT [J IF DIALOGUE 10 86?= NU GEOERR 1,IMPMENT? 7 86QW NT LDN 6 1 8 87=G LDCT 0 #20 9 87Q6 LDX 7 AWORK1(2) 9 889Q ANDX 0 AWORK1(2) 8 88PB BZE 0 NU 8 8992 NS LDCT 0 #6 7 89NL ANDX 0 7 20 8=8= BZE 0 NM [J IF NOT FAILURE OR ESTABLISHED 18 8=MW STO 6 ACOMMUNE1(2) [STORE MODE FOR IPCSTATE 9 8?7G CALL 7 XIPCSTATE 8 8?M6 NX LDCT 0 #140 9 8#6Q #SKI K6TWINSETC>99-99 9 8#LB TRACE 3,STATE 7 8*62 ANDX 0 3 19 8*KL BZE 0 NY [J IF DIALOGUE NOT SUSPENDED 7 8B5= SLL 0 3 16 8BJW BNG 0 NZ [J IF GEORGE DOWN 17 8C4G NY CALL 7 XF13 [ASK OPS FOR STATE 14 8CJ6 BRN N3 [NO REPLY 15 8D3Q BRN NAB [GEORGE DOWN 15 8DHB LDN 6 2 [IPB WRONG 8 8F32 BRN NAC 4 8FGL # 8 8G2= # GEORGE DOWN 4 8GFW # 16 8G_G NZ LDX 1 FX1 [FROM IPCSTATE 9 8HF6 LDX 0 XM2(1) 7 8HYQ CALL 6 X 9 8JDB ... LDN 0 GEODOWN 9 8JY2 ORS 0 ETWINMK 18 8KCL NAB CALL 6 R3D [FROM OPS CLEAR LOCK-OUTS 16 8KQ2 ... CALL 6 NOIT [WAKE UP TWAIT 8 8KX= BRN NAD 4 8LBW # 15 8LWG # GHL RECEIVED BUT WE HAVE ALREADY SENT ONE 4 8MB6 # 18 8MTQ NO LDX 0 AFTERU [GET WHO GOES FIRST MKR 17 8N*B BNG 0 NAF [J IF WE GO SECOND 16 8NT2 NAK CALL 6 R3D [CLEAR LOCK-OUTS 6 8P28 #SKI JSKI11 21 8P7B BRN NAD [NEXT BIT WON'T SIMULATE VERY WELL 16 8P#L CALL 7 R20 [COMPILE REPLY 8 8PS= LDN 5 GHLR 9 8Q?W STO 5 ENMARK(1) 15 8QRG NAG CALL 7 XIPCWRITE [BEND IT BACK 8 8R?6 NAI IPCREP W,3 16 8RQQ BPZ 3 NAH [J IF FINISHED 18 8S=B SUSPEND [WAIT FOR IT TO BE SENT 8 8SQ2 BRN NAI 9 8T9L ...NAH LDN 0 JIOUTS 9 8TP= ERS 0 ETWINMK 8 8W8W LDCT 5 #20 7 8WNG ANDX 5 3 11 8WWQ ... MHUNTW 1,EWDAS,ESENDT 7 8XMQ FREECORE 1 17 8Y7B BZE 5 NAD [J IF IMPLEMENTED 12 8YM2 LDCT 0 #6 [ 7 8_6L ANDX 0 3 15 8_L= BZE 0 NAK [TRY AGAIN 17 925W BRN NE [START ALL OVER AGAIN 4 92KG # 11 9356 # WE WAIT FOR HELLO REPLY 4 93JQ # 9 944B NAF CALL 7 XIPCREAD 8 94J2 NAMX IPCREP R,3 16 953L BPZ 3 NAL [J IF FINISHED 7 95H= SUSPEND 8 962W BRN NAMX 8 96GG NAL LDCT 0 #20 7 9726 ANDX 0 3 9 97FQ LDN 5 JROUTS 9 97_B ERS 5 ETWINMK 15 98F2 BNZ 0 NE [START AGAIN 15 98YL BRN NAM [GET RESULT 4 99D= # 8 99XW # REPLY RECEIVED 4 9=CG # 19 9=JM ...NP LDN 6 32 [WRONG STATE REPLY (IN CASE) 15 9=LB ... DOWN TWINSETD,4 [CHECK REPLY 8 9=N5 ... BRN NAC 14 9?BQ NAD LDCT 6 #400 [OK REPLY 8 9?WB NAC LDX 3 FX2 19 9#B2 NH1 HUNT2J 3,EWDAS,ESEND,,U5 [LOOK FOR INITIALISE REQUEST 9 9#TL LDX 0 ENMARK(3) 8 9**= SBN 0 INIT 8 9*SW BNZ 0 NH1 14 9B#G LDX 5 3 [SAVE PTR 18 9BS6 CALL 7 R1 [PUT IN REPLY AND WAKE UP 12 9BYS ... HUNTW 1,EWDAS,EGOT [ 18 9C2B ... BNG 1 NWG [J IF NO ERROR IN STATE 18 9C3Y ... CHAIN 1,4 [ELSE CHAIN AFTER ENLINK 4 9C5G ...NWG 7 9C8L ... SMO 5 15 9C=8 ... LDX 7 ENSTART [PICK UP MKR 7 9C?Q FREECORE 5 19 9CRB LDX 3 FX2 [SEARCH FOR ANY ESENDS WIT.. 12 9D?2 NRID HUNT2J 3,EWDAS,ESEND,,SUS 21 9DQL LDX 0 ENMARK(3) [..REQUEST AND CHANGE TO GHIN AS WE. 21 9F== SBN 0 GHL [..GET GEOERR HONK! IF GHL IS SENT.. 18 9FPW BNZ 0 NRID [..AFTER INITIALISATION 8 9G9G LDN 0 GHIN 9 9GP6 STO 0 ENMARK(3) 13 9H8Q SUS LDN 0 IPBDOWN+GEODOWN+ETMFAIL 9 9HNB ANDX 0 ETWINMK 9 9J82 BNZ 0 SUSPEND 16 9JCS ... BNZ 7 SUSPEND [IF 2ND TIME B11 9 9JML CALL 7 XB11CL 5 9K7= SUSPEND 9 9KG_ ... LDX 0 ETWINMK 21 9KWN ... ANDX 0 BIT10 [CLEAR B10 - IDENTIES SAME MESSAGE 18 9L=C ... ERS 0 ETWINMK [..CAN NOW BE OUTPUT I 7 9LL6 SUSPEND 10 9M5Q ACROSS TWINSETA,1 9 9MKB XM8 #41773103 10 =Q=Q U5 GEOERR 1,IDENTERR 4 =QQB # 4 =W7Q # 14 =WMB # SUBROUTINE TO ASSEMBLE HELLO MESSAGE 4 =X72 # 9 =XLL # FORMAT OF WORD IS 4 =Y6= # 9 =YKW # B0-B2 NOT USED 15 =_5G # B3 =1 IF WE HAVE RIGHT TO DISENGAGE 17 =_K6 # B5 IS THE LOCK-OUT BIT (=0 IF WE HAVE IT) 14 ?24Q # B9-B10 IS THE STATUS AS FOR BSUNIT 9 ?2JB # B15-23 GEOG. NO. 4 ?342 # 8 ?3HL R20 SBX 7 FX1 10 ?52G DOWN TWINSETD,3 8 ?5_Q ADX 7 FX1 11 ?6#7 ... MHUNTW 1,EWDAS,ENLINK 10 ?6LJ ... NAME 1,EWDAS,ESEND 7 ?6_2 EXIT 7 0 4 ?7DL # 21 ?7Y= # SUBROUTINE TO GO THOUGH ALL UDAS DEVICES LOOKING FOR TWINNED ONES 4 ?8CW # 8 ?8XG X6 LDX 1 FX1 7 ?9C6 X4 ADN 1 1 15 ?9WQ LDX 0 TB-1(1) [NEXT DEVICE 8 ?=BB BNG 0 (7) 18 ?=W2 ... FINDPEREC 3,APFOTY,TB-1(1),X3,,XCME,XCME [GET PTR 19 ??*L BNG 3 X4 [J IF NO MORE OF THIS TYPE 15 ??T= JTWIN 3,X5 [J IF TWINNED 16 ?##W BRN X3 [LOOK FOR NEXT 7 ?#SG X5 EXIT 7 1 4 ?*#6 # 4 ?*RQ # 8 ?B?B TB +6 8 ?BR2 +13 8 ?C=L +26 8 ?CQ= -1 4 ?D9W # 4 ?DPG # 9 ?F96 XBIT5910 #01060000 4 ?FNQ # 4 #M?W # 15 #MRG # SUBROUTINE TO GET STATE OF OTHER PROCESSOR 8 #N?6 XF13 SBX 7 FX1 8 #NQQ LDCT 0 #200 9 #P=B ANDX 0 ETWINMK 19 #PQ2 BNZ 0 XF14 [J IF STATE ALREADY REQUESTED 8 #Q9L LDCT 0 #220 21 #QP= ORS 0 ETWINMK [SET REQUESTED AND ACKNOWLEDGED BITS 16 #R8W GETACT ACTDOC [SET UP ACTIVITY 14 #RNG LDX 2 BPTR(2) [GET PTR 17 #S86 LINKSET 2,XLINK3(1) [LINK TO K2TWINSETB 6 #SMQ FPUT 8 #SXJ ...XF15 LDX 0 BIT11 20 #T7B ... ORS 0 ETWINMK [ONLY SYSTEM WRITES ALLOWED NOW 8 #TC8 ... ADX 7 FX1 7 #TM2 EXIT 7 0 8 #W6L XF14 LDCT 0 #140 9 #WL= ANDX 0 ETWINMK 8 #X5W BZE 0 XF15 8 #XKG LDCT 0 #100 9 #Y56 ANDX 0 ETWINMK 16 #YJQ BZE 0 XF16 [J IF GEORGE OK 8 #_4B SMO FX1 8 #_J2 LDX 0 XM2 9 *23L ANDS 0 ETWINMK 9 *2H= LDN 0 GEODOWN 9 *32W ORS 0 ETWINMK 15 *3*= ... CALL 6 NOIT [WAKE TWAIT 8 *3GG BRN XF17 8 *426 XF16 SMO FX1 8 *4FQ LDX 0 XM9 9 *4_B ANDS 0 ETWINMK 9 *5F2 LDN 0 IPBDOWN 9 *5YL ORS 0 ETWINMK 7 *6D= ... ADN 7 1 7 *7CG XF17 ADN 7 1 8 *8WB BRN XF15 4 *9B2 # 4 *G7= # 16 *GLW # SUBROUTINE TO SETUP ESEND WITH GHIN REQUEST 8 *H6G XF25 SBX 7 FX1 10 *HL6 HUNTW 1,EWDAS,ESEND 16 *J5Q BNG 1 XF26 [J TO SET ONE UP 9 *JKB LDX 0 ENMARK(1) 8 *K52 SBN 0 GHIN 17 *KJL BZE 0 XF24 [J IF ALREADY EXISTS 13 *L4= XF26 SETNCORE ESENDLEN,1,EWDAS,ESEND,,1 8 *LHW LDN 0 GHIN 17 *M3G STO 0 ENMARK(1) [STORE REQUEST TYPE 16 *MH6 LDN 0 ENTRGA(1) [MAKE RINGS EMPTY 9 *N2Q STO 0 ENTRGA(1) 10 *NGB STO 0 ENTRGA+1(1) 8 *P22 XF24 ADX 7 FX1 7 *PFL EXIT 7 0 4 *P_= # 5 B?HQ XLINK3 10 B#3B PAIR TWINSETB,2 9 B#H2 XM9 #41773737 9 B*2L XM7 #77177777 4 B*G= # 9 B*MD ...XCME GEOERR 1,NOTCME 4 B*SL ...# 10 B*_W ... MENDAREA 50,K99INTWIN 4 BBFG # 4 BB_6 #END 8 ____ ...01407434000100000000