Dungeon Keeper thread(s) recently
lionel.ulmer at free.fr
Sun Jan 25 04:10:11 CST 2004
> - I have two mouse pointers.
> - The first is trapped in the upper left corner and looks like a standard
> mousepointer. When the mouse is moved down or right it follows a bit and
> then always jumps back to it's corner.
> - The second one is the Dungeon Keeper mouse pointer (some picture of a
> monsters head). This one moves down and right if the mouse is moved in
> this directions but doesn't move up or left.
> Except this the mousepointer behaves absolutely normal.
> That's the situation.
> Any ideas for a starting point for debugging?
Well, this looks like a dinput bug in the handling of relative mouse
grabbing when computing the coordinates of the middle of the screen.
To make a long story short, X does not really provide any way to get
relative mouse movements (I do not despair to one day check-out the fd.o X
server and add an extension to do that). So we need to 'warp' the mouse to
the middle of the window each time it moves and compute from absolute mouse
events the relative ones.
Anyway, this whole DInput code worked one day (when it used direct X calls
and was full of hacks) and was a bit broken by the DLL separation work
(basically, to support this properly we cannot use plain Win32 calls as it's
done now but need to hook directly at the low level input system).
Lionel (back from one week snowboarding in the Alps and still handling
the mail backlog :-) )
PS: will look too at the DDraw bug Jason reported.
PS2: was not able to run 'kddata.exe' properly (got hangs in Wine in random
places), but unzipping directly with unzip worked better :-)
Lionel Ulmer - http://www.bbrox.org/
More information about the wine-devel