Mail Archives: djgpp-workers/1996/11/17/06:52:52
On Sun, 17 Nov 1996, Bill Currie wrote:
> works fine. BUT, if I us a software interrupt instead, the computer
> locks up and requires a reset.
Do you know where exactly does it crash? Can it be that the crash is
after the INT call returns, and not in the handler? For instance, is it
safe to assume that FS stays the same across interrupts (you only call
_farsetsel once)? Another thing that I'm unsure of is the 32/16 bit
issue of the registers (such as EAX): what happens with the upper 16 bits
when you invoke Int 21h from protected mode is a total mystery to me.
> I've attaced my test code (which works perfectly under windows 3.11).
Windows is different: it acts as a DOS extender, catching Int 21h in
protected mode, changing some of the calls, handling others (like memory
allocations and such) and reflecting still others to real mode, whereas a
DPMI host merely reflects SW interrupts to RM. Can you try the code with
another DPMI host which isn't Windows (PMODE?) and see what happens?
- Raw text -