8 22FL #OPT K0LISTAST=0 15 22_= ...#SEG LISTAST [LEN WAGSTAFF 13 2394 ...# COPYRIGHT INTERNATIONAL COMPUTERS 1982 15 23DW #LIS K0LISTAST>K0ALLGEO>K0GREATGEO>K0COMMAND 9 23YG 8HLISTAST 9 24D6 #OPT K6LISTAST=K6ALLGEO 4 24XQ # 4 25CB # 20 25X2 # THIS SEGMENT LISTS THE ATTRIBUTIONS AND ASSOCIATIONS OF LINES 21 26BL # AND IDENTIFIERS IN THE IDF. THE SEGMENT IS ENTERED FROM SEGMENT 20 26W= # LISTIDF, AND EXPECTS SYSTEM.PROPERTIES TO BE OPEN AT LEVEL 2, 18 27*W # THE OUTPUT FILE AT LEVEL 1, AND THE IDF AT LEVEL 0. 4 27TG # 4 28*6 # 4 28SQ # 12 29#B SEGENTRY K1LISTAST,X1LISTAST 4 29S2 # 4 2=?L # 9 2=R= WLINE 4H---- 15 2?=W THEAD 32HATTRIBUTIONS AND ASSOCIATIONS 12 2?QG TSUB 16HCONSOLE PROPERTY 9 2#=6 XLIN 4HLINE 10 2#PQ ...ZIDEN 12HIDENTIFIER 10 2*9B ZOTH 8H OTHER 9 2*P2 UNIT 4H MX 9 2B8L 4H UX 9 2BN= 4H CC 9 2C7W 4H CI 9 2CMG XIDEN 4H I 8 2D76 XLF 4H,LF 8 2DLQ XTP 4H*TP 8 2F6B XLP 4H*LP 8 2FL2 XCP 4H*CP 8 2G5L SUNIT 4HLP 8 2GK= 4HCR 8 2H4W 4HTW 8 2HJG 4HTR 8 2J46 4HTP 9 2JHQ XCON +10000 9 2K3B MASK #77000000 11 2KH2 SPD 12HASSOCIATIONS 18 2L2L XMESS 40HNO CURRENT ATTRIBUTIONS OR ASSOCIATIONS 6 2LG= X1LISTAST 19 2L_W CALL 7 SETUP [CALL ROUTINE TO SET UP FAPB 17 2MFG SMO FX1 [X1 POINTS TO FAPB 8 2M_6 LDN 4 THEAD 8 2NDQ LDN 5 #51 18 2NYB STO 5 A1+1(1) [STORE NEW PAGE CONTROL 9 2PD2 LDN 5 A1+13(1) 17 2PXL MOVE 4 8 [MOVE IN TITLE LINE 18 2QC= CALL 7 WRITE [WRITE TITLE LINE AWAY 8 2QWW SMO FX1 8 2RBG LDX 0 WLINE 9 2RW6 STO 0 A1+13(1) 9 2S*Q LDN 5 A1+13(1) 16 2STB LDN 6 A1+14(1) [AND UNDERLINE IT 7 2T*2 MOVE 5 6 9 2TSL DCH 0 A1+20(1) 8 2W#= LDN 0 #41 9 2WRW STO 0 A1+1(1) 8 2X?G CALL 7 WRITE 8 2XR6 SMO FX1 8 2Y=Q LDN 5 TSUB 9 2YQB LDN 6 A1+12(1) 17 2_=2 MOVE 5 4 [MOVE IN SUB-TITLE 8 2_PL SMO FX1 8 329= LDN 5 ZOTH 9 32NW LDN 6 A1+18(1) 7 338G MOVE 5 2 19 33N6 CALL 7 WRITE [WRITE SUB-TITLE LINE AWAY 15 347Q LDN 5 #41 [SET UP FAPB 15 34MB STO 5 A1+1(1) [STORE PFFC 8 3572 SMO FX1 8 35LL LDN 5 THEAD 9 366= LDN 6 A1+12(1) 7 36KW MOVE 5 3 8 375G SMO FX1 8 37K6 LDN 5 THEAD 9 384Q LDN 6 A1+18(1) 7 38JB MOVE 5 3 8 3942 SMO FX1 8 39HL LDN 5 SPD 9 3=3= LDN 6 A1+22(1) 7 3=GW MOVE 5 3 19 3?2G CALL 7 WRITE [WRITE LAST TITLE LINE AWAY 8 3?G6 SMO FX1 8 3?_Q LDX 0 WLINE 9 3#FB STO 0 A1+12(1) 9 3#_2 STO 0 A1+18(1) 9 3*DL STO 0 A1+22(1) 8 3*Y= LDN 0 #41 16 3BCW STO 0 A1+1(1) [ & 9 3BXG LDN 5 A1+12(1) 9 3CC6 LDN 6 A1+13(1) 18 3CWQ MOVE 5 3 [ UNDERLINE THEM 9 3DBB LDN 5 A1+18(1) 9 3DW2 LDN 6 A1+19(1) 17 3F*L MOVE 5 2 [ ALL 9 3FT= LDN 5 A1+22(1) 9 3G#W LDN 6 A1+23(1) 7 3GSG MOVE 5 2 8 3H#6 CALL 7 WRITE 4 3HRQ # 10 3J?B # MAIN ROUTINE 4 3JR2 # 21 3K=L LDX 0 GSIGN [SET ^NO ATTRIBS OR ASSOCS FOUND YET^ 14 3KQ= ORS 0 A1+1(1) [MARKER 8 3L9W LDX 2 FX2 7 3LPG LDN 0 0 19 3M96 CALL 7 XMXB [GET POINTER TO IDF BASE CELL 18 3MNQ LDX 3 BUNIT(3) [LOAD BASE OF UNIT CHAIN 17 3N8B STO 3 AWORK1(2) [STORE IT IN AWORK1 4 3NN2 # 19 3P7L # INITIALISATION NOW COMPLETE. WE NOW ENTER THE MAIN ROUTINE 13 3PM= # FOR MULTIPLEXORS AND UNIPLEXORS 4 3Q6W # 16 3QLG ZUNIT [UNIT CHAIN LOOP 4 3R66 ZJPQ 19 3RKQ LDX 4 AWORK1(2) [RESTORE UNIT CHAIN POINTER 17 3S5B BZE 4 UNITEND [BR IF NO MORE UNITS 9 3SK2 CALL 7 SPACES 7 3T4L LDX 0 4 20 3TJ= CALL 7 XMXB [ACCESS NEXT UNIT CELL FROM IDF 8 3W3W CALL 4 X659 8 3WHG BRN ZJPQ 9 3X36 LDX 4 BTYPE(3) 7 3XGQ LDN 2 0 16 3Y2B LDCH 5 4(2) [LOAD UNIT TYPE 8 3YG2 SBN 5 10 17 3Y_L BZE 5 ZUPX [BRANCH IF UNIPLEXOR 8 3_F= SMO FX1 17 3_YW LDX 0 UNIT [LOAD UNIT NAME (MPX) 16 42DG STO 0 A1+3(1) [STORE IT IN FAPB 8 42Y6 SMO FX1 8 43CQ LDX 0 XLIN 17 43XB STO 0 A1+6(1) [STORE ^LINE^ IN FAPB 17 44C2 BRN XNORM [JUMP OVER UNIPLEXOR 4 44WL ZUPX 8 45B= SMO FX1 9 45TW LDX 0 UNIT+1 18 46*G STO 0 A1+3(1) [MOVE IN UNIT NAME (UPK) 5 46T6 XNORM 8 47#Q LDN 5 #7777 16 47SB ANDX 5 4 [GEOG NO. TO X5 8 48#2 ADN 1 A1+4 19 48RL CALL 7 XCBD [CONVERT TO DECIMAL AND STORE 8 49?= SBN 1 A1+5 19 49QW LDX 0 BLINE(3) [STORE POINTER TO LINE CHAIN 8 4==G SMO FX2 15 4=Q6 STO 0 AWORK2 [IN AWORK2 16 4?9Q ZLINE [LINE CHAIN LOOP 8 4?PB LDX 2 FX2 20 4#92 LDX 0 ACES [OVERWRITE VARIABLE DETAILS OF 9 4#NL STO 0 A1+7(1) 18 4*8= LDN 4 A1+7(1) [ OUTPUT LINE WITH 9 4*MW LDN 5 A1+8(1) 16 4B7G MOVE 4 3 [ SPACES 9 4BM6 LDX 0 AWORK2(2) 8 4C6Q BZE 0 ZUNIT 18 4CLB CALL 7 XMXB [ACCESS NEXT LINE CELL 19 4D62 LDX 0 0(3) [LOAD NEXT LINE CELL POINTER 16 4DKL STO 0 AWORK2(2) [STORE IN AWORK2 18 4F5= LDX 0 BLINE(3) [LOAD BASE OF 7020 CHAIN 16 4FJW STO 0 AWORK3(2) [STORE IN AWORK3 9 4G4G LDX 0 A1+6(1) 17 4GJ6 SBX 0 ACES [TEST FOR UNIPLEXOR 8 4H3Q BZE 0 PUPX 18 4HHB LDX 5 BNO(3) [MPX - LOAD LINE NUMBER 8 4J32 ADN 1 A1+7 17 4JGL CALL 7 XCBD [CONVERT AND STORE 16 4K2= SBN 1 A1+8 [RESET POINTER 4 4KFW PUPX 21 4K_G LDX 0 BASS(3) [LOAD POINTER TO ASSOCIATE CELL AND 16 4LF6 STO 0 AWORK4(2) [STORE IN AWORK4 18 4LYQ LDX 4 BATT(3) [PTR TO ATT CELL TO X4 7 4MDB ADX 0 4 20 4MY2 BZE 0 X7020 [BR IF NO ASS OR ATT ON THIS LINE 20 4NCL CALL 6 XLASAT [LIST ASS. AND ATT. FOR THIS LINE 15 4NX= X7020 [7020 LOOP 19 4PBW LDX 0 AWORK3(2) [LOAD NEXT 7020 CELL POINTER 19 4PWG BZE 0 ZLINE [NO MORE 7020'S ON THIS LINE 18 4QB6 CALL 7 XMXB [ACCESS NEXT 7020 CELL 8 4QTQ LDX 0 0(3) 21 4R*B STO 0 AWORK3(2) [STORE NEXT 7020 CELL PTR IN AWORK3 8 4RT2 SMO FX1 18 4S#L LDX 0 XIDEN [INSERT CHAR ^I^ IN FAPB 9 4SS= STO 0 A1+8(1) 9 4T?W LDX 0 BNO(3) 8 4TRG SRL 0 12 19 4W?6 SLL 0 12 [IDENTIFIER TO L.H.S. OF X0 9 4WQQ LDX 4 BTYPE(3) 16 4X=B ANDN 4 #77 [GET INTERFACE NO 20 4XQ2 SLL 4 6 [MOVE UP FOR INSERTION IN FAPB 15 4Y9L ADN 4 #34 [INSERT ^,^ 21 4YP= ADX 0 4 [AMALGAMATE WITH IDENTIFIER & STORE 14 4_8W STO 0 A1+9(1) [IN FAPB 7 4_NG LDN 2 0 7 5286 SMO 3 18 52MQ LDCH 0 BTYPE(2) [LOAD DEVICE TYPE INTO X0 8 537B LDX 2 FX1 7 53M2 SMO 0 19 546L LDX 4 SUNIT-1(2) [LOAD RELEVANT CHARS. INTO X4 7 54L= SBN 0 3 8 555W LDX 2 FX2 17 55KG BNZ 0 XNCON [BR IF NOT CONSOLE TW 20 5656 LDX 0 BTYPE+1(3) [OBTAIN INTERFACE NO. OF OTHER 17 56JQ ANDN 0 #77 [HALF OF CONSOLE TW 8 574B SBN 4 #20 16 57J2 ADX 4 0 [AND INSERT IT 5 583L XNCON 16 58H= STO 4 A1+10(1) [PUT LINE IN FAPB 20 592W LDX 4 BASS(3) [LOAD POINTER TO ASSOC. CELL AND 17 59GG STO 4 AWORK4(2) [STORE IT IN AWORK4 7 5=26 LDX 0 4 20 5=FQ LDX 4 BATT(3) [LOAD PTR. TO ATT. CELL INTO X4 7 5=_B ADX 0 4 20 5?F2 BZE 0 X7020 [BR IF NO ASS OR ATT ON THIS 7020 18 5?YL CALL 6 XLASAT [LIST ASSOCS. AND ATTS. 18 5#D= BRN X7020 [GO BACK DOWN 7020 CELL 17 5#XW UNITEND [END OF MPX/UPX CHAIN 4 5*CG # 11 5*X6 # NOW TO DO 7900'S 4 5BBQ # 8 5BWB LDX 2 FX2 10 5CB2 STOZ ACOMMUNE3(2) 8 5CTL LDX 3 FX2 17 5D*= MXB 3 [ACCESS IDF BASE CELL 18 5DSW LDX 0 BIPB(3) [LOAD BASE OF 7900 CHAIN 17 5F#G STO 0 AWORK1(2) [STORE IT IN AWORK1 15 5FS6 X7900 [7900 LOOP 5 5G?Q XMIPB 19 5GRB LDX 4 AWORK1(2) [LOAD PTR TO NEXT 7900 CELL 16 5H?2 BZE 4 XNO7900 [NO MORE 7900'S 16 5HQL CALL 7 SPACES [BPACEFILL FAPB 7 5J== LDX 0 4 17 5JPW CALL 7 XMXB [GET NEXT 7900 CELL 14 5K9G LDX 0 BTYPE(3) [GEOG.NO 8 5KF# ... ANDN 0 #7777 15 5KP6 BNZ 0 XNOTCI [J. IF NOT CI 8 5L8Q SMO FX1 17 5LNB LDX 0 UNIT+3 [INSERT ^CI^ IN FAPB 9 5M82 STO 0 A1+3(1) 16 5MML LDX 0 CIPROPNO(3) [CONVERT PROPNO. 15 5N7= ANDX 0 BITS22LS [INTO NAME 9 5NLW APROPNAME 0,1,NOPR 16 5P6G MHUNTW 1,FILE,FAPB [APROPNAME COORS 16 5PL6 LDN 4 ACOMMUNE1(2) [PUT NAME IN FAPB 8 5Q5Q LDCT 5 #400 9 5QKB ORN 5 A1+4(1) 8 5R52 MVCH 4 12 15 5RJL LDN 0 #2020 [CUPLA SPACES 9 5S4= ORS 0 A1+7(1) 16 5WGB LDX 0 AWORK1(2) [RE-HUNT IDF CELL 8 5X22 CALL 7 XMXB 17 5X78 ... LDX 0 0(3) [PT TO NEXT IPB CELL 9 5X#B ... STO 0 AWORK1(2) 17 5XFL BRN XCCCI [BACK TO COMMON PATH 5 5X_= XNOTCI 8 5YDW CALL 4 X659 8 5YYG BRN XMIPB 8 5_D6 SMO FX1 19 5_XQ LDX 0 UNIT+2 [INSERT CHARS ^CC^ IN FAPB 9 62CB STO 0 A1+3(1) 8 62X2 LDN 5 #7777 16 63BL ANDX 5 BTYPE(3) [ACCESS GEOG. NO 8 63W= ADN 1 A1+4 18 64*W CALL 7 XCBD [CONVERT TO DECIMAL AND 14 64TG SBN 1 A1+5 [STORE IT 5 67?L XCCCI 17 67BQ ... SMO FX1 [STORE ^IDENTIFIER^ 8 67FW ... LDN 4 ZIDEN 9 67K2 ... LDN 5 A1+8(1) 7 67N6 ... MOVE 4 3 20 67R= LDX 0 BLINE(3) [LOAD POINTER TO IDENTIFIER CELL 18 68=W STO 0 AWORK2(2) [& STORE IT IN AWORK2 18 68QG LDX 4 BASS(3) [LOAD ASSOC CELL POINTER 17 69=6 STO 4 AWORK4(2) [& STORE IT IN AWORK4 7 69PQ LDX 0 4 18 6=9B LDX 4 BATT(3) [ATT CELL POINTER TO X4 7 6=P2 ADX 0 4 21 6?8L BZE 0 YIDEN [BR IF NO ASS OR ATT ON THIS CELL 17 6?N= CALL 6 XLASAT [LIST ASS AND ATT. 18 6#7W YIDEN [IDENTIFIER CHAIN LOOP 8 6#MG LDX 2 FX2 17 6*76 LDX 0 AWORK2(2) [RESTORE CELL POINTER 18 6*LQ BZE 0 X7900 [END OF IDENTIFIER CHAIN 19 6B6B CALL 7 XMXB [ACCESS NEXT IDENTIFIER CELL 19 6BL2 LDX 5 BNO(3) [LOAD IDENTIFIER NO INTO X5 8 6BS= ... ADN 1 A1+10 7 6C2G ... BCHX 1 / 7 6C8Q ... BCHX 1 / 7 6CC2 ... BCHX 1 / 17 6CK= CALL 7 XCBD [CONVERT AND STORE 8 6CXM ... SBN 1 A1+11 9 6D=4 ... ANDX 1 BITS22LS 20 6DJG LDX 0 0(3) [STORE POINTER TO NEXT IDENTIFIER 16 6F46 STO 0 AWORK2(2) [CELL IN AWORK2 19 6FHQ LDX 0 BASS(3) [LOAD POINTER TO ASSOC CELL 17 6G3B STO 0 AWORK4(2) [& STORE IT IN AWORK4 18 6GH2 LDX 4 BATT(3) [LOAD POINTER TO ATT CELL 7 6H2L ADX 0 4 20 6HG= BZE 0 YIDEN [BR IF NO ASS OR ATT ON THIS IDEN 16 6H_W CALL 6 XLASAT [LIST ASS AND ATT 8 6JFG BRN YIDEN 5 6J_6 XNO7900 10 6KDQ MHUNTW 3,FILE,FAPB 20 6KYB LDX 0 A1+1(3) [TEST IF ^NO ASSOCS OR ATTRIBS^ 19 6LD2 BPZ 0 XAC [MARKER SET, AND BR IF NOT 8 6LXL SMO FX1 8 6MC= LDN 4 XMESS 9 6MWW LDN 5 A1+3(3) 16 6NBG MOVE 4 10 [MOVE IN MESSAGE 16 6NW6 CALL 7 WRITE [WRITE BLOCK AWAY 4 6P*Q XAC 9 6PTB VFREE FILE,FAPB 10 6Q*2 ACROSS LISTPROP,1 17 6QSL ZFULL [FILEFULL ERROR LABEL 9 6R#= GEOERR 1,LIFFULL 19 6RRW YERR [MASTER FAPB LOST IN XLASAT 10 6S?G GEOERR 1,FAPBLOST 4 6SR6 NOPR 10 6T=Q GEOERR 1,LOSTPROP 5 6TQB WRITE 4 6W=2 # 21 6WPL # THRS SUBROUTINE IS AN EXTENSION TO THE SUBROUTINE SETUP TO APPEND 18 6X9= # A FILE/FAPB, AND TO TEST THE REPLY AND THEN FREE RT 4 6XNW # 8 6Y8G SBX 7 FX1 16 6YN6 APPEND 2,XREFU [WRITE LINE AWAY 10 6_7Q TESTREP REFUSED,XREFU 15 6_MB TESTREP FILEFULL,ZFULL [TEST REPLY 19 7272 MHUNTW 1,FILE,FAPB [HUNT FAPB (POINTER IN X1) 8 72LL LDX 2 FX2 8 736= BRN XWRIT 5 73KW SETUP 16 745G SBX 7 FX1 [RELATIVISE LINK 8 74K6 LDX 2 FX2 18 754Q SETNCORE 32,1,FILE,FAPB [SET UP AN APPEND BLFCK 5 75JB XWRIT 8 7642 LDN 5 32 16 76HL STO 5 A1(1) [STORE WORDCOUNT 13 773= LDN 5 #42 [PFFC 9 77GW STO 5 A1+1(1) 8 782G BRN X1 5 78G6 SPACES 13 78_Q # THIS SECTION SPACEFILLS THE FAPB 8 79FB SBX 7 FX1 10 79_2 MHUNTW 1,FILE,FAPB 4 7=DL X1 8 7=Y= LDX 5 ACES 9 7?CW STO 5 A1+2(1) 16 7?XG LDN 5 A1+2(1) [SPACEFILL FAPB 9 7#C6 LDN 6 A1+3(1) 8 7#WQ MOVE 5 29 15 7*BB ADX 7 FX1 [REFIX LINK 7 7*W2 EXIT 7 0 10 7B*L XREFU ACROSS LISTSTAR,30 20 7BT= XCBD [CONVERT BINARY TO DECIMAL AND 19 7C#W LDN 6 0 [STORE IN ADDRESS HELD IN X1 8 7CSG SMO FX1 19 7D#6 DVR 5 XCON [NUMBER TO BE CONVERTED IN X5 7 7DRQ LDX 5 6 8 7F?B LDCT 6 #200 19 7FR2 MODE 1 [SET ZERO SUPPRESSION MODE 18 7G=L LDN 0 4 [4 CHARACTERS TO CONVERT 4 7GQ= XBDC 19 7H9W CBD 5 0(1) [X1 HOLDS DESTINATION ADDRESS 7 7HPG BCHX 1 / 8 7J96 BCT 0 XBDC 7 7JNQ EXIT 7 0 21 7K8B XMXB [SUBROUTINE ACCESSES A RECORD IN THE 21 7KN2 # [IDF WHOSE POINTER IS IN ACOMMUNE3 21 7L7L SBX 7 FX1 [AND GIVES A POINTER TO IT (IN CORE) 14 7LM= LDX 3 FX2 [IN X3 7 7M6W LDX 4 0 9 7MLG #SKIP K6LISTAST>199$199 9 7N66 TRACE 4,CELLPTR 15 7NKQ SLL 0 1 [REMOVE BIT 0 17 7P5B SRL 0 10 [RECORD POINTER TO X0 10 7PK2 STO 0 ACOMMUNE3(3) 16 7Q4L MXB 3 [ACCESS RECORD 17 7QJ= ANDN 4 #777 [MASK IN CELL POINTER 18 7R3W ADX 3 4 [CELL(CORE) POINTER IN X3 20 7RHG MHUNTW 1,FILE,FAPB [PRESERVE POINTER TO FAPB IN X1 8 7S36 ADX 7 FX1 7 7SGQ EXIT 7 0 21 7T2B XLASAT [SUBROUTINE LISTS THE ASSOCIATIONS 20 7TG2 # AND ATTRIBUTIONS CONTAINED IN THE CELLS POINTED AT BY 21 7T_L # AWORK4 (ASSOC) AND X4 (ATT).AN FAPB IS EXPECTED, HOLDING 21 7WF= # DETAILS TO BE PRINTED ON THE FIRST LINE. THIS BLOCK IS 21 7WYW # PRESERVED. AN ADATA CSTORE BLOCK IS CREATED TO HOLD THE 15 7XDG # TWO CELLS IN THE FIRST INSTANCE 8 7XY6 SMO FX2 19 7YCQ LDX 3 AWORK4 [RESTORE ASSOC. CELL POINTER 15 7YXB SBX 6 FX1 [LINK IN X6 8 7_C2 SMO FX2 15 7_WL STO 6 AWORK4 [STORE LINK 18 82B= CALL 7 SETUP [SET UP SUBS. FAPB BLOCK 18 82TW LDX 2 1 [SUBS. FAPB PTR. TO X2 19 83*G HUNT2OPT 1,FILE,FAPB [PTR. TO MASTER FAPB IN X1 16 83T6 BNG 1 YERR [IT'S NOT THERE 9 84#Q LDN 5 A1+2(1) 9 84SB LDN 6 A1+2(2) 20 85#2 ... MOVE 5 10 [MOVE IN UNIT DETAILS FROM MASTER 20 85RL LDX 5 3 [PRESERVE POINTER TO ASSOC. CELL 21 86?= SETNCORE 16,3,ADATA,CSTORE [GET ADATA/CSTORE BLOCK, PTR. IN X3 7 86QW LDX 0 5 19 87=G LDX 5 4 [POINTER TO ATT CELL TO X6 9 87Q6 BZE 0 XNOASS 20 889Q CALL 7 XMXB [GET ASSOCIATION CELL INTO CORE 7 88PB LDX 4 5 17 8992 MHUNTW 2,ADATA,CSTORE [FIND ADATA/CSTORE 8 89NL LDN 5 0(3) 8 8=8= LDN 6 A1(2) 21 8=MW MOVE 5 8 [MOVE ASSOC CELL INTO ADATA/CSTORE 8 8?7G BRN XQRL 21 8?M6 XNOASS [NO ASSOCIATIONS, SO ZEROISE 1ST 8 7 8#6Q LDX 4 5 18 8#LB STOZ A1(3) [WORDS OF ADATA/CSTORE 8 8*62 LDN 5 A1(3) 9 8*KL LDN 6 A1+1(3) 7 8B5= MOVE 5 7 7 8BJW LDX 2 3 4 8C4G XQRL 18 8CJ6 BZE 4 XNOATT [BR. IF NO ATTRIBUTIONS 7 8D3Q LDX 0 4 18 8DHB CALL 7 XMXB [ACCESS ATTRIBUTION CELL 17 8F32 MHUNTW 2,ADATA,CSTORE [FIND ADATA/CSTORE 8 8FGL LDN 5 0(3) 9 8G2= LDN 6 A1+8(2) 20 8GFW MOVE 5 8 [MOVE ATT CELL INTO ADATA/CSTORE 8 8G_G BRN YQRL 20 8HF6 XNOATT [NO ATTRIBUTIONS, SO ZEROISE LAST 18 8HYQ STOZ A1+8(2) [8 WORDS OF ADATA/CSTORE 9 8JDB LDN 5 A1+8(2) 9 8JY2 LDN 6 A1+9(2) 7 8KCL MOVE 5 7 4 8KX= YQRL 20 8LBW LDX 7 A1+8(2) [LOAD ATT CELL INTERNAL POINTER 19 8LWG BNG 7 XNOTFIN [BR. IF NO MORE ATTRIBUTIONS 7 8MB6 SMO 7 18 8MTQ LDX 6 A1+10(2) [LOAD ATTRIBUTION WORD 8 8N*B BNZ 6 ZETA 8 8NT2 BZE 7 XLMN 4 8P#L ZETA 19 8PS= BZE 6 ZNOATT [BR. IF NO MORE ATTRIBUTIONS 17 8Q?W CALL 5 XPROP [ACCESS PROPERTY NAME 9 8QRG LDN 5 A1+12(1) 18 8R?6 BZE 7 ZCONS [BR. IF CONSOLE PROPERTY 7 8RQQ ADN 5 6 5 8S=B ZCONS 16 8SQ2 MOVE 4 3 [MOVE IN PROPERTY 4 8T9L XLMN 7 8TP= LDX 0 7 7 8W8W ADN 7 1 16 8WNG STO 7 A1+8(2) [UPDATE POINTER 21 8X86 BZE 0 YQRL [LAST ATT WAS CONSOLE, SO GO AND DO 15 8XMQ SBN 0 5 [ANOTHER ONE 8 8Y7B BNZ 0 XZYW 5 8YM2 ZNOATT 21 8_6L NGS 1 A1+8(2) [NO MORE ATTRIBUTIONS: SET PTR -VE 4 8_L= XZYW 10 925W # NOW TO DO AN ASSOCIATION 4 92KG # 20 9356 LDX 7 A1(2) [LOAD INTERNAL ASSOC CELL POINTER 19 93JQ BNG 7 ZNOASS [BR. IF NO MORE ASSOCIATIONS 7 944B SMO 7 18 94J2 LDX 6 A1+2(2) [LOAD NEXT ASSOCIATE WORD 16 953L BZE 6 ZNOASS [BR. IF NO MORE 19 95H= SMO FX1 [MK.6 - ASSUME LF ASSOCIATED 19 962W LDX 4 XLF [MOVE CHARACTERS ^,LF ^ INTO 13 96GG STO 4 A1+25(1) [FAPB 18 9726 ANDN 6 #3200 [MASK IN *LP,*TP*CP BITS 8 97FQ BNZ 6 ZOK 10 97_B GEOERR 1,IDF CLTP 4 98F2 ZOK 8 98YL LDX 3 FX1 7 99D= LDN 5 0 16 99XW SLL 6 13 [*TP BIT TO B0 18 9=CG BPZ 6 XNTP [BR IF NOT *TP ASSOCIATED 9 9=X6 LDX 0 XTP(3) 17 9?BQ STO 0 A1+26(1) [STORE *TP IN FAPB 7 9?WB ADN 5 1 4 9#B2 XNTP 16 9#TL SLL 6 1 [*LP BIT TTO B0 18 9**= BPZ 6 XNLP [BR IF NOT *LP ASSOCIATED 9 9*SW LDX 0 XLP(3) 7 9B#G SMO 5 17 9BS6 STO 0 A1+26(1) [STORE *LP IN FAPB 7 9C?Q ADN 5 1 4 9CRB XNLP 16 9D?2 SLL 6 2 [*CP BIT TO B0 18 9DQL BPZ 6 XNCP [BR IF NOT *CP ASSOCIATED 9 9F== LDX 0 XCP(3) 7 9FPW SMO 5 17 9G9G STO 0 A1+26(1) [STORE *CP IN FAPB 4 9GP6 XNCP 7 9H8Q SMO 7 17 9HNB LDX 6 A1+3(2) [LOAD PROPERTY NUMBER 17 9J82 CALL 5 XPROP [ACCESS PROPERTY NAME 9 9JML LDN 5 A1+22(1) 18 9K7= MOVE 4 3 [MOVE PROPERTY INTO FAPB 7 9KLW ADN 7 2 19 9L6G STO 7 A1(2) [UPDATE ASSOC CELL POINTER 7 9LL6 SBN 7 5 9 9M5Q BNG 7 XNOTFIN 5 9MKB ZNOASS 19 9N52 NGS 2 A1(2) [END OF ASSOC. CELL REACHED 5 9NJL XNOTFIN 16 9P4= CALL 7 WRITE [WRITE LINE AWAY 17 9PHW MHUNTW 2,ADATA,CSTORE [HUNT ADATA/CSTORE 16 9Q3G LDN 0 #41 [SINGLE LINE PFFC 9 9QH6 STO 0 A1+1(1) 9 9R2Q LDX 0 A1+8(2) 19 9RGB BNG 0 WEST [BR. IF NO MORE ASSOCS TO DO 8 9S22 BRN YQRL 4 9SFL WEST 8 9S_= LDX 0 A1(2) 19 9TDW BNG 0 QUIT [BR IF NO MORE ASSOCS EITHER 8 9TYG BRN XZYW 16 9WD6 QUIT [IT'S ALL OVER 10 9WXQ VFREE ADATA,CSTORE 9 9XCB VFREE FILE,FAPB 16 9XX2 MHUNTW 1,FILE,FAPB [HUNT MASTER FAPB 8 9YBL LDX 2 FX2 9 9YW= LDX 6 AWORK4(2) 8 9_*W ADX 6 FX1 7 9_TG EXIT 6 0 5 =2*6 XPROP 21 =2SQ # THIS SUBROUTINE ISSUES THE MACRO APROPNAME TO ACCESS, AND STORE 20 =3#B # IN ACOMMUNE1,2,3, THE PROPNRTY WHOSE NUMBER IS PROVIDED IN X6 4 =3S2 # 18 =4?L SBX 5 FX1 [RELATIVISE LINK IN X5 18 =4R= ANDX 6 BITS22LS [MASK OUT EXCL/PERM BITS 4 =4S_ ...[ 21 =4WN ...[ FOR SHFS IF A PROPERTY WAS CANCELLED WHILE THE LINK WAS DOWN THERE 21 =4YC ...[ MAY STILL BE REFERENCES IN IDFB TO PROP. NOS. THAT NO LONGER EXIST 4 =526 ...[ 6 =57? ...SNOMATTER 16 =5=W APROPNAME 6,1,NOPR [GET PROP NAME 17 =5QG MHUNTW 2,ADATA,CSTORE [HUNT ADATA/CSTORE 16 =6=6 MHUNTW 1,FILE,FAPB [HUNT FILE/FAPB 16 =6PQ HUNT2OPT 3,FILE,FAPB,1 [HUNT MASTER FAPB 21 =79B LDX 0 BITS22LS [UNSET ^NO ASSOCS OR ATTRIBS FOUND 15 =7P2 ANDS 0 A1+1(3) [YET^ MARKER 8 =88L SMO FX2 21 =8N= LDN 4 ACOMMUNE1 [ADDRESS OF PROPERTY NAME LOCATION 15 =97W ADX 5 FX1 [REFIX LINK 7 =9MG EXIT 5 0 4 ==76 X659 8 ==LQ LDX 0 0(3) 9 =?6B STO 0 AWORK1(2) 9 =?L2 LDCH 0 BNUMB(3) 8 =#5L ANDN 0 #20 8 =#K= BZE 0 REX 9 =*4W LDEX 7 BTYPE(3) 6 =*82 ...#UNS AV7900S 21 =*?6 ... FINDPERE 2,APGEOG,7,,AV7900 [FIND DEVICE LIST.(INCLUDE V7900 DLS) 6 =*B= ...#UNS AV7900S 4 =*FB ...#SKI 10 =*JG FINDPERE 2,APGEOG,7 8 =B46 BNG 2 XIT1 9 =BHQ LDEX 0 BTYPE(3) 8 =C3B LGEOG 2,7 7 =CH2 TXU 0 7 8 =D2L BCC REX 4 =DG= XIT1 8 =D_W LDX 2 FX2 7 =FFG EXIT 4 0 4 =F_6 REX 8 =GDQ LDX 2 FX2 7 =GYB EXIT 4 1 5 =HD2 #PAGE 11 =HXL MENDAREA 19,K100LISTAST 4 =JC= #END 8 ____ ...74011112000100000000