|
|
1.1 ! root 1: .\" Copyright (c) 1983 Regents of the University of California. ! 2: .\" All rights reserved. The Berkeley software License Agreement ! 3: .\" specifies the terms and conditions for redistribution. ! 4: .\" ! 5: .\" @(#)rx.4 6.1 (Berkeley) 5/15/85 ! 6: .\" ! 7: .TH RX 4 "May 15, 1985" ! 8: .UC 5 ! 9: .SH NAME ! 10: rx \- DEC RX02 floppy disk interface ! 11: .SH SYNOPSIS ! 12: .B "controller fx0 at uba0 csr 0177170 vector rxintr" ! 13: .br ! 14: .B "disk rx0 at fx0 drive 0" ! 15: .br ! 16: .B "disk rx1 at fx0 drive 1" ! 17: .SH DESCRIPTION ! 18: The ! 19: .I rx ! 20: device provides access to a DEC RX02 floppy disk ! 21: unit with M8256 interface module (RX211 configuration). ! 22: The RX02 uses 8-inch, single-sided, soft-sectored floppy ! 23: disks (with pre-formatted industry-standard headers) in ! 24: either single or double density. ! 25: .PP ! 26: Floppy disks handled by the RX02 contain 77 tracks, each with 26 ! 27: sectors (for a total of 2,002 sectors). The sector size is 128 ! 28: bytes for single density, 256 bytes for double density. Single ! 29: density disks are compatible with the RX01 floppy disk unit and with ! 30: IBM 3740 Series Diskette 1 systems. ! 31: .PP ! 32: In addition to normal (`block' and `raw') i/o, the driver supports ! 33: formatting of disks for either density and ! 34: the ability to invoke a 2 for 1 interleaved sector mapping ! 35: compatible with the DEC operating system RT-11. ! 36: .PP ! 37: The minor device number is interpreted as follows: ! 38: .PP ! 39: .nf ! 40: .ta \w'Bit 'u ! 41: \fBBit Description\fP ! 42: 0 Sector interleaving (1 disables interleaving) ! 43: 1 Logical sector 1 is on track 1 (0 no, 1 yes) ! 44: 2 Not used, reserved ! 45: Other Drive number ! 46: .fi ! 47: .PP ! 48: The two drives in a single RX02 unit are treated as ! 49: two disks attached to a single controller. Thus, if there are two ! 50: RX02's on a system, the drives on the first RX02 are ``rx0'' and ``rx1'', ! 51: while the drives on the second are ``rx2'' and ``rx3''. ! 52: .PP ! 53: When the device is opened, the density of the disk ! 54: currently in the drive is automatically determined. If there ! 55: is no floppy in the device, open will fail. ! 56: .PP ! 57: The interleaving parameters are represented in raw device ! 58: names by the letters `a' through `d'. Thus, unit 0, drive 0 is ! 59: called by one of the following names: ! 60: .PP ! 61: .nf ! 62: .ta \w'interleaved 'u +\w'Device name 'u ! 63: \fBMapping Device name Starting track\fP ! 64: interleaved /dev/rrx0a 0 ! 65: direct /dev/rrx0b 0 ! 66: interleaved /dev/rrx0c 1 ! 67: direct /dev/rrx0d 1 ! 68: .fi ! 69: .PP ! 70: The mapping used on the `c' device is compatible with the ! 71: DEC operating system RT-11. The `b' device accesses the ! 72: sectors of the disk in strictly sequential order. ! 73: The `a' device is the most efficient for disk-to-disk copying. ! 74: This mapping is always used by the block device. ! 75: .PP ! 76: I/O requests must start on a sector boundary, involve an integral ! 77: number of complete sectors, and not go off the end of the disk. ! 78: .SH NOTES ! 79: Even though the storage capacity on a floppy disk is quite ! 80: small, it is possible to make filesystems on ! 81: double density disks. ! 82: For example, the command ! 83: .nf ! 84: .RS ! 85: % mkfs /dev/rx0 1001 13 1 4096 512 32 0 4 ! 86: .RE ! 87: .fi ! 88: makes a file system on the double density disk in rx0 with ! 89: 436 kbytes available for file storage. ! 90: Using \fItar\fP(1) gives a more efficient utilization of the available ! 91: space for file storage. ! 92: Single density diskettes do not provide sufficient storage capacity to ! 93: hold file systems. ! 94: .PP ! 95: A number of \fIioctl\fP(2) calls apply to the rx devices, and ! 96: have the form ! 97: .RS ! 98: .nf ! 99: .ft B ! 100: #include <vaxuba/rxreg.h> ! 101: ioctl(fildes, code, arg) ! 102: int *arg; ! 103: .ft R ! 104: .fi ! 105: .RE ! 106: The applicable codes are: ! 107: .IP RXIOC_FORMAT 18 ! 108: Format the diskette. The density to use is specified ! 109: by the ! 110: .I arg ! 111: argument, zero gives single density while non-zero ! 112: gives double density. ! 113: .IP RXIOC_GETDENS ! 114: Return the density of the diskette (zero or non-zero as above). ! 115: .IP RXIOC_WDDMK ! 116: On the next write, include a \fIdeleted data address mark\fP in ! 117: the header of the first sector. ! 118: .IP RXIOC_RDDMK ! 119: Return non-zero if the last sector read contained a ! 120: \fIdeleted data address mark\fP in its header, otherwise ! 121: return 0. ! 122: .SH ERRORS ! 123: The following errors may be returned by the driver: ! 124: .TP 12 ! 125: [ENODEV] ! 126: Drive not ready; usually because no disk is in the drive or ! 127: the drive door is open. ! 128: .TP ! 129: [ENXIO] ! 130: Nonexistent drive (on open); ! 131: offset is too large or not on a sector boundary or ! 132: byte count is not a multiple of the sector size (on read or write); ! 133: or bad (undefined) ioctl code. ! 134: .TP ! 135: [EIO] ! 136: A physical error other than ``not ready'', probably bad media or ! 137: unknown format. ! 138: .TP ! 139: [EBUSY] ! 140: Drive has been opened for exclusive access. ! 141: .IP [EBADF] 12 ! 142: No write access (on format), or wrong density; the latter ! 143: can only happen if the disk is changed without ! 144: .I closing ! 145: the device ! 146: (i.e., calling \fIclose\fP(2) ). ! 147: .SH FILES ! 148: /dev/rx? ! 149: .br ! 150: /dev/rrx?[a-d] ! 151: .SH SEE ALSO ! 152: rxformat(8V), newfs(8), mkfs(8), tar(1), arff(8V) ! 153: .SH DIAGNOSTICS ! 154: .BR "rx%d: hard error, trk %d psec %d cs=%b, db=%b, err=%x, %x, %x, %x". ! 155: An unrecoverable error was encountered. The ! 156: track and physical sector numbers, the device registers and the ! 157: extended error status are displayed. ! 158: .PP ! 159: .BR "rx%d: state %d (reset)" . ! 160: The driver entered a bogus state. This should not happen. ! 161: .SH BUGS ! 162: A floppy may not be formatted if the ! 163: header info on sector 1, track 0 has been damaged. Hence, it is not ! 164: possible to format completely degaussed disks or disks with other ! 165: formats than the two known by the hardware. ! 166: .PP ! 167: If the drive subsystem is powered down when the machine is booted, the ! 168: controller won't interrupt.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.