Jules Richardson wrote:
Yeah, that all makes sense, I think. I just have vague
memories about
discussions as to how much over-sampling of the signal was beneficial so
as to perhaps recover marginal data that would be garbage on the
'native' hardware.
I'd want at least 10x, preferably 20x (or about 40MHz for a 1Mbps disc:
remember, each bit cell can potentially have two transitions in it).
Reading MFM hard drives should be a bit easier from a hardware POV.
They're built to higher specifications (the motor speed tolerances are
much tighter for a start), and the R/W hardware / motors is generally
mated to the platter set for life. Decoding the various kinds of on-disc
format is likely to be utter hell, though. MFM should be a snap, RLL
involves figuring out what encoding table the controller manufacturer
used...
The problem,
of course, is the limited speed of RS-232...
Yep. I think I once raised the possibility of making the I/O to the
"outside world" a separate card to the rest of the system, so that
different methods of transfer could be used.
It's possible to add RS232, but I'm not sure if there's going to be
enough room for a DE9 connector on the back panel... Also, I doubt
there'd be enough space in the flash-ROM to have two versions of the
Layer 1 protocol stack (USB and RS232)...
A right-angle female DE9 and MAX232 (read: TI clone, not the fiercely
expensive Maxim version) wouldn't be an expensive thing to add. Maybe a
few pounds in 10-off, less in quantity.
Of course at that point it's a shame not to split
the floppy access
logic from the CPU, and to add a backplane and console board
The FPGA already does nearly all the work -- the PIC is a glorified
bit-twiddler and data translator. If you don't like it, take the FPGA
code and bolt it onto another interface chip...
and stuff the whole lot in a nice wooden case ;-)
How about a nice, black, anodised aluminium case instead?
Hammond 1455L1601BK maybe?
<http://www.hammondmfg.com/1455.htm>
I think it's got a nice "industrial" look to it. IMHO the silver version
looks a bit naff with the black bezels, but it does look quite nice with
the translucent blue bezels.
Or if you prefer ABS plastic, there's the 1598 series -- I've got a few
1598BBBK, which will take a 160x100 Eurocard PCB if you can live with
the PCB support holes being rather close to the edge of the board.
The issue is
that already there are different sampling modes, and
different uses for the 'special 00' byte. For my hardware, it means
"add 128 to the next sample byte"; for Chuck's it means "an index
pulse occurred here". IIRC on a Catweasel it means "a really short
pulse was detected".
However, if we could all agree on a standard interchange format for
raw-disc images, then this point would be more-or-less moot.
Why's that even needed (nice though it'd be)? Is there some reason that
a software util *can't* be written to translate between data dump formats?
My point was that a "raw dump" means different things depending on what
hardware produced it, and there's not really an easy way to tell if a
data dump is from a given device.
The idea would be to have a software tool for each device that produces
a file in a specific format, which is then imported into whatever
analysis tool you want to use. Once you've done the analysis and
decoding stuff, you can get the software to spit out either an xDIF with
just the sectors, an ADF, an FDI, or whatever you want.
--
Phil.
classiccmp at philpem.me.uk
http://www.philpem.me.uk/