|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1990 University of Utah. ! 3: * Copyright (c) 1990 The Regents of the University of California. ! 4: * All rights reserved. ! 5: * ! 6: * This code is derived from software contributed to Berkeley by ! 7: * the Systems Programming Group of the University of Utah Computer ! 8: * Science Department. ! 9: * ! 10: * Redistribution and use in source and binary forms, with or without ! 11: * modification, are permitted provided that the following conditions ! 12: * are met: ! 13: * 1. Redistributions of source code must retain the above copyright ! 14: * notice, this list of conditions and the following disclaimer. ! 15: * 2. Redistributions in binary form must reproduce the above copyright ! 16: * notice, this list of conditions and the following disclaimer in the ! 17: * documentation and/or other materials provided with the distribution. ! 18: * 3. All advertising materials mentioning features or use of this software ! 19: * must display the following acknowledgement: ! 20: * This product includes software developed by the University of ! 21: * California, Berkeley and its contributors. ! 22: * 4. Neither the name of the University nor the names of its contributors ! 23: * may be used to endorse or promote products derived from this software ! 24: * without specific prior written permission. ! 25: * ! 26: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ! 27: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ! 28: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ! 29: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ! 30: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ! 31: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ! 32: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ! 33: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ! 34: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ! 35: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ! 36: * SUCH DAMAGE. ! 37: * ! 38: * @(#)stvar.h 7.1 (Berkeley) 2/5/91 ! 39: */ ! 40: ! 41: /* ! 42: * stvar.h scsi tape driver ! 43: */ ! 44: ! 45: struct exb_xsense { ! 46: u_char reserved8; ! 47: u_char reserved9; ! 48: u_char reserved10; ! 49: u_char reserved11; ! 50: u_char addsens; ! 51: u_char addsensq; ! 52: u_char reserved14; ! 53: u_char reserved15; ! 54: u_char rwerrcnt2; ! 55: u_char rwerrcnt1; ! 56: u_char rwerrcnt0; ! 57: u_char pf: 1, ! 58: bpe: 1, ! 59: fpe: 1, ! 60: me: 1, ! 61: eco: 1, ! 62: tme: 1, ! 63: tnp: 1, ! 64: bot: 1; ! 65: u_char xfr: 1, ! 66: tmd: 1, ! 67: wp: 1, ! 68: fmke: 1, ! 69: ure: 1, ! 70: we1: 1, ! 71: sse: 1, ! 72: fe: 1; ! 73: u_char rsvd: 6, ! 74: wseb: 1, ! 75: wseo: 1; ! 76: u_char reserved22; ! 77: u_char tplft2; ! 78: u_char tplft1; ! 79: u_char tplft0; ! 80: }; ! 81: ! 82: /* xsense sense key */ ! 83: #define XSK_NOSENCE 0x0 ! 84: #define XSK_NOTUSED1 0x1 ! 85: #define XSK_NOTRDY 0x2 ! 86: #define XSK_MEDERR 0x3 ! 87: #define XSK_HRDWERR 0x4 ! 88: #define XSK_ILLREQ 0x5 ! 89: #define XSK_UNTATTEN 0x6 ! 90: #define XSK_DATAPROT 0x7 ! 91: #define XSK_BLNKCHK 0x8 ! 92: #define XSK_VENDOR 0x9 ! 93: #define XSK_CPYABORT 0xa ! 94: #define XSK_ABORTCMD 0xb ! 95: #define XSK_NOTUSEDC 0xc ! 96: #define XSK_VOLOVER 0xd ! 97: #define XSK_NOTUSEDE 0xe ! 98: #define XSK_REVERVED 0xf ! 99: ! 100: struct exb_inquiry { ! 101: char venderunique[16]; ! 102: }; ! 103: ! 104: struct st_mode { ! 105: u_char sdl; ! 106: u_char medtype; ! 107: u_char wp: 1, /* write protect */ ! 108: bfmd: 3, /* buffered write mode */ ! 109: speed: 4; ! 110: u_char bdl; ! 111: u_char dencod; ! 112: u_char numblk2; /* number of blocks */ ! 113: u_char numblk1; ! 114: u_char numblk0; ! 115: u_char rsvd1; ! 116: u_char blklen2; /* block length */ ! 117: u_char blklen1; ! 118: u_char blklen0; ! 119: }; ! 120: ! 121: struct st_mode_exvup { ! 122: /* vender unique */ ! 123: u_char ct: 1, /* international cartridge */ ! 124: rs1: 1, ! 125: nd: 1, /* no disconnect, date transfer */ ! 126: rs2: 1, ! 127: nbe: 1, /* no busy enable */ ! 128: ebd: 1, /* even byte disconnect */ ! 129: pe: 1, /* parity enable */ ! 130: nal: 1; /* no auto load */ ! 131: u_char rsvd: 7, ! 132: p5: 1; ! 133: u_char motionthres; ! 134: u_char reconthres; ! 135: u_char gapthres; ! 136: }; ! 137: ! 138: struct mode_select_data { ! 139: u_char rsvd1; ! 140: u_char rsvd2; ! 141: u_char rsvd3: 1, ! 142: buff: 3, ! 143: speed: 4; ! 144: u_char blkdeslen; ! 145: u_char density; ! 146: u_char blks2; ! 147: u_char blks1; ! 148: u_char blks0; ! 149: u_char rsvd4; ! 150: u_char blklen2; ! 151: u_char blklen1; ! 152: u_char blklen0; ! 153: u_char vupb; ! 154: u_char rsvd5: 7, ! 155: p5: 1; ! 156: u_char motionthres; ! 157: u_char reconthres; ! 158: u_char gapthres; ! 159: }; ! 160: ! 161: struct mode_sense { ! 162: struct st_mode md; ! 163: struct st_mode_exvup ex; ! 164: }; ! 165: ! 166: #define EXDS_BITS \ ! 167: "\20\20\ ! 168: \7MOVED\6LEOT\5CMD\4WRTTN\3WMODE\2OPEN\1ALIV" ! 169: ! 170: #define EXER_BITS \ ! 171: "\20\20VAL\17FMK\16EOM\15ILI\14KEY3\13KEY2\12KEY1\11KEY0\ ! 172: \10RETRY7\7RETRY6\6RETRY5\5RETRY4\4RETRY3\3RETRY2\2RETRY1\1RETRY0" ! 173:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.