GameMaker (2.3)

Chiptune Player

Mick @ GamePhase

You must be logged in to obtain assets


Chiptune Player is an extension that uses game_music_emu and audio buffers in GMS to play chiptune music in several formats including NSF (NES, Nintendo Entertainment System), GBS (Nintendo Game Boy) and SPC (Super Nintendo). Individual voices can be muted and tempo can be changed in real time. An example of usage is included in the asset, should be very easy to use. Chiptune Player currently supports Windows, Linux (32bit and 64bit) and Android (32bit). The shared library is included for Mac OS X 64-bit, but it is unsupported.

NOTE1: If you have a room / game speed of lower than 60 (or maybe even then), you may need to increase the number of buffers used by the Chiptune Player extension to avoid noise or glitches. You can do this by increasing the value of the variable buffer_count to 20 (or even higher) in the create event of obj_gme.

View the documentation (pdf)

game_music_emu is released under LGPL (GNU Lesser General Public License), so you are allowed to use it in commercial games since the library is dynamically linked to your project. To comply with LGPL, the source code for the shared library need to be included in your game project (the source code I used to build the library is included with this asset and is only 154KB, the archive also includes instructions for building the library on the different platforms). You should also mention in your game credits that you are using the game_music_emu library. The game_music_emu project can be found here:

Because of the hassle with licenses I'm releasing this for free, if you want to support my work then you can get the MOD Player available from me here on the Gamemaker Marketplace.

Note: GMS2 version only tested on Windows 7, GMS1.4 version tested on Windows 7, Ubuntu 14.04, Ubuntu 16.04 64bit and Samsung Galaxy S5 with Android 5.0

Supported formats:

  • AY (ZX Spectrum / Amstrad CPC)
  • GBS (Nintendo Game Boy)
  • GYM (Sega Genesis / Mega Drive)
  • HES (NEC TurboGrafx-16 / PC Engine)
  • KSS (MSX Home Computer / other Z80 systems (doesn't support FM sound))
  • NSF/NSFE (Nintendo NES / Famicom (with VRC 6, Namco 106, and FME-7 sound))
  • SAP (Atari systems using POKEY sound chip)
  • SPC (Super Nintendo / Super Famicom)
  • VGM/VGZ* (Sega Master System / Mark III, Sega Genesis / Mega Drive, BBC Micro)

*) VGZ files are gzipped vgm and will need to be extracted to work.

End User Licence Agreement (EULA).

Age Rating: 4+


GMS1 - Version 1.3.0. Published September 7, 2018

  • Mac OS X dylib built for 64-bit (untested)

GMS2 - Version 1.3.0. Published September 7, 2018

  • Mac OS X shared library (dylib) built for 64-bit (untested)
  • Ubuntu shared library (so) built for 64-bit (tested on 16.04 LTS)

GMS2.3 - Version 1.4.1. Published January 21, 2023

Added more Android architectures

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait