Raspberry Pi Floppy Driver Uncovers Fishy Secrets

A forum post by New Zealand electronics enthusiast [zl2wrw] about retreiving waypoints from a mysterious floppy disk caught our eye. The navigation system on his friend’s fishing boat had died and was replaced. But the old waypoints were stored on a 3-1/2 inch floppy disk that was unreadable on a normal PC. Not to be deterred, [zl2wrw] then looked for another solution — apparently a list of hot NZ fishing spots is worth quite the effort.

The tool he discovered, and the main point of this story, is the bbc-fdc by [Jasper Renow-Clarke] aka [picosonic]. [Jasper] made this project to read 5-1/4 inch Acorn DFS floppies from his BBC Micro. But bbc-fdc can be used to read a variety of floppy disk formats, such as DOS, C64, Apple II, and others It can also just capture raw magnetic flux transitions on the disk, blissfully unaware of any logical structure to the data. We recently wrote about another Raspberry Pi Floppy Drive Controller project by [Scott Baker]. What sets [picosonic]’s project apart is that he’s not using an FDC controller chip here. The only interface electronics is a couple of open-collector 7406 ICs. Data is read using the SPI peripheral. If you need to archive old floppy disks or do a forensic analysis of unknown disks like [zl2wrw], then one of these two projects will almost certainly do the trick.

Meanwhile back in New Zealand, [zl2wrw] discovered that the floppy format was standard (Modified Frequency Modulation, MFM) by examining the raw flux dump. However, the filesystem was a mystery — it didn’t quite match any of the usual suspects. So [zl2wrw] dug into the hex dump of the data and figured out enough of the structure to manually recover the waypoints. Subsequently, a user on the forum found a document describing the file system used by Furuno GPS units, which proved to be a close match albeit after the fact. Alas, [zl2wrw] hasn’t publish the coordinates of those good fishing spots.

Have you had any successes (or failures) when it comes to reading data from old disks? Or have you encountered peculiar disk formats and/or file systems, where having a tool like this could have been helpful? Let us know in the comments below.

Running Modern Linux From A Single Floppy Disk

There was a time when booting Linux from a floppy disk was the norm, but of course, those days are long gone. Even if you still had a working 3.5 inch drive, surely the size of the modern kernel alone would far exceed the 1.44 MB capacity of the disks, to say nothing of all the support software required to create a usable operating system. Well that’s what we thought, anyway.

But then [Krzysztof Krystian Jankowski] dropped Floppinux, a live Linux OS that boots from just a single floppy. There’s even a few hundred KB left over on the disk, allowing the user to tuck a few of their own programs and scripts onboard before booting it up. But most impressively, the project doesn’t rely on ancient software releases like so many other embedded systems do. Every component of Floppinux is pulled directly from the cutting edge, including version 5.13.0-rc2 of the Linux kernel which is literally just a few days old.

Floppinux running on the Asus Eee PC

Of course some concessions had to made in order cram the latest Linux kernel and build of BusyBox into slightly north of 1 MB, so Floppinux certainly isn’t what anyone would call a daily driver. The kernel is stripped down the absolute minimum, and is targeted for the decidedly poky i486. [Krzysztof] had to be very selective about which programs actually made the cut as well, so once the system is booted, there’s not a whole lot you can do with it outside of writing some shell scripts. But then, that was sort of the goal to begin with.

If you’re wondering how [Krzysztof] pulled it off, you don’t have to. He walks you though the entire process, down to the commands he used to do everything from pull down and compile the source code to creating the final disk image. Even if you don’t own a floppy drive, it’s well worth following his guide and booting the image up in QEMU just to say you’ve officially built a Linux system from scratch. It’s good for more than just bragging rights; learning how all the components of a minimal install like this fits together will no doubt come in handy the next time you find yourself poking around inside an embedded Linux device.

Reading Floppies With An Oscilloscope

There’s a lot of data on magnetic media that will soon be lost forever, as floppies weren’t really made to sit in attics and basements for decades and still work. [Chris Evans] and [Phil Pemberton] needed to read some disks that reportedly contained source code for several BBC Micro games, including Repton 3. They turned to Greaseweazle, an interface board that can dump just about any kind of floppy disk if it is attached to the right drive. The problem is that Greaseweazle couldn’t read the disks due to CRC errors. Time to break out the oscilloscope and read the disk manually, which is what they did.

Greaseweazle provides a nice display of read sectors and shows timing coming from the floppy read head. The disk in question looked good with reasonably clean timing clocks except in the area of one sector. At that point, the clocks degenerated into noise. Looking on the disk, it was easy to see why. The actual media had a small dent in it.

Continue reading “Reading Floppies With An Oscilloscope”

An Arduino With A Floppy Drive

For many of us the passing of the floppy disk is unlamented, but there remains a corps of experimenters for whom the classic removable storage format still holds some fascination. The interface for a floppy drive might have required some complexity back in the days of 8-bit microcomputers, but even for today’s less accomplished microcontrollers it’s a surprisingly straightforward hardware prospect. [David Hansel] shows us this in style, with a floppy interface, software library, and even a rudimentary DOS, for the humble Arduino Uno.

The library provides functions to allow low level work with floppy disks, to read them sector by sector. In addition it incorporates the FatFS library for MS-DOS FAT file-level access, and finally the ArduDOS environment which allows browsing of files on a floppy. The pictures show a 3.5″ drive, but it also supports 5.25″ units and both DD and HD drives. We can see that it will be extremely useful to anyone working with retrocomputer software who is trying to retrieve old disks, and we look forward to seeing it incorporated in some retrocomputer projects.

Of course, Arduino owners needn’t have all the fun when it comes to floppy disks, the Raspberry Pi gets a look-in too.

The Floppy Disk As A Portable Music Format

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.

We’re fascinated by the recent trend of storing audio on floppy disks, but despite the hipster vibe, we doubt  the idea will catch on. It’s not the first floppy-based player we’ve seen, but the previous one was more of a fake player.

Floppy Disks Still Used To Update 747 Flight Software

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.

Floppies continue to cling to relevance, even if for most of us it’s simply as the save icon. We’ve also seen floppies used as an even more inefficient method of data entry. It turns out you can even fit an entire podcast on one, too!

 

45 Minute Podcast Served Up On A Floppy Disk

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.

Continue reading “45 Minute Podcast Served Up On A Floppy Disk”