Date: Sat, 23 Apr 94 19:58:10 -0400 From: dj AT ctron DOT com (DJ Delorie) To: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: interrupts Well, I got real-mode callbacks to be reliable. In fact, there more reliable than protected mode interrupts at the moment. I tried my best to ensure that the interrupt controller state was preserved as best as I could and fixed the ds_tmpds bug posted. Now, however, if I switch back to testing protected mode interrupts (go32/vcpi mode) after a few interrupts if I try to do printf() I get "Divide error" and "Null Pointer Assignment" from go32. Sometimes it just hangs. Sometimes it re-execs go32 with no arguments (or jumps into main again with a bogus stack). The routine is hooking the IDT directly, so DS should be the same as SS. DPMISIM is setting up the thunk correctly (I like using gdb!). The routines that get called have no local variables (there are only two). Anyone have any ideas? This is the last of the interrupt problems; it works correctly in DPMI mode for both real-mode callbacks and protected-mode interrupt handlers. These are hardware interrupts, BTW. DJ