Game doesn't recognize DirectX9 is installed

Questions about Wine on Linux
Locked
drewww
Newbie
Newbie
Posts: 2
Joined: Mon Apr 16, 2018 8:41 pm

Game doesn't recognize DirectX9 is installed

Post by drewww »

O/S: Ubuntu 17.10 artful (Mate)
Kernel: x86_64 Linux 4.13.0-38-generic
Wine: wine-3.6 (Staging) from WineHQ
Game: Legend of Heroes - Trails in the Sky
Prefix: 32 Bit

When I run LoH from the command line with the following command...

Code: Select all

WINEPREFIX=~/.wine32-LOH wine ~/.wine32-LOH/drive_c/GOG\ Games/The\ Legend\ of\ Heroes\ -\ Trails\ in\ the\ Sky/Config_DX9.exe
the Config app loads and immediately gives me the following message in a dialog box:
This program requires DirectX9.0c or later. Please install the latest DirectX.
If I click OK the Config tool finishes loading but there is no display adapter, device, resolution, etc available to select.
LOH-Config.png
There are no error messages of any kind displayed in Terminal.

If I run winecfg you can see that I have DirectX9 installed already:
LOH-winecfg.png
I'm at a loss as to how to proceed from here.

This exact same problem happens whether I install the GOG or Steam version of LOH.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Game doesn't recognize DirectX9 is installed

Post by Bob Wya »

What's the output from:

Code: Select all

sudo lspci | grep 'VGA'
glxinfo | egrep '^[[:alpha:]]'
Also can you provide a terminal log from starting your application.
See: WineHQ FAQ: 10.1.1 How can I get a debugging log (a.k.a. terminal output)?

Please start the application with:

Code: Select all

export WINEPREFIX=~/.wine32-LOH
export WINEDEBUG=+d3d,+wgl
wine start ~/.wine32-LOH/drive_c/GOG\ Games/The\ Legend\ of\ Heroes\ -\ Trails\ in\ the\ Sky/Config_DX9.exe &>~/wine_d3d_wgl_log.txt
Please use the forum Code tags for the terminal logs...

If the log file is really long (>1000 lines)...
Probably best to use a dedicated Pastebin-esque site.

Thanks
Bob
drewww
Newbie
Newbie
Posts: 2
Joined: Mon Apr 16, 2018 8:41 pm

Re: Game doesn't recognize DirectX9 is installed

Post by drewww »

Hi Bob,

After much work I managed to get both 64bit and 32bit versions of my NVIDIA drivers installed, but am still getting page faults even with a clean prefix.

sudo lspci | grep 'VGA' output:

Code: Select all

00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)
glxinfo | egrep '^[[:alpha:]]' output:

Code: Select all

name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
GLX version: 1.4
GLX extensions:
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 960M/PCIe/SSE2
OpenGL core profile version string: 4.5.0 NVIDIA 390.48
OpenGL core profile shading language version string: 4.50 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6.0 NVIDIA 390.48
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 390.48
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
Terminal Log:

Code: Select all

Unhandled exception: page fault on write access to 0x7c002fc4 in 32-bit code (0xf778479a).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:f778479a ESP:0033e4e0 EBP:00000014 EFLAGS:00010282(  R- --  I S - - - )
 EAX:f76d7d70 EBX:7c002fc4 ECX:f76d7d70 EDX:00000000
 ESI:f77f3c50 EDI:7c0006b5
Stack dump:
0x0033e4e0:  f7f56920 7c0009ac 00000195 f7a52fb8
0x0033e4f0:  f79e96a0 00000000 f7f56920 00000015
0x0033e500:  0000001d 7dc6d790 7c00090c f77859dc
0x0033e510:  7c0009ac 00000014 f77f3b40 7dc6d790
0x0033e520:  00000000 80000001 f7f56920 00000191
0x0033e530:  f7b48000 7e2d83d0 f7b44e20 00000015
Backtrace:
=>0 0xf778479a in libglx_nvidia.so.0 (+0xa979a) (0x00000014)
  1 0xf77859dc in libglx_nvidia.so.0 (+0xaa9db) (0x7c00090c)
  2 0xf77905f1 in libglx_nvidia.so.0 (+0xb55f0) (0xf778c900)
  3 0xf7728508 in libglx_nvidia.so.0 (+0x4d507) (0x7dc6b3c0)
  4 0xf7f3f9d1 in ld-linux.so.2 (+0xf9d0) (0x7dc6b3c0)
  5 0xf7f3fb3e in ld-linux.so.2 (+0xfb3d) (0xff9c4584)
  6 0xf7f43cda in ld-linux.so.2 (+0x13cd9) (0x0033e868)
  7 0xf7c7be4b _dl_catch_error+0x9a() in libc.so.6 (0x0033e9d8)
  8 0xf7f43559 in ld-linux.so.2 (+0x13558) (0x0033e9d8)
  9 0xf7b44cc7 GLIBC_2+0xcc6() in libdl.so.2 (0xff9c4584)
  10 0xf7c7be4b _dl_catch_error+0x9a() in libc.so.6 (0x0033eb6c)
  11 0xf7b45422 in libdl.so.2 (+0x1421) (0x0033eb6c)
  12 0xf7b44d6e GLIBC_2+0xd6d() in libdl.so.2 (0x7dc6b2b0)
  13 0xf7d4b735 in libglx.so.0 (+0xa734) (0x7dc6b2b0)
0xf778479a: movl	%eax,0x0(%ebx)
Modules:
Module	Address			Debug info	Name (84 modules)
PE	  400000-  657000	Deferred        config_dx9
ELF	7a800000-7a93c000	Deferred        opengl32<elf>
  \-PE	7a820000-7a93c000	\               opengl32
ELF	7b400000-7b7ed000	Deferred        kernel32<elf>
  \-PE	7b420000-7b7ed000	\               kernel32
ELF	7bc00000-7bd2a000	Deferred        ntdll<elf>
  \-PE	7bc40000-7bd2a000	\               ntdll
ELF	7c000000-7c004000	Deferred        <wine-loader>
ELF	7d84b000-7d884000	Deferred        libtxc_dxtn.so
ELF	7d8a8000-7d8e0000	Deferred        uxtheme<elf>
  \-PE	7d8b0000-7d8e0000	\               uxtheme
ELF	7d8e0000-7d8e7000	Deferred        libxfixes.so.3
ELF	7d8e7000-7d8f3000	Deferred        libxcursor.so.1
ELF	7d9e5000-7da10000	Deferred        libexpat.so.1
ELF	7da10000-7da59000	Deferred        libfontconfig.so.1
ELF	7da59000-7da93000	Deferred        libpng16.so.16
ELF	7da93000-7dab2000	Deferred        libz.so.1
ELF	7dab2000-7db6e000	Deferred        libfreetype.so.6
ELF	7dc6e000-7dc81000	Deferred        libxi.so.6
ELF	7dc81000-7dc85000	Deferred        libxcomposite.so.1
ELF	7dc85000-7dc92000	Deferred        libxrandr.so.2
ELF	7dc92000-7dc9e000	Deferred        libxrender.so.1
ELF	7dc9e000-7dca5000	Deferred        libxxf86vm.so.1
ELF	7dca5000-7dcaf000	Deferred        librt.so.1
ELF	7dcaf000-7dcdb000	Deferred        libxcb.so.1
ELF	7dcdb000-7de26000	Deferred        libx11.so.6
ELF	7de26000-7deb7000	Deferred        winex11<elf>
  \-PE	7de30000-7deb7000	\               winex11
ELF	7deb7000-7e004000	Deferred        wined3d<elf>
  \-PE	7ded0000-7e004000	\               wined3d
ELF	7e004000-7e2d8000	Deferred        shell32<elf>
  \-PE	7e010000-7e2d8000	\               shell32
ELF	7e2fc000-7e317000	Deferred        libbsd.so.0
ELF	7e317000-7e31e000	Deferred        libxdmcp.so.6
ELF	7e31e000-7e333000	Deferred        libxext.so.6
ELF	7e357000-7e36e000	Deferred        xinput1_3<elf>
  \-PE	7e360000-7e36e000	\               xinput1_3
ELF	7e36e000-7e3af000	Deferred        d3d9<elf>
  \-PE	7e370000-7e3af000	\               d3d9
ELF	7e3af000-7e4e2000	Deferred        oleaut32<elf>
  \-PE	7e3d0000-7e4e2000	\               oleaut32
ELF	7e4e2000-7e4fd000	Deferred        aclui<elf>
  \-PE	7e4f0000-7e4fd000	\               aclui
ELF	7e4fd000-7e574000	Deferred        shlwapi<elf>
  \-PE	7e510000-7e574000	\               shlwapi
ELF	7e574000-7e598000	Deferred        imm32<elf>
  \-PE	7e580000-7e598000	\               imm32
ELF	7e598000-7e5de000	Deferred        usp10<elf>
  \-PE	7e5a0000-7e5de000	\               usp10
ELF	7e5de000-7e715000	Deferred        comctl32<elf>
  \-PE	7e5f0000-7e715000	\               comctl32
ELF	7e715000-7e796000	Deferred        rpcrt4<elf>
  \-PE	7e720000-7e796000	\               rpcrt4
ELF	7e796000-7e7b0000	Deferred        version<elf>
  \-PE	7e7a0000-7e7b0000	\               version
ELF	7e7b0000-7e8de000	Deferred        gdi32<elf>
  \-PE	7e7c0000-7e8de000	\               gdi32
ELF	7e8de000-7eac3000	Deferred        user32<elf>
  \-PE	7e8f0000-7eac3000	\               user32
ELF	7eac3000-7eb3d000	Deferred        advapi32<elf>
  \-PE	7ead0000-7eb3d000	\               advapi32
ELF	7eb3d000-7ec97000	Deferred        ole32<elf>
  \-PE	7eb50000-7ec97000	\               ole32
ELF	7ec97000-7ecaa000	Deferred        libnss_files.so.2
ELF	7ecaa000-7ecb8000	Deferred        libnss_nis.so.2
ELF	7ecb8000-7ecd3000	Deferred        libnsl.so.1
ELF	7ecd3000-7ecdd000	Deferred        libnss_compat.so.2
ELF	7eedd000-7efdc000	Deferred        libm.so.6
ELF	7efdc000-7efe0000	Deferred        libxinerama.so.1
ELF	7efe0000-7efe4000	Deferred        libxau.so.6
ELF	7efe4000-7f000000	Deferred        dinput8<elf>
  \-PE	7eff0000-7f000000	\               dinput8
ELF	f57c5000-f76d6000	Deferred        libnvidia-glcore.so.390.48
ELF	f76d6000-f76db000	Deferred        libnvidia-tls.so.390.48
ELF	f76db000-f77f4000	Dwarf           libglx_nvidia.so.0
ELF	f7838000-f78b8000	Deferred        libgldispatch.so.0
ELF	f78b8000-f793a000	Deferred        libgl.so.1
ELF	f7b44000-f7b49000	Dwarf           libdl.so.2
ELF	f7b49000-f7d1f000	Dwarf           libc.so.6
ELF	f7d1f000-f7d3e000	Deferred        libpthread.so.0
ELF	f7d41000-f7d60000	Dwarf           libglx.so.0
ELF	f7d62000-f7f2e000	Dwarf           libwine.so.1
ELF	f7f30000-f7f57000	Dwarf           ld-linux.so.2
ELF	f7f5a000-f7f5b000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
0000000e services.exe
	[C:\windows\system32\services.exe]
	00000024    0
	0000001f    0
	00000017    0
	00000016    0
	00000015    0
	00000012    0
	0000000f    0
00000010 explorer.exe
	[C:\windows\system32\explorer.exe /desktop]
	0000002c    0
	0000002b    0
	0000002a    0
	00000011    0
00000013 winedevice.exe
	[C:\windows\system32\winedevice.exe]
	0000001c    0
	0000001b    0
	0000001a    0
	00000019    0
	00000018    0
	00000014    0
0000001d plugplay.exe
	[C:\windows\system32\plugplay.exe]
	00000021    0
	00000020    0
	0000001e    0
00000022 winedevice.exe
	[C:\windows\system32\winedevice.exe]
	00000029    0
	00000028    0
	00000027    0
	00000026    0
	00000025    0
	00000023    0
0000002d (D) Z:\home\drew\.wine32-LOH\drive_c\GOG Games\The Legend of Heroes - Trails in the Sky\Config_DX9.exe
	["./.wine32-LOH/drive_c/GOG Games/The Legend of Heroes - Trails in the Sky/Config_DX9.exe"]
	0000002e    0 <==
00000031 explorer.exe
	[C:\windows\system32\explorer.exe /desktop]
	00000035    0
	00000034    0
	00000033    0
	00000032    0
System information:
    Platform: i386
    Version: Windows XP
Suggestions?

The game runs fine if I revert to X.Org open source drivers, but then I have no hardware acceleration for everything else.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Game doesn't recognize DirectX9 is installed

Post by Bob Wya »

drewww wrote:...
Suggestions?

The game runs fine if I revert to X.Org open source drivers, but then I have no hardware acceleration for everything else.
You need to fix your hybrid-graphics setup.
E.g. see: It is a real headache... Also it's somewhat off-topic for a Wine Forum... :cry:

Bob
Locked