1	Tapecheck
TAPECHECK is a program designed to quickly and inexpensively test the
data reliability of a magnetic tape.  It does this by writing blocks
of data on the entire tape, rewinding the tape, and reading the entire
tape back in.  Data blocks which do not match the original data
pattern or block length are announced along with the approximate
position on the tape. 

THIS PROGRAM OVERWRITES ALL THE DATA ON THE TAPE.  Please do not
attempt to check a tape that has valuable information on it. 

The check performed by this program is not as good as is available
from any hardware tape evaluator.  The errors that this program
reports might conceivably be caused by the tape drive or some other
factor. 
2 Restrictions

If the tape drive does not run at 800, 1600 or 6250 BPI, the program
will complain and quit.  If the density you run at does not match the
density the system thinks you are at, the program may run but will
quote lengths incorrectly. 

This program writes on about 95% of the tape surface, the rest goes to
interrecord gaps.  Obviously the gaps are not checked for data
reliability. It is difficult to do much better than that on a standard
tape drive. 
2	Use

     Normally this program is used within the context of the CHECKTAPE
procedure which handles the mounting, and the checking for tape errors
and is designed to submit the tape to be checked as a batch job.

     To use the program interactively:

a) Mount the tape /FOREIGN at the desired density with logical name
   SCRATCH. 

       $ MOUNT SCRTCH/FOR  SCRATCH

   If the tape has been previously used at another density, the tape
   drive may set the density for you.  If this is a problem, INIT the
   tape first at the required density. 

b) Run the program.   $ RUN SYS$UTILITY:TAPECHECK or UTL TAPECHECK.

   Sample Output:

	Checking tape at 1600 BPI
	The tape is about 2332 feet long

	A Tape error occurred at about 2301 feet
	A tape error occurred at about 2302 feet

	2 tape errors occurred in 2332 feet

c) Dismount the tape.
2 Source_Location

The sources for TapeCheck are on KMS$SYSUTLUSR1:[FILETOOLS]. There is
reasonable documentation within the source file for finding out how it
works if anyone is interested.  The original program has been modified
to output error messages via a Fortran subroutine so that it can be
run from within a Batch procedure.  The tape check has also been made
more stringent in that retries are inhibited both for writing and for
reading. The audit trail JGD1 documents these changes.

Original Version:
		[DECUS.VAX82B.SEARLE]
		Jim Lellman
		G. D. Searle & Co.
		Research Computing Services
		4901 Searle Parkway
		Skokie Il, 60077
		October 14, 1982

Modified:	James G. Downward
		KMS Fusion, Inc.
		P.O. Box 1567
		Ann Arbor, Mich 48106
		07-Oct-1984
