Jump to content

[Guide] 10.10 On the Surface Pro 3


LonelyTV
 Share

341 posts in this topic

Recommended Posts

OS X Yosemite on The Surface Pro 3

------------------------------------------------------

 

I wrote this guide with a Hackintosh newbie in mind. I walk everything out step-by-step. And, know that you are following this guide at your own risk. I take no responsibility in any loss of data or broken machine. However, I'm confident that that won't happen if you are careful. 

 

What is not working:
WIFI
Bluetooth

Touchscreen : Alex.doud is currently coding touchscreen and trackpad drivers for the Surface Pro 3's i2c controller. 

Sleep

Trackpad gestures

What works but is buggy:
Graphics: QE/CI + HiDPI works with minor graphic glitches

Audio does not play through the headphone jack

 

 

------------------------------------------------------

 

Requirements

 

Hardware:

  • USB Flash Drive: 8 GB or more
  • Access to a computer running OS X (Can be done in a virtual machine)
  • Optional: A USB Hub, USB Keyboard, and USB Mouse (Just in case the Type Cover doesn't work during install)

Software:

 

------------------------------------------------------

Step 1: Making Space for OS X

 

  1. Boot into Windows 8
  2. On the Start Screen type: compmgmt.msc

    and press enter. This should open "Computer Management" on your desktop.

  3. Click on "Disk Management" under the "Storage" header on the left panel.

  4. Right click on the "Windows (C:)" block on the bottom half of the middle window and choose "Shrink Volume"

  5. Here you can shrink your Windows partition to make room for you OS X install. Choose a value over 15GB to give yourself room to install OS X and have storage left over.

  6. Optional: Right click on the new partition and rename it "OS X" (or something you will remember) -- This will make it easier to pick out in the OS X install if need be.

 

------------------------------------------------------

Step 2: Creating the OS X Install USB

This step requires access to OS X.

 

If you already have the "Install OS X Yosemite" application in your Application folder skip down to step 2b :

 

Step 2a: Downloading OS X Yosemite

  1. Open the App Store
  2. Download the OS X Yosemite installer

Step 2b: Preparing the USB Drive

  1. Open the Disk Utility application found in the Utilities folder inside the Application Folder.
  2. Click on your USB Drive on the left panel.
  3. Choose "Erase" on the top bar
  4. Choose "Mac OS X Extended" as the Format and name the drive "Install"
  5. Once completed open the Terminal application (Also in the Utilities folder)
  6. Copy and paste this command at the prompt:
    sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/Install --applicationpath "/Applications/Install OS X Yosemite.app" --nointeraction

    This step takes about 30 minutes to finish.

When it's done you will need to then install the Clover boot loader to the USB.

  1. Open the Clover installer found in the "Surface Pro 3 Driver Pack"

  2. Click Continue twice and then choose "Change Install Location"

  3. Choose the "Install OS X Yosemite" USB drive and press Continue

  4. Click "Customize". Here check:

    1. Install for UEFI booting only

    2. Themes

    3. Drivers64UEFI

  5. Click Install and wait for it to finish.

  6. Once it finishes you should see a new "EFI" drive mounted.

  7. Navigate to the "CLOVER" folder found in the "EFI" folder at root.

  8. Copy "config.plist" from the "Surface Pro 3 Driver Pack" here

  9. Navigate to the "patched" folder found in the "ACPI" folder.

  10. Copy the contents of "DSDT" from the "Surface Pro 3 Driver Pack" here.

  11. Navigate back to the "CLOVER" folder.

  12. Navigate to the "10.10" folder found in the "kexts" folder.

  13. Copy the contents of "KEXTs" from the "Surface Pro 3 Driver Pack" here.

  14. Your done, eject the USB drive.

------------------------------------------------------

Step 3: Installing OS X Yosemite

 

  1. Hold the Up button of the volume rocker on the Surface Pro 3 while powering up the machine.
  2. Touch or click on "Secure Boot Control"  choose "Disabled"
  3. Touch or click on "Exit Setup"
  4. Power the machine off if it boots into Windows 8.
  5. Insert your USB drive into the USB port of the Surface Pro 3.
  6. Hold the Down button on the volume rocker on the Surface Pro 3 while powering the machine.
  7. Once Clover boots navigate to "Boot OS X Install from Install OS X Yosemite" and press space
  8. Go down to "Boot Mac OS X with Injected kexts".
  9. Wait... the installer will boot eventually.
  10. Once booted choose the Disk Utility application from either the top bar or from the window that the installer opens up to (sometimes).
  11. Here you will locate your "OS X" partition (or whatever you named it) and choose Erase like you did for the USB drive.
  12. Choose "Mac OS X Extended, Journaled" and name it whatever you want.
  13. Close the disk utility and follow the installation prompts.

Several times I had the installer "finish" and reboot, but it wasn't complete. If you don't see your OS X drive in Clover after the installer reboot, re-run the installer and it will continue on it's own.

 

------------------------------------------------------

Step 4: Finishing Touches

 

  1. Power off the machine
  2. Hold the Down button on the volume rocker to boot from the USB.
  3. Once in the Clover boot loader Navigate to "Boot Mac OS X from <OS X partition name>"
  4. Press space and go down to "Boot Mac OS X with Injected kexts".

Yosemite SHOULD boot and work. If your type cover does not work on boot you will need to modify your "IOUSBFamily.kext".

 

Step 4a: Modifying ISOUSBFamily.kext for a working Type Cover

You can do this step on another computer with OS X or you can do it on your new install

  1. Open a new Finder window by clicking on the Finder icon on the dock.
  2. Click on the "Go" option in the top toolbar and choose "Computer"
  3. Double click on "Yosemite", followed by "System", then "Library", and finally "Extensions"
  4. Scroll down and find "IOUSBFamily.kext", copy it to your desktop.
  5. Rename the KEXT in your Extensions folder to "IOUSBFamily.kext.bak"
  6. Right click on the "IOUSBFamily.kext" on the desktop and choose "Show Package Contents"
  7. Double click on "Contents", and then "Plugins"
  8. Right Click on "IOUSBHIDDriver.kext"and choose "Show Package Contents"
  9. Double click on "Contents"
  10. Right click on "Info.plist", select "Open with", and choose "Other"
  11. Choose "Textedit" from the application choices.
  12. Scroll down to the bottom and locate:
    <key>Generic Keyboard</key>
    

    Near the bottom.

  13. Copy the entire section, it should look like this:
    <key>Generic Keyboard</key>
    		<dict>
    			<key>CFBundleIdentifier</key>
    			<string>com.apple.iokit.IOUSBHIDDriver</string>
    			<key>HIDDefaultBehavior</key>
    			<string></string>
    			<key>IOClass</key>
    			<string>IOUSBHIDDriver</string>
    			<key>IOProviderClass</key>
    			<string>IOUSBInterface</string>
    			<key>bInterfaceClass</key>
    			<integer>3</integer>
    			<key>bInterfaceProtocol</key>
    			<integer>1</integer>
    			<key>bInterfaceSubClass</key>
    			<integer>1</integer>
    		</dict>
    
    
  14. Now, paste what you copied below the first </dict>
  15. Once copied, find
    <key>bInterfaceProtocol</key>
    near the bottom.
  16. Change
    <integer>1</integer> 
    to
    <integer>0</integer>
  17. Now, go one below to
    <key>bInterfaceSubClass</key>
  18. Change
    <integer>1</integer>
    to
    <integer>3</integer>

    your modified portion should look like this:

    <key>Generic Keyboard</key>
    		<dict>
    			<key>CFBundleIdentifier</key>
    			<string>com.apple.iokit.IOUSBHIDDriver</string>
    			<key>HIDDefaultBehavior</key>
    			<string></string>
    			<key>IOClass</key>
    			<string>IOUSBHIDDriver</string>
    			<key>IOProviderClass</key>
    			<string>IOUSBInterface</string>
    			<key>bInterfaceClass</key>
    			<integer>3</integer>
    			<key>bInterfaceProtocol</key>
    			<integer>0</integer>
    			<key>bInterfaceSubClass</key>
    			<integer>3</integer>
    		</dict>
    
    

    Save the document and close out all of the windows.

  19. Download the "Kext Utility"

  20. Open Kext Utility and drag the modified kext from your desktop to it

  21. Once KEXT utility completes, reboot your machine and you should have a working Type Cover

 

Step 4b: Installing Clover and Booting Without a USB Stick

Do this at your own risk. It seems that it has been hit or miss. 

  1. Open the Clover installer found in the "Surface Pro 3 Driver Pack"

  2. Click Continue twice and then choose "Change Install Location"

  3. Choose your Yosemite partition and press Continue

  4. Click "Customize". Here check:

    1. Install Clover in the ESP

    2. Themes

    3. Drivers64UEFI

  5. Click Install and wait for it to finish.

  6. Once it finishes you should see a new "SYSTEM" drive mounted.

  7. Navigate to the "CLOVER" folder found in the "EFI" folder at root.

  8. Copy "config.plist" from the "Surface Pro 3 Driver Pack" here

  9. Navigate to the "patched" folder found in the "ACPI" folder.

  10. Copy the contents of "DSDT" from the "Surface Pro 3 Driver Pack" here.

  11. Navigate back to the "CLOVER" folder.

  12. Navigate to the "10.10" folder found in the "kexts" folder.

  13. Copy the contents of "KEXTs" from the "Surface Pro 3 Driver Pack" here.

  14. Navigate back to the Clover Root folder and copy "CLOVERX64.EFI".

  15. Navigate back to the "EFI" folder and open the "Microsoft" directory.

  16. Then navigate to the "Boot" folder.

  17. Rename "bootmgfw.efi" to "bootmgfw-orig.efi"

  18. Paste the "CLOVERX64.EFI" into this folder.

  19. Rename "CLOVERX64.EFI" to "BOOTX64.EFI"

Now, reboot. Your Surface Pro 3 should now boot into the Clover boot loader allowing you to choose if you want to boot into Windows or OS X

 

------------------------------------------------------

 

 

You will need to get a USB WIFI dongle to access the internet, and a USB Bluetooth dongle to use Bluetooth. To fix SOME of the graphical glitches you can choose the color profile "sRGB IEC61966-2.1" in the Displays section of "System Preferences"

 

------------------------------------------------------

  • Like 6
  • Thanks 1
Link to comment
Share on other sites

Looks pretty solid! For formatting however, not Journaled? just Mac OS X Extended and not Mac OS X Extended Journaled? 

 

and have you gotten booting without the USB working on yours yet?

 

Oops, that was an oversight on my part. I edited the guide.

 

I haven't tried yet to boot without the USB, I have that planned for tomorrow.

Link to comment
Share on other sites

a stick to boot every time will not be required if...

you install clover to the macintosh hd partion newly created. clover will then create an efi dual boot giving you to choice of what os you can start every time. You will also have to set clover to take over the windows and mac partitions. you can do that from the clovers options.

Important :in the clover installation folder copy all the kext and files attached to this guide , including the config plist. 

 

hey Lonely what are the following kextes do? my system and graphics seem to be running well without them. i don't get graphical artifacts. 

 

intelframebufferazul

fake intelhdmi audio

null eternet

intel cpu power management 

 

thanks

Link to comment
Share on other sites

a stick to boot every time will not be required if...

you install clover to the macintosh hd partion newly created. clover will then create an efi dual boot giving you to choice of what os you can start every time. You will also have to set clover to take over the windows and mac partitions. you can do that from the clovers options.

Important :in the clover installation folder copy all the kext and files attached to this guide , including the config plist. 

 

hey Lonely what are the following kextes do? my system and graphics seem to be running well without them. i don't get graphical artifacts. 

 

intelframebufferazul

fake intelhdmi audio

null eternet

intel cpu power management 

 

thanks

But I don't believe thats the way it immediately works with the surface pro, i hear some users just have to live with it. I think if you do use Clover, or if you install the Chameleon to the EFI Partition, then maybe it'll work.... Try installing Clover or Chameleon to the EFI Partition.

Link to comment
Share on other sites

This is AWESOME!!!!! Seriously though, you rock. Tried so many guides back in December, but none would work with my SP3. This worked first time! Incredible.

 

You can even get Retina support - go to Terminal and type:

sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES

 

Then log out, log back in, go to System Preferences > Display, changed to Scaled and select any resolution with HiDPI. (Google around to find out how to make custom HiDPI settings, since the default ones are a bit big on the screen.)

 

Really, really, really cool. My jaw is still wide open from earlier when it passed the Apple logo loading screen for the first time.

 

You sir, are a genius.  :w00t:  :w00t:  :w00t:

 

If we can work out how to boot without USB, then this is the ultimate Hackintosh.

I mean, this is the thinnest Intel Core device, so I'm pretty certain this is the thinnest Macintosh in history! What an achievement :D

 

Also.. If you're having issues with Windows - Boot into Mac OS X with the USB, and install Clover directly onto your Macintosh HD. (With the same UEFI etc settings as described in the guide). This seems to fix the Windows bootloader for some reason, although you still can't boot to Clover without USB.

  • Like 1
Link to comment
Share on other sites

i just deleted my initial post regarding boot without usb stick. The option added in the tutorial is self efficient. One only addition that i find useful was mounting the efi partition in yosemite as to add new kextes.

Efi-mounter-v2 will do the trick.

 

The clover bootloader installer mounts the EFI partition for them on exit. So, if the person doing the tutorial continues with my steps they should be fine.

Link to comment
Share on other sites

I am curious if someone have already tried updating to Yosemite 10.10.2

after doing so I have lost video capabilities, graphic accelerators, the system is moving excruciatingly slow. It seems however I am capable to boot up the system in normal mode (without injected Kexts)  ???

 

is there a hack to Skipp the apple ID login hardware check while attempting to sign on to the app store?

Link to comment
Share on other sites

When my Surface goes to sleep it crashes. Is this what everyone else is getting? Or have I messed up the Intel kexts :P (Since I accidentally installed all of the custom kexts with [url=&quot;http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/&quot;]#####[/url] and it ruined the graphics, so I replaced some of them with stock Yosemite kexts)

Link to comment
Share on other sites

When my Surface goes to sleep it crashes. Is this what everyone else is getting? Or have I messed up the Intel kexts :P (Since I accidentally installed all of the custom kexts with ##### and it ruined the graphics, so I replaced some of them with stock Yosemite kexts)

 

Why did you use ********** ?

Link to comment
Share on other sites

When my Surface goes to sleep it crashes. Is this what everyone else is getting? Or have I messed up the Intel kexts :P (Since I accidentally installed all of the custom kexts with ##### and it ruined the graphics, so I replaced some of them with stock Yosemite kexts)

 

 

mine does the same, i need to reboot every time i will resume

but this is only while running on battery power. when charging i set "prevent computer to sleep during charge" and it stays fine. 

Link to comment
Share on other sites

About the audio. The headphone jack doesn't work does it?

 

Right you are. I just tested it. This is a fix that will require some tweaking of the KEXT and DSDT (I think.) I'm not certain what the ETA of said fix is, but it will be ironed out.

Link to comment
Share on other sites

Right you are. I just tested it. This is a fix that will require some tweaking of the KEXT and DSDT (I think.) I'm not certain what the ETA of said fix is, but it will be ironed out.

Best solution will be to patch AppleHDA with the ALC288 codec. I tried to get it working for a bit but I really don't know how to.

Link to comment
Share on other sites

I am using SwitchResX at a lower resolution than the native and my graphics are rock solid.

 

Same - I've got it at 2560 x 1708, looks like a slightly blurry retina display :D

 

Still stuck with the sleep issues though - tried removing darkwake from args and messing with config.plist, but still crashes on sleep. Almost certain this is a bug.

 

However, if you modify Clover config.plist to InjectKexts, you don't have to press space on each startup. Also remove -f and you get Apple logo instead of text on boot (although it distorts halfway through) :)

Link to comment
Share on other sites

Hi LonleyTV i followed your guide to the letter, my SP 3 now boots into OS X with the type cover working but I can't boot without the USB... When I install clover to my OS X partition, I don't get the SYSTEM partition.. I am able to unhide all the partitions and i then see a system partition, but that one has no mention of clover, i think that is the windows 8 EFI partition.  Any ideas ?


Also any recommendations on usb wireless adapters that work out of the box ?

Link to comment
Share on other sites

Hi LonleyTV i followed your guide to the letter, my SP 3 now boots into OS X with the type cover working but I can't boot without the USB... When I install clover to my OS X partition, I don't get the SYSTEM partition.. I am able to unhide all the partitions and i then see a system partition, but that one has no mention of clover, i think that is the windows 8 EFI partition.  Any ideas ?

Also any recommendations on usb wireless adapters that work out of the box ?

 

Go to Terminal (In Applications > Utilities) and type:

 

defaults write com.apple.DiskUtility DUDebugMenuEnabled 1

 

This turns on Disk Utility Debug Menu. Go to Disk Utility (Applications > Utilities), click Debug menu, then "Show every partition"

 

SYSTEM should now appear in the left panel of the window. Click on it, then choose the Mount button on the top toolbar.

Link to comment
Share on other sites

Also have you taken a look at this? http://www.insanelymac.com/forum/topic/304267-intel-hd4400-full-qeci-in-yosemite-10102/

It might get rid of the graphic glitches.

 

Just tried the last part of this for the Apple logo - It's fixed the logo but still glitchy in parts.

Haven't tried the rest yet since I think the SP3 doesn't have an HD4400? Will have a go later, and see what happens :P

HD4400 shows up in About this Mac - definitely going to try the rest :)

 

Inspected the injected kexts - all the changes in the guide are applied.

 

Would probably be better to move to Clover config.plist though.

Since you can inject the values there and use stock OS X then - which should make the process easier

 

*Also: Still no fix for sleep crash? Can someone else check if this is a bug - pretty sure it is*

Link to comment
Share on other sites

 Share

×
×
  • Create New...