Partial Success ! My attempt at setting up a usable OS X install on a 9 years old laptop.

Finished product shots first: https://imgur.com/ehMua4R , https://imgur.com/do6tqwq

This is my second hackintosh, as I already have a desktop running High Sierra, but the installation process was nowhere near as tedious as on my laptop. Since it was gifted to me in May 2009, I always wanted to install OS X on this machine. It's an Acer PC (5810 TG), powered by an Intel Pentium from the Penryn era (Pentium U4100), paired to an ATI HD 4330 with 512 MB VRAM and 4 GB DDR3. Its performance was acceptable back in 2009, but it's obviously terrible by modern standards. Yet, it turns it is actually a fairly usable machine running El Capitan. I'll try to explain how in the following lines.

Preparing the hard drive for a dual boot with Ubuntu

I have used a live USB called boot-repair-disk for this. The laptop only has one drive bay, and being a machine I wanted to use daily, I had to dual boot with a stable OS. To go through the installation process of El Capitan I had to do three things:

  • Convert my disk from MBR to GPT
  • Create an EFI partition
  • Pre-format a partition to HFS

As all of this can be done with boot-repair-disk, without losing data, this Lubuntu-based live USB quickly became a godsend. I first had to connect to my home wifi and install gdisk and hfsprogs. The first will allow us to convert the HDD to GPT, and the latter to format to HFS. I chose not to explain how I used gdisk, partly because I am too afraid of saying something wrong as this is a sensible process, and it's been a few weeks since I have done it. There are guides out there that will explain how to do so.

Creating an EFI partition is easy. Start GParted, free up to 200 MB, click on create a new partition, format it to fat32, name it EFI and flag it boot, esp. But as my laptop doesn't have an EFI compatible BIOS, it won't boot if you stop there. I had to create a BIOS_boot partition, flagged bios_grub and left unformatted. The final partition table looks like this. Next I installed grub inside of this small partition and inside the ext4 linux partition. Note that I separated my /home partition to avoid losing all my data. Grub must be installed at / , so /dev/sda3 in my case. Although grub is installed in legacy BIOS mode, Ubuntu starts using EFI mode. I do not quite understand the magic behind this, and I hope this is clear enough.

The last preparation step consists in creating a HFS partition using GParted. It is mandatory, otherwise, the installer won't let you access the drive.

Booting the Installer and the installation process

It installed normally with FakeSMC.kext and VoodooPS2.kext in /EFI/Clover/kexts/10.11 folder. Unsure if NullCPUPowerManagement.kext was needed.

Installing Clover

"Install Clover for UEFI motherboard only" and "Install Clover in the ESP" must be selected. I also selected "Fix for OSXAptioDrv" in drivers64UEFI but I'm not sure it's needed, my laptop has an Insyde BIOS.

Getting my GPU to work

I added the ID of my card in AMD4600Controller.kext Info.plist. The rest of the work consists in patching my personality in AMD4600Controller so that it fits my card. There's an old thread on insanelymac that has proven useful for this: https://www.insanelymac.com/forum/topic/252061-mobility-radeon-hd-4650full-resolution-with-qe-ci-working-on-internal-lvds-screen/

Basically, I had to obtain my video_bios.rom from AIDA64 and decode it using a script called radeon_bios_decode. All the patching work is done by Clover using the config.plist. Under ATIConnectorsData I pasted the unmodified personality present in AMD4600Controller.kext and under ATIConnectorsPatch I pasted the one obtained from my GPU .rom. It looks like this. Then, under the Graphics tab in Clover Configurator, "Inject EDID" and "Load VBios" are checked, "Dual Link" is set to 0. I used RadeonFramebuffer as my framebuffer. Using Shrike as advised in the guide previously linked gave me a black screen.

CPU Power Management

Seems to be okay. Everything is done in the config.plist, under the ACPI tab. I checked "Drop OEM" "Enable C2", "Enable C4", "Enable C6", "Generate P-States", "Generate C-States" and set "C3 Latency" to 0x00FA. Speed Step works and AppleACPICPU is loaded.

Audio

Pretty straightforward. My laptop uses ALC 269, and my layout-id is 20. I know that because I rebooted 16 times to find the correct one. With that in mind, I edited my config.plist and put Lilu.kext and AppleALC.kext under /EFI/Clover/kexts/10.11.

Networking

Ethernet works fine with AtherosL1CEthernet.kext. I had to replace my Intel Wifi card with a BCM943225HMB, which costed me 4$ on Aliexpress. DSDT patches were involved to make it work, as well as FakePCIID.kext. Haven't looked into Bluetooth yet.

Battery Indicator

I followed RehabMan's guide to patch my DSDT for it to work. Oh and I get about 3 hours of battery life.

Brightness

Adding a PNLF method in the DSDT and putting ACPIBacklight.kext under /EFI/Clover/kexts/10.11 did the trick.

Trackpad

Two fingers gestures work with VoodooPS2.kext.

iMessage, FaceTime, and AppStore

All are working. Used the guide on this subreddit. My SMBIOS is Macbook 5,1.

What doesn't work

QE/CI support is only partial, meaning the system will freeze if a 3D app is launched, such as Plans, Chess, etc. Nothing can be done about it. It doesn't bother me for my use case and I can always use Ubuntu if I want to.

Sleep. Now this is what bothers me the most. My laptop enters sleep but reboots when I press the power button to wake it up. I'd happily try your ideas!

submitted by /u/Spooky727
[link] [comments]
Share:

Leave a Reply

Loading comments...