# Playing Arduboy Games on Arcada

## Overview

https://twitter.com/bateskecom/status/1115302899263856640

The Arduboy is an adorable & super thin gaming board that features an Arduino-compatible ATmega32u4, 128x64 monochrome OLED screen, buzzer, and 6 buttons.&nbsp; It's an amazing platform for writing small games, within the limits of the 8-bit microcontroller it uses!

Since Arcada boards, like the PyGamer and PyBadge's are also Arduino compatible, its easy to compile any Arduboy games for these boards. The PyGamer/PyBadge have much faster processors with more memory and a larger screen, but we will not be 'emulating' the Arduboy games - we really will just re-compile them.

Since it has a higher resolution screen, we'll mimic the OLED by having the 128x64 display in the center of the TFT with white LEDs on black. The buttons work the same, and the buzzer will be replicated by the built-in buzzer or speaker/headphones. For the EEPROM emulation, we create a 1KB file on the Flash storage built into Arcada boards. And that's it!

![](https://cdn-learn.adafruit.com/assets/assets/000/076/125/medium800/adafruit_products_IMG_2071.jpg?1558993502)

Info: 

# What can I use?

We use the Arcada Arduino library to interface with the hardware, and can run on:

Featured
### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
![Angled shot of Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino.](https://cdn-shop.adafruit.com/640x480/4242-00.jpg)

Featured
### Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/4200)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino? That's right, its the **Adafruit PyBadge!** We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch rounded rectangle, to make an all-in-one dev board with...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4200)
[Related Guides to the Product](https://learn.adafruit.com/products/4200/guides)
![Angled shot of a Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino. ](https://cdn-shop.adafruit.com/640x480/4200-01.jpg)

Featured
### Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/3939)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino even when you're on a budget? That's right, it's the&nbsp; **Adafruit PyBadge LC!** &nbsp;We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3939)
[Related Guides to the Product](https://learn.adafruit.com/products/3939/guides)
![Angled Shot of Adafruit PyBadge - Low Cost. ](https://cdn-shop.adafruit.com/640x480/3939-05.jpg)

Featured
### USB A/Micro Cable - 2m

[USB A/Micro Cable - 2m](https://www.adafruit.com/product/2185)
This is your standard USB A-Plug&nbsp;to Micro-USB cable. It's 2 meters long so you'll have plenty of cord to work with for those longer extensions.

Out of Stock
[Buy Now](https://www.adafruit.com/product/2185)
[Related Guides to the Product](https://learn.adafruit.com/products/2185/guides)
![USB Cable with Type A and Micro B ends](https://cdn-shop.adafruit.com/640x480/2185-00.jpg)

# Playing Arduboy Games on Arcada

## Arduboy Libraries

# Step 1. Install Arduino IDE, drivers & board package

Before you start, you'll need to follow the guide for your particular board to install the Arduino IDE, drivers and board support package so that you can upload code to it via Arduino

# Step 2. Install Arcada Libraries

We use quite a number of libraries to access the display, sound, buttons, etc.

[Visit the Arcada library page to install **all** the libraries listed (yes that's a dozen!)](https://learn.adafruit.com/adafruit-pybadge/arcada-libraries)

# Step 3. Install Adafruit Version Arduboy Libraries

In addition to the Arcada libraries, you'll need the Adafruit-tweaked versions of all the Arduboy libraries. We will install these manually, not through the library manager, so download the Zips and then select **Add .ZIP Library...** to install each one

![](https://cdn-learn.adafruit.com/assets/assets/000/076/111/medium800/adafruit_products_image.png?1558939213)

 **These replace the existing libraries but add support for Arcada boards, for that reason, you should remove any existing libraries you have with these names!**

[Arduboy2 Library for Arcada Boards](https://github.com/adafruit/Arduboy2/archive/master.zip)
[ArduboyTones Library for Arcada Boards](https://github.com/adafruit/ArduboyTones/archive/master.zip)
[Arduboy Playtune Library for Arcada Boards](https://github.com/adafruit/ArduboyPlaytune)
# Playing Arduboy Games on Arcada

## Arduboy Test

OK, let's test out that this worked. Restart the Arduino IDE and select the board you'll be uploading to, then open the **Arcada Arduboy2** examples. Start with **HelloWorld**

![](https://cdn-learn.adafruit.com/assets/assets/000/076/113/medium800/adafruit_products_image.png?1558940553)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/128/medium800/adafruit_products_IMG_2074.jpg?1558994332)

Once you've got that working, and `Hello World` appears on the screen, move onto **Buttons** demo, try moving the text around with the D-Pad/joystick and A+B buttons

Finally - load up the Breakout demo to play a real game!

![](https://cdn-learn.adafruit.com/assets/assets/000/076/127/medium800/adafruit_products_IMG_2073.jpg?1558994285)

# Playing Arduboy Games on Arcada

## Some Examples

![](https://cdn-learn.adafruit.com/assets/assets/000/076/126/medium800/adafruit_products_IMG_2070.jpg?1558993526)

There's over 100 games available, and we don't want to play any favorites! We did try a couple games that are good demonstrations of the Arduboy platform. Here are ready-to-go UF2s you can drag-n-drop onto the **BOOT** bootloaders of a PyGamer or PyBadge

# CastleBoy

This Castlevania inspired 'de-make' has a whip-wielding protagonist, and floating skulls of doom!

![](https://cdn-learn.adafruit.com/assets/assets/000/076/115/medium800/adafruit_products_805ae7eb61e0132631bb7c13e416ba90a451ae2b.gif?1558941827)

[CastleBoy_PyGamer.UF2](https://cdn-learn.adafruit.com/assets/assets/000/076/114/original/CastleBoy_PyGamer.UF2?1558941723)
[CastleBoy_PyBadge.UF2](https://cdn-learn.adafruit.com/assets/assets/000/076/120/original/CastleBoy_PyBadge.UF2?1558942542)

## Guide Products

### Arduboy FX - Open Source Card-Sized Gaming Boy

[Arduboy FX - Open Source Card-Sized Gaming Boy](https://www.adafruit.com/product/3264)
What do you get when you cross Arduino with a Game Boy? **&nbsp;Arduboy FX - Open Source Card-Sized Gaming Boy !** &nbsp;The game system the size of a credit card!&nbsp;Create your own games, learn to program or download from a [library...](https://community.arduboy.com/c/games)

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/3264)
[Related Guides to the Product](https://learn.adafruit.com/products/3264/guides)
### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
### Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/4200)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino? That's right, its the **Adafruit PyBadge!** We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch rounded rectangle, to make an all-in-one dev board with...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4200)
[Related Guides to the Product](https://learn.adafruit.com/products/4200/guides)
### Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/3939)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino even when you're on a budget? That's right, it's the&nbsp; **Adafruit PyBadge LC!** &nbsp;We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3939)
[Related Guides to the Product](https://learn.adafruit.com/products/3939/guides)
### USB A/Micro Cable - 2m

[USB A/Micro Cable - 2m](https://www.adafruit.com/product/2185)
This is your standard USB A-Plug&nbsp;to Micro-USB cable. It's 2 meters long so you'll have plenty of cord to work with for those longer extensions.

Out of Stock
[Buy Now](https://www.adafruit.com/product/2185)
[Related Guides to the Product](https://learn.adafruit.com/products/2185/guides)

## Related Guides

- [Adafruit PyBadge and PyBadge LC](https://learn.adafruit.com/adafruit-pybadge.md)
- [Introducing Adafruit PyGamer](https://learn.adafruit.com/adafruit-pygamer.md)
- [Mini VOTE Keyboard](https://learn.adafruit.com/vote-keyboard.md)
- [NES Emulator for Arcada](https://learn.adafruit.com/nes-emulator-for-arcada.md)
- [Two Player Game System for PyGamer and RFM69HCW Radio Wing](https://learn.adafruit.com/two-player-game-system-for-pygamer-and-rfm69hcw-radio-wing.md)
- [CircuitPython Stage game library](https://learn.adafruit.com/circuitpython-stage-game-library.md)
- [PyBadge GamePad](https://learn.adafruit.com/pybadge-gamepad.md)
- [Creating Your First Tilemap Game with CircuitPython](https://learn.adafruit.com/creating-your-first-tilemap-game-with-circuitpython.md)
- [Making a Name Tag in MakeCode Arcade](https://learn.adafruit.com/making-a-name-tag-in-makecode-arcade.md)
- [Game & Watch Octopus](https://learn.adafruit.com/game-watch-octopus.md)
- [PyGamer - Gaming Handheld Crank](https://learn.adafruit.com/gaming-handheld-crank.md)
- [Wakanda Forever Game](https://learn.adafruit.com/wakanda-forever-game.md)
- [PyGamer NeoPixel Controller](https://learn.adafruit.com/pygamer-neopixel-controller.md)
- [PyPaint Drawing Program In CircuitPython](https://learn.adafruit.com/pypaint.md)
- [Which CircuitPython Board is Right for You?](https://learn.adafruit.com/choose-your-circuitpython-board.md)
- [Playing Gamebuino META Games on Arcada](https://learn.adafruit.com/playing-gamebuino-meta-games-on-arcada.md)
- [I Vote(d) Pin](https://learn.adafruit.com/i-vote-d-pin.md)
