+--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 09 53 54 52 41 49 44 | 53 2e 43 00 00 00 00 00 |..STRAID|S.C.....| |00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 64 6f 73 | 61 01 00 00 00 00 00 00 |.TEXTdos|a.......| |00000050| 00 00 00 00 00 10 e3 00 | 00 01 9a af 7a 8e 2e af |........|....z...| |00000060| 7a 8e 2e 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |z.......|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 7e d6 00 00 |........|....~...| |00000080| 2f 2a 0d 0a 09 53 74 72 | 69 6e 67 41 69 64 73 20 |/*...Str|ingAids | |00000090| d1 d1 20 53 74 75 66 66 | 20 74 6f 20 61 6c 6c 6f |.. Stuff| to allo| |000000a0| 77 20 65 61 73 69 65 72 | 20 75 73 65 20 6f 66 20 |w easier| use of | |000000b0| 73 74 72 69 6e 67 73 0d | 0a 0d 0a 09 a9 20 43 6f |strings.|..... Co| |000000c0| 70 79 72 69 67 68 74 20 | 31 39 39 35 2d 39 37 20 |pyright |1995-97 | |000000d0| 49 64 65 61 73 20 46 72 | 6f 6d 20 74 68 65 20 44 |Ideas Fr|om the D| |000000e0| 65 65 70 2c 20 4c 74 64 | 2e 0d 0a 09 44 65 73 69 |eep, Ltd|....Desi| |000000f0| 67 6e 65 64 20 26 20 50 | 72 6f 67 72 61 6d 6d 65 |gned & P|rogramme| |00000100| 64 20 62 79 20 4c 61 6e | 65 20 52 6f 61 74 68 65 |d by Lan|e Roathe| |00000110| 0d 0a 09 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00000120| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00000130| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........| |00000140| d1 d1 d1 d1 0d 0a 09 39 | 37 30 33 30 37 20 4c 52 |.......9|70307 LR| |00000150| 20 3a 72 65 6d 6f 76 65 | 20 62 75 66 66 65 72 20 | :remove| buffer | |00000160| 73 74 75 66 66 20 74 6f | 20 42 55 46 46 45 52 41 |stuff to| BUFFERA| |00000170| 49 44 53 2e 43 0d 0a 09 | 39 37 30 32 31 34 20 4c |IDS.C...|970214 L| |00000180| 52 20 3a 61 64 64 20 73 | 6f 6d 65 20 65 72 72 6f |R :add s|ome erro| |00000190| 72 20 63 68 65 63 6b 69 | 6e 67 20 73 74 72 69 6e |r checki|ng strin| |000001a0| 67 32 74 65 78 74 20 72 | 6f 75 74 69 6e 65 73 0d |g2text r|outines.| |000001b0| 0a 09 39 36 31 32 30 34 | 20 4c 52 20 3a 61 64 64 |..961204| LR :add| |000001c0| 20 62 75 66 66 65 72 20 | 75 6e 2f 6c 6f 63 6b 20 | buffer |un/lock | |000001d0| 61 6e 64 20 77 6f 72 64 | 2f 6c 69 6e 65 20 72 6f |and word|/line ro| |000001e0| 75 74 69 6e 65 73 0d 0a | 09 39 36 30 39 31 37 20 |utines..|.960917 | |000001f0| 4c 52 20 3a 63 72 65 61 | 74 69 6f 6e 20 28 66 72 |LR :crea|tion (fr| |00000200| 6f 6d 20 49 6e 73 74 61 | 6c 6c 65 72 20 53 74 75 |om Insta|ller Stu| |00000210| 66 66 29 2c 20 6f 70 74 | 69 6d 69 7a 65 20 63 6f |ff), opt|imize co| |00000220| 70 79 20 26 20 61 70 70 | 65 6e 64 0d 0a 2a 2f 0d |py & app|end..*/.| |00000230| 0a 0d 0a 23 69 6e 63 6c | 75 64 65 20 22 69 6e 63 |...#incl|ude "inc| |00000240| 6c 75 64 65 73 2e 68 22 | 0d 0a 23 69 6e 63 6c 75 |ludes.h"|..#inclu| |00000250| 64 65 20 3c 73 74 72 69 | 6e 67 2e 68 3e 0d 0a 0d |de <stri|ng.h>...| |00000260| 0a 23 69 6e 63 6c 75 64 | 65 20 22 53 74 72 61 69 |.#includ|e "Strai| |00000270| 64 73 2e 68 22 0d 0a 0d | 0a 2f 2f 3d 3d 3d 3d 3d |ds.h"...|.//=====| |00000280| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000290| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002c0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 0a 2f 2f 20 54 65 78 |========|..// Tex| |000002d0| 74 32 53 74 72 69 6e 67 | 0d 0a 2f 2f 0d 0a 2f 2f |t2String|..//..//| |000002e0| 09 43 6f 70 69 65 73 20 | 43 20 73 74 79 6c 65 20 |.Copies |C style | |000002f0| 74 65 78 74 20 74 6f 20 | 61 20 70 61 73 63 61 6c |text to |a pascal| |00000300| 20 73 74 72 69 6e 67 0d | 0a 2f 2f 0d 0a 2f 2f 20 | string.|.//..// | |00000310| 45 4e 54 52 59 3a 09 73 | 6f 75 72 63 65 20 74 65 |ENTRY:.s|ource te| |00000320| 78 74 2c 20 64 65 73 74 | 20 73 74 72 69 6e 67 20 |xt, dest| string | |00000330| 61 64 64 72 65 73 73 0d | 0a 2f 2f 0d 0a 2f 2f 20 |address.|.//..// | |00000340| 20 45 58 49 54 3a 09 70 | 6f 69 6e 74 65 72 20 74 | EXIT:.p|ointer t| |00000350| 6f 20 72 65 73 75 6c 74 | 69 6e 67 20 73 74 72 69 |o result|ing stri| |00000360| 6e 67 0d 0a 2f 2f 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |ng..//==|========| |00000370| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000380| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000390| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000003a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000003b0| 3d 3d 3d 0d 0a 0d 0a 53 | 74 72 69 6e 67 50 74 72 |===....S|tringPtr| |000003c0| 20 54 65 78 74 32 53 74 | 72 69 6e 67 28 20 54 65 | Text2St|ring( Te| |000003d0| 78 74 50 74 72 20 73 2c | 20 53 74 72 69 6e 67 50 |xtPtr s,| StringP| |000003e0| 74 72 20 64 20 29 0d 0a | 7b 0d 0a 09 69 6e 74 20 |tr d )..|{...int | |000003f0| 63 20 3d 20 30 3b 0d 0a | 0d 0a 09 69 66 28 20 73 |c = 0;..|...if( s| |00000400| 20 26 26 20 64 20 29 0d | 0a 09 7b 0d 0a 09 09 77 | && d ).|..{....w| |00000410| 68 69 6c 65 28 20 2a 73 | 20 29 0d 0a 09 09 09 64 |hile( *s| ).....d| |00000420| 5b 2b 2b 63 5d 20 3d 20 | 2a 73 2b 2b 3b 09 2f 2f |[++c] = |*s++;.//| |00000430| 20 63 6f 70 79 20 26 20 | 67 65 74 20 6c 65 6e 67 | copy & |get leng| |00000440| 74 68 20 69 6e 20 6f 6e | 65 20 73 68 6f 74 0d 0a |th in on|e shot..| |00000450| 09 7d 0d 0a 09 2a 64 20 | 3d 20 63 3b 0d 0a 0d 0a |.}...*d |= c;....| |00000460| 09 72 65 74 75 72 6e 28 | 20 64 20 29 3b 0d 0a 7d |.return(| d );..}| |00000470| 0d 0a 0d 0a 2f 2f 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |....//==|========| |00000480| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000490| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000004a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000004b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000004c0| 3d 3d 3d 0d 0a 2f 2f 20 | 53 74 72 69 6e 67 32 54 |===..// |String2T| |000004d0| 65 78 74 0d 0a 2f 2f 0d | 0a 2f 2f 09 43 6f 70 69 |ext..//.|.//.Copi| |000004e0| 65 73 20 61 20 70 61 73 | 63 61 6c 20 73 74 72 69 |es a pas|cal stri| |000004f0| 6e 67 20 74 6f 20 43 20 | 74 65 78 74 20 62 75 66 |ng to C |text buf| |00000500| 66 65 72 0d 0a 2f 2f 0d | 0a 2f 2f 20 45 4e 54 52 |fer..//.|.// ENTR| |00000510| 59 3a 09 73 6f 75 72 63 | 65 20 73 74 72 69 6e 67 |Y:.sourc|e string| |00000520| 2c 20 64 65 73 74 20 74 | 65 78 74 20 61 64 64 72 |, dest t|ext addr| |00000530| 65 73 73 0d 0a 2f 2f 0d | 0a 2f 2f 20 20 45 58 49 |ess..//.|.// EXI| |00000540| 54 3a 09 70 6f 69 6e 74 | 65 72 20 74 6f 20 72 65 |T:.point|er to re| |00000550| 73 75 6c 74 69 6e 67 20 | 74 65 78 74 0d 0a 2f 2f |sulting |text..//| |00000560| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000570| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000580| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000590| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000005a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 0a 0d |========|=====...| |000005b0| 0a 54 65 78 74 50 74 72 | 20 53 74 72 69 6e 67 32 |.TextPtr| String2| |000005c0| 54 65 78 74 28 20 53 74 | 72 69 6e 67 50 74 72 20 |Text( St|ringPtr | |000005d0| 73 2c 20 54 65 78 74 50 | 74 72 20 64 20 29 0d 0a |s, TextP|tr d )..| |000005e0| 7b 0d 0a 09 69 66 28 20 | 73 20 26 26 20 64 20 29 |{...if( |s && d )| |000005f0| 0d 0a 09 7b 0d 0a 09 09 | 42 6c 6f 63 6b 4d 6f 76 |...{....|BlockMov| |00000600| 65 44 61 74 61 28 20 73 | 2b 31 2c 20 64 2c 20 2a |eData( s|+1, d, *| |00000610| 73 20 29 3b 09 2f 2f 20 | 6e 6f 20 6e 65 65 64 20 |s );.// |no need | |00000620| 74 6f 20 63 6f 75 6e 74 | 21 0d 0a 09 09 64 5b 2a |to count|!....d[*| |00000630| 73 5d 20 3d 20 30 3b 0d | 0a 09 7d 0d 0a 09 72 65 |s] = 0;.|..}...re| |00000640| 74 75 72 6e 28 20 64 20 | 29 3b 0d 0a 7d 0d 0a 0d |turn( d |);..}...| |00000650| 0a 2f 2f 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.//=====|========| |00000660| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000670| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000680| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000690| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000006a0| 0d 0a 2f 2f 20 43 6f 70 | 79 53 74 72 69 6e 67 0d |..// Cop|yString.| |000006b0| 0a 2f 2f 0d 0a 2f 2f 09 | 44 75 70 6c 69 63 61 74 |.//..//.|Duplicat| |000006c0| 65 73 20 6f 6e 65 20 73 | 74 72 69 6e 67 20 69 6e |es one s|tring in| |000006d0| 20 61 6e 6f 74 68 65 72 | 27 73 20 73 70 61 63 65 | another|'s space| |000006e0| 0d 0a 2f 2f 0d 0a 2f 2f | 20 45 4e 54 52 59 3a 09 |..//..//| ENTRY:.| |000006f0| 73 6f 75 72 63 65 20 73 | 74 72 69 6e 67 2c 20 64 |source s|tring, d| |00000700| 65 73 74 20 73 74 72 69 | 6e 67 20 61 64 64 72 65 |est stri|ng addre| |00000710| 73 73 0d 0a 2f 2f 0d 0a | 2f 2f 20 20 45 58 49 54 |ss..//..|// EXIT| |00000720| 3a 09 70 6f 69 6e 74 65 | 72 20 74 6f 20 72 65 73 |:.pointe|r to res| |00000730| 75 6c 74 69 6e 67 20 73 | 74 72 69 6e 67 0d 0a 2f |ulting s|tring../| |00000740| 2f 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |/=======|========| |00000750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000760| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000770| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000780| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 0a |========|======..| |00000790| 0d 0a 53 74 72 69 6e 67 | 50 74 72 20 43 6f 70 79 |..String|Ptr Copy| |000007a0| 53 74 72 69 6e 67 28 20 | 53 74 72 69 6e 67 50 74 |String( |StringPt| |000007b0| 72 20 73 2c 20 53 74 72 | 69 6e 67 50 74 72 20 64 |r s, Str|ingPtr d| |000007c0| 20 29 0d 0a 7b 0d 0a 09 | 69 66 28 20 73 20 26 26 | )..{...|if( s &&| |000007d0| 20 64 20 29 0d 0a 09 09 | 42 6c 6f 63 6b 4d 6f 76 | d )....|BlockMov| |000007e0| 65 44 61 74 61 28 20 73 | 2c 20 64 2c 20 28 2a 73 |eData( s|, d, (*s| |000007f0| 29 20 2b 20 31 20 29 3b | 0d 0a 09 72 65 74 75 72 |) + 1 );|...retur| |00000800| 6e 28 20 64 20 29 3b 0d | 0a 7d 0d 0a 0d 0a 2f 2f |n( d );.|.}....//| |00000810| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000820| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000830| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000840| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000850| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 0a 2f |========|=====../| |00000860| 2f 20 41 70 70 65 6e 64 | 53 74 72 69 6e 67 0d 0a |/ Append|String..| |00000870| 2f 2f 0d 0a 2f 2f 09 41 | 70 70 65 6e 64 73 20 6f |//..//.A|ppends o| |00000880| 6e 65 20 73 74 72 69 6e | 67 20 74 6f 20 74 68 65 |ne strin|g to the| |00000890| 20 65 6e 64 20 6f 66 20 | 61 6e 6f 74 68 65 72 0d | end of |another.| |000008a0| 0a 2f 2f 0d 0a 2f 2f 20 | 45 4e 54 52 59 3a 09 73 |.//..// |ENTRY:.s| |000008b0| 6f 75 72 63 65 20 73 74 | 72 69 6e 67 2c 20 64 65 |ource st|ring, de| |000008c0| 73 74 20 73 74 72 69 6e | 67 20 61 64 64 72 65 73 |st strin|g addres| |000008d0| 73 0d 0a 2f 2f 0d 0a 2f | 2f 20 20 45 58 49 54 3a |s..//../|/ EXIT:| |000008e0| 09 70 6f 69 6e 74 65 72 | 20 74 6f 20 72 65 73 75 |.pointer| to resu| |000008f0| 6c 74 69 6e 67 20 73 74 | 72 69 6e 67 0d 0a 2f 2f |lting st|ring..//| |00000900| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000910| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000920| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000930| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000940| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 0a 0d |========|=====...| |00000950| 0a 53 74 72 69 6e 67 50 | 74 72 20 41 70 70 65 6e |.StringP|tr Appen| |00000960| 64 53 74 72 69 6e 67 28 | 20 53 74 72 69 6e 67 50 |dString(| StringP| |00000970| 74 72 20 73 2c 20 53 74 | 72 69 6e 67 50 74 72 20 |tr s, St|ringPtr | |00000980| 64 20 29 0d 0a 7b 0d 0a | 09 69 66 28 20 73 20 26 |d )..{..|.if( s &| |00000990| 26 20 64 20 29 0d 0a 09 | 09 42 6c 6f 63 6b 4d 6f |& d )...|.BlockMo| |000009a0| 76 65 44 61 74 61 28 20 | 73 20 2b 20 31 2c 20 64 |veData( |s + 1, d| |000009b0| 20 2b 20 28 2a 64 29 20 | 2b 20 31 2c 20 2a 73 20 | + (*d) |+ 1, *s | |000009c0| 29 3b 0d 0a 09 2a 64 20 | 2b 3d 20 2a 73 3b 0d 0a |);...*d |+= *s;..| |000009d0| 0d 0a 09 72 65 74 75 72 | 6e 28 20 64 20 29 3b 0d |...retur|n( d );.| |000009e0| 0a 7d 0d 0a 0d 0a 2f 2f | 3d 3d 3d 3d 3d 3d 3d 3d |.}....//|========| |000009f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000a00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000a10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000a20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000a30| 3d 3d 3d 3d 3d 0d 0a 2f | 2f 20 49 6e 73 65 72 74 |=====../|/ Insert| |00000a40| 53 74 72 69 6e 67 0d 0a | 2f 2f 0d 0a 2f 2f 09 49 |String..|//..//.I| |00000a50| 6e 73 65 72 74 73 20 74 | 68 65 20 73 6f 75 72 63 |nserts t|he sourc| |00000a60| 65 20 73 74 72 69 6e 67 | 20 61 74 20 74 68 65 20 |e string| at the | |00000a70| 66 72 6f 6e 74 20 6f 66 | 20 74 68 65 20 64 65 73 |front of| the des| |00000a80| 74 20 73 74 72 69 6e 67 | 0d 0a 2f 2f 0d 0a 2f 2f |t string|..//..//| |00000a90| 20 45 4e 54 52 59 3a 09 | 73 6f 75 72 63 65 20 73 | ENTRY:.|source s| |00000aa0| 74 72 69 6e 67 2c 20 64 | 65 73 74 20 73 74 72 69 |tring, d|est stri| |00000ab0| 6e 67 0d 0a 2f 2f 0d 0a | 2f 2f 20 20 45 58 49 54 |ng..//..|// EXIT| |00000ac0| 3a 09 70 6f 69 6e 74 65 | 72 20 74 6f 20 72 65 73 |:.pointe|r to res| |00000ad0| 75 6c 74 69 6e 67 20 73 | 74 72 69 6e 67 0d 0a 2f |ulting s|tring../| |00000ae0| 2f 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |/=======|========| |00000af0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000b00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000b10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000b20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 0a |========|======..| |00000b30| 0d 0a 53 74 72 69 6e 67 | 50 74 72 20 49 6e 73 65 |..String|Ptr Inse| |00000b40| 72 74 53 74 72 69 6e 67 | 28 20 53 74 72 69 6e 67 |rtString|( String| |00000b50| 50 74 72 20 73 2c 20 53 | 74 72 69 6e 67 50 74 72 |Ptr s, S|tringPtr| |00000b60| 20 64 20 29 0d 0a 7b 0d | 0a 09 69 66 28 20 73 20 | d )..{.|..if( s | |00000b70| 26 26 20 64 20 29 0d 0a | 09 7b 0d 0a 09 09 42 6c |&& d )..|.{....Bl| |00000b80| 6f 63 6b 4d 6f 76 65 44 | 61 74 61 28 20 64 20 2b |ockMoveD|ata( d +| |00000b90| 20 31 2c 20 64 20 2b 20 | 28 2a 73 29 20 2b 20 31 | 1, d + |(*s) + 1| |00000ba0| 2c 20 2a 64 20 29 3b 09 | 2f 2f 20 6d 61 6b 65 20 |, *d );.|// make | |00000bb0| 72 6f 6f 6d 20 66 6f 72 | 20 6e 65 77 20 73 74 72 |room for| new str| |00000bc0| 69 6e 67 0d 0a 09 09 42 | 6c 6f 63 6b 4d 6f 76 65 |ing....B|lockMove| |00000bd0| 44 61 74 61 28 20 73 20 | 2b 20 31 2c 20 64 20 2b |Data( s |+ 1, d +| |00000be0| 20 31 2c 20 2a 73 20 29 | 3b 09 09 09 09 2f 2f 20 | 1, *s )|;....// | |00000bf0| 69 6e 73 65 72 74 20 6e | 65 77 20 73 74 72 69 6e |insert n|ew strin| |00000c00| 67 0d 0a 0d 0a 09 09 2a | 64 20 2b 3d 20 2a 73 3b |g......*|d += *s;| |00000c10| 0d 0a 09 7d 0d 0a 09 72 | 65 74 75 72 6e 28 20 64 |...}...r|eturn( d| |00000c20| 20 29 3b 0d 0a 7d 0d 0a | 0d 0a 2f 2f 3d 3d 3d 3d | );..}..|..//====| |00000c30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000c40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000c50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000c60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000c70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0a 2f 2f 20 49 6e |========|=..// In| |00000c80| 73 65 72 74 54 65 78 74 | 0d 0a 2f 2f 0d 0a 2f 2f |sertText|..//..//| |00000c90| 09 49 6e 73 65 72 74 73 | 20 74 68 65 20 73 6f 75 |.Inserts| the sou| |00000ca0| 72 63 65 20 74 65 78 74 | 20 61 74 20 74 68 65 20 |rce text| at the | |00000cb0| 66 72 6f 6e 74 20 6f 66 | 20 74 68 65 20 64 65 73 |front of| the des| |00000cc0| 74 20 74 65 78 74 0d 0a | 2f 2f 0d 0a 2f 2f 20 45 |t text..|//..// E| |00000cd0| 4e 54 52 59 3a 09 73 6f | 75 72 63 65 20 74 65 78 |NTRY:.so|urce tex| |00000ce0| 74 2c 20 64 65 73 74 20 | 74 65 78 74 0d 0a 2f 2f |t, dest |text..//| |00000cf0| 0d 0a 2f 2f 20 20 45 58 | 49 54 3a 09 70 6f 69 6e |..// EX|IT:.poin| |00000d00| 74 65 72 20 74 6f 20 72 | 65 73 75 6c 74 69 6e 67 |ter to r|esulting| |00000d10| 20 74 65 78 74 0d 0a 2f | 2f 3d 3d 3d 3d 3d 3d 3d | text../|/=======| |00000d20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000d30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000d40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000d50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000d60| 3d 3d 3d 3d 3d 3d 0d 0a | 0d 0a 54 65 78 74 50 74 |======..|..TextPt| |00000d70| 72 20 49 6e 73 65 72 74 | 54 65 78 74 28 20 54 65 |r Insert|Text( Te| |00000d80| 78 74 50 74 72 20 73 2c | 20 54 65 78 74 50 74 72 |xtPtr s,| TextPtr| |00000d90| 20 64 20 29 0d 0a 7b 0d | 0a 09 69 66 28 20 73 20 | d )..{.|..if( s | |00000da0| 26 26 20 64 20 29 0d 0a | 09 7b 0d 0a 09 09 69 6e |&& d )..|.{....in| |00000db0| 74 20 73 6c 2c 20 64 6c | 3b 0d 0a 0d 0a 09 09 73 |t sl, dl|;......s| |00000dc0| 6c 20 3d 20 73 74 72 6c | 65 6e 28 20 73 20 29 3b |l = strl|en( s );| |00000dd0| 0d 0a 09 09 64 6c 20 3d | 20 73 74 72 6c 65 6e 28 |....dl =| strlen(| |00000de0| 20 64 20 29 3b 0d 0a 0d | 0a 09 09 42 6c 6f 63 6b | d );...|...Block| |00000df0| 4d 6f 76 65 44 61 74 61 | 28 20 64 20 2c 20 64 20 |MoveData|( d , d | |00000e00| 2b 20 73 6c 2c 20 64 6c | 2b 31 20 29 3b 09 2f 2f |+ sl, dl|+1 );.//| |00000e10| 20 6d 61 6b 65 20 72 6f | 6f 6d 20 66 6f 72 20 6e | make ro|om for n| |00000e20| 65 77 20 74 65 78 74 0d | 0a 09 09 42 6c 6f 63 6b |ew text.|...Block| |00000e30| 4d 6f 76 65 44 61 74 61 | 28 20 73 2c 20 64 2c 20 |MoveData|( s, d, | |00000e40| 73 6c 20 29 3b 09 09 09 | 09 09 2f 2f 20 69 6e 73 |sl );...|..// ins| |00000e50| 65 72 74 20 6e 65 77 20 | 74 65 78 74 0d 0a 09 7d |ert new |text...}| |00000e60| 0d 0a 09 72 65 74 75 72 | 6e 28 20 64 20 29 3b 0d |...retur|n( d );.| |00000e70| 0a 7d 0d 0a 0d 0a 2f 2f | 3d 3d 3d 3d 3d 3d 3d 3d |.}....//|========| |00000e80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000e90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000ea0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000eb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000ec0| 3d 3d 3d 3d 3d 0d 0a 2f | 2f 20 43 6f 6e 74 61 69 |=====../|/ Contai| |00000ed0| 6e 73 53 74 72 69 6e 67 | 0d 0a 2f 2f 0d 0a 2f 2f |nsString|..//..//| |00000ee0| 09 53 65 61 72 63 68 65 | 73 20 73 6f 75 72 63 65 |.Searche|s source| |00000ef0| 20 73 74 72 69 6e 67 20 | 66 6f 72 20 64 65 73 74 | string |for dest| |00000f00| 69 6e 61 74 69 6f 6e 20 | 73 74 72 69 6e 67 20 28 |ination |string (| |00000f10| 63 61 73 65 20 73 65 6e | 73 69 74 69 76 65 21 29 |case sen|sitive!)| |00000f20| 0d 0a 2f 2f 0d 0a 2f 2f | 20 45 4e 54 52 59 3a 09 |..//..//| ENTRY:.| |00000f30| 73 6f 75 72 63 65 20 73 | 74 72 69 6e 67 2c 20 64 |source s|tring, d| |00000f40| 65 73 74 20 73 74 72 69 | 6e 67 0d 0a 2f 2f 0d 0a |est stri|ng..//..| |00000f50| 2f 2f 20 20 45 58 49 54 | 3a 09 70 6f 69 6e 74 65 |// EXIT|:.pointe| |00000f60| 72 20 74 6f 20 73 74 61 | 72 74 20 6f 66 20 73 75 |r to sta|rt of su| |00000f70| 62 2d 73 74 72 69 6e 67 | 2c 20 6f 72 20 6e 69 6c |b-string|, or nil| |00000f80| 20 69 66 20 6e 6f 74 20 | 66 6f 75 6e 64 0d 0a 2f | if not |found../| |00000f90| 2f 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |/=======|========| |00000fa0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000fb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000fc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000fd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 0a |========|======..| |00000fe0| 0d 0a 53 74 72 69 6e 67 | 50 74 72 20 43 6f 6e 74 |..String|Ptr Cont| |00000ff0| 61 69 6e 73 53 74 72 69 | 6e 67 28 20 53 74 72 69 |ainsStri|ng( Stri| |00001000| 6e 67 50 74 72 20 73 2c | 20 53 74 72 69 6e 67 50 |ngPtr s,| StringP| |00001010| 74 72 20 64 20 29 0d 0a | 7b 0d 0a 09 69 6e 74 20 |tr d )..|{...int | |00001020| 6c 20 3d 20 2a 73 2c 20 | 63 3b 0d 0a 09 53 74 72 |l = *s, |c;...Str| |00001030| 69 6e 67 50 74 72 20 70 | 2c 20 74 3b 0d 0a 0d 0a |ingPtr p|, t;....| |00001040| 09 69 66 28 20 73 20 26 | 26 20 64 20 26 26 20 2a |.if( s &|& d && *| |00001050| 64 20 29 09 09 2f 2f 20 | 6a 75 73 74 20 61 20 73 |d )..// |just a s| |00001060| 61 66 65 74 79 20 76 61 | 6c 76 65 0d 0a 09 7b 0d |afety va|lve...{.| |00001070| 0a 09 09 77 68 69 6c 65 | 28 20 6c 2d 2d 20 29 09 |...while|( l-- ).| |00001080| 09 09 09 2f 2f 20 6c 6f | 6f 6b 20 74 68 72 6f 75 |...// lo|ok throu| |00001090| 67 68 20 61 6c 6c 20 73 | 6f 75 72 63 65 20 63 68 |gh all s|ource ch| |000010a0| 61 72 73 0d 0a 09 09 7b | 0d 0a 09 09 09 73 2b 2b |ars....{|.....s++| |000010b0| 3b 0d 0a 09 09 09 74 20 | 3d 20 73 3b 0d 0a 09 09 |;.....t |= s;....| |000010c0| 09 70 20 3d 20 64 20 2b | 20 31 3b 0d 0a 09 09 09 |.p = d +| 1;.....| |000010d0| 63 20 3d 20 2a 64 3b 0d | 0a 0d 0a 09 09 09 77 68 |c = *d;.|......wh| |000010e0| 69 6c 65 28 20 2a 70 2b | 2b 20 3d 3d 20 2a 74 2b |ile( *p+|+ == *t+| |000010f0| 2b 20 26 26 20 2d 2d 63 | 20 29 0d 0a 09 09 09 09 |+ && --c| )......| |00001100| 3b 0d 0a 0d 0a 09 09 09 | 69 66 28 20 21 63 20 29 |;.......|if( !c )| |00001110| 09 09 2f 2f 20 6f 6e 6c | 79 20 7a 65 72 6f 20 69 |..// onl|y zero i| |00001120| 66 20 77 65 20 66 6f 75 | 6e 64 20 64 20 69 6e 20 |f we fou|nd d in | |00001130| 73 21 0d 0a 09 09 09 09 | 72 65 74 75 72 6e 28 20 |s!......|return( | |00001140| 73 20 29 3b 0d 0a 09 09 | 7d 0d 0a 09 7d 0d 0a 09 |s );....|}...}...| |00001150| 72 65 74 75 72 6e 28 20 | 6e 69 6c 20 29 3b 0d 0a |return( |nil );..| |00001160| 7d 0d 0a 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |}.......|........| |00001170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001180| 00 00 01 00 00 00 01 54 | 00 00 00 54 00 00 00 46 |.......T|...T...F| |00001190| 02 06 00 3b 00 00 01 2e | 02 06 00 10 00 00 01 30 |...;....|.......0| |000011a0| 02 06 00 42 00 00 01 48 | 02 06 00 25 00 00 01 4e |...B...H|...%...N| |000011b0| 09 53 54 52 41 49 44 53 | 2e 43 02 00 00 00 54 45 |.STRAIDS|.C....TE| |000011c0| 58 54 64 6f 73 61 01 00 | 00 00 00 00 00 00 00 00 |XTdosa..|........| |000011d0| 00 00 54 45 58 54 64 6f | 73 61 01 00 00 00 00 00 |..TEXTdo|sa......| |000011e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011f0| 00 00 00 00 00 00 00 00 | 10 e3 00 00 01 9a 46 e3 |........|......F.| |00001200| ff fe 01 3a 00 00 51 24 | 02 07 00 6c 00 00 00 00 |...:..Q$|...l....| |00001210| 02 07 00 69 00 00 00 0c | 02 07 00 38 00 00 00 12 |...i....|...8....| |00001220| 02 07 00 1b 00 00 00 20 | 02 07 00 34 00 00 00 32 |....... |...4...2| |00001230| 02 07 00 0d 00 00 00 34 | 02 07 00 51 00 00 00 38 |.......4|...Q...8| |00001240| 02 07 00 16 00 00 00 3c | 02 07 00 62 00 00 00 46 |.......<|...b...F| |00001250| 02 07 00 9c 00 00 00 4e | 02 07 00 c2 00 00 00 6e |.......N|.......n| |00001260| 02 07 00 28 00 00 00 74 | 02 07 00 4f 00 00 00 80 |...(...t|...O....| |00001270| 02 07 00 50 00 00 00 84 | 02 07 00 2e 00 00 00 8c |...P....|........| |00001280| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....| |00001290| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000012a0| 00 00 00 00 00 00 00 02 | 00 02 00 2c 00 08 02 58 |........|...,...X| |000012b0| 02 5e 00 2c 00 08 02 58 | 02 5e af 78 72 e6 00 00 |.^.,...X|.^.xr...| |000012c0| 01 bb 00 00 01 bb 00 00 | 00 00 01 00 00 00 00 04 |........|........| |000012d0| 00 01 00 01 00 00 01 00 | 00 00 01 54 00 00 00 54 |........|...T...T| |000012e0| 00 00 00 46 09 a5 80 74 | 26 ee 00 00 00 1c 00 46 |...F...t|&......F| |000012f0| 00 01 4d 50 53 52 00 00 | 00 12 4d 57 42 42 00 00 |..MPSR..|..MWBB..| |00001300| 00 1e 03 ed ff ff 00 00 | 00 00 00 00 00 00 03 f0 |........|........| |00001310| ff ff 00 00 00 4c 00 00 | 00 00 00 00 00 00 00 00 |.....L..|........| |00001320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| +--------+-------------------------+-------------------------+--------+--------+