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

Crashes on GOG-titles on RPi3 #282

Closed Michas0206 closed 2 years ago

Michas0206 commented 3 years ago

I followed your instructions (compile.md) here to install Box86 on my Pi 3. Then I tried FTL from GOG, install process seems fine - but when I try to start FTL, terminal shows several times "failed to parse font data", after a while whole screen goes black with a white prompt, then it shows Raspberrys login-screen.

After this I tried Thimbleweed Park (GOG), install crashes after a while with something like "heavy error, cannot create file" and terminal showed something with segfault.

Have I missed something to install, maybe?

Btw, I dont think this has to do with the crashes, bit when I run an installer (of a GOG Game), terminal says

(Box86:1063): Gtk-warning **: 04:04:32:500 in path >murrine< no theme engine could be found

Michas0206 commented 3 years ago

Today I tried to install gl4es, not sure if necessary at all, with no changes. After this I tried to compile 0.1.8 from releases .tar.gz with the same result. Now I am sitting infront of a fresh compilation with Dynarec on, same result. Played with gpu memory split, GL driver (changed to fake kms), same results.

VVVVV (Gog) is the only game so far which "starts" - I hear sounds and some (broken) objects after pressing space several times in blackscreen...but thats it.

Am I trying just the 'wrong' games?

There are no (visible) errors during install, so I not really know whats wrong here.

ptitSeb commented 3 years ago

FTL and VVVVV should both works fine. Thimbleweed Park I'm unsure there is a x86 version of it.

I don't have a Pi3 so I cannot test myself. If you use v0.1.8 sources, they should work with no issue. If you are using master, make sure you get the latest source (from 5min before this answer).

I suspect it's an issue with your GL driver. But I can't tell what could be the issue. The behaviour you discribe looks like a GL driver reset, but again, I have no experience with the PI3 or earlier. The Kernel memory use a 2G/2G split (instead of 3G/1G), making all address >= 0x80000000 unavailable, but box86 should be ok with that, and also most linux games (but no windows game can run). If you can, go to the discord listed in the readme, you may find people with more Pi3 experience than me.

Michas0206 commented 3 years ago

Thanks for answer, I also assume that there is a problem somewhere in my graphic-driver (or my Box86 install), on the other side everything else I use (without Box86) and using OpenGl works fine so far (ScummVM, Scorched 3d, Pingus, Warmux...) - but I do not know what exactly could cause these issues...

Really strange. I'll Google and read a bit, hopefully I find something useful. I'll check discord later today

Michas0206 commented 3 years ago

I am now sitting in front of a working "Super Hexagon" (Gog)...

Without any visible issues, everything seems fine.

This makes it more strange...and makes me wonder why FTL, Thimbleweed or VVVVV wont work here or have massive graphical issues...

ptitSeb commented 3 years ago

SuperHexagon is more simple (OpenGL-wise) than FTL or VVVVV, that both use OpenGL 2.x with shaders (can't say for Thimbleweed). WorldOfGoo don't use shaders either, if you have that game.

Michas0206 commented 3 years ago

Another World also works fine, Warsow complaining about missing libpng12-lib, if I try to install, my system want to uninstall 4 or 5 other dev libs...tried it anyway but without success.

Hotline Miami says "Error: loading needed libs in elf ./hotline...

But what are the correct libs I definately need? Is there possibly a problem in my system with wrong/missing libs?

Is there a list somewhere which libs definately should be installed for Box86? Or a test to check if OpenGL with shaders are working as they should here?

ptitSeb commented 3 years ago

use BOX86_LOG=1 to see what libs are loading or missing. libpng12.so can be tricky to find, distro tend to not include it now. You can use the x86 version as a backup (just drop it in the same folder as the exe or in you /usr/lib/i386*/ folder). Note that it will still complains that the native libpng12 cannot be found and will falback to the x86 one

Michas0206 commented 3 years ago

With your latest commits, I at least hear sound in Warsow, but still the same problems for FTL or VVVVVV. In the meanwhile I updated Mesa to version 21, but without success, same problems. With BOX86_LOG=1 I was able to figure out whats missing in Hotline Miami, there is a thread at GOG and I'll see what happens when the missing libs are downloaded in a few minutes. I found out that Thimbleweed-Park is a 64-bit file, not sure if 32bit is available at all so I deleted it.

But I am still wondering whats going on with FTL and VVVVVV, the log tells nothing in VVVVVV and FTL is crashing/restarting X, so I dont see if its caused by libs somehow.

Tomorrow I do further tests with otherr games... Edit: Hotline Miami seems to work perfect

ptitSeb commented 3 years ago

I renamed the ticket.

Also, if you try with gl4es (FTL and VVVVV works with gl4es, I test them often on my Pandora), be sure to build with the "ODROID" profile and not the "BCMHOST" profile, as it's only for legacy driver, and I assume you use mesa with the vc4 driver. Also, don't forget to use LD_LIBRARY_PATH=/PATH/TO/gl4es/lib and not overwrite system libGL.so with gl4es.

Michas0206 commented 3 years ago

Today I tried it with Legacy driver turned on and installed gl4es (for legacy), some things were fine, others (VVVVVV and FTL) not. FTL not even showed the loading screen, just black, so I stopped quickly and reverted to GL-driver.

Not sure whats going wrong here, atm I try to compile Xash3d to give it a try. Tomorrow I check this problem with a clean install of Raspberry Pi OS on a second Sd-card

Edit: I am now sitting infront of Half Life, seems to work fine. Strange, still wondering whats going on with VVVVVV and FTL....I am really going to think its a problem with the GOG-versions somehow, but I will proof with a fresh Raspbian tomorrow.

ptitSeb commented 2 years ago

Can this ticket be closed now?

Michas0206 commented 2 years ago

I think so - I have not tried it again the last 2 years, I still have and use the Pi 3 - but currently no time to check this and play. But I see you made lots of progress in the meanwhile, same for Raspberry Pi's drivers, so I assume it works now...and furthermore I am still unsure If I made something wrong / used wrong versions of these games / were the problem by myself.

If I find the time to try this again and encounter a problem I file a new bug report.

Am 11. Oktober 2022 15:30:26 UTC schrieb ptitSeb @.***>:

Can this ticket be closed now?

-- Reply to this email directly or view it on GitHub: https://github.com/ptitSeb/box86/issues/282#issuecomment-1274885579 You are receiving this because you authored the thread.

Message ID: @.***>