Run a Game Boy on Nitrous.io Free Tier


using php and free memory to catch 'em all

Nitrous.io has always been one of our favorite cloud development options. It offers a robust feature set, a lot of easy-to-manage tools, and a gorgeous interface to boot.

Recently the company announced a return to its much-loved free tier. All in all, it’s about the best way possible for a newbie to play with some serious stack architecture. All completely for free, of course.

So, let’s make the most of that free space and throw a Game Boy emulator into the console! After all, what’s all that RAM for, other than helping us catch Pokémon?

Amazing GIF of a Game Boy running inside the PHP console

image courtesy of Gabriel Couto

Assuming you’ve signed-up for Nitrous.io and are staring at the dashboard, here’s how to get rolling:

  1. Make a box: not a difficult process, just add a new one, and then select the LAMP PHP stack. Or LEMP, really. We won’t be using any of the back-end stuff, so feel free to go wherever you prefer.
  2. Wait for the whole thing to boot up. While you’re doing that, check out the Git repo for the excellent PHP Terminal Gameboy Emulator by Gabriel Couto. It’s the tool from which all the magic springs. It is truly impressive stuff, and it pushes the PHP console to new heights.
  3. We’ve got to get a little creative, since Nitrous.io doesn’t like us using anything more than its default PHP 5.5.9. With that in mind, use the fork I’ve created of the original repo. Let’s clone the custom repo I’ve made to the Nitrous code folder by adding:

    1
     git clone https://github.com/lukechanning/php-terminal-gameboy-emulator
    
  4. Time to move to the new directory and finish our setup using Composer

    1
     cd php-terminal-gameboy-emulator && composer install -O
    
  5. And that’s it! It should now be setup and ready, we just need to fire it up. You’ll need some ROMs for that, the legality of which is questionable unless you own the originals. If you want some legal homebrew options, check this site out.
  6. Once you’ve got a ROM, upload it to your working directory using the three dots beside the file tree. If you can, make sure to place it inside our new php-terminal-gameboy-emulator directory.
  7. Now it’s time to have some fun! Fire up any ROM inside the directory by typing —

    1
     bin/php-gameboy your_rom.gb
    

Fun stuff, right? You’ve now got a fully functional Gameboy emulator running in a terminal via some free cloud architecture. Sure, it’s not adding anything new to your workflow — but it’s fun to see just how much PHP can do!

Follow us (or ask questions) on Twitter & Facebook ! That's way better than a comments section, right?