https://bugs.winehq.org/show_bug.cgi?id=46010
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Summary|[DX11] ARMA 3 for Windows |ARMA 3 crashes on |crashes at startup without |unimplemented function |error messages |d3dcompiler_43.dll.D3DDecom | |pressShaders
--- Comment #1 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming a crash. Not sure if it's the same issue from 2018 but that's what Wine 5.4 currently chokes on.
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files (x86)/Arma 3
$ wine ./arma3.exe ... 0009:err:d3dcompiler:compile_shader HLSL shader parsing failed. 0009:fixme:rawinput:RegisterRawInputDevices Unhandled flags 0x300 for device 0. 0009:fixme:rawinput:RegisterRawInputDevices Unhandled flags 0x300 for device 0. 0009:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0x3ba8c18, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0, mode_count 0x1dcf8f8, modes (nil) partial stub! 0009:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0x3ba8c18, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0, mode_count 0x1dcf8f8, modes 0xbbecb80 partial stub! 0009:fixme:d3d11:d3d11_device_CheckFeatureSupport Returning fake threading support data. 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 10, format_support 01DCFA34 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 24, format_support 01DCFA1C partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 26, format_support 01DCFA1C partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 10, format_support 01DCFA1C partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 2, format_support 01DCFA1C partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 28, format_support 01DCFA1C partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 28, format_support 01DCF9FC partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 55, format_support 01DCFA28 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 61, format_support 01DCFA44 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 10, format_support 01DCFA40 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 41, format_support 01DCFA44 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 54, format_support 01DCFA44 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 34, format_support 01DCFA44 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 16, format_support 01DCFA44 partial-stub! 0009:fixme:d3d11:d3d11_device_CheckFormatSupport iface 03BB8178, format 61, format_support 01DCFA60 partial-stub! wine: Call from 0x7b00dbb1 to unimplemented function d3dcompiler_43.dll.D3DDecompressShaders, aborting 0009:fixme:dbghelp:elf_search_auxv can't find symbol in module 0009:fixme:dbghelp:MiniDumpWriteDump NIY MiniDumpWithDataSegs wine: Unimplemented function d3dcompiler_43.dll.D3DDecompressShaders called at address 7B00DBB1 (thread 0009), starting debugger... Unhandled exception: unimplemented function d3dcompiler_43.dll.D3DDecompressShaders called in 32-bit code (0x7b00dbb1). 003c:fixme:dbghelp_msc:numeric_leaf Unsupported numeric leaf type 800a 003c:fixme:dbghelp:i386_stack_walk new PC=ef different from Eip=772f7374 003c:fixme:dbghelp:i386_stack_walk new PC=26d054f different from Eip=0 Register dump: CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b EIP:7b00dbb1 ESP:01dcf008 EBP:01dcf05c EFLAGS:00200212( - -- I -A- - ) EAX:01dcf008 EBX:0e2bb678 ECX:01dceffc EDX:00000002 ESI:00000002 EDI:00000325 ... Backtrace: =>0 0x7b00dbb1 RaiseException+0x61() [Z:\home\focht\projects\wine\mainline-src\dlls\kernelbase\debug.c:2147483961] in kernelbase (0x01dcf05c) 1 0x772f7374 (0x01dcf05c) 2 0x026d054f __wine_spec_unimplemented_stub+0x2e() [Z:\home\focht\projects\wine\mainline-src\dlls\winecrt0\stub.c:2147483680] in d3dcompiler_43 (0x01dcf080) 3 0x00000000 (0x01dcf080) 4 0x026a1060 create_vs10_parser+0xffffffff() in d3dcompiler_43 (0x00000000) ... 200 0x026a1060 create_vs10_parser+0xffffffff() in d3dcompiler_43 (0x00000000) 0x7b00dbb1 RaiseException+0x61 [Z:\home\focht\projects\wine\mainline-src\dlls\kernelbase\debug.c:2147483961] in kernelbase: addl $80,%esp Modules: Module Address Debug info Name (176 modules) PE 230000- 31c000 Deferred setupapi PE 320000- 334000 Deferred version PE 340000- 38a000 Deferred propsys PE 390000- 3b9000 Deferred shcore PE 3c0000- 400000 Deferred msacm32 PE 400000- 19c8000 Deferred arma3 PE 1dd0000- 2128000 Deferred ole32 PE 2130000- 2280000 Deferred rpcrt4 PE 2280000- 24d5000 Deferred oleaut32 PE 24e0000- 2572000 Deferred shlwapi PE 2580000- 2693000 Deferred winmm PE 26a0000- 2791000 PDB d3dcompiler_43 PE 27a0000- 2876000 Deferred dsound PE 2880000- 289c000 Deferred xinput1_3 PE 28a0000- 2a68000 Deferred physx3_x86 PE 2a70000- 2ba1000 Deferred physx3common_x86 PE 2bb0000- 2c08000 Deferred physx3cooking_x86 PE 2c10000- 2de0000 Deferred d3d11 PE 2de0000- 2eab000 Deferred d3d10 PE 2eb0000- 2ed7000 Deferred d3d10core PE 2ee0000- 2fd3000 Deferred d3dcompiler_47 PE 2fe0000- 3010000 Deferred d3dx11_43 PE 3010000- 3053000 Deferred d3dx10_43 PE 3060000- 3084000 Deferred d3d10_1 PE 3090000- 3281000 Deferred d3dx9_36 PE 3290000- 32dc000 Deferred d3dxof PE 32e0000- 359b000 Deferred comctl32 PE 35a0000- 3628000 Deferred usp10 PE 3630000- 365f000 Deferred imm32 PE 4040000- 4093000 Deferred uxtheme PE 41b0000- 41d9000 Deferred tbb4malloc_bi PE 5400000- 540d000 Deferred psapi PE 67c0000- 6890000 Deferred steam_api PE 10000000-1000f000 Deferred msimg32 ELF 7a800000-7a944000 Deferred opengl32<elf> -PE 7a840000-7a944000 \ opengl32 PE 7b000000-7b1bc000 PDB kernelbase ELF 7b400000-7b66a000 Deferred kernel32<elf> -PE 7b420000-7b66a000 \ kernel32 ELF 7bc00000-7bd41000 Deferred ntdll<elf> -PE 7bc30000-7bd41000 \ ntdll ELF 7c000000-7c004000 Deferred <wine-loader> ... ELF 7e915000-7ea30000 Deferred ucrtbase<elf> -PE 7e950000-7ea30000 \ ucrtbase ... ELF 7efd4000-7efe8000 Deferred x3daudio1_7<elf> -PE 7efe0000-7efe8000 \ x3daudio1_7 ELF 7efe8000-7f000000 Deferred xapofx1_5<elf> -PE 7eff0000-7f000000 \ xapofx1_5 ... Threads: process tid prio (all id:s are in hex) 00000008 (D) C:\Program Files (x86)\Arma 3\arma3.exe 0000003d 0 ... 00000009 0 <== ... --- snip ---
Microsoft docs:
https://docs.microsoft.com/en-us/windows/win32/api/d3dcompiler/nf-d3dcompile...
Wine source:
https://source.winehq.org/git/wine.git/blob/00e55c8fc0c08e14c39880e62526f850...
After 'winetricks -q d3dcompiler_43' it reports:
--- snip --- $ WINEDEBUG=+msgbox wine ./arma3.exe -window -noSplash -skipIntro
0009:trace:msgbox:MSGBOX_OnInit L"Error creating Direct3D 11 graphical engine" --- snip ---
The game is reportedly running ok with DXVK.
$ wine --version wine-5.4-255-g00e55c8fc0
Regards