delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/03/10/11:07:56

Date: Mon, 10 Mar 1997 17:47:01 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: Andrew Crabtree <andrewc AT typhoon DOT rose DOT hp DOT com>
cc: Gisle Vanem <giva AT bgnett DOT no>, djgpp AT delorie DOT com
Subject: Re: RMCB Help
In-Reply-To: <199703101430.AA263944228@typhoon.rose.hp.com>
Message-ID: <Pine.SUN.3.91.970310173846.29057J-100000@is>
MIME-Version: 1.0

On Mon, 10 Mar 1997, Andrew Crabtree wrote:

> Originally I was using the go-32 functions, but after reading from the 
> faq and some of Eli's posts I decided the the dpmi ones were preferred
> for djgpp v2.x.

IMHO, this is a wrong decision.  The FAQ suggest to use the `_go32' 
functions first, in particular if your handler is written in C, until you 
have a working version.  Only then it advises to migrate your handler 
into assembly and use `__dpmi' functions.

> I couldn't get the go-32 functions working either.

You should have debugged the `_go32' version before switching to `__dpmi' 
variant.

> I checked my dpmi reference and it doesn't specify whether the callback has
> a retf or and iret but my assumption was a retf (anybody?).

When you use the `__dpmi' function, you get neither!  Your callback is 
supposed to do an iret.  I suggest you look at the sources of the 
`_go32_dpmi_allocate_real_mode_callback_iret' (in v2/djlsr201.zip, file 
src/libc/go32/gormcb.c) to see how is the assembly-level callback 
written.  Again, it is best to use the `_go32' functions first.

- Raw text -


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