BASSZXTUNE is an add-on for BASS audio library ( It adds support for several chiptune file formats. This add-on is based on ZXTune library. So all credit goes to ZXTune project and its developer at and also to all the authors of the third-party libraries.

The add-on can play chiptune files in various formats:

  • ZX Spectrum (ay, ym, scl, ...)
  • Commodore 64 (sid)
  • Amiga (mod, ahx, hvl)
  • Atari (sap, rmt, ...)
  • NES (nsf, nsfe, spc)
  • GameBoy (gsf)
  • PlayStation (psf, minipsf, ...)
  • ... and a lot more. See the project's homepage or the source code.

This add-on has several limitations by design. BASS add-on system only has support for "stream" add-ons and not for "module" or "tracker" add-ons. It means that module/tracker files will be treated as streams. But a module cannot be loaded partially, so the whole "stream" needs to be loaded into memory before starting a playback.

This imposes the following limitations:

  • Even if an extension is marked as supported, there's no guarantee that the file contents can be understood by the add-on.
  • Buffered streams (STREAMFILE_BUFFER, STREAMFILE_BUFFERPUSH, etc) are not supported.
  • Streaming in blocks (BASS_STREAM_BLOCK) is not supported.
  • Internet streams (BASS_StreamCreateURL) are not supported.
  • Only mono and stereo output, no access to separate module channels.
  • The add-on supports only single-file formats. To play multi-file formats (e.g. *.minipsf + *.psflib) you may archive all files into any supported archive (zip, 7z, tar, gz, rar) optionally changing the extension of the archive to a supported extension (e.g. *.psf).

The list of supported platforms:

  • MS Windows 10 i686 & x86_64
  • Linux i686 & x86_64
  • OSX x86_64
  • Android arm_v7a & i686

Android support is only for native code, i.e. loading the library from Java code is not guaranteed to work.

To build the add-on from the sources by yourself follow these instructions.

Find more info and support on the un4seen forum page.