Proton: Tales of Zestiria (351970)

Created on 24 Aug 2018  路  7Comments  路  Source: ValveSoftware/Proton

With a win64 prefix and WOW64, which is what is used by proton by default, Tales of Zestiria give a blackscreen and hang (no interesting log yet), and Devil May Cry 4 crashes when trying to use dx10.
Both are win32 executable (e.g i386, not x64).
For DMC4 the log is interesting:
Unhandled exception: unimplemented function d3d11.dll.D3D11CoreCreateDevice called in 32-bit code (0x7bc541f1).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7bc541f1 ESP:0033d268 EBP:0033d2cc EFLAGS:00000212( - -- I -A- - )
EAX:7e1751fa EBX:7bce0ff4 ECX:0033d35c EDX:00000000
ESI:0033d274 EDI:00211390
Stack dump:
0x0033d268: 0033d2d8 7bc5208a 7bc541ba 80000100
0x0033d278: 00000001 00000000 7bc541f1 00000002
0x0033d288: 7e17522c 7e1751fa f7f0eff4 00000003
0x0033d298: 0033d2c8 f7d71250 7e175604 0128c030
0x0033d2a8: 0112efe1 16c31e34 0033d2dc 00000001
0x0033d2b8: f7d7123b 7e174ff4 001f9970 7e174ff4
Backtrace:
=>0 0x7bc541f1 stub_entry_point+0x51(dll="d3d11.dll", name="D3D11CoreCreateDevice", ret_addr=0x7e17173f) [/home/proton/proton/wine/dlls/ntdll/loader.c:222] in ntdll (0x0033d2cc)
1 0x0034000f (0x0033d338)
2 0x7e1892d5 D3D10CreateDevice+0x104(adapter=, driver_type=, swrast=, flags=, sdk_version=, device=) [/home/proton/proton/wine/dlls/d3d10/d3d10_main.c:126] in d3d10 (0x0033d3a8)
3 0x008ee400 in devilmaycry4_dx10 (+0x4ee3ff) (0x7e180000)
4 0x00000003 (0x00905a4d)
0x7bc541f1 stub_entry_point+0x51 [/home/proton/proton/wine/dlls/ntdll/loader.c:222] in ntdll: addl $12,%esp
Unable to access file '/home/proton/proton/wine/dlls/ntdll/loader.c'
Modules:
Module Address Debug info Name (136 modules)
PE 400000- f42000 Export devilmaycry4_dx10
PE f50000- 12d1000 Deferred dxgitrace
PE 10000000-10007000 Deferred d3d11
PE 16f70000-16fe9000 Deferred openvr_api_dxvk
PE 6f400000-6f596000 Deferred dxgi
ELF 72a43000-736f0000 Deferred libnvidia-glvkspirv.so.396.51
ELF 736f0000-75442000 Deferred libnvidia-glcore.so.396.51
ELF 75442000-7907a000 Deferred libllvm-6.0.so
ELF 79e8a000-7b400000 Deferred steamclient.so
ELF 7b400000-7b7ea000 Deferred kernel32
-PE 7b410000-7b7ea000 kernel32
ELF 7bc00000-7bd0f000 Dwarf ntdll
-PE 7bc10000-7bd0f000 ntdll
ELF 7c000000-7c004000 Deferred
ELF 7c961000-7ce44000 Deferred libvulkan_intel.so
ELF 7cfd5000-7d0ef000 Deferred libglx_nvidia.so.0
ELF 7d0ef000-7d116000 Deferred libtinfo.so.6
ELF 7d116000-7d14d000 Deferred libedit.so.0
ELF 7d176000-7d375000 Deferred libvulkan_radeon.so
ELF 7d375000-7d37e000 Deferred libffi.so.6
ELF 7d3f3000-7d40a000 Deferred steamoverlayvulkanlayer.so
ELF 7d40a000-7d40f000 Deferred libnvidia-tls.so.396.51
ELF 7d40f000-7d41c000 Deferred libdrm_amdgpu.so.1
ELF 7d41c000-7d438000 Deferred libelf.so.1
ELF 7d438000-7d446000 Deferred libwayland-client.so.0
ELF 7d446000-7d449000 Deferred libxshmfence.so.1
ELF 7d449000-7d451000 Deferred libxcb-sync.so.1
ELF 7d451000-7d45a000 Deferred libxcb-xfixes.so.0
ELF 7d45a000-7d460000 Deferred libxcb-dri3.so.0
ELF 7d460000-7d474000 Deferred libdrm.so.2
ELF 7d474000-7d52c000 Deferred msvcrt
-PE 7d490000-7d52c000 msvcrt
ELF 7d52c000-7d57a000 Deferred libvulkan.so.1
ELF 7d57a000-7d5b9000 Deferred winevulkan
-PE 7d580000-7d5b9000 winevulkan
ELF 7d5b9000-7d5d1000 Deferred vulkan-1
-PE 7d5c0000-7d5d1000 vulkan-1
ELF 7d5d1000-7d5e5000 Deferred api-ms-win-core-localization-obsolete-l1-2-0
-PE 7d5e0000-7d5e5000 api-ms-win-core-localization-obsolete-l1-2-0
ELF 7d5e5000-7d5f9000 Deferred api-ms-win-core-datetime-l1-1-1
-PE 7d5f0000-7d5f9000 api-ms-win-core-datetime-l1-1-1
ELF 7d5f9000-7d60d000 Deferred api-ms-win-core-string-l1-1-0
-PE 7d600000-7d60d000 api-ms-win-core-string-l1-1-0
ELF 7d60d000-7d81d000 Deferred lsteamclient
-PE 7d6d0000-7d81d000 lsteamclient
ELF 7d81e000-7d822000 Deferred libxcb-present.so.0
ELF 7d822000-7d825000 Deferred libx11-xcb.so.1
ELF 7d825000-7d851000 Deferred libpng12.so.0
ELF 7d897000-7d8ce000 Deferred uxtheme
-PE 7d8a0000-7d8ce000 uxtheme
ELF 7d8d0000-7d8d7000 Deferred libxfixes.so.3
ELF 7d8d7000-7d8e3000 Deferred libxcursor.so.1
ELF 7d8e3000-7d8ef000 Deferred libxrender.so.1
ELF 7d8ef000-7d903000 Deferred libxi.so.6
ELF 7d903000-7d907000 Deferred libxcomposite.so.1
ELF 7d907000-7d90e000 Deferred libxxf86vm.so.1
ELF 7d90e000-7d912000 Deferred libxinerama.so.1
ELF 7d912000-7d9a4000 Deferred winex11
-PE 7d920000-7d9a4000 winex11
ELF 7d9a4000-7d9b8000 Deferred api-ms-win-core-localization-l1-2-1
-PE 7d9b0000-7d9b8000 api-ms-win-core-localization-l1-2-1
ELF 7d9b8000-7d9cc000 Deferred api-ms-win-core-fibers-l1-1-1
-PE 7d9c0000-7d9cc000 api-ms-win-core-fibers-l1-1-1
ELF 7d9cc000-7d9e0000 Deferred api-ms-win-core-synch-l1-2-0
-PE 7d9d0000-7d9e0000 api-ms-win-core-synch-l1-2-0
ELF 7db7f000-7db88000 Deferred libuuid.so.1
ELF 7db88000-7dbc3000 Deferred libexpat.so.1
ELF 7dbc3000-7dc0d000 Deferred libfontconfig.so.1
ELF 7dc0d000-7dc26000 Deferred libz.so.1
ELF 7dc26000-7dc62000 Deferred libpng16.so.16
ELF 7dc62000-7dc74000 Deferred libbz2.so.1
ELF 7dc74000-7dd33000 Deferred libfreetype.so.6
ELF 7dd33000-7de63000 Deferred oleaut32
-PE 7dd50000-7de63000 oleaut32
ELF 7de63000-7de87000 Deferred imm32
-PE 7de70000-7de87000 imm32
ELF 7de87000-7decc000 Deferred usp10
-PE 7de90000-7decc000 usp10
ELF 7decc000-7e002000 Deferred comctl32
-PE 7ded0000-7e002000 comctl32
ELF 7e002000-7e02d000 Deferred msvfw32
-PE 7e010000-7e02d000 msvfw32
ELF 7e02d000-7e07b000 Deferred avifil32
-PE 7e030000-7e07b000 avifil32
ELF 7e07b000-7e0c6000 Deferred dsound
-PE 7e080000-7e0c6000 dsound
ELF 7e0c6000-7e0ec000 Deferred wmvcore
-PE 7e0d0000-7e0ec000 wmvcore
ELF 7e0ec000-7e160000 Deferred d3dcompiler_43
-PE 7e100000-7e160000 d3dcompiler_43
ELF 7e160000-7e176000 Deferred d3d10core
-PE 7e170000-7e176000 d3d10core
ELF 7e176000-7e1b5000 Dwarf d3d10
-PE 7e180000-7e1b5000 d3d10
ELF 7e1b5000-7e1cc000 Deferred xinput1_3
-PE 7e1c0000-7e1cc000 xinput1_3
ELF 7e1cc000-7e1e8000 Deferred dinput8
-PE 7e1d0000-7e1e8000 dinput8
ELF 7e1e8000-7e213000 Deferred msacm32
-PE 7e1f0000-7e213000 msacm32
ELF 7e213000-7e293000 Deferred rpcrt4
-PE 7e220000-7e293000 rpcrt4
ELF 7e293000-7e3ea000 Deferred ole32
-PE 7e2b0000-7e3ea000 ole32
ELF 7e3ea000-7e4a2000 Deferred winmm
-PE 7e3f0000-7e4a2000 winmm
ELF 7e4a2000-7e517000 Deferred shlwapi
-PE 7e4b0000-7e517000 shlwapi
ELF 7e517000-7e7b7000 Deferred shell32
-PE 7e530000-7e7b7000 shell32
ELF 7e7b7000-7e7d1000 Deferred version
-PE 7e7c0000-7e7d1000 version
ELF 7e7d1000-7e849000 Deferred advapi32
-PE 7e7e0000-7e849000 advapi32
ELF 7e849000-7e976000 Deferred gdi32
-PE 7e860000-7e976000 gdi32
ELF 7e976000-7eb74000 Deferred user32
-PE 7e990000-7eb74000 user32
ELF 7efec000-7f000000 Deferred libnss_files.so.2
ELF f7665000-f766a000 Deferred libxau.so.6
ELF f766c000-f7699000 Deferred libxcb.so.1
ELF f7699000-f76b7000 Deferred libgcc_s.so.1
ELF f76b7000-f7718000 Deferred libgldispatch.so.0
ELF f7718000-f772e000 Deferred libxext.so.6
ELF f772e000-f787f000 Deferred libx11.so.6
ELF f787f000-f78a2000 Deferred libglx.so.0
ELF f78a2000-f79a4000 Deferred libm.so.6
ELF f7b34000-f7b39000 Deferred libdl.so.2
ELF f7b39000-f7b43000 Deferred librt.so.1
ELF f7b45000-f7ba9000 Deferred libgl.so.1
ELF f7ba9000-f7d4d000 Deferred libc.so.6
ELF f7d4d000-f7d6c000 Deferred libpthread.so.0
ELF f7d6c000-f7f23000 Dwarf libwine.so.1
ELF f7f23000-f7f5f000 Deferred gameoverlayrenderer.so
ELF f7f61000-f7f8a000 Deferred ld-linux.so.2
ELF f7f8d000-f7f8f000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
0000000c services.exe
00000027 0
00000021 0
0000001c 0
00000016 0
00000013 0
00000012 0
00000011 0
0000000e 0
0000000d 0
0000000f winedevice.exe
00000019 0
00000018 0
00000017 0
00000015 0
00000014 0
00000010 0
0000001a plugplay.exe
0000001e 0
0000001d 0
0000001b 0
0000001f winedevice.exe
00000029 0
00000028 0
00000026 0
00000025 0
00000024 0
00000023 0
00000022 0
00000020 0
0000002a (D) Z:homeantoine.localshareSteamsteamappscommonDevil May Cry 4DevilMayCry4_DX10.exe
00000034 0
00000033 0
00000032 0
00000031 0
0000002b 0 <==
0000002c explorer.exe
00000030 0
0000002f 0
0000002e 0
0000002d 0
System information:
Wine build: wine-3.7
Platform: i386 (WOW64)
Version: Windows 7
Host system: Linux
Host version: 4.17.14-202.fc28.x86_64

The interesting part is that the function it sees as unimplemented IS implemented, and everything works well in a win32 prefix (well at least concerning librairy loading, booting, and so on). What it essentially seems to be is that the executable tries to fetch a 64 bit library or that the 32 bit lib is unreachable with WOW64.
I tried looking into it but can't find anything (don't know wine code enough to really know where to start), it happens in plain wine/wine-staging too.

Game compatibility - Unofficial

Most helpful comment

Same thing happen, black screen with moving cursor, without using any tweaks on 4.2-4.
Since there are no proper log, here is the log for this game.

steam-351970.log

Maybe also relevant to the issue. #2613
warn:module:load_builtin_dll cannot open .so lib for builtin L"Steam2.dll": /home/tommy/.local/share/Steam/steamapps/common/Proton 4.2/dist/lib/wine/steam2.dll.so: cannot open shared object file: No such file or directory

All 7 comments

Problems actually seem not to be related. And I managed to make both games run on a clean wine-staging prefix with WOW64.

  • DMC4 dx10 actually seem to be a dxvk problem, and doitsujin is looking into it on relevant repo.
  • Tales of zestiria can run with or without dxvk, and on 64 bit profiles with latest wine-staging, but not on proton. And as such it does seem to be a proton specific problem. I will try to extract an apitrace and interesting log right away.

Same thing happen, black screen with moving cursor, without using any tweaks on 4.2-4.
Since there are no proper log, here is the log for this game.

steam-351970.log

Maybe also relevant to the issue. #2613
warn:module:load_builtin_dll cannot open .so lib for builtin L"Steam2.dll": /home/tommy/.local/share/Steam/steamapps/common/Proton 4.2/dist/lib/wine/steam2.dll.so: cannot open shared object file: No such file or directory

Still doesn't work with Proton 5.0-1
Log : steam-351970.log

Tales of Zestiria works now with Proton 5.0-5. Thanks !

Tried on a clean install with Proton 5.0-5 and it still crashes upon playing the opening movie:

Unhandled exception: page fault on write access to 0xbd6880e0 in 32-bit code (0x00c14d51).
162583.823:0062:0063:fixme:dbghelp:elf_search_auxv can't find symbol in module
162583.823:0062:0063:err:dbghelp_msc:codeview_process_info Unknown CODEVIEW signature 007f6630 in module L"tales of zestiria"
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00c14d51 ESP:3ec7f8ac EBP:00017700 EFLAGS:00010202(  R- --  I   - - - )
 EAX:feb4d3e8 EBX:00000002 ECX:00000000 EDX:bd6880e0
 ESI:00000000 EDI:3ec7f9ec
Stack dump:
0x3ec7f8ac:  0212ffb0 3d7ccd00 bd6880e0 00000001
0x3ec7f8bc:  00000002 00000000 00000002 3ec7fc30
0x3ec7f8cc:  bd6880e0 00000000 000003c0 00000000
0x3ec7f8dc:  3b6536d7 00000000 00000000 00000000
0x3ec7f8ec:  00000000 00000000 00000000 3b6536d7
0x3ec7f8fc:  00000000 01580129 00d80140 ffe4005d
Backtrace:
=>0 0x00c14d51 EntryPoint+0xffffffff() in tales of zestiria (0x00017700)
0x00c14d51 EntryPoint+0xffffffff in tales of zestiria: repe ??? 
Modules:
Module  Address                 Debug info      Name (154 modules)
PE        400000- 33f7000       Export          tales of zestiria
PE       3400000- 35ff000       Deferred        d3dx9_43
PE       3eb0000- 3fed000       Deferred        steam
PE       4210000- 428a000       Deferred        openvr_api_dxvk
PE       4290000- 4293000       Deferred        api-ms-win-core-localization-l1-2-1
PE      10000000-1006a000       Deferred        bink2w32
PE      3b400000-3b431000       Deferred        steam_api
PE      62340000-62344000       Deferred        uxtheme
PE      62440000-626fb000       Deferred        d3d9
PE      62800000-62803000       Deferred        usp10
PE      639c0000-63a3d000       Deferred        winmm
PE      64b40000-64b43000       Deferred        shcore
PE      64d80000-64d84000       Deferred        hid
[...]

@DistantThunder works with Proton-GE. Note that it's not an official Valve build.

EDIT: for some videos to work with Proton-GE you need to install gstreamer plugins. The ugly plugins have licensing issues but that's more of a distribution problem than a end-user problem. Some older games need the ugly plugins.

@unit73e
I tried with the latest GEs too and it crashed the same way. Perhaps it's a GST problem but I wouldn't believe that since this game is using some proprietary Bink2 format for its videos.

It looks like I'm missing some specific Win32 lib. I'm gonna dig a little because this was working years before on a Steam for Windows Wine prefix and always had problem running on Steam for Linux via Proton.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

matou68 picture matou68  路  3Comments

shanefagan picture shanefagan  路  3Comments

BLaDZer picture BLaDZer  路  3Comments

Elkasitu picture Elkasitu  路  3Comments

prototype99 picture prototype99  路  3Comments