dell 7559 10 14 4 黑苹果

参考链接: Dell 7559 安装10.14GM教程(i5+UEFI)

安装10.14.3链接: Dell-7559-10.14.3

  • 最近出了10.14.4, 忍不住升级了一波,结果黑屏….好吧,一怒之下,直接重装,就是这么霸气!
  • 好吧,废话少说,先看看效果然后再决定往下看

  1. 声卡完美,耳机自动切换,笔记本快捷键,F1静音,F2调低声音和F3调高声音

  2. 背光可调,也就是所谓的小太阳,笔记本快捷键Fn+F1Fn+F2

  3. USB3.0驱动成功

  4. 蓝牙可用,可关闭打开

  5. 睡眠可用,电量正常显示

  6. 摄像头可用,使用mac自带的Photo Booth检测

  7. 独显已经屏蔽

  8. 可变频,测试软件Intel Power Gadgetcpu-s,这两个软件我已经下载好放在附件中了

0x00 电脑配置

  • CPU: i7-6700HQ
  • 内存: DDR3L 1600MHz *2
  • 硬盘: 128G+1T
  • 显卡: GTX960M 4G + Intel HD Graphics 530
  • 声卡: ALC256
  • BIOS版本:1.2.8

0x01 BIOS准备

  1. 如果cpu是i5的,则需要去官网下载1.0.1的BIOS版本刷入,我是i7,所以不用管

  2. 更改BIOS设置如下

      - 恢复BIOS默认设置
      - AHCI mode 选择 SATA
      - 关闭 VT for direct I/O
      - 关闭 Advanced Battery Charging
      - 关闭 Secure boot
      - 关闭 SupportAssist System Resolution
      - 关闭 Firmware TPM

0x02 系统安装

  1. 下载macOS Mojave镜像: 黑果小兵】macOS Mojave 10.14.4 18E226 正式版 with Clover 4903原版镜像

  2. 检查下载的系统的md5是否是下载链接处提供的ee923768b29194efc704bcf34d7f9fd8

    • windows下,使用certutil命令

      certutil -hashfile 系统镜像 MD5
    • mac下使用md5

      md5 系统镜像
  1. 如果在windows下,则使用transmac将镜像写入U盘,如果在mac上,则使用balenaEtcher将镜像写入U盘

    • 使用transmac将镜像写入U盘:先选择Format Disk for Mac格式化为Mac格式,然后选择Restore with Disk Image将镜像写入U盘

    • 使用balenaEtcher将镜像写入U盘:傻瓜式操作,选择下载的系统镜像,选择U盘,然后点击Flash,等待即可

  2. 在windows下,使用Diskgenius,mac下使用Clover Configurator挂载U盘的EFI分区,我们需要修改一下config.plist,将原来默认的config.plist重命名成config_bak.plist,然后找到有530字眼的config文件,将其重命名为config.plist

    ps:如果你的配置以及Bios版本和我的一致,先删除U盘中的CLOVERE,然后你可以直接将附件中的最终的CLOVER重命名成CLOVER,然后放到U盘的EFI分区里面,当然,不能保证可以进入系统!最好还是跟我教程,自己一步步安装!

  3. 然后可以拿着这个U盘启动盘去装系统了,具体的如何安装系统以及将启动U盘的CLOVER放在本地的EFI下的步骤这里略过,如果上面的操作正常,安装完成后是可以进入到mac系统的

0x03 驱动安装

  1. Clover Configurator挂载本地EFI,进入/EFI/CLOVER/kexts/Other,移除多余的驱动,以及增加一些必备的驱动.

    原来的如下:

    修改后如下: 下面增加的驱动,都可以在下面Backup文件夹找到, 如果找不到,就去最终的clover那里找

  2. Other下的驱动可以生效, 打开/EFI/CLOVER/config.plist,在System Parameters->Inject Kexts改成Yes,然后保存

  3. 移除键鼠标驱动, 防止与Other下的鼠标驱动ApplePS2SmartTouchPad.kext冲突, 终端输入:

     sudo rm -rf /System/Library/Extensions/AppleACPIPS2Nub.kext
  4. 安装Clover_v2.4k_r4901.pkg,这个很重要,需要自定义安装RC Scripts,不然可能无法保存背光

  5. 重启准备进行dsdtssdt制作

0x04 DSDT和SSDT文件制作

如果你对BIOS版本和我的一样,那么直接用我CLOVER/ACPI/patched文件夹里面的文件即可,也就是说不用看这节的内容了.需要说明的是,一般来说,不同BIOS版本的文件不能通用,容易出错, 从而进不去系统

前期准备

  1. 开机选择Mac图标,按下F4,所需文件会自动出现在EFI/Clover/ACPI/origin文件夹

  2. 使用Clover Configurator加载引导分区EFI,如下图

  3. EFI/Clover/ACPI/下的origin文件夹复制到桌面

  4. 复制附件中的iaslrefs文件至桌面的origin文件夹

  5. 终端输入:

     cd ~/Desktop/origin
     sudo cp iasl /usr/bin
     iasl -da -dl -fe refs.txt DSDT.aml SSDT*.aml

    将会有****.dsl文件创建于origin文件夹,如下图

DSDT文件制作

注意每改一下,都要Compile一下,查看是否有error,修复它,不管warning

  1. 使用MaciASL.app打开DSDT.dsl文件

  2. 点击Compile,出现4个error,都是PARSEOP_EXP_MULTIPLY错误,双击跳转到error位置,删掉这四行即可,如果遇到其他错误自行百度

  3. 查找HECIIMEI替代;查找HDASHDEF替代,

    然后再Compile一下,不用管Warnings,没有Errors即可

  4. 点击Patch,在RehabMan Laptop下,查找到以下项目,单击后按Apply

     -[syn] Rename _DSM methods to XDSM
     -[Audio] Audio Layout 3
     -[bat] Dell Inspiron 15-7xxx
     -[sys] Fix _WAK Arg0 v2 
     -[sys] Fix Mutex with non-zero SyncLevel
     -[sys] HPET Fix
     -[sys] IRQ fix
     -[sys] RTC Fix
     -[sys] Skylake LPC
     -[sys] SMBUS Fix
     -[usb] USB3_PRW 0x6D Skylake (instant wake)
    • 下面以[syn] Rename _DSM methods to XDSM为例,点击Patch,选择_RehabMan Laptop(这个名字是自己取的,只要Patch源是 http://raw.github.com/RehabMan/Laptop-DSDT-Patch/master 即可)

      我放在附件中的MaciASL是最新版本的,已经包含了RehabMan Laptop的源,如下图.如果你发现点击Patch之后显示空白,则说明网络不好,要么等一会,要么科学上网.

    • 选择[syn] Rename _DSM methods to XDSM之后,等一会,然后点击Apply,然后再等一会,指导右边上下两个框框都没有东西了,说明替换成功

      ps:这里多说一句,如果你是程序员的话,应该明白,这个本质就是通过正则匹配,然后替换成指定内容而已,当然这个具体为什么替换成这些内容,只有问RehabMan大佬了

  5. 查找layout,并将3替换为13

  6. 点击Compile,不管Warnings,有error就修复

  7. 接下来屏蔽独显: 开头处添加

     External (_SB_.PCI0.PEG0.PEGP._PS3, MethodObj)
     External (_SB_.PCI0.PEG0.PEGP._PS0, MethodObj)
     External (_SB_.PCI0.PEG0.PEGP._OFF, MethodObj)
     External (_SB_.PCI0.PEG0.PEGP._ON, MethodObj)
     External (_SB_.PCI0.PEG0.PEGP.SGOF, MethodObj)
     External (_SB_.PCI0.PEG0.PEGP.SGON, MethodObj)

    搜索_WAK,并在其之前添加

     Method (M_ON, 0, NotSerialized)
         {
             If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._ON))
             {
                 \_SB_.PCI0.PEG0.PEGP._ON()
             }
             If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._PS0))
             {
                 \_SB_.PCI0.PEG0.PEGP._PS0()
             }
             If (CondRefOf (\_SB_.PCI0.PEG0.PEGP.SGON))
             {
                 \_SB_.PCI0.PEG0.PEGP.SGON()
             }
         }
    
     Method (M_OF, 0, NotSerialized)
         {
             If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._OFF))
             {
                 \_SB_.PCI0.PEG0.PEGP._OFF()
             }
             If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._PS3))
             {
                 \_SB_.PCI0.PEG0.PEGP._PS3()
             }
             If (CondRefOf (\_SB_.PCI0.PEG0.PEGP.SGOF))
             {
                 \_SB_.PCI0.PEG0.PEGP.SGOF()
             }
         }

    如下图

    搜索_WAK,添加M_OF(),如下图

    搜索_PTS,添加M_ON(),如下图

    搜索Method (_INI, 0, Serialized),并在图示位置添加M_OF()

  8. 点击Compile,检查有无错误,无错误则选择File->Save as...->ACPI Machine Language Binary格式保存至桌面,有错误则从头再来

  9. 拷贝制作的DSDT.aml文件至引导分区EFI/Clover/ACPI/patched

SSDT-5.aml制作

  1. 打开SSDT-5.dsl,先点Compile,没有error之后,再点击patch,选择[igpu] Rename GFX0 to IGPU 然后点击Apply,同理另存为ACPI Machine Language Binary格式保存至桌面,如下两个图

  2. 拷贝制作的SSDT-5.aml文件和附件中SSDT-PNLF.amlSSDT-UIAC.aml至引导分区EFI/Clover/ACPI/patched

制作SSDT.aml

  • 打开终端,输入下方两条指令
curl -o ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/Beta/ssdtPRGen.sh
chmod +x ssdtPRGen.sh
  • 如果是i7 6700HQ使用
./ssdtPRGen.sh -p 'i7-6700HQ' -f 2600 -turbo 3500
  • 如果是i5 6300HQ使用
./ssdtPRGen.sh -p 'i5-6300HQ' -f 2300 -turbo 3200

根据提示选择yn

cp /Users/用户名/Library/ssdtPRGen/ssdt.aml /Users/用户名/Desktop/SSDT.aml

同理把SSDT.aml拷贝至引导分区EFI/Clover/ACPI/patched 至此你的patched文件夹应包含以下内容

然后重启即可

0x05 蓝牙不可关闭修复

总结起来就是,根据供应商ID,找到产品ID,然后正确修改产品ID

  1. 关于本机->系统报告->找到蓝牙的供应商ID和产品ID

     供应商 ID:   0x8087
     产品 ID:    0x0A2A
  2. 转换为10进制

     供应商 ID:    32903
     产 品 ID:    2602
  3. 编辑/System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/Contents/Info.plist文件,搜索 IOKitPersonalities,然后修改idVendor值为32903idProduct的值为2602如下:
    原来的如下

         <key>IOKitPersonalities</key>
         <dict>
             <key>Broadcom2045FamilyUSBBluetoothHCIController_D</key>
             <dict>
                 <key>CFBundleIdentifier</key>
                 <string>com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport</string>
                 <key>IOClass</key>
                 <string>BroadcomBluetoothHostControllerUSBTransport</string>
                 <key>IOProviderClass</key>
                 <string>IOUSBHostDevice</string>
                 <key>idProduct</key>
                <integer>33292</integer>
                 <key>idVendor</key>
                 <integer>1452</integer>

    修改后如下

         <key>IOKitPersonalities</key>
         <dict>
             <key>Broadcom2045FamilyUSBBluetoothHCIController_D</key>
             <dict>
                 <key>CFBundleIdentifier</key>
                 <string>com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport</string>
                 <key>IOClass</key>
                 <string>BroadcomBluetoothHostControllerUSBTransport</string>
                 <key>IOProviderClass</key>
                 <string>IOUSBHostDevice</string>
                 <key>idProduct</key>
                 <integer>2602</integer>
                 <key>idVendor</key>
                 <integer>32903</integer>
             </dict>
  4. 使用Kext Utility修复权限和重建缓存即可

  5. 效果如下,可开启,可关闭

0x06 耳机爆音修复

  1. 进入附件的ALCPlugFix目录

  2. 双击install双击自动安装.command

  3. Clover Configurator打开EFI/Clover/config.plist,切换到Boot,在Custom Flags添加-lilubetaall -alcbeta

  4. 切换到Devices标签,Audio下的Inject选择13

    其实这一步操不操作没关系,因为我们已经在DSDT.aml中指定了

  5. 重启

0x07 触摸板

ApplePS2SmartTouchPad.kext的作者已经不更新多年了, 本人装了这个驱动, 虽然触摸板上可以看到手势,但是却一个也用不了… …所以下面是讲怎么安装RehabMan的触摸板驱动VoodooPS2Controller.kext的, 当然,如果你嫌麻烦,直接下载VoodooPS2Controller.kext放到Other下,然后重启一波就行!

  1. 安装指导链接 https://github.com/RehabMan/OS-X-Voodoo-PS2-Controller/wiki/How-to-Install

  2. 软件下载链接 https://bitbucket.org/RehabMan/os-x-voodoo-ps2-controller/downloads/

  3. /S/L/E/L/E中删除不兼容的kexts:

     sudo rm -rf /System/Library/Extensions/AppleACPIPS2Nub.kext
     sudo rm -rf /System/Library/Extensions/ApplePS2Controller.kext
     sudo rm -rf /System/Library/Extensions/ApplePS2SmartTouchPad.kext
     sudo rm -rf /Library/Extensions/AppleACPIPS2Nub.kext
     sudo rm -rf /Library/Extensions/ApplePS2Controller.kext
     sudo rm -rf /Library/Extensions/ApplePS2SmartTouchPad.kext
  4. 安装VoodooPS2Controller.kext(10.11及更高版本):

     cd directory-to-where-your-unzipped-download-is
     sudo cp -R Release/VoodooPS2Controller.kext /Library/Extensions
  5. 重建内核缓存:

     sudo touch /System/Library/Extensions && sudo kextcache -u /
  6. 然后重启系统。

  7. 如果发现笔记本自带键盘windows键和alt键的功能交换了,则需要用到Karabiner交换windowsalt的功能

0x08 背光保存

  • 删除/EFI/CLOVER/drivers64UEFI/EmuVariableUefi-64.efi,然后重启两遍以上,即可保存背光亮度

0x09 其他的驱动

  • 其他的驱动里面的驱动拖到/EFI/CLOVER/kexts/Other里面
驱动名 驱动内容
Sinetek-rtsx.kext SD卡驱动,没测试过,不知道有没有用
BrcmFirmwareData.kext和BrcmNonPatchRAM2.kext和BrcmPatchRAM2.kext 蓝牙驱动
FakePCIID_Broadcom_WiFi.kext 无线网卡驱动
FakePCIID_Intel_HD_Graphics.kext 内置显卡驱动
FakePCIID_Intel_HDMI_Audio.kext HDMI_Audio驱动
FakePCIID.kext 没有这个,上面几个FakePCIID_xxx都无法正常工作
  • 这个给出蓝牙驱动FakePCIID系列的下载地址
https://bitbucket.org/RehabMan/os-x-brcmpatchram/downloads/
https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/

最后


   转载规则


《dell 7559 10 14 4 黑苹果》 冯文华 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
智慧树网课考试 智慧树网课考试
前两天博主网络通识课要期末考试啦, 不想百度谷歌, 于是找了一波接口, 还真被我发现有大佬已经写好接口了, 不说话, 上py #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date
下一篇 
010Editor V9.01学习版 010Editor V9.01学习版
V9.01 原文链接: https://www.52pojie.cn/thread-861486-1-1.html 将下面代码粘贴到 python在线运行 https://tool.lu/coderunner/ 上面运行 注意, usern
  目录