Atari TIA Chip
token - tia
points - Chipist
file types - .bin
max filesize - 10mb
description - recommended player for playback - a 2600/7800 emulator
- Tools of the Trade
The TIA chip is responsible for both the audio and visual graphics of the Atari 2600. On the audio side, it has 2 separate oscillators (channels) with 16 different types of "waveform" each. Both individual oscillators have 5 bit pitch depth with 32 separate values - the preceding 3 bits define the waveform to be used.
Unfortunately, as TIA was created for sounds rather than music, no waveform has a complete note range - one octave might miss about half of the notes, which makes the melodic creation a whole ton harder (but still worth dying for). Also, each waveform is tuned differently; but as some of them sound similar, changing those "instruments" might help in filling the notes that other waveforms lack.
It's successor, GTIA, is met on Atari computers and is specialized exclusively for processing graphics - although it has 1-bit speaker inside, so it still can make music (see zxbeep (format)
Tools of the Trade
Several TIA music routines/tools exist out there, those being:
Another Python .IT to TIA converter, made by GreaseMonkey. Also comes with an .IT template with sampled TIA waveforms, but unlike torTIA, it does not consider the peculiar TIA tunings. It does have volume support, however.
IT2TIA is downloadable from here
Paul Slocum's Sequencer Kit 2
The most popular TIA music driver out there. Used for writing music directly in assembly, so any text editor would do the thing. It's incredibly tough to get along with, however, because: 1) instead of tracker notes, you have to use the 8-bit addresses, 2) the song structure is quite complicated - given that it consists of pattern arrays, which have words of four patterns with 8 rows each. While the latter does make the navigation less cosy, it certainly makes up for bigger data recycling and, as a matter of fact, tinier song size.
Slocum's TIA driver also features relatively deep volume control (how deep it is might depend on how many waveforms you might use in the song) and the autosnare feature (which turns off on pattern 128).
lies the link to the music kit. And here
lies a how-to for this driver, as well as the note tables.
New for 2016, a fully functional Atari 2600 tracker for Windows and for Linux! Working in a tracker can give you huge advantages over other tools. Firstly, TIATracker has well fleshed out instrument creation. These include volume, pitch, and even waveform envelopes. Secondly, a piano keyboard overlay shows you the available notes and their relative detune for whichever "waveform" you have selected. And most importantly, it is considerably easier to experiment with the TIA's odd pitch behavior via tracker playback than needing to compile your song and listen through in its entirety every time.
Be sure to see the lyceum article
for relevant downloads and further usage tips.
torTIA is an .IT to TIA converter by lupe, written in Python, and based on Paul Slocum's kit. Write your music in OpenMPT with a specially prepared .IT module that gives you a very good idea about how the music will sound on the actual console. Arguably the most comfortable TIA tool around, but unfortunately it's rather limited: For the time being, the maximum song length is 512 rows, and there is no proper volume support.
torTIA is downloadable from here
Music driver that supports samples and variable length patterns on both channels independently. Songs are edited either in assembler or in text files, converted using a python script.
vcs-music is downloaded from here
Visual bB Music Editor
The Visual batari BASIC IDE has a music editor built in. Unfortunately it doesn't optimize the data at all, so unless you know your way around Batari Basic, you'll run out of memory very quickly.
Can be downloaded here
Irrlicht Project's new TIA music driver called "tiatune", which fixes the horrible detune issues of the TIA chip. Get the driver + XM converter at releases
example output song
Stella is the most popular Atari emulator and can basically play any .bin you can chuck at it. You can download it here