By the early 1990s, if you wrote music on an Amiga, the odds were that you wrote it in ProTracker. It cost nothing. It came on magazine coverdisks, with tutorials: CU Amiga gave it away in June 1991 so that readers could put music in their own demos, and Amiga Format did the same in 1993, telling readers that “most of the soundtracks for Amiga” games were made with programs like it. It did not start as anything new. It was one more rewrite of Karsten Obarski’s SoundTracker, and Amiga Format’s public-domain columnist, meeting version 1.0 in December 1990, noted that it “bears a distinct resemblance to the infamous SoundTracker”. What made it last was that its programmers kept improving it, and its module files became the form in which Amiga music travelled.
Fast facts
- First author: Lars “Zap” Hamre, of the group Amiga Freelancers, with others in the group.
- First release: 1990, as freeware; version 1.0 was on public-domain disks by December 1990.
- Based on: NoiseTracker and the hacked SoundTrackers.
- Channels: four, one for each of Paula’s sound channels.
- Files: MOD modules, with up to 31 samples; version 2.3 allowed up to 100 patterns.
- Later versions: 2.x by Peter “Crayon” Hanning (1992–93), 3.x by Cryptoburners and others (1993–96), a 4.0 beta in 1997.
- Today: an open-source clone of version 2.3D for Windows, macOS and Linux.
One of many SoundTrackers
SoundTracker had been rewritten so often by 1990 that Amiga Computing counted at least twenty versions. The most popular was NoiseTracker. ProTracker began as another. According to the version notes collected from its documentation, the first release was “based on noisetracker” and added two things: tempo control by the CIA timer, and a set of extended effects.
The timer mattered. The older trackers advanced the song once per video frame, 50 times a second on a European Amiga, so a tune’s speed could be changed only in whole steps. ProTracker could drive the player from one of the Amiga’s CIA timer chips instead. The command F kept its old meaning for small values and set a true tempo for large ones: in the later documentation, values 00–1F set the speed in frames per row, 20–FF set the tempo, and a tempo of 125 reproduces the old 50 Hz rate.
The screen
A ProTracker song is a table of notes in four columns, one for each sound channel, scrolling up the screen as it plays. Each row of a channel holds a note, the number of the sample to play it with, and an effect command with its value. Amiga Format’s 1993 tutorial took its readers through it: type a note, pick a sample, enter a row, move down, and after a few rows press PATTERN to hear it.
A block of 64 rows is a pattern, and the song is a list of patterns to play in order. Songs could be saved in two ways, CU Amiga explained: as a “song”, the notes alone, for work in progress, or as a “module”, which bundles the samples in with them. A module was a complete piece of music in one file. With a small player program, CU Amiga’s disk carried Noiseplayer, it could be dropped into a demo or a game.
The effect commands
The effects are what give tracker music its character: slides, vibrato and fast arpeggio chords that play three notes in turn on one channel. The table is from ProTracker 2.3’s documentation, as quoted in the MOD format entry.
| Code | Effect |
|---|---|
0xy |
Arpeggio: cycle between the note and two others |
1xx, 2xx |
Slide the pitch up or down |
3xx |
Tone portamento: glide to the new note |
4xy |
Vibrato |
7xy |
Tremolo |
9xx |
Start the sample part-way through |
Axy |
Volume slide |
Bxx |
Jump to a song position |
Cxx |
Set volume, 00 to 40 |
Dxx |
Break to the next pattern |
Exy |
Extended commands, from filter control to looping part of a pattern |
Fxx |
Set speed or tempo |
The pitch slides work in Paula’s own units. A note is stored as the chip’s period value, the number of clock ticks between samples, so sliding up means lowering the period. The module documentation lets a note slide as high as period 113.
Versions
Hamre kept updating the program through 1990 and 1991, and the 1.2 version of mid-1991 was credited to him with help from Anders Hamre. From 1992 Peter “Crayon” Hanning took over the 2.x series. His ProTracker 2.3A of 1993 allowed more than 64 patterns and marked such files with the letters M!K! in place of the usual M.K.. The Norwegian group Cryptoburners produced the 3.x series: Amiga Format put ProTracker 3.10B on its coverdisk in July 1993, calling it “the definitive tracker program”. The last was a 4.0 beta in 1997.
After the Amiga
Modules outlived the Amiga. Trackers for the PC, such as Scream Tracker, FastTracker II and Impulse Tracker, read MOD files and extended the format with their own. ProTracker itself was carried to other machines, among them the Atari ST.
It is still being worked on. Olav “8bitbubsy” Sørensen’s ProTracker 2 clone, “a portable ProTracker 2 (v2.3D) clone in C”, runs on Windows, macOS and Linux and is published as open source under the BSD 3-Clause licence; public reference works date the effort to 2010. He has also continued the Amiga program itself: ProTracker 2.3F is built from a disassembly and re-source of 2.3D, with fixes for fast Amigas, under the same licence.
Sources
- Amiga Format issue 17, December 1990: public-domain column (ProTracker V1.0, NoiseTracker, StarTrekker).
- CU Amiga, June 1991: ProTracker and Noiseplayer on the coverdisk, and tutorial (songs and modules, ST sample disks).
- Amiga Format issue 48, July 1993: ProTracker 3.10B on the coverdisk, “from the Cryptoburners in Norway”; Andy Nuttall’s tutorial.
- Amiga Computing vol. 3 no. 1, June 1990, p. 99: the many versions of SoundTracker.
- Lars Hamre, Peter Hanning and others, ProTracker 2.3A/3.01 effect commands and module format, collected in the MOD format documentation compiled at ftp.cwi.nl, 1993 (web, secondary): the effect commands, the speed and tempo values,
M!K!. - Andrew Scott, “Noisetracker/Soundtracker/Protracker Module Format”, 4th revision (web, secondary): period 113 as the highest note.
- Claudio Matsuoka, tracker-history, ProTracker version list (web, secondary): versions, dates and authors from 1.0 to the 4.0 beta. https://github.com/cmatsuoka/tracker-history/blob/master/protracker.txt
- Wikipedia, “Protracker” (web, secondary): the Amiga Freelancers’ members, the Atari ST version, the open-source clone and its licence. https://en.wikipedia.org/wiki/Protracker
- Olav Sørensen, ProTracker 2 clone (source code, BSD 3-Clause): https://16-bits.org/pt2.php. ProTracker 2.3F for the Amiga (source code, BSD 3-Clause): https://github.com/8bitbubsy/pt23f