4.3BSD/usr/man/man4/rx.4

Compare this file to the similar file:
Show the results in this format:

.\" Copyright (c) 1983 Regents of the University of California.
.\" All rights reserved.  The Berkeley software License Agreement
.\" specifies the terms and conditions for redistribution.
.\"
.\"	@(#)rx.4	6.1 (Berkeley) 5/15/85
.\"
.TH RX 4 "May 15, 1985"
.UC 5
.SH NAME
rx \- DEC RX02 floppy disk interface
.SH SYNOPSIS
.B "controller fx0 at uba0 csr 0177170  vector rxintr"
.br
.B "disk rx0 at fx0 drive 0"
.br
.B "disk rx1 at fx0 drive 1"
.SH DESCRIPTION
The
.I rx
device provides access to a DEC RX02 floppy disk
unit with M8256 interface module (RX211 configuration). 
The RX02 uses 8-inch, single-sided, soft-sectored floppy
disks (with pre-formatted industry-standard headers) in
either single or double density.
.PP
Floppy disks handled by the RX02 contain 77 tracks, each with 26
sectors (for a total of 2,002 sectors).  The sector size is 128
bytes for single density, 256 bytes for double density.  Single 
density disks are compatible with the RX01 floppy disk unit and with
IBM 3740 Series Diskette 1 systems.  
.PP
In addition to normal (`block' and `raw') i/o, the driver supports
formatting of disks for either density and
the ability to invoke a 2 for 1 interleaved sector mapping
compatible with the DEC operating system RT-11.
.PP
The minor device number is interpreted as follows:
.PP
.nf
.ta \w'Bit      'u
\fBBit	Description\fP
0	Sector interleaving  (1 disables interleaving)
1	Logical sector 1 is on track 1 (0 no, 1 yes)
2	Not used, reserved
Other	Drive number
.fi
.PP
The two drives in a single RX02 unit are treated as
two disks attached to a single controller.  Thus, if there are two
RX02's on a system, the drives on the first RX02 are ``rx0'' and ``rx1'',
while the drives on the second are ``rx2'' and ``rx3''. 
.PP
When the device is opened, the density of the disk
currently in the drive is automatically determined. If there
is no floppy in the device, open will fail.
.PP
The interleaving parameters are represented in raw device
names by the letters `a' through `d'.  Thus, unit 0, drive 0 is
called by one of the following names:
.PP
.nf
.ta \w'interleaved   'u +\w'Device name   'u
\fBMapping	Device name	Starting track\fP
interleaved	/dev/rrx0a	0
direct	/dev/rrx0b	0
interleaved	/dev/rrx0c	1
direct	/dev/rrx0d	1
.fi
.PP
The mapping used on the `c' device is compatible with the
DEC operating system RT-11.  The `b' device accesses the
sectors of the disk in strictly sequential order.  
The `a' device is the most efficient for disk-to-disk copying.
This mapping is always used by the block device.
.PP
I/O requests must start on a sector boundary, involve an integral
number of complete sectors, and not go off the end of the disk.
.SH NOTES
Even though the storage capacity on a floppy disk is quite
small, it is possible to make filesystems on 
double density disks. 
For example, the command
.nf
.RS
% mkfs /dev/rx0 1001 13 1 4096 512 32 0 4
.RE
.fi
makes a file system on the double density disk in rx0 with 
436 kbytes available for file storage.
Using \fItar\fP(1) gives a more efficient utilization of the available
space for file storage.
Single density diskettes do not provide sufficient storage capacity to
hold file systems.
.PP
A number of \fIioctl\fP(2) calls apply to the rx devices, and
have the form
.RS
.nf
.ft B
#include <vaxuba/rxreg.h>
ioctl(fildes, code, arg)
int *arg;
.ft R
.fi
.RE
The applicable codes are:
.IP RXIOC_FORMAT 18
Format the diskette. The density to use is specified
by the 
.I arg
argument, zero gives single density while non-zero
gives double density.
.IP RXIOC_GETDENS
Return the density of the diskette (zero or non-zero as above).
.IP RXIOC_WDDMK
On the next write, include a \fIdeleted data address mark\fP in 
the header of the first sector.
.IP RXIOC_RDDMK
Return non-zero if the last sector read contained a
\fIdeleted data address mark\fP in its header, otherwise
return 0.
.SH ERRORS
The following errors may be returned by the driver:
.TP 12
[ENODEV]
Drive not ready; usually because no disk is in the drive or
the drive door is open.
.TP
[ENXIO]
Nonexistent drive (on open); 
offset is too large or not on a sector boundary or
byte count is not a multiple of the sector size (on read or write);
or bad (undefined) ioctl code.
.TP
[EIO]
A physical error other than ``not ready'', probably bad media or 
unknown format.
.TP
[EBUSY]
Drive has been opened for exclusive access.
.IP [EBADF] 12
No write access (on format), or wrong density; the latter
can only happen if the disk is changed without 
.I closing 
the device
(i.e., calling \fIclose\fP(2) ).
.SH FILES
/dev/rx?
.br
/dev/rrx?[a-d]
.SH SEE ALSO
rxformat(8V), newfs(8), mkfs(8), tar(1), arff(8V)
.SH DIAGNOSTICS
.BR "rx%d: hard error, trk %d psec %d cs=%b, db=%b, err=%x, %x, %x, %x".
An unrecoverable error was encountered.  The 
track and physical sector numbers, the device registers and the 
extended error status are displayed.
.PP
.BR "rx%d: state %d (reset)" .
The driver entered a bogus state.  This should not happen.
.SH BUGS
A floppy may not be formatted if the
header info on sector 1, track 0 has been damaged.  Hence, it is not
possible to format completely degaussed disks or disks with other
formats than the two known by the hardware. 
.PP
If the drive subsystem is powered down when the machine is booted, the
controller won't interrupt.