Rednex Game Boy Development System - An assembly toolchain for the Nintendo Game Boy and Game Boy Color https://rgbds.gbdev.io
  • C++ 67.8%
  • Assembly 18%
  • Shell 6.8%
  • Yacc 5%
  • CMake 1.3%
  • Other 0.9%
Find a file
ISSOtm 0692d1d28c Avoid passing a C++-only flag when compiling C files
Avoids compiler warnings. This can happen because zlib and libpng are both C projects,
and we build them from source if they are unavailable.
2026-03-25 17:11:46 +01:00
.github Fix name of test repo cache used by macos-static (#1909) 2026-03-24 09:02:28 -04:00
cmake Cache library deps on Windows 2026-03-19 20:30:12 +01:00
contrib Use 4 spaces per tab in LCOV coverage report 2025-12-04 17:56:16 -05:00
include Fix some truncation warnings 2026-03-10 01:31:23 -04:00
man Explicitly clarify that SECTION(@) returns the name of the current section 2026-02-06 19:37:49 -05:00
src Factor out common error-handling functions for lexing numbers of different bases (#1888) 2026-03-19 15:32:25 -04:00
test Always clone deps with --depth=1 (#1908) 2026-03-23 11:02:29 -04:00
.clang-format Give clearer names to template parameters 2025-10-08 14:55:43 -04:00
.clang-tidy Run clang-tidy with make tidy 2025-07-18 10:10:34 -04:00
.dockerignore .dockerignore is too trivial to license :P 2024-02-18 18:45:49 -05:00
.editorconfig Add CMake and YAML files to EditorConfig 2026-03-19 20:30:12 +01:00
.gitattributes These extensions should be binary 2024-09-06 21:35:17 +02:00
.gitignore Ignore a CMake file that is not intended to be checked in 2026-03-16 20:23:47 -04:00
ARCHITECTURE.md Cache library deps on Windows 2026-03-19 20:30:12 +01:00
CMakeLists.txt Avoid passing a C++-only flag when compiling C files 2026-03-25 17:11:46 +01:00
CMakePresets.json Specify MSVC architecture using presets 2026-03-19 20:30:12 +01:00
compile_flags.txt Specify -std=c++20 not c++2a (#1877) 2025-12-21 11:44:14 -05:00
CONTRIBUTING.md Correct CONTRIBUTING.md to accurately describe test/fetch-test-deps.sh 2026-03-23 11:13:23 -04:00
CONTRIBUTORS.md Document more about the RGBDS architecture (#1809) 2025-09-07 15:34:52 -04:00
Dockerfile Release v1.0.1 2026-01-01 00:43:43 -05:00
LICENSE Avoid non-ASCII characters when not necessary 2025-07-23 21:18:21 -04:00
Makefile Specify -std=c++20 not c++2a (#1877) 2025-12-21 11:44:14 -05:00
README.md Move or remove some redundant information from the README 2025-08-02 22:09:09 -04:00
RELEASE.md Clarify release procedure checklist 2025-06-30 15:52:42 -04:00

RGBDS

RGBDS (Rednex Game Boy Development System) is a free assembler/linker package for the Game Boy and Game Boy Color. It consists of:

  • RGBASM (assembler)
  • RGBLINK (linker)
  • RGBFIX (checksum/header fixer)
  • RGBGFX (PNG-to-Game Boy graphics converter)

This is a fork of the original RGBDS which aims to make the programs more like other UNIX tools.

This toolchain is maintained on GitHub.

The documentation of this toolchain can be viewed online, including its basic usage and development history. It is generated from the man pages found in this repository. The source code of the website itself is on GitHub as well under the repository rgbds-www.

If you want to contribute or maintain RGBDS, read CONTRIBUTING.md. If you have questions regarding the code, its organization, etc. you can find the maintainers on the GBDev community channels or via mail at rgbds at gbdev dot io.

Installing RGBDS

The installation procedure is available online for various platforms. Building from source is possible using make or cmake; follow the link for more detailed instructions.

make
sudo make install
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
cmake --install build

Two parameters available when building are a prefix (e.g. to put the executables in a directory) and a suffix (e.g. to append the version number or commit ID).

make
sudo make install PREFIX=install_dir/ SUFFIX=-$(git rev-parse --short HEAD)
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DSUFFIX=-$(git rev-parse --short HEAD)
cmake --build build
cmake --install build --prefix install_dir

(If you set a SUFFIX, it should include the .exe extension on Windows.)