Vegz78 / McAirpos

MakeCode Arcade games in RetroPie, Recalbox 7/8 and Batocera, running natively as ELF executables on Raspberry Pi OS/Linux ARM with 1-2 gamepads
https://Vegz78.github.io/McAirpos
MIT License
84 stars 11 forks source link

Crashes on raspberry pi 3b #56

Open ShrimpCat23 opened 9 months ago

ShrimpCat23 commented 9 months ago

i tried putting games on it such as flying through time but after a few seconds it freezes and crashes, i've tried retropie, batocera, recalbox 7 & 8, and they all do the same thing.

Vegz78 commented 6 months ago

Hi @ShrimpCat23,

Thanks for trying McAirpos and sorry for my late reply.

I had several challenges for both compiling and running this game, Flyting Through TIme, myself as a Linux ARM .elf executable; https://arcade.makecode.com/gamejam/time#:~:text=Third%20Place%20(tie)%3A%20Flying%20Through%20Time

First, I got an error in the current MakeCode Editor(v1.12.51) that the file was too big for the target hardware(RPi).

If I stripped a lot of memory heavy assets from the game(images and music) or went back to an earlier editor, for instance v1.11.1, the game would compile.

But then, on execution, I would get the same error symptoms as you describe.

The log, /tmp/McAirpos.log, then showed me a Segmentation fault, indicating, apart from the size it self, some memory problems, which earlier were suspected to have been caused by some extension or operation that are not supported by Linux hardware/executables in MakeCode Arcade.

The Linux .elf executable compilation in MakeCode Arcade is not as actively maintained as the web simulator and other hardware. As such, the functionality(and game size) one can expect to work here is therefore a subset of what would work in the web simulator. This subset is probably also getting relatively smaller over time, as MakeCode arcade is developed, and also Linux and the retro gaming systems themselves. https://arcade.makecode.com/hardware

There is already an example here for an advanced MakeCode Arcade game, which gets an error on Linux: https://github.com/microsoft/pxt-arcade/issues/4847

Other current games, but smaller, less advanced and with fewer extension, I have recently compiled and tested from the current and most recent version of the MakeCode Arcade editor.

Have you tried to run your crashing games on Microsoft's official firmware for Raspberry Pi(or other supported hardware, like the Meowbit) and checked if it runs there?: https://learn.adafruit.com/makecode-arcade-with-raspberry-pi-zero/firmware#firmware-3-1

If not, please file an issue here instead: https://github.com/microsoft/pxt-arcade/issues

ShrimpCat23 commented 6 months ago

so i tried putting the game flying through time on my meowbit, but the file was too big.

not only did McAirpos crash on flying through time, but other games, such as blocky boss battle or jumpy platformer. they dont crash on my meowbit, just McAirpos.

Vegz78 commented 6 months ago

Could you check if this jumpy platformer version also crashes on your McAirpos setup?: https://drive.google.com/file/d/1xl-M6DyHflIE1A9BNS8yNUPrOyNzCGPr/view?usp=sharing

If so, what system(hw and OS) are you on, and could you send me a copy of your /tmp/McAirpos.log right after you have started the game and it fails?