Skip to content

mGB 1.4.0

Choose a tag to compare

@lpla lpla released this 04 Jun 21:16
· 3 commits to master since this release

mGB 1.4.0

This fork release modernizes mGB for GBDK-2020 and focuses on live reliability, runtime MIDI channel setup, multi-Game-Boy polyphony, and modern performance controls.

Download

Use mGB_1_4_0.gb from this release. The SHA-256 checksum is included as mGB_1_4_0.sha256.

Highlights

  • Runtime MIDI channel mapping for PU1, PU2, WAV, NOISE, and POLY.
  • GB1/GB2/GB3 profiles matching the historical extended-ROM ranges: 1-5, 6-10, and 11-15.
  • Per-synth channel off (OF) for custom multi-Game-Boy layouts.
  • Cartridge SRAM persistence for presets and global performance setup.
  • Velocity curves, MPE-lite pressure/timbre controls, pulse-channel legato, global CC120 panic, CC121 reset, and microtuning.
  • Tuning modes: equal, just, Pythagorean, 19-EDO, and 24-EDO. In 19/24-EDO, one MIDI key equals one tuning step.
  • GBDK-2020 build system and SameBoy MIDI/link regression harness.
  • Musician and developer documentation in docs/.

Validation

Tested ROM SHA-1: 23f24562f1b9e8097d9a19a1964f586f6760ae49

Regression results:

  • make -C Source test GBDK_HOME="$HOME/.cache/gbdk-2020/4.5.0/gbdk": passed.
  • make -C Source sameboy-midi-regression GBDK_HOME="$HOME/.cache/gbdk-2020/4.5.0/gbdk": 171 SameBoy MIDI/link runs passed, 0 failures.
  • SameBoy covered CGB, DMG, previous/upstream baselines, runtime channel maps, saved global setup, GB3 profile persistence, 4-way Synccross-style fan-out, MPE-lite, velocity, microtuning, legato, panic/reset, save recovery, and soak cases.

Two informational APU-hash differences remain for poly_ch5_three_notes versus the old ROM in CGB/DMG; these are expected for the current poly behavior and did not fail the regression suite.