Cassette, being cheaper than a floppy disk drive, was a popular storage medium in the 8-bit era. Some computers such as the Sinclair Spectrum, just provided a port to plug in an existing cassette deck. However, you couldn't do that on a Commodore; instead, they sold a 'datasette' which was fundamentally a cassette deck like the ones designed for playing music, but connected to the computer with a special connector; you couldn't use an off-the-shelf deck.

Clearly the datasette provided some reliability benefits, through uniformity if nothing else; you would be guaranteed to be using exactly the same model that the ROM tape routines were designed for. (And since the PET was designed for business as well as home use, it made sense to pay the cost of a datasette if that would improve reliability.)

But was there anything else special about it? I'm guessing Commodore could just as easily have provided a plug compatible with any off-the-shelf cassette deck, and made the datasette optional if you wanted the uniformity benefit, that the special connector was just to increase revenue by making everyone buy a datasette. But maybe I'm wrong; maybe there was something special about the interface, that allowed some analog conversion step to be skipped or some such?


4 Answers 4


There are three ways an attempt to load a tape can fail:

  1. The loader reports success, but the data is incorrect.

  2. The loader reports failure and does not read correct data.

  3. The loader reports failure, but in fact loads the data correctly anyhow.

Commodore's tape system does a very good job of preventing failure #1. Unfortunately, it writes two complete copies of information to tape purely for that purpose, rather than either using a cheaper means of achieving that purpose (such as a Fletcher's checksum) or using the redundant copy of the information to maximize the likelihood of successfully reading correct data even if the tape isn't perfect. As it is, any imperfection on either copy of the written data will virtually guarantee a #2 or #3 failure, and the fact that two copies of the data must be perfect to achieve a good load makes success less likely than if there was only one copy, and it had to be correct.

To be sure, there are some situations where failure #1 would be far more disastrous than #2 or #3, and the focus on ensuring that possible errors get reported may be useful, but there are many others where Commodore's approach is decidedly less than ideal.

  • 2
    Why does this require a custom connector? It sounds more like something that would be done in the driver or the modulator.
    – Barmar
    Commented Nov 21, 2020 at 20:27
  • @Barmar: Where do I talk about connectors, drivers, or modulators?
    – supercat
    Commented Nov 22, 2020 at 0:40
  • 1
    The question is about why it can't just use the same type of connection that other PCs at the time did.
    – Barmar
    Commented Nov 22, 2020 at 0:49
  • Sorry--I was interpreting the question as relating to the overall reliability of the Datasette system. The use of a special connector made reliability pretty good, so long as there were no defects in the tape. Commodore records everything twice in an an apparent effort to improve reliability, but none of the apparent reliability of the system comes from that.
    – supercat
    Commented Nov 22, 2020 at 14:08

The Datassette has a digital interface, and since it is not meant to process audio signals at all, it allows directly writing sharp digital magnetic transitions to the tape, using a single monophonic read/write head. The written pulses are always written at same amplitude, so there is no variation between equipment. Also when reading the transitions off the tape, the signal amplitude can be assumed to be written sharply and with defined amplitude, the transitions can be amplified and processed into digital pulses as they don't vary much.

Compare that with audio interfaces of various different ranges of audio tape equipment. For certain amplitude of audio signal on wire, the amplitude written on tape is not standardized, and there might even be manual recording volume control. Audio equipment may also have bandwidth limiting so pulse edges stored on tape may not be so sharp. Audio is typically written by using a 100kHz bias sine wave to help linerarize the magnetic signal, so that can have a detrimental effect on the edge sharpness as well. Also playback amplitude is not standardized, and there might again be a manual playback volume control. The equipment might also have stereo tape head, which requires feeding identical audio to both stereo channels, or playing the signal back in a mono equipment has half the amplitude.

Basically, creating a separate tape deck means that tapes are easily interoperable with different computers that have the same defined equipment to access the tapes. By using various audio tape recorders, the interoperability is much less, as it varies between different tape decks and their properties, and adjustable volume knobs make it hard to even save and load your own tapes reliably.

Sure, the Datassette can still have interoperability problems, as there are several different revisions of the hardware, and the tape head azimuth angle can still be a variable that needs user tuning.

  • 1
    Also, start/stop control is something you wouldn't have with a normal tape drive. Commented Nov 21, 2020 at 10:19
  • 2
    @SimonRichter, standard audio cassette players of that era often had an external pause control. It was normally on a 2.5mm TR (mono) jack. It was also used for dictation, where the microphone had a switch to pause recording. IIRC, it was open for pause, closed for play/record
    – CSM
    Commented Nov 21, 2020 at 13:06

I believe the datasette had the ADC built in, so it could then transmit digital signals to the computer. By optimising for digital output, the unit should have been more reliable, compared to a conventional tape player which would have bias settings for a more accurate output of analogue sound data.

  • 2
    The "ADC" is just a comparator. But then again, every comparator is a 1-bit-ADC :-) Commented Nov 20, 2020 at 18:43
  • 1
    Indeed, it converts analogue to digital. However I'm not sure whether it was edge triggered or level triggered. Commented Nov 20, 2020 at 18:55
  • 4
    The datasette output was rising-edge triggered, which has the unfortunate consequence of severely reducing the usable data rate because only half of the possible transitions can be reported.
    – supercat
    Commented Nov 20, 2020 at 19:17
  • 1
    Note that even digital circuits are made with analog devices, so what really is analog or digital varies. @supercat The Datassette output (and neither input) is not triggered to any edge. There is a circuit made of operational amplifier blocks that simply amplifies incoming signal, requires a bit hysteresis, has some pulse or edge shaping, and finally a digital buffer. Basically, a rising or falling edge from tape head will flip the data output high or low. How a computer reads those pulse lengths into bits is up to the computer, not the Datassete.
    – Justme
    Commented Nov 21, 2020 at 13:24
  • 1
    @Justme: Perhaps "triggered" wasn't the right word, but my point was that a tape head signal will produce a positive spike with one direction of flux reversal and a negative spike with the other, and the datasette only captures one direction of spike and turns it into a pulse whose length does not seem to be usefully affected by the timing of the opposite phase transition.
    – supercat
    Commented Nov 21, 2020 at 18:15

The datassette doesn't have the bias circuit on recording, because on digital data wasn't necessary, and also has sensors that informed if the motor was engaged. Also the power supply was from the computer so no batteries or extra plugs were involved.

On the reproducing part a circuit designed to process a digital signal doesn't introduces unnecessary stages like volume and tone controls.

There were dome DIY kits that made possible to use a normal cassette recorder with a c64 (see at page 59 below) but they were unreliable.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .