2009/5/17 Christian Masloch <c...@bttr-software.de>: > Just in case you're talking about the extended SFT: I'll use a > FAT32-extended SFT (probably compatible to EDR-DOS's extensions for FAT32) > even without FAT+. Somewhere *at least the beginning cluster* of the file > has to be stored, and the MS-DOS SFT provides no space for the high word > of a 32-bit cluster value. If programs assume the SFT size of MS-DOS these > can be used with FAT16 kernels which don't extend the SFT. As mentioned > previously, redirectors are not affected by larger SFTs since they get > passed only pointers to the SFT by DOS.
Actually MSDOS 7.10 already uses the SFT in a different way, but undocumented by RBIL, for both FAT16 and FAT32: 0Bh WORD contains the high word of the relative cluster number at offset 19h 2Bh DWORD contains the current cluster number 35h DWORD contains the starting cluster number How this interacts with SHARE.EXE: I have no idea.... This was just obtained by writing a program that dumps the SFT after opening a large file and reading 70000*4k into it on a FAT32 partition with 4k clusters. > Note also that the FAT+ specification provides a method to avoid access by > low-level programs or operating systems which don't know FAT+ on FAT32 > filesystems by setting the version number to 0.1. DOS-C's FAT+ support > could be set by default (if the build option for that support was enabled > at all) to support/create large files only on drives with the version > number set that way. Since DOS-C doesn't (yet) support FAT16 file systems > larger than 4 GiB, FAT16+ is no option anyway. I think FAT+ as is (and implemented by EDR-DOS) then is still much too dangerous, because other OSes can still see it, so: * a new partition type number for the MBR should be defined (much in the same way as >32 MB FAT16, LBA etc) to avoid other (D)OSes from seeing it automatically. * normal DOS programs should not be able to open too large files. This can be accomplished by extending int21/ah=6c, another bit in BH (FreeDOS doesn't properly implement its bit 4 for files >= 2Gb, < 4Gb even: it opens without complaint). The difference with VFAT, and the NT lcase bit is that those were much more backwards compatible, i.e. no harmful data corruption when using such partititions with earlier DOS versions. Bart ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Freedos-kernel mailing list Freedos-kernel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-kernel