From 2fd9b2ce1016f4774c1e21d7432e6b95c02ad378 Mon Sep 17 00:00:00 2001 From: sparky4 <sparky4@cock.li> Date: Tue, 4 Oct 2016 12:20:48 -0500 Subject: [PATCH] VRSTEST.EXE NOW USES PAGE MANAGER! wwww --- DEBUG.16W | 258 ++++++++++++++++++++++++------------------------ HEAP.16W | 104 ++++++++++--------- src/lib/16_mm.c | 2 + src/lib/16_pm.c | 48 ++++----- src/vrstest.c | 11 ++- 5 files changed, 213 insertions(+), 210 deletions(-) diff --git a/DEBUG.16W b/DEBUG.16W index 72245a61..1b6087e1 100755 --- a/DEBUG.16W +++ b/DEBUG.16W @@ -1,212 +1,210 @@ -[0mSeg:0 Size:11735 Owner:0x0 -[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m[42;32m000 -[0m[0mSeg:2e4c Size:36 Owner:0x0 -[41;31m+[0m[42;32m -[0m[0mSeg:2e70 Size:256 Owner:0x1988 +[0mSeg:0 Size:11718 Owner:0x0 +[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m[42;32m00 +[0m[0mSeg:2e3b Size:36 Owner:0x0 +[41;31m++[0m[42;32m +[0m[0mSeg:2e5f Size:256 Owner:0x1988 [44;34m++++[0m[42;32m -[0m[0mSeg:2f70 Size:256 Owner:0x1776 +[0m[0mSeg:2f5f Size:256 Owner:0x1776 [45;35m++++[0m[42;32m -[0m[0mSeg:3070 Size:256 Owner:0x1778 +[0m[0mSeg:305f Size:256 Owner:0x1778 [45;35m++++[0m[42;32m -[0m[0mSeg:3170 Size:256 Owner:0x177a +[0m[0mSeg:315f Size:256 Owner:0x177a +[45;35m+++++[0m[42;32m +[0m[0mSeg:325f Size:256 Owner:0x177c [45;35m++++[0m[42;32m -[0m[0mSeg:3270 Size:256 Owner:0x177c +[0m[0mSeg:335f Size:256 Owner:0x177e [45;35m++++[0m[42;32m -[0m[0mSeg:3370 Size:256 Owner:0x177e +[0m[0mSeg:345f Size:256 Owner:0x1780 [45;35m++++[0m[42;32m -[0m[0mSeg:3470 Size:256 Owner:0x1780 +[0m[0mSeg:355f Size:256 Owner:0x1782 [45;35m++++[0m[42;32m -[0m[0mSeg:3570 Size:256 Owner:0x1782 +[0m[0mSeg:365f Size:256 Owner:0x1784 +[45;35m+++++[0m[42;32m +[0m[0mSeg:375f Size:256 Owner:0x1786 [45;35m++++[0m[42;32m -[0m[0mSeg:3670 Size:256 Owner:0x1784 +[0m[0mSeg:385f Size:256 Owner:0x1788 [45;35m++++[0m[42;32m -[0m[0mSeg:3770 Size:256 Owner:0x1786 +[0m[0mSeg:395f Size:256 Owner:0x178a [45;35m++++[0m[42;32m -[0m[0mSeg:3870 Size:256 Owner:0x1788 +[0m[0mSeg:3a5f Size:256 Owner:0x178c [45;35m++++[0m[42;32m -[0m[0mSeg:3970 Size:256 Owner:0x178a +[0m[0mSeg:3b5f Size:256 Owner:0x178e +[45;35m+++++[0m[42;32m +[0m[0mSeg:3c5f Size:256 Owner:0x1790 [45;35m++++[0m[42;32m -[0m[0mSeg:3a70 Size:256 Owner:0x178c +[0m[0mSeg:3d5f Size:256 Owner:0x1792 [45;35m++++[0m[42;32m -[0m[0mSeg:3b70 Size:256 Owner:0x178e +[0m[0mSeg:3e5f Size:256 Owner:0x1794 [45;35m++++[0m[42;32m -[0m[0mSeg:3c70 Size:256 Owner:0x1790 +[0m[0mSeg:3f5f Size:256 Owner:0x1796 [45;35m++++[0m[42;32m -[0m[0mSeg:3d70 Size:256 Owner:0x1792 +[0m[0mSeg:405f Size:256 Owner:0x1798 +[45;35m+++++[0m[42;32m +[0m[0mSeg:415f Size:256 Owner:0x179a [45;35m++++[0m[42;32m -[0m[0mSeg:3e70 Size:256 Owner:0x1794 +[0m[0mSeg:425f Size:256 Owner:0x179c [45;35m++++[0m[42;32m -[0m[0mSeg:3f70 Size:256 Owner:0x1796 +[0m[0mSeg:435f Size:256 Owner:0x179e [45;35m++++[0m[42;32m -[0m[0mSeg:4070 Size:256 Owner:0x1798 +[0m[0mSeg:445f Size:256 Owner:0x17a0 [45;35m++++[0m[42;32m -[0m[0mSeg:4170 Size:256 Owner:0x179a +[0m[0mSeg:455f Size:256 Owner:0x17a2 +[45;35m+++++[0m[42;32m +[0m[0mSeg:465f Size:256 Owner:0x17a4 [45;35m++++[0m[42;32m -[0m[0mSeg:4270 Size:256 Owner:0x179c +[0m[0mSeg:475f Size:256 Owner:0x17a6 [45;35m++++[0m[42;32m -[0m[0mSeg:4370 Size:256 Owner:0x179e +[0m[0mSeg:485f Size:256 Owner:0x17a8 [45;35m++++[0m[42;32m -[0m[0mSeg:4470 Size:256 Owner:0x17a0 +[0m[0mSeg:495f Size:256 Owner:0x17aa [45;35m++++[0m[42;32m -[0m[0mSeg:4570 Size:256 Owner:0x17a2 +[0m[0mSeg:4a5f Size:256 Owner:0x17ac +[45;35m+++++[0m[42;32m +[0m[0mSeg:4b5f Size:256 Owner:0x17ae [45;35m++++[0m[42;32m -[0m[0mSeg:4670 Size:256 Owner:0x17a4 +[0m[0mSeg:4c5f Size:256 Owner:0x17b0 [45;35m++++[0m[42;32m -[0m[0mSeg:4770 Size:256 Owner:0x17a6 +[0m[0mSeg:4d5f Size:256 Owner:0x17b2 [45;35m++++[0m[42;32m -[0m[0mSeg:4870 Size:256 Owner:0x17a8 +[0m[0mSeg:4e5f Size:256 Owner:0x17b4 [45;35m++++[0m[42;32m -[0m[0mSeg:4970 Size:256 Owner:0x17aa +[0m[0mSeg:4f5f Size:256 Owner:0x17b6 +[45;35m+++++[0m[42;32m +[0m[0mSeg:505f Size:256 Owner:0x17b8 [45;35m++++[0m[42;32m -[0m[0mSeg:4a70 Size:256 Owner:0x17ac +[0m[0mSeg:515f Size:256 Owner:0x17ba [45;35m++++[0m[42;32m -[0m[0mSeg:4b70 Size:256 Owner:0x17ae +[0m[0mSeg:525f Size:256 Owner:0x17bc [45;35m++++[0m[42;32m -[0m[0mSeg:4c70 Size:256 Owner:0x17b0 +[0m[0mSeg:535f Size:256 Owner:0x17be [45;35m++++[0m[42;32m -[0m[0mSeg:4d70 Size:256 Owner:0x17b2 +[0m[0mSeg:545f Size:256 Owner:0x17c0 +[45;35m+++++[0m[42;32m +[0m[0mSeg:555f Size:256 Owner:0x17c2 [45;35m++++[0m[42;32m -[0m[0mSeg:4e70 Size:256 Owner:0x17b4 +[0m[0mSeg:565f Size:256 Owner:0x17c4 [45;35m++++[0m[42;32m -[0m[0mSeg:4f70 Size:256 Owner:0x17b6 +[0m[0mSeg:575f Size:256 Owner:0x17c6 [45;35m++++[0m[42;32m -[0m[0mSeg:5070 Size:256 Owner:0x17b8 +[0m[0mSeg:585f Size:256 Owner:0x17c8 [45;35m++++[0m[42;32m -[0m[0mSeg:5170 Size:256 Owner:0x17ba +[0m[0mSeg:595f Size:256 Owner:0x17ca +[45;35m+++++[0m[42;32m +[0m[0mSeg:5a5f Size:256 Owner:0x17cc [45;35m++++[0m[42;32m -[0m[0mSeg:5270 Size:256 Owner:0x17bc +[0m[0mSeg:5b5f Size:256 Owner:0x17ce [45;35m++++[0m[42;32m -[0m[0mSeg:5370 Size:256 Owner:0x17be +[0m[0mSeg:5c5f Size:256 Owner:0x17d0 [45;35m++++[0m[42;32m -[0m[0mSeg:5470 Size:256 Owner:0x17c0 +[0m[0mSeg:5d5f Size:256 Owner:0x17d2 [45;35m++++[0m[42;32m -[0m[0mSeg:5570 Size:256 Owner:0x17c2 +[0m[0mSeg:5e5f Size:256 Owner:0x17d4 +[45;35m+++++[0m[42;32m +[0m[0mSeg:5f5f Size:256 Owner:0x17d6 [45;35m++++[0m[42;32m -[0m[0mSeg:5670 Size:256 Owner:0x17c4 +[0m[0mSeg:605f Size:256 Owner:0x17d8 [45;35m++++[0m[42;32m -[0m[0mSeg:5770 Size:256 Owner:0x17c6 +[0m[0mSeg:615f Size:256 Owner:0x17da [45;35m++++[0m[42;32m -[0m[0mSeg:5870 Size:256 Owner:0x17c8 +[0m[0mSeg:625f Size:256 Owner:0x17dc [45;35m++++[0m[42;32m -[0m[0mSeg:5970 Size:256 Owner:0x17ca +[0m[0mSeg:635f Size:256 Owner:0x17de +[45;35m+++++[0m[42;32m +[0m[0mSeg:645f Size:256 Owner:0x17e0 [45;35m++++[0m[42;32m -[0m[0mSeg:5a70 Size:256 Owner:0x17cc +[0m[0mSeg:655f Size:256 Owner:0x17e2 [45;35m++++[0m[42;32m -[0m[0mSeg:5b70 Size:256 Owner:0x17ce +[0m[0mSeg:665f Size:256 Owner:0x17e4 [45;35m++++[0m[42;32m -[0m[0mSeg:5c70 Size:256 Owner:0x17d0 +[0m[0mSeg:675f Size:256 Owner:0x17e6 [45;35m++++[0m[42;32m -[0m[0mSeg:5d70 Size:256 Owner:0x17d2 +[0m[0mSeg:685f Size:256 Owner:0x17e8 +[45;35m+++++[0m[42;32m +[0m[0mSeg:695f Size:256 Owner:0x17ea [45;35m++++[0m[42;32m -[0m[0mSeg:5e70 Size:256 Owner:0x17d4 +[0m[0mSeg:6a5f Size:256 Owner:0x17ec [45;35m++++[0m[42;32m -[0m[0mSeg:5f70 Size:256 Owner:0x17d6 +[0m[0mSeg:6b5f Size:256 Owner:0x17ee [45;35m++++[0m[42;32m -[0m[0mSeg:6070 Size:256 Owner:0x17d8 +[0m[0mSeg:6c5f Size:256 Owner:0x17f0 [45;35m++++[0m[42;32m -[0m[0mSeg:6170 Size:256 Owner:0x17da +[0m[0mSeg:6d5f Size:256 Owner:0x17f2 +[45;35m+++++[0m[42;32m +[0m[0mSeg:6e5f Size:256 Owner:0x17f4 [45;35m++++[0m[42;32m -[0m[0mSeg:6270 Size:256 Owner:0x17dc +[0m[0mSeg:6f5f Size:256 Owner:0x17f6 [45;35m++++[0m[42;32m -[0m[0mSeg:6370 Size:256 Owner:0x17de +[0m[0mSeg:705f Size:256 Owner:0x17f8 [45;35m++++[0m[42;32m -[0m[0mSeg:6470 Size:256 Owner:0x17e0 +[0m[0mSeg:715f Size:256 Owner:0x17fa [45;35m++++[0m[42;32m -[0m[0mSeg:6570 Size:256 Owner:0x17e2 +[0m[0mSeg:725f Size:256 Owner:0x17fc +[45;35m+++++[0m[42;32m +[0m[0mSeg:735f Size:256 Owner:0x17fe [45;35m++++[0m[42;32m -[0m[0mSeg:6670 Size:256 Owner:0x17e4 +[0m[0mSeg:745f Size:256 Owner:0x1800 [45;35m++++[0m[42;32m -[0m[0mSeg:6770 Size:256 Owner:0x17e6 +[0m[0mSeg:755f Size:256 Owner:0x1802 [45;35m++++[0m[42;32m -[0m[0mSeg:6870 Size:256 Owner:0x17e8 +[0m[0mSeg:765f Size:256 Owner:0x1804 [45;35m++++[0m[42;32m -[0m[0mSeg:6970 Size:256 Owner:0x17ea +[0m[0mSeg:775f Size:256 Owner:0x1806 +[45;35m+++++[0m[42;32m +[0m[0mSeg:785f Size:256 Owner:0x1808 [45;35m++++[0m[42;32m -[0m[0mSeg:6a70 Size:256 Owner:0x17ec +[0m[0mSeg:795f Size:256 Owner:0x180a [45;35m++++[0m[42;32m -[0m[0mSeg:6b70 Size:256 Owner:0x17ee +[0m[0mSeg:7a5f Size:256 Owner:0x180c [45;35m++++[0m[42;32m -[0m[0mSeg:6c70 Size:256 Owner:0x17f0 +[0m[0mSeg:7b5f Size:256 Owner:0x180e [45;35m++++[0m[42;32m -[0m[0mSeg:6d70 Size:256 Owner:0x17f2 +[0m[0mSeg:7c5f Size:256 Owner:0x1810 +[45;35m+++++[0m[42;32m +[0m[0mSeg:7d5f Size:256 Owner:0x1812 [45;35m++++[0m[42;32m -[0m[0mSeg:6e70 Size:256 Owner:0x17f4 +[0m[0mSeg:7e5f Size:256 Owner:0x1814 [45;35m++++[0m[42;32m -[0m[0mSeg:6f70 Size:256 Owner:0x17f6 +[0m[0mSeg:7f5f Size:256 Owner:0x1816 [45;35m++++[0m[42;32m -[0m[0mSeg:7070 Size:256 Owner:0x17f8 +[0m[0mSeg:805f Size:256 Owner:0x1818 [45;35m++++[0m[42;32m -[0m[0mSeg:7170 Size:256 Owner:0x17fa +[0m[0mSeg:815f Size:256 Owner:0x181a +[45;35m+++++[0m[42;32m +[0m[0mSeg:825f Size:256 Owner:0x181c [45;35m++++[0m[42;32m -[0m[0mSeg:7270 Size:256 Owner:0x17fc +[0m[0mSeg:835f Size:256 Owner:0x181e [45;35m++++[0m[42;32m -[0m[0mSeg:7370 Size:256 Owner:0x17fe +[0m[0mSeg:845f Size:256 Owner:0x1820 [45;35m++++[0m[42;32m -[0m[0mSeg:7470 Size:256 Owner:0x1800 +[0m[0mSeg:855f Size:256 Owner:0x1822 [45;35m++++[0m[42;32m -[0m[0mSeg:7570 Size:256 Owner:0x1802 +[0m[0mSeg:865f Size:256 Owner:0x1824 +[45;35m+++++[0m[42;32m +[0m[0mSeg:875f Size:256 Owner:0x1826 [45;35m++++[0m[42;32m -[0m[0mSeg:7670 Size:256 Owner:0x1804 +[0m[0mSeg:885f Size:256 Owner:0x1828 [45;35m++++[0m[42;32m -[0m[0mSeg:7770 Size:256 Owner:0x1806 +[0m[0mSeg:895f Size:256 Owner:0x182a [45;35m++++[0m[42;32m -[0m[0mSeg:7870 Size:256 Owner:0x1808 +[0m[0mSeg:8a5f Size:256 Owner:0x182c [45;35m++++[0m[42;32m -[0m[0mSeg:7970 Size:256 Owner:0x180a +[0m[0mSeg:8b5f Size:256 Owner:0x182e +[45;35m+++++[0m[42;32m +[0m[0mSeg:8c5f Size:256 Owner:0x1830 [45;35m++++[0m[42;32m -[0m[0mSeg:7a70 Size:256 Owner:0x180c +[0m[0mSeg:8d5f Size:256 Owner:0x1832 [45;35m++++[0m[42;32m -[0m[0mSeg:7b70 Size:256 Owner:0x180e +[0m[0mSeg:8e5f Size:256 Owner:0x1834 [45;35m++++[0m[42;32m -[0m[0mSeg:7c70 Size:256 Owner:0x1810 +[0m[0mSeg:8f5f Size:256 Owner:0x1836 [45;35m++++[0m[42;32m -[0m[0mSeg:7d70 Size:256 Owner:0x1812 +[0m[0mSeg:905f Size:256 Owner:0x1838 +[45;35m+++++[0m[42;32m +[0m[0mSeg:915f Size:256 Owner:0x183a [45;35m++++[0m[42;32m -[0m[0mSeg:7e70 Size:256 Owner:0x1814 +[0m[0mSeg:925f Size:256 Owner:0x183c [45;35m++++[0m[42;32m -[0m[0mSeg:7f70 Size:256 Owner:0x1816 -[45;35m++++[0m[42;32m -[0m[0mSeg:8070 Size:256 Owner:0x1818 -[45;35m++++[0m[42;32m -[0m[0mSeg:8170 Size:256 Owner:0x181a -[45;35m++++[0m[42;32m -[0m[0mSeg:8270 Size:256 Owner:0x181c -[45;35m++++[0m[42;32m -[0m[0mSeg:8370 Size:256 Owner:0x181e -[45;35m++++[0m[42;32m -[0m[0mSeg:8470 Size:256 Owner:0x1820 -[45;35m++++[0m[42;32m -[0m[0mSeg:8570 Size:256 Owner:0x1822 -[45;35m++++[0m[42;32m -[0m[0mSeg:8670 Size:256 Owner:0x1824 -[45;35m++++[0m[42;32m -[0m[0mSeg:8770 Size:256 Owner:0x1826 -[45;35m++++[0m[42;32m -[0m[0mSeg:8870 Size:256 Owner:0x1828 -[45;35m++++[0m[42;32m -[0m[0mSeg:8970 Size:256 Owner:0x182a -[45;35m++++[0m[42;32m -[0m[0mSeg:8a70 Size:256 Owner:0x182c -[45;35m++++[0m[42;32m -[0m[0mSeg:8b70 Size:256 Owner:0x182e -[45;35m++++[0m[42;32m -[0m[0mSeg:8c70 Size:256 Owner:0x1830 -[45;35m++++[0m[42;32m -[0m[0mSeg:8d70 Size:256 Owner:0x1832 -[45;35m++++[0m[42;32m -[0m[0mSeg:8e70 Size:256 Owner:0x1834 -[45;35m++++[0m[42;32m -[0m[0mSeg:8f70 Size:256 Owner:0x1836 -[45;35m++++[0m[42;32m -[0m[0mSeg:9070 Size:256 Owner:0x1838 -[45;35m++++[0m[42;32m -[0m[0mSeg:9170 Size:256 Owner:0x183a -[45;35m++++[0m[42;32m -[0m[0mSeg:9270 Size:256 Owner:0x183c -[45;35m++++[0m[42;32m -[0m[0mSeg:9370 Size:401 Owner:0xf45a +[0m[0mSeg:935f Size:401 Owner:0xf45a [44;34m++++++[0m[42;32m -[0m[0mSeg:be70 Size:8592 Owner:0x0 -[41;31m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m[42;32m -[0m[0mSeg:e000 Size:8191 Owner:0x0 -[41;31m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m \ No newline at end of file +[0m[0mSeg:be5f Size:16800 Owner:0x0 +[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m \ No newline at end of file diff --git a/HEAP.16W b/HEAP.16W index 78ae75ec..f4d0768f 100755 --- a/HEAP.16W +++ b/HEAP.16W @@ -1,57 +1,71 @@ == default == - FREE block at 2e6e0016 of size 18 - USED block at 2e6e0028 of size 136 - USED block at 2e6e00b0 of size 50 - USED block at 2e6e00e2 of size 50 - USED block at 2e6e0114 of size 50 - USED block at 2e6e0146 of size 50 - USED block at 2e6e0178 of size 50 - USED block at 2e6e01aa of size 50 - USED block at 2e6e01dc of size 50 - USED block at 2e6e020e of size 50 - USED block at 2e6e0240 of size 50 - USED block at 2e6e0272 of size 50 - USED block at 2e6e02a4 of size 50 - USED block at 2e6e02d6 of size 50 - USED block at 2e6e0308 of size 50 - FREE block at 2e6e033a of size 14 - USED block at 2e6e0348 of size 20 - FREE block at 2e6e035c of size 7328 + FREE block at 2e5d0016 of size 18 + USED block at 2e5d0028 of size 50 + USED block at 2e5d005a of size 50 + USED block at 2e5d008c of size 50 + USED block at 2e5d00be of size 50 + USED block at 2e5d00f0 of size 50 + USED block at 2e5d0122 of size 50 + USED block at 2e5d0154 of size 50 + USED block at 2e5d0186 of size 50 + USED block at 2e5d01b8 of size 50 + USED block at 2e5d01ea of size 50 + USED block at 2e5d021c of size 50 + USED block at 2e5d024e of size 50 + USED block at 2e5d0280 of size 50 + FREE block at 2e5d02b2 of size 14 + USED block at 2e5d02c0 of size 20 + USED block at 2e5d02d4 of size 136 + FREE block at 2e5d035c of size 7328 OK - end of heap == near == - USED block at 1e6df4a6 of size 12 - USED block at 1e6df4b2 of size 330 - USED block at 1e6df5fc of size 52 - USED block at 1e6df630 of size 20 - USED block at 1e6df644 of size 20 - USED block at 1e6df658 of size 20 - USED block at 1e6df66c of size 20 - USED block at 1e6df680 of size 20 - USED block at 1e6df694 of size 2408 + USED block at 1e5cf4a6 of size 12 + USED block at 1e5cf4b2 of size 330 + USED block at 1e5cf5fc of size 52 + USED block at 1e5cf630 of size 20 + USED block at 1e5cf644 of size 20 + USED block at 1e5cf658 of size 20 + USED block at 1e5cf66c of size 20 + USED block at 1e5cf680 of size 20 + USED block at 1e5cf694 of size 2408 OK - end of heap == far == - USED block at 2e6e0016 of size 18 - USED block at 2e6e0028 of size 136 - USED block at 2e6e00b0 of size 50 - USED block at 2e6e00e2 of size 50 - USED block at 2e6e0114 of size 50 - USED block at 2e6e0146 of size 50 - USED block at 2e6e0178 of size 50 - USED block at 2e6e01aa of size 50 - USED block at 2e6e01dc of size 50 - USED block at 2e6e020e of size 50 - USED block at 2e6e0240 of size 50 - USED block at 2e6e0272 of size 50 - USED block at 2e6e02a4 of size 50 - USED block at 2e6e02d6 of size 50 - USED block at 2e6e0308 of size 50 - USED block at 2e6e033a of size 14 - USED block at 2e6e0348 of size 20 - USED block at 2e6e035c of size 7328 + USED block at 2e5d0016 of size 18 + USED block at 2e5d0028 of size 50 + USED block at 2e5d005a of size 50 + USED block at 2e5d008c of size 50 + USED block at 2e5d00be of size 50 + USED block at 2e5d00f0 of size 50 + USED block at 2e5d0122 of size 50 + USED block at 2e5d0154 of size 50 + USED block at 2e5d0186 of size 50 + USED block at 2e5d01b8 of size 50 + USED block at 2e5d01ea of size 50 + USED block at 2e5d021c of size 50 + USED block at 2e5d024e of size 50 + USED block at 2e5d0280 of size 50 + USED block at 2e5d02b2 of size 14 + USED block at 2e5d02c0 of size 20 + USED block at 2e5d02d4 of size 136 + USED block at 2e5d035c of size 7328 OK - end of heap + +Memory Type Total Used Free +---------------- -------- -------- -------- +Default 8166 806 7360 +Near 2902 494 2408 +Far 8166 806 7360 +---------------- -------- -------- -------- +coreleft = 2406 +farcoreleft = 1400 +GetFreeSize = 64548 +GetNearFreeSize = 2408 +GetFarFreeSize = 64548 +memavl = 2406 +stackavail = 31519 diff --git a/src/lib/16_mm.c b/src/lib/16_mm.c index 7402bf2a..9a4ae187 100755 --- a/src/lib/16_mm.c +++ b/src/lib/16_mm.c @@ -940,8 +940,10 @@ void MM_Shutdown(global_game_variables_t *gvar) #ifdef __DEBUG__ if(!dbg_debugpm) { #endif +#ifndef __16_PM__ if(MML_CheckForEMS()){ MML_ShutdownEMS(gvar); }//printf(" EMS freed\n"); } if(MML_CheckForXMS()){ MML_ShutdownXMS(gvar); }//printf(" XMS freed\n"); } +#endif #ifdef __DEBUG__ } #endif diff --git a/src/lib/16_pm.c b/src/lib/16_pm.c index 3b37ec62..9cbed569 100755 --- a/src/lib/16_pm.c +++ b/src/lib/16_pm.c @@ -354,17 +354,15 @@ PML_ShutdownEMS(global_game_variables_t *gvar) boolean PML_StartupXMS(global_game_variables_t *gvar) { +//TODO: translate the _REG into working assembly //#define STARTUPXMSASM byte err; - #define BRACKETXMS word XMSAvail, XMSHandle; -#define XMSAVI XMSAvail -#define XMSHAN XMSHandle //++++ word XMSVer; boolean errorflag=false; word e=0; gvar->pm.xmm.XMSPresent = false; // Assume failure - XMSAVI = gvar->mmi.XMSmem = 0; + XMSAvail = gvar->mmi.XMSmem = 0; __asm { mov ax,0x4300 @@ -385,11 +383,7 @@ PML_StartupXMS(global_game_variables_t *gvar) #ifdef STARTUPXMSASM mov ah,XMS_QUERYFREE // Find out how much XMS is available call [DWORD PTR XMSDriver]//DWORD PTR -#ifndef BRACKETXMS - mov XMSAVI,ax -#else - mov [XMSAVI],ax -#endif + mov XMSAvail,ax or ax,ax // AJR: bugfix 10/8/92 jz error1 mov e,3 @@ -415,7 +409,7 @@ End1: if(errorflag==true) goto error; #ifndef STARTUPXMSASM XMS_CALL(XMS_QUERYFREE); // Find out how much XMS is available - XMSAVI = _AX; + XMSAvail = _AX; if (!_AX) // AJR: bugfix 10/8/92 { errorflag = true; @@ -427,28 +421,20 @@ End1: #ifdef __DEBUG_PM__ //++++ printf("XMSVer=%02X ", XMSVer); - printf("XMSAvail=%u\n", XMSAVI); + printf("XMSAvail=%u\n", XMSAvail); #endif - XMSAVI &= ~(PMPageSizeKB - 1); // Round off to nearest page size - if (XMSAVI < (PMPageSizeKB * 2)) // Need at least 2 pages + XMSAvail &= ~(PMPageSizeKB - 1); // Round off to nearest page size + if (XMSAvail < (PMPageSizeKB * 2)) // Need at least 2 pages { errorflag=true; goto error; } #ifdef STARTUPXMSASM __asm { -#ifndef BRACKETXMS - mov dx,XMSAVI -#else - mov dx,[XMSAVI] -#endif + mov dx,XMSAvail mov ah,XMS_ALLOC // And do the allocation call [DWORD PTR XMSDriver]//DWORD PTR -#ifndef BRACKETXMS - mov XMSHAN,dx -#else - mov [XMSHAN],dx -#endif + mov XMSHandle,dx or ax,ax // AJR: bugfix 10/8/92 jz error2 mov e,4 @@ -471,9 +457,9 @@ End2: } #endif #else - _DX = XMSAVI; + _DX = XMSAvail; XMS_CALL(XMS_ALLOC); // And do the allocation - XMSHAN = _DX; + XMSHandle = _DX; if (!_AX) // AJR: bugfix 10/8/92 { errorflag=true; @@ -485,13 +471,13 @@ End2: error: if(errorflag==false) { - gvar->mmi.XMSmem = (dword)(XMSAVI) * 1024; - gvar->pm.xmm.XMSAvail = XMSAVI; - gvar->pm.xmm.XMSHandle = XMSHAN; + gvar->mmi.XMSmem = (dword)(XMSAvail) * 1024; + gvar->pm.xmm.XMSAvail = XMSAvail; + gvar->pm.xmm.XMSHandle = XMSHandle; //++++ gvar->pm.xmm.XMSVer = XMSVer; gvar->pm.xmm.XMSPresent = true; #ifdef __DEBUG_PM__ - printf(" XMSmem=%lu XMSAvail=%u\n", gvar->mmi.XMSmem, XMSAVI); + printf(" XMSmem=%lu XMSAvail=%u\n", gvar->mmi.XMSmem, XMSAvail); #endif } else @@ -501,7 +487,7 @@ error: //printf(" 1=%u 2=%u 3=%u 4=%u\n", XMSHandle1, XMSHandle2, XMSHandle3, XMSHandle4); //printf(" 2=%u ", XMSHandle); //printf(" %u", gvar->pm.xmm.XMSHandle); - printf("err=%02X e=%u\n", err, e); + printf(" err=%02X e=%u\n", err, e); #endif } return(gvar->pm.xmm.XMSPresent); @@ -1565,7 +1551,7 @@ PM_Shutdown(global_game_variables_t *gvar) if (!gvar->pm.PMStarted) return; - PML_ClosePageFile(gvar); + //PML_ClosePageFile(gvar); PML_ShutdownMainMem(gvar); } diff --git a/src/vrstest.c b/src/vrstest.c index 5dd2ffef..ccf1e810 100755 --- a/src/vrstest.c +++ b/src/vrstest.c @@ -50,6 +50,9 @@ void main() { struct vrl_container *vrl; word w=0; + gvar.mm.mmstarted=0; + dbg_debugpm=1; + // DOSLIB: check our environment probe_dos(); @@ -73,7 +76,6 @@ void main() { //gvar.video.page[0]=modexDefaultPage(&gvar.video.page[0]); - gvar.mm.mmstarted=0; MM_Startup(&gvar); PM_Startup(&gvar); PM_UnlockMainMem(&gvar); @@ -141,7 +143,7 @@ void main() { t2 = (*clockw-start)/18.2; for (i = 0; i < 5; i++){ - spri.delay = 1; animate_spri(&spri); spri.x += 20; sleep(1); } + spri.delay = 1; animate_spri(&spri); spri.x += 20; /*sleep(1);*/ } while(!kbhit()) { @@ -158,6 +160,7 @@ void main() { VGAmodeX(0, 1, &gvar); MM_ShowMemory(&gvar); MM_DumpData(&gvar); + MM_Report_(&gvar); free(spri.sprite_vrl_cont); MM_FreePtr(&bigbuffer, &gvar); //MM_FreePtr(&((void __based(sega)*)spri.spritesheet->buffer), &mm); @@ -171,8 +174,8 @@ void main() { printf("version %s\n", VERSION); printf("t1: %f\n", t1); printf("t2: %f\n", t2); - printf("gvar.video.page[0].width: %u\n", gvar.video.page[0].width); - printf("gvar.video.page[0].height: %u\n", gvar.video.page[0].height); +//0000 printf("gvar.video.page[0].width: %u\n", gvar.video.page[0].width); +//0000 printf("gvar.video.page[0].height: %u\n", gvar.video.page[0].height); printf("Num %d", num_of_vrl); if(baka) printf("\nyay!\n"); else printf("\npoo!\n"); -- 2.39.5