|
楼主 |
发表于 2003-6-20 17:14:19
|
显示全部楼层
啊,刚才对不起
在前在后都一样,我一般是把源放在后头
那些命令肯定是没有错的,可能你copy的时候带进了什么东西(例如汉字的空格),
反正程序很短,你还是从输一遍吧
那几个include是让你自己加的,可能是有的系统上放在不同的位置上了
我的write.c程序
#include <stdio.h>
#include <memory.h>
#include <unistd.h>
#include <fcntl.h>
int main()
{
char boot_buf[512];
int floppy_desc, file_desc;
memset (boot_buf,0x00,sizeof boot_buf);
file_desc = open ("./boot",O_RDONLY);
if (-1 == file_desc)
{
printf ("Open ./boot failed! \n");
return -1;
}
read (file_desc, boot_buf, 510);
close (file_desc);
boot_buf[510] = 0x55;
boot_buf[511] = 0xaa;
floppy_desc = open ("/dev/fd0", O_RDWR);
if (-1 == floppy_desc)
{
printf ("Open /dev/fd0 failed !\n");
return -1;
}
lseek (floppy_desc, 0, SEEK_CUR);
write (floppy_desc, boot_buf, 512);
close (floppy_desc);
return (0);
} |
|