crash on priviledged instruction

Andreas Mohr Usenet 10/01 a31dgo001 at
Wed Oct 10 07:13:59 CDT 2001

Uwe Bonnes <bon at> wrote:
> Andreas Mohr Usenet 10/01 <a31dgo001 at> wrote:

> :> The question now is: Where do the SI register become NULL? Is it a good 
> :> choice to extend the relay logging by the register e.g. ES and SI? Or is it 
> :> more likely that the code where the register becomes initialized is skipped?

> : It's NOT SI :-)

> : It's *ES*:SI.

> : --> Try to breakpoint winedbg on a location that's slightly *before* the
> : crash 
> : (use --debugmsg +relay in order to find out a suitable address to break on),
> : and singlestep until the crash occurs. That way you'll hopefully find the
> : place 
> : where a NULL pointer gets loaded into ES:SI.
> : Or maybe you can even definitely pinpoint the NULL pointer to a place in
> : the relay trace... (not too likely, though)

> I thought that the wine debugger is broken with 16 bit code and I didn't
> manage to set breakpoints or single step in 16 bit code since long...

Ah, crap, yes !

Well, in this case either fix winedbg/wine to use the WOW debugging
interface, or disassemble the program in order to find out what's wrong.
Or maybe even use a Wine version for debugging that doesn't have this problem.
(I think Wine 200004xx or earlier should do)

Andreas Mohr, Renningen, Germany
In case you need to contact me after expiry of temporary email address:
my real address is (initial of first name).(last name)

More information about the wine-users mailing list