home *** CD-ROM | disk | FTP | other *** search
Unknown | 1995-06-11 | 8.5 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
| |
100%
| xdgMime
| image/x-tga
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0a f4 3e 43 6f | 72 65 0d 00 0b 21 f4 20 |.....>Co|re...!. |
|00000010| 43 6f 70 79 72 69 67 68 | 74 20 31 39 39 35 20 43 |Copyrigh|t 1995 C|
|00000020| 6f 6c 69 6e 20 48 6f 67 | 62 65 6e 0d 00 0c 40 f4 |olin Hog|ben...@.|
|00000030| 20 59 6f 75 20 75 73 65 | 20 74 68 69 73 20 63 6f | You use| this co|
|00000040| 64 65 20 66 6f 72 20 61 | 6e 79 20 6e 6f 6e 2d 70 |de for a|ny non-p|
|00000050| 72 6f 66 69 74 20 70 75 | 72 70 6f 73 65 2c 20 70 |rofit pu|rpose, p|
|00000060| 72 6f 76 69 64 65 64 20 | 79 6f 75 0d 00 0d 3e f4 |rovided |you...>.|
|00000070| 20 64 6f 63 75 6d 65 6e | 74 20 61 6e 79 20 63 68 | documen|t any ch|
|00000080| 61 6e 67 65 73 20 6d 61 | 64 65 20 61 6e 64 20 61 |anges ma|de and a|
|00000090| 70 70 6c 79 20 74 68 65 | 20 73 61 6d 65 20 63 6f |pply the| same co|
|000000a0| 6e 64 69 74 69 6f 6e 73 | 2e 0d 00 14 3b f4 3d 3d |nditions|....;.==|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000e0| 3d 3d 3d 3d 0d 00 1e 20 | f4 20 20 20 20 20 20 20 |====... |. |
|000000f0| 46 75 6e 64 61 6d 65 6e | 74 61 6c 20 72 6f 75 74 |Fundamen|tal rout|
|00000100| 69 6e 65 73 0d 00 28 36 | f4 20 20 20 20 20 20 20 |ines..(6|. |
|00000110| 4c 69 62 72 61 72 69 65 | 73 2c 20 74 72 61 63 69 |Librarie|s, traci|
|00000120| 6e 67 2c 20 64 61 74 61 | 74 79 70 65 73 2c 20 61 |ng, data|types, a|
|00000130| 6c 6c 6f 63 61 74 69 6f | 6e 2c 0d 00 32 13 f4 20 |llocatio|n,..2.. |
|00000140| 20 20 20 20 20 20 73 74 | 72 69 6e 67 73 0d 00 50 | st|rings..P|
|00000150| 3b f4 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |;.======|========|
|00000160| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000170| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000180| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 00 5a 04 0d 00 64 17 |========|..Z...d.|
|00000190| dd 20 f2 63 6f 72 65 5f | 69 6e 69 74 28 70 61 74 |. .core_|init(pat|
|000001a0| 68 24 29 0d 00 6e 08 40 | 25 3d 30 0d 00 78 14 63 |h$)..n.@|%=0..x.c|
|000001b0| 6f 72 65 5f 70 61 74 68 | 24 3d 70 61 74 68 24 0d |ore_path|$=path$.|
|000001c0| 00 82 0e f2 74 79 70 65 | 5f 69 6e 69 74 0d 00 8c |....type|_init...|
|000001d0| 0f f2 61 6c 6c 6f 63 5f | 69 6e 69 74 0d 00 96 0e |..alloc_|init....|
|000001e0| f2 65 78 69 74 5f 69 6e | 69 74 0d 00 a0 10 65 72 |.exit_in|it....er|
|000001f0| 72 6f 72 5f 77 69 6d 70 | 3d a3 0d 00 aa 15 65 72 |ror_wimp|=.....er|
|00000200| 72 6f 72 5f 63 6f 6e 74 | 65 78 74 24 3d 22 22 0d |ror_cont|ext$="".|
|00000210| 00 b4 2f ee 20 85 20 f2 | 65 72 72 6f 72 5f 72 65 |../. . .|error_re|
|00000220| 70 6f 72 74 66 61 74 61 | 6c 28 30 2c f6 24 2b 22 |portfata|l(0,.$+"|
|00000230| 20 61 74 20 6c 69 6e 65 | 20 22 2b c3 9e 29 0d 00 | at line| "+..)..|
|00000240| be 0d 74 72 61 63 69 6e | 67 3d a3 0d 00 c8 17 74 |..tracin|g=.....t|
|00000250| 72 61 63 65 5f 66 69 6c | 65 24 3d 22 74 72 61 63 |race_fil|e$="trac|
|00000260| 65 22 0d 00 d2 05 e1 0d | 00 dc 04 0d 00 e6 3b f4 |e"......|......;.|
|00000270| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000280| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000290| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002a0| 2d 2d 2d 2d 2d 2d 0d 00 | f0 26 f4 20 20 20 20 20 |------..|.&. |
|000002b0| 20 20 4c 69 62 72 61 72 | 69 65 73 20 61 6e 64 20 | Librar|ies and |
|000002c0| 64 65 70 65 6e 64 65 6e | 63 69 65 73 0d 00 fa 3b |dependen|cies...;|
|000002d0| f4 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.-------|--------|
|000002e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000300| 2d 2d 2d 2d 2d 2d 2d 0d | 01 04 14 dd 20 f2 6c 69 |-------.|.... .li|
|00000310| 62 72 61 72 79 28 6c 69 | 62 24 29 0d 01 0e 15 e7 |brary(li|b$).....|
|00000320| 20 ac 20 a4 6c 69 62 70 | 28 6c 69 62 24 29 20 8c | . .libp|(lib$) .|
|00000330| 0d 01 18 21 f4 20 20 50 | 52 4f 43 74 72 61 63 65 |...!. P|ROCtrace|
|00000340| 28 22 4c 6f 61 64 69 6e | 67 20 22 2b 6c 69 62 24 |("Loadin|g "+lib$|
|00000350| 29 0d 01 22 18 20 20 c8 | 9b 20 63 6f 72 65 5f 70 |)..". .|. core_p|
|00000360| 61 74 68 24 2b 6c 69 62 | 24 0d 01 2c 30 20 20 e7 |ath$+lib|$..,0 .|
|00000370| 20 a0 28 22 46 4e 64 65 | 66 69 6e 74 28 5f 6c 69 | .("FNde|fint(_li|
|00000380| 62 5f 22 2b 6c 69 62 24 | 2b 22 5f 6c 6f 61 64 65 |b_"+lib$|+"_loade|
|00000390| 64 2c 54 52 55 45 29 22 | 29 0d 01 36 1c 20 20 e7 |d,TRUE)"|)..6. .|
|000003a0| 20 a0 28 22 46 4e 22 2b | 6c 69 62 24 2b 22 5f 69 | .("FN"+|lib$+"_i|
|000003b0| 6e 69 74 22 29 0d 01 40 | 05 cd 0d 01 4a 05 e1 0d |nit")..@|....J...|
|000003c0| 01 54 04 0d 01 5e 11 dd | 20 a4 6c 69 62 70 28 6c |.T...^..| .libp(l|
|000003d0| 69 62 24 29 0d 01 68 2e | 3d a0 28 22 46 4e 64 65 |ib$)..h.|=.("FNde|
|000003e0| 66 69 6e 74 28 5f 6c 69 | 62 5f 22 2b 6c 69 62 24 |fint(_li|b_"+lib$|
|000003f0| 2b 22 5f 6c 6f 61 64 65 | 64 2c 46 41 4c 53 45 29 |+"_loade|d,FALSE)|
|00000400| 22 29 0d 01 72 04 0d 01 | 7c 1a dd 20 a4 64 65 66 |")..r...||.. .def|
|00000410| 69 6e 74 28 f8 20 76 61 | 72 25 2c 76 61 6c 25 29 |int(. va|r%,val%)|
|00000420| 0d 01 86 18 e7 20 76 61 | 72 25 3d 30 20 8c 20 76 |..... va|r%=0 . v|
|00000430| 61 72 25 3d 76 61 6c 25 | 0d 01 90 09 3d 76 61 72 |ar%=val%|....=var|
|00000440| 25 0d 01 9a 04 0d 01 a4 | 1a dd 20 a4 64 65 66 73 |%.......|.. .defs|
|00000450| 74 72 28 f8 20 76 61 72 | 24 2c 76 61 6c 24 29 0d |tr(. var|$,val$).|
|00000460| 01 ae 19 e7 20 76 61 72 | 24 3d 22 22 20 8c 20 76 |.... var|$="" . v|
|00000470| 61 72 24 3d 76 61 6c 24 | 0d 01 b8 09 3d 76 61 72 |ar$=val$|....=var|
|00000480| 24 0d 01 c2 04 0d 01 cc | 3b f4 2d 2d 2d 2d 2d 2d |$.......|;.------|
|00000490| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000004a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000004b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000004c0| 0d 01 d6 1b f4 20 20 20 | 20 20 20 20 45 72 72 6f |..... | Erro|
|000004d0| 72 20 72 65 70 6f 72 74 | 69 6e 67 0d 01 e0 3b f4 |r report|ing...;.|
|000004e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000004f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000500| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000510| 2d 2d 2d 2d 2d 2d 0d 01 | ea 1f dd 20 f2 65 72 72 |------..|... .err|
|00000520| 6f 72 5f 72 65 70 6f 72 | 74 28 6e 75 6d 25 2c 74 |or_repor|t(num%,t|
|00000530| 65 78 74 24 29 0d 01 f4 | 12 e7 20 65 72 72 6f 72 |ext$)...|.. error|
|00000540| 5f 77 69 6d 70 20 8c 0d | 01 fe 11 20 20 62 75 66 |_wimp ..|... buf|
|00000550| 25 21 30 3d 6e 75 6d 25 | 0d 02 08 28 20 20 24 28 |%!0=num%|...( $(|
|00000560| 62 75 66 25 2b 34 29 3d | 74 65 78 74 24 2b 22 20 |buf%+4)=|text$+" |
|00000570| 22 2b 65 72 72 6f 72 5f | 63 6f 6e 74 65 78 74 24 |"+error_|context$|
|00000580| 0d 02 12 2f 20 20 c8 99 | 22 57 69 6d 70 5f 52 65 |.../ ..|"Wimp_Re|
|00000590| 70 6f 72 74 45 72 72 6f | 72 22 2c 62 75 66 25 2c |portErro|r",buf%,|
|000005a0| 2c 77 69 6d 70 5f 74 61 | 73 6b 6e 61 6d 65 24 0d |,wimp_ta|skname$.|
|000005b0| 02 1c 05 cc 0d 02 26 12 | 20 20 85 20 6e 75 6d 25 |......&.| . num%|
|000005c0| 2c 74 65 78 74 24 0d 02 | 30 05 cd 0d 02 3a 05 e1 |,text$..|0....:..|
|000005d0| 0d 02 44 04 0d 02 4e 24 | dd 20 f2 65 72 72 6f 72 |..D...N$|. .error|
|000005e0| 5f 72 65 70 6f 72 74 66 | 61 74 61 6c 28 6e 75 6d |_reportf|atal(num|
|000005f0| 25 2c 74 65 78 74 24 29 | 0d 02 58 1d f2 65 72 72 |%,text$)|..X..err|
|00000600| 6f 72 5f 72 65 70 6f 72 | 74 28 6e 75 6d 25 2c 74 |or_repor|t(num%,t|
|00000610| 65 78 74 24 29 0d 02 62 | 09 f2 65 78 69 74 0d 02 |ext$)..b|..exit..|
|00000620| 76 04 0d 02 80 13 dd 20 | f2 66 61 74 61 6c 28 74 |v...... |.fatal(t|
|00000630| 65 78 74 24 29 0d 02 81 | 1f f2 65 72 72 6f 72 5f |ext$)...|..error_|
|00000640| 72 65 70 6f 72 74 66 61 | 74 61 6c 28 30 2c 74 65 |reportfa|tal(0,te|
|00000650| 78 74 24 29 0d 02 82 04 | 0d 02 8a 3b f4 2d 2d 2d |xt$)....|...;.---|
|00000660| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000670| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000680| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000690| 2d 2d 2d 0d 02 94 13 f4 | 20 20 20 20 20 20 20 54 |---.....| T|
|000006a0| 72 61 63 69 6e 67 0d 02 | 9e 3b f4 2d 2d 2d 2d 2d |racing..|.;.-----|
|000006b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000006c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000006d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000006e0| 2d 0d 02 a8 0f dd 20 f2 | 74 72 61 63 65 5f 6f 6e |-..... .|trace_on|
|000006f0| 0d 02 b2 08 ea 20 74 25 | 0d 02 bc 11 e7 20 ac 20 |..... t%|..... . |
|00000700| 74 72 61 63 69 6e 67 20 | 8c 0d 02 c6 15 20 20 74 |tracing |..... t|
|00000710| 25 3d ae 74 72 61 63 65 | 5f 66 69 6c 65 24 0d 02 |%=.trace|_file$..|
|00000720| d0 31 20 20 e7 20 74 25 | 20 d9 23 74 25 3a 20 ff |.1 . t%| .#t%: .|
|00000730| 22 25 53 65 74 54 79 70 | 65 20 22 2b 74 72 61 63 |"%SetTyp|e "+trac|
|00000740| 65 5f 66 69 6c 65 24 2b | 22 20 26 46 46 46 22 0d |e_file$+|" &FFF".|
|00000750| 02 da 0f 20 20 74 72 61 | 63 69 6e 67 3d b9 0d 02 |... tra|cing=...|
|00000760| e4 05 cd 0d 02 ee 05 e1 | 0d 02 f8 04 0d 03 02 10 |........|........|
|00000770| dd 20 f2 74 72 61 63 65 | 5f 6f 66 66 0d 03 0c 0d |. .trace|_off....|
|00000780| 74 72 61 63 69 6e 67 3d | a3 0d 03 16 05 e1 0d 03 |tracing=|........|
|00000790| 20 04 0d 03 2a 13 dd 20 | f2 74 72 61 63 65 28 74 | ...*.. |.trace(t|
|000007a0| 65 78 74 24 29 0d 03 34 | 08 ea 20 74 25 0d 03 3e |ext$)..4|.. t%..>|
|000007b0| 11 e7 20 ac 20 74 72 61 | 63 69 6e 67 20 e1 0d 03 |.. . tra|cing ...|
|000007c0| 48 13 74 25 3d ad 74 72 | 61 63 65 5f 66 69 6c 65 |H.t%=.tr|ace_file|
|000007d0| 24 0d 03 52 2b e7 20 74 | 25 3d 30 20 f2 66 61 74 |$..R+. t|%=0 .fat|
|000007e0| 61 6c 28 22 43 61 6e 6e | 6f 74 20 6f 70 65 6e 20 |al("Cann|ot open |
|000007f0| 74 72 61 63 65 20 66 69 | 6c 65 22 29 0d 03 5c 0d |trace fi|le")..\.|
|00000800| cf 23 74 25 3d a2 23 74 | 25 0d 03 66 0e d5 23 74 |.#t%=.#t|%..f..#t|
|00000810| 25 2c 74 65 78 74 24 0d | 03 70 08 d9 23 74 25 0d |%,text$.|.p..#t%.|
|00000820| 03 7a 05 e1 0d 03 84 04 | 0d 03 8e 3b f4 2d 2d 2d |.z......|...;.---|
|00000830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000840| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000850| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000860| 2d 2d 2d 0d 03 98 16 f4 | 20 20 20 20 20 20 20 44 |---.....| D|
|00000870| 61 74 61 20 74 79 70 65 | 73 0d 03 a2 3b f4 2d 2d |ata type|s...;.--|
|00000880| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008b0| 2d 2d 2d 2d 0d 03 ac 10 | dd 20 f2 74 79 70 65 5f |----....|. .type_|
|000008c0| 69 6e 69 74 0d 03 b6 14 | de 20 74 79 70 65 5f 6e |init....|. type_n|
|000008d0| 61 6d 65 24 28 32 30 29 | 0d 03 c0 11 74 79 70 65 |ame$(20)|....type|
|000008e0| 5f 63 6f 75 6e 74 25 3d | 30 0d 03 ca 16 4d 5f 54 |_count%=|0....M_T|
|000008f0| 5f 74 79 70 65 3d 26 46 | 46 46 46 30 30 30 30 0d |_type=&F|FFF0000.|
|00000900| 03 d4 10 54 5f 61 6e 79 | 3d 26 30 30 30 30 30 0d |...T_any|=&00000.|
|00000910| 03 de 25 54 5f 73 74 72 | 69 6e 67 3d a4 74 79 70 |..%T_str|ing=.typ|
|00000920| 65 5f 63 72 65 61 74 65 | 28 22 53 74 72 69 6e 67 |e_create|("String|
|00000930| 22 2c 30 29 0d 03 e8 05 | e1 0d 03 f2 04 0d 03 fc |",0)....|........|
|00000940| 1f dd 20 a4 74 79 70 65 | 5f 63 72 65 61 74 65 28 |.. .type|_create(|
|00000950| 6e 61 6d 65 24 2c 73 69 | 7a 65 25 29 0d 04 06 12 |name$,si|ze%)....|
|00000960| 74 79 70 65 5f 63 6f 75 | 6e 74 25 2b 3d 31 0d 04 |type_cou|nt%+=1..|
|00000970| 10 21 74 79 70 65 5f 6e | 61 6d 65 24 28 74 79 70 |.!type_n|ame$(typ|
|00000980| 65 5f 63 6f 75 6e 74 25 | 29 3d 6e 61 6d 65 24 0d |e_count%|)=name$.|
|00000990| 04 1a 1f 3d 28 74 79 70 | 65 5f 63 6f 75 6e 74 25 |...=(typ|e_count%|
|000009a0| 2a 26 31 30 30 30 30 29 | 2b 73 69 7a 65 25 0d 04 |*&10000)|+size%..|
|000009b0| 24 04 0d 04 2e 1d dd 20 | f2 74 79 70 65 5f 63 68 |$...... |.type_ch|
|000009c0| 65 63 6b 28 62 6c 6b 25 | 2c 74 79 70 65 25 29 0d |eck(blk%|,type%).|
|000009d0| 04 38 3f e7 20 28 28 62 | 6c 6b 25 21 2d 34 20 82 |.8?. ((b|lk%!-4 .|
|000009e0| 20 74 79 70 65 25 29 20 | 80 20 4d 5f 54 5f 74 79 | type%) |. M_T_ty|
|000009f0| 70 65 29 3c 3e 30 20 f2 | 66 61 74 61 6c 28 22 54 |pe)<>0 .|fatal("T|
|00000a00| 79 70 65 20 6d 69 73 6d | 61 74 63 68 22 29 0d 04 |ype mism|atch")..|
|00000a10| 42 05 e1 0d 04 4c 04 0d | 04 56 3b f4 2d 2d 2d 2d |B....L..|.V;.----|
|00000a20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a50| 2d 2d 0d 04 60 2b f4 20 | 20 20 20 20 20 20 53 70 |--..`+. | Sp|
|00000a60| 61 63 65 20 61 6c 6c 6f | 63 61 74 69 6f 6e 20 61 |ace allo|cation a|
|00000a70| 6e 64 20 64 61 74 61 20 | 74 79 70 65 73 0d 04 6a |nd data |types..j|
|00000a80| 3a f4 20 20 20 20 20 20 | 20 61 6c 6c 6f 63 5f 6c |:. | alloc_l|
|00000a90| 69 73 74 25 20 20 20 20 | 20 20 20 20 50 6f 69 6e |ist% | Poin|
|00000aa0| 74 65 72 20 74 6f 20 66 | 69 72 73 74 20 66 72 65 |ter to f|irst fre|
|00000ab0| 65 20 62 6c 6f 63 6b 0d | 04 74 05 f4 0d 04 7e 30 |e block.|.t....~0|
|00000ac0| f4 20 20 20 2d 3e 20 20 | 74 79 70 65 20 7c 20 73 |. -> |type | s|
|00000ad0| 69 7a 65 20 20 20 20 20 | 20 20 20 20 2d 3e 20 54 |ize | -> T|
|00000ae0| 5f 66 72 65 65 20 7c 20 | 73 69 7a 65 0d 04 88 2c |_free | |size...,|
|00000af0| f4 20 20 20 20 20 20 20 | 5b 75 73 65 72 20 64 61 |. |[user da|
|00000b00| 74 61 5d 20 20 20 20 20 | 20 20 20 20 20 20 20 6e |ta] | n|
|00000b10| 65 78 74 20 66 72 65 65 | 0d 04 92 38 f4 20 20 20 |ext free|...8. |
|00000b20| 20 20 20 20 74 79 70 65 | 20 7c 20 73 69 7a 65 20 | type| | size |
|00000b30| 20 20 20 20 20 20 20 20 | 20 20 20 70 72 65 76 69 | | previ|
|00000b40| 6f 75 73 20 6e 65 78 74 | 20 70 6f 69 6e 74 65 72 |ous next| pointer|
|00000b50| 0d 04 9c 30 f4 20 20 20 | 20 20 20 20 20 20 20 20 |...0. | |
|00000b60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000b70| 20 20 20 54 5f 66 72 65 | 65 20 7c 20 73 69 7a 65 | T_fre|e | size|
|00000b80| 0d 04 a6 3b f4 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...;.---|--------|
|00000b90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ba0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000bb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 04 b0 04 0d |--------|---.....|
|00000bc0| 04 ba 21 f4 20 69 6e 69 | 74 69 61 6c 69 73 65 20 |..!. ini|tialise |
|00000bd0| 73 70 61 63 65 20 61 6c | 6c 6f 63 61 74 69 6f 6e |space al|location|
|00000be0| 0d 04 c4 11 dd 20 f2 61 | 6c 6c 6f 63 5f 69 6e 69 |..... .a|lloc_ini|
|00000bf0| 74 0d 04 ce 0a ea 20 62 | 6c 6b 25 0d 04 d8 14 54 |t..... b|lk%....T|
|00000c00| 5f 66 72 65 65 3d 26 46 | 41 45 45 30 30 30 30 0d |_free=&F|AEE0000.|
|00000c10| 04 e2 16 54 5f 65 6e 64 | 6d 65 6d 3d 26 46 45 39 |...T_end|mem=&FE9|
|00000c20| 44 30 30 30 30 0d 04 ec | 11 41 4c 5f 74 79 70 65 |D0000...|.AL_type|
|00000c30| 73 69 7a 65 3d 30 0d 04 | f6 0d 41 4c 5f 6e 65 78 |size=0..|..AL_nex|
|00000c40| 74 3d 34 0d 05 00 0d 41 | 4c 5f 70 72 65 76 3d 38 |t=4....A|L_prev=8|
|00000c50| 0d 05 0a 14 41 4c 5f 65 | 6e 64 3d 34 20 3a f4 2b |....AL_e|nd=4 :.+|
|00000c60| 73 69 7a 65 0d 05 14 0d | 41 43 5f 6e 65 78 74 3d |size....|AC_next=|
|00000c70| 30 0d 05 1e 0e 41 43 5f | 73 74 61 72 74 3d 34 0d |0....AC_|start=4.|
|00000c80| 05 28 0e 41 43 5f 62 6c | 6f 63 6b 3d 38 0d 05 32 |.(.AC_bl|ock=8..2|
|00000c90| 13 61 6c 6c 6f 63 5f 63 | 68 75 6e 6b 73 25 3d 30 |.alloc_c|hunks%=0|
|00000ca0| 0d 05 3c 13 de 20 61 6c | 6c 6f 63 5f 6c 69 73 74 |..<.. al|loc_list|
|00000cb0| 25 20 34 0d 05 46 12 21 | 61 6c 6c 6f 63 5f 6c 69 |% 4..F.!|alloc_li|
|00000cc0| 73 74 25 3d 30 0d 05 50 | 23 e7 20 a4 64 65 66 69 |st%=0..P|#. .defi|
|00000cd0| 6e 74 28 61 6c 6c 6f 63 | 5f 68 65 61 70 73 69 7a |nt(alloc|_heapsiz|
|00000ce0| 65 25 2c 34 30 30 30 29 | 0d 05 5a 22 f2 5f 61 6c |e%,4000)|..Z"._al|
|00000cf0| 6c 6f 63 5f 63 68 75 6e | 6b 28 61 6c 6c 6f 63 5f |loc_chun|k(alloc_|
|00000d00| 68 65 61 70 73 69 7a 65 | 25 29 0d 05 64 05 e1 0d |heapsize|%)..d...|
|00000d10| 05 6e 04 0d 05 78 31 f4 | 20 61 6c 6c 6f 63 61 74 |.n...x1.| allocat|
|00000d20| 65 20 61 20 6e 65 77 20 | 63 68 75 6e 6b 20 65 6e |e a new |chunk en|
|00000d30| 61 62 6c 69 6e 67 20 6d | 61 6c 6c 6f 63 28 73 69 |abling m|alloc(si|
|00000d40| 7a 65 25 29 0d 05 82 1a | dd 20 f2 5f 61 6c 6c 6f |ze%)....|. ._allo|
|00000d50| 63 5f 63 68 75 6e 6b 28 | 73 69 7a 65 25 29 0d 05 |c_chunk(|size%)..|
|00000d60| 8c 0c ea 20 63 68 75 6e | 6b 25 0d 05 96 18 73 69 |... chun|k%....si|
|00000d70| 7a 65 25 3d 28 73 69 7a | 65 25 2b 33 29 20 80 20 |ze%=(siz|e%+3) . |
|00000d80| 2d 34 0d 05 a0 15 de 20 | 63 68 75 6e 6b 25 20 73 |-4..... |chunk% s|
|00000d90| 69 7a 65 25 2b 31 39 0d | 05 aa 1c 63 68 75 6e 6b |ize%+19.|...chunk|
|00000da0| 25 21 41 43 5f 73 74 61 | 72 74 3d 54 5f 65 6e 64 |%!AC_sta|rt=T_end|
|00000db0| 6d 65 6d 0d 05 b4 27 63 | 68 75 6e 6b 25 21 28 41 |mem...'c|hunk%!(A|
|00000dc0| 43 5f 73 74 61 72 74 2b | 73 69 7a 65 25 2b 31 32 |C_start+|size%+12|
|00000dd0| 29 3d 54 5f 65 6e 64 6d | 65 6d 0d 05 be 2c f2 5f |)=T_endm|em...,._|
|00000de0| 61 6c 5f 62 6f 75 6e 64 | 28 63 68 75 6e 6b 25 2b |al_bound|(chunk%+|
|00000df0| 41 43 5f 62 6c 6f 63 6b | 2c 54 5f 66 72 65 65 2b |AC_block|,T_free+|
|00000e00| 73 69 7a 65 25 29 0d 05 | c8 1e f2 5f 61 6c 5f 6c |size%)..|..._al_l|
|00000e10| 69 6e 6b 28 63 68 75 6e | 6b 25 2b 41 43 5f 62 6c |ink(chun|k%+AC_bl|
|00000e20| 6f 63 6b 29 0d 05 d2 20 | 63 68 75 6e 6b 25 21 41 |ock)... |chunk%!A|
|00000e30| 43 5f 6e 65 78 74 3d 61 | 6c 6c 6f 63 5f 63 68 75 |C_next=a|lloc_chu|
|00000e40| 6e 6b 73 25 0d 05 dc 18 | 61 6c 6c 6f 63 5f 63 68 |nks%....|alloc_ch|
|00000e50| 75 6e 6b 73 25 3d 63 68 | 75 6e 6b 25 0d 05 e6 05 |unks%=ch|unk%....|
|00000e60| e1 0d 05 f0 04 0d 05 fa | 18 dd 20 a4 6d 61 6c 6c |........|.. .mall|
|00000e70| 6f 63 28 74 79 70 65 73 | 69 7a 65 25 29 0d 06 04 |oc(types|ize%)...|
|00000e80| 10 ea 20 73 69 7a 65 25 | 2c 6d 65 6d 25 0d 06 0e |.. size%|,mem%...|
|00000e90| 1b 6d 65 6d 25 3d a4 5f | 61 6c 6c 6f 63 28 74 79 |.mem%=._|alloc(ty|
|00000ea0| 70 65 73 69 7a 65 25 29 | 0d 06 18 12 e7 20 6d 65 |pesize%)|..... me|
|00000eb0| 6d 25 20 8c 20 3d 6d 65 | 6d 25 0d 06 22 1b 73 69 |m% . =me|m%..".si|
|00000ec0| 7a 65 25 3d 74 79 70 65 | 73 69 7a 65 25 20 80 20 |ze%=type|size% . |
|00000ed0| 26 46 46 46 46 0d 06 2c | 33 e7 20 73 69 7a 65 25 |&FFFF..,|3. size%|
|00000ee0| 3c 61 6c 6c 6f 63 5f 68 | 65 61 70 73 69 7a 65 25 |<alloc_h|eapsize%|
|00000ef0| 20 8c 20 73 69 7a 65 25 | 3d 61 6c 6c 6f 63 5f 68 | . size%|=alloc_h|
|00000f00| 65 61 70 73 69 7a 65 25 | 0d 06 36 18 f2 5f 61 6c |eapsize%|..6.._al|
|00000f10| 6c 6f 63 5f 63 68 75 6e | 6b 28 73 69 7a 65 25 29 |loc_chun|k(size%)|
|00000f20| 0d 06 40 1b 6d 65 6d 25 | 3d a4 5f 61 6c 6c 6f 63 |..@.mem%|=._alloc|
|00000f30| 28 74 79 70 65 73 69 7a | 65 25 29 0d 06 4a 12 e7 |(typesiz|e%)..J..|
|00000f40| 20 6d 65 6d 25 20 8c 20 | 3d 6d 65 6d 25 0d 06 54 | mem% . |=mem%..T|
|00000f50| 28 f2 66 61 74 61 6c 28 | 22 42 55 47 3a 20 48 65 |(.fatal(|"BUG: He|
|00000f60| 61 70 20 65 78 74 65 6e | 73 69 6f 6e 20 66 61 69 |ap exten|sion fai|
|00000f70| 6c 65 64 22 29 0d 06 5e | 04 0d 06 68 18 dd 20 a4 |led")..^|...h.. .|
|00000f80| 5f 61 6c 6c 6f 63 28 74 | 79 70 65 73 69 7a 65 25 |_alloc(t|ypesize%|
|00000f90| 29 0d 06 72 16 ea 20 73 | 69 7a 65 25 2c 62 6c 6b |)..r.. s|ize%,blk|
|00000fa0| 25 2c 72 65 73 74 25 0d | 06 7c 1f 73 69 7a 65 25 |%,rest%.|.|.size%|
|00000fb0| 3d 28 74 79 70 65 73 69 | 7a 65 25 2b 33 29 20 80 |=(typesi|ze%+3) .|
|00000fc0| 20 26 46 46 46 43 0d 06 | 86 15 62 6c 6b 25 3d 21 | &FFFC..|..blk%=!|
|00000fd0| 61 6c 6c 6f 63 5f 6c 69 | 73 74 25 0d 06 90 0e c8 |alloc_li|st%.....|
|00000fe0| 95 20 62 6c 6b 25 3c 3e | 30 0d 06 9a 1f f4 20 20 |. blk%<>|0..... |
|00000ff0| 50 52 49 4e 54 20 22 4c | 6f 6f 6b 69 6e 67 20 61 |PRINT "L|ooking a|
|00001000| 74 20 22 7e 62 6c 6b 25 | 0d 06 a4 36 20 20 e7 20 |t "~blk%|...6 . |
|00001010| a4 5f 61 6c 5f 74 79 70 | 65 28 62 6c 6b 25 29 3c |._al_typ|e(blk%)<|
|00001020| 3e 54 5f 66 72 65 65 20 | f2 66 61 74 61 6c 28 22 |>T_free |.fatal("|
|00001030| 48 65 61 70 20 63 6f 72 | 72 75 70 74 22 29 0d 06 |Heap cor|rupt")..|
|00001040| ae 22 20 20 e7 20 a4 5f | 61 6c 5f 73 69 7a 65 28 |." . ._|al_size(|
|00001050| 62 6c 6b 25 29 20 3e 3d | 20 73 69 7a 65 25 20 8c |blk%) >=| size% .|
|00001060| 0d 06 b8 15 f4 20 20 20 | 20 50 52 49 4e 54 20 22 |..... | PRINT "|
|00001070| 46 69 74 73 22 0d 06 c2 | 19 20 20 20 20 f2 5f 61 |Fits"...|. ._a|
|00001080| 6c 5f 75 6e 6c 69 6e 6b | 28 62 6c 6b 25 29 0d 06 |l_unlink|(blk%)..|
|00001090| cc 23 20 20 20 20 f4 2d | 2d 2d 20 57 6f 72 74 68 |.# .-|-- Worth|
|000010a0| 20 73 70 6c 69 74 74 69 | 6e 67 20 62 6c 6f 63 6b | splitti|ng block|
|000010b0| 3f 0d 06 d6 27 20 20 20 | 20 e7 20 a4 5f 61 6c 5f |?...' | . ._al_|
|000010c0| 73 69 7a 65 28 62 6c 6b | 25 29 2d 73 69 7a 65 25 |size(blk|%)-size%|
|000010d0| 20 3e 3d 20 31 36 20 8c | 0d 06 e0 1c f4 20 20 20 | >= 16 .|..... |
|000010e0| 20 20 20 50 52 49 4e 54 | 20 22 53 70 6c 69 74 74 | PRINT| "Splitt|
|000010f0| 69 6e 67 22 0d 06 ea 1c | 20 20 20 20 20 20 72 65 |ing"....| re|
|00001100| 73 74 25 3d 62 6c 6b 25 | 2b 73 69 7a 65 25 2b 38 |st%=blk%|+size%+8|
|00001110| 0d 06 f4 34 20 20 20 20 | 20 20 f2 5f 61 6c 5f 62 |...4 | ._al_b|
|00001120| 6f 75 6e 64 28 72 65 73 | 74 25 2c 62 6c 6b 25 21 |ound(res|t%,blk%!|
|00001130| 41 4c 5f 74 79 70 65 73 | 69 7a 65 2d 73 69 7a 65 |AL_types|ize-size|
|00001140| 25 2d 38 29 0d 06 fe 1a | 20 20 20 20 20 20 f2 5f |%-8)....| ._|
|00001150| 61 6c 5f 6c 69 6e 6b 28 | 72 65 73 74 25 29 0d 07 |al_link(|rest%)..|
|00001160| 08 09 20 20 20 20 cc 0d | 07 12 1c f4 20 20 20 20 |.. ..|.... |
|00001170| 20 20 50 52 49 4e 54 20 | 22 55 6e 6c 69 6e 6b 69 | PRINT |"Unlinki|
|00001180| 6e 67 22 0d 07 1c 1f 20 | 20 20 20 20 20 73 69 7a |ng".... | siz|
|00001190| 65 25 3d a4 5f 61 6c 5f | 73 69 7a 65 28 62 6c 6b |e%=._al_|size(blk|
|000011a0| 25 29 0d 07 26 09 20 20 | 20 20 cd 0d 07 30 35 20 |%)..&. | ...05 |
|000011b0| 20 20 20 f2 5f 61 6c 5f | 62 6f 75 6e 64 28 62 6c | ._al_|bound(bl|
|000011c0| 6b 25 2c 28 74 79 70 65 | 73 69 7a 65 25 20 80 20 |k%,(type|size% . |
|000011d0| 4d 5f 54 5f 74 79 70 65 | 29 2b 73 69 7a 65 25 29 |M_T_type|)+size%)|
|000011e0| 0d 07 3a 0f 20 20 20 20 | 3d 62 6c 6b 25 2b 34 0d |..:. |=blk%+4.|
|000011f0| 07 44 07 20 20 cd 0d 07 | 4e 13 f4 20 20 50 52 49 |.D. ...|N.. PRI|
|00001200| 4e 54 20 22 4e 65 78 74 | 22 0d 07 58 17 20 20 70 |NT "Next|"..X. p|
|00001210| 74 72 25 3d 62 6c 6b 25 | 2b 41 4c 5f 6e 65 78 74 |tr%=blk%|+AL_next|
|00001220| 0d 07 62 10 20 20 62 6c | 6b 25 3d 21 70 74 72 25 |..b. bl|k%=!ptr%|
|00001230| 0d 07 6c 05 ce 0d 07 76 | 06 3d 30 0d 07 80 04 0d |..l....v|.=0.....|
|00001240| 07 8a 11 dd 20 f2 66 72 | 65 65 28 62 6c 6b 25 29 |.... .fr|ee(blk%)|
|00001250| 0d 07 94 17 ea 20 73 69 | 7a 65 25 2c 6f 74 68 65 |..... si|ze%,othe|
|00001260| 72 25 2c 70 74 72 25 0d | 07 9e 2c e7 20 62 6c 6b |r%,ptr%.|..,. blk|
|00001270| 25 3d 30 20 84 20 62 6c | 6b 25 3d 2d 31 20 f2 66 |%=0 . bl|k%=-1 .f|
|00001280| 61 74 61 6c 28 22 46 72 | 65 65 20 28 4e 55 4c 4c |atal("Fr|ee (NULL|
|00001290| 29 22 29 0d 07 a8 0b 62 | 6c 6b 25 2d 3d 34 0d 07 |)")....b|lk%-=4..|
|000012a0| b2 3c e7 20 a4 5f 61 6c | 5f 74 79 70 65 28 62 6c |.<. ._al|_type(bl|
|000012b0| 6b 25 29 20 3d 20 54 5f | 66 72 65 65 20 f2 66 61 |k%) = T_|free .fa|
|000012c0| 74 61 6c 28 22 42 6c 6f | 63 6b 20 61 6c 72 65 61 |tal("Blo|ck alrea|
|000012d0| 64 79 20 66 72 65 65 64 | 22 29 0d 07 bc 19 73 69 |dy freed|")....si|
|000012e0| 7a 65 25 3d a4 5f 61 6c | 5f 73 69 7a 65 28 62 6c |ze%=._al|_size(bl|
|000012f0| 6b 25 29 0d 07 c6 52 e7 | 20 62 6c 6b 25 21 28 41 |k%)...R.| blk%!(A|
|00001300| 4c 5f 65 6e 64 2b 73 69 | 7a 65 25 29 20 3c 3e 20 |L_end+si|ze%) <> |
|00001310| 62 6c 6b 25 21 41 4c 5f | 74 79 70 65 73 69 7a 65 |blk%!AL_|typesize|
|00001320| 20 f2 66 61 74 61 6c 28 | 22 42 61 64 20 66 72 65 | .fatal(|"Bad fre|
|00001330| 65 28 29 20 6f 72 20 68 | 65 61 70 20 63 6f 72 72 |e() or h|eap corr|
|00001340| 75 70 74 22 29 0d 07 d0 | 18 f4 20 43 6f 61 6c 65 |upt")...|.. Coale|
|00001350| 73 63 65 20 77 69 74 68 | 20 6e 65 78 74 0d 07 da |sce with| next...|
|00001360| 17 6f 74 68 65 72 25 3d | 62 6c 6b 25 2b 73 69 7a |.other%=|blk%+siz|
|00001370| 65 25 2b 38 0d 07 e4 20 | e7 20 a4 5f 61 6c 5f 74 |e%+8... |. ._al_t|
|00001380| 79 70 65 28 6f 74 68 65 | 72 25 29 3d 54 5f 66 72 |ype(othe|r%)=T_fr|
|00001390| 65 65 20 8c 0d 07 ee 19 | 20 20 f2 5f 61 6c 5f 75 |ee .....| ._al_u|
|000013a0| 6e 6c 69 6e 6b 28 6f 74 | 68 65 72 25 29 0d 07 f8 |nlink(ot|her%)...|
|000013b0| 20 20 20 73 69 7a 65 25 | 2b 3d a4 5f 61 6c 5f 73 | size%|+=._al_s|
|000013c0| 69 7a 65 28 6f 74 68 65 | 72 25 29 2b 38 0d 08 02 |ize(othe|r%)+8...|
|000013d0| 05 cd 0d 08 0c 1d f4 20 | 43 6f 61 6c 65 73 63 65 |....... |Coalesce|
|000013e0| 20 77 69 74 68 20 70 72 | 65 76 69 6f 75 73 3f 0d | with pr|evious?.|
|000013f0| 08 16 20 e7 20 a4 5f 61 | 6c 5f 74 79 70 65 28 62 |.. . ._a|l_type(b|
|00001400| 6c 6b 25 2d 34 29 3d 54 | 5f 66 72 65 65 20 8c 0d |lk%-4)=T|_free ..|
|00001410| 08 20 25 20 20 6f 74 68 | 65 72 25 3d 62 6c 6b 25 |. % oth|er%=blk%|
|00001420| 2d a4 5f 61 6c 5f 73 69 | 7a 65 28 62 6c 6b 25 2d |-._al_si|ze(blk%-|
|00001430| 34 29 2d 38 0d 08 2a 39 | 20 20 f2 5f 61 6c 5f 62 |4)-8..*9| ._al_b|
|00001440| 6f 75 6e 64 28 6f 74 68 | 65 72 25 2c 54 5f 66 72 |ound(oth|er%,T_fr|
|00001450| 65 65 2b a4 5f 61 6c 5f | 73 69 7a 65 28 6f 74 68 |ee+._al_|size(oth|
|00001460| 65 72 25 29 2b 38 2b 73 | 69 7a 65 25 29 0d 08 34 |er%)+8+s|ize%)..4|
|00001470| 05 cc 0d 08 3e 23 20 20 | f2 5f 61 6c 5f 62 6f 75 |....># |._al_bou|
|00001480| 6e 64 28 62 6c 6b 25 2c | 54 5f 66 72 65 65 2b 73 |nd(blk%,|T_free+s|
|00001490| 69 7a 65 25 29 0d 08 48 | 15 20 20 f2 5f 61 6c 5f |ize%)..H|. ._al_|
|000014a0| 6c 69 6e 6b 28 62 6c 6b | 25 29 0d 08 52 05 cd 0d |link(blk|%)..R...|
|000014b0| 08 5c 05 e1 0d 08 66 04 | 0d 08 70 16 f4 20 66 6f |.\....f.|..p.. fo|
|000014c0| 72 20 64 65 62 75 67 67 | 69 6e 67 2e 2e 2e 0d 08 |r debugg|ing.....|
|000014d0| 7a 11 dd 20 f2 61 6c 6c | 6f 63 5f 64 75 6d 70 0d |z.. .all|oc_dump.|
|000014e0| 08 84 1c ea 20 63 68 75 | 6e 6b 25 2c 62 6c 6b 25 |.... chu|nk%,blk%|
|000014f0| 2c 74 79 70 65 2c 73 69 | 7a 65 25 0d 08 8e 18 63 |,type,si|ze%....c|
|00001500| 68 75 6e 6b 25 3d 61 6c | 6c 6f 63 5f 63 68 75 6e |hunk%=al|loc_chun|
|00001510| 6b 73 25 0d 08 98 0d c8 | 95 20 63 68 75 6e 6b 25 |ks%.....|. chunk%|
|00001520| 0d 08 a2 1f 20 20 f1 20 | 22 2d 2d 63 68 75 6e 6b |.... . |"--chunk|
|00001530| 20 26 22 c3 7e 63 68 75 | 6e 6b 25 22 2d 2d 22 0d | &".~chu|nk%"--".|
|00001540| 08 ac 1a 20 20 62 6c 6b | 25 3d 63 68 75 6e 6b 25 |... blk|%=chunk%|
|00001550| 2b 41 43 5f 62 6c 6f 63 | 6b 0d 08 b6 1b 20 20 74 |+AC_bloc|k.... t|
|00001560| 79 70 65 25 3d a4 5f 61 | 6c 5f 74 79 70 65 28 62 |ype%=._a|l_type(b|
|00001570| 6c 6b 25 29 0d 08 c0 1a | 20 20 c8 95 20 74 79 70 |lk%)....| .. typ|
|00001580| 65 25 20 3c 3e 20 54 5f | 65 6e 64 6d 65 6d 0d 08 |e% <> T_|endmem..|
|00001590| ca 1d 20 20 20 20 73 69 | 7a 65 25 3d a4 5f 61 6c |.. si|ze%=._al|
|000015a0| 5f 73 69 7a 65 28 62 6c | 6b 25 29 0d 08 d4 1b 20 |_size(bl|k%).... |
|000015b0| 20 20 20 f1 20 7e 62 6c | 6b 25 2d 63 68 75 6e 6b | . ~bl|k%-chunk|
|000015c0| 25 22 3a 20 22 3b 0d 08 | de 12 20 20 20 20 c8 8e |%": ";..|.. ..|
|000015d0| 20 74 79 70 65 25 20 ca | 0d 08 e8 1d 20 20 20 20 | type% .|.... |
|000015e0| c9 20 54 5f 61 6e 79 3a | 20 f1 20 22 55 6e 6b 6e |. T_any:| . "Unkn|
|000015f0| 6f 77 6e 22 3b 0d 08 f2 | 1d 20 20 20 20 c9 20 54 |own";...|. . T|
|00001600| 5f 66 72 65 65 3a 20 f1 | 20 22 3d 46 52 45 45 3d |_free: .| "=FREE=|
|00001610| 22 3b 0d 08 fc 09 20 20 | 20 20 7f 0d 09 06 1a 20 |";.... | ..... |
|00001620| 20 20 20 20 20 74 79 70 | 65 25 3d 74 79 70 65 25 | typ|e%=type%|
|00001630| 3e 3e 3e 31 36 0d 09 10 | 2b 20 20 20 20 20 20 e7 |>>>16...|+ .|
|00001640| 20 74 79 70 65 25 3e 3d | 31 20 80 20 74 79 70 65 | type%>=|1 . type|
|00001650| 25 3c 3d 74 79 70 65 5f | 63 6f 75 6e 74 25 20 8c |%<=type_|count% .|
|00001660| 0d 09 1a 20 20 20 20 20 | 20 20 20 20 f1 20 74 79 |... | . ty|
|00001670| 70 65 5f 6e 61 6d 65 24 | 28 74 79 70 65 25 29 3b |pe_name$|(type%);|
|00001680| 0d 09 24 0b 20 20 20 20 | 20 20 cc 0d 09 2e 18 20 |..$. | ..... |
|00001690| 20 20 20 20 20 20 20 f1 | 20 22 26 22 7e 74 79 70 | .| "&"~typ|
|000016a0| 65 25 3b 0d 09 38 0b 20 | 20 20 20 20 20 cd 0d 09 |e%;..8. | ...|
|000016b0| 42 09 20 20 20 20 cb 0d | 09 4c 15 20 20 20 20 f1 |B. ..|.L. .|
|000016c0| 20 22 28 22 73 69 7a 65 | 25 22 29 22 0d 09 56 3f | "("size|%")"..V?|
|000016d0| 20 20 20 20 e7 20 62 6c | 6b 25 21 28 41 4c 5f 65 | . bl|k%!(AL_e|
|000016e0| 6e 64 2b 73 69 7a 65 25 | 29 20 3c 3e 20 62 6c 6b |nd+size%|) <> blk|
|000016f0| 25 21 41 4c 5f 74 79 70 | 65 73 69 7a 65 20 f1 20 |%!AL_typ|esize . |
|00001700| 22 2a 43 4f 52 52 55 50 | 54 2a 22 0d 09 60 15 20 |"*CORRUP|T*"..`. |
|00001710| 20 20 20 62 6c 6b 25 2b | 3d 38 2b 73 69 7a 65 25 | blk%+|=8+size%|
|00001720| 0d 09 6a 1d 20 20 20 20 | 74 79 70 65 25 3d a4 5f |..j. |type%=._|
|00001730| 61 6c 5f 74 79 70 65 28 | 62 6c 6b 25 29 0d 09 74 |al_type(|blk%)..t|
|00001740| 07 20 20 ce 0d 09 7e 1b | 20 20 63 68 75 6e 6b 25 |. ...~.| chunk%|
|00001750| 3d 63 68 75 6e 6b 25 21 | 41 43 5f 6e 65 78 74 0d |=chunk%!|AC_next.|
|00001760| 09 88 05 ce 0d 09 92 05 | e1 0d 09 9c 04 0d 09 a6 |........|........|
|00001770| 2a f4 20 41 64 64 20 73 | 74 61 72 74 20 61 6e 64 |*. Add s|tart and|
|00001780| 20 65 6e 64 20 6d 61 72 | 6b 65 72 73 20 74 6f 20 | end mar|kers to |
|00001790| 61 20 62 6c 6f 63 6b 0d | 09 b0 1a dd 20 f2 5f 61 |a block.|.... ._a|
|000017a0| 6c 5f 62 6f 75 6e 64 28 | 62 6c 6b 25 2c 74 73 25 |l_bound(|blk%,ts%|
|000017b0| 29 0d 09 ba 18 62 6c 6b | 25 21 41 4c 5f 74 79 70 |)....blk|%!AL_typ|
|000017c0| 65 73 69 7a 65 3d 74 73 | 25 0d 09 c4 23 62 6c 6b |esize=ts|%...#blk|
|000017d0| 25 21 28 41 4c 5f 65 6e | 64 2b 28 74 73 25 20 80 |%!(AL_en|d+(ts% .|
|000017e0| 20 26 46 46 46 46 29 29 | 3d 74 73 25 0d 09 ce 05 | &FFFF))|=ts%....|
|000017f0| e1 0d 09 d8 04 0d 09 e2 | 15 dd 20 a4 5f 61 6c 5f |........|.. ._al_|
|00001800| 73 69 7a 65 28 62 6c 6b | 25 29 0d 09 ec 1d 3d 62 |size(blk|%)....=b|
|00001810| 6c 6b 25 21 41 4c 5f 74 | 79 70 65 73 69 7a 65 20 |lk%!AL_t|ypesize |
|00001820| 80 20 26 46 46 46 46 0d | 09 f6 04 0d 0a 00 15 dd |. &FFFF.|........|
|00001830| 20 a4 5f 61 6c 5f 74 79 | 70 65 28 62 6c 6b 25 29 | ._al_ty|pe(blk%)|
|00001840| 0d 0a 0a 20 3d 62 6c 6b | 25 21 41 4c 5f 74 79 70 |... =blk|%!AL_typ|
|00001850| 65 73 69 7a 65 20 80 20 | 4d 5f 54 5f 74 79 70 65 |esize . |M_T_type|
|00001860| 0d 0a 14 04 0d 0a 1e 27 | f4 20 55 6e 6c 69 6e 6b |.......'|. Unlink|
|00001870| 20 61 20 62 6c 6f 63 6b | 20 66 72 6f 6d 20 74 68 | a block| from th|
|00001880| 65 20 66 72 65 65 20 6c | 69 73 74 0d 0a 28 17 dd |e free l|ist..(..|
|00001890| 20 f2 5f 61 6c 5f 75 6e | 6c 69 6e 6b 28 62 6c 6b | ._al_un|link(blk|
|000018a0| 25 29 0d 0a 32 0a ea 20 | 70 74 72 25 0d 0a 3c 15 |%)..2.. |ptr%..<.|
|000018b0| 70 74 72 25 3d 62 6c 6b | 25 21 41 4c 5f 70 72 65 |ptr%=blk|%!AL_pre|
|000018c0| 76 0d 0a 46 16 21 70 74 | 72 25 3d 62 6c 6b 25 21 |v..F.!pt|r%=blk%!|
|000018d0| 41 4c 5f 6e 65 78 74 0d | 0a 50 23 e7 20 21 70 74 |AL_next.|.P#. !pt|
|000018e0| 72 25 20 8c 20 21 28 21 | 70 74 72 25 2b 41 4c 5f |r% . !(!|ptr%+AL_|
|000018f0| 70 72 65 76 29 3d 70 74 | 72 25 0d 0a 5a 05 e1 0d |prev)=pt|r%..Z...|
|00001900| 0a 64 04 0d 0a 6e 37 f4 | 20 4c 69 6e 6b 20 61 20 |.d...n7.| Link a |
|00001910| 66 72 65 65 20 62 6c 6f | 63 6b 20 6f 6e 74 6f 20 |free blo|ck onto |
|00001920| 74 68 65 20 73 74 61 72 | 74 20 6f 66 20 74 68 65 |the star|t of the|
|00001930| 20 66 72 65 65 20 6c 69 | 73 74 0d 0a 78 15 dd 20 | free li|st..x.. |
|00001940| f2 5f 61 6c 5f 6c 69 6e | 6b 28 62 6c 6b 25 29 0d |._al_lin|k(blk%).|
|00001950| 0a 82 0c ea 20 66 69 72 | 73 74 25 0d 0a 8c 17 66 |.... fir|st%....f|
|00001960| 69 72 73 74 25 3d 21 61 | 6c 6c 6f 63 5f 6c 69 73 |irst%=!a|lloc_lis|
|00001970| 74 25 0d 0a 96 17 62 6c | 6b 25 21 41 4c 5f 6e 65 |t%....bl|k%!AL_ne|
|00001980| 78 74 3d 66 69 72 73 74 | 25 0d 0a a0 2a e7 20 66 |xt=first|%...*. f|
|00001990| 69 72 73 74 25 20 8c 20 | 66 69 72 73 74 25 21 41 |irst% . |first%!A|
|000019a0| 4c 5f 70 72 65 76 3d 62 | 6c 6b 25 2b 41 4c 5f 6e |L_prev=b|lk%+AL_n|
|000019b0| 65 78 74 0d 0a aa 15 21 | 61 6c 6c 6f 63 5f 6c 69 |ext....!|alloc_li|
|000019c0| 73 74 25 3d 62 6c 6b 25 | 0d 0a b4 1c 62 6c 6b 25 |st%=blk%|....blk%|
|000019d0| 21 41 4c 5f 70 72 65 76 | 3d 61 6c 6c 6f 63 5f 6c |!AL_prev|=alloc_l|
|000019e0| 69 73 74 25 0d 0a be 05 | e1 0d 0a c8 04 0d 0a d2 |ist%....|........|
|000019f0| 3b f4 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |;.------|--------|
|00001a00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a20| 2d 2d 2d 2d 2d 2d 2d 2d | 0d 0a dc 16 f4 20 20 20 |--------|..... |
|00001a30| 20 20 20 20 45 78 69 74 | 20 68 6f 6f 6b 73 0d 0a | Exit| hooks..|
|00001a40| e6 3b f4 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.;.-----|--------|
|00001a50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 0a f0 10 dd 20 f2 |--------|-..... .|
|00001a80| 65 78 69 74 5f 69 6e 69 | 74 0d 0a fa 22 54 5f 65 |exit_ini|t..."T_e|
|00001a90| 78 69 74 3d a4 74 79 70 | 65 5f 63 72 65 61 74 65 |xit=.typ|e_create|
|00001aa0| 28 22 45 78 69 74 22 2c | 31 32 29 0d 0b 04 0d 45 |("Exit",|12)....E|
|00001ab0| 58 5f 6e 65 78 74 3d 30 | 0d 0b 0e 0b 45 58 5f 66 |X_next=0|....EX_f|
|00001ac0| 6e 3d 34 0d 0b 18 0c 45 | 58 5f 61 72 67 3d 38 0d |n=4....E|X_arg=8.|
|00001ad0| 0b 22 10 65 78 69 74 5f | 6c 69 73 74 25 3d 30 0d |.".exit_|list%=0.|
|00001ae0| 0b 2c 0d 65 78 69 74 69 | 6e 67 3d a3 0d 0b 36 05 |.,.exiti|ng=...6.|
|00001af0| e1 0d 0b 40 04 0d 0b 4a | 1b f4 20 72 75 6e 20 65 |...@...J|.. run e|
|00001b00| 78 69 74 20 68 6f 6b 73 | 20 61 6e 64 20 64 69 65 |xit hoks| and die|
|00001b10| 0d 0b 54 0b dd 20 f2 65 | 78 69 74 0d 0b 5e 09 ea |..T.. .e|xit..^..|
|00001b20| 20 65 78 25 0d 0b 68 09 | ee 20 85 20 e0 0d 0b 72 | ex%..h.|. . ...r|
|00001b30| 0f e7 20 65 78 69 74 69 | 6e 67 20 e0 0d 0b 7c 0d |.. exiti|ng ...|.|
|00001b40| 65 78 69 74 69 6e 67 3d | b9 0d 0b 86 12 65 78 25 |exiting=|.....ex%|
|00001b50| 3d 65 78 69 74 5f 6c 69 | 73 74 25 0d 0b 90 0a c8 |=exit_li|st%.....|
|00001b60| 95 20 65 78 25 0d 0b 9a | 42 f4 20 20 50 52 4f 43 |. ex%...|B. PROC|
|00001b70| 74 72 61 63 65 28 22 65 | 78 69 74 20 22 2b 46 4e |trace("e|xit "+FN|
|00001b80| 73 74 72 67 65 74 28 65 | 78 25 21 45 58 5f 66 6e |strget(e|x%!EX_fn|
|00001b90| 29 2b 22 20 22 2b 53 54 | 52 24 28 65 78 25 21 45 |)+" "+ST|R$(ex%!E|
|00001ba0| 58 5f 61 72 67 29 29 0d | 0b a4 31 20 20 e7 20 a0 |X_arg)).|..1 . .|
|00001bb0| 28 22 46 4e 22 2b a4 73 | 74 72 67 65 74 28 65 78 |("FN"+.s|trget(ex|
|00001bc0| 25 21 45 58 5f 66 6e 29 | 2b 22 28 65 78 25 21 45 |%!EX_fn)|+"(ex%!E|
|00001bd0| 58 5f 61 72 67 29 22 29 | 0d 0b ae 15 20 20 65 78 |X_arg)")|.... ex|
|00001be0| 25 3d 65 78 25 21 45 58 | 5f 6e 65 78 74 0d 0b b8 |%=ex%!EX|_next...|
|00001bf0| 05 ce 0d 0b c2 05 e0 0d | 0b cc 04 0d 0b d6 17 dd |........|........|
|00001c00| 20 f2 61 74 65 78 69 74 | 28 66 6e 24 2c 61 72 67 | .atexit|(fn$,arg|
|00001c10| 25 29 0d 0b e0 09 ea 20 | 65 78 25 0d 0b ea 0f e7 |%)..... |ex%.....|
|00001c20| 20 65 78 69 74 69 6e 67 | 20 e1 0d 0b f4 2b f4 20 | exiting| ....+. |
|00001c30| 50 52 4f 43 74 72 61 63 | 65 28 22 61 74 65 78 69 |PROCtrac|e("atexi|
|00001c40| 74 20 22 2b 66 6e 24 2b | 22 20 22 2b 53 54 52 24 |t "+fn$+|" "+STR$|
|00001c50| 61 72 67 25 29 0d 0b fe | 17 65 78 25 3d a4 6d 61 |arg%)...|.ex%=.ma|
|00001c60| 6c 6c 6f 63 28 54 5f 65 | 78 69 74 29 0d 0c 08 1a |lloc(T_e|xit)....|
|00001c70| 65 78 25 21 45 58 5f 66 | 6e 3d a4 73 74 72 64 75 |ex%!EX_f|n=.strdu|
|00001c80| 70 28 66 6e 24 29 0d 0c | 12 13 65 78 25 21 45 58 |p(fn$)..|..ex%!EX|
|00001c90| 5f 61 72 67 3d 61 72 67 | 25 0d 0c 1c 1a 65 78 25 |_arg=arg|%....ex%|
|00001ca0| 21 45 58 5f 6e 65 78 74 | 3d 65 78 69 74 5f 6c 69 |!EX_next|=exit_li|
|00001cb0| 73 74 25 0d 0c 26 12 65 | 78 69 74 5f 6c 69 73 74 |st%..&.e|xit_list|
|00001cc0| 25 3d 65 78 25 0d 0c 30 | 05 e1 0d 0c 3a 04 0d 0c |%=ex%..0|....:...|
|00001cd0| 44 19 dd 20 f2 6e 6f 61 | 74 65 78 69 74 28 66 6e |D.. .noa|texit(fn|
|00001ce0| 24 2c 61 72 67 25 29 0d | 0c 4e 0f ea 20 65 78 25 |$,arg%).|.N.. ex%|
|00001cf0| 2c 6c 61 73 74 25 0d 0c | 58 0f e7 20 65 78 69 74 |,last%..|X.. exit|
|00001d00| 69 6e 67 20 e1 0d 0c 62 | 2d f4 20 50 52 4f 43 74 |ing ...b|-. PROCt|
|00001d10| 72 61 63 65 28 22 6e 6f | 61 74 65 78 69 74 20 22 |race("no|atexit "|
|00001d20| 2b 66 6e 24 2b 22 20 22 | 2b 53 54 52 24 61 72 67 |+fn$+" "|+STR$arg|
|00001d30| 25 29 0d 0c 6c 12 65 78 | 25 3d 65 78 69 74 5f 6c |%)..l.ex|%=exit_l|
|00001d40| 69 73 74 25 0d 0c 76 0a | c8 95 20 65 78 25 0d 0c |ist%..v.|.. ex%..|
|00001d50| 80 32 20 20 e7 20 a4 73 | 74 72 67 65 74 28 65 78 |.2 . .s|trget(ex|
|00001d60| 25 21 45 58 5f 66 6e 29 | 3d 66 6e 24 20 80 20 65 |%!EX_fn)|=fn$ . e|
|00001d70| 78 25 21 45 58 5f 61 72 | 67 3d 61 72 67 25 20 8c |x%!EX_ar|g=arg% .|
|00001d80| 0d 0c 8a 44 20 20 20 20 | e7 20 6c 61 73 74 25 20 |...D |. last% |
|00001d90| 8c 20 6c 61 73 74 25 21 | 45 58 5f 6e 65 78 74 3d |. last%!|EX_next=|
|00001da0| 65 78 25 21 45 58 5f 6e | 65 78 74 20 8b 20 65 78 |ex%!EX_n|ext . ex|
|00001db0| 69 74 5f 6c 69 73 74 25 | 3d 65 78 25 21 45 58 5f |it_list%|=ex%!EX_|
|00001dc0| 6e 65 78 74 0d 0c 94 12 | 20 20 20 20 f2 66 72 65 |next....| .fre|
|00001dd0| 65 28 65 78 25 29 0d 0c | 9e 09 20 20 20 20 e1 0d |e(ex%)..|.. ..|
|00001de0| 0c a8 07 20 20 cd 0d 0c | b2 0f 20 20 6c 61 73 74 |... ...|.. last|
|00001df0| 25 3d 65 78 25 0d 0c bc | 15 20 20 65 78 25 3d 65 |%=ex%...|. ex%=e|
|00001e00| 78 25 21 45 58 5f 6e 65 | 78 74 0d 0c c6 05 ce 0d |x%!EX_ne|xt......|
|00001e10| 0c d0 05 e1 0d 0c da 04 | 0d 0c e4 3b f4 2d 2d 2d |........|...;.---|
|00001e20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001e30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001e40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001e50| 2d 2d 2d 0d 0c ee 1b f4 | 20 20 20 20 20 20 20 53 |---.....| S|
|00001e60| 74 72 69 6e 67 20 68 61 | 6e 64 6c 69 6e 67 0d 0c |tring ha|ndling..|
|00001e70| f8 3b f4 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.;.-----|--------|
|00001e80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001e90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ea0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 0d 02 13 dd 20 a4 |--------|-..... .|
|00001eb0| 73 74 72 67 65 74 28 73 | 74 72 25 29 0d 0d 0c 0a |strget(s|tr%)....|
|00001ec0| ea 20 73 74 72 24 0d 0d | 16 0c c8 95 20 3f 73 74 |. str$..|.... ?st|
|00001ed0| 72 25 0d 0d 20 14 20 20 | 73 74 72 24 2b 3d bd 28 |r%.. . |str$+=.(|
|00001ee0| 3f 73 74 72 25 29 0d 0d | 2a 0d 20 20 73 74 72 25 |?str%)..|*. str%|
|00001ef0| 2b 3d 31 0d 0d 34 05 ce | 0d 0d 3e 09 3d 73 74 72 |+=1..4..|..>.=str|
|00001f00| 24 0d 0d 48 04 0d 0d 52 | 18 dd 20 f2 73 74 72 73 |$..H...R|.. .strs|
|00001f10| 65 74 28 73 74 72 25 2c | 73 74 72 24 29 0d 0d 5c |et(str%,|str$)..\|
|00001f20| 0e 24 73 74 72 25 3d 73 | 74 72 24 0d 0d 66 10 73 |.$str%=s|tr$..f.s|
|00001f30| 74 72 25 3f a9 73 74 72 | 24 3d 30 0d 0d 70 05 e1 |tr%?.str|$=0..p..|
|00001f40| 0d 0d 7a 04 0d 0d 84 13 | dd 20 a4 73 74 72 6c 65 |..z.....|. .strle|
|00001f50| 6e 28 73 74 72 25 29 0d | 0d 8e 0a ea 20 6c 65 6e |n(str%).|.... len|
|00001f60| 25 0d 0d 98 0c c8 95 20 | 3f 73 74 72 25 0d 0d a2 |%...... |?str%...|
|00001f70| 0d 20 20 6c 65 6e 25 2b | 3d 31 0d 0d ac 05 ce 0d |. len%+|=1......|
|00001f80| 0d b6 09 3d 6c 65 6e 25 | 0d 0d c0 04 0d 0d ca 13 |...=len%|........|
|00001f90| dd 20 a4 73 74 72 64 75 | 70 28 73 74 72 24 29 0d |. .strdu|p(str$).|
|00001fa0| 0d d4 0a ea 20 73 74 72 | 25 0d 0d de 22 73 74 72 |.... str|%..."str|
|00001fb0| 25 3d a4 6d 61 6c 6c 6f | 63 28 54 5f 73 74 72 69 |%=.mallo|c(T_stri|
|00001fc0| 6e 67 2b a9 73 74 72 24 | 2b 31 29 0d 0d e8 0e 24 |ng+.str$|+1)....$|
|00001fd0| 73 74 72 25 3d 73 74 72 | 24 0d 0d f2 10 73 74 72 |str%=str|$....str|
|00001fe0| 25 3f a9 73 74 72 24 3d | 30 0d 0d fc 09 3d 73 74 |%?.str$=|0....=st|
|00001ff0| 72 25 0d 0e 06 04 0d 0e | 10 1d dd 20 a4 73 74 72 |r%......|... .str|
|00002000| 74 6f 6b 28 f8 20 6c 69 | 73 74 24 2c 64 65 6c 69 |tok(. li|st$,deli|
|00002010| 6d 24 29 0d 0e 1a 0f ea | 20 74 69 6b 65 6e 24 2c |m$).....| tiken$,|
|00002020| 69 25 0d 0e 24 15 69 25 | 3d a7 6c 69 73 74 24 2c |i%..$.i%|=.list$,|
|00002030| 64 65 6c 69 6d 24 29 0d | 0e 2e 18 e7 20 69 25 3d |delim$).|.... i%=|
|00002040| 30 20 8c 20 69 25 3d a9 | 6c 69 73 74 24 2b 31 0d |0 . i%=.|list$+1.|
|00002050| 0e 38 17 74 6f 6b 65 6e | 24 3d c0 6c 69 73 74 24 |.8.token|$=.list$|
|00002060| 2c 69 25 2d 31 29 0d 0e | 42 16 6c 69 73 74 24 3d |,i%-1)..|B.list$=|
|00002070| c1 6c 69 73 74 24 2c 69 | 25 2b 31 29 0d 0e 4c 0b |.list$,i|%+1)..L.|
|00002080| 3d 74 6f 6b 65 6e 24 0d | 0e 56 04 0d 0e 60 24 f4 |=token$.|.V...`$.|
|00002090| 20 63 6f 75 6e 74 20 6f | 63 63 75 72 72 65 6e 63 | count o|ccurrenc|
|000020a0| 65 73 20 6f 66 20 63 68 | 20 69 6e 20 73 74 72 0d |es of ch| in str.|
|000020b0| 0e 6a 19 dd 20 a4 73 74 | 72 63 6f 75 6e 74 28 73 |.j.. .st|rcount(s|
|000020c0| 74 72 24 2c 63 68 24 29 | 0d 0e 74 0b ea 20 69 25 |tr$,ch$)|..t.. i%|
|000020d0| 2c 6e 25 0d 0e 7e 05 f5 | 0d 0e 88 13 20 20 69 25 |,n%..~..|.... i%|
|000020e0| 3d a7 73 74 72 24 2c 63 | 68 24 29 0d 0e 92 12 20 |=.str$,c|h$).... |
|000020f0| 20 e7 20 69 25 3d 30 20 | 8c 20 3d 6e 25 0d 0e 9c | . i%=0 |. =n%...|
|00002100| 0b 20 20 6e 25 2b 3d 31 | 0d 0e a6 16 20 20 73 74 |. n%+=1|.... st|
|00002110| 72 24 3d c1 73 74 72 24 | 2c 69 25 2b 31 29 0d 0e |r$=.str$|,i%+1)..|
|00002120| b0 07 fd 20 a3 0d 0e ba | 04 0d 0e c4 12 dd 20 a4 |... ....|...... .|
|00002130| 6c 65 61 66 28 66 69 6c | 65 24 29 0d 0e ce 08 ea |leaf(fil|e$).....|
|00002140| 20 64 25 0d 0e d8 05 f5 | 0d 0e e2 14 20 20 64 25 | d%.....|.... d%|
|00002150| 3d a7 66 69 6c 65 24 2c | 22 2e 22 29 0d 0e ec 18 |=.file$,|".")....|
|00002160| 20 20 66 69 6c 65 24 3d | c1 66 69 6c 65 24 2c 64 | file$=|.file$,d|
|00002170| 25 2b 31 29 0d 0e f6 0a | fd 20 64 25 3d 30 0d 0f |%+1)....|. d%=0..|
|00002180| 00 05 f5 0d 0f 0a 14 20 | 20 64 25 3d a7 66 69 6c |....... | d%=.fil|
|00002190| 65 24 2c 22 3a 22 29 0d | 0f 14 18 20 20 66 69 6c |e$,":").|... fil|
|000021a0| 65 24 3d c1 66 69 6c 65 | 24 2c 64 25 2b 31 29 0d |e$=.file|$,d%+1).|
|000021b0| 0f 1e 0a fd 20 64 25 3d | 30 0d 0f 28 0a 3d 66 69 |.... d%=|0..(.=fi|
|000021c0| 6c 65 24 0d 0f 32 04 0d | 0f 3c 13 dd 20 a4 67 65 |le$..2..|.<.. .ge|
|000021d0| 74 65 6e 76 28 76 61 72 | 24 29 0d 0f 46 0a ea 20 |tenv(var|$)..F.. |
|000021e0| 6c 65 6e 25 0d 0f 50 30 | c8 99 22 4f 53 5f 52 65 |len%..P0|.."OS_Re|
|000021f0| 61 64 56 61 72 56 61 6c | 22 2c 76 61 72 24 2c 62 |adVarVal|",var$,b|
|00002200| 75 66 25 2c 32 35 36 2c | 30 2c 33 20 b8 20 2c 2c |uf%,256,|0,3 . ,,|
|00002210| 6c 65 6e 25 0d 0f 5a 10 | 62 75 66 25 3f 6c 65 6e |len%..Z.|buf%?len|
|00002220| 25 3d 31 33 0d 0f 64 0a | 3d 24 62 75 66 25 0d ff |%=13..d.|=$buf%..|
+--------+-------------------------+-------------------------+--------+--------+