INT 21 - Windows95 - FAT32 - GET EXTENDED FREE SPACE ON DRIVE                   
	AX = 7303h
	DS:DX -> ASCIZA NUL-terminated ASCII string.	The ASCIZ string "ABC" consists of the four bytes 41h, 42h, 43h, and 00h.  Unless otherwise specified, maximum lengths given in the interrupt list do not include the terminating NUL. string for drive ("C:\" or "\\SERVER\Share")
	ES:DI -> buffer for extended free space structure (see #01789)
	CX = length of buffer for extended free space
Return: CF clear if successful
	    ES:DI buffer filled
	CF set on error
	    AX = error code
Notes:	on DOS versions which do not support the FAT32 calls, this function
	  returns CF clear/AL=00h (which is the DOS v1+ method for reporting
	  unimplemented functions)
	under DOS 7.x (i.e. "MSDOS Mode" under Windows95), the ASCIZA NUL-terminated ASCII string.	The ASCIZ string "ABC" consists of the four bytes 41h, 42h, 43h, and 00h.  Unless otherwise specified, maximum lengths given in the interrupt list do not include the terminating NUL. string
	  pointed at by DS:DX *must* include the drive letter, or this function
	  will return CF set/AX=0015h (invalid drive).	In a DOS box, omitting
	  the drive letter (DS:DX -> "\") results in the free space for the
	  current default drive, as expected
BUG:	this function returns a maximum of 2GB free space even on an FAT32
	  partition larger than 2GB under some versions of Win95 and Win98,
	  apparently by limiting the number of reported free clusters to no
	  more than 64K -- but only in a DOS window if a TSR(Terminate and Stay Resident) A program which remains in memory after terminating in order to provide services to other programs or the user.  The name comes from the name of the DOS function call used to remain in memory after termination. has hooked INT 21h
SeeAlso: AX=7302h,AX=7304h,AX=7305h,AH=36h


Format of extended free space structure:
Offset	Size	Description	(Table 01789)
 00h	WORD	(ret) size of returned structure
 02h	WORD	(call) structure version (0000h)
		(ret) actual structure version (0000h)
 04h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	number of sectors per cluster (with adjustment for compression)
 08h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	number of bytes per sector
 0Ch	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	number of available clusters
 10h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	total number of clusters on the drive
 14h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	number of physical sectors available on the drive, without
		  adjustment for compression
 18h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	total number of physical sectors on the drive, without
		  adjustment for compression
 1Ch	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	number of available allocation units, without adjustment
		  for compression
 20h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	total allocation units, without adjustment for compression
 24h  8 BYTEs	reserved