Hi Bernd,

I am not sure whether the boot sector should get
a special treatment either.

In any case, I would only do media_check if the
I/O free get_dpb has failed.

Also, I think the kernel tries to init all drive
DPB and CDS data at boot. If this would work, you
would not have to do this check in int 25 / 26.

On the other hand, floppies are special, as they
can be taken out of the drive and changed etc. :-p

Makes me wonder which strategies other DOSes use.

Regards, Eric



The handler does not check if sector zero has to be read / written. But I think 
it should, and bypass the check for FAT32 etc, as access to sector zero 
probably means reading / writing a new BPB.

As a test I altered the handler to call media_check() if sector to be read / 
written is NOT sector zero, and bypass the FAT32 check for sector zero. Has 
fixed the problem for me.

I am not sure if it is a good idea to call the media_check() for all INT25,26 
calls, as this should result in an additional driver call for every INT25,26.

[1]: 
https://github.com/FDOS/kernel/blob/654e7b7a6c244c81ff8ef1d39a5fb07608e3d07a/kernel/inthndlr.c#L1809





_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to