Desktop Coffee Lake

SupportoVersione
Supporto di macOS inizialemacOS 10.13, High Sierra

Punto d'Inizio

Fare un config.plist potrebbe sembrare difficile, ma non lo è. Ci metterai solo un po' di tempo ma questa guida ti dice come configurare il tutto, non rimarrai a bocca asciutta. Questo significa anche che se hai problemi, rivedi come hai impostato il config per essere sicuro che siano corrette. Le cose principali da definire con OpenCore:

  • Tutte le proprietà devono essere definite, non c'è un fallback di default, perciò non cancellare sezioni a meno che non ti sia esplicitamente richiesto. Se la guida non parla di quella sezione, lascia come il predefinito.
  • Il Sample.plist non può essere usato così com'è, devi configurarlo per il tuo sistema
  • NON USARE CONFIGURATORI, questi raramente rispettano la configurazione di OpenCore e alcuni di quelli come Mackie aggiungeranno proprietà di Clover o potrebbero corrompere il plist!

Ora che hai letto questo, un piccolo reminder degli strumenti necessari

E leggi questa guida una volta prima di impostare OpenCore e sii sicuro di aver impostato tutto correttamente. Nota che le immagini non potranno essere sempre aggiornatissime, perciò leggi le didascalie sotto, se nulla viene menzionato, lascia com'è di default.

ACPI

ACPI

Add

Informazioni

Qui aggiungerai i tuoi SSDT al sistema, sono molto importanti per avviare macOS e hanno molti usi come USB maps (EN), disabilitare GPU non supportate e altro. E con il nostro sistema, è soprattutto richiesto per l'avvio. Guide per farli può essere trovata qui: Iniziamo con ACPI

Nota che non dovresti aggiungere DSDT.aml qui, è aggiunto già dal tuo firmware. Perciò se presente, toglilo dal tuo config.plist e da EFI/OC/ACPI.

Gli SSDT hanno l'estensione .aml (Assembled) e andranno dentro la cartella EFI/OC/ACPI e devono essere specificati nel config anche nella sezione ACPI -> Add.

SSDT RichiestiDescrizione
SSDT-PLUGPermette il power management della CPU su Haswell e più recenti
SSDT-EC-USBXSistema il controller integrato e l'energia dei USB
SSDT-AWACQuesta è la 300 series RTC patchopen in new window, richiesta per la maggioranza delle MB B360, B365, H310, H370, Z390 e alcune Z370 che impediscono ai sistemi di avviare macOS. L'alternativa è SSDT-RTC0 per quando AWAC SSDT è incompatibile a causa della mancanza dell'orologio RTC legacy, per verificare se è necessario e quale utilizzare, vedere la pagina [Getting started with ACPI.
SSDT-PMCQuindi le vere schede madri della serie 300 (non Z370) non dichiarano il chip FW come MMIO in ACPI e quindi XNU ignora la regione MMIO dichiarata dalla mappa di memoria UEFI. Questo SSDT riporta il supporto NVRAM. Vedere [Getting Started With ACPI Guide fper maggiori dettagli.

Delete

Questa sezione previene il caricamento di certe tabelle ACPI, per noi è ignorabile.

Patch

Questa sezione ci permette di modificare dinamicamente le parti di ACPI (DSDT, SSDT, ecc.) tramite OpenCore. Per noi, le nostre patch sono legate agli SSDT. Questa è una soluzione più pulita perché ci permetterà di avviare Windows e altri sistemi con OpenCore

Quirks

Impostazioni relative a ACPI, lascia tutto come default dato che non useremo questi quirk.

Booter

Booter

Questa sezione è dedicata ai Quirks relativi al patching boot.efi con OpenRuntime, il sostituto di AptioMemoryFix.efi

MmioWhitelist

Questa sezione consente il passaggio dei dispositivi a macOS che vengono generalmente ignorati, per noi possiamo ignorare questa sezione.

Quirks

Info

Le impostazioni relative alle patch boot.efi e alle correzioni del firmware, per noi, dobbiamo modificare quanto segue:

QuirkEnabledComment
DevirtualiseMmioYES
EnableWriteUnprotectorNO
ProtectUefiServicesYESNecessario sul sistema Z390
RebuildAppleMemoryMapYES
SyncRuntimePermissionsYES
Informazioni più approfondite
  • AvoidRuntimeDefrag: YES
    • Risolve i servizi di runtime UEFI come data, ora, NVRAM, controllo dell'alimentazione, ecc.
  • DevirtualiseMmio: YES
    • Riduce l'ingombro della memoria rubata, espande le opzioni per i valori slide=N ed è molto utile per risolvere i problemi di allocazione della memoria su Z390. Richiede ProtectUefiServices anche su IceLake e Z390 Coffee Lake.
  • EnableSafeModeSlide: YES
    • Abilita le variabili di diapositiva da utilizzare in modalità provvisoria.
  • EnableWriteUnprotector: NO
    • Questa stranezza e RebuildAppleMemoryMap possono comunemente entrare in conflitto, consigliato abilitare quest'ultimo sulle piattaforme più recenti e disabilitare questa voce.
    • Tuttavia, a causa di problemi con gli OEM che non utilizzano le ultime build EDKII, potresti scoprire che la combinazione di cui sopra si tradurrà in errori di avvio precoce. Ciò è dovuto alla mancanza di MEMORY_ATTRIBUTE_TABLE e pertanto consigliamo di disabilitare RebuildAppleMemoryMap e abilitare EnableWriteUnprotector. Maggiori informazioni su questo sono trattate nella troubleshooting section.
  • ProtectUefiServices: NO
    • Protegge i servizi UEFI dall'override del firmware, principalmente rilevante per i sistemi VM, Icelake e Z390.
    • Se su Z390, abilita questo quirk.
  • ProvideCustomSlide: YES
    • Utilizzato per il calcolo della variabile Slide. Tuttavia la necessità di questa stranezza è determinata dal messaggio OCABC: Only N/256 slide values are usable! Nel registro di debug. Se il messaggio OCABC: All slides are usable! You can disable ProvideCustomSlide! è presente nel tuo registro, puoi disabilitare ProvideCustomSlide.
  • RebuildAppleMemoryMap: YES
    • Genera una mappa della memoria compatibile con macOS, può rompersi su alcuni firmware OEM di laptop, quindi se ricevi errori di avvio precoce, disabilitalo.
  • SetupVirtualMap: YES
    • Risolve le chiamate SetVirtualAddresses a indirizzi virtuali, non dovrebbe essere necessario su Skylake e versioni successive. Alcuni firmware come Gigabyte potrebbero ancora richiederlo e senza di questo si verificherà il panico del kernel.
  • SyncRuntimePermissions: YES
    • Corregge l'allineamento con le tabelle MAT ed è necessario per avviare Windows e Linux con le tabelle MAT, consigliato anche per macOS. Principalmente rilevante per gli utenti di RebuildAppleMemoryMap.

DeviceProperties

DeviceProperties

Add

Imposta le proprietà del dispositivo da una mappa.

PciRoot(0x0)/Pci(0x2,0x0)

Questa sezione è configurata tramite la Framebuffer Patching Guideopen in new window di WhateverGreen e viene utilizzata per impostare importanti proprietà iGPU. Se hai una CPU della serie -F, puoi ignorare questa sezione poiché non hai una iGPU.

AAPL,ig-platform-id è ciò che macOS utilizza per determinare come i driver iGPU interagiscono con il nostro sistema, e i due valori tra cui scegliere sono i seguenti:

AAPL,ig-platform-idComment
07009B3EUtilizzato quando l'iGPU desktop viene utilizzato per guidare un display
00009B3EAlternativa a 07009B3E se non funziona
0300913EUtilizzato quando Desktop iGPU viene utilizzato solo per attività di elaborazione e non gestisce un display
  • Nota: con macOS 10.15.5 e versioni successive, sembra che ci siano molti problemi di schermo nero usando 07009B3E, se riscontri problemi simili prova a scambiare con 00009B3E

Aggiungiamo anche altre 2 proprietà, framebuffer-patch-enable e framebuffer-stolenmem. The first enables patching via WhateverGreen.kext, the second sets the min stolen memory to 19MB Questo di solito non è necessario, poiché può essere configurato nel BIOS (64 MB consigliati) ma richiesto quando non è disponibile.

  • Nota: i framebuffer headless (dove la dGPU è il display in uscita) non sono necessariframebuffer-patch-enable and framebuffer-stolenmem

Per gli utenti con problemi di schermo nero dopo verbose su B360, B365, H310, H370, Z390, consultare la pagina BusID iGPU patching

KeyTypeValue
AAPL,ig-platform-idData07009B3E
framebuffer-patch-enableData01000000
framebuffer-stolenmemData00003001

(Questo è un esempio per un desktop UHD 630 senza una dGPU e nessuna opzione BIOS per la memoria iGPU)

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

layout-id

  • Applica l'iniezione audio AppleALC, dovrai fare la tua ricerca su quale codec ha la tua scheda madre e abbinarlo al layout di AppleALC. AppleALC Supported Codecsopen in new window.

  • You can delete this property outright as it's unused for us at this time

  • Puoi eliminare completamente questa proprietà poiché al momento non è utilizzata per noi

Per noi, useremo invece il boot-arg alcid = xxx per ottenere questo risultato. alcid sovrascriverà tutti gli altri ID di layout presenti. Maggiori informazioni su questo sono trattate nella Post-Install Page

Delete

Rimuove le proprietà del dispositivo dalla mappa, per noi possiamo ignorarlo

Kernel

Kernel

Add

Qui è dove specifichiamo quali kext caricare, in quale ordine specifico caricare e per quali architetture è destinato ciascun kext. Per impostazione predefinita, si consiglia di lasciare ciò che ha fatto ProperTree, tuttavia per le CPU a 32 bit, vedere di seguito:

Informazioni più approfondite

La cosa principale che devi tenere a mente è:

  • Load order
    • Remember that any plugins should load after its dependencies
    • This means kexts like Lilu must come before VirtualSMC, AppleALC, WhateverGreen, etc

A reminder that ProperTreeopen in new window users can run Cmd/Ctrl + Shift + R to add all their kexts in the correct order without manually typing each kext out.

  • Arch
    • Architetture supportate da questo kext
    • I valori attualmente supportati sono Any, i386 (32-bit), e x86_64 (64-bit)
  • BundlePath
    • Nome del kext
    • es: Lilu.kext
  • Enabled
    • Autoesplicativo, abilita o disabilita kext
  • ExecutablePath
    • Il percorso dell'eseguibile effettivo è nascosto all'interno di kext, puoi vedere quale percorso ha il tuo kext facendo clic con il pulsante destro del mouse e selezionando Show Package Contents. Generalmente sarà Contents/MacOS/Kext ma alcuni hanno kext nascosti nella cartella Plugin. Nota che i kexto con il solo plist non hanno bisogno di questo campo.
    • es: Contents/MacOS/Lilu
  • MinKernel
    • la versione del kernel più bassa in cui verrà iniettato kext, vedere la tabella sotto per i valori possibili
    • es. 12.00.00 for OS X 10.8
  • MaxKernel
    • La versione più alta del kernel in cui verrà iniettato il tuo kext, vedi la tabella sotto per i possibili valori
    • es. 11.99.99 for OS X 10.7
  • PlistPath
    • Percorso a info.plist nascosto all'interno di kext
    • es: Contents/Info.plist
Tabella di supporto del kernel
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
1322.0.022.99.99

Emulate

Necessario per lo spoofing di CPU non supportate come Pentium e Celeron

  • CpuidMask: Lascia questo vuoto
  • CpuidData: Lascia questo vuoto

Force

Utilizzato per caricare kext dal volume di sistema, rilevante solo per i sistemi operativi più vecchi in cui alcuni kext non sono presenti nella cache (es. IONetworkingFamily nella 10.6).

Noi lo possiamo ignorare.

Block

Blocca il caricamento di determinati kext. Non rilevante per noi.

Patch

Corregge sia il kernel che kexts.

Quirks

Info

Impostazioni relative al kernel, noi abiliteremo quanto segue:

QuirkEnabledComment
AppleXcpmCfgLockYESNon necessario se "CFG-Lock" è disabilitato nel BIOS
DisableIoMapperYESNon necessario se "VT-D" è disabilitato nel BIOS
LapicKernelPanicNOLe macchine HP richiederanno questo quirk
PanicNoKextDumpYES
PowerTimeoutKernelPanicYES
XhciPortLimitYESDisable if running macOS 11.3+
Informazioni più approfondite
  • AppleCpuPmCfgLock: NO
    • Necessario solo quando CFG-Lock non può essere disabilitato nel BIOS
    • Applicabile solo per Ivy Bridge e versioni precedenti
      • Nota: Broadwell e versioni precedenti richiedono questo quando si esegue 10.10 o versioni precedenti
  • AppleXcpmCfgLock: YES
    • Necessario solo quando CFG-Lock non può essere disabilitato nel BIOS
    • Applicabile solo per Haswell e versioni successive
      • Nota: anche Ivy Bridge-E è incluso poiché supporta XCPM
  • CustomSMBIOSGuid: NO
    • Esegue la patch GUID per UpdateSMBIOSMode impostato su Custom. Solitamente rilevante per i laptop Dell
    • L'abilitazione di questo Quirk con la modalità UpdateSMBIOSMode Custom può anche disabilitare l'iniezione di SMBIOS in sistemi operativi "non Apple", tuttavia non approviamo questo metodo poiché interrompe la compatibilità con Bootcamp. Utilizzare a proprio rischio
  • DisableIoMapper: YES
    • Necessario per aggirare VT-D se non è possibile disabilitare nel BIOS o necessario per altri sistemi operativi, un'alternativa molto migliore a dart = 0 poiché SIP può rimanere attivo in Catalina
  • DisableLinkeditJettison: YES
    • Permette a Lilu e ad altri di avere prestazioni più affidabili senza keepyms = 1
  • DisableRtcChecksum: NO
    • Impedisce ad AppleRTC di scrivere nel checksum principale (0x58-0x59), richiesto per gli utenti che ricevono il ripristino del BIOS o vengono inviati in modalità provvisoria dopo il riavvio/spegnimento
  • ExtendBTFeatureFlags NO
    • Utile per chi ha problemi di continuità con schede non Apple/non Fenvi
  • LapicKernelPanic: NO
    • Disabilita il kernel panic su AP core lapic interrupt, generalmente necessario per i sistemi HP. L'equivalente in Clover è Kernel LAPIC
  • LegacyCommpage: NO
    • Risolve il requisito SSSE3 per le CPU a 64 bit in macOS, principalmente rilevante per le CPU Pentium 4 a 64 bit (es. Prescott)
  • PanicNoKextDump: YES
    • Consente di leggere i log del kernel panic quando si verificano i kernel panic
  • PowerTimeoutKernelPanic: YES
    • Aiuta a risolvere i problemi di panico del kernel relativi ai cambiamenti di alimentazione con i driver Apple in macOS Catalina, in particolare con l'audio digitale.
  • SetApfsTrimTimeout: -1
  • Imposta il timeout del Trim in microsecondi per i file system APFS su SSD, applicabile solo per macOS 10.14 e versioni successive con SSD problematici.
  • XhciPortLimit: YES
    • Questa è in realtà la patch del limite di 15 porte, non fare affidamento su di essa perché non è una soluzione garantita per riparare USB. Crea un file USB map quando possibile.

Il motivo è che UsbInjectAll reimplementa la funzionalità macOS incorporata senza un'adeguata regolazione corrente. È molto più pulito descrivere le tue porte in un unico kext solo plist, che non sprecherà memoria di runtime e simili

Scheme

Impostazioni relative all'avvio legacy (es. 10.4-10.6), per la maggior parte puoi saltare, tuttavia per coloro che intendono avviare sistemi operativi legacy vedere qui di seguito:

Informazioni più approfondite
  • FuzzyMatch: True

    • Usato per ignorare i checksum con kernelcache, optando invece per l'ultima cache disponibile. Può aiutare a migliorare le prestazioni di avvio su molte macchine in 10.6
  • KernelArch: x86_64

    • Imposta il kernel's arch type, puoi scegliere tra Auto, i386 (32-bit), e x86_64 (64-bit).
    • Se stai avviando sistemi operativi meno recenti che richiedono un kernel a 32 bit (es. 10.4 e 10.5), ti consigliamo di impostarlo su Auto e lasciare che macOS decida in base al tuo SMBIOS. Vedere la tabella sottostante per i valori supportati:
      • 10.4-10.5 — x86_64, i386 o i386-user32
        • i386-user32 fa riferimento allo spazio utente a 32 bit, quindi le CPU a 32 bit devono utilizzarlo (o le CPU che non hanno SSSE3)
        • x86_64 avrà ancora uno spazio del kernel a 32 bit, tuttavia garantirà uno spazio utente a 64 bit nella versione 10.4/5
      • 10.6 — i386, i386-user32, or x86_64
      • 10.7 — i386 or x86_64
      • 10.8 o più recenti — x86_64
  • KernelCache: Auto

    • Imposta il tipo di cache del kernel, utile principalmente per il debug e quindi consigliamo Auto per il miglior supporto

Misc

Misc

Boot

Info

QuirkAbilitataCommento
HideAuxiliaryYESPremi spazio per mostrare le recovery di macOS e altre entry ausiliarie
Più informazioni
  • HideAuxiliary: YES
    • Questa opzione nasconderà menù secondari, come le recovery di macOS e altri strumenti, dal picker. Nasconderle potrebbe incrementare le prestazioni di avvio in sistemi con più dischi. Puoi premere spazio per mostrare le opzioni nascoste

Debug

Info

Utile per il debug dei problemi di avvio di OpenCore (cambieremo tutto tranne DisplayDelay):

QuirkEnabled
AppleDebugYES
ApplePanicYES
DisableWatchDogYES
Target67
Informazioni più approfondite
  • AppleDebug: YES
    • Abilita la registrazione di boot.efi, utile per il debug. Nota che questo è supportato solo su 10.15.4 e versioni successive
  • ApplePanic: YES
    • Tenta di registrare i kernel panic su disco
  • DisableWatchDog: YES
    • Disabilita il watchdog UEFI, può aiutare con problemi precoci di avvio
  • DisplayLevel: 2147483650
    • Mostra ancora più informazioni di debug, richiede la versione di debug di OpenCore
  • SysReport: NO
    • Utile per il debug come il dumping delle tabelle ACPI
    • Nota che questo è limitato alle versioni DEBUG di OpenCore
  • Target: 67
    • Mostra più informazioni di debug, richiede la versione di debug di OpenCore

Questi valori si basano su quelli calcolati inOpenCore debugging

Security

Info

Sicurezza è abbastanza autoesplicativa, Non saltare questo passo. Modificheremo quanto segue:

QuirkEnabledComment
AllowSetDefaultYES
BlacklistAppleUpdateYES
ScanPolicy0
SecureBootModelDefaultLasciare Default per permettere ad OpenCore di settare automaticamente il valore corretto per il tuo SMBIOS
VaultOptionalQuesta è una parola, non è facoltativo omettere questa impostazione. Te ne pentirai se non lo imposti su Optional, nota che fa distinzione tra maiuscole e minuscole
Informazioni più approfondite
  • AllowSetDefault: YES

    • Permette CTRL+Enter e CTRL+Index per impostare il dispositivo di avvio predefinito nel selettore
  • ApECID: 0

    • Utilizzato per la rete di identificatori di avvio sicuro personalizzati, attualmente questo Quirk non è affidabile a causa di un bug nell'installer di macOS, quindi ti consigliamo vivamente di lasciarlo come predefinito.
  • AuthRestart: NO

    • Abilita il riavvio autenticato per FileVault 2 in modo che la password non sia richiesta al riavvio. Può essere considerato un rischio per la sicurezza quindi opzionale
  • BlacklistAppleUpdate: YES

    • Utilizzato per bloccare gli aggiornamenti del firmware, utilizzato come ulteriore livello di protezione poiché macOS Big Sur non utilizza più la variabile run-efi-updater
  • DmgLoading: Signed

    • Assicura il caricamento solo dei DMG firmati
  • ExposeSensitiveData: 6

    • Mostra più informazioni di debug, richiede la versione di debug di OpenCore
  • Vault: Optional

    • Non ci occuperemo del vaulting quindi possiamo ignorare, non avvierai con questo settato su Secure
    • Questa è una parola, non è facoltativo omettere questa impostazione. Te ne pentirai se non lo imposti su Optional, nota che fa distinzione tra maiuscole e minuscole
  • ScanPolicy: 0

    • 0 consente di vedere tutte le unità disponibili, fare riferimento alla sezione Security per ulteriori dettagli. Non avvierà i dispositivi USB con l'impostazione predefinita
  • SecureBootModel: Default

    • Controlla le funzionalità di avvio sicuro di Apple in macOS, fare riferimento alla sezione Security per ulteriori informazioni.
    • Nota: gli utenti potrebbero scoprire che l'aggiornamento di OpenCore su un sistema già installato può causare errori precoci di avvio. Per risolvere questo problema, vedere qui: Stuck on OCB: LoadImage failed - Security Violation

Serial

Usato per il debugging da porta seriale (Lasciare tutto come in default).

Tools

Utilizzata per eseguire strumenti di debug OC come la shell, la funzione snapshot di ProperTree li aggiungerà per te.

Entries

Utilizzato per specificare percorsi di avvio irregolari che non possono essere trovati naturalmente con OpenCore.

Non verrà trattato qui, vedere 8.6 di Configuration.pdfopen in new window per maggiori informazioni

NVRAM

NVRAM

Add

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

Utilizzato per il ridimensionamento dell'interfaccia utente di OpenCore, l'impostazione predefinita funzionerà per noi. Vedere la sezione approfondita per maggiori informazioni

Informazioni più approfondite

Booter Path, utilizzato principalmente per il ridimensionamento dell'interfaccia utente

  • UIScale:

    • 01: Standard resolution
    • 02: HiDPI (generalmente richiesto per il corretto funzionamento di FileVault su schermi più piccoli)
  • DefaultBackgroundColor: Colore di sfondo utilizzato da boot.efi

    • 00000000: Syrah Black
    • BFBFBF00: Light Gray

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

GUID NVRAM di OpenCore, principalmente rilevante per chi usa RTCMemoryFixup

Informazioni più approfondite
  • rtc-blacklist: <>

7C436110-AB2A-4BBB-A880-FE41995C9F82

System Integrity Protection bitmask

  • Argomenti di avvio generici:
Argomenti di avvioDescrizione
-vCiò abilita la modalità dettagliata, che mostra tutto il testo dietro le quinte che scorre durante l'avvio invece del logo Apple e della barra di avanzamento. È inestimabile per qualsiasi Hackintosher, in quanto ti offre uno sguardo all'interno del processo di avvio e può aiutarti a identificare problemi, kext di problemi, ecc.
debug=0x100Questo disabilita il watchdog di macOS che aiuta a prevenire un riavvio in caso di kernel panic. In questo modo puoi si spera raccogliere alcune informazioni utili e seguire i breadcrumb per superare i problemi.
keepsyms=1Questa è un'impostazione complementare per debug = 0x100 che dice al sistema operativo di stampare anche i simboli in caso di kernel panic. Ciò può fornire informazioni più utili su ciò che sta causando il panico stesso.
npci=0x2000Questo disabilita alcuni debug PCI relativi a kIOPCIConfiguratorPFM64, l'alternativa è npci= 0x3000 che disabilita anche il debug relativo a gIOPCITunnelledKey. Necessario per quando si rimane bloccati su PCI Start Configuration poiché ci sono conflitti IRQ relativi alle proprie corsie PCI. Sourceopen in new window
alcid=1Usato per impostare il layout-id per AppleALC, vedi codec supportatiopen in new window per capire quale layout usare per il tuo sistema specifico. Maggiori informazioni su questo sono trattate nella pagina di post-installazione
  • Argomenti di avvio specifici per GPU:
Argomenti di avvioDescrizione
agdpmod=pikeraUtilizzato per disabilitare il controllo del board ID su GPU Navi (serie RX 5000), senza di questo otterrai una schermata nera. Non usare se non hai Navi (es. Le schede Polaris e Vega non dovrebbero usarlo)
-radcodecUsato per permettere GPU AMD non permesse usando Hardware Video Encoder
radpg=15Usato per disabilitare alcune modalità power-gating, aiuta per inizializzare GPU AMD Cape Verde
unfairvga=1Usato per fixare il supporto hardware DRM nelle GPU AMD
nvda_drv_vrl=1Utilizzato per abilitare i Web Driver di NVIDIA su schede Maxwell e Pascal in Sierra e High Sierra
-wegnoegpuUsed for disabling all other GPUs than the integrated Intel iGPU, useful for those wanting to run newer versions of macOS where their dGPU isn't supported
  • csr-active-config: 00000000

    • Impostazioni per "System Integrity Protection" (SIP). In genere si consiglia di cambiarlo con csrutil tramite la partizione di ripristino.
    • csr-active-config per impostazione predefinita è impostato su00000000 che abilita la protezione dell'integrità del sistema. Puoi scegliere un numero di valori diversi, ma nel complesso consigliamo di mantenerlo abilitato per le migliori pratiche di sicurezza. Maggiori informazioni possono essere trovate nella nostra pagina di risoluzione dei problemi: Disabilitare SIP
  • run-efi-updater: No

    • Viene utilizzato per impedire ai pacchetti di aggiornamento del firmware di Apple di installare e interrompere l'ordine di avvio; questo è importante in quanto questi aggiornamenti del firmware (pensati per i Mac) non funzioneranno.
  • prev-lang:kbd: <>

    • Necessario per tastiere non latine nel formato lang-COUNTRY: keyboard, consigliato di lasciare il campo vuoto sebbene sia possibile specificarlo(L'impostazione predefinita nella configurazione di esempio è il russo):
    • American: en-US:0(656e2d55533a30 in HEX)
    • L'elenco completo è disponibile in AppleKeyboardLayouts.txtopen in new window
    • Hint: prev-lang:kbd può essere cambiato in una stringa in modo da poter inserire direttamente en-US:0 invece di convertirlo in HEX
KeyTypeValue
prev-lang:kbdStringen-US:0

Delete

Info

Riscrive forzatamente le variabili NVRAM, si noti che Add non sovrascriverà i valori già presenti nella NVRAM, quindi valori come Argomenti di avvio dovrebbero essere lasciati soli. A causa di problemi con la NVRAM su X99, modificheremo quanto segue:

QuirkEnabled
WriteFlashYES
Informazioni più approfondite
  • LegacyOverwrite: YES

    • Consente la sovrascrittura delle variabili del firmware da nvram.plist, necessario solo per i sistemi senza NVRAM nativa come X99
  • LegacySchema

    • Utilizzato per assegnare variabili NVRAM, utilizzato con OpenVariableRuntimeDxe.efi. Necessario solo per sistemi senza NVRAM nativa
  • WriteFlash: NO

    • Consente la scrittura nella memoria flash per tutte le variabili aggiunte, non compatibile con la NVRAM emulata

PlatformInfo

PlatformInfo

Info

Per impostare le informazioni SMBIOS, utilizzeremo l'applicazione GenSMBIOSopen in new window di CorpNewt.

Per questo esempio Coffee Lake , sceglieremo iMac19,1 SMBIOS - questo viene fatto intenzionalmente per motivi di compatibilità. Esistono due SMBIOS principali utilizzati per Coffee Lake:

SMBIOSHardware
iMac19,1Per Mojave e più recenti
iMac18,3Per High Sierra e precedenti
  • Userai 18,3 quando hai una dGPU Pascal o Maxwell e sei limitato alle versioni di macOS con Web Driver

Esegui GenSMBIOS, scegli l'opzione 1 per scaricare MacSerial e l'opzione 3 per selezionare SMBIOS. Questo ci darà un output simile al seguente:

  #######################################################
 #               iMac19,1 SMBIOS Info                  #
#######################################################

Type:         iMac19,1
Serial:       C02XG0FDH7JY
Board Serial: C02839303QXH69FJA
SmUUID:       DBB364D6-44B2-4A02-B922-AB4396F16DA8

La parte Type viene copiata in Generic -> SystemProductName.

La parte Serial viene copiata in Generic -> SystemSerialNumber.

La parte Board Serial viene copiata in Generic -> MLB.

La parte SmUUID viene copiata in Generic -> SystemUUID.

Possiamo impostare Generic -> ROM su una ROM Apple (ricavata da un vero Mac), o sul tuo indirizzo MAC NIC o qualsiasi indirizzo MAC casuale (potrebbe essere solo 6 byte casuali, per questa guida useremo 11223300 0000. Dopo segui la paginaFixing iServices su come trovare il tuo vero indirizzo MAC)

Ricorda che ti serve un numero di serie non valido! Quando poni il tuo seriale nella Apple's Check Coverage Pageopen in new window, dovresti ottenere il messaggio "Numero di serie non valido."

Automatic: YES

  • Genera PlatformInfo in base alla sezione generica anziché alle sezioni DataHub, NVRAM e SMBIOS

Generic

Informazioni più approfondite
  • AdviseFeatures: NO

    • Utilizzato quando la partizione EFI non è la prima sull'unità di Windows
  • MaxBIOSVersion: NO

    • Imposta la versione del BIOS su Max per evitare gli aggiornamenti del firmware in Big Sur +, applicabile principalmente a Mac originali.
  • ProcessorType: 0

    • Impostare a "0" per il rilevamento automatico del tipo, tuttavia questo valore può essere sovrascritto se lo si desidera. Vedi AppleSmBios.hopen in new window per i possibili valori
  • SpoofVendor: YES

    • Scambia il campo fornitore per Acidanthera, generalmente non è sicuro utilizzare Apple come fornitore nella maggior parte dei casi
  • SystemMemoryStatus: Auto

    • Imposta se la memoria è saldata o meno nelle informazioni SMBIOS, puramente cosmetica e quindi si consiglia Auto
  • UpdateDataHub: YES

    • Aggiorna i campi di Data Hub
  • UpdateNVRAM: YES

    • Aggiorna i campi NVRAM
  • UpdateSMBIOS: YES

    • Aggiorna i campi SMBIOS
  • UpdateSMBIOSMode: Create

    • Sostituisci le tabelle con EfiReservedMemoryType appena allocato, usa Custom su laptops Dell che richiedono il Quirk CustomSMBIOSGuid
    • L'impostazione su Custom con il quirk CustomSMBIOSGuid abilitato può anche disabilitare l'iniezione SMBIOS in sistemi operativi "non Apple", tuttavia non supportiamo questo metodo poiché interrompe la compatibilità Bootcamp. Utilizzare a proprio rischio

UEFI

UEFI

ConnectDrivers: YES

  • Forza i driver .efi, la modifica a NO connetterà automaticamente i driver UEFI aggiunti. Ciò può rendere l'avvio leggermente più veloce, ma non tutti i driver si connettono da soli. Per esempio. alcuni driver del file system potrebbero non essere caricati.

Drivers

Aggiungi qui i tuoi driver .efi.

I soli driver presenti qui dovrebbero essere:

  • HfsPlus.efi
  • OpenRuntime.efi
Informazioni dettagliate
ChiaveTipoDescrizione
PathStringPercorso del file dalla cartella OC/Drivers
LoadEarlyBooleanCarica il driver prima del setup della NVRAM, dovrebbe essere abilitato solo per OpenRuntime.efi e OpenVariableRuntimeDxe.efi se si usa NVRAM legacy
ArgumentsStringAlcuni driver possono accettare ulteriori argomenti che vanno specificati qui.

APFS

Di default, OpenCore carica solamente alcuni driver APFS per cui la minima versione supportata è Big Sur. Se devi avviare Catalina o meno recenti, devi impostare ulteriori dati.

Non farlo potrebbe rendere nascosta la partizione con macOS da OpenCore!

macOS Sierra e meno recenti usano HFS al posto di APFS. Puoi ignorare questa sezioni per sistemi che usano HFS.

Versioni di APFS

Vanno cambiate sia MinVersion che MinDate.

Versione di macOSMin VersionMin Date
High Sierra (10.13.6)74807700800000020180621
Mojave (10.14.6)94527500700000020190820
Catalina (10.15.4)141210100100000020200306
Nessuna restrizione-1-1

Audio

Relativamente alle impostazioni di AudioDxe, per noi ignoreremo (lasciare come impostazione predefinita). Questo non è correlato al supporto audio in macOS.

  • Per un ulteriore utilizzo di AudioDxe e della sezione Audio, consultare la pagina Post Install: Add GUI and Boot-chime

Input

In relazione al passthrough della tastiera boot.efi utilizzato per FileVault e il supporto dei tasti di scelta rapida, lasciare tutto qui come predefinito poiché non abbiamo alcun uso per questei Quirks. Vedi qui per maggiori dettagli: Security and FileVault

Output

Relativamente all'output visivo di OpenCore, lascia tutto qui come predefinito.

Informazioni più dettagliate
QuirkValoreCommento
UIScale00 sceglierà automaticamente in base alla risoluzione
-1 lascerà quella di default
1 per 1x scaling, per display normali
2 per 2x scaling, per display HiDPI

ProtocolOverrides

Principalmente rilevante per macchine virtuali, Mac legacy e utenti FileVault. Vedi qui per maggiori dettagli: Security and FileVault

Quirks

Info

Riguardo ai Quirk con l'ambiente UEFI, per noi cambieremo quanto segue:

QuirkEnabledComment
IgnoreInvalidFlexRatioYES
UnblockFsConnectNONecessario principalmente dalle schede madri HP
Informazioni più approfondite
  • DisableSecurityPolicy: NO

    • Disabilita i criteri di sicurezza della piattaforma nel firmware, consigliato per firmware con bug in cui la disabilitazione di Secure Boot non consente il caricamento dei driver del firmware di terze parti.
    • Se si esegue un dispositivo Microsoft Surface, si consiglia di abilitare questa opzione
  • RequestBootVarRouting: YES

    • Reindirizza AptioMemoryFix da EFI_GLOBAL_VARIABLE_GUID a OC_VENDOR_VARIABLE_GUID. Necessario quando il firmware tenta di eliminare le voci di avvio e si consiglia di abilitarlo su tutti i sistemi per la corretta installazione degli aggiornamenti, il funzionamento del pannello di controllo del disco di avvio, ecc.
  • UnblockFsConnect: NO

    • Alcuni firmware bloccano gli handle di partizione aprendoli in modalità By Driver, che impedisce l'installazione dei protocolli di file system. Principalmente rilevante per i sistemi HP quando non sono elencate le unità

ReservedMemory

Utilizzato per escludere determinate regioni di memoria dai sistemi operativi da utilizzare, principalmente rilevante per iGPU Sandy Bridge o sistemi con memoria difettosa. L'uso di questa stranezza non è trattato in questa guida

Impostazioni BIOS Intel

  • Nota: la maggior parte di queste opzioni potrebbe non essere presente nel tuo firmware, ti consigliamo di abbinarle il più fedelmente possibile, ma non preoccuparti se molte di queste opzioni non sono disponibili nel tuo BIOS

Disabilita

  • Fast Boot
  • Secure Boot
  • Serial/COM Port
  • Parallel Port
  • VT-d (può essere disabilitata se impostato DisableIoMapper to YES)
  • CSM
  • Thunderbolt (per l'installazione iniziale, poiché Thunderbolt può causare problemi se non configurato correttamente)
  • Intel SGX
  • Intel Platform Trust
  • CFG Lock (MSR 0xE2 write protection)(Deve essere disattivato, se non riesci a trovare l'opzione abilita AppleXcpmCfgLock in Kernel->Quirks. Il tuo hack non si avvierà con CFG-Lock abilitato)

Abilita

  • VT-x
  • Above 4G decoding
  • Hyper-Threading
  • Execute Disable Bit
  • EHCI/XHCI Hand-off
  • Compatibility Support Module (CSM)* DVMT Pre-Allocated(iGPU Memory): 64MB
  • SATA Mode: AHCI

Una volta completato, dobbiamo sistemare ancora un paio di cose. Fai un salto alla pagina riguardo a Apple Secure Boot

Ultimo Aggiornamento:
Chi ha contribuito alla creazione di questa pagina: Mykola Grymalyuk, khronokernel, Dhinak G, tiziodcaio, Dhinak G, Mykola Grymalyuk, khronokernel, Daniele TDC, Daniele TDC, tiziodcaio, tiziodcaio, Aleksandar Kovač, Alyx Ferrari, Avery Black, Catalina Hack, Chris Paslawski, Gengik84, Hameer Abbasi, Jamie, Rasmus Lerdorf, Volodymyr Shcherbinin (vovin), Yasen, arfaWong, derbalkon, dreamwhite, hkusdaryanto, Daniele TDC