Date: Tue, 7 Oct 1997 15:24:58 +0200 (IST) From: Eli Zaretskii To: djgpp AT delorie DOT com Subject: Please help testing DJGPP on FAT32 drives Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk I took a look at the last release 55 of Ralf Brown's Interrupt List, and it includes some info about FAT32 volumes. It seems that there are some incompatibilities between a few DJGPP library functions and FAT32. But I don't have access to a machine with a FAT32 volume, so I cannot test anything about it. If anybody has such access, please test the following and report the results: (1) Can FAT32 drives be accessed from plain DOS (no Windows 9X)? The Interrupt List seems to imply they can (e.g., look at function 6Ch, Extended Open/Create File). (2) The `_open' function in DJGPP library seems to be incompatible with FAT32, both under LFN (on Windows 9X) and in plain DOS (if the answer to (1) above is YES). For LFN, the problem is that `_open' zeroes BH, where a bit should be set for FAT32 access, whereas for DOS it should use function 6Ch instead of 3Dh. Please see if modifying the code of `_open' works with FAT32 and also with usual volumes. The FAT32-specific problems will only surface when referencing files larger than 2GB, so please test this with such large files. Specific functions that seem to depend on this and should therefore be tested are 40h (`_write' in DJGPP's library calls it), 42h (`lseek') and 36h (`statfs'); the latter should show problems when the FAT32 disk is larger than 2GB (see also functions 7303h of Interrupt 21h). (3) If testing reveals that library functions should know when they are called for FAT32 volume (i.e., if there is no code that will work for both FAT32 and FAT16), please see how it is possible to detect the type of volume. Function 7302h of Interrupt 21h seems to be a good starting point, but it seems that it is only supported on Windows 9X, not in plain DOS. You will need the latest Interrupt List; it is available from any SimTel.NET mirror. The following is the primary mirror site: ftp://ftp.simtel.net/pub/simtelnet/msdos/info/inter55?.zip Thanks in advance to all of you who would like to contribute to this effort.