Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!ucla-cs!ames!oliveb!pyramid!voder!gbs From: gbs@voder.UUCP (George Smith) Newsgroups: comp.sys.ibm.pc Subject: Re: DOS patches Message-ID: <2947@voder.UUCP> Date: Mon, 1-Jun-87 13:11:38 EDT Article-I.D.: voder.2947 Posted: Mon Jun 1 13:11:38 1987 Date-Received: Wed, 3-Jun-87 01:38:26 EDT References: <923@wjvax.wjvax.UUCP> <656@custom.UUCP> Organization: National Semiconductor, Santa Clara Lines: 46 Summary: what is the DOS internal size of filenames? In article <656@custom.UUCP>, boykin@custom.UUCP (Joseph Boykin) writes: > In article <923@wjvax.wjvax.UUCP>, curl@wjvax.UUCP (Jim Curl) writes: > > I'm looking for ways to patch DOS in order to do two things: > > (1) I'd like to be able to have a longer PATH than the 128 or so > > characters now allowed -- this limitation might be a function > > of my editor? > > 1) DOS has an internal limit of 64 characters for any single > directory name (see documentation on System call # 3bH). > ... > Joe Boykin > Custom Software Systems > ...necntc!custom!boykin It's interesting - there seems to be some looseness on the part of IBM with regard to their definition of the size of a path name passed to a DOS function. As pointed out by Joe Boykin, chdir (int 21h, function 3bh) makes mention of the 64 character limit on the size of the ASCIIZ string which is to contain the path name. However, the following functions which also expect an ASCIIZ string with the path name DON'T mention the 64 character limit: mkdir (39h) chmod (43h) rmdir (3ah) exec (4bh) creat (3ch) find first (4eh) open (3dh) find next (4fh) unlink (41h) rename (56h) Also, the definition of an ASCIIZ string (page 6-46, DOS Tech Ref, v3.20) says "The maximum size of an ASCIIZ string is 128 bytes, including the drive, colon, and null terminator). Finally, function get current directory (47h), specifies DS:SI must point to a 64-byte user memory area. It will place the full path name of the current directory for the specified drive there. This seems to back Joe's statement. Why do the two directory functions (CHDIR and Get Current Directory) specifically mention a 64 char limit vs the ASCIIZ definition and the lack of specifiying any size for the other functions? -- George B. Smith National Semiconductor ...!{ihnp4!nsc | decvax!decwrl!nsc | ucbvax}!voder!gbs