Playdead Limbo game used to work before, now just throws errors

Questions about Wine on Linux
Locked
F_style
Level 4
Level 4
Posts: 153
Joined: Sat Sep 25, 2010 8:55 pm

Playdead Limbo game used to work before, now just throws errors

Post by F_style »

Link: https://appdb.winehq.org/objectManager. ... &iId=24128

Debian 11

$ inxi -Gxz
Graphics:
Device-1: Intel 3rd Gen Core processor Graphics vendor: Toshiba
driver: i915 v: kernel arch: Gen7 bus-ID: 00:02.0
Display: server: X.Org v: 1.20.11 driver: X: loaded: modesetting
unloaded: fbdev,vesa gpu: i915 resolution: 1366x768~60Hz
OpenGL: renderer: Mesa DRI Intel HD Graphics 4000 (IVB GT2)
v: 4.2 Mesa 20.3.5 direct render: Yes

Tried with both Steam and GOG versions

It used to work on Wine versions from back in 2014...

Initialize with:

Code: Select all

WINEPREFIX="$HOME"/.wine32 WINEARCH=win32 winecfg
Run with:

Code: Select all

WINEPREFIX="$HOME"/.wine32 wine Limbo/limbo.exe
Results:

Code: Select all

0024:fixme:system:NtUserSystemParametersInfo Unimplemented action: 59 (SPI_SETSTICKYKEYS)
0024:fixme:system:NtUserSystemParametersInfo Unimplemented action: 53 (SPI_SETTOGGLEKEYS)
0024:fixme:system:NtUserSystemParametersInfo Unimplemented action: 51 (SPI_SETFILTERKEYS)
0024:fixme:imm:ImeSetActiveContext (00010064, 1): stub
0024:fixme:imm:ImmReleaseContext (00020060, 00010064): stub
0050:fixme:imm:ImeSetActiveContext (00010026, 0): stub
0050:fixme:imm:ImmReleaseContext (00010020, 00010026): stub
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
0024:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
wine: Unhandled page fault on read access to 00000000 at address 004F33F5 (thread 0024), starting debugger...
0110:fixme:ntdll:find_reg_tz_info Can't find matching timezone information in the registry for CST, bias 360, std (d/m/y): 29/10/2023, dlt (d/m/y): 2/04/2023
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
0110:fixme:imm:ImeSetActiveContext (00010082, 1): stub
0110:fixme:imm:ImmReleaseContext (00010090, 00010082): stub
0110:fixme:dbghelp:elf_search_auxv can't find symbol in module
0110:fixme:dbghelp:elf_search_auxv can't find symbol in module
0110:fixme:dbghelp:elf_search_auxv can't find symbol in module
[...]

Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x004f33f5).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:004f33f5 ESP:0021fac4 EBP:00000000 EFLAGS:00210202(  R- --  I   - - - )
 EAX:039ed3d8 EBX:00000000 ECX:00000000 EDX:039ed3d0
 ESI:00000000 EDI:0000000f
Stack dump:
0x0021fac4:  039ed3d8 004f6ae1 00000000 0000000f
0x0021fad4:  039ed3d8 00000041 00000000 00000000
0x0021fae4:  00bfbbef 0047a58d 00000000 039ed3b0
0x0021faf4:  00000000 0021fe88 00241b98 7b60d200
0x0021fb04:  00000000 0378c620 6f1c9f85 3a4b4f0a
0x0021fb14:  00000020 0021fbac 00000000 00000005
Backtrace:
=>0 0x004f33f5 in limbo (+0xf33f5) (0x00000000)
0x004f33f5 limbo+0xf33f5: cmpb	$0x0,0x0(%esi)
Modules:
Module	Address			Debug info	Name (130 modules)
PE	00400000-00940000	Export          limbo
PE	00b80000-00fff000	Deferred        ole32
PE	01000000-01218000	Deferred        rpcrt4
PE	01220000-025db000	Deferred        wined3d
PE	02f70000-02ff4000	Deferred        winex11
PE	10000000-101ff000	Deferred        d3dx9_43
ELF	5d515000-61fc0000	Deferred        libllvm-11.so.1
PE	61fc0000-620ca000	Deferred        dinput8
PE	64180000-64221000	Deferred        winspool
PE	64a80000-64ad8000	Deferred        win32u
PE	65680000-65903000	Deferred        msvcrt
PE	66080000-66179000	Deferred        shlwapi
PE	66640000-6665b000	Deferred        version
PE	667c0000-66806000	Deferred        shcore
PE	66fc0000-66fe4000	Deferred        compstui
PE	67500000-67553000	Deferred        imm32
PE	67bc0000-68044000	Deferred        comctl32
PE	684c0000-6860f000	Deferred        combase
PE	68880000-68d70000	Deferred        user32
PE	69040000-69261000	Deferred        comdlg32
PE	69840000-6993c000	Deferred        advapi32
ELF	69cf9000-6aac0000	Deferred        i965_dri.so
PE	6aac0000-6ada5000	Deferred        ucrtbase
PE	6aec0000-6b070000	Deferred        setupapi
PE	6bbc0000-6bc59000	Deferred        sechost
PE	6cd40000-6cd6e000	Deferred        xinput1_3
PE	6da80000-6dcaa000	Deferred        gdi32
PE	6f1c0000-6f31e000	Deferred        d3d9
PE	70000000-70256000	Deferred        dbghelp
PE	70d80000-70e20000	Deferred        uxtheme
PE	71080000-710a8000	Deferred        hid
PE	71400000-720b7000	Deferred        shell32
PE	76610000-76632000	Deferred        misty_api
ELF	7764b000-78e80000	Deferred        libz3.so.4
ELF	7a068000-7a800000	Deferred        libvulkan_intel.so
PE	7a800000-7acc2000	Deferred        opengl32
PE	7b000000-7b52e000	Deferred        kernelbase
PE	7b600000-7b75b000	Deferred        kernel32
ELF	7b783000-7b800000	Deferred        libglx_mesa.so.0
PE	7bc00000-7bec4000	Deferred        ntdll
ELF	7bee2000-7beef000	Deferred        libpciaccess.so.0
ELF	7beef000-7befe000	Deferred        libdrm_radeon.so.1
ELF	7c001000-7c00b000	Deferred        libdrm_nouveau.so.2
ELF	7c00b000-7c034000	Deferred        libdrm_intel.so.1
ELF	7c034000-7c03e000	Deferred        libxcb-xfixes.so.0
ELF	7c03e000-7c043000	Deferred        libxcb-shm.so.0
ELF	7c043000-7c061000	Deferred        libxcb-glx.so.0
ELF	7c061000-7c0de000	Deferred        libgldispatch.so.0
ELF	7c0de000-7c14b000	Deferred        libgl.so.1
ELF	7c4cd000-7c9f2000	Deferred        libvulkan_lvp.so
ELF	7c9f2000-7d000000	Deferred        libvulkan_radeon.so
ELF	7d000000-7d005000	Deferred        <wine-loader>
ELF	7d006000-7d02f000	Deferred        libglapi.so.0
ELF	7d02f000-7d100000	Deferred        libzstd.so.1
ELF	7d201000-7d206000	Deferred        libxdamage.so.1
ELF	7d206000-7d242000	Deferred        libglx.so.0
ELF	7d242000-7d24d000	Deferred        libvklayer_mesa_device_select.so
ELF	7d24d000-7d276000	Deferred        libtinfo.so.6
ELF	7d276000-7d282000	Deferred        librt.so.1
ELF	7d282000-7d2ba000	Deferred        libedit.so.2
ELF	7d2ba000-7d2d0000	Deferred        libdrm.so.2
ELF	7d2d0000-7d372000	Deferred        opengl32.so
ELF	7d372000-7d400000	Deferred        libgmp.so.10
ELF	7d406000-7d40d000	Deferred        libxcb-dri2.so.0
ELF	7d40d000-7d417000	Deferred        libatomic.so.1
ELF	7d417000-7d420000	Deferred        libxcb-sync.so.1
ELF	7d420000-7d434000	Deferred        libxcb-randr.so.0
ELF	7d434000-7d444000	Deferred        libwayland-client.so.0
ELF	7d444000-7d462000	Deferred        libelf.so.1
ELF	7d462000-7d46f000	Deferred        libdrm_amdgpu.so.1
ELF	7d46f000-7d484000	Deferred        libnss_files.so.2
ELF	7d484000-7d48e000	Deferred        libffi.so.7
ELF	7d48e000-7d4d7000	Deferred        libhogweed.so.6
ELF	7d4d7000-7d522000	Deferred        libnettle.so.8
ELF	7d522000-7d539000	Deferred        libtasn1.so.6
ELF	7d539000-7d6bb000	Deferred        libunistring.so.2
ELF	7d6bb000-7d6dd000	Deferred        libidn2.so.0
ELF	7d6dd000-7d832000	Deferred        libp11-kit.so.0
ELF	7d832000-7d892000	Deferred        libdbus-1.so.3
ELF	7d892000-7d8d3000	Deferred        libcrypt.so.1
ELF	7d8d3000-7daf9000	Deferred        libgnutls.so.30
ELF	7daf9000-7dbd5000	Deferred        libkrb5.so.3
ELF	7de47000-7de4c000	Deferred        libxcb-present.so.0
ELF	7de4c000-7de6b000	Deferred        libgcc_s.so.1
ELF	7e037000-7e03a000	Deferred        libxshmfence.so.1
ELF	7e03a000-7e03f000	Deferred        libx11-xcb.so.1
ELF	7e03f000-7e059000	Deferred        libresolv.so.2
ELF	7e059000-7e061000	Deferred        libkeyutils.so.1
ELF	7e061000-7e071000	Deferred        libkrb5support.so.0
ELF	7e071000-7e087000	Deferred        libavahi-client.so.3
ELF	7e087000-7e0e1000	Deferred        libgssapi_krb5.so.2
ELF	7e0e1000-7e166000	Deferred        libcups.so.2
ELF	7e18a000-7e19a000	Deferred        libavahi-common.so.3
ELF	7e19a000-7e1cd000	Deferred        libk5crypto.so.3
ELF	7e227000-7e22f000	Deferred        libxfixes.so.3
ELF	7e230000-7e236000	Deferred        libxcb-dri3.so.0
ELF	7e236000-7e23b000	Deferred        libcom_err.so.2
ELF	7e23b000-7e241000	Deferred        winspool.so
ELF	7e243000-7e2a5000	Deferred        libvulkan.so.1
ELF	7e2a5000-7e2b9000	Deferred        libxi.so.6
ELF	7e2b9000-7e2be000	Deferred        libxcomposite.so.1
ELF	7e2be000-7e2cb000	Deferred        libxrandr.so.2
ELF	7e2cb000-7e2d7000	Deferred        libxrender.so.1
ELF	7e2d7000-7e2de000	Deferred        libxxf86vm.so.1
ELF	7e2de000-7e2ed000	Deferred        libmd.so.0
ELF	7e2ed000-7e305000	Deferred        libbsd.so.0
ELF	7e305000-7e30c000	Deferred        libxdmcp.so.6
ELF	7e30c000-7e33a000	Deferred        libxcb.so.1
ELF	7e33a000-7e48c000	Deferred        libx11.so.6
ELF	7e48c000-7e4a2000	Deferred        libxext.so.6
ELF	7e4a2000-7e4af000	Deferred        libxcursor.so.1
ELF	7e4b6000-7e543000	Deferred        winex11.so
ELF	7e543000-7e54d000	Deferred        libuuid.so.1
ELF	7e54d000-7e57b000	Deferred        libexpat.so.1
ELF	7e57b000-7e5c8000	Deferred        libfontconfig.so.1
ELF	7e5c8000-7e5eb000	Deferred        libbrotlicommon.so.1
ELF	7e5eb000-7e5f9000	Deferred        libbrotlidec.so.1
ELF	7e5f9000-7e617000	Deferred        libz.so.1
ELF	7e617000-7e657000	Deferred        libpng16.so.16
ELF	7e657000-7e71e000	Deferred        libfreetype.so.6
ELF	7e71e000-7e822000	Deferred        libm.so.6
ELF	7e822000-7e827000	Deferred        libxinerama.so.1
ELF	7e827000-7e82c000	Deferred        libxau.so.6
ELF	7e836000-7e9a9000	Deferred        win32u.so
ELF	7e9a9000-7eb32000	Dwarf           libwine.so.1
ELF	f7469000-f751a000	Deferred        ntdll.so
ELF	f751a000-f7703000	Deferred        libc.so.6
ELF	f7703000-f7709000	Deferred        libdl.so.2
ELF	f7709000-f772b000	Deferred        libpthread.so.0
ELF	f7741000-f776d000	Deferred        ld-linux.so.2
Threads:
process  tid      prio    name (all IDs are in hex)
00000020 (D) Z:\home\user\Limbo\limbo.exe
	00000024    0 <== 
	00000108    0     wined3d_cs
	00000114    0     
00000038 services.exe
	0000003c    0     
	00000040    0     wine_rpcrt4_server
	00000054    0     wine_rpcrt4_io
	00000078    0     wine_rpcrt4_io
	000000a0    0     wine_rpcrt4_io
	000000b8    0     wine_rpcrt4_io
	000000e8    0     wine_rpcrt4_io
00000044 winedevice.exe
	00000048    0     
	0000005c    0     
	00000060    0     wine_sechost_service
	00000064    0     
	00000068    0     
	0000006c    0     
	000000c4    0     
0000004c explorer.exe
	00000050    0     
	000000c8    0     
	000000cc    0     
	000000d8    0     wine_rpcrt4_server
00000070 winedevice.exe
	00000074    0     
	0000007c    0     
	00000080    0     wine_sechost_service
	00000084    0     
	00000088    0     
	0000008c    0     
	00000098    0     
	0000009c    0     
00000090 plugplay.exe
	00000094    0     
	000000a4    0     
	000000a8    0     wine_sechost_service
	000000ac    0     wine_rpcrt4_server
000000b0 svchost.exe
	000000b4    0     
	000000bc    0     
	000000c0    0     wine_sechost_service
000000d0 conhost.exe
	000000d4    0     
000000e0 rpcss.exe
	000000e4    0     
	000000f0    0     
	000000f4    0     wine_sechost_service
	000000f8    0     wine_rpcrt4_server
	000000fc    0     wine_rpcrt4_server
	00000100    0     wine_rpcrt4_io
System information:
    Wine build: wine-8.1
    Platform: i386
    Version: Windows 8.1
    Host system: Linux
    Host version: 5.10.0-debian-amd64-smp
What I've tried:
--Both native and winetricks versions of d3dx9_43 and d3dcompiler_43
--Emulate different versions of windows
--Tried running winetricks wglgears and 3DMark2005, both worked

Could someone perhaps help with this, please?
Thanks beforehand.
jkfloris
Level 12
Level 12
Posts: 3136
Joined: Thu Aug 14, 2014 10:10 am

Re: Playdead Limbo game used to work before, now just throws errors

Post by jkfloris »

Does the game start with:
(replace /path/to/the/installation/directory/Limbo with the actual path)

Code: Select all

cd /path/to/the/installation/directory/Limbo
WINEPREFIX="$HOME"/.wine32 wine limbo.exe
# or
WINEPREFIX="$HOME"/.wine32 wine start /unix /path/to/the/installation/directory/Limbo/limbo.exe
F_style
Level 4
Level 4
Posts: 153
Joined: Sat Sep 25, 2010 8:55 pm

Re: Playdead Limbo game used to work before, now just throws errors

Post by F_style »

Yes, with any of those it finally runs again!

I think I had seen a similar issue here in the forums, in a thread many years old, where the user was unable to make program work like

Code: Select all

wine path/to/program.exe
and the solution was

Code: Select all

cd path/to
wine program.exe
However, with a program like Supremo for remote assistance, I have no problems at all by running it like the first way...

What can the difference be here? Why do some programs need to either previously cd the directory or the "start /unix" option, while others don't need them at all?
By the way, I tried looking this in the FAQ, and this situation is not mentioned there...

Thanks again very much for your assistance.
F_style
Level 4
Level 4
Posts: 153
Joined: Sat Sep 25, 2010 8:55 pm

Re: Playdead Limbo game used to work before, now just throws errors

Post by F_style »

This is merely informative:
If any of d3dx9_43 and d3dcompiler_43 is missing, it fails with error:

Code: Select all

0114:err:d3dcompiler:D3DCompile2 Failed to compile shader, vkd3d result -4.
0114:err:d3dcompiler:D3DCompile2 Shader log:
0114:err:d3dcompiler:D3DCompile2     <anonymous>:28:1: E5000: syntax error, unexpected KW_SAMPLER_STATE
0114:err:d3dcompiler:D3DCompile2
So yes, they're still needed (I still don't know how library overrides in winecfg work...)
jkfloris
Level 12
Level 12
Posts: 3136
Joined: Thu Aug 14, 2014 10:10 am

Re: Playdead Limbo game used to work before, now just throws errors

Post by jkfloris »

In this case, Limbo tries to find the limbo_boot.pkg file. And expect to find the file in the directory from which the game is started, or in a directory that is in the PATH variable. Other programs could reference to a file with the full path name.

The WineHQ Wiki has some more information about this:
https://wiki.winehq.org/Wine_User%27s_G ... mmand_line

So basically, there are two "good" ways to start a program with Wine

Code: Select all

cd /path/to
wine program.exe
# or
wine start /unix /path/to/program.exe
F_style
Level 4
Level 4
Posts: 153
Joined: Sat Sep 25, 2010 8:55 pm

Re: Playdead Limbo game used to work before, now just throws errors

Post by F_style »

Thanks very much. Now everything makes more sense.

Is there a way to mark the thread as "solved" here?
Locked