[Coco] Reading floppies with CRC error?

Darren A mechacoco at gmail.com
Wed Aug 20 01:22:59 EDT 2014


On Tue, Aug 19, 2014 at 8:14 PM, tim lindner wrote:

>
> It is possible to patch RSDOS' DSKCON to do track reads instead of sector
> reads.
>
> A track read will decode data from index hole to index hole as the disk
> spins, it will not stop on CRC errors. If the MFM signal from the disk
> becomes corrupted it will continue reading. Depending on where the
> corruption is, this allows you to read partial sectors. It will also read
> non-corrupted sectors after a corrupted sector because it will
> resynchronize on valid ID address marks.
>


There is a known problem when using the 'Read Track' command of the Western
Digital floppy controllers.  The address mark detector remains on during
the entire operation. Certain byte sequences contained in the sector data
will cause a false trigger. When this happens you end up reading clock bits
instead of data.

The problem will arise with the following known byte patterns:
- $29 and previous even byte
- $52/$53 and previous byte dividable by 4
- $A4 to $A7 and previous byte dividable by 8
- $14 and following byte's first bit (MSB) set to 1

Darren


More information about the Coco mailing list