OpenCore黑苹果引导配置说明-基于OpenCore-0.7.1-07-06正式版
OpenCore黑蘋果引導配置說明-基于OpenCore-0.7.1-07-06正式版
一、 OC配置的基本條件與工具軟件
1.1、 準備Mac平臺,包括實體機平臺和虛擬機平臺。
1.2、 下載最新鏡像并核對MD5,制作安裝U盤。
1.3、 工具軟件:
OpenCore Configurator(持續更新中), Hackintool(綜合工具), PlistEdit Pro(Plist文件工具), IORegistryExplorer(路徑工具), BetterZip(解壓軟件)。1.4、基本流程:
1.6、OpenCore基本架構
二、 配置準備:
2.0、 Mac平臺準備
沒有Mac平臺的,可以參閱Windows10下Vmware15.5虛擬機安裝蘋果macOS Catalina 10.15.4,建立Mac平臺,已有Mac平臺可以跳過此步。
2.1、 下載最新鏡像,核對MD5
利用下載的最新鏡像,制作安裝U盤。(用磁盤工具抹掉U盤,擴展日志式/GUID)
2.2、OC-EFI包
下載最新0.6.8/0.6.9/0.7.0/0.7.1-OC包
放到桌面。里面包含Docs與Utilities后面將會用到。并改名為OC-EFI,便于識別。
2.3、ACPI文件(SSDT)
將下載的SSDT包里面的DSDT/SSDT拷貝到OC-EFI-OC-ACPI里面。注意,除非你清楚這些DSDT/SSDT的明確作用,否則,能不用就不要用!
2.4、驅動轉移
將下載的Kext包里面所有驅動全部拷貝到OC-EFI-OC- Kexts里面。同樣道理,除非你清楚這些驅動的用途,否則刪除不明用途的驅動
2.6、config.plist文件
將OC包/Docs里面的范例Sample.plist或SampleFull.plist之一拷貝到OC-EFI-OC里面,并改名為config.plist。
2.7、config.plist文件處理
分別用相應的配置工具打開OC-config.plist。
三、 開始配置OC-config.plist
3.1、Config-ACPI設置:
3.1.1、config-ACPI-添加(Add):
先刪除范例里面所有DSDT/SSDT,點瀏覽,到OC-EFI-OC-ACPI,選取所有你使用的DSDT/SSDT。(再次建議:,特別是臺式機,能不用DSDT/SSDT的,就不要用,除非你精通且清楚了解DSDT/SSDT的作用!)參閱面向小白的OC快速無腦配置-基于OpenCore。在下載的OC包Docs/AcpiSamples/Binaries里面有編譯好的SSDT,選擇合適你機器的。
3.1.2、config-ACPI-Delete:
除非你明白確切意義,一般不用。
3.1.3、config-ACPI-補丁(Patch):
建議,逐個調試刪除,保留最少的、必要的熱補丁。我已經遇到不止一個例子,由于亂用熱補丁且不明白這些熱補丁的明確作用,導致無法正常引導。特別是筆記本。熱補丁原則上最好不用,除非必須用。
 下面是10.15.x常用的2個補丁:
 更改控制器EC0名稱
解決RTC問題:
Comment:Fix AsRock Z390 BIOS DSDT Device(RTC) bug Find:A00A9353 54415301 Replace:A00A910A FF0BFFFF3.1.4、config-ACPI-Quirks:
- FadtEnableReset:主要用于老舊主板的開關機功能,如果你關機變重啟,可以勾選,一般情況下不勾選。
- ReseHwSig:與休眠有關的選項,臺式機一般不用,不勾選
- NormalizeHeaders:清理ACPI頭,一般勾選,如果有相應的熱補丁,可以不勾選。
- RebaseRegions:更換硬件或升級BIOS可能對ACPI產生影響,一般不勾選。如果遇到卡PCI Configuration Begin,就勾選試試。
- Resetlogstatus:重置日志,一般不勾選。
- SyncTableIds:與SLIC表表標識符同步,一般不勾選。
3.2、Config-Booter設置
3.2.1、config-Booter-MmioWhitelist(內存映射IO白名單)
默認第一項是為Haswell芯片提供內存尋址修復,此類芯片如果遇到內存相關問題,就勾選啟用。 默認第二項是開機卡PCI Configuration。ACPI、PCI device同時釋放到內存時發生0x1000內存地址被占用而卡在PCI Configuration,則勾選,否則無視!
3.2.2、config-Booter-Patch(補丁)
3.2.2、config-Booter-Quirks:
此設置與OpenRuntime.efi有密切關系,OpenRuntime.efi將一些功能與OC合并、模塊化。對于300系列等無法原生nvram的主板來說,此處的選項需要格外關注!
- 1、AllowRelocationBlock:對老舊版本的macOS有用,對macOS11和較新的硬件不兼容,所以一般不勾選。
- 2、AvoidRuntimeDefrag:絕大部分UEFI都會寫入時間、電源管理等信息,只要是黑蘋果,此項必須勾選。
- 3、DevirtualiseMmio:一般情況下,采用slide=1的方式進行連續性內存注入,故一般不勾選,除非你的機器用了KASLR方式。(臺式機基本沒有)。
- 4、DisableSingleUser:是否開啟單用戶模式(-s)。一般不勾選。
- 5、DisableVariableWrite:非原生nvram主板需要模擬nvram.plist寫入variable值,所以非原生nvram主板必須勾選,原生nvram主板則不勾選。經過測試非原生nvram主板(主要是300系列主板)使用SSDT-PMC以后,就可以當原生nvram主板使用,不用勾選此項。
- 6、DiscardHibernateMap:這個選項幫助我們解決下面的沖突:當電腦從休眠中喚醒時,硬盤里面的資料會恢復到內存中去,此時OC內核以及內核緩存也要寫入,二者可能產生沖突。就目前而言,臺式機無視休眠功能,故,不勾選!
- 7、EnableSafeModeSlide:安全模式下(-x)是否用連續性的內存注入方式,一般勾選。
- 8、EnableWriteUnprotector:允許對UEFI服務代碼的寫入,該選項通過刪除寫保護(WP)來繞過UEFI運行時服務的代碼頁中的RX權限。一般是勾選
- 9、ForceExitBootServices:為讓老舊主板也能使用內存尋址,正常情況下,不勾選,除非你的額主板很老很舊。至于何為老舊主板,自己根據實踐摸索試驗。
- 10、ProvideMaxSlide:勾選時,使Slide使用最大值,一般不勾選
- 11、ProtectMemoryRegions:確保CSM內存區域標記為ACPI NVS,以防止boot.efi或XNU重新定位或使用它們。但是由于AvoidRuntimeDefrag解決了類似的問題。默認不勾選(false)除非一些老舊主板可能需要勾選,需要測試。
- 12、ProtectSecureBoot:保護UEFI安全引導變量寫入參數時不被干擾而引起沖突,默認不勾選(false)。如選擇Insyde或選擇機型MacPro5,1。可能需要勾選。
- 13、ProtectUefiServices:保護UEFI服務不被固件覆蓋。用于修復Z390在DevirtualiseMmio、ProtectCsmRegion或ShrinkMemoryMap上的問題,非Z390的主板默認不勾選(false)。需要自己測試
- 14、ProvideCustomSlide:此選項時強制macOS在可用的slide值中使用一個隨機的、不產生沖突的slide值,故,必須勾選。
- 15、RebuildAppleMemoryMap:生成與macOS兼容的內存映射,Apple內核在解析UEFI內存映射時有幾個限制。為了解決這些限制,這個選項將內存屬性表權限應用于傳遞給Apple內核的內存映射,一般在啟動macos10.6及更早版本時可能需要這個選項,默認不勾選(false)。
- 16、SetupVirtualMap:通過虛擬內存建立連續性內存供OC使用,并映射到分散的物理內存中,故,必須勾選。
- 17、SignalAppleOS:將其他操作系統的信息報告給正在加載的macOS,不勾選。
- 18、SyncRuntimePermissions:更新運行時環境的內存權限,主要用于早期的macOS或Linux/Windows,默認不勾選(false)。
3.3、Config-DeviceProperties設置:
此項是用來描述/注入設備信息。主要是顯卡與聲卡,當然,也可以定制一些設備到關于本機-系統報告-PCI列表中去。
3.3.1:Config-DeviceProperties-添加(Add):
PCI信息導出:打開Hackintool,到PCI列表,點擊下面的導出,在桌面生成4個文件,打開pcidevices.plist,能看到全部PCI信息。將你需要的設備拷貝過來。并稍作修改。具體的可以去看OpenCore配置視頻第二版。原則上只添加聲卡路徑、ID,以及只有集顯的情況下的集顯路徑與ID。
3.3.1.1:聲卡:
- 一般情況下聲卡的路徑是PciRoot(0x0)/Pci(0x1f,0x3)。
- 右邊的鍵/值一般稍作修改,比如接口AAPL,slot-name的值可以改為Built In(內建/內置)。
- 顯示名稱model的值改為Hackintool-音頻-音頻設備-名稱里面的。
- layout-id的值一般就用導出的。不用修改。
- device_type一般設置為:Audio device
- 其他就用導出的值。
3.3.1.2:顯卡:
- 無集顯的CPU直接刪除路徑PciRoot(0x0)/Pci(0x2,0x0),將pcidevices.plist中獨顯信息直接拷貝過來,我的路徑是:PciRoot(0x20)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)。
- AAPL,slot-name的值改為PCIEX1或者Slot-1。
- model的值可以改為Radeon Pro Vega 56(根據自己顯卡的名字修改)。
- 其他不動。
- 獨顯DP/HDMI聲卡:直接將pcidevices.plist中獨顯DP/HDMI聲卡信息直接拷貝過來,我的路徑PciRoot(0x20)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x1)。
- AAPL,slot-name的值與顯卡相同。
- model的值可以改為與顯卡匹配,比如Radeon Pro Vega 56 DP/HDMI Audio。其他不動。
- 有集顯的CPU:路徑PciRoot(0x0)/Pci(0x2,0x0)。一般情況下,直接將pcidevices.plist中集顯的信息直接拷貝過來,就可以了,稍作修改,如AAPL,slot-name改為Built In(內建/內置)。model的值稍作修飾。關于僅使用集顯的,可能遇到HDMI接口紫屏的問題,請自行搜索解決辦法。
3.3.1.3:其他設備
一般情況下,除非需要,一般不導入。
3.3.2:Config-DeviceProperties-Delete:
此項默認即可。一般不做修改。
3.4:Config-Kernel設置:
此項是內存相關的設置。
3.4.1:Config-Kernel-添加(Add):
直接點擊瀏覽,到OC-EFI/OC/Kexts,選取全部,這里需要注意的是,Lilu.kext必須調整到第一位。對于依賴VirtualSMC.kext或FakeSMC.kext的驅動,則必須放在他們的后面。需要啟用的,后面需要勾選。筆記本特別要注意鍵盤與觸摸板驅動,主驅動一定要放在包內容驅動前面。
3.4.2:Config-Kernel-阻止(Block),
禁用一些驅動。默認即可。
3.4.3:Config-Kernel-補丁(Patch):
范例里面的4個一般情況下不用,2個RTC的補丁可以用于華碩的主板(二選一),但需要測試。主要解決華碩主板重啟BIOS重置,需要按F1跳過的問題。
3.4.4:Config-Kernel-CPU仿冒,
2種情況下,需要仿冒。
 1、macOS尚不支持的CPU。
 2、為不受支持的CPU啟用XCPM。
 對于XCPM支持,建議使用以下組合。
 ?Haswell-E(0x306F2)至Haswell(0x0306C3):
 Cpuid1Data:C3 06 03 00 00 00 00 00 00 00 00 00 00 00
 Cpuid1Mask::FF FF FF FF 00 00 00 00 00 00 00 00 00 00
 ?Broadwell-E(0x0406F1)至Broadwell(0x0306D4):
 Cpuid1Data:D4 06 03 00 00 00 00 00 00 00 00 00 00 00
 Cpuid1Mask::FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00。
 進一步情況可以見 acidanthera/bugtracker#365。
3.4.5:Config-Kernel-Scheme Properties(方案):
不明白OC團隊的用意,添加一些對老系統老架構主板的支持。不管那些,默認就好。蘋果都放棄的東西,OC團隊還在添加對老系統老架構的支持,有點本末倒置!!!
3.4.6:Config-Kernel-Quirks:
這個是內核相關的選項,重要!
-  1、AppleCpuPmCfgLock:如果你BIOS里面CFG/MSR已經關閉,則不勾選。沒有關閉,則必須勾選,不清楚是否關閉,請用Hackintool-工具-點擊Intel標志-從appleintellnfo獲取,查找CFG Lock,如果顯示0(MSR not lockde)則是關閉,如果顯示1(MSR locked)則是開啟。BIOS里面沒有CFG/MSR相關選項的,CFG Lock關閉的方法見OpenCore引導Mac下解除CFG LOCK鎖定。 
-  2、AppleXcpmCfgLock:同上。 
-  3、AppleXcpmExtraMsrs:主要是在無原生電源管理的CPU上使用,一般是Haswell-E,Broadwell-E,Skylake-X這三種CPU,必須勾選,其他CPU不用勾選。 
-  4、AppleXcpmForceBoost:此補丁將0xFF00 寫入到MSR_IA32_PERF_CONTROL (0x199),一般CPU都不勾選,只有某些Xeon的CPU有作用。 
-  5、CustomSMBIOSGuid:戴爾本本用的,一般不勾選。戴爾的筆記本與臺式機最好也不要勾選,可能導致無法正確顯示序列號。 
-  6、DisableIoMapper:禁止vt-d,如果BIOS里面禁止了,就不勾選。 
-  7、DisableLinkeditJettison:這個選項讓Lilu。在沒有keepsyms=1引導參數的情況下,kext和其他一些可能在macOS Big Sur中發揮最佳性能。一般不勾選。 
-  8、DisableRtcChecksum:一般不勾選。在AppleRTC中禁用校驗和寫入(0x58-0x59)。 
-  9、ExtendBTFeatureFlags:將FeatureFlags設置為0x0F以獲得藍牙的全部功能,包括連續性。一般不勾選。 
-  10、ExternalDiskIcons:AHCI控制器相關。現在主流主板對AHCI支持都很好,一般不勾選。 
-  11、ForceSecureBootScheme:IMG4驗證的強制x86方案。一般不勾選。 
-  12、IncreasePciBarSize:將IOPCIFamily中的32位PCI帶寬大小從1GB增加到4GB,一般不勾選 
-  13、LapicKernelPanic:用于惠普本本的內核崩潰,一般不勾選。惠普本本也不要勾選。!! 
-  14、LegacyCommpage:對10.4-10.6有效。一般不勾選。 
-  15、PanicNoKextDump:顯示kext出錯信息,一般不勾選。 
-  16、PowerTimeoutKernelPanic:當遇到睡眠不能喚醒,只有重啟后才能喚醒的情況下勾選,臺式機一般不勾選。 
-  17、ProvideCurrentCpuInfo:向內核提供當前CPU信息。一般不勾選。 
 這個quirk目前為內核提供了正確的TSC和FSB值,并且禁用了CPU拓撲驗證。
 注意:這些修補程序當前以Microsoft Hyper-V為目標,可能需要擴展以用于其他目
-  18、SetApfsTrimTimeout:10.14以前的版本不需要設置。主要針對SATA SSD,根據不同的主控,設置不同的延遲,其中最大數值為4294967295。或者用999來關閉trim 
-  19、ThirdPartyDrives:類似于開啟Sata固態硬盤的trim功能。有Sata固態硬盤勾選,沒有則不勾選。 
-  20、XhciPortLimit:解除15個端口限制,確認USB端口完美定制的可以不勾選。一般勾選。有USB定制的不勾選。 
3.5:Config-Misc設置
3.5.1:Config-Misc-BlessOverride:
這個選擇是尋找一些不同位置的EFI,一般空。
3.5.2:Config-Misc- Boot:
-  1、ConsoleAttributes:設置圖形界面背景與前景顏色,默認為0,其他顏色請官方說明。 
-  2、HibernateMode:檢測休眠模式,一般選none,原生支持nvram的,并想休眠(注意不是睡眠)的,選auto。 
-  3、HideAuxiliary:隱藏引導是磁盤一些輔助選項,勾選時,隱藏如:recovery、Clean NVRAM等,按ESC、0或空格后,顯示而不隱藏。 
-  4、PickerAttributes:使用純文本用戶界面時背景與前景顏色選擇。根據UEFI規范,用參數的選擇,來調節背景與前景的顏色,默認值為0 
-  5、LauncherOption:啟動器中的選項 ?Disabled-什么都不做。 
 ?Full -在引導加載程序啟動時,在UEFI變量存儲中創建或更新優先級最高的引導選項。要使該選項生效,必須啟用RequestBootVarRouting。
 ?Short -創建一個短啟動選項而不是一個完整的啟動選項。這種變體對于一些較老的固件很有用,特別是Insyde,但也可能是其他不能處理完整設備路徑的軟件。
 該選項提供了與第三方操作系統安裝的集成,并在它們覆蓋\EFI\BOOT\BOOTx64時進行升級。efi文件。通過在這個文件路徑中創建一個自定義選項,OpenCore不再用于引導。用于引導的路徑在LauncherPath選項中指定。
-  6、LauncherPath:啟動程序選項的啟動路徑。Default是默認 OpenCore.efi,其他路徑如\EFI\Launcher.efi。 
-  7、PickerVariant:用于引導管理的特定圖標集的選擇,一般選擇Acidanthera\GoldenGate。 
-  8、PickerAudioAssist :開啟/關閉(true/false)啟動時音頻。 
-  9、PollAppleHotKeys:是否開一些組合熱鍵,如command+K;command+S。如果發現開機鍵盤無法選擇,則不勾選。并刪除OC/Drivers下的UsbKbDxe.efi。 
-  10、ShowPicker:是否顯示開機啟動盤顯示,一般勾選,長期穩定使用的情況下可以不勾選。 
-  11、TakeoffDelay:在選擇啟動盤之前與快捷鍵操作的延遲。一般是0,對于一些鍵盤驅動需要填寫5000-10000(微秒)。 
-  12、Timeout :倒計時,0~30的整數。 
-  13、PickerMode:啟動界面選擇 
- Builtin模式:使用簡單的純文本用戶界面。一般選擇此模式
- External模式:如果圖形界面引導可用則啟用,否則使用純文本用戶界面。[所需Resources文件在下載最新0.6.8/0.6.9/0.7.0/0.7.1-OC包里面,里面包含開機聲音、圖形界面所需的圖片以及相應驅動。
- Apple模式:如果蘋果引導可用則啟用,否則使用純文本用戶界面。
在External模式下,完全禁用OpenCore對所有引導管理,除非有強制策略。
在Apple模式下,可以繞過強制策略。
要實現External模式,用戶自定義界面,使用OcSupportPkg、 OcBootManagementLib庫,外部圖形接
口參考在ExternalUi測試驅動程序中提供。
OpenCore-Builtin模式引導包含在引導過程中支持幾個快捷鍵,類似于蘋果的BDS,目前有以下幾個:
Default-默認選項:使用OpenCore內置引導
ShowPicker項:勾選此項,則此項變為默認項,強制picker顯示,可以在引導時使用Option。
ResetNvram項:在勾選AllowNvramReset的情況下,可以使用CMD+OPT+P+R組合鍵來實現清除(Reset) NVRAM,當然還可以用另一種方式來清除NVRAM。
BootApple項:執行此選項會找到的蘋果操作系統的第一個引導,除非蘋果已經創建了默認選擇的操作系統。按住X鍵可選擇此選項。
BootAppleRecovery項:此選項執行引導到Apple操作系統恢復模式。要么是與默認選擇的操作系統相關的操作系統,要么是在默認選擇的操作系統不是由蘋果公司創建或沒有恢復的情況下首先找到的操作系統。按住CMD+R組合鍵可選擇此選項。
3.5.3:Config-Misc-Debug:調試選項
- AppleDebug:勾選后 boot.efi調試日志保存到OpenCore日志中,一般不勾選。此參數僅適用于10.15.4及以上的版本
- ApplePanic:將macOS內核崩潰日志保存到OpenCore根分區。測試時勾選,一般不勾選,
- DisableWatchDog:不勾選。
- DisplayDelay:顯示延遲,填入0。
- DisplayLevel:顯示等級,填入:2147483650。
- SerialInit:此選項將在啟用(任何)調試日志記錄之前在OpenCore中執行串行端口初始化。串行端口配置是在編譯時通過pcd在gEfiMdeModulePkgTokenSpaceGuid GUID中定義的。MdeModulePkg中的默認值。dec如下:
 ?PCD串行波特率-波特率:115200。
 ?PCD串行控制-線路控制:無奇偶校驗,8個數據位,1個停止位。
- SysReport:用于調試版本轉儲系統信息。一般不勾選,只能用DEBUG版本才使用
- Target:目標,一般填入3。
3.5.4:Config-Misc-Entries:添加一些路徑。現在暫時不管。
3.5.5:Config-Misc- Security:安全設置,
-  1、AllowNvramReset:勾選是在開機引導選項中加入重置nvram緩存功能,調試完畢,穩定后,可以不勾選。 
-  2、AllowSetDefault:允許CTRL+Enter和CTRL+Index處理在引導選擇器中設置默認引導選項。 
-  3、AllowToggleSip:啟用OpenCore選擇器中禁用和啟用系統完整性保護的入口,一般不勾選。 
-  4、ApECID:蘋果磁盤加密引導標識。將此值設置為任何非零64位整數,將允許使用個性化的Apple Secure Boot標識符。如果要使用此設置,請確保使用加密安全的隨機數生成器生成一個64位隨機數。使用此值集和SecureBootModel有效且未被禁用,可以實現Apple Secure Boot的安全引導或實現完整全面的系統文件加密驗證。 
-  5、AuthRestart:與啟動身份驗證相關,不勾選。 
-  6、ExposeSensitiveData:由于使用nvram,填入3 
-  7、BlacklistAppleUpdate:勾選時,忽略試圖更新蘋果外圍固件的啟動選項(如multiupdate .efi)。 
-  8、DmgLoading:定義用于macOS恢復的磁盤映像(DMG)加載策略 
 Disabled —無法引導DMG鏡像Signed —引導有Apple簽名的DMG鏡像。只選擇此項 Any —引導任何DMG鏡像 
-  9、EnablePassword:啟用密碼保護。一般不勾選。 
-  10、ExposeSensitiveData:敏感數據暴露位掩碼(sum)到操作系統。一般默認選6。 
-  11、HaltLevel:顯示級別,填入:2147483648。(0x80000000)的十進制 
-  12、PasswordHash:設置EnabledPassword時使用的密碼哈希。一般不用填寫。 
-  13、PasswordSalt:設置EnabledPassword時使用的密碼。一般不用填寫。 
-  14、Vault:磁盤加密 填寫Optional時,為選擇磁盤不加密,一般情況下都填寫Optional 填寫Basic時,啟用基本的系統文件加密驗證 填寫Secure時,啟用完整全面的系統文件加密驗證 
-  13、ScanPolicy:掃描策略,默認983299即可。建議填寫3870467,也可以直接填寫0解除所有限制,但是正常使用的情況下不建議用0,那樣顯示的項目太多,太雜,安裝的時候可以用。 
 (ScanPolicy 參數是用來控制Oc掃描啟動項的,對于蘋果來說這顯得多余。蘋果的固件可以選擇 禁用第三方安裝盤 也就是 他會默認禁用U盤安裝盤 需要進入Recovery 關閉保護才能正常引導,而黑果這種設計顯得不那么靈活。
 3080963可引導APFS和HFS分區適合nvram和模擬nvram正常的使用 系統通過更新nvram控制啟動磁盤,安裝,更新可自動完成,理論上應該開啟所有掃描項以及所有磁盤IO類型掃描 但是某些人需求只掃描OSX或者并不想掃描到Win系統,如果設置0 則關閉所有限制)但是不建議用0。
-  14、SecureBootModel:蘋果安全啟動硬件參數,一般不啟用安全模式的情況下選擇默認Default 定義Apple安全引導硬件模參數和策略。指定此值可定義哪些操作系統將是可引導的。在發布指定型號之前提供的操作系統將無法啟動。有效值如下: - Default — Recent available model, currently set to j215.
 
-  Disabled — No model, Secure Boot will be disabled. - j137 — iMacPro1,1 (December 2017)
 
-  j680 — MacBookPro15,1 (July 2018) - j132 — MacBookPro15,2 (July 2018)
 
-  j174 — Macmini8,1 (October 2018) - j140k — MacBookAir8,1 (October 2018)
- j780 — MacBookPro15,3 (May 2019)
- j213 — MacBookPro15,4 (July 2019)
 
-  j140a — MacBookAir8,2 (July 2019) - j152f — MacBookPro16,1 (November 2019)
- j160 — MacPro7,1 (December 2019)
- j230k — MacBookAir9,1 (March 2020)
- j214k — MacBookPro16,2 (May 2020)
- j223 — MacBookPro16,3 (May 2020)
- j215 — MacBookPro16,4 (June 2020)
- j185 — iMac20,1 (August 2020)
- j185f — iMac20,2 (August 2020)
 PlatformInfo和SecureBootModel是獨立的,允許使用任何SMBIOS啟用Apple安全引導。 
 將SecureBootModel設置為任何有效值,但Disabled,相當于中等安全的Apple SecureBoot。要實現完全的安全性,還需要指定ApECID值。
 注意:默認值會隨著時間的推移而增加,以支持最新的主要發行版操作系統。不建議同時使用ApECID和默認值。
3.5.6:Config-Misc-Tools 工具選項:
在開機的時候,加入工具,比如有Shell.efi,CleanNvram.efi,VerifyMsrE2.efi等,自行選擇,如果勾選的話在EFI/OC/Tools文件夾中必須包含這些。RtcRwX用于讀寫RTC (CMOS)內存的實用工具。ResetSystem工具,可以在菜單中顯示關機/重啟
3.6:Config-NVRAM設置
3.6.1:Config-NVRAM-添加(Add)
3.6.1.1:UUID:4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:
-  值01普通模式或02HIPDI模式。根據自己的顯示情況選取。 
-  DefaultBackgroundColor:數字為00000000 
3.6.1.2:UUID:7C436110-AB2A-4BBB-A880-FE41995C9F82:為引導參數、語言與關閉SIP的相關內容。
-  prev-lang:kbd:鍵盤布局或語言選項,填入7a68 2d48 616e 733a 3235 32,為中文。 
-  csr-active-config:SIP保護。填入E7030000是關閉保護,填入00000000是開啟保護。 
-  boot-args:引導參數。例如:npci=0x3000 agdpmod=pikera -v等等。 
-  SystemAudioVolume 系統音量大小調節,默認46,建議60. 
3.6.2:Config-NVRAM-Delete:
禁用一些nvram變量。不用設置。
NVRAM-Block-4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14-DefaultBackgroundColor
3.6.3:Config-NVRAM-LegacySchema,
默認即可。
3.6.4:Config-NVRAM-LegacyEnable,
非原生nvram主板勾選。原生nvram主板不勾選。經過測試非原生nvram主板(主要是300系列主板)使用SSDT-PMC以后,就可以當原生nvram主板使用,不勾選此項。
3.6.5:Config-NVRAM-WriteFlash,
一般不勾選。可能會影響到啟動磁盤的設置,勾選的情況下能跳過錯誤提示。
3.6.6:LegacyOverwrite,
允許從nvram.plist重寫固件變量。一般不勾選
3.7:Config-PlatformInfo設置。
選擇適合你自己機器的機型。至于三碼。具體設置去參閱OpenCore引導下config.plist的三碼設置。
Config-PlatformInfo-Generic-AdviseWindows:此項與引導Windows有關,強制固件對Windows的支持。 以下2個情況需要勾選:
 ? 開啟CSM (0x1),EFI分區不在第一啟動盤上,無法引導Windows。
? 關閉CMS,采用純UEFI (0x2),EFI分區在第一啟動盤上,無法引導 Windows。
3.7.1:其他選項
- Automatic(自動):勾選。
- UpdateDataHub:勾選。
- UpdateNVRAM:勾選。
- UpdateSMBIOS:勾選。
- UpdateSMBIOSMode:創建/自動/覆蓋
3.8:Config-UEFI,
UEFI的相關設置。
3.8.1:APFS,按照下面APFS屬性配置,用于提供APFS的支持(即不用Config-UEFI-Drivers里面的ApfsDriverLoader)。
- EnableJumpstart:加載APFS驅動程序 勾選(YES)。此選項執行已簽名APFS的加載
 驅動與掃描策略。
- GlobalConnect:主要用于老式HP的筆記本,一般無視。
- HideVerbose:勾選(YES)是隱藏APFS驅動程序的詳細日志。
- JumpstartHotPlug :支持包含APFS的USB設備熱插拔,一般不勾選(NO)
- MinDate :APFS驅動的日期。一般填寫0。
- MinVersion:APFS驅動的版本。一般填寫0。
3.8.2:AppleInput屬性
3.8.2.1:AppleEvent :確定是使用OC內置還是OEM Apple事件協議。
 此選項決定是否使用Apple的OEM Apple事件協議(如果可用),或者是否使用OpenCore的反向工程和更新的重新實現。一般來說,OpenCore的重新實現應該是首選,因為它包含了一些更新,比如顯著改進的鼠標光標精細移動和可配置的按鍵重復延遲。默認為Builtin,也可以選擇Auto
 ?Auto-由于其結果有些不可預測,通常不建議使用此選項。
 ?Builtin-即使在可以使用OEM版本的Apple硬件上,依然建議使用此設置。推薦。
 ?OEM-在大多數使用情況下,建議首選內置。
3.8.2.2:CustomDelays 啟用自定義密鑰重復延遲。一般選Auto
? Auto — 當KeySupport為真時,視為啟用,否則視為禁用。
 ? Enabled — 使用值KeyInitialDelay和KeySubsequentDelay。
 ? Disabled — 使用Apple默認值500ms(50)和50ms(5)。
3.8.2.3: KeyInitialDelay 選擇為0時,無初始延遲,立即重置
3.8.2.4:KeySubsequentDelay 在Apple事件協議的OpenCore實現中配置后續鍵盤重復延遲,單位為10ms。一般設置為1.
3.8.2.5: PointerSpeedDiv 在Apple事件協議的OpenCore實現中配置指針速度除數。
 為指針移動配置除數。Apple OEM默認值為1。0是此選項的無效值。
3.8.2.6:PointerSpeedMul 在Apple事件協議的OpenCore實現中配置指針速度倍增器。
 配置指針移動的乘數。Apple OEM默認值為1
3.8.3:Audio,包括此項下9個小項,建議默認不動,[所需Resources文件在下載最新0.6.8/0.6.9/0.7.0/0.7.1-OC包里面,里面包含開機聲音、圖形界面所需的圖片以及相應驅動。
- AudioSupport-(false/true):關閉/開啟末端驅動以停止/啟用開機音頻
- AudioDevice-指定音頻控制器路徑,如:PciRoot(0x0)/Pci(0x1f,0x3)。
- SetupDelay-音頻編解碼器重新配置延遲(微秒),一般默認為0。
- AudioCodec-設置音頻控制器上解碼器的地址,如:0。
- AudioOut-設置解碼器輸出端口數,如1或4或7等。
- MinimumVolume-音量大小選擇,默認是20。
- ResetTrafficClass-在legacy HDA上將TCSEL重置為T0,一般默認為否
- PlayChime-auto/false/true,自動/關閉/開啟啟動時播放鈴聲。一般選開啟
- VolumeAmplifier-音頻增益系數。0~1000。
3.8.4:ConnectDrivers,
連接驅動程序。勾選。
3.8.5:Config-UEFI-Drivers,
UFEI驅動,一般情況下,新版OC只用2個:HfsPlus.efi和OpenRuntime.efi,至于UsbKbDxe.efi等根據自己的需要選擇。
- CrScreenshotDxe — 按F10可以保存文件或圖像到OpenCore分區EFI(ESP)根目錄下
- OpenRuntime — OpenCore核心驅動,使用OpenCore引導必須使用
- OpenCanopy—圖形界面驅動
- AudioDxe—開機聲音驅動
- Ps2MouseDxe—來自MdeModulePkg的PS/2鼠標驅動程序,用于UEFI圖形界面中觸摸板的驅動,
- UsbMouseDxe—來自MdeModulePkg的USB鼠標驅動程序,用于UEFI圖形界面中USB鼠標的驅動,
- EnhancedFatDxe — 對FAT格式的支持
- NvmExpressDxe — 對于Haswell或更早不支持NVMe SSD添加的驅動
- OpenUsbKbDxe — 將USB鍵盤模擬為蘋果鍵盤的驅動
- VBoxHfs 或HFSPlus— 對HFS格式的支持,建議用HfsPlus為好
- XhciDxe — XHCI USB驅動,Sandy Bridge以前的CPU、主板或者USB3.0PCI卡需要此驅動
3.8.6:Config-UEFI-Apple快捷鍵相關(Input):
- KeyFiltering:默認不勾選(false),啟用時,則是檢查鍵盤輸入完整性。只針對部分老舊主板。
- KeyForgetThreshold:設置為5。
- KeySupport:勾選。
- KeySupportMode:選擇Auto。
- KeySwap:勾選。
- PointerSupport:如果是華碩Z87/Z97,勾選,其他不勾選。
- TimerResolution:延遲選50000。
- PointerSupportMode:范例是ASUS。不改。
3.8.7:Config-UEFI-ProtocolOverrides(協議覆蓋):
- AppleAudio:關閉/開啟蘋果音頻協議(不支持10.13以前的版本)。一般不勾選
- AppleBootPolicy:虛擬機的Mac需要用,不勾選。
- AppleDebugLog:調用Apple調試日志協議,不勾選。
- AppleEg2Info :用內置版本取代Apple EFI Graphics 2協議。一般不勾選。
- AppleFramebufferInfo:一般不勾選。
- AppleImageConversion:重建apple圖標,不勾選。
- AppleImg4Verification:一般不勾選。
- AppleKeyMap:重建apple功能鍵,不勾選。
- AppleRtcRam:一般不勾選。
- AppleSecureBoot:一般不勾選。
- AppleSmcIo:替代之前的VirtualSmc.efi,055以后的版本可以不勾選。
- AppleUserInterfaceTheme :與主題有關,不勾選。
- DataHub:重建DataHub,不勾選。
- DeviceProperties:虛擬機需要,不勾選。
- FirmwareVolume:File Vault的相關,不勾選。
- HashServices:File Vault的相關,不勾選。
- OSInfo:操作系統信息協議,不勾選。
- UnicodeCollation:老舊主板需要,不勾選。
3.8.8:Config-UEFI-Quirks設置
- ActivateHpetSupport:激活對HPET的支持,一般不勾選。
- EnableVectorAcceleration:關閉/啟用SHA-512和SHA-384 算法的AVX矢量加速。
- ExitBootServicesDelay:較新的主板直接填入0,老舊主板填入3000000-5000000。
- IgnoreInvalidFlexRatio:如果沒有解鎖CFG,必須勾選。
- ForgeUefiSupport :勾選時允許在舊版EFI 1.x固件(如MacPro5,1)的硬件上運行為UEFI 2.x固件一般不勾選。
- ReleaseUsbOwnership:如果開機鍵盤鼠標卡死,勾選試試,一般是不勾選的。
- RequestBootVarRouting:如果要使用“啟動磁盤”的選項,勾選。
- ReloadOptionRoms:一般不勾選。勾選時允許在固件版本通過forguefisupport升級后,在較舊的mac上重新加載NVIDIA GOP Option ROM。
- UnblockFsConnect:與惠普本本相關,一般不勾選。
- DisableSecurityPolicy :一般不勾選。這個設置禁用了固件的各種安全特性,解除任何安全引導。如果您使用UEFI Secure Boot,請不要啟用該功能。
- TscSyncTimeout:一般推薦用VoodooTSCSync、TSCAdjustReset或CpuTscSync (VoodooTSCSync的一個更專業的驅動)來解決TSC問題,一般不勾選。
3.8.9:Config-UEFI-Output(顯示輸出)設置:
包含以下13個小項
-  ClearScreenOnModeSwitch一般不勾選(false) 
-  ConsoleMode一般選Max 
-  DirectGopRendering一般不勾選(false),除非勾選后,對顯示效果有利(對某些顯卡有效) 
-  GopPassThrough一般Disabled,在UGA協議之上提供GOP協議支持,Description:在UGA協議實例之上提供GOP協議實例。此選項通過基于UGA的代理為未實現該協議的固件提供GOP協議。該選項支持的值如下: ?Enabled -為所有UGA協議提供GOP。 
 ?Apple-為支持AppleFramebufferInfo的協議提供GOP。
 ? Disabled-不提供GOP。
-  IgnoreTextInGraphics一般是勾選(true) 
-  ProvideConsoleGop一般是勾選(true) 
-  ForceResolution-一般不勾選(false),在默認情況下無法使用所需分辨率的情況下,強制設置分辨率,例如在舊版Intel GMA和第一代Intel HD Graphics(Ironlake/Arrandale)上。將分辨率設置為Max將嘗試從連接的顯示器的EDID中獲取最大可用分辨率。 
-  ReconnectOnResChange一般不勾選(false)如果遇到開機直到登陸界面之前一直黑屏,那么勾選試試 
-  ReplaceTabWithSpace一般是勾選(true) 
-  UgaPassThrough一般不勾選(false) 
-  Resolution開機分辨率,自行選擇,如2560x1440;3840x2160等等。 
-  SanitiseClearScreen自行選擇(false或true) 
-  TextRenderer一般選SystemGraphics或SystemText,根據自己使用情況自行調整。 
? TextRenderer有4個選項:
? BuiltinGraphics — 切換到圖形模式并使用內置渲染器和自定義控制臺控件。選擇此項需要勾ProvideConsoleGop,并將Resolution設置為Max ? SystemGraphics — 切換到圖形模式并使用帶有自定義控制臺控件的系統渲染器。 ? SystemText — 切換到文本模式并使用帶有自定義控制臺控件。 ? SystemGeneric — 使用系統控制臺中的控件。 一般情況下首選設置是SystemGraphics或SystemText。啟用providecosolegop、將Resolution設置為Max、啟用ReplaceTabWithSpace,幾乎所有配置和機型都好用。特別說明下,機型設置為MacPro5,1只能選擇BuiltinGraphics3.8.10:Config-UEFI-ReservedMemory,用于填充plist dict值,避免系統寫入和使用特定設備或硬件的內存。
- Address:例如-268435456,設置預留內存區域的起始地址,防止系統訪問。
- Comment:例如-HD3000: IGPU memory corruption errata。
- Size:例如-268435456,設置保留內存區域的大小,必須與頁面對齊(4 kb)。
- Enabled:默認為false(關閉)則不預留上面的內存。
如有變化,保持更新!
附錄:
OpenCore黑蘋果引導配置說明0.7.1版PDF版下載
OpenCore黑蘋果引導配置說明0.7.0版PDF版下載
OpenCore黑蘋果引導配置說明0.6.9版PDF版下載
重要聲明:獨行秀才擁有此篇文字與圖片所有版權,嚴禁用于任何商業用途,否則將追究法律責任!特別是不建議在遠景論壇轉載,大概率會被遠景封號,謝謝合作!!
黑蘋果OpenCore開放群,群號:9422866,注明“獨行秀才Blog引入”
總結
以上是生活随笔為你收集整理的OpenCore黑苹果引导配置说明-基于OpenCore-0.7.1-07-06正式版的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 风丘科技为您提供电动汽车高压测试方案
- 下一篇: 【文章汇总】嵌入式Linux公众号
