D
Deleted User
Guest
OP
RGBDS (Rednex Game Boy Development System) is a free assembler/linker package for the Game Boy and Game Boy Color.
This is a fork of the original RGBDS which aims to make the programs more like other UNIX tools.
It consists of:
Source:https://github.com/gbdev/rgbds
This is a fork of the original RGBDS which aims to make the programs more like other UNIX tools.
It consists of:
- rgbasm (assembler)
- rgblink (linker)
- rgbfix (checksum/header fixer)
- rgbgfx (PNG‐to‐Game Boy graphics converter)
New:
Release 0.4.1's binaries were compiled with MSVC instead of MinGW, giving apparently better results. Unfortunately, there is currently a problem with MSVC (not that we can do anything about it, yay!), so the binaries below are MinGW again. They should be eventually replaced with MSVC binaries, and this notice will be removed.
- We have a website! Accordingly, HTML documentation is no longer distributed in the source or in the release artifacts below. All old documentation links now redirect to the latest release's documentation
- You may also have noticed the repo has been moved to gbdev instead of rednex! Don't worry, the same people are in charge.
- /* Block comments! */
- Whitespace is now allowed between the brackets in [bc], [de] and [hl], also allowing [\1] to work.
- The second number argument to INCBIN can now be omitted, going up to the end of the file
- The argument to rb and rw is now optional, defaulting to 1
- RGBASM and RGBLINK can both use stdin as input, and stdout as output (support yet to come to RGBFIX)
- zsh completion scripts are available in the contrib/ folder. (If you want to make bash ones, apply in #620)
- Nested macros are now invalid, but a workaround is possible
- The lexer has been fully rewritten, which should make additions to it easier, and improve performance
- Removed arbitrary limits on charmap size and name length
- STRSUB will no longer warn when taking 0 characters at the end of the string
- RGBLINK will no longer report errors stemming from other errors
- RGBASM is now able to write more jrs without relying on RGBLINK, leading to smaller .o files and faster linking
- INCBIN should produce a slightly more useful error message
- A bunch of quality-of-life improvements for downstream packagers, especially using CMake
- Assertions have been removed from release builds, improving performance slightly
- charmaps now allocate memory as nodes are allocated, greatly reducing their size (by a factor of ~8)
- Documentation now mentions that SHIFT updates _NARG
- Two 6+ year-old crashing bugs have been fixed. They were thankfully rare, but should no longer be a problem now.
- LOAD blocks could produce incorrect output when at the beginning or end of a section
- __FILE__ caused syntax errors if the file name contained a quote
- jr in certain circumstances could crash RGBLINK
- Fixed inconsistent version numbering between the Makefile and the CMakeLists
- Documentation failed to mention SECTION FRAGMENT
- Documentation incorrectly listed bit 7 of symbol type as being the unionized section flag, and failed to mention the section fragment flag
- Documentation erroneously used to claim that symbol names could begin with a digit
- Error out when using align outside of a SECTION, or when using shift outside of a macro... instead of crashing
- Fixed a potential RGBASM crash with very large expressions
- Fixed overwriting a builtin symbol succeeding after insisting enough
- Fixed a crash when subtracting two invalid labels
- Fixed using _NARG outside of a macro crashing RGBASM
Release 0.4.1's binaries were compiled with MSVC instead of MinGW, giving apparently better results. Unfortunately, there is currently a problem with MSVC (not that we can do anything about it, yay!), so the binaries below are MinGW again. They should be eventually replaced with MSVC binaries, and this notice will be removed.
Source:https://github.com/gbdev/rgbds