(George Source)
Macros used: ALTLENG, ASSOCTAB, BXE, BXL, BXU, CIDFAS, COMBRKIN, COMERR, ENDCOM, FREECORE, GEOERR, HUNTW, ISPROPN, JBS, JLASSOCS, LADDP, MENDAREA, MFREEW, MHUNT, MHUNTW, MIDFAS, MONOUTX, MOPASAT, NAME, OUTPARAM, PARAFREE, PARALAS, PARALYSX, PARANOTX, PARANUMB, PARSORTX, PERCONA, PROPAE, PROPCAE, SEG, SEGENTRY, SETNCORE, SETUPCORE, SPARABEX, TESTREP, TESTREP2, TRACE, ZERRORX, ZERRORY
228= ... SEG ASSOC,867,SECTION COMM,,G402 22BG ...[ 22JQ ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 22R2 ...[ 22^= #OPT K0ASSOC=0 23DW #OPT K6ASSOC=0 23YG #LIS K0ASSOC>K0COMMAND>K0ALLGEO 24D6 ...[ 24XQ # ENTRY POINTS 25CB SEGENTRY K1ASSOC,Z1ASSOC 25X2 SEGENTRY K2ASSOC,Z2ASSOC 26BL # THIS SEGMENT DEALS WITH THE ASSOCIATE COMMAND, E.G:- 26W= # ASSOCIATE U29.L10,PR BILLS,LF *LP *TP 27*W # THE COMMAND IN PARAM 3 IS CHECKED AGAINST A TABLE OF 27TG # VALID ASSOCIATED COMMANDS AND THE PERIPHS ARE CHECKED 28*6 # TO BE OF TYPE 5. X6 IS SET TO CONTAIN THE RELEVANT 28SQ # COMMAND BIT IN B0-B11 & THE RELEVANT PERIPH BITS IN 29#B # B12-B23. NEXT PARAMETER 2 IS CHECKED TO BE A VALID 29S2 # PROPERTY NAME,AND THE RELEVANT PROPERTY NO. IS SET 2=?L # IN X7. FINALLY PARAMETER 1 IS CHECKED TO BE A VALID 2=R= # PERIPHERAL DESCRIPTION,AND X6,X7 ARE COPIED TO THE 2?=W # ASSOCIATIONS ENTRY IN THE IDF. 2?QG # 2#=6 # ENTRY AT K1 MAKES AN ASSOCIATION 2#PQ # ENTRY AT K2 CANCELS AN ASSOCIATION 2*9B # 2*P2 # AWORK2 CONTAINS THE UNIT NUMBER 2B8L # AWORK3 : USED AS ENTRY MARKER :- 0=K1, -VE=K2 2BN= # AWORK4 HOLDS THE PARAMETER NUMBER OF THE PERIPH.DESCRIPT 2C7W # 2CMG # 2D76 # 2DLQ XPR 8HPROPERTY [USED IN VALIDATION OF PROPERTY 2F6B [PARAMETER. 2FL2 XTAB [ TABLE FOR VALIDATION OF'COMMAND' 2G5L ASSOCTAB LISTFILE,8,LF 2GK= #GAP 5 2H4W XENDTAB 0 [END OF TABLE. 2HJG THREE 3 [TO TEST FOR SHORT FORM OF COMMANDS 2J46 XPLT 2JHQ # TABLE FOR VALIDATION OF 3RD PARAM,IE:-ARE THE PL TYPES 2K3B # MENTIONED VALID FOR COMMAND MENTIONED? EG:-LF *TR 2KH2 # IS NOT A VALID COMBINATION. ONE WORD ENTRY PER SIMPLE PL 2L2L # (IE TYPE<5) WHICH HAS BITS SET CORRESPONDING TO THE 2LG= # COMMANDS FOR WHICH THEY ARE VALID. THIS TABLE IS ACCESSED 2L^W # BY TYPE AND THE CONTENTS MASKED WITH THE COMMAND BIT OF 2MFG # THE CURRENT COMMAND.THUS ZERO RESULT = INVALID PL TYPE. 2M^6 # 2NDQ 0 [TR -NOT VALID 2NYB +IVLF^IVOL^IVTP [TP-VALID FOR LF,OL 2PD2 +IVLF^IVOL^IVLP [LP-VALID FOR LF,OL 2PXL 0 [CR -NOT VALID 2QC= +IVLF^IVOL^IVCP [CP-VALID FOR LF,OL 2QWW 0 2RBG 0 2RW6 0 2S*Q 0 2STB 0 2T*2 0 2TSL 0 2W#= 0 2WRW 0 2X?G 0 2XR6 0 2Y=Q 0 2YQB 0 2^=2 0 2^PL 0 329= +IVLF^IVOL^IVGP [GP-VALID FOR LF,OL 32NW # 338G # TABLE OF VALID COMMANDS CONTAINING THE DEFAULT SETTINGS 33N6 # OF VALID PERIPHERAL TYPES. ACCESSED BY COMPARING COMMAND 347Q # BITS. 34MB # 3572 XDEFTY 35LL +IVLF^IVLP^IVTP^IVCP^IVGP [LP,TP,CP AND GP VALID FORLF 366= # 36KW # 375G # 37K6 # COMMAND ERRORS FOR THIS SEGMENT 384Q # --------------------------------- 38JB ZERRORY 3942 ZENDER 39HL COMERR JNOPER [ILLEGAL UNIT NO 39L9 ...#SKI JSKI27 39NS ...( 39RC ...XTM COMERR JTOOMANY [TOO MANY PARAMS 39W2 ...XNU COMERR JOPUCON [ONLY OPERATOR AND USER CONTEXT 39YK ...) 3=3= ZCE1 COMERR JPARMIS,JCOMA [COMMAND PARAMETER MISSING 3=GW ZCE2 COMERR JTOOMANY [TOO MANY PARAS 3?2G ZCE3 ZERRORX APFERR [PARAMETER FORMAT ERROR (UT#) 3?G6 ZCE4 ZERRORX JPNAL [PL NOT ALLOWED 3?^Q ZCE5 ZERRORX JPARMIS [PARAMETER MISSING 3#FB ZCE6 ZERRORX JPARNULL [PARAMETER NULL 3#^2 ZCE8 ZERRORX ERUNPAIR 3*DL ZNOMATCH 3*Y= ZCE9 ZERRORX ASSOC2 [NOT VALID COMMAND PARAM 3BCW XERB ZERRORX JASSOCA [ASSOCIATION ALREADY DEFINED 3BXG XERC ZERRORX JASSOCB [ONLY 3 ASSOCIATIONS PERMITTED 3C4N ...#UNS ANSTOOMANY 3C9W ...XERD ZERRORX JMAXPAR [MAX NO OF PARAMS EXCEEDED 3CC6 ZENDE ENDCOM 3CWQ # 3DBB # NORMAL SUCCESS REPLIES TO THIS COMMAND:- 3DW2 # 3F*L XASSOCR +ASSOCR1 [ASSOCIATION '%A' NOW EXISTS 3FT= +ASSOCR2 [ASSOCIATION '%A' NOW NON-EXISTANT 3G#W # 3GSG # 3H#6 # 3HRQ # PARAL:DOES A PARALYSX, XPARAL:DOES A PARAFREE & PARALYSX 3J?B # UPAR:DOES A PARANOTX AND THEN LOCATES CPB/CUNI IN X3 3JR2 # 3K=L UPAR 3KQ= SBX 5 FX1 3L9W PARANOTX 4 3LPG MHUNT 3,CPB,CUNI 3M96 UPAR1 ADX 5 FX1 3MNQ EXIT 5 0 3N8B # 3NN2 PARAL [FORM A MULTI-BLOCK. PARAM IN X4,SEPARATOR IN X3 3P7L SBX 5 FX1 3PM= PARA1 PARALYSX 3,,4 3PQB ...#UNS ANSTOOMANY 3PTG ... TESTREP2 UNPAIR,ZCE8,TOOMANY,XERD 3PYL ...#UNS ANSTOOMANY 3Q3Q ...#SKI 3Q6W TESTREP UNPAIR,ZCE8 3QLG BRN UPAR1 3R66 # 3RKQ XPARAL 3S5B SBX 5 FX1 3SK2 PARAFREE 3T4L BRN UPAR1 3TJ= PARA [SEARCHES FOR A PARAMETER BEGINNING 3W3W SBX 7 FX1 [WITH A SPECIFIED STRING OF CHARACTS. 3WHG SPARABEX 4,5,XTAB(1) [PRESERVE SPACES. 3X36 MHUNT 2,CPB,CUNI 3XGQ NGX 0 ANUM(2) 3Y2B ADX 7 FX1 3YG2 EXIT 7 0 3Y^L XFREE 3^F= FREECORE 2 [FREE THE CPB/CUNI BLOCK HOLDING THE 3^YW [REST OF THE PARAMETER.(CREATED BY 42DG EXIT 7 0 [SPARABEX) 42Y6 # 43CQ # 43XB Z1ASSOC 44C2 STOZ AWORK3(2) [MARK K1 ENTRY 44WL PARANUMB 3,AWORK3(2) 45B= SBN 3 4 45TW BPZ 3 ZCE2 [TOO MANY PARAMS 46*G Z10 46T6 STOZ AWORK4(2) [ED BYSPARABEX 47#Q STOZ 3 47SB LDN 4 1 48#2 XX1 48RL SMO 3 49?= LDX 5 XTAB(1) [NUMBER OF CHARACTERS. 49QW BZE 5 ZCE1 [NOT A LEGITIMATE COMMAND PARAMETER 4==G ADN 3 1 4=Q6 XX2 ADX 1 3 4?9Q [SEARCH FOR THE COMMND PARAMETER. 4?PB CALL 7 PARA 4#92 BZE 0 YYX [LF ACCEPTABLE 4#NL BPZ 0 XX3 [PARAMETER NOT FOUND. 4*8= YYX 4*MW LDX 4 JPARNUM(2) [NO. OF PARAMETER FOUND. 4B7G BXL 5 THREE(1),XX4 4BM6 ADN 3 3 4C6Q XX4 SMO 3 [POSITION OF THE WORD HOLDING THE 4CLB [COMMAND BIT IN THE COMMAND TABLE 4D62 LDX 6 XTAB(1) 4DKL SLL 6 12 [COMMAND BIT 4F5= BRN START [GO TO VALIDATE THE REST OF THE 4FJW [COMMAND PARAMETER 4G4G XX3 4GJ6 CALL 7 XFREE [FREE THE BLOCK 4H3Q BXL 5 THREE(1),XX5 [SEARCH FOR THE COMMAND PARAMETER 4HHB ADN 3 3 [STARTING WITH A DIFFERENT CHAR.STR. 4J32 LDN 5 2 4JGL BRN XX2 4K2= XX5 BUX 3 XX1 4KFW START 4K^G CALL 7 XFREE 4LF6 ADS 4 AWORK4(2) 4LYQ LDN 3 #20 4MDB STO 5 7 [NO OF CHS IN COMMAND 4MY2 [INVESTIGATE THE PERIPHERAL PART OF 4NCL CALL 5 PARAL [THE COMMAND PARAMETER. 4NX= LDN 4 1 4PBW CALL 5 UPAR 4PWG LDEX 5 ANUM(3) [SPACES MUST SEPARATE 4QB6 BXU 5 7,ZCE3 [COMMAND FROM PL TYPES 4QTQ FREECORE 3 4R*B # NOW CHECK PL TYPES IN THIS PARAMETER 4RT2 # ------------------------------------ 4S#L # 4SS= LDN 4 2 [POINT TO 2ND UNIT = 1ST PL TYPE 4T?W Z60 CALL 5 UPAR [GET NEXT UNIT 4TRG LDX 5 ANUM(3) 4W?6 BNG 5 ZNP1 [J IF END OF THIS PARAM. 4WQQ BZE 5 Z70 [J IF NULL TO TRY NEXT UNIT 4X=B PERCONA [CONVERT PL IF VALID TO T#,UT# 4XQ2 TESTREP PARERR,ZENDE [J IF COMMAND ERROR 4Y9L LDX 5 ACOMMUNE1(2) [GET T# & UT# 4YP= #SKI K6ASSOC>199-199 4^8W TRACE 5,ASSPL 4^NG ANDN 5 #777 [GET UT# 5286 BNZ 5 ZCE3 [J IF NON-ZERO FOR COMMAND ERROR 52MQ LDX 5 ACOMMUNE1(2) 537B SRL 5 15 [X5=T# 53M2 SMO 5 546L LDX 7 XPLT(1) [GET TYPE-COMMAND VALIDATION WORD 54L= ANDX 7 6 [IS PL TYPE VALID WITH THE COMMAND? 555W BZE 7 ZCE4 [J IF NOT FOR COMMAND ERROR 55KG MHUNT 3,CPB,CUNI 5656 FREECORE 3 [RELEASE CPB/CUNI 56JQ SMO 5 574B LDX 5 XPLT(1) [PERIPHERAL BIT FOR THIS TYPE OF 57J2 ANDN 5 -1 [DEVICE 583L ORX 6 5 [SET PL BIT IN X6 58H= Z70 ADN 4 1 [STEP X4 FOR NEXT UNIT OF PARAM 592W BRN Z60 59GG ZNP1 [END OF 3RD PARAM. 5=26 FREECORE 3 [FREE CUNI BLOCK 5=FQ LDN 0 #7777 5=^B ANDX 0 6 [GET PL TYPE BITS 5?F2 BNZ 0 ZNP1C [J IF PL TYPE(S) SPECIFIED 5?YL LDX 1 FX1 5#D= ZNP1A LDX 0 6 5#XW ANDX 0 XDEFTY(1) 5*CG BNZ 0 ZNP1B 5*X6 BUX 1 ZNP1A 5BBQ XX6 5BWB CALL 7 XFREE 5CB2 BXL 5 THREE(1),ZCE5 [NO PROPERTY PARAMETER 5CTL LDN 5 2 5D*= BRN XX7 5DSW ZNP1B LDX 6 XDEFTY(1) 5F#G ZNP1C 5FS6 CALL 5 XPARAL 5G?Q LDN 4 1 5GRB LDN 5 8 5H?2 XX7 SBN 1 2 5HQL CALL 7 PARA [SEARCH FOR THE PROPERTY PARAMETER 5J== BPZ 0 XX6 5JPW LDX 4 JPARNUM(2) [MAKE A NOTE OF THE POSITION OF 5K9G SMO FX2 [THIS PARAMETER INTHE CPB1CALAS BLOCK 5KP6 ADS 4 AWORK4 5KXB ...#SKI JSKI18<1$1 5L5L ... ISPROPN 7 5L?W ...#SKI JSKI18 5LG6 ... ISPROPN XBRK,7 [CHECK PROP NAME IN CUNI BLOCK AND IF 5LNB [PRESENT IN SYSPROP PUT PROPNO IN X7 5M82 [ELSE X7=0. 5MML MHUNT 3,CPB,CUNI 5N7= FREECORE 3 [FREE CUNI BLOCK (PROP NAME) 5NLW BZE 7 ZENDE 5P6G #SKI K6ASSOC>199-199 5PL6 TRACE 7,ASSPROP 5Q5Q # 5Q=8 ... BPZ 7 NOTCONS [IF CONSOLE PROP,THROW OUT 5QBL ... ORN 6 IVCP 5QH4 ... ERN 6 IVCP [*CP BIT,IN CASE IT WAS SET ABOVE 5QMG ...NOTCONS [SEARCH FOR THE REMAINING PARAMETER 5QRY ...#SKI JSKI27 5QYB ...( 5R4S ... LDX 0 CONTEXT(2) 5R9= ... LDX 1 0 5R*N ... ANDN 0 1 5RG6 ... BNZ 0 XUSER [J IF IN USER CONTEXT 5RLJ ... ANDN 1 #10 5RR2 ... BNZ 1 XNU [MOP-NO-USER 5RXD ...) 5R^3 ...#UNS G402 5S2L ...OPCOMMAND 5S4= LDN 4 6 [(WE ASSUME THAT THIS COMMAND HAS 5SHW SBX 4 AWORK4(2) [THREE PARAMETRS ONLY). 5T3G ... PARSORTX XBRK1,4,NOCLUS 5TH6 HUNTW 3,CPAR,JSCE 5W2Q BNG 3 ZENDE [ERROR 5WGB LDEX 5 JSCEQ(3) 5X22 LDX 0 JSCEB(3) 5XFL BNG 0 XREM [J IF REMOTE 5X^= LDEX 0 JSCEA(3) [GEOGNO 5YDW STO 0 AWORK2(2) 5YYG LDCH 4 JSCEA(3) [DEVICE TYPE 5^D6 LDX 3 JSCEP(3) [DEVICE PTR 5^XQ BZE 4 XTR [J IF TR 62CB SBN 4 3 62X2 BZE 4 XTR 63BL XEXY 63W= OUTPARAM 5,JSCER,CPAR,JSCE 64*W BRN ZCE4 64TG XTR LADDP 3,3 [APIA POINTER 65*6 LDX 0 AWORK3(2) 65SQ BNG 0 XCANAS [GO TO CANCEL ASSOCIATION 66#B LDN 4 ASSMAX 66S2 STOZ 5 67?L XLOC3 LDX 0 APERPROP(3) 67R= BZE 0 XLOC1A [NO ASSOCIATION HERE 68=W ORX 0 6 68QG BXE 0 APERPROP(3),XERB [ASSOCIATION ALREADY DEFINED 69=6 ERX 0 6 69PQ ANDX 0 HALFTOP 6=9B BNZ 0 XLOC1 [DIFFERENT COMMAND PARAMETER 6=P2 LDX 0 APERPROP(3) 6?8L ANDX 0 6 6?N= ANDN 0 #7777 6#7W BNZ 0 XERB [ALREADY DEFINED 6#MG BXE 7 APERPROP+1(3),XLOC2 [SAME PROPERTY NO-JUST ADD NEW 1 6*76 BRN XLOC1 6*LQ XLOC1A 6B6B LDN 5 1 [FREE PAIR EXISTS 6BL2 XLOC1 6C5L BCT 4 XLOC4 6CK= [END OF ASS. AREA 6D4W BZE 5 XERC [NO ROOM FOR MORE ASSOCIATIONS 6DJG SBN 3 ASSMAX-1*2 [PUT IN FIRST EMXTY PAIR 6F46 XLOC6 LDX 0 APERPROP(3) [SEARCH FOR A FREE PAIR 6FHQ BNZ 0 XLOC5 6G3B STO 6 APERPROP(3) [STORE ASSOCIATION PAIR 6GH2 STO 7 APERPROP+1(3) 6H2L BRN XLOC2A 6HG= XLOC5 ADN 3 2 [STEP TO NEXT PAIR 6H^W BRN XLOC6 6JFG XLOC4 BDX 3 XLOC3 6J^6 XLOC2 ORS 6 APERPROP(3) 6KDQ XLOC2A 6KYB PROPAE 6,7,AWORK2(2),XGEO [PUT IN SYSPROP IF PERMANENT PROPERTY 6LD2 BRN OKREP 6LXL XGEO GEOERR 1,ASSOC [SYSPROP SAYS NO 6MC= XCANAS [CANCEL ASSOCIATIONS 6MWW LDN 4 ASSMAX 6NBG YLOC5 LDX 0 APERPROP(3) 6NW6 BZE 0 YLOC2 [LOOK AT NEXT PAIR 6P*Q BXU 7 APERPROP+1(3),YLOC2 [GO TO NEXT PAIR 6PTB ANDX 0 6 6Q*2 ANDX 0 HALFTOP 6QSL BZE 0 YLOC2 [DIFFERENT COMMAND PARAMETERS 6R#= LDX 0 6 6RRW ANDX 0 APERPROP(3) 6S?G ANDN 0 #7777 6SR6 ERS 0 APERPROP(3) [CANCEL PART OF AE SPECIFIED 6T=Q LDX 0 APERPROP(3) 6TQB ANDN 0 #7777 6W=2 BNZ 0 YLOC3 6WPL YLOCS BCT 4 YLOCY 6X9= STOZ APERPROP(3) 6XNW STOZ APERPROP+1(3) [CANCEL ASSOCIATION 6Y8G BRN YLOC3 [NOTHING TO MOVE UP 6YN6 YLOCY LDX 0 APERPROP+2(3) [MOVE MP NEXT PAIR 6^7Q STO 0 APERPROP(3) 6^MB LDX 0 APERPROP+3(3) 7272 STO 0 APERPROP+1(3) 72LL BDX 3 YLOCS 736= YLOC3 73KW PROPCAE 6,7,AWORK2(2),OKREP [CANCEL FROM SYSPROP IF PERMANENT 745G BRN OKREP 74K6 YLOC2 BCT 4 YLOC4 754Q BRN OKREP [ASSOCIATION TO BE CANCELLED NON-EXIS 75JB [ENT 7642 YLOC4 BDX 3 YLOC5 76HL XREMA 773= HUNTW 3,CPAR,JSCE [IPB,UX,MX ONLY ALLOWED IF LINES 77GW LDX 0 JSCEB(3) [ETC SPECIFIED 782G BPZ 0 XEXY [J IF NOT REMOTE 78G6 XREM 78^Q LDX 0 AWORK3(2) [GET ENTRY MARKER 79FB BNG 0 ZCNCL [J IF ENTRY WAS FOR CANCELLATION (K2) 79ML ...#SKI IDFMARK8<1$1 79TW ... MIDFAS 6,7,ZENDE 7=46 ...#SKI IDFMARK8 7==B ... MIDFAS XBRK1,6,7,ZENDE [SET ASSOCIATION IN IDF OR J TO 7=DL [IF COMMAND ERROR FOUND ON PARAM 1 7=Y= OKREP [NOW SEND AN 'OK' REPLY FOR THIS COM 7?CW PARALAS [GET MSGE PARAM INTO ADATA/CSTORE 7?XG MHUNTW 3,ADATA,CSTORE [A1=CHAR CT, A1+1 ON = PARAM 7#C6 OUTPARAM A1(3),A1+1,ADATA,CSTORE [PREPARE REPLY PARAM 7#WQ MHUNTW 1,ADATA,CSTORE 7*BB FREECORE 1 7*W2 LDXC 0 AWORK3(2) 7B*L ADN 1 0 7BT= LDX 5 XASSOCR(1) [MSGE IDENTIFIER IN X5 7C#W MONOUTX 5 [SEND MSGE 7CSG BRN ZENDE [J FOR ENDCOM 7D#6 ZCNCL 7DGB ...#SKI IDFMARK8<1$1 7DNL ... CIDFAS 6,7,ZENDE 7DWW ...#SKI IDFMARK8 7F56 ... CIDFAS XBRK1,6,7,ZENDE [CANCEL ASSOCIATION IN IDF OR J 7F?B [ZENDE IF ERROR FOUND. 7FR2 BRN OKREP [J TO SEND OK REPLY 7G=L # 7GQ= # 7H9W Z2ASSOC 7HPG NGS 2 AWORK3(2) [MARK K2ENTRY 7J96 BRN Z10 7J9F ...#SKI JSKI27 7J9S ...( 7J9T ...#UNS G402 7J9W ...( 7J9X ...XUSER JBS OPCOMMAND,2,EXOPCOM 7J9Y ... LDN 1 0 7J9^ ...) 7J=2 ...#UNS G402 7J=3 ...#SKI 7J=7 ...XUSER LDN 1 0 7J=G ... PARANUMB 4,1 7J=T ... SBN 4 3 7J?8 ... BPZ 4 XTM [J IF >2 PARAMS 7J?H ... LDX 0 CONTEXT(2) 7J?W ... ANDN 0 #10 7J#9 ... BZE 0 XUSRA [J IF NOT MOP 7J#J ... MOPASAT 4 7J#X ...XUSRA HUNTW 3,APERI,ASSOCS 7J*= ... BPZ 3 XUSR 7J*K ... SETNCORE ASSOCSLEN+1,3,APERI,ASSOCS 7J*Y ... LDN 0 1 7JB? ... STO 0 A1(3) [ONE ENTRY 7JBL ...XUSRB STO 6 A1+1(3) [CM,PERIPHERAL TYPES 7JB^ ... STO 7 A1+2(3) [PROP NO 7JC# ...XUSRC 7JCM ...#SKI JSKI18<1$1 7JD2 ... PROPASSO 7JD* ...#SKI JSKI18 7JDN ... PROPASSO XBRKU [FILL IN PROPERTY NAMES 7JF3 ...#SKI JWPHASE2 7JFB ... JLASSOCS [PUT ASSOCS IN JOBLIST 7JFP ... BRN OKREP 7JG4 ...XUSR SETUPCORE ALOGLEN(3),2,APERI,ASSOCS1 [TEMPORARY BLOCK(FOR BRKN) 7JGC ... MHUNTW 3,APERI,ASSOCS 7JGQ ... LDN 0 A1(3) [KEEP A COPY OF LATEST AES 7JH5 ... LDN 1 A1(2) 7JHD ... SMO ALOGLEN(3) 7JHR ... MOVE 0 0 7JJ6 ... LDX 5 A1(3) 7JJF ... LDX 2 3 [SAVE ASSOCS PTR 7JJS ...XUSRG LDX 0 A1+1(3) 7JK7 ... ERX 0 6 7JKG ... ANDX 0 HALFTOP 7JKT ... BNZ 0 XUSRD [J IF DIFFERENT COMMANDS 7JL8 ... LDX 0 A1+2(3) 7JLH ... ERX 0 7 7JLW ... BNZ 0 XUSRE [J IF DIFF PROPNOS 7JM9 ... ORS 6 A1+1(3) [ADD NEW ONES 7JMJ ... BRN OKREP 7JMX ...XUSRE LDX 0 A1+1(3) 7JN= ... ANDX 0 6 7JNK ... ANDN 0 #7777 7JNY ... BZE 0 XUSRD [NO CHANGE TO THIS ENTRY 7JP? ... ERS 0 A1+1(3) [UNSET THE ONES THAT ARE... 7JPL ... LDX 0 A1+1(3) [...BEING REDEFINED 7JP^ ... ANDN 0 #7777 7JQ# ... BZE 0 XUSRB [NOTHING LEFT IN HERE 7JQM ...XUSRD ADN 3 ASSOCSLEN [GO TO NEXT ENTRY 7JR2 ... BCT 5 XUSRG 7JR* ... LDX 0 A1(2) 7JRN ... SBN 0 ASSMAX 7JS3 ... BZE 0 XERC [NO MORE ALLOWED 7JSB ... ADN 0 1+ASSMAX 7JSP ... STO 0 A1(2) [ADD NEW ENTRY 7JT4 ... LDN 4 ASSOCSLEN 7JTC ... MPY 0 4 7JTQ ... LDN 4 1(1) [NEW LENGTH OF BLOCK 7JW5 ... LDX 3 2 7JWD ... ALTLENG 3,4,XFU 7JWR ... MHUNTW 3,APERI,ASSOCS 7JX6 ... SBN 4 ASSOCSLEN+1 7JXF ... ADX 3 4 7JXS ... BRN XUSRB [GO TO PUT NAME IN 7JY7 ...XFU MHUNTW 2,APERI,ASSOCS 7JYG ... EXIT 1 0 7JYT ...XBRKU MFREEW APERI,ASSOCS 7J^8 ... HUNTW 3,APERI,ASSOCS1 7J^H ... BNG 3 XBRKA 7J^W ... NAME 3,APERI,ASSOCS 7K29 ...XBRKA COMBRKIN 7K2J ...) 7K2X ...# 7K3= ...XBRK 7K3K ...#SKI JSKI27 7K3Y ...( 7K4? ... LDX 0 CONTEXT(2) 7K4L ... ANDN 0 1 7K4^ ... BNZ 0 XBRKA [J IF USER-CONTEXT 7K5# ...) 7K5M ...XBRK1 GEOERR 1,BKINPROP 7K62 ... MENDAREA 30,K100ASSOC 7K8B # 7KN2 #END ^^^^ ...34410563000100000000