Date: 10 Jan 2002 16:32:43 -0500 From: Randell Jesup <rjesup@wgate.com> To: freebsd-hackers@FreeBSD.ORG Cc: olli@secnetix.de Subject: Re: FreeBSD Floppy driver needs enhancement... Message-ID: <8303d2c304636007d2@[192.168.1.4]> In-Reply-To: <7e04eadc031ed907d2@[192.168.1.4]> References: <7e04eadc031ed907d2@[192.168.1.4]>
next in thread | previous in thread | raw e-mail | index | archive | help
Oliver Fromme <olli@secnetix.de> writes: >Randell Jesup <rjesup@wgate.com> wrote: > > Yes (if anyone still cares about floppies). The old Amiga > > trackdisk (floppy driver) could do that, since all the decoding was in > > software (and via the graphics bitblitter(!)). Do the integrated disk > > controllers in PC's (still) allow direct raw bit access, or only after MFM > > decoding? > >No, it can't. The FDC in a PC (a NEC µPD765 or a clone of >it, nowadays usually embeded within a multi-I/O-controller >or the mainboard chipset) is severely limited in what it >can do. Basically, it can only read MFM-encoded sectors of >several fixed sizes, with a fixed header. Sounds like what I remember; you tell it to find a sector (sectors?) with this header, and it returns it to you. No control over the inter-sector gap, mark, or header directly. It's amazing how codified the OLD PC hardware spec has become, including all the quirks and stupidities. >In contrast, the FDC of the Amiga was like heaven. You can >read the floppies at bitlevel with that beast. The actual >data encoding (MFM or GCR) was done by a coprozessor. >That's why you can read PC-formatted floppies with the >Amiga, but not vice versa. I think that the native Amiga >floppies use MFM2 encoding. Amiga native uses MFM, but because there are no inter-sector gaps (just marks), it packs more onto a track (880K/disk to 720K with normal PC formatting) - 11 sectors instead of 9. You could also use them for GCR or RLL but then decoding had to be entirely in software. MFM could be done by a few passes of the graphics bit-blitter. (I did a major rewrite of the Amiga trackdisk at Commodore to improve bad-sector recovery and speed.) If you could guarantee that drives were close to spec (not the 5%(?) tolerance we assumed), you could pack in 12 sectors I think. I forget, all my math was in comments in the include files (assembler). The next generation chipset from Amiga (AAA) had an improved disk controller on Mary that could handle 2.88MB (3.4MB in Amiga format) floppies, not that they ever took off, as well as do direct CDROM bitstream decode. Never got past a few sample boards in the lab, though. Back to the original question: do people care about floppies and bad-sector recovery anymore? Aren't floppies on the very verge of disappearing for good, replaced by CDRW's? -- Randell Jesup, Worldgate Communications, ex-Scala, ex-Amiga OS team rjesup@wgate.com "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin, Historical Review of Pennsylvania, 1759. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8303d2c304636007d2>