ISSOtm c49828f7c9 Fix memory region alignment checks
Turns out the checks could fail spuriously if the starting alignment is non-zero,
e.g. `align 8,$C0` in HRAM. (Fixes #2113.)
This was tripped up by a test added to exercise the linker's section placement algorithm
on a similar aligment-related issue. :D

Note that this may be caused by the code in question pre-dating alignment offsets,
and we never checked. That said, these checks only work due to the regions' starting
addresses being no more aligned than their size (..if that makes sense?), so allowing
custom memory regions (#524) could violate that assumption and make those checks incorrect.
2026-09-18 21:19:37 +02:00
2026-07-11 16:19:27 -04:00
2026-09-18 21:19:37 +02:00
2026-09-18 21:19:37 +02:00
2025-07-18 10:10:34 -04:00
2026-08-01 11:27:43 -04:00
2026-07-14 10:34:43 -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 four tools:

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

Documentation

The full documentation is available online, including the development history and version history, generated from the man pages in this repository.

The documentation website's own source code is available in the rgbds-www repository.

Community

If you have questions about the RGBDS code or its organization, you can contact the maintainers on the GBDev Discord server or other community channels, or via email at rgbds at gbdev dot io.

If you want to help maintain RGBDS, please read the contribution guide.

Installing

The platform-specific installation instructions are available online. To build from source using make or cmake, briefly:

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

Both build systems support a prefix (e.g. to install into a specific 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

On Windows, any SUFFIX should include the .exe extension.

S
Description
Rednex Game Boy Development System - An assembly toolchain for the Nintendo Game Boy and Game Boy Color
Readme MIT
28 MiB
Languages
C++ 67.1%
Assembly 17.7%
Shell 6.7%
Yacc 4.7%
CMake 2.7%
Other 0.9%