Breaking the 4-channel barrier: The PC Tracker War and More

- Posted August 29th, 2014 by

Hi! Inverse Phase here. This post first appeared on my tumblr but Brandon said I should share it over here on The ChipWIN Blog as well. Sweet! That said, if you’d like more of the same, please send me some likes and reblogs over there so I know to keep doing this sort of thing!

I just read Kuma’s great tracker comparison article and I was inspired to tell some in-between history. I aim to focus specifically on sample-based trackers in the later days of the PC tracker “war”. I’ll go back and write a prequel with a focus on 4-channel music another time.

Often people talk about the PC tracker wars as FT2 vs IT (now I guess it’s Milky vs Schism). I remember a different scene and I think folks often overlook some of the interesting periods of developments in tracking. First, background info. I promise we’ll get to the pretty pictures soon.

You might remember that sampling ramped up fiercely in the 80s and 90s. Even though FM was still a big deal for a time thanks to arcade games, the Sega Genesis/MegaDrive, and any band with a Yamaha DX7, it shouldn’t be hard to make a jump that using samples to write music was considered “the final frontier” to many in this era. Lots of hardware started advertising PCM (Pulse Code Modulation) which is one of the ways you can play back recorded sound rather than synthesizing it. Also you’d want hardware that had a lot of channels so you could get multiple sounds at once.

Good sampling gear was expensive. You could use a computer, but unless you were lucky, computers were slow. In 1985, the Amiga was such a big deal; its sound chip, PAULA, had four channels of PCM, two channels to each speaker, better than any PC solution at that time. All you had to do was push a recording to the sound chip and it would just handle it. This is much faster than mixing on the CPU, and more CPU means you can do more calculations, graphics, move more things around in RAM, etc. Granted, if all you’re doing is audio it becomes less of an issue, but even music software updates the screen and provides visual feedback.

Since PAULA has 4 channels, naturally tracker files (MODs) also have that many. But soon, the 4-channel MOD reached what might be considered its peak as a format, and everyone was scrambling to take things to the next level. The most obvious improvement would be more channels, but to pull that off, even the Amiga would have to mix audio on the CPU. Amigas of the era were limited at only 7-8MHz, so crafty optimizations and sacrifices had to be made, and the most noticeable sacrifice was to drop the sampling rate to a level that the CPU could handle in realtime. Sound quality was sacrificed, but to most it was worth it, and sometimes you had the option to render in full quality, it would just take longer than the song took to play…


Oktalyzer was the first Amiga tracker to push the channel limit to 8. It had a very unexciting-but-descriptive name at first — “8-voices tracker” — but despite that it had some pretty neat features and dropped in 1989. Oktalyzer implemented 8 channels by software mixing each two channels into one and then sending the result off to PAULA.

TFMX version 1.0Unsatisfied with the mixing quality of Oktalyzer, Chris Hülsbeck and Peter Thierolf set out to try a different approach. Jochen Hippel or “Mad Max” had effectively written a MOD-player for the comparatively-crippled Atari ST that pulled off 4-channel mixing onto one channel on the same CPU that was in the Amiga. TFMX took this routine and improved upon it by sending the 4-channel mix to a single Amiga channel, leaving three free channels on the Amiga to handle higher-quality audio (compared to the downmix, anyway). This provided a total of 7 channels. Although you can see an eighth there, Chris says only seven will play at once. Also, the wording on Wikipedia is potentially misleading as TFMX was not first to break the 4-channel barrier although it did so in a unique way and many prefer its sound to other trackers of the era.

OctaMED 2.0

In 1991, MED (“Music EDitor”) on the Amiga became OctaMED (above) and supported 8 channels. Other software followed suit. It was not much later that Amigas would become faster with enough CPU and software mixing wouldn’t be really an issue. Anyway, this article is about the PC tracker war, so moving along…

MODedit 2.0

This is what it looked like to track on a PC in 1991. We had MODedit (above) and Scream Tracker 2, both of which were only 4-channel. You see, PCs were ahead in processing power but behind in multimedia capabilities. The Amiga was around for 4 years when Creative Labs’ dropped the Sound Blaster (single-channel mono PCM) in 1989, and the PC demo/music/game scenes had some catching up to do. One saving grace was that PCs got 9-channel FM (AdLib compatibility) in addition to sampled sound, but we didn’t see MOD players like Trakblaster until 1991. However, when it released, TrakBlaster did FFT, VU, and oscilloscopes, in addition to doing all of the sound mixing on the CPU, which was very impressive.

Still, the PC scene got the tracker bug. We were thirsty for more and tried to follow in the footsteps of the Amiga scene which already had 8-channel trackers on machines half as powerful. US PC demogroup Renaissance, also responsible for a cool shmup called Kaeon, hit us with two multichannel trackers…

Composer 669

In 1992, Tran (Tomasz Pytel) struck first with Composer 669 (above) or “COMPOSD”. He had previously written an FM tracker, Composer 667 (COMPOSP). But now, we had Composer 669 claiming itself as the first 8-channel digital tracker for the PC. It required a 386 and ran in protected mode. In my opinion it wasn’t bad, and it did support stereo if you had a Sound Blaster Pro. One off-putting thing was the confusing tempo system, based on 78bpm. Thanks to some sleuth work from Trixter we were able to figure out that 669 tempos are based heavily on sound buffers and counters, and since all of those settings and values are Hardwired (sorry, bad pun), it made sense to do it that way. Anyway, other MOD editors/formats were usually based on 125bpm or variable, and most trackers displayed the BPM if it wasn’t 125. Composer 669 did not. It did, however, allow you to assign a (not-BPM-related) tempo to each pattern/order, which avoided using special effects to set tempo, but seemed counterintuitive because you could only change it once per pattern using those.

Sorry, this was the best screenshot I could find of FT1, thanks to Saga on Pouët

Towards the end of 1992, Triton, another PC demogroup famous for Crystal Dreams, released FastTracker. FastTracker had a 4-channel mode that was fully MOD-compliant but then also had 6- and 8-channel modes that effectively wrote out MOD files with extra note data for the extra channels. The files were still named .MOD, so to denote that the files were made with FastTracker, one of the format signatures inside the MOD file usually reading “M.K.” was changed to “6CHN” or “8CHN”. For a very short period, this was the only alternative to Composer 669 if you wanted 8 channels and a familiar MOD-composing environment. Also, people were wondering why these played at half-speed in MOD players that didn’t support them or didn’t open in software that looked for the “M.K.”

Around this time PC sound caught up with (and eclipsed) the Amiga. Gravis, the joystick/gamepad maker, dropped the Ultrasound (lovingly, “GUS”) on a very unsuspecting PC audience. It could hardware mix 32 mono PCM channels (although quality would drop if you went over 14) and you could do panning to get 16 full-stereo channels. A lot of people seem to be surprised that (1) Gravis was Canadian (so was AdLib) and (2) that Gravis went from game controllers to sound hardware. At the time sound was heavily game-related, and soundcards often included gameports, so neither of these seem like much of a stretch to me. Anyway, with this kind of power available to them, you can imagine how much furious nerdsturbation was about to occur.

Except for one thing. There were some compatibility issues. The GUS was not directly SB compatible and needed a driver to run SoundBlaster software. For some people, this was enough, but keep in mind this was the days of DOS, so the drivers could take valuable memory and resources on your already-slow 386. Also, although they improved over time, the drivers weren’t perfect. Sometimes they didn’t even work because of the way a program would expect the soundcard to respond. So, direct support for the GUS was preferred, or if you were serious about sound and you had the money, you would just have both a GUS and an SB in one machine.

Farandole Composer 1.0 r12

One of the first trackers to cater to GUS users — and only GUS users — was Farandole Composer, written by Daniel Potter in mid-1993. Farandole did the 16-full-stereo thing I mention above. It borrowed a lot of interface and module features from — and credited — 669 Composer, basically trying to improve upon it and take everything a step further. As you can see from the screenshot, it used a 132 column mode and crammed a lot of information onto the display. At this point everyone probably had VGA and at least a 386, but I do find it slightly ironic that the machine Farandole required to run wasn’t actually doing any of the mixing on the CPU (the GUS was handling it) and although it required VGA it didn’t use any graphics features. Anyway, it had the ability to load MOD, STM, and 669 files, along with its native format, FAR.

Importing other formats would be a very useful feature in trackers from here on out. It attempted to win musicians over to new trackers, but also in retrospect may have accidentally sparked more animosity between tracker musicians because certain features or special effects would be handled/replayed differently.

Multitracker Module Editor 1.01a

Later in ’93, another Renaissance member, Daniel Goldstein AKA Starscream (not to be confused with the chiptune band now called Infinity Shred), released Multitracker Module Editor, or MMEDIT. It was a “MOD-compatible” editor that supported both the SoundBlaster and the GUS and worked with MTM files that could be up to 32 channels in size. I say “compatible” because obviously MTMs are not MODs, but very, very similar, down to the SFX channel command set. MTMs also stored note data by channel/track rather than by pattern, something that would later appear as “frames” in Famitracker and Deflemask. MMEDIT initially supported importing MOD, 669, and FAR. In 1994, Farandole implemented MTM import.

In March 1994, Creative Labs released the SoundBlaster AWE32. Finally, Creative fans had a soundcard that would do hardware sound mixing, compete with the GUS, and the card was still fully SB-compatible. A cool (but out-of-scope) thing about this card was the introduction of SoundFonts which are still used today. Anyway, a few MOD players came out to support hardware mixing on the AWE, but it didn’t really have much of an impact on the tracker community overall. Our computers were getting faster and we didn’t need hardware mixing in trackers as much. Granted it was still handy to have, and games were greatly improved for Creative users, but I digress…

Scream Tracker 3.21

Not long after, Future Crew, famous for their Second Reality demo, dropped Scream Tracker 3 on us. ST3 was way more impressive than Scream Tracker; it had 16 digital channels (GUS or SB) and Adlib support for 9 more channels of FM (previously FM+samples was done in 670 Composer, but was never released). Many users considered the interface to be very user-friendly and professional looking; others simply wanted to write music in the same software package that Purple Motion (Jonne Valtonen) and Skaven (Peter Hajba) used. After all, Future Crew were superstars of the PC demoscene at the time. Even CompUSA used their demos to show off their speakers and soundcards. ST3 loaded STM, S3M, and MOD.

Personal adage time: I remember coordinating with an online buddy in Australia (get in touch, dude!) to direct-connect modems and download ST3. We had internet access but it wasn’t reasonable to do file transfers back then, and I didn’t have anywhere to download it from, so late one night I made an international call, and the echo was so awful that we connected at 7200 baud. I think we couldn’t even get ZMODEM to work so we ended up using either XMODEM or Kermit to transfer the file. After a successful transfer I showed my appreciation with a relatively crappy U2 cover (at least, by my standards today) in ST3.

FastTracker 2

In late 1994, Triton rose again with FastTracker 2. No FM code, but it could do up to 32 channels on a GUS or SoundBlaster and had some very advanced features including envelopes and a nice sample editor, which came in handy because it also introduced multisample instruments. Now a single instrument slot like “Piano” could now contain multiple samples like the low/medium/high keys, or you could have one instrument that contained your entire drumkit and map out the keys similar to the way you’d keydrum on a MIDI keyboard. Additionally, FT2 was also very graphical and polished, could be controlled by mouse or keyboard very easily, and true to its name, it was fast! Of course, it also had the ultimate feature: Nibbles. You could FT2 loaded MOD, S3M, STM, and introduced its own format, XM.

On Christmas 1994, a big tracker update came! FastTracker 2.03 was released to fix many bugs, and Sami released Scream Tracker 3.21 with a note that it would be the last release of ST3. This upset another Aussie, Jeffrey Lim, who wanted improvements in ST3 and did not particularly like FT2’s interface. He would shortly begin writing his own tracker

For an eternity about a year, the battle was ST3 vs FT2, and this is the tracker war I remember. Some of the battle was interface-driven. Using a mouse in a tracker was not intuitive for ST3 folk / people used to textmode trackers, even though FT2 had keyboard shortcuts for all of the mouse actions. Others preferred one set of special effect commands over the other (ST3 commands were carried from ST2, FT2 commands were carried from old MODs). Others still were displeased with the way the replayer handled their songs. Lastly, you couldn’t open an XM in ST3, so some were stuck with FT2 (or didn’t want to switch back) when they couldn’t work on their songs.

Impulse Tracker 2.14

A year later, on the anniversary of Scream Tracker’s supposed death, Jeffrey Lim released Impulse Tracker 1 to varied reviews. Most notably, it was an direct copy of the ST3 interface — for better or worse, depending on whether you liked ST3 — but it didn’t really bring [m]any of the improvements to ST3 (or really, tracking in general) like FT2 did. It was nice that it was written in assembler and designed to be faster/more crash-proof than ST3 under low memory conditions, though, especially if you missed ST3. As a consolation prize, you were awarded volume envelopes. I remember trying IT and not being very impressed, and since I already had ongoing work in FT2 and IT had no XM loader, I just switched back without a second thought.

If there was one thing Jeffrey was/is, it’s encouraged by feedback. He took a lot of criticism into account and improved IT with channel virtualization, filters, better soundcard support, and more.

Now the tracker war was FT2 vs IT. How it ended is anyone’s guess; both trackers saw updates well into the end of the 90’s, and although other trackers came out, many of them were ignored.

Ok, pretend you’re at the end of a movie and they’re telling you where the characters ended up…

Scream Tracker stayed dead, but Future Crew members went on to form FutureMark (3Dmark), Remedy (Max Payne, Alan Wake), and Bugbear Entertainment (FlatOut).

FastTracker 2 was cloned into MilkyTracker which lives today on Windows, OSX, Linux, and even has cellphone and Amiga ports. Milky even implements many of FT2’s playback bugs. Another tracker for Linux, the open-source Soundtracker “NG” (I say this so as not to confuse it with the original Amiga Soundtracker) uses the Cubic Player replayer (which was also open-sourced) and attempts to clone the FT2 interface in a multi-tabbed GUI-styled app.

Triton became Starbreeze Studios along their lifespan and released the Riddick XBOX game, among others.

“FastTracker 3”, which aimed to be a spiritual successor to FT2 (and indeed copied its interface rather faithfully) became Skale Tracker and added modern features like ASIO and VST support. It received a few spotty updates and appears to be dead, though the site is still there.

Renoise came into being aimed at being a modern audio workstation with a tracker-inspired featureset but still having the ability to compete with other packages. It is currently at version 3 (released April 2014) and receives support from its authors.

With the advent of the Internet, people wanted background music on their websites. Yamaha wrote a MIDI browser plugin called MIDplug and its functionality was duplicated by other browser plugins as it quietly faded away. The tracker community’s answer to this was of course MODplug, a browser plugin to play MOD/S3M/XM/IT files instead. MODplug evolved into a tracker and replayer, both of which aimed to look like Windows apps instead of DOS programs. MODplug Player and Tracker were split up and released in various open and closed forms over the years, and then the code was adapted by a team of tracker folks and evolved further into OpenMPT. OpenMPT is currently being developed, has modern feature support like ASIO/VST, and imports most major MOD formats.

Impulse Tracker was cloned into Schism Tracker, which is also open-source, and compiles on multiple platforms. Schism makes use of OpenMPT’s replayer and contributed fixes back to the OpenMPT team.

As for me, I moved from sample-based trackers, to using samples to imitate old (non-sample-based) sound chips, to hacking accuracy improvements for PSG sound chips into the backend of tracker code. Now I’m just short of writing my own tracker…

Thanks for reading! If you enjoyed this post, please share it with your friends and spread the knowledge.

CW-logo-redux-larger inverse phase logo

Dig this article? Then consider supporting us on Patreon!