Musetracker

Musetracker is an NES music tracker that I originally created about 4 years ago to be used in the NES demo “High Hopes”. Back then FamiTracker was too resource hungry to be used in a demo and NerdTracker II, IMO, was too limited. I was supposed to release it right after Assembly 2007 but somehow that didn’t happen due to feature creep and some other things. I have a added a lot of features since then, like raw PCM sample support and better editing options.

Musetracker is was the only NES tracker supporting raw PCM samples (7-bit with 7.8 kHz sampling rate). So why 7.8 kHz? I wanted to be able to use the tunes in a demo at some point, so playing a sample every two scanlines (PAL) seemed like the best option. Just to clear any misconceptions: Musetracker doesn’t resample the PCM samples in realtime! This means the sample can only be played at the frequency it was imported at. The rationale is, like said above, to be able to use the results in an actual production — resampling would eat too much CPU for that.

Musetracker was formerly called Pornotracker.

Here are some covers I’ve made using it:

TODO

– get rid of Win32/little endian dependant code
– OSX/Linux/etc ports

Version history

– v15 (2012-01-11): Name changed to Musetracker, version numbering method changed

– Version 1.4.1 (2011-09-19): Fixed some bugs in MUSE export

– Version 1.4 (2011-09-14): MUSE (6502 playback library for games and demos), linear frequency handling (note slide speed and vibrato is not dependent on the note frequency anymore), glissando, max. channel volume was changed from 15 to 63, modifier keys don’t hang when using Alt+Tab to switch windows (SDL fix), support for display drivers that don’t support non-power-of-two textures, fix to copy/pasting from the triangle channel, fixed (bad!) bugs in autodelay, volume envelope ending in 0 with loop is now considered a note off, fixed note slides/etc in the example songs, various bugfixes…

– Version 1.3 (2011-08-18): FamiTone text export, software synthesized pulse/saw on the PCM channel, max. number of instruments increased to 255, max. envelope length increased to 250, PCM samples are loaded in normal instrument slots, DPCM sample support, instrument type switching, iNES export option removed, NSF timing is cycle perfect, instrument colors can be changed, instrument envelopes can be copied to clipboard, Triangle channel octaves match Pulse octaves, + a bunch of other stuff that I forgot about

– Version 1.2 (2011-08-06): Configuration file, OpenGL rendering, fine tune envelope, note cut effect, auto delay effect, new example song (i-like.pom), PCM column was expanded for future updates such as DPCM

– Version 1.1 BETA (2011-03-11): NSF export, NTSC/PAL mode switch, customizable background, metronome

– Version 1.0 (2010-11-18): Initial release

Downloads

Download musetracker-v15.zip (1.6 MB)

NOTE! Some antivirus software (such as F-Secure and AntiVir) erroneously detects Musetracker.exe as “Gen:Heur.Bodegun.10″. This is a false positive and nothing to worry about.

Subscribe to the Comments Feed.

38 Responses to Musetracker

  1. Pingback: Rude Boy NES cover | Kalle's Kanister (FOS)

  2. Pingback: Pornotracker released | Kalle's Kanister (FOS)

  3. Andrew says:

    PCM is possible in NSF. We’ve done it. 4 channels mixed at 12khz, with resampling, etc. Works on a real NES via Powerpak NSF as well.

    http://dl.dropbox.com/u/2316004/bananasp.nsf
    http://dl.dropbox.com/u/2316004/entry001.nsf
    http://dl.dropbox.com/u/2316004/entry046.nsf
    http://dl.dropbox.com/u/2316004/entry068.nsf

    • fo says:

      Very nice! How does it do NSF? Does it take over the init routine or the play routine? Also are any tricks required to get it to behave well when changing songs?

      • Andrew says:

        We’ve never tried doing more than one song per NSF. It uses both routines; if you don’t return from the update routine, then some emulators/players freak out (our drivers return on the last cycle of the update routine, if I remember correctly.)

  4. Pingback: TRUE CHIP TILL DEATH • PornoTracker for (2a03/NES-Famicom) appeared

  5. Pingback: PornoTracker revelado! « Chiptuneportugal

  6. jikoo says:

    Very nice tracker ! Thank you very much for your work. Very interesting and really good sound. I added it to my online resource. Thank you very much.

    http://woolyss.com/chipmusic-chiptrackers.php?s=Pornotracker

  7. pahamoka says:

    Cools. This is a must try for sure :) Will report back when I’m able to try it out, propably won’t work in my phone quite yet ;) For NES there was a definite need for a better tracker suitable for demos. Great job!

  8. Pingback: Rihanna’s „Rude Boy“ im 8-Bit NES Stil — Retro

  9. dalezy says:

    awesome. i always had plenty of excuses not to get into mml for doing nes music, things look a bit different now. :) neat rihanna-cover btw.

  10. Pingback: Nintendo NES Does MIDI and Live Music, Integrated into Your Studio

  11. null1024 says:

    Very nice, but one big, big problem:
    I don’t have a numeric keypad on this laptop [or fn key emulation for it], so I can’t select a sample slot to load a sample.

    • fo says:

      Thanks, I plan to make the keys configurable in a future version, together with colors, background and other stuff.

  12. Pingback: Pornotracker v1.1 BETA | Kalle's Kanister (FOS)

  13. Pingback: TRUE CHIP TILL DEATH • Pornotracker 1.1 appeared

  14. Pingback: Pornotracker 1.1 Revelado! « Chiptuneportugal

  15. mike says:

    Fantastic tracker. Any plans on that configurable keys function in the next full release?

  16. Pingback: Pornotracker v1.2 | Kalle's Kanister (FOS)

  17. Pingback: Pornotracker v1.3 | Kalle's Kanister (FOS)

  18. Pingback: Pornotracker Versão 1.4 | Chiptuneportugal

  19. Darkhog says:

    Nice tracker. If it only would work on Wine correctly…

  20. Jim says:

    I’m having a little problem with pornotracker — the triangle channel is silent and i can’t tell what the issue is…
    example .pom: http://dl.dropbox.com/u/7821363/triangle_silent.pom

    I’m digging the fact it can play dpcm at multiple pitches..i had no idea the nes could do that. :)

    • fo says:

      It silences the triangle channel when the final volume is less than 8 (with a range of 0..15). So change the volume envelope of instrument #6 so that all values are >= 8.

  21. red says:

    Can this be runned on a mac??

  22. Pingback: Pornotracker is now Musetracker | Kalle's Kanister (FOS)

  23. MIchael says:

    Okay so can it use MP3 files?

  24. Joseph says:

    MuseTracker is no more the only tracker supporting RAW 7bits PCM, DefleMask now supports NES with RAW PCM also with selectable hz/playback rate (8000hz, 11025hz, 22050hz, 32000hz), i’ve tested it on the PowerPak and works.
    MuseTracker will eventually support different rates rather than 7.8khz all the time on PCM?.
    Thanks

    • fo says:

      That is true. I don’t have plans to support other sample rates because the way Musetracker NSF player plays the samples is quite different from what DefleMask uses. DefleMask has the advantage of variable sample rates, but that comes at the cost of a noisier signal because the sample playback rate varies slightly and is interrupted by the processing of the other channels. On top of that, Musetracker hasn’t gathered enough users for me to be motivated to work on it actively.

  25. Famipunk221 says:

    I am not amused with this. It is veeeeery unhandy to use. Why the hell do I need my keyboard to use this program?! FamiTracker is WAAAAY better then this shit.

    • fo says:

      You’re free to use whatever you like the best.

      • Famipunk221 says:

        Is there ANY way to improve the UI and to male it also use with the mouse?

        • fo says:

          Of course, I have actually thought of completely revamping the GUI before, but that would take a lot of time and interest which I don’t currently have.

          • FamiPunk221 says:

            It would be VEEEEERY great if you could do that and find some time!

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>