Dec 132017
Free disk space, etc. Nice display.
File FREE489A.ZIP from The Programmer’s Corner in
Category HD Utilities
Free disk space, etc. Nice display.
File Name File Size Zip Size Zip Type
FREE.DOC 6481 2164 deflated
FREE.EXE 2657 1273 deflated
TPCREAD.ME 199 165 deflated

Download File FREE489A.ZIP Here

Contents of the FREE.DOC file

FREE is Copyrighted 1988 by Bill Stewart. All Rights
Reserved. Permission is specifically given to post on BBS's
for downloading. Contributions ($10 suggested), or
correspondence can be sent to:

Bill Stewart
c/o Stewart Computer & Supply
621 Mendenhall Rd. S.
Memphis, TN 38117

FREE was written to fill a void that exists in DOS. Taking
a DIR in DOS to a blank disk results in a "File not found"
message, but no free space listing. Further, except within
CHKDSK you can't find out what the capacity of the drive is.

I wrote FREE to give you the following pertinent

1) The day of the week
2) Date and time this report is valid
3) The logical drive the report is for
4) Total formatted capacity of the drive
5) Bytes currently allocated
6) The number of bytes still available for use

Item 5 reports "Bytes allocated." and that is just what it
says. These bytes MAY include bytes marked as in bad
sectors, locked out clusters, or simply bytes assigned to
files. My object on this line is to let you know what DOS
thinks is used, for whatever reason.

FREE uses a standard DOS call that yields the number of
bytes per sector, the number of sectors per cluster, the
number of clusters available and the total number of
clusters on the drive. It also uses a standard DOS call to
obtain day-of-week, date and time. These figures are used
to compute the pertinent information. One difference this
display includes is numerical output with commas, which I
think makes reading larger numbers much easier. My routines
can handle a number up to 999,999,999 although it is
unlikely you have a drive that large.


Proper syntax is:

FREE [d:]

Omitting the optional drive specifier will result in FREE
using the current default drive.

There are two possible errors FREE will handle. One is
an invalid drive specifier, and two is if you are using a
DOS earlier than 2.00. DOS's critical error handler takes
over on any other error, i.e. "Abort, Retry, Ignore?".

FREE was written in Assembly Language using Microsoft MASM,
Version 1.25

Update: August 23, 1988

* Upgrade changed how information is presented:
Graph added showing percentage used to within 2%

Update: September 3, 1988

* Upgrade adds new pertinent information:
Shows actual integer percentage of disk allocated
Shows actual integer percentage of disk still available

Update: November 30, 1988

* Upgrade changed how information is presented:
Time now shows as a 12 hour format
Leading zero in time is blanked
Leading zero in date is blanked
Seconds display in time was removed
* Upgrade also changed size of file:
File size reduced to under 2K
Now occupies smallest possible disk allocation

Update: January 27, 1989

* Upgrade expanded graph
Graph now is accurate to the actual whole percent.

Update: April 20, 1989

* Upgrade added COLOR to the display
All colors are bright to shown on ANY background
* Upgrade added DOS Version information
* Upgrade increased file size
Now occupies 2 clusters
Now occupies 2nd smallest possible disk allocation
* Upgrade added program version numbers
Begins version 2.0
* Title now includes contact info

Update: April 23, 1989

* Upgrade changed layout
Title and graph centered
Drive and date info justified on one line
DOS Version info moved
* Upgrade adds cluster info
Total clusters on drive
Size (in bytes) of a cluster
* New version system initiated
Version now represents MONTH.YEARrevision

Note: A cluster is the smallest possible part of a drive
that can be allocated by DOS. Even though a file may be
only two (2) bytes long it will still occupy an entire
cluster of disk space. DOS keeps track of what parts of
the disk are in use and which are not by clusters, NOT BY
TRACKS AND SECTORS. The smaller the cluster the better.
Example 1:
Cluster size 2,048 (Common with DOS 3.x)
File size 8,200
Clusters allocated 5

8,200 is 8 bytes more than 4 * 2,048, so another
entire cluster had to be allocated. This WASTED
2,040 bytes of disk space!
Example 2:
Cluster size 8,192 (Common with DOS 2.x)
File size 8,200
Clusters allocated 2

8,200 is 8 bytes more than 1 * 8,192, so another
entire cluster had to be allocated. This WASTED
8,184 bytes of disk space!

FREE is updated in Assembly Language using Microsoft MASM,
Version 5.1

I would very much appreciate your comments and suggestions
for improvement.
Uncle Bill

 December 13, 2017  Add comments

Leave a Reply