OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學

Share

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》
Initial macOS SupportmacOS 10.14, Mojave

前言

這是製作 12 th 黑果引導文件教學,設定config.plist 對新手來說可能很困難,請遵循本指南來設定所有內容,成功的機率會是很高的。我們可以從現有成功的 OpenCore Alder Lake 桌面構建中學到什麼?我查看了主要英語和德語 hackintosh 網站上搜尋成功安裝的案例,我將分享我在查看這些構建、文檔和配置時注意到的關鍵點。這只是一個非常初步的指南,因為 Dortania 目前還沒有OpenCore Alder Lake 指南。若設定上出了有問題,請檢查OpenCore 需要注意的主要事項:

  • 沒有默認的 OpenCore 依賴會不會刪除部分,必須明確指出所有屬性。如果指南未指定該選項,因此保留其為默認值。
  • Sample.plist 不能按原樣使用,您必須將其配置到您的系統
  • 使用 CONFIGURATORS,這些少數幾個 OpenCore 的配置,甚至像 Mackie 的會添加 Clover 屬性和損壞的 plist!
  • 不要只複製網路抓來的 EFI。它可能不起作用,根據指南針對你的設備來創建您自己的 EFI。

目前已成功安裝macOS的案例:

主板

主要是 Z690 和少數 B660M,但在 H610 或 H670 上還沒有看到 Hackintosh。Gigabyte 和 Asus 已在絕大多數觀察到的系統中使用。由於 iGPU 不受支持,無法在 Alder Lake 筆記本電腦上使用 macOS。

  • 技嘉 Z690i Aorus Ultra DDR4 – Mini-ITX
  • 技嘉 Z690 UD DDR4 – ATX
  • 技嘉 Z690 Aorus Elite DDR5 – ATX
  • 技嘉 Z690 Aorus Elite AX DDR4 – ATX
  • 技嘉 Z690 Aorus Pro DDR5 – ATX
  • 技嘉 Z690 AERO G D4(加上 Thunderbolt 卡)- ATX
  • 技嘉 Z690 AERO G D5(加上 Thunderbolt 卡)- ATX
  • 技嘉 Z690 AERO D – ATX
  • 技嘉 Z690 Gaming X DDR4 – ATX
  • 華碩 Z690 ProArt Creator WiFi (Thunderbolt 4) DDR5 – ATX
  • 華碩 ROG STRIX Z690-A 遊戲 WIFI D4 DDR4 – ATX
  • 華碩 ROG STRIX Z690-F GAMING WIFI DDR5 – ATX
  • 華碩 PRIME Z690M-PLUS D4 DDR4 – microATX
  • 華碩 PRIME Z690-P D4 LGA DDR4 – ATX
  • 華碩 TUF GAMING Z690-PLUS D4 DDR4 – ATX
  • 華碩 PRIME B660M-K D4 DDR4 – microATX
  • 華擎 Z690 Pro RS DDR4 – ATX
  • 華擎 Z690 Steel Legend WiFi 6E DDR4 – ATX
  • 華擎 B660M-HDV DDR4 – microATX
  • 微星 PRO Z690-A DD5 – ATX

已使用的 CPU

  • i5-12400、i5-12400F
  • i5-12600K, i5 12600KF
  • i7-12700K, i7-12700KF
  • i9-12900K

所有當前可用的 Alder Lake Core-ix-12xxx CPU 都應該可以工作。

已使用的 GPU

  • 迪蘭恆進Radeon RX 6600
  • 藍寶石 VGA Nitro+ RX 6600 XT
  • 華擎 AMD Radeon RX 6600XT
  • 微星 RX 6800 XT Gaming X 三重奏
  • 藍寶石 RX 6900 XT 特別版
  • 盈通Radeon RX560 4GB GDDR5
  • AMD Radeon RX 570
  • 藍寶石脈衝 RX 580

主要推薦:Polaris AMD RX 400 系列和 RX 500 系列、Navi RX 5000 系列、RX 6800、RX 6800 XT、RX 6900 XT。AMD RX 6600 和 6600 XT 僅在 Monterey 12.1 和更高版本中受支持。(但目前根本不支持 RX 6700。)

Alder Lake 架構所使用上的 SMBIOS –MacPro7,1並且iMacPro1,1– 需要Polaris、Vega 或 Navi GPU才能正常工作。

請使用以下推薦的固態

  • WD 黑色 SN850 PCIe 4.0 NVMe SSD 1TB
  • WD 黑色 SN750 SE NVMe SSD 1TB
  • WD 黑色 SN750 NVMe SSD 500GB
  • WD Blue SN550 NVMe SSD 1TB
  • PNY CS1031 256GB

嚴重禁止使用三星 NVMe 固態,可能仍然存在問題:SSD 啟動時間測試 · dortania

推薦使用的 Wifi 卡

  • Fenvi FV-T919 WiFi/藍牙無線網卡
  • Fenvi M.2 NGFF BCM94360NG Wifi/藍牙4.0網卡

你可以在此無線買家指南中的建議繼續適用。

使用的操作系統

  • Monterey
  • Big Sur

macOS Catalina 10.15.4 及更高版本應基於 macOS 中的 Comet Lake 支持工作。

筆記

  • Intel Power Gadget 存在相當多的問題,不建議在生產中使用,但它大部分都可以正常工作,SuperIO 和 SMCProcessor 也是如此。目前已經修護。

無法啟用的功能

  • Sidecar 需要 iGPU 或 Apple T2 芯片來進行 HEVC 編碼/解碼,因此它無法在此系統上運行(macOS 不支持 iGPU UHD 770)。Sidecar 的替代品:Luna Display 和 Duet Display。
  • macOS 對所有內核一視同仁,不會在 P 核和 E 核之間以最佳方式調度任務
  • 尚不支持英特爾的藍牙 5.2。
  • 各種 USB 問題。這些可能並非特定於 Alder Lake,但在某些主板上已報告。

BIOS:

除 CPU 配置外,所有 BIOS 配置與 Comet Lake 使用的基本相同。

  • CFG Lock 可能無法在華碩主板的首選項中配置。這是一個明顯的 BIOS 錯誤,儘管它可能不會導致啟動失敗。我們必須通過 OpenCore 參考手冊中描述的 Shell 方法手動解鎖它。(維特,22-01-09)
  • XMP 至少適用於我們手頭的 DDR5,但也有報導稱 DDR4 也沒有問題。雖然 macOS 沒有在分析器中將 DDR5 命名為 DDR5,但這種細微差別純粹是裝飾性的。

CPU:P 核和 E 核

嘗試使用以下任一配置,看看哪種配置最適合您的工作流程:

  • 選項 1:啟用所有 P 核、所有 E 核和超線程。由於 P 核的 L3 和內存性能較低,Ring Clock 頻率將為 3.6 GHz,對CPU 性能的影響不超過 6% 。整體多線程性能會更好。
  • 選項 2::僅啟用 P 核和超線程。環形時鐘頻率將為 4.7 GHz。整體多線程性能會降低。
  • 這兩個選項都可以通過Alder Lake Overclocking進行優化。環形時鐘和 CPU 時鐘是分開的。

因此在BIOS > Advanced CPU Settings中進行相應的配置:

  • 選項 1 所有內核,所有線程
    • 超線程 → 啟用
    • 所有 P 核和 E 核 → 已啟用
  • 選項 2 僅 P 核和超線程
    • 超線程 → 啟用
    • CPU 內核啟用模式 → 可選模式
    • CPU Cores Enable Mode → (Enable all P-Cores and Disable all E-Cores)

搜集 SSDT 文件

需要SSDT-PLUG-ALT.aml為 Alder Lake CPU 添加具有 Darwin 方法的 XCPM 電源管理兼容性表

  • 大多數固件在 ACPI 中放棄了基於處理器的 CPU 定義並切換到macOS 無法識別的基於設備的定義。要解決此問題,需要使用SSDT-PLUG-ALTACPI 表。

SSDT

與 Comet Lake 非常相似,除了額外的SSDT-PLUG-ALT.aml

  • SSDT-PLUG-ALT.aml(必需的)
  • SSDT-AWAC.aml(必需的)
  • SSDT-EC-USBX.aml(必需的)
  • SSDT-SBUS.aml(可選的)
  • SSDT-USBW.aml(可選)與 USBWakeFixup.kext 一起使用以啟用正確的睡眠喚醒。
  • SSDT-DMAC.aml(偶爾使用)在真正的 MacPro 7,1 上:“DMAC 直接內存訪問控制器提供總線和輸入輸出設備之間的接口,與處理器共享總線以進行數據傳輸,通過以下方式加速內存操作繞過CPU的參與”。
  • SSDT-HPET.aml(偶爾使用) – 修補 IRQ 衝突。檢查:  SSDTs:簡單的方法(SSDTTime > HPET)。
  • SSDT-DTPG.aml(偶爾使用) – 實現其他 SSDT 所需的 DTGP 方法。與迅雷有關。
  • SSDT-MAPLE-RIDGE-RP05-V2.aml. 雷電專屬文件,需搭配 SSDT-DTPG.aml 使用。
  • SSDT-XH_ADLS3.aml ASUS Z690 主版專用修護文件
  • SSDT-AQUANTIA-AQC113C.aml 主版內建 AQC113C 10Gbe 網卡驅動。

現在所有這些,快速提醒我們需要的工具

  • ProperTree
    通用 plist 編輯器
  • GenSMBIOS
    生成我們的 SMBIOS 數據
  • Sample/config.plist
    取出Sample.plist 文件,並更名為 config.plist

在設置 OpenCore 之前,請多次閱讀本指南,並確保已正確設置。請注意,圖像並不總是最新的,因此請閱讀它們下面的文本,如果沒有提及,則保留為默認值。

ACPI

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Add

::: tip Info

這是您為系統添加 SSDT 的地方,這些對於引導 macOS非常重要,並且有許多用途,例如 USB 3.0接口定制、禁用不受支持的 GPU等。使用我們的系統,甚至需要啟動

對我們來說,我們需要幾個最主要的 SSDT 文件:

SSDT-PLUG-ALT添加 ACPI
Processor對象,因為 macOS 不支持
Device在較新的板上使用的對象。
SSDT-EC-USBX修復了嵌入式控制器和 USB 電源
SSDT-AWAC這是所有 B660 和 Z690 板所需的 300 和 600 系列 RTC 補丁。
替代方案是 SSDT-RTC0 或 SSDT-AWAC-DISABLE,具體取決於 DSDT 中的 ACPI 定義,
SSDT-SBUS-MCHC可能不是每個人都需要。修復了 AppleSMBus 支持,
SSDT-BRG0在某些系統上需要將丟失的設備恢復到 ACPI 表,從而修復 DeviceProperties 注入問題。
SSDT-USBWUSBWakeFixup kext 的伴侶

請注意,您不應該在此處添加您生成DSDT.aml的,它已經在您的固件中。config.plist因此,如果存在,請在您的 EFI/OC/ACPI 下刪除它的條目。

對於那些想要深入了解轉儲 DSDT、如何製作和編譯這些 SSDT 的人,請參閱ACPI 入門 頁面。已編譯的 SSDT 具有.aml擴展名(已組裝)並將進入該EFI/OC/ACPI文件夾,並且還必須在您的配置中指定ACPI -> Add

:::

Delete

這會阻止某些 ACPI 表的加載,對我們來說,我們可以忽略它。如是ASUS 主版得加入以下參數。

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》
ASUS Z690 專用

這是 Delete standard DMAR table 所用的參數,一般是不設定。

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Patch

本節允許我們通過 OpenCore 動態修改 ACPI 的一部分(DSDT、SSDT 等)。補丁乃採用 SSDT 的修護文件處理。這是一個更乾淨的解決方案。

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

如果遇到相關的 ACPI 錯誤,請啟用Change MC__ to MCHC並可能將 ADBG 更改為 XDBG ,如下所示:

Patch 1: Table IgfxSsdt
Table Signature: SSDT
OemTableID: 49676678 53736474
Find: 4D435F5F
Replace: 4D434843
Comment: Change MC__ to MCHC
Count = 0
Limit = 0
Skip =0
Enabled = True

Patch 2: Table GSWApp
Table Signature: SSDT
OemTableID: 47535741 7070
Find: 43031419 41444247
Replace: 43031419 58444247
Comment: Change ADBG to XDBG
Count = 1
Limit = 0
Skip = 0
Enabled = True
  • 請參閱:修復技嘉 Z690 主板上的睡眠喚醒問題。
  • 將 ADBG 更改為 XDBG 與技嘉 Z690 板上的ACPI 錯誤有關。
  • 將 MC__ 更改為 MCHC
  • 也用於華碩Z690 主板。

HPET _CRS 到 XCRS 重命名RTC IRQ 8 補丁TIMR IRQ 0 補丁。檢查:  SSDTs:簡單的方法(SSDTTime > HPET)。修復 RTC _STA 錯誤(似乎是以前在 Clover 中使用的舊修復,在 OpenCore 中不需要)。改為嘗試:  SSDT:最簡單的方法(SSDTTime > AWAC)

Quirks

與 ACPI 相關的設置,將此處的所有內容保留為默認值,因為我們對這些怪癖沒有用處。

Booter

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

本節專門討論與使用 OpenRuntime 修補 boot.efi 相關的怪癖,OpenRuntime 是 AptioMemoryFix.efi 的替代品

MmioWhitelist

這部分允許設備通過通常被忽略的 macOS,對我們來說我們可以忽略這部分。

Quirks

::: tip Info 與 boot.efi 補丁和固件修復相關的設置,對我們來說,我們需要更改以下內容:

NOTE:如果在 BIOS 中啟用了Resizable BAR Support , 請將ResizeAppleGpuBars設置為 0如果設置不正確,系統將啟動黑屏。

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》
QuirkEnabled
DevirtualiseMmioYES
EnableWriteUnprotectorNO
ProtectUefiServicesYES
RebuildAppleMemoryMapYES
ResizeAppleGpuBars-1
SetupVirtualMapNO
SyncRuntimePermissionsYES
:::

::: details More in-depth Info

  • 避免運行時碎片整理:是
    • 修復 UEFI 運行時服務,如日期、時間、NVRAM、電源控制等。
  • DevirtualiseMmio : 是
    • 減少被盜內存佔用,擴展slide=N值選項,非常有助於解決內存分配問題,ProtectUefiServicesZ490、Z590 和 Z690 也需要。
  • EnableSafeModeSlide:是
    • 使幻燈片變量能夠在安全模式下使用。
  • EnableWriteUnprotector:否
    • 這個怪癖和 RebuildAppleMemoryMap 通常會發生衝突,建議在較新的平台上啟用後者並禁用此條目。但是,由於 OEM 未使用最新的 EDKII 版本,您可能會發現上述組合會導致早期啟動失敗。這是由於缺少MEMORY_ATTRIBUTE_TABLE,因此我們建議禁用 RebuildAppleMemoryMap 並啟用 EnableWriteUnprotector。有關這方面的更多信息,請參閱故障排除部分
  • ProtectUefiServices:是 的
    • 保護 UEFI 服務不被 Z490 所需的固件覆蓋。
  • 提供自定義幻燈片:是
    • 用於幻燈片變量計算。然而,這個怪癖的必要性是由OCABC: Only N/256 slide values are usable!調試日誌中的消息決定的。如果該消息OCABC: All slides are usable! You can disable ProvideCustomSlide!出現在您的日誌中,您可以禁用ProvideCustomSlide.
  • 重建AppleMemoryMap:是
    • 生成與 macOS 兼容的內存映射,可能會在某些筆記本電腦 OEM 固件上中斷,因此如果您收到早期啟動失敗,請禁用此功能。
  • 調整AppleGpuBars:-1
    • 如果在啟動 macOS 時設置為零,將減小 GPU PCI 條的大小。使用此怪癖可以設置其他 PCI Bar 值,但可能會導致不穩定僅當您的固件中啟用了 Resizable GPU Bar Support 時,才需要將此怪癖設置為零。
  • 設置虛擬地圖:否
    • 修復了對虛擬地址的 SetVirtualAddresses 調用,但由於 Comet Lake 的內存保護而中斷。ASUS、Gigabyte 和 AsRock 主板將無法啟動。
  • SyncRuntimePermissions:是
    • 修復了與 MAT 表的對齊以及使用 MAT 表啟動 Windows 和 Linux 所需的問題,也推薦用於 macOS。主要與 RebuildAppleMemoryMap 用戶相關。

DeviceProperties

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Add

從樹狀圖設置設備屬性。

::: tip PciRoot(0x0)/Pci(0x1C,0x3)/Pci(0x0,0x0)

此條目與高端 Comet Lake 板上的英特爾 I225-V 2.5GBe 控制器有關,我們將在這裡做的是欺騙 Apple 的 I225LM 驅動程序以支持我們的 I225-V 網絡控制器:

KeyTypeValue
device-idDataF2150000
device-idDataF3158680
  • 注意:如果您的主板未附帶 Intel I225 NIC,則沒有理由添加此條目。
  • 注意 2:如果您在 AppleIntelI210Ethernet kext 上遇到內核崩潰,您的 NIC 路徑很可能是PciRoot(0x0)/Pci(0x1C,0x4)/Pci(0x0,0x0)

:::

::: tip PciRoot(0x0)/Pci(0x1b,0x0)

layout-id

  • 應用 AppleALC 音頻注入,您需要自行研究主板具有哪種編解碼器,並將其與 AppleALC 的佈局相匹配。AppleALC 支持的編解碼器
  • 您可以直接刪除此屬性,因為我們目前未使用它

對我們來說,我們將使用 boot-argalcid=xxx來完成此操作。alcid將覆蓋所有其他存在的佈局 ID。安裝後頁面中介紹了有關此的更多信息

:::

Delete

從地圖中刪除設備屬性,對我們來說我們可以忽略它

Kernel

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Add

在這裡,我們指定要加載哪些 kext,以什麼特定順序加載,以及每個 kext 適用於什麼架構。默認情況下,我們建議保留 ProperTree 所做的工作。

您需要記住的主要事項是:

  • 加載順序
    • 請記住,任何插件都應在其依賴項之後加載
    • 這意味著像 Lilu 這樣的 kext必須先於 VirtualSMC、AppleALC、WhateverGreen 等

提醒一下,ProperTree用戶可以運行Cmd/Ctrl + Shift + R以正確的順序添加他們的所有 kext,而無需手動輸入每個 kext。

    • 此 kext 支持的架構
    • 當前支持的值為Anyi386(32 位)和x86_64(64 位)
  • 捆綁路徑
    • kext的名稱
    • 前任:Lilu.kext
  • 啟用
    • 不言自明,啟用或禁用 kext
  • 可執行路徑
    • 實際可執行文件的路徑隱藏在 kext 中,您可以通過右鍵單擊並選擇來查看您的 kext 的路徑Show Package Contents。通常,它們會是Contents/MacOS/Kext,但有些將 kexts 隱藏在Plugin文件夾下。請注意,僅 plist kexts 不需要填寫此內容。
    • 前任:Contents/MacOS/Lilu
  • 最小內核
    • 您的 kext 將被注入的最低內核版本,請參閱下表了解可能的值
    • 前任。12.00.00對於 OS X 10.8
  • 最大內核
    • 您的 kext 將被注入的最高內核版本,請參閱下表了解可能的值
    • 前任。11.99.99對於 OS X 10.7
  • 列表路徑
    • info.plistkext中隱藏的路徑
    • 前任:Contents/Info.plist

::: details 內核支持表

OS X VersionMinKernelMaxKernel
10.48.0.08.99.99
10.59.0.09.99.99
10.610.0.010.99.99
10.711.0.011.99.99
10.812.0.012.99.99
10.913.0.013.99.99
10.1014.0.014.99.99
10.1115.0.015.99.99
10.1216.0.016.99.99
10.1317.0.017.99.99
10.1418.0.018.99.99
10.1519.0.019.99.99
1120.0.020.99.99
1221.0.021.99.99

:::

Emulate

::: tip Info 與 CPUID 欺騙相關的設置。

QuirkEnabled
Cpuid1Data55060A00 00000000 00000000 00000000
Cpuid1MaskFFFFFFFF 00000000 00000000 00000000
:::

Force

用於從系統卷中加載 kext,僅與緩存中不存在某些 kext 的舊操作系統相關(即 10.6 中的 IONetworkingFamily)。

對我們來說,我們可以忽略。

Block

阻止某些 kexts 加載。與我們無關。

Patch

Patches both the kernel and kexts.

修補內核和 kexts。

::: 提示 修復 I225-V 控制器

此條目與高端 Comet Lake 板上的英特爾 I225-V 2.5GBe 控制器有關,我們將在這裡做的是欺騙 Apple 的 I225LM 驅動程序以支持我們的 I225-V 網絡控制器。這僅在 Catalina 和 Big Sur 上才需要,最高 11.3。

KeyTypeValue
BaseString__Z18e1000_set_mac_typeP8e1000_hw
CommentStringI225-V patch
CountNumber1
EnabledBooleanTrue
FindDataF2150000
IdentifierStringcom.apple.driver.AppleIntelI210Ethernet
MinKernelString19.0.0
MaxKernelString20.4.0
ReplaceDataF3150000
  • 注意 1:如果您的主板未配備 Intel I225 NIC,則沒有理由添加此條目。
  • 注意 2:將所有其他鍵保留為默認值

:::

::: tip 禁用 RTC 喚醒調度

此補丁存在於 OpenCore 示例中,Kernel -> Patch -> 5如果您尚未刪除其他示例補丁,它將位於該補丁之下。在這種情況下,您不必手動輸入此補丁,而只需將Enabled補丁中的密鑰設置為 true。如果由於某種原因您的配置中沒有此補丁,請將此條目添加到您的配置中:

KeyTypeValue
ArchStringAny
BaseString__ZN8AppleRTC18setupDateTimeAlarmEPK11RTCDateTime
CommentStringDisable RTC wake scheduling
CountNumber1
EnabledBooleanYES
FindData<>
IdentifierStringcom.apple.driver.AppleRTC
LimitNumber0
MaskData<>
MaxKernelString(this value should be empty, do not add this string to your config)
MinKernelString19.0.0
ReplaceDataC3
ReplaceMaskData<>
SkipNumber0

Marvell (Aquantia) 內核補丁部分不需要任何修改。它看起來像這樣:

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Quirks

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

::: tip Info

與內核相關的設置,對我們來說,我們將啟用以下功能:

QuirkEnabledComment
AppleXcpmCfgLockYESDisable this quirk if CFG Lock is disabled in the BIOS.
DisableIoMapperYESDisable this quirk if VT-d is disabled in the BIOS.
LapicKernelPanicNOHP Machines will require this quirk.
PanicNoKextDumpYES
PowerTimeoutKernelPanicYES
ProvideCurrentCpuInfoYES
XhciPortLimitYESDisable if running macOS 11.3+.

::: details More in-depth Info

  • AppleCpuPmCfgLock: NO
    只有在 BIOS 中無法禁用 CFG-Lock 時才需要
    僅適用於 Ivy Bridge 及以上
    • Note: Broadwell 和更早版本在運行 10.10 或更早版本時需要此設置
  • AppleXcpmCfgLock: YES
    只有在 BIOS 中無法禁用 CFG-Lock 時才需要
    僅適用於 Haswell 及更新版本
    • 注意:Ivy Bridge-E 也包含在內,因為它支持 XCPM
  • CustomSMBIOSGuid: NO
    對設置為 的 UpdateSMBIOSMode 執行 GUID 修補Custom。通常與戴爾筆記本電腦相關
    使用 UpdateSMBIOSMode 自定義模式啟用此怪癖還可以禁用 SMBIOS 注入“非 Apple”操作系統,但我們不認可此方法,因為它破壞了 Bootcamp 兼容性。使用風險自負
  • DisableIoMapper: YES
  • 如果無法在 BIOS 中禁用或需要其他操作系統,則需要繞過 VT-D,更好的替代方案dart=0是 SIP 可以在 Catalina 中保留
  • DisableLinkeditJettison: YES
  • Lilu 等擁有更可靠的性能,無需 keepsyms=1
  • DisableRtcChecksum: NO
    防止 AppleRTC 寫入主校驗和 (0x58-0x59),對於接收 BIOS 重置或在重新啟動/關閉後被發送到安全模式的用戶來說是必需的
  • ExtendBTFeatureFlags NO
    對於那些使用非 Apple/非 Fenvi 卡有連續性問題的人很有幫助
  • LapicKernelPanic: NO
    禁用 AP 核心 lapic 中斷上的內核恐慌,HP 系統通常需要此功能。三葉草當量是Kernel LAPIC
  • LegacyCommpage: NO
    解決了 macOS 中 64 位 CPU 的 SSSE3 要求,主要與 64 位 Pentium 4 CPU(即 Prescott)相關
  • PanicNoKextDump: YES
    允許在發生內核崩潰時讀取內核崩潰日誌
  • PowerTimeoutKernelPanic: YES
    幫助修復與 macOS Catalina 中 Apple 驅動程序的電源更改相關的內核恐慌,尤其是數字音頻。
  • SetApfsTrimTimeout-1
    為 SSD 上的 APFS 文件系統設置修剪超時(以微秒為單位),僅適用於 macOS 10.14 和更新版本的有問題的 SSD。
  • XhciPortLimit: NO
  • 這實際上是 15 端口限制補丁,不要依賴它,因為它不是修復 USB 的保證解決方案。請盡可能創建USB 映射
  • 對於 macOS 11.3+,XhciPortLimit 可能無法按預期運行。我們建議用戶在升級或從 Windows映射之前禁用此怪癖和映射。您也可以安裝 macOS 11.2.3 或更早版本。

原因是 UsbInjectAll 在沒有適噹噹前調整的情況下重新實現了內置的 macOS 功能。僅在單個 plist-only kext 中描述您的端口要乾淨得多,這不會浪費運行時內存等

:::

Scheme

與舊版啟動相關的設置(即 10.4-10.6),對於大多數人來說,您可以跳過,但是對於那些計劃啟動舊版操作系統的人,您可以在下面看到:

::: details More in-depth Info

  • FuzzyMatch: True
    用於忽略內核緩存的校驗和,而不是選擇可用的最新緩存。在 10.6 中可以幫助提高許多機器上的啟動性能
  • KernelArch: x86_64
    設置內核的 arch 類型,可以在Autoi386(32 位)和x86_64(64 位)之間進行選擇。
    如果您正在引導需要 32 位內核(即 10.4 和 10.5)的舊操作系統,我們建議將其設置為Auto並讓 macOS 根據您的 SMBIOS 來決定。有關支持的值,請參見下表:
    • 10.4-10.5 — x86_64i386 or i386-user32i386-user32指 32 位用戶空間,因此 32 位 CPU 必須使用此(或缺少 SSSE3 的 CPU)x86_64仍將具有 32 位內核空間,但將確保 10.4/5 中的 64 位用戶空間10.6 — i386i386-user32, or x86_6410.7 — i386 or x86_6410.8 or newer — x86_64
  • KernelCache: Auto
    設置內核緩存類型,主要用於調試,所以我們建議Auto最好的支持

:::

Misc

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Boot

啟動屏幕的設置(將所有內容保留為默認值)

Debug

::: tip Info

有助於調試 OpenCore 啟動問題:

QuirkEnabled
AppleDebugYES
ApplePanicYES
DisableWatchDogYES
Target67

:::

::: details More in-depth Info

  • AppleDebug: YES
    啟用 boot.efi 日誌記錄,對調試很有用。請注意,這僅在 10.15.4 和更高版本上受支持
  • ApplePanic: YES
  • 嘗試將內核恐慌記錄到磁盤
  • DisableWatchDog: YES
  • 禁用 UEFI 看門狗,可以幫助解決早期啟動問題
  • DisplayLevel2147483650
  • 顯示更多調試信息,需要 OpenCore 的調試版本
  • SerialInit: NO
  • 需要使用 OpenCore 設置串行輸出
  • SysReport: NO
    有助於調試,例如轉儲 ACPI 表
    請注意,這僅限於 OpenCore 的 DEBUG 版本
  • Target67
    顯示更多調試信息,需要 OpenCore 的調試版本

這些值基於OpenCore 調試中計算的值

:::

Security

::: tip Info

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

安全性是不言自明的,不要跳過。我們將更改以下內容:

QuirkEnabledComment
AllowNvramResetYES
AllowSetDefaultYES
BlacklistAppleUpdateYES
ScanPolicy0
SecureBootModelDefault將其保留為
Default運行 macOS Big Sur 或更新版本。
VaultOptional設置為 Optional ,注意區分大小寫。

:::

::: details More in-depth Info

  • AllowNvramReset: YES
    允許在引導選擇器中和按下時重置 NVRAMCmd+Opt+P+R
  • AllowSetDefault: YES
    允許CTRL+EnterCTRL+Index在選擇器中設置默認啟動設備
  • ApECID: 0
    用於收集個性化的安全啟動標識符,目前由於 macOS 安裝程序中的錯誤,此怪癖是不可靠的,因此我們強烈建議您將其保留為默認值
  • AuthRestart: NO
    為 FileVault 2 啟用經過身份驗證的重新啟動,因此重新啟動時不需要密碼。可以被認為是安全風險,因此可選
  • BlacklistAppleUpdate: YES
    用於阻止固件更新,用作 macOS Big Sur 不再使用run-efi-updater變量的額外保護級別
  • DmgLoading: Signed
    確保僅加載簽名的 DMG
  • ExposeSensitiveData6
    顯示更多調試信息,需要 OpenCore 的調試版本
  • VaultOptional
    我們不會處理 vaulting 所以我們可以忽略,你不會用這個設置啟動到 Secure這是一個詞,省略這個設置不是可選的。不設置會後悔的Optional,注意區分大小寫
  • ScanPolicy0
    0允許您查看所有可用的驅動器。將此設置為默認值時不會啟動 USB 設備
  • SecureBootModel: Default
    控制 Apple 在 macOS 中的安全啟動功能
  • 注意:用戶可能會發現在已安裝的系統上升級 OpenCore 可能會導致早期啟動失敗。要解決此問題,請參見此處:卡在 OCB 上:LoadImage failed – Security Violation

:::

Tools

用於運行 shell 等 OC 調試工具,ProperTree 的快照功能會為您添加這些。

Entries

用於指定 OpenCore 無法自然找到的不規則引導路徑。此處不再贅述,有關更多信息,請參閱Configuration.pdf的 8.6

NVRAM

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

Add

::: tip 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

用於 OpenCore 的 UI 縮放,默認為我們工作。有關更多信息,請參閱深入部分

::: details More in-depth Info

Booter Path,主要用於UI縮放

  • UIScale:
  • 01: Standard resolution
  • 02: HiDPI (generally required for FileVault to function correctly on smaller displays)
  • DefaultBackgroundColor: Background color used by boot.efi
  • 00000000: Syrah Black
  • BFBFBF00: Light Gray

:::

::: tip 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102

由於macOS 無法辨識CPU 型號,這次使用參數來強迫顯示CPU 資訊

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

OpenCore 的 NVRAM GUID,主要與 RTCMemoryFixup 用戶相關

:::

::: details More in-depth Info

  • rtc-blacklist: <>
  • 要與 RTCMemoryFixup 結合使用,請參閱此處了解更多信息:修復 RTC 寫入問題
  • 大多數用戶可以忽略此部分

:::

::: tip 7C436110-AB2A-4BBB-A880-FE41995C9F82

系統完整性保護位掩碼

  • 常用在 bot-args 引導參數:
boot-argsDescription
-v這將啟用詳細模式,該模式顯示所有在您啟動時滾動的幕後文本,而不是 Apple 徽標和進度條。
它對任何 Hackintosher 來說都是無價之寶,因為它可以讓您深入了解啟動過程,並可以幫助您識別問題、問題 kexts 等。
debug=0x100這會禁用 macOS 的看門狗,這有助於防止內核崩潰時重新啟動。
通過這種方式,您有望收集到一些有用的信息並按照麵包屑導航來解決問題。
keepsyms=1這是 debug=0x100 的配套設置,它告訴操作系統在內核恐慌時也打印符號。這可以為導致恐慌本身的原因提供一些更有用的見解。
alcid=1用於為 AppleALC 設置 layout-id,請參閱支持的編解碼器以找出用於特定係統的佈局。
  • 網絡特定的引導參數:| 引導參數 | 說明 | | :— | :— | | dk.e1000=0 | 禁用com.apple.DriverKit-AppleEthernetE1000(Apple 的 DEXT 驅動程序)與高端 Comet Lake 板上的 Intel I225-V 以太網控制器匹配,從而改為加載 Apple 的 I225 kext 驅動程序。
    這個引導參數在大多數板上是可選的,因為它們與 DEXT 驅動程序兼容。但是,在技嘉和其他幾塊主板上需要它,它們只能使用 kext 驅動程序,因為 DEXT 驅動程序會導致掛起。
    如果您的主板未附帶 I225-V NIC,則不需要此功能。|
  • GPU 特定的引導參數
boot-argsDescription
agdpmod=pikera用於禁用 Navi GPU(RX 5000 和 6000 系列)上的板 ID 檢查,否則您將獲得黑屏。
如果您沒有 Navi,請勿使用(即 Polaris 和 Vega 卡不應使用此功能)
  • Alder Lake-specific boot-args:
boot-argsDescription
-ctrsmt僅與 CpuTopologyRebuild kext一起使用
以編輯 CPU 拓撲,以潛在地提高與使用 E 核相關的性能。
使用風險自負。
  • csr-active-config00000000
    “系統完整性保護”(SIP) 的設置。通常建議csrutil通過恢復分區更改此設置。
    csr-active-config 默認設置為00000000啟用系統完整性保護。您可以選擇多個不同的值,但總體而言,我們建議啟用此選項以獲得最佳安全實踐。更多信息可以在我們的故障排除頁面中找到:禁用 SIP
  • run-efi-updaterN
    這用於防止 Apple 的固件更新包安裝和破壞啟動順序;這很重要,因為這些固件更新(適用於 Mac)將不起作用。
  • prev-lang:kbd: <>
    格式的非拉丁鍵盤需要,lang-COUNTRY:keyboard儘管您可以指定它,但建議保留空白(示例配置中的默認值為俄語):
    American: en-US:0(656e2d55533a30 in HEX)
  • 完整列表可在AppleKeyboardLayouts.txt中找到
  • 提示:prev-lang:kbd可以改成String,這樣就可以en-US:0直接輸入而不是轉換成HEX
KeyTypeValue
prev-lang:kbdStringzh-Hant:2

:::

Delete

::: tip Info

強制重寫 NVRAM 變量,請注意Add不會覆蓋NVRAM 中已經存在的值,因此boot-args應該單獨保留類似的值。對我們來說,我們將更改以下內容:

QuirkEnabled
WriteFlashYES

:::

::: details More in-depth Info

  • LegacyEnable: NO
    允許將 NVRAM 存儲在 nvram.plist 上,這對於沒有本機 NVRAM 的系統是必需的
  • LegacyOverwrite: NO
    允許從 nvram.plist 覆蓋固件變量,僅適用於沒有本機 NVRAM 的系統
  • LegacySchema
    用於分配 NVRAM 變量,與 LegacyEnable 設置為 YES 一起使用
  • WriteFlash: YES
    為所有添加的變量啟用寫入閃存。

:::

PlatformInfo

::: tip Info

為了設置 SMBIOS 信息,我們將使用 CorpNewt 的GenSMBIOS應用程序。

對於本例,我們將選擇 MacPro7,1 SMBIOS。Alder Lake 有兩種主要的 SMBIOS:

SMBIOSHardware
MacPro7,1Use if installing Catalina or later
iMacPro1,1Use if installing Mojave

運行 GenSMBIOS,選擇選項 1 下載 MacSerial,選擇選項 3 選擇我們的 SMBIOS。這將為我們提供類似於以下的輸出:

  #######################################################
 #               MacPro7,1 SMBIOS Info                 #
#######################################################

Type:         MacPro7,1
Serial:       F5KZV0JVP7QM
Board Serial: F5K9518024NK3F7JC
SmUUID:       535B897C-55F7-4D65-A8F4-40F4B96ED394
Apple ROM:    001D4F0D5E22
  • 注意:MacSerial 目前不支持 Linux,因此您必須使用 Windows 或 macOS 機器來生成值

The Type part gets copied to Generic -> SystemProductName.

The Serial part gets copied to Generic -> SystemSerialNumber.

The Board Serial part gets copied to Generic -> MLB.

The SmUUID part gets copied to Generic -> SystemUUID.

The Apple ROM part gets copied to Generic -> ROM.

我們將 Generic -> ROM 設置為 Apple ROM(從真正的 Mac 轉儲)、您的 NIC MAC 地址或任何隨機 MAC 地址(可能只是 6 個隨機字節,對於本指南,我們將使用11223300 0000. 安裝後按照修復iServices頁面,了解如何找到您的真實 MAC 地址)

提醒您需要無效的序列號或有效的序列號但未使用的序列號,您希望收到一條消息,例如:“無效序列號”或“未驗證購買日期”

Apple Check Coverage page

Automatic: YES

  • 基於 Generic 部分而不是 DataHub、NVRAM 和 SMBIOS 部分生成 PlatformInfo

:::

Generic

::: details More in-depth Info

  • AdviseFeatures: NO
    用於當 EFI 分區不是第一個在 Windows 驅動器上時
  • MaxBIOSVersion: NO
    將 BIOS 版本設置為 Max 以避免 Big Sur+ 中的固件更新,主要適用於正版 Mac。
  • ProcessorType0
    設置0為自動類型檢測,但如果需要,可以覆蓋此值。有關可能的值,請參見AppleSmBios.h
  • SpoofVendor: YES
    交換 Acidanthera 的供應商字段,在大多數情況下使用 Apple 作為供應商通常不安全
  • SystemMemoryStatus: Auto
    在 SMBIOS 信息中設置是否焊接內存,純粹是裝飾性的,所以我們推薦Auto
  • UpdateDataHub: YES
    Update Data Hub fields
  • UpdateNVRAM: YES
    Update NVRAM fields
  • UpdateSMBIOS: YES
    Updates SMBIOS fields
  • UpdateSMBIOSMode: Create
    用新分配的EfiReservedMemoryType替換錶,用於Custom需要 quirk 的戴爾筆記本電腦CustomSMBIOSGuid
    設置為Custom啟用CustomSMBIOSGuidquirk 也可以禁用 SMBIOS 注入“非 Apple”操作系統,但我們不認可這種方法,因為它破壞了 Bootcamp 的兼容性。使用風險自負

:::

UEFI

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

ConnectDrivers: YES

  • 強制 .efi 驅動程序,更改為 NO 將自動連接添加的 UEFI 驅動程序。這可以稍微加快啟動速度,但並非所有驅動程序都自行連接。例如,某些文件系統驅動程序可能無法加載。

Drivers

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

在此處添加您的 .efi 驅動程序。

  • HfsPlus.efi
  • OpenRuntime.efi

APFS

《OpenCore Alder Lake (12th-Gen Intel) Hackintos中文設定教學》

默認情況下,OpenCore 僅從 macOS Big Sur 和更新版本加載 APFS 驅動程序。如果您正在引導 macOS Catalina 或更早版本,您可能需要設置新的最低版本/日期。不設置這可能會導致 OpenCore 找不到您的 macOS 分區!

macOS Sierra 及更早版本使用 HFS 而不是 APFS。如果引導舊版本的 macOS,您可以跳過此部分。

::: tip APFS Versions

如果更改最低版本,則需要同時設置 MinVersion 和 MinDate。

macOS VersionMin VersionMin Date
High Sierra (10.13.6)74807700800000020180621
Mojave (10.14.6)94527500700000020190820
Catalina (10.15.4)141210100100000020200306
No restriction-1-1

:::

Audio

與 AudioDxe 設置相關,對我們來說,我們將忽略(保持默認)。這與 macOS 中的音頻支持無關。

Input

與用於 FileVault 和熱鍵支持的 boot.efi 鍵盤直通相關,將此處的所有內容保留為默認值,因為我們對這些怪癖沒有用處。

Output

關於 OpenCore 的視覺輸出,將這裡的所有內容都保留為默認值,因為我們對這些怪癖沒有用處。

ProtocolOverrides

主要與虛擬機、舊版 Mac 和 FileVault 用戶相關。

Quirks

::: tip Info
Relating to quirks with the UEFI environment, for us we’ll be changing the following:

QuirkEnabledComment
UnblockFsConnectNONeeded mainly by HP motherboards

:::

::: details More in-depth Info

  • DisableSecurityPolicy: NO
    禁用固件中的平台安全策略,建議用於禁用安全啟動不允許加載第 3 方固件驅動程序的錯誤固件。
    如果運行 Microsoft Surface 設備,建議啟用此選項
  • RequestBootVarRouting: YES
    將 AptioMemoryFix 從 重定向EFI_GLOBAL_VARIABLE_GUIDOC_VENDOR_VARIABLE_GUID。當固件嘗試刪除引導條目時需要,建議在所有系統上啟用以正確安裝更新、啟動磁盤控制面板運行等。
  • UnblockFsConnect: NO
    某些固件通過在按驅動程序模式下打開它們來阻止分區句柄,這導致文件系統協議無法安裝。主要與未列出驅動器時的 HP 系統相關

:::

ReservedMemory

用於免除操作系統使用某些內存區域,主要與 Sandy Bridge iGPU 或內存故障的系統相關。

結語

本教學仍有不足的地方,將會繼續的補充更加完整。本教學是根據 10/11th 黑果 + Tonymacx86.net + Dortania 整合而成,社長盡可能將每個步驟轉化為中文解說,以簡短易懂的文字來敘述。若有漏字、文意不清等情形,盡快地告訴我,將立即修正。

暫無評論

發怖評論 編輯評論


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇