https://bugs.winehq.org/show_bug.cgi?id=38115
Bug ID: 38115 Summary: Grandia 2: game crashes after videos are skipped Product: Wine Version: 1.7.36 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: c.wehrmeyer@gmx.de Distribution: ---
Created attachment 50797 --> https://bugs.winehq.org/attachment.cgi?id=50797 Backtrace of wine when the game crashes
What I am trying to archive: I want to get the game Grandia II running on a Multilib Gentoo System (x86 and x64). To reduce I/O latency that is bound to happen due to the carrier medium (optical drive/CD), I created local images that can be mounted in. This runs fine on Windows, the copy protection detects no problems, and I can start and play that game.
How have I installed Winw: - I have got the latest source from the git repository: $ git clone git://source.winehq.org/git/wine.git wine 2>&1 > ~/wine_git.txt
- I configured the sources, compiled them, and installed the binaries into a separate directory:
$ ./configure --prefix=/opt/local/wine $ make -j 9 2>&1 > ~/wine_make $ make install 2>&1 > ~/wine_make_install
- I mounted the CD images:
$ sudo mount -t iso9660 GRANDIA2CD1.iso cd1 mount: /dev/loop0 ist schreibgeschützt, wird eingehängt im Nur-Lese-Modus $ sudo mount -t iso9660 GRANDIA2CD2.iso cd2 mount: /dev/loop1 ist schreibgeschützt, wird eingehängt im Nur-Lese-Modus $ sudo mount | grep 'CD' /path/GRANDIA2CD1.iso on /path/cd1 type iso9660 (ro) /path/GRANDIA2CD2.iso on /path/cd2 type iso9660 (ro)
- I created a Win32 user prefix, because the game is a x86 application.
$ WINEPREFIX="/home/user/new_wine" WINEARCH='win32' /opt/local/wine/bin/wine "wineboot"
- I made sure (with WINEPREFIX="/home/user/new_wine" WINEARCH='win32' /opt/local/wine/bin/winecfg) that the drives D: and E: were directly pointing to where the CD-images are mounted
- I installed the game - in the cd1/ dir:
$ WINEPREFIX="/home/user/new_wine" WINEARCH='win32' /opt/local/wine/bin/wine autorun.exe
- I copied the games executable from the second CD to the main game folder, because for some reason the installer wouldn't do that.
What is the problem:
The game starts, but it does not play the intro videos, and the game crashes if I press F9 (skip videos).
What can I say about the crash:
The crash always happens at the same address:
Unhandled exception: page fault on read access to 0x00000004 in 32-bit code (0x004884b9).
From what I can gather, 0x004884b9 is the code address that causes the crash.
The machine code read this (intel syntax):
4884b3: 8b 0d 0c 47 9c 00 mov ecx,DWORD PTR ds:0x9c470c 4884b9: 8b 51 04 mov edx,DWORD PTR [ecx+0x4] 4884bc: 8b 42 08 mov eax,DWORD PTR [edx+0x8] 4884bf: 8b 40 48 mov eax,DWORD PTR [eax+0x48]
If I read this correctly - and I might be mighty wrong here - the value 0x9c470c is loaded into the ecx register, and the value stored at 0x9c4710 is then tried to load into the edx register. But it seems as if the ecx register is nullified again.
For reference: other 3D games as Deus Ex run very fine. Due to the fact that I am rendering with my Intel chip (I own an optimus laptop with maxwell architecture, for which the drivers are still declared as WIP), the CPU usage is a bit higher than on Windows, but I can archive 60 FPS with not problems whatsoever.
The backtrace is included as attachment. If demanded, I can also upload the "configure", "make" and "make install" logs.