We remember the floppy disk as the storage medium most of us used two decades or more ago, limited in capacity and susceptible to data loss. It found its way into a few unexpected uses such as Sony’s Mavica line of digital cameras, but outside those who maintain and use older equipment it’s now ancient history.
Seemingly not for [Terence Eden] though, who has made a portable audio player that uses a floppy disk as its storage medium. It came about with the realization that half an hour of extremely compressed audio could be squeezed onto a standard 3.5 inch floppy, and then that the Beatles’ A Hard Day’s Night album comes in at only a shade over that time. With some nifty manipulation of the compression command line and the judicious removal of some unnecessary metadata, the album can fit on a floppy in equivalent quality to the AM radio fans would have heard it over back in 1964.
The player would have been a major undertaking when the floppy was king, but in 2020 it’s simply a USB floppy drive, a Raspberry Pi, and a battery pack. He’s given us the full instructions, and no doubt a more permanent version could be built with a 3D-printed case.
For garden variety daily computing tasks, the floppy disk has thankfully been a thing of the past for quite some time. Slow, limited in storage and easily corrupted, few yearn for the format to return, even if there is some lingering nostalgia for the disks. As it turns out, though, there is still hardware that relies on floppies – namely, the Boeing 747-400, as The Register reports.
The news comes from the work of Pen Test Partners, who recently inspected a 747 being retired as a result of the coronavirus pandemic. The floppy disks are used to load navigational databases which need to be updated regularly, every 28 days. Engineers responsible for loading updates must perform the process manually on the ground.
Efforts have been made in some areas to replace the disks with more modern technology. As Aviation Today covered in 2014, legacy aircraft often require updates involving up to eight floppy disks, leading to slow updates that can cause flight delays. As anyone familiar with the reliability of floppy media knows, it only takes one bad disk to ruin everything. While retrofits are possible, it’s more likely that airlines will simply stick with the technology until the legacy airplanes are retired. Certifying new hardware for flight is a major cost that is difficult to justify when the current system still works.
Near the turn of the millenium, portable media players like the iPod led to the development of the podcast. The format generally consists of content similar to talk-based radio, and is typically served up in modern codecs like AAC, M4A and MP3. However, [Sean Haas] decided these were all too chunky, and wanted to see if it was possible to deliver similar content on a floppy disk. The results are predictable, but impressive.
[Sean]’s aim was to try and fit roughly 45 minutes of audio on to a 1.44 MB floppy disk. To pull this off, he looked far and wide for a codec fitting for the task. The choice landed on was Adaptive Multi-Rate, or AMR. Typically used to encode audio for GSM phone calls, it can also be used to create compressed audio files.
Initial attempts weren’t quite good enough to do the job, so [Sean] introduced a pre-processing step with FFMPEG, to speed the audio up 1.2 times. It was then passed through SoX and encoded in AMR at approximately 5 kbit/s. This allowed a 45-minute long MP3 file of 72MB to be compressed down into just 1.2 MB, and thus able to fit onto a floppy disk. Audio quality is predictably poor, as you can hear in the embedded clip below, but definitely intelligible. You’d probably want to skip any musical passages if you were doing this seriously.
Most of us are used to a typical 101-key setup for typing on our machines. Mobile and touchscreen devices have offered alternative interfaces over the years, but generally still sticking to QWERTY or other similar layouts. [foone] cares not for convention however, building a text-entry device based on the iconic floppy disk.
The build starts with a standard PC floppy drive, hooked up to an interface board to allow it to work over USB. It’s hooked up to a Raspberry Pi, which runs a Python program that listens out for media insertion events. When a new disk is detected, it reads the volume label, and sends it over to a Teensy LC which simulates a USB keyboard attached to the host PC. The setup uses 29 disks, for A-Z, !, shift, and space. It’s all stuffed inside a SCSI disk enclosure which helpfully provides a power supply along with the classic beige 90s aesthetic.
We no longer use floppy disks on the vast majority of computers, but a recent Old New Thing blog post from Microsoft sheds light on one of their possible unexpected legacies. It seems Windows disk cache items expire after two seconds, and as the post explains this has its origin in the development of MS-DOS 2.0.
Disks, especially floppy disks, are slow compared to computer memory. A disk cache is a piece of memory into which the operating system puts frequently loaded items to speed up access and avoid its having to repeatedly access the disk. They have an expiry time to ensure that the cache doesn’t become clogged with data that hasn’t been needed for a while.
IBM PC floppy drives didn’t implement any form of notification for a disk eject, so it became quite possible for a disk to be ejected while the operating system still believed cached data from it to be valid. Thus a pair of Microsoft engineers tried their hardest to swap floppy discs as fast as they could, and it was discovered to be an impossible task in under two seconds. This became the cache expiry time for a Microsoft OS, and thus we’re told the floppy’s legacy lives on as more than just the ‘save’ icon.
As this is being written the Internet is abuzz with a viral Tweet about railroad gauges having an origin in the width of a Roman horse, that rail historians are debunking with a reference to the coal tramways of [George Stephenson’s] Northern England. It’s thus sometimes dangerous to take simple soundbite origin stories at face value, but since in this case our source is Microsoft themselves we think we can take it as being close to the horse’s mouth. Even if it isn’t a Roman horse.
About a week ago, Linus Torvalds made a software commit which has an air about it of the end of an era. The code in question contains a few patches to the driver for native floppy disc controllers. What makes it worthy of note is that he remarks that the floppy driver is now orphaned. Its maintainer no longer has working floppy hardware upon which to test the software, and Linus remarks that “I think the driver can be considered pretty much dead from an actual hardware standpoint“, though he does point out that active support remains for USB floppy drives.
It’s a very reasonable view to have arrived at because outside the realm of retrocomputing the physical rather than virtual floppy disk has all but disappeared. It’s well over a decade since they ceased to be fitted to desktop and laptop computers, and where once they were a staple of any office they now exist only in the “save” icon on your wordprocessor. The floppy is dead, and has been for a long time.
Still, Linus’ quiet announcement comes as a minor jolt to anyone of A Certain Age for whom the floppy disk and the computer were once inseparable. When your digital life resided not in your phone or on the cloud but in a plastic box of floppies, those disks meant something. There was a social impact to the floppy as well as a technological one, they were a physical token that could contain your treasured ephemeral possessions, a modern-day keepsake locket for the digital age. We may have stopped using them over a decade ago, but somehow they are still a part of our computing DNA.
So while for some of you the Retrotechtacular series is about rare and unusual technology from years past, it’s time to take a look at something ubiquitous that we all think we know. Where did the floppy disk come from, where is it still with us, and aside from that save icon what legacies has it bestowed upon us?
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.