delorie.com/archives/browse.cgi | search |
Message-Id: | <199912151206.NAA05912@cerbere.u-strasbg.fr> |
X-Sender: | muller AT ics DOT u-strasbg DOT fr |
X-Mailer: | QUALCOMM Windows Eudora Pro Version 4.0.2 |
Date: | Wed, 15 Dec 1999 12:55:44 +0100 |
To: | Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>, |
Pierre Muller <muller AT cerbere DOT u-strasbg DOT fr> | |
From: | Pierre Muller <muller AT cerbere DOT u-strasbg DOT fr> |
Subject: | Comment on NT4 DPMI BUG (303h, Allocate Real-Mode Callback) |
Cc: | Peter Johnson <locke AT mcs DOT net>, djgpp AT delorie DOT com |
References: | <199912131743 DOT SAA15432 AT cerbere DOT u-strasbg DOT fr> |
Mime-Version: | 1.0 |
Reply-To: | djgpp AT delorie DOT com |
About using a new selector to overcome WinNT bug about call 0x303 in DPMI int. I now remember that there is a problem hidden in the fact that we use another selector : So code might rely on the fact that the ES selector is a vaild selector for the normal DJGPP data space because they used %ds value or more likely __djgpp_ds_alias (the one that never gets invalidated !) (I agree that you can reload %ds using mov %cs:__djgpp_ds_alias,%ax;movw %ax,%ds nevertheless, I am pretty sure I saw somewhere code making this assumption that the entry ES selector is the one given when calling the 0x303 function !) So for code that assume such equalities the workaround of using a new selector with a different base could lead to big problems ! This is one more reason to only use a different selector if its REALLY needed ! Pierre Muller Institut Charles Sadron 6,rue Boussingault F 67083 STRASBOURG CEDEX (France) mailto:muller AT ics DOT u-strasbg DOT fr Phone : (33)-3-88-41-40-07 Fax : (33)-3-88-41-40-99
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |