www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1994/11/29/18:43:02

From: Charles Sandmann <sandmann AT new-orleans DOT NeoSoft DOT com>
Subject: Re: Interrupts
To: nigel AT algor DOT co DOT uk (Nigel Stephens)
Date: Tue, 29 Nov 1994 11:48:45 -0600 (CST)
Cc: dj AT stealth DOT ctron DOT com, djgpp AT sun DOT soe DOT clarkson DOT edu, trav AT clark DOT edu

>  > One other problem is that you can't do anything in a real mode
>  > callback (or interrupt) that might cause a mode switch.  Basically,
>  > you can do integer math and maybe call a function or two - it's pretty
>  > limited.  It may work sometimes, but it's not guaranteed.
> 
> What happens if the real-mode callback/interrupt handler page faults?  

There is some confusion here because of GO32 limitations in DPMI 
emulation, and DPMI uses a different stack (which causes GCC problems unless
you switch off of it).  If the real mode callback is connected from a 
hardware interrupt, a page fault is fatal.

Get the DPMI spec and read it, look at the code in DPMI.C to see what 
the wrapper functions do.  I can't remember which cases we transparently
handle and which ones actually work.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019