[Bug 39278] New: Multiple DirectX 10 games crash on unimplemented function d3d10_1.dll.D3D10CreateDeviceAndSwapChain1 (Assassin's Creed)

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Sep 15 14:38:05 CDT 2015


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

            Bug ID: 39278
           Summary: Multiple DirectX 10 games crash on unimplemented
                    function d3d10_1.dll.D3D10CreateDeviceAndSwapChain1
                    (Assassin's Creed)
           Product: Wine
           Version: 1.7.51
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: directx-d3dx10
          Assignee: wine-bugs at winehq.org
          Reporter: focht at gmx.net
      Distribution: ---

Hello folks,

found while revisiting bug 24013

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Ubisoft/Assassin's Creed

$ wine ./AssassinsCreed_Dx10.exe 
...
fixme:win:EnumDisplayDevicesW ((null),0,0x386e314,0x00000000), stub!
fixme:dxgi:dxgi_output_GetDisplayModeList iface 0x18e0e0, format
DXGI_FORMAT_R8G8B8A8_UNORM, flags 0x1, mode_count 0x386e8d4, desc (nil) partial
stub!
fixme:dxgi:dxgi_output_GetDisplayModeList iface 0x18e0e0, format
DXGI_FORMAT_R8G8B8A8_UNORM, flags 0x1, mode_count 0x386e8d4, desc 0x3084740
partial stub!
fixme:dxgi:dxgi_output_FindClosestMatchingMode iface 0x18e0e0, mode 0x386e884,
closest_match 0x386e8a0, device (nil) stub!
wine: Call from 0x7b845d61 to unimplemented function
d3d10_1.dll.D3D10CreateDeviceAndSwapChain1, aborting
wine: Unimplemented function d3d10_1.dll.D3D10CreateDeviceAndSwapChain1 called
at address 0x7b845d61 (thread 002a), starting debugger...
Unhandled exception: unimplemented function
d3d10_1.dll.D3D10CreateDeviceAndSwapChain1 called in 32-bit code (0x7b845d61).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:7b845d61 ESP:0386e804 EBP:0386e868 EFLAGS:00000202(   - --  I   - - - )
 EAX:7b832afd EBX:0002004e ECX:00000008 EDX:0386e824
 ESI:0b67845c EDI:00000000
...
Backtrace:
=>0 0x7b845d61 RaiseException+0x81(code=<couldn't compute location>,
flags=<couldn't compute location>, nbargs=<couldn't compute location>,
args=<couldn't compute location>)
[/home/focht/projects/wine/wine.repo/src/dlls/kernel32/except.c:84] in kernel32
(0x0386e868)
  1 0x7c4fc895 __wine_spec_unimplemented_stub+0x34(module="d3d10_1.dll",
function="D3D10CreateDeviceAndSwapChain1")
[/home/focht/projects/wine/wine.repo/src/dlls/winecrt0/stub.c:34] in d3d10_1
(0x0386e89c)
  2 0x7c4fbb59 __wine_stub_D3D10CreateDeviceAndSwapChain1+0x28() in d3d10_1
(0x0b678450)
  3 0x007d95ec in assassinscreed_dx10 (+0x3d95eb) (0x0b678450)
  4 0x00000000 (0x0002004e)
0x7b845d61 RaiseException+0x81
[/home/focht/projects/wine/wine.repo/src/dlls/kernel32/except.c:84] in
kernel32: subl    $4,%esp
84        RtlRaiseException( &record );

Modules:
Module    Address            Debug info    Name (165 modules)
PE      340000-  3ad000    Deferred        d3dx10_36
PE      3b0000-  3c6000    Deferred        xinput1_3
PE      400000- 2b217ab    Export          assassinscreed_dx10
PE    10000000-10031000    Deferred        eax
PE    18000000-18038000    Deferred        binkw32
...
ELF    7a800000-7a939000    Deferred        opengl32<elf>
  \-PE    7a840000-7a939000    \               opengl32
ELF    7ada8000-7b800000    Deferred        nouveau_dri.so
ELF    7b800000-7ba71000    Dwarf           kernel32<elf>
  \-PE    7b820000-7ba71000    \               kernel32
ELF    7bc00000-7bd04000    Deferred        ntdll<elf>
  \-PE    7bc20000-7bd04000    \               ntdll
ELF    7bf00000-7bf04000    Deferred        <wine-loader>
ELF    7c4c3000-7c4d0000    Deferred        libdrm_radeon.so.1
ELF    7c4ea000-7c500000    Dwarf           d3d10_1<elf>
  \-PE    7c4f0000-7c500000    \               d3d10_1
ELF    7c802000-7c808000    Deferred        libtxc_dxtn.so
ELF    7c808000-7c82c000    Deferred        libdrm_intel.so.1
...
ELF    7dfcd000-7e063000    Deferred        d3dcompiler_43<elf>
  \-PE    7dff0000-7e063000    \               d3dcompiler_43
ELF    7e063000-7e21f000    Deferred        wined3d<elf>
  \-PE    7e0c0000-7e21f000    \               wined3d
...
ELF    7e2cf000-7e2f9000    Deferred        dxgi<elf>
  \-PE    7e2e0000-7e2f9000    \               dxgi
ELF    7e2f9000-7e349000    Deferred        d3d11<elf>
  \-PE    7e310000-7e349000    \               d3d11
ELF    7e349000-7e35f000    Deferred        d3d10core<elf>
  \-PE    7e350000-7e35f000    \               d3d10core
ELF    7e35f000-7e3a9000    Deferred        d3d10<elf>
  \-PE    7e370000-7e3a9000    \               d3d10
...
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\Program Files\Ubisoft\Assassin's Creed\AssassinsCreed_Dx10.exe
    0000002f    0
    0000002e    0
    0000002d    1
    0000002c   15
    0000002b    0
    0000002a    0 <==
...
--- snip ---

Disabling builtin 'd3d10_1.dll' works around the crash - only to run into other
issues.

$ wine --version
wine-1.7.51-102-ga7e294c

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