This is a guide for enabling the black boot screen + white Apple logo on "unsupported" Macs.
It should in theory work on all 64-bit EFI Macs.
WARNING: A small mistake or even just a fluke problem could potentially prevent your Yosemite partition from booting. Make sure you have a backup of it! I'm not responsible for anything that happens to your Mac.
NOTE: When you run an update it's possible that it could revert this, so you may have to repeat the process again after the update.
UPDATE: w0lf has been kind enough to write a script to automate this process! This link will always have the latest version:
https://github.com/w0lfschild/DarkBoot
note: You may have to make DarkBoot.command executable after downloading. Put it on your desktop, open the Terminal and type the following:
Code:
cd ~/Downloads && chmod +x DarkBoot.command
The following method is how to do this manually, but it's outdated so it won't work on current versions of Yosemite. I have left it here for informational purposes.
If you want to see what the current script is doing, you can open it in a text editor.
IMPORTANT NOTE: If you boot back into an older version of OS X after doing this, it will boot with a completely black screen. On the next boot, you will have your white screen back in both pre-10.10 and 10.10 versions. To get the black Yosemite screen again, just reboot into your Yosemite partition twice.
For this guide you need:
-A hex editor such as
HexFiend
-Preferably some basic terminal knowledge... however I have done my best to make this guide as fool-proof as possible so even if you have no terminal knowledge you should be able to do it.
First off, I would like to thank
Pike R. Alpha for explaining how boot.efi determines whether to use a black or white boot screen, as seen here:
http://www.insanelymac.com/forum/topic/298808-can-we-get-back-the-apple-logo-on-boot/?p=2036030 Also, thanks to
VanillaCracker who explained how he got this to work on his 2012 Mac Mini in that same thread.
What this hack does is it simply checks the board id of your Mac to determine if it supports the black boot screen.
So basically, what we will be doing is changing one of the "supported" board id's to our own to trick it into thinking our Mac is supported.
Here's how to do it:
1. First, you need to get the board id of your Mac model.
EDIT: Thanks to w0lf, here is a script you can use to tell you your board id:
Code:
var_ID=$(ioreg -p IODeviceTree -r -n / -d 1 | grep board-id);var_ID=${var_ID##*<\"};var_ID=${var_ID%%\">};echo $var_ID
View attachment 479568
As you can see, the board id for my MacBookPro8,1 is
Mac-94245B3640C91C81.
2. Now let's back up the boot.efi file just in case. Make a folder on your desktop called "efi_backup" and copy /System/Library/CoreServices/boot.efi to that folder.
3. Now make another folder called "new_efi" for example, drag boot.efi into that folder. Note that the icon has a lock on it:
View attachment 479434
This means that NO user can modify the permissions or ownership of the file, not even the root user. Let's fix this so we can actually modify it.
4. Open the terminal and navigate to your new efi folder:
5. Type this command to disable the lock flag for the file:
Code:
sudo chflags nouchg boot.efi
6. Make sure you have write permissions:
7. Now we're going to edit boot.efi to tell it that our Mac supports the black boot screen. Open it up with HexFiend, click on the right column, and search for "Mac-" (make sure you have the dash). You should see a bunch of Mac board id's. Highlight one of them, in this example I am using the third one which is
Mac-35C1E88140C3E6CF. That's the MacBookAir6,1 board id. Replace that with your board id, which again in my case is Mac-94245B3640C91C81.
View attachment 479433
NOTE: If you have an 8-digit board id, the last 8 digits of the board number you are replacing will have to be replaced with spaces (this can be done by going to the hex side of the window and replacing that section of the board number with 00 00 00 00 00 00 00 00)
Save the file and exit hex fiend.
8. Now let's replace the original boot.efi file. Since the file is locked, we need to unlock the original before it will let us replace it, just like we did before:
Code:
sudo chflags nouchg /System/Library/CoreServices/boot.efi
9. Drag your newly modified boot.efi file into the CoreServices folder to replace it, and type in your password when prompted.
10. The last thing we need to do is set ownership+permissions and re-lock the file:
Code:
sudo chmod 644 /System/Library/CoreServices/boot.efi
Code:
sudo chown root:wheel /System/Library/CoreServices/boot.efi
Code:
sudo chflags uchg /System/Library/CoreServices/boot.efi
11. Now let's reboot! You will most likely need to reboot twice for the settings to take effect.
Here is the result:
View attachment 479431
View attachment 479432
I'm extremely happy with this hack, I hope some of you will find it as useful as I have!
If this guide is useful to you, please check out my music in my signature.