X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=dosdemo;a=blobdiff_plain;f=src%2Fdos%2Fcdpmi.h;h=71138b6392a61ef21791a773e7a9e6b045d114b5;hp=4fc2c30e21b64120f8861438a645572b32a2bdf3;hb=102f82ec5a8128cb076371aa3d9821e684b94380;hpb=2c4602e53eaab44272ea5cd62667c939e6d2f61b diff --git a/src/dos/cdpmi.h b/src/dos/cdpmi.h index 4fc2c30..71138b6 100644 --- a/src/dos/cdpmi.h +++ b/src/dos/cdpmi.h @@ -3,7 +3,17 @@ #ifdef __DJGPP__ #include -#endif +#include + +#define virt_to_phys(v) ((v) + __djgpp_base_address) +#define phys_to_virt(p) ((p) - __djgpp_base_address) + +#else /* not djgpp (basically watcom) */ + +#define virt_to_phys(v) (v) +#define phys_to_virt(p) (p) + +#endif /* __DJGPP__ */ #include "inttypes.h" #include "util.h" @@ -34,7 +44,8 @@ void dpmi_munmap(void *addr); "xor ax, ax" \ "alloc_skip_err:" \ value[ax] \ - parm[ebx][edi]; + parm[ebx][edi] \ + modify[dx]; #pragma aux dpmi_free = \ "mov ax, 0x101" \ @@ -65,7 +76,7 @@ void dpmi_munmap(void *addr); "mov ax, cx" \ value[eax] \ parm[ebx][esi] \ - modify[cx di]; + modify[bx cx di esi]; #pragma aux dpmi_munmap = \ "mov ax, 0x801" \ @@ -73,7 +84,7 @@ void dpmi_munmap(void *addr); "shr ebx, 16" \ "int 0x31" \ parm[ebx] \ - modify[ax]; + modify[ax cx ebx]; #endif /* __WATCOMC__ */ #ifdef __DJGPP__