一块杂版的815主板,其故障现象是可以开机自检测,但检测完IDE设备后,即重新启动机器。由于其它配件在其它主板上都测试通过,因此判断是BIOS损坏;但由于其主板,无法确定型号。而且通过其备份的BIOS文件中的ID,判断是TX Eupa Computer 灿坤,但从网上找不到其厂家的任何信息,因此无法寻找到对应的BIOS文件;而且试写815通用版BIOS,也没有通过。
由于考虑到,即然主板可以自检测,因此BIOS已经完全损坏的可能性不大,将BIOS文件备份后,通过编程器提取出来仔细研究。
文件是一个512K的文件,其BIOS芯片使用提I82802AB,容量与芯片应对应的,使用Ultraedit32打开网友的BIOS文件;在这里插上一句,如何方便的判断BIOS的ID,在此说明一下,只要使用Ultraedit32打开BIOS文件后,查看文件的尾部,即可正确确定BIOS ID。
如此文件是512K文件,即4M文件,使用Ultraedit32打开后,查看文件尾部,即7FFFFH地址处,即可看到ID部分。
下面我们接着分析这个BIOS文件,打开文件后,由于此文件是AWARD的BIOS(从BIOS ID部分即可判断);AWARD的BIOS,开头部分一般都显示LH5,因为AWARD的BIOS,都是使用LH5压缩的。但在0000H地址处,却发现头部全是00空字节;文件头部为空字节00,有两种可能:一是文件本身已经完全损坏,二是文件不是标准的4M文件;由于BIOS可以正常开机自检测,因此判断,BIOS文件没有严重损坏,只可能不是标准的4M文件或文件头部损坏。
即然判断文件不是一个标准的4M文件,那么只有两个可能,一个是3M文件合并成的4M文件,一个是2M文件合并成的4M文件(也可能还有1M文件合并的可能性;但815主板不可能使用1M的文件的,因此这种可能是没有的);那么我们只需要判断2000H(3M文件头部),4000H(2M文件头部),即可判断BIOS文件的实际大小。
首先查看2000H地址处,在此发现了LH5的压缩标识,因此判断此文件是由3M文件合并成4M文件的。
判断文件后,首先我们要将3M的文件提取出来,由于文件头部有1M的空字节,因此我们删除1M的空字节后即可得到3M的BIOS文件;将光标移动到文件的头部,即0000H处,点击Ultraedit32工具栏--HEX插入/删除,选择删除,输入131072(这里是删除2000H地址的空内容,2000H为16进制,换算成10进制即可),点击确定即可删除0000H-2000H之间的空字节。
删除后,选择Ultraedit32工具栏--文件--另存为,并命名,将其保存BIN文件,即完成了3M文件的分离。
在DOS环境下,使用CBROM和MODBIN都可以正常的打开保存的3M文件。因此确定BIOS文件并没有损坏,可能是4M文件的头部损坏,因为正常情况下,3M文件合并成4M文件后,其头部应是FF;而原文件的头部是00;因此,我们只要将3M文件前面,加上1M的FF空字节即可解决。
经过对原文件的分析,其3M文件前的空字节中,已经混乱,在地址10000H处有一部分乱码。因此判断,可能原文件是病毒破坏,或人为的加入了跳转命令,造成主板IDE自检测后即重启。
正确判断后,将分出的3M文件头部,加入1M空字节,合并成4M文件后,经写入测试后,一切正常,主板顺利启动,到此维修结束。
此款主板BIOS维修,是在原BIOS文件的基础上,来确定文件是否损坏,经过判断重新合并文件后,将问题解决;因此,如果你在维修中,也遇到此类情况,可参考此文章。