抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

——以HP ZHAN99 Workstation G1 为例

Foundation 基础信息


System Version 系统版本

macOS Catalina 10.15.4 (19E266)

HardWare 配置

  • Intel Core I7-8750h 6C12T
  • Crucial DDR4 2666MHz 8G*2 (自己加了一条
  • UHD630
  • Realtek Alc295
  • BCM94360CS2 NGFF (加转接卡换上去的)

关于本机

Steps 步骤


CFG Lock

之前一直懒得管,但是OC的话,强烈建议解锁,于是当然是去解锁啊,没想到遇到了不少坑2333

首先去Google随便找到了一个觉得讲得不错的,传送门

没想到刚开头就翻车了2333

问题1 如何获取BIOS?

首先的想法那肯定是从官网下载啊——没错我下载下来了,解压了sp100757.exe之后,最后得到了0847B.fd

拿到fd肯定是很开心啊,那不是继续走就完事了吗

NoNoNo,UEFITool直接表示:No UEFI Volume Found

而且看了一下,这个fd文件居然有三十多M大,感觉就不大靠谱,里面应该有一部分没用的东西导致了上述问题

那么换个思路:新下载的不行,那为什么不直接提取本地的?

ODK,直接搜一下,通用备份工具 Universal BIOS Backup Tool 2.0.0

然后无法识别BIOS类型(BIOS类型是Insyde,请记住这个名字,这个BIOS出了名的坑爹2333)

无法识别没关系啊,可以手动指定大小然后直接去读取不是吗?虽然我们不知道具体的大小,但是可以从4M开始往上测试能不能读呗

于是试了4M 8M,都可以拿到ROM,但是16M就卡死了。我之前的感觉是bios应该是16M的,但是既然工具读16M挂了,是不是说明bios并不是16M的?

结果当我用UEFITool去打开这两个ROM然后搜索的时候,发现没有CFG Lock???那肯定是我们提取的BIOS有问题。那只能继续爬帖了

终于,翻了不少之后看到了一个很有用的帖子 传送门

使用这里面提到的工具 Intel CSME System Tools 来提取BIOS即可

注意,请使用正确的版本,只有对应的chipset才可以使用工具来提取

比如我的是300系的,所以使用的是 v12 r20版本

OK,拿到了BIOS之后直接丢进UEFITool,确实这次能找到CFG Lock了,按照标准步骤,把对应的PE32 image拿出来,再转换成“human language”

此处有Warning:最开始我用的是这个 : ifrextractor_1.0.2_mac ,然后报错了,我很郁闷,想着试试老板本原版

于是换用了 ifrextract_v0.3.6.osx ,然后就好了,我也是很无语啊

拿到的CFG Lock 信息

下一步就是去修改数据了,你以为这就完事了?不不不

问题2 如何修改BIOS数值

根据第一篇帖子的信息,我们用modGRUBShell.efi进去修改即可,但是没想到啊,因为BIOS是Insyde(系微),所以如果我们用上面这个工具修改,会提示Can’t set variable using efi。而且你会发现,set_var的时候拿到的数据不对,BIOS里面应该显示的是0x01才对,可是我们看到的却是0x00

那就继续爬帖呗,终于找到了一个帖子提到了这个 传送门

于是改为使用ru.efi(感谢湾湾大神制作的工具)

关于ru.efi的使用方法可以看这两个帖子 传送门 传送门

但是不要照抄哈,下面是我的操作过程:

  • 进入后 ‘alt’ + ’=‘ 切换进 ACPI Variable
  • 用pageup/pagedown/上下方向键找到 CPUSetup
  • 回车进入然后用上下左右方向键找到对应的地址(我是0x3e,那么就是纵坐标03,横坐标0e的位置)
  • 一看,确实是0x01,那么回车,输入0 就可以看到它变成了0
  • 使用’crtl’ + ‘w’ 来保存 保存的时候屏幕上会直接显示update written 的,这说明已经写入了
  • 使用’alt’ + ‘q’ 来退出,然后即可回到引导进入系统了,CFG已经解锁

RU.EFI

进入系统之后使用hackintool -> 工具 -> intel(就是下方最左边的icon) 读取之后 command + f 搜索 cfg 就可以看到状态了

注意 如果显示还是锁着的,请完全关机,然后再开机进系统看看

hackintool

至此,最麻烦的CFG Lock 部分就完工了

Config.plist

此处相对而言较为简单,主要参照黑果小兵

这里主要列举几个我遇到的问题(大多还是挺好解决的)

no vault provided!

这个原因很简单,开启了Misc-Security-Vault却没有放 vault.plistvault.sig,这个就暂时先把vault改为optional吧

LAPIC Error

搜到了各种说明

首先是vit9966说的吧,我用了debug=0x100 却没有加上lapic_dont_panic=1

后来发现并不是这个的原因,而是我的change EC0 to EC patch有问题

最后发现:ACPI-Patch里面 count这个属性虽然在example里面用的是1 ,但是应该改成0才可以

Layout-id 失效

发现是自己犯了比较傻的问题

首先,不小心大写了,然后refer to opencore vanilla的建议,我将其改成了 alc-layout-id

并且要注意,id的类型不是number而是data,所以可以用这个trick在terminal里面得到他的data值:

printf "%x\n" id 把id换成你自己的数字

ApplePS2SmartTouchPad.kext 未被加载

这个涉及opencore的config要求

在Kernel-Add里面添加kext的时候,要注意,如果kext里面有PlugIns,要把plugins也单独写进去

比如ApplePS2SmartTouchPad.kext就需要另外加上 ApplePS2SmartTouchPad.kext/Contents/PlugIns/ApplePS2Controller.kext 和 ApplePS2SmartTouchPad.kext/Contents/PlugIns/ApplePS2Keyboard.kext

效果


经过验证,和Clover版本无差别

另外,OC开机更加原生,体验更好

以下feature已check

  • CPU自动变频+睿频
  • 可调节显示器亮度,且最低亮度不会全黑
  • 声卡正常
  • Wi-Fi&Airdrop&AirPlay
  • 蓝牙&handoff
  • 原生电池控制
  • USB(此项自己定制)
  • 有线网卡驱动
  • 摄像头驱动
  • GPS
  • 睡眠+唤醒
  • sidecar可用
  • 支持信息、FaceTime、iCloud、App Store (注意此项需要自己去按照教程定制MLB ROM UUID等)

附录


我用到的主要工具

  • Intel CSME System Tools v12 r20
  • UEFITool
  • ifrextract
  • RU.efi
  • ProperTree

已打包:传送门

主要帖子汇总

关于Insyde H2O BIOS 更改一些隐藏预设值的操作

ru.efi相关操作

解锁MSR 0xE2、BIOS Lock等隐藏选项新姿势,还黑果原生体验(附刷AMI BIOS教程)

Intel CSME tool download

UEFI 下 RU.EFI工具介绍

Clover转OpenCore,卡在CFG Lock上,偏移已确定modGRUBShell修改无效

Opencore Vanilla General Troubleshooting

精解OpenCore

GitHub repo

Macsed/hackintosh

Blog

Macsed的部落格

评论