zhangjian781215 发表于 2009-2-11 15:28:28

我也问个vbios问题

945GM和945GME的vbios一样吗?
我的bios在945GM主板上能起来,有显示,换成北桥芯片945GME显示器就不亮。
什么原因呢?
看了945datasheet,就device0,device1,device2就DID寄存器值不同。
改了以后还是不行。用的是phoenix bios。

phx 发表于 2009-2-11 17:03:02

回复 1# zhangjian781215 的帖子

945GM和945GME的Display Device ID不一样的吧...
你是修改VBIOS吗? 将VBIOS中的Device ID修改过来以后,确定也已经将VBIOS的checksum修改过来了吗?因为在BIOS中是check vbios checksum的. 如果checksum不对,将不会调用这个ROM.

zhangjian781215 发表于 2009-2-11 17:06:48

不是改vbios,没源码,是一个.bin文件。
只改bios代码。
不知道啥原因。

phx 发表于 2009-2-11 17:13:39

回复 3# zhangjian781215 的帖子

嘿, 我说的就是改VBIOS的 BIN文件...将VBIOS中的Device ID改成和你的平台设备一样的ID.
再改CHECKSUM, 包到BIOS里面去.

zhangjian781215 发表于 2009-2-12 11:03:44

那如果既不修改vbios device id,也不改checksum,是不是就没事?

zhangjian781215 发表于 2009-2-12 11:20:13

还有,如果改vbios.bin,要看哪个规范协议?
不懂vbios的格式。
checksum怎么算出来的?

phx 发表于 2009-2-12 14:39:33

回复 6# zhangjian781215 的帖子

嘿嘿... 这你得看你的平台的Display Device ID Vendor ID和你的VBIOS的Device ID, Vendor ID是否一样.
如果不一样就要修改VBIOS,使他们一致
因为VBIOS也是PCI OPTION ROM的一种,. 因此, 只需要看PCI spec中有关PCI ROM的就可以了.
一般, checksum是最后的一个字节.
计算方法也很简单:VBIOS1 和VBIOS2比较, 找出他们不同的字节出来.
利用公式: DeviceID1+VendorID1+CheckSum1=DeciceID2+VendorID2+X , 这个X就是得到的checksum2了.

zhangjian781215 发表于 2009-2-13 09:01:39

问题解决了,就是你说的那样,谢谢了,有空请你吃饭。

phx 发表于 2009-2-13 10:38:26

回复 8# zhangjian781215 的帖子

哈...解决了就好.. 你这饭我记下来了....

ufoit_andrew 发表于 2009-3-2 12:42:11

回复 7# phx 的帖子

强悍啊!++++++++
页: [1]
查看完整版本: 我也问个vbios问题