1. 确定编译环境:需要安装合适的编译器和相关的开发工具。华硕主板BIOS的编译环境一般为Windows或Linux。
2. 下载源代码:从华硕官网下载最新版本的主板BIOS源代码。
3. 解压源代码:将下载的源代码解压缩到一个目录中。
4. 修改源代码:根据自己的需求修改源代码。修改的内容包括BIOS设置、驱动程序、 *** 作系统支持等。
5. 编译源代码:使用编译器编译修改后的源代码。编译过程中需要注意编译参数的设置,以确保编译成功。
6. 生成BIOS文件:编译成功后,生成的BIOS文件需要进一步处理,包括加入启动程序、生成校验和等。
7. 刷写BIOS:将生成的BIOS文件刷写到主板上,以更新BIOS。
需要注意的是,BIOS编译是一项复杂的任务,需要具备一定的技术和经验。建议初学者先了解相关知识,再进行实践。同时,对于普通用户来说,刷写BIOS有一定的风险,需要谨慎 *** 作。
CBROM应该是修改BIOS等最好用的工具。先分解出相应的部分后,再用汇编程序进行反汇编。
给你一些 *** 作实例:
CBROM BIOS文件名 /EPA ***.EPA 更新能源之星图标(用于只支持EPA格式的4.5X)
CBROM BIOS文件名 /EPA ***.BMP 更新能源之星图标(用于只支持BMP格式的4.6X-6.X)
CBROM BIOS文件名 /EPA1-7 ***.BMP 部分主板支持多个更换能源之星图标功能
CBROM BIOS文件名 /LOGO ***.BMP 更新全屏画面用法(用于只支持BMP格式的640X480的图片文件)
CBROM BIOS文件名 /LOGO1-7 ***.BMP 部分主板支持多个更换全屏画面功能
CBROM BIOS文件名 /ISA STDE.BIN 使你的主板拥有和捷波恢复精灵一样的功能
CBROM BIOS文件名 /ISA BIOS-10.BIN 使你的主板拥有承启主板的GHOST功能
CBROM BIOS文件名 /PCI PXE.LOM 下载 网卡BOOTROM 启动芯片 PXE 代码,写进主板的BIOS将PXE启动代码写到 BIOS 中去,用做无盘启动工作站
CBROM BIOS文件名 /VSA BIOS文件名 更新防毒模块
CBROM BIOS文件名 /AWDFLASH AWDFLASH.EXE 使你的主板拥有自刷新工能(启动时按ALT+F2)
CBROM BIOS文件名 /MIB 文本文件名 在支持MENU IN BIOS的主板加入文本信息(加入后,在BIOS SETUP里按F5或F9)
CBROM BIOS文件名 /YGROUP AWARDEYT.ROM 更换 YGROUP组
CBROM BIOS文件名 /XGROUP AWARDEXT.ROM 更换 XGROUP组
CBROM BIOS文件名 /GROUP _EN_CODE.BIN 写入英文显示代码
CBROM BIOS文件名 /GROUP _GR_CODE.BIN 写入繁体中文代码
CBROM BIOS文件名 /GROUP _B5_CODE.BIN 写入德语代码
CBROM BIOS文件名 /FNT1 FONT1.AWD 写入字库
移出某项内容:
在以上各参数的基础上(CBROM BIOS文件名 /ISA)加入EXTRACT参数,则为移出BIOS中的新功能。各参数、BIOS文件不同,移出的内容也不相同。
注意:移出的文件最好用BIOS文件中的原文件名。否则可能移植到BIOS中,可能无法使用。
删除某项内容:
如你不想用BIOS中的某个文件,可以在以上参数的基础上(CBROM BIOS文件名 /ISA)加入RELESAE参数,则为删除对应的项目。
必须在纯DOS下面才能使用这个命令
这个命令只是修改BIOS文件
修改好后在通过AWFLASH或AFDOS命令把BIOS文件刷进BIOS里面去
EFI是可扩展固件接口(Extensible Firmware Interface)的缩写,英特尔公司推出的一种在未来的类PC的电脑系统中替代BIOS的升级方案。
EFI的组成,一般认为EFI由以下几个部分组成,Pre-EFI初始化模块,EFI驱动执行环境,EFI驱动程序,兼容性支持模块(CSM),EFI高层应用,GUID 磁盘分区。
EFI初始化模块和驱动执行环境通常被集成在一个只读存储器中。Pre-EFI初始化程序在系统开机的时候最先得到执行,它负责最初的CPU,主桥及存储器的初始化工作,紧接着载入EFI驱动执行环境(DXE)。当DXE被载入运行时,系统便具有了枚举并加载其他EFI驱动的能力。
在基于PCI架构的系统中,各PCI桥及PCI适配器的EFI驱动会被相继加载及初始化;这时,系统进而枚举并加载各桥接器及适配器后面的各种总线及设备驱动程序;
周而复始,直到最后一个设备的驱动程序被成功加载。正因如此,EFI驱动程序可以放置于系统的任何位置,只要能保证它可以按顺序被正确枚举。
比较EFI BIOS和Legacy BIOS
一个显著的区别就是EFI BIOS是用模块化,C语言风格的参数堆栈传递方式,动态链接的形式构建的系统,较Legacy BIOS而言更易于实现,容错和纠错特性更强,缩短了系统研发的时间。它运行于32位或64位模式,乃至未来增强的处理器模式下,突破传统16位代码的寻址能力,达到处理器的最大寻址。
它利用加载EFI驱动的形式,识别及 *** 作硬件,不同于BIOS利用挂载实模式中断的方式增加硬件功能。后者必须将一段类似于驱动的16位代码,放置在固定的0x000C0000至0x000DFFFF之间存储区中,运行这段代码的初始化部分,它将挂载实模式下约定的中断向量向其他程序提供服务。
例如,VGA图形及文本输出中断(INT 10h),磁盘存取中断服务(INT 13h)等等。由于这段存储空间有限(128KB),Legacy BIOS对于所需放置的驱动代码大小超过空间大小的情况无能为力。
另外,Legacy BIOS的硬件服务程序都以16位代码的形式存在,这就给运行于增强模式的 *** 作系统访问其服务造成了困难。因此Legacy BIOS提供的服务在现实中只能提供给 *** 作系统引导程序或MS-DOS类 *** 作系统使用
。而EFI系统下的驱动并不是由可以直接运行在CPU上的代码组成的,而是用EFI Byte Code(EBC)编写而成的。这是一组专用于EFI驱动的虚拟机器指令,必须在EFI驱动运行环境(Driver Execution Environment,或DXE)下被解释运行。
这就保证了充分的向下兼容性,打个比方说,一个带有EFI驱动的扩展设备,既可以将其安装在安腾处理器的系统中,也可以安装于支持EFI的新PC系统中,而它的EFI驱动不需要重新编写。这样就无需对系统升级带来的兼容性因素作任何考虑。
另外,由于EFI驱动开发简单,所有的PC部件提供商都可以参与,情形非常类似于现代 *** 作系统的开发模式,这个开发模式曾使Windows在短短的两三年时间内成为功能强大,性能优越的 *** 作系统。基于EFI的驱动模型可以使EFI系统接触到所有的硬件功能,在 *** 作 *** 作系统运行以前浏览万维网站不再是天方夜谭,甚至实现起来也非常简单。
这对基于传统BIOS的系统来说是件不可能的任务,在BIOS中添加几个简单的USB设备支持都曾使很多BIOS设计师痛苦万分,更何况除了添加对无数网络硬件的支持外,还得凭空构建一个16位模式下的TCP/IP协议栈。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)