https://bugs.winehq.org/show_bug.cgi?id=43627
Bug ID: 43627 Summary: regression in Age of Empires 2: ingame mostly black in recent wine version Product: Wine Version: 2.14 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: dan.cermak@cgc-instruments.com Distribution: ---
Created attachment 59044 --> https://bugs.winehq.org/attachment.cgi?id=59044 output of wine when running Age of Empires 2
At some point between Wine 2.10 and 2.14 there has been a regression, that made Age of Empires 2 unplayable. With wine 2.14 the game starts up fine but once you actually get into the game, everything starts flickering and most parts of the screen are black (only units can be seen consistently). This also includes the UI (the menus, map, ect.) and not only the part of the screen that actually shows the game. The console output gets quickly filled with the following fixmes: fixme:d3d:convert_p8_uint_b8g8r8a8_unorm P8 surface loaded without a palette. fixme:d3d_shader:upload_palette P8 surface loaded without a palette. (the full log is attached)
For further reference: I have tested this on two machines running Fedora 26. On both this issue occurs when using the currently recent version of wine (that is 2.14). I have installed the only other available version, which is wine 2.10 where Age of Empires 2 runs without any issues.
I can try to bisect this issue, however any advise to which component might be causing it would be greatly appreciated.
https://bugs.winehq.org/show_bug.cgi?id=43627
dan.cermak@cgc-instruments.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dan.cermak@cgc-instruments. | |com
https://bugs.winehq.org/show_bug.cgi?id=43627
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
https://bugs.winehq.org/show_bug.cgi?id=43627
dan.cermak@cgc-instruments.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |56128d18d4dfcd306beda6aacb6 | |9836938c1a2bf
--- Comment #1 from dan.cermak@cgc-instruments.com --- I have run git bisect and obtained the following result:
56128d18d4dfcd306beda6aacb69836938c1a2bf is the first bad commit commit 56128d18d4dfcd306beda6aacb69836938c1a2bf Author: Henri Verbeet hverbeet@codeweavers.com Date: Mon Jul 17 14:01:42 2017 +0200
wined3d: Drop the special case for "converted" surfaces in wined3d_surface_blt().
We still want to avoid invalidating the system memory copy for these surfaces, but we've become a lot better at preserving the current location for resources, to the point that the special case actually hurts. In particular, if the resource wasn't already current on the CPU, using the CPU blitter would cause us to read it back, which is what we're trying to avoid.
Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
:040000 040000 78fa5da0429944f34b462f7c1c45047a6a5c27d5 ee03cafc88095ed3d7cca6768a31b729f1448861 M dlls
https://bugs.winehq.org/show_bug.cgi?id=43627
dan.cermak@cgc-instruments.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |julliard@winehq.org
https://bugs.winehq.org/show_bug.cgi?id=43627
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression CC| |sebastian@fds-team.de
https://bugs.winehq.org/show_bug.cgi?id=43627
azrdev azrdev@qrdn.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |azrdev@qrdn.de
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #2 from azrdev azrdev@qrdn.de --- I can confirm this regression on archlinux (with wine 2.15 and 2.16). It also affects the game (running on the same engine) Star Wars: Galactic Battlegrounds https://appdb.winehq.org/objectManager.php?sClass=application&iId=2587
Thx dan.cermak for the excellent work bisecting the issue! Now if only somebody knowing how to fix it would step up... :/
https://bugs.winehq.org/show_bug.cgi?id=43627
winebug@ave.zone changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winebug@ave.zone
--- Comment #3 from winebug@ave.zone --- Game seems to play fine on Wine 2.16 (opens fine, no flickering, no black stuff) on ArchLinux with AoE 2.0a and The Conquerors 1.0c, so I assume that this regression was fixed between 2.14 and 2.16.
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #4 from azrdev azrdev@qrdn.de --- winebug@ave.zone: With me, the bug *is* still present with archlinux, wine 2.16, AoE 2.0a and The Conquerors 1.4 (Userpatch).
https://bugs.winehq.org/show_bug.cgi?id=43627
Martijn makruiten+winehq@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |makruiten+winehq@hotmail.co | |m
--- Comment #5 from Martijn makruiten+winehq@hotmail.com --- The same still happens in 2.17. In my case it's Age of Empires II - The Conquerors Expansion with UserPatch 1.5 installed on Skylake with HD Graphics 520. It works fine on 2.12. Please give me some pointers if more information is needed.
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #6 from dan.cermak@cgc-instruments.com --- I am forwarding recommendations from Henri Verbeet what we can do to help the devs with fixing this issue:
- Please make sure the issue is reproducible with plain Wine. I.e., without any staging patches. - Please make sure it's reproducible in a clean WINEPREFIX. I.e., without any custom registry settings or native DLLs, etc. If any are required to make the application work, mention them in the bug report. - Was the "fixme:d3d:convert_p8_uint_b8g8r8a8_unorm P8 surface loaded without a palette." message present before the regression, or is it new? - Likewise for "fixme:d3d_shader:upload_palette P8 surface loaded without a palette."
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #7 from Martijn makruiten+winehq@hotmail.com ---
Please make sure the issue is reproducible with plain Wine. I.e., without any staging patches.
Staging doesn't work at all for me, it crashes when going fullscreen. The regression we're talking here about is on plain Wine 2.13 and up.
Please make sure it's reproducible in a clean WINEPREFIX. I.e., without any custom registry settings or native DLLs, etc. If any are required to make the application work, mention them in the bug report.
I'm not sure if I installed DirectPlay and I will look into it. Nothing else on this 32 bit Windows XP or 7 prefix. I tested with single player games, which I think don't use DirectPlay. I set it all up from PlayOnLinux, but I didn't use an install script. Everything was installed manually by me.
Was the "fixme:d3d:convert_p8_uint_b8g8r8a8_unorm P8 surface loaded without a palette." message present before the regression, or is it new?
This one is new.
- Likewise for "fixme:d3d_shader:upload_palette P8 surface loaded without a palette."
This one was already present.
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #8 from Martijn makruiten+winehq@hotmail.com --- Created attachment 59381 --> https://bugs.winehq.org/attachment.cgi?id=59381 Wine 2.12 log
This is the log when running on Wine 2.12, which works fine.
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #9 from Martijn makruiten+winehq@hotmail.com --- Created attachment 59382 --> https://bugs.winehq.org/attachment.cgi?id=59382 Wine 2.18 log
This one is on Wine 2.18 with the game resolution set a little lower, so I was able to quit the game window before the log size got out of hand. I'm unable to quickly quit the game if I run it fullscreen because I can't see the game controls, but the effect is exactly the same.
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #10 from Martijn makruiten+winehq@hotmail.com --- I tracked down what's causing the issue. It's caused by the game running in 8 bit color. UserPatch has a hidden option (press F5 during install) to run the game in "full screen windowed mode", which forces 32 bit color. If I use that, the issues disappear, but then I'm unable to play the game in fullscreen, so it's not a workaround. I'm up for additional tests, so please let me know what else I can do.
https://bugs.winehq.org/show_bug.cgi?id=43627
paco3346@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |paco3346@gmail.com
--- Comment #11 from paco3346@gmail.com --- I was having the exact same issues as described. MBP 2016, Arch 4.11.5-1, Intel i915, wine 2.21
Changing the wine Direct Draw type to gdi fixed my issue. (I realize gdi is supposed to be default but in my case it must have been changed to something else somehow).
To change, in your wine prefix run 'winetricks ddr=gdi'
https://bugs.winehq.org/show_bug.cgi?id=43627
--- Comment #12 from Martijn makruiten+winehq@hotmail.com ---
Changing the wine Direct Draw type to gdi fixed my issue.
This fixes it for me too. In PlayOnLinux: Configure > Display > Direct Draw Renderer: gdi.
https://bugs.winehq.org/show_bug.cgi?id=43627
Invictus Tiberius invictustiberius@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |invictustiberius@gmail.com
--- Comment #13 from Invictus Tiberius invictustiberius@gmail.com --- I can confirm this for Ubuntu 17.04 x64, but not for KDE Neon 5.11 (wich is based on Ubuntu 16.04). A workaround here:
$ winetricks orm=backbuffer
It solves the problem for me on AMD and Intel graphics, at least for now.
https://bugs.winehq.org/show_bug.cgi?id=43627
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |joseph.kucia@gmail.com
--- Comment #14 from Józef Kucia joseph.kucia@gmail.com --- Created attachment 59978 --> https://bugs.winehq.org/attachment.cgi?id=59978 Patch
The attached patch fixes the problem for me.
https://bugs.winehq.org/show_bug.cgi?id=43627
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |d38076fd57a50452b17d61f7716 | |88bbfcd3a5563
--- Comment #15 from Józef Kucia joseph.kucia@gmail.com --- Fixed
https://bugs.winehq.org/show_bug.cgi?id=43627
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #16 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.0-rc3.