[Bug 13683] Ultima IX: Mouse pointer missing when reading books, under inventory

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Feb 19 15:37:07 CST 2014


http://bugs.winehq.org/show_bug.cgi?id=13683

--- Comment #31 from Christopher Thielen <christopher at thielen.co> ---
Thanks Erich - I ended up learning quite a bit about User32 cursor stuff
reading the docs and disabling bits of Wine's code.

Most of the User32 cursor calls come during initialization; using various
cursors during gameplay didn't seem to elicit any calls so I'm somewhat
confident that the cursors are not drawn using the User32 stuff.

I believe the only other viable option would be for them to be D3D surfaces
which unfortunately is a lot harder to debug.

Using the fan-made tools I found I was able to dump the contents of the major
"bitmaps" file, which contained the various enumerations of the missing cursor
(by itself, holding one object, holding another object), as well as textures
clearly used in 3D models. I dumped them as .BMP files and they open just fine,
though it should be noted the color is incorrect on the cursors when I open
them in Gimp but the bitmaps used as textures on 3D objects look correct.
Perhaps this is a clue to what's wrong - incorrect parameters being set on a
D3D surface which is supposed to represent the cursor?

I looked through some of the load_texture calls made in WineD3D - there's a few
hundred for the initial scene I'm loading - including about 8 that are 32x32
which is roughly the size of the cursor (Wine/OpenGL code modifies the texture
sizes to be squares with power-of-two lengths as is required by many 3D
drivers).

I'm looking into figuring out how to dump texture data to a file as its loaded
so I can confirm the missing cursor is a D3D surface and not anything else
(what else could it be?). If that works, perhaps it will be easier to see what
flags are being set on the surface by Wine that might make it invisible or
behind the rest of the scene.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list