Mail Archives: djgpp/2003/07/22/08:13:18
> From: "Keonwoo Kim" <sosaria AT freechal DOT com>
> Newsgroups: comp.os.msdos.djgpp
> Date: Tue, 22 Jul 2003 11:18:29 +0900
>
> hi. I could know what is matter.
> under Windows 98, DPMI server assume the address is linear.
It's not the DPMI server that assumes this, it's the DOS extender
built into Windows. Plain DOS doesn't have a DOS extender, thus the
difference.
The problem is that you issue INT 25h as a real-mode procedure.
Instead, I think it's much easier to use __dpmi_int to invoke 25h.
Why didn't you do that in the first place?
> my program should work under msdos and windows. so
> i should know vandor of dpmi server which it use.
> --- how can i know this?
I don't think your program needs to know that, if you change the code
as mentioned above. But anyhow, the function __dpmi_get_capabilities,
if supported by the DPMI server, returns the vendor ID. Alternatively,
simply detect Windows (using Int 2Fh, AX=17xx) and assume the DPMI is
the one bundled with Windows.
- Raw text -