3

7559黑苹果-10.15

0x00 题外话

前两天看到黑果小兵已经将Catalina的安装包搞好了, 结果下了一天也没下完... ... 昨天白天上班没空, 晚上回去终于有时间搞搞了... ...

但是因为最近感觉电脑变卡了, 我怀疑是我装了什么乱七八糟的东西导致的, 所以直接将原来的10.14.6卸载, 然后想着直接装Catalina.

结果用黑果小兵大佬的Catalina安装包, 一直卡着进不去安装... ...郁闷... ...Orz ... ...不想找bug了, 难道就没办法了吗?

不!! 恰好看到orange1206大佬在六月份已经升级安装成功了!!! 直接升级安装的!!!流弊!!!!

那还等啥, 不说了, 直接去黑果小兵找10.14.5的安装包: https://blog.daliansky.net/ma... , 别问为什么, 我好久前就下好了, 所以直接拿来用

注意了, 因为黑果小兵最新的安装包我无法使用, 所以, 本教程是在安装10.14.5之后, 直接升级10.15, 然后再修复驱动

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

安装10.14.6链接: Dell-7559-10.14.6

0x01 电脑配置

  • CPU: i7-6700HQ
  • 内存: DDR3L 1600MHz * 2
  • 硬盘: 128G+1T
  • 显卡: GTX960M 4G + Intel HD Graphics 530
  • 声卡: ALC256
  • BIOS版本:1.2.8
如果配置一样或者相似, 可以继续往下看了

0x02 最终的效果

  1. 声卡完美, 耳机自动切换, 除了插入的时候有电流声... ... 笔记本快捷键: F1静音,F2调低声音和F3调高声音

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

  3. USB3.0驱动成功

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

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

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

  7. 独显已经屏蔽

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

  9. iMessage可用, FaceTime没用过, 但是应该也行. 记住, 如果你想成功使用iMessage的话, 千万先别登录Apple ID

0x03 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

0x04 系统安装

  1. 下载macOS Mojave镜像: 【黑果小兵】macOS Mojave 10.14.5 18F132 正式版 with Clover 4928原版镜像
  2. 检查下载的系统的md5是否是下载链接处提供的371d9145484beaf0795d6b7d0d569fc3

    • windows下,使用certutil命令
    certutil -hashfile 系统镜像 MD5
    • mac下使用md5
    md5 系统镜像
  3. 如果在windows下,则使用transmac将镜像写入U盘,如果在mac上,则使用balenaEtcher将镜像写入U盘

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

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

  4. 在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分区里面,当然,不能保证可以进入系统!最好还是跟我教程,自己一步步安装!
  5. 然后可以拿着这个U盘启动盘去装系统了,具体的如何安装系统以及将启动U盘的CLOVER放在本地的EFI下的步骤这里略过,如果上面的操作正常,安装完成后是可以进入到mac系统的

    注意: 千万别登录appleid, 或者说任何的账号, 登录与否直接影响后面的iMessage能否正常使用

0x05 升级Catalina

进入10.14.5 majove之后, 先将u盘的CLOVER放到本地的EFI下, 让我们可以拔掉u盘自己启动之后, 接下来就是升级clover以升级Catalina了

然后去https://github.com/Dids/clover-builder/releases下载5093版本的CLOVERX64.efi

然后替换本地EFI/CLOVER中的CLOVERX64.efi, 这样就完成了clover的升级了

然后我们就可以打开系统偏好设置-> 软件更新, 等一会, 它就会让我们更新Catalina, 直接下载更新, 驱动什么的等更新完Catalina之后再说

更新的过程中会重启几次, 记得选择有Install字样的那个选项

如果你正常操作的话, 运气不错话, 应该和我一样, 进入了Catalina系统了, 所以接下来就是驱动的安装了

0x06 驱动安装

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

    原来的如下:

    修改后如下: 下面修改或者增加的驱动, 去最终的clover那里找. 注意, 其中AppleALC_v1.4.2, WhateverGreen_v1.3.3, Lilu_v1.3.8我已经从官网升级到了最新版, 都放在了最终的clover

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

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

    sudo rm -rf /System/Library/Extensions/AppleACPIPS2Nub.kext
  4. 重启准备进行dsdtssdt制作

0x07 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/RehabMa... 即可)

      我放在附件中的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文件夹应包含以下内容

然后重启即可

0x08 蓝牙不可关闭修复

总结起来就是,根据供应商ID,找到产品ID,然后正确修改产品ID
  1. 关于本机->系统报告->找到蓝牙的供应商ID和产品ID

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

    供应商 ID:    32903
    产 品 ID:    2602
  3. 打开Finder, 同时按下windows+Shift+G或者Alt+Shift+G, 在弹出的框框输入 /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/Contents/, 点击前往

    Info.plist文件拖到桌面, 编辑它

    搜索 Broadcom2045FamilyUSBBluetoothHCIController_D, 然后修改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. 接下来打开一个终端, 输入如下命令, 先解锁S/L/E权限, 然后再将Info.plist复制替换原来的文件

    sudo su
    sudo mount -uw /
    killall Finder
  5. 使用Kext Utility修复权限和重建缓存即可

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

0x09 耳机爆音修复

  1. 进入附件的ALCPlugFix目录
  2. 先用上面提到的解锁S/L/E权限的命令, 然后双击install双击自动安装.command
  3. Clover Configurator打开EFI/Clover/config.plist,切换到Boot,在Custom Flags添加-lilubetaall -alcbeta

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

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

  5. 重启

0x10 windows和alt功能交换

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

ps: 装了这个软件之后, 发现可以用Fn+F1, Fn+F2调出小太阳了~~~

0x11 背光保存

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

0x12 其他的驱动

  • 其他的驱动里面的驱动拖到/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/
  • 关于驱动的说明: http://bbs.pcbeta.com/viewthr...

0x13 usb网卡

之前搞到一个802.11 的usb网卡, 我的笔记本现在用不了wifi(主要是穷...), 想着大佬肯定有驱动, 结果一找, 果然有, 装好后直接可以用了, usb网卡驱动地址: https://github.com/chris1111/...

0x14 iMessage的修复

注意: 如果到这个时候, 你还没有登录任何账号, 那么你的成功机会应该会蛮大的~~

找到Clover的config.plist, 使用Clover Configurator打开, 选择左侧SMBIOS, 先勾选Trust, 然后使用右侧上下箭头选择适合自己的SMBIOS型号, 这里我选的是MacBookPro13,3, 如下图

复制 Serial Number前往 Apple官网查询序列号 , 如果显示有购买日期和机型等保修信息, 说明这个序列号别人在用, 点击 Generate New生成新的Serial Number, 直到出现下图提示为止

选择 Clover Configurator 左侧 System Parameters, 生成一个UUID

复制生成等UUID粘贴到SMBIOSSmUUID 里, 使用Win+s保存

复制SMBIOS里的 Board Serial Number, 粘贴到Clover Configurator 左侧 Rt VariablesMLB 里, 保存之后, 点击ROM右边的Generate, 确保下方三码和自己刚刚操作生成的一致, 然后保存重启即可

重启之后, 可以打开系统偏好设置, 来登录自己的Apple ID了, 登录完成之后, 打开IMessage看看, 应该可以使用了~~~

如果不行的话, 千万憋找我~~~

最后


江南小虫虫
15 声望2 粉丝

引用和评论

0 条评论