Chameleon > DevTalk

ATI/AMD GraphicsEnabler support (legacy, modules & missing devices)!

(1/39) > >>


    So, what is this topic all about?

  To put it simple, it's a complement to the forge issue tracker, when it comes to the topic's theme. I'm sure
everyone agrees that we have better conditions to exchange info here!? It's also a way to centralize "things" and
make sure my sanity gets intact out of this. Experience and learning are always good "excuses" for doing something.
    The short story:
  As some of you folks might have noticed, Chameleon went through some heavy changes lately; mainly,
reworked SMBIOS patcher, reworked and improved ATI/AMD GraphicsEnabler code and last but absolutely
not the least, the merging of the modules system that Meklort been developing for over an year now, just to mention
a few of the most recent ones and with major impact.
  Specially important to me are the changes on the ATI/AMD GraphicsEnabler code, since they removed the "alleged"
support that the old code provided to legacy cards (non HD). Since i follow/use the Modules system practically since
it was born to the public, keeping a separate module for the ATI legacy, based on what Mek had already created,
is fairly easy.

  To cut it short, as a Chameleon "wannabe" collaborator, i couldn't possibly do this and ignore the rest of the GE code,
without getting a guilty conscience, and since it's a good opportunity to learn, i decided to embrace the cause.
The source of what i've done so far, can be found on my branch in the "trunkGraphicsEnablerModules" folder. Atm,
there's a module for each vendor except in the AMD case, who has 2 (ATi = legacy, AMD = HD).
  The goal is to merge the legacy code with the HD one. Whether the modules will stay separated by vendor  or
get merged back into just one GE module (as they were and most probable situation) is still to decide.

  Meanwhile, as i'm messing with this code and there are a lot of device id's missing from it, i've been accepting
issues on the forge from people asking for them or simply thinking "this is a bug of some sort". It happens that,
using GraphicsEnabler many times is not the full solution for proper graphics display, as e.g. the laptop owners can
certainly confirm. And this is were i need to draw a line to protect my sanity!

  I can't possibly try to code, accept issues and still have to point people to solutions for non Chameleon problems,
or simply teach them how to get a card's subsys id!! So, to make mine (and your's) life easier, there's this topic.
I will explain what i need from you, how to get it and also provide links to some prominent topics on this matter.
As always, i'll try to give general help, if i have free time and you guys behave properly, and not take other's time
with questions you should ask some were else.

    Ok, ok... cut through the crap... so, what do i need to know to post here?

- First of all, don't ask about OSx86/Hackintosh basics! "Apple terminal basics", "osx86 forums",
  "hackintosh bla bla bla", "osx86 bla bla bla", etc... usually produce good results on any search engine.

- Next, whatever the problem you're having, please check first if the device id of your card is added to chameleon code;
  look in the "radeon_cards" area of the code and see if the device id is present there (Command+F usually helps).
  If not, follow the "missing device id's" recommendation below. If you use a legacy card, it will not be present!

--  For the Modules system, if you know how to create a folder named Modules inside Extra folder and copy/paste
  the required module into it, your ok :) yeah, it's as simple as that. This GE modules have no dependencies on others;
  you can just put them in place and give them a ride. Modules are loaded automatically by the booter.
  Don't mix modules, e.g. AMDGraphicsEnabler + nVidiaGraphicsEnabler. If you have a dual card situation,
  try one at a time. If you get in trouble, use GraphicsEnabler=n at the boot prompt, to disable the patch.
  These modules can be used in conjunction with Resolution.dylib (also has no dependencies on others).
  Avoid the ATiGraphicsEnabler.dylib module if you don't have a legacy card.
  The modules should work as the code "before" so, any different problematic behavior, can be considered "prof of crime".
  The jury will decide  ;D
  Jokes apart, any additional info about the device, even when feeding back success, is welcome; card's Name,
  device id and subsys id are enough, but if you can add a bit more, it will be helpful.

--   For missing device id's, card's Name, device id and subsys id are mandatory!!
  E.g. this is enough:

--- Quote ---AMD Radeon HD 6800M Series, PCI\VEN_1002&DEV_68A8&SUBSYS_050E1025&REV_00
--- End quote ---
  this is close to excellent. The more informative you are, the faster we can help and add the device.
Don't forget to check the "Useful links" below.

  Note: Why isn't my card's device id on the booter's code, you may ask?
           Mainly because it was taken the decision of only adding device id's, known to be or reported as working.
           But, but,... the device was on the older code?? >:(
           We have an "excuse" for that too :P The new code introduces the use of the subsys id, to sort
           identical device id's assembled by different OEM manufacturers. Since those are rarely reported
           on the PCI db's, or any were else, you get the picture..!?
--  For general help, all you need is patience and respect for the topic's priorities.
  Just don't ask dumb questions and someone other than me might feel tempted to help you;
  me, i'll simply delete the post!
  This topic will reside in the "DevTalk" area of the forum, only until i reach the goal mentioned above;
  if it proves useful, it will then be moved to the "General Discussion" area, otherwise most probably will be closed.

--  For all purposes, Chameleon GraphicsEnabler is not the solution for all the graphics problems you can face and
  neither am i! I'm just a noob trying to learn, and give back some of the knowledge and help
  i've received from the "community", so far.

  Don't post pre-compiled binaries; i'll provide all the binaries you'll need (more on that later). You're welcome
to compile and use the source if you have the knowledge, but keep it to your self, unless you have something
to contribute to the code, be it bug, improvement or new feature.

Useful links:
    ATI Radeon HD6000, HD5000 and HD4000 series support in Chameleon, Kabyl's topic for testing GE changes.
    (Collection) ATI Mobility Radeon HD - Tested ATIFramebuffer Solution, the name says it all.
    Editing custom personalities for ATI Radeon HD[45]xxx, don't get fooled by the HD[45]xx.
  PCI ID resources:
    GPU-Z, Everest (AIDA64 now), Windows "Device Manager", lspci command (both Mac & Linux), etc...
      to get the card's info. Any other suggestions are welcome.
    Developer.AMD/gpu_assets: Sept 2008, Jan 2009, July 2010, June 2011, etc..., just follow the pattern.***
    The PCI ID Repository, PCIDatabase, the names say it all.
  Hardware dedicated sites:
    e.g. NotebookCheck...

  Think that's enough to keep you busy for a while. Will post more stuff as i go, if needed. Suggestions are welcome.


- post list/s.

So here I am :) It would be great if you could put this card:
Chipset Model: Mobility Radeon X1600
Type: GPU
Bus: PCIe
PCIe Lane Width: x16
VRAM (Total): 256 MB
Vendor: ATI (0x1002)
Device ID: 0x71c5
Revision ID: 0x0000

Mod notes: legacy.

Motive for edit: add info.

Hi.. thanks for showing up, Darles.. was feeling lonely around here ;D
yep, going to take care of it right away... brb

Update: get the package on the first post. Contains just the "boot" file and modules; if you need the rest of the files get them from here; you shouldn't need them if you're using a recent build of the booter.
Use the ATiGraphicsEnabler module; this one uses the old code; still working on merging it with the new.
Put the module on /Extra/modules, the booter will load it automatically; if you need to disable the patch use GraphicsEnabler=n.
Don't use the module with "normal" chameleon and don't forget to remove other patches/kexts before you try this.
Will keep fingers crossed :)

No luck, if I try to boot with GraphicsEnabler=Yes I get this: and nothing more :/

Darles, there's two codes conflicting in the picture; you either used the 2 modules (use just the one i pointed, the other is for HD cards) or you used the module with the "normal" booter (use the one on the package) :)

Resuming, replace your current "boot" file by the one in the package and use just ATiGraphicsEnabler module.


[0] Message Index

[#] Next page

Go to full version