diff options
Diffstat (limited to 'i386/i386at/nfdreg.h')
-rw-r--r-- | i386/i386at/nfdreg.h | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/i386/i386at/nfdreg.h b/i386/i386at/nfdreg.h deleted file mode 100644 index 9bdf44d..0000000 --- a/i386/i386at/nfdreg.h +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright (c) 1994 Shantanu Goel - * All Rights Reserved. - * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. - * - * THE AUTHOR ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" - * CONDITION. THE AUTHOR DISCLAIMS ANY LIABILITY OF ANY KIND FOR - * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - */ - -/* - * NEC 765/Intel 8272 floppy disk controller. - */ - -/* - * Ports - */ -#define FD_DOR(p) (p) /* digital output register */ -#define FD_STATUS(p) ((p) + 2) /* status register */ -#define FD_DATA(p) ((p) + 3) /* data register */ -#define FD_RATE(p) ((p) + 5) /* transfer rate register */ -#define FD_DIR(p) ((p) + 5) /* digital input register */ - -/* - * Digital output register. - */ -#define DOR_IENABLE 0x08 /* enable interrupts and DMA */ -#define DOR_RSTCLR 0x04 /* clear reset */ - -/* - * Status register. - */ -#define ST_RQM 0x80 /* request for master */ -#define ST_DIO 0x40 /* direction of data transfer - 1 = fdc to cpu, 0 = cpu to fdc */ -#define ST_NDM 0x20 /* non DMA mode */ -#define ST_CB 0x10 /* controller busy */ - -/* - * Digital input register. - */ -#define DIR_DSKCHG 0x80 /* diskette chnage has occured */ - -/* - * ST0 - */ -#define ST0_IC 0xc0 /* interrupt code */ -#define ST0_SE 0x20 /* seek end */ -#define ST0_EC 0x10 /* equipment check */ -#define ST0_NR 0x08 /* not ready */ -#define ST0_HD 0x04 /* head address */ -#define ST0_US 0x03 /* unit select */ - -/* - * ST1 - */ -#define ST1_EC 0x80 /* end of cylinder */ -#define ST1_DE 0x20 /* CRC data error */ -#define ST1_OR 0x10 /* DMA overrun */ -#define ST1_ND 0x04 /* sector not found */ -#define ST1_NW 0x02 /* write-protected diskette */ -#define ST1_MA 0x01 /* missing address mark */ - -/* - * ST2 - */ -#define ST2_CM 0x40 /* control mark */ -#define ST2_DD 0x20 /* data error */ -#define ST2_WC 0x10 /* wrong cylinder */ -#define ST2_SH 0x08 /* scan equal hit */ -#define ST2_SN 0x04 /* scan not satisfied */ -#define ST2_BC 0x02 /* bad cylinder */ -#define ST2_MD 0x01 /* missing address mark */ - -/* - * ST3 - */ -#define ST3_FT 0x80 /* fault */ -#define ST3_WP 0x40 /* write protect */ -#define ST3_RY 0x20 /* ready */ -#define ST3_T0 0x10 /* track 0 */ -#define ST3_TS 0x08 /* two side */ -#define ST3_HD 0x04 /* head address */ -#define ST3_US 0x03 /* unit select */ - -/* - * Commands. - */ -#define CMD_SPECIFY 0x03 -#define CMD_RECAL 0x07 -#define CMD_SENSEI 0x08 -#define CMD_SEEK 0x0f -#define CMD_FORMAT 0x4d -#define CMD_WRITE 0xc5 -#define CMD_READ 0xe6 - -/* - * Information required by FDC when formatting a diskette. - */ -struct format_info { - unsigned char cyl; - unsigned char head; - unsigned char sector; - unsigned char secsize; -}; |