delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/12/12/19:13:19

From: muller AT cerbere DOT u-strasbg DOT fr
Message-Id: <3.0.6.32.19991212231044.00928100@ics.u-strasbg.fr>
X-Sender: muller AT ics DOT u-strasbg DOT fr
X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.6 (32)
Date: Sun, 12 Dec 1999 23:10:44 +0100
To: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>, Peter Johnson <locke AT mcs DOT net>,
Pierre Muller <muller AT cerbere DOT u-strasbg DOT fr>
Subject: Re: NT4 DPMI BUG (303h, Allocate Real-Mode Callback)
Cc: djgpp AT delorie DOT com
In-Reply-To: <Pine.SUN.3.91.991212140216.19096U-100000@is>
References: <MPG DOT 12bbad46af52508b9896d9 AT news DOT cso DOT uiuc DOT edu>
Mime-Version: 1.0
Reply-To: djgpp AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

At 14:03 12/12/99 +0200, Eli Zaretskii wrote:
>
>On Sat, 11 Dec 1999, Peter Johnson wrote:
>
>> >   Having several different register structs has no point as 
>> > the values of the registers are only garantued inside the call !
>> > (See Ralph Brown Interrupt List !)
>> 
>> Unfortunately we cannot use this workaround without changing how the 
>> interface works (unless we just ignore the passed registers structure, 
>> which would be bad form, perhaps.. comments, Eli?).
>
>To tell the truth, I don't really understand Pierre's comment, so I
>cannot comment myself.
>
>Pierre, could you please clarify what did you refer to as ``having
>several different register structs''?


  I mean that I only reserved room for one such structure inside
the loader file (equivalent of crt0.S)
so all calls to 0x303 DPMI function must use the same 
register struct !
(But Ralph Brown interrupt list anyhow states
that the content of this struct should only be
examined inside the protected mode code itself !)

 So if you specify another struct defined elsewhere 
it will probably have an address > 0x10000 and thus WinNT
will write data at a wrong address ( true addr & 0xffff !!)
=> crash !

  This was simply to say that my solution was easier
because it had less overhead, but its less general also !

  I hope I was a little more clear, even if I am not really sure about it!

- Raw text -


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