| 1 | .TH HT 4 |
| 2 | .SH NAME |
| 3 | ht \- RH-11/TE-16 magtape interface |
| 4 | .SH DESCRIPTION |
| 5 | The files |
| 6 | .I "mt0, ..., mt15" |
| 7 | refer to the DEC RH/TM/TE-16 magtape. |
| 8 | The files |
| 9 | .I "mt0, ..., mt7" |
| 10 | are 800 bpi, and |
| 11 | .I "mt8, ..., mt15" |
| 12 | are 1600bpi. |
| 13 | The files |
| 14 | .I "mt0, ..., mt3" |
| 15 | and |
| 16 | .I "mt8, ..., mt11" |
| 17 | are rewound when closed; the others are not. |
| 18 | When a file open for writing is closed, a double end-of-file is written. |
| 19 | .PP |
| 20 | A standard tape consists of a |
| 21 | series of 512 byte records terminated by an |
| 22 | end-of-file. |
| 23 | To the extent possible, the system makes |
| 24 | it possible, if inefficient, to treat |
| 25 | the tape like any other file. |
| 26 | Seeks have their usual meaning and it is possible |
| 27 | to read or write a byte at a time. |
| 28 | Writing in very small units is inadvisable, |
| 29 | however, because it tends to create monstrous record |
| 30 | gaps. |
| 31 | .PP |
| 32 | The |
| 33 | .I mt |
| 34 | files discussed above are useful |
| 35 | when it is desired to access the tape in a way |
| 36 | compatible with ordinary files. |
| 37 | When foreign tapes are to be dealt with, and especially |
| 38 | when long records are to be read or written, the |
| 39 | `raw' interface is appropriate. |
| 40 | The associated files may be named |
| 41 | .I "rmt0, ..., rmt15," |
| 42 | but the same minor-device considerations |
| 43 | as for the regular files still apply. |
| 44 | .PP |
| 45 | Each |
| 46 | .I read |
| 47 | or |
| 48 | .I write |
| 49 | call reads or writes the next record on the tape. |
| 50 | In the write case the record has the same length as the |
| 51 | buffer given. |
| 52 | During a read, the record size is passed |
| 53 | back as the number of bytes read, provided it is no greater |
| 54 | than the buffer size; |
| 55 | if the record is long, an error is indicated. |
| 56 | In raw tape I/O, the buffer must begin on a word boundary |
| 57 | and the count must be even. |
| 58 | Seeks are ignored. |
| 59 | A zero count is returned when a tape mark is read; |
| 60 | another read will fetch the first record of the |
| 61 | next tape file. |
| 62 | .SH FILES |
| 63 | /dev/mt?, |
| 64 | /dev/rmt? |
| 65 | .SH "SEE ALSO" |
| 66 | tp(1) |
| 67 | .SH BUGS |
| 68 | The magtape system is supposed to be able |
| 69 | to take 64 drives. |
| 70 | Such addressing has never been tried. |
| 71 | These bugs will be fixed when |
| 72 | we get more experience with this device. |
| 73 | .PP |
| 74 | The driver is limited to four transports. |
| 75 | .PP |
| 76 | If any non-data error is encountered, it refuses to do anything |
| 77 | more until closed. |
| 78 | In raw I/O, there should be a way |
| 79 | to perform forward and backward record and file spacing and |
| 80 | to write an EOF mark explicitly. |