黑苹果从入门到精通:K39小钢炮黑苹果实践
liebian365 2024-10-24 14:33 21 浏览 0 评论
本内容来源于@什么值得买SMZDM.COM|作者:唐少游
本来从第三篇开始是基于一台没有任何参考的电脑,逐步逐步从零开始给大家展示黑苹果优化修复过程,可惜在第五篇结束后OC Formula主板损坏了,于是第六篇重新装了一台X99电脑,然而X99有非常详细现成的资料,导致黑苹果一步到位,大家也学不到啥,这次尽量延续第三篇的意图,后续会把每个步骤都详细列出来,这次引导器将基于OpenCore 0.5.6,未来我也不再会回Clover。
BIOS设置
主要就是CFG Lock vt-d FastBoot CSM需要关闭,不过我这块主板的BIOS没有CFG-Lock设置项,我又不想重刷BIOS,所以考虑使用setup_var来修改BIOS不可选项。
经过extract得到CFG Lock信息
可以看到默认为Disable,所以省事儿了,不需要做进一步修改。 同理,这个方法还可以对DVMT进行修改。
Clover创建Catalina启动盘
如何创建Clover引导U盘和配置方法已经在篇三中讲过了,没有看过的朋友点下面的链接。
黑苹果从入门到精通 篇三:在Intel电脑上安装macOS 10.14 Mojave声明本教程仅用作学习或个人使用,严禁将黑苹果安装作为商业牟利手段,以出售黑苹果安装服务进行交易。个人非常讨厌那些在闲鱼、淘宝上出售黑苹果安装服务的商家,原因有很多:一、安装方法、启动器、驱动程序均非淘宝商家开发;二、淘宝商家安装黑果实际效果很差,仅仅做到能用,而不是好用,各类驱动和DSDT/SSDT唐少游|赞578评论308收藏4k查看详情
下图是我的目录结构,根据我自己的需求调整了Kext,config.plist随手从黑果小兵repo中找的一个,反正都是可以调的,只要知道每一项的功能和可能造成的效果就行了。
10.15 Catalina对EC的名称做了规定,很多主板的EC ACPI名称为EC0或H_EC,需要将其改为EC(这种就只有一直关注黑苹果的人才知道了),从DSDT中可以看出,华擎Z170m ITX对应的EC名称为H_EC。
所以我们要在ACPI热修复中加入对EC的补丁
很多人可能会好奇热修复中的Find和Patch中一串数字是怎么来的,这个实际上是字符串改十六进制,例如H_EC就是485F4543,H对应48,_对应5F即缺失,45对应E,依次类推,尽量四个四个一组,即使EC这样的两个字符后面也要用__填补,所以EC的查找是EC__,Clover Configuration带了这个小工具。
如果你不是用编辑器打开会发现对应十六进制变成了一串奇怪字符串,这是Base64加密后的十六进制数,找个工具翻译过来就行。
除了这个EC补丁外,我还加入了RTC Fix,据说是很多Z390主板会卡apfs_module_start,但是很多教程传的云里雾里的,说华硕华擎微星,我特么蛮久没用Clover了还真不太清楚......
没啥好说的,反正试试又不会死,我是先加入了但没有启用,万一启动真卡了这边儿顺手一开就行了。同理我还加了HDAS to HDEF(音频),HECI to IMEI,GFX0 to IGPU,PEGP to GFX0(这三个都是显卡有关,第二个是核显的修复),这些是根据这块板子的DSDT需要做的针对性的修复,但其实现在很多事情Kext都帮你做好了,所以也没开,如果Kext没起效再开。
哦对了,ACPI设置里不要忘了Plugin Type=1,六代以上开启这个就能启用CPU原生电源管理了。
在Boot-args中我加入了shiki-id=Mac-7BA5B2D9E42DDD94和shikigva=40,这个本质上是仿冒iMacPro1,1实现独显硬解码,因为我贼心不死,虽然6400T核显在Windows下就感觉变频怪怪的,但这不是还能用嘛,所以我选了iMac18,3想搞个核显加速,事实证明我是在想peach。如果你就用独显硬解,没有核显,就直接选iMacPro1,1的SMBIOS就行啦。
另外作为第一次启动,-v keepsyms=1 debug=0x100也是不可或缺的,这样出问题了才有空拍照查资料。
比较诡异的一点是HWP Enable,在我的印象中是要这个开启+plugin type=1才能完整开启变频,但是根据我后面实测的结果,开启这个会导致CPU频率卡死在2.4Ghz不变,虽然负载和功耗都在变,但总归很奇怪,关了就可以正常变频,这个真的有点让我吃惊,我猜测啊(真的是猜的),plugin type=1就足够让几个变频kext正常加载,但是开启这个会让macOS去套系统内相近的CPU变频,如果是6700K这种普通的U应该没啥问题,但是6400T这种最好还是关了这个让主板控制,(如果我记错了这里变频不用开HWP Enable请评论告诉我,但是我真记得是要开的)
设备设置这里主要是两个属性注入,声卡和核显加速,框框左边是设备路径,右边是属性注入,我还很有梦想的配置了核显缓冲帧注入,嘿嘿,事实证明不行。
很多人看到这里估计要发问了,那怎么才能知道设备路径是多少?注入参数是啥?一般来说设备路径都是比较固定的,大部分主板的声卡就挂在pci(0x1f,0x3)下,不用改,核显也是pci(0x2,0x0)路径
如果核显加速就需要一个属性,注入AAPL,ig-platform-id值0x19120001(这个是HD530的headless id值),然后我们需要两个两个一组分成四组,再倒着写,就变成了01001219 ,具体可以查黑果小兵整理的《黑苹果必备:Intel核显platform ID整理及smbios速查表》
如果你是核显输出不是独显输出,那请参考黑果小兵的《教程:利用Hackintool打开第8代核显HDMI/DVI输出的正确姿势》,感谢黑果小兵,整理的很好,照着教程做就行了,很简单。
音频驱动其实很简单,目前都是AppleALC+Lilu驱动,得益于网友们不断的贡献,AppleALC已经包含了大部分的声卡芯片布局,我们只需要一个个试layout-id即可,hackintool可以非常方便的完成这个工作,首先找到音频部分,尝试选取一个layout-id
然后在菜单栏中点击文件-导出-引导文件config
不用担心会覆盖你原有的config,实际上他只是填充了对应的音频属性。具体的layout-id可以查看github上的AppleALC库中的WIKI或打开AppleALC看实际布局情况。如果说很不幸你的声卡没有适配的layout-id,说明需要你自己动手做一个,黑果小兵也做好了具体教程,但是但是!台式机一般是不需要从头做的,基本上看后面是3口还是6口输出都能定下来了,而且很多时候6口输出的声卡布局是可以适配3口输出的,如果你不会看布局,从1试到9一般就行了。
再讲讲引导界面的设置,首先是扫描部分,不要使用自动模式,自定义模式中,Entries是必须要的,除非你还装了Linux,不然Linux也不用勾选,Legacy不要选,不然你会发现有一堆硬盘出现在引导项中,右边隐藏卷可以用来隐藏不需要的Volume,例如Preboot和Recovery,除了名称外还可以通过Volume/Disk UUID来隐藏卷,UUID可以在Clover界面按下F2(好像),preboot.log会保存在misc中(好像),这些隐藏的卷通过F3可以在引导时切换隐藏与否。
内核补丁方面也要强调一下,黑苹果小白真的太多了,很多人会拿着-v输出来问我卡这儿了怎么办,然后上来的图长这样(随便找了张图,发现很多人在远景问连图不上,只说卡在in memory panic stackshot succeeded后自动重启,这样鬼知道什么原因导致的)
其实上面的信息都是无用的信息,它只是macOS引导在出错后整理加载的相关组件,并打包成log的一种方法,实际上错误输出在这些的上面,所以我们需要勾选PanicNoKextDump!
这样输出的结果就可以看到了,例如下图所示,这是我在调试核显加速时的报错,Kernel Extension in backtrace后面才是真正的报错信息,不过这玩意儿输出的信息和C++编译的报错差不多,就算输出了也不一定能理解究竟是什么原因,例如我们可以知道是X86PlatformShim导致的连锁错误,但是这玩意儿是和变频有关的,具体是怎么错又不清楚,只有我这样正巧在调试核显导致才能明白是核显变频出问题了。
另外没有定制过USB接口的要添加USB Limit Patch,PMheart出品。
Comment: USB port limit patch #1 10.15.xName: com.apple.iokit.IOUSBHostFamilyFind: 83FB0F0FReplace: 83FB3F0FComment: USB Port limit patch #2 10.15.xName: com.apple.driver.usb.AppleUSBXHCIFind: 83F90F0FReplace: 83F93F0F
至此配置结束,剩下就是不断的调试了。
完善的一些心得
首先肯定是一次点亮进系统了,不过后面完善的时候出现了一些问题,把修复的过程简单说一下。
CPU变频
这个前面就已经提到了,在我的印象中六代以上CPU变频是通过PluginType=1和HWPEnable来实现的,但是在我的测试中发现CPU频率锁死在2.4Ghz,功耗和负载正常,一开始我以为是SMBIOS选取的问题,从iMac18,3切换到了iMac17,1,结果发现没有区别,关闭了HWPEnable后成功变频,原因不详。
独显变频及硬解
对于AMD免驱显卡,加入WhateverGreen即可,硬解需要iMac Pro或者使用仿冒参数。
WIFI蓝牙及网卡驱动
往Kext文件夹扔驱动就行了,看往期文章,但需要注意的是现在蓝牙驱动需要BrcmBluetoothInjector.kext/BrcmFirmwareData.kext/BrcmPatchRAM3.kext三者搭配,篇五驱动方法过时了。
定制USB端口
另开一篇文章吧,这里不想写了,我被催的最多的就是USB定制,马上回头赶出来,真心超级简单,为什么这么多人不会。不要迷信hackintool,它对USB Port的识别可能会出错,最关键的还是要靠IORegistryExplorer。
睡眠唤醒
这个是个比较复杂的问题,牵扯到方方面面,但很多时候和USB有关,例如典型的睡眠秒醒,一般就是USB有Bridge、Hub或者蓝牙没有内建。我这次碰到的比较奇葩,可以正常睡眠并唤醒,但是唤醒后系统卡飞,而且键盘输入有问题,查阅资料得知一般是需要添加VoodooTSCSync.kext修复,这个驱动很老了,上次我用它还是在第一次玩X99的时候(2016年吧),RehabMan出的最新版不需要修改核心数,所有机器都可以用。
蓝牙键盘对码
一个比较实用的小技巧,很多人喜欢用蓝牙键盘,毕竟没有凌乱的线材,希望一把蓝牙键盘能无缝在Windows、macOS甚至Clover BIOS中都能使用,但是很可惜,Clover和BIOS使用需要苹果原装卡,而且还要主板固件支持,退而求其次,双系统使用蓝牙键盘如何实现?
首先需要把这把蓝牙键盘在Windows下进行配对,例如我手头K380支持三台设备,使用1设备连接到Windows,接下来重启到MacOS下,同样使用1设备配对,但是两个系统配对对码方式是不一样的,所以产生的校检码也不同,我们要做的就是把Windows改成和macOS一样。
下载bt.py(后面会给下载链接),这是一个翻译脚本,在Terminal中拖进去执行,会在桌面生成一个btfix文件夹,里面有BTFix.reg,这个就是我们需要添加到Windows的注册表中的文件,拷进U盘,重启进入Windows,但是这块对应的注册表我们是无法修改的,所以需要pstools打开注册表(这个也在后面的网盘里面),在cmd中打开pstool所在文件夹,输入psexec -s -i C:Windowsregedit.exe打开注册表,然后同样用编辑打开BTFix.reg,将对应的注册表区域照着BTFix.reg修改好,重启就完成了。
相关推荐
- 4万多吨豪华游轮遇险 竟是因为这个原因……
-
(观察者网讯)4.7万吨豪华游轮搁浅,竟是因为油量太低?据观察者网此前报道,挪威游轮“维京天空”号上周六(23日)在挪威近海发生引擎故障搁浅。船上载有1300多人,其中28人受伤住院。经过数天的调...
- “菜鸟黑客”必用兵器之“渗透测试篇二”
-
"菜鸟黑客"必用兵器之"渗透测试篇二"上篇文章主要针对伙伴们对"渗透测试"应该如何学习?"渗透测试"的基本流程?本篇文章继续上次的分享,接着介绍一下黑客们常用的渗透测试工具有哪些?以及用实验环境让大家...
- 科幻春晚丨《震动羽翼说“Hello”》两万年星间飞行,探测器对地球的最终告白
-
作者|藤井太洋译者|祝力新【编者按】2021年科幻春晚的最后一篇小说,来自大家喜爱的日本科幻作家藤井太洋。小说将视角放在一颗太空探测器上,延续了他一贯的浪漫风格。...
- 麦子陪你做作业(二):KEGG通路数据库的正确打开姿势
-
作者:麦子KEGG是通路数据库中最庞大的,涵盖基因组网络信息,主要注释基因的功能和调控关系。当我们选到了合适的候选分子,单变量研究也已做完,接着研究机制的时便可使用到它。你需要了解你的分子目前已有哪些...
- 知存科技王绍迪:突破存储墙瓶颈,详解存算一体架构优势
-
智东西(公众号:zhidxcom)编辑|韦世玮智东西6月5日消息,近日,在落幕不久的GTIC2021嵌入式AI创新峰会上,知存科技CEO王绍迪博士以《存算一体AI芯片:AIoT设备的算力新选择》...
- 每日新闻播报(September 14)_每日新闻播报英文
-
AnOscarstatuestandscoveredwithplasticduringpreparationsleadinguptothe87thAcademyAward...
- 香港新巴城巴开放实时到站数据 供科技界研发使用
-
中新网3月22日电据香港《明报》报道,香港特区政府致力推动智慧城市,鼓励公私营机构开放数据,以便科技界研发使用。香港运输署21日与新巴及城巴(两巴)公司签署谅解备忘录,两巴将于2019年第3季度,开...
- 5款不容错过的APP: Red Bull Alert,Flipagram,WifiMapper
-
本周有不少非常出色的app推出,鸵鸟电台做了一个小合集。亮相本周榜单的有WifiMapper's安卓版的app,其中包含了RedBull的一款新型闹钟,还有一款可爱的怪物主题益智游戏。一起来看看我...
- Qt动画效果展示_qt显示图片
-
今天在这篇博文中,主要实践Qt动画,做一个实例来讲解Qt动画使用,其界面如下图所示(由于没有录制为gif动画图片,所以请各位下载查看效果):该程序使用应用程序单窗口,主窗口继承于QMainWindow...
- 如何从0到1设计实现一门自己的脚本语言
-
作者:dong...
- 三年级语文上册 仿写句子 需要的直接下载打印吧
-
描写秋天的好句好段1.秋天来了,山野变成了美丽的图画。苹果露出红红的脸庞,梨树挂起金黄的灯笼,高粱举起了燃烧的火把。大雁在天空一会儿写“人”字,一会儿写“一”字。2.花园里,菊花争奇斗艳,红的似火,粉...
- C++|那些一看就很简洁、优雅、经典的小代码段
-
目录0等概率随机洗牌:1大小写转换2字符串复制...
- 二年级上册语文必考句子仿写,家长打印,孩子照着练
-
二年级上册语文必考句子仿写,家长打印,孩子照着练。具体如下:...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- wireshark怎么抓包 (75)
- qt sleep (64)
- cs1.6指令代码大全 (55)
- factory-method (60)
- sqlite3_bind_blob (52)
- hibernate update (63)
- c++ base64 (70)
- nc 命令 (52)
- wm_close (51)
- epollin (51)
- sqlca.sqlcode (57)
- lua ipairs (60)
- tv_usec (64)
- 命令行进入文件夹 (53)
- postgresql array (57)
- statfs函数 (57)
- .project文件 (54)
- lua require (56)
- for_each (67)
- c#工厂模式 (57)
- wxsqlite3 (66)
- dmesg -c (58)
- fopen参数 (53)
- tar -zxvf -c (55)
- 速递查询 (52)