TRS-80 cassette data encoding

A question on how to decode audio captures of TRS-80 data on cassette tape:
Interpreting TRS-80 model 1/2 tape cassette audio (Stack Exchange Q&A)

Leads to
trs80-cassette README on GitHub

And this drag-and-drop audio decoder:
TRS-80 Cassette Reader

Source for that

There’s a quite interesting bit on the high-speed 1500 baud mode of the Modell III in the README:
As it happens, the encoding uses twice the time to record a 0 bit than for recording a 1 bit. Given that most data (e.g., ASCII) typically comprises significantly more 0 than 1 bits, this is an “interesting” choice.

Lawrence Kesteloot notes:

In one Basic program I analyzed, there were 15,472 zero bits and 2960 one bits. That’s a recording time of 12.2 seconds, or 1508 baud. Had they swapped the meaning of the two cycle times, that would have been reduced to 7.4 seconds, or 2489 baud. Instead of a jump from 500 baud (on the Model I) to 1500 baud, they could have claimed nearly 2500 baud! If anyone knows why they made this decision, please let me know.

2 Likes