Windows 8 Boot/Install Using EFI on MacBook Pro (Early 2011)

Discussion in 'Windows 8' started by generalsu, Aug 6, 2012.

  1. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    Windows 8 RTM boots and installs nicely with EFI on a MacBook Pro (Early 2011), unlike Windows 7. Halfway through the install process, an error shot up:

    "Windows could not update the computer's boot configuration. Installation cannot proceed."

    I have cleared all my previous Windows 7 and Mac partitions just to install Windows 8 RTM, so there is only one unallocated partition on my internal HDD.

    When I use BIOS mode to install Windows 8 RTM, everything installs and works just fine.

    I do not know whether this is a Mac or Windows 8 problem. I have searched the forums, and no one is talking about this error, so I posted mine instead. Help is highly appreciated!

    Extra information:
    Windows 7 Enterprise RTM 9200 x64
    MacBook Pro (Early 2011) MacBookPro8,3
     
  2. =)(=

    =)(= Guest

    Im not sure how Apple's EFI works but i know that it is not following (U)EFI specification. And seems that Windows 8 cant add the "Windows Boot Manager" to the EFI boot list. When you install on a UEFI PC, windows adds the bootmanager to the list so you can boot it by pressing F10 or whatever the key for boot list is. You better ask for help at insanelymac.com
     
  3. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    Okay, looks like I will have to go to insanelymac.com.
     
  4. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    I cannot start a topic there. Plus, there's not a lot of threads under the Windows section. Looks like Mac users truly hate Windows.
     
  5. phailyoor

    phailyoor MDL Junior Member

    Aug 6, 2012
    65
    11
    0
    Just follow the instructions for a windows 7 Boot Camp installation. I think it uses legacy BIOS, but it still works.
     
  6. machacks

    machacks MDL Novice

    Mar 13, 2011
    8
    2
    0
    Find this thread at macrumors concerning Bootcamp and EFI. I'm not able to post link. You can google the following.

    "Win7 x64 booting natively via EFI (no bios emulation)"
     
  7. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    Yeah it works on BIOS for sure. I am using it right now. The point is, I want to boot Windows 8 using EFI so I can use GPT and have faster boot time.
     
  8. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    I read that sometime ago. So looks like MacBook Pro won't natively boot Windows 8 on EFI without some sort of hack. Must be the Apple vs Microsoft dispute.
     
  9. =)(=

    =)(= Guest

    Looks like Windows requires (U)EFI 2.0 and newer. Apple's EFI is 1.x
    But should be able to force it to boot in EFI mode on mac's, not sure.
     
  10. machacks

    machacks MDL Novice

    Mar 13, 2011
    8
    2
    0
    #11 machacks, Aug 6, 2012
    Last edited by a moderator: Apr 20, 2017
    I can't paste link so here instructions to get Windows 7 to Boot EFI on Mac. Windows 8 little easier, you will need to follow instructions for tweaking GPU PCI to use VGA only. (Step 2 of tutorial) Make sure you have GPT partition scheme. You can check it with GPT fdisk by Rod Smith. (You will have to google for it. Follow his instructions for installing ubuntu EFI on Mac to set up your Partition correctly.) Use Diskutility to format Win8 Partition as Empty Space. Let Win8 format partition when you install OS.

    You can find more on this on macrumors under this thread: "Win7 x64 booting natively via EFI (no bios emulation)"

    Code:
    Intro
    -----------------------
    
    I have been keeping up with this thread since late 2011. Since I got my Mac Pro, I have wanted an EFI boot. I am a Systems Administrator and unfortunately, there are some things you cannot test inside a virtual machine. I have reached a point where the number of operating systems has surpassed the ability of MBR/BIOS boot methods. Therefore, I have been looking for a workaround for my problem.
    
    It appears that this thread is all over the map. This is an effort to get the most practical issue out of the way, installation. There is a lot of theory and programming being thrown around at the beginning of the thread. We really need to split this off in it's own section. People like me are definitely interested in this aspect of the discussion. However, some just want to attempt an EFI install. That is ok as well.
    
    This is my work spanning 21 straight days of labor + a couple weeks of intermittant attempts at getting things working the way I want them to. I cannot guarantee this will work for you. Good luck. Most of this info is freely available on the thread. However, I do not believe someone has used my method.
    
    Prerequisites
    -----------------------
    
    1. WinPE 4.0 CD.
    
    Please make sure you are able to boot this off of USB. The awesome thing about the method I used is that it cuts back on coasters. EFI is great in that you can boot off of FAT32 formatted partitions. `
    
    2. EFI shell binary that you can drop on your EFI partition (I used rEFIt's).
    
    3. An OS X install disk so you can be sure you can bless the EFI shell binary.
    
    4. Slipstreamed Windows 7 install.wim that will be called from the Windows 8 installer. This is important. WinPE just allows us to boot into the environment that we need to get SOME graphical output. I tested the Win7 installer using this method and it still will not allow you to select EFI, even when you are clearly booted into it and have graphical output. The installer expects it to be called from winload.efi. If this does not happen, it will report the Drive is of type GPT error. A Windows 7 install.wim slipstreamed into Windows 8 ISO is the only way to get past this.
    
    5. A USB drive that is large enough to just hold the contents of your ISO (I used no physical media. I installed from my Nokia N9)
    
    6. Patience and commitment. This isn't easy, especially the 2nd part of the install where you don't see anything. You have to be able to test different drivers.
    
    7. This isn't necesasry, but maybe a USB device that indicates it is connected will be helpful. I have a Logitech microphone with a green LED.
    
    8. Please feel free to modify this method for your purposes. I require a dual boot System for programming in Xcode. Therefore, I will be covering a dual boot situation with OS X and Windows 7.
    
    9. Make sure that you slipstream drivers that come directly from the Apple CD or from the boot camp distrubution itself. I did not have much success slipstreaming current nvidia drivers EVEN after expanding them and slipstreaming the drivers. I have tested this and you WILL be able to update drivers AFTER you have a Windows desktop.
    
    Step 1 - OS X install
    -----------------------------------------------
    
    1. First make sure that WinPE live CD performs a proper EFI boot. 
    
    Basically all you need to do is format a USB drive with fat32 and drop the files onto that disk. When you hold down Option,The EFI boot from USB icon should appear on the screen. If this step does not work, there is no reason to continue, as my method is dependent on this Live CD to work.
    
    2. Install OS X with 2 partitions (1 being the amount of space you want allocated for OS X, and the other free space). OS X will lie to you and say it only creates 2 partitions, when it fact, it creates the proper EFI layout.
    
    3. Finish installing OS X until you get to your desktop.
    
    4. Mount EFI partition manually:
    
    # mkdir /Volumes/EFI
    # mount /dev/disk0s1 /Volumes/EFI
    
    5. Extract the contents of the following file to /Volumes/Efi:
    
    w w w dl.dropbox.com/u/4308827/Grub.zip
    
    This needs to be in here because we want EFI shell to kick everything off.
    
    6. Bless the bootx64.efi file like so:
    
    bless --mount /Volumes/EFI --setBoot --file /Volumes/EFI/EFI/BOOT/BOOTIX64.efi
    
    7. Reboot. Make sure your machine kicks off EFI shell. To boot OS X manually do the following:
    
    fs1:\usr\standalone\i386\boot.efi
    
    Step 2 - Finding your registers
    -----------------------------------------------
    
    I only have a single GPU machine. Therefore, you will need to tweak this method to fit your hardware. Here is how you find out the proper registers if this is your first time in the shell. The end goal of this is to get the proper mm commands to set the PCI registers on the correct hardware. Trial and error is the only way I could figure out the proper hardware. Here is my quickest way to find out this info.
    
    EFI shell:
    
    I. Run the following command:
    > pci -i -b
    
    II. Look for hardware that says VGA controller.
    
    III. Once you find the the line that says VGA controller, notate the BUS, DEV, FUNC column. These numbers are what you will need to run the mm command. I have illustrated this in the following picture:
    
    
    IV. Trial and error phase. You will need to run the pci -i -b command using the same column of numbers for ever PCI bridge device. Luckily this shouldn't take too long. You are searching for the bus number that was notated by your VGA controller. I have illustrated the section that you are looking for in the next picture:
    
    
    V. Notate the bridge number. Now you will modify the PCI registers:
    
    BB = bus
    DD = device
    FF = function
    
    > mm BBDDFF3E 8 -PCI (Enable VGA on the PCI bridge)
    > mm BBDDFF04 7 -PCI (Enable bus master)
    
    And we're done. You will want to script this in startup.nsh later on. Here is how mine looks like:
    
    bash-3.2# cat /Volumes/EFI/startup.nsh
    mode 240 63
    echo Setting PCI registers
    mm 0003003E 1 ;PCI :8
    mm 05000004 1 ;PCI :7
    
    Let's move onto the Windows install
    
    Step 3 - Installing Windows through WinPE
    -----------------------------------------------------------
    
    1. Shutdown the machine. Let's get a clean boot going.
    
    2. Hold down option. Plug in the USB drive. We want to see that the USB is still a valid EFI boot medium.
    
    3. Select EFI boot. You should see the stupid Microsft Fish. Beta != betta.
    
    4. This environment will not load ANY installers. This is key though. It will provide a preinstallation environment. We can use this to run .exes.
    
    5. Wait for wpeinit.exe to finish.
    
    6. Plug in your USB drive with the contents of your ISOs.
    
    7. Load up Diskpart to check what letter the USB drive was assigned:
    >diskpart
    DISKPART> LIST VOLUME
    DISKPART> EXIT
    >E:\ (or letter that was assigned to your USB drive)
    E:\
    
    8. cd /path/to/modified_win8_install
    
    9. setup.exe
    
    10. Enter the Serial for your version of Windows 7 at the prompt
    
    11. You should be able to create an install in the free space section of the drive. The installer will create an MSR before your
    newly created Partition. However, this is ok. Format the new partition just to give the installer one less hop to choke on.
    
    12. Wait for install to finish.
    
    13. once the install is finished, be sure to let the EFI shell load. Once it has, remove all USB drives. and type the reset command.
    
    14. Your machine will reboot back into EFI shell. Check if the MS bootloader installed correctly:
    fs0:\
    ls EFI\
    If you do not see Microsoft here, something possibly went wrong.
    
    15. either run startup.nsh or ensure your registers are set correctly.
    
    16. boot Windows:
    fs0:\EFI\Microsoft\Boot\bootmgfw.efi
    
    17. Hit caps lock and monitor if it comes back up. You need to try and determine if the install is going properly. most people get stuck here. I highly suggest plugging in a USB device with an LED so you can see USB reinitalize and determine what step the installer is in. If your machine reboots, keep loading bootmgfw.efi and start windows normally until eventually you are sitting for a long period of time. You may want to check if your caps lock key works. I leave both the caps lack key and the device with the LED on until install is complete. You may also want to hit enter on the keyboard to see if you can initiate a reboot. If you do, keep booting into windows. Do not stop.
    
    18. The machine will reboot. Repeat the process of booting windows. Eventually your video will come up with the Setting up your machine for first user screen.
    
    19. Once you see this screen, you know video is working. Nothing else needs to be done. Reboot normally.
    Note: You may get a message stating that windows failed to boot normally. That's fine. Keep rebooting.
    
    20. Test dual booting between OS X and Windows
    
    21. Enjoy and have a beer or anything to regain your sanity. 
     
  11. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    I updated the EFI firmware to version 2.x. Even that, Windows 8 would install until 100% and then give me the boot error.
     
  12. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    #13 generalsu, Aug 7, 2012
    Last edited by a moderator: Apr 20, 2017
    (OP)
    Why is it so bloody complicated? I installed Windows 8 using my USB flash drive on (U)EFI and it installed until 100% then gave me the boot error. I am not using Windows 7 anymore, because Windows 8 is far better.
     
  13. narta

    narta MDL Novice

    Jan 24, 2008
    8
    0
    0
    Cause it Apple. :p
     
  14. rupert3k

    rupert3k MDL Novice

    Dec 17, 2010
    1
    0
    0
    Is your Macbook completely up to date with ML?
    Strange, I had no problems installing 9200 on my 2011 13" Air and 2009 13" MBP.
    Try making sure your MBP is up to date then run Bootcamp again & remove the Windows partition, repair errors with disk utility, reboot then try again using a DVD instead of USB.
     
  15. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    What is ML?

    Yeah I installed OS X 10.8 Mountain Lion and updated every component including the UEFI firmware. I am pretty sure UEFI version is 2.x.

    I rebooted using Windows 8 DVD in EFI. Again after installation until 100%, the nasty error shows up.

    Once again, I am using MacBook Pro 17" Early 2011 unibody model.

    I am using Windows 8 RTM in BIOS mode.

    Once you install Windows 8 in BIOS, there seems to be no way to boot it in EFI mode. Correct me if I am wrong.
     
  16. Twa

    Twa MDL Novice

    Aug 12, 2012
    4
    0
    0
    #17 Twa, Aug 12, 2012
    Last edited: Aug 13, 2012
    Ya! I have MBP 13inch Early 2011, ML (10.8), all software up-to-date !

    First I creat a new partition & format it to FAT in MAC, reboot I go to EFI bootloader choose EFI boot from Windows 8 Install DVD (PRO RTM) ... First boot to Install I got error screen but next boot is good, and I got more 2 times error screen during install, but the end all is done, Install Completed. But Windows have seen work not good, after I install Bootcamp Driver, some driver not work I got BlueScreen again !!!

    - I was tried install with normal boot (without UEFI boot) it's much better !

    Well EFI on MBP still not compatible with Win 8 UEFI boot ! ;)

    ** and a Attention: The Partition created by Bootcamp app on MAC, cannot install Win8 with UEFI boot ! (it's not a GPT Partition), Self Creat Partition with Disk Ultility is ok !!!
     
  17. taziedevil

    taziedevil MDL Novice

    Jun 18, 2010
    3
    0
    0
    I'm only new to MacBook's since last month. I did install Windows 8 using the Windows 7 bootcamp thingy and I must say i'm really impressed how well it works (MacBook Air). Funnily enough it now defaults into loading into Windows 8 which is fine with me. Sorry I can't offer anything constructive to help, but hope you can get it sorted. In my opinion it is worth it.
     
  18. Twa

    Twa MDL Novice

    Aug 12, 2012
    4
    0
    0
    Yep normal install Win 8 over Bootcamp will work well, its mean non UEFI booting ! ;)
     
  19. generalsu

    generalsu MDL Senior Member

    Jul 30, 2009
    264
    12
    10
    So this confirms my theory that Apple is preventing Windows from installing on their Macs using UEFI. I did a clean install of Windows 8 using UEFI on my Early 2011 MacBook Pro and it gave me an error after 100%.