[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] Mounting (was: MiNTLib 0.52.3b)



On Thu, Aug 05, 1999 at 03:07:03PM +0200, Julian Reschke wrote:
> 
> maybe the "enhancement" in TOS was implemented as part of GEMDOS, not
> BIOS... Which might make sense as doing a CRC on the FAT is certainly
> something the BIOS shouldn't know about.
> 
> Maybe Michael Schwingen can shed some light on this?

You mean this one?

* Revision 2.7  91/08/05  15:15:33  apratt
* Added code to compute checksums on the first N sectors of a disk
* and compare with the old values, improving media-change detection
* by comparing FATs.  In addition, the serial number written by
* MSDOS versions 5.0 (4.0?) and newer is checked.  (This is all moot
* if your GEMDOS discards cached information when there are no open
* files and the media-change state is "maybe.")

This is done in the BIOS. The BIOS does not really know that this is the
FAT, it simply checksums the first N sectors (and updates that checksum on
writes).

I know this is only a workaround for buggy hardware - all Atari machines
before the falcon have broken (ie. none at all) mediachange detection and
rely on unreliable behaviour of the write-protect line to detect some
mediachanges.

Falcon and Milan use the disk change signal from the floppy drive, which is
100% reliable. However, the BIOS does the checksum nevertheless and reports
'not changed' in case you re-insert the same disk (ie. a disk with the same
checksum fpr the first N sectors), in order not to lose open files
unnecessarily.

cu
Michael
-- 
Michael Schwingen, Ahornstrasse 36, 52074 Aachen