GBDK-4.3.0 (Full Release notes)
Release Date: June 8, 2024
Upgrading
If upgrading, please review 4.3.0
section in "Migrating to new GBDK Versions" in the docs.
Highlights
- Improved NES support
- Updated compiler to SDCC 4.4.0
- Added macOS ARM binaries (SDCC building by @chrismaltby)
- New Examples: HBlank copy, Platformer (by @LaroldsJubilantJunkyard), SNES joypads on NES, Game Boy Printer, Joypad test, Display System
- Added romusage utility for estimating used/free ROM and RAM space
Changes
- Library improvements
- Added
get_system()
which indicates system speed - Changed
EMU_printf()
to remove dependency on stdio.h added similarEMU_fmtbuf()
- Fixed emu_debug.h macros missing a trailing space
- NES
- Added PAL support
- Fixed _map_tile_offset for
set_bkg_based_tiles()
, VRAM transfer buffer bug - Fixed support for 4-player controllers using fourscore
- SMS/GG
- Added
SHOW_SPRITES
,HIDE_SPRITES
(no hiding mid-frame),DIV_REG
emulation, 6 button controller support injoypad()
- Added bcd.h implementation
- Added Game Gear registers and definitions
GG_STATE
,GG_EXT_7BIT
,GG_EXT_CTL
,GG_SIO_SEND
,GG_SIO_RECV
,GG_SIO_CTL
,GG_SOUND_PAN
- Changed VDP to reduce chances of dangerous ISR nesting (also for MSX)
- Fixed tilemap wrapping over the low bound of the VDP name table
- Fixed
waitpad()
,scroll_sprite()
,__WRITE_VDP_REG_UNSAFE()
VDP macro - Fixed return result of "set_tile x, y" family functions (also for MSX)
- Added
- Game Boy
- Added HBlank copy routines:
hblank_copy_vram()
,hblank_cpy_vram()
,hblank_copy()
- Fixed 8-bit signed modulus
- Added HBlank copy routines:
- Added
- Toolchain / Utilities
- lcc: Changed -debug to add the following flags:
-Wa-l -Wl-u -Wl-w
- png2asset
- Added
-sprite_no_optimize
,-entity_tileset
,-rel_paths
- Various crashes and output fixes (+ refactor by @LaroldsJubilantJunkyard)
- Added
- makebin: Fixed crash when using
-yS
(-Wm-yS
with lcc) - bankpack: Added
-banktype=
to allow forcing a bank type toCODE
orLIT
before packing starts
- lcc: Changed -debug to add the following flags:
- Examples
- Wav sample: play waveforms on the SMS/GG PSG
- Fixes for SMS/GG: Fonts, Large Map, gbdecompress
- Updated documentation and fixed search