https://bugs.winehq.org/show_bug.cgi?id=55936
Bug ID: 55936 Summary: Sven Bømwøllen series: Several games crash after loading screen Product: Wine Version: 8.20 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: nikolas.gur@stud.uni-due.de Distribution: ArchLinux
Created attachment 75501 --> https://bugs.winehq.org/attachment.cgi?id=75501 wine output for starting the games
At least the second, third and forth entry from the Sven Bømwøllen series (https://www.mobygames.com/group/3577/sven-b%C3%B8mw%C3%B8llen-games/) called Sven Zwø, Sven XXX and Sven 004 crash after showing briefly the loading screen (the main menu is not entered, and no GUI error messages are shown). The wine log messages appear to be similar in all three cases and are uploaded in the attachments. The first game in the series does not have any problems and is perfectly playable in wine.
The issue occurs both with demo and full CD versions of the games. The demo for Sven 4 can be downloaded from here, for the maintainers to confirm the bug:
https://www.pcwelt.de/article/1143476/sven-004-xs.html (direct link: https://download.pcwelt.de/area_release/files/BB/C1/BBC1C93E4C2BA5EC30CBEBA7...)
sha1sum Setup_Sven004-XS_BTO_v104.exe 99105e743bbd60889bf476d357e2dd047ed0b0dd
Since the error mentions something about DirectDraw, I tried using https://github.com/FunkyFr3sh/cnc-ddraw. I also tried setting WinXP compatibilty, emulating a virtual desktop and tried both Wine 32 and 64 prefixes, but none of this worked in any way.
https://bugs.winehq.org/show_bug.cgi?id=55936
temp82@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |temp82@luukku.com
--- Comment #1 from temp82@luukku.com --- please add "download" keyword in keyword field since there is a known download to replicate the issue.
https://bugs.winehq.org/show_bug.cgi?id=55936
nikolas.gur@stud.uni-due.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #2 from nikolas.gur@stud.uni-due.de --- (In reply to temp82 from comment #1)
please add "download" keyword in keyword field since there is a known download to replicate the issue.
Done
https://bugs.winehq.org/show_bug.cgi?id=55936
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://download.pcwelt.de/ | |area_release/files/BB/C1/BB | |C1C93E4C2BA5EC30CBEBA71C9D5 | |931/Setup_Sven004-XS_BTO_v1 | |04.exe Status|UNCONFIRMED |NEW Ever confirmed|0 |1 CC| |dark.shadow4@web.de
--- Comment #3 from Fabian Maurer dark.shadow4@web.de --- Confirming
https://bugs.winehq.org/show_bug.cgi?id=55936
Bernhard Übelacker bernhardu@mailbox.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bernhardu@mailbox.org
--- Comment #4 from Bernhard Übelacker bernhardu@mailbox.org --- Sven004.exe tries to validate the game data files by CryptVerifySignatureA.
This is done for "Sven004.dat", but it looks like the result is ignored. And for "01_xs.pak", which fails, and the process is shutdown without a meaningful message. Even not in the logfile: c:/Phenomedia/Sven 004 XS/Sven004.html
By hacking CryptVerifySignatureA to always return TRUE the game can start up and it is possible to play.
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #5 from Fabian Maurer dark.shadow4@web.de --- Created attachment 75645 --> https://bugs.winehq.org/attachment.cgi?id=75645 +crypt log
Log gives
0024:trace:crypt:gnutls_log <3> ASSERT: pk.c[_wrap_nettle_pk_verify]:1663 0024:trace:crypt:gnutls_log <3> ASSERT: pubkey.c[pubkey_verify_hashed_data]:2582 0024:trace:crypt:gnutls_log <3> ASSERT: pubkey.c[gnutls_pubkey_verify_hash2]:2242
gnutls_pubkey_verify_hash2 - https://github.com/gnutls/gnutls/blob/e840a07f0048193c3f684b4e4630059bb68d9e... pubkey_verify_hashed_data - https://github.com/gnutls/gnutls/blob/e840a07f0048193c3f684b4e4630059bb68d9e... _wrap_nettle_pk_verify - https://github.com/gnutls/gnutls/blob/e840a07f0048193c3f684b4e4630059bb68d9e...
Probably not very helpful though
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #6 from Bernhard Übelacker bernhardu@mailbox.org --- Created attachment 75654 --> https://bugs.winehq.org/attachment.cgi?id=75654 dssenh/tests: Demonstrate issue of bug 55936.
Attached file is a minimal reproducer of the issue.
It contains the key from the game and requires the original file "01_xs.pak".
The last 44 bytes of the game file contain the signature and the length of the signature.
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #7 from Hans Leidekker hans@meelstraat.net --- Created attachment 75665 --> https://bugs.winehq.org/attachment.cgi?id=75665 patch
CPVerifySignature() is called while the hash has not been finalized. This patch fixes that but the signature still doesn't verify, so there must be more.
https://bugs.winehq.org/show_bug.cgi?id=55936
Sven Püschel justanormalemailforthewebsiteswhichdontsupportunicode.maybesomeonewillfixit@akarisu.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |justanormalemailforthewebsi | |teswhichdontsupportunicode. | |maybesomeonewillfixit@akari | |su.de
--- Comment #8 from Sven Püschel justanormalemailforthewebsiteswhichdontsupportunicode.maybesomeonewillfixit@akarisu.de --- Bug fixed with Wine 9.16
See also: https://gitlab.winehq.org/wine/wine/-/merge_requests/6314
https://bugs.winehq.org/show_bug.cgi?id=55936
Bernhard Übelacker bernhardu@mailbox.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |0fe7520efcb95e19fc588d6928f | |b1bd79d672fd8
--- Comment #9 from Bernhard Übelacker bernhardu@mailbox.org --- Resolving fixed by Sven Püschels patch.
https://bugs.winehq.org/show_bug.cgi?id=55936
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 9.17.
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #11 from nikolas.gur@stud.uni-due.de --- Hello, I installed wine-9.17 on Arch. Unfortunately, I still can cannot get these games to run (Neither the demo version linked here, nor the full versions from https://archive.org/details/sven-10-jahre-iso). Can anyone confirm that at least the demo version from https://download.pcwelt.de/area_release/files/BB/C1/BBC1C93E4C2BA5EC30CBEBA7... can be played? It still crashes after briefly showing the loading screen for me, so the issue seems to be exactly the same behaviour described in the opening post. I also had no luck with setting the Windows Version to XP and using a clean 32bit prefix. Maybe I'm missing something, but I'm also now out of ideas of what to try.
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #12 from nikolas.gur@stud.uni-due.de --- Created attachment 77099 --> https://bugs.winehq.org/attachment.cgi?id=77099 Updated wine output for Sven 004 XS
https://bugs.winehq.org/show_bug.cgi?id=55936
Bernhard Übelacker bernhardu@mailbox.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Sven Bømwøllen series: |Sven Bømwøllen series: |Several games crash after |Several games crash after |loading screen |loading screen | |(CryptVerifySignatureA)
https://bugs.winehq.org/show_bug.cgi?id=55936
--- Comment #13 from Bernhard Übelacker bernhardu@mailbox.org --- (In reply to nikolas.gur from comment #11)
Hello, I installed wine-9.17 on Arch. Unfortunately, I still can cannot get these games to run ... . Can anyone confirm that at least the demo version from ... can be played? It still crashes after briefly showing the loading screen for me, so the issue seems to be exactly the same behaviour described in the opening post.
Hello Nikolas, I retried with winehq packages inside a Debian Bookworm VM (with Sven004-XS). "Unfortunately" the game was starting successfully. My output also matches your attached file from yesterday.
I undusted an old Arch VM, similar to the Debian VM, and can confirm there the demo shows up less than a second and closes. A WINEDEBUG=+seh shows an access violation.
Because this bug is already closed handling the CryptVerifySignatureA issue, I opened a followup bug #57206.