⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fdreg.h

📁 赵炯《Linux内核0.11完全注释》本书对Linux早期操作系统内核(v0.11)全部代码文件进行了详细全面的注释和说明
💻 H
字号:
/* * This file contains some defines for the floppy disk controller. * Various sources. Mostly "IBM Microcomputers: A Programmers * Handbook", Sanches and Canton. */#ifndef _FDREG_H#define _FDREG_Hextern int ticks_to_floppy_on(unsigned int nr);extern void floppy_on(unsigned int nr);extern void floppy_off(unsigned int nr);extern void floppy_select(unsigned int nr);extern void floppy_deselect(unsigned int nr);/* Fd controller regs. S&C, about page 340 */#define FD_STATUS	0x3f4#define FD_DATA		0x3f5#define FD_DOR		0x3f2		/* Digital Output Register */#define FD_DIR		0x3f7		/* Digital Input Register (read) */#define FD_DCR		0x3f7		/* Diskette Control Register (write)*//* Bits of main status register */#define STATUS_BUSYMASK	0x0F		/* drive busy mask */#define STATUS_BUSY	0x10		/* FDC busy */#define STATUS_DMA	0x20		/* 0- DMA mode */#define STATUS_DIR	0x40		/* 0- cpu->fdc */#define STATUS_READY	0x80		/* Data reg ready *//* Bits of FD_ST0 */#define ST0_DS		0x03		/* drive select mask */#define ST0_HA		0x04		/* Head (Address) */#define ST0_NR		0x08		/* Not Ready */#define ST0_ECE		0x10		/* Equipment chech error */#define ST0_SE		0x20		/* Seek end */#define ST0_INTR	0xC0		/* Interrupt code mask *//* Bits of FD_ST1 */#define ST1_MAM		0x01		/* Missing Address Mark */#define ST1_WP		0x02		/* Write Protect */#define ST1_ND		0x04		/* No Data - unreadable */#define ST1_OR		0x10		/* OverRun */#define ST1_CRC		0x20		/* CRC error in data or addr */#define ST1_EOC		0x80		/* End Of Cylinder *//* Bits of FD_ST2 */#define ST2_MAM		0x01		/* Missing Addess Mark (again) */#define ST2_BC		0x02		/* Bad Cylinder */#define ST2_SNS		0x04		/* Scan Not Satisfied */#define ST2_SEH		0x08		/* Scan Equal Hit */#define ST2_WC		0x10		/* Wrong Cylinder */#define ST2_CRC		0x20		/* CRC error in data field */#define ST2_CM		0x40		/* Control Mark = deleted *//* Bits of FD_ST3 */#define ST3_HA		0x04		/* Head (Address) */#define ST3_TZ		0x10		/* Track Zero signal (1=track 0) */#define ST3_WP		0x40		/* Write Protect *//* Values for FD_COMMAND */#define FD_RECALIBRATE	0x07		/* move to track 0 */#define FD_SEEK		0x0F		/* seek track */#define FD_READ		0xE6		/* read with MT, MFM, SKip deleted */#define FD_WRITE	0xC5		/* write with MT, MFM */#define FD_SENSEI	0x08		/* Sense Interrupt Status */#define FD_SPECIFY	0x03		/* specify HUT etc *//* DMA commands */#define DMA_READ	0x46#define DMA_WRITE	0x4A#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -