From bd35bd7d97646cc726bd40cc54c9a158af008b4d Mon Sep 17 00:00:00 2001 From: sparky4 <sparky4@cock.li> Date: Tue, 4 Oct 2016 12:40:11 -0500 Subject: [PATCH] VRSTEST.EXE NOW USES PAGE MANAGER! wwww --- DEBUG.16W | 216 ++++++++++++++++++++++----------------------- HEAP.16W | 90 +++++++++---------- src/lib/16_mm.c | 2 +- src/lib/16_mm.h | 1 + src/lib/16_pm.c | 22 ++--- src/lib/typdefst.h | 2 +- 6 files changed, 168 insertions(+), 165 deletions(-) diff --git a/DEBUG.16W b/DEBUG.16W index 1b6087e1..8aacb645 100755 --- a/DEBUG.16W +++ b/DEBUG.16W @@ -1,210 +1,210 @@ -[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 +[0mSeg:0 Size:11723 Owner:0x0 +[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m[42;32m000 +[0m[0mSeg:2e40 Size:36 Owner:0x0 +[41;31m+[0m[42;32m +[0m[0mSeg:2e64 Size:256 Owner:0x1988 [44;34m++++[0m[42;32m -[0m[0mSeg:2f5f Size:256 Owner:0x1776 +[0m[0mSeg:2f64 Size:256 Owner:0x1776 [45;35m++++[0m[42;32m -[0m[0mSeg:305f Size:256 Owner:0x1778 -[45;35m++++[0m[42;32m -[0m[0mSeg:315f Size:256 Owner:0x177a +[0m[0mSeg:3064 Size:256 Owner:0x1778 [45;35m+++++[0m[42;32m -[0m[0mSeg:325f Size:256 Owner:0x177c +[0m[0mSeg:3164 Size:256 Owner:0x177a [45;35m++++[0m[42;32m -[0m[0mSeg:335f Size:256 Owner:0x177e +[0m[0mSeg:3264 Size:256 Owner:0x177c [45;35m++++[0m[42;32m -[0m[0mSeg:345f Size:256 Owner:0x1780 +[0m[0mSeg:3364 Size:256 Owner:0x177e [45;35m++++[0m[42;32m -[0m[0mSeg:355f Size:256 Owner:0x1782 +[0m[0mSeg:3464 Size:256 Owner:0x1780 [45;35m++++[0m[42;32m -[0m[0mSeg:365f Size:256 Owner:0x1784 +[0m[0mSeg:3564 Size:256 Owner:0x1782 [45;35m+++++[0m[42;32m -[0m[0mSeg:375f Size:256 Owner:0x1786 +[0m[0mSeg:3664 Size:256 Owner:0x1784 [45;35m++++[0m[42;32m -[0m[0mSeg:385f Size:256 Owner:0x1788 +[0m[0mSeg:3764 Size:256 Owner:0x1786 [45;35m++++[0m[42;32m -[0m[0mSeg:395f Size:256 Owner:0x178a +[0m[0mSeg:3864 Size:256 Owner:0x1788 [45;35m++++[0m[42;32m -[0m[0mSeg:3a5f Size:256 Owner:0x178c +[0m[0mSeg:3964 Size:256 Owner:0x178a [45;35m++++[0m[42;32m -[0m[0mSeg:3b5f Size:256 Owner:0x178e +[0m[0mSeg:3a64 Size:256 Owner:0x178c [45;35m+++++[0m[42;32m -[0m[0mSeg:3c5f Size:256 Owner:0x1790 +[0m[0mSeg:3b64 Size:256 Owner:0x178e [45;35m++++[0m[42;32m -[0m[0mSeg:3d5f Size:256 Owner:0x1792 +[0m[0mSeg:3c64 Size:256 Owner:0x1790 [45;35m++++[0m[42;32m -[0m[0mSeg:3e5f Size:256 Owner:0x1794 +[0m[0mSeg:3d64 Size:256 Owner:0x1792 [45;35m++++[0m[42;32m -[0m[0mSeg:3f5f Size:256 Owner:0x1796 +[0m[0mSeg:3e64 Size:256 Owner:0x1794 [45;35m++++[0m[42;32m -[0m[0mSeg:405f Size:256 Owner:0x1798 +[0m[0mSeg:3f64 Size:256 Owner:0x1796 [45;35m+++++[0m[42;32m -[0m[0mSeg:415f Size:256 Owner:0x179a +[0m[0mSeg:4064 Size:256 Owner:0x1798 [45;35m++++[0m[42;32m -[0m[0mSeg:425f Size:256 Owner:0x179c +[0m[0mSeg:4164 Size:256 Owner:0x179a [45;35m++++[0m[42;32m -[0m[0mSeg:435f Size:256 Owner:0x179e +[0m[0mSeg:4264 Size:256 Owner:0x179c [45;35m++++[0m[42;32m -[0m[0mSeg:445f Size:256 Owner:0x17a0 +[0m[0mSeg:4364 Size:256 Owner:0x179e [45;35m++++[0m[42;32m -[0m[0mSeg:455f Size:256 Owner:0x17a2 +[0m[0mSeg:4464 Size:256 Owner:0x17a0 [45;35m+++++[0m[42;32m -[0m[0mSeg:465f Size:256 Owner:0x17a4 +[0m[0mSeg:4564 Size:256 Owner:0x17a2 [45;35m++++[0m[42;32m -[0m[0mSeg:475f Size:256 Owner:0x17a6 +[0m[0mSeg:4664 Size:256 Owner:0x17a4 [45;35m++++[0m[42;32m -[0m[0mSeg:485f Size:256 Owner:0x17a8 +[0m[0mSeg:4764 Size:256 Owner:0x17a6 [45;35m++++[0m[42;32m -[0m[0mSeg:495f Size:256 Owner:0x17aa +[0m[0mSeg:4864 Size:256 Owner:0x17a8 [45;35m++++[0m[42;32m -[0m[0mSeg:4a5f Size:256 Owner:0x17ac +[0m[0mSeg:4964 Size:256 Owner:0x17aa [45;35m+++++[0m[42;32m -[0m[0mSeg:4b5f Size:256 Owner:0x17ae +[0m[0mSeg:4a64 Size:256 Owner:0x17ac [45;35m++++[0m[42;32m -[0m[0mSeg:4c5f Size:256 Owner:0x17b0 +[0m[0mSeg:4b64 Size:256 Owner:0x17ae [45;35m++++[0m[42;32m -[0m[0mSeg:4d5f Size:256 Owner:0x17b2 +[0m[0mSeg:4c64 Size:256 Owner:0x17b0 [45;35m++++[0m[42;32m -[0m[0mSeg:4e5f Size:256 Owner:0x17b4 +[0m[0mSeg:4d64 Size:256 Owner:0x17b2 [45;35m++++[0m[42;32m -[0m[0mSeg:4f5f Size:256 Owner:0x17b6 +[0m[0mSeg:4e64 Size:256 Owner:0x17b4 [45;35m+++++[0m[42;32m -[0m[0mSeg:505f Size:256 Owner:0x17b8 +[0m[0mSeg:4f64 Size:256 Owner:0x17b6 [45;35m++++[0m[42;32m -[0m[0mSeg:515f Size:256 Owner:0x17ba +[0m[0mSeg:5064 Size:256 Owner:0x17b8 [45;35m++++[0m[42;32m -[0m[0mSeg:525f Size:256 Owner:0x17bc +[0m[0mSeg:5164 Size:256 Owner:0x17ba [45;35m++++[0m[42;32m -[0m[0mSeg:535f Size:256 Owner:0x17be +[0m[0mSeg:5264 Size:256 Owner:0x17bc [45;35m++++[0m[42;32m -[0m[0mSeg:545f Size:256 Owner:0x17c0 +[0m[0mSeg:5364 Size:256 Owner:0x17be [45;35m+++++[0m[42;32m -[0m[0mSeg:555f Size:256 Owner:0x17c2 +[0m[0mSeg:5464 Size:256 Owner:0x17c0 [45;35m++++[0m[42;32m -[0m[0mSeg:565f Size:256 Owner:0x17c4 +[0m[0mSeg:5564 Size:256 Owner:0x17c2 [45;35m++++[0m[42;32m -[0m[0mSeg:575f Size:256 Owner:0x17c6 +[0m[0mSeg:5664 Size:256 Owner:0x17c4 [45;35m++++[0m[42;32m -[0m[0mSeg:585f Size:256 Owner:0x17c8 +[0m[0mSeg:5764 Size:256 Owner:0x17c6 [45;35m++++[0m[42;32m -[0m[0mSeg:595f Size:256 Owner:0x17ca +[0m[0mSeg:5864 Size:256 Owner:0x17c8 [45;35m+++++[0m[42;32m -[0m[0mSeg:5a5f Size:256 Owner:0x17cc +[0m[0mSeg:5964 Size:256 Owner:0x17ca [45;35m++++[0m[42;32m -[0m[0mSeg:5b5f Size:256 Owner:0x17ce +[0m[0mSeg:5a64 Size:256 Owner:0x17cc [45;35m++++[0m[42;32m -[0m[0mSeg:5c5f Size:256 Owner:0x17d0 +[0m[0mSeg:5b64 Size:256 Owner:0x17ce [45;35m++++[0m[42;32m -[0m[0mSeg:5d5f Size:256 Owner:0x17d2 +[0m[0mSeg:5c64 Size:256 Owner:0x17d0 [45;35m++++[0m[42;32m -[0m[0mSeg:5e5f Size:256 Owner:0x17d4 +[0m[0mSeg:5d64 Size:256 Owner:0x17d2 [45;35m+++++[0m[42;32m -[0m[0mSeg:5f5f Size:256 Owner:0x17d6 +[0m[0mSeg:5e64 Size:256 Owner:0x17d4 [45;35m++++[0m[42;32m -[0m[0mSeg:605f Size:256 Owner:0x17d8 +[0m[0mSeg:5f64 Size:256 Owner:0x17d6 [45;35m++++[0m[42;32m -[0m[0mSeg:615f Size:256 Owner:0x17da +[0m[0mSeg:6064 Size:256 Owner:0x17d8 [45;35m++++[0m[42;32m -[0m[0mSeg:625f Size:256 Owner:0x17dc +[0m[0mSeg:6164 Size:256 Owner:0x17da [45;35m++++[0m[42;32m -[0m[0mSeg:635f Size:256 Owner:0x17de +[0m[0mSeg:6264 Size:256 Owner:0x17dc [45;35m+++++[0m[42;32m -[0m[0mSeg:645f Size:256 Owner:0x17e0 +[0m[0mSeg:6364 Size:256 Owner:0x17de [45;35m++++[0m[42;32m -[0m[0mSeg:655f Size:256 Owner:0x17e2 +[0m[0mSeg:6464 Size:256 Owner:0x17e0 [45;35m++++[0m[42;32m -[0m[0mSeg:665f Size:256 Owner:0x17e4 +[0m[0mSeg:6564 Size:256 Owner:0x17e2 [45;35m++++[0m[42;32m -[0m[0mSeg:675f Size:256 Owner:0x17e6 +[0m[0mSeg:6664 Size:256 Owner:0x17e4 [45;35m++++[0m[42;32m -[0m[0mSeg:685f Size:256 Owner:0x17e8 +[0m[0mSeg:6764 Size:256 Owner:0x17e6 [45;35m+++++[0m[42;32m -[0m[0mSeg:695f Size:256 Owner:0x17ea +[0m[0mSeg:6864 Size:256 Owner:0x17e8 [45;35m++++[0m[42;32m -[0m[0mSeg:6a5f Size:256 Owner:0x17ec +[0m[0mSeg:6964 Size:256 Owner:0x17ea [45;35m++++[0m[42;32m -[0m[0mSeg:6b5f Size:256 Owner:0x17ee +[0m[0mSeg:6a64 Size:256 Owner:0x17ec [45;35m++++[0m[42;32m -[0m[0mSeg:6c5f Size:256 Owner:0x17f0 +[0m[0mSeg:6b64 Size:256 Owner:0x17ee [45;35m++++[0m[42;32m -[0m[0mSeg:6d5f Size:256 Owner:0x17f2 +[0m[0mSeg:6c64 Size:256 Owner:0x17f0 [45;35m+++++[0m[42;32m -[0m[0mSeg:6e5f Size:256 Owner:0x17f4 +[0m[0mSeg:6d64 Size:256 Owner:0x17f2 [45;35m++++[0m[42;32m -[0m[0mSeg:6f5f Size:256 Owner:0x17f6 +[0m[0mSeg:6e64 Size:256 Owner:0x17f4 [45;35m++++[0m[42;32m -[0m[0mSeg:705f Size:256 Owner:0x17f8 +[0m[0mSeg:6f64 Size:256 Owner:0x17f6 [45;35m++++[0m[42;32m -[0m[0mSeg:715f Size:256 Owner:0x17fa +[0m[0mSeg:7064 Size:256 Owner:0x17f8 [45;35m++++[0m[42;32m -[0m[0mSeg:725f Size:256 Owner:0x17fc +[0m[0mSeg:7164 Size:256 Owner:0x17fa [45;35m+++++[0m[42;32m -[0m[0mSeg:735f Size:256 Owner:0x17fe +[0m[0mSeg:7264 Size:256 Owner:0x17fc [45;35m++++[0m[42;32m -[0m[0mSeg:745f Size:256 Owner:0x1800 +[0m[0mSeg:7364 Size:256 Owner:0x17fe [45;35m++++[0m[42;32m -[0m[0mSeg:755f Size:256 Owner:0x1802 +[0m[0mSeg:7464 Size:256 Owner:0x1800 [45;35m++++[0m[42;32m -[0m[0mSeg:765f Size:256 Owner:0x1804 +[0m[0mSeg:7564 Size:256 Owner:0x1802 [45;35m++++[0m[42;32m -[0m[0mSeg:775f Size:256 Owner:0x1806 +[0m[0mSeg:7664 Size:256 Owner:0x1804 [45;35m+++++[0m[42;32m -[0m[0mSeg:785f Size:256 Owner:0x1808 +[0m[0mSeg:7764 Size:256 Owner:0x1806 [45;35m++++[0m[42;32m -[0m[0mSeg:795f Size:256 Owner:0x180a +[0m[0mSeg:7864 Size:256 Owner:0x1808 [45;35m++++[0m[42;32m -[0m[0mSeg:7a5f Size:256 Owner:0x180c +[0m[0mSeg:7964 Size:256 Owner:0x180a [45;35m++++[0m[42;32m -[0m[0mSeg:7b5f Size:256 Owner:0x180e +[0m[0mSeg:7a64 Size:256 Owner:0x180c [45;35m++++[0m[42;32m -[0m[0mSeg:7c5f Size:256 Owner:0x1810 +[0m[0mSeg:7b64 Size:256 Owner:0x180e [45;35m+++++[0m[42;32m -[0m[0mSeg:7d5f Size:256 Owner:0x1812 +[0m[0mSeg:7c64 Size:256 Owner:0x1810 [45;35m++++[0m[42;32m -[0m[0mSeg:7e5f Size:256 Owner:0x1814 +[0m[0mSeg:7d64 Size:256 Owner:0x1812 [45;35m++++[0m[42;32m -[0m[0mSeg:7f5f Size:256 Owner:0x1816 +[0m[0mSeg:7e64 Size:256 Owner:0x1814 [45;35m++++[0m[42;32m -[0m[0mSeg:805f Size:256 Owner:0x1818 +[0m[0mSeg:7f64 Size:256 Owner:0x1816 [45;35m++++[0m[42;32m -[0m[0mSeg:815f Size:256 Owner:0x181a +[0m[0mSeg:8064 Size:256 Owner:0x1818 [45;35m+++++[0m[42;32m -[0m[0mSeg:825f Size:256 Owner:0x181c +[0m[0mSeg:8164 Size:256 Owner:0x181a [45;35m++++[0m[42;32m -[0m[0mSeg:835f Size:256 Owner:0x181e +[0m[0mSeg:8264 Size:256 Owner:0x181c [45;35m++++[0m[42;32m -[0m[0mSeg:845f Size:256 Owner:0x1820 +[0m[0mSeg:8364 Size:256 Owner:0x181e [45;35m++++[0m[42;32m -[0m[0mSeg:855f Size:256 Owner:0x1822 +[0m[0mSeg:8464 Size:256 Owner:0x1820 [45;35m++++[0m[42;32m -[0m[0mSeg:865f Size:256 Owner:0x1824 +[0m[0mSeg:8564 Size:256 Owner:0x1822 [45;35m+++++[0m[42;32m -[0m[0mSeg:875f Size:256 Owner:0x1826 +[0m[0mSeg:8664 Size:256 Owner:0x1824 [45;35m++++[0m[42;32m -[0m[0mSeg:885f Size:256 Owner:0x1828 +[0m[0mSeg:8764 Size:256 Owner:0x1826 [45;35m++++[0m[42;32m -[0m[0mSeg:895f Size:256 Owner:0x182a +[0m[0mSeg:8864 Size:256 Owner:0x1828 [45;35m++++[0m[42;32m -[0m[0mSeg:8a5f Size:256 Owner:0x182c +[0m[0mSeg:8964 Size:256 Owner:0x182a [45;35m++++[0m[42;32m -[0m[0mSeg:8b5f Size:256 Owner:0x182e +[0m[0mSeg:8a64 Size:256 Owner:0x182c [45;35m+++++[0m[42;32m -[0m[0mSeg:8c5f Size:256 Owner:0x1830 +[0m[0mSeg:8b64 Size:256 Owner:0x182e [45;35m++++[0m[42;32m -[0m[0mSeg:8d5f Size:256 Owner:0x1832 +[0m[0mSeg:8c64 Size:256 Owner:0x1830 [45;35m++++[0m[42;32m -[0m[0mSeg:8e5f Size:256 Owner:0x1834 +[0m[0mSeg:8d64 Size:256 Owner:0x1832 [45;35m++++[0m[42;32m -[0m[0mSeg:8f5f Size:256 Owner:0x1836 +[0m[0mSeg:8e64 Size:256 Owner:0x1834 [45;35m++++[0m[42;32m -[0m[0mSeg:905f Size:256 Owner:0x1838 +[0m[0mSeg:8f64 Size:256 Owner:0x1836 [45;35m+++++[0m[42;32m -[0m[0mSeg:915f Size:256 Owner:0x183a +[0m[0mSeg:9064 Size:256 Owner:0x1838 +[45;35m++++[0m[42;32m +[0m[0mSeg:9164 Size:256 Owner:0x183a [45;35m++++[0m[42;32m -[0m[0mSeg:925f Size:256 Owner:0x183c +[0m[0mSeg:9264 Size:256 Owner:0x183c [45;35m++++[0m[42;32m -[0m[0mSeg:935f Size:401 Owner:0xf45a +[0m[0mSeg:9364 Size:401 Owner:0xf45a [44;34m++++++[0m[42;32m -[0m[0mSeg:be5f Size:16800 Owner:0x0 +[0m[0mSeg:be64 Size:16795 Owner:0x0 [41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++[0m \ No newline at end of file diff --git a/HEAP.16W b/HEAP.16W index f4d0768f..30e6db25 100755 --- a/HEAP.16W +++ b/HEAP.16W @@ -1,59 +1,59 @@ == default == - 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 + FREE block at 2e620016 of size 18 + USED block at 2e620028 of size 50 + USED block at 2e62005a of size 50 + USED block at 2e62008c of size 50 + USED block at 2e6200be of size 50 + USED block at 2e6200f0 of size 50 + USED block at 2e620122 of size 50 + USED block at 2e620154 of size 50 + USED block at 2e620186 of size 50 + USED block at 2e6201b8 of size 50 + USED block at 2e6201ea of size 50 + USED block at 2e62021c of size 50 + USED block at 2e62024e of size 50 + USED block at 2e620280 of size 50 + FREE block at 2e6202b2 of size 14 + USED block at 2e6202c0 of size 20 + USED block at 2e6202d4 of size 136 + FREE block at 2e62035c of size 7328 OK - end of heap == near == - 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 + USED block at 1e61f4a6 of size 12 + USED block at 1e61f4b2 of size 330 + USED block at 1e61f5fc of size 52 + USED block at 1e61f630 of size 20 + USED block at 1e61f644 of size 20 + USED block at 1e61f658 of size 20 + USED block at 1e61f66c of size 20 + USED block at 1e61f680 of size 20 + USED block at 1e61f694 of size 2408 OK - end of heap == far == - 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 + USED block at 2e620016 of size 18 + USED block at 2e620028 of size 50 + USED block at 2e62005a of size 50 + USED block at 2e62008c of size 50 + USED block at 2e6200be of size 50 + USED block at 2e6200f0 of size 50 + USED block at 2e620122 of size 50 + USED block at 2e620154 of size 50 + USED block at 2e620186 of size 50 + USED block at 2e6201b8 of size 50 + USED block at 2e6201ea of size 50 + USED block at 2e62021c of size 50 + USED block at 2e62024e of size 50 + USED block at 2e620280 of size 50 + USED block at 2e6202b2 of size 14 + USED block at 2e6202c0 of size 20 + USED block at 2e6202d4 of size 136 + USED block at 2e62035c of size 7328 OK - end of heap Memory Type Total Used Free diff --git a/src/lib/16_mm.c b/src/lib/16_mm.c index 9a4ae187..9c8bcdbe 100755 --- a/src/lib/16_mm.c +++ b/src/lib/16_mm.c @@ -1627,7 +1627,7 @@ void MM_Report_(global_game_variables_t *gvar) if(MML_CheckForXMS()) { printf(" %cXMS %u\n", 0xC9, gvar->pm.xmm.XMSPresent); -//++++ printf(" XMS v%x.%x available\n", gvar->pm.xmm.XMSVer>>4,gvar->pm.xmm.XMSVer&0x0F); + printf(" %c%cXMS v%x.%x available\n", 0xC7, 0xC4, XMSVer>>8,XMSVer&0x0F); printf(" %c%cXMSDriver: %Fp\n", 0xC7, 0xC4, XMSDriver); printf(" %c%cXMSHandle: %04x\n", 0xC7, 0xC4, gvar->pm.xmm.XMSHandle); printf(" %c%cXMSmem: %lu\n", 0xD3, 0xC4, gvar->mmi.XMSmem); diff --git a/src/lib/16_mm.h b/src/lib/16_mm.h index f7927dbc..2a344aee 100755 --- a/src/lib/16_mm.h +++ b/src/lib/16_mm.h @@ -107,6 +107,7 @@ extern void (* beforesort) (void); extern void (* aftersort) (void); extern void (* XMSaddr) (void); // far pointer to XMS driver extern dword XMSDriver; +extern word XMSVer; //========================================================================== diff --git a/src/lib/16_pm.c b/src/lib/16_pm.c index 9cbed569..ff997f7d 100755 --- a/src/lib/16_pm.c +++ b/src/lib/16_pm.c @@ -48,7 +48,8 @@ boolean dbg_debugpm=0; // XMS specific variables //boolean XMSPresent; //word gvar->pm.xmm.XMSAvail,gvar->pm.xmm.XMSPagesAvail,gvar->pm.xmm.XMSHandle; - dword XMSDriver; + dword XMSDriver; //hard to put in gvar + word XMSVer; //hard to put in gvar /* int gvar->pm.xmm.XMSProtectPage = -1; // File specific variables @@ -357,8 +358,7 @@ PML_StartupXMS(global_game_variables_t *gvar) //TODO: translate the _REG into working assembly //#define STARTUPXMSASM byte err; - word XMSAvail, XMSHandle; -//++++ word XMSVer; + word XMSAvail, XMSHandle;//, XMSVer; boolean errorflag=false; word e=0; gvar->pm.xmm.XMSPresent = false; // Assume failure @@ -375,14 +375,15 @@ PML_StartupXMS(global_game_variables_t *gvar) int XMS_INT // Get address of XMS driver mov [WORD PTR XMSDriver],bx mov [WORD PTR XMSDriver+2],es // function pointer to XMS driver -//++++ mov ah,0 -//++++ call [DWORD PTR XMSDriver] //; Get XMS Version Number -//++++ mov [XMSVer],ax + + mov ah,XMS_VERSION + call [DWORD PTR XMSDriver] //; Get XMS Version Number + mov [XMSVer],ax mov e,2 #ifdef STARTUPXMSASM mov ah,XMS_QUERYFREE // Find out how much XMS is available - call [DWORD PTR XMSDriver]//DWORD PTR + call [DWORD PTR XMSDriver] mov XMSAvail,ax or ax,ax // AJR: bugfix 10/8/92 jz error1 @@ -420,8 +421,9 @@ End1: #endif #ifdef __DEBUG_PM__ -//++++ printf("XMSVer=%02X ", XMSVer); + printf("XMSVer=%02X ", XMSVer); printf("XMSAvail=%u\n", XMSAvail); + getch(); #endif XMSAvail &= ~(PMPageSizeKB - 1); // Round off to nearest page size if (XMSAvail < (PMPageSizeKB * 2)) // Need at least 2 pages @@ -433,7 +435,7 @@ End1: __asm { mov dx,XMSAvail mov ah,XMS_ALLOC // And do the allocation - call [DWORD PTR XMSDriver]//DWORD PTR + call [DWORD PTR XMSDriver] mov XMSHandle,dx or ax,ax // AJR: bugfix 10/8/92 jz error2 @@ -474,7 +476,7 @@ error: gvar->mmi.XMSmem = (dword)(XMSAvail) * 1024; gvar->pm.xmm.XMSAvail = XMSAvail; gvar->pm.xmm.XMSHandle = XMSHandle; -//++++ gvar->pm.xmm.XMSVer = XMSVer; + //gvar->pm.xmm.XMSVer = XMSVer; gvar->pm.xmm.XMSPresent = true; #ifdef __DEBUG_PM__ printf(" XMSmem=%lu XMSAvail=%u\n", gvar->mmi.XMSmem, XMSAvail); diff --git a/src/lib/typdefst.h b/src/lib/typdefst.h index 6c5ca4e3..5668dda5 100755 --- a/src/lib/typdefst.h +++ b/src/lib/typdefst.h @@ -257,7 +257,7 @@ typedef struct typedef struct { boolean XMSPresent; - word XMSAvail,XMSPagesAvail,XMSHandle;//++++,XMSVer; + word XMSAvail,XMSPagesAvail,XMSHandle;//,XMSVer; dword XMSDriver; int XMSProtectPage;// = -1; } pm_xmmi_t; -- 2.39.5