1*47672Scael.\" Copyright (c) 1990, 1991 The Regents of the University of California. 244683Sbostic.\" All rights reserved. 344683Sbostic.\" 444683Sbostic.\" This code is derived from software contributed to Berkeley by 544683Sbostic.\" the Systems Programming Group of the University of Utah Computer 644683Sbostic.\" Science Department. 744683Sbostic.\" 844683Sbostic.\" %sccs.include.redist.man% 944683Sbostic.\" 10*47672Scael.\" @(#)st.4 5.2 (Berkeley) 03/27/91 1144683Sbostic.\" 12*47672Scael.Dd 13*47672Scael.Dt ST 4 hp300 14*47672Scael.Os 15*47672Scael.Sh NAME 16*47672Scael.Nm \&st 17*47672Scael.Nd 18*47672Scael.Tn CCS SCSI 19*47672Scaeltape driver 20*47672Scael.Sh SYNOPSIS 21*47672Scael.Cd "tape st0 at scsi? slave ?" 22*47672Scael.Sh DESCRIPTION 2344683SbosticThe 24*47672Scael.Nm \&st 25*47672Scaeldriver was written especially to support the Exabyte 26*47672Scael.Tn EXB-8200 8MM 27*47672ScaelCartridge 2844683SbosticTape Subsystem. It has several extensions specific to the Exabyte, 2944683Sbosticbut should support other tape drives as long has they follow 30*47672Scaelthe 31*47672Scael.Tn ANSI SCSI-I 32*47672Scaelspecification. Besides extensive use with 3344683Sbostican Exabyte, the driver has been tested with an 34*47672ScaelArchive 35*47672Scael.Tn QIC-24 36*47672Scaeltape drive. 3744683SbosticThe 38*47672Scael.Nm \&st 3944683Sbostictape interface provides a standard tape drive interface 4044683Sbosticas described in 41*47672Scael.Xr mtio 4 4244683Sbosticwith the following exceptions: 43*47672Scael.Bl -enum 44*47672Scael.It 4544683SbosticDensity is dependent on device type. Current Exabyte hardware has 46*47672Scaelonly one density. The 47*47672Scael.Tn EXB-8500 48*47672Scaeldrive, when released, will have a high 49*47672Scaeldensity format of 50*47672Scael.Tn 5.6GB . 51*47672ScaelOn an Archive 52*47672Scael.Tn QIC-24 53*47672Scaeldrive the driver reads both 54*47672Scael.Tn QIC-11 55*47672Scaeland 56*47672Scael.Tn QIC-24 57*47672Scaelformats 58*47672Scaelbut writes only 59*47672Scael.Tn QIC-24 . 60*47672Scael.It 6144683SbosticOnly the ``raw'' interface is supported. 62*47672Scael.El 63*47672Scael.Pp 6444683SbosticSpecial Exabyte Support: 65*47672Scael.Pp 66*47672ScaelThe 67*47672Scael.Dv MTIOCGET 68*47672Scael.Xr ioctl 2 69*47672Scaelcall on an Exabyte returns this structure: 70*47672Scael.Bd -literal 7144683Sbosticstruct mtget { 72*47672Scael short mt_type; /* type of magtape device */ 73*47672Scael short mt_dsreg; /* sc_flags */ 74*47672Scael short mt_erreg; /* high 8 bytes error status */ 75*47672Scael /* low 8 bytes percentage of Rewrites 76*47672Scael if writing, ECC errors if reading */ 77*47672Scael short mt_resid; /* Mbyte until end of tape */ 7844683Sbostic}; 79*47672Scael.Ed 80*47672Scael.Pp 8144683SbosticBit 4 in the minor device number is used 8244683Sbosticto select long filemarks or short filemarks. A long filemark occupies 8344683Sbostic2.12 MBytes of space on the tape, while a short filemark occupies 488 KBytes. 8444683SbosticA long filemark includes an erase gap while the short filemark does not. 85*47672ScaelThe tape can be positioned on the 86*47672Scael.Tn BOT 87*47672Scaelside of a long filemark allowing 8844683Sbosticdata to be appended with a write operation. Since the short filemark does not 8944683Sbosticcontain an erase gap which would allow writing it is considered to be 9044683Sbosticnon-erasable. If either type of filemark is followed by blank tape, 91*47672Scaeldata may be appended on its 92*47672Scael.Tn EOT 93*47672Scaelside. 94*47672Scael.Pp 9544683SbosticBit 5 in the minor device number selects fixed block mode with a block 9644683Sbosticsize of 1K. Variable length records are the default if bit 5 is not 9744683Sbosticset. 98*47672Scael.Pp 9944683SbosticFor unit 0 here are the effects of minor device bits 2,3,4,5. For other 10044683Sbosticunits add the 101*47672Scael.Em unit# 10244683Sbosticto each of the device names. 103*47672Scael.Bl -column norewind density filemarks -offset indent 104*47672Scael.Em norewind high short fixed 105*47672Scael.Em density filemarks block mode 106*47672Scaelrst0 107*47672Scaelnrst0 X 108*47672Scaelrst8 X 109*47672Scaelnrst8 X X 110*47672Scaelrst16 X 111*47672Scaelnrst16 X X 112*47672Scaelrst24 X X 113*47672Scaelnrst24 X X X 114*47672Scaelrst32 X 115*47672Scaelnrst32 X X 116*47672Scaelrst40 X X 117*47672Scaelnrst40 X X X 118*47672Scaelrst48 X X 119*47672Scaelnrst48 X X X 120*47672Scaelrst56 X X X 121*47672Scaelnrst56 X X X X 122*47672Scael.El 123*47672Scael.Sh SEE ALSO 124*47672Scael.Xr mt 1 , 125*47672Scael.Xr tar 1 , 126*47672Scael.Xr mtio 4 , 127*47672Scael.Rs 128*47672Scael.%T EXB-8200 8MM Cartridge Tape Subsystem Interface User Manual. 129*47672Scael.Re 130*47672Scael.Sh HISTORY 131*47672ScaelThe 132*47672Scael.Nm \&st 133*47672Scaeldriver 134*47672Scael.Ud 135*47672Scael.Sh BUGS 136*47672ScaelThe 137*47672Scael.Tn HP 138*47672Scael98268 139*47672Scael.Tn SCSI 140*47672Scaelcontroller hardware can not do odd length 141*47672Scael.Tn DMA 142*47672Scaeltransfers. If odd length 143*47672Scael.Tn DMA I/O 144*47672Scaelis requested the driver will use the 145*47672Scael"Program Transfer Mode" of the Fujitsu 146*47672Scael.Tn MB87030 147*47672Scaelchip. Read requests are 148*47672Scaelnormally even length for which a 149*47672Scael.Tn DMA 150*47672Scaeltransfer is used. If, however, the 15144683Sbosticdriver detects that a odd length read has happened (when a even length 152*47672Scaelwas requested) it will issue the 153*47672Scael.Dv EIO 154*47672Scaelerror and the last byte of the read 15544683Sbosticdata will be 0x00. Odd length read requests must match the size of the 15644683Sbosticrequested data block on tape. 157*47672Scael.Pp 15844683SbosticThe following only applies when using long filemarks. Short filemarks can 15944683Sbosticnot be overwritten. 160*47672Scael.Bd -filled -offset 4n 16144683SbosticDue to the helical scan and the erase mechanism, there is a writing 162*47672Scaellimitation on Exabyte drives. 163*47672Scael.Dq Li tar r 164*47672Scaelor 165*47672Scael.Dq Li tar u 166*47672Scaelwill not work 167*47672Scael.Pf ( Dq Li tar c 16844683Sbosticis ok). One can only start writing at 1) beginning of tape, 2) on the 16944683Sbosticend of what was last written, 3) "front" side of a regular (long) filemark. 17044683SbosticSay you have a tape with 3 tar files on it, want to save the first 17144683Sbosticfile, and want to begin writing over the 2nd file. 172*47672Scael.Pp 17344683SbosticOn a normal 1/4" or 1/2" drive you would do: 174*47672Scael.Pp 175*47672Scael.Li "mt fsf 1; tar cf /dev/nrst0 ..." 176*47672Scael.Pp 17744683Sbosticbut for an Exabyte you need to do: 178*47672Scael.Pp 179*47672Scael.Li "mt fsf 1; mt bsf 1; mt weof 1; tar cf /dev/nrst0 ..." 180*47672Scael.Pp 18144683SbosticThe regular long filemark consists of an erased zone 3.8" long 18244683Sbostic(needed to begin a write). In this case, the first filemark is 183*47672Scaelrewritten in place, which creates an erased zone 184*47672Scael.Em after 185*47672Scaelit, clearing the 18644683Sbosticway to write more on the tape. The erase head is not helical. 187*47672Scael.Pp 18844683SbosticOne can position a tape to the end of what was last written by reading 189*47672Scaeluntil a 190*47672Scael.Tn \*(qBLANK CHECK\*(q 191*47672Scaelerror is returned. Writing can be started at this 19244683Sbosticpoint. (This applies to both long and short filemarks.) The tape does 19344683Sbosticnot become positioned somewhere down the "erased" area as does a 194*47672Scaelconventional magtape. One can issue multiple reads at the 195*47672Scael.Tn \*(qBLANK CHECK\*(q 196*47672Scaelerror, but the Exabyte stays positioned at the beginning of the 19744683Sbosticblank area, ready to accept write commands. File skip operations do 19844683Sbosticnot stop at blank tape and will run into old data or run to the end of 199*47672Scaelthe tape, so you have to be careful not to 200*47672Scael.Dq Li mt fsf too_many . 201*47672Scael.Ed 202*47672Scael.Pp 20344683SbosticArchive support gets confused if asked to moved more filemarks than there are 20444683Sbosticon the tape. 205*47672Scael.Pp 20644683SbosticThis man page needs some work. Some of these are not really bugs, 20744683Sbosticjust unavoidable consequences of the hardware. 208