[Bug 46010] ARMA 3 crashes on unimplemented function d3dcompiler_43.dll.D3DDecompressShaders

WineHQ Bugzilla wine-bugs at winehq.org
Tue Mar 24 11:16:04 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=46010

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |focht at 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 at 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-d3dcompiler-d3ddecompressshaders

Wine source:

https://source.winehq.org/git/wine.git/blob/00e55c8fc0c08e14c39880e62526f8503468b641:/dlls/d3dcompiler_43/d3dcompiler_43.spec#l6

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

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list