delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2004/04/12/08:00:30

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
From: Hans-Bernhard Broeker <broeker AT physik DOT rwth-aachen DOT de>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Interrupt handler question
Date: 12 Apr 2004 11:49:46 GMT
Organization: Aachen University of Technology (RWTH)
Lines: 23
Message-ID: <c5dvoq$dgq$2@nets3.rz.RWTH-Aachen.DE>
References: <84e4e2a9 DOT 0404102155 DOT 6533748 AT posting DOT google DOT com> <c5be5c$phh$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE> <84e4e2a9 DOT 0404111901 DOT 1c450a96 AT posting DOT google DOT com>
NNTP-Posting-Host: accip02.physik.rwth-aachen.de
X-Trace: nets3.rz.RWTH-Aachen.DE 1081770586 13850 137.226.33.41 (12 Apr 2004 11:49:46 GMT)
X-Complaints-To: abuse AT rwth-aachen DOT de
NNTP-Posting-Date: 12 Apr 2004 11:49:46 GMT
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Joel <jbs30000 AT aol DOT com> wrote:

> Now, I hook a real mode interrupt and my routine is called.  Now say,
> at a certain point, I want the old handler called.  I could try this:
> _go32_set_real_mode_interrupt_vector(Interrupt Number, &OldInt);
> Set the dpmi reg struct as needed
> _dpmi_int(Interrupt Number, &r);

Depends on where you do this from.  Doing this from inside the
"NewInt" handler function itself is almost certainly a no-no.
Interrupts, or more particularly their handling routines, aren't
generally reentrant.

Generally speaking there's a limit as to what you can do in this area
using C code.  You'll have to revert to assembly sooner or later, at
least for the "outer layers", i.e. the routines actually registered as
interrupt handlers.  C code can be called from there if you're
careful.


-- 
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.

- Raw text -


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