!***START
!
!	NOVEMBER 3, 1978  J. THOMPSON  INTERMETRICS

TPCPY -	THIS PROGRAM WILL COPY AN INPUT TAPE ONTO AN OUTPUT TAPE UNTIL
	A SPECIFIED NUMBER OF FILES IS REACHED OR UNTIL A SYSTEM STATUS
	CODE IS RECEIVED THAT HAS A ZERO BYTE COUNT AND IS NOT AN END-
	OF-FILE.  THERE ARE BOTH INPUT AND OUTPUT TAPE FILE SKIPPING
	OPTIONS.  THERE IS PROVISION FOR PARITY PROBLEM RECOVERY ON
	INPUT TAPES.  INFORMATION IS PROVIDED FOR EACH FILE PROCESSED
	ABOUT INPUT FILE NUMBER, OUTPUT FILE NUMBER AND LENGTH OF FILE
	IN BYTES.  THIS PROGRAM WILL COPY MULTIPLE END-OF-FILE MARKS,
	SO THE USER SHOULD MONITOR THE OUTPUT OF THE PROGRAM AND
	CTRL Y IT WHEN WHATEVER END-OF-VOLUME CRITERIA ON THE INPUT
	TAPE ARE MET.  (N.B.  END-OF-VOLUME IS USUALLY DENOTED BY TWO
	CONSECUTIVE END-OF-FILE MARKS.  BUT SOME PIP TAPES WITH ZERO
	LENGTH FILES WILL HAVE MULTIPLE END-OF-FILES THAT DO NOT DENOTE
	END-OF-VOLUME.)

	INPUT TAPES MUST BE 9-TRACK AND EITHER 800 BPI NRZI OR 1600 BPI PE.
	BLOCKS ON TAPE MUST BE GE.14 BYTES AND LE.24000 BYTES IN LENGTH.
	ANY LABEL ON AN INPUT TAPE WILL BE COPIED TO THE OUTPUT TAPE.
	IF THE INPUT TAPE IS NOT LABELED, THE OUTPUT TAPE WILL NOT BE.

	THE PROGRAM IS WRITTEN IN VAX/VMS FORTRAN-IV PLUS.

---	OPERATION ON VAX/VMS

1.	ALLOCATE _MTA1: ITAPE
2.	ALLOCATE _MTA2: OTAPE
3.	MOUNT THE INPUT TAPE ON UNIT ONE WITH NO RING IN IT.
4.	MOUNT THE OUTPUT TAPE ON UNIT ZERO WITH A RING IN IT.
5.	MOUNT ITAPE/FOR/DENSITY=whatever
6.	MOUNT OTAPE/FOR/DENSITY=whatever
7.	RUN TPCPY
8.	ANSWER THE REQUESTS FOR NUMBER OF FILES TO SKIP, ETC.
9.	MONITOR THE OUTPUT OF FILE-LENGTH AND STOP THE PROGRAM
	WITH A CTRL Y WHEN THE APPROPRIATE END-OF-VOLUME CONDITION
	IS MET.
10.	IF THE PROGRAM IS NOT TERMINATED WITH A CTRL Y, IT WILL
	USUALLY EVENTUALLY STOP WHEN A SYSTEM STATUS CONDITION
	OCCURS THAT IS NOT AN END-OF-FILE AND THAT DOES HAVE
	A ZERO BYTE COUNT.  WHEN THE PROGRAM STOPS WITHOUT A CTRL Y,
	THE PROGRAM WILL REWIND THE TAPES.
11.	DISMOUNT ITAPE
12.	DISMOUNT OTAPE
13.	TAKE THE TAPES OFF, REWINDING THEM IF NECESSARY.
14.	DEALLOCATE ITAPE
15.	DEALLOCATE OTAPE
16.	DEASSIGN ITAPE
17.	DEASSIGN OTAPE
18.	SHOULD ERRORS OCCUR DURING TAPE OPERATIONS, THE HEXADECIMAL
	VALUE OF THE I/O STATUS WORD IS OUTPUT ON THE USER CONSOLE.
	THE VALUE CAN BE CORRELATED WITH THE ERROR SYMBOL IN THE
	$SSDEF.

!***END

