2009/5/18 Christian Masloch <c...@bttr-software.de>: >>> However I don't think I'll copy this strange behaviour (at least not by >>> default). As reported by Eric, it breaks programs like JAM (the point >>> is, >>> even on FAT12 and FAT16 disks) which look into the SFT to get the first >>> cluster of a (FAT12 or FAT16) file. >> >> Whether you call it strange depends... I just call it a change in >> layout, just like one was made from DOS 3.3x to DOS 4. > > It was however not documented (well, like most things about MS-DOS 7+) and > unexpected, especially because the usage of these fields (or their lower > word parts) is now incompatible to previous versions even on FAT12/16 > filesystems. (Ignoring the fact that it apparently broke SHARE.EXE, too.)
It's all undocumented, of course :) You're distinguishing undocumented undocumented from documented undocumented... It just happens that nobody has updated RBIL. I'm not sure about "unexpected" because the 3.3x->4.0 change is similar, i.e. they could have left the 16bit sector counter for disks < 32MB. About SHARE: http://support.microsoft.com/kb/161619 nevertheless FreeDOS has its own share which doesn't use these SFT fields. > Does JAM read anything from the archive file (I presume it wants the first > cluster of that file) before looking into the SFT? Also, what if it read > exactly one sector (or more) but the cluster size was only one sector, > either? Then it would read the second cluster instead of the first one > from the SFT. I wouldn't patch the program like that if I didn't know for > sure such things wouldn't happen. Of course it needs further testing, but I tested that reading a whole cluster only sets the last accessed cluster to that cluster, not the one following it. You must actually read one byte more to get that field updated. >> It won't help FreeDOS of course because it still uses fnodes for these >> things instead of SFTs. > > Doesn't it update the SFT relative and absolute current cluster values, > too? As far as I've understood it, fnodes should be invalidated when > leaving DOS, so if these cluster references were saved in the fnode only, > it wouldn't help a lot. It should update those but doesn't at the moment. 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