Those of us of advancing years will remember the era of the floppy disc. Maybe not that of the 8-inch drive, but probably its 5.25-inch and certainly its 3.5-inch cousins. Some will remember the floppy disc fondly, while for others there will be recollections of slow and unreliable media with inadequate capacity, whose ability to hold data for any length of time was severely questionable. Add three decades to the time a disc has spent in storage, and those data errors become frequent. The life of a retrocomputing enthusiast hoping to preserve aged software is made extremely difficult by them, and [has a few tips to help with recovery.
]It’s written with specific reference to Commodore 5.25-inch floppies, but aside from some of the specific software, the techniques could be applied to any discs. Most interesting is his explanation of the mechanisms that lead to bad discs or bad sectors, before he looks at some of the mitigations that might be employed. Cleaning the disc or the drive head with alcohol is explored, then taking a dump of the raw data for detailed inspection and disassembly in search of checksum errors. If in your youth a floppy disc was just something you put in a drive and you never investigated further, perhaps this piece will fill in some of the gaps.
If the thought of a stack of Commodore 64 floppies fills you with dread, how about using an emulator?
Header image: PrixeH [CC BY-SA 3.0].
And before, tapes.
I still have the square punch that lets you notch the disk so you can write to the opposite side of a 5-1/4, and some of the stickers to write protect them.
What is this “Square Punch” of which you speak?
I used a simple dime-store hole punch, and it was good enough for me.
Scissors!!!
Us cavemen used our teeth!
Just punching the second write protect notch only worked on Commodore. For other brands you also had to carefully slip a round hole punch between the disk and jacket on both sides to punch holes for the index hole, which Commodore didn’t bother to use.
That technique worked on all soft-sectored single-sided floppy systems, including the Apple II.
Ah, yes, the infamous “Flippy Disks”. I don’t think I’ve done that in about 35 years.
No mention of the cryoflux yet?
https://www.kryoflux.com/
Jason Scott, who I trust wrt making data available from floppies, doesn’t like Kryoflux. Among other, more Jason-y quotes:
“In the 9 years of Kryoflux’s existence from prototype through to product, it has had two main branches of influence: A problematic approach to licensing and openness, and a scorched-earth warfare against any other technologies perceived as threats to Kryoflux as a dominating tool for forensic-level magnetic ingestion of floppies.”
https://www.reddit.com/r/vintagecomputing/comments/buyj9f/til_that_computer_archivists_image_the_magnetic/epjwsut/
Why bother? A cheap fpga can emulate WD1793 controller using open source libraries.
I still have the 8″ floppy with Borland Turbo Pascal for CP/M.
The first software I’ve bought for my first home made computer…
i miss pascal,
My 3.5’s were easy to recover with dd_rescue and a usb floppy drive. Still need to come up with some hardware that will work with my collection of 5.25’s and 8’s, though….
For the 5 1/4, look for some junk 286/386´s being sold for recycling …. most have drives that will work after a little cleaning. As for the 8″ disks, it is tougher …
I have the drives — its the PCI interfaces I don’t have anymore (not that that would help me much as I’ve been doing most of my work off of Linux laptops of late). The best I’ve seen is this — http://shop.deviceside.com/prod/FC5025 — but it is still a bit too pricy for me…
Too expensive for being read-only. My work machine still has a FDD connector on board, sadly single channel. Still, currently i have a 5¼” drive connected to an AMD X4-950 Black Edition. ;)
tl;dr summary:
1. clean the disk
2. clean the drive
3. read – read – read – read – read – read, retry, read, retry, read, until success
4. get a new replacement disk, goto 1-3
5. piece together the data
sad that in many years, no real advances have been made in data recovery. What about going backwards from the checksum and getting the data – should work if there are not too many bad bits.
Suppose it’s all zeroes and a one. A checksum would be the same regardless of the position. How are you going to find the flipped bit?
All of us are “Of Advancing Years”.
It’s just that some of us have more of a head start than others…
I think Jenny misunderestimates the age demographic here. I have some spools of punch tape for a Teletype, with Digital RSTS Fortran code on it, sitting in my pile at home, right next to a couple 16″ platters out of an IBM 360 that I used to use for classroom show’n’tell.
Amazingly, just a week ago I dug out my old Sinclair QL and tried to read from several Microdrive cartridges (slow tape loop things with 100Kb that were reckoned to be flaky even in the mid-80s).
They all worked! I had a go with an old text editor, and Computer-One Pascal (a p-code Pascal). 32 year old tapes, still pretty readable! Over time I copied them to 3.5” floppy disk on a QL, then onto a Mac floppy disk before backing them up it’s hard disk, cds and zip-disks over time. Gotta keep the old data safe ;-)
And here I sit, remembering when we deliberately created type 21, 22, 23 errors.
That was you?
Pepperidge Farms remembers…
I had the problem recently with a dual 8″ for an OSI Challenger II. I was halfway to getting at adjustment screws when I remembered the OSI interface has an RC based oscillator and it is 40 years old. An Xtal might do the trick. Now I wonder, as it aged did it speed up or slow down? (All the 8″ disks were formatted and written to by this system.)
Resistors are more stable over time. Capacitors loose capacitance so a RC oscillator would increase in frequency.
In any case data is not about reading the data at the specified frequency but rather reading the data at the frequency at which it was written.
for (int years = age; years >= desired; years–)
No advanced years here.
I hope that either there’s a typo in that, or I just misunderstand, because it looks to me like the years are declining (which is fine by me, on its own), but you can only continue as long as you continue to be older than you desire. Which is problematic if you keep getting younger.
On the other hand, there’s:
for (years = age, desired = years + 1; desired > years; years++, desired++)
encodes the toast “May you live as long as you want to, and want to as long as you live.” It IS continually advancing, though.
I’ve used an interesting device from Device Side called the FC5025
http://shop.deviceside.com/prod/FC5025
Hooks up via USB to a FD55GFR floppy drive (which was a PC type of disk drive), and can read disks formatted by a 1541.
No love for SpinRite? It (still) isn’t cheap and only works with PC hd’s/floppies, but it has saved my bacon a number of times.
Here are some more options: https://www.archiveteam.org/index.php?title=Rescuing_Floppy_Disks
Spinrite? Are you serious?
Read – Read – Read – Read – Retry – Retry
That’s ALL spinrite does.
May Read – Write – Read – Write
It’s been proven to be snake oil.
I have some Halogen Fluid and blinker fluid you might be interested in. and your EFI Carburetor needs service.
You are welcome to your opinion, but I’ve used it to recover data that nothing else could.
Lone ? No. It doesn´t work, and end up destroying the things it touches.
Hate, despise, other bad feelings ? A lot, since people keep trying to use this in their 2TB hdds / ssds, and wonder why the poor disk completely dies.
I can still read punched tapes, with a high speed reader. I have been able to recover 5.25 by slicing open the sleeve removing the Floppy and wearing gloves wash with a solution of 50% water & Isopropal. Some success, Recovered a Talltree J-format disk (including the ASM driver file) file that could put 1.2 meg onto a 5.25 floppy. As soon as I recover my Assembler I am going to write some code that uses micro steps and see If I can recover everything).