Game Boy Development
Contents
Documentation
Game Boy Color and Super Game Boy
Opcodes
Hardware
Game Boy Color
Cartridges
Game Boy Camera
Retrieving images
A device that emulates the Gameboy Printer and lets you retrieve images using WiFi powered by an ESP8266.
Emulate a gameboy printer via the gameboy link cable.
A GameBoy printer emulator which provides the received data over a WiFi connection.
Changing the camera's behavior
Emulators
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, ... )
Peripherals
Emulator Development
Overview of the Game Boy hardware with the perspective of building an emulator.
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.
Testing
Directories
Programming
Software Development
Compilers
Experimental/Proof of Concepts
A high-level assembly language for writing homebrew on retro console platforms (Game Boy, NES, Atari 2600, and more).
Clang/LLVM port to the GBZ80 CPU (similar to the deprecated euclio/llvm-gbz80).
Clang/LLVM port to the GBZ80 CPU (similar to the deprecated euclio/llvm-gbz80).
Clang/LLVM port to the GBZ80 CPU (similar to the deprecated euclio/llvm-gbz80).
C
A complete set of lessons about implementing various game mechanics in a Game Boy game.
Tools
Development tools
A small set of sources and tools for the Game Boy Development Kit by Michael Hope.
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.
Set of tools for text manipulation and translation of Game Boy ROMs written in Node.js.
Graphics utilities
HTML5 / JS web application that will convert bitmap images to hexadecimal data appropriate for use in tile based graphical applications, specifically GB.
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.
Graphics converter for Game Boy Color development providing real time palette adjustments.
Definition and specification of a custom GB/GBC memory/hardware mapper, as a functional superset of MBC.
GIMP image editor plug-in for importing & exporting GBMB and GBTD tilemaps and tilesets (as bitmap images or .GBM/.GBR files).
Hardware and ROM utilities
Music drivers and trackers
Sound driver embeddable in homebrews which supports pulse width manipulation, arpeggios, and multiple waveforms.
A modernized audio driver for GameBoy Tracker (aka the Paragon 5 music player).
ASM
Sources
Related projects
A CPU and peripherals implementing the Game Boy instruction set and functionality.
Serial communication (MIDI) from an Arduino to the Game Boy for music applications such as LittleSoundDJ, Nanoloop, and mGB.
A LUA-driven AI that plays classic Game Boy color games using experimentation. In active development.
A Game Boy cartridge program that enables the Game Boy to act as a full MIDI supported sound module.
Demonstrating the use of two undocumented Game Boy Color registers, nicknamed PCM12 (FF76) and PCM34 (FF77), which can be used to read the current PCM amplitude of the 4 APU channels.
Patches to add save state support to Game Boy games when playing on the original hardware.
Utility library for interacting with the LSDj save format (.sav), song files (.lsdsng) and more.
Some little experiments using the STAT interrupt to do funny video manipulations.
Boilerplates and libraries
Boilerplate project to move quicker into the actual assembly code for your game.
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 template for starting Game Boy projects, providing a Makefile for infrastructure.