ptitSeb / box86

Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices
https://box86.org
MIT License
3.35k stars 232 forks source link

Super Meat Boy not working on raspberry pi 3 #94

Closed gercapo closed 4 years ago

gercapo commented 4 years ago

pi@raspberrypi:~/supermeatboy $ ./SuperMeatBoy Super Meat Boy: Installed in '/home/pi/supermeatboy'. Super Meat Boy: Using x86 version. Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 59 Env var Looking for ./x86/SuperMeatBoy Using native(wrapped) libdl.so.2 Using native(wrapped) libpthread.so.0 Error initializing native libSDL2-2.0.so.0 (last dlerror is libSDL2-2.0.so.0: cannot open shared object file: No such file or directory) Using emulated x86/libSDL2-2.0.so.0 Using native(wrapped) libm.so.6 Using native(wrapped) librt.so.1 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) libopenal.so.1 Using emulated x86/libmariadb.so.1 Using emulated x86/libsteam_api.so Using emulated /usr/lib/i386-linux-gnu/libstdc++.so.6 Using emulated /usr/lib/i386-linux-gnu/libgcc_s.so.1 Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb61b419c (0x6b506) Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb61b4478 (0x6c076) Using native(wrapped) libX11.so.6 Using native(wrapped) libXext.so.6 Using native(wrapped) libxcb.so.1 Using native(wrapped) libXau.so.6 Using native(wrapped) libXdmcp.so.6 Using native(wrapped) libXcursor.so.1 Using native(wrapped) libXinerama.so.1 Using native(wrapped) libXi.so.6 Using native(wrapped) libXrandr.so.2 Using native(wrapped) libXrender.so.1 Using native(wrapped) libXss.so.1 Using native(wrapped) libXxf86vm.so.1 Using native(wrapped) libdbus-1.so.3 Using native(wrapped) libGL.so.1 [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed. [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so. Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock

Fatal Error: Missing required shader!

AL lib: (EE) alc_cleanup: 1 device not closed

ptitSeb commented 4 years ago

SuperMeatBoy works for me (on a Pi4 and a Pandora). It seems one shader is not loading. Are you using mesa OpenGL with VC4 driver? Can you try with gl4es maybe? Also, how did you install the game?

gercapo commented 4 years ago

At the beginning it was frozen with a black screen but when updating the version of box86 that happens. Can the files be corrupted? I am using the vc4 driver.

ptitSeb commented 4 years ago

Maybe a file is corrupted. But that's probably something else. I'll retry tonight on my Pandora (at least) tonight, to check if it's still working

ptitSeb commented 4 years ago

I rechecked on my side, and on the Pandora, with latest version of box86 and gl4es, it's working fine.

Here is my "root" folder for the game:

drwxr-xr-x 2 seb seb      4096 Nov 11  2013 amd64
-rw-r--r-- 1 seb seb       173 Oct 30 22:50 buttonmap.cfg
-rw-r--r-- 1 seb seb 151018399 Nov 11  2013 gameaudio.dat
-rw-r--r-- 1 seb seb  95044834 Nov 11  2013 gamedata.dat
drwxr-xr-x 2 seb seb      4096 Nov 11  2013 Levels
-rw-r--r-- 1 seb seb    104224 Oct 21 20:25 libgcc_s.so.1
-rwxr-xr-x 1 seb seb    318705 Oct 21 20:25 libmariadb.so.1
-rwxr-xr-x 1 seb seb    297452 Oct 21 20:25 libopenal.so.1
-rwxr-xr-x 1 seb seb    949812 Oct 21 20:25 libSDL2-2.0.so.0
-rw-r--r-- 1 seb seb    934644 Oct 21 20:25 libstdc++.so.6
-rwxr-xr-x 1 seb seb     66686 Oct 21 20:25 libsteam_api.so
-rw-r--r-- 1 seb seb    168078 Nov 11  2013 locdb.txt
-rw-r--r-- 1 seb seb      2742 Nov 11  2013 mariadb-mac-patch.diff
-rw-r--r-- 1 seb seb        48 Feb 11  2019 powervr.ini
-rw-r--r-- 1 seb seb     26936 Nov 11  2013 README-licenses.txt
-rw-r--r-- 1 seb seb       410 Nov 11  2013 README-linux.txt
drwxr-xr-x 5 seb seb      4096 Nov 11  2013 resources
-rw-r--r-- 1 seb seb         5 Nov 11  2013 steam_appid.txt
-rw-r--r-- 1 seb seb      3262 Nov 11  2013 supermeatboy.png
drwxr-xr-x 2 seb seb      4096 Jan 21  2019 x86

And the ressources/Shaders is

-rw-r--r-- 1 seb seb  248 Nov 11  2013 1D5E4E2D.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 1FD7C73E.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 28254630.bin
-rw-r--r-- 1 seb seb  224 Nov 11  2013 2E6D11E3.bin
-rw-r--r-- 1 seb seb  364 Nov 11  2013 31D82DB3.bin
-rw-r--r-- 1 seb seb  360 Nov 11  2013 48E79BD6.bin
-rw-r--r-- 1 seb seb  164 Nov 11  2013 5591F865.bin
-rw-r--r-- 1 seb seb  192 Nov 11  2013 5645143E.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 595EB889.bin
-rw-r--r-- 1 seb seb  428 Nov 11  2013 5C046922.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 6EAC3987.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 8C5BC4F5.bin
-rw-r--r-- 1 seb seb  164 Nov 11  2013 8C6DD176.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 9656085F.bin
-rw-r--r-- 1 seb seb  268 Nov 11  2013 B32E9766.bin
-rw-r--r-- 1 seb seb  248 Nov 11  2013 B6E3FEEC.bin
-rw-r--r-- 1 seb seb  296 Nov 11  2013 BB54E827.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 BBA945FB.bin
-rw-r--r-- 1 seb seb  324 Nov 11  2013 BF1F7C07.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 CAD2BB42.bin
-rw-r--r-- 1 seb seb  316 Nov 11  2013 D7687418.bin
-rw-r--r-- 1 seb seb  260 Nov 11  2013 EFAE0C6D.bin
-rw-r--r-- 1 seb seb  320 Nov 11  2013 F8F5D6A5.bin
-rw-r--r-- 1 seb seb  200 Nov 11  2013 FD203A4C.bin
-rw-r--r-- 1 seb seb 2214 Nov 11  2013 psshaders.frags
-rw-r--r-- 1 seb seb 6176 Nov 11  2013 psshaders.psh
-rw-r--r-- 1 seb seb 4379 Nov 11  2013 ShaderMacros.h
-rw-r--r-- 1 seb seb 1111 Nov 11  2013 vsshaders.frags
-rw-r--r-- 1 seb seb 2397 Nov 11  2013 vsshaders.vsh

I launch it with box86 x86/SuperMeatBoy (and I copied the libs from x86 to here, but that no more needed now) directly. If your structure is equivalent, then I suggest you try it with gl4es, just to be sure.

gercapo commented 4 years ago

The game works perfectly. Fps around 30 in game. 20200213_121422 20200213_121537 `` You must install the latest Mesa graphics library and have updated Box86. Thank you for making this possible!

gercapo commented 4 years ago

When i open it again this appears i don't know why. pi@raspberrypi:~/supermeatboy/x86 $ GALLIUM_HUD="simple,fps" box86 SuperMeatBoy Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 59 Env var Looking for SuperMeatBoy Using native(wrapped) libdl.so.2 Using native(wrapped) libpthread.so.0 Error initializing native libSDL2-2.0.so.0 (last dlerror is libSDL2-2.0.so.0: cannot open shared object file: No such file or directory) Using emulated libSDL2-2.0.so.0 Using native(wrapped) libm.so.6 Using native(wrapped) librt.so.1 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) libopenal.so.1 Using emulated libmariadb.so.1 Using emulated libsteam_api.so Using emulated /usr/lib/i386-linux-gnu/libstdc++.so.6 Using emulated /usr/lib/i386-linux-gnu/libgcc_s.so.1 Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb616619c (0x6b506) Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb6166478 (0x6c076) Using native(wrapped) libX11.so.6 Using native(wrapped) libXext.so.6 Using native(wrapped) libxcb.so.1 Using native(wrapped) libXau.so.6 Using native(wrapped) libXdmcp.so.6 Using native(wrapped) libXcursor.so.1 Using native(wrapped) libXinerama.so.1 Using native(wrapped) libXi.so.6 Using native(wrapped) libXrandr.so.2 Using native(wrapped) libXrender.so.1 Using native(wrapped) libXss.so.1 Using native(wrapped) libXxf86vm.so.1 Using native(wrapped) libdbus-1.so.3 Using native(wrapped) libGL.so.1 [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed. [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so. Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock Warning: Cannot dlopen("libudev.so.1"/0xb648fad3, 2) Using native(wrapped) libudev.so.0

ptitSeb commented 4 years ago

I just noticed this line in your log: Error initializing native libSDL2-2.0.so.0 (last dlerror is libSDL2-2.0.so.0: cannot open shared object file: No such file or directory) It seems you don't have SDL2 installed on your Pi. Is that intentionnal?

Also, if it runs the first time and not the second time, that's probably a parameter saved, like a screen resolution? Also, in the home folder, there should be a log file, with maybe some more informations.

gercapo commented 4 years ago

I have installed sdl2 I have a black screen and this pi@raspberrypi:~/supermeatboy/x86 $ GALLIUM_HUD="simple,fps" box86 SuperMeatBoy Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 60 Env var Looking for SuperMeatBoy Using native(wrapped) libdl.so.2 Using native(wrapped) libpthread.so.0 Using native(wrapped) libSDL2-2.0.so.0 Using native(wrapped) libm.so.6 Using native(wrapped) librt.so.1 Using native(wrapped) libopenal.so.1 Using emulated libmariadb.so.1 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using emulated libsteam_api.so Using emulated /usr/lib/i386-linux-gnu/libstdc++.so.6 Using emulated /usr/lib/i386-linux-gnu/libgcc_s.so.1 Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb57bb19c (0x6b506) Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb57bb478 (0x6c076) [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed. [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so. Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock Will I have to reinstall the game? Maybe the sd is corrupted.

ptitSeb commented 4 years ago

It seems you have an issue with Jack. Try with some other sound output, using SDL_AUDIODRIVER=alsa for example.

gercapo commented 4 years ago

Apparently with full kms there are no problems with the super meat boy but with fake kms there are problems. What I don't understand is why it worked once or twice and then stopped walking.

ptitSeb commented 4 years ago

I guess the drivers gets instable, and you need a reboot between 2 runs?

gercapo commented 4 years ago

With fake kms it worked after I updated the box86 and then it stopped working. I used fake kms to configure the desktop resolution because with full kms it is not possible

ptitSeb commented 4 years ago

Well, that still looks more like a mesa issue than a box86 issue at this point. With full kms, is it running fine and full speed? And with fake kms, does it run after a reboot?