我们需要的工具:

ACPI

说明:ProperTree:plist编辑器会自动添加

  • Delete

    • 已设置阻止了某些ACPI表的加载,请您忽
  • Patch

    • Info
      • 我们使用的是SSDT-GPIO,所以不需要修改,默认就可以
  • Quirks

    • 与ACPI有关的设置,保留所有默认设置

Booter

  • MmioWhitelist
    • 请您忽略
  • Quirks
    • AvoidRuntimeDefrag:YES
      • 修复UEFI运行时的服务,例如日期,时间,NVRAM,电源控制等
    • DevirtualiseMmio:YES
      • 对解决Z390上的内存分配问题非常有帮助,在Ice Lake和Z390 Coffee Lake上也需要
    • EnableWriteUnprotector:NO
      • 这个RebuildAppleMemoryMap通常会发生冲突,建议在较新的平台上禁用
    • ProtectUefiServices:YES
      • 保护UEFI服务免遭Z490所需的固件覆盖
    • RebuildAppleMemoryMap: YES
      • 生成与macOS兼容的内存映射,如果早期启动失败,请禁用此功能
    • SetupVirtualMap:NO
      • 华硕,技嘉和华擎主板不要启动此项
    • SyncRuntimePermissions:YES
      • 修复了与MAT表的对齐问题,以及使用MAT表引导Windows和Linux所需的引导问题
    • 将其保留为默认设置

DeviceProperties

  • Add

    • PciRoot(0x0)/Pci(0x2,0x0) 类型:Dictionary

      • AAPL,ig-platform-id 类型:Data

        • 07009B3E 使用CPU核显驱动来显示
        • 0300C89B 仅用于计算任务而不使用核显驱动来显示
      • 这是HD 630 (8代/9代的CPU)

        • framebuffer-patch-enable 类型:Data
          • 01000000
        • framebuffer-stolenmem 类型:Data
          • 00003001
    • 在高端Comet Lake板上找到的Intel i225-V 2.5GBe控制器需增加以下信息

      • PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
        • device-id 类型:Data
          • F2150000
    • 如果在i210 kext上出现内核崩溃,侧用以下信息

      • PciRoot(0x0)/Pci(0x1C,0x4)/Pci(0x0,0x0)
        • device-id 类型:Data
          • F2150000
    • PciRoot(0x0)/Pci(0x1b,0x0) 类型:Dictionary

      • 可以立即删除此属性
      • 在NVRAM——Add——7C436110-AB2A-4BBB-A880-FE41995C9F82——boot-args增加alcid=xxx参数,将覆盖存在的所有其他布局ID,请查看这里并确定您的声卡型号,然后找到对应的参数。https://github.com/acidanthera/AppleALC/wiki/Supported-codecs
      • 例如,声卡ALC892,alcid=xxx参数,可以设置为alcid=1参数image.png
  • Delete
    • 可以忽略此项

Kernel

  • Add 不用修改
    • 加载顺序 像Lilu这样的kext必须先加载,后再加载VirtualSMC,AppleALC,WhateverGreen,使用ProperTree工具可自动完成
    • 如果不想加载某个Kext,可以把Enabled设置为False
  • Block
    • 忽略
  • Emulate 伪装来欺骗不支持的CPU奔腾和赛扬等
    • CpuidMask
      • 留空
    • CpuidData
      • 留空
  • Force
    • 忽略
  • Patch

    • 忽略
  • Quirks

    • AppleCpuPmCfgLock:YES
      • 如果在BIOS中禁用了CFG-Lock,则不需要
    • AppleXcpmCfgLock:YES
      • 如果在BIOS中禁用了CFG-Lock,则不需要
    • CustomSMBIOSGuid:NO
      • 对UpdateSMBIOSMode自定义模式执行GUID修补。
    • DisableIOMapper:YES
      • 如果在BIOS中禁用了VT-D,则不需要,如果BIOS没有这一项就需要开启
    • DisableLinkeditJettison:YES
      • 允许Lilu和其他具有更可靠的性能,而无需keepsyms = 1
    • DisableRtcChecksum:NO
      • 适用于在重启/关机后收到BIOS重置或发送到安全模式的用户,阻止AppleRTC写入主校验和(0x58-0x59)
    • ExtendBTFeatureFlags:NO
      • 对于非Apple / Fenvi卡连续性问题有帮助
    • LapicKernelPanic:NO
      • HP惠普机器需要YES设置
    • LegacyCommpage:NO
      • 解决了macOS中对64位CPU的SSSE3要求,该要求主要与64位Pentium 4 CPU(即Prescott)有关
    • PanicNoKextDump:YES
      • 允许在发生内核紧急情况时读取内核紧急情况日志
    • PowerTimeoutKernelPanic:YES
      • 通过macOS Catalina中的Apple驱动程序(尤其是数字音频)帮助修复与电源更改有关的内核崩溃
    • XhciPortLimit:YES

      • 最好创建USB map映射
    • Scheme

      • 旧版引导相关的设置(即10.4-10.6)忽略

Misc

  • Boot
    • 保留为默认值
  • Debug

    • 会显示很多调试的信息,延迟启动时间
    • AppleDebug:YES 类型:Boolean
      • 启用boot.efi日志记录,对于调试非常有用。请注意,这仅在10.15.4及更高版本上受支持
    • ApplePanic:YES 类型:Boolean
      • 尝试将内核紧急情况记录到磁盘
    • DisableWatchDog:YES 类型:Boolean
      • 关闭UEFI监视系统,可以帮助解决早期启动问题
    • DisplayLevel:2147483650 类型:Number
      • 显示更多调试信息,需要OpenCore的调试版本
    • Target:67 类型:Number
      • 显示更多的调试信息,需要OpenCore的调试版本
    • SerialInit:NO
      • 使用OpenCore设置串行输出所需
    • SysReport:NO
      • 有助于调试,例如转储ACPI表
      • 请注意,这仅限于OpenCore的DEBUG版本
  • Security 这项很重要,请不要跳过

    • AllowNvramReset:YES 类型:Boolean
      • 允许在启动选择器中以及按Ctrl+Alt+P+R
    • AllowSetDefault:YES 类型:Boolean
      • 允许CTRL + Enter和CTRL + Index在选择器中设置默认启动设备
    • ApECID: 0
      • 保留默认值
    • AuthRestart:NO
      • 重启时不需要启用经过身份验证FileVault2密码
    • BootProtect:Bootstrap
      • 允许在EFI / OC / Bootstrap中使用Bootstrap.efi代替BOOTx64.efi
      • 对于希望使用rEFInd引导或避免从Windows覆盖BOOTx64.efi的用户很有用
    • DmgLoading:Signed
      • 确保仅限签名DMGs才加载
    • ExposeSensitiveData:6
      • 显示更多的调试信息,需要OpenCore的调试版本
    • Vault:Optional 类型:String
      • 务必设置为Optional,否则您会后悔
      • 请注意,区分大小写
    • ScanPolicy:0 类型:Number
    • SecureBootModel:Default 类型:String
      • 这是一个单词,区分大小写,如果您不希望安全启动,则设置为“ Disabled”(即,您需要Nvidia的Web驱动程序)
      • 通常把这项删除
  • Tools
    • 用于运行OC调试工具,例如shell,ProperTree的快照功能将为您添加这些内容,请您忽略
  • Entries
    • 请您忽略

NVRAM

  • Add
    • 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14 类型:Dictionary
      • DefaultBackgroundColor 类型:Data
        • boot.efi使用的背景颜色
        • 00000000:黑色
        • BFBFBF00:浅灰
      • UIScale 类型:Data
        • 01
          • 标准分辨率
        • 02
          • HiDPI 通常需要FileVault才能在较小的显示器上正常运行
    • 7C436110-AB2A-4BBB-A880-FE41995C9F82 类型:Dictionary
      • boot-args
        • -v
          • 这将启用详细模式,该模式显示启动时滚动显示的所有幕后文本,而不是Apple徽标和进度条。对于任何Hackintosher来说,这都是无价之宝,因为它可以让您深入了解启动过程,并可以帮助您识别问题,问题扩展等
        • debug=0x100
          • 这会禁用macOS的看门狗,这有助于防止内核崩溃时重启。这样,您可以收集一些有用的信息,并按照提示解决问题
        • keepsyms=1
          • 这是debug= 0x100的辅助设置,它告诉OS还在内核崩溃时打印符号。这样可以对引起崩溃的原因提供更多有用的说明
        • alcid=1
          • 用于设置AppleALC的layout-id,请参阅本页DeviceProperties—>PciRoot(0x0)/Pci(0x1b,0x0) 设置


  1. - GPU特别注意
  2. - agdpmod=pikera
  3. - 用于禁用Navi GPURX 5000系列)上的boardID,否则,您将获得黑屏。如果您没有Navi,请不要使用(即,PolarisVega卡不应使用此功能)注意,这里不是N卡,是A卡的Navi代号
  4. - -wegnoegpu
  5. - 禁用独显
  6. - csr-active-config 类型:Data
  7. - 0000000
  8. - 这将启用系统完整性保护(SIP)的设置
  9. - run-efi-updaterNo
  10. - 这用于防止Apple的固件更新程序包安装和破坏启动顺序
  11. - prev-lang:kbdzh-Hans:252en-US:0 类型:String
  12. - 键盘格式
  • Delete
    • LegacyEnable:NO 类型:Boolean
      • 允许将NVRAM存储在nvram.plist中,这是没有本机NVRAM的系统所需的
    • LegacyOverwrite:NO 类型:Boolean
      • 允许覆盖nvram.plist中的固件变量,这是没有本机NVRAM的系统才需要
    • LegacySchema
      • 用于分配NVRAM变量,将LegacyEnable设置为YES,不需要修改
    • WriteFlash:YES
      • 允许为所有添加的变量写入闪存

PlatformInfo

  • Automatic:YES
  • Generic
    • 要设置SMBIOS信息,对于此Comet Lake示例,我们选择了iMac20,1 SMBIOS,分类如下image.png
      1. - 当您拥有PascalMaxwell dGPU(独显)且带有Web驱动程序的macOS版本时,将使用18,3
      • 在macOS中支持的所有SMBIOS的完整列表,并带有CPU和GPU类型等额外信息,请看这里
      • SMBIOS使用方法,请看这里
      • 把SMBIOS填写到PlatformInfo —> Generic
        • Type复制到Generic -> SystemProductName
        • Serial复制到Generic -> SystemSerialNumber
        • Board Serial复制到Generic -> MLB
        • SmUUID复制到Generic -> SystemUUIDimage.png
  • ROM 类型:Data
    • 11223300 0000
  • AdviseWindows:NO
  • SystemMemoryStatus:Auto
  • ProcessorType:0
  • SpoofVendor:YES
  • UpdateDataHub:YES
  • UpdateNVRAM:YES
  • UpdateSMBIOS:YES
  • UpdateSMBIOSMode:Create

UEFI

  • ConnectDrivers:YES
  • Drivers
    • 这里只需放入2个.efi驱动程序
      • HfsPlus.efi
      • OpenRuntime.efi
  • APFS
    • 此处保留所有默认设置
  • Audio
    • 忽略
  • Input
    • 忽略
  • Output
    • 忽略
  • ProtocolOverrides
    • 忽略
  • Quirks
    • DeduplicateBootOrder:YES
      • 用于修复引导选项
    • RequestBootVarRouting:YES
    • UnblockFsConnect:NO
      • HP主板需要设置YES
  • ReservedMemory
    • 忽略

验证Config.plist

BIOS的设置