📄 cmos.c
字号:
#include<stdio.h>
#include<ctype.h>
#include<string.h>
#include<dos.h>
#include<io.h>
#define CMOS_ADDR 0X70
#define CMOS_DATA 0X71
void help()
{
printf(" CMOS Read/Write Tool \n");
printf("-------------------------------------------------------------------- \n");
printf("Version: 1.0 DATE:2007/08/25 Author:Guohui.wu email:wgha@lenovo.com \n");
printf("\"/r\" filename to read the CMOS and save the file as filename. \n");
printf("\"/w\" filename to reload the CMOS data(filename) into CMOS \n");
exit(1);
}
void main(int argc,char *argv[])
{
unsigned int add;
FILE *fp;
if(argc!=3)
{
help();
}
if((strcmp(argv[1],"/r")==0)||(strcmp(argv[1],"/R")==0)||(strcmp(argv[1],"/W")==0)||(strcmp(argv[1],"/w")==0))
{
if((strcmp(argv[1],"/r")==0)||(strcmp(argv[1],"/R")==0))
{
if((fp=fopen(argv[2],"wt"))==NULL)
{
printf("cannot creat the file!");
exit(1);
}
for(add=0;add<=127;add++)
{
outp(0x70,add);
fputc(inp(0x71),fp);
}
fclose(fp);
}
if((strcmp(argv[1],"/W")==0)||(strcmp(argv[1],"/w")==0))
{
if((fp=fopen(argv[2],"rt"))==NULL)
{
printf("cannot read the file!");
exit(1);
}
for(add=0;add<=127;add++)
{
outp(0x70,add);
outp(0x71,fgetc(fp));
}
fclose(fp);
}
exit(0);
}
else
help();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -