Mail Archives: djgpp/1994/12/20/13:32:23
> the old version used the _go32_dpmi_set_protected_mode_vecter, ... routines
> to install the keyboard handler - but when i issued a [CRTL]+[C] or a
> [CRTL]+[BRK], i got the usual termination that go32.exe gives you :
>
> earlier today i edited the routines a bit - optimized them further and used
> the _go32_dpmi_set_real_mode_interrupt_vector(),... etc. routines.
> now the blasted things works ? how is that so ? does anyone have any idea
Under GO32, hooking protected mode interrupts will only call your routine if
the interrupt occured in protected mode. If the interrupt occurs in real
mode (during any call to DOS, for example) it would not be seen. Under
real DPMI, all HW interrupts are reflected back to you in protected mode,
even if they occured in real mode.
Since PM interrupt are reflected to RM if not handled there, setting the
real mode interrupt vector would always catch them all.
- Raw text -