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

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Apr 28 17:39:06 CDT 2014


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

--- Comment #35 from Christopher Thielen <christopher at thielen.co> ---
Some more results:

The cursor is loaded from bitmap16.flx (0x1020eb4 bytes into the file) into a
heap right before the call to CreateWindow. This is the same method all game
texture data is loaded from file (though most are loaded after the CreateWindow
call).

The cursor texture does not exist when it is not on screen - you must hit 'Q',
'Control+X' or other dialog-introducing command for it to appear. It is drawn
toward the very end of the frame as a 128x128 D3DFMT_A8R8G8B8 8-Mips formatted
texture with the actual glove image in the upper-left. It is drawn using two
calls to DrawPrimitiveUP.

Given that nGlide is really issuing those commands and doing more or less the
same thing for all other game textures, I have not yet been able to determine
whether or not this draw command is missing from the Wine rendition.

My hunch is that it is given that this bug shows up both when u9.exe is
rendering Glide (->D3D9 via nGlide) or rendering D3D7, it is likely unrelated
to render errors. However, it appears the texture is a normal texture loaded
just like the others, so it being a texture loading error also doesn't seem
likely. Other 2D elements (like the backpack image) are also loaded from
bitmap16.flx and appear fine in both renderings.

I'm trying now to confirm that Wine is indeed missing this texture entirely
either via dumping texture data with a monkey-patch of wined3d or using
apitrace. I can confirm Wine is issuing the same ReadFile command, so the
cursor is at least making it off the disk and into a heap.

Note: this is definitely unrelated to the user32 SetCursor stuff.

Any other ideas about what this could be would be appreciated.

-- 
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