#music #game #emulation #api-bindings #nsf

game-music-emu

Rust bindings for Game Music Emu

1 unstable release

0.2.0 Feb 28, 2021

#814 in Audio

MIT AND LGPL-2.1-or-later

700KB
22K SLoC

C++ 21K SLoC // 0.1% comments Rust 444 SLoC // 0.0% comments

Game Music Emu Rust

Game Music Emu Crate Game Music Emu Documentation

This crate contains Rust bindings for Game Music Emu. It is pretty barebones at the moment and does not cover everything, but eventually it will have bindings for most of the functions in gme.h.

Getting Started

Add the following to your Cargo.toml.

game-music-emu = "0.2"

Conditional Compilation

Just like the regular version of Game Music Emu, you can choose which emulators are included by adding features to your Cargo.toml.

For example, if you only want to use Nintendo and Game Boy emulators, you'd write:

gme = { version = 0.1, default-features = false, features = ["gbs", "nsf"] }

See Cargo.toml for all available features. The build logic is in build.rs. You can call gme::type_list() at runtime for a list of emulators you compiled with.

##Usage

See the example for usage.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Game Music Emu is licensed under LGPLv2.1. See its license for details.

Acknowledgments

  • Shay Green for creating Game Music Emu
  • Michael Pyne for maintaining Game Music Emu

Dependencies

~1.3–1.8MB
~41K SLoC