(Section sources include: De Re Atari, OS Users Manual, XL Addendum)
The following are characteristics of the cassette utilization/filesystem
as implemented by the Atari Operating System.
- Mark = 5327Hz (audible sound frequency)
- Space = 3995Hz (audible sound frequency)
- Bit = space(0) or mark(1)
- Byte = 10 bits:
- 1 start bit (space)
- 8 data bits
- 1 stop bit (mark)
- Record = 6-132 bytes, as follows:
- Speed measurement byte, first of two. Marker character = $55 (hex)
- Speed measurement byte, second of two. Marker character = $55 (hex)
- Control byte. One of three values:
1) $FC = Record is a full data record.
2) $FA = Record is a partially full data record, and the next record
should be an end-of-file record.
3) $FE = Record is an end-of-file record.
- Data bytes. 128 bytes for a full data record or an end-of-file record,
or 2-128 bytes if a partially full data record, where the last byte is
not really a data byte, but rather contains the number of actual data
- Checksum byte
- Pre-Record Write Tone (PRWT) = pure mark tone
- Post-Record Gap (PRG)
- Record Frame = PRWT + Record + PRG
- Inter-Record Gap (IRG) = PRG + PRWT
- Normal IRG Mode: Tape comes to stop after each record frame
- Short IRG Mode: Tape is not stopped between record frames.
(Short IRG Mode is supported by the Atari BASIC commands CSAVE and CLOAD.)
- Normal IRG PRWT = 3 seconds of mark tone
- Short IRG PRWT = 0.25 second of mark tone
- Normal IRG PRG = Up to 1 second of unknown tones (motor stop/start time)
- Short IRG PRG = pure mark tone, duration set by user program (may be zero)
- File consists of:
1) 20-second leader of mark tone
2) Any number of data record frames (each frame contains one data record)
3) End-Of-File record frame (contains an end-of-file record)