【1.6更新】黑苹果(Hackintosh)Intel & AMD 全面新手引导(配置+安装)

您所在的位置:网站首页 苹果重启数据userspace 【1.6更新】黑苹果(Hackintosh)Intel & AMD 全面新手引导(配置+安装)

【1.6更新】黑苹果(Hackintosh)Intel & AMD 全面新手引导(配置+安装)

2023-10-24 17:54| 来源: 网络整理| 查看: 265

本帖最后由 正义羊 于 2021-1-7 15:52 编辑

Changelog:

2021.1.5:新年快乐!同步OpenCore Bootloader 0.6.5发行版重要内容,新增macOS Big Sur下内屏4K 60Hz的解决方案,新增笔记本外接输出解决方案,新增Intel I225-V驱动方案,补充部分内容

2020.12.8 同步OpenCore Bootloader 0.6.4发行版重要内容,修正部分语法与解释,补充内容

2020.11.24:补全相关内容,修正一些错误

2020.11.3同步OpenCore Bootloader 0.6.3 发行版重要内容,以及修正部分错误,新增RTC唤醒问题方案,新增第三方TRIM开启方案,重新排版(Special Thanks to @xjn819)

2020.11.2部分错误修正以及补全(SpecialThanks to @xjn819)

2020.10.1修正部分内容

IntelIcelake Special Hackintosh Guide is Coming Soon

有时间再写完QAQ

「长期更新 经验分享 如有错误 烦请纠正」

引导间存在不同差异,为了及时更进,本教程使用Acidanthera团队开发的OpenCore Bootloader(OC引导)进行主要配置

演示机配置

处理器:英特尔酷睿 i5-8500

主板:华硕 ROGSTRIX B360M

内存:科赋雷霆8+8双通道 3200Mhz

显卡:华硕 ROGSTRIX RX580 2048SP(由于5802048SP未被系统识别导致无法驱动,故刷为570使用)

散热:酷冷至尊 T610P

声卡:华硕 ROGSupremeFX ALCS1220A

网卡:英特尔 I219V V7 + BCM943602CDP(拆机卡)

鼠标:罗技 G ProWireless

键盘:阿米洛樱花键盘

概念

从苹果采用 Intel 的处理器之后,macOS 被黑客破解之后可以安装在 PC 上,从而出现了一大批未购买苹果机而使用苹果操作系统的机器,这种就被称为黑苹果(Hackintosh)

(转自百科)

引导的选择

目前市面上主要有以下几种引导程式

OpenCoreBootloader(极为先进的引导程式,且目前被大多数人使用)

CloverBootloader(老牌的引导程式,积累了大多数的快捷补丁)

ChameleonBootloader(以前被Legacy+MBR的老机型用户青睐,目前逐渐被OpenCore取代)

Ozmosis(不做赘述)

由于引导程式的多样性,本篇仅围绕目前最潮流的OpenCore引导进行讲解

了解 OpenCore

我们可以从 OpenCore 找到引导的源码和已发布内编译完成的压缩包

(演示版本:OpenCore 0.6.5 Release)

下载完成后,解压压缩包,里面是这样的结构(忽略 IA32 文件夹,只解释 X64 文件夹里的 EFI 文件夹)

Docs

里面含有 OpenCore 的更新日志,以及示例的配置文件(也是我们需要用到的),以及示例的 SSDT 补丁等

EFI(位于 X64 下)

OpenCore 引导的主结构,也是重中之重

Utilities

一些附加的脚本

我们将 Docs 里的 Sample.plist 改名为 config.plist,并放在 EFI/OC 下,这就是 EFI 的完整结构

ACPI

OpenCore 存放 ACPI 补丁的目录,将 ACPI 补丁放置在里面,并在配置文件中选择加载(如 SSDT-EC.aml、SSDT-USBX.aml)

BootStrap

OpenCore BootStrap 启动方式的目录(如在配置文件中设置 BootStrap 启动则需要)

Drivers

OpenCore 启动时加载的驱动文件,将驱动放置在里面,并在配置文件中选择加载(如 HFSPlus.efi、OpenRuntime.efi)

放置必需驱动:OpenRuntime HFSPlus(加载 HFS 文件系统时需要,常见于系统安装盘)

Kexts

OpenCore 引导系统时加载的系统驱动,将驱动放置在里面,并在配置文件中选择加载(如 VirtualSMC.kext、Lilu.kext)

放置必需驱动:Lilu、VirtualSMC 或 FakeSMC

Resources

OpenCore 资源目录,可放置主题/音频等资源,并选择加载(需要 AudioDxe.efi、OpenCanopy.efi)

Tools

OpenCore 引导的可选小工具,如 ResetNVRAM.efi、CFGLock.efi

OpenCore.efi

OpenCore引导程序

config.plist

OpenCore配置文件

配置 OpenCore

可使用的配置工具:

OpenCore Configurator(简称 OCC,小白强推)

Propertree(Github 开源的编辑工具,有一定经验者推荐)

OpenCoreQTEditor(采用 Qt 框架开发的一款爱好者自制工具,个人试用后觉得还不错,支持 Win/Mac)

Xcode(不做赘述)

(这里采用 OpenCore Configurator 进行配置讲解)

我们用 OCC 打开 config.plist

ACPI

我们可以看到,ACPI 配置加载 SSDT 补丁的地方,已经为我们预留好了一些补丁的加载位置,我们只需要选择对应补丁的启用框打勾,并把文件放在 ACPI 目录下即可

简略说明:

SSDT-PLUG:CPU 加载 X86 原生电源管理所需的 SSDT 补丁,除英特尔二三代不需要外,基本都需要。

SSDT-EC:处理 EC 用

SSDT-EC0:AMD 部分需要

SSDT-USBX:加载 USBX 供电用

SSDT-EC-USBX:上面两个的集合

SSDT-CPUR:AMD B550 X570 需要

SSDT-PNLF:背光修补

SSDT-AWAC:如果 300 系及以上的主板 BIOS 中未含有切换 AWAC/Legacy RTC 时钟计时的选项,则需要使用该补丁,禁用 AWAC,仿冒 RTC(华硕一般都有,如果没有,使用这个可能还需要 RTC Fix 补丁,OCC 中在 ACPI 下补丁处即可找到对应补丁)

SSDT-RTC0:和上面一起

SSDT-PMC:300 系加载 AppleEFINVRAM 用(马甲板不需要,如 Z370)

SSDT-SBUS:修复 400 系 SBUS 总线管理用,B360 用了会无法睡眠

SSDT-DNVMe:屏蔽 NVMe 设备(如硬盘、网卡)

SSDT-ULAC:USB Port 定制

ACPI下删除栏不用管(X 系列可能需要 Drop 一些 OEM 表)

补丁栏自行选用需要的

Fix RTC _STA bug:修复华硕/技嘉/华擎等机型的 RTC 问题

GPRW 改名:修复唤醒问题(阻断 USB 唤醒)

(笔记本可能需要 EC 改名和 _OSI 改名)

电池改名:匹配 BAT0 内容

OSI 改名:I2C 操作系统补丁

……

FadtEnableReset:主要用于老旧的硬件和部分的笔记本,也可以修复电源快捷键

NormalizeHeaders:清理 ACPI 头字段以修复导致的引导崩溃

RebaseRegions:重新定位 ACPI 内存区域(如加载完整 DSDT 可能需要开启)

ResetHwSig:将 FACS 表内的 HardwareSignature 的值重置为 0

ResetLogoStatus:适用于提供 BGRT 表但无法更新屏幕状态的固件

以上 5 个选项基本不用管

Booter

MmioWhitelist 处如果 Haswell 机型遇到 PCI 问题,可尝试开启(不讲解进阶方法,如定位 MMIO 区域等)

AllowRelocationBlock:允许通过重定位块引导 macOS(适用于没有可用的 Slide、不支持 KASLR 内存注入、安全模式等情况下 slide 值强制为 0)

AvoidRuntimeDefag:修复主板环境和服务(必须开启)

DevirtualiseMmio:释放 64 至 256 兆字节的内存,对于内存分配有帮助,如无效则使用 MmioWhitelist 方法(Z390、10 代机型如果遇到问题尝试开启)

DisableSingleUser:关闭单用户模式

DisableVariableWrite:防止 macOS 写入 NVRAM 区域,没有原生 NVRAM 的可以通过这个模拟 NVRAM(nvram.plist)

DiscardHibernateMap:睡眠相关,修复老旧机型的内存映射 BUG

EnableSafeModeSlide:在安全模式下使用 Slide(一般开启)

EnableWriteUnprotector:开放对 UEFI 服务的写入权限(一般开启)

ForceExitBootServices:老主板无法使用内存寻址的时候可尝试开启

ProtectMemoryRegions:防止老旧机型的内存区域不被错误访问

ProvideCustomSlide:使用随机的不重复的 Slide 值(一般开启,当 OpenCore Debug 显示 You can disable ProvideCustomSlide 可将其关闭)

SetupVirtualMap:构建虚拟内存并映射(一般开启,10 代台式机型(Comet Lake)及 AMD 部分主板因 OVMF 兼容问题需关闭该选项)

ProtectSecureBoot:防止安全启动(Secure Boot)被写入

ProtectUefiServices:防止UEFI服务(UEFI Sevices)被覆盖(一般和 DevirtualiseMmio 一起开启,Z390 需要开启,10 代(CometLake)可单独开启)

SignalAppleOS:白果用的,能在非 macOS 操作系统同时启动 IGPU 和 EGPU

RebuildAppleMemoryMap:重构 macOS 兼容的内存映射,和 EnableWriteUnprotector 二选一,遇到问题尝试开启

SyncRuntimePermissions:对齐 MAT 表权限(Windows、Linux 引导遇到问题可尝试开启,确认是否支持 MAT)

ProvideMaxSlide:默认即可

DeviceProperties

配置 PCI 设备的参数,例如注入 IGPU 的 Framebuffer 数据、注入音频的设备 ID 和 Layout ID

PciRoot(0x0)/Pci(0x1f,0x3) 一般为内置声卡,可添加 layout-id

PciRoot(0x0)/Pci(0x2,0x0) 一般为内置显卡(核显-IGPU),可在这里注入 Framebuffer

Kernel

这里可以对内核作一些修改,包括注入驱动,对内核进行修补替换等

添加处可添加我们想加载的驱动(需放在EFI/OC/Kexts)

仿冒 CPU 处可仿冒对应的 CPU(macOS Big Sur Beta 6 开始支持 Comet Lake,仅为留档,无需理睬)

Cpuid1Data:EB060800 00000000 00000000 00000000

Cpuid1Mask:FFFFFFFF00000000 00000000 00000000

(来自Bugprogrammer)

DummyPowerManagement:和 NullCPUPowerManagement 类似,无原生电源管理的机型需使用(AMD 可用)

强制加载

特殊情况可能需要强制加载一些驱动(如 SecureBoot 值为 Disabled,需强制加载 itlwm 系驱动)

补丁

Ryzen 可在这里打对应的 Ryzen 专用内核补丁

华硕主板遇到重启卡 F1 SafeMode 问题可尝试以下补丁(推荐使用 RTCMemoryFix 框定区域修复)

AppleCpuPmCfgLock:如果 CFG Lock 状态为开启,则必须开启(Skylake 之前需和 AppleXcpmCfgLock 一起启用)

AppleXcpmCfgLock:如果 CFG Lock 状态为开启,则必须开启(Skylake 之后)

AppleXcpmExtraMsrs:无原生电源管理的英特尔 CPU 需开启(Pentium、Haswell-E、Broadwell-E 等)

AppleXcpmForceBoost:强制在 XCPM 模式下提供最高性能,部分至强CPU可用

CustomSMBIOSGuid:执行 SMBIOS 自定义模式下的 GUID 补丁(Dell 笔记本遇到序列号显示问题则开启)

DisableIoMapper:在 VT-D 中禁用 IOMapper 支持(如在 BIOS 内开启了 VT-D,则勾选)

ExtendBTFeatureFlags:替代 BT4LEContinuityFixup 驱动

DisableRtcChecksum:禁止 RTC 的校验和写入(58-59 范围)

ExternalDiskIcons:强制 AHCI 所有磁盘为内置磁盘(如果遇到硬盘反转(内置―>外置,外置―>内置)尝试开启)

ForceSecureBootScheme:强制使用 x86 方案进行 IMG4 验证(当启用 SecureBootModel 且在虚拟机使用时开启)

IncreasePciBarSize:将 PCI 带宽大小扩充至 4GB

LapicKernelPanic:禁用LAPIC中断时导致的内核崩溃(HP笔记本需开启)

LegacyCommpage:老旧主板使用SSSE3需开启

PanicNoKextDump:显示驱动崩溃信息(调试用)

PowerTimeoutKernelPanic:禁用电源状态超时导致的内核崩溃(遇到睡眠崩溃或重启的问题可尝试开启)

ThirdPartyDrives:修补 AHCI 驱动,开启第三方 SATA 硬盘的 TRIM 和休眠功能

XhciPortLimit:修补 USB 驱动,解除 USB 端口超过 15 个的限制,定制 USB 后如果超过 15 个 USB 端口则保持开启

DisableLinkeditJettison:修复 Lilu 的兼容性问题,解决 macOS Big Sur 启动卡 PCI 的问题

Misc

Boot

ConsoleAttributes:启动菜单的文字颜色

HibernateMode:休眠模式(台式建议 None,笔记本建议 Auto)

HideAuxiliary:隐藏启动菜单辅助项(恢复模式、重置NVRAM等,开启后可通过启动菜单内按空格键显示辅助项)

PickerVariant:启动菜单的自定义图标包

PickerAttributes:启动界面属性(默认即可)

PickerAudioAssist:菜单辅助语音

PollAppleHotKeys:模拟苹果快捷键(如 Command+V 进入调试模式)

ShowPicker:显示启动菜单(取消勾选时不显示引导项)

TakeoffDelay:快捷键延迟

Picker Mode:

Built In 为默认的显示模式

External 为外置资源的显示模式(可加载 Resources 主题)

Apple 为白果用

Timeout:

到倒计时结束时进入默认指定到系统

0 为不开启

1-Max 为开启

Debug

DisplayDelay:屏幕调试输出延迟

DisplayLevel:屏幕调试输出等级

Target:屏幕调试输出目标

DisableWatchDog:禁用 watchdog 服务

AppleDebug:调试日志

ApplePanic:内核崩溃日志

SysReport:在引导分区内生成系统报告

SerialInit:串口设备的初始化

Security

HaltLevel:默认即可

ExposeSensitiveData:暴露操作系统的敏感数据(UEFI 变量)

Scan Policy:

调整系统扫描规则

0 为全部显示

ApECID:苹果安全引导标识符

Vault:

如果不使用文件加密选 Optional

BootProtect:

None 为使用默认的引导启动方式

BootStrap 选项设置 EFI\OC\Bootstrap\Bootstrap.efi 的启动优先级最高,即开机自动接管启动 OpenCore

BootstarpShort:短引导选项,无法处理完整启动路径的固件可用(例如 Insyde)

DmgLoading:恢复映像的加载策略

PasswordHash:密码哈希值

PasswordSalt:密码加盐

AllowNVRAMReset:引导界面开启内置的 NVRAM 重置工具

AuthRestart:VirtualSMC 的身份验证重启

AllowSetDefault:允许使用 Ctrl+Enter 选择默认的启动项

EnablePassword:密码保护

SecureBootModel:选择 Disabled 即可(使用 Nvidia Web Driver、itlwm 需设为 Default,或强制加载)

BlacklistAppleUpdate:忽略更新苹果扩展固件的启动项(例如 MultiUpdater.efi)

BlessOverride

可在此设置单 EFI 多系统启动的引导(.efi)指定

\EFI\Microsoft\Boot\bootmgfw.efi 即为引导单 EFI 下的 Windows

Entries

自定义引导项

NVRAM

修改 NVRAM 内的数据

(主要修改 7C436110-AB2A-4BBB-A880-FE41995C9F82 的内容)

SystemAudioVolume:修改系统声音大小(0-100)

boot-args:启动参数(我们最常用的就是 -v alcid=x -wegnoegpu,具体根据自己需求设置)

csr-active-config:

SIP 参数

00000000 开启 SIP

E7030000 关闭 SIP(10.15.x 及以下)

77000000 关闭 SIP(Big Sur 11.0)

prev-lang:kbd:

设置默认语言

默认为俄语

72753a3139343536 俄语

656e2d55533a30 英语

7A682D48616E733A323532 中文(zh-Hans:252)

nvda_drv:

开启 10.13.x Web Driver

nvda_drv 字符数值为 1 时即开启(推荐在 boot-args 里添加 nvda_drv_vrl=1)

LegacyEnable:非原生 NVRAM(模拟 NVRAM)需开启

LegacyOverwrite:重写变量

WriteFlash:允许把变量写入闪存

SMBIOS

这里不细讲,选自己适合的就行了

AdviseWindows:Windows 下 ESP 分区不在第一分区需开启

SpoofVendor:仿冒主板品牌商为 Acidanthera

ProcessType:仿冒 CPU,默认设为 0 即可(AMD Ryzen 或 ES 处理器可将其设为 Model 定义的值以显示具体核心数)

SystemMemoryStatus:默认即可

按照以下图片设置(Dell 机型需将 UpdateSMBIOSMode 设为 Custom)

UEFI

APFS

EnableJumpstart:开启内置的 APFS 驱动

HideVerbose:隐藏 APFS 驱动的调试日志

JumpstartHotPlug:支持含有 APFS 分区的设备的热插拔

GlobalConnect:在 APFS 加载期间执行完整的设备连接(针对 HP 机型)

UEFI 驱动

将我们想加载的驱动的名字写在里面如

并勾选连接驱动程序(Connect Driver)

ExitBootServicesDelay:在退出启动服务后添加延迟(以微秒为单位)

IgnoreInvalidFlexRatio:如果 MSR 0x194 区域被锁定则开启(Skylake 之前的机型如果未解锁 CFG 开启此项)

ReleaseUsbOwnership:分离 USB 控制器所有权,笔记本一般开启

RequestBootVarRouting:macOS 下启动磁盘内切换默认系统引导需开启

UnblockFsConnect:HP 机型遇到启动项加载问题则开启

DeduplicateBootOrder:如果启动方式选择 BootStrap,需开启(在 OpenCore BootLoader 0.6.5 中被移除)

TscSyncTimeout:TSC 同步相关,一般不使用,推荐使用 VoodooTSCSync 等驱动代替

至此,config.plist 配置结束

BIOS 设置

开启-Enabled

关闭-Disabled

XHCI Hand Off:开启

Above 4G Recoding:开启

CSM:关闭

Secure Boot:清除默认密钥

启动方式:Windows 8/10 UEFI

VT-D:关闭

Fast Boot:关闭

DVMT:128MB-256 MB(如核显设为加速用,可以设为最小值)

CFG Lock:关闭

ACPI Alarm:Legacy RTC

(以上为演示机 BIOS 设置,其他主板可能有相关调整)

写入映像

如果是从我的帖子里下载的 DMG 安装映像,使用 Etcher(已不推荐 TransMac)写入到 U 盘里,这里不作赘述

这里讲解下另一种写入方式

需要工具:

gibMacOS

我们可在这里选择我们想要下载的版本,如 10.15.6,也可以选择 C(Change Catalog)切换开发者版(Big Sur)

下载完成后,我们可以执行 MakeInstall.bat,选择 U 盘并写入(Windows),在 macOS 下我们可以直接使用BuildmacOSInstallApp.command 生成对应版本的安装程序

替换引导文件

在 macOS 下我们可直接使用 OCC 挂载 EFI 分区

在 Windows 下,我们可以使用 DiskGenius

找到我们 U 盘的 EFI 分区,并强制删除 EFI 文件夹,将修改好的 EFI 拖进去并确认(推荐使用 DiskGenius 原版,有些 DiskGenius 和谐版可能阉割了拖拽功能)

替换完成之后,我们就可以进入 OpenCore 尝试引导系统

引导 macOS

重启电脑,我们按下对应主板的引导菜单键(华硕为 F8)选择我们写好的U盘

我们选择 3 回车,等待跑码完成进入安装

进入安装界面后,我们选择磁盘工具

选择我们要格式化安装 macOS 的分区,并选择抹掉(也可直接选择整块硬盘格式化)

格式:APFS(机械硬盘推荐HFS+)

分区名:自己取

分区表:GUID

完成后,我们退出磁盘工具,进入安装 macOS

一路往下,等待安装

进度条走一会后,系统会重启,这时候引导界面会多出来一个启动项,我们选择那个回车即可

多次重启后,引导界面会出现我们在磁盘工具内格式化分区填写的名称的启动项,我们选择它,回车,等待进入系统

进入系统后,自行过开机向导(网络选择不连接网络,待进入系统连接)

安装后

完善驱动

我们需要驱动最基本的三卡(显卡、网卡、声卡),所以我们需要了解我们的设备型号

显卡(核心)

查看你的 CPU 对应的是什么核显

比如 i5-8500 UHD630

打开 config.plist,进入 DeviceProperties 栏,创建项 PciRoot(0x0)/Pci(0x2,0x0),在右处右键,选择预设值,如图

主界面是这样的

选择我们对应的版本,以及 CPU 架构,选择合适的显卡 ID(百度搜索 Intel 核显缓冲帧即有相应结果)并选择添加

如果遇到缓冲帧崩溃(PANIC)将 AAPL,ig-platform-id 内写入 11223344

进入系统,使用 Hackintool 修补显卡

选择生成补丁,并在左上角文件内选择导出 config.plist(笔记本内屏分辨率超过 1080P 可能需要勾选 DPCD 修补相关)

生成后,桌面上会出现一个 config.plist,我们打开它,进入 DeviceProperties

DeviceProperties

选中 PciRoot(0x0)/Pci(0x2,0x0) 右键,复制,并粘贴到你自己的 config.plist 相应位置即可

显卡(AMD,不包括ATI)

Polaris 架构(RX4xx-5xx)使用 WhateverGreen 驱动即可

专业卡(如 Radeon VII)& Navi(RX55xx-RX57xx)使用 WhateverGreen 驱动即可,并在 boot-args 中加入 agdpmod=pikera(解决 Navi 系显示黑屏,替换 board-id)

显卡(NVIDIA)

GTX6xx-7xx 部分显卡免驱(但可能会花屏)

不免驱但可驱动的卡使用 10.13.x(RTX 全系无法驱动,9xx-10xx 可驱动)

可在 Web Driver 内下载到系统对应版本的驱动(一定要对应系统版本)安装驱动后,在 NVRAM 下 7C436110-AB2A-4BBB-A880-FE41995C9F82 处加入 nvda_drv 项,并填写字符值为 1

如图

声卡(Realtek ALC)

瑞昱(Realtek)ALC 系大部分可通过 AppleALC 注入对应 Layout ID 输出声音,笔记本可能需要定制 codec 数据

使用 AppleALC,并在 Layout ID 处找到你主板声卡对应的 Layout ID 并在 boot-args 中加入 alcid=x(如对应的 Layout ID 为 5 则 alcid=5,如果出现多个 ID,一个一个尝试,如果 ID 为 5-10,尝试 5、6、7、8、9、10)

有线网卡(Realtek)

寻找对应瑞昱(Realtek)有线网卡的驱动,如 RTL8111、RTL8125、RTL8100,如使用中存在网络无法连接问题,则可能需要更改如下选项

配置改为手动,速度改为路由器速率(如果路由器速率为 1000M,就选 1000M;如果路由器速率为 100M,就选 100M),全双工,保存应用即可联网

有线网卡(Intel)

Intel 有线网卡尝试使用 IntelMausi,推荐使用目前 Acidanthera 接管的 IntelMausi,如果无法驱动则不在支持范围内

I225-V 驱动方案: Intel I225-V 网卡理论在 macOS Catalina 以上免驱,需仿冒为I225-LM以使用系统自带的原生驱动进行驱动 打开Hackintool,选择PCIe选项 选择 Intel I225-V 网卡,右键选择 Copy Device Path 在 config.plist下DeviceProperties 内添加刚刚复制的 Device Path,在对应路径下添加 device-id 项,值为 F2150000,类型为 DATA 完成后保存重启即可

有线网卡(Atheros)

Atheros 有线网卡尝试使用 AtherosE2200Ethernet

无线网卡(Broadcom)

博通(Broadcom)系苹果拆机网卡无需另外驱动,插上可直接使用

博通(Broadcom)系非苹果拆机网卡(如 DW1820A)则需要 AirportBrcmFixup 驱动(将 4360_Injector 的 MaxKernel 值写为 19.9.9,大陆用户推荐加入 brcmfx-country=#a 到 boot-args 以解锁全部频段)

无线网卡(Intel AC 系 AX 系)

1.尝试使用 itlwm 进行驱动(由国人开发),并使用 HeliPort 连接网络

2.尝试使用 AirportItlwm 进行驱动(由国人开发),并使用网络中的 WIFI 设置连接网络

无线网卡(USB 系)

如果是从网上购买的 USB 网卡,尝试安装 Wireless USBAdapter,驱动后连接网络即可(可能需要 Windows 下安装驱动后热启动到 macOS 才可使用)

蓝牙(Broadcom)

博通(Broadcom)系苹果拆机网卡的蓝牙无需另外驱动,插上可直接使用

博通(Broadcom)系非苹果拆机网卡(如DW1820A、DW1560)的蓝牙大部分无需另外驱动,如果识别不到蓝牙,则需要 BrcmPatchRAM 驱动

蓝牙(Intel)

英特尔(Intel)AC 系 AX 系的蓝牙默认系统可直接识别,但不能用,可以尝试使用 IntelBluetoothFirmware 驱动

USB(推荐定制 USB)

大部分 USB 可直接使用 USBInjectAll 识别所有端口(RehabMan 永远滴神!)

400 系(B460、Z490)需要使用特制的 USBInjectAll 识别所有端口

这里下载

记得开启 XhciPortLimit!!!!!

PS2(键盘、鼠标、触摸板等)

使用 VoodooPS2 即可

I2C(触摸板、触摸屏等)

使用 VoodooI2C 即可

SD 读卡器(Realtek) 少部分可通过使用 Sinetek-rtsx 驱动

附加内容

定制 USB(记得先开启 XhciPortLimit)

前提条件:使用 USBInjectAll 识别全部端口

打开 Hackintool 的 USB 栏,点击清空全部(扫把),再点击刷新

然后分别拿一个 USB3.0 和 2.0 设备插你机箱上的全部 USB 插口,如果插上一个 USB 插口,USB 栏有一个接口绿了,记录即可,如果网卡占用了一个 USB 内置端口(蓝牙)则记为 USB2.0,USB2.0 使用 2.0 设备插,USB3.0 则分别使用一个 2.0 和 3.0 设备插,记录 USB3.0 插口的 HS 和 SS 端口(一般对应)TypeC 如果使用 TypeC 线正反插都只亮一个 HS/SS 端口,则记为 TypeC-SW,反之则记为 Type-C,记录完成后如图所示

记录

点击清空全部(扫把),再点击刷新,将记录的信息分别对应填写对应的 USB 端口里,如图

完成后导出即可,使用 MaciASL 打开生成的 SSDT-UIAC.dsl,查看每个端口的 UsbConnector 是否和你记录的对应,Zero 为 USB2.0;3 为 USB3.0;9 为 TypeC-SW;10 为 TypeC,确认对应后编译为 aml 并放入 EFI/OC/ACPI 中,并在 config.plist 中设置加载

注入 EDID/开启 HIDPI

为了省事,我们直接使用修改好的 one-key-hidpi(适配 Big Sur),下载后执行 hidpi.command,选择开启 HIDPI(注入 EDID),剩下几步自行选择需要的,开启后效果为

IGPU 加载 Apple Guc Firmware

WhateverGreen 默认不加载 Apple Guc,如想使用 Apple Guc,在 boot-args 中加入 igfxfw=2

IGPU 加载四项

WhateverGreen 默认不加载四项,如想加载 AppleGraphic 四项,在 boot-args 中加入 agdpmod=ignore

注入白果 SMBIOS 三码

如果手里有白果的 SMBIOS 信息,我们可注入以使用 iMessage 和 Facetime(iServices)

将序列号和 UUID 和 ROM 和 MLB 填写,机型无需更改

屏蔽显示器音频

在 config.plist 的 DeviceProperties 处添加自己显卡的 PCI 路径,并添加 no-hda-gfx,如下图所示

CPU 变频

基本要求:CPU 进行高负载运算时,负载/频率快速上升,CPU 关闭高负载运算程序后,负载/频率快速下降

如果自己的 CPU 是白苹果(苹果原装机)使用过的,直接使用对应的机型(如 8500、8600k--iMac 19,1)

如果自己的 CPU 不在白苹果(苹果原装机)范围内,则使用 CPUFriend 进行频率/调度调节(使用 CPUFriendFriend 辅助工具更加方便)

英特尔 2/3 代则不支持原生电源管理,需另外方法变频,这里不讲解

AMD 传感器

由于 SMCProcessor 仅支持英特尔 CPU,并不适用于 AMD CPU,所以我们需要使用 SMCAMDProcessor 驱动传感器,AMDRyzenPowerManagement 加载时将 DummyPowerManagement(config.plist 内 Quick)关闭,仅支持 VirtualSMC,不支持 FakeSMC

核显唤醒黑屏

当遇到这种问题时,我们可以使用 WhateverGreen 的 IGPU 强制在线参数,将 igfxonln=1 添加至 boot-args 中,保存应用即可

网卡仿冒(确保网卡被识别)

在 Big Sur 11.0 中,由于 4360 的驱动被删除,我们需要仿冒网卡以使用 NIC 驱动

进入 Hackintool,PCI 设备一栏找到我们的网卡对应的路径(PciRoot.....)如图

使用 OCC 打开 config.plist,在 DeviceProperties 加入网卡对应的 PCI 路径(如 PciRoot(0x0)/Pci(0x1D,0x2))在右侧添加 compatible 项,并填写 pci14e4,43a3,保存应用

睡眠修复(实验性)

内容仅针对:睡眠秒醒、睡眠唤醒重启、无法睡眠进行修补,如遇见睡眠唤醒黑屏,尝试添加(核显唤醒黑屏)内容,如还是同样症状,本内容可能不适用于你

在睡眠唤醒后,在终端中输入 log show --last boot | grep -Ei "Wake Reason" 查看睡眠日志(如果你安装了无线网卡,可能会出现 airportd:systemWokenByWiFi: System Wake Reason not found 字样,忽略即可)

如日志中出现 XDCI CNVW 字样,尝试关闭小怠以及网络唤醒,再尝试睡眠

如日志中出现 EHC1 EHC2 XHC XHCI XHC1 字样,定制 USB,再尝试睡眠

如日志中出现 GLAN IGBE 字样,内建网卡,并关闭节能中此项,再尝试睡眠

如果还是无法解决,直接使用 OC-little 的 060D 补丁

在自己的 DSDT 中,搜索 _PRW,查找 Return (GPRW (0x6D, 0x04))、Return (GPRW (0x0D, 0x04)) 等相关关键词(6D 04 6D 03 0D 04 0D 03)结果如图

将 SSDT-GPRW.dsl 编译为 SSDT-GPRW.aml(使用 MaciASL 或 iasl-binary 都可)并放在 EFI/OC/ACPI 下,在 OC 中加载,使用 OCC 打开 config.plist,在 ACPI/补丁下右键

如果 _PRW 下关键词为 6D 04 或 6D 03,则使用6D更名补丁,反之则使用 0D 更名补丁

屏蔽独显(EGPU)

在笔记本上,我们经常因为独立显卡无法驱动的原因而导致无法进入系统,我们可以使用 WhateverGreen 内置的 -wegnoegpu 参数达到禁止独显的效果,使用 OCC 打开 config.plist,在 boot-args 中添加 -wegnoegpu 即可(这种方法可能会导致 S3 睡眠崩溃)

重置 NVRAM

在 OpenCore 引导界面选择 Reset NVRAM 后回车(如没有可能需要按下空格或 Tab,恢复辅助显示,如果没有引导界面,可能需要打开 ShowPicker 选项)

注入 EDID(修正 RGB)

有些显示器会出现色彩偏差或不定时黑屏等问题,这里我们通过修补 EDID 来解决

打开 Hackintool 的显示器栏

我们钩上图中的两个选项,并更改我们需要的分辨率(如果没有,可手动添加分辨率),然后点击添加,再点击导出,将导出的文件放在 Library/Displays/Contents/Resources/Overrides 下,如图

保存应用

RTC 唤醒问题

当我们在唤醒日志中看到 RTC Wake Alarm 相关内容,请尝试启动 Sample.plist 里 Kernel to Patch 自带的 Disable RTC wake 补丁,如图

启用并检查问题是否解决

开启第三方 TRIM

我们可以打开 config.plist 里 Kernel 下的 ThirdPatryDrive 以开启,但这不是最佳的,推荐使用如下方法开启 TRIM

在 config.plist 里 NVRAM 的 7C436110-AB2A-4BBB-A880-FE41995C9F82 中加入 EnableTRIM 参数,如图

EnableTRIM 参数,如图 笔记本核显外接输出(确保笔记本 HDMI 或 Type-C 接口从核显接出) 当笔记本核显 HDMI 或 Type-C 输出不正常(如黑屏)时,尝试在 boot-args 中添加 agdpmod=vit9696 以禁止检测 board-id,同时 SMBIOS 需与笔记本对应 macOS Big Sur 内屏 4K 60Hz 输出 当在 macOS Big Sur 下内屏 4K 60Hz 输出黑屏或崩溃时,尝试在 boot-args 中添加 -igfxmpc,操作后如果还是存在部分问题,再添加 -cdfon

Source:

https://github.com/acidanthera

https://github.com/Mieze

https://github.com/xzhih

https://github.com/corpnewt

https://github.com/ic005k

https://github.com/OpenIntelWireless

https://github.com/corpnewt

https://github.com/daliansky

https://github.com/chris1111

https://github.com/AMD-OSX

https://github.com/cholonam

Help:

https://blog.xjn819.com

https://github.com/IlikemacOS

感谢以上开源项目的付出!(如有遗漏可联系补全)

本人的一些帖子:

https://bbs.pcbeta.com/viewthread-1874579-1-1.html (黑苹果(Hackintosh)BootCamp 使用教程)

https://bbs.pcbeta.com/viewthread-1874603-1-1.html(【HIDPI】one-key-hidpi 修改版 by White)

https://bbs.pcbeta.com/viewthread-1874690-1-1.html(AMD Radeon RX 570 优化参数分享)

https://bbs.pcbeta.com/viewthread-1874947-1-1.html(【现已支持IceLake】USBInjectAll 修改版 by White)

https://bbs.pcbeta.com/viewthread-1874957-1-1.html(【黑苹果】High Sierra10700+B460M+1060 EFI分享 by White)

https://bbs.pcbeta.com/viewthread-1874970-1-1.html(【黑苹果】10400F+TUF B460M+590 EFI分享 by White)

https://bbs.pcbeta.com/viewthread-1875110-1-1.html(【黑苹果】macOS&Windows蓝牙同步经验分享 by White)

Guide Maintainer:「Takoyaki White」:)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3