delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/11/02/08:02:21

Date: Sun, 2 Nov 1997 14:57:33 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: "Gurunandan R. Bhat" <grbhat AT unigoa DOT ernet DOT in>
cc: djgpp AT delorie DOT com
Subject: Re: Tracing the path of Software Interrupts
In-Reply-To: <Pine.LNX.3.91.971031015324.237A-100000@aditya.unigoa.ernet.in>
Message-ID: <Pine.SUN.3.91.971102145701.11098c-100000@is>
MIME-Version: 1.0

On Fri, 31 Oct 1997, Gurunandan R. Bhat wrote:

> 	When I do this for the software interrupt (0x1c) I get a result
> that to my **limited** understanding, is strange. It is always the real
> mode interrupt that is called. My buffer is strewn with 'r's. This is the
> same no matter which of the three DPMI hosts I use: cwsdpmi, cwsdpr0 or
> pmode/dj.

In what order did you install the handlers?  Was the RM one installed
before or after the PM one?

Also, you need to make sure your system switches to real-mode with
sufficient frequency, to see both handlers called.

> But when I run the same program in Windows 3.11, I get an
> alternating string of 'p' and 'r' like: prprpr...., *even* when I do not
> chain out of the protected mode handler.

That might be something special about Windows.  I'm not sure.

> The DPMI specs say that int 0x1c is special in that, it is
> always handled by the protected mode handler *even* when a real mode
> handler is installed.

That is correct, AFAIK.  Int 1Ch is handled like a hardware
interrupt in this sense.

- Raw text -


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