From 6cba56b1dbbb43864494ad852fecb24f5a75df7f Mon Sep 17 00:00:00 2001 From: sparky4 Date: Tue, 21 Feb 2017 12:20:37 -0600 Subject: [PATCH] meh --- DEBUG.16B | 214 +++++++++++++++++++++++----------------------- DEBUG.16W | 210 +++++++++++++++++++++++++++++++++++++++++++++ HEAP.16W | 47 ++++++++++ MEMINFO.16B | 0 MMDUMP.16B | Bin 2550 -> 2550 bytes MMDUMP.16W | Bin 0 -> 2550 bytes bcexmm.dsk | Bin 981 -> 981 bytes bcexmm.exe | Bin 103446 -> 108447 bytes bcexmm.prj | Bin 8523 -> 8450 bytes src/exmmtest.c | 40 ++++----- src/lib/16_tdef.h | 3 + src/lib/doslib | 2 +- 12 files changed, 386 insertions(+), 130 deletions(-) create mode 100755 DEBUG.16W create mode 100755 HEAP.16W create mode 100755 MEMINFO.16B create mode 100755 MMDUMP.16W diff --git a/DEBUG.16B b/DEBUG.16B index 6b4d34fc..c1b6c655 100755 --- a/DEBUG.16B +++ b/DEBUG.16B @@ -1,209 +1,209 @@ -Seg:0 Size:4620 Owner:0x0 -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0 -Seg:120c Size:256 Owner:0x24e5 +Seg:0 Size:4830 Owner:0x0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0 +Seg:12de Size:256 Owner:0x2cb7 ++++ -Seg:130c Size:256 Owner:0x22ea +Seg:13de Size:256 Owner:0x2aba +++++ +Seg:14de Size:256 Owner:0x2abc +++++ +Seg:15de Size:256 Owner:0x2abe +++++ -Seg:140c Size:256 Owner:0x22ec +Seg:16de Size:256 Owner:0x2ac0 ++++ -Seg:150c Size:256 Owner:0x22ee +Seg:17de Size:256 Owner:0x2ac2 ++++ -Seg:160c Size:256 Owner:0x22f0 +Seg:18de Size:256 Owner:0x2ac4 ++++ -Seg:170c Size:256 Owner:0x22f2 +Seg:19de Size:256 Owner:0x2ac6 ++++ -Seg:180c Size:256 Owner:0x22f4 +Seg:1ade Size:256 Owner:0x2ac8 +++++ -Seg:190c Size:256 Owner:0x22f6 +Seg:1bde Size:256 Owner:0x2aca ++++ -Seg:1a0c Size:256 Owner:0x22f8 +Seg:1cde Size:256 Owner:0x2acc ++++ -Seg:1b0c Size:256 Owner:0x22fa +Seg:1dde Size:256 Owner:0x2ace ++++ -Seg:1c0c Size:256 Owner:0x22fc +Seg:1ede Size:256 Owner:0x2ad0 ++++ -Seg:1d0c Size:256 Owner:0x22fe +Seg:1fde Size:256 Owner:0x2ad2 +++++ -Seg:1e0c Size:256 Owner:0x2300 +Seg:20de Size:256 Owner:0x2ad4 ++++ -Seg:1f0c Size:256 Owner:0x2302 +Seg:21de Size:256 Owner:0x2ad6 ++++ -Seg:200c Size:256 Owner:0x2304 +Seg:22de Size:256 Owner:0x2ad8 ++++ -Seg:210c Size:256 Owner:0x2306 +Seg:23de Size:256 Owner:0x2ada ++++ -Seg:220c Size:256 Owner:0x2308 +Seg:24de Size:256 Owner:0x2adc +++++ -Seg:230c Size:256 Owner:0x230a +Seg:25de Size:256 Owner:0x2ade ++++ -Seg:240c Size:256 Owner:0x230c +Seg:26de Size:256 Owner:0x2ae0 ++++ -Seg:250c Size:256 Owner:0x230e +Seg:27de Size:256 Owner:0x2ae2 ++++ -Seg:260c Size:256 Owner:0x2310 +Seg:28de Size:256 Owner:0x2ae4 ++++ -Seg:270c Size:256 Owner:0x2312 +Seg:29de Size:256 Owner:0x2ae6 +++++ -Seg:280c Size:256 Owner:0x2314 +Seg:2ade Size:256 Owner:0x2ae8 ++++ -Seg:290c Size:256 Owner:0x2316 +Seg:2bde Size:256 Owner:0x2aea ++++ -Seg:2a0c Size:256 Owner:0x2318 +Seg:2cde Size:256 Owner:0x2aec ++++ -Seg:2b0c Size:256 Owner:0x231a +Seg:2dde Size:256 Owner:0x2aee ++++ -Seg:2c0c Size:256 Owner:0x231c +Seg:2ede Size:256 Owner:0x2af0 +++++ -Seg:2d0c Size:256 Owner:0x231e +Seg:2fde Size:256 Owner:0x2af2 ++++ -Seg:2e0c Size:256 Owner:0x2320 +Seg:30de Size:256 Owner:0x2af4 ++++ -Seg:2f0c Size:256 Owner:0x2322 +Seg:31de Size:256 Owner:0x2af6 ++++ -Seg:300c Size:256 Owner:0x2324 +Seg:32de Size:256 Owner:0x2af8 ++++ -Seg:310c Size:256 Owner:0x2326 +Seg:33de Size:256 Owner:0x2afa +++++ -Seg:320c Size:256 Owner:0x2328 +Seg:34de Size:256 Owner:0x2afc ++++ -Seg:330c Size:256 Owner:0x232a +Seg:35de Size:256 Owner:0x2afe ++++ -Seg:340c Size:256 Owner:0x232c +Seg:36de Size:256 Owner:0x2b00 ++++ -Seg:350c Size:256 Owner:0x232e +Seg:37de Size:256 Owner:0x2b02 ++++ -Seg:360c Size:256 Owner:0x2330 +Seg:38de Size:256 Owner:0x2b04 +++++ -Seg:370c Size:256 Owner:0x2332 +Seg:39de Size:256 Owner:0x2b06 ++++ -Seg:380c Size:256 Owner:0x2334 +Seg:3ade Size:256 Owner:0x2b08 ++++ -Seg:390c Size:256 Owner:0x2336 +Seg:3bde Size:256 Owner:0x2b0a ++++ -Seg:3a0c Size:256 Owner:0x2338 +Seg:3cde Size:256 Owner:0x2b0c ++++ -Seg:3b0c Size:256 Owner:0x233a +Seg:3dde Size:256 Owner:0x2b0e +++++ -Seg:3c0c Size:256 Owner:0x233c +Seg:3ede Size:256 Owner:0x2b10 ++++ -Seg:3d0c Size:256 Owner:0x233e +Seg:3fde Size:256 Owner:0x2b12 ++++ -Seg:3e0c Size:256 Owner:0x2340 +Seg:40de Size:256 Owner:0x2b14 ++++ -Seg:3f0c Size:256 Owner:0x2342 +Seg:41de Size:256 Owner:0x2b16 ++++ -Seg:400c Size:256 Owner:0x2344 +Seg:42de Size:256 Owner:0x2b18 +++++ -Seg:410c Size:256 Owner:0x2346 +Seg:43de Size:256 Owner:0x2b1a ++++ -Seg:420c Size:256 Owner:0x2348 +Seg:44de Size:256 Owner:0x2b1c ++++ -Seg:430c Size:256 Owner:0x234a +Seg:45de Size:256 Owner:0x2b1e ++++ -Seg:440c Size:256 Owner:0x234c +Seg:46de Size:256 Owner:0x2b20 ++++ -Seg:450c Size:256 Owner:0x234e +Seg:47de Size:256 Owner:0x2b22 +++++ -Seg:460c Size:256 Owner:0x2350 +Seg:48de Size:256 Owner:0x2b24 ++++ -Seg:470c Size:256 Owner:0x2352 +Seg:49de Size:256 Owner:0x2b26 ++++ -Seg:480c Size:256 Owner:0x2354 +Seg:4ade Size:256 Owner:0x2b28 ++++ -Seg:490c Size:256 Owner:0x2356 +Seg:4bde Size:256 Owner:0x2b2a ++++ -Seg:4a0c Size:256 Owner:0x2358 +Seg:4cde Size:256 Owner:0x2b2c +++++ -Seg:4b0c Size:256 Owner:0x235a +Seg:4dde Size:256 Owner:0x2b2e ++++ -Seg:4c0c Size:256 Owner:0x235c +Seg:4ede Size:256 Owner:0x2b30 ++++ -Seg:4d0c Size:256 Owner:0x235e +Seg:4fde Size:256 Owner:0x2b32 ++++ -Seg:4e0c Size:256 Owner:0x2360 +Seg:50de Size:256 Owner:0x2b34 ++++ -Seg:4f0c Size:256 Owner:0x2362 +Seg:51de Size:256 Owner:0x2b36 +++++ -Seg:500c Size:256 Owner:0x2364 +Seg:52de Size:256 Owner:0x2b38 ++++ -Seg:510c Size:256 Owner:0x2366 +Seg:53de Size:256 Owner:0x2b3a ++++ -Seg:520c Size:256 Owner:0x2368 +Seg:54de Size:256 Owner:0x2b3c ++++ -Seg:530c Size:256 Owner:0x236a +Seg:55de Size:256 Owner:0x2b3e ++++ -Seg:540c Size:256 Owner:0x236c +Seg:56de Size:256 Owner:0x2b40 +++++ -Seg:550c Size:256 Owner:0x236e +Seg:57de Size:256 Owner:0x2b42 ++++ -Seg:560c Size:256 Owner:0x2370 +Seg:58de Size:256 Owner:0x2b44 ++++ -Seg:570c Size:256 Owner:0x2372 +Seg:59de Size:256 Owner:0x2b46 ++++ -Seg:580c Size:256 Owner:0x2374 +Seg:5ade Size:256 Owner:0x2b48 ++++ -Seg:590c Size:256 Owner:0x2376 +Seg:5bde Size:256 Owner:0x2b4a +++++ -Seg:5a0c Size:256 Owner:0x2378 +Seg:5cde Size:256 Owner:0x2b4c ++++ -Seg:5b0c Size:256 Owner:0x237a +Seg:5dde Size:256 Owner:0x2b4e ++++ -Seg:5c0c Size:256 Owner:0x237c +Seg:5ede Size:256 Owner:0x2b50 ++++ -Seg:5d0c Size:256 Owner:0x237e +Seg:5fde Size:256 Owner:0x2b52 ++++ -Seg:5e0c Size:256 Owner:0x2380 +Seg:60de Size:256 Owner:0x2b54 +++++ -Seg:5f0c Size:256 Owner:0x2382 +Seg:61de Size:256 Owner:0x2b56 ++++ -Seg:600c Size:256 Owner:0x2384 +Seg:62de Size:256 Owner:0x2b58 ++++ -Seg:610c Size:256 Owner:0x2386 +Seg:63de Size:256 Owner:0x2b5a ++++ -Seg:620c Size:256 Owner:0x2388 +Seg:64de Size:256 Owner:0x2b5c ++++ -Seg:630c Size:256 Owner:0x238a +Seg:65de Size:256 Owner:0x2b5e +++++ -Seg:640c Size:256 Owner:0x238c +Seg:66de Size:256 Owner:0x2b60 ++++ -Seg:650c Size:256 Owner:0x238e +Seg:67de Size:256 Owner:0x2b62 ++++ -Seg:660c Size:256 Owner:0x2390 +Seg:68de Size:256 Owner:0x2b64 ++++ -Seg:670c Size:256 Owner:0x2392 +Seg:69de Size:256 Owner:0x2b66 ++++ -Seg:680c Size:256 Owner:0x2394 +Seg:6ade Size:256 Owner:0x2b68 +++++ -Seg:690c Size:256 Owner:0x2396 +Seg:6bde Size:256 Owner:0x2b6a ++++ -Seg:6a0c Size:256 Owner:0x2398 +Seg:6cde Size:256 Owner:0x2b6c ++++ -Seg:6b0c Size:256 Owner:0x239a +Seg:6dde Size:256 Owner:0x2b6e ++++ -Seg:6c0c Size:256 Owner:0x239c +Seg:6ede Size:256 Owner:0x2b70 ++++ -Seg:6d0c Size:256 Owner:0x239e +Seg:6fde Size:256 Owner:0x2b72 +++++ -Seg:6e0c Size:256 Owner:0x23a0 +Seg:70de Size:256 Owner:0x2b74 ++++ -Seg:6f0c Size:256 Owner:0x23a2 +Seg:71de Size:256 Owner:0x2b76 ++++ -Seg:700c Size:256 Owner:0x23a4 +Seg:72de Size:256 Owner:0x2b78 ++++ -Seg:710c Size:256 Owner:0x23a6 +Seg:73de Size:256 Owner:0x2b7a ++++ -Seg:720c Size:256 Owner:0x23a8 +Seg:74de Size:256 Owner:0x2b7c +++++ -Seg:730c Size:256 Owner:0x23aa -++++ -Seg:740c Size:256 Owner:0x23ac +Seg:75de Size:256 Owner:0x2b7e ++++ -Seg:750c Size:256 Owner:0x23ae +Seg:76de Size:256 Owner:0x2b80 ++++ -Seg:760c Size:256 Owner:0x23b0 -++++ -Seg:770c Size:273 Owner:0xfde -+++++ +Seg:77de Size:273 Owner:0x2a92 +++++ Seg:9fde Size:32802 Owner:0x0  Seg:9ffe Size:24577 Owner:0x0 diff --git a/DEBUG.16W b/DEBUG.16W new file mode 100755 index 00000000..4f0cb798 --- /dev/null +++ b/DEBUG.16W @@ -0,0 +1,210 @@ +Seg:0 Size:8959 Owner:0x0 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00000 +Seg:23f1 Size:44 Owner:0x0 ++ +Seg:241d Size:256 Owner:0x1db4 +++++ +Seg:251d Size:256 Owner:0x1ba6 +++++ +Seg:261d Size:256 Owner:0x1ba8 ++++++ +Seg:271d Size:256 Owner:0x1baa +++++ +Seg:281d Size:256 Owner:0x1bac +++++ +Seg:291d Size:256 Owner:0x1bae +++++ +Seg:2a1d Size:256 Owner:0x1bb0 +++++ +Seg:2b1d Size:256 Owner:0x1bb2 ++++++ +Seg:2c1d Size:256 Owner:0x1bb4 +++++ +Seg:2d1d Size:256 Owner:0x1bb6 +++++ +Seg:2e1d Size:256 Owner:0x1bb8 +++++ +Seg:2f1d Size:256 Owner:0x1bba +++++ +Seg:301d Size:256 Owner:0x1bbc ++++++ +Seg:311d Size:256 Owner:0x1bbe +++++ +Seg:321d Size:256 Owner:0x1bc0 +++++ +Seg:331d Size:256 Owner:0x1bc2 +++++ +Seg:341d Size:256 Owner:0x1bc4 +++++ +Seg:351d Size:256 Owner:0x1bc6 ++++++ +Seg:361d Size:256 Owner:0x1bc8 +++++ +Seg:371d Size:256 Owner:0x1bca +++++ +Seg:381d Size:256 Owner:0x1bcc +++++ +Seg:391d Size:256 Owner:0x1bce +++++ +Seg:3a1d Size:256 Owner:0x1bd0 ++++++ +Seg:3b1d Size:256 Owner:0x1bd2 +++++ +Seg:3c1d Size:256 Owner:0x1bd4 +++++ +Seg:3d1d Size:256 Owner:0x1bd6 +++++ +Seg:3e1d Size:256 Owner:0x1bd8 +++++ +Seg:3f1d Size:256 Owner:0x1bda ++++++ +Seg:401d Size:256 Owner:0x1bdc +++++ +Seg:411d Size:256 Owner:0x1bde +++++ +Seg:421d Size:256 Owner:0x1be0 +++++ +Seg:431d Size:256 Owner:0x1be2 +++++ +Seg:441d Size:256 Owner:0x1be4 ++++++ +Seg:451d Size:256 Owner:0x1be6 +++++ +Seg:461d Size:256 Owner:0x1be8 +++++ +Seg:471d Size:256 Owner:0x1bea +++++ +Seg:481d Size:256 Owner:0x1bec +++++ +Seg:491d Size:256 Owner:0x1bee ++++++ +Seg:4a1d Size:256 Owner:0x1bf0 +++++ +Seg:4b1d Size:256 Owner:0x1bf2 +++++ +Seg:4c1d Size:256 Owner:0x1bf4 +++++ +Seg:4d1d Size:256 Owner:0x1bf6 +++++ +Seg:4e1d Size:256 Owner:0x1bf8 ++++++ +Seg:4f1d Size:256 Owner:0x1bfa +++++ +Seg:501d Size:256 Owner:0x1bfc +++++ +Seg:511d Size:256 Owner:0x1bfe +++++ +Seg:521d Size:256 Owner:0x1c00 +++++ +Seg:531d Size:256 Owner:0x1c02 ++++++ +Seg:541d Size:256 Owner:0x1c04 +++++ +Seg:551d Size:256 Owner:0x1c06 +++++ +Seg:561d Size:256 Owner:0x1c08 +++++ +Seg:571d Size:256 Owner:0x1c0a +++++ +Seg:581d Size:256 Owner:0x1c0c ++++++ +Seg:591d Size:256 Owner:0x1c0e +++++ +Seg:5a1d Size:256 Owner:0x1c10 +++++ +Seg:5b1d Size:256 Owner:0x1c12 +++++ +Seg:5c1d Size:256 Owner:0x1c14 +++++ +Seg:5d1d Size:256 Owner:0x1c16 ++++++ +Seg:5e1d Size:256 Owner:0x1c18 +++++ +Seg:5f1d Size:256 Owner:0x1c1a +++++ +Seg:601d Size:256 Owner:0x1c1c +++++ +Seg:611d Size:256 Owner:0x1c1e +++++ +Seg:621d Size:256 Owner:0x1c20 ++++++ +Seg:631d Size:256 Owner:0x1c22 +++++ +Seg:641d Size:256 Owner:0x1c24 +++++ +Seg:651d Size:256 Owner:0x1c26 +++++ +Seg:661d Size:256 Owner:0x1c28 +++++ +Seg:671d Size:256 Owner:0x1c2a ++++++ +Seg:681d Size:256 Owner:0x1c2c +++++ +Seg:691d Size:256 Owner:0x1c2e +++++ +Seg:6a1d Size:256 Owner:0x1c30 +++++ +Seg:6b1d Size:256 Owner:0x1c32 +++++ +Seg:6c1d Size:256 Owner:0x1c34 ++++++ +Seg:6d1d Size:256 Owner:0x1c36 +++++ +Seg:6e1d Size:256 Owner:0x1c38 +++++ +Seg:6f1d Size:256 Owner:0x1c3a +++++ +Seg:701d Size:256 Owner:0x1c3c +++++ +Seg:711d Size:256 Owner:0x1c3e ++++++ +Seg:721d Size:256 Owner:0x1c40 +++++ +Seg:731d Size:256 Owner:0x1c42 +++++ +Seg:741d Size:256 Owner:0x1c44 +++++ +Seg:751d Size:256 Owner:0x1c46 +++++ +Seg:761d Size:256 Owner:0x1c48 ++++++ +Seg:771d Size:256 Owner:0x1c4a +++++ +Seg:781d Size:256 Owner:0x1c4c +++++ +Seg:791d Size:256 Owner:0x1c4e +++++ +Seg:7a1d Size:256 Owner:0x1c50 +++++ +Seg:7b1d Size:256 Owner:0x1c52 ++++++ +Seg:7c1d Size:256 Owner:0x1c54 +++++ +Seg:7d1d Size:256 Owner:0x1c56 +++++ +Seg:7e1d Size:256 Owner:0x1c58 +++++ +Seg:7f1d Size:256 Owner:0x1c5a +++++ +Seg:801d Size:256 Owner:0x1c5c ++++++ +Seg:811d Size:256 Owner:0x1c5e +++++ +Seg:821d Size:256 Owner:0x1c60 +++++ +Seg:831d Size:256 Owner:0x1c62 +++++ +Seg:841d Size:256 Owner:0x1c64 +++++ +Seg:851d Size:256 Owner:0x1c66 ++++++ +Seg:861d Size:256 Owner:0x1c68 +++++ +Seg:871d Size:256 Owner:0x1c6a +++++ +Seg:881d Size:256 Owner:0x1c6c +++++ +Seg:891d Size:273 Owner:0x1b78 ++++++ +Seg:b41d Size:19426 Owner:0x0 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ \ No newline at end of file diff --git a/HEAP.16W b/HEAP.16W new file mode 100755 index 00000000..4249c5ca --- /dev/null +++ b/HEAP.16W @@ -0,0 +1,47 @@ + + == default == + + USED block at 24130016 of size 66 + USED block at 24130058 of size 66 + FREE block at 2413009a of size 18 + USED block at 241300ac of size 136 + USED block at 24130134 of size 20 + FREE block at 24130148 of size 7860 +OK - end of heap + + == near == + + USED block at 1412ecd6 of size 12 + USED block at 1412ece2 of size 332 + USED block at 1412ee2e of size 52 + USED block at 1412ee62 of size 20 + USED block at 1412ee76 of size 20 + USED block at 1412ee8a of size 20 + USED block at 1412ee9e of size 20 + USED block at 1412eeb2 of size 20 + USED block at 1412eec6 of size 4406 +OK - end of heap + + == far == + + USED block at 24130016 of size 66 + USED block at 24130058 of size 66 + USED block at 2413009a of size 18 + USED block at 241300ac of size 136 + USED block at 24130134 of size 20 + USED block at 24130148 of size 7860 +OK - end of heap + +Memory Type Total Used Free +---------------- -------- -------- -------- +Default 8166 288 7878 +Near 4902 496 4406 +Far 8166 288 7878 +---------------- -------- -------- -------- +coreleft = 4404 +farcoreleft = 44896 +GetFreeSize = 40512 +GetNearFreeSize = 4406 +GetFarFreeSize = 40512 +memavl = 4404 +stackavail = 31606 diff --git a/MEMINFO.16B b/MEMINFO.16B new file mode 100755 index 00000000..e69de29b diff --git a/MMDUMP.16B b/MMDUMP.16B index 8609c2124abff8aaa5613e99aa392e7bd3872815..fdff3f7c7aadb6cc70b932a4d2b85335ea3fa85b 100755 GIT binary patch literal 2550 zcmZ|RElxx+0EJOB34$FwIS7*ecOXGbUt7&`SUzJ&5Oee=ZjQU*CxkRV)9oW2m-pAV zIN0Fn*QRFCc6gi3+#BIl3G}jv>d8W5_Y& z7;+3bh8$ClDaVv!$}#1ba!fg<97~QR$C6{ovE*2CEIF1OTaGQqmSfAY<=Ap;Ikp@h NaMWA-9e4jW+z$c};->%r diff --git a/MMDUMP.16W b/MMDUMP.16W new file mode 100755 index 0000000000000000000000000000000000000000..ae51bd972667abdb0bcb1f9637330d90e54fd694 GIT binary patch literal 2550 zcmZ|RJxWAD5QR}=!N487a0~|e-$8H>Zed<^_ZnQjlL!W$_~TNXtkQQ%Wq#!I{dQcg zuW!fa(R01MJg47qAIIhE>A&z;{2%TLp|B9nq)-%^f*hwDryQporyL+#BIl3G}jv>d8W5_Y&7;+3a M=J_~&{qw{901XTZvj6}9 literal 0 HcmV?d00001 diff --git a/bcexmm.dsk b/bcexmm.dsk index 0cb42ac175b6280e0e9052bb5cda91e2e422d65d..b1c97ef806323542bd1a314e3c06bc2426df11dd 100755 GIT binary patch delta 21 ccmcc0ewBSgJTp^_%j8662__f4$<@qJ08PsVTL1t6 delta 21 ccmcc0ewBSgJTsH0-{eGQ38o;Q$<@qJ08TaregFUf diff --git a/bcexmm.exe b/bcexmm.exe index 89419f23e4cb45269c284a10a448f0bdf8085256..675363b95db5f5241bc300f54466d5e562b91fb8 100755 GIT binary patch delta 42465 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 { #endif - PM_Startup(&gvar); - //printf("pmstarted ok\n"); - //PM_CheckMainMem(&gvar); - PM_UnlockMainMem(&gvar); + PM_Startup(&gvar); PM_CheckMainMem(&gvar); PM_UnlockMainMem(&gvar); #ifdef __DEBUG_PM__ } #endif @@ -126,26 +122,26 @@ main(int argc, char *argv[]) for(w=0;w<2;w++) { // bakapeehandle = open(bakapee,O_RDONLY | O_BINARY, S_IREAD); -// printf("size of big buffer~=%u\n", _bmsize(segu, bigbuffer)); -// if(CA_FarRead(bakapeehandle,(void far *)&bigbuffer,sizeof(bigbuffer),&gvar.mm)) +// printf("size of big buffer~=%u\n", _bmsize(segu, gvar.ca.tinf[0])); +// if(CA_FarRead(bakapeehandle,(void far *)&gvar.ca.tinf[0],sizeof(gvar.ca.tinf[0]),&gvar.mm)) if(w>0) { printf(" read\n"); - if(CA_ReadFile(bakapee2, &bigbuffer, &gvar)) baka=1; else baka=0; + if(CA_ReadFile(bakapee2, &gvar.ca.tinf[0], &gvar)) baka=1; else baka=0; } #endif if(w==0) { - printf(" load\n"); - if(CA_LoadFile(bakapee1, &bigbuffer, &gvar)) baka=1; else baka=0; + printf(" load\n"); + if(CA_LoadFile(bakapee1, &gvar.ca.tinf[0], &gvar)) baka=1; else baka=0; } // close(bakapeehandle); //hmm functions in cache system use the buffered stuff //#ifdef __WATCOMC__ -// printf("\nsize of big buffer~=%u\n", _bmsize(sega, bigbuffer)); +// printf("\nsize of big buffer~=%u\n", _bmsize(sega, gvar.ca.tinf[0])); //#endif - printf("contents of the buffer\n[\n%s\n]\n", bigbuffer); + printf("contents of the buffer\n[\n%s\n]\n", gvar.ca.tinf[0]); //printf("dark purple = purgable\n"); //printf("medium blue = non purgable\n"); //printf("red = locked\n"); @@ -163,7 +159,7 @@ for(w=0;w<2;w++) MM_Report_(&gvar); //printf("bakapee1=%s\n", bakapee1); //printf("bakapee2=%s\n", bakapee2); - MM_FreePtr(&bigbuffer, &gvar); + MM_FreePtr(&gvar.ca.tinf[0], &gvar); //#ifdef __WATCOMC__ #ifdef __DEBUG_PM__ if(dbg_debugpm>0) @@ -181,11 +177,11 @@ for(w=0;w<2;w++) printf("&far= %Fp", &(gvar.mm.farheap)); printf("\n"); #ifdef EXMMVERBOSE - printf("bigb= %Fp ", bigbuffer); - //printf("bigbr= %04x", bigbuffer); + printf("bigb= %Fp ", gvar.ca.tinf[0]); + //printf("bigbr= %04x", gvar.ca.tinf[0]); //printf("\n"); - printf("&bigb=%Fp ", &bigbuffer); - //printf("&bigb=%04x", &bigbuffer); + printf("&bigb=%Fp ", &gvar.ca.tinf[0]); + //printf("&bigb=%04x", &gvar.ca.tinf[0]); printf("\n"); printf("========================================\n"); #endif diff --git a/src/lib/16_tdef.h b/src/lib/16_tdef.h index 908dd60f..10fd1eea 100755 --- a/src/lib/16_tdef.h +++ b/src/lib/16_tdef.h @@ -538,6 +538,9 @@ typedef struct //TODO: USE THIS!!!! byte far grneeded[NUMCHUNKS]; memptr/*byte _seg*/ *audiosegs[NUMSNDCHUNKS]; + //misc memptr + memptr tinf[4]; + huffnode huffnode; //TODO: extend! and learn from keen/wolf/catacomb's code wwww diff --git a/src/lib/doslib b/src/lib/doslib index 405af50f..88aab379 160000 --- a/src/lib/doslib +++ b/src/lib/doslib @@ -1 +1 @@ -Subproject commit 405af50f8d9689c01d823a5c8ee9501938a4dfb6 +Subproject commit 88aab3798f96c47b37a018f0027df0abebb4e74a -- 2.39.2