delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mailnull set sender to djgpp-workers-bounces using -f |
From: | sandmann AT clio DOT rice DOT edu (Charles Sandmann) |
Message-Id: | <10201081924.AA23433@clio.rice.edu> |
Subject: | Re: INT 31 0303 Win XP bug |
To: | djgpp-workers AT delorie DOT com, muller AT cerbere DOT u-strasbg DOT fr |
Date: | Tue, 8 Jan 2002 13:24:33 -0600 (CST) |
Cc: | core AT freepascal DOT org |
In-Reply-To: | <4.2.0.58.20020108175939.01c8dff8@ics.u-strasbg.fr> from "Pierre Muller" at Jan 08, 2002 06:12:22 PM |
X-Mailer: | ELM [version 2.5 PL2] |
Mime-Version: | 1.0 |
Reply-To: | djgpp-workers AT delorie DOT com |
Errors-To: | nobody AT delorie DOT com |
X-Mailing-List: | djgpp-workers AT delorie DOT com |
X-Unsubscribes-To: | listserv AT delorie DOT com |
> After trying for a while to get the mouse > to work for our go32v2 FP IDE, > Florian Klaempfl and I finally discovered that the INT 31 0303 > has an XP specific bug: > > when the callback address is called the es register is null > instead of having the value given in es register > when calling the function 0303. > This leads to a crash of the NTVDM. > > Setting this value to the djgpp_ds_alias made the mouse callback to work correctly for XP. > As this is only done if es is null it shouldn't break any > working target. > > This info might be useful for SET, Rhide and maybe allegro, > but maybe there is some Free Pascal specific code that triggers this bug... Thanks for researching this. We could add a fix for this to the go32 wrapper functions, but I know many (most?) programs actually provide their own wrappers or write the callback handler in assembler?
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |