/=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\
|                     D i s k S c a n   v 1 . 0                     |
|                                                                   |
|                          By: Peter Bako                           |
|                             07/20/93                              |
\=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=/

--* What is it? *--

DiskScan is a DOS based utility for the scanning of image files, either
on disks, hard drives, specific directories, etc.  While it can be used
to scan any kind of a file, it was specifically written with image cata-
loging in mind.  As the program scans the files in the specified location,
it checks their extensions.  If it recognizes the extension as a graphic
file for which it knows the structure of, it will open up that file, and
pull from it the height, width, and number of colors of the imbedded image.
This information is then displayed either to the screen, or send to a user
specified file.


--* Why was it written? *--

For a number of years now, I have been collecting images of all sorts from
a variety of sources.  As my hard drive runs out of space I have been
copying these files onto floppies, which by now is starting to number in
the hundreds.  Obviously with such a large number of disks to deal with, it
becomes rather impossible to mentally keep track of where any given image
can be found.  As such a cataloging system was needed, the output of which
could be transferred into a spreadsheet or database for easier searching
and sorting.

At first I simply used the DOS DIR command, the output of which I piped
into a file.  While this method was simply and fairly quick, its not very
efficient for a number of reasons.  For each disk directoried in such a
manner, DIR included a number of information which I did not need.  From
the header only the disk name was of interest to me, and I had absolutely
no need for the date/time stamp of the files.  Furthermore I did not care
to keep track of the amount of free space left on each disk.  Finally I
became too tired of having to constantly edit the output of this system to
the format that my database was set up to.

As my collection increased, the problem of duplicate images became a greater
and greater concern.  Early on I've made the decision of detecting
duplicates by file name and file size, but it did not take long for me to
discover that its entirely possible to have to files be as much as 5k
different in size, and yet still be the same image.  The next obvious item
to check was the height, width, and in the case of GIFs number of colors
used.  However my earlier system could not supply me with this information.

The solution to all of these problems was a small utility that could quickly
scan multiple disks, and report to me only the information that I was
interested in, and in the format which my database expected.  From this
idea was DiskScan born.


--* Usage *--

DiskScan is a completely line command driven utility.  You can always get a
list of the commands by simply typing in "diskscan" at the C: prompt without
any commands.  The output looks like this:  (Please note that this is the
output of the registered version...)

-------------------
DISKSCAN     Copyright: Peter Bako, 1993
 v1.0            Registered version.

Usage: DISKSCAN startpath [options]
 -a     Append output to file  |  -o<fn> Sends output to filename
 -c     Show comment field     |  -p     Pause after 24 lines
 -d     Display directories    |  -r     Repeat scan
 -h     Display hidden files   |  -s     Disable screen output

For bug reports, hints or suggestions, I can be
reached at any of the following addresses:

Internet:   peterbak@microsoft.com | Peter Bako
Compuserve: 71170,1426             | 17279 NE 18th Place
AOL:        pbako                  | Bellevue, WA  98008
-------------------

DiskScan always requires the "startpath" information.  This can be in any
standard DOS format, such as "a", "a:", "a:\", or any other valid drive
name.  (Network drives can also be used.)  You can also enter wildcards as
part of the "startpath" field, which will be used to limit the search.  For
example:

startpath       result
---------       -------------------------------------------------------
a:              Scan drive a:, starting at the root level
c:\*.gif        Scan drive c:, displaying only *.gif files
c:\pic          Start scanning from c:\pic, all files

This is pretty standard for all DOS programs, and I doubt that anyone will
find it hard to grasp.  However the real abilities of the program only come  
into play if you give it some of the option flags.  We will cover each of
the flags here, and explain their purpose and usage.

option          usage
-------         ---------------------------------------------------------
-a              'A'ppend output to an existing file.  Also needs the -o flag 
                to supply the filename.  If used without the -o flag, it will
                be ignored.
-c              Show 'C'omment field.  For some of the supported graphic
                formats, there is extra information embedded into the file
                which can be used to identify that filed.  For example in
                the case of a GIF image, it would report the type of GIF it
                is (87a, or 89a).
-d              Display 'D'irectories.  The default condition is to display
                only the names of actual files, and not directories.  To
                force the program to also supply directory names simply give
                it the -d flag.  Please note that the program always inserts
                the | character before a file name to indicate its depth
                relative to the starting point.  (However the | character is
                only displayed on the screen.  It is not sent to the output
                file, should that option be active.)
-h              Show 'H'idden files.  With this flag files and directories
                marked as hidden will also be displayed.
-o<file>        'O'utput file.  If you want to send the result of the program
                to an output file, give it the -o flag, followed immediately
                by a file name (which can include a path before it).  Please
                note that there must not be any spaces after the letter 'o'
                and the first character of the file name or path.
-p              'P'ause after 24 lines.  This is obviously only of use if
                you plan on viewing the program output on the screen.  As
                indicated by its name, this flag will cause the output to
                pause every 24 lines (standard limit of most systems), and
                prompt you to strike any key to continue.
-r              'R'epeat scan.  If you intend to scan a handful of floppies,
                you can give this flag, which will prevent the program from
                quitting after it finishes the first scan.  Generally
                speaking this would not be of any use if you are scanning a
                hard drive or net drive.
-s              Disable 'S'creen output.  If you have given the -o flag, and
                therefore are sending the output to a file, you can also 
                give this flag and prevent the program from also displaying
                the information to the screen.  Giving this flag without also
                using the -o flag, will revert back to screen output.

The options can be given in any order.  The only requirement be that you
separate the options list from the startpath by a space.  If you should
accidentally give a wrong or unknown command, the program will abort and
tell you it does not know that command.


--* Example output *--

C:\> DISKSCAN a:
Press any key to scan drive a:, or 'Q' to quit >
File name               Size  Widt/Heig  Clr Disk name      
FILELIST.INF           40568                 DISK 12      
INFO.ARJ               63093                 DISK 12      
|EAGLE.GIF             96896   640x480   256 DISK 12      
|EXAMPLE1.JPG          23824   320x200       DISK 12      
||CAR.TIF             395103  1024x600       DISK 12
Number of files found: 5

C:\> DISKSCAN a: -d
Press any key to scan drive a:, or 'Q' to quit >
File name               Size  Widt/Heig  Clr Disk name      
FILELIST.INF           40568                 DISK 12      
INFO.ARJ               63093                 DISK 12      
PICS                   <DIR>                 DISK 12
|EAGLE.GIF             96896   640x480   256 DISK 12      
|EXAMPLE1.JPG          23824   320x200       DISK 12      
|OTHER                 <DIR>                 DISK 12
||CAR.TIF             395103  1024x600       DISK 12
Number of files found: 7

C:\> DISKSCAN c:\download -d -c
Press any key to scan drive c:, or 'Q' to quit >
File name               Size  Widt/Heig  Clr Comment    Disk name      
PICS                   <DIR>                            HARDDRIVE
|GIFS                  <DIR>                            HARDDRIVE
||EAGLE.GIF            96896   640x480   256 GIF87a     HARDDRIVE      
||FROG1.GIF           156948   640x480   256 GIF87a     HARDDRIVE
||GRNEY5.GIF           62464   640x480    16 GIF89a     HARDDRIVE
|JPGS                  <DIR>                            HARDDRIVE
||EXAMPLE1.JPG         23824   320x200                  HARDDRIVE      
|PCX                   <DIR>                            HARDDRIVE
||CAVEDROP.PCX        107618   768x128   256 Version 5  HARDDRIVE
Number of files found: 9                         


--* Shareware info *--

This program is being distributed as Shareware.  The free demo version
is capable of recognizing two image format types, TIFF and PCX.  You can
get the full version of the program by sending $5.00 (US) to me at the
following address:

                Peter Bako
                17279 NE 18th Place
                Bellevue, WA  98008

The full version uses the same commands, has an identical output, but has 
the added ability to read the following image formats:

    * CompuServe GIF,              * Aldus TIFF (PC/Mac),
    * JIFF encapsulated JPEG,      * ZSoft PCX,
    * TrueVision Targa,            * Microsoft BMP, and
    * Digital Research GEM/IMG.

If I get enough registration, I will be updating this program to support
more image formats, have a better interface, and any other suggestions that
I receive from users.  There is also a Macintosh version of the program
under work for people who also use the Mac, or have friends that do.


--* Legal issues *--

I reserve all rights to both the registered and unregistered version of
DISKSCAN, and comes with no warranty of any kind.  The unregistered version
may be freely passed around by all, provided that this Read Me files is also
included with it.  The registered version may not be given to, or used by
anyone other then the person to whom it is registered to.


