
d64scan - displays and attempts to fix errors/problems in disk images
---------------------------------------------------------------------

usage: ./d64scan <diskimage> <command(s)>

diskimage can be d64, d71, d81 (however, the main focus are d64 images and the
program is not tested with d71 or d81. it might work though =P)

options:
-dir        show directory and scan files
		reads and displays the directory and opens and reads through
		all files on the diskimage.

		this can be used to locate the following problems:

		- cyclic track/sector links (52,file too large)
		- invalid track/sector links (66,illegal track or sector)
		- sector read errors (only if image has error info)
		- broken BAM to DIR track/sector link (1541/1571 ignores this
		  and always reads directory from 18/1, so this is not a fatal
		  problem

-bammsg     show BAM message
		displays the normally unused part of the BAM as text, this was
		sometimes used to put small messages there.
		if the message is blank, nothing will be printed.

-map        show BAM and Error Map

-sep        print a seperator line
-cr         print an empty line
		prints an extra blank line _if_ the previous command resulted in
		some output
-name       print image name

-version    print program version and copyright

run d64scan without any arguments to get a short help

have fun,
groepaz@gmx.net

---------------------------------------------------------------------

Some Ideas for further functionality (more ideas welcomed!)

- Validate (read through all files and recreate BAM)
	- some kind of highlevel BAM manipulation feature would be nice
	- could possibly be a feature of diskimage.c itself

- deformat (find filechains and recreate directory)
	- needs api to create/manipulate a directory entry
	- some kind of highlevel BAM manipulation feature would be nice

- repair directory (partial deformat)
	- api to find start t/s of a given file
	- needs api to create/manipulate a directory entry

- clean image (overwrite unused blocks by zeros)
	- highlevel BAM interface would be nice

---------------------------------------------------------------------

License for diskimage library:

diskimage.c and the sample code is released under a slightly modified BSD 
license. In addition I'd appreciate if you let me know if you use it so that 
I can provide a link above, and that you link back to this page from your 
home page. 

Copyright (c) 2003-2006, Per Olofsson
All rights reserved. 

Redistribution and use in source and binary forms, with or without modification, 
are permitted provided that the following conditions are met: 
Redistributions of source code must retain the above copyright notice, this list 
of conditions and the following disclaimer. 
Redistributions in binary form must reproduce the above copyright notice, this 
list of conditions and the following disclaimer in the documentation and/or other 
materials provided with the distribution. 

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
POSSIBILITY OF SUCH DAMAGE.
