ptitSeb / box64

Box64 - Linux Userspace x86_64 Emulator with a twist, targeted at ARM64 Linux devices
https://box86.org
MIT License
3.9k stars 288 forks source link

Slay the Spire (Native) can not boot with box64 git 6c0af2d #1221

Closed ricoazzurro closed 9 months ago

ricoazzurro commented 9 months ago
  1. The game works with box64 release version v0.2.6 e42001b, but fails at latest git 6c0af2d. Not sure the exact commit broke the game.
  2. Tested two game version, v2.3.4 steam and v2.2 2020-12-15 gog.
  3. Failed log with game version v2.3.4 and box64 git 6c0af2d attached
rico [ /opt/games/slay_the_spire ]$ ./box64-start.sh 
Dynarec for ARM64, with extension: ASIMD AES CRC32 PMULL ATOMICS SHA1 SHA2 PageSize:4096 Running on Cortex-A55 Cortex-A76 with 8 Cores
Params database has 54 entries
Box64 with Dynarec v0.2.7 6c0af2d built on Jan 28 2024 02:12:09
BOX64: Didn't detect 48bits of address space, considering it's 39bits
Counted 64 Env var
BOX64 LIB PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/:/lib/x86_64-linux-gnu/:/usr/lib/x86_64-linux-gnu/
BOX64 BIN PATH: ./:bin/:/opt/rustc/bin/:/usr/local/bin/:/usr/bin/:/opt/ant/bin/:/opt/jdk/bin/:/opt/bin/
Looking for ./SlayTheSpire
Rename process to "SlayTheSpire"
Using native(wrapped) libdl.so.2
Using emulated /lib/x86_64-linux-gnu/libstdc++.so.6
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
Using native(wrapped) libm.so.6
Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1
Warning: Global Symbol _ZN9__gnu_cxx21zoneinfo_dir_overrideEv not found, cannot apply R_X86_64_GLOB_DAT @0x3f0024e268 ((nil)) in /lib/x86_64-linux-gnu/libstdc++.so.6
Using emulated jre/lib/amd64/server/libjvm.so
libjvm detected, disable Dynarec BigBlock and enable Dynarec StrongMem
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libverify.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libjava.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libzip.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libmanagement.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libnet.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libnio.so
18:16:19.330 INFO desktop.DesktopLauncher> time: 1706379379319
18:16:19.413 INFO desktop.DesktopLauncher> version: 2022-12-18
18:16:19.414 INFO desktop.DesktopLauncher> libgdx:  1.9.5
18:16:19.414 INFO desktop.DesktopLauncher> default_locale: en_US
18:16:19.414 INFO desktop.DesktopLauncher> default_charset: UTF-8
18:16:19.415 INFO desktop.DesktopLauncher> default_encoding: UTF-8
18:16:19.415 INFO desktop.DesktopLauncher> java_version: 1.8.0_131
18:16:19.415 INFO desktop.DesktopLauncher> os_arch: amd64
18:16:19.416 INFO desktop.DesktopLauncher> os_name: Linux
18:16:19.416 INFO desktop.DesktopLauncher> os_version: 5.10.198
18:16:19.422 INFO core.SystemStats> MEMORY STATS:
Free Memory: 188Mb
Max Memory: 910Mb
Allocated Memory: 236Mb
Unallocated Memory: 674Mb
Total Free Memory: 863Mb
Used Memory: 47Mb

18:16:19.424 INFO core.SystemStats> DISK STATS:
Total Space: 301,274Mb
Usable Space: 39,845Mb
Free Space: 55,221Mb

18:16:19.446 INFO core.DisplayConfig> Reading info.displayconfig
18:16:19.472 INFO core.DisplayConfig> DisplayConfig successfully read.
18:16:19.473 INFO desktop.DesktopLauncher> [WINDOWED_MODE]
18:16:19.474 INFO desktop.DesktopLauncher> Settings successfully loaded
18:16:19.474 INFO desktop.DesktopLauncher> Launching application...
Using emulated /tmp/libgdxrico/6ef2d459/libgdx64.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libawt.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libawt_xawt.so
Using native(wrapped) libXext.so.6
Using native(wrapped) libX11.so.6
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libXrender.so.1
Using native(wrapped) libXtst.so.6
Using native(wrapped) libXi.so.6
Using native(wrapped) libXinerama.so.1
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libfontmanager.so
Using emulated /opt/games/slay_the_spire/jre/lib/amd64/libjawt.so
Using emulated /tmp/libgdxrico/31ce78a2/liblwjgl64.so
Using native(wrapped) libXcursor.so.1
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXxf86vm.so.1
Using emulated /tmp/libgdxrico/31ce78a2/libopenal64.so
Using native(wrapped) libpulse.so.0
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00000000000425d3, pid=11067, tid=0x0000007f1b4ff060
#
# JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  0x00000000000425d3
#
# Core dump written. Default location: /opt/games/slay_the_spire/core or core.11067
#
# An error report file with more information is saved as:
# /opt/games/slay_the_spire/hs_err_pid11067.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
NativeBT: ./SlayTheSpire() [0x34a134fc]
NativeBT: linux-vdso.so.1(__kernel_rt_sigreturn+0) [0x7f8185d7cc]
NativeBT: /usr/lib/libc.so.6(+0x849b8) [0x7f816f49b8]
NativeBT: /usr/lib/libc.so.6(raise+0x1c) [0x7f816ab0ac]
NativeBT: /usr/lib/libc.so.6(abort+0xf4) [0x7f81696e00]
NativeBT: ./SlayTheSpire() [0x34f64568]
NativeBT: ./SlayTheSpire() [0x349f7548]
NativeBT: ./SlayTheSpire() [0x34a11c1c]
NativeBT: ./SlayTheSpire() [0x34a124c8]
NativeBT: ./SlayTheSpire() [0x34a13178]
NativeBT: linux-vdso.so.1(__kernel_rt_sigreturn+0) [0x7f8185d7cc]
EmulatedBT: box64(abort+0) [0x40080]
EmulatedBT: jre/lib/amd64/server/libjvm.so(_ZN2os5abortEb+35) [0x3f029263b5]
EmulatedBT: jre/lib/amd64/server/libjvm.so(_ZN7VMError14report_and_dieEv+6c3) [0x3f02ac8673]
EmulatedBT: jre/lib/amd64/server/libjvm.so(_ZN8CallInfo10set_commonE11KlassHandleS0_12methodHandleS1_NS_8CallKindEiP6Thread+9e) [0x3f027f5d7e]
EmulatedBT: ??? [(nil)]
11109|SIGABRT @0x7f816f49b8 (???(/usr/lib/libc.so.6+0x849b8)) (x64pc=0x40093/???:"???", rsp=0x7f1b6fc078, stack=0x7f1b600000:0x7f1b700000 own=0x7f1b600000 fp=0x7f1b6fc090), for accessing 0x3e800002b3b (code=-6/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=(nil)
RAX:0x0000000000000000 RCX:0x0000000000000001 RDX:0x0000000000000000 RBX:0x0000000000000001 
RSP:0x0000007f1b6fc078 RBP:0x0000007f1b6fc090 RSI:0x0000000000000008 RDI:0x0000000000000000 
 R8:0x0000000000000001  R9:0x0000007f1b6fbf98 R10:0x0000000000000007 R11:0x0000003f02932e30 
R12:0x0000007f0c02d570 R13:0x0000003f02f7ba00 R14:0x0000007f1b6fc2e0 R15:0x0000003f02fb6f05 
ES:0x002b CS:0x0033 SS:0x002b DS:0x002b FS:0x0043 GS:0x0053 
./box64-start.sh: line 9: 11067 Aborted                 (core dumped) box64 ./"SlayTheSpire"

Previously worked. I tested the game again because of https://github.com/ptitSeb/box86-compatibility-list/issues/295#issuecomment-1904668397

ptitSeb commented 9 months ago

I reproduce the issue (at least with the steam version). I'll bisect and see when I broke it.

ptitSeb commented 9 months ago

Ok, I think I have fixed the regression. If you can try with both your version.

ricoazzurro commented 9 months ago

Thank you <3 Both gog and steam versions fixed.

I'll close the issue :)