搞机有风险,数据需谨慎,大家好,这里是星辰云资源。眼前看到的,是来自陕西省的朋友邮寄过来,安装黑苹果系统的电脑,其实在邮寄之前,我已经远程帮他看过,一直进不去引导界面,安装黑苹果一般-V卡代码还好,直接连引导界面都进不去,连搞的机会都不给,检查了包裹,里有一个电脑包,一台电脑,还有一个电源。写这一篇文章也是为了给陕西省这位朋友之后自己折腾好研究,对于黑苹果来说,自己体验找淘宝的人或者找其他人装没啥问题,但是如果还是想自己研究的话,还是得要知道其中的原理。

这一台电脑不管是外观,还是配置,都有点上了年纪,几经波折,还是卡在不能进引导界面,原因是电脑不支持UFEI,并且还不支持GPT分区模式,发现这个问题后,我首先尝试过变色龙引导,变色龙能正常的进入到引导界面,但是不支持最新版的Mac系统apfs格式。我果断放弃了,接着尝试了oc模拟UEFI引导,也许oc引导太新了,对老机的支持不怎么友好,所以还是没能成功,尝试了很多种方式,最后还是用了比较大众的clover四叶草引导模拟uefi,终于进引导界面了,安装的系统为目前最新的10.15.4的版本,集成显卡通过注入仿冒ID驱动成功,有线网卡正常,声卡通过提取DSDT注入声卡补丁,配合ALC的仿冒声卡正常,且快捷键调节音量的大小可用,亮度滑块的功能也是通过注入了DSDT补丁实现,电池通过拆分16为8字段实现电池电量显示。正常使用没什么问题了。接下来我给大家介绍一下详细的安装步骤。还有驱动的一些问提吧

电脑配置

软件: 鲁大师 5.1020.1170.415
时间: 2020-04-26 18:32:15

--------[ 概览 ]----------------------------------------------------------------------------------

电脑型号 戴尔 Inspiron 5420 笔记本电脑
操作系统 Windows 10 专业版 64位 ( DirectX 12 )

处理器 英特尔 第三代酷睿 i5-3210M @ 2.50GHz 双核
主板 戴尔 01N2TY ( HM77 Express 芯片组 )
显卡 Nvidia GeForce GT 630M ( 戴尔 )/英特尔 HD Graphics 4000
内存 6 GB ( 三星 DDR3 1600MHz / 南亚易胜 DDR3 1600MHz )
主硬盘 三星 SSD 750 EVO 250GB ( 250 GB / 固态硬盘 )
显示器 LG LGD035B ( 14 英寸 )
光驱 TSSTcorp DVD+-RW SN-208BB DVD刻录机
声卡 Conexant SmartAudio HD @ 英特尔 Realtek ALC662 Audio Controller
网卡 英特尔 Centrino Wireless-N 2230 BGN

安装步骤(本次安装在Mac环境下操作)

1.系统选择10.15.4macOS Catalina 10.15.x 命令代码方法系统安装U盘制作
2.clover引导必须自己通过Mac系统环境自己安装,初次安装建议全部选择,如下图,之后在使用文章末尾的efi替换(clove pkg引导安装包链接),这一步主要是因为你自己安装会生产很多必要的隐藏文件,直接使用别人的efi会导致隐藏的文件丢失,所以,在使用该份efi时,请设置显示系统的隐藏文件(隐藏/显示方式参考此文,Mac系统如何显示隐藏文件

3.其余的就没什么需要注意的问题了,该电脑主要是无法进入引导界面。后面的安装都没什么问题(需要注意,不要随意打开或者自己配置config的文件,我自己测试的时候只要打开编辑保存过config.plist文件都会进不去系统,这或许与Clover Configurator.app版本有关系,自己研究时建议复制一份在打开修改研究)

驱动调试需注意的地方以及DSDT补丁源

因为很多人可能觉得DSDT比较复杂,这里我主要附上几个DSDT的补丁,还有电池拆分的补丁笔记,感兴趣的可以研究,人懒就直接用我提供的EFI吧,里面都有。关于从提取到编译的完整教程,可以参考此篇文章(小白也能看懂的入门教程DSDT/SSDT/ROM提取完整步骤编译拆分补丁除错实现笔记本电脑电池显示

--------[ 声卡DSDT补丁源 ]--------------------------------------------------------------------------------

into device name_hid PNP0000 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0100 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0B00 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0103 code_regex IRQNoFlags\s\(\)\n\s+\{.*\} removeall_matched;
into device name_hid PNP0103 code_regex Name\s\(([^,]+),\sResourceTemplate\s\(\).*\n\s+\{((?:.|\n)*)\}\) replace_matched
begin
Name (%1, ResourceTemplate()\n
{\n
    IRQNoFlags() { 0, 8, 11, 15 }\n
%2
})\n
end;

--------[ 亮度滑块DSDT补丁源 ]-------------------------------------------------------------------------

into_all device label PNLF remove_entry;
into definitionblock code_regex . insert
begin
Scope (_SB)\n
{\n
    Device (PNLF)\n
    {\n
        Name (_ADR, Zero)\n
        Name (_HID, EisaId ("APP0002"))\n
        Name (_CID, "backlight")\n
        Name (_UID, 10)\n
        Name (_STA, 0x0B)\n
    }\n
}\n
end;
into_all method code_regex Store\s+\(PNLF,\s+(.*)\) replaceall_matched begin Store(\\PNLF, %1) end;

--------[ 电池DSDT补丁源 ]--------------------------------------------------------------------------------

+ 加载 DSDT 文件到 MaciASL 并搜索 EmbeddedControl
+ DSDT中,您将找到以下单个 EC 域:OperationRegion (ECRM, EmbeddedControl, Zero, 0x0100)
+ DSDT 中,您将找到以下单个 EC 域:我们要搜索 'Field (ECRM'
+ 检查结构定义中的字段,找到大于 8 位的字段
  -  CTL1,   16, 
  -  FTAC,   16, 
  -  FSPD,   16, 
  -  CAP0,   16,
  -  RCP0,   16, 
  -  VOT0,   16,
  -  CRT0,   16, 
  -  BTM0,   16, 
  -  BST0,   16, 
  -  BRC0,   16,
  -  FCP0,   16,
  -  DCP0,   16,
  -  DVT0,   16, 
  -  MER0,   16, 
  -  MFD0,   16, 
  -  BSN0,   16, 
  -  MAS0,   16, 
  -  CAP1,   16, 
  -  RCP1,   16, 
  -  VOT1,   16, 
  -  CRT1,   16,
  -  BTM1,   16,
  -  BST1,   16, 
  -  BRC1,   16, 
  -  FCP1,   16, 
  -  DCP1,   16, 
  -  DVT1,   16, 
  -  MER1,   16, 
  -  MFD1,   16, 
  -  BSN1,   16, 
  -  MAS1,   16, 
#
into device label EC0 code_regex CTL1,\s+16, replace_matched begin DCOO,8,DCPP,8, end;
into device label EC0 code_regex FTAC,\s+16, replace_matched begin DCKK,8,DCFF,8, end;
into device label EC0 code_regex FSPD,\s+16, replace_matched begin DC04,8,DC03,8, end;
into device label EC0 code_regex CAP0,\s+16, replace_matched begin DC06,8,DC05,8, end;
into device label EC0 code_regex RCP0,\s+16, replace_matched begin DC02,8,DC07,8, end;
into device label EC0 code_regex VOT0,\s+16, replace_matched begin DC08,8,DC09,8, end;
into device label EC0 code_regex CRT0,\s+16, replace_matched begin DCMQ,8,DCMW,8, end;
into device label EC0 code_regex BTM0,\s+16, replace_matched begin DCME,8,DCMR,8, end;
into device label EC0 code_regex BST0,\s+16, replace_matched begin AAAA,8,AAAS,8, end;
into device label EC0 code_regex BRC0,\s+16, replace_matched begin AAAD,8,AAAF,8, end;
into device label EC0 code_regex FCP0,\s+16, replace_matched begin AAAG,8,AAAH,8, end;
into device label EC0 code_regex DCP0,\s+16, replace_matched begin AAAJ,8,AAAK,8, end;
into device label EC0 code_regex DVT0,\s+16, replace_matched begin AAAL,8,AAAQ,8, end;
into device label EC0 code_regex MER0,\s+16, replace_matched begin AAAW,8,AAAE,8, end;
into device label EC0 code_regex MFD0,\s+16, replace_matched begin AAAR,8,AAAT,8, end;
into device label EC0 code_regex BSN0,\s+16, replace_matched begin AAAY,8,AAAU,8, end;
into device label EC0 code_regex MAS0,\s+16, replace_matched begin AAAI,8,AAAO,8, end;
into device label EC0 code_regex CAP1,\s+16, replace_matched begin AAAP,8,AAAZ,8, end;
into device label EC0 code_regex RCP1,\s+16, replace_matched begin AAAX,8,AAAC,8, end;
into device label EC0 code_regex VOT1,\s+16, replace_matched begin AAAV,8,AAAB,8, end;
into device label EC0 code_regex CRT1,\s+16, replace_matched begin AAAN,8,AAAM,8, end;
into device label EC0 code_regex BTM1,\s+16, replace_matched begin AASA,8,AASS,8, end;
into device label EC0 code_regex BST1,\s+16, replace_matched begin AASD,8,AASF,8, end;
into device label EC0 code_regex BRC1,\s+16, replace_matched begin AASG,8,AASH,8, end;
into device label EC0 code_regex FCP1,\s+16, replace_matched begin AASJ,8,AASK,8, end;
into device label EC0 code_regex DCP1,\s+16, replace_matched begin AASL,8,AASQ,8, end;
into device label EC0 code_regex DVT1,\s+16, replace_matched begin AASW,8,AASE,8, end;
into device label EC0 code_regex MER1,\s+16, replace_matched begin BBBB,8,BBBQ,8, end;
into device label EC0 code_regex MFD1,\s+16, replace_matched begin BBBW,8,BBBR,8, end;
into device label EC0 code_regex BSN1,\s+16, replace_matched begin BBBT,8,BBBY,8, end;
into device label EC0 code_regex MAS1,\s+16, replace_matched begin BBBU,8,BBBI,8, end;
#
into method label _BIF code_regex \(\^\^PCI0\.LPCB\.EC0\.DCP0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.AAAJ,^^PCI0.LPCB.EC0.AAAK), end;
#
Object does not exist (B1B2)
into method label B1B2 remove_entry;
into definitionblock code_regex . insert
begin
Method (B1B2, 2, NotSerialized)\n
{\n
Return(Or(Arg0, ShiftLeft(Arg1, 8)))\n
}\n
end;
#
into method label _BIF code_regex \(\^\^PCI0\.LPCB\.EC0\.FCP0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.AAAG,^^PCI0.LPCB.EC0.AAAH), end;
into method label _BIF code_regex \(\^\^PCI0\.LPCB\.EC0\.DVT0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.AAAL,^^PCI0.LPCB.EC0.AAAQ), end;
into method label _BIF code_regex \(\^\^PCI0\.LPCB\.EC0\.BSN0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.AAAY,^^PCI0.LPCB.EC0.AAAU), end;
into method label _BST code_regex \(\^\^PCI0\.LPCB\.EC0\.CAP0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.DC06,^^PCI0.LPCB.EC0.DC05), end;
into method label _BST code_regex \(\^\^PCI0\.LPCB\.EC0\.VOT0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.DC06,^^PCI0.LPCB.EC0.DC05), end;
into method label _BST code_regex \(\^\^PCI0\.LPCB\.EC0\.CRT0, replaceall_matched begin (B1B2(^^PCI0.LPCB.EC0.DCMQ,^^PCI0.LPCB.EC0.DCMW), end;
# Fix Battery 0% Status
#10x as workaround for MaciASL bug...
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;
into_all all code_regex Mutex\s+\(([^,]*),\s+[^)]*\) replaceall_matched begin Mutex(%1, 0) end;

关于显卡:ig-platform-id为0x01660003;启用inject NVidia;SMBISO设置为;MacBookPro9,2,

关于声卡:Inject值输入13

其他的驱动都是些常用的驱动,就不一一介绍了

EFI引导下载

  • 隐藏内容
    本内容需权限查看
    • 普通: 9.9星币
    • 会员: 免费
    • 终身会员: 免费