Subject: Re: Floppy driver
To: None <amiga-dev@sun-lamp.cs.berkeley.edu>
From: David Jones <dej@eecg.toronto.edu>
List: amiga-dev
Date: 02/28/1994 16:19:00
> No you can't treat an MS-DOS disk as you would an ADOS disk.  If my memory
> serves correct - and forgive me if it doesn't - we're going back at least 3
> years :-)  What I remember having to do was to turn on DMA on a sector by
> sector basis.  And I think that the WD chip writes a magic MFM word (DSKSYN
> byte) before each sector.  And I think that ADOS writes out even and odd
> bits to separate memory chunks (after you read in a track) but the WD chip
> does not -
> hence your blitter MFM encode/decode are radically different.  I also remember
> that I had to determine wheter the DMA to be started was indeed for the
> sector I wanted.  It would obviously help to get a DOS formatted floppy and
> examine it.

Paula has a signal called DSKSYNC.  When this is set, Paula will wait for
the 0x4489 sync word (common to MS-DOS and Amiga floppies) before starting
DMA.  Both Amiga and MS-DOS formats start each sector with a sync word.

In both cases, it is best to enable DSKSYNC and do DMA for a full track
(actually, a little more).  Then use software-based functions to pick the
data apart.  For writing MS-DOS floppies, I'd take the trackdisk approach:
buffer a whole track and rewrite all sectors at once.  Block-level writing
is too CPU-intensive on the Amiga.

-- 
David Jones, M.A.Sc student, Electronics Group (VLSI), University of Toronto
email: dej@eecg.utoronto.ca, finger for more info/PGP public key

------------------------------------------------------------------------------