Copying Commodore Data Tapes, 40 Years Late

Unless you handle the backups for a large corporation, bank, or government entity, you likely haven’t stored much data to tape recently. But magnetic storage used to be fairly mainstream back in the 1980s for all kinds of computer programs. Plenty of computers used standard cassette tapes for this too but you couldn’t just copy them with standard audio equipment. You’d need something like this 1560 datasette from [Jan].

The core problem with using Hi-Fi equipment to copy tapes storing data instead of audio is that data tapes need to be much more precise in order to avoid losses that might not be noticeable in an audio recording. In the 80s computer companies like Commodore built tape drives specifically for their computers, so [Jan]’s project uses two of these 1530 drives to build this “1560” datasette. (No working 1530 hardware was harmed in this build.) An inverter circuit in one tape deck is used to provide the signal to write the data to the other tape, reliably copying data from these data tapes in a way Hi-Fi never could.

[Jan] does lament not having something like this back in the 80s when the Commodore was in its heyday, but there’s still a dedicated retrocomputing scene for these machines that will get plenty of use out of projects like this. If you need to go the other direction in time, there are also interfaces that allow data tapes from old Commodores to be read by modern computers with USB.

41 thoughts on “Copying Commodore Data Tapes, 40 Years Late

  1. Um, what? Copying game tapes was routinely done with hifi equipment back in the day. Sure, there was a chance that the copy didn’t work, but that wasn’t because the copier wasn’t good enough, just the inevitable generational loss inherent in getting a copy-of-a-copy-of-a-copy-of your mate’s new game, on whatever dodgy tape you had lying around.

    1. It’s digital data so you’re spewing bs about degrading copies. Bitter truth is most people were simply incompetent to pirate games back then and are incompetent to pirate games now. Back in 1992 when I was 5 years old my father used to sell pirated music, games and fake AGD equipment imported from China. When most people would earn like $700 in a YEAR, from what he earned between 1991-1993 he built us a new home, bought new BMW (when most people would not be able to afford a used Trabant or Polonez) and I was the only kid in shcool with real GameBoy and original Kross bicycle. Sadly by 2000s the business was getting hard to do because our country joined EU and copyright law came.

      1. While it may be interpreted as digital data, the tape is a physical medium with absolutely analogue signals. Even my own computer from the 80’s had specific precompensation in it’s tape routines to deal with some of the inherent distortion that results.

        So no, it’s not BS.

      2. It is an audio signal on the tape. That’s purely analog.

        It absolutely was a problem back then. There’s plenty of opportunity for a bad copy and for degradation over multiple copies.

        1. Tape warble and speed drift being the biggest faults. The frequency response and noise floor on tape were plenty to support the relatively low data rates – you could transmit C64 programs over public broadcast radio fairly reliably – the problem was frequency distortion on subsequent tape copies because you didn’t have two tape decks that ran at the exact same speed all the time.

      3. The data is digital, but the encoding onto the tape is analog.

        Same with the Apple][ cassette tape system, as well as the Apple ][ floppy disk.

        On the cassette tape system, the data was not only analog, but was encoded in the same frequency range as music. This was done so that standard audio cassette tapes could be used.

    2. It’s not that it wasn’t possible, it’s simply that success varied quite a lot. And from my personal perspective, I never got it to work on my big brother hifi system, no matter if I used a tape saved directly from the computer or a virgin tape directly from the store. Although I have to admit… at the age of 14 (when I used C64 tapes in the 80’s) simple things can be very complicated and complicated things are easily simplified. But on top of that time seems to polish our fond memories in the way we want them to remembered. Feel free to watch the video, it mentions the nuances quite clearly.

        1. It was quite the opposite in my experience.

          I have successfully copied tapes with a “normal” tape deck.

          In my experience, the very cheapest AND the more expensive decks both had problems making good copies.

          The cheapest ones were using too many shortcuts to keep prices low.

          The expensive ones were trying to process the audio and screwing it up. It’s kinda like how most TVs now have several non optional processing layers to make their video look “better” than the competition. You have to pay a premium for a ‘film maker mode’ feature if you want to just display unmolested video…

          The midrange decks were the only ones that worked reliably for me.

    3. The problem is a fundamental one, I think.
      A hi-fi set uses sine signals, while datasettes use square wave.
      The reason why it worked at all was because datasettes contained lots of error correction data.
      It wasn’t unusual to have same data block being repeated multiple times to ensure data integrity.
      That was one of the reasons why C64 or Sharp MZ computers had so long loading times.
      Using 1200 Baud for storage doesn’t help very much if the medium is being considered unreliable.
      Because that’s what datasette really was, a poor and unreliable medium.

      1. In case of the C64 the data is written exactly twice. Each 192 byte block is repeated once. Both copies are followed by a one-byte checksum (a simple XOR of the payload).

        So redundancy yes, but not “lots of error correction data”. You can not do to such a tape what you could do to, say, a CD.

        That said I have had great results copying ZX Spectrum tapes using consumer audio equipment. Not a C64 in the house, sorry.

      2. I believe there was a Radio Electronics article about adding a Schmitt Trigger ship to an analog recorder output to “clean up” the signal for a C64.

        I used a conventional cassette player for my Sinclair, but bought a proper 1530 for my C64 until I could afford a proper floppy drive.

      3. A hi-fi set uses sine signals

        A “hi-fi set” uses whatever signal it is fed – given its bandwidth limitations.

        The way you record sound on a cassette tape is actually with a square wave at some high frequency. That’s your Hi-Fi set as well. It’s 150 kHz or something thereabouts, and the signal you’re putting in modulates the duty cycle of that square wave. This is because the magnetic material on the tape doesn’t respond linearly, so the square wave is used to throw it from one saturation state to the opposite. This creates a sort-of-PWM modulated signal on the tape. It also erases whatever was already on the tape by completely overdriving it.

        As the the tape passes along and gets further away from the recording head, it retains a smothered version of the duty-cycle modulated high frequency square wave that corresponds roughly to the signal you’re trying to record. When you pick it up again off the tape, you low-pass filter it at roughly 15-16 kHz to get rid of any remains of the 150 kHz carrier wave. The reason for the low filter frequency is: simple analog filters aren’t immediately effective at the cut-off point – they have a long roll-off – so you need to leave a 10x gap to the frequency you want to filter out to actually get rid of it.

        So, whatever data you try to put on the tape is first “sampled” by this higher frequency square wave, then smoothed and smothered by the tape itself as the recording head moves along, then low-pass filtered by the playback device to get rid of the ultrasonic artifacts that might blow out your tweeters or cause other errors. This applies both to the C64 tape deck and whatever “hi-fi” set you happen to have.

        What’s more, all tape decks will have a slightly different tape speed and speed variation, so when you make a copy, the frequency of the signal changes. If it changes too much, the tape drive will no longer recognize it. Make a copy of a copy, and the frequency of the signal you record shifts further. A copy of a copy of a copy can give you anything unless you adjust your recording speed to correct the error. If you have any tape warble – and you will – that can’t be helped unless you re-construct the signal between each copy.

        1. Hi, thanks. You’ve corrected many commenters here already, so I suppose you know what we’re after. :)
          An ordinary tape recorder is meant to record audio signals,
          which are smoothed out (“sine”) in comparison to a “square wave”/TTL-style signal (absolute peaks, rail-to-rail, absolute maximum/minimum etc pp).
          To create a waveform that comes close to that stored by a real datasette drive (default C64 datasette is ‘digital’ variant),
          the hi-fi recorder would have to be overdriven and the magnetic tape be properly satured.
          However, this doesn’t always work flawlessly depending on the analog circuit in the hi-fi recorder.
          Because a good hi-fi is meant to prevent what’s generally being considered as distortion.
          So it could be that there’s a volume limiter circuit or similar at work, which would reduce the readability of the data.
          Better tape drives with a schmitt-trigger circuit have higher chances here at handling this issue, I suppose.

        2. I worked at TEAC as a repair tech in 1982-83.  Tape bias frequency was almost universally 100kHz; but there’s no way you could ever see that on playback.  Further, it was important that the bias signal be a clean sine wave.  You’d get unwanted noise if it was anything else.  Our open-reel machines running at 15 IPS could do a fairly faithful reproduction of a 1kHz  0VU square wave (although not as good as my Philips running at half that speed!), and had pretty flat frequency response to 20kHz at 0VU.  The cassettes’ frequency response however was measured at hardly above the noise floor, because up at 0VU, it was terrible, even on expensive decks, and since customers shopped partly by the printed specifications and not just listening results, the marketing department obviously wouldn’t want sales killed by the fact that cassettes’ frequency response at 0VU was only to about 4kHz.  Yes, you read that right.  4kHz.  The TASCAM 144 and 244 Portastudios I fixed so many of did a lot better, like 13kHz, but that’s because they ran the cassette tape at double speed (meaning a C-60 cassette was only 15 minutes on a side), and they used a bias frequency of only 60kHz.  On cassette, you cannot use a carrier of 1.2kHz (or higher) and record a square wave and expect to get anything of the sort back on playback, particularly at 0VU (although you might somewhat approximate it at low recording levels).  Another problem with cassettes that we did not have with open-reel is the tape handling and the fact that particularly at high frequencies, the amplitude and phase were all over the place.  Part of the process of alignment and calibration is that you put in an alignment tape, which held, among other things, a 10kHz full-track solid tone (probably at -10VU or -20VU—I don’t remember exactly), and you align the head’s azimuth first for maximum output, and then, assuming a stereo head, refine the adjustment by trying to get the two channels in phase, by using an X/Y Lissajous display on an oscilloscope.  On the open-reel machines, you could get a solid, motionless, line at 45°, but on the cassettes, it was just a scribbling on the screen.

    4. The more reliable way of making a copy was to load/save individual programs on the home computer.
      There also were copy programs. On Sharp computers, TapeLoad was one of them.
      Unfortunately, some were located at wrong part in memory,
      so that they and kernal/monitor would have been overwritten in RAM by too large tape content.

      1. Cool that you mention this. It was the route I eventually took as a youngster to copy my friends collections of cracked games tapes. First LOAD, swap tapes, then SAVE. It took more than double the time time, but back then time was all I had and hey… it worked.

  2. High speed loaders made copying tapes even more difficult. There was a clever adaptor, probably sold by Datel, which allowed connecting two Datasettes at the same time, thus allowing a clean copy from the already decoded signal.

    1. You are correct , Datel electronics sold a datasette dual adapter for the c64 which came with a companion program that allowed you to adjust the head for best signal (both tapes) and the duplicate them and then test. My very first pcb i made was a copy of this as all that made up this adapter was just a pcb, header for c64 side and a transistor/resistor. this was before datel produced the carts they are well known for.

  3. The advantage of doing a direct datasette to datasette copy rather than using a dual deck Hi-Fi is often HiFi’s have automatic recording gain, which some fastloaders exploit in order to make the copy fail. The Commodore datasette has a crude but effective ADC circuit built in for playback and the digital signal from the computer goes straight to the head when recording. Still, unless you are using decks which are closely speed matched it is still possible to make a n’th generation copy which won’t load due to the timing of the recorded signal going out of spec of the fastloader.

  4. The problem is that Commodore Datasette signals were not, in fact, audio signals; they were purely digital, driving the tape into saturation. Audio equipment was not designed to do this. I had an off-brand surplus computer of the day which used a similar scheme. It needed no erase head because the normal write signal saturated the tape. And of course the read signals, which were expected to be a series of nice sharp peaks, got smoothed out and flattened by audio amplifiers. There were schemes back in the day to adapt normal audio hardware for C64 tapes but they required modifying the tape recorder. (The difference is very similar to that between digital logic circuitry, which uses transistors but always saturated to be fully on or off, and audio circuits which use transistors to try to mimic all the little fluctuations of an analog signal.)

    1. they were purely digital, driving the tape into saturation. Audio equipment was not designed to do this

      Audio equipment was designed to do exactly that.

      https://en.wikipedia.org/wiki/Tape_bias

      The gist is, because tape magnetization is non-linear, you use a high frequency carrier that throws it into saturation. The actual audio is encoded in the duty cycle of the high frequency carrier. This is the principle that enabled magnetic audio tapes to achieve any sort of fidelity. Recording the audio signal directly with a simple DC bias would result in significant distortion around 10% THD.

      The signal that is left on the cassette tape isn’t exactly faithful to the high frequency carrier, because the magnetic regions blend together by the relatively low tape speed, but the end result corresponds to the duty cycle of carrier, which follows the signal you’re trying to record.

      1. Now, if you were copying tapes in the usual way, the end result would not be a fully saturated tape. That’s because the carrier wave was in full saturation, not the audio you were recording, unless you were cranking up the recording level to the point where your VU meter hits the peg.

      2. Please see my post above.  The bias signal must be a pure sine wave for minimum noise, not a square wave; it also is not a saturation-level thing, except for the erase head.  For recording, on machines that have separate controls for bias and record EQ, you usually record a 0VU tone of anywhere from 400 to 1000 Hz, and adjust the bias first to get the highest output of the recorded tone, then increase the bias until the tone output drops by 3dB, for minimum distortion, and then adjust the EQ for flat frequency response.  On cheaper machines, these adjustments will not be separate, so you adjust the bias for flat frequency response at some low record level, and then the design gets you in the ballpark on bias strength.  If you have a distortion meter, you can adjust the bias for minimum distortion of the recorded tone; but without that, you just go by the tape manufacturer’s recommendation, which is commonly that you increase the bias so the output of the recorded tone drops by 3dB.  This is what we did in the studio also, with professional-grade tape multitrack tape machines that used 2″ tape.

      1. The black pipe that a homeowner would most likely need for waste plumbing, found at hardware stores and home centers around here is ABS, and is typically joined via solvent welding.

        PP isn’t typically solvent weldable due to the aforementioned better chemical resistance (at least how I understand it).

        When I was a kid, we had a water well on our property. The few times I remember pulling the pump, the pipe (supporting the foot valve, or later the submersible pump down to and in the water) was black, thick walled, a lot more flexible than ABS (somewhere between 1.5 and 2 inches nominal I’d guess). Knowing nothing about plastics other than color back then, I’d guess now that the well pipe was polypropylene.

  5. This story has got a little mangled. The problem is that Commodore encoded data on tape using the times when the sound wave crosses zero in the downward direction. A lot of amplifiers introduce a phase shift into the audio wave and/or invert the wave. This is inaudible to the human ear, but destroys Commodore’s encoding. If anything, a cheap and simple HiFi is likely to fare better than a fancy one.

    It’s true that Commodore tapes are often saturated, and may sound distorted when digitised, but that has no effect on the readability. The datasette hardware only ever measured whether the wave was above or below zero.

    I’ve personally digitised a lot of 40-year-old Commodore tapes, and have even written a Python script to extract the data from audio recordings: https://github.com/dcf21/commodore-tape-reader

    This deliberately tests for 90° or 180° phase shifts in the signal. The biggest reason for failures, in my experience, is simply dirty and/or degraded magnetic media.

    1. I wouldn’t be surprised if the signal inversion was my main source of problems back in the 80’s on my big brothers hifi set. But I’m pretty sure I messed up various kind of settings too. Anyway, good that you mentioned it as the video doesn’t explain that.

  6. What is the difference between a HiFi tape deck and tape drives specifically for storing computer code? In my experience, the difference is that computer tape decks were the cheapest devices on the market and were in no way more capable.

    1. The tape deck designed for storing digital information doesn’t necessarily need any sort of a bias mechanism that keeps the signal linear. It’s just throwing the magnetization hard one way or the other. The digital data isn’t concerned of amplitude, only the dominant frequency of the signal.

      Audio decks use a high frequency ultrasound carrier signal to force the magnetic tape medium into more linear behavior in terms of signal amplitude, which results in better performance in terms of total harmonic distortion, which is important for listening.

      The latter can encode the former without any problems – your audio deck will have no trouble preserving the frequency contents of the data signal, within reasonable limits. The only issue is that with analog tape decks, the frequency of the signal depends on the tape speed, and no two tape decks run at precisely the same speed, and they both warble unpredictably, so they signal is distorted mechanically with each copy unless you re-construct it digitally in between.

  7. The signal is recorded on a datasette using “saturation recording.” The record head was driven directly from a comparator, at TTL level. This drove the magnetic head into saturation, and no external bias was used. Cheap, easy and relatively clean.

    Commercial tapes were duplicated on an ordinary high-speed reel-to-reel duplicator, carefully calibrated to preserve the fast transitions. The bulk tapes were then loaded into shells. Mostly they were good enough.

  8. using regular maxwell tapes was my issue.
    it had several inches of leader before the brown magnetic tape started. also it was usually better to use c30 minute tapes of shorter. the 120 minute were aways a problem.

  9. Since Commodore did its own thing regarding data cassettes, it would have been nice if its designers had run the tape much faster, like four or eight times normal cassette speed, so they could run the data faster too.  Perhaps Philips’ patent on the cassette, not having run out yet, would not allow that.  It would also have been nice if Commodore had allowed the computer to control the transport, more than just motor on/off, so it wouldn’t require pushing buttons.  For work in the mid- to late-1980’s, I designed a system where we had a cassette transport with a stereo head, and put voice on the left channel (left is at the edge of the tape), and data on the right channel.  (The right channel, being away from the edge, was more dependable for error-free data.)  I came up with my own data encoding, and didn’t realize at the time that I was just re-inventing the Kansas-City Standard.  We did not need much speed on the data, and at 300bps, it never showed an error.  Record and playback levels were not critical; but I had full control of it anyway, since I designed the circuitry as well.  The embedded computer (part of another small unit, not a home computer) could read the data, including location data, and could read the optical encoder for position so it could for example spin out to a particular file and then put the transport into play a little before getting there and watch for the desired data in case the black and silver stripes on the reel table which the optical sensor watched did not land you accurately at the desired place.  The cassette tape transport had no pushbuttons, only electrical controls.

    1. I fear Commodore’s engineers would have struggled to make fast tape loading. Their tape loading system was implemented by Chuck Peddle in undocumented machine code, and he resigned from the company before the C64 was developed.

      The C64 had complex timing issues which caused the developers massive headaches. They ended up making the 1541 disk drive incredibly slow because they ran out of time to figure out why the C64 sometimes missed data bits coming off the serial bus.

      If the engineers couldn’t make their flagship disk drive work, they certainly wouldn’t have been about to invest effort in reverse engineering Peddle’s tape loading code and trying to speed it up. Especially in a company that always prioritised low cost over quality.

      (Source: Brian Bagnell’s book)

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.