Mail Archives: djgpp/2004/08/28/05:09:15
> From: David Winfrey <spammers DOT are AT coprophagous DOT com>
> Date: Fri, 27 Aug 2004 20:13:40 -0000
>
> I have written a small, simple hex editor. It works properly
> in a DOS box under Win98, compiled either with DJGPP or with
> Turbo C 2.01. In WinXP, the 16-bit Turbo C version works,
> but the DJGPP version displays a screenful of garbage. I
> suspect the problem is in the BIOS video interrupt interface.
> Is this a known problem? Does the latest DJGPP work properly
> with the Int 10h functions?
I suspect that your code invokes Int 10h in a way that is not
guaranteed to work under DPMI. Please see chapter 18 of the DJGPP FAQ
list (especially sections 18.1 and 18.2) for how to do that reliably,
and if that doesn't help, please post here your code that calls Int 10h.
In a nutshell, you should use __dpmi_int, not int86 or INT NN
instructions in inline assembly, to invoke real-mode services from a
DJGPP program.
- Raw text -