I have an Early 2011 MacBook Pro with a Radeon HD 6750m GPU, it’s the last 17 inch laptop Apple produced & has handled anything I’ve thrown at it. For instance during development for Orcs Must Die! 2 I was running heavy sound design sessions in Ableton Live on OSX, with FMOD Designer and the developer builds of OMD2 under a Parallels VM. It all ran without a hitch and was simply amazing that I could do all that work simultaneously in a single portable DAW / GameDev machine. However, I often boot straight into BootCamp to play & develop games in a native Windows environment which brings me to the Achilles’ heel of this machine… the old BootCamp GPU drivers that rarely receive updates from AMD or Apple.
In this tutorial I’ll show you how to hack support for your Apple flavored AMD GPU into the latest AMD GPU drivers, which at the time of this publication are Crimson Edition 16.1.1 Beta.
Note: I highly recommend you first read the Crimson Edition 16.1.1 Beta Release Notes to verify support for your GPU is included, but it appears to support the AMD Radeon™ HD 5000M & up! Also be advised that attempting any of the following hacks is at your own risk, now let’s get on with it.
1. Download drivers
Download the Crimson Edition 16.1.1 Beta drivers and run the installer. The installation will fail with a message that your hardware is not supported, but it will extract the full installation package to:
Note: All file paths in the next steps will be relative to that folder.
2. Edit InstallManager.cfg
Edit the file “Config\InstallManager.cfg” and add this line to the end of the file:
This change disables the “unsupported hardware” alert and allows the driver installer to proceed.
3. Find your GPU HardwareID
Right-click the Windows Start Menu icon, click “Device Manager” and navigate to:
Device Manager > Display adapters > Right-click on your GPU > Properties > Details Tab > Property > Hardware Ids
Right-click the top Value to copy it, and paste it in a text editor to save for later. For example the HardwareID of my Apple flavored Radeon HD 6750m is:
4. Edit INF files
The INF files contain all the information needed to install drivers for your GPU, we will edit them to add support for our Apple/AMD HardwareID.
Navigate to “Packages\Drivers\Display\WT6A_INF” where you will find 3 INF files:
Open each of these INF files and search for a HardwareID similar to yours, and replace it. For example I replaced this line:
"%AMD6741.1%" = ati2mtag_VancouverA, PCI\VEN_1002&DEV_6741
"%AMD6741.1%" = ati2mtag_VancouverA, PCI\VEN_1002&DEV_6741&SUBSYS_00E3106B&REV_00
If that all went smoothly you can go to step 5, otherwise read on…
Note: If you can’t find a similar HardwareID to replace, try to find your GPU model listed under the section titled “Localizable Strings” in the INF’s. For instance the matching string for my GPU is:
AMD6741.1 = "AMD Radeon 6600M and 6700M Series"
Then take the first value “AMD6741.1” and search for it above where we replaced the HardwareID, and insert yours there.
If you still can’t find a match the driver you downloaded may not support your card at all, but there is one last thing you can try at your own risk if you are confident that your GPU should be supported. Download the latest Apple or AMD BootCamp GPU driver for your machine, inspect the INF files to find your HardwareID, then copy that & the matching “Localizable String” into the driver INF files as new entries. I don’t really recommend doing that but I’m mentioning it for one reason. In the January 30th release of the Crimson Edition 16.1.1 Beta drivers the 6750m was included in the Release Notes as a supported GPU, however it was completely omitted from the INF files and I was able to manually add support with the methods described here. A few days later a February 3rd release of the beta driver was published with the 6750m included, confirming my suspicion that it may have been accidentally omitted in the previous release.
5. Build new CAT files from your modified INF’s
The CAT files contain hashes of INF files and are digitally signed to verify the integrity of the drivers. We need to regenerate the CAT files to reflect the changes we made to the INF’s. This step requires a program called Inf2Cat.exe from the Windows Driver Kit (WDK) 10, so download and install WDK 10 if you don’t already have it. Now you can generate new CAT files with the following commands:
cd "C:\Program Files (x86)\Windows Kits\10\bin\x86"
Inf2Cat.exe /Driver:"C:\AMD\Non-WHQL-64Bit-NIEG-Radeon-Crimson-16.1.1-Win10-Win8.1-Win7-Feb3\Packages\Drivers\Display\WT6A_INF" /OS:10_X64
6. Digitally sign the CAT files
Now we will generate our own digital signature certificate and sign the CAT files in order to comply with Windows 10 driver signature enforcement policy. This tells Windows that our modified driver comes from a trusted source, which in this case is you. The first step is to create your own certificate with the MakeCert tool from the Windows SDK, which you should download and install now. The SDK installer contains many tools but you only need the Windows App Certification Kit to get the MakeCert tool.
To use MakeCert you must open a Command Prompt with the “Run as administrator” option. Right-click the Windows start menu icon, choose “Command Prompt (Admin)” then run the following:
cd "C:\Program Files (x86)\Windows Kits\10\bin\x64"
MakeCert -r -pe -ss PrivateCertStore -n "CN=FreqNode" FreqNode.cer
CertMgr -add FreqNode.cer -s -r localMachine root
The above MakeCert command creates a cert named “FreqNode” written to a file named “FreqNode.cer” and copies it into your PrivateCertStore, you can name yours whatever you like. Then we run the CertMgr tool to install your new certificate in the Trusted Root Certification Authorities certificate store of your system. You can verify it was installed by opening Certificate Manager… click the Windows Start button, type certmgr.msc into the Search box, and press enter.
Next we will sign the CAT files with your new cert:
cd "C:\Program Files (x86)\Windows Kits\10\bin\x64"
SignTool sign /v /s PrivateCertStore /n FreqNode /t http://timestamp.verisign.com/scripts/timstamp.dll "C:\AMD\Non-WHQL-64Bit-NIEG-Radeon-Crimson-16.1.1-Win10-Win8.1-Win7-Feb3\Packages\Drivers\Display\WT6A_INF\C0299103.cat"
SignTool sign /v /s PrivateCertStore /n FreqNode /t http://timestamp.verisign.com/scripts/timstamp.dll "C:\AMD\Non-WHQL-64Bit-NIEG-Radeon-Crimson-16.1.1-Win10-Win8.1-Win7-Feb3\Packages\Drivers\Display\WT6A_INF\C7299103.cat"
SignTool sign /v /s PrivateCertStore /n FreqNode /t http://timestamp.verisign.com/scripts/timstamp.dll "C:\AMD\Non-WHQL-64Bit-NIEG-Radeon-Crimson-16.1.1-Win10-Win8.1-Win7-Feb3\Packages\Drivers\Display\WT6A_INF\CU299103.cat"
Great job, we’re almost ready to install our custom drivers but Windows 10 still won’t allow it. The test certificate we generated and signed the drivers with has not been verified by Microsoft, and it won’t be without spending a significant amount of time and money to sign your drivers with a production certificate. In order to get around this, enable the TESTSIGNING Boot Configuration Option:
Bcdedit.exe -set TESTSIGNING ON
Reboot, then run the driver installer:
You will see a prompt like this with your cert name…
Rad, click Install to proceed then reboot and you’re done!
Since installing this driver I have noticed that my Early 2011 MacBook Pro laptop screen operates at full brightness regardless of the settings. I am working on resolving this issue and will update with any success.