FPGA-based Gameboy clone

Dec 13, 2021
Hi all,

I'd like to tell you about the FPGA-based Gameboy clone that I'm currently building. I started this project because I wanted to learn how to build a handheld console and also because I'd like to play my Gameboy games on a nice big screen.

Main goals for this project:
  • Run Gameboy games from cartridge
  • Pixel-perfect representation on a larger screen
  • Should still feel like playing with a Gameboy
  • Accurate speed without lags or glitches
  • Personal: Learn a whole lot of stuff while building it
So, I first went and designed an equivalent to the original Gameboy's CPU board featuring a Xilinx Spartan 7 FPGA, an USB-C connector, and of course a cartridge interface:
Bildschirmfoto 2021-07-07 um 08.40.12.png
main board.jpg

I then added a second board that will be responsible for video and audio output as well as button inputs:
both boards.jpg

Both boards in action running Tetris from cartridge:
electronics assembled.jpg

The Gameboy implementation that I used is not mine - it's called VerilogBoy and works very well so far.

I even added limited debug capabilities using UART over USB:

The whole project is open source and it's on my GitHub. It's not well documented yet which makes it hard to reproduce. I do want to change this, though!

My plans for the future include:
  • Create a proper custom shell (I already started with this)
  • Add Gameboy Color support
  • Extend debug support and add serial console
  • Create documentation and maybe a tutorial
That's it for now. Let me know what you think. If you've got any questions I'll gladly answer them :)
Sep 27, 2016
This really brings me back. I love where we are getting with technology advancements here on the forums. Awesome project!