Leaderboard
Popular Content
Showing content with the highest reputation since 05/01/25 in all areas
-
Released May 12th, 2025. Build 24F74. Bug fixes and security update. Safe to install on our Hackintosh platforms. Also released at the same time: macOS Sonoma Security Update 14.7.6 (Build 23H626) macOS Ventura Security Update 13.7.6 (Build 22H625) View full article1 point
-
Hi all, I am very excited to finally hack this world famous GPU mining motherboard and pleased to share with you all the clover bootpack. Specifications Asrock H81 BTC Pro Ver 2.0 4th Gen 3.5 GHz i3-4330 8 GB DDR3 1600 MHz Memory Intel Graphics HD 4600 HDMI output on 24-inch LED Monitor (1920 x 1080) OpenCore Bootpacks Big Sur Support for Mac OS Big Sur 11.0.1 (OpenCore 0.6.3) OC-11.0.1.zip Clover Bootpacks Big Sur Support for Mac OS Big Sur 11.0.1 (Clover 5126) CLOVER-10.15.7.zip Catalina Support for Mac OS Catalina 10.15.7 (Clover 5126) CLOVER-10.15.7.zip Support for Mac OS Catalina 10.15.4 (Clover 5116) CLOVER-10.15.4.zip Support for Mac OS Catalina 10.15.1 (Clover 5070) CLOVER-10.15.1.zip Support for Mac OS Catalina 10.15 (Clover 5070) CLOVER-10.15.zip Support for Mac OS Catalina 10.15 Beta (19A471t) (Clover 4945) CLOVER-10.15 Beta (19A471t).zip Mojave Support for Mac OS Majave 10.14.6 (Clover 4945) CLOVER-10.14.6.zip Support for Mac OS Majave 10.14.5 (Clover 4934): CLOVER-10.14.5.zip Support for Mac OS Majave 10.14.4 (Clover 4910): CLOVER 10.14.4.zip Support for Mac OS Mojave 10.14 Beta 4 18A326h (Clover 4586): CLOVER 10.14 Beta 4.zip Support for Mac OS Mojave 10.14 Beta 18A293U (Clover 4517): CLOVER 10.14 Beta.zip High Sierra Support for Mac OS High Sierra 10.13.6 (Clover 4635) CLOVER 10.13.6.zip Support for Mac OS High Sierra 10.13.4 (Clover 4428) CLOVER-V4.zip Support for Mac OS High Sierra 10.13.2 (Clover 4360) CLOVER-V3.zip Support for Mac OS High Sierra 10.13.1 (Clover v4293) CLOVER-V2.zip Support for Mac OS High Sierra 10.13.1 (Clover v4293) with Intel Graphics: CLOVER-Intel.zip Support for Mac OS High Sierra 10.13.1 (Clover v4293) with ATI Graphics: CLOVER-ATI.zip Credits goes to Jake Lo and Bronx Teck OpenCore & Clover Notes on Mac OS Big Sur 11.0.1 (1) Everything works (2) Updated all kext to latest version Clover Notes on Mac OS Catalina 10.15.7 (1) Everything works (2) Updated all kexts to latest version Clover Notes on Mac OS Catalina 10.15.4 (1) Everything works (2) Updated Lilu.kext, VirtualSMC.kexts and Whatevergreen.kext to latest version Clover Notes on Mac OS Catalina 10.15.1 (1) Everything works (2) Updated Whatevergreen.kext to latest version Clover Notes on Mac OS Catalina 10.15 (1) Everything works (2) Updated clover, efi drivers & kexts to latest version (3) Swapped from FakeSMC to VirtualSMC Clover Notes on Mac OS Catalina 10.15 Beta (19A471t) (1) Everything works (2) Whatevergreen.kext requires graphics injection from Clover Clover Notes on Mac OS Mojave 10.14.5 (1) Everything works (2) Mac OS 10.14.5 Update Installer now complaints "Cannot Find Installer Resources". A very crude workaround is to remove all other hard drives except for the Mac OS hard drive. Let me know if anyone find a solution to this without having to open the casing each time we want to update. Clover Notes on Mac OS Mojave 10.14.4 (1) Everything works (2) Whatevergreen.kext now autodetects the graphics card. Make sure no graphics injection is done in Clover. Clover Notes on Mac OS Mojave 10.14 Beta 4 18A326h (1) Everything works (2) Updated from Mac OS Majave 10.14 Beta 18A293U via Software Update in the System Preference. Clover Notes on Mac OS Mojave 10.14 Beta 18A293U (1) Everything works including sleep. (2) Dedicated GPU Radeon Pro 560 not displaying on monitor. May need to wait for WhateverGreen.kext to be updated with support for this Mac OS version. Clover Notes on Mac OS High Sierra 10.13.1 (1) Everything works including sleep. (2) Updated all kexts to latest versions (3) Added IntelGraphicsFixup.kext and Shiki.kext (4) Combined all ATI & Intel GPU configs & kexts into single bootpack for multi GPU support (5) For those that need to update 10.13 to 10.13.1, you will need to install the latest clover (version 4293 is the one I used). If there are error messages, you may try to remove EmuVariableUefi-64.efi from Clover EFI temporarily, clear NVRAM using sudo nvram -c in terminal, download the update directly from apple website and install. Clover Notes on Mac OS High Sierra 10.13.2 (1) Everything works including sleep. (2) Updated all kexts to latest versions (3) For those updating from 10.13.1 to 10.13.2, you will need to install the latest clover and lilu including plugins (or download latest bootpack above) as well as download and install the update directly from apple website. Updating via App Store doesnt seem to work for me as I get the mkpg not found error message after reboot. Clover Notes on Mac OS High Sierra 10.13.4 (1) Everything works including sleep. (2) Updated all kexts to latest versions (3) For those updating from an earlier version of 10.13 to 10.13.2, you will need to install the latest clover and lilu including plugins (or download latest bootpack above) as well as download and install the update directly from apple website. The OS X installer will reboot several times. Clover Notes on Mac OS High Sierra 10.13.6 (1) Everything works including sleep. General Notes (1) The UEFI Bios does not detect Clover EFI natively. For first boot into Mac OS, you will need to boot Clover EFI using the Installer USB. In order to add Clover EFI into UEFI Bios, you will need to manually add it using the Clover UEFI shell using the following command:- (a) bcfg boot add 3 fsX:\EFI\CLOVER\CLOVERX64.EFI "Clover" (You will need to replace X with the location of your Clover EFI partition. This is shown in the list when you first enter the UEFI shell) (b ) Lastly, do bcfg boot mv 3 0 to move the Clover boot order to the first. (2) I found that this motherboard is very compatible with Mac OS and patched DSDT / SSDT is not required. Notes on Mining (1) As all you miners know, this motherboard can take up to six (6) GPUs, I have yet to test additional GPU on the PCIEx1 slots. At the moment, the single GPU that i'm using is installed on the PCIEx16 slot. I will test it once I have opportunity to get additional GPU. In the mean time, for those miners who already have this motherboard in their rig and are already using Windows or Linux, Mac OS may be a good OS to try since some miners (like ethereum's ethminer) are also released for Darwin and both NVIDIA and ATI have provided drivers for their latest GPUs. This does open up a good possibily of using Mac OS for GPU mining! (2) I was able to use the dedicated RX560 GPU for both as primary display as well as for mining. However, it causes the system to slow down and created artifacts when I rebooted / shutdown. I was able to make the system more stable by using the integrated HD4600 GPU as primary display and the dedicated RX560 GPU for mining. In order to use both integrated GPU and dedicated GPU, both Intel and ATI need to be injected by Clover. In the case of ethereum miner, ethminer was able to recognized all GPU but I only selected the RX560 for mining. This made the system more stable. (3) [10-11-2017] I just installed a third old AMD Radeon HD 7750 GPU on the first PCIEx1 slot and am very happy to see that Mac OS recognized it straight away. In the case of ethereum miner, ethminer was able to recognized all GPU. Attached pictures below:- (4) One of my main concern is I am still not able to get HWMonitor to show GPU temperature which is very important to monitor the current health of the GPUs. We would not want the GPU to overheat due to unforeseen reasons. Let me know if you are able to solve this issue. (5) During my discussion with crew member Rhyker, we were discussing on ways to tune the GPU from within Mac OS. As you know, currently the manufacturer only provide tuning software for Windows and to a limited extend Linux. We were thinking of running Windows under a virtual machine to access the GPU tuner to tune the GPUs. However, based on my last attempt, accessing native GPU from a virtual machine is still not possible although there are projects that are attempting to do this. Let me know if this idea is workable. Let me know if the clover bootpack works for you.1 point
-
***Codec Verbs Info*** 071CXY X = Default Association Values: 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d and f Y = Sequence Values: Always set this to '0' because Apple dont use analog multi outputs in their codec. 071DXY X = Color: Color of the jack Values: Unknown 0 Black 1 Grey 2 Blue 3 Green 4 Red 5 Orange 6 Yellow 7 Purple 8 Pink 9 Reserved A-D White E Other F Y = Misc - Jack detect sensing capability Values: 1 for Internal Devices(Speaker etc.,) and 0 for External Devices(Headphones etc.,) 071EXY X = Default device - Intended use of the Jack Values: Speakers 1 HP Out 2 CD 3 SPDIF Out 4 Digital Other Out 5 Modem Line Side 6 Modem Handset Side 7 Line In 8 AUX 9 Mic In A Telephony B SPDIF In C Digital Other In D Reserved E Other F Y = Connection type - indicates the type of physical connection Values: Unknown 0 1/8 stereo/mono 1 1/4 stereo/mono 2 ATAPI internal 3 RCA 4 Optical 5 Other Digital 6 Other Analog 7 Multichannel Analog (DIN) 8 XLR/Professional 9 RJ-11 (Modem) A Combination B Other F 071FXY X = Port Connectivity - indicates the external connectivity of the Pin Complex. Software can use this value to know what Pin Complexes are connected to jacks, internal devices, or not connected at all. 00b - The Port Complex is connected to a jack (1/8, ATAPI, etc.). 01b - No physical connection for Port. 10b - A fixed function device (integrated speaker, integrated mic, etc.) is attached. 11b - Both a jack and an internal device are attached. Y = Location Location indicates the physical location of the jack or device to which the pin complex is connected. This allows software to indicate, for instance, that the device is the “Front Panel Headphone Jack†as opposed to rear panel connections. Details: Convert the 2 digit hex number to binary. Pad the front with zeros to make it 8 dgits. Example: Code: 0x02 = binary 10 = 00000010 8 digit binary Reading the bits from left to right: Port Connectivity bits 7:6 ----------------------------------------------------------- 00 - Port is connected to a Jack 01 - No External Port -or- No physical connection for Port** 10 - Fixed Function/Built In Device (integrated speaker, mic, etc) 11 - Jack and Internal device are attached Location Part 1 - bits 5:4 ----------------------------------------------------------- 00 - External on primary chassis 01 - Internal 10 - Separate chassis 11 - Other Location Part 2 - bits 3:0 ----------------------------------------------------------- The meaning depends on Location Part 1 00 0000****N/A 00 0001** Rear 00 0010** Front 00 0011** Left 00 0100** Right 00 0101** Top 00 0110** Bottom 00 0111** Special (Rear panel) 00 1000** Special (Drive bay) 01 0000** N/A 01 0111** Special (Riser) 01 1000** HDMI 01 1001** ATAPI 10 0000****N/A 10 0001** Rear 10 0010** Front 10 0011** Left 10 0100** Right 10 0101** Top 10 0110** Bottom 11 0000** N/A 11 0110** ? 11 0111** Inside Mobile Lid (example: mic) 11 1000** Outside Mobile Lid ************Bits Hex******76 54 3210 ------------------- 71cf01 = 00 00 0001 - Port has a jack - It is External - Rear Location 71cf02 = 00 00 0010 - Port has a jack - It is External - Front Panel Location 71cf59 = 01 01 1001 - No External Port - ATAPI 71cf18 = 00 01 1000 - Port has a jack - External - HDMI 71cf90 = 10 01 0000 - Built In Device - Internal - N/A ******** |**|**|||| ******** |**|**|--------- Location part 2 ******** |**|------------ Location part 1** ******** |--------------- Port Connectivity1 point
-
CHAPTER -2 PATCHING XML FILES: ***Platforms and Layoutxx file Patch Explanation*** COMPRESSING AND UNCOMPRESSING ZLIB FILES OF PLATFORM AND LAYOUT XML: From 10.8 or later, the xml files are compressed to zlib format. We have to uncompress them to edit the files. After editing, again we have to compress it back to zlib. For Compressing and uncompressing, use the attached perl script and below commands in terminal: for uncompressing perl zlib.pl inflate layout28.xml.zlib > layout28.xml for compressing perl zlib.pl deflate layout28.xml > layout28.xml.zlib Layoutxx.xml file Patching You can either use the attached xml files (or) can choose any one of the layout xml file from the apple Resources directory inside AppleHDA kext that matches Inputs and outputs of your codec and try this only if you want to experiment. I'm using the Layout28.xml of Apple and edited to the values of ALC269. One of the reason to choose layout28 is because its used in MacBookPro8,1 and works very well. The other layout id's which also works for some codecs are '1' and '12' in hackintosh. Note: We removed the tags External Mic, SPDIF from the Apple layout28 xml file since they are not needed for our example ALC269. In the Layout xml file, we have to edit the following information. 1. LayoutID <key>LayoutID</key> <integer>28</integer> 2. CodecID [ALC 269 Vendor id decimal value =283902569 ] <key>CodecID</key> <array> <integer>283902569</integer> </array> 3. Edit the Inputs key like below for External Mic(LineIn) and Internal Mic in Notebooks <key>Inputs</key> <array> <string>Mic</string> <string>LineIn</string> </array> 4. Edit the "IntSpeaker" key like below and remove all the signal processing elements. Note: set MuteGPIO to 0 (or) remove this if its not working [ not supported by some codecs] For Realtek: <key>IntSpeaker</key> <dict> <key>MaximumBootBeepValue</key> <integer>48</integer> <key>MuteGPIO</key> <integer>0</integer> </dict> For others: <key>IntSpeaker</key> <dict> <key>MaximumBootBeepValue</key> <integer>110</integer> </dict> 5. Edit the "LineIn" key like below. For Realtek: <key>LineIn</key> <dict> <key>MuteGPIO</key> <integer>1342242840</integer> </dict> For Others: <key>Mic</key> <dict/> 6. Edit the "Mic" key like below. For Realtek: <key>Mic</key> <dict> <key>MuteGPIO</key> <integer>1342242841</integer> </dict> For Others: <key>LineIn</key> <dict/> 7. Edit the Outputs key like below for Speakers and Headphone in Notebooks <key>Inputs</key> <array> <string>Headphone</string> <string>IntSpeaker</string> </array> 8. Edit the PathMapID tag at the end of the file with the PathMapID value used in Platforms xml file. <key>PathMapID</key> <integer>269</integer> Note: SignalProcessing elements for Mic and Speaker are not supported by some codecs, so i've removed it. But can provide some good audio if used but not sure, so try to experiment with this later after getting audio working. I've attached xml files with the SignalProcessing working fine in ALC269 for speaker and Mic in Realtek and IDT for your reference, you can get more from Apple xml files. Platforms.xml Patching: This file contains the Mapping of Controls to its nodes giving a path. These path maps are contained in the key tag "PathMaps". Note:You can use the Platforms xml file i've attached which has all the PathMaps of Apple codec are removed and has only one PathMap of ALC269 in order to make it easy for editing instead of Apple file. We need to add our pathMaps to this root key which is a mapping of our Pin Complex's(O/P & I/P) to its Output/Input controls. Follow the pattern i've explained below and edit the values of your codec nodes PathMaps calculated in the first post for each input and output. After editing then add the PathMap pattern of yours inside the file Platforms.xml at the end after the key tag of PathMapID like below. <key>PathMapID</key> <integer>[some apple id]</integer> </dict> <<< Your pathMaps >> The pattern for the PathMap is <dict> <key>PathMap</key> <array> <array> <array> Data of Input1 (LineIn) </array> <array> Data of Input2 (Mic) </array> </array> <array> <array> Data of Output1 (Speaker) </array> <array> Data of Output2 (Headphone) </array> </array> </array> <key>PathMapID</key> <integer>[PathMapID used in layout#]</integer> </dict> Input Data pattern: <array> <dict> <key>Amp</key> <dict> <key>Channels</key> <array> <dict> <key>Bind</key> <integer>1</integer> <key>Channel</key> <integer>1</integer> </dict> <dict> <key>Bind</key> <integer>2</integer> <key>Channel</key> <integer>2</integer> </dict> </array> <key>MuteInputAmp</key> <true/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <true/> </dict> <key>NodeID</key> <integer>[Input Node#]</integer> </dict> <dict> <key>NodeID</key> <integer>[Audio Mixer/Selector Node#]</integer> </dict> <dict> <key>Boost</key> <integer>[Boost value# 1-3]</integer> <key>NodeID</key> <integer>[Pin complex Node#]</integer> </dict> </array> Input Data pattern without Audio Mixer/Selector: Note: Some codecs doesn't need (or) use Audio Mixer/Selector node, so in order to get them working we should remove it from the pattern. Mostly this has been seen from IDT and Conexant codecs so far by me. <array> <dict> <key>Amp</key> <dict> <key>Channels</key> <array> <dict> <key>Bind</key> <integer>1</integer> <key>Channel</key> <integer>1</integer> </dict> <dict> <key>Bind</key> <integer>2</integer> <key>Channel</key> <integer>2</integer> </dict> </array> <key>MuteInputAmp</key> <true/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <true/> </dict> <key>NodeID</key> <integer>[Input Node#]</integer> </dict> <dict> <key>Boost</key> <integer>[Boost value# 1-3]</integer> <key>NodeID</key> <integer>[Pin complex Node#]</integer> </dict> </array> Output data pattern: <array> <dict> <key>Amp</key> <dict> <key>MuteInputAmp</key> <false/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <false/> </dict> <key>NodeID</key> <integer>[Pin complex Node#]</integer> </dict> <dict> <key>Amp</key> <dict> <key>MuteInputAmp</key> <true/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <false/> </dict> <key>NodeID</key> <integer>[Audio Mixer Node#]</integer> </dict> <dict> <key>Amp</key> <dict> <key>Channels</key> <array> <dict> <key>Bind</key> <integer>1</integer> <key>Channel</key> <integer>1</integer> </dict> <dict> <key>Bind</key> <integer>2</integer> <key>Channel</key> <integer>2</integer> </dict> </array> <key>MuteInputAmp</key> <true/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <false/> </dict> <key>NodeID</key> <integer>[Output Node#]</integer> </dict> </array> Output Data pattern without Audio Mixer: Note: Some codecs doesn't need (or) use Audio Mixer, so in order to get them working we should remove it from the pattern. Mostly this has been seen from IDT and Conexant codecs so far by me. <array> <dict> <key>Amp</key> <dict> <key>MuteInputAmp</key> <false/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <false/> </dict> <key>NodeID</key> <integer>[Pin complex Node#]</integer> </dict> <dict> <key>Amp</key> <dict> <key>Channels</key> <array> <dict> <key>Bind</key> <integer>1</integer> <key>Channel</key> <integer>1</integer> </dict> <dict> <key>Bind</key> <integer>2</integer> <key>Channel</key> <integer>2</integer> </dict> </array> <key>MuteInputAmp</key> <true/> <key>PublishMute</key> <true/> <key>PublishVolume</key> <true/> <key>VolumeInputAmp</key> <false/> </dict> <key>NodeID</key> <integer>[Output Node#]</integer> </dict> </array> Layout12_XML_Files_ref.zip Layout28_XML_Files_ref.zip zlib.zip1 point
This leaderboard is set to London/GMT+01:00