Jump to content

ATI Radeon 9600 Pro Mobility


72 posts in this topic

Recommended Posts

The hardware I'm trying out OSX on is a Dell Inspiron 8600 that comes with a 128Mb Radeon 9600 Pro Mobility card.

 

Once you have installed OSX to your native partition and booted, you will see it crash with just the error message saying to reboot your machine. This is caused by the ATIRadeon9700GLDriver.bundle extension. Delete this from /System/Library/Extensions/ and you no longer need to boot up into safe mode.

 

Now that it boots up, my NIC & Sound are functioning but I don't have accelerated graphics running. The maximum resolution in this mode is 1600x1200x24 (as specified on the boot prompt).

 

Here is where I have found something interesting, not exactly a break through but getting closer. If I add this line to /etc/rc

 

kextload /System/Library/Extensions/ATIRadeon9700.kext/

 

And also modify /System/Library/Extensions/ATIRadeon9700.kext/Contents/Info.plist and add in the device ID 0x4e501002 into the string section, I can get OSX to boot in my laptops native resolution of 1920x1200. Although this isn't confirmed, the resolution is widescreen and (as crazy as this sounds) the mouse pointer appears to be the expected size for that size resolution.

 

However, the problem is that the display suffers alot of artification. So we are getting half way there but just can't make the driver go that little bit further to display OSX with hardware acceleration.

 

I've this various combinations of the Maxxuss 0.2 & 0.3 SSE3 patches with the original oah750d file, CoreGraphics, mach_kernel, with the platform=ACPI|X86PC flags, etc.

 

So if anyone has any further suggestions on what I can do to get this card going, please spit them out :(.

 

Cheers

 

PS: I love this OS. I've always loved it. Much thanks to all the people involved in getting it to a level where it can function on white-box hardware. If Apple ever decide to release this as a pure operating system that is not hardware dependant, then count me in.

Link to comment
Share on other sites

I found something interesting here..

 

I had a friend with a PowerBook to dump his ATIRadeon* kext's into a tar file and email them to me. I'm at work now so I haven't had the chance to test these new kext's out but something obviously jumped out at me when looking into the Info.plist files.

 

Now we know that the ATIRadeon9700GLDrive.bundle kext causes the system to hang on bootup, there is a massive difference between the kext on the x86 version and the PowerBook version.

 

In the ./Contents/Info.plist file for the OSX version is this;

 

	<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>ATIRadeon9700GLDriver</string>
<key>CFBundleGetInfoString</key>
<string>ATIRadeon9700GLDriver 1.4.4.13 (2942)</string>
<key>CFBundleIdentifier</key>
<string>com.apple.ATIRadeon9700GLDriver</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>ATI Radeon9700 OpenGL Driver</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.4.4</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>4.0.4</string>

 

On the version from the PowerBook;

 

	<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>ATIR300GLDriver</string>
<key>CFBundleGetInfoString</key>
<string>ATIR300GLDriver 1.3.42.7 (2713)</string>
<key>CFBundleIdentifier</key>
<string>com.apple.ATIR300GLDriver</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>ATI R300 OpenGL Driver</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.3.42</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>3.4.2</string>

 

Now the PowerBook is trying to load a driver called ATIR300GLDriver while the x86 version is calling the ATIRadeon9700GLDriver. But in the PowerBook ./Contens/MacOS directory is just a file called ATIRadeon9700GLDriver.

 

Anyone know where this ATIR300GLDriver comes from? Or more importantly, where I can a copy of it :)

Link to comment
Share on other sites

Funny :) I tried it now, actually with two different extensions, ATIRadeon.kext and ATIRadeon9700.kext.. Both I get a blue mouse pointer with a white outline, and nothing past it.

Link to comment
Share on other sites

http://www.win2osx.net/phpbb/viewtopic.php?t=116

 

has anybody seen an agp-driver?

 

if you look in AppleI386PCI.kext/Contents/Info.plist you'll see a property called AppleI386AGP, which hast the property IONameMatch and the value's pci_8086,2532 and pci_8086,2561

 

Boot Windows and open the device-manager. my system (Asus P4C800-E) has a CPU-AGP bridge with the values 8086,2579

 

altering the plist that the values are matching causes to crash totally.

 

to test that, you'll need to append platform=X86PC and possibly -v -f.

 

so, the problem seems to be the agp.

 

anyone tried a pci-card instead?

 

Reading that thread (Post 17) it looks like it could be a problem with the CPU->AGP bridge not being recognised. I've got the values for the bridge in my laptop (Dell Inspiron 8600) but have yet to test this out;

 

Hardware ID:

8086,3341

 

Compatabile ID:

8086,0604

8086,060400

 

Will update when I get home to try this out.

Link to comment
Share on other sites

i have an ati radeon mobility 9600 too and was playing with the same idea of just adding my device and vendor ID. however i didn't figure out how to do it, and there are a few things in your guide that i don'tunderstand

 

If I add this line to /etc/rc

 

kextload /System/Library/Extensions/ATIRadeon9700.kext/

 

what is "/etc/rc"? is that a folder? a file? a line in a file?

 

And also modify /System/Library/Extensions/ATIRadeon9700.kext/Contents/Info.plist and add in the device ID 0x4e501002 into the string section, I can get OSX to boot in my laptops native resolution of 1920x1200.  Although this isn't confirmed, the resolution is widescreen and (as crazy as this sounds) the mouse pointer appears to be the expected size for that size resolution.

 

i know how to load info.plist in nano - but in exactly which string does the device ID go?

 

thanks for your help

Link to comment
Share on other sites

i have an ati radeon mobility 9600 too and was playing with the same idea of just adding my device and vendor ID. however i didn't figure out how to do it, and there are a few things in your guide that i don'tunderstand

what is "/etc/rc"? is that a folder? a file? a line in a file?

i know how to load info.plist in nano - but in exactly which string does the device ID go?

 

thanks for your help

 

/etc/rc is the file that controls the startup of OSX. Open that up in a text editor (make sure your logged in as root or sudo'd to root if your using the terminal) and add the line I said into it. I put mine just after the section about loading kextd

 

Now in the Info.plist file for the Radeon9700, open that up and there'll be a line that looks like

 

<string>0x4E121002......0x59121002</string>

 

In there, add in

 

0x4e501002

 

Hope that clears any confusion.

Link to comment
Share on other sites

http://www.win2osx.net/phpbb/viewtopic.php?t=116

Reading that thread (Post 17) it looks like it could be a problem with the CPU->AGP bridge not being recognised.  I've got the values for the bridge in my laptop (Dell Inspiron 8600) but have yet to test this out;

 

Hardware ID:

8086,3341

 

Compatabile ID:

8086,0604

8086,060400

 

Will update when I get home to try this out.

 

Ok here are the results.

If I put the line;

<string>pci8086,3341</string>

Into the appropiate section in the /System/Library/Extensions/AppleI386PCI.kext/Contents/Info.plist file then my display driver now shows it as being an AGP card. However, I still cannot get the Radeon9700 extensions to load.

 

When the ATIRadeon9700GLDriver.bundle kext exists, the system no longer "crashes". What happens now is that the splash screen appears and then the mouse pointer appears. You can move the mouse pointer around but no actual login screen shows. It sounds like it's detecting the card, loading the module but there is something screwy with the OpenGL driver so it cannot display the GUI in accelerated mode.

 

I've tried combinations of OpenDarwin/OSX x86 Drivers/Different Radeon drivers (changing the vendor string), etc. Unfortunately all have the same syptoms.

 

But it's a positive sign that the card now shows up as being an AGP card in system profiler.

Link to comment
Share on other sites

well, i tried it out now, but the screen becomes all purple and blue and i still can't select any other resolutions. do i need the other ati-kexts in the extensions folder too? because i deleted them earlier to and only restored atiradeon9700.kext from the darwin-cd.

Link to comment
Share on other sites

well, i tried it out now, but the screen becomes all purple and blue and i still can't select any other resolutions. do i need the other ati-kexts in the extensions folder too? because i deleted them earlier to and only restored atiradeon9700.kext from the darwin-cd.

 

ok, i have been at this for about 48 hours. I actually learned a lot on how the mac boots up and how kext are loaded :blink: been a fun experience.

 

 

first thing is first, the PCI AGP bridge must be loaded if you are on a AGP card. This is done by editing the /System/Library/Extensions/AppleI386PCI.kext/Contents/Info.plist file. you need to put your device id in the place where the pci8086,2534 is at... even then.. you have to a compatible bridge... very compatible bridge..

 

second thing must be done is find out what CHIPSET is inside your card.. ATI (R300, R200 work, r250 DONT) NVida (have no clue B) )

 

THe ATI has some true false switches, i suggest making most of them FALSE (this is inside the kext -> Info.plist )

 

 

a couple tips...

look at /Library/Log/CrashReporter/Windowserver.log to find out what part of the system is crashing (usually is OpenGL )

 

 

in single user mode its easier to load and unload drivers with kextload and kextunload.

 

 

For right now, I cna get only one of my dell laptops running full accelerated. The other (Dell Inspiron 8500 ATI 9000 M9 ) is lets say "problematic" but I have had it go finally to 1280x800 wit a lot of force loading other drivers.

 

 

Bye

 

P.S. Yes I have a G5 Mac. :D

Link to comment
Share on other sites

ok, i have been at this for about 48 hours.  I actually learned a lot on how the mac boots up and how kext are loaded :blink: been a fun experience.

 

I know what you mean :D

 

For right now, I cna get only one of my dell laptops running full accelerated.  The other (Dell Inspiron 8500 ATI 9000 M9 ) is lets say "problematic" but I have had it go finally to 1280x800 wit a lot of force loading other drivers.

 

This is fantastic news, at least there is hope at the end of the road. Do you have any ideas on how we can check which chipset our cards are using, I don't feel partial to opening up my laptop just yet..

Link to comment
Share on other sites

Hey, Just A Mac User...

 

Any chance you can upload your ati kexts? I deleted all mine originally since they were keeping me from booting (I have a 9600 mobility, too). My problem sounds similar...

 

TIA :)

Link to comment
Share on other sites

http://dri.freedesktop.org/wiki/ATIRadeon?...ategoryHardware

 

According to that page, the ATI Radeon 9600 Mobility uses the RV350 chipset.

 

THe ATI has some true false switches, i suggest making most of them FALSE (this is inside the kext -> Info.plist )

 

                        <key>ATIEnableWideBlitSupport</key>
                       <true/>
                       <key>ATIUseTearingWideBlit</key>
                       <false/>

 

These are the only switches I have in my Info.plist file.. any others that should be there?

Link to comment
Share on other sites

http://dri.freedesktop.org/wiki/ATIRadeon?...ategoryHardware

 

According to that page, the ATI Radeon 9600 Mobility uses the RV350 chipset.

                        <key>ATIEnableWideBlitSupport</key>
                       <true/>
                       <key>ATIUseTearingWideBlit</key>
                       <false/>

 

These are the only switches I have in my Info.plist file.. any others that should be there?

 

 

 

do a grep -a 'ATI' ATIRadeon9700 inside the kext. or pull a hexeditor out and go byte diving.

 

:) have fun

Link to comment
Share on other sites

Hi. Thanks for the info, but could you please help me on these points:

 

first thing is first, the PCI AGP bridge must be loaded if you are on a AGP card.  This is done by editing the /System/Library/Extensions/AppleI386PCI.kext/Contents/Info.plist file.  you need to put your device id in the place where the pci8086,2534 is at... even then.. you have to a compatible bridge... very compatible bridge..

 

 

What do you mean by "very compatible bridge"

Also, do you have to do something to force this kext to load?

 

 

second thing must be done is find out what CHIPSET is inside your card.. ATI (R300, R200 work, r250 DONT)  NVida (have no clue :) )

 

THe ATI has some true false switches, i suggest making most of them FALSE (this is inside the kext -> Info.plist )

 

What kext are you talking about here? The Radeon kext corresponding to the video card, or the bridge kext?

 

 

a couple tips...

look at /Library/Log/CrashReporter/Windowserver.log to find out what part of the system is crashing (usually is OpenGL )

in single user mode its easier to load and unload drivers with kextload and kextunload.

For right now, I cna get only one of my dell laptops running full accelerated.  The other (Dell Inspiron 8500 ATI 9000 M9 ) is lets say "problematic" but I have had it go finally to 1280x800 wit a lot of force loading other drivers.

Bye

 

 

Could you please tell us exactly what you did to make it work?

 

Here is what I tried:

 

I tried to pu my card device (pci1002,5457) in the bridge kext, and in the radeon8500 kext, no I have a KP at startup:

 

AppleI386AGP: bad bridge bus numbering, no room to fix, bailling out!
Intel82557: couldn't allocate eeprom objecti82557eeprom: cheksum fffe incorrect

 

Thanks if somebody can help

 

 

just_a_mac_user, if you succeded in makink a working driver for ATI cards, even if it hase some limitation, maybe you could write a tutorial because it is the biggest problem remaining in porting OSX to the PC world (now that the TMP ans rosetta are cracked)

Link to comment
Share on other sites

What do you mean by "very compatible bridge"

Also, do you have to do something to force this kext to load?

 

I'm guessing that the drivers only cater for a very select number of CPU->AGP bridges. What I would do is remove all your ATI kext's (make a backup of course) and add your PCI bridge ID into the AppleI386PCI kext. If you can boot into OSX, go into 'About this Mac' and check the graphics driver. If your bridge is compatible/drivers have loaded, ther BUS type should now read AGP instead of PCI.

 

I tried to pu my card device (pci1002,5457) in the bridge kext, and in the radeon8500 kext, no I have a KP at startup:

 

Remove it from the ATIRadeon8500.kext extension as it's only needed in the AppleI386PCI.kext extension.

Link to comment
Share on other sites

do a grep -a 'ATI' ATIRadeon9700 inside the kext.  or pull a hexeditor out and go byte diving.

 

:P have fun

 

So you mean the flags are in the file /System/Library/Extensions/ATIRadeon9700.kext/Contents/MacOS/ATIRadeon9700 and once you have the name of the flags set the values of them in /System/Library/Extensions/ATIRadeon9700.kext/Contents/Info.plist ?

Link to comment
Share on other sites

in fact, before doing anything, my card was already seen as AGP. So, I don't need to do anything to the AppleI386PCI.kext?

 

In the Radeon8500.kext, there is already a list of device looking similar to mine (mine is 0x54571002) so I think it's not so bad to add mine there.

 

I just exchange my video card, swap my 7500 for my 9800, my mac booted once, but without PCI support (the AppleI386PCI.kext was not loaded) but my card was still seen as AGP in system profiler. So, I think that in my case, this extention does not change how the system profiler sees my card.

In fact, the kext had bad permissions, I repaired them, but now I can't boot, even in safe mode :P

 

I will have to pu my HD back in my mac to correct this.

 

But please, if anyone knows how to make the radeon kext load, and at least work to change the resolution, please, tell us!

Link to comment
Share on other sites

in fact, before doing anything, my card was already seen as AGP. So, I don't need to do anything to the AppleI386PCI.kext?

 

Sounds like your bridge is already compatible in that case.

 

In the Radeon8500.kext, there is already a list of device looking similar to mine (mine is 0x54571002) so I think it's not so bad to add mine there.

 

Depends if your card is based on a Radeon 8500 chipset. If it's not than you will have all sorts of problems.

 

In fact, the kext had bad permissions, I repaired them, but now I can't boot, even in safe mode :P

 

Can you boot up to the prompt where you can select to run sh /etc/rc or do the mount drives? If you run the first two commands (/sbin/fsck & /sbin/mount) then you should be able to access the filesystem and make changes

Link to comment
Share on other sites

I undid the changes I made, and now my ethernet doesn't work...

 

I've had wierd things like that happen.. if I'm playing with the ATI drivers and reboot sometimes my sound doesn't work.

 

Basically I just go back to scratch and delete all the extensions and recopy them from the VMWare image or from the Darwin CD.

Link to comment
Share on other sites

@just_a_mac_user: Could please post your settings?!?!

 

I have now AGP-support for the VGA-card but when loading the ATIRadeon9700.kext I only got a purple mousepointer.

 

Just setting 1280x800 would be THE BIG THING!

 

Thanks for helping!

Link to comment
Share on other sites

 Share

×
×
  • Create New...