Ink Blot welcomes you to Lance's Web Site!

I've decided to resurrect my web site on a limited basis; mainly to discuss FAT32X, but also to test a new site build process. LC

(best viewed at 800x600 full screen!)


Home
Boot Sectors
FAT32X
Utility Programs
Site Map

DSIZE

Drive Size

Download

DSIZE.ZIP or DSIZE.EXE

Updates

5/15/98, Version 01.03 - Fixes calculation problem on disks > 2GB.

Description

This program displays the drive size information of physical disk drives and logical DOS volumes.

Help

C:>dsize -?
usage: DSIZE (DRIVE) [-F] [-G] [-X]

DSIZE (01.03, 05/15/98)

(DRIVE) specifies the physical or logical disk drive, or
   It may be 0 or 1 to indicate the 1st or 2nd physical drive.
   it may be A[:] to Z[:] to indicate a logical DOS drive.
   If not specified, it defaults to the current DOS drive.

-F specifies that (DRIVE) is a FDD when (DRIVE) is a physical drive.
   The default is that (DRIVE) is a HDD.

-G displays the BIOS disk geometry when (DRIVE) is a physical drive.

-X displays the extended Int13 extension information when (DRIVE) is
   a physical drive.

Sample Execution

C:>dsize
C:   265990144 bytes    519512 sectors   253MB

C:>dsize d:
D:   210309120 bytes    410760 sectors   200MB

C:>dsize 0
0:  1081737216 bytes   2112768 sectors  1031MB

C:>dsize 0 -g
0:  1081737216 bytes   2112768 sectors  1031MB
(524 cylinders, 64 heads, 63 sectors)

C:>dsize 1 -x
1:    4209030K bytes   8418060 sectors  4110MB

Int13 Extensions enabled
  Version=01h
  Subset =0003h
    0001 Extended disk access functions supported
    0002 Removable drive controller functions supported
  Real   =(8374 cylinders, 16 heads, 63 sectors)

C:>dsize 0 -f
0:     1474560 bytes      2880 sectors     1MB

C:>dsize a:
A:     1457664 bytes      2847 sectors     1MB

Functionality

Validate parameters. If physical drive, get BIOS drive info and display. If DOS volume, get DOS volume info and display.

Notes

Megabytes are calculated as bytes / 1048576 (that's 1024 * 1024), and are always rounded down.

FAT32 partitions greater than 2GB are reported as 2GB. This is due to the 16 bit values returned by the DOS 'get free disk space' function (int 21h, func 36h).
C:  2147155968 bytes   4193664 sectors  2047MB
Lance Costanzo, [email protected]