Jump to content

GMA X4500


aldo77
 Share

1,615 posts in this topic

Recommended Posts

Je vous remercie de l'avoir trouvé.

 

I'm taking a look and will post an analysis later.

 

-u

 

Here you are coldequation :D

 

ça va bien merci !

 

Exctrated from the ioreg i've posted earlier.

 

 

 

 

Cheers.

 

And please people stop spamming the thread with inappropriate questions ! We are looking for a solution to make X4500MHD works fully.... be sure you'll know it when it will work fine. :)

 

@ rubenmarques : If you don't know how to use this forum... please clean your mistakes at least :)

 

@ Tienneke : Try to add that inside natit plist in the "Unknow" dictionary (<dict>)

 

<key>revision-id</key>
 <data>
 AwAAAA==
 </data>

Link to comment
Share on other sites

IRC is a good idea. I won't be able to take part today (4th of July festivities-- after days of rain it is beautifully sunny right now!)

 

Some quick ideas off the top of my head:

AAPL,DisplayConfig - what is in here? What is known is that it needs to be set for mirror mode to work...

AAPL01,EDID - may need to be set, since it will be different for each laptop.

AAPL01,Pipe - wohoo! Could enable us to set an alternate pipe for the 4-series!

AAPL01,T0 - AAPL01,T6 - what are these???

IODeviceMemory - gives us access to memory addresses and size, I think

IOFBMemorySize - what is its relation to stolen memory?

 

As far as the remaining issues, Linux does detection of them (using code Intel authored, but similar code could be present in OSX).

 

So for an X3100:

 

(II) intel(0): Integrated Graphics Chipset: Intel® 965GM

(--) intel(0): Chipset: "965GM"

(--) intel(0): Linear framebuffer at 0xE0000000

(--) intel(0): IO registers at addr 0xF8100000

(II) intel(0): 2 display pipes available.

(==) intel(0): Using XAA for acceleration

(II) intel(0): detected 512 kB GTT.

(II) intel(0): detected 7676 kB stolen memory.

(==) intel(0): video overlay key set to 0x83e

 

Perhaps we can use Linux on a X3100, and get the addresses and settings we need from the machine. Then in OSX *on the same machine*, look into the X3100 ioregistryexplorer and see if we can find map the addresses and sizes to where they are in OSX. Then we can see if we can adjust for differences on the 4-series and test on a 4-series.

 

Does that sound stupid? You may argue that the sizes will be determined at kext load, but the BSD code #defines many of the sizes, depending on the chipset. Which helps us!

 

Off to enjoy the day,

-u

 

PLEASE DO NOT INSTALL THIS EXCEPT IF YOU DO KNOW WHAT YOU DO !!!! PLEASE

 

THERE IS 99% THIS WILL MESS UP YOUR DISPLAY.

 

All others a welcome to test it freely of course :(:):D

 

Maybe i can create an IRC channel so we can discuss live about GMA X4500 debugging ?

Link to comment
Share on other sites

Im just wondering since i have one why is the 4500 mhd more comp with osx then any of the other chipsets if i had to assume Id say it is closer to either the 950 or 3100 correct? or is it just normaly detected and i was wondering is there a way i can replace my boot file without being able to boot into osx my pcefi 10 seems to be conflicting with the patched dsdt and pcefi10 requires that you have dsdt in the root so i cant sudo rm /dsdt.aml

Link to comment
Share on other sites

Je vous remercie de l'avoir trouvé.

 

I'm taking a look and will post an analysis later.

 

-u

 

I'll try later this evening, just back from work..

 

Btw, could you explain why you add a certain string, or what it should do? I like to understand what a change does :D

 

On which IRC channel can we meet? And on which IRC server?

Link to comment
Share on other sites

Im just wondering since i have one why is the 4500 mhd more comp with osx then any of the other chipsets if i had to assume Id say it is closer to either the 950 or 3100 correct? or is it just normaly detected and i was wondering is there a way i can replace my boot file without being able to boot into osx my pcefi 10 seems to be conflicting with the patched dsdt and pcefi10 requires that you have dsdt in the root so i cant sudo rm /dsdt.aml

 

To remove your patched dsdt you should boot using the install dvd, mount your drive through the console, and then remove the dsdt.. Once again, that patched DSDT was made specially for my pc, DON'T TRY IT ON YOURS, as it'll give you problems for sure.. (I think I already posted that before.. Pls try to read the thread completely, and as said above, only try the experimental stuff if you know your way around the terminal and like getting your hands dirty.. For easier stuff, head over to the tutorial at genius bar, there I have explained in an easy matter how to get to native resolution (the only thing working now) in a very easy and straightforward way..

Link to comment
Share on other sites

To remove your patched dsdt you should boot using the install dvd, mount your drive through the console, and then remove the dsdt.. Once again, that patched DSDT was made specially for my pc, DON'T TRY IT ON YOURS, as it'll give you problems for sure.. (I think I already posted that before.. Pls try to read the thread completely, and as said above, only try the experimental stuff if you know your way around the terminal and like getting your hands dirty.. For easier stuff, head over to the tutorial at genius bar, there I have explained in an easy matter how to get to native resolution (the only thing working now) in a very easy and straightforward way..

i normaly am but the problem is that pcefi 10 requires you to have a patched dsdt so i was expecting if i messed up it would still boot and all but the dsdt conflicts with the bootloader and i made a copy of mine what would be the command to copy it from a mounted jumpdrive?

Link to comment
Share on other sites

look! my 4500HD works!, Install Kexts giving

Trauma! and running, I had to use-x but it works

Quartz Extreme not perfect but I will just QuartzGL

enable and I am going to restart at this time

 

MacOsx 10.5.7

 

Intel GMA X3100:

 

Modelo de chipset: GMA X3100

Tipo: Pantalla

Bus: Integrado

VRAM (total): 144 MB

Fabricante: Intel (0x8086)

ID del dispositivo: 0x2a42

ID de la revisión: 0x0007

Pantallas:

Pantalla:

Resolución: 1280 x 800

Profundidad: Color de 32 bits

Core Image: Software

Pantalla principal: Sí

Duplicado: Desactivado

En línea: Sí

Quartz Extreme: Incompatible

Integrado: Sí

Conector de pantalla:

Estado: No hay ninguna pantalla conectada

 

 

 

Natit is not installed

 

 

 

Sorry my english , I'm Learning English ;)

Link to comment
Share on other sites

mira instale todos los drivers que dio trauma, incluido Natit que no dio problemas , solamente puedo iniciar perfectamente con -x, normal me inicia me llega al fondo y no pasa nada puedo mover el mouse y ahi queda

 

 

Chameleon installed

 

 

mira install all drivers gave trauma, including Natit problems that did not, I can only start with a perfectly-x, I start normal I get to the bottom and nothing happens can I move the mouse and there is

 

 

IDT Audio please Help, I lost Sound in 10.5.7

 

in 10.5.6 i have Sound

Link to comment
Share on other sites

Coldequation,

 

Thanks for this analisys ! What i can tell is Apple has only used X3100 in Macbook3,1. See attached documents about MacBook and is X3100 :

 

- DSDT injections to match original MacBook3,1 IOreg.

- MacBook3,1 IOreg save.

- MacBook3,1 DSDT and SSDT Dumps.

- The script to quickly patch X3100 driver to X4500MHD ID's.

- A set of patched drivers, for testing purpose.

- A Natit to works with 950 / X3100 and hopefully X4500.

 

My thought, if the framebuffer runs fine without injection we may not need to use injection at all.

 

 

Thanks this worked i booted up with -f and my screen is 1366x768 and my sound works :)

 

picture2zew.th.png

Link to comment
Share on other sites

I've tried it once more with Coldequation instructions and i've tried the -f "kernal flag" but i can not come out the blue screen.

 

I hope soon we will get a working GMA 4500. All guys out there please keep the good work up and best of luck.

 

Regards,

Link to comment
Share on other sites

I've tried it once more with Coldequation instructions and i've tried the -f "kernal flag" but i can not come out the blue screen.

 

I hope soon we will get a working GMA 4500. All guys out there please keep the good work up and best of luck.

 

Regards,

 

 

me too

 

When I install I get the Blue screen the I boot with -s to remove the drivers\

Link to comment
Share on other sites

look! my 4500HD works!, Install Kexts giving

Trauma! and running, I had to use-x but it works

Quartz Extreme not perfect but I will just QuartzGL

enable and I am going to restart at this time

 

MacOsx 10.5.7

 

Intel GMA X3100:

 

Modelo de chipset: GMA X3100

Tipo: Pantalla

Bus: Integrado

VRAM (total): 144 MB

Fabricante: Intel (0x8086)

ID del dispositivo: 0x2a42

ID de la revisión: 0x0007

Pantallas:

Pantalla:

Resolución: 1280 x 800

Profundidad: Color de 32 bits

Core Image: Software

Pantalla principal: Sí

Duplicado: Desactivado

En línea: Sí

Quartz Extreme: Incompatible

Integrado: Sí

Conector de pantalla:

Estado: No hay ninguna pantalla conectada

Natit is not installed

Sorry my english , I'm Learning English :)

 

I'm sorry, you don't have qe/ci, just framebuffer device.. This means the resolution is right, but there is not yet hardware acceleration.

On another side, thanks for testing and confirming that your laptop already goes till there :rolleyes:

 

With or without Natit, I got a black screen after presenting the blue one, when the desktop should show up.

 

10.5.7 on Thinkpad T400

That's because, as said above, only the framebuffer works.. If you leave AppleIntelGMAX3100FB.kext in it's place and remove AppleIntelGMAX3100.kext, your pc will boot to normal graphic screen ;) Natit shouldn't interfere with the framebuffer workings :P

 

Thanks this worked i booted up with -f and my screen is 1366x768 and my sound works :D

 

picture2zew.th.png

Same as for rodro: you don't have QE/CI yet, but at least the resolution is right :P

 

 

Happy that it works for so many guys ;)

Link to comment
Share on other sites

hmmm.. I cannot seem to be able to access the irc channel? I get into the Server but no further. but not really a big deal.

 

but I am so confused.. because I tried to read everything to this point and I don't get what is going on because some people are talking about the X3100 and I want to know about the X4500.. are they similar? or can the same kekt or close to work for both??

 

I just got a new computer and I don't want to try osx until I feel like I should.. Especially seeing my monitors recommended is 1600x900

Link to comment
Share on other sites

hmmm.. I cannot seem to be able to access the irc channel? I get into the Server but no further. but not really a big deal.

 

but I am so confused.. because I tried to read everything to this point and I don't get what is going on because some people are talking about the X3100 and I want to know about the X4500.. are they similar? or can the same kekt or close to work for both??

 

I just got a new computer and I don't want to try osx until I feel like I should.. Especially seeing my monitors recommended is 1600x900

 

That's exactly what we try.. X3100 and X4500 seem to be very similar hardware wise, so we try to get the X3100 drivers to load for X4500.. The only thing we got working now is Framebuffer mode, what gives you native resolution (at least in the tested cases up till now..)

Link to comment
Share on other sites

For those who get a black screen, since the naming of the kexts I posted and the kexts trauma posted is different:

 

If you use my kexts, remove AppleIntelGMAX3100.kext

 

If you use Trauma's kexts, remove 2A42AppleIntelGMAX3100.kext

 

If you delete those kexts, you should be able to boot in normal mode using native resolution

Please only use kexts from one person, this is easier for us to debug in case there is a problem..

Link to comment
Share on other sites

Framebuffer working?

 

Tienneke, did I read you right, that the AppleIntelGMAX3100FB is working *and* not the AppleIntelGMAX3100 kext is working?

 

Can you confirm with ioreg? If true, that is an important piece of the puzzle.

 

Also, Tienneke, I have modified Trauma's patch script quite a bit, so that it does auto-detection of your installed 4500 card and patches the kexts. If you like, and you can confirm which kext I need to delete (AppleIntelGMAX3100FB or AppleIntelGMAX3100), I could make a version that will just fix the native resolution until we get 4500 working.

 

P.S. Is there something special I need to do-- I can't seem to attach files to my messages...

-u

 

That's because, as said above, only the framebuffer works.. If you leave AppleIntelGMAX3100FB.kext in it's place and remove AppleIntelGMAX3100.kext, your pc will boot to normal graphic screen :D Natit shouldn't interfere with the framebuffer workings :P
Link to comment
Share on other sites

Framebuffer working?

 

Tienneke, did I read you right, that the AppleIntelGMAX3100FB is working *and* not the AppleIntelGMAX3100 kext is working?

 

Can you confirm with ioreg? If true, that is an important piece of the puzzle.

 

Also, Tienneke, I have modified Trauma's patch script quite a bit, so that it does auto-detection of your installed 4500 card and patches the kexts. If you like, and you can confirm which kext I need to delete (AppleIntelGMAX3100FB or AppleIntelGMAX3100), I could make a version that will just fix the native resolution until we get 4500 working.

 

P.S. Is there something special I need to do-- I can't seem to attach files to my messages...

-u

 

I confirm that the AppleIntelGMAX3100.kext is not working, and AppleIntelGMAX3100FB.kext is working. If you delete AppleIntelGMAX3100.kext, you can boot into normal mode at native resolution (I do this since I modded the kexts..)

 

What do you mean about the native resolution fix? So that it removes the normal kext? That could be handy (that's just adding an rm -R command, right? :D )

 

and about attaching files: it seems you need to zip your files first, since they only accept a very small selection of extensions to be uploaded..

Link to comment
Share on other sites

Good, thanks for the confirmation. After Wimbledon, I will update my script and then try to upload. In the past I had tried zipping files, but no luck either...

 

When I finish the script, and after others test, could you modify your guide with the patch script to make it easier for noobs?

 

Thanks,

-u

 

I confirm that the AppleIntelGMAX3100.kext is not working, and AppleIntelGMAX3100FB.kext is working. If you delete AppleIntelGMAX3100.kext, you can boot into normal mode at native resolution (I do this since I modded the kexts..)

 

What do you mean about the native resolution fix? So that it removes the normal kext? That could be handy (that's just adding an rm -R command, right? :P )

 

and about attaching files: it seems you need to zip your files first, since they only accept a very small selection of extensions to be uploaded..

Link to comment
Share on other sites

Good, thanks for the confirmation. After Wimbledon, I will update my script and then try to upload. In the past I had tried zipping files, but no luck either...

 

When I finish the script, and after others test, could you modify your guide with the patch script to make it easier for noobs?

 

Thanks,

-u

 

np :P

 

There is one thing I was wondering: is there a way to see what keys get injected? I opened the driver in hex fiend, and I saw that the methods they use are all listed in the last part of it.. Maybe that may help you?

So is there a way of extracting the injection strings? (decompiling or something?)

 

maybe this thread can be kinda interesting if it would come to coding an own driver: http://www.insanelymac.com/forum/index.php?showtopic=156279

Link to comment
Share on other sites

At some point we may need to do some reverse engineering of the binary kext. That's tricky because to debug a kernel extension, you need two Macs (which I do have) connected via firewire. I've never done that before, and I know it will be time consuming. Anyway, I'll take a look with strings, hexfiend, etc to see what I can learn without debugging.

 

@CoreiPower - thanks for the support/well wishes. It's appreciated by all of us.

 

@mindphazer - I feel for Andy though. It was a tough call-- I wanted Roger to get the record, and I wanted Andy to win Wimbledon, at least once. It's a shame they couldn't have tied! Still, I think last year's final was even more amazing, but what a run over the last three years at Wimbledon.

 

np ;)

 

There is one thing I was wondering: is there a way to see what keys get injected? I opened the driver in hex fiend, and I saw that the methods they use are all listed in the last part of it.. Maybe that may help you?

So is there a way of extracting the injection strings? (decompiling or something?)

 

maybe this thread can be kinda interesting if it would come to coding an own driver: http://www.insanelymac.com/forum/index.php?showtopic=156279

 

Here's a modified version of Trauma's patch script, edited and renamed patch4500.bash.

 

I have zipped it up and attempted to attach it. I have not tested it extensively. Rather than patching a hard-coded device id, it looks up your machine's 4-series device id, and uses that. If you don't have a 4-series chip, it aborts.

 

You can force it, however, using the -force option.

 

Here is the help:

 

This script takes stock AppleIntelGMAX3100 kexts, copies them, and patches

the copies to include the device for your Intel 4-series as determined by

lspci. Optionally the device id can be passed via the -force option to this

script. If the -res option is passed, you should be able to boot in normal mode

using native resolution, but you will NOT get QE/CI when we figure that out.

 

NOTE: Your original kexts are not touched.

 

It is hoped that eventually this script will enable Quartz Extreme and Core Image

on machines that have Intel 4-series chipsets.

 

If you update your stock kexts, just run this script again

so that your patched drivers get updated as well.

This has been tested with stock 10.5.7 kexts.

 

Usage: patch4500.bash

-v: print version

-h: print help

-r: Tienneke native resolution fix

-f DEVID - patch with passed DEVID instead of lspci lookup

 

Example: patch4500.bash -vf 2e12

 

Please let me know if it works for you. If it tests out clean, I will ask Tienneke to add it to his Genius Bar topic.

 

-u

patch4500.bash.zip

Link to comment
Share on other sites

 Share

×
×
  • Create New...