ArduBoy emulator

thanks to the @Lix’s topic “Arduboy Games on the GameShell”,
i have created a fork and added some tweaks for GameSH>,
and also instruction on how to install emulator for easy use.

so, just follow “How to install” section in README on the repo, and have fun.

NOTE: not every game will work on emulator.

4 Likes

Hi @ITCactus.

Thanks for you guide on github! I got as far as the following command:

sudo apt-get update && sudo apt-get install build-essential libelf-dev libsdl2-dev freeglut3-dev

However, I run into the following error:

ERROR: This version of the GNU libc requires kernel version 3.2 or later. Please upgrade your kernel before installing glibc.

libc_error

My CPi is more or less at factory state in terms of software, so pardon if this error is standard and trivial.

Regards,
Raphaël

hello @RaphaelTetreault,
i tested the guide on both clockwork OS v 0.3, and the latest one - 0.4.
i don’t remember if i had this error… perhaps i just ignored it and forget, because the clockwork OS v0.3 has a kernel 4.2, and clockwork OS v0.4 has a kernel 5.2.
so, in any case, you may just simply ignore the message about error.

Hi @ITCactus,

Thanks! Ignoring the error lets me proceed. I have built the binaries (in /home/cpi/games/ArduBoy/sim-arduboy), using lima for the GPU driver switch, and have the menu /home/cpi/apps/Menu/22_ArduBoy in it’s place. However, when the application opens a game (I’m testing with Ardynia) the emulator closes immediately afterwards. I had the same issue with PICO-8, so my assumption is the built binary is not in the proper location or a config file has not been updated to point to it. Any thoughts?

Regards,
Raphaël

try with some different games/apps.
i already mentioned, that “Ardynia” is not working with emulator

Recompile manually from scratch and make sure you installed the dependencies listed.

@ITCactus I’ve gone and tried out 6 different games: Arduventure, Ardynia, CastleBoy, Dark&Under, MetroCity and Starduino. None of these seem to work. As @Lix suggested, I recompiled the binaries again after setting dependencies (sudo apt-get update && sudo apt-get install build-essential libelf-dev libsdl2-dev freeglut3-dev, cd ~/games/ArduBoy/sim-arduboy/, and make) but no luck.

ok
try this

maybe logs will contain smth. useful info

Thanks for all your help. It appears the application tries to change to an invalid directory and is denied opening the program.

/bin/sh: 1: cd: can't cd to /home/cpi/games/ArduBoy/sim-arduboy/sim_arduboy
/bin/sh: 1: /home/cpi/games/ArduBoy/sim-arduboy/sim_arduboy: Permission denied


I could fix the first command by making a new directory named sim_arduboy, but that inherently does not fix the second command as the binary has to be moved to do so. For reference, my binary was generated and located at /home/cpi/games/ArduBoy/sim-arduboy/sim_arduboy

sim_arduboy

this is supposed to be an executable file, and NOT a folder/directory.
try next steps:

  1. try to delete sim_arduboy file in /home/cpi/games/ArduBoy/sim-arduboy/ directory
  2. try to delete sim_arduboy directory (/home/cpi/games/ArduBoy/sim-arduboy/sim_arduboy) if exists
  3. make a build again.
  4. restart your GameShell
  5. try to launch “ArduBoy emulator” again.

if it still not working, look at /tmp/x.log again.
if you still see the “Permission denied” error,
then, perhaps, you could try to grant executable permissions to the sim_arduboy:

  1. SSH to GameShell
  2. cd ~/games/ArduBoy/sim-arduboy/
  3. chmod +x sim_arduboy (or chmod +x ./sim_arduboy. can’t verify now).
  4. restart your GameShell
  5. try to launch “ArduBoy emulator” again.

Hey, I made a mistake on the GameShell via command line and ended up having to re-flash the SD card and I’m trying to copy 22_Arduboy onto the gameshell, but the terminal keeps telling me that the file doesn’t exist. I got everything else right and the folder is already installed but the app isn’t showing on the GameShell. Is there anything i’m doing wrong?

Did you try to create the folder manually first through Filezilla and then trying to copy the content inside of it?

1 Like

No, i tried to rebuild it via command line following your tutorial and ITCactus’s tutorial as well. The Arduboy folder is on my computer but when i try to copy it over to the GameShell i end up getting stuck at that error message.

ok… Create the folder manually in the GS then and just try to copy the content from your PC in it.
Or even better, copy the folder to the root and then use move command to place it where you want it.
Also, check if you already have a 22_something in there… You know you can place it elsewhere too and just point your .sh to the right place afterward.

Cool. I have the 22_Arduboy loaded onto the computer already. I’ll give it a go and let you know the results.

Instead of using ~, enter the full path ex. /home/cpi/…

@Tariq
i already see, that you have “Arduboy” in every place, and NOT an “ArduBoy”.
pay close attention on letter “B” in your dirs - it MUST be uppercase: “ArduBoy”. that tiny difference may cause a lot of issues.
if you use a lowercase “b” on purpose, then do NOT forget to edit “action.config” content in sim-arduboy/22_ArduBoy/.

but it will be better, if you delete the entire folder /home/cpi/games/ArduBoy, and follow tutorial from the very beginning.

2 Likes

Thanks for your help :slight_smile: