TAP - Universal Magtape Reader ============================== TAP is a program to handle magtapes of unknown format, or magtape of a format which FLX and PIP cannot handle. It provides the facility both for listing out information about a tape, and for transferring information from the tape to a file on disk. It also allows for conversion of specified fields (or the whole record) from EBCDIC to ASCII, the truncation of input records to remove trailing blanks. TAP will handle either file-structured or non-file-structured tapes. The command line for TAP is one of the following formats:- 1. TAP TP:/INPSW for getting information or 2. TAP filespec/OUTSW = TP:/INPSW for performing a transfer. For a list of valid switches type HELP TAP SWITCHES. For help on an individual switch type HELP TAP . For an explanation of the commandline type HELP TAP FORMAT. 2 FORMAT The command line for TAP is one of the following formats:- 1. TAP TP:/INPSW for getting information or 2. TAP filespec/OUTSW = TP:/INPSW for performing a transfer. where:- TP: is the magtape device name in the format:- MTn: for TU10 or TE10 MMn: for TU16 or TE16 where n is an (optional) single-digit unit number. Filespec is a standard RSX file specification /INPSW represents some combination of input switches. /OUTSW represents some combination of output switches. 2 SWITCHES Valid input switches are: /LI List block sizes /FU List blocks /BL:n:m Only consider blocks n to m /FI:n Only consider file n /FX:n:m Read fixed-length records (n bytes long) from tape and create fixed length records (m bytes long) on disk. /EB:n1:m1:n2:m2... Convert specified fields from EBCDIC to ASCII /PE Magtape is phase-encoded. Valid output switches are: /AP Append to existing file. /CO Create output file contiguous. /CR Create output file in Carriage Return format. (default) /FX:n:m As for input /TR Remove trailing blocks from output. Type HELP TAP for help on a particular switch. 2 /LI /LI List on requesting terminal numbered tape blocks with their size in bytes. 2 /FU /FU Same as /LI but also lists out contents of each block, 80 chars to a line. 2 /BL /BL:n:m Specifies that only tape blocks n to m are to be considered. n and m are decimal and must both be specified. 2 /FI /FI:n Specifies that only file n on the tape is to be considered. n is decimal. Note that /BL and /FI are mutually exclusive. 2 /EB /EB:n1:m1:n2:m2:... Specifies fields on which EBCDIC to ASCII conversion is to be performed. Up to twenty fields may be defined and the parameters are:- n1 (etc.) - Starting byte position of field in record (1-n) m1 (etc.) - Length of field to be converted. These values either apply from the start of each record (if /FX is specified) or from the start of each block. If just /EB is specified, the whole record is converted. 2 /PE /PE Specifies that the device MM: is phase-encoded (TU16 1600 bpi). This switch does not apply to MT: devices and is default for MM:. 2 /AP /AP Indicates that the records are to be appended to an existing output file. 2 /CO /CO Defines the output file to be contiguous. 2 /CR /CR Indicates the output file is to have Carriage Return format (FD.CR set). 2 /FX /FX:n:m This switch may be specified either as an input switch or an output switch and indicates that the blocks on tape contain fixed-length records. n represents the length (in bytes) of the records on tape. m if specified, represents the length(in bytes) of the output record. This must be less than or equal to n, and if omitted defaults to n. This is used so that fixed length input records can be truncated before being output to disk (e.g. 80 byte card images truncated to 72 bytes). Note that the /FX switch affects 3 different areas of operation:- 1) It defines each record to be written to the output file. In this case, and this case only, the records are allowed to span block boundaries, so that the whole range of blocks under consideration is considered as one large buffer. 2) It defines each record to be translated by the /EB switch. In this case, records must fit exactly into the blocks on tape. 3) It defines the record for the purpose of listing it on the terminal with the /FU switch. In this case records must fit exactly into the blocks on tape. If /FX is not specified, records are assumed to be variable length, and the same length as the tape blocks. 2 /TR /TR Remove all trailing blocks from the output record. This switch may be specified with the /FX switch, in which case the output file is created as variable length with maximum size equal to the record-size. In particular, if the tape contained card images with a sequence number in columns 73 - 80, then /FX:80:72/TR would first strip off the sequence number and then truncate each record.