delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/10/07/09:25:21

Date: Tue, 7 Oct 1997 15:24:58 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: djgpp AT delorie DOT com
Subject: Please help testing DJGPP on FAT32 drives
Message-ID: <Pine.SUN.3.91.971007152354.25685W-100000@is>
MIME-Version: 1.0

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.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019