/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean \nFailsafe: false \nDescription: Enables writing to flash memory for all added variables. \nNote: This value is recommended to be enabled on most firmwares, but is left configurable for firmwares that may have issues with NVRAM variable storage garbage collection or alike."; ObjectID = "0qd-Qe-41F"; */ "0qd-Qe-41F.ibShadowedToolTip" = "允许为所有添加的变量写入闪存。\n建议在大多数固件上启用此值,但对于可能与NVRAM变量存储垃圾收集等有关的固件,则可对其进行单独设置."; /* Class = "NSTableColumn"; headerCell.title = "Key"; ObjectID = "1Hp-YT-QB3"; */ "1Hp-YT-QB3.headerCell.title" = "键"; /* Class = "NSMenuItem"; title = "STRING"; ObjectID = "2GE-aT-481"; */ "2GE-aT-481.title" = "字符"; /* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nDescription: Enables loading of NVRAM variable file named nvram.plist from EFI volume root.\nThis file must have root plist dictionary type and contain two fields:\n• Version — plist integer, file version, must be set to 1.\n• Add — plist dictionary, equivalent to Add from config.plist.\nVariable loading happens prior to Block (and Add) phases, and will not overwrite any existing variable. Variables allowed to be set must be specified in LegacySchema. Third-party scripts may be used to create nvram.plist file. An example of such script can be found in Utilities. The use of third-party scripts may require ExposeSensitiveData set to 0x3 to provide boot-path variable with OpenCore EFI partition UUID.\n\nWARNING: This feature is very dangerous as it passes unprotected data to your firmware variable services. Use it only when no hardware NVRAM implementation is provided by the firmware or it is incompatible."; ObjectID = "2KJ-kg-wip"; */ "2KJ-kg-wip.ibShadowedToolTip" = "允许从EFI卷根目录加载名为nvram.plist的NVRAM变量文件。\n没有原生NVRAM的设备设置为YES\nmacOS下硬件NVRAM工作不正常的设备设置为YES\nmacOS 下硬件 NVRAM 工作正常的设备设置为 NO\n变量加载发生在“block”(和“add”)阶段之前,并且不会覆盖任何现有变量。 必须在LegacySchema中指定允许设置的变量。 第三方脚本可用于创建nvram.plist文件。 此类脚本的示例可以在“实用工具”中找到。 使用第三方脚本可能需要将ExposeSensitiveData设置为0x3才能为OpenCore EFI分区UUID提供引导路径变量。\n警告:此功能非常危险,因为它将不受保护的数据传递到固件可变服务。 仅当固件未提供硬件NVRAM实现或与固件不兼容时才使用它。"; /* Class = "NSMenuItem"; title = "DATA"; ObjectID = "5S9-qs-ueO"; */ "5S9-qs-ueO.title" = "数据"; /* Class = "NSMenuItem"; title = "NUMBER"; ObjectID = "C9A-DN-Ig8"; */ "C9A-DN-Ig8.title" = "数字"; /* Class = "NSTableColumn"; headerCell.title = "Value"; ObjectID = "Eac-Nq-33R"; */ "Eac-Nq-33R.headerCell.title" = "值"; /* Class = "NSTableColumn"; headerCell.title = "UUID"; ObjectID = "Lmb-kn-JbT"; */ "Lmb-kn-JbT.headerCell.title" = "UUID"; /* Class = "NSBox"; title = "Box"; ObjectID = "NoT-Wv-Hn9"; */ "NoT-Wv-Hn9.title" = "Box"; /* Class = "NSButtonCell"; title = "LegacyEnable"; ObjectID = "ORI-69-MG3"; */ "ORI-69-MG3.title" = "LegacyEnable"; /* Class = "NSView"; ibShadowedToolTip = "3. LegacySchema\nType: plist dict\nDescription: Allows setting select NVRAM variables from a map (plist dict) of GUIDs to an array (plist array) of variable names in plist string format.\nYou can use * value to accept all variables for select GUID.\nWARNING: Choose variables very carefully, as nvram.plist is not vaulted. For instance, do not put boot-args or csr-active-config, as this can bypass SIP.\nTo read NVRAM variable value from macOS one could use nvram by concatenating variable GUID and name separated by : symbol. For example, nvram 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args.\nA continuously updated variable list can be found in a corresponding document: NVRAM Variables.\n\nWARNING: Choose variables very carefully, as nvram.plist is not vaulted. For instance, do not put boot-args\nor csr-active-config, as this can bypass SIP."; ObjectID = "cVF-o8-z0z"; */ "cVF-o8-z0z.ibShadowedToolTip" = "用于分配 NVRAM 变量, 与 LegacyEnable 配合使用\n您可以使用*值来接受所有用于选择GUID的变量。\n警告:由于nvram.plist未被存储,因此请非常谨慎地选择变量。 例如,请勿放入boot-args或csr-active-config,因为这会绕过SIP。\n要从macOS读取NVRAM变量值,可以使用nvram,方法是将变量GUID和名称以:符号分隔。 例如,nvram 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args。\n可以在相应的文档:NVRAM变量中找到连续更新的变量列表。\n警告:由于nvram.plist未被存储,因此请非常谨慎地选择变量。 例如,不要放入boot-args或csr-active-config,因为它可以绕过SIP。"; /* Class = "NSTabViewItem"; label = "Block"; ObjectID = "dmH-cD-uzh"; */ "dmH-cD-uzh.label" = "阻止"; /* Class = "NSTabViewItem"; label = "Add"; ObjectID = "eSY-j6-jWD"; */ "eSY-j6-jWD.label" = "添加"; /* Class = "NSTableColumn"; headerCell.title = "Key"; ObjectID = "ia9-0E-fQ8"; */ "ia9-0E-fQ8.headerCell.title" = "键"; /* Class = "NSTableColumn"; headerCell.title = "Type"; ObjectID = "imy-5n-EEC"; */ "imy-5n-EEC.headerCell.title" = "类型"; /* Class = "NSTableColumn"; headerCell.title = "Key*"; ObjectID = "j1D-Eg-beZ"; */ "j1D-Eg-beZ.headerCell.title" = "键*"; /* Class = "NSButtonCell"; title = "WriteFlash"; ObjectID = "oGQ-n7-FKX"; */ "oGQ-n7-FKX.title" = "WriteFlash"; /* Class = "NSTabViewItem"; label = "LegacySchema"; ObjectID = "oWw-vt-aiZ"; */ "oWw-vt-aiZ.label" = "LegacySchema"; /* Class = "NSTableColumn"; headerCell.title = "UUID"; ObjectID = "olA-O6-ChW"; */ "olA-O6-ChW.headerCell.title" = "UUID"; /* Class = "NSView"; ibShadowedToolTip = "2. Block\nType: plist dict\nDescription: Removes NVRAM variables from a map (plist dict) of GUIDs to an array (plist array) of variable names in plist string format.\nTo read NVRAM variable value from macOS one could use nvram by concatenating variable GUID and name separated by : symbol. For example, nvram 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args.\nA continuously updated variable list can be found in a corresponding document: NVRAM Variables."; ObjectID = "ph9-2g-adH"; */ "ph9-2g-adH.ibShadowedToolTip" = "强制重写 NVRAM 变量, 由于 Add 不会覆盖 NVRAM 中已经存在的值, boot-args 需要利用此项来刷新"; /* Class = "NSTableColumn"; headerCell.title = "UUID"; ObjectID = "rFf-nE-Twf"; */ "rFf-nE-Twf.headerCell.title" = "UUID"; /* Class = "NSTableView"; ibShadowedToolTip = "1. Add\nType: plist dict\nDescription: Sets NVRAM variables from a map (plist dict) of GUIDs to a map (plist dict) of variable names and their values in plist metadata format. GUIDs must be provided in canonic string format in upper or lower case (e.g. 8BE4DF61-93CA-11D2-AA0D-00E098032B8C).\nCreated variables get EFI_VARIABLE_BOOTSERVICE_ACCESS and EFI_VARIABLE_RUNTIME_ACCESS attributes set. Variables will only be set if not present and not blocked. To overwrite a variable add it to Block section. This approach enables to provide default values till the operating system takes the lead.\nNote: If plist key does not conform to GUID format, behaviour is undefined.\n\nMandatory Variables\nWarning: These variables may be added by PlatformNVRAM or Generic subsections of PlatformInfo section. Using PlatformInfo is the recommend way of setting these variables.\nThe following variables are mandatory for macOS functioning:\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:FirmwareFeatures\n32-bit FirmwareFeatures. Present on all Macs to avoid extra parsing of SMBIOS tables\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:FirmwareFeaturesMask\n32-bit FirmwareFeaturesMask. Present on all Macs to avoid extra parsing of SMBIOS tables.\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:MLB\nBoardSerialNumber. Present on newer Macs (2013+ at least) to avoid extra parsing of SMBIOS tables, especially in boot.efi.\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:ROM\nPrimary network adapter MAC address or replacement value. Present on newer Macs (2013+ at least) to avoid accessing special memory region, especially in boot.efi.\n\nRecommended Variables\nThe following variables are recommended for faster startup or other improvements:\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:csr-active-config\n32-bit System Integrity Protection bitmask. Declared in XNU source code in csr.h.\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:ExtendedFirmwareFeatures\nCombined FirmwareFeatures and ExtendedFirmwareFeatures. Present on newer Macs to avoid extra parsing of SMBIOS tables\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:ExtendedFirmwareFeaturesMask\nCombined FirmwareFeaturesMask and ExtendedFirmwareFeaturesMask. Present on newer Macs to avoid extra parsing of SMBIOS tables.\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:HW_BID\nHardware BoardProduct (e.g. Mac-35C1E88140C3E6CF). Not present on real Macs, but used to avoid extra parsing of SMBIOS tables, especially in boot.efi.\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:HW_MLB\nHardware BoardSerialNumber. Override for MLB. Present on newer Macs (2013+ at least).\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:HW_ROM\nHardware ROM. Override for ROM. Present on newer Macs (2013+ at least).\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:prev-lang:kbd\nASCII string defining default keyboard layout. Format is lang-COUNTRY:keyboard, e.g. ru-RU:252 for Russian locale and ABC keyboard. Also accepts short forms: ru:252 or ru:0 (U.S. keyboard, compatible with 10.9). Full decoded keyboard list from AppleKeyboardLayouts-L.dat can be found here. Using non-latin keyboard on 10.14 will not enable ABC keyboard, unlike previous and subsequent macOS versions, and is thus not recommended in case you need 10.14.\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:security-mode\nASCII string defining FireWire security mode. Legacy, can be found in IOFireWireFamily source code in IOFireWireController.cpp. It is recommended not to set this variable, which may speedup system startup. Setting to full is equivalent to not setting the variable and none disables FireWire security.\n• 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:UIScale\nOne-byte data defining boot.efi user interface scaling. Should be 01 for normal screens and 02 for HiDPI screens."; ObjectID = "s0e-p0-A6y"; */ "s0e-p0-A6y.ibShadowedToolTip" = "4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14\nUIScale: OpenCore UI 和引导第一阶段缩放\n01: 正常大小\n02: HIDPI (使 FileVault 和 苹果标志 在原生 HIDPI 显示器上以正常大小显示)\n7C436110-AB2A-4BBB-A880-FE41995C9F82\nboot-args: -v debug=0x100 (引导标识符)\ncsr-active-config: <00000000> (SIP 设置)\n00000000 - SIP 完全开启\n30000000 - 允许未签名的 Kext 加载并允许写入受保护的文件系统路径\nE7030000 - SIP 完全关闭\n67000000 - 不再推荐使用\nnvda_drv: <>\n设为 31 时启用 NVIDIA WebDrivers\n没有 N 卡可以删除此项\nprev-lang:kbd: <0x7a682d48616e733a323532> (将默认语言设置为简体中文, 留空为英文)"; /* Class = "NSTableView"; ibShadowedToolTip = "Other Variables\nThe following variables may be useful for certain configurations or troubleshooting:\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args\nKernel arguments, used to pass configuration to Apple kernel and drivers. There are many arguments, which may be found by looking for the use of PE_parse_boot_argn function in the kernel or driver code. Some of the known boot arguments include:\n– acpi_layer=0xFFFFFFFF\n– acpi_level=0xFFFF5F (implies ACPI_ALL_COMPONENTS)\n– batman=VALUE (AppleSmartBatteryManager debug mask)\n– batman-nosmc=1 (disable AppleSmartBatteryManager SMC interface)\n– cpus=VALUE (maximum number of CPUs used)\n– debug=VALUE (debug mask)\n– io=VALUE (IOKit debug mask)\n– keepsyms=1 (show panic log debug symbols)\n– kextlog=VALUE (kernel extension loading debug mask)\n– nv_disable=1 (disables NVIDIA GPU acceleration)\n– nvda_drv=1 (legacy way to enable NVIDIA web driver, removed in 10.12)\n– npci=0x2000 (legacy, disables kIOPCIConfiguratorPFM64)\n– lapic_dont_panic=1\n– slide=VALUE (manually set KASLR slide)\n– smcdebug=VALUE (AppleSMC debug mask)\n– -amd_no_dgpu_accel (alternative to WhateverGreen’s -radvesa for new GPUs)\n– -nehalem_error_disable\n– -no_compat_check (disable model checking)\n– -s (single mode)\n– -v (verbose mode)\n– -x (safe mode)\nThere are multiple external places summarising macOS argument lists: example 1, example 2.\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:bootercfg\nBooter arguments, similar to boot-args but for boot.efi. Accepts a set of arguments, which are hexadeci- mal 64-bit values with or without 0x prefix primarily for logging control:\n– log=VALUE\n∗ 1 — AppleLoggingConOutOrErrSet/AppleLoggingConOutOrErrPrint (classical ConOut/StdErr)\n∗ 2 — AppleLoggingStdErrSet/AppleLoggingStdErrPrint (StdErr or serial?)\n∗ 4 — AppleLoggingFileSet/AppleLoggingFilePrint (BOOTER.LOG/BOOTER.OLD file on EFI partition)\n– debug=VALUE\n∗ 1 — enables print something to BOOTER.LOG (stripped code implies there may be a crash)\n∗ 2 — enables perf logging to /efi/debug-log in the device three\n∗ 4 — enables timestamp printing for styled printf calls\n– level=VALUE — Verbosity level of DEBUG output. Everything but 0x80000000 is stripped from the binary, and this is the default value.\n– kc-read-size=VALUE — Chunk size used for buffered I/O from network or disk for prelinkedkernel reading and related. Set to 1MB (0x100000) by default, can be tuned for faster booting.\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:bootercfg-once\nBooter arguments override removed after first launch. Otherwise equivalent to bootercfg.\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:fmm-computer-name Current saved host name. ASCII string.\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:nvda_drv\nNVIDIA Web Driver control variable. Takes ASCII digit 1 or 0 to enable or disable installed driver."; ObjectID = "tq7-BQ-JU5"; */ "tq7-BQ-JU5.ibShadowedToolTip" = "以下变量可能对某些配置或故障排除很有用\n• 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args\n内核参数,用于将配置传递给Apple内核和驱动程序。有很多参数,可以通过在内核或驱动程序代码中寻找PE_parse_boot_argn函数的使用来找到。一些已知的引导参数包括:\n– acpi_layer = 0xFFFFFFFF\n– acpi_level = 0xFFFF5F(表示ACPI_ALL_COMPONENTS)\n– batman = VALUE(AppleSmartBatteryManager调试掩码)\n– batman-nosmc = 1(禁用AppleSmartBatteryManager SMC接口)\n– cpus = VALUE(使用的最大CPU数量)\n– debug = VALUE(调试掩码)\n– io = VALUE(IOKit调试掩码)\n– keepsyms = 1(显示紧急日志调试符号)\n– kextlog = VALUE(内核扩展加载调试掩码)\n– nv_disable = 1(禁用NVIDIA GPU加速)\n– nvda_drv = 1(启用NVIDIA Web驱动程序的旧方法,已在10.12中删除)\n– npci = 0x2000(旧版,禁用kIOPCIConfiguratorPFM64)\n– lapic_dont_panic = 1\n– slide = VALUE(手动设置KASLR幻灯片)\n– smcdebug = VALUE(AppleSMC调试掩码)\n– -amd_no_dgpu_accel(替代WhateverGreen的-radvesa用于新GPU)\n– -nehalem_error_disable\n– -no_compat_check(禁用模型检查)\n– -s(单模式)\n– -v(详细模式)\n– -x(安全模式)\n有多个外部地方汇总了macOS参数列表:示例1,示例2。\n•7C436110-AB2A-4BBB-A880-FE41995C9F82:bootercfg\n引导程序参数,类似于boot-args,但包含boot.efi。接受一组参数,这些参数是带有或不带有0x前缀的十六进制64位值,主要用于日志记录控制:\n– log = VALUE\n∗ 1 — AppleLoggingConOutOrErrSet / AppleLoggingConOutOrErrPrint(经典ConOut / StdErr)\n∗ 2 — AppleLoggingStdErrSet / AppleLoggingStdErrPrint(StdErr还是串行?)\n∗ 4 — AppleLoggingFileSet / AppleLoggingFilePrint(EFI分区上的BOOTER.LOG / BOOTER.OLD文件)\n–调试= VALUE\n* 1-允许将某些内容打印到BOOTER.LOG(剥离的代码表示可能会崩溃)\n* 2-在设备3中启用perf日志记录到/ efi / debug-log\n∗ 4 —为样式化的printf调用启用时间戳打印\n– level = VALUE — DEBUG输出的详细程度。除0x80000000之外的所有内容都从二进制文件中删除,这是默认值。\n– kc-read-size = VALUE —块大小,用于从网络或磁盘缓冲的I / O,用于预链接内核读取和相关。默认情况下设置为1MB(0x100000),可以进行调整以加快启动速度。\n•7C436110-AB2A-4BBB-A880-FE41995C9F82:bootercfg-一次\n首次启动后,引导程序参数将被覆盖。否则等效于bootercfg。\n•7C436110-AB2A-4BBB-A880-FE41995C9F82:fmm-计算机名当前保存的主机名。 ASCII字符串。\n•7C436110-AB2A-4BBB-A880-FE41995C9F82:nvda_drv\nNVIDIA Web Driver控制变量。使用ASCII数字1或0启用或禁用已安装的驱动程序。";