HOWTO: Use a 6750 (or 6770) in a Mac Pro (4,1)

Discussion in 'Mac Pro' started by mrgreen4242, Sep 21, 2012.

  1. mrgreen4242, Sep 21, 2012
    Last edited: Sep 21, 2012

    mrgreen4242 macrumors 601

    mrgreen4242

    Joined:
    Feb 10, 2004
    #1
    Turns out that the 67xx cards are rebranded 57xx cards, and the 6750/5750 are pretty much JUST downclocked 6770/5770s. Since Apple released an official HD 5770, that means we can use those cards when EFI flashed. Here's the details on how I got it to work.

    You can find second had 6750s on eBay for <$100 (I paid $65 shipped for one) and it's a pretty decent performer. Also, big plus IMO, is that it uses only 1 PCIe power cable. That means many things - first, you save $12+ on the cable. Second, it uses less power, so costs less to operate and makes less heat. Lastly, you can use it with another single connector card (like another 6750) for multi-monitors and cross-fire (in Windows).

    OK, details. Sorry, no download links for all the apps you will use. You can Google the name and find it all pretty easy.

    0) DISCLAIMER: don't do this. You will probably brick your video card and start your Mac Pro on fire. My information applies ONLY to a Mac Pro 4,1 running 10.8.0 with a stock GT120 in slot 1, and a Sapphire HD 6750 Vapor-X 1gb DDR5 card in slot 2. I know nothing about any other devices and I'm not responsible for what you might do with the below information.

    1) Set up boot camp, you want Windows for this.
    2) Download GPU-Z and check the read-out. The specs should match this more or less: http://www.techpowerup.com/gpudb/249/ATI_Radeon_HD_5750_1_GB.html
    3) Use GPU-Z to download a copy of the ROM. Give it a good descriptive name - the exact card and stock, etc.
    4) Make a copy of that ROM card and save it on another drive. Just in case.
    5) Open up RadeonBiosEditor and load the ROM you just backed up from you card. Change the manufacturer and device IDs using the drop down menus to [EDIT: I HAD TO USE THE VENDOR CODE OF THE ACTUAL GPU MAKER, SAPPHIRE (174B) IN MY CASE, OTHERWISE CARD WOULDN'T WORK IN WINDOWS] ATI/AMD (1002) and HD 5770.
    6) Save the modified ROM to a new file, with a descriptive name, like "Sapphire HD 6750 VaporX modded to 5770.rom"
    7) Use the program WinFlash to flash you modded ROM to card.
    8) Reboot back to OSX and follow this 5770 flashing guide starting at step 2 (NOTE: you have to make a login for the site so you can download the attached files): http://forum.netkas.org/index.php/topic,692.0.html
    8a) I took the modded ROM file from my Boot Camp partition and copied it to the root of my user directory and renamed it myrom.rom, per the instructions, and thus making a backup of the rom files at each stage.
    9) Open the system profiler and find you new card. There will be a device and manufacturer ID. Make note of that and keep it handy.
    10) Once you finish those instructions, you need to update your kexts. Go to \system\library\extensions\ and right click on ATI5000Controller.kext and select Show Package Contents and navigate to Contents and open info.plist with a text editor, I recommend TextEdit.
    11) Find the area under IOPCMatch (or something like that) where a bunch of similar strings to your noted device ID are listed. Add yours in to match. Off the top of my head (not at my Mac right now) the ID is 0x68be1002, but DO NOT TAKE MY WORD FOR IT. LOOK IT UP. You'll notice there's an x missing from the vendor ID part of the string, when compared to the system profiler's reported info. Make it match the length and format of the other info in there exactly. Also, don't add any unneeded spaces to the beginning or end of the string. Just one space between each entry. Save and close.
    12) Repeat the with AMDRadeonAccelerator.kext and this time search for the word Juniper. Find the similar list of hex device IDs under that section, and add your device ID there. Save and close.
    13) Use the program Kext Wizard to repair permissions and rebuild the kext cache.
    14) Reboot and plug the cable into the bottom DVI port of the 66750. It should work perfectly.
    15) Reboot again and this time reset the PRAM (Cmd-Otion-P-R). This will fix your likely now broken sound output.

    Results: QE/CI works (as confirmed by Dashboard "ripple effect"), Steam games load (I get 60fps on Portal 2 with 4xAA 8xAF max details on everything at 1680*1050. I accidentally left Vsync on though, so it's capped at 60 - I'll test again without Vsync to see what it can do). No boot screen on DVI. SUPPOSEDLY you can get it via VGA with a DVI-VGA adaptor [EDIT: this works! Boot screen over VGA!], which I will test this weekend. I'll also test to see which ports work, though I don't think I have the correct DP adaptor. I also only have a single monitor so I can't test simultaneous multi-monitor support.

    PROBLEMS/NOTES:

    [EDIT: the below was resolved by changing the vendor code, see edit above] My 6750 stopped working in Windows (the GT120 still works fine so you can boot in and do stuff). Worked perfectly with stock drivers (as you'd expect) before flashing, but now fails all together. I tried to uninstall and reinstall the AMD drivers, but that had no affect. Device manager says that Windows has stopped this device because the drivers reported an error, and GPU-Z reports an incorrect memory speed.

    I am pretty confident I can get it working, though. First thing I am going to try is wiping out my Win7/Boot Camp install and reinstalling it with a 64-bit edition and see if Apple's default installed Windows drivers do a better job with the card, since it's got EFI now. No idea if that makes a difference, but just having a fresh install of the drivers could fix it.

    If that doesn't work, I have some minimal research suggesting, from the Hackintosh community, that setting the vendor ID to Sapphire instead of Radeon fixes this problem in Windows and doesn't impact OSX. I am assuming that you'd have to modify the kexts to add the new device ID based on the new vendor code. Which brings me to...

    I did this on OSX 10.8.0, no idea if it works on 10.8.2. But, it should. I expect that I will have to re-edit the kexts, but that takes about 15 seconds. I will update after I make a backup of my boot drive and report back in.

    Any questions?
     
  2. MacVidCards Suspended

    Joined:
    Nov 17, 2008
    Location:
    Hollywood, CA
    #2
    you likely lost Windows functionality due to device id being different on card physically versus the PC Bios vs the Mac EFI

    All 3 need to match for WIndows to work.

    If you can see it from the GT120 from Winflash, see how it is id'd
     
  3. mrgreen4242 thread starter macrumors 601

    mrgreen4242

    Joined:
    Feb 10, 2004
    #3
    Hm. The EFI should be ATI 5770, the PC BIOS I flashed to be AT 5770, which means that the device ID on the card would be the oddball. Is there a way to change that? I can check it when I get home to see what Winflash says (via the GT 120).

    Any suggestions? Thanks!

    EDIT: I guess I am not entirely clear on the difference between Device ID on the BIOS and the one on the card "physically". Can you explain that just a bit more to me?
     
  4. MacVidCards Suspended

    Joined:
    Nov 17, 2008
    Location:
    Hollywood, CA
    #4
    each card put in a machine has a hard coded device id

    sometimes it is a range that can be changed by a few bytes via the option rom or sometimes it is unchangeable

    take a moment and look at the instructions you posted

    why do you suppose that you added a different id to those kexts?

    the 5770 would already be there
     
  5. mrgreen4242 thread starter macrumors 601

    mrgreen4242

    Joined:
    Feb 10, 2004
    #5
    The device ID added to the kexts was for the 5770 BIOS. Off the top of my head, the 6750 device ID was 0x68bf1002. The "5770" (6750 post flash) was 0x68be1002.

    So, prior to flashing the card, I added 0x68bf1002 to the kexts and the card actually worked in OSX (and Windows). System Profiler in OSX saw it as a "5000-series" or something similar, and QE/CI worked (dashboard ripples). DVD player and Steam games crashed, though. Then I changed the BIOS device ID using RadeonBiosEditor, and added the EFI segments. The card showed up as 5770 with a different device ID and OSX wouldn't do anything with it until I added that new ID to the kexts.

    Not trying to correct you, I am honestly trying to sort out what's happening.
     
  6. mrgreen4242 thread starter macrumors 601

    mrgreen4242

    Joined:
    Feb 10, 2004
    #6
    OK, got home and had a few minutes finally. I took my "final" ROM from the steps about and opened it in RadioBioEditor. Changed the vendor code to Sapphire (174b) and reflashed.

    Rebooted (in Windows) and boom, Radeon Catalyst drivers picked the card up and everything was perfectly normal. PassMark score of 1688 - which is right on target for a 6750 (and, incidentally, a 5770).

    Booted into OSX to see if I had to change anything in the kexts to make it work but it was fine without any changes (the EFI part of the card must be reporting the ATI vendor code, which is what's in the kext files). I had to reset PRAM again to get sound back, though. Ran Portal 2 as a benchmark (remembered to take Vsync off this time) and with 4xAA 8xAF and very high or high on everything (max settings) at 1680x1050 it was between 80 and 140 fps during a quick run around wherever I left off last at (there's a fairly complex animated scene of something assembling itself out of the ground and some lasers and whatnot, so lots of polygons and some lighting effects - not a bad GPU test probably).

    ALSO, boot screen over VGA (via a DVI to VGA adaptor with a DVI to HDMI cable attached to it). Picture looks nice over VGA, on my monitor at least. Can't tell the difference between DVI, TBH.

    Thanks for all the help!
     
  7. MacVidCards Suspended

    Joined:
    Nov 17, 2008
    Location:
    Hollywood, CA
    #7
    since Apple sends all new Mac Pros out into the world with 5770 there is no way that it's device id isn't in the drivers already

    1002 68BF is 6750
    1002 68B8 is 5770

    When you add an id into drivers it is to include a card that doesn't exist there already but is in same family so it will work using same drivers as existing card

    You can find the device id in the BIOS by looking for 0210 which is endian flopped 1002 for ATI/AMD

    BF68 would then be the 6750
    B868 would be 5770's id

    Computers aren't like horseshoes or hand grenades, if everything doesn't line up, they don't work. Sometimes they write the drivers to take "wildcard" values, kind of what Nvidia does now, but AMD stuff is very much about exactness. So, you need to be very clear about each part.

    The hard coded value in card will either be locked at 68BF or will be changeable within a range

    looks like you got it all figured out while I was typing this
     
  8. mrgreen4242 thread starter macrumors 601

    mrgreen4242

    Joined:
    Feb 10, 2004
    #8
    I really appreciate all the time you've taken to help me. Thank you!

     
  9. traby0128 macrumors newbie

    Joined:
    Jul 2, 2013
    #9
    6750

    Just came across a 6750 card for my mac pro. Acquired a newer mac monitor with display port and I want to use my 6750. Is the card still working for you? Any more issues?
     
  10. mrgreen4242 thread starter macrumors 601

    mrgreen4242

    Joined:
    Feb 10, 2004
    #10
    Only issues that I have had have been redoing my kext modifications everytime a new OSX is released and I update (or someone in my house does without mentioning it). I'm currently running either the most recent or second to most recent 10.8 build. My uptime is at 21 days, and that was only due to a power outage at that time.

    Good luck! If you need help, shoot me a PM so I get an email notice and I will respond faster. (Though it's been quite awhile since I messed with this stuff, so no promises that I will remember everything!)
     
  11. joe666it macrumors newbie

    Joined:
    Dec 26, 2013
    #11
    Hi
    I've bough the same your card but I'm having issues to modify the rom.
    Can you please send me your modified version?

    Thank you in advance!
     
  12. tracer1 macrumors member

    tracer1

    Joined:
    Jan 6, 2013
    Location:
    SC
    #12
    I know this is an old post but thought I would ask anyway. Maybe some of you guys are still around. I have a Powercolor (AMD) Radeon HD6770 that has been lying around for sometime now ( couple of years at least) & would like to maybe try it in my 5,1 ( 2009 upgraded). Going to my info.plist, this shows on the IOPCMATCH
    <key>IOPCIMatch</key>
    <string>0x67681002 0x67701002 0x67791002 0x67601002 0x67611002 0x67501002 0x67581002 0x67591002 0x67401002 0x67411002 0x67451002 0x67381002 0x67391002 0x67201002 0x67221002 0x67181002 0x67191002 0x68401002 0x68411002 0x67041002</string>
    are these what MacVidCards was talking about? Would I have flash anything & if so, what & how. Any help would be greatly appreciated since I am totally ignorant on all this.
    Thanks
     

Share This Page