- 论坛徽章:
- 1
|
转的:
- //========================================================
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
- #include <string.h>
- #define extern
- #include <asm/io.h>
- char *getascii (unsigned int in_data [], int off_start, int off_end);
- static int WaitIde()
- {
- int al;
- while ((al=inb(0x1F7))>=0x80) ;
- return al;
- }
- static void ReadIDE()
- {
- int al;
- int i;
- ioperm(0x1f0, 16, 1);
- WORD pw[256];
- WaitIde();
- outb(0xA0,0x1F6);
- al = WaitIde();
- if ((al&0x50)!=0x50) return;
- outb(0xA0,0x1F6);
- outb(0xEC,0x1F7);
- al = WaitIde();
- if ((al&0x58)!=0x58) return;
- for (i=0;i<256;i++) {
- pw[i] = inw(0x1F0);
- }
- }
- int main (void)
- {
- ReadIDE();
- }
- //========================================================
复制代码
[ 本帖最后由 wsgtrsys 于 2005-12-4 08:48 编辑 ] |
|