keld Posted June 12, 2009 Share Posted June 12, 2009 So I saw a post in the megathread for ATI 48XX series about getting the 4870 to run without an injector. MowgliBook posted some plist files but didn't really explain anything about how to get it working, only that he successfully used a DSDT patch to make it work. I did some of my own research and discovered a way to make your 4870 work with a vanilla 10.5.7 install (no patched drivers or injectors). Here is what I did: Download the command line gfxutil (google it). Download 4870.plist from MowgliBook's post. http://www.mediafire.com/MowgliBook After you downloaded gfxutil, unzip it and open Terminal (Applications/Utilities/Terminal.app) Drag gfxutil onto the terminal window, then type <spacebar> -f display It should say something like: DevicePath = PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0) Copy the part after the = sign. Open up 4870.plist in a text editor. Find the line: <key>PciRoot(0x1)/Pci(0x3,0x0)/Pci(0x0,0x0)</key> and replace "PciRoot(0x1)/Pci(0x3,0x0)/Pci(0x0,0x0)" with what gfxutil gave you. Save 4870.plist. Go back to Terminal, and again drag gfxutil onto the terminal window. Then type <spacebar> -i xml -o hex .... then drag 4870.plist onto the terminal window, hit space, and type ~/Desktop/4870.hex The complete command should look something like this: /Users/admin/Desktop/gfxutil -i xml -o hex /Users/admin/Desktop/HD4870.plist ~/Desktop/4870.hex This will create your graphics-property string to put into your boot.plist! Open the .hex file and copy that string. Now, copy your com.apple.boot.plist (in /System/Library/SystemConfiguration/, or in /Extra if using Chameleon 2.0) to the desktop. Open it up, and add this: <key>device-properties</key> <string>code that you copied from 4870.hex</string> and copy it back to where it should belong. After that, I deleted Natit.kext, rebuilt my Extensions.mkext and restarted and prayed. To my shock it worked! Full resolution 1680x1050, quartz extreme, core image.. changed resolutions, worked! Then the big one... tried to sleep. Instantly slept (used to take a bit), press the power button, BAM it wakes up!!! Sleep again 5x, still worked Hope this helps someone! Link to comment Share on other sites More sharing options...
mustiCas Posted June 12, 2009 Share Posted June 12, 2009 Gratz! What about dual displays? Link to comment Share on other sites More sharing options...
keld Posted June 12, 2009 Author Share Posted June 12, 2009 Gratz! :censored2: What about dual displays? I will test dual-link dvi (i have a 30" at home) and dual displays and report back. Link to comment Share on other sites More sharing options...
keypox Posted June 12, 2009 Share Posted June 12, 2009 finally sleep is working? Think it should work with 512mb model? Link to comment Share on other sites More sharing options...
keld Posted June 13, 2009 Author Share Posted June 13, 2009 finally sleep is working? Think it should work with 512mb model? I don't have a 512MB card, but you can try! Link to comment Share on other sites More sharing options...
ssds Posted June 13, 2009 Share Posted June 13, 2009 hi keld nice work you have done here I m noob on this hackintosh, just to inform i tried ur tutorial with no success i use the ATY_Motmot.kext and my gainward 4870 512 MB work like a charm but sleep. i did every thing you say, but i notice my chamaleon ignore all i write on com.apple.boot.plist, btw i had to delete all original content of my extra folder, and copy the one that i use on my old boot pen, so i dont even had the file com.apple.boot.plist anyware on my computer. I manage to get that file a copy to extra folder and did what u say on your post... then i delete the file you said to delete (Natit.kext) and my ATY_Motmot.kext, and reinstalled the original ati drivers. Restart... but no luck, no graphics. had to put all again back but com.apple.boot.plist, still there with your modification (dont seem osx read that file on the boot) Any idea? Thanks for the help Link to comment Share on other sites More sharing options...
idsynk Posted June 13, 2009 Share Posted June 13, 2009 Anyone a 4850.plist or knows what to chance in the 4870?? Changing the name and the ROM-ID didn't work. Link to comment Share on other sites More sharing options...
r0ck3r4ever Posted June 22, 2009 Share Posted June 22, 2009 For me it worked, but it doesn't work with dual displays. I have a 19" old Samsung connected via VGA and a new 24" Samsung via DVI and with Natit from netkas dual display works like a charm but no sleep. With this method sleep works but dual display it doesn't. The system boots up and gets stuck on blue screen on both displays. Link to comment Share on other sites More sharing options...
djoozeppeII Posted June 24, 2009 Share Posted June 24, 2009 "MowgliBook posted some plist files but didn't really explain anything about how to get it working, only that he successfully used a DSDT patch to make it work." Excuse for my English You have written above about DSDT patch Question Before applying sting it is necessary to use at first DSDT patch, or it is possible to do without it. And if it is necessary, it is possible to tell more in detail as it to make Link to comment Share on other sites More sharing options...
rumz Posted July 1, 2009 Share Posted July 1, 2009 So I saw a post in the megathread for ATI 48XX series about getting the 4870 to run without an injector. MowgliBook posted some plist files but didn't really explain anything about how to get it working, only that he successfully used a DSDT patch to make it work. I did some of my own research and discovered a way to make your 4870 work with a vanilla 10.5.7 install (no patched drivers or injectors). Here is what I did: Download the command line gfxutil (google it). Download 4870.plist from MowgliBook's post. http://www.mediafire.com/MowgliBook After you downloaded gfxutil, unzip it and open Terminal (Applications/Utilities/Terminal.app) Drag gfxutil onto the terminal window, then type <spacebar> -f display It should say something like: DevicePath = PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0) Copy the part after the = sign. Open up 4870.plist in a text editor. Find the line: <key>PciRoot(0x1)/Pci(0x3,0x0)/Pci(0x0,0x0)</key> and replace "PciRoot(0x1)/Pci(0x3,0x0)/Pci(0x0,0x0)" with what gfxutil gave you. Save 4870.plist. Go back to Terminal, and again drag gfxutil onto the terminal window. Then type <spacebar> -i xml -o hex .... then drag 4870.plist onto the terminal window, hit space, and type ~/Desktop/4870.hex The complete command should look something like this: /Users/admin/Desktop/gfxutil -i xml -o hex /Users/admin/Desktop/HD4870.plist ~/Desktop/4870.hex This will create your graphics-property string to put into your boot.plist! Open the .hex file and copy that string. Now, copy your com.apple.boot.plist (in /System/Library/SystemConfiguration/, or in /Extra if using Chameleon 2.0) to the desktop. Open it up, and add this: <key>device-properties</key> <string>code that you copied from 4870.hex</string> and copy it back to where it should belong. After that, I deleted Natit.kext, rebuilt my Extensions.mkext and restarted and prayed. To my shock it worked! Full resolution 1680x1050, quartz extreme, core image.. changed resolutions, worked! Then the big one... tried to sleep. Instantly slept (used to take a bit), press the power button, BAM it wakes up!!! Sleep again 5x, still worked Hope this helps someone! Now the question is... which 4870 1gb card did you buy? Link to comment Share on other sites More sharing options...
Awsxedc Posted July 5, 2009 Share Posted July 5, 2009 Radeon HD 4850 GIGABYTE GV-R485MC-1GI work fine with 4870.plist! Use dongle trick hdmi2dvi + dvi2vga My com.apple.Boot.plist Link to comment Share on other sites More sharing options...
mincingleprechaun Posted July 6, 2009 Share Posted July 6, 2009 I will test dual-link dvi (i have a 30" at home) and dual displays and report back. How did this work out? I have a dell 30" that the "simple guide" allowed me to get working but only with a single link cable and at 1920 x 1200 or something like that. I know it's a rediculous complaint but I run windows 7 natively at 2560x1600 for video editing and I want to do the same in OSX with FCP. Currently it's too much trouble to do all the video cable switching (using a dual-link cable gives a black screen so I have to switch to sinle-link for OSX). I'm either in windows for a few days or OSX for a few days. I would love to know if I could just switch back and forth. Link to comment Share on other sites More sharing options...
Ritz Carltn Posted July 9, 2009 Share Posted July 9, 2009 I failed.... OMG! I have to sell my HD 4870 1G Graphic Card..... http://mactel.textcube.com/340 May I have GFXUtil url for downloading... I have EmTek Radeon HD 4870 XENON Live II Extreme D5 1GB TWIN Cool. So I saw a post in the megathread for ATI 48XX series about getting the 4870 to run without an injector. MowgliBook posted some plist files but didn't really explain anything about how to get it working, only that he successfully used a DSDT patch to make it work. I did some of my own research and discovered a way to make your 4870 work with a vanilla 10.5.7 install (no patched drivers or injectors). ..... Link to comment Share on other sites More sharing options...
tirsojrp Posted July 9, 2009 Share Posted July 9, 2009 Hi, I'm having some problems getting a RADEON 4870 1GB working with dual monitors; both of them connected via DVI > VGA adapters. I used Netkas lastest enabler and got everything working, except that monitors are always in mirror mode. Link to comment Share on other sites More sharing options...
thinkr Posted July 10, 2009 Share Posted July 10, 2009 Where does 4870.plist go after its Edited? Where did you get ATY_Motmot.kext? Oops... I deleted it from ATINDRV.kext by the previous guide I tried... my bad.. Thanks for any help. Link to comment Share on other sites More sharing options...
Meisterter Posted July 12, 2009 Share Posted July 12, 2009 Hi, I'm having some problems getting a RADEON 4870 1GB working with dual monitors; both of them connected via DVI > VGA adapters. I used Netkas lastest enabler and got everything working, except that monitors are always in mirror mode. yes i have the same problem i hope for a solution Link to comment Share on other sites More sharing options...
biciolino Posted July 12, 2009 Share Posted July 12, 2009 Success on my Sapphire 4870/512 with 10.5.7 vanilla ATi kexts. Earlier i was using netkas' Natit and then ATY_INIT with 4870 bios image embedded then i tried with an efi string generated from the XML provided by Mowglibook and linked by Keld in the first post and adapted for my PCIRoot (my MB is an ABIT ip35 Pro) but it didn't work. I, then, tried to convert the 4870 part of ATI_INIT to an EFI_STRING, omitting tha BIN_IMAGE key, of course, and it worked. I now have full support (QE/CI, Resolution change, etc... Still need to try dual display tho, will edit my post accordingly, once tested.) just like before but with no injectors at all. It's even compatible with SnowLeopard, without having to wait for a 64 Bit capable injector. Following the XML and HEX version of the efi-string i now use for my 4870/512. Remember to change the PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0) according to you hardware. Instructions are in the first post by Keld. Credits go to Netkas, Keld, Mowglibook, CycloneFR, lastExile and all the friends from the IRC #RadeonHD channel crew who, by the way, is also an invaluable source of know-how and even a good company during work pauses [Edit] I cheered too soon. Turns out not working in SnowLeo, Chameleon kept messing up /Extra/Extensions.mkext loading part of kexts from Leo partition and part from SnowLeo and since i had an ATY_INIT.kext laying around, i got fooled. Investigating the matter. Thx all and good luck. XML version <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)</key> <dict> <key>@0,compatible</key> <string>ATY,Motmot</string> <key>@0,connector-type</key> <string>0x00000400</string> <key>@0,device_type</key> <string>display</string> <key>@0,display-type</key> <string>0x454e4f4e</string> <key>@0,name</key> <string>ATY,Motmot</string> <key>@1,compatible</key> <string>ATY,Motmot</string> <key>@1,connector-type</key> <string>0x00000004</string> <key>@1,device_type</key> <string>display</string> <key>@1,display-type</key> <string>0x454e4f4e</string> <key>@1,name</key> <string>ATY,Motmot</string> <key>AAPL,slot-name</key> <data>U2xvdC0x</data> <key>AAPL,EMC-Display-List</key> <data>AwAAAAAAAAAAAAAAAAAAAAYQAAAbkgAAAAAAAAAAAAAGEAAAHJIAAAAAAAAAAAAABhAAACGSAAAAA AAAAAAAA==</data> <key>AAPL,aux-power-connected</key> <string>0x00000001</string> <key>AAPL,backlight-control</key> <string>0x00000000</string> <key>AAPL00,blackscreen-preferences</key> <string>0x08000000</string> <key>AAPL01,Coherency</key> <string>0x00000002</string> <key>AAPL01,blackscreen-preferences</key> <string>0x08000000</string> <key>ATY,Card#</key> <string>109-B77101-00</string> <key>ATY,Copyright</key> <string>Copyright AMD Inc. All Rights Reserved. 2005-2008</string> <key>ATY,EFICompileDate</key> <string>Jan 26 2009</string> <key>ATY,EFIDispConfig</key> <data>DRAAAAAAAAA=</data> <key>ATY,EFIDriverType</key> <string>0x02</string> <key>ATY,EFIEnabledMode</key> <string>0x02</string> <key>ATY,EFIHWInitStatus</key> <data>AAAAAAAAAAA=</data> <key>ATY,EFIOrientation</key> <string>0x0100</string> <key>ATY,EFIVersion</key> <data>MDEuMDAuMzE4AA==</data> <key>ATY,EFIVersionB</key> <string>113-B77101-012</string> <key>ATY,EFIVersionE</key> <string>113-B7710A-318</string> <key>ATY,MCLK</key> <string>0x00112e70</string> <key>ATY,MemRevisionID</key> <string>0x0009</string> <key>ATY,MemVendorID</key> <string>0x0002</string> <key>ATY,PlatformInfo</key> <data>AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAA=</data> <key>ATY,Rom#</key> <string>113-B7710C-176</string> <key>ATY,SCLK</key> <string>0x000bdb28</string> <key>ATY,VendorID</key> <string>0x1002</string> <key>device_type</key> <string>ATY,MotmotParent</string> <key>model</key> <string>ATI Radeon HD 4870</string> <key>name</key> <string>ATY,MotmotParent</string> </dict> </dict> </plist> Hex-converted, ready to be pasted into com.Apple.Boot.plist (only for PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0) ) 090800000100000001000000fd0700002600000002010c00d041030a010000000101060 00010101060000007fff04001e0000004100540059002c00560065006e0064006f00720049004400 000060000000210240000004100540059002c00450046004900560065007200730069006f006e004 000000120000003131332d4237373130312d3031321c0000006400650076006900630065005f0074 07900700065000000140000004154592c4d6f746d6f74506172656e74220000004100540059002c0 450046004900560065007200730069006f006e0000000e00000030312e30302e3331380022000000 00031002c006400650076006900630065005f00740079007000650000000b000000646973706c617 28000000400030002c0063006f006e006e006500630074006f0072002d0074007900700065000000 80000000004000020000000400031002c0063006f006d00700061007400690062006c00650000000 0000004154592c4d6f746d6f7414000000400030002c006e0061006d00650000000e000000415459 c4d6f746d6f74180000004100540059002c00430061007200640023000000110000003130392d423 373130312d3030260000004100410050004c00300031002c0043006f0068006500720065006e0063 0790000000800000002000000220000004100410050004c002c0073006c006f0074002d006e00610 6d00650000000a000000536c6f742d3114000000400031002c006e0061006d00650000000e000000 154592c4d6f746d6f74160000004100540059002c00530043004c004b0000000800000028db0b002 000000400030002c0063006f006d00700061007400690062006c00650000000e0000004154592c4d f746d6f74240000004100540059002c00450046004900560065007200730069006f006e004500000 120000003131332d4237373130412d333138300000004100410050004c002c0045004d0043002d00 4006900730070006c00610079002d004c00690073007400000044000000030000000000000000000 0000000000061000001b9200000000000000000000061000001c9200000000000000000000061000 02192000000000000000000002a0000004100540059002c004500460049004f007200690065006e0 74006100740069006f006e00000006000000000128000000400031002c0063006f006e006e006500 30074006f0072002d00740079007000650000000800000004000000280000004100540059002c004 0065006d005200650076006900730069006f006e0049004400000006000000090028000000410054 059002c00450046004900440069007300700043006f006e0066006900670000000c0000000d10000 00000000240000004100540059002c004d0065006d00560065006e0064006f007200490044000000 60000000200360000004100410050004c002c006100750078002d0070006f007700650072002d006 006f006e006e00650063007400650064000000080000000100000024000000400030002c00640069 0730070006c00610079002d0074007900700065000000080000004e4f4e450e0000006e0061006d0 65000000140000004154592c4d6f746d6f74506172656e74320000004100410050004c002c006200 10063006b006c0069006700680074002d0063006f006e00740072006f006c0000000800000000000 00420000004100410050004c00300030002c0062006c00610063006b00730063007200650065006e 02d0070007200650066006500720065006e006300650073000000080000000000000842000000410 410050004c00300031002c0062006c00610063006b00730063007200650065006e002d0070007200 50066006500720065006e006300650073000000080000000000000824000000400031002c0064006 00730070006c00610079002d0074007900700065000000080000004e4f4e4522000000400030002c 06400650076006900630065005f00740079007000650000000b000000646973706c6179100000006 006f00640065006c0000001600000041544920526164656f6e204844203438373028000000410054 059002c0045004600490044007200690076006500720054007900700065000000050000000216000 004100540059002c004d0043004c004b00000008000000702e1100160000004100540059002c0052 06f006d0023000000120000003131332d4237373130432d3137362c0000004100540059002c00450 460049004800570049006e006900740053007400610074007500730000000c000000000000000000 000200000004100540059002c0043006f007000790072006900670068007400000035000000436f7 79726967687420414d4420496e632e20416c6c205269676874732052657365727665642e20323030 52d323030382a0000004100540059002c0045004600490045006e00610062006c00650064004d006 0064006500000005000000022a0000004100540059002c0045004600490043006f006d0070006900 c006500440061007400650000000f0000004a616e2032362032303039260000004100540059002c0 50006c006100740066006f0072006d0049006e0066006f0000008400000001000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000 Link to comment Share on other sites More sharing options...
Godowski Posted July 13, 2009 Share Posted July 13, 2009 Success on my Sapphire 4870/512 with 10.5.7 vanilla ATi kexts. Earlier i was using netkas' Natit and then ATY_INIT with 4870 bios image embedded then i tried with an efi string generated from the XML provided by Mowglibook and linked by Keld in the first post and adapted for my PCIRoot (my MB is an ABIT ip35 Pro) but it didn't work. I, then, tried to convert the 4870 part of ATI_INIT to an EFI_STRING, omitting tha BIN_IMAGE key, of course, and it worked. I now have full support (QE/CI, Resolution change, etc... Still need to try dual display tho, will edit my post accordingly, once tested.) just like before but with no injectors at all. It's even compatible with SnowLeopard, without having to wait for a 64 Bit capable injector. I did everything like it explained on the first post, and everything is working like before, dual display, DVI on the first and DVI to HDMI (Samsung TV) on the second port. QI/CI and resolution change are working but the wake from sleep does not works still ? I removed Natit.kext but still have some files ATY_Init, ATY_Motmot in the /System/Library/Extensions/ What should I have, I what should I remove? Maybe I have not removed everything left from the earlier. First I started with A Simple Guide to the 4830/4850/4870/4870x2/4890, Working QE/CI, Resolution Change, etc. Than with Netkas: New universal Injector for ati and nvidia, and multiple ati cards enabler. tnx UPDATE! I realize that wake from display sleep works.. but wake from system sleep does not work Link to comment Share on other sites More sharing options...
Shauneh Posted July 13, 2009 Share Posted July 13, 2009 I have everything working, no dual DVI thou as I have DVI, HDMI and DP Not tested DP, DVI not working, HDMI working with adaptor, and DP not tested. Im getting a really bad stutter thou on all USB devices this includes mouse jumping :/ Mine is a non referance Gigabyte GV-R487D5-1GD I have used this method and get everything working. That is the only snag, having 2 screens doesnt doesn't bother me. So I'm not bothred about moving over to natit/ other injectors. Any ideas? Thanks guys -- Shaun Link to comment Share on other sites More sharing options...
idsynk Posted July 14, 2009 Share Posted July 14, 2009 @ biciolino: Which programm can read aty_init??? Link to comment Share on other sites More sharing options...
biciolino Posted July 15, 2009 Share Posted July 15, 2009 @ biciolino: Which programm can read aty_init??? What do you mean with "reading aty_init"? If you mean how to see its contents, then just right click it and choose "Show package contents" then open the Contents directory and eventually you'll find Info.plist, an XML file. Link to comment Share on other sites More sharing options...
idsynk Posted July 15, 2009 Share Posted July 15, 2009 Sure, but in this info.plist is no specific information about the card. Only in that from Natit.kext. The information is in this aty_init file. Bild_176.pdf Link to comment Share on other sites More sharing options...
biciolino Posted July 15, 2009 Share Posted July 15, 2009 Sure, but in this info.plist is no specific information about the card.Only in that from Natit.kext. The information is in this aty_init file. Which aty_init is that? i mean this one: http://netkas.org/?p=107 , the universal injector for both ATi and NVidia. Link to comment Share on other sites More sharing options...
idsynk Posted July 16, 2009 Share Posted July 16, 2009 Thanx, with this version it is no problem to find the information in the plist. I've got the other also from Netkas pages. Link to comment Share on other sites More sharing options...
mattsand Posted August 6, 2009 Share Posted August 6, 2009 yeah this method works great with my gigabyte hd4870 card, except just like with natit it doesn't give me vga, which i need pretty badly for various reasons. the stock 10.5.7 driver as well as the "delete the motmot driver after install" method both give me vga, but with millions of dancing dots on a grey canvas instead. anybody got vga working on the gigabyte? is there another 4870 card that has working vga that i should try instead? Link to comment Share on other sites More sharing options...
Recommended Posts