Date: Tue, 27 Aug 1996 15:42:31 +0200 (MET DST) From: Mark Habersack Reply-To: grendel AT ananke DOT amu DOT edu DOT pl To: Alexander Lehmann cc: djgpp AT delorie DOT com Subject: Re: Next DJGPP release (was: Emacs for DOS) In-Reply-To: <4vsool$odf@rs18.hrz.th-darmstadt.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII On 26 Aug 1996, Alexander Lehmann wrote: >Mark Habersack wrote: > >.... LFN support for plain DOS. ... > >: Until Micro$oft won't provide >: support for LFNs in DOS (will they ever do?) such a library might be needed. > >Actually, instead of putting this into a C library, wouldn't it be >considerably better to suppy a DOS TSR that implements the necessary >INT calls so that all programs (not only djgpp) can use this and also >djgpp program do not require to be recompiled. I was thinking about that. But the problem is how the other programs detect the presence of LFN extensions. If they use INT 2Fh to detetect Win95, then there might be a problem 'cause the TSR cannot provide all the services Win95 gives the DOS apps. And that means problems. DJGPP itself would work OK, because it just check whether the LFN INT 21h functions return error or not. However, if another program wants to, say, invoke the Change Window Title function which is also in Win95's INT 21 - we're in trouble. And there is no point in writing all the funcs just to get LFN support. OTOH, such a TSR might be useful. > >Also, apparently the same may be necessary for other platforms not >supporting LFN in DOS but in their native environment (OS/2, NT4, >Linux dosemu), though it will be considerably easier there, I guess. Linux already supports VFAT from Win95. Just download the 2.0.0 kernel and you can mount Win95 VFAT partition. As for WinNT, there's a problem of access to disk at the sector level. Such access is needed to create LFNs which are stored as a chain of dir entries with 0x0F attribute. They have to be stored one after another, and the only way to provide this is to access the disk with either INT 25/26 or INT 13. AFAIK, INT 13 is being monitored by WinNT and all the access to disk using this INT is forbidden. INT 25/26 are DOS artifacts which I don't know whether are supported on NT. Probably there's a way to access disk at the sector level in NT, but it requires the knowledge of VxD calls in this environment which I don't have (the knowledge). Bye, Mark /************************************************************/ /** Maybe it was infatuation or the thrill of a chase? **/ /** Maybe you were always beyond my reach and my heart **/ /** was playing safe? ***********/ /** But was that love in your eyes I saw, **/ /** or the reflection of mine? **/ /** I'll never really know for sure, **/ /** You never really gave me time! **/ /** Won't you give me that time? **/ /** "Cindirella Search" **/ /********************************/ Visit my homepage: http://ananke.amu.edu.pl/~grendel