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

📄 cmos.c

📁 对CMOS进行设置,如设置FDD,HDD的启动顺序
💻 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 + -