fd(4) [minix man page]
FD(4) Kernel Interfaces Manual FD(4) 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 sec- tors, although Minix 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 takes care of cutting and pasting incomplete blocks together. The driver is normally configured for two floppy disk devices 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 indistinguishable 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 absolutely sure that the device is accessed right. These devices 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 par- titions of fd0 may be accessed as fd0a through fd0d. See hd(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][a-d] SEE ALSO
format(1), hd(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) FD(4)
Check Out this Related Man Page
floppy(8) floppy(8) NAME
floppy - format floppy disks SYNOPSIS
floppy --createrc >/etc/floppy floppy --format /dev/fd0 floppy --format A: floppygtk DESCRIPTION
The floppy utility does low-level formatting of floppy disks. floppy uses a simple interface for formatting disks in floppy controller drives and in ATAPI IDE floppy drives, such as LS-120 "Superdisk" drives. ATAPI IDE support requires a patch to the Linux kernel. Without a patched kernel floppy can only format disks in floppy controller drives. NOTE: Use caution in formatting anything other than standard 3.5" 1.4MB floppy disks in ATAPI IDE floppy drives. Most LS-120 drives, for example, accept a request to format 120MB high density disks, but most 120MB disks are not designed to be formatted. Low-level formatting will ruin them permanently. floppygtk is a GTK interface to the floppy utility. When started from an X terminal window, floppy will automatically run floppygtk. OPTIONS
--probe, -p - Probe for available floppy drives. floppy creates and displays a list of all detected floppy drives. --createrc, -r - Print a configuration file. floppy prints on standard output the results of the --probe option in a configuration file format. This configuration file should be saved as /etc/floppy. --showrc - List floppy drives configured in /etc/floppy. --capacity, -c - Show the available format capacities of the floppy drive. Most floppy drives can format disks of different capacities. --capacity lists each available format capacity as CxBxS where: C - number of cylinders, B - blocks per cylinder, S - block size, in bytes. --capacity also calculates how much that is, in kilobytes or megabytes. --format, -f - Format the disk in the floppy drive. --size=CxBxS, -s=CxBxS - Specify the size of the disk to format. --format uses the first format capacity reported by --capacity if the --size option is not specified. --ext2 - Create an ext2 (Linux) filesystem on the formatted floppy. This option requires the e2fsprogs package to be installed. This option simply runs mke2fs after formatting the floppy disk. --fat - Create a FAT (DOS) filesystem on the formatted floppy. This option requires the dosfstools package to be installed. This option simply runs mkdosfs after formatting the floppy disk. --noprompt, -n - Suppress verbose output produced by --capacity and --format. Use a raw output format that can be used by a front-end wrapper that runs floppy on the back-end. --eject - Eject the floppy from the drive (IDE floppy drives only). PROBING FOR AVAILABLE FLOPPY DRIVES
floppy --probe This command probes the hardware and reports on the available floppy drives. A typical output from --probe would be: floppy 0.12 Copyright 2001, Double Precision, Inc. floppy /dev/fd0: 3.5" HD idefloppy /dev/hda: LS-120 VER5 00 UHD Floppy Revision: F523M5A9 Serial number: 9803M9A03464 Here, floppy detected a high density floppy drive on /dev/fd0, and an IDE floppy drive on /dev/hda. CREATING A CONFIGURATION FILE
A configuration file, /etc/floppy must be created before floppy can format floppy disks. This configuration file can be created automati- cally by the --createrc option. Each line in the configuration file contains the following information: type<TAB>label<TAB>device. "<TAB>" is a single ASCII TAB character. "device" is the device entry for the floppy drive. floppy requires that all requests for formatting flop- pies must use only the devices that appear in this configuration file. "label" is an alias for this device. floppy accepts "label:" instead of the actual device entry, for example: "floppy --format A:". "type" is either "floppy" or "idefloppy". The --createrc option sets "A" as the label for the first floppy drive, and "B" for the second floppy drive. If --createrc finds more than two floppy drives, --createrc will use "FA", "FB", "FC", and so on. DETERMINING AVAILABLE FORMAT CAPACITIES
Most floppy drives can format disks of different capacities. The --capacity option shows possible format capacities on the specified floppy device. A typical IDE floppy drive may report the following capacities: $ floppy --capacity B: Formattable capacities for /dev/hda: 80x36x512 (1.40 Mb) 80x30x512 (1.17 Mb) 56x22x1024 (1.20 Mb) A standard floppy drive attached to the floppy controller may report the following capacities: $ floppy --capacity A: Formattable capacities for /dev/fd0: 80x36x512 (/dev/fd0H1440, 1.40 Mb) 80x18x512 (/dev/fd0D720, 720 Kb) 80x48x512 (/dev/fd0u1920, 1.87 Mb) 80x28x512 (/dev/fd0u1120, 1.09 Mb) 80x40x512 (/dev/fd0u1660, 1.56 Mb) 80x26x512 (/dev/fd0u1040, 1.01 Mb) 80x46x512 (/dev/fd0u1840, 1.79 Mb) 80x42x512 (/dev/fd0u1680, 1.64 Mb) The --capacity option reports each available format capacity as "cylinders x blocks-per-cylinder x block size". An IDE floppy drive actu- ally returns a total block count. --capacity simply tries some common blocks-per-cylinder values, until it finds one that fits. Format capacities of standard floppy drives are obtained from the floppy device driver. NOTE: IDE floppy drives may report format capacities only after a disk is inserted. Without a floppy disk, IDE floppy drives may not report any available format capacities, or they may report the primary format capacity that they are designed to format. For example, most LS-120 drives default to reporting 120mb when there is no disk inserted in the drive: $ floppy --capacity A: Formattable capacities for /dev/hda: 6848x36x512 (120.37 Mb) CAUTION: do not attempt to format 120Mb media in LS-120 drives. Most LS-120 disks are not user-formattable. They are factory-formatted, and attempts to format them in LS-120 drives will render them unusable (to be sure, check the label on the floppy itself). The floppy util- ity does not prevent one from trying to use any format capacity the IDE floppy drive claims to support. If the drive claims it can format a disk of the given capacity, floppy will oblige. FORMATTING
The --format option does a low-level format on the floppy. $ ./floppy --format --size=80x36x512 A: Formatting 1.40 Mb... 0% --size must specify a geometry returned by --capacity. If --size is absent, the first geometry is selected. For floppy controller drives, the status counter will go from 0% to 100%. With most IDE floppy drives the counter will remain at 0% until the format finishes. Some IDE floppy drives are capable of reporting format progress status, which will would allow --format to count up from 0% to 100%. $ ./floppy --format --verify A: The --verify option verifies the low-level format. For floppy controller drives, the floppy disk is read from start to finish, after the low-level format concludes. For IDE floppy drives, the format request to the drive will include a request to verify the low-level format. NOTE: Some IDE floppy drives ignore the verify request, or always verify low-level formats, whether or not it was requested. $ ./floppy --format -V A: The -V option is like --verify except that IDE floppy drive formats are verified manually - like floppy controller drive formats - by read- ing the floppy disk from start to finish. FILES
/etc/floppy - configuration file. /dev/fd[0-7] - floppy controller drives. /dev/hd[a-h] - ATAPI IDE floppy drives. SEE ALSO
fd(4), mkdosfs(8), mke2fs(8) Double Precision, Inc. February 24, 2003 floppy(8)