Contribute
Register

[CLOSED] Adding ATI card IDs to Chimera 1.5 ATI.c

Status
Not open for further replies.
Re: Adding ATI card IDs to ATI.c - update (10-May)

GingaNinja said:
You need to show all files - there's a utility to do that in the MultiBeast install, alternatively follow the instructions from my link to prasys' blog above - he mentions using killall and some other commands I can't remember....

The file you want is the one that complains about being invisible - you shouldn't get that complaint when you show all files. You might need to delete the current boot file - move it to your desktop so that you can move it back if you get no boot - you have got your iBoot cd, and it works, right? If you get it wrong, you won't be able to boot up, and if your iBoot cd doesn't work, you'll have to reinstall everything.

Yep - iboot works, so at least I have that should everything go wrong.

I'm not sure what I'm doing is making any difference though...

I have:

Downloaded Chameleon & navigated to the ati.c file in the Chimera branch. Looking at this file it shows kNull for the framebuffer against the 6670. I change this to Gibba, for example & save. I then run 'make' which makes the 'boot' file in the 'sym' folder in the Chimera branch - this is the one that I copy to the root of OSX.

Do I then also need to do 'AtiConfig=Gibba' in my apple.com.boot file to force it to load the Gibba framebuffer? Or do I just leave it with Graphics enabler = yes

If so, I should repeat that procedure for all the framebuffers (I have done a few, but not noticed any difference at all & all of them boot - which is making me wonder if what I am doing is correct!).

(Also, do I need to re-run Multibeast system utilities each time to repair/update?)

If I am doing the right thing then I'll try the rest of the framebuffers & repeat. I'm hoping to pop the card in my parents PC tonight & run gpu-z, so I can then amend the framebuffers with the right information if so.

I know what I need to be doing - I'm just not sure that I'm doing it all correctly!!

Many thanks for your help so far, it is really appreciated.
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

It looks like you edited ati.c correctly and copied the boot file correctly - I found that when I did this it stopped a message:

"Card not Supported" (or something like that)

popping up on boot when GraphicsEnabler=yes was set.

You shouldn't need to repair permissions when changing the apple.com.boot.plist file.

So then, instead of changing the framebuffer personality in the plist file, change it for each boot up at the boot prompt by typing

"AtiConfig=Gibba"

or whatever else you haven't tried yet.

I found that none of these made a difference until I actually edited the framebuffer table in the kext (which you need the rom dump from gpu-z for).
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

GingaNinja said:
It looks like you edited ati.c correctly and copied the boot file correctly - I found that when I did this it stopped a message:

"Card not Supported" (or something like that)

popping up on boot when GraphicsEnabler=yes was set.

You shouldn't need to repair permissions when changing the apple.com.boot.plist file.

So then, instead of changing the framebuffer personality in the plist file, change it for each boot up at the boot prompt by typing

"AtiConfig=Gibba"

or whatever else you haven't tried yet.

I found that none of these made a difference until I actually edited the framebuffer table in the kext (which you need the rom dump from gpu-z for).

So I change the framebuffer in the ati.c file each time & run the make command to create the boot file and copy that to the root.

Then at the Chimera bootloading screen I boot it with the "AtiConfig=the name of the framebuffer on the ati.c file" prompt ? (So that means I'd repeat it 20 times to try all the framebuffers?).

Thanks again.
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

No, you only need to change the ati.c file once - this is to stop it from being knull - when it is knull, it doesn't seem to load any of the framebuffer personalities you specify.

It doesn't have to be the one you end up using, as the plist file (and atiConfig=...) will override that once you've found the right one.
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

GingaNinja said:
No, you only need to change the ati.c file once - this is to stop it from being knull - when it is knull, it doesn't seem to load any of the framebuffer personalities you specify.

It doesn't have to be the one you end up using, as the plist file (and atiConfig=...) will override that once you've found the right one.

Well, I don't think what I'm doing is making any difference as I still get the 'unsupported card' message.

I think this is because the 'boot' file I am copying over from the sum folder after running make is a text file (white icon), whereas the 'boot' file that is in the root already is a black icon (called Unix Executable File).

Do you think that might be it? if so, how do I get the 'make' command to make the Unix file....? It does make a 'Boot.sys' (Black icon) which is a Unix file, so is it that one that I need to be moving....?

Thanks
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

I'm pretty sure it's the plain boot file - if you try and read it in a text editor, I think you'll find it's a binary file.

Are you sure you've run make after editing ati.c?
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

GingaNinja said:
I'm pretty sure it's the plain boot file - if you try and read it in a text editor, I think you'll find it's a binary file.

Are you sure you've run make after editing ati.c?

Yep - definitely. I run make in terminal & it goes away & talks about making boot0, boot1 etc & then updates the time modified for the 'boot' file in the sym folder.

When I try & copy the boot file over it says it cannot be copied as it is invisible, if i don't remove the existing unix file called 'boot' too. As soon as i move that out of there it copies over fine.

If I open the created 'boot' file after running make it is made up of loads of characters etc.

The last time I tried it, I edited ati.c to show kGibba for the 6670 card. Saved it, ran make in the Chimera folder & then copied the 'boot' file over to the root of the drive, from the sym/i386 folder.

I still get the unsupported card message, so I must be doing something wrong! There are quite a few 'makefiles' in the Chimera folder, so I'd better just check that I run it in the Chimera folder & not in the libsaio folder?

Also, might be a silly question, but should I be booting up with the -v command or not?

Thanks for your help with this, I realise I'm being a pain - it's just I don't like letting things beat me!
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

GingaNinja:

I tried "make" but return the following messages. Is it because I'm doing this on Lion and using Xcode 4.1?

In file included from ufs.c:33:
ufs_byteorder.h:42:27: error: ufs/ufs/quota.h: No such file or directory
ufs_byteorder.h:43:28: error: ufs/ufs/dinode.h: No such file or directory
ufs_byteorder.h:44:25: error: ufs/ufs/dir.h: No such file or directory
ufs_byteorder.h:45:24: error: ufs/ffs/fs.h: No such file or directory
 
Re: troubles with 4670

any help? :crazy:

jsfullr said:
Having some problems getting my HD 4670 card to work properly. Currently without forcing a frame buffer I get a black screen at boot, and even when forcing a frame buffer the card is not fully recognized. Full card ID:
01:00.0 VGA compatible controller [0300]: ATI Technologies Inc RV730XT [Radeon HD 4670] [1002:9490] (prog-if 00 [VGA controller])
Subsystem: XFX Pine Group Inc. Unknown device [1682:2932]
--

01:00.1 Audio device [0403]: ATI Technologies Inc R700 Audio Device [Radeon HD 4000 Series] [1002:aa38]
Subsystem: XFX Pine Group Inc. Unknown device [1682:aa38]

This is what I get running ioreg | grep ATY:
[quote:2o4bzy36] | | | | +-o ATY,Flicker@0 <class AtiFbStub, id 0x10000029f, registered$
| | | | | +-o ATY_Flicker <class ATIFramebuffer, id 0x1000002ae, regis$
| | | | +-o ATY,Flicker@1 <class AtiFbStub, id 0x1000002a0, registered$
| | | | | +-o ATY_Flicker <class ATIFramebuffer, id 0x1000002b5, regis$
| | | | +-o ATY,Flicker@2 <class AtiFbStub, id 0x1000002a1, registered$
| | | | | +-o ATY_Flicker <class ATIFramebuffer, id 0x1000002bb, regis$

Which looks like it should be correctly loading the frame buffer but running the last test I get this:
Using PCI-Root-UID value: 1
Framebuffer @0xE0000000 MMIO @0xFBDE0000 I/O Port @0x0000DE00 ROM Addr @0x00000000
ATI card POSTed, reading VBIOS from legacy space
ATI RV730 ATI Radeon HD 4600 Series 1024MB (Flicker) [1002:9490] (subsys [1682:2932]):: PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)

It looks like the subsystem ID's aren't matching, which may be the problem? When I force a frame buffer at boot I can get into the system but system profiler only recognizes the card as a 4600 series. Another odd thing is that boot.plist seems to be ignoring my AtiConfig string and I'm forced to manually enter AtiConfig=Flicker -v every boot.

Any help is greatly appreciated![/quote:2o4bzy36]
 
Re: Adding ATI card IDs to ATI.c - update (10-May)

As my card will only work with 2 displays with graphics enabler on I wanted to try some different framebuffers. I've started testing but I seem to get this message a lot
Code:
ATI card POSTed, reading VBIOS from legacy space


Memory allocation error! Addr=0xdeadbeef, Size=0x0, File=ati.c, Line=739

This is a non recoverable error! System HALTED!!!
I get this error with Duckweed as well which is otherwise autoloaded.

And when it does load and I grep the ATY data from IOReg I only seem to get the ATY, ATY framebuffer. I have not tested all yet, I'll edit this post when I have.

Edit 1: On closer investigation I seem to only get the deadbeef when using -v, if I don't boot in verbose it seems to load with Duckweed and properly report duckweed in terminal. However duckweed Isn't working very well for me.

Edit 2: I have now tested them all and the results are the following;
Working with 3 screens, Cinebench score
GraphicsEnabler=No (ATY) 42.31
Bulrushes (ATY?) 42.09
Cattail (ATY?) 42.42
Mangabey (ATY?) 42.24
Juncus (ATY?) 42.23

All these report ATY,ATY when checking with IOReg and give me ATI Radeon HD NI40 in system profile, also geekbench crashes on start. So the same resluts as with GE=No

Doesn't work
Pitcheia (Black)
Fanwort (Black)
Elodea (I only get picture on the tv but I can see one more screen in display manager)
Kudzu (Black)
Gibba (Kernel panic at first try, then only detecting the tv which shows proper picture. 16 in cinebench)
Lotus (Black)
Ipomoea (Only picture on my HP w2207h but in incorrect resolution, shows up with the name of the tv in display manager and resolutions are the ones for the tv as well)
Muskgrass (Black)
All these show the correct framebuffer in IOReg but they all also have their problems, I check the framebuffer for the black ones using ssh.

Edit 3:
So while playing around I tested putting AtiConfig Cattail in boot.plist and then it actually loaded the framebuffer correctly but I got the same results as with Impoea, so after that I went ahead and tested the same thing with Bulurushes and now I gets stuck at a gray screen on the tv after the apple screen spinner, tested twice to make sure it weren't some random error.

Edit 4:
Tested Mangabey and Juncus that way as well now, they still load the default ATY, ATY framebuffer with geekbench crash, AMD HD NI40 and all that. So it seems like there's no good framebuffer for my card at this moment. This is my card: http://www.asus.com/Graphics_Cards/AMD_ ... 2DI2S1GD5/
 
Status
Not open for further replies.
Back
Top