redesign of read routine

After skimming the patent I referenced in the earlier post, I’m starting to come to the realization that in order to have an effective floppy controller, I need to implement a decent PLL which can better track the signal coming in.

Both the floppy controller design guide ( see this post) and the amiga’s controller definitely implements these, but I do not.

In all cases, it seems, at first glance, that this is fairly complicated.  And will likely change the whole way I’m bringing the data in.  I think this is a good thing, though, and will make for more effective reading of disks.

I’ll have to figure out a way to implement this stuff……………….


Amateur Electronics Design Engineer and Hacker

1 comment

  • I’ve looked at this stuff over the last couple days, and I’m just not thrilled with the added complexity this PLL junk brings to the table. And while I think it no doubt helps I think that there are more simple methods that could still provide a considerable improvement.

    So I’ve been sketching out a new read routine.

    Some key elements:

    1. No more interrupts! Yay!!

    2. Utilizes the RTCC with prescaler as a timer. Using the 1:2 setting, I can measure up to 10.24us between pulses at 40ns resolution.

    3. Time between pulses IS the data. Two pulses separated by 4us of delay is a “10”, by 6us, “100”, by 8us, “1000”

    4. I’m storing tokenized data, instead of the actual bits. This may reduce storage and transfer requirements by 50% !!

    5. Some new code to expand the tokenized data and bit-syncing will have to be done (again) on the PC.