The Music Engine


MUSE is a NES sound engine that can be used in games and demos. Music data is exported from Musetracker. MUSE supports all features of Musetracker, except auto delay(*) and everything that’s based on raw PCM (PCM samples, PCM pulse and PCM saw — DPCM works).


  • Note slides
  • Volume slides
  • Glissando
  • Arpeggio
  • Vibrato
  • Tremolo
  • Vibrato depth and note slide speeds are independent of the note frequency
  • Note slides and arpeggio interact perfectly (you can have an instrument with an arpeggio envelope, and apply a note slide to it)
  • Sweep trick for setting the hibyte of pulse period without resetting phase
  • NTSC/PAL/Dendy speed/frequency compensation
  • Global volume setting for volume fades, can be set to affect both music and sound effects, or just music
  • Sync events for synchronizing visuals to audio, among other things
  • Pausing of music and sound effects individually
  • DPCM samples
  • 4 sound effect channels

(*) Auto delay can be used in sound effects, but not in songs.

Stuff that uses MUSE

Super Stalin Brothers, a demo by TAONGAD

Driar, a game by Stefan Adolfsson and David Eriksson

STREEMERZ, a game by Faux Game Company (that’s me!)
Ported from a Flash game made by Mr. Podunkian

Download (117.19 kB)

Subscribe to the Comments Feed.

6 Responses to MUSE

  1. Jim says:

    Hi, i wanted to see how rudeboy sounded in muse and just copied it in the knes muse demo with the ‘cheetah’ name. Some of the notes have been corrupted. I used the PT 1.4 version of rudeboy.
    Here’s the file:

    • fo says:

      Yep, there was a bug in MUSE, thanks for reporting it. I have fixed it and will release MUSE v02 some time soon.

      EDIT: MUSE v02 has been released. To fix the KNES project, copy muse-ca65.h from MUSE v02 over the file in the KNES example, re-convert the song and run make.

  2. Pingback: Bug fixes | Kalle's Kanister (FOS)

  3. Pingback: MUSE v03 | Kalle's Kanister (FOS)

Leave a Reply

Your email address will not be published. Required fields are marked *