NAME
fd - floppy disk
DESCRIPTION
The fd* devices refer to the Floppy disk driver using the
NEC PD765 floppy disk controller. These diskettes are
arrays of 512 byte sectors, although MINIX 3 always works
with two sectors at a time due to its 1024 byte block size.
You can read or write any number of bytes however, MINIX 3
takes care of cutting and pasting incomplete blocks
together.
The driver is normally configured for two floppy disk dev-
ices fd0 and fd1. It can handle two more, but it is
unlikely that the average PC can.
On the first access to an fd device (by open(2) or
mount(2)), the driver will execute a series of read tests to
determine the floppy type. This works ok for all floppy
types except the true 360k type, because it is indistin-
guishable from the 720k type. This only means that the size
of the floppy is not estimated right.
Bits 2-6 of the minor device number may be set to the floppy
disk type to make it known to the driver what type of
diskette it is reading or writing. The non-auto devices
should be used for formatting, or when one wants to be abso-
lutely sure that the device is accessed right. These dev-
ices exist for drive 0:
type device minor media
0 fd0 0 autodetect
1 pc0 4 360k, 5.25"
2 at0 8 1.2M, 5.25"
3 qd0 12 360k in a 720k, 5.25" drive
4 ps0 16 720k, 3.5"
5 pat0 20 360k in a 1.2M, 5.25" drive
6 qh0 24 720k in a 1.2M, 5.25" drive
7 PS0 28 1.44M, 3.5"
Type 4 may also be used for the rarely seen 720k, 5.25"
floppies (type 2 made them obsolete fast.) Note that these
"types" only describe the floppies from a software point of
view, type 1 and 4 drives use the same parameters.
If the format bit (bit 7) is set, then the driver interprets
write commands as track formatting requests. This is used
by the format(1) command.
If the type bits are set to 28, 29, 30, or 31, then the
driver uses a partition table found in sector 0 to partition
the floppy. The partitions of fd0 may be accessed as fd0p0
through fd0p3. See controller(4) for a description of the
partition table, and associated ioctl commands.
FILES
/dev/fd[0-3], /dev/pc[0-3], /dev/at[0-3], /dev/qd[0-3],
/dev/ps[0-3], /dev/pat[0-3], /dev/qh[0-3], /dev/PS[0-3],
/dev/fd[0-3]p[0-3]
SEE ALSO
format(1), controller(4), part(8).
BUGS
The driver does not know the size of a 360k diskette in a
360k 5.25" drive, because it uses the 720k parameters for
it. So it will happily try to read past the end making all
kinds of interesting noises. It's a good thing these drives
are practically obsolete.
The partition table is only read when the drive motor is off
and only for an auto or partition device. The driver
assumes that a floppy in a drive with a running motor can't
have been replaced all of a sudden.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)