📄 cmossav.cpp
字号:
#include "stdio.h"
#include "dos.h"
void main(int argc,char **argv)
{
char cmos[128];
FILE *fp;
int i;
unsigned char dat;
if (argc<3)
{
printf("USEAGE:\n[Save a cmos information to a file]:\t exename s savefile\n[Restore cmos information from a file]:\t exename r savefile\n");
return ;
}
for (i=0;i<128;i++)
{
outportb(0x70,i);
cmos[i]=inportb(0x71);
}
if (argv[1][0]=='s')
{//保存cmos
fp=fopen(argv[2],"wb");
if (fp==NULL)
{
printf("Create File Fail!\n");
return ;
}
fwrite(&cmos[0],1,128,fp);
fclose(fp);
printf("Save complete!\n");
}
else
if (argv[1][0]=='r')
{//从文件恢复cmos
if((fp=fopen(argv[2],"rb"))==NULL)
{
printf("Open File Fail!\n");
return;
}
for(int i=0;i<128;i++)
{
outportb(0x70,i);
dat=fgetc(fp);
if(feof(fp))
{break ;}
outportb(0x71,dat);
}
fclose(fp);
printf("Restore complete!\n");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -