Jump to content

How to: ATI 4850 working on SL


scorcho
 Share

197 posts in this topic

Recommended Posts

Updated September 21, 2009

 

Getting the 4850 to work in SL. While you'll find a couple of methods in this thread involving a litany of old and new kexts, the two below are probably the best. If either one doesn't work for you try the other methods below! Massive thanks to netkas for PCIEFIv10, and hawgguy for the second method.

 

FIRST METHOD

works best if you're already using Chameleon 2 or PCEFI 10. Also works in both x32/x64 and without the need for an adapter in second DVI port.

 

1. Install the latest version of PC EFI (10.3) and enable graphics injection in your com.apple.Boot.plist with this string -

<key>GraphicsEnabler</key>
<string>Yes</string>

2. Modify ATI4800Controller.kext in System/Library/Extensions to add the 4850 ID - go to your S/L/E directory and copy the ATI4800Controller.kext to your desktop.

3. right click on the copy you made and select 'Show Package Contents'

4. open Contents and double-click on Info.plist.

5. scroll down till you find -

<string>0x94401002 0x944a1002</string>

REPLACE it with the following code and save the file

<string>0x94401002 0x944a1002 0x94421002</string>

6. download Kext Utility and drag the edited .kext onto the program icon - http://www.insanelymac.com/forum/index.php?showtopic=140647

7. once your caches have regenerated reboot and you should have the 4850 working with full QE/CI. Enjoy!

 

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

 

SECOND METHOD

 

A couple of steps are needed, but the end result will be no new .kexts added to your install, NO dvi2vga adapter.

 

1. Download gfxutil from here - http://forum.netkas.org/index.php/topic,64.0.html

2. launch gfxutil through terminal with the following argument without quotes '-f display'. copy down your PciRoot information; you'll need this later.

3. save the following plist to your desktop - http://www.rakov.net/HD48x0.plist

4. Replace the PciRoot information in the plist with the one you generated earlier and save the file.

5. from your terminal launch gfxutil with the following argument without quotes '-i xml -o hex AAAA BBBB', where AAAA is the location of the plist you saved, and BBBB is the location of the hex file you just created from the plist.

6. take the contents of the hex file and add it to your current or new com.apple.boot.plist file like so -

<key>device-properties</key>
<string>HEXCODE</string>

if you already have an EFI string in your boot.plist, you will need to decomplie the hex, add it to your plist, and recompile the new hex as a combined efi string. while beyond the scope of this tutorial, you can find out more info by browsing through this thread - http://forum.netkas.org/index.php/topic,64.0.html

7. go to your current S/L/E directory and copy the ATI4800Controller.kext to your desktop.

8. right click on the copy you made and select 'Show Package Contents'

9. open Contents and double-click on Info.plist.

10. scroll down till you find -

<string>0x94401002 0x944a1002</string>

REPLACE it with the following code and save the file

<string>0x94401002 0x944a1002 0x94421002</string>

11. download Kext Utility and drag the edited .kext onto the program icon - http://www.insanelymac.com/forum/index.php?showtopic=140647

12. once your caches have regenerated reboot and you should have the 4850 working with full QE/CI. Enjoy!

 

 

OTHER METHODS if the above doesn't work for you

 

1. evoenabler.kext (linked in this thread) + edited ATI4800Controller.kext <- works in both 32 and 64-bit mode.

 

2. using tzl's EFI string and two .kexts from 10.5.8 - http://www.insanelymac.com/forum/index.php...t&p=1235118 <- this will not work in 64-bit mode!

 

3. evoenabler + two .kexts from 10.5.8 <- will not work in 64-bit mode!

Link to comment
Share on other sites

Howdy all!

 

I've tried a few times to get my ATI 4850 to work with Snow Leopard without success. I used blackosx's recommendation to install SL on a clean partition from my hackintosh. I then installed chameleon RC1, swapped it for PCEFI 10.1, and added the required kexts to E/E.

 

Next I followed netkas' instructions to copy aty_init.kext to S/L/E and added my card's device id to ATI4800Controller.kext, but it still boots to a gray screen. Has anyone had success?

 

I have this same card and I also am on the gray screen. As I understand, aty_init.kext is 32 bits and need to be ported to 64 bits. Also I read on a post on netkas.org that Snow Leo works with 4850 nativelly.

 

To be honest, I am really thinking about going to a nvidia 250gt or something like this. Putting the 4850 to work on Leo was a bag of pain. I used to have a 8600gt and everything was so smooth...

 

Does anyone suggests any vga board that is easy to use with SL?

Link to comment
Share on other sites

I have this same card and I also am on the gray screen. As I understand, aty_init.kext is 32 bits and need to be ported to 64 bits. Also I read on a post on netkas.org that Snow Leo works with 4850 nativelly.

 

To be honest, I am really thinking about going to a nvidia 250gt or something like this. Putting the 4850 to work on Leo was a bag of pain. I used to have a 8600gt and everything was so smooth...

The only way to get SL working on my system is to completely delete all ATI drivers in S/L/E. After that SL runs perfect on my board (P45-UD3P). Arg.

 

Although I had very little issue getting my card running in 10.5.8 - all I needed to install was ayt_init.kext. This is proving much more complicated.

Link to comment
Share on other sites

Same problem here.

 

The only solution to have at least something on the screen, is to delete all the ATI kexts.

 

It's weird, because it works well on 10.5.8, and netkas doesn't seem to respond to multiple comments about that problem, as it seems to only concern 4850.

 

I hope a workaround will appear, maybe netkas will read this thread ?

Link to comment
Share on other sites

I have a 4870 and under SL, before I put in an EFI string for the card, my machine seemed to freeze in boot on the grey screen. After I put the EFI string in place, the graphics mode starts up, but I get black and white garbage on screen instead of the real graphics mode...

Link to comment
Share on other sites

I have a 4890, which works fine only with enabler installed and QE/CI pkg afterwards. A 4870 works also fine for me, aren't the 4850 and 4870 both RV770 chips with not that big difference?

 

Hi, thanks for your feeback.

Could you post informations about you 4870 working in SL please ?

Maybe we could compare the BIOS informations from your card with another 4870 (yoyodude, post the same info please), and try to find out why only one is working, and apply those findings to 4850.

 

An again, Netkas, if you could, please help us, a lot of people will be concerned in the next couple of weeks.

Link to comment
Share on other sites

Hello,

My 4850 works in SL 32 bit,

I use gfx strings, ATINDRV.kext and ATIRNDRV.kext from Leopard, no need to add devid in ATI4800Controller.

 

Attached is my gfx-string

remember to change PciRoot(0x0)/Pci(0x3,0x0)/Pci(0x0,0x0) with yours, convert the plist to hex and add the result in your com.apple.Boot.plist

 

You can get your PciRoot with gfxutil from here : http://forum.netkas.org/index.php/topic,64.0.html

EDIT 03-sept-2009:

Snow 32-64 bit works with EVOEnabler+ devid in ATI4800Controller only, no efi strings, no need for ATINDRV from leopard.

4850.plist.zip

EVOenabler.4850.kext.zip

Link to comment
Share on other sites

Hello tzel2,

 

which 4850 card do you have exactly? Do you have dual monitor working on SL? If you you have dual monitor working, do you have extended desktop or mirror? Do you need dvi to vga adapter for singlemonitor?

 

Thanks and regards!

berlindude

 

Hello,

My 4850 works in SL 32 bit,

I use gfx strings, ATINDRV.kext and ATIRNDRV.kext from Leopard, no need to add devid in ATI4800Controller.

 

Attached is my gfx-string

remember to change PciRoot(0x0)/Pci(0x3,0x0)/Pci(0x0,0x0) with yours, convert the plist to hex and add the result in your com.apple.Boot.plist

 

You can get your PciRoot with gfxutil from here : http://forum.netkas.org/index.php/topic,64.0.html

Link to comment
Share on other sites

Hello tzel2,

 

which 4850 card do you have exactly? Do you have dual monitor working on SL? If you you have dual monitor working, do you have extended desktop or mirror? Do you need dvi to vga adapter for singlemonitor?

 

Thanks and regards!

berlindude

 

I believe it's a standard 4850 card, a dell model 2 dvi and svideo, yes I have dual monitor working, extended desktop, and yes for a single monitor u need the adapter.

 

You could also try this new injector, supposed to work in 64 bit

 

http://rapidshare.de/files/48205415/evoena...0.kext.zip.html

Link to comment
Share on other sites

Hello,

My 4850 works in SL 32 bit,

I use gfx strings, ATINDRV.kext and ATIRNDRV.kext from Leopard, no need to add devid in ATI4800Controller.

 

Attached is my gfx-string

remember to change PciRoot(0x0)/Pci(0x3,0x0)/Pci(0x0,0x0) with yours, convert the plist to hex and add the result in your com.apple.Boot.plist

 

You can get your PciRoot with gfxutil from here : http://forum.netkas.org/index.php/topic,64.0.html

tzel2 - thanks for your response! is it as simple as finding the path to my device, adding it to the plist and adding that to my com.apple.boot.plist in /extra?

 

Has anyone else trying this managed to get it to work? (sorry for questions, won't have access to my hackintosh till tonight).

Link to comment
Share on other sites

It worked here.

Tzel2's method is great.

 

After changing the PciRoot, i converted the file to hex with gfxutil, and added this to the com.apple.Boot.plist

Then, i took the two kexts from 10.5.8 combo update, and put them in S/L/E.

And it worked without ATY_init.

 

However, I haven't tried with x64 kernel, all in 32 bit.

 

For now, i'm back to 10.5.8, too many KPs, I'll wait for improved solutions with my P5WDH.

 

But it's great news for 4850 owners with Snow Leopard !

Link to comment
Share on other sites

You could also try this new injector, supposed to work in 64 bit

 

http://rapidshare.de/files/48205415/evoena...0.kext.zip.html

 

Gigabyte Radeon 4850 GV-R485MC-1GI works here with this evoenabler and 10.5.8 atindrv in /S/L/E. I also had to enter the dev-id in ATI4800Controller.

Dual dvi works, qe/ci appears to be working, yet not shown in system profiler. Sleep doesn't work, but it may be unrelated to video card.

 

p35-ds3p, 10a432.

Link to comment
Share on other sites

Finally got around to testing this out. Extracted the 10.6 ATI drivers and reinstalled them into S/L/E. Followed Tzel2's method, which took a few minutes to figure out since I'm not use to digging through EFI strings and the like. A reboot later and I had working QE/QI with full resolution switching. My only issue was a bounch/jumpy screen.

 

Took a stab in the dark and installed evoenabler.kext into S/L/E, repaired permissions and that fixed the problem. I did not need to add my device ID into any .kext, which I assume was handled by the EFI string.

 

Thanks for all your help!

Link to comment
Share on other sites

Gigabyte Radeon 4850 GV-R485MC-1GI works here with this evoenabler and 10.5.8 atindrv in /S/L/E. I also had to enter the dev-id in ATI4800Controller.

Dual dvi works, qe/ci appears to be working, yet not shown in system profiler. Sleep doesn't work, but it may be unrelated to video card.

 

p35-ds3p, 10a432.

 

update:

This is the only method that is working for me. I tried adding my card model's gfx string to com.apple.Boot.plist using this method, but it has no effect.

 

Sleep works, but wake doesn't... screen becomes fuzzy. Does someone have a workaround?

Link to comment
Share on other sites

Works 64bit...

 

Edit Info.plist - ATI4800Controller.kext

 

..…..……

<key>IOPCIMatch</key>

<string>0x94421002 0x944a1002</string>

..…..…………………..

 

 

add EVOenabler.kext Clik

 

:)

 

P.S.

 

source: click

 

 

zet120,

This is a good news.

I'm trying to enable QE/QI, but not succeed, yet.

What else do yo have AT*.kexts in S/L/E besides ATI4800Controller.kext, EVOenabler.kext?

 

Thanks.

Link to comment
Share on other sites

Should update with some new info -

 

For whatever reason it seems as if evoenabler did some funky things with my card's powermanagement. The fan was running at odd speeds, cycled off and on way too much and emitted an odd whine - none of which occurs under Windows 7 or 10.5.8. The card was also benchmarking very slowly when compared to Leopard.

 

So instead of using evoenabler to fix the jittery screen, I edited the card's bios to keep every memory timing at 993 and deleted evoenabler from S/L/E - http://www.insanelymac.com/forum/index.php...2228&st=700

 

After rebooting everything works better than before - no more erratic fan speeds and my benchmarks are consistent with what it was under 10.5.8. EFI + default SL ATI drivers + ATINDRV.kext +ATIRNDRV.kext in S/L/E. You DO NOT need to add your device ID for the 4850 if you're using the previously posted EFI string.

Link to comment
Share on other sites

I experience strange behavior, I get 1680x1050 resulution but my screen bounces all the time, not like in 10.5, it turns from normal to blue, to grey, to normal again. very strange, I did not had any problems In 10.5. Which files kext files from ATI were exactly deleted from S/L/E? What do you have in your E/E folder?

Thanks!

BerlinDude

Link to comment
Share on other sites

 Share

×
×
  • Create New...