delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/03/28/23:38:41

Message-ID: <38E0DC7C.CE330DAB@corel.com>
Date: Tue, 28 Mar 2000 11:23:24 -0500
From: Jonathan Meunier <jonathanm AT corel DOT com>
X-Mailer: Mozilla 4.7 [en] (Win95; U)
X-Accept-Language: en
MIME-Version: 1.0
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Interrupt wrapper (was Re: keyboard interrupt)
References: <8bod7h$rj1$1 AT gxsn DOT com> <38DFBF98 DOT 8BEB44EB AT corel DOT com> <38DFE9E5 DOT 37B0F318 AT mtu-net DOT ru> <38E0B41D DOT 4046948D AT corel DOT com> <38E0BD61 DOT CF54CF91 AT mtu-net DOT ru>
NNTP-Posting-Host: 120.150.3.42
X-Trace: 28 Mar 2000 11:22:44 -0500, 120.150.3.42
Lines: 35
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Alexei A. Frounze" wrote:
> 
> Jonathan Meunier wrote:
> >
> > In this case, wouldn't the _go32_dpmi_allocate_iret_wrapper() wrapper
> > take care of this? I don't see why it shouldn't work...
> 
> I do not know. Btw, as a programmer that works with low-level stuff, I
> like clear stuff just like typical IRQ ISR. I.e. with saving registers,
> loading segments, performing I/O, acknowleging IRQ, returning back via
> IRET(D).

:)

> > (and to merge your other post)..
> > As for your wrapper source code you posted, I would like some
> > clarification.. What is ___djgpp_ds_alias? is it just some sort of
> > pointer to the data segment?
> 
> Yes, it's a variable where program's data selector is stored.
> 
> >
> > But what exactly is a wrapper; why do we need one?
> 
> I already answered this question... Since, DJGPP/GCC doesn't support
> definitions of Interrupt Service Routines (using "interrupt" reserved
> word or something similar) with register save/load, ... and IRET(D), we
> should do this with ASM. Clear?

Oh, sorry, I just thought a wrapper would do more than that.. well, it's
already doing enough (preventing program from potential crash).

Thanks for sharing your knowledge ;)
	.(Trancelucid).
	  .  Jaune  .

- Raw text -


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