glenda.party
term% ls -F
term% pwd
$home/manuals/unix_v7/4/ht
term% cat index.txt
HT(4)                      Kernel Interfaces Manual                      HT(4)

NAME
       ht - RH-11/TU-16 magtape interface

DESCRIPTION
       The  files  mt0,  mt1,  ...  refer to the DEC RH/TM/TU16 magtape.  When
       opened for reading or writing, the tape is not rewound.   When  closed,
       it  is rewound (unless the 0200 bit is on, see below).  If the tape was
       open for writing, a double end-of-file is written.  If the tape is  not
       to be rewound the tape is backspaced to just between the two tapemarks.

       A  standard tape consists of a series of 512 byte records terminated by
       a double end-of-file.  To the extent possible, the system makes it pos‐
       sible, if inefficient, to treat the tape like any  other  file.   Seeks
       have  their usual meaning and it is possible to read or write a byte at
       a time.  Writing in very small units is inadvisable,  however,  because
       it tends to create monstrous record gaps.

       The last octal digit of the minor device number selects the drive.  The
       middle digit selects a controller.  The initial digit is even to select
       800  BPI, odd to select 1600 BPI.  If the 0200 bit is on (initial digit
       2 or 3), the tape is not rewound on close.  Note that the minor  device
       number  has  no  necessary  connection  with the file name, and in fact
       tp(1) turns the short name x into ‘/dev/mtx'.

       The mt files discussed above are useful when it is  desired  to  access
       the  tape  in a way compatible with ordinary files.  When foreign tapes
       are to be dealt with, and especially when long records are to  be  read
       or  written,  the ‘raw' interface is appropriate.  The associated files
       may be named rmt0, ..., rmt7, but the same minor-device  considerations
       as for the regular files still apply.

       Each  read  or  write call reads or writes the next record on the tape.
       In the write case the record has the same length as the  buffer  given.
       During  a  read,  the record size is passed back as the number of bytes
       read, provided it is no greater than the buffer size; if the record  is
       long, an error is indicated.  In raw tape I/O, the buffer must begin on
       a word boundary and the count must be even.  Seeks are ignored.  A zero
       count is returned when a tape mark is read; another read will fetch the
       first record of the next tape file.

FILES
       /dev/mt?, /dev/rmt?

SEE ALSO
       tp(1)

BUGS
       The  magtape system is supposed to be able to take 64 drives.  Such ad‐
       dressing has never been tried.

       Taking a drive off line, or running off the end of tape, while  writing
       have been known to hang the system.

       If  any  non-data  error is encountered, it refuses to do anything more
       until closed.  In raw I/O, there should be a way to perform forward and
       backward record and file spacing and to write an EOF mark explicitly.

                                                                         HT(4)