Gaming On Functionland’s FxBlox RK1: ARM64 GBA Emulator
The GameBoy Advance was the very first console I owned as a kid. A core memory of mine is going with my mom to Walmart and seeing its box hanging there on a peg too high for me to reach. It was my birthday and I was starstruck by how beautiful the see-through blue/purple version looked. It was the start of my golden era of gaming.
I still have the original GBA that I got that day and all its fantastic games. But instead of squinting in the sun to see what is happening on that tiny screen. Why not try one of the best GBA emulators on the market, with our FxBlox.
Thankfully the mGBA emulator is the best Game Boy Advance emulator that supports a wide range of devices. In this guide, we’ll walk you through the steps to run the mGBA emulator and bring the joy of gameboy gaming to our elegant ARM SBC.
Install mGBA on ARM64 Armbian
The world of linux and especially SBC’s can be a bit unforgiving to beginners. Forums and discords are not that helpful and people don’t seem to be the most eager to help you out, depending on the question. This was my experience first hand when trying to find resources for how to even get this to work (spoiler it’s actually super easy)!
First thing we need is the Ubuntu software center and the ubuntu-desktop. Before, we get to that, it is best practice to make sure our system is all up to date:
- Press
Ctrl + Alt + T
, to bring up the Terminal - Type:
sudo apt update && sudo apt upgrade
- Confirm with ‘y’, when prompted
Now we can install the needed software:
4. sudo apt install ubuntu-desktop gnome-software
Now, restart the Blox with:
5. reboot
6. Click on your icon, but don’t enter your password!
7. Instead, click on the settings icon (cog wheel) and select Ubuntu on Xorg
8. And now you can enter your password
Now your desktop should look a little different which is great! From here:
9. Go to your apps
10. Click on the knock-off-looking, Microsoft Windows Store, bag icon
11. Now just search for mGBA (yup it’s that easy)
12. Click the icon, and start downloading!
When it’s done downloading you will be able to find the app in your Applications list
ROMS
Where you get your ROMs is between you and your god. I suggest you remain safe while web browsing or downloading things by checking out this guide to get you set up with ProtonVPN’s free tier.
You will be surprised by the results that Google provides. Oh, you don’t have a browser on the Blox? Just install it with:
sudo apt install chromium-browser
Apologies if you have a different browser preference, but this is the best option for arm64 devices like the FxBlox.
Anyways, ROMs can be loaded easily from anywhere on your filesystem. I recommend storing them on an external drive or an installed nvme drive. You can find the location of your drive with:
df -h
You’ll know which one is yours from the capacity of the drive and the “Filesystem” should start with /dev/. As well as the fact that the type of drive installed will be shown. E.g. I installed an nvme drive and you can see nvme in the path.
Make a directory for where your games will live on this drive. This will ensure your data doesn’t get erased if you manually factory reset your Blox with the usb image hosted on GitHub.
mkdir -p /media/pi/nvme0n1p1/games/gba
Controller/Keyboard support
Assuming you have your games ready to play, you first will want to decide the age-old question: keyboard or controller? Either way, you can find the controls by heading to Tools -> Settings -> Keyboard
OR Tools -> Settings -> Controller
.
If you’re like me and only have one usb adapter, and you still want to use a controller to play games, then you HAVE to click on “Controller” then “Set All”. Now swap out your keyboard for the controller and proceed to complete the key binding process.
I was using an Xbox One controller, and I can confirm that it started working properly after doing the key-binding process.
Conclusion
I was easily able to get 60fps on any game that I played. This is amazing because we have not downloaded any GPU drivers and we are using only software rendering! The fans started whirring after a while, but the FxBlox does a great job keeping the gameplay and frames steady.
With that being said, I have been thoroughly enjoying the games that ARE already on the switch, but there are some that just haven’t made it yet. So, this was a chance to experience the games I own in a modern way.
If you liked this content, give us a like or “Applause” here on Medium and please consider following us. Follow our YouTube channel for more web 3 content. Find me on X at @legendofmar. Checkout the Functionland Telegram for support and updates. Cheers!