Xref: news-dnh.mv.net comp.os.msdos.djgpp:2874 Path: news-dnh.mv.net!mv!news.sprintlink.net!wizard.pn.com!mozo.cc.purdue.edu!purdue!oitnews.harvard.edu!news.sesqui.net!rice!news!sandmann From: Charles Sandmann Newsgroups: comp.os.msdos.djgpp Subject: Re: Windows 95 long filenames Date: Thu, 26 Oct 1995 07:58:52 CDT Organization: Rice University, Houston, Texas Lines: 13 References: Reply-To: sandmann AT clio DOT rice DOT edu Nntp-Posting-Host: clio.rice.edu To: djgpp AT sun DOT soe DOT clarkson DOT edu Dj-Gateway: from newsgroup comp.os.msdos.djgpp > The book `Undocumented DOS' (by Andrew Schulman et al, publ. Addison-Wesley) > says that various DOS interrupts `AH=0x71, AL=0xXX, int21' do the same as the > corresponding `AH=0xXX, int21' but with Windows95 long filenames instead of > xxxxxx.xxx DOS filenames. How can a program running under any version of DOS > find if the (computer that it is on) has these `AH=0x71, int21' interrupts? See the file src/libc/dos/lfn/_use_lfn.c in the V2B3 (or lfn_sbrk.zip) distributions for a detection example which I know works. In some cases it's as simple as changing to the 0x71 interrupt form, but in other cases MS has added new register arguments which you must specify properly or you will get the wrong behavior. The above source distributions also give examples of all the open/rename/delete/etc type calls.