Celeste crashes with RISC-V dynarec enabled
Trying to run this on a Star64 (StarFive JH7110, 8 GB RAM) with an external GPU (Radeon HD 7870).
The game works up until the opening cutscene (with promising performance!), but once the level is going to load, it crashes with a System.OutOfMemoryException.
celeste.log
When running the game with BOX64_DYNAREC=0, it works, but of course very slowly.
This is on the current itch.io version of the game (1.4.0.0), box64 version 7bef7724.
can you try updating your box64?
Still the same, unfortunately: celeste.log
Now I've tried running it with BOX64_DYNAREC_TEST=1, seems like there might be something wrong with SSE register handling?
dynarec_diff.log.gz
Ok, I reproduce the issue on my side (just received a MilkV Pioneer, so I could test this with a proprer graphic card). I'll check dynarec_test on my side indeed, looks promising.
So, I pushed some fixes on the Dynarec. It helps, but doesn't fix completly the loading of Celeste...
Ah, Celeste has been crashing before entering the 2D game scene since the beginning of RV64 porting.. I forgot to open a ticket for it.
Should be fixed now. You can update and try again.
Awesome, it runs pretty playable! Thanks for fixing! It seems to crash occasionally (after entering and exiting the options menu, then entering a level or so, had one SIGABRT and one uncaught exception until now), should I post more logs here if I get usable ones or open other issues for that?
you can post logs in here
Played the second level for a while, Save and Quit, re-entered the level, then got this crash.
@Manorhos is this still an issue with the latest Box64?
I've played up to mid-Chapter 3 now on v0.3.8 and I can't really say anything conclusive, except that the game runs a lot more stable than it used to. I've had one single crash upon loading Chapter 2's B-Side right after unlocking it, but I can't reproduce a crash by loading levels repeatedly anymore. Unfortunately, I didn't save a log for that one crash I had, I'll post one if I get another.
One thing I noticed is that on some runs of the game there are a bunch of FillBlock segfaults while on other runs these just don't happen. I'll attach an example log of that (the segfault at the end happened while quitting the game).