This is NOT about installing Windows 8 on a Mac, this is about using Apple’s EFI to boot Windows.

(If you don’t know what an EFI is, see Wikipedia)

Okay, so here’s what’s going on:

Apple has used EFI to boot OSX for years, but Windows has not supported this method of booting.

With Windows 8, Microsoft claims that you can boot with EFI so long as the drive you’re booting on has an efi partition and uses a GUID partition table.

Here’s the kicker, for years now, OSX has been using a Hybrid MBR partition table… that is they are using a GUID partition table with a matching MBR partition table embedded into it. This means that older versions of Windows can see the partition information from the older MBR system and will work properly using a legacy bootloader. But if you have an EFI installer for Windows, it will not let you install (or even BSOD!) if you try to use it as it sees the MBR and ignores the GUID.

A lot of posts online cite that Apple’s EFI implementation is based on EFI v1.1 and that Windows supports only EFI v2 and newer. This is NOT the case. It doesn’t work because the Windows installer sees the MBR in the hybrid partition table and decides that you are NOT using a GUID partition table even though you are.

Luckily, there is a way around this to get a fully native EFI-booted Windows 8 installation! But beware, this path (while awesome) is paved with daggers, so be prepared to pull your hair out in frustration.

Warning: These steps require you tocompletely erase your hard drive! Make sure you have all the materials and have backed up all of your data before proceeding.

Materials:

A recent MacBook Pro (this will probably work on other Macs, but I don’t have any to test with) I’ve tested this on the 1st-gen Retina 15″ and a 13″ 2nd-gen i5 model.

A disk drive capable of reading DVDs (you’ll need an external drive for MacBook Retinas or MacBook Airs)

A Mountain Lion Install Disk or Netboot Installer

A CD/USB drive with the “Windows Support” files from Bootcamp

A Windows 8 Pro Install DVD

Procedure:

Put the Windows 8 Disk in the disk drive Option-boot the computer and choose to boot off the “Windows” disk (Do not choose “EFI Boot” but make sure that it does show up, you’ll need to use it later) Once the installer gets to the setup screen, hit shift+f10. This will bring up a command prompt Type the following commands (this assumes that you only have one hard drive): diskpart (this puts you into the windows partitioning shell) select disk 0 (this selects the primary hard drive, make sure you don’t have any extra drives connected) clean (this erases your entire hard drive by removing all partition information) convert gpt (this converts your hard drive from an MBR partition table to a GUID partition table) create partition efi size=200 (this creates the efi partition where the bootloader will live) format fs=fat32 (this formats the EFI partition as fat32 so that Windows can write to it) create partition msr size=128 (this creates a “MicroSoft Reserved” partition… because microsoft) create partition primary (this uses the rest of your free space to create a usable partition) format fs=ntfs quick label=Windows (this formats the Windows partition and labels it as “Windows” which is what OS X will see) exit (this exits the windows partitioning shell) wpeutil reboot (this tells the computer to reboot) Option-boot the computer when it reboots, but this time choose “EFI Boot” instead of “Windows” Remember to press the any key to boot into the installer! Choose to use a Custom Install and install Windows 8 to “Partition 3” (The only primary partition) Make sure you leave the install disk in the drive through the whole install or you could get a BSOD Install the Windows Support software from your CD/USB drive to gain full functionality of your computer Congratulations! You now have a natively-EFI-booting Windows 8 Install! Now, on to dual-booting OSX… Open “Disk Management” in Windows. Find your “C Drive” partition and resize it by right-clicking on it and choosing “shrink volume” Shrink it by the size you’d like your OSX installation to be. ie. if you want to give OSX 100GB, use 102400MB Right-click on the now empty area at the end of the drive and make a new “Simple volume” Don’t format it. Reboot the computer into your OSX install disk/Netboot Open Disk Utility Choose “disk0s4” as this will be the 4th partition on disk 0 On the “Erase” tab choose “Mac OS Extended (Journaled)” since this is what OSX likes to use. Give it a label that you like (Apple defaults to “Macintosh HD”) Hit Erase Exit Disk Utility Install OSX on your new partition. Congratulations! You are now dual-booting OSX and Windows in a 100% EFI environment! Happy computing 🙂

Note 1: If you get a BSOD during install, make sure that you have NOT removed the Windows 8 install DVD from the disk drive… during install, removing the DVD at any time will produce a BSOD even though the OS no longer needs the disk to install.

Note 2: Windows now shows up in option-boot as “EFI Boot” instead of “Windows”

Note 3: Because we created the partition that OSX uses in windows, it no longer shows up in “My Computer” in Windows… Here’s how to fix that:

Open “Disk Management” Right-click on the partition that you created for OSX (it should be labeled as an HFS partition) Choose “Change Drive Letter and Paths” Choose “Add” Assign it to a drive letter of your liking… I used “E” Hit OK Hit OK again You now have read-only access to your Mac Partition!

Update 1: I’ve been informed that for some models the sound does not work in Windows when booted via EFI. It appears to affect models that use the Cirrus audio controller. I’ve gotten ahold of a test unit and will see if there’s a workaround.

Update 2: Added formatting into step 4 to resolve possible BCD-related problems.

Update 3: Added “select disk 0” to step 4, you can’t do anything if you don’t specify the disk.