Advice fixing #13683 (DirectX mouse overlay?)

Stefan Dösinger stefandoesinger at gmail.com
Sun Feb 16 09:30:37 CST 2014


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

There is another easy way to test if the game is using an overlay on
Windows: Take a screenshot with the print key. If the mouse pointer
shows up, it is *not* an overlay. If it does not show up, it might be an
overlay or a user32 mouse pointer.

Am 2014-02-16 10:06, schrieb Christopher Thielen:
> No luck so far: I ran the application for about 30 seconds and 
> generated a 975 MB log file but a case insensitive "overlay"
> appears not at all.
If the game looks for overlay flags it may not even call any
overlay-related function if it doesn't find the flags present. And
there's no way to find out at which flags it looks, short of
disassembling the game code.

What you can do is looking for IDirectDraw::GetCaps calls (grep the log
for ddraw7_GetCaps). If it does not call that it doesn't look at overlay
capabilities and my theory is moot. If it does, you can try to add
overlay capabilities and see if it starts calling
IDirectDrawSurface::UpdateOverlay (look for
ddraw_surface7_UpdateOverlay) and friends.

Unfortunately there's not a one-button switch to fake overlay
capabilities. You may have to look at a DDCAPS structure returned from
Windows and add / remove capabilities from Wine's until they look more
alike. I know that I looked into Setter 3's overlay mouse pointer and it
was rather tricky to figure out what the game wanted. I think it needed
a proper dwMinOverlayStretch and dwMaxOverlayStretch value set, among
other things.

Some hints to get you started: DDCAPS_OVERLAY, DDSCAPS_OVERLAY,
dwMaxVisibleOverlays, dwMinOverlayStretch, etc.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJTANmdAAoJEN0/YqbEcdMw+ikP/AqVDKsTP55id74rRQFPrqdI
fpZEpjz/Lqu12sZzPdLhK9zPPvsqhon3QyE+VPFrkBB4X0hlZ2vuWzVbjrd/XBLv
au6HS3Os/KDMnpkYZlyE8JwdtaOqJOF8f2GdpUvpwZ4AruU9qgVqoKSjP358qa+Y
Kl/e9hmdLZw6tDGlKVimfO9gp3up46JQm+o0jzXLSuEoNKGWMxQtXVVuTBfv30DJ
hTcVdrCd/FBSvSTSS4+5R6Dj0VbcdM7DaJ3GJrtVs3hMyN0smkD6SbQ7KGq5c3Ds
d/Z/Z/X2TcBpxM7UF2Qg/Vg08v0Yubkz5JAqNuHdaU3117Gd4UTfjevdCkTnhFiv
3JQmDKtNQZAq4V33CmGWabYtOddgJP0loD63GX/sMmPQeOJBCztsDN59dhXpCq5O
QOZRz5bJEri5317yHbATlNST4mlqR5VpnYvJovNiMNSa4Om82Z8TXLuTisCRkeMr
wuTxG45zuMmH/p5BNbuL9eoKhDGWlhm/m7LMv1nGWajnDTFvtXNpIJv8WKIZ7flR
ik0+0ak0hSpkLYCrDoe62qv9tktP6L7g1/XBQhysxMCwxkVE/jU7nafYzFbC31bA
8ezCnHbwvVUYL1036nOIZEd0zjcRSHtHvuJgmmbEu4wgjgMBD/T7uL4/1N9NVVuD
UZ0eZzT35qwUSkM1siOx
=98Q8
-----END PGP SIGNATURE-----



More information about the wine-devel mailing list