www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/02/17/21:56:19

From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <9702180232.AA13949@clio.rice.edu>
Subject: Re: For DOSEMU users - djgpp and ^C troubles
To: eliz AT is DOT elta DOT co DOT il (Eli Zaretskii)
Date: Mon, 17 Feb 1997 20:32:54 -0600 (CST)
Cc: alberto DOT vignani AT torino DOT alpcom DOT it, djgpp AT delorie DOT com
In-Reply-To: <Pine.SUN.3.91.970217111554.17765D-100000@is> from "Eli Zaretskii" at Feb 17, 97 11:16:47 am

> > Can someone (Eli?) enlighten me on what's going on when you press ^C?
> > This doesn't happen with ^C; on the dosemu side, I have currently to rely
> > on the stack fault to understand what went on.

When you press ^C, the DS/SS selector is invalidated.  If the DPMI provider
follows the DPMI spec, this isn't a problem, since the simulated HW interrupt
and resulting exception will be handled on a separate stack, which then fixes 
the selector.

> I think this is a bug in DOSEmu.  

Most likely.  Bugs also exist (documented and by design) in the ring 0 DPMI
providers which don't swap stacks on HW interrupts and exceptions (CWSDPR0 and 
PMODE).  These show bad behavior under ^C also.

- Raw text -


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