Atari data cassette
Atari data cassettes store programs or data for the Atari 400 or 800 computers.
A file stored on cassette has this overall structure:
- 20-second leader (mark tone)
- A series of data record frames
- An end-of-file frame
Data record frame
The data record frame has this structure:
- Pre-record write tone (PRWT)
- Data record body
- Post-record gap (PRG)
Pre-record write tone
The pre-record write tone has two forms, depending on whether the write OPEN mode was "stop/start" or "continuous write".
For stop/start, the PRWT is 3 seconds of mark tone.
For continuous write, the PRWT is .25 second of mark tone.
The post-record gap also has two forms for the two write OPEN modes.
For stop/start, the PRG is up to 1 second of unknown tones.
For continuous write, the PRG is from 0 to n seconds of unknown tones, depending on program timing.
An inter-record gap (IRG) consists of the PRG of the first record followed by the PRWT of the next record.
Data record body
The data record is a fixed-length record of 132 bytes, stored as as sequence of bits going from high bit to low bit. This is in the following order:
- Two speed measurement bytes: 0 1 0 1 0 1 0 1
- Control byte (FC indicates full data record, FA indicates partial data record [only found in last record of file], FE indicates an all-zero end-of-file record)
- 128 data bytes (last byte is set to number of data bytes in record for partial data records)
- Atari reference manual (lots of tech details)