X-Originating-IP: [200.42.4.138] From: "Norberto Alfredo Bensa" To: "Martin Str|mberg" Cc: References: <200101051844 DOT TAA15180 AT father DOT ludd DOT luth DOT se> Subject: Re: Fw: Patch for statfs.c Date: Fri, 5 Jan 2001 17:11:22 -0300 Organization: nBens@ Computers X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Message-ID: X-OriginalArrivalTime: 05 Jan 2001 20:15:55.0243 (UTC) FILETIME=[4EFB63B0:01C07754] Reply-To: djgpp-workers AT delorie DOT com Hello, From: "Martin Str|mberg" > While I'm very satisfied with your work, Norberto, yet another case > has dawned on me: DVD-drives. > > WINDOZE 98 says "4 634 253 213 bytes 4,31GB" when I select > properies of my R: drive when it contains a DVD-ROM. Interestingly, if > I in EXPLORER select everything and right-click properties WINDOZE > says "Size: 4,31GB (4 634 200 064), 4 634 476 544 Hmm, guessing : EXPLORER only counts space wasted by files. It doesn't count space wasted by directories and FATs etc... (BTW, 4,634,253,213, ?????.... I hope it's a typo... ) > bytes". Meanwhile WINDOZE "dir /v" says > " Volume in drive R is FOURWEDDING > Volume Serial Number is 9688-FAFF > Directory of R:\ > File Name Size Allocated Modified Accessed Attrib > > > AUDIO_TS 00-08-09 15.56 00-08-09 R DA > AUDIO_TS > VIDEO_TS 00-08-09 16.46 00-08-09 R DA > VIDEO_TS > 0 file(s) 0 bytes > 2 dir(s) 0.00 MB free > 4 419.57 MB total disk space, 100% in use". 4,419.57 is 4,634,253,213 (from properties of R) / 1024^2... 'dir' seems to use 217303. > > So we have several right values... > > Alas df compiled with our latest (the one you have made) statfs.c says > "FOURWEDDINGS 2295300 2295300 0 100% r:/". > > The one from fil316b.zip says > "FOURWEDDINGS 2295300 2295300 0 100% r:/" so there > has been no regression. > > However if I try the INT21 AX=7303 on R: I get: > "r:/ -> 0, (0), bsize = 2048, blocks = 2262819, bfree = 0." which > evaluates to 4 634 253 312 which is in accordance with the first > WINDOZE value above. (Program source last in this message.) > > It would be neat if we could make this work also. > > In statfs.c there is this text: > /* For a CD-ROM drive, Int 21h/AX=3600h gives incorrect info. > Use CD-ROM-specific calls if they are available. > > Int 2Fh/AX=1510h gives us a way of doing IOCTL with the > CD-ROM device driver without knowing the name of the > device (which is defined by the CONFIG.SYS line that > installs the driver and can therefore be arbitrary). */ > > So I ask the list on which platforms does Int 21h/AX=3600h give > incorrect info? > > My testing seems to say that in (WINDOZE 98's) plain DOZE mode does > not support INT21 AX=7303/7302. So there we must fall back to the > earlier methods. > IIRC, on _my_ Win98, 217302 works on plain DOS mode... I'll do some tests. > > Right, > > MartinS > > Best regards, Norberto