Contribute
Register

[GUIDE] Haswell System - MacOS Monterey 12.0.1 OC 0.7.5

Edhawk

Moderator
Joined
Aug 2, 2013
Messages
6,213
Motherboard
Asus ROG Strix X570-F Gaming
CPU
Ryzen 9 3900X
Graphics
RX 6700 XT
Mac
  1. iMac
  2. MacBook Air
  3. MacBook Pro
Mobile Phone
  1. iOS
Haswell System running macOS Monterey 12.0.1
  • CPU: i5-4440 + HD4600 IGPU
  • MB: GA-Z87MX-D3H
  • Mem: 16GB (2 x 8GB)
  • SSD: 1 x Samsung 840 EVO 120GB
  • HDD: 3 x WD Green 2TB (JOBD)
  • WIFI/BT: Broadcom BMC4360CD (Apple WIFI card on PCIe x1 adapter)
  • PSU: EVGA 500Wr
  • Case: Fractal Design R5 (Titanium Grey Solid)
  • Drive caddy: Icy Dock MB322SP-B ExpressCage (2 x 2.5” caddies in front case 5” bay)
  • Card Reader: Akasa USB 2.0 (in Icy Dock, below drive bays)
  • DVD RW: Asus DRW-24D5MT (in top case front 5” bay)
*This system normally contains a Nvidia GTX 780Ti 3GB dGPU but this was removed while upgrading to Monterey.

* The system normally contains a Samsung 850 EVO 250GB SSD for macOS Big Sur and a SanDisk Ultra 500GB SSD for Windows 10 Pro.

BIOS Settings:
These are the BIOS settings I use.
  • Virtualization: Enabled
  • VT-d: Disabled
  • XHCI Hand-Off: Enabled
  • Legacy USB Support: Auto/Enabled
  • IO SerialPort: Disabled
  • Network Stack: Disabled
  • XMP Profile: Auto / Profile 1/Enabled
  • UEFI Booting set to Enabled and set Priority over Legacy
  • Secure Boot: Disabled
  • Fast Boot: Disabled
  • OS Type: Other OS
  • Wake on LAN: Disabled
  • Integrated Graphics: Enabled
  • Graphics: IGD/Integrated/iGPU/CPU Graphics
  • DVMT Pre-Allocated: 128M or higher

Required for USB installer:
  1. 16 GB USB 3.0 SanDisk Ultra Fit drive for Monterey
    1. The USB should be formatted as GUID, HFS+ with name ‘Untitled’
    2. Screenshot - Disk Utility - Erase USB.png
  2. Monterey 12.0.1 Installation application in Applications folder on real Mac or another Hack.

Then run the following Terminal Command to create installation media for Monterey:

sudo /Applications/Install\ macOS\ Monterey.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled

Once the Terminal Command completes, a Mac Bootable Monterey Installation USB should be in your possession.


OpenCore 0.7.5:
  1. I downloaded and installed/Saved the following, to create the new 0.7.5 EFI folder for OpenCore:
    1. Corpnewt’s ProperTree plist editor - https://github.com/corpnewt/ProperTree
    2. Built a new ProperTree Application, using the script provided by Corpnewt, requires Python.
    3. Downloaded OpenCore 0.7.5 Release folder from Acidanthera’s GitHub repository- https://github.com/acidanthera/OpenCorePkg
    4. Downloaded latest version of OCBinaryData from Acidanthera’s GitHub repository - https://github.com/acidanthera/OcBinaryData
  2. Copied the OC 0.7.5 EFI folder from /Desktop/OpenCore-0.7.5-RELEASE/X64 folder to my desktop.
  3. Copied Sample.plist from the /Desktop/OpenCore-0.7.5-RELEASE/Docs folder to the new /Desktop/EFI/OC folder.
  4. Renamed Sample.plist to config.plist.
screenshot - OcBinaryData-Master folder.png OcBinaryData-Master folder


ACPI Folder:
Opened the EFI folder and added the following SSDT’s to the /EFI/OC/ACPI folder:
  • SSDT-EC-USBX.aml
  • SSDT-EHCx_OFF.aml
  • SSDT-Fix-USB-Shutdown.aml
  • SSDT-HPET.aml
  • SSDT-PLUG.aml
  • SSDT-SBUS-MCHC.aml
  • SSDT-XOSI.aml
  • SSDT-XWAK.aml
These SSDT’s were collect by me but most were created by other people, @VioletDragon & @RehabMan being the main providers. The HPET, PLUG and EC-USBX tables were created using the system DSDT.aml and Corpnewt’s SSDTTime python script - https://github.com/corpnewt/SSDTTime

Along with some ACPI Rename patches that need to be used for the SSDT-HPET.aml table to work.

Screenshot - EFi-OC-ACPI folder.png Populated ACPI folder


Drivers Folder:
I removed the majority of the *.efi drivers present in the folder, leaving just these three:
  • CrsScreenshotDxe.efi
  • OpenCanopy.efi
  • OpenRuntime.efi.
I copied HfsPlus.efi driver from the /Desktop/OcBinaryData-Master/Drivers folder to the /Desktop/EFI/OC/Drivers folder.

I use this driver over other HFS+ drivers because I have done since first using Clover many years ago. You can just as easily use the OpenHfsPlus.efi driver provided with OC.

Screenshot - EFi-OC-Drivers folder.png Populated Drivers folder


Kexts Folder:
I have the following Kexts in my /EFI/OC/Kexts folder, some are for the motherboard devices to work, some for additional components and others for Monitoring purposes using the HWMonitorSMC2 App - https://github.com/CloverHackyColor/HWMonitorSMC2
  • ACPIMonitor.kext
  • AirportBrcmFixup.kext
  • AppleALC.kext
  • IntelCPUMonitor.kext
  • IntelMausiEthernet.kext
  • Lilu.kext
  • SMCProcessor.kext
  • SMCSuperIO.kext
  • USBPorts.kext
  • VirtualSMC.kext
  • WhateverGreen.kext
Screenshot - EFi-OC-Kexts folder.png Populated Kexts folder


Resources Folder:
I replaced the /Desktop/EFI/OC/Resources folder with the one provided within the /Desktop/OcBinaryData-Master folder. As this folder contain the necessary boot themes, images, fonts and audio files for OpenCore’s GUI.

Due to the size of the /Resources/Audio folder and the fact I don’t use other languages on my Hack’s I always look to remove the non-English (en) audio files. This reduces the size of the Audio folder from just under 8MB (361 items) down to just under 700KB (78 items).

Screenshot - EFi-OC-Resouces folder.png Populated Resources folder


Tools Folder:
As with the Drivers folder I remove most of the Tools present in the /Desktop/EFI/OC/Tools folder leaving just these three:
  • CleanNvram.efi
  • OpenShell.efi
  • ResetSystem.efi.
These Tools are only left enabled while testing the new OC folder or installing the OS, as they are not necessary at other times. I like to keep the OC GUI boot screen nice and clear.

Screenshot - EFi-OC-Tools folder.png Populated Tools folder


Config.plist:
I followed Dortania’s Haswell Desktop guide for the majority of my config.plist setup. I also used the OC Clean Snapshot Command in Corpnewt’s ProperTree app, so I don’t have to manually add SSDT’s, Kexts, Drivers, Tools etc. to the config.plist.

I do however opt to make a few changes to suit how I like to run my setup.
  • I add a number of ACPI > Patches – rename patches carried over from Clover, I know you are all going to tell me I don’t need them. But I am happy with them being in my config, even if most are cosmetic in nature.
  • I include another Patch in the Kernel > Patch section for SATA Hot Plug, specifically so I don’t have to restart my system when I connect another drive via the Icy Dock ExpressCage unit.
  • SMBIOS:
    • Up to and including macOS Catalina I used the iMac14,2 SMBIOS with this system.
    • With the release of macOS Big Sur this needed to change to the iMac15,1 for continued support.
    • With the release of macOS Monterey it had to change again, this time to either a Macmini7,1 (supported Haswell system) using just the HD4600 IGPU, or
    • If using a discrete GPU then you would need to use iMac17,1 or newer.
  • As I have a USBPorts.kext with a compatible USB configuration for my usage, I don’t use the Kernel > Quirks > XhciPortLimit.
  • I enable the Kernel > Quirks > ThirdPartyDrives, so Trim is enabled on my non-Apple SSD’s.
  • I add the brcmfx-country=GB boot argument to set my WIFI location as United Kingdom, otherwise it can be set as unknown or quite commonly Germany!
  • I change the Misc > Boot > LauncherOption from Disabled to Full, to add an OpenCore entry to my Bios.
  • I change the Misc > Boot > PickerMode from Builtin to External, so the OC GUI is used in place of the Picker List.
Booting and the Clean installation of macOS Monterey was done in the normal manner. With no input required on my behalf after selecting the APFS formatted SSD, on which Monterey was to be installed. My next involvement was setting up the account.

Simples!

Couple of extra screenshots, showing the USB setup I use:

Screenshot - Hackintool USB Config.png Hackintool USB tab, USB ports activated by USBPorts.kext

Z87MX-D3H Motherboard.png Z87MX-D3H Motherboard layout with USB headers highlighted

Z87MX-D3H Rear plate.png Rear I/O plate with USB ports highlighted

I have subsequently edited this OpenCore 0.7.5 EFI to work with my other Haswell systems. Systems iMac1 and iMac2 in my signature below both using a discrete GPU running Big Sur.

Hope this helps if someone is looking to update their Haswell system to Monterey with OC 0.7.5. The EFI attached below contains all these settings, drivers, kexts etc.

Update 7/04/22
See post #49 for an updated EFI using OC 0.7.9 running Monterey 12.3.1

#49 Updated EFI for Monterey 12.3.1

Update 11/01/2023
See post #110 for OpenCore 0.8.6 EFI for macOS Ventura 13.1.

#110 Updated EFI for Ventura 13.1
 

Attachments

  • EFI.zip
    6 MB · Views: 3,970
  • screenshot - EFI Folder.png
    screenshot - EFI Folder.png
    265.4 KB · Views: 1,621
  • screenshot - About this Mac - Monterey.png
    screenshot - About this Mac - Monterey.png
    81 KB · Views: 1,576
Last edited:
UPDATE:
I have updated the system with a discrete graphics card and changed the SMBIOS from Macmini7,1 to iMac17,1.

I was thinking of reinstalling my Nvidia GTX 780Ti and using Chris1111's Nvidia Legacy Patcher app to install the Nvidia drivers. But changed my mind and went searching among my boxes of old parts for something that was natively supported in Monterey. I found an XFX HD7870 Tahiti LE 2GB card and decided that would do for this build.

So I physically installed the XFX HD7870 in the top PCIe slot. Still connected to the IGPU I booted in to the BIOS, changed the graphics selection form IGPU to PCI slot1. Saved the changes and shutdown the system. Disconnected the DisplayPort cable from the IGPU, connected a DVI cable to the HD7870.

MacOS Monterey booted as normal using the discrete GPU, with no glitches or graphical issues evident.

While in Monterey I opened the EFI used to boot the system and made the following changes to the config.plist:

Changed Device Properties for the IGPU, so it uses an Empty/Headless framebuffer, as shown in the following screenshots.
Screenshot 2021-12-12 at 16.27.31.png IGPU used to drive display

Screenshot 2021-12-12 at 16.27.06.png IGPU run headless, no display connected

I then went and changed the PlatformInfo > Generic section, replacing the Macmini 7,1 SMBIOS details with those from an iMac 17,1 system, which I had previously checked with Apple's Support server to make sure it wasn't being used by a real Mac.

These two screenshots don't show much, other than the System Name change, as I am not stupid enough to post a copy of the Serial Number from either setup (well not usually).

The MLB, ROM, SystemProductName, SystemSerialNumber and SystemUUID were changed.
Screenshot 2021-12-12 at 16.28.03.png Macmini7,1

Screenshot 2021-12-12 at 16.28.32.png iMac17,1

I rebooted the system after saving these changes.

I ran the CleanNvram tool from the OC boot screen, rebooted the system again, then logged in to my account for Monterey as normal.

I was presented with an iCloud/Apple ID issue, which I expected, as I had changed the Serial Number etc. I was asked to provide my Apple ID password, my system login password and to verify my account from one of my other Hack's/iPhone/iPad as normal.

iCloud reset with the new system details and serial number, and every thing else works as expected. The system is accessible over my home network from my other hack's and real Mac's via Screen Sharing and for File Sharing.

Here is the revised 'About this Mac' screenshot.

Screenshot 2021-12-12 at 16.26.27.png

I'm not planning to undertake any further hardware upgrades on this system, just the normal macOS version updates for Monterey.
 
Last edited:
I have updated the system with a discrete graphics card and changed the SMBIOS from Macmini7,1 to iMac17,1.
One thing I've noticed on my Haswell Q87 system is that the mouse will lag/stutter for the first 30 seconds after reaching the desktop. I'm using HD4600 and Macmini7,1. Did you experience anything like this ? OC version is 0.7.5.
 
No I haven't noticed anything unusual with the mouse or anything else for that matter. In fact it was probably one of the easiest and smoothest clean macOS installations I have undertaken.

I am using a Logitech K270 Keyboard/mouse combo with this system, as the Unifying Receiver is simple to switch between systems when I have need of the keyboard and mouse on another system.
 
I am using a Logitech K270 Keyboard/mouse combo with this system, as the Unifying Receiver is simple to switch between systems when I have need of the keyboard and mouse on another system.
It's quite strange because it's not even a BT mouse, it's a wired USB mouse. It may have to do with something USB related or gfx related IDK.
 
Shouldn't be GFX related, assuming it is an actual HD4600 and not a HD4400 spoofed to work like a HD4600. That being the case it could be GFX related.

Do you have the same issue if you use different USB ports?
 
Do you have the same issue if you use different USB ports?
Yes, tried most of them.
assuming it is an actual HD4600 and not a HD4400
i5-4570 so it is HD4600.

I've tried changing various OC quirks and once got it to go away but didn't remember what change made the difference. I'll keep investigating. Just wanted to see if anyone else might have seen this.
 
Last edited:
Updated Monterey to 12.1 using Software Update in System Preferences. Took a while, just the preparing part after the update had been downloaded. Installation went smoothly, no need to update any kexts, drivers or OC.

Screenshot 2021-12-14 at 23.39.54.png
 
It's quite strange because it's not even a BT mouse, it's a wired USB mouse. It may have to do with something USB related or gfx related IDK.
This problem has resolved after making a new OC 0.7.6 Monterey EFI. Still not sure of the cause.
 
Back
Top