Skip to content
 
 

Latest commit

 

History

135 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mmlgb

screenshot

A MML parser and GBDK sound driver for the Nintendo Game Boy.

Please refer to the MMLGB Wiki for additional information regarding usage.

Dependencies

  • GBDK

    • gbdk/bin should also be added to PATH/Environment Variables.
  • .NET SDK (C#)

    • Required to build the cross-platform C# parser (MMLGB.dll).
    • You must have the dotnet CLI available in your terminal (dotnet --version to check).
  • Python 3.x

    • Required to run compile.py and scripts/dist.py.

Usage

  • Create or place your .mml file directly in the music/ directory.
    • Feel free to check out the included examples for studying purposes!)
  • Run python compile.py your_file.mml in Terminal/Command Prompt to compile rom.gb. This works identically on Windows, macOS, and Linux.
    • Add --launch to automatically open rom.gb in an emulator once compiled:
      • Windows: launches BGB, for accuracy. Point the BGB_PATH environment variable at your bgb.exe.
      • macOS: launches SameBoy, expected to be installed at /Applications/SameBoy.app.
      • Linux: launches SameBoy via the sameboy command on your PATH (or set SAMEBOY_PATH to point at a specific binary/AppImage).

Build Distribution

  • Run python scripts/dist.py <platform> [<platform> ...] or python scripts/dist.py all.
    • Supported platforms: win-x64, win-x86, linux-x64, osx-x64, osx-arm64.
    • Each platform produces its own self-contained distribution. End users don't need the .NET runtime installed.
    • This can be run from any OS (Windows, macOS, or Linux) as long as GBDK and the .NET SDK are installed: It cross-compiles the parser for whichever platform(s) you request.
  • The distributable file(s) will be in the dist directory, one timestamped .zip per platform (e.g. mmlgb-osx-arm64-2026-07-23-101500.zip).

Special Thanks

  • @SimonLarsen, Original developer - mmlgb v1.0
  • @jimmy-dsi, Programming assistance - GitHub
  • @untoxa, Adapting the code for GBDK-2020 v4.x + Clean refactor - GitHub

License

mmlgb Source Code - MIT

All demo songs & art - CC BY-NC 4.0

About

MML to Game Boy parser and driver

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages