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). Chiptune Player currently supports Windows, Linux, Mac OS X (built on 10.9) and Android. 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.
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: https://bitbucket.org/mpyne/game-music-emu/wiki/Home
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 on the Gamemaker Marketplace.
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