Talk:Datassette Encoding

From C64-Wiki
Jump to navigationJump to search

I found some seemingly inaccurate info in the Bit Encoding section of this article[edit source]

I'm not so sure that the info here is accurate when in the first paragraph it says: "Many computers of the home computer era around 1980 used FSK (Frequency-shift keying) to encode the "1" and "0" on tape, using different frequencies for each - e.g. the Kansas City standard.[1] The Commodore Datassette is making use of a pulse length encoding, which "The PET Revealed" calls superior to FSK."

That's because it then shows a timing diagram for the C64 tape signal waveform https://www.c64-wiki.com/images/4/4d/Datasette_Encoding.png where it clearly shows FSK modulation being used, despite the text in the paragraph saying the C64 uses PWM modulation. The definition of FM modulation is that both the pulse on and off times are identical, which is exactly what is shown in the diagram. For it to be PWM (pulse width modulation) it would need a fixed total time for the on/off cycle, and a varying on time, such that the off time varied inversely with the off time. Just an example of pulse width modulation would be a total time of 100us, and an on time of 60us (off time 40us) for a binary 1, and on time of 40us (off time 60us) for a binary 0. But the timing diagram isn't showing that. Instead it's showing on times and off times always being the same, which results in a total on/off cycle time that changes (something that you would not have for PWM). Videogamer555 (talk) 23:24, 8 November 2024 (CET)

Actually, it is pulse length encoding, not pulse width encoding. A 0 and a 1 have the same duration, 0 is „short cycle - long cycle“, a 1 is „long cycle - short cycle“.
And in that first statement, I was only citing the source. I did not personally evaluate both encodings. The Commodore tape formate has the reputation of being pretty stable. I just could not cite „rumors“.
--Sven.petersen (talk) 01:10, 9 November 2024 (CET)
This is not (pure) FSK, because a sequence of "0" bits and "1" bits would result in a fixed frequency of 1168 Hz, even the frequency inside of a 0 or 1 changes for one oscillation (because a digit consists of 2 periods). The key is that the 0 and 1 is not distinguishable from just measuring the frequency. If a high frequency is measured this is not giving a clear statement about the read digit. It could be a part of 0 or 1 ... this is clearly not (at least pure) FSK.
BTW, PWM is not restricted to fixed period length. In digital signaling (not to be intermixed with PWM for energy transfer) the "pulse" and its width normally encodes a value. For this tape format the pulse is extended to a full oscillation (symmetric shaped) to add an additional state changes with the property that it always returns to 0 (NRZ)) for each period. There are other,more efficient schemes which are not return-to-0 based. However the decoding is based on the measurement of the width of pulses (it does not matter if RZ or NRZ).
"The definition of FM modulation is that both the pulse on and off times are identical" is not sufficient to assume that this must to be a FM modulation. It's only one aspect and is normally the case.
--JohannKlasek (talk) 18:57, 13 November 2024 (CET)