8 22FL #OPT K0CONCEPT=0 8 22_= #OPT K6CONCEPT=0 15 23DW #LIS K0CONCEPT>K0ALLGEO>K0GREATGEO>K0COMMAND 10 23YG SEG CONCEPT,,PHIL TURNER 4 24D6 # 11 24XQ SEGENTRY K1CONCEPT,X1CONCEPT 11 25CB SEGENTRY K2CONCEPT,X2CONCEPT 4 25X2 # 18 26BL # THIS SEGMENT DEALS WITH WITH THE CONCEPTUAL COMMAND 4 26W= # 9 27*W MASK #37777000 9 27TG #77770000 9 28*6 #37777777 8 28SQ XINCR #1000 8 29#B XPBLK +0 8 29S2 X65 +64 8 2=?L XSAVE +0 9 2=R= XREPL 4HREPL 9 2?=W MASK1 #00010000 9 2?QG ZJPARAM +JPARMIS 9 2#=6 ZJPARNAM +JPARNAM 9 2#PQ ZJPARGEO +JPARGEO 9 2*9B ZJSETP1 +APFERR 9 2*P2 ZJDELON +JDELON 9 2B8L ZJOURA +JOURA 9 2BN= ZHALRDEF +HALRDEF 4 2C7W # 9 2CMG PFOTNALE +FOTNALE 9 2D76 PJNLFNF +JNLFNF 8 2DLQ XDICT +10 9 2F6B 8HMASTER 8 2FL2 SPACE 4H 10 2G5L 12HLEXICON 8 2GK= +1 8 2H4W +1 8 2HJG 4HB1 8 2J46 NMODES +4 18 2JHQ XERNOUSER +ERNOUSER ['USER NAME NOT FOUND' 8 2JNY ... FSHCODE AORB 9 2JW6 ...SLANG 4HBBBB 4 2K3B # 4 2KH2 # 5 2L2L PARAM 8 2LG= SBX 5 FX1 7 2L_W SPARAPASS 10 2MFG MHUNT 3,CPB,CUNI 8 2M_6 ADX 5 FX1 9 2NDQ LDX 2 ANUM(3) 15 2NYB BNG 2 PAR1 [NO PARAMETER 16 2PD2 BZE 2 PAR1 [NULL PARAMETER 7 2PXL EXIT 5 1 4 2QC= PAR1 8 2QWW LDX 2 FX2 15 2RBG EXIT 5 0 [ERROR EXIT 12 2RW6 # LOCATE UNIT OR LINE 8 2S*Q PASS SBX 7 FX1 10 2STB MHUNT 3,CPB,CUNI 8 2T*2 CHNUMCOD ,3 11 2TSL TESTREP CHNUMERR,XEND1 8 2W#= ADX 7 FX1 10 2WRW MHUNT 3,CPB,CUNI 7 2X?G EXIT 7 0 4 2XR6 # 5 2Y=Q XGETCELL 8 2YQB SBX 7 FX1 8 2_=2 MGETCELL 2,3 8 2_PL ADX 7 FX1 7 329= EXIT 7 0 5 32NW XCHECK 18 338G SBX 7 FX1 [ROUTINE TO CHECK NAME. 8 33N6 MNAME 2,3 8 347Q ADX 7 FX1 7 34MB EXIT 7 0 5 3572 SUBWRITE 8 35LL SBX 6 FX1 7 366= IDFWRITE 6 36KW CLOSE 8 375G ADX 6 FX1 7 37K6 EXIT 6 0 4 384Q # 15 38JB # MAIN PART OF ANALYSING COMMAND. 4 3942 # 6 39HL X1CONCEPT 5 3=3= XPARAM 19 3=GW CALL 5 PARAM [CONCEPTUAL NAME PARAMETER- 21 3?2G BRN XCOM1 [ERROR NO CONCEPTUAL NAME PARAMETER 9 3?G6 LDCH 4 APARA(3) 8 3?_Q SBN 4 #41 21 3#FB BNG 4 XCOM5 [ERROR NAME DOES NOT BEGIN WITH CHAR. 9 3#_2 SBN 4 #73-#41 8 3*DL BPZ 4 XCOM5 19 3*Y= SRL 2 2 [X2=NO. OF CHARS. IN COMMAND. 7 3BCW SBN 2 4 17 3BXG BPZ 2 XCOM5 [ERROR NAME > 3 WDS. 18 3CC6 CALL 5 PARAM [FIND LINE NO. PARAMETER 17 3CWQ BRN RX1 [NULL OR NO PARAMETER 8 3DBB SRL 2 12 20 3DW2 BZE 2 RX2 [J IF SINGLE PAR.-NO OF LINES OR 15 3F*L SBN 2 3 [IDENTIFIERS 21 3FT= BZE 2 RX3 [J IF QUAL.PAR. - LOWEST IDENTIFIER 18 3G#W BRN XCOM5 [OR LINE NO (NO OF L/I) 7 3GSG RX3 FREECORE 3 7 3H#6 LDN 6 2 18 3HRQ PARALYSE ,,6 [SPLIT N(M) INTO CMULTI 7 3HWW ...#UNS ANSTOOMANY 13 3J22 ... TESTREP2 TOOMANY,TOMP,UNPAIR,RSW 7 3J56 ...#UNS ANSTOOMANY 4 3J8= ...#SKI 10 3J?B TESTREP UNPAIR,RSW 15 3JR2 PARAPASS [N INTO CUNI 20 3K=L CALL 7 PASS [TRANSFORM DECIMAL INTO BINARY 14 3KQ= LDX 4 ACOMMUNE1(2) [STORE N 8 3L9W BZE 4 XCOM3 8 3LPG BNG 4 XCOM3 7 3M96 LDX 0 4 8 3MNQ SBN 0 #7777 8 3N8B BZE 0 RXX1 8 3NN2 BNG 0 RXX1 8 3P7L BRN XCOM3 4 3PM= RXX1 7 3Q6W FREECORE 3 7 3QLG PARAPASS 10 3R66 MHUNT 3,CPB,CMULTI 7 3RKQ FREECORE 3 8 3S5B BRN RX4 4 3SK2 # 8 3T4L SRSW SBX 7 FX1 7 3TJ= SPARANOT 2 8 3W3W ADX 7 FX1 7 3WHG EXIT 7 0 4 3X36 # 7 3XGQ RX2 LDN 4 1 8 3Y2B RX4 CALL 7 PASS 18 3YG2 LDX 0 ACOMMUNE1(2) [NO OF LINES/IDENTIFIERS 8 3Y_L BZE 0 XCOM3 8 3_F= BNG 0 XCOM3 7 3_YW ADX 0 4 8 42DG SBN 0 #7777 8 42Y6 BPZ 0 RX9 8 43CQ RX10 ADN 0 #7777 7 43XB SBX 0 4 8 44C2 BRN RX5 8 44WL RX9 BZE 0 RX10 8 45B= CALL 7 SRSW 8 45TW BRN XCOM3 7 46*G RX1 LDN 4 1 7 46T6 LDN 0 1 8 47#Q RX5 SLL 0 12 19 47SB ORX 4 0 [IN AWORK4 B0-B11 NO OF L/I 18 48#2 STO 4 AWORK4(2) [B12-B23 LOWEST L/I NO 7 48RL FREECORE 3 9 49?= #SKI K6CONCEPT>199-199 10 49QW TRACE 4,NOCONLIN 4 4==G # 4 4=Q6 # 7 4?9Q LDN 4 1 13 4?PB LDCT 5 #120 [4H: 7 4#92 STOZ 6 16 4#NL SPARABEG 1,4,5,6 [FIND USERNAME 21 4*8= CHEKLFN2 NUSEN,NLF [CHECK WHETHER THE USERNAME EXISTS 21 4*MW [AND HAS THE LOCAL FILE NAME FORMAT 9 4B7G #SKI K6CONCEPT>199-199 9 4BM6 TRACE 2,USER 8 4C6Q BRN USNEX 5 4CLB NUSEN 20 4D62 STOZ CPREFIX(2) [STOZ THE LOCATIONS WHERE SHOULD 18 4DKL STOZ CPREFIX+1(2) [BE THE USERNAME IN CPA 10 4F5= STOZ CPREFIX+2(2) 9 4FJW #SKI K6CONCEPT>199-199 11 4G4G TRACE CPREFIX(2),NOUSER 8 4GJ6 BRN RZ2 4 4H3Q # 19 4HHB # AT THIS POINT THERE MUST AFTER CPA EXIST CPB/CUNI BLOCK WITH 20 4J32 # THE CONCEPTUAL NAME AND CPB/CUNI BLOCK WITH USERNAME OR ZEROIZED 13 4JGL # APARA WHEN USERNAME NULL OR MISSING 13 4K2= # AWORK4 CONTAINS THE CONVERTED NO. 4 4KFW # 17 4K_G # OPEN A DUMMY FILE NAMED AFTER CONCEPTUAL MPX UNDER 15 4LF6 # THE USER DIRECTORY.USER NAME STORE IN CPA 5 4LYQ USNEX 20 4MDB SETNCORE 3,3,FILE,ADICT [SET UP A BLOCK FOR THE USERNAME 16 4MY2 [EXISTENCE CHECK 8 4NCL LDX 4 ACES 20 4NX= STO 4 CPREFIX(2) [SPACEFILE FILE USERNAME AREA IN 13 4PBW STO 4 CPREFIX+1(2) [CPA 10 4PWG STO 4 CPREFIX+2(2) 18 4QB6 STO 4 A1(3) [SPACEFILE ADICT BLOCK 9 4QTQ STO 4 A1+1(3) 9 4R*B STO 4 A1+2(3) 8 4RT2 LDN 4 A1(3) 10 4S#L MHUNT 3,CPB,CUNI 9 4SS= LDX 5 ANUM(3) 8 4T?W ANDN 5 #7777 7 4TRG ADN 5 3 19 4W?6 SRL 5 2 [USERNAME INTO ADDICT BLOCK 9 4WQQ LDN 3 APARA(3) 7 4X=B SMO 5 7 4XQ2 MOVE 3 0 17 4Y9L LDN 4 CPREFIX(2) [USERNAME INTO CPA 7 4YP= SMO 5 7 4_8W MOVE 3 0 21 4_NG SETNCORE 10,3,FILE,FABSNB [SET UP THE FILE ABSOLUTE NAME BLOCK 8 5286 LDN 4 A1(3) 9 52MQ LDN 3 XDICT(1) 21 537B MOVE 3 10 [INSERT NAME OF DICTIONARY-LEXICON 10 53M2 OPEN XBREAK,READR 16 546L TESTREP OPEN,RDICT [OPEN THE LEXICON 9 54L= BRN XBREAK 20 555W RDICT MFREEW FILE,FABSNB [FREE THE BLOCK WITH LEXICON NAME 7 55KG READLEX 21 5656 TESTREP NOUSER,NOUSER [J IF THE USER NOT FOUND IN LEXICON 21 56JQ MFREEW FILE,ASELFLEX [FREE THE LEXICON ABSOLUTE NAME BLOCK 6 574B CLOSE 9 57J2 #SKI K6CONCEPT>199-199 12 583L GSCAN CPREFIX(2),USERNAME,3 18 58H= RZ2 MFREE CPB,CUNI [FREE USERNAME CUNI BLOCK 17 592W # USERNAME IS NOW IN CPA -CPEFIX,CPREFIX+1,CPREFIX+2 4 59GG # 4 5=26 # 7 5=5= ...#UNS IDFMARK8 9 5=8B ... IDFOPEN ZBRKINI 7 5=?G ...#UNS IDFMARK8 4 5=BL ...#SKI 7 5=FQ Z2 IDFOPEN 7 5=_B LDN 3 0 8 5?F2 XNA SMO FX2 9 5?YL STOZ ACOMMUNE1 9 5#D= CALL 7 XCHECK 8 5#XW SMO FX2 17 5*CG LDX 0 ACOMMUNE1 [TEST IF NAME EXISTS 17 5*X6 BNZ 0 XDEL [NAME ALREADY EXISTS 8 5BBQ BRN XGET 6 5BWB X2CONCEPT 21 5CB2 # SUBROUTINE TO MOVE NAME AND NO. OF NULL LINES INTO BASE 21 5CTL # BASE CELL. TO GET ENOUGH ZEROISED CELL TO ACCMODATE THE 10 5D*= # NULL LINES. 4 5DSW # 4 5F#G XGET 9 5FS6 #SKI K6CONCEPT>99-99 4 5G?Q ( 9 5GRB TRACE 3,CELLPOG 9 5H?2 TRACE 2,RECPOG 4 5HQL ) 9 5J== CALL 7 XGETCELL 19 5JPW LDX 4 BRECNO(2) [LOAD REC.NO FROM BASE CELL 7 5K9G SLL 4 9 21 5KP6 ADX 4 3 [AWORK2 WILL CONTAIN IN B0-B14 RECORD 21 5L8Q SMO FX2 [NO OF RECORD CONTAINIG A FREE CELL, 21 5LNB STO 4 AWORK2 [B15-B23 RELATIVE ADDR OF THE FREE 17 5M82 [CELL IN THE RECORD 20 5MML ADX 3 2 [ADD TO THE POINTER TO THE RECORD 21 5N7= LDX 4 ACES [CONTAINING A FREE CELL THE RELATIVE 21 5NLW STO 4 1(3) [ADDR.OF A FREE CELL IN THE RECORD 19 5P6G LDN 4 1(3) [SPACEFILE WORDS 1-3 OF THE 16 5PL6 LDN 5 2(3) [CONCEPTUAL CELL 7 5Q5Q MOVE 4 2 19 5QKB MHUNT 1,CPB,CUNI [BLOCK WITH CONCEPTUAL NAME 8 5R52 LDN 5 1(3) 9 5RJL LDN 4 APARA(1) 9 5S4= LDX 0 ANUM(1) 20 5SHW ADN 0 3 [MOVE THE CONCEPTUAL NAME FROM 20 5T3G SRL 0 2 [CPB/CUNI INTO WORDS 1-3 OF THE 16 5TH6 SMO 0 [CONCEPTUAL CELL 7 5W2Q MOVE 4 0 18 5WGB SMO FX2 [STORE THE SIZE OF THE 17 5X22 LDX 4 AWORK4 [CONCEPTUAL IN WORD 4 7 5XFL LDX 0 4 8 5X_= ANDN 0 #7777 19 5YDW SBN 0 1 [IF LOWEST IDE/LINE NO EQ 1,THAN 16 5YYG BNZ 0 XZ1 [NEUTRAL CONCEPTUAL 18 5_D6 LDN 0 1 [OTHERWISE MARKED DEFAULT IPB 8 5_XQ BRN XZ2 7 62CB XZ1 LDX 0 4 8 62X2 ANDN 0 #7777 8 63BL ORX 0 GSIGN 17 63W= XZ2 STO 0 6(3) [LOWEST IDE/LINE NO 8 64*W SRL 4 12 8 64TG STO 4 4(3) 4 65*6 # 4 65SQ # 20 66#B SBX 3 2 [SPLIT AGAIN THE POINTER TO THE 21 66S2 [CURRENT RECORD FROM THE POINTER TO 20 67?L ADN 3 CELLEN-1 [THE CELL.DEFINE IN CURRENT CELL 21 67R= CALL 7 XGETCELL [WHERE THE POINTER TO THE NEXT CELL 21 68=W ADX 3 2 [SHOULD BE PUT - CREATE SUBSIDIARY 18 68QG SMO FX2 [CELL. HUNT FOR USERNAME 9 69=6 LDX 0 CPREFIX 18 69PQ BZE 0 XNOUN [BRANCH IF NOT USERNAME 8 6=9B LDN 5 0(3) 19 6=P2 SMO FX2 [MOVE THE USERNAME FROM CPA 17 6?8L LDN 4 CPREFIX [INTO SUBSIDIARY CELL 7 6?N= MOVE 4 3 8 6#7W XNOUN SMO FX2 18 6#MG LDX 4 AWORK4 [LOAD NO.OF CONCEPT LINES 8 6*76 SRL 4 12 4 6*LQ # 4 6B6B # 4 6BL2 # 19 6C5L XPXA SBX 3 2 [CREATE ANOTHER SUBSIDIARY 9 6CK= ADN 3 CELLEN-1 9 6D4W CALL 7 XGETCELL 7 6DJG ADX 3 2 9 6F46 SBN 4 CELLEN-1 8 6FHQ BNG 4 XIT1 8 6G3B BNZ 4 XPXA 4 6GH2 XIT1 4 6H2L # 4 6HG= # 8 6H_W SMO FX2 17 6JFG LDX 0 CPREFIX [IS THEIE A USERNAME? 8 6J_6 BZE 0 XEND 9 6KDQ MHUNT 2,CPB,CUNI 21 6KYB NAMETOP 2,FILE,FNAME [CREATE A RANDOM ACCESS FILE UNDER 8 6KYJ ... FSHCODE AORB 4 6KYQ ...( 21 6KYY ... FNORM [ CONVERT TO /FABSNB SO THAT LANG. 10 6K_6 ... MHUNT 3,FILE,FNAME 10 6K_# ... NAMETOP 3,CPB,CUNI 21 6K_G ... MHUNT 3,FILE,FABSNB [ CODE MAY BE SET FOR EACH M/C .... 9 6K_N ... FSHCODE A,XFSHA1 4 6K_W ...( 8 6L24 ... LDX 0 ACES 21 6L2= ... STO 0 A1+9(3) [ SET LANGUAGE CODE SPACES FOR M/C A 5 6L2D ...XFSHA1 4 6L2L ...) 9 6L2S ... FSHCODE B,XFSHB1 4 6L32 ...( 21 6L38 ... LDX 0 SLANG(1) [ SET LANGUAGE CODE 'BBBB' FOR M/C B 9 6L3B ... STO 0 A1+9(3) 5 6L3J ...XFSHB1 4 6L3Q ...) 4 6L3Y ...) 6 6L4? ...#UNS FTS1 13 6L88 ... USEROPEN XBRK,WRITE,CREATE,FROZEN 7 6L#5 ...#SKI FTS1<1$1 21 6LD2 USEROPEN XBRK,WRITE,CREATE [CREATE A RANDOM ACCESS FILE UNDER 19 6LXL TESTREPNOT OK,RERR [USER'S DIRECTORY NAMED AFTER 21 6MC= LDN 4 100 [THE CONCEPTUAL AND CONTRACT IT TO 15 6MWW FSCON 4,RSSS [NULL SIZE 6 6NBG RSSS CLOSE 8 6NW6 BRN XEND 4 6P*Q # 4 6PTB # 5 6Q*2 XCOM1 17 6QSL LDX 5 ZJPARAM(1) [PARAMETER MISSING 17 6R#= LDX 7 ZJPARNAM(1) [SUBMESSAGE - NAME. 9 6RRW BRN XCOMERR1 5 6S?G XCOM3 17 6SR6 LDX 5 ZJOURA(1) [COUNT OUT OF RANGE. 9 6T=Q BRN XCOMMERR1 5 6TQB XCOM4 18 6W=2 LDX 5 ZJDELON(1) [CONCEPT/UNIT IS ONLINED. 9 6WPL BRN XCOMMERR 8 6X9= RSW CALL 7 SRSW 17 6XNW XCOM5 LDX 5 ZJSETP1(1) [EXPRESSION INVALID 9 6Y8G BRN XCOMMERR1 5 6YN6 XCOM6 19 6_7Q LDX 5 ZHALRDEF(1) [EXIST BUT CANNOT BE DETACHED 9 6_MB BRN XCOMMERR 5 7272 XCOMERR 9 72LL CALL 6 SUBWRITE 5 736= XCOMERR1 18 73KW COMERRX 5,7 [ERROR WITH SUBMESSAGE 5 745G XCOMMERR 9 74K6 CALL 6 SUBWRITE 6 754Q XCOMMERR1 20 75JB COMERRX 5 [ERROR WITH MESSAGE FROM CPB/CUNI 4 7642 # 4 76HL # 19 773= RERR LDX 5 PFOTNALE(1) [FILE UNDER THIS NAME ALREADY 6 77GW CLOSE 9 782G BRN XCOMMERR1 16 78G6 NLF LDX 7 PJNLFNF(1) [NOT LOCAL NAME 7 78_Q NGN NGN 6 1 8 79FB XERR COMERRX 7,6 5 79_2 XBREAK 21 7=DL GEOERR 1,NOBRKIN [NO BREAKIN POSSIBLE WHILE OPENING 16 7=Y= NOUSER [THE DICTIONARY 17 7?CW CLOSE [CLOSE THE LEXICON 18 7?XG LDX 4 XERNOUSER(1) ['USER NOT FOUND MESSAGE' 7 7#C6 XCOMR COMERRX 4 7 7#WQ XBRK COMBRKIN 9 7*6J ...TOMP COMERR JTOOMANY 4 7*BB # 4 7*W2 # 4 7B*L # 21 7BT= # THIS PART DEALS WITH THE CASE WHEN THERE IS A CONCEPTUAL AREADY 21 7C#W # WITH THE NAME OF THE CONCEPTUAL WE ARE TRYING TO SET UP. IF ANY OF 21 7CSG # THE LINES HAVE BEEN USE WE GO OFF AND UNSET THEM. IF NOT WE USE 17 7D#6 # THE CELLS ALREADY SETUP FOR OUR NEW CONCEPTUAL. 4 7DRQ # 9 7F?B MASKA #67777777 5 7FR2 XROUND 21 7G=L LDN 5 CELLEN-1 [ROUND UP NO OF L/I TO THE NEAREST 16 7GQ= BZE 4 XCX [MULTIPLE OF 7 9 7H9W ADN 4 CELLEN-2 7 7HPG DVS 3 5 7 7J96 LDX 3 4 7 7JNQ MPY 3 5 7 7K8B XCX LDX 3 4 7 7KN2 EXIT 7 0 4 7L7L # 4 7LM= XMXB 8 7M6W SBX 7 FX1 8 7MLG LDX 2 FX2 7 7N66 MXB 2 8 7NKQ ADX 7 FX1 7 7P5B EXIT 7 0 18 7PK2 XDEL [X3=PTR. TO CONCEPTUALS 19 7Q4L LDX 4 BRECNO(2) [LD. REC. NO OF CURRENT REC. 7 7QJ= SLL 4 9 7 7R3W ADX 4 3 20 7RHG ADX 3 2 [X3=PTR.(ABSOLUTE) TO CONCEPTUAL. 8 7S36 SMO FX2 20 7SGQ STO 4 AWORK2 [ST.PTR. TO NEW CONCEPT IN AWORK2 19 7T2B LDX 4 4(3) [SIZE OF CONCEPTUAL - OLD ONE 19 7TG2 BNG 4 XCOM4 [ERROR IF CONCEPTUAL ONLINE 8 7T_L SMO FX2 9 7WF= STO 4 AWORK1 8 7WYW SMO FX2 9 7XDG LDX 0 AWORK4 7 7XY6 LDX 4 0 17 7YCQ ANDN 4 #7777 [LOWEST IDE/LINE NO 16 7YXB SRL 0 12 [NO OF LINES/IDE 8 7_C2 SMO FX2 9 7_WL STO 0 AWORK4 7 82B= LDX 0 4 7 82TW SBN 0 1 8 83*G BZE 0 XZ5 8 83T6 ORX 4 GSIGN 8 84#Q XZ5 STO 4 6(3) 8 84SB LDX 5 5(3) 8 85#2 SMO FX2 18 85RL STO 5 AWORK3 [COUNT OF ATTACHED LINES 19 86?= LDX 5 7(3) [LOAD THE POINTER TO THE 1ST 7 86QW LDX 6 5 21 87=G BPZ 5 XKOZ [CELL IS IN THE SAME RECORD J ELSE 18 87Q6 [HUNT FOR ANOTHER RECORD 4 889Q # 8 88PB SMO FX1 8 8992 ANDX 5 MASK 7 89NL SRL 5 9 8 8=8= SMO FX2 20 8=MW STO 5 ACOMMUNE3 [THE ROUTINE FINDS THE NEW RECORD 19 8?7G CALL 7 XMXB [X2 POINTS TO THE BEGINNING 4 8?M6 # 7 8#6Q XKOZ LDEX 1 6 8 8#LB ANDN 1 #777 20 8*62 ADX 1 2 [X1-POINTER TO THE 1ST SUB.CELL 20 8*KL LDX 5 2 [STORE THE POINTER TO THE RECORD 21 8B5= LDX 2 FX2 [WHICH CONTAINS THE 1ST SUBSIDIARY 18 8BJW TESTNAME 3,0(1),CPREFIX(2) [COMPARE THE USERNAMES 16 8C4G BNZ 7 XKUN [IF THE SAME J 21 8CJ6 LDX 0 0(1) [IF THE USERNAME IN IDF EQUALS ZERO 8 8D3Q BZE 0 XKRAV 20 8DHB OUTBLOCN 8 [AS THE WARNING TO THE OPERATOR 20 8F32 MHUNT 2,CPB,CUNI [OUTPUT MESSAGE:CONCEPTUAL %A IS 21 8FGL LDX 4 ANUM(2) [ALREADY OWNED BY THE USER %B,CANCEL 21 8G2= ANDN 4 #7777 [THIS CONCEPTUAL AND REDEFINE IT FROM 14 8GFW OUTPARAM 4,APARA,CPB,CUNI [SCRATCH 9 8G_G MONOUT CONCRED 9 8HF6 ... BRN TCLND1 10 8HYQ XKRAV LDN 6 CPREFIX(2) 18 8JDB LDN 7 0(1) [MOVE USERNAME INTO IDF 7 8JY2 MOVE 6 3 9 8KCL MHUNT 2,CPB,CUNI 21 8KX= NAMETOP 2,FILE,FNAME [CREATE A RANDOM ACCESS FILE UNDER 8 8KXD ... FSHCODE AORB 4 8KXL ...( 21 8KXS ... FNORM [ CONVERT TO /FABSNB SO THAT LANG. 10 8KY2 ... MHUNT 3,FILE,FNAME 9 8KY8 ... NAMETOP 3,CPB,CUNI 21 8KYB ... MHUNT 3,FILE,FABSNB [ CODE MAY BE SET FOR EACH M/C..... 9 8KYJ ... FSHCODE A,XFSHA2 4 8KYQ ...( 8 8KYY ... LDX 0 ACES 17 8K_6 ... STO 0 A1+9(3) [ .. SPACES FOR M/C A 5 8K_# ...XFSHA2 4 8K_G ...) 9 8K_N ... FSHCODE B,XFSHB2 4 8K_W ...( 9 8L24 ... LDX 0 SLANG(1) 18 8L2= ... STO 0 A1+9(3) [ ... 'BBBB' FOR M/C B 5 8L2D ...XFSHB2 4 8L2L ...) 4 8L2S ...) 6 8L37 ...#UNS FTS1 13 8L74 ... USEROPEN XBRK,WRITE,CREATE,FROZEN 7 8L=_ ...#SKI FTS1<1$1 21 8LBW USEROPEN XBRK,WRITE,CREATE [CREATE A RANDOM ACCESS FILE UNDER 19 8LWG TESTREPNOT OK,RERR [USER'S DIRECTORY NAMED AFTER 21 8MB6 LDN 4 100 [THE CONCEPTUAL AND CONTRACT IT TO 15 8MTQ FSCON 4,RWWW [NULL SIZE 6 8N*B RWWW CLOSE 8 8NT2 XKUN SMO FX2 18 8P#L LDX 5 AWORK3 [IS ANY LINE ATTACHED? 8 8PS= BZE 5 XHUN 9 8Q?W DOWN DELCON,2 4 8QRG XHUN 8 8R?6 LDX 2 FX2 16 8RQQ LDX 4 AWORK1(2) [NO OF OLD LINES 15 8S=B BXE 4 AWORK4(2),XC [J. IF CTS.= 15 8SQ2 BXGE 4 AWORK4(2),XB [J. OLD > NEW 21 8T9L CALL 7 XROUND [CALL SUBROUTINE TO ROUND TO NEAREST 21 8TP= BXGE 3 AWORK4(2),XC [IS ENOUGH ROOM? X3=CELL-ROUND-UP 7 8W8W LDX 6 3 19 8WNG STO 6 AWORK1(2) [ST. CT. NO. LINES IN NEW. 7 8X86 ADN 6 7 19 8XMQ LDX 4 AWORK4(2) [LD. CT. OF NO. LINES IN NEW 19 8Y7B LDX 5 AWORK2(2) [LD. PTR. TO CONCEPTUAL NAME 9 8YM2 LDX 3 AWORK2(2) 17 8_6L ANDN 3 #777 [MASK OUT CELL PTR. 8 8_L= XBA SMO FX1 8 925W ANDX 5 MASK 7 92KG SRL 5 9 8 9356 SMO FX2 15 93JQ STO 5 ACOMMUNE3 [ST. REC.NO. 21 944B CALL 7 XMXB [HUNT REC.MAY BE THERE BUT NEAR END N 20 94J2 XBAA ADX 3 2 [X3 PTRS. TO CONCEPTUAL CELLS. 18 953L BZE 6 XBAB [J. IF THIS IS LAST CELL 17 95H= SBN 6 7 [DECREASE CT. BY 7 20 962W LDX 3 7(3) [LD. PTR. TO NEXT CELL IN LIST 15 96GG BPZ 3 XBBA [IN THIS REC. 7 9726 LDX 5 3 8 97FQ ANDN 3 #777 21 97_B BRN XBA [BRANCH BACK TO READ DOWN ANOTHER CEL 8 98F2 XBBA ANDN 3 #777 19 98YL BRN XBAA [BRANCH BACK IN THIS CELL. 8 99D= XBAB SMO FX2 19 99XW LDX 6 AWORK1 [LD. CT. OF NO. OF LINES USED 7 9=CG SBX 3 2 14 9=X6 ADN 3 7 [LD. PTR. 15 9?BQ XBABX CALL 7 XGETCELL [GET ANOTHER 7 9?WB ADN 6 7 20 9#B2 BXGE 6 4,XC [J. IF ENOUGH CELLS FOR ALL LINES 7 9#TL ADN 3 7 19 9**= BRN XBABX [J. BACK TO GET ANOTHER CELL 4 9*SW # 20 9B#G # THIS PART DEALS WITH THE CASE WHEN THE OLD CONCEPTUAL HAS MORE 12 9BS6 # LINES THAN THE NEW CONCEPTUAL. 4 9C?Q # 17 9CRB XB STO 4 AWORK1(2) [ST. NO.LINES IN OLD. 20 9D?2 LDX 4 AWORK4(2) [LD. NO.LINES IN NEW CONCEPTUAL. 19 9DQL CALL 7 XROUND [CALL ROUTINE TO ROUND-UP NEW 19 9F== BXE 3 AWORK1(2),XC [J IF ROUNDED NEW EQUALS OLD 18 9FPW LDX 7 AWORK1(2) [LD. NO. OF LINES IN OLD 21 9G9G BXL 7 3,XC [J IF OLD LESS THAN NEW ROUNDED UP 7 9GP6 ADN 3 5 7 9H8Q LDN 7 7 21 9HNB DVS 2 7 [DIVIDE NO OF NEW LINES AND X3 WILL 21 9J82 SMO FX2 [CONTAIN THE NO OF SUB.CELLS WHICH 21 9JML [ARE NECESSARY FOR THE NEW CONCEPTUAL 19 9K7= LDX 6 AWORK2 [LD.POINTER TO NEW CONCEPTUAL 20 9KLW ADN 3 1 [FOR MK 6 IS THE NO OF SUBSIDIARY 21 9L6G ADN 6 7 [POINTER TO THE END OF CONCEPTUAL CEL 15 9LL6 [AND REC.NO 8 9M5Q SMO FX2 9 9MKB STO 6 AWORK1 7 9N52 SBN 6 7 7 9NJL LDX 5 3 4 9P4= XDA 7 9PHW LDX 3 6 8 9Q3G LDX 1 FX1 9 9QH6 ANDX 6 MASK(1) 7 9R2Q SRL 6 9 8 9RGB SMO FX2 9 9S22 STO 6 ACOMMUNE3 8 9SFL CALL 7 XMXB 16 9S_= ANDN 3 #777 [MASK CELL PTR. 17 9TDW ADX 3 2 [X3= ABSOLUTE PTR. 8 9TYG LDXC 6 7(3) 8 9WD6 XDBA BZE 5 XD 7 9WXQ ADN 6 7 8 9XCB SMO FX2 16 9XX2 STO 6 AWORK1 [ST. NEXT PTR. 7 9YBL SBN 6 7 21 9YW= SBN 5 1 [DECREASE CT. OF NO. OF CELLS NEEDED. 8 9_*W BRN XDA 21 9_TG XREC SBX 0 FX1 [SUBROUTINE TO HUNT FOR REC./CELL PTR 8 =2*6 SMO FX2 9 =2SQ STO 0 ACOMMUNE6 7 =3#B LDX 3 7 8 =3S2 SMO FX1 8 =4?L ANDX 7 MASK 7 =4R= SRL 7 9 8 =5=W SMO FX2 9 =5QG STO 7 ACOMMUNE3 8 =6=6 CALL 7 XMXB 8 =6PQ ANDN 3 #777 8 =79B SMO FX2 9 =7P2 LDX 0 ACOMMUNE6 8 =88L ADX 0 FX1 7 =8N= EXIT 0 0 7 =97W XD LDX 7 6 8 =9MG XDAA CALL 0 XREC 7 ==76 SMO 2 8 ==LQ LDX 7 7(3) 7 =?6B SMO 2 8 =?L2 STO 7 0(3) 8 =#5L SMO FX2 21 =#K= LDX 7 AWORK1 [CALCULTE PTR. TO CELL BEFORE ONE TO 8 =*4W CALL 0 XREC 15 =*JG MFREECELL 2,3 [FREE CELL 7 =B46 SMO 2 8 =BHQ LDX 7 0(3) 8 =C3B BNZ 7 XDAA 8 =CH2 XC SMO FX2 19 =D2L LDX 3 AWORK2 [LD. PTR. TO OLD CONCEPTUAL. 7 =DG= LDX 5 3 7 =D_W SRL 5 9 8 =FFG SMO FX2 18 =F_6 STO 5 ACOMMUNE3 [ST. REC.NO. FOR MACRO. 16 =GDQ NEWMXB 2 [HUNT FOR REC. 8 =GYB ANDN 3 #777 21 =HD2 ADX 3 2 [X3=PTR. (ABSOLUTE) TO NEW/OLD CONCEP 8 =HXL SMO FX2 21 =JC= LDX 5 AWORK4 [LD. CT. OF NO. OF LINES.TO BE IN NEW 17 =JWW STO 5 4(3) [ST. CT. IN CONCEPT 9 =KBG XEND CALL 6 SUBWRITE 9 =KW6 MFREE CPB,CUNI 6 =L*Q XEND1 ENDCOM 4 =LCF ...[ 5 =LF8 ...TCLND1 6 =LGX ... CLOSE 8 =LJL ... BRN XEND1 4 =LL* ...[ 5 =LN4 ...ZBRKINI 7 =LPR ... COMBRKIN 4 =LRG ...[ 4 =LTB # 9 =M*2 MENDAREA 30,K99CONCEPT 4 =MSL # 4 =N#= #END 8 ____ ...10633533000500000000