Preserving Floppy Disks Via Logic Analyser

The floppy disk is a technology that is known only to the youth of today as the inspiration for the Save icon. There’s a lot of retro computing history tied up in these fragile platters, thus preservation is key. But how to go about it? [CHZ-Soft] has found an easy way, using a logic analyzer and a healthy dose of Python.

Floppy drives have particularly low-level interfaces, offering up little more than a few signals to indicate the position of the head on the disk, and pulses to indicate changes in magnetic flux. The data is encoded in the pattern of flux changes. This has important implications as far as preservation goes – it’s best to record the flux changes themselves, and create an image of the exact magnetic state of the disk, and then process that later, rather than trying to decode the disk at the time of reading and backing up just the data itself. This gives the best likelihood of decoding the disk and preserving an accurate image of floppy formats as they existed in the real world. It’s also largely platform agnostic – you can record the flux changes, then figure out the format later.

[CHZ-Soft] takes this approach, explaining how to use a Saleae logic analyser and a serial port to control a floppy drive and read out the flux changes on the disk. It’s all controlled automatically through a Python script, which automates the process and stores the results in the Supercard Pro file format, which is supported by a variety of software. This method takes about 14MB to store the magnetic image of a 720KB disk, and can even reveal a fingerprint of the drive used to write the disk, based on factors such as jitter and timing.

It’s an impressive hack that shows that preservation-grade backups of floppy disks can be achieved without spending big money or using specialist hardware. We’ve seen other projects in this space before, too.

26 thoughts on “Preserving Floppy Disks Via Logic Analyser

  1. “it’s best to record the flux changes themselves, and create an image of the exact magnetic state of the disk, and then process that later, rather than trying to decode the disk at the time of reading and backing up just the data itself.”

    + 1000 for thinking that way!!!

      1. I own one and can’t recommend it. It isn’t open source… and there is ZERO excuse for that.

        One of the first priorities for me with any hardware of this type these days is that the firmware for it and the software to control it is open source, the hardware itself is a bit less of a big deal IMO but still….

        It’s like an Oxymoron of a device… it’s designed to document and preserve but is not fully documented itself which makes it kind of a joke. Also only some disks are supported… and it doesn’t support writing to disks (the hardware is capable but it isn’t open source so nobody has added that feature)….

      2. Krioflux sucks. They asked me for a license price so high which made me sell away everything floppy-related I had and never even think about even trying to work with floppies ever again. And all the money was 10% of what they asked me. They said their department must earn money and many people bought personal licenses and use them in commercial purpose. I chose to build my own interface and never have to even think that company exist.

  2. I have a kryoflux which does the same thing, I wonder if they’ve gone and made something to make the images into usable binaries yet, maybe I should give that a go if they’ve not..

  3. 800 seconds for a full disk? Better hope that you’re not reading any rare disks where the media is physically flaky, or this method will just give you a nice, scrubbed-clean translucent plastic disc at the end of it all.

    1. What else can you do with such a disk? It’s going to die when it’s read, so you can either capture all of those reads and have half a chance of reconstructing the image in a modern format, or you can try to load it normally and lose the disk forever.

    2. I have read somewhere that the famed Kryoflux takes 5 minutes. While that is certainly less than 800 seconds, it isn’t really fast, either. And the KF is a device specifically made for preserving rare disks.

  4. This reminded me about a company that used a Shuggart 8″ floppy drive as a video playback/recorder. They used everything but the controller board. An 8″ floppy disk has enough recording space for 30 seconds of playback. Using constant linear velocity the head scanned the disc. Much like laserdisc players. You maybe asking what can you do with 30 seconds. It’s enough time to run a commercial. They sold lot’s to studio broadcasters.

    1. Are you sure they used CLV? The whole point of disk-based broadcast video formats is the perfect stillframe and perfect cue and Timelapse/Slowmotion capability. Which you don’t have in CLV systems.

      1. These recorders used CAV and were based on 8″ hard disks with a voice-coil stepper and a prerecorded spiral servo track. Back in the analog era this was the easiest method to provide replay, slo-mo and freeze for sports events. No way to do this with an 8″ floppy drive, the stepper motor is limited to 77 discrete steps and takes >20ms for a track change. Data rate is 500 kbps max, so heads and media were designed for flux changes up to 1 MHz.

  5. I suspect you aren’t actually intending to start 4 series of articles with this write-up. :P You might want to go remove the “series of posts” entries and put them in “tags” instead. =)

    1. Do a series like… using a logic analyzer to upgrade the computer of a logic analyzer like an HP 16601A. I was even thinking might be able to use the same logic analyzer to upgrade. Not sure if need isolated probes designed… I have to read into more.

      I was also wanting to see how to hack a SCSI To ATAPI IDE adapter to be HD IDE and not just the ATAPI IDE. Thinking the later is easier.

  6. cool stuff! similar to the doomsday86 project but with floppies instead of a laser pickup. I had a DOS prog in the 90s that would format a floppy at different track sizes than the conventional built in format (fdformat?). Usually could squeeze in a couple extra k onto a disk. Good times…

  7. I came across a writeup that was several years old already when I saw it a few years back regarding recovering data from a CD. The author was doing something similar, reading the ‘almost’ raw data stream off the CD (after the digitiser, but before the decoder & error corrector), and spewed the data into a file for later processing. The idea was to use software smarts to look at the damaged data stream and make intelligent guesses as to what it should be, rather than the hard-and-fast interpretation of the on-board chipset.
    Going right back to reading the raw analog from the laser would have been monumentally awesome, but even so, it was still a truly awesome hack. Only problem was it needed a very specific (and old) drive which had separate digitising & decoding chips (newer drives it is all in one).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

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