教你利用现有SLIC20 BIOS平稳升级SLIC21Word格式.docx
《教你利用现有SLIC20 BIOS平稳升级SLIC21Word格式.docx》由会员分享,可在线阅读,更多相关《教你利用现有SLIC20 BIOS平稳升级SLIC21Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
我会尽量完善文章,争取把易出错的地方写到最详细,步骤写到最简明,再次谢谢大家的理解。
该方法其实主要是针对笔记本PhoenixBIOS的,因为Phoenix没有其他简易的修改办法。
这个方法不对BIOS进行整体编辑,只要确保修改位置正确,没有修改到其他非SLIC部分,即便修改错误也是绝对不会出现开不了机的现象的。
相对其他对BIOS进行整体编辑的办法来说,这个很安全的,修改时注意胆大心细即可。
SLIC表分为表头,SLPPubkey,SLPMaker三部分共374字节(SLIC2.0,2.1大小相同),绝大部分BIOS中均为明文存放,所以可以直接用简单的替换法实现SLIC2.0BIOS平稳升级SLIC2.1。
如果想进一步了解SLIC表的构成,可以参阅BIOS之家Killergd00的文章:
相信坛子里大多数朋友都已经有了SLIC2.0的BIOS,现在正发愁如何将SLIC2.0的BIOS升级到SLIC2.1。
本文将举HP和VAIO两例说明如何修改现有BIOS完成这个过程。
首先请准备如下工具:
原SLIC2.0的BIOS(升级程序和ROM),新的相应品牌SLIC2.1(如果对SLIC结构不熟悉还需要原SLIC2.0作对照),WinRAR,UniversalExtractor(UniExtract),WinHEX(或其他16进制编辑器)。
原SLIC2.0可以用SLIC_Dump_TooKit来查看,SLIC2.1可以从大粽子的帖子中去下载。
例一:
HPCompaqPresarioB1900(已经验证成功):
1.从官方获得包含SLIC2.0的BIOS(自己修改过的包含SLIC2.0的BIOS也可以,也可以自行将原BIOS备份出来,这个不在本文讨论范围之内,如有需要请从BIOS之家查阅相关文章)。
本文获得的是sp35666.exe。
是InstallShield封的安装包,可以直接用WinRAR解压(对于有的封包方式只有用UniExtract解包,这个在VAIO的例子中当另加说明)。
下载(27.09KB)
2009-7-2917:
51
解压获得30BAF15Win.exe,仍然是一个zip自解压程序,继续用WinRAR解压,这时候得到程序和目录若干。
下载(13.28KB)
在\Winphlash\RomFile目录下发现30BAF15.ROM,这个就是原BIOS,也就是我们要动刀的地方了。
如何判断哪个文件是原BIOS文件?
BIOS文件通常扩展名是ROM,WPH,BIN。
整1MB或2MB大小。
主文件名中包含完整或部分BIOS版本信息。
2.用WinHEX打开需要修改的BIOS文件(本例中:
30BAF15.ROM),按Ctrl+F弹出搜索框输入SLIC回车搜索,结果定位在00030413处。
观察可以发现这个是SLIC表的SLPMaker部分。
搜索结果:
下载(139.59KB)
原SLIC2.0作为参照:
下载(129.41KB)
有人问如何确定“表头”“Pubkey”和“Maker”,这三部分长度是固定的分别是24H,9CH,B6H,对比原表就很容易确定。
并不是所有品牌都是用SLIC做关键字来确定SLPMaker部分,可以参照下表选定关键字:
ACER:
ACRSYSACRPRDCT
ASUS:
_ASUS_NotebookWINDOWS
DELL:
B10K
CL09
FX09
M09
PE_SC3
QA09
(DELL-Alienware)
DELL
WN09
FUJITSU:
FUJ
PC
GIGABYTE:
GBTGBTUACPI
HP:
HPQOEMSLIC-MPC
LENOVO:
LENOVOTC-5H
LENOVOTC-5M
LENOVOCB-01
LENOVOTC-5I
MSI:
MSI_NBMEGABOOK
TOSHIBA:
TOSCPLTOSCPL00
TOSINVTOSINV00
打开SLIC2.1(本例为HPQOEMSLIC-MPC.BIN),将对应SLPMaker部分(C0-175)选中并复制
下载(120.67KB)
切换到BIOS编辑窗口(本例为30BAF15.ROM),选中整个SLPMaker部分,用鼠标左键点选该部分开头,确保蓝色高亮选框出现在SLPMaker头部。
下载(139.61KB)
此时按Ctrl+B(千万别搞错,不是CTRL+V)进行粘贴。
会出现提示框,确认起始位置没错后,点OK键将进行替换。
操作完成后请确保操作正确没有影响到BIOS其他部分。
下载(13.24KB)
继续修改,按CTRL+F,搜索RSA1,定位后
下载(152.25KB)
对照SLIC2.0可确定SLPPubkey位置。
从SLIC2.1文件中复制对应部分(24-BF),切换回BIOS编辑窗口,选中整个SLPPubkey,并用鼠标左键点选开头,确保蓝色高亮选框出现在选中的SLPPubkey头部。
仿照前步此时按Ctrl+B粘贴,确认。
3.该型号的BIOS中并没有包含SLIC表头部分,不用担心,这部分开机时BIOS会自动生成,既然没有也就不用替换了。
4.将修改后的BIOS保存,执行\sp35666\30BAF15Win目录下的BFA.exe按照提示刷机。
5.重新开机后你的机器就已经变成SLIC2.1了,导入证书并更改序列号(这个过程网上讲的太多的,不用我再说了吧),接下来要做的就是体验完美激活Windows7的快感吧!
例二:
VAIOSZ(很多细节就不重述了,参考HP的部分吧)
其实VAIO的BIOS结构更为简单,因为整个SLIC表在BIOS中是一个整体,并没有分开,所以只需一次替换即可。
1.从官方获得包含SLIC2.0的BIOS升级程序PHBSYS-01041232-US.EXE,用UniExtract解包,
将目录PHBSYS-01041232-US\TEMPEXEFOLDER下的PHBSYS-01041232-UN.EXE再次解包,得到如下文件。
下载(20.05KB)
可以判断出R0112N0.WPH即为需要修改的BIOS文件(方法参照HP部分)。
2.用WinHEX打开R0112N0.WPH,搜索SLIC即可定位到完整的374长度的SLIC。
下载(152.29KB)
3.待VAIO的SLIC2.1泄漏后,直接替换此处并刷新即可将原有SLIC2.0替换为SLIC2.1。
例三:
Phoenix压缩模块处理
需要注意的是这种修改方法相对上述两种状况要复杂的多,本部分由于本人没有对应机型无法验证,请先阅读如下文章,会有助于理解本文。
在此要感谢下述文章的作者,这部分内容很大程度上都是对他们研究成果的应用。
1.新phoenixbios的bioscode的压缩和修改的问题bygamesplay
2.新phoenixbios的bioscode的压缩byzhaoliang
3.新phoenixBIOS分析byzhaoliang
所需工具下载:
BIOS.rar(869.86KB)
下载次数:
349
2009-9-2315:
31
对于无法搜索到SLIC关键字的BIOS文件,很可能是模块压缩过的PhoenixBIOS。
根据本文的思路,我们只要找到压缩过的模块进行替换就可以了。
本文暂以VAIOSZ5-7系列的BIOS,R0122S5.WPH为例来讲述修改方法和思路。
一、由于无法搜到SLIC关键字,我们可以初步判定BIOS模块被压缩。
二、使用phnxsplitR0122S5.WPH命令可以对BIOS各模块解压进行分析。
执行成功后可获得ACPIxx.rom,BIOSCODExx.rom等文件若干。
三、根据经验,SLIC表会被保存在ACPIxx.rom或BIOSCODExx.rom中,我们需要把获得的这些文件在WinHEX中逐一打开,搜索SLIC关键字。
本例中ACPI08.rom即是完整的SLIC,也有的BIOS会将SLIC模块保存在BIOSCODE中。
查找phnxsplit的处理记录可以发现:
Foundmoduleatposition0xFD72.
TypeA,number08,blocklength423.
possiblelzintcompression(1,18F).
pos64918orig387pack387
其中TYPEA表示ACPI,Number08即为序号,这部分记录指出了压缩后的SLIC模块在原BIOS文件的0xFD72处。
按ALT+G输入FD72,可以定位到SLIC表处:
下载(164.46KB)
41
我已在图中根据赵大的分析将表头关键部分意义作了标记。
根据压缩部分标记02可知,该表为压缩表。
根据表长部分数据“A70100”,可以获得该表长为“0001A7”即1A7。
请注意表长数据是高低位倒写的。
两位一组原来记录(A70100)实际为(0001A7)即1A7,如果原来为(8C0000)实际为(00008C)即为8c
根据表长从0xFD72出开始选择长度为1A7的数据(选择数据的长度可以从WinHEX的状态栏右下角Size处查看),所选数据即为压缩过的SLIC表。
我们将新的SLIC2.1表改名为SLIC.bin保存于下载工具的ADDMOD目录下,替换原文件,执行apci.bat即可得到ACPI.MOD,该文件即是包含SLIC的ACPI模块,我们只需将该文件修改并替换原BIOS中压缩过的SLIC模块即可。
需要修改的部分有ACPI表序号,头部校验和,模块校验和。
更新尚未结束,新方法还未验证,本人将尽快完成,感谢关注。