aboutsummaryrefslogtreecommitdiffstats
path: root/dpmi.h
diff options
context:
space:
mode:
authorJaroslav Hensl <jara@hensl.cz>2023-08-26 20:31:44 +0200
committerJaroslav Hensl <jara@hensl.cz>2023-08-26 20:31:44 +0200
commit313656bf15572becdb3c3ab2183fcd8a009ad2e8 (patch)
tree074831497877ecf851b82f8a04426f3cdc3e3fff /dpmi.h
parentfc27a94c851ac47687a9c4dd0ca50f47674fc223 (diff)
downloadvmdisp9x-313656bf15572becdb3c3ab2183fcd8a009ad2e8.tar.gz
SVGA: HW cursor (enabled by default)
Diffstat (limited to 'dpmi.h')
-rw-r--r--dpmi.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/dpmi.h b/dpmi.h
index aab6467..4d838fb 100644
--- a/dpmi.h
+++ b/dpmi.h
@@ -56,8 +56,18 @@ extern DWORD DPMI_AllocMemBlk(DWORD Size);
"alloc_ok:" \
"mov dx, bx" \
"mov ax, cx" \
- parm [cx bx] modify [di si];
-
+ parm [cx bx] modify [ax di si];
+
+extern WORD DPMI_FreeMemBlk(DWORD ptr);
+#pragma aux DPMI_FreeMemBlk = \
+ "xchg di, si" \
+ "mov ax, 502h" \
+ "int 31h" \
+ "jc free_error" \
+ "xor ax, ax" \
+ "free_error:" \
+ parm [di si] modify [ax];
+
static DWORD DPMI_AllocLinBlk_LinAddress = 0;
static DWORD DPMI_AllocLinBlk_MHandle = 0;