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

📄 makerom.c

📁 freebsd v4.4内核源码
💻 C
字号:
/************************************************************************Program to put ROM checksum in ROM image.This program strips off the FreeBSD a.out header!************************************************************************/#include <stdio.h>#include <fcntl.h>unsigned char rom[ROMSIZE];unsigned int sum;main(argc,argv)	int argc; char *argv[];{	int i, fd;	if (argc < 1) {		fprintf(stderr,"usage: %s rom-file\n",argv[0]);		exit(2);	}	if ((fd = open(argv[1], O_RDWR)) < 0) {		perror("unable to open file");		exit(2);	}	bzero(rom, ROMSIZE);	if (lseek(fd, (off_t)32, SEEK_SET) < 0) {		perror("lseek error");		exit(2);	}	if (read(fd, rom, ROMSIZE) < 0) {		perror("read error");		exit(2);	}	rom[5] = 0;	for (i=0,sum=0; i<ROMSIZE; i++)		sum += rom[i];	rom[5] = -sum;	for (i=0,sum=0; i<ROMSIZE; i++)		sum += rom[i];	if (sum & 0x00FF)		printf("checksum fails.\n");	if (lseek(fd, (off_t)0, SEEK_SET) < 0) {		perror("unable to seek");		exit(2);	}	if (write(fd, rom, ROMSIZE) < 0) {		perror("unable to write");		exit(2);	}	close(fd);	exit(0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -