NAME
fdc —
NEC 765 floppy disk controller
driver
SYNOPSIS
fdc0 at isa? port 0x3f0 irq 6 drq 2
fdc* at acpi?
fdc* at pnpbios? index ?
fd* at fdc? drive ?
DESCRIPTION
The
fdc driver provides support for the NEC 765 floppy disk
controller and floppy disk drives, commonly found on IBM-PC compatible
systems.
The driver supports the following floppy diskette formats by using particular
partitions:
- 1.44MB 3.5-inch (b)
-
- 1.2MB 5.25-inch (c)
-
- 360KB 5.25-inch (1.2MB drive)
(d)
-
- 360KB 5.25-inch (IBM-PC
drive) (e)
-
- 720KB 3.5-inch (f)
-
- 720KB 5.25-inch (g)
-
- 360KB 3.5-inch (h)
-
Partition
a selects the default format for the attached
floppy drive, as determined by the BIOS configuration for the diskette drive.
The driver supports floppy disk formatting using the interfaces in
<sys/fdio.h>:
FDIOCGETFORMAT
struct fdformat_parms
- Fetch current formatting parameters. This gets the default
parameters for the open device if no parameters have been set during the
session.
FDIOCSETFORMAT
struct fdformat_parms
- Set formatting parameters. The driver saves this state and
it persists while the device is open.
FDIOCFORMAT_TRACK
struct fdformat_cmd
- Format a track on the medium. If this call returns
EINVAL
, the track formatting parameters were out
of range for the medium. If it returns EIO
, there
was a medium error while formatting the track.
FDIOCSETOPTS
int
- Set driver options which persist until the device is
closed. The options should be the logical OR of the desired values below:
FDOPT_NORETRY
- Do not retry operations on failure
FDOPT_SILENT
- Do not print error messages to the console
FDIOCGETOPTS
int
- Fetch drive options.
A typical use of the formatting facilities would be to open the device, call
FDIOCGETFORMAT
to fetch the current format parameters,
perhaps change a parameter or two, display the formatting details to the user,
and then call
FDIOCSETFORMAT
followed by a series of
calls to
FDIOCFORMAT_TRACK
.
SEE ALSO
fdformat(1),
acpi(4),
isa(4),
pnpbios(4)
HISTORY
The
fdc formatting support appeared in
NetBSD
1.3.