User Experience on mobile might not be great yet, but I'm working on it.

Your first time on this page? Allow me to give some explanations.

Awesome Game Boy Development

A curated list of Game Boy development resources such as tools, docs, emulators, related projects and open-source ROMs.

Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.

Last Update: Nov. 26, 2020, 9:01 a.m.

Thank you gbdev & contributors
View Topic on GitHub:
gbdev/awesome-gbdev

Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.

Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.

Introduction

Community

Documentation

A GB, GBC and GBA emulator with GB Camera support.

123
7
4m
GPL-2.0

The single, most comprehensive technical reference to Game Boy available to the public. Corrected, updated and mantained by the community.

Report of an hardware emulator (on a Terasic DE1-SoC Board) developed as final project for the CSEE4840 Embedded Systems Design course at Columbia University.

Opcodes

A reference of all instructions, including short descriptions, cycle and byte counts, and explanations of flag modifications.

Game Boy Color

Hardware

Game Boy -related custom hardware by gekkio

91
10
53d
CC-BY-4.0

Your go to dev board for Gameboy accessories development, powered by ESP8266.

10
3
43d
MIT

A device that emulates the Gameboy Printer and lets you retrieve images using WIFI

22
5
45d
n/a

Reverse-engineered schematics for DMG-CPU-B

224
20
1y 20d
CC-BY-SA-4.0

Provides a study on the hardware and detailed constructional information for the implementation of three 8-bit bidirectional parallel ports.

Page with loads of information on the hardware, custom boards to interface with the console and other related projects.

Data and photos of various types of Game Boy consoles.

Peripherals

Tools used to reverse engineer the GB Camera using Arduino UNO.

47
4
2y 10m
GPL-3.0

Code to emulate a gameboy printer via the gameboy link cable

140
19
88d
GPL-3.0

Obscure Game Boy hardware documentation.

a series of articles about emulating and investigating Game Boy accessories. Also available as technical documents in the GBE- emulator documentation.

Internet connectivity and DLC on the Game Boy Color.

A blue cart with built-in sonar hardware.

Zok Zok Heroes' Full Changer, a motion-activated accessory.

Infrared communication on the Game Boy Color.

Errata: the used thermal paper is expired, 4 colors are actually printable).

Cartridges

Custom cartridges

Eagle library, schematic, and board files for a Homebrew Gameboy Cartridge PCB.

80
12
1y 5m
n/a

Board layout for an eeprom powered GB cartridge

46
7
5y 5m
n/a

Open-source Gameboy Flash Cartridge using an Xilinx CPLD as MBC

47
11
2y 4m
n/a

Gameboy CPLD implementation of MBC5/MBC1 Hybrid

19
3
1y 5m
n/a

Emulating the functionality of a Game Boy cartridge with the development board STM32F4.

Game Boy cartridge with co-processor.

Commercial and homemade programmable cartridges and programming systems. Tutorials, wiring and schematics provided.

Misc

MIDI synthesizer for the Game Boy Color

25
6
7y 11m
GPL-2.0

Workshop introducing basic assembly, debugging and reverse engineering.

Commented dump of the DMG bootrom.

Information on how the Game Boy interprets VRAM tile data to color pixels.

Emulator Development

Game Boy emulator written in Python

2.91K
277
115d
n/a

An educational Gameboy Emulator in Rust and a companion book explaining its development. *Oh Boy! Creating a Game Boy Emulator in Rust- is a talk given at Rust Fest 18 about this.

Learning Rust by building a partial Game Boy emulator.

A series of posts about the design and implementation of the RealBoy Emulator.

Another series of posts documenting the building of an emulator.

Porting of the binjgb emulator to Web Assembly. (Part 2)

How to algorithmically decode Game Boy instructions (as opposed to writing one huge switch-case statement).

Notes about the development of a Game Boy emulator in JavaScript.

Testing

A suite of Game Boy tests, used for hardware research and emulator testing

17
6
39d
MIT

Game Boy emulator test ROMs

24
3
59d
MIT

Size-optimized ports of Artemio's 240p Test Suite to 8-bit consoles

35
3
115d
GPL-2.0

MBC3 RTC test for Game Boy flash carts and emulators

4
0
78d
Unlicense

Assemblers

Rednex Game Boy Development System - An assembly toolchain for the Nintendo Game Boy & Game Boy Color

721
102
6d
MIT

Powerful macro (cross) assembler package for several CPUs

20
5
21d
n/a

WLA DX - Yet Another GB-Z80/Z80/6502/65C02/65CE02/6510/65816/6800/6801/6809/8008/8080/HUC6280/SPC-700 Multi Platform Cross Assembler Package

360
64
68d
GPL-2.0

Compilers

GameBoy Developer's Kit (GBDK) for OS X.

29
6
5y 8m
n/a

gbdk libraries updated for newer versions of sdcc

167
25
1y 79d
n/a

An updated version of GBDK, A C compiler, assembler, linker and set of libraries for the Z80 like Nintendo Gameboy.

198
15
6d
MIT

A set of tools that enable to develop in C. Includes a set of libraries for the most common requirements and generates ready ROM files. Documentation.

Experimental/Proof of Concepts

A high-level assembly language for writing homebrew software and games on retro console platforms.

221
17
50d
n/a

👾 A Forth-based Game Boy development kit

71
6
45d
MIT

A JavaScript based Gameboy Assembler

121
7
2y 6m
MIT

Assembler for Gameboy games

106
4
6m
n/a

LLVM port to the GBZ80 CPU

32
1
2y 38d
n/a

Experimental Go binding for GBDK(GameBoy Development Kit). You can develop GameBoy software using Go!

13
0
19d
MIT

An opinionated Rust based compiler for Game Boy z80 assembly code.

Emulators

Game Boy and Game Boy Color emulator written in C

639
89
5d
MIT

A Game Boy research project and emulator written in Rust

533
28
8m
GPL-3.0

mGBA Game Boy Advance Emulator

2.27K
337
2d
MPL-2.0

Gameboy emulator implemented in C

217
21
73d
MIT
346
66
86d
GPL-2.0

MetroBoy - A playable, circuit-level simulation of an entire Game Boy

154
4
2d
n/a

DMG/GBC/GBA emulator and experimental NDS emulator.

268
21
2d
GPL-2.0

BGB

Powerful emulator and debugger. Provides an accurate hardware emulation.

Tools

Game Boy / Color engine with lots of features

341
25
55d
MIT

Gameboy Tile Data Generator

55
14
4y 8m
n/a

Allows files created by Harry Mulder's Game Boy Map Builder and Game Boy Tile Designer to be converted in to different file formats for use in Game Boy game development (e.g.: with GBDK)

10
2
5y 7d
MIT

Extracts photos from Game Boy Camera saves.

27
3
70d
MIT

Convert graphics for GameBoy Color development and adjust palette on real hardware to achieve best results.

15
3
7m
GPL-3.0

A simple command line image file to game boy .c array converter

15
5
5y 118d
GPL-2.0

A small set of sources and tools for the Gameboy Development Kit by Michael Hope

9
1
7y 113d
MIT

Gameboy tile conversion and map editor tool

18
3
3y 5m
MIT

Gameboy ROM for cartridge dumping

15
1
2y 4m
n/a

👃 Crack open your old Game Boy and peek at the LCD data bus.

126
6
3y 108d
CC-BY-SA-4.0

Set of tools for text manipulation and translation of Game Boy ROMs

6
2
2y 12m
n/a

Game Boy ROM disassembler with RGBDS compatible output

113
9
7m
MIT

Gameboy decompiler

46
13
6y 10m
GPL-3.0

super swap & dump multi new 2015

1
2
4y 4m
n/a

Gameboy LinkUp serial cable networking project

3
1
7y 7m
n/a

A simple GameBoy tile editor written in C using ncurses

18
4
12m
MIT

TPP1 specification

7
3
8m
n/a

C library of useful Game Boy operations

8
1
3y 6m
AGPL-3.0

Tilemap GB - GIMP plugin for importing & exporting Game Boy game tilemaps and tilesets (as bitmap images or .GBM/.GBR files. Related tools: GBTD, GBMB, GBDK, Zal0-ZGB)

18
1
4m
GPL-3.0

Tilemap Helper : A GIMP plugin to help with creating tile maps and tile sets for games

11
1
6m
GPL-3.0

Some sources and home of Game Boy Tile Designer and Game Boy Map Builder tools.

An online tool to inspect and modify a ROM's header data, including the logo.

An IDE for Game Boy programming in a C-like language called GBL, with many other features like tile and map extraction, WLA-DX assembly, and more.

A collection of primitive editor/converter tools for making assets used with homebrew ROM development.

An engine for creating games (expands GBDK).

Music drivers and trackers

Game Boy sound driver

42
3
1y 4d
MIT

A music player library for Game Boy.

174
18
25d
MIT

MML to Game Boy parser and driver

29
4
1y 4m
MIT

fork/continuation of http://jiggawatt.org/muzak/xpmck/ Release 32 with bugfixes and new features

12
5
4y 7m
n/a

A system-wide refactor (modernization) of the GameBoy Tracker (aka the Paragon 5) replayer created by Stephane Hockenhull.

5
0
82d
n/a

The music composition suite for the Nintendo Game Boy

68
6
62d
n/a

ASM

RGBDS include file for Game Boy hardware definitions

42
15
86d
CC0-1.0

Exploring Game Boy programming techniques.

62
10
6y 9m
MIT

DMG and CGB (Color Game Boy) tutorials for coding assembly games with RGBDS

26
8
2y 10m
n/a

Source code for the book "Game Boy Assembly Programming for the Modern Game Developer"

46
9
41d
n/a

Step by step tutorial, building several ROMs to accompany its explanations.

A set of lessons by Duo about coding in Assembly for GB/GBC and disassembling.

Good document to learn to produce working asm code for gb. Brief explanations of many important topics. Many examples with commented source code.

Some starting tips on disassembling and reverse engineering.

Step by step tutorial to implement Super Game Boy features (frame and palettes).

Example of how to use OAM DMA in assembly.

Sources

Game Boy assembly projects

9
2
3y 9m
Unlicense

A lot of working demos and sources.

Timings

Boilerplates and libraries

A template project the Gameboy DMG/Color

18
5
4y 5m
MIT

Basic hello-world example for GameBoy using rgbds

32
7
5y 10m
n/a
27
0
2y 8m
n/a

Gameboy boilerplate to get started quickly

24
5
4m
MIT

A library with some standard functions for Game Boy games written in ASM

72
10
24d
Unlicense

Simple template code with memory defines, copy routines and IBM font tilemap.

Syntax highlighting packages

A collection of syntax highlighting files for Game Boy assembly

2
3
2y 10m
n/a

My dotfiles

6
3
4m
n/a

Textmate language plugin to allow syntax highlighting of GBZ80 assembly, with RGBDS style syntax.

16
4
2y 78d
n/a

Z80 Assembly support for Visual Studio Code

20
5
1y 6m
MIT

Visual Studio Code language extension for RGBDS GBZ80 Assembly

39
5
18d
n/a

rgbds assembly mode for GNU Emacs

2
2
1y 11m
GPL-3.0

Atom syntax highlighting for RGBDS assembly.

C

GBDK tutorials

68
8
6y 68d
n/a

Simplified GBDK examples

84
7
1y 6m
n/a

Well-written introductory document about how the Game Boy works and how to start developing working code for it.

Fairly minimal game demo for getting started with GBDK.

Presents a workflow for getting multiple sprites to display and animate.

Extends your knowledge of basic spriting on the Game Boy by adding colors to sprites, backgrounds and the window layer.

Details the use of the joypad with GBDK.

Configuring GBDK, Using Tiles, Colliding Sprites, GBTD, GBMB, Memory Management and ROM Banking.

A series of video tutorials introducing beginners to programming with GBDK.

Homebrews

Infinity for Game Boy Color

441
44
1y 6m
n/a

Every unofficial homebrew ever produced for Game Boy playable online (mobile/touch too): a community-lead attempt to collect, archive and save every unofficial game, homebrew, demo, patch, hackrom for Game Boy (Color) produced by the community through years of passionate work.

ASM

Tuff - An original game for the Nintendo GameBoy

296
11
4y 85d
n/a

a gameboy (and SMS) port of 2048

78
7
5y 9m
Zlib

A Gameboy DMG game written in z80 asm for LudumDare

16
5
4y 11m
MIT

Game Boy homebrew game featuring Pong and lasers

11
2
5y 7m
n/a

A puzzle game for GB and GBC.

23
3
2y 9m
n/a

The open-source city-building game for Game Boy Color.

280
10
14d
n/a

Gameboy platformer written in assembly

12
3
1y 77d
GPL-3.0

A version of Snake for Game Boy

13
2
3y 10m
n/a

GB303 wavetable-based TB-303 style synthesizer for the Nintendo Gameboy.

74
11
2y 11m
n/a

IGJam 2017 game

3
1
3y 10m
n/a

Flappy Bird clone made for the Game Boy.

70
12
2y 6m
n/a
4
1
3y 22d
n/a

Block dropping puzzle game for Game Boy

10
3
2y 9m
CC0-1.0

A Gameboy game, My Ludum Dare 38 entry

20
2
9m
n/a

A RPG for the Game Boy Color -- WARNING: code base is very broken, I do not recommend re-using any code from here

49
5
1y 10m
Apache-2.0

Gameboy development examples and tools

19
2
1y 10m
Unlicense

Pokémon Red remade with full GBC support. Made by FroggestSpirit, Drenn, and myself.

76
28
9m
n/a

ToyToy - GBC ( 8 bit 8080-like assembly)

7
1
2y 10m
GPL-3.0

StefaN - GBC ( 8 bit 8080-like assembly)

3
1
3y 7m
GPL-3.0

Galaxia - GBC ( 8 bit 8080-like assembly)

3
1
2y 9m
GPL-3.0

DES encryption on Game Boy

10
1
2y 8m
n/a

Action/Adventure game being built for that old grey Gameboy sitting in your attic.

3
1
9m
GPL-2.0

minesweeper for the GameBoy (Color compatible), written in assembly

3
1
2y 11m
GPL-3.0

Libbet and the Magic Floor - a puzzle game for Game Boy

23
1
3d
Zlib

Game Boy Wave Form Visualizer

13
1
1y 10m
MIT

C

Flappy Bird clone for the Game Boy.

17
3
5y 8m
MIT

Yet another flappybird for gameboy

8
2
3y 6m
n/a
2
0
2y 10m
n/a

Puzzle game created in 48 hours for Ludum Dare

7
1
4y 11m
MIT

a Snake clone for Game Boy

11
2
4y 67d
GPL-3.0

A sample game for Gameboy created with gbdk, gbdk-lib-extension and GB Lemon tracker LP1.297a.

23
2
4y 7m
MIT

Our entry for the gbjam 2016

19
5
6m
n/a

Snake game for Nintendo Gameboy written in C

21
3
3y 7m
n/a

Minesweeper for the Nintendo Gameboy

24
3
2y 6m
n/a

Game Boy game made for the BitBitJam3 during a week

4
1
4y 4m
n/a

Bubble Factory for Game Boy

20
3
3y 4m
n/a

Atari 2600 Boxing clone for the Game Boy (Color)

2
1
3y 47d
n/a

This is a repository for really old programming experiments of mine

6
4
3y 25d
Apache-2.0

An arcade platformer homebrew game for the Game Boy

234
11
1y 10m
MIT

Post Bot game for classic gameboy

6
3
1y 9m
MIT

A new game for Game Boy made with GDSK.

9
1
4y 6m
GPL-3.0

A gameboy game written in C using GBDK based on the modern classic Chrome offline game

42
4
5m
n/a

Game Boy port of Google Chrome's Dino browser game

10
1
9m
MIT

A fan-made demake of Evoland on GameBoy

25
4
1y 7m
n/a

GBC](http://sebastianmihai.com/main.php?t=55&n=Gameboy-Color-development-Burly-Bear-vs-The-Mean-Foxes-GBC-version) port)

Demos

Back to Color, a GBC demo for the GBDev 2014 compo.

20
5
60d
n/a

Beach (GameBoy Color demo)

9
1
2y 11m
n/a

A Cute Demo for the GameBoy Color

26
2
5m
GPL-3.0

🖨 Port of a famous C64 BASIC one-liner to the Game Boy.

13
2
2y 4m
MIT

Game Boy demo for Skrolli Party 2017.

22
1
2y 8m
n/a

Matrix digital rain effect for the Game Boy

9
1
2y 30d
n/a
62
5
2y 9m
MIT

A new version of GBVideoPlayer with higher resolution, 3-bit stereo PCM audio and video compression

34
2
1y 66d
MIT

Reverse Engineering

Tools for building and disassembling Pokémon Red and Pokémon Crystal

245
39
6m
n/a

This is my personal attempt on reverse engineering the Tetris gameboy.

17
3
3y 4m
n/a

A curated list of Game Boy development resources such as tools, docs, emulators, related projects and open-source ROMs.

2.49K
132
114d
GPL-3.0

A walkthrough to reverse engineer a Game Boy ROM challenge using radare2.

A series of blog posts about disassembling Link's Awakening DX.

Game Disassemblies

Disassembly of Pokémon Red/Blue

2.53K
458
9d
n/a

Disassembly of Pokémon Crystal

1.38K
389
4d
n/a

Disassembly of Pokemon Yellow

357
107
11d
n/a

Disassembly of Pokémon Gold/Silver

183
45
4d
n/a

Disassembly of Pokémon Pinball

73
22
5m
n/a

Disassembly of Pokémon TCG

109
40
6m
n/a

Disassembly of the Pokémon Gold and Silver 1997 Space World demo

229
31
13d
n/a

Disassembly of Legend of Zelda: Links Awakening DX

268
33
3d
n/a

Disassembly of Oracle of Ages and Seasons

69
15
88d
n/a

Disassembly of Tetris for Game Boy.

52
9
3y 4m
n/a

Disassembly of FX Hammer by Aleksi Eeben

3
1
2y 4m
GPL-3.0

Harvest Moon 3 GBC partial disassembly

12
1
2y 6m
n/a

A modernized version of Pokémon Red. None of the Gen 1 bugs, tons of new features, and expanded postgame. NOTE: The code here is still an UNFINISHED WIP, and is currently NOT PLAYABLE. Current stable release is 3.0.1 from 2018. (The newest copy you can actually play is found at: https://github.com/TheFakeMateo/rpp-backup)

287
48
97d
n/a

Related projects

Official ArduinoBoy Repository for serial MIDI communication to the Nintendo Gameboy.

178
30
109d
GPL-2.0

Game Boy Classic fully functional FPGA implementation from scratch

11
11
3y 4m
GPL-2.0

Implementation Nintendo's GameBoy console on an FPGA

76
12
4y 78d
MIT

A LUA driven AI that plays classic gameboy color games using experimentation.

41
6
6y 49d
AGPL-3.0

A Game Boy Sound System player for macOS, written in Swift

31
5
3y 5m
MIT

mGB - Nintendo Gameboy MIDI control for Arduinoboy

127
16
1y 9m
GPL-2.0
21
2
3y 7m
n/a

Arduino based Game Boy cartridge reader and writer. It can dump ROM and RAM to SD card.

94
8
7m
n/a

Implementation of a brainfuck interpreter written for the Game Boy.

14
2
3y 10m
n/a

Brainf*ck Interpreter for GameBoy

2
1
2y 4m
MIT

Patches to add save state support to Game Boy games when playing on the original hardware

34
3
40d
MIT

A CPU and peripherals implementing the Gameboy (TM) instruction set and functionality

6
2
7y 7m
n/a

Library for working with the LSDj save file format

56
5
6m
MIT

LSDj Patcher

75
8
4d
n/a

Messing around with some video effects on the gameboy.

4
1
2y 8m
n/a

A basic operating system for the Game Boy. Because I can.

13
3
1y 94d
n/a

Gameboy link cable breakout PCB

27
3
2y 5m
n/a

Interface for Nintendo® Game Boy® Cartridges

20
9
1y 5m
n/a

A Pi emulating a GameBoy sounds cheap. What about an FPGA?

244
33
5m
n/a

Lo-Fi portable video recorder using a GameBoy Camera cartridge.

48
3
2y 4m
n/a

Read ROM, Read RAM or Write RAM from/to a Gameboy Cartridge. (License CC-BY)

34
8
4y 4m
n/a

A device for reading game ROMs, backing up & restoring saves and flashing re-writable flash carts for GB, GBC and GBA carts from your PC via USB. Jump on our Discord server (http://discord.gg/X2wS8eh). License GPL

42
23
11d
n/a

Non-gaming purposes applications development.

What is it and how to use it to make cheat codes.

part 2](https://www.gamasutra.com/blogs/DoctorLudos/20180213/314554/))

Every cartridge has to show the authentic logo to be considered valid and be run, but obviously some companies managed to exploit the check system.

Russian multi tasking operating system.

Drag and drop game creator with simple, no knowledge required, visual scripting.

Directories

Salvaged websites, articles, contributions, text and docs

8
1
108d
n/a

Websites

Old home of the scene: examples, sources, complete documentation, guides, tutorials and various tools.

Active blog about everything related to the scene. Including features, insights and interviews.

Unlicensed games, blog posts about Game Boy, home of the hhugboy emulator.