|
给BIOS做美容 |
打造自己的个性BIOS,是每个电脑爱好者的愿望。随着Phoenix公司与AWARD公司的合并,BIOS生产商现在只剩下AWARD和AMI两个公司了。AWARD和AMI各具特色,并且,借助于特定的工具,都可以方便地修改BIOS的相关内容,DIY出具有自己特色的电脑。下面就分别介绍一下Award和AMI
BIOS的修改方法。 |
一、所需要的工具: 要全面地修改BIOS,需要一些专用工具:
修改AWARD BIOS所需要的软件有:
AWDFLASH.EXE:我们早已熟悉的Award BIOS刷新程序。当BIOS进行修改之后,需要它将修改结果写入BIOS。
CTBIOS.EXE:识别BIOS版本的程序。某些用户不知道自己的BIOS版本,那么就可使用它来识别。
CBROM.EXE:可显示、导入、导出、修改BIOS模块的程序,常用的版本为V2.15,目前最新的版本是V6.06。
MODBIN.EXE:可修改BIOS设置画面内容以及自检时所显示的部分内容。
BMPTOEPA.EXE:可实现BMP和EPA图片的相互转换。
EPAFlash.EXE:制作会动的EPA图标工具。
修改AMI公司的BIOS所用的工具:
AMIFLASH.EXE:AMI BIOS刷新程序。
AMIBCP.EXE:一个类似于MODBIN.EXE的工具软件,主要是用来显示和修改AMI
BIOS文件的内容。
AMImbid.EXE:用来识别AMI BIOS相关信息的软件
AMILOG.EXE:用来制作AMI BIOS能源之星图案的软件。
另外,还要有相应的操作界面文件、显示模块文件等。
相应主板的BIOS文件(在此假设文件名为bios.bin),可以从主板厂家网站下载或备份自己主板上的BIOS;如果自己制作开机LOGO、能源之星等图案,还需要使用图形处理软件,一般用Windows95/98中的画图即可,也可以使用如Phtotshop、Photo
Impact等图形处理软件,如要进行更全面的文字修改,还需要WinHex等十六进制编辑软件。以上软件,大家可以到BIOS专页(http://www.rebios.net)中的程序下载区下载,下载后,放在C盘下的BIOS目录中。
下载本文所需的部分文件:AMI BIOS文件,从中你可以分离出Graphic
Logo Code。
sunset.jpg
hiflex.bin、simple.bin、winsetup.bin、easy.bin |
|
二、注意事项:
修改BIOS具有一定的危险性,一旦操作不慎,会损坏BIOS程序码的完整性,造成严重的后果。Award公司并不鼓励使用者自行修改BIOS程序码,当然也不提供任何技术支持,一切后果都由使用者自行承担。国内的联想公司,对使用者自行修改BIOS导致的主板损坏也不提供保修服务。在这里我们特别强调,我们修改的只是BIOS中的图案或开机时显示的文本信息,对于BIOS中的程序码,一旦改变了其完整性,就会导致开机时没有显示;
修改好的BIOS文件要刷新到BIOS芯片中才能正常显示,因此整个操作过程还要涉及到BIOS升级,具有一定的危险性。
向BIOS中添加内容时,要注意BIOS的容量。1M、2M、4M BIOS对应的文件大小分别为:128K、256K、
512K。BIOS芯片的容量越大,那么能够加入的内容就会更多;相反,如果BIOS芯片的容量较小,可能有些内容就不能加入到BIOS中(如开机LOGO、AWDFLASH.EXE刷新程序等较大的文件)。
并不是所有的主板BIOS都可以成功地完成开机画面的替换过程。有些品牌主板不允许替换操作的进行;有些主板在替换EPA图标后,开机并不能正确地显示;还有的机器干脆根本就不能正常启动。因此,在替换开机画面前要有一定的思想准备,最好看看你的系统启动屏幕,如果发现缺省的EPA图标是厂商所特有的,最好三思而后行(file://001)。
|

|
|
三、BIOS的模块化结构-----BIOS的修改基础:
现代的程序设计都讲究模块化,BIOS文件也不例外,不论是AMI的BIOS还是AWARD的BIOS,整个程序代码都是由一系列模块组成的,这是我们修改的基础。
AWARD BIOS可使用CBROM等工具进行观察及修改。如图是当我们敲入“CBROM
BIOS.BIN /D”时,CBROM软件列出的BIOS信息列表(file://1)。对于AWARD BIOS,其各个模块的功能见表1。 |

|
|
表1:AWARD BIOS内部模块名称、文件名与模块用途
序号 |
模块名称 |
在BIOS中的文件名 |
模块用途 |
0 |
SYSTEM BIOS |
Original.tmp, |
系统中最基本的部分,所有的BIOS都有这一部分 |
1 |
XGROUP CODE |
Awardext.rom |
扩展BIOS程序,是各个厂商自己定制的不同于标准Award
BIOS的功能,实际上几乎所有的厂商都会增加这一部分内容; |
2 |
CPU micro code |
CPUCODE.BIN |
CPU微代码,是用来兼容各型号CPU的。 |
3 |
ACPI table |
ACPITBL.BIN |
支持ACPI的ACPI列表。只有支持ACPI的BIOS,才能真正实现ACPI功能; |
4 |
Other |
Awdflash.exe |
BIOS中内置的刷新程序 |
5 |
EPA pattern |
Awardepa.epa |
EPA格式的能源之星图形文件 |
6 |
EPA pattern |
Awardepa.bmp |
BMP格式的能源之星图形文件 |
7 |
LOGO ROM |
Dbios.bmp |
技嘉主板中的双BIOS图标 |
8 |
OEM ROM |
v.rom |
主板厂家在BIOS中内置的程序模块 |
9 |
VRS ROM |
ANTI_VIR.bin |
BIOS中内置的防病毒代码 |
10 |
LOGO BitMap |
Lcjao.bmp |
BMP格式的全屏开机画面文件 |
注:以上模块的序号及文件名称,在不同的BIOS中并不相同,某些模块,在某些BIOS中并不存在。
|
|
要注意,不同版本的CBROM,其功能也不同。1.03版的CBROM只能显示和修改Award
4.51版本以前的BIOS,如果用于显示高版本的BIOS,就会出现如图2、图3的提示,告诉我们不能用于显示Award
6.0版本的BIOS(file://2)或干脆显示一堆乱码(file://3)。 |

|

|
| AMI的BIOS模块可以用AMI提供的模块分析、添加程序AMIBCP.EXE来浏览和修改。用AMIBCP.EXE程序打开一个BIOS文件(file://4),选择“Edit
BIOS Modules”项,就可以看到BIOS中的各个模块(file://5),关于各模块的详细定义见表2。 |

|
表2:AMIBIOS内部模块ID、属性与模块用途
模块名称 |
ID
号码 |
可否修改 |
是否压缩 |
模块用途 |
INIT |
|
|
|
从Reset跳入点开始的Boot Block程序代码 |
NVRAM/ESCD |
|
|
|
FlashEPROM的GPNV区域,存储系统组态数据 |
POST |
00h |
|
|
POST程序代码 |
Setup Server |
01h |
|
|
AMIBIOS设置服务器端 |
Runtime |
02h |
|
|
BIOS功能函数/常驻的程序代码 |
DIM |
03h |
|
|
Device Initialize Manager(装置初始化) |
Setup Client |
04h |
|
|
提供AMIBIOS设置画面的接口程序 |
Remote Server |
05h |
|
|
搭配远程遥控除错系统 |
DMI Data |
06h |
|
|
数据区 |
Green PC |
07h |
|
|
符合APM规范的节电管理程序 |
Interface |
08h |
|
|
BIOS模块压缩/解压子程序模块 |
MPS |
09h |
|
|
多重处理器起始模块 |
Int-10 |
0Bh |
|
|
BIOS文字/绘图等显示处理模块 |
ROM-ID |
0Ch |
|
|
记录ROM ID与相关信息的模块 |
Int-13 |
0Dh |
|
|
BIOS软盘/硬盘/光驱读写形式 |
ACPI Table |
0Fh |
|
|
ACPI规范控制表格区 |
ACPI AML |
10h |
|
|
ACPI的AML句柄存放区域 |
P6 Micro Code |
11h |
|
|
Intel P6处理器微码修补模块 |
Configuration |
12h |
|
|
系统组态显示模块 |
DMI Code |
13h |
|
|
DMI控制程序码模块 |
PCI AddOn ROM |
20h |
|
|
PCI适配器ROM程序代码模块 |
Multilanguage |
21h |
|
|
多重语言控制模块 |
Font DataBase |
30h |
|
|
中文(双位语系)字形数据模块 |
OEM Logo Data |
31h |
|
|
屏幕右上方OEM商标画面模块 |
Graphic Logo Code |
32h |
|
|
Silent Boot,OEM全屏幕画面处理程序 |
Graphic Logo Data |
33h |
|
|
Silent Boot,OEM全屏幕图形文件数据模块 |
Virus |
36h |
|
|
TCAV杀毒模块 |
|
BIOS中,不同的模块具有不同的功能。象SYSTEM
BIOS项和扩展BIOS程序项等模块,是BIOS中的核心模块,不能做任何改动;有些模块,如开机画面、能源之星图标等,可有可无,如果该模块删除,开机后就不显示图案,如果更换此模块所代表的图案,开机后便能显示不同的画面。更换BIOS模块的原理相当简单,但实际操作起来,还是存在许多问题的,其中三个主要的问题就是:
- 确定某个模块的具体功能是什么?
- 如何删除或更换BIOS中的模块?使用什么工具?
- 如何使修改后的BIOS生效?
我们先看第三个问题,它的解决方法很简单,把修改过的BIOS文件使用刷新程序写入到BIOS芯片中,如果一切正常的话,重新开机就会使修改生效;第一个问题,我们可以从表1和表2中查到AMI
BIOS及AWARD BIOS中各个模块的含义,如果不知某个模块的功能,最好不要随意修改它。第二个问题,解铃还需系铃人,既然BIOS程序码是由Award(AMI)公司写的,最终还是要用Award(AMI)所提供的工具程序,才能安全地修改、删除、增加BIOS模块。对于Award的BIOS,其修改工具程序就是CBROM.EXE。CBROM.EXE的具体用法,可以用CBROM/?格式来查询(file://6)。实际上,CBROM.EXE不只能显示BIOS的内容,它还可以分离或替换BIOS中的内容;AMI
BIOS的修改工具就是AMIBCP.EXE。 |
|
好了,下面,就跟我一步一步开始修改BIOS。 |
| 能源之星图标的修改 |