Received: (from major@localhost)
	by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id AAA03366
	for pups-liszt; Fri, 22 Oct 1999 00:56:31 +1000 (EST)
Received: from meson.jpsystems.com (209-184-70-169.jpsystems.com [209.184.70.169] (may be forged))
	by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with SMTP id AAA03357;
	Fri, 22 Oct 1999 00:56:11 +1000 (EST)
Received: by meson.jpsystems.com (5.67/1.35)
	id AA25265; Thu, 21 Oct 99 09:54:58 -0500
Date: Thu, 21 Oct 99 09:54:58 -0500
From: msokolov@meson.jpsystems.com (Michael Sokolov)
Message-Id: <9910211454.AA25265@meson.jpsystems.com>
To: pups@minnie.cs.adfa.edu.au, quasijarus@minnie.cs.adfa.edu.au
Subject: Program to read unknown tapes
Sender: owner-pups@minnie.cs.adfa.edu.au
Precedence: bulk

Hi everyone,

I have already posted this program to the PUPS list back in December 1998, but
people are asking for it again, and also there are people on the Quasijarus
list and not on the PUPS list who want it, so I'm posting it again, to both
lists.

This program can read a tape on a UNIX box without the user having to know
anything about its format. This program automatically determines how many files
are on the tape, what is the record size for each, and whether there are any
oddities such as partial records. It saves each tape file into a separate disk
file and produces a log of everything found on the tape.

It's a simple C program and should compile and run on virtually any UNIX or
UNIX-like system. The original version was written by one guy I met on another
list once and then it was significantly enhanced by me. I include it below as
a uuencoded 'compress -s'ed tarball.

--
Michael Sokolov				Harhan Computer Operation Facility
Special Agent				615 N GOOD LATIMER EXPY #4
International Free Computing Task Force	DALLAS TX 75204-5852 USA
					Phone: +1-214-824-7693
					ARPA INET: msokolov@meson.jpsystems.com

Enclosure: uuencoded cptape.tar.Z:

begin 644 cptape.tar.Z
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
/5%%%7Q_]#6D82E<`*```
`
end

