Corrected schematics and infos on cartridge header data.
Emulating a Game Boy Printer via the Game Boy Link cable with an Arduino.
The first Game Boy card-scanner.
A late 90s DMG-GBC barcode reader.
(Errata: the used thermal paper is expired, 4 colors are actually printable).
by Gekkio.
Obscure Game Boy hardware documentation.
Hardware schematics.
;
Schematics and annotated overlay for the DMG-CPU B chip, extracted from die photos, made with KiCad. Also contains Electric VLSI library with layouts for some of the cells and memories.
, a series of articles about emulating and investigating Game Boy accessories. Also available as technical documents in the GBE- emulator documentation.
Emulating the functionality of a Game Boy cartridge with the development board STM32F4.
Dev board for Game Boy accessories development, powered by ESP8266.
A device that emulates the GB Printer and lets you retrieve images using WiFi.
Page with loads of information on the hardware, custom boards to interface with the console and other related projects.
DMG-07.
by Rodrigo Copetti.
Commented dump of the DMG bootrom.
Documentation about GB Camera and tools used to reverse engineer it by using Arduino.
Schematics for MBC2 and MBC3 types.
Data and photos of various types of Game Boy consoles.
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.
Information on how the Game Boy interprets VRAM tile data to color pixels.
CPLD implementation of a MBC5/MBC1 Hybrid cartridge.
A List of available, ready-made Game Boy Flash Cartridges.
Opcodes table
A technical note regarding Hicolour mode trick for Game Boy Color and its realization in the GBC game “Crystalis”.
Must read by Jeff Frohwein.
A document detailing the Game Boy sound engine.
An overview on existing cartridge types.
Board layout for an EEPROM powered cartridge.
Eagle library, schematic, and board files for a cartridge PCB using an Atmel AT49F040 as ROM.
Infrared communication on the Game Boy Color.
Workshop introducing basic assembly, debugging and reverse engineering.
;
and explanation on how these MBC bank switch and control RAM.
First schematics by Jeff Frohwein.
Internet connectivity and DLC on the Game Boy Color.
Open-source flash cartridge using an Xilinx CPLD as MBC5 (Post).
.
The single, most comprehensive technical reference to Game Boy available to the public. Corrected, updated and maintained by the community.
A blue cart with built-in sonar hardware.
Commercial and homemade programmable cartridges and programming systems. Tutorials, wiring and schematics provided.
by Gekkio.
A reference of all instructions, including short descriptions, cycle and byte counts, and explanations of flag modifications.
A precise documentation by AntonioND to make a cycle-accurate Game Boy emulator.
An in-depth technical document about the printer hardware, the communication protocol and the usual routine that games used for implementing the print feature.
Provides a study on the hardware and detailed constructional information for the implementation of three 8-bit bidirectional parallel ports.
Game Boy cartridge with co-processor.
Zok Zok Heroes' Full Changer, a motion-activated accessory.
Learning Rust by building a partial Game Boy emulator.
Port of Artemio Urbina's 240p Test Suite to the Game Boy.
Notes about the development of a Game Boy emulator in JavaScript.
Investigations on emulations quirks.
Porting of the binjgb emulator to Web Assembly. (Part 2)
Implementing a *rewind- feature.
Step by step tutorial.
Another series of posts documenting the building of an emulator.
How to algorithmically decode Game Boy instructions (as opposed to writing one huge switch-case statement).
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.
and cgb-acid2 - Basic PPU rendering tests.
Overview of the Game Boy hardware with the perspective of building an emulator.
A command line tool for comparing logs from your emulator to those from a known-correct one. Useful for line-by-line debugging of Blargg's test ROMs.
A series of posts about the design and implementation of the RealBoy Emulator.
43 minutes talk by Gekkio given at Disobey 2018 (errata).
Blog post.
Emulate a gameboy printer via the gameboy link cable.
A device that emulates the Gameboy Printer and lets you retrieve images using WiFi powered by an ESP8266.
based on the above.
Generate as-if-printed images of digital printed images.
Sniff packet communications between a Game Boy and the Printer.
Gallery app for to the Game Boy camera: import pictures from exports or cartridge dumps and choose color palettes.
Game Boy Printer interface shield for D1 mini/mini Pro ESP8266 boards.
Manipulate the ROM of a camera to include custom frames
A GameBoy printer emulator which provides the received data over a WiFi connection.
Side scrolling platformer for the Game Boy (itch.io).
Vanilla- SDCC (no gbdk).
(GBC port)
(ZGB engine).
DES encryption.
A clone of the Google Chrome offline game.
Another clone of the Chrome game.
A port of the first level of Evoland.
and some other projects.
GB303 wavetable-based TB-303 style synthesizer for the Nintendo Game Boy.
Atari 2600 Boxing clone for the Game Boy (Color).
A simple Game Boy Powerpoint-like slides viewer.
A technical demo demonstrating how the Game Boy LCD controller can be hacked to make a Game Boy Color play a full motion video in color, together with music.
The second iteration of the above demo, which increases the resolution, adds *stereo- PCM audio, and introduces video compression*.
Shmup for the Game Boy (itch.io).
A community-led attempt to collect, archive and preserve every unlicensed and homebrew game released for Game Boy. Entries are playable online.
RPG developed by Affinix Software primarily between the years 1999 and 2001. The game never found a publisher and was eventually canceled. Got recently released with the full source, development tools and workflows.
and some other projects.
A Matrix digital rain effect in assembler.
(ZGB engine).
A puzzle game of shapely pets for the Game Boy Color (itch.io).
Pokémon Red remade with full GBC support.
Side scrolling platformer for the Game Boy (Color) (ZGB engine).
Puzzle game for the Game Boy (Color) and Super Game Boy.
Interactive horror fiction.
Fourway Breakout clone.
(ZGB engine).
An arcade platformer for the Game Boy (Color).
Developed with gbasm.
Program visualizing the wave form used by the wave channel. The wave form can be edited freely and playback of the wave is updated immediately.
Well-written introductory document about how the Game Boy works and how to start developing working code for it.
Good document to learn to produce working asm code for gb. Brief explanations of many important topics. Many examples with commented source code.
Exploring Game Boy programming techniques:
Some starting tips on disassembling and reverse engineering.
An example Game Boy project.
A detailed tutorial on how to make the screen wobble, among other "raster effects"
A lot of working demos and sources.
Game programming tutorials in assembly.
A collection of prototype programs, mostly just toying around. Among others, a daylight effect, transparency and a weather effect.
Simple template code with memory defines, copy routines and IBM font tilemap.
An e-book about making Game Boy games in Assembly.
Some full games and sources.
Boilerplate project to move quicker into the actual assembly code for your game.
Step by step tutorial.
Step by step tutorial, building several ROMs to accompany its explanations.
A template for starting Game Boy projects, providing a Makefile for infrastructure.
An expansion on the above, including base library code as well to get started faster.
A template with basic functions such as joypad input, DMA transfers, and map/tile data loading.
Library to print variable-width text, comes with a demo.
Extends your knowledge of basic spriting on the Game Boy by adding colors to sprites, backgrounds and the window layer.
Configuring GBDK, Using Tiles, Colliding Sprites, GBTD, GBMB, Memory Management and ROM Banking.
Details the use of the joypad with GBDK.
A series of video tutorials introducing beginners to programming with GBDK.
Presents a workflow for getting multiple sprites to display and animate.
Fairly minimal game demo for getting started with GBDK.
Notepad+- and gedit syntax highlighting files for RGBDS assembly.
A software library for making your own Game Boy games. It is made to be used alongside the book Game Boy Assembly Programming for the Modern Game Developer which also doubles as documentation.
A complete set of lessons about implementing various game mechanics in a Game Boy game.
Standard include file containing Game Boy hardware definitions for use in RGBDS projects.
Old (but still relevant) tutorial.
A collection of detailed GBDK-2020 based tutorials.
Example of how to use OAM DMA in assembly.
Emacs major mode for RGBDS assembly.
Basic hello-world example for Game Boy using RGBDS.
Visual Studio Code language extension for RGBDS GBZ80 Assembly.
A Sublime Text 3 package for RGBDS, including syntax highlighting and some completion snippets.
Step by step tutorial to implement Super Game Boy features (frame and palettes).
Another Vim syntax highlighting file for RGBDS assembly.
Vim syntax highlighting for RGBDS assembly.
A series of blog posts about disassembling Link's Awakening DX.
A simple technique that allows you to run custom code in most GB/SGB/CGB games, provided you have an ACE exploit.
Pokémon Gold and Silver 1997 Space World demo.
a python module that provides various reverse engineering components for various Pokémon games.
A walkthrough to reverse engineer a Game Boy ROM challenge using radare2.
Complete Tetris disassembly.
Assembler engine and development system targeting Game Boy, among other CPUs. Written by the original RGBDS author. Documentation.
Assembler written in Swift.
Game Boy decompiler.
Powerful emulator and debugger. Provides an accurate hardware emulation.
5Kloc emulator that passes most of the tests. *Rewind- feature. Runs in the browser using WebAssembly.
Graphics converter for Game Boy Color development providing real time palette adjustments.
A collection of primitive editor/converter tools for making assets used with homebrew ROM development.
Music Engine.
Game Boy Cartridge Dumper ROM.
A GBDK-2020 sound effect driver compatible with FX-Hammer sound effects.
Sound driver embeddable in homebrews which supports pulse width manipulation, arpeggios, and multiple waveforms.
Provides accurate emulation and includes powerful tools such as a profiler and source-level debugging for ASM and C via a VS Code debug adapter.
A scripting language for the Game Boy, useful for enemy AI, dialogue, animations, and coroutines.
A unit testing program for assembly code.
Cross-platform and accurate emulator.
Sniff your Game Boy's LCD using a logic analyzer.
Set of tools for text manipulation and translation of Game Boy ROMs written in Node.js.
HTML5 / JS web application that will convert bitmap images to hexadecimal data appropriate for use in tile based graphical applications, specifically GB.
Game Boy LinkUp serial cable networking project.
Game Boy tile conversion and map editor tool (converts to assembly).
A JavaScript based compiler for Game Boy z80 assembly code.
An opinionated Rust based compiler for Game Boy z80 assembly code.
Extracts photos from Game Boy Camera saves.
Maintained and modernized GBDK (Game Boy Development Kit) powered by an updated version of the SDCC toolchain. Provides a C compiler, assembler, linker and a set of libraries.
A compiler translates Go programs to C code. The output C code is built into GB ROM by GBDK.
A small set of sources and tools for the Game Boy Development Kit by Michael Hope.
A recently rewritten emulator that has a large effort in preserving the functions of obscure accessories (such as IR link, Mobile Network GB, Barcode Boy, GB Printer, local and online GB Serial Link Cable, ... )
C library extending gbdk.
A Forth-based Game Boy development kit.
A modernized audio driver for GameBoy Tracker (aka the Paragon 5 music player).
A music player library and converter kit.
Converts .GBR files created with Harry Mulder's Tile Designer (GBTD) and .GBM files created with Harry Mulder's Map Builder (GBMB) to different formats for use with the Game Boy and GBDK.
Some sources and home of Game Boy Tile Designer (GBTD) and Game Boy Map Builder (GBMB) tools.
A music tracker based on OpenMPT, focused on ease of use, compact output, and embeddability in homebrew games.
A C library of useful Game Boy operations (SDCC).
Clang/LLVM port to the GBZ80 CPU (similar to the deprecated euclio/llvm-gbz80).
A playable, circuit-level simulation of an entire Game Boy.
Modern cross platform GBA emulator which also runs GB/GBC games.
Game Boy ROM disassembler with RGBDS compatible output.
A MML parser and GBDK sound driver for the Nintendo Game Boy.
Research project and emulator in Rust.
Generates statistics on which CPU instructions are run the most often using Python and Emulicious
CLI tool to convert image file to game boy .c array.
An engine for creating games (expands GBDK).
Assembler and linker package. Documentation.
In-browser coding environment to try out RGBDS.
An online tool to inspect and modify a ROM's header data, including the logo.
Command line tool for estimating usage (free space) of Game Boy ROMs from a .map, .noi or ihx file. Works with GBDK-2020 and RGBDS.
A compiler and library that enable the development of GB ROMs using Rust.
Accurate emulator with a wide range of powerful debugging features.
Flexible and composable tile graphics converter supporting Super Nintendo, Game Boy, Game Boy Color, Game Boy Advance, Mega Drive and PC Engine formats.
Diagnostic utility for Game Boy flashcarts.
GIMP image editor plug-in for importing & exporting GBMB and GBTD tilemaps and tilesets (as bitmap images or .GBM/.GBR files).
GIMP image editor plug-in for optimizing tile maps and tile sets.
A tilemap editor for Game Boy, Color, Advance, and SNES projects. Written in C++ with FLTK.
Macro Assembler.
Definition and specification of a custom GB/GBC memory/hardware mapper, as a functional superset of MBC.
Complete suite (IDE, compiler, programming language, resource editor) intended for developing games/demos for 8 / 16-bit line of computers, including the Game Boy and Game Boy Color.
A minimalistic ncurses tile editor.
A high-level assembly language for writing homebrew on retro console platforms (Game Boy, NES, Atari 2600, and more).
Yet Another GB-Z80/Z80/... Multi Platform Cross Assembler Package. Documentation.
An MML based music compiler with support for Game Boy & Game Boy Color.
A little engine for creating games for the original Game Boy (expands gbdk, more info here).