Search the Community
Showing results for tags 'guide'.
Found 3 results
-Donations with PayPal https://tinyurl.com/r2bvzm7 -Donations with Bitcoin 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 -Donations with PicPay @danielnmaldonado -Donation with Mercado Livre https://tinyurl.com/y9evkj5u ***The Olarila image is clean, without any mod with bootloader, essentials kexts and patches, ALL inside bootloader folder*** Check our tutorial, How to create a personal installer with MacOS https://tinyurl.com/y9pvz6ta -OpenCore Vanilla Guide- https://tinyurl.com/ycvcnp8h Hello ppl, let's start *AMD users check here* 1- Download Vanilla Olarila Image or Create your personal Vanilla USB Stick *After Download, extract image 2- Formatting USB Stick 3- Burn Olarila Image a-MacOS / Windows / Linux with Etcher *** Download Etcher | Use version from link below *** https://tinyurl.com/yd44g4ad *Open app and select extracted Image *Select USB Stick(use 16gb USB stick) *Burn Image b-Burn Olarila image on Windows with Win32DiskImager *Download Win32DiskImager https://sourceforge.net/projects/win32diskimager/ Format USB Stick Open Win 32 Disk Imager Load Olarila Image Burn 4- Boot from USB *Use a boot key(Gigabyte is F12, Asus is F8, etc) *Select Boot MacOS Install from Olarila Image *Notebooks users, if default config.plist fail use config2.plist, press O key in Clover boot screen, go to Configs *Select config2.plist 5- Formatting SSD *Go to Disk Utility, "View" *Select "Show All Devices" *Format SSD, use APFS, GUID and go to installation *After installation, boot from USB stick again, use boot key and select your SSD with system installed 6- Start a Post Installation *Go to Olarila Image/Files folder and run "disablehibernate.command" if u like File Vault, don't run it https://tinyurl.com/yab5cv6l and "master-disable.command" 7- Copy Olarila EFI folder to EFI partition *Download EFI folder for your Chipset *Copy EFI folder to /Volumes/EFI (don't reboot) a-Video Patch b- Embedded Controller Device Catalina users check Name _HID "PNP0C09" in your DSDT and rename to EC via Clover/OpenCore Acpi rename. if you using Olarila folders don't need rename 8- Install Clover Bootloader in SSD https://tinyurl.com/ubyaea2 *Mobos UEFI - you don't need install Clover, just paste Olarila folder for your Chipset into ESP/EFI partition and reboot! *Mobos Bios - after paste Olarila folder into EFI partition, install Clover with this options bellow! *Reboot 9- Fine Tune, DSDT *Go to topic "DSDT patch requests" and read instructions, post your files there *Paste edited DSDT.aml in CLOVER/ACPI/PATCHED or OC/ACPI folder *Reboot -Olarila common patches for one perfect Hackintosh --Useful Links-- *Audio *Video *Laptop Battery *Brightness Hotkey Remapping *Cpu Friend *UEFI multi boot with Clover *Hardware Encoder / Hardware Decoder / Video Processing / HEVC Support *USB Solution -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders! Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad, headkaze, onemanosx, erroruser, Jenny David, Sampath007, Facebook Hackintosh community, Facebook Olarila community and many, many, many others! We're all here to have fun and learn from each other!
-Donations with PayPal https://tinyurl.com/r2bvzm7 -Donations with Bitcoin 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 -Donations with PicPay @danielnmaldonado -Donation with Mercado Livre https://tinyurl.com/y9evkj5u --[Guide] How to create a personal Vanilla MacOS HighSierra / Mojave / Catalina Image or USB Installer-- https://tinyurl.com/ycq2co9b --Premade Olarila EFI Folders-- https://tinyurl.com/ybr968w3 Some words before start: Opencore with a DSDT Full Patched is a perfect Hackintosh in every way Let's start 1- Download Oc Builder by Pavo *Needs XCode* https://github.com/Pavo-IM/ocbuilder/releases *** Other good and fast EFI creator is OC-Gen-X by Pavo *** If you use app in link below you can jump to step "4- Now let's check a good config for our hardware" Link https://tinyurl.com/ybvewu73 a- Open app, Select Version Release; With Kexts; Location Desktop; Build b- Open the folder generated in your desktop and copy EFI folder to your desktop Now we have a OpenCore folder Root configuration entries consist of the following: • ACPI • Booter • DeviceProperties • Kernel • Misc • NVRAM • PlatformInfo • UEFI Oc Manual generated in Docs folder https://i.imgur.com/FuBubqb.png c- Go to Docs folder and copy Sample.plist to EFI/OC folder d- Rename Sample.plist to config.plist 2- Now we need a good plist editor, my suggestion is Clover.app(is not only for Clover bootloader), is a free and good app a- Download Clover.app https://tinyurl.com/ydbyczzn b- Download PlistEdit Pro https://www.fatcatsoftware.com/plisteditpro/ c- Download OpenCore Configurator by mackie100 (use last version ever to avoid some bugs) https://tinyurl.com/ybdqc4cz 3- Open your config.plist with Clover.app a- Delete WARNING entries and save 4- Now let's check a good config for our hardware a- Go to OpenCore Sanity Checker https://opencore.slowgeek.com/ b- Select your CPU c- Select OpenCore Version d- Select "Then click here to choose your config.plist or drag it here" e- Load your config.plist inside EFI folder and start check what you need f- Open your config.plist with OpenCore Configurator(is a easy way. Your can edit with Clover app or any other editor) 5- Applying correct config for your hardware(I'm using one 9900k in this example) a- Remove and change all wrong entries b- Check one by one and apply as needed *** IN KERNEL TAB SELECT AppleCpuPmCfgLock, AppleXcpmCfgLock AND XhciPortLimit for all Intel hardwares *** *** After applied all corrections and saving open config.plist again for a final revision *** 6- Boot Arguments a- Go to NVRAM tab *** Some Variables *** – acpi_layer=0xFFFFFFFF – acpi_level=0xFFFF5F (implies ACPI_ALL_COMPONENTS) – batman=VALUE (AppleSmartBatteryManager debug mask) – batman-nosmc=1 (disable AppleSmartBatteryManager SMC interface) – cpus=VALUE (maximum number of CPUs used) – debug=VALUE (debug mask) – io=VALUE (IOKit debug mask) – keepsyms=1 (show panic log debug symbols) – kextlog=VALUE (kernel extension loading debug mask) – nv_disable=1 (disables NVIDIA GPU acceleration) – nvda_drv=1 (legacy way to enable NVIDIA web driver, removed in 10.12) – npci=0x2000 (legacy, disables kIOPCIConfiguratorPFM64) – lapic_dont_panic=1 – slide=VALUE (manually set KASLR slide) – smcdebug=VALUE (AppleSMC debug mask) – -amd_no_dgpu_accel (alternative to WhateverGreen’s -radvesa for new GPUs) – -nehalem_error_disable – -no_compat_check (disable model checking) – -s (single mode) – -v (verbose mode) – -x (safe mode) 7- ACPI a- Copy .aml to OC/ACPI folder b- Add entry in config.plist ACPI tab *** Easy way to boot *** Copy SSDT-OLA.aml to OC/ACPI folder SSDT-OLA.aml.zip Add and enable RTC _STA patch fix in config.plist 8- Generating SMBIOS a- Go to PlatformInfo tab and generate 9- Kernel Extensions(Kexts) OCBuilder.app compiled essentials kexts, but we need remove some unused and add others mandatory like VoodooPS2Controller.kext, VoodooI2C.kext for Mobiles devices. a- Knowing your hardware -Download Hackintool https://tinyurl.com/yamzbgd6 Go to PCIe tab and Update PCIIDs. Everything you need to know about your hardware! *** Example / Removing unused kexts *** My Lan card is Intel I can remove some unused kexts about Lan in OC/Kexts Folder, my Lan card use IntelMausi.kext Other unused kexts is removed AMDRyzenCPUPowerManagement.kext / for AMD Processors SMCAMDProcessor.kext / monitoring of AMD processors SMCBatteryManager.kext / Battery Plugin for Mobiles Now looks good for my hardware b- Add kexts entries in config.plist Go to Kernel/Add tab and Browse Select Kexts and Open Done 10- Drivers a- Go to OC/Drivers and use only necessary drivers b- Add entries drivers config.plist UEFI/Drivers tab and Browse c- Select Drivers in your OpenCore EFI folder and Open Done 11- Audio Solution https://tinyurl.com/y8nnbsap a- Check your audio codec and layout-ids in tutorial above and add in NVRAM tab 12- Mobile Video Solution https://tinyurl.com/y954utg3 a- Apply video patch in your config.plist, use one good .txt app, use TextMate https://tinyurl.com/y9vpmefc b- Open config.plist with TextMate and add video patch, DevicesProperties/Add Now we have a EFI OpenCore with good, clean and correct config. Let's go to fine tune! 13- Fine Tune DSDT - SSDT -DSDT (FULL SOLUTION) DSDT (Differentiated System Description Table) is a part of the ACPI specification. It supplies information about supported power events in a given system. ACPI tables are provided in firmware from the manufacturer. A common MacOS problem is missing ACPI functionality, such as: fans not running, screens not turning off when the lid is closed, shutdown, boot fast without any ACPI error or warnings, sata, usb, firewire conflicts, etc. -SSDT (NOT FULL SOLUTION) SSDT (Secondary System Descriptor Table) It acts as a supplement to the DSDT. To start this section we need check some things in real Mac tables and tables from one non-apple in same chipset and processor, in this case let's check Chipset Serie 300 with Coffelake Processor i9 9900k Real Mac iMac19,1 tables, Chipset Serie 300 (8816 lines) DSDT.Real iMac CoffeLake serie 300.zip Mobo Chipset Serie 300 non-apple (59775 lines) DSDT.Mobo serie 300.zip The conclusion is: Apple use a very custom DSDT, no unused devices, no trash is found there. On our motherboard things are different, we have more than 50 thousand lines of a lot of garbage and devices for windows and not for MacOS. Let's check one perfect hack with my Dell with Intel(R) Core(TM) i7-10510U and OpenCore Bootloader and FULL DSDT Patched Work like one Real Mac! -Olarila common patches for one perfect Hackintosh- a- If you need a full solution with one full DSDT patched, extract one SendMe with OpenCore running with this app and post here or in DSDT Patch Requests topic, check video first for extract with ioreg Run_Me.app https://tinyurl.com/y9562hz7 Video Tutorial https://tinyurl.com/y74onhto b- Paste DSDT.aml in OC/ACPI folder c- Add entry in config.plist, reboot and done d- If you like a SSDT way use SSDT Olarila with Basic patches for one good hack (Skylake+ only) SSDT-OLARILA.aml.zip 14- AMD Processors with Vanilla patches Download Patches from Github https://github.com/AMD-OSX/AMD_Vanilla *** 15h and 16h / Bulldozer / FX Series / Jaguar / A Series (including AM4 A-Series) *** *** 17h / Ryzen, Threadripper, Athlon 2xxGE a- Open 17h folder b- Open patches.plist with TextMate.app and copy all patches c- Open your config.plistand paste all patches in Kernel/Patche tab and save 15- FakeCPUID with OpenCore a- Open your config.plist b- Go to Kernel tab and add properties Example Haswell-E (0x0306F2) to Haswell (0x0306C3) Cpuid1Data: C3 06 03 00 00 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 00 16- Theme OpenCore a- Download OcBinaryData https://tinyurl.com/y899xbde b- Copy Resources folder to your OpenCore Folder c- Open your config.plist, Go to Misc tab and set Picker Mode to External 17- Copying EFI folder to EFI Partition a- Download ESP Mounter Pro and install this app https://tinyurl.com/y7q4z4lg b- Mount EFI partition c- Paste your EFI folder there d- Reboot and Enjoy! *** Some explanations about OpenCore *** a- Drivers -AudioDxe HDA audio support driver in UEFI firmwares for most Intel and some other analog audio controllers. Staging driver, refer to acidanthera/bugtracker#740 for known issues in AudioDxe. -CrScreenshotDxe Screenshot making driver saving images to the root of OpenCore partition (ESP) or any avail- able writeable filesystem upon pressing F10. This is a modified version of CrScreenshotDxe driver by Nikolaj Schlej. -ExFatDxe Proprietary ExFAT file system driver for Bootcamp support commonly found in Apple firmwares. For Sandy Bridge and earlier CPUs ExFatDxeLegacy driver should be used due to the lack of RDRAND instruction support. -HfsPlus Proprietary HFS file system driver with bless support commonly found in Apple firmwares. For Sandy Bridge and earlier CPUs HfsPlusLegacy driver should be used due to the lack of RDRAND instruction support. -HiiDatabase HII services support driver from MdeModulePkg. This driver is included in most firmwares starting with Ivy Bridge generation. Some applications with the GUI like UEFI Shell may need this driver to work properly. -EnhancedFatDxe FAT filesystem driver from FatPkg. This driver is embedded in all UEFI firmwares, and cannot be used from OpenCore. It is known that multiple firmwares have a bug in their FAT support implementation, which leads to corrupted filesystems on write attempt. Embedding this driver within the firmware may be required in case writing to EFI partition is needed during the boot process. -NvmExpressDxe NVMe support driver from MdeModulePkg. This driver is included in most firmwares starting with Broadwell generation. For Haswell and earlier embedding it within the firmware may be more favourable in case a NVMe SSD drive is installed. -OpenCanopy OpenCore plugin implementing graphical interface. -OpenRuntime OpenCore plugin implementing OC_FIRMWARE_RUNTIME protocol. -OpenUsbKbDxe USB keyboard driver adding the support of AppleKeyMapAggregator protocols on top of a custom USB keyboard driver implementation. This is an alternative to builtin KeySupport, which may work better or worse depending on the firmware. -PartitionDxe Proprietary partition management driver with Apple Partitioning Scheme support commonly found in Apple firmwares. This driver can be used to support loading older DMG recoveries such as macOS 10.9 using Apple Partitioning Scheme. For Sandy Bridge and earlier CPUs PartitionDxeLegacy driver should be used due to the lack of RDRAND instruction support. -Ps2KeyboardDxe PS/2 keyboard driver from MdeModulePkg. OpenDuetPkg and some firmwares may not include this driver, but it is necessary for PS/2 keyboard to work. Note, unlike OpenUsbKbDxe this driver has no AppleKeyMapAggregator support and thus requires KeySupport to be enabled. -Ps2MouseDxe PS/2 mouse driver from MdeModulePkg. Some very old laptop firmwares may not include this driver, but it is necessary for touchpad to work in UEFI graphical interfaces, such as OpenCanopy. -UsbMouseDxe USB mouse driver from MdeModulePkg. Some virtual machine firmwares like OVMF may not include this driver, but it is necessary for mouse to work in UEFI graphical interfaces, such as OpenCanopy. -VBoxHfs HFS file system driver with bless support. This driver is an alternative to a closed source HfsPlus driver commonly found in Apple firmwares. While it is feature complete, it is approximately 3 times slower and is yet to undergo a security audit. -XhciDxe XHCI USB controller support driver from MdeModulePkg. This driver is included in most firmwares starting with Sandy Bridge generation. For earlier firmwares or legacy systems it may be used to support external USB 3.0 PCI cards. b- Booter Quirks Properties 1. AvoidRuntimeDefrag Description: Protect from boot.efi runtime memory defragmentation. This option fixes UEFI runtime services (date, time, NVRAM, power control, etc.) support on many firmwares using SMM backing for select services like variable storage. SMM may try to access physical addresses, but they get moved by boot.efi. Note: Most but Apple and VMware firmwares need this quirk. 2. DevirtualiseMmio Description: Remove runtime attribute from select MMIO regions. This option reduces stolen memory footprint from the memory map by removing runtime bit for known memory regions. This quirk may result in the increase of KASLR slides available, but is not necessarily compatible with the target board without additional measures. In general this frees from 64 to 256 megabytes of memory (present in the debug log), and on some platforms it is the only way to boot macOS, which otherwise fails with allocation error at bootloader stage. This option is generally useful on all firmwares except some very old ones, like Sandy Bridge. On select firmwares it may require a list of exceptional addresses that still need to get their virtual addresses for proper NVRAM and hibernation functioning. Use MmioWhitelist section to do this. 3. DisableSingleUser Description: Disable single user mode. This is a security option allowing one to restrict single user mode usage by ignoring CMD+S hotkey and -s boot argument. The behaviour with this quirk enabled is supposed to match T2-based model behaviour. Read this article to understand how to use single user mode with this quirk enabled. 4. DisableVariableWrite Description: Protect from macOS NVRAM write access. This is a security option allowing one to restrict NVRAM access in macOS. This quirk requires OC_FIRMWARE_RUNTIME protocol implemented in OpenRuntime.efi. Note: This quirk can also be used as an ugly workaround to buggy UEFI runtime services implementations that fail to write variables to NVRAM and break the rest of the operating system. 17 5. DiscardHibernateMap Description: Reuse original hibernate memory map. This option forces XNU kernel to ignore newly supplied memory map and assume that it did not change after waking from hibernation. This behaviour is required to work by Windows, which mandates to preserve runtime memory size and location after S4 wake. Note: This may be used to workaround buggy memory maps on older hardware, and is now considered rare legacy. Examples of such hardware are Ivy Bridge laptops with Insyde firmware, like Acer V3-571G. Do not use this unless you fully understand the consequences. 6. EnableSafeModeSlide Description: Patch bootloader to have KASLR enabled in safe mode. This option is relevant to the users that have issues booting to safe mode (e.g. by holding shift or using -x boot argument). By default safe mode forces 0 slide as if the system was launched with slide=0 boot argument. This quirk tries to patch boot.efi to lift that limitation and let some other value (from 1 to 255) be used. This quirk requires ProvideCustomSlide to be enabled. Note: The necessity of this quirk is determined by safe mode availability. If booting to safe mode fails, this option can be tried to be enabled. 7. EnableWriteUnprotector Description: Permit write access to UEFI runtime services code. This option bypasses RX permissions in code pages of UEFI runtime services by removing write protection (WP) bit from CR0 register during their execution. This quirk requires OC_FIRMWARE_RUNTIME protocol implemented in OpenRuntime.efi. Note: This quirk may potentially weaken firmware security, please use RebuildAppleMemoryMap if your firmware supports memory attributes table (MAT). 8. ForceExitBootServices Description: Retry ExitBootServices with new memory map on failure. Try to ensure that ExitBootServices call succeeds even with outdated MemoryMap key argument by obtaining current memory map and retrying ExitBootServices call. Note: The necessity of this quirk is determined by early boot crashes of the firmware. Do not use this unless you fully understand the consequences. 9. ProtectMemoryRegions Description: Protect memory regions from incorrect access. Some firmwares incorrectly map select memory regions: • CSM region can be marked as boot services code or data, which leaves it as free memory for XNU kernel. • MMIO regions can be marked as reserved memory and stay unmapped, but may be required to be accessible at runtime for NVRAM support. This quirk attempts to fix types of these regions, e.g. ACPI NVS for CSM or MMIO for MMIO. Note: The necessity of this quirk is determined by artifacts, sleep wake issues, and boot failures. In general only very old firmwares need this quirk. 10. ProtectSecureBoot Description: Protect UEFI Secure Boot variables from being written. Reports security violation during attempts to write to db, dbx, PK, and KEK variables from the operating system. Note: This quirk mainly attempts to avoid issues with NVRAM implementations with problematic defragmentation, such as select Insyde or MacPro5,1. 11. ProtectUefiServices Description: Protect UEFI services from being overridden by the firmware. Some modern firmwares including both hardware and virtual machines, like VMware, may update pointers to UEFI services during driver loading and related actions. Consequentially this directly breaks other quirks that affect memory management, like DevirtualiseMmio, ProtectMemoryRegions, or RebuildAppleMemoryMap, and may also break other quirks depending on the effects of these. Note: On VMware the need for this quirk may be diagnosed by “Your Mac OS guest might run unreliably with more than one virtual core.” message. 12. ProvideCustomSlide Description: Provide custom KASLR slide on low memory. This option performs memory map analysis of your firmware and checks whether all slides (from 1 to 255) can be used. As boot.efi generates this value randomly with rdrand or pseudo randomly rdtsc, there is a chance of boot failure when it chooses a conflicting slide. In case potential conflicts exist, this option forces macOS to use a pseudo random value among the available ones. This also ensures that slide= argument is never passed to the operating system for security reasons. Note: The necessity of this quirk is determined by OCABC: Only N/256 slide values are usable! message in the debug log. If the message is present, this option is to be enabled. 13. RebuildAppleMemoryMap Description: Generate Memory Map compatible with macOS. Apple kernel has several limitations in parsing UEFI memory map: • Memory map size must not exceed 4096 bytes as Apple kernel maps it as a single 4K page. Since some firmwares have very large memory maps (approximately over 100 entries) Apple kernel will crash at boot. • Memory attributes table is ignored. EfiRuntimeServicesCode memory statically gets RX permissions, and all other memory types get RW permissions. Since some firmware drivers may write to global variables at runtime, Apple kernel will crash at calling UEFI runtime services, unless driver .data section has EfiRuntimeServicesData type. To workaround these limitations this quirk applies memory attributes table permissions to memory map passed to Apple kernel and optionally attempts to unify contiguous slots of similar types if the resulting memory map exceeds 4 KB. Note 1: Since many firmwares come with incorrect memory protection table this quirk often comes in pair with SyncRuntimePermissions. Note 2 : The necessity of this quirk is determined by early boot failures. This quirk replaces EnableWriteUnprotector on firmwares supporting memory attributes table (MAT). 14. SetupVirtualMap Description: Setup virtual memory at SetVirtualAddresses. Select firmwares access memory by virtual addresses after SetVirtualAddresses call, which results in early boot crashes. This quirk workarounds the problem by performing early boot identity mapping of assigned virtual addresses to physical memory. Note: The necessity of this quirk is determined by early boot failures. Currently new firmwares with memory protection support (like OVMF) do not support this quirk due to acidanthera/bugtracker#719. 15. SignalAppleOS Description: Report macOS being loaded through OS Info for any OS. This quirk is useful on Mac firmwares, which behave differently in different OS. For example, it is supposed to enable Intel GPU in Windows and Linux in some dual-GPU MacBook models. 16. SyncRuntimePermissions Description: Update memory permissions for runtime environment. Some firmwares either fail to properly handle runtime permissions: • They incorrectly mark OpenRuntime as not executable in the memory map. • They incorrectly mark OpenRuntime as not executable in the memory attributes table. • They lose entries from the memory attributes table after OpenRuntime is loaded. • They mark items in the memory attributes table as read-write-execute. This quirk tries to update memory map and memory attributes table to correct this. Note: The necessity of this quirk is determined by early boot failures either in macOS or in Linux/Windows. In general only firmwares released in 2018 or later are affected. c- Kernel Quirks Properties 1. AppleCpuPmCfgLock Description: Disables PKG_CST_CONFIG_CONTROL (0xE2) MSR modification in AppleIntelCPUPowerManage- ment.kext, commonly causing early kernel panic, when it is locked from writing. Certain firmwares lock PKG_CST_CONFIG_CONTROL MSR register. To check its state one can use bundled VerifyMsrE2 tool. Select firmwares have this register locked on some cores only. As modern firmwares provide CFG Lock setting, which allows configuring PKG_CST_CONFIG_CONTROL MSR register lock, this option should be avoided whenever possible. For several APTIO firmwares not displaying CFG Lock setting in the GUI it is possible to access the option directly: (a) Download UEFITool and IFR-Extractor. (b) Open your firmware image in UEFITool and find CFG Lock unicode string. If it is not present, your firmware may not have this option and you should stop. (c) Extract the Setup.bin PE32 Image Section (the one UEFITool found) through Extract Body menu option. (d) Run IFR-Extractor on the extracted file (e.g. ./ifrextract Setup.bin Setup.txt). (e) Find CFG Lock, VarStoreInfo (VarOffset/VarName): in Setup.txt and remember the offset right after it (e.g. 0x123). (f) Download and run Modified GRUB Shell compiled by brainsucker or use a newer version by datasone. (g) Enter setup_var 0x123 0x00 command, where 0x123 should be replaced by your actual offset, and reboot. WARNING: Variable offsets are unique not only to each motherboard but even to its firmware version. Never ever try to use an offset without checking. 2. AppleXcpmCfgLock Description: Disables PKG_CST_CONFIG_CONTROL (0xE2) MSR modification in XNU kernel, commonly causing early kernel panic, when it is locked from writing (XCPM power management). Note: This option should be avoided whenever possible. See AppleCpuPmCfgLock description for more details. 3. AppleXcpmExtraMsrs Description: Disables multiple MSR access critical for select CPUs, which have no native XCPM support. This is normally used in conjunction with Emulate section on Haswell-E, Broadwell-E, Skylake-SP, and similar CPUs. More details on the XCPM patches are outlined in acidanthera/bugtracker#365. Note: Additional not provided patches will be required for Ivy Bridge or Pentium CPUs. It is recommended to use AppleIntelCpuPowerManagement.kext for the former. 4. AppleXcpmForceBoost Description: Forces maximum performance in XCPM mode. This patch writes 0xFF00 to MSR_IA32_PERF_CONTROL (0x199), effectively setting maximum multiplier for all the time. Note: While this may increase the performance, this patch is strongly discouraged on all systems but those explicitly dedicated to scientific or media calculations. In general only certain Xeon models benefit from the patch. 5. CustomSMBIOSGuid Description: Performs GUID patching for UpdateSMBIOSMode Custom mode. Usually relevant for Dell laptops. 6. DisableIoMapper Description: Disables IOMapper support in XNU (VT-d), which may conflict with the firmware implementation. Note: This option is a preferred alternative to deleting DMAR ACPI table and disabling VT-d in firmware preferences, which does not break VT-d support in other systems in case they need it. 7. DisableRtcChecksum Type: plist boolean Failsafe: false Description: Disables primary checksum (0x58-0x59) writing in AppleRTC. Note 1: This option will not protect other areas from being overwritten, see RTCMemoryFixup kernel extension if this is desired. Note 2: This option will not protect areas from being overwritten at firmware stage (e.g. macOS bootloader), see AppleRtc protocol description if this is desired. 8. DummyPowerManagement Description: Disables AppleIntelCpuPowerManagement. Note: This option is a preferred alternative to NullCpuPowerManagement.kext for CPUs without native power management driver in macOS. 9. ExternalDiskIcons Description: Apply icon type patches to AppleAHCIPort.kext to force internal disk icons for all AHCI disks. Note: This option should be avoided whenever possible. Modern firmwares usually have compatible AHCI controllers. 10. IncreasePciBarSize Description: Increases 32-bit PCI bar size in IOPCIFamily from 1 to 4 GBs. Note: This option should be avoided whenever possible. In general the necessity of this option means misconfigured or broken firmware. 11. LapicKernelPanic Description: Disables kernel panic on LAPIC interrupts. 12. PanicNoKextDump Description: Prevent kernel from printing kext dump in the panic log preventing from observing panic details. Affects 10.13 and above. 13. PowerTimeoutKernelPanic Description: Disables kernel panic on setPowerState timeout. An additional security measure was added to macOS Catalina (10.15) causing kernel panic on power change timeout for Apple drivers. Sometimes it may cause issues on misconfigured hardware, notably digital audio, which sometimes fails to wake up. For debug kernels setpowerstate_panic=0 boot argument should be used, which is otherwise equivalent to this quirk. 14. ThirdPartyDrives Description: Apply vendor patches to IOAHCIBlockStorage.kext to enable native features for third-party drives, such as TRIM on SSDs or hibernation support on 10.15 and newer. Note: This option may be avoided on user preference. NVMe SSDs are compatible without the change. For AHCI SSDs on modern macOS version there is a dedicated built-in utility called trimforce. Starting from 10.15 this utility creates EnableTRIM variable in APPLE_BOOT_VARIABLE_GUID namespace with 01 00 00 00 value. 15. XhciPortLimit Description: Patch various kexts (AppleUSBXHCI.kext, AppleUSBXHCIPCI.kext, IOUSBHostFamily.kext) to remove USB port count limit of 15 ports. Note: This option should be avoided whenever possible. USB port limit is imposed by the amount of used bits in locationID format and there is no possible way to workaround this without heavy OS modification. The only valid solution is to limit the amount of used ports to 15 (discarding some). -Credits The HermitCrabs Lab All projects providing third-party code (refer to file headers) AppleLife team and user-contributed resources Chameleon and Clover teams for hints and legacy al3xtjames Andrey1970AppleLife Download-Fritz Goldfish64 nms42 PMHeart savvamitrofanov vit9696 Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad, headkaze, onemanosx, erroruser, Jenny David, Sampath007, Facebook Hackintosh community, Facebook Olarila community and many, many, many others! We're all here to have fun and learn from each other!
Sorry file not attached,please visit fb link for my pics- https://www.facebook.com/groups/hackintosch/permalink/10158528713507446/ here's how i dual boot Olarila Catalina and Windows 10- Boot clover>select config2> select installer and partition whole drive as mac os extended journaled an GPT format>finish installing Macosx> login> open clover configurator>Mount EFI>copy ur specific model or selected EFI folder to laptop EFi> open Disk utility> shrink drive for windows10 install(Mine 50GB) as mac os extended journaled >restart>boot to windows installer> now this part is very important select windows installation disk>delete partition>now don't create new one> click next>finish install> if u have error then ur EFI formated as NTFS not fat32> then u need to do same process again> ok after finish windows install>download easyuefi and easybcd software>then open cmd as administration>then write as i mentioned> diskpart>list disk> select disk 0(mine was 0)>list partition>select partition1(mine is 1 as name is system)>assign> open easyuefi>UEFI Manage>create new entry>select linux or other os from dropdown menu> rename Clover>browse cloverx64.efi(don't switch clover folder any other place,keep it as same it was)>ok>put clover entry top of boot list or keep macosx boot entry(stock boot by installation)>then u will dual boot olarila.see video for overall concepts- https://www.youtube.com/watch?v=pjfInJV8Eso https://www.tonycrapx86.com/threads/guide-multibooting-uefi-on-separate-drives.198869/ https://www.tonycrapx86.com/threads/guide-lenovo-ideapad-s340-laptop-on-catalina.288003/