From: Martin Str|mberg Message-Id: <199901111754.SAA02061@father.ludd.luth.se> Subject: Re: FAT32 To: djgpp-workers AT delorie DOT com (DJGPP-WORKERS) Date: Mon, 11 Jan 1999 18:54:29 +0100 (MET) Cc: eliz AT is DOT elta DOT co DOT il (Eli Zaretskii) X-Mailer: ELM [version 2.4ME+ PL15 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Reply-To: djgpp-workers AT delorie DOT com Eli said: > Btw, what happens if you issue a FAT32-related call on a FAT16 disk? > Maybe we could use the new functions unconditionally in some cases? Yes! Indeed it seems to work on FAT32, FAT16 and a from samba mounted file system. Only my FAT32 file system is big enough to be able to hold files bigger than 2^31. Here's a hand typed patch for src/libc/dos/io/_open.c: if(use_lfn) { r.x.ax = 0x716c; - r.x.bx = oflag & 0xff; + r.x.bx = (oflag & 0xff) | 0x1000; r.x.dx = 1; /* Open existing file */ It's hopefully evident so you can apply by hand if I misstyped somehow. This makes _open to always use the extended bit in the LFN case. Please try it out. Unless somebody finds any trouble I suggest we do it like this. If so, no more trying to detect FAT32 is necessary. Or have I missed something? There are of course other places this "| 0x1000" should be added as well. But for testing out this should be sufficient (You have to _open() existing files). Right, MartinS