GMA X4500

Posted 08 July 2009 - 09:03 PM

Tienneke

InsanelyMac Geek

Members

206 posts

Gender:Male

Location:Mechelen (Belgium)

Hello friends!

Thanks for all the work you are doing is very important for the community. I could solve the problem, solve it with the information described here. Above all thank you "Tienneke" who was the person who guided me and was very helpful despite my frustration of not knowing the language. Thank you very much "Tienneke! I must also thank the entire team that worked on this, complete the work under the guidance and comment that I "coldequation," Whose idea was download the file "patch4500 script (20090705.2)" and this can help you successfully install the patch. Finally after all this time I can have the proper resolution of my monitor and play movies in all formats for non-conventional "LEOPARD" as the format is. MKV and. RMVB. Formats that are difficult to reproduce in my previous resolution of 1024 * 768.

In name of the whole team, I thank you for posting your results here, it's great to feel the support of the community!

I'm really glad that it worked for you, since my moral has been dropping with all the non working cases..

@coldequation: I'm updating the tutorial right now, including your script and removing the need of using a hex-editor. It'll be up in 5 minutes or so..

Posted 08 July 2009 - 09:23 PM

chopped

InsanelyMac Protégé

Members

51 posts

Also, regarding the lenovo issues:

1. I agree with Tienneke, that it would be way cool if the 2a42AppleIntelGMAX3100.kext was indeed running along with the 2a42AppleIntelGMAX3100FB.kext (framebuffer). We need to verify whether it is true or not. If true, we may need to run some tests to figure out what makes that lenovo machine different (the developer tool reggie_se, which is part of the CHUD tools) could help us there.

2. Regarding the mouse pointer-- are there any settings in the lenovo bios that might help fix the problem?

so let me get this straight ( sorry for not reading the whole thread haha) most people cannot get both the 2a42AppleIntelGMAX3100.kext and 2a42AppleIntelGMAX3100FB.kext running , although i had both running, and now only one, the result is the same. my knowledge of the inner workings of extensions is limited, but from i understand, the non framebuffer kext is what enables QE/CI am I right or completely off base?

also, i think it would be beneficial if we left this thread for support for getting the res switch working, and created a new thread for development.

Posted 08 July 2009 - 09:35 PM

Tienneke

InsanelyMac Geek

Members

206 posts

Gender:Male

Location:Mechelen (Belgium)

so let me get this straight ( sorry for not reading the whole thread haha) most people cannot get both the 2a42AppleIntelGMAX3100.kext and 2a42AppleIntelGMAX3100FB.kext running , although i had both running, and now only one, the result is the same. my knowledge of the inner workings of extensions is limited, but from i understand, the non framebuffer kext is what enables QE/CI am I right or completely off base?also, i think it would be beneficial if we left this thread for support for getting the res switch working, and created a new thread for development.

Just the other way round, 2a42AppleIntelGMAX3100.kext enables QE/CI, whilst 2a42AppleIntelGMAX3100FB enables framebuffer. Framebuffer is actually a very low level driver, which enables basic functions like resolution switching. What we need to do is to be able to load the 2A42AppleIntslGMAX3100.kext, something that up till now just led to a blue screen. So what we'd need to know is if you have QE/CI if you have that kext in place (Check this through System Profiler, Graphics section). If it is enabled with both extensions in place, it would mean that it is indeed possible to get X4500 support by using injection/hexediting....

I actually would prefer to use my genius bar tutorial for support for resolution switching. I'm commited to update it every time there is a breakthrough, so you have the latest info in the first post..

Posted 08 July 2009 - 10:26 PM

enzobelmont

InsanelyMac Geek

Members

168 posts

if i delete AppleIntelGMAX3100FB, my system loads AppleIntelGMAX3100 and no Native res.
and my system profiler shows AppleIntelGMAX3100 loaded in extensions section
if i use both kexts, my sysprofiler does not show AppleIntelGMAX3100 loaded but i can get 1366x768

Posted 08 July 2009 - 10:50 PM

chopped

InsanelyMac Protégé

Members

51 posts

ok, so i reinstalled 2a42AppleIntelGMAX3100.kext and profiler now shows it as loaded. when booting in verbose mode, i saw something a bit different, it stated something along the lines of "family specific matching fails" am i correct to think that 2a42AppleIntelGMAX3100.kext needs to be further hex edited so it does not mismatch? The result with both of them loaded is the same as without 2a42AppleIntelGMAX3100.kext, i still get resolution switch, and i still get cursor artifacts. CI is software QE is not supported (same as without 2a42AppleIntelGMAX3100.kext loading)

also, is there a way to record all the messages displayed when booting in verbose mode? i think it may help figure out why its being loaded for me and not everyone else.

Posted 09 July 2009 - 11:20 AM

Very interesting, enzobelmont. Could you post the ioregs for both cases, as well as your system logs for both cases?

BTW, nice to see that many of you are getting native resolution.

On another note-- there may be hope for native 4500 support from Apple. The latest intel chips (codenamed Arrandale) will release in the fall, and they include, for the first time, a graphics core. It will probably be a version of the 4500 core. Apple will likely ship designs with these chips in January...

But that's all speculation and no reason not to continue experimenting.

@Tienneke-- thanks for updating your Genius Bar tutorial. You are doing all the hard work, supporting everyone. You're an example of the best side of the insanelymac community .

@qualchrone - check Tienneke's Genius Bar thread. Hopefully those who have it working have been posting their version of Leopard. AFAIK, it only works for 10.5.7.

@chopped - your system logs should have all the messages. You can start Console (in Utilities folder) and see the messages. You can cut/paste them and upload it. There are some other logs that maybe helpful, like the windowserver log.

if i delete AppleIntelGMAX3100FB, my system loads AppleIntelGMAX3100 and no Native res.and my system profiler shows AppleIntelGMAX3100 loaded in extensions sectionif i use both kexts, my sysprofiler does not show AppleIntelGMAX3100 loaded but i can get 1366x768

Posted 09 July 2009 - 01:37 PM

coldequation

InsanelyMac Geek

Members

118 posts

Thanks but don't bother. Since the Intel graphics uses shared memory, the addresses are likely to be different.

BTW, Slice shared some interesting info:

GA.plugin works from user space as interface (IOUserClient) between CoreGraphics and the main graphics kext-- AplleIntelGMAX3100.kext in the X3100's case.If there are no GA.plugin then QE is not supported.

GLDriver.bundle also works from user space as interface between OpenGL framework and same kextIf there are no GLDriver then MacOSX uses software renderer.

Both are hardware dependent and contain hardware specific codes. We have no sources of them and no Linux analogs. Both contain SSE3 codes! They are strongly optimized for better performance.

About VA and DVD I don't know. Probably they are used by CoreVideo and DVDPlayback frameworks.

Hi coldequation.

Is it necessary to generate the lspci logs from within Mac OS X? Some of us do have Linux setups (mine is built around the X3100), so we could pull in Linux versions of the lspci logs if you want.

Posted 09 July 2009 - 05:33 PM

paijho1

InsanelyMac Protégé

Just Joined

2 posts

did anyone got a problem with the mouse pointer? after patching with mod kext, my pointer is gone,, but sometimes become distorted about 5 cm box. sorry with my english.. but thanks for everyone that make this easier..

Posted 09 July 2009 - 05:35 PM

Tienneke

InsanelyMac Geek

Members

206 posts

Gender:Male

Location:Mechelen (Belgium)

did anyone got a problem with the mouse pointer? after patching with mod kext, my pointer is gone,, but sometimes become distorted about 5 cm box. sorry with my english.. but thanks for everyone that make this easier..

regard

You are (I believe) the 5th known case, and I don't know where it comes from. I believe it's an addressing issue.. What laptop do you have? (and what's your device ID?) Is there anything special about your hardware setup (like 2 graphics cards or so..)?

Posted 09 July 2009 - 05:49 PM

paijho1

InsanelyMac Protégé

Just Joined

2 posts

You are (I believe) the 5th known case, and I don't know where it comes from. I believe it's an addressing issue.. What laptop do you have? (and what's your device ID?) Is there anything special about your hardware setup (like 2 graphics cards or so..)?

Posted 09 July 2009 - 07:44 PM

I have a different idea that is worth trying, but it's something that would require Trauma and Tienneke's expertise, in that it requires patching the DSDT.

What we've tried in the past is to fool the AppleIntelGMAX3100 kexts into thinking they were built for a 4500 (by hexediting in the device id of 2A42).

But what if, instead, we just try to fool the AppleIntelGMAX3100 kexts into thinking that you have an X3100 installed? Has that been tried?

Do do that, we need to patch the device id of an X3100 (2A02 or 2A12) *onto* the 4500, using the DSDT. Now the 4500 is getting bound to GFX0 in the patched DSDT.dsl that Trauma uploaded (*note* it was specifically for Tienneke's computer-- no one else should use it!).

Posted 09 July 2009 - 08:06 PM

But what if, instead, we just try to fool the AppleIntelGMAX3100 kexts into thinking that you have an X3100 installed? Has that been tried?

Do do that, we need to patch the device id of an X3100 (2A02 or 2A12) *onto* the 4500, using the DSDT. Now the 4500 is getting bound to GFX0 in the patched DSDT.dsl that Trauma uploaded (*note* it was specifically for Tienneke's computer-- no one else should use it!).

I'll try it tomorrow, I'm going to sleep now, had a long day.. I'll post here tomorrow (that'll be in about 13 hours)

Posted 09 July 2009 - 10:14 PM

I have a different idea that is worth trying, but it's something that would require Trauma and Tienneke's expertise, in that it requires patching the DSDT.

What we've tried in the past is to fool the AppleIntelGMAX3100 kexts into thinking they were built for a 4500 (by hexediting in the device id of 2A42).

But what if, instead, we just try to fool the AppleIntelGMAX3100 kexts into thinking that you have an X3100 installed? Has that been tried?

Do do that, we need to patch the device id of an X3100 (2A02 or 2A12) *onto* the 4500, using the DSDT. Now the 4500 is getting bound to GFX0 in the patched DSDT.dsl that Trauma uploaded (*note* it was specifically for Tienneke's computer-- no one else should use it!).

I did try this method on my GMA 950 few weeks ago. What i can tell is:The device ID override trick works and changes are reflected both into IOREG and System Profiler.But, at least with GMA950 driver, it seems that the driver is not referring to the IOREG to get the hardware ID.

If you use patched drivers with your custom ID's and this override your GFX will look like the genuine Apple one.But if you use the vanilla driver with this device ID trick it will simply not works.

What i can tell because i have experienced it in many situation is (GFX/HDEF) :