刷BIOS工具分享(白名单,高级菜单,电源管理)
本帖最后由 hhwzhd 于 2016-9-12 22:14 编辑一,BIOS备份
1. 使用第二部分对应版本的fptw。以管理员身份打开命令提示符,去到fptw所在路径,输入命令
fptw64.exe -d bios.bin -bios其中fptw64.exe是64位系统用的(Windows64目录),32位用Windows目录下的fptw.exe,DOS环境用DOS目录下的fpt.exe。bios.bin是输出bios备份的文件名
2. 使用Universal BIOS Backup ToolKit 2.0
二,刷BIOS工具:Flash Programming Tool
命令,64位Windows
fptw64.exe -f bios.bin -bios
三,BIOS解包打包工具
Phoenixtool 2.6.6(修改白名单必备,具体教程请自行搜索)
四,16进制文件修改器:winhex
五,电源管理补丁,UEFIPatch(pmpatch升级版)
如果你只是为了给BIOS打这个补丁,不推荐刷BIOS,clover的kernel PM更安全方便
把bios放在UEFIPatch.exe目录下, 输入命令
uefipatch.exe bios.bin其中bios.bin为bios文件名
注意,有时UEFIPatch会无法patch官网下载的bios(解压exe得到fd或是rom后缀的文件),至少Z410的BIOS就不行,需要用fptw或者universal bios backup toolkit备份的才行。
六,如果用fpt工具刷时遇到错误
错误代码28
进入DOS环境(很多PE工具都有提供),先运行prr2.exe,然后在用DOS版本的fpt刷。如果还不行可以再试试先运行prr.exe,再用DOS版本fpt刷
错误代码280
使用睡眠bug:先让电脑进入睡眠模式,过几秒后唤醒,再尝试刷。如果还不行,用下面的方法。
以下内容不适合小白
六,falseclock方法
需要Linux环境或OSX环境,因为要运行perl文件,也可以安装bash on ubuntu on windows 10)。在bios-mods有一个专门的帖子讲这个方法,可以不用解锁高级菜单来设置CPU频率,开启AHCI,设置显存等,也可以用于关闭Secure Flash。不过那个帖子提供的grub shell有bug,导致有些机型修改不了nvram的值(具体表现为输入setup_var命令会一直停留在setting offset xxxx to xxxx,需要按Ctrl+Alt+Del重启)。我这个帖子提供一个修复了这个bug的版本,并且简单说一下这个方法。
1. 首先用fptw备份bios,然后用phoenixtool解包bios,在bios文件同一目录下会出现DUMP文件夹,在DUMP文件夹里面找到一个以FE3542FE开头的文件(可能有几个,需要最大的那个),然后在Linux或OSX环境下,打开终端,把找到的FE3542FE开头的文件和parser.pl放在同一目录,输入命令
perl parser.pl ./FE3542FE* > result.txt打开生成的result.txt,寻找诸如flash, lock, protection,比如我的BIOS
省略很多内容
Select option: 'Me Fw Image Re-Flash' [ VarStore: '0x1ee', QuestionId: '0x109', Help: 'Enable /Disable Me Fw Image Re-Flash function']
Option: 'Disabled' [ Value: '0' Default: 'true' Type: 'int8']
Option: 'Enabled' [ Value: '1' Default: 'false' Type: 'int8']
┌- Grayout IF:
| Question [ ID: '0x550' ] == 0x01
| Question [ ID: '0x0f' ] == 0x02
| Question [ ID: '0x0e' ] == 0x01
| AND expression
| OR expression
└- END IF Grayout;
Select option: 'BIOS Lock' [ VarStore: '0x4ab', QuestionId: '0x11a', Help: 'Enable/Disable BIOS Lock']
Option: 'Disabled' [ Value: '0' Default: 'false' Type: 'int8']
Option: 'Enabled' [ Value: '1' Default: 'true' Type: 'int8']
┌- Suppress IF:
| EQ == TRUE
| └- END IF Suppress;
┌- Suppress IF:
| EQ == TRUE
| └- END IF Suppress;
省略很多内容
可以看到,Me Fw Image Re-Flash(ME Firmware Re-flash)默认是Disabled关闭的,BIOS Lock(BIOS锁定)是打开的。
当然可能有些BIOS名称不同,比如下面SPI,TXE什么的(这两个其实我不懂是什么意思),
0x21067 Setting: LPSS SPI Support, Variable: 0x163
0x2108D Option: Disabled, Value: 0x0
0x210A9 Option: Enabled, Value: 0x1
0x210C5 End of Options
0x2179D Setting: BIOS Read/Write Protection, Variable: 0x1FC
0x217C3 Option: Enabled, Value: 0x1
0x217DF Option: Disabled, Value: 0x0 (default)
0x217FB End of Options
0x21A25 Setting: TXE HMRFPO , Variable: 0x170
0x21A4B Option: Disabled, Value: 0x0 (default)
0x21A67 Option: Enabled, Value: 0x1
0x21A83 End of Options
2. 这些值是储存在nvram的,用falseclock的方法可以改这些值,于是你的BIOS就可以重刷了。
新建一个Fat32分区,把下面的bootx64.efi放进新建分区的EFI/Boot文件夹下,然后用easyuefi新建一个一次性启动项来启动这个bootx64.efi,重启。
比如我的BIOS需要开启Me Fw Image Re-Flash, 地址(看VarStore)为0x1ee,需要改为Enabled(后面的Value: '1'),
同时需要关闭BIOS Lock,地址为0x4ab,需要改为Disabled(Value: '0'),
所以依次输入命令
以下命令只适用于Z410的BIOS!请从你自己的result.txt中找到正确的地址和值!直接复制执行会使你的电脑变砖!
setup_var 0x1ee 0x1
setup_var 0x4ab 0x0
然后输入reboot重启。进入Windows后就可以用睡眠bug刷bios了。
用以上方法,楼主备份了自己的bios,给bios打上了电源管理补丁,移除了白名单,所以楼主的Clover不用勾选Kernel PM,并且换上了苹果免驱的网卡(其实这个才是最重要的)。
以上所有资源在百度云有合集
https://pan.baidu.com/s/1o7MK1AU
提取密码hbxc
厉害啊,全部都集合了 本帖最后由 hhwzhd 于 2016-9-12 22:39 编辑
如果遇到错误代码28可以用以下工具(需要在DOS环境下用)
上面的百度云挂了,改为以下
链接: https://pan.baidu.com/s/1bpDTCXD 密码: g42h
支持下 谢谢楼主 谢谢楼主!好好学习! 我的k41-70正好需要,谢谢楼主了。 支持,但是没有恢复能力的小白 别随便尝试啊.... 刷BIOS有风险 好高端,不懂,就不要折腾了,基本的功能都能用就OK了,不要那么强迫症 各种工具貌似都集合一起了。。 看看吧,学习学习,谢分享 感谢卤煮分享~不知是否支持insyde BIOS? conpeal 发表于 2016-9-15 23:51
感谢卤煮分享~不知是否支持insyde BIOS?
支持的,我联想z410就是insyde bios 感谢分享啊
楼主能提供一下 那个 帖子的原文嘛?我的DEll也是 锁了 BIOS ,除了6 的方法没试成功,其他都没能成功。 perlparser.pl899407D7-99FE-43D8-9A21-79EC328CAC21_1312.ROM > result.txt
IFR_PACKAGE_SIG not found!
Exiting programm...
确定在这个ROM里,但是IFR_PACKAGE_SIG not found 远景真是有问题。出现什么多次下载然后东西没下载到PB没了。 tanpengsccd 发表于 2016-9-20 10:38
perlparser.pl899407D7-99FE-43D8-9A21-79EC328CAC21_1312.ROM > result.txt
IFR_PACKAGE_SIG not fou ...
注意一定要是以FE3542FE开头的,最大的ROM文件 LuvU 发表于 2016-9-25 13:57
远景真是有问题。出现什么多次下载然后东西没下载到PB没了。
3楼有百度云合集 tanpengsccd 发表于 2016-9-20 09:20 https://www.pcbeta.com/static/image/common/back.gif
楼主能提供一下 那个 帖子的原文嘛?我的DEll也是 锁了 BIOS ,除了6 的方法没试成功,其他都没能成功。
falseclock方法
https://www.bios-mods.com/forum/Thread-READ-FIRST-Access-Advanced-settings-through-EFI-shell