FastTracker 2
FastTracker 2 is a music tracker created by Fredrik "Mr. H" Huss and Magnus "Vogue" Högdahl, two members of the demogroup Triton who set about releasing their own tracker after breaking into the scene in 1992 and winning several demo competitions. The source code of FastTracker 2 is written in Pascal using Borland Pascal 7 and TASM. The program works natively under MS-DOS.
History
In 1993, Triton released FastTracker. This tracker was able to load and save standard four channel MOD files, as well as extended MOD files with six or eight channels. It was only compatible with Creative Labs' SoundBlaster series of sound cards, which were most popular on the PC at that time. The whole editor was a single 43 KiB DOS executable.Through 1994, the musicians in Triton released some songs in a new multichannel "XM" format, accompanied by a pre-release, standalone player. In November 1994, FastTracker 2 was released to the public, with support for the Gravis Ultrasound sound card.
Discontinuation
The last stable release of FastTracker 2 was version 2.08, released in August 1997. A newer version 2.09 was under test as closed beta and became available to the public by Andreas Viklund's website in 1999. This version had a few new usability additions, such as the possibility to exit previously "stuck" windows by only using the mouse, but broke support for the Gravis Ultrasound card. While not an official release it was made later available also from Starbreeze's website.On May 23, 1999, Starbreeze productions announced on their website that "FT2 has been put on hold indefinitely. If this was an ideal world, where there was infinite time and no need to make a living, there would definitely be a multiplatform Fasttracker3. Unfortunately this world is nothing like that," signed by Vogue.
Legacy
After the announcement that support and development for FT2 would be stopped, Ruben Ramos Salvador started working on a FastTracker 3 that is now known as Skale Tracker, available for both Windows, Linux and online. In later years many other trackers tried to follow up on the legacy of FT2, a notable example being MilkyTracker, with special playback modes available for improved Amiga Protracker 2/3 compatibility. See also the [|Clone] section below.Developer Olav Sørensen/8bitbubsy received the original sources of FT2 and continued to work on them, releasing multiple bug fixed versions of it, currently at version 2.13. As he expressed, he isn't allowed to publish the original source code, written in Borland Pascal 7 and Assembler, but is allowed to publish fixed versions of it.
Architecture and features
The FT2 interface is largely inspired by the looks of Amiga's Protracker. The screen consists of a pattern editor in the lower half, while the upper half features an instrument selector on the right, and the general module settings and some oscilloscopes. The pattern editor can be switched to sample/instrument editors. The program also features a little Nibbler clone and in-software documentation for all the features.Patterns
Patterns are essentially sheets of music where the musician is able to arrange the actual musical score. A pattern consists of several rows and is divided to columns. Each row can have one note in every track. A note can look like the following:C#4 02 20 R11
This means the note is a C#-note on the chromatic scale, played at the 4th octave, with instrument number 2. The next column is the volume setting on a 00H-40H hexadecimal scale, and the last column enables a variety of effects to be applied to the sound.
A song consists of a collection of different patterns which can be played in a user-defined order to create the final song structure.
Samples
Samples are raw PCM sound data to be played back at various frequencies, much the way normal musical samplers do. Samples can have a loop start and end point, either repeated continuously or a "ping-pong loop", which essentially means the sample plays in reverse as soon as it hits the loop start or end. The musicians are able to either record samples or load existing ones, manipulate them by cutting and/or pasting parts, or just draw them by hand. There's also a feature to crossfade the sample, thus allowing the loop points to appear seamless.Instruments
Instruments are essentially arrays of samples with additional convenience features. A musician can assign different samples to different pitches of the sound, thus eliminating the possibility of a sample sounding bad if played too high or too low. Instruments support various loopable envelopes to be set on either the sound volume or the stereo panning, as well as built-in vibrato. It is also possible to set the generic settings of the instrument here: fine-tuning, default volume, default panning and relative starting note to C-4.FT2 can get input from a normal PS/2 keyboard and make a live record with it. FT2 was popular with many musicians who didn't have MIDI-compatible keyboards as they could experience live recording without any equipment other than a PC running DOS.
Effects
Each track has an "effects column" which allows the addition of effects such as arpeggio, portamento, vibrato and volume slides. Some control over the song structure can be handled in this column too, with commands for looping and breaking from and delaying patterns, or retriggering, cutting and delaying notes.In addition, a "volume column" allows additional control over volume slides, vibrato, panning and tone portamento.
Full list of Effect types and compatibility with trackers:
| Effect type | OpenMPT | FastTracker 2 | MilkyTracker | Protracker | BeRoTracker |
| 0xx Arpeggio | |||||
| 1xx Portamento Up | |||||
| 2xx Portamento Down | |||||
| 3xx Tone Portamento | |||||
| 4xx Vibrato | |||||
| 5xx Volume Slide + Tone Portamento | |||||
| 6xx Volume Slide + Vibrato | |||||
| 7xx Tremolo | |||||
| 8xx Set Panning | |||||
| 9xx Set Offset | |||||
| Axx Volume Slide | |||||
| Bxx Position Jump | |||||
| Cxx Set Volume | |||||
| Dxx Pattern Break | |||||
| E1x Fine Portamento Up | |||||
| E2x Fine Portamento Down | |||||
| E3x Glissando Control | |||||
| E4x Vibrato Waveform | |||||
| E5x Set Finetune | |||||
| E6x Pattern Loop | |||||
| E7x Tremolo Waveform | |||||
| E8x Set Panning | |||||
| E9x Retrigger Note | |||||
| EAx Fine Volume Slide Up | |||||
| EBx Fine Volume Slide Down | |||||
| ECx Note Cut | |||||
| EDx Note Delay | |||||
| EEx Pattern Delay | |||||
| EFx Set Active Macro | |||||
| Fxx Set Speed/Tempo | |||||
| Gxx Set Global Volume | |||||
| Hxx Global Volume Slide | |||||
| Kxx Key Off | |||||
| Lxx Envelope Position | |||||
| Pxx Panning Slide | |||||
| Rxx Retrigger Note | |||||
| Txx Tremor | |||||
| Wxx Custom Sync Event | |||||
| X1x Extra Fine Portamento Up | |||||
| X2x Extra Fine Portamento Down | |||||
| X5x Panbrello Waveform | |||||
| X6x Fine Pattern Delay | |||||
| X9x Sound Control | |||||
| XAx High Sample Offset | |||||
| Yxx Panbrello | |||||
| Zxx MIDI Macro | |||||
| \xx Smooth MIDI Macro | |||||
| #xx Parameter Extension |