Preserving a floppy disk with a logic analyzer and a serial cable
Moderators: Mug UK, Zorro 2, spiny, Greenious, Moderator Team
Preserving a floppy disk with a logic analyzer and a serial cable
I tied together two pieces of hardware I already had (logic analyzer and USB-to-serial cable) with a small Python script to preserve floppy disks at magnetic flux level, a bit like e.g. a Kryoflux would do. You can read the details here:
http://www.chzsoft.de/site/hardware/pre ... -analyzer/
http://www.chzsoft.de/site/hardware/pre ... -analyzer/
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Amazing! A very strange and unusual way to perform this job. But shows an amazing creativity. In a way, it reminds me of the works done by Vicent Joguin's and his Disk2FDI hardware. Nice retro geek stuff 

Fx Cast: Atari St cycle accurate fpga core
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Interesting 
Does the SCP file you generated work with emulator?

Does the SCP file you generated work with emulator?
Re: Preserving a floppy disk with a logic analyzer and a serial cable
I loaded it successfully into Steem SSE, yes.
-
- Hardware Guru
- Posts: 2269
- Joined: Sat Sep 10, 2005 11:11 am
- Location: Kosice, Slovakia
- Contact:
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Great hack in the true meaning of the word.
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Great project
I see the Kryoflux is quite expensive, but judging from your experiment a €5 Raspberry Pi Zero should be plenty quick enough to handle this.

Jo Even
VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64
VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Basically you need a device that is able to sample two digital signals (index and read data) consistently at a sufficiently high sample rate (min. 10 MHz, preferably 40 MHz). I'm don't know if a Raspberry Pi alone can do this. Often, embedded Linux boards have issues with such hard real-time requirements.
Re: Preserving a floppy disk with a logic analyzer and a serial cable
You don't have to run Linux on the RPi, there are plenty of alternatives ranging from "bare metal" libraries to RTOS-solutions.
Jo Even
VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64
VanillaMiNT - Firebee - Falcon060 - Milan060 - Falcon040 - MIST - Mega ST - STM - STE - Amiga 600 - Sharp MZ700 - MSX - Amstrad CPC - C64
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Perhaps you could be the guy to finally make a successful copy of Crown of creation? 

Falcon CT60e 060 - 256mb ram - Phantom bus and DSP accelerated // Atari TT - Thunder and Storm IDE 64mb ram - Lightning VME - USB LAN - ATI Mach64 2mb
Re: Preserving a floppy disk with a logic analyzer and a serial cable
My setup isn't more powerful than, e.g., a Kryoflux. It just has the advantage (for me) that I already had all necessary hardware.mzry wrote:Perhaps you could be the guy to finally make a successful copy of Crown of creation?
Also, I don't have that game, otherwise I would of course try.
Re: Preserving a floppy disk with a logic analyzer and a serial cable
czietz's method (and I have to insist, a very creative onemzry wrote:Perhaps you could be the guy to finally make a successful copy of Crown of creation?

Btw, Christian, you might want to store a little more than "just" one revolution because some disks have so called data under the index. It is not strictly necessary to store multiple revolutions, not for this purpose, but at least store up to the next trailing edge of the index pulse. This would provide at least some overlap.
Fx Cast: Atari St cycle accurate fpga core
Re: Preserving a floppy disk with a logic analyzer and a serial cable
I have to see how this can be mapped to the scp file format. As far as I understand it always stores complete revolutions.ijor wrote: Btw, Christian, you might want to store a little more than "just" one revolution because some disks have so called data under the index. It is not strictly necessary to store multiple revolutions, not for this purpose, but at least store up to the next trailing edge of the index pulse. This would provide at least some overlap.
Re: Preserving a floppy disk with a logic analyzer and a serial cable
Yes, you are right. If you want to store it as SCP then you can't use fractional revolutions. You would need to decide if it's worth to store two revolutions, use other formats, or just ignore the issue of data under the index.czietz wrote:I have to see how this can be mapped to the scp file format. As far as I understand it always stores complete revolutions.
For ST disks it happens mostly (probably only) on copy protected disks, and even then, not on every copy protected disk, of course. If you want to consider other architectures, especially some using 5.25 disks, then it is much more common. E.g., Atari 8-bit drives didn't have an index hole detector at all. So all user made disks had data under the index.
There is a possible workaround that is making sure that the stored revolution can be used as a circular buffer. You would need to analyze two consecutive revolutions, perform some pattern matching, and then you might need to remove or to add a couple of transitions from the next revolution. This is because the index pulse has some jitter. But this is a bit of a kludge. Not every tool would know how to recover the data under the index from a single stored revolution.
Fx Cast: Atari St cycle accurate fpga core
Re: Preserving a floppy disk with a logic analyzer and a serial cable
I have modified my script to store a second revolution in the .scp file. Resulting image loads fine in Aufit, the HxC software and Steem SSE. Now I just have to find a floppy with "fuzzy" bits. 

Re: Preserving a floppy disk with a logic analyzer and a serial cable
Nice!czietz wrote:I have modified my script to store a second revolution in the .scp file. Resulting image loads fine in Aufit, the HxC software and Steem SSE. Now I just have to find a floppy with "fuzzy" bits.
Weak bits aren't necessarily different across revolutions, although they do are different in most cases. In either case you don't necessarily need multiple revolutions to detect weak bits, but it does make the processing easier and more accurate.
Fx Cast: Atari St cycle accurate fpga core
Re: Preserving a floppy disk with a logic analyzer and a serial cable
I just saw this post for the first time! I have been a long time Saleae beta tester. I actually used the Logic device when developing SuperCard Pro to capture the signal that the board controls.
I am the flux ninja