(George Source)
Macros used: ACROSS, BBUS, CHECKB, COOR1, FINDACTFB, FINMOVE, FOUTMOVE, FREECORE, GPNS, HUNT2B, ILLEGAL, JENG, LGEOG, LINK, LOCKCA, MENDAREA, OLPFIN, SEG, SEGENTRY, SETUPCORE, TOPCA, TRACE, UNPLUG
22FL ... SEG IPCEN,,KEITH MARTIN 22^= # 23DW # 23YG SEGENTRY K1IPCEN,X1IPCEN 24D6 SEGENTRY K3IPCEN,X3IPCEN 24XQ # 25CB # 25X2 RMAX +512 26BL ONE +1 26W= WMC #20000 27*W PR LINK IPCEN,3 27TG X1IPCEN 28*6 FINDACTFB 3,FX2,APET,,,BPTR 28SQ LOCKCA 3,EVENT2(2),,2 [CA IN HLOCK1 OF OLPA 29#B LDX 7 EVENT4(2) 29S2 ANDN 7 #7777 2=?L ERN 7 #1100 [CHECK MODE 2=R= BZE 7 S1 2?=W ERN 7 #100 2?QG BNZ 7 XMOD 2#=6 ACROSS IPCPERI,1 2#PQ S1 LDX 4 EVENT2(2) [READ IN LENGTH AND START OF 2*9B ADN 4 2 [BUFFER AREA 2*P2 LDN 5 6 2B4P ... LDN 1 2 2BDD ... FOUTMOVE 3,4,5,1,HLOCK1,2,1 2BS7 ... LDX 1 FX1 2C7W SLL 6 1 2CMG LDX 5 6 2D76 SLL 6 1 2DLQ ADX 5 6 2F6B CHECKB 7,5,XRES,3,W,S2,,,K1IPCEN 2FL2 SRL 6 2 2G5L TXL 6 RMAX(1) [CHECK BUFFER SIZE WITHIN LIMITS 2GK= BCC XTMI 2H4W TXL 6 ONE(1) 2HJG BCS XTMI 2J46 S2 LDX 0 ALINAME+1(2) [PREVIOUS ENQUIRY STILL IN PROGRESS? 2JHQ BZE 0 S3 2K3B ... LDN 1 #42 [SET REJECTED RESPONSE 2KH2 BRN RESP [BRANCH TO GIVE RESPONSE 2L2L ...S3 LDN 1 #40 [SET ACCEPTED RESPONSE 2LG= ...RESP SLL 1 18 2L^W LDX 5 EVENT2(2) 2MFG ADN 5 1 2M^6 ... LDN 4 1 2NDQ LDN 2 1 2NYB FINMOVE 3,5,4,2,HLOCK1,,1 2PD2 LDX 2 FX2 2PXL LDX 0 ALINAME+1(2) 2QC= BZE 0 S4 2QWW OLPFIN 3 2RBG BRN K1IPCEN 2RW6 S4 LDN 0 1 2S*Q STO 0 ALINAME+1(2) [SET 'ENQUIRY IN PROGRESS' MARKER 2STB STOZ AWORK4(2) 2T*2 LDX 0 ALINAME(2) [TEST IF PROGRAM Q TRUSTED 2TSL BPZ 0 NT 2W#= # 2WRW # Q TRUSTED PROGRAMS 2X?G HUNT2B 2,IPCD,IPSTACK 2XR6 LDX 0 ARINGNO(2) 2Y2Y ... TRACE 0,IPCEN1 2Y=Q ANDX 0 BSP16 [NO. LINK ELEMENTS IN STACK 2YQB LDX 2 FX2 2^=2 TXU 0 6 2^PL BCC SEQ [J IF NO. LINKS=SIZE OF BUFFER 329= TXL 0 6 32NW BCS SMIT [J IF BUFFER>NO. LINKS 338G LDX 4 GSIGN 33N6 SRL 4 2 347Q STO 4 AWORK4(2) [SET LONG BLOCK BIT IN REPLY 34MB SBX 0 6 3572 ADX 0 AWORK4(2) [SET REMAINDER COUNT 35LL BRN SEQ 366= SMIT SBX 6 0 36KW STO 6 AWORK4(2) [SET REMAINDER COUNT 375G LDX 6 0 37K6 SEQ BNZ 6 SEQ1 384Q FINDACTFB 1,FX2,APET,,,BPTR 38JB ... BRN NI [JUMP IF NO ITEMS TO TRANSFER 3942 SEQ1 SLL 6 1 39HL LDX 5 6 3=3= SLL 6 1 3=GW ADX 5 6 [GET LENGTH OF BUFFER IN WORDS 3?2G SRL 6 2 3?G6 SETUPCORE 5,3,IPCD,ENQUIRY 3?^Q LDN 3 A1(3) [X3=PTR TO ENQUIRY ITEM 3#FB HUNT2B 1,IPCD,IPSTACK,2 3#^2 SA LDX 2 A1(1) [X2=PTR TO LINK'S OLPA 3*DL LDX 0 A1+ASTATUS1(1) 3*Y= SLL 0 1 3BCW ... BNG 0 SB3 [JUMP IF GEORGE LINK 3BXG ... LDX 0 A1+ASTATUS2(1) 3CC6 ... ANDN 0 #40 3CWQ ... BZE 0 SB2 [DROP THR0 IF LINK BEING CLOSED 3DBB ...SB3 ADN 1 ARECLEN [STEP TO NEXT LINK IN IPSTACK 3DW2 SMO FX2 3F*L LDX 0 AWORK4 3FT= SLL 0 2 3G#W BPZ 0 SB 3GSG SLL 0 1 3H#6 SRL 0 3 3HRQ SBN 0 1 3J?B BNZ 0 SB1 3JR2 SMO FX2 3K=L STOZ AWORK4 3KQ= ... BRN SB4 3L9W SB1 LDN 0 1 3LPG SMO FX2 3M96 SBS 0 AWORK4 3MNQ ... BRN SB4 3N8B SB LDN 0 1 3NN2 SMO FX2 3P7L ADS 0 AWORK4 3P?H ...SB4 SBN 6 1 [REDUCE ITEM COUNT 3PCD ... BZE 6 SC [WRAP UP IF ZERO 3PH* ... BRN SA [BACK FOR NEXT LINK 3PM= SB2 SBN 2 ARINGEL 3Q6W SANT LDX 0 AUNNO(2) [STORE UNIT NO. IN ITEM 3QLG SRC 0 6 3R66 STO 0 5(3) 3RKQ LDN 4 ALINAME(2) [PUT LINKNAME IN ITEM 3S5B LDN 5 2(3) 3SK2 MOVE 4 3 3T4L GPNS 4,5 3TJ= STO 4 0(3) 3W3W STO 5 1(3) 3WHG BNZ 5 S6 [J IF LINK ESTABLISHED 3X36 LDX 4 AREQPR(2) 3XGQ BRN S9 3Y2B S6 LDX 4 IPPROPS(2) 3YG2 LDN 0 #777 3Y^L SLL 0 6 3^F= ... ANDX 4 0 [GET PROPS OF LINK 3^YW LDN 0 #4000 42DG SLL 0 3 42Y6 ERX 4 0 43CQ SMO FX1 43XB LDX 0 WMC 44C2 ... TXU 4 0 [JUMP IF WMC 44WL BCC S10 45B= ... JENG ,S7 [LINK OPERABLE? 45TW BRN S8 46*G S7 LDN 5 1 46T6 ... SRC 5 7 [MARK OPERABLE IN ENQUIRY BLOCK 47#Q ADS 5 5(3) 47SB S8 LGEOG ,5 [GET GEOGRAPHIC NO. 48#2 ADS 5 5(3) 48RL S9 BBUS 9,4,S10 [J IF B9 OF PROPERTIES UNSET 49?= LDN 5 #74 49QW SLL 5 9 4==G ERX 4 5 4=Q6 S10 SLL 4 2 4?9Q ADS 4 5(3) [STORE PROPERTY BITS 4?PB SMO FX2 4#92 LDX 0 ALINAME 4#NL BPZ 0 SNEXT [J IF NOT TRUSTED 4*8= SBN 6 1 4*MW BZE 6 SC 4B7G ... ADN 3 6 [MOVE POINTER TO NEXT ITEM 4BM6 ... ADN 1 ARECLEN [GET PNTR TO NEXT LINKS OLPA 4C6Q BRN SA 4CLB # TRANSFER ITEMS TO PROGRAM AND SET REPLY 4D62 SC HUNT2B 3,IPCD,ENQUIRY,FX2 4DKL LDN 6 A1(3) 4F5= LDX 5 ALOGLEN(3) [LENGTH OF BLOCK 4FJW SMO FX2 4G4G LDX 0 AWORK4 [REPLY 4GJ6 SLL 0 2 4H3Q BNG 0 NX [LONG B3OCK 4HHB SRL 0 2 4J32 ANDN 0 #777 [ITEMS NOT USED 4JGL SLL 0 1 4K2= SBX 5 0 4KFW ... SLL 0 1 4K^G SBX 5 0 [ADJUST COUNT 4L9# ...NX 4LF6 FINDACTFB 1,FX2,APET,,,BPTR 4LYQ FINMOVE 1,7,6,5,HLOCK2 4MDB LDX 6 1 4MY2 FREECORE 3 4NCL LDX 1 6 4NX= NI LDX 2 FX2 4PBW LDX 5 EVENT2(2) 4PWG ADN 5 1 4QB6 LDN 4 AWORK4(2) 4QTQ LDN 6 1 4R*B FINMOVE 1,5,4,6,HLOCK1,2,1 4RT2 STOZ ALINAME+1(2) [UNSET 'TRANFER IN PROGRESS' MARKER 4S#L OLPFIN 1 4SS= BRN K1IPCEN 4T?W # 4TRG # PROGRAMS NOT Q TRUSTED 4W?6 NT SLL 6 1 4WQQ LDX 5 6 4X=B SLL 6 1 4XQ2 ADX 5 6 4Y9L SRL 6 2 4YFD ... TRACE 6,IPCEN2 4YP= # GET ENQUIRY BLOCK 4^8W SETUPCORE 5,3,IPCD,ENQUIRY 4^NG ADN 3 A1-6 5286 HUNT2B 1,APERI,APERIRES,FX2 52MQ LDN 1 A1-2(1) 537B # LOOK DOWN PRB FOR LINK BELONGING TO PROGRAM 53M2 SNEXT 546L ADN 1 2 54L= LDX 0 0(1) 555W TXU 0 GSIGN 55KG BCC SNMR [J IF NO MORE PERIPHERALS 5656 SRL 0 15 56JQ SBN 0 #34 574B BNZ 0 SNEXT [J IF NOT IPC 57J2 LDX 2 1(1) 583L SBN 2 CHAINADD 58H= LDX 4 ALINDIR(2) 592W SBN 4 #1700 59GG BZE 4 SNEXT [J IF ENQUIRY FILE 5=26 SBN 6 1 5=FQ BNG 6 SNEXT [COUNT NO.OF LINKS MORE THAN ITEMS 5=^B ADN 3 6 [UPDATE PTR TO ENQUIRY BLOCK 5?F2 BRN SANT 5?YL SNMR LDX 2 FX2 5#D= BNG 6 SLBL [J IF LONGBLOCK REPLY NEEDED 5#XW BZE 6 SC [J IF NO REMAINDER COUNT 5*CG ADS 6 AWORK4(2) 5*X6 HUNT2B 3,IPCD,ENQUIRY,FX2 5BBQ LDX 5 ALOGLEN(3) [CHECK IF ANY ITEMS TO TRANSFER 5BWB SLL 6 1 5CB2 SBX 5 6 5CTL SLL 6 1 5D*= SBX 5 6 5DSW BNZ 5 SC 5F#G FINDACTFB 1,FX2,APET,,,BPTR 5FS6 BRN NI 5G?Q SLBL LDX 4 GSIGN 5GRB SRL 4 2 5H?2 STO 4 AWORK4(2) [SET 'LONG BLOCK' BIT IN REPLY 5HQL NGX 0 6 5J== ADS 0 AWORK4(2) 5JPW BRN SC [BR TO TRANSFER ITEMS & SET REPLY 5K9G # 5KP6 # CODE TO GIVE ILLEGAL REPLIES 5L8Q XMOD LDN 6 0 5LNB BRN XE 5M82 XRES LDN 6 1 5MML BRN XE 5N7= XTMI LDN 6 2 5NLW XE STO 3 7 5P6G TOPCA PR(1) 5PL6 COOR1 5Q5Q BRN K1IPCEN 5QKB X3IPCEN 5R52 UNPLUG 5RJL SMO 6 5S4= BRN X 5SHW X ILLEGAL MODE 5T3G ILLEGAL NOBUF 5TH6 ILLEGAL COUNT 5W2Q # 5XFL # 5X^= # 5YDW # 5YYG MENDAREA 100,K2IPCEN 5^D6 # 5^XQ # 62CB #END ^^^^ ...72171472001100000000