InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   Leopard 10.5 (http://infinitemac.com/forumdisplay.php?f=85)
-   -   How can I develop Hackintosh Driver? for example ATI IGP and SB. (http://infinitemac.com/showthread.php?t=1480)

nexusmac 10-22-2008 03:48 PM

How can I develop Hackintosh Driver? for example ATI IGP (not solved) , SB700(solved)
 
Update : SB700 Southbridge Kext solved.
solution link is http://www.infinitemac.com/f5/sb700-...post17872.html.

ATI HD 3200 kext is still waiting solution man!

I am new with my hackintosh.

I want to learn how can I develop drivers for hackintosh Machines.

For example , I need and want to develop SB700 chipset driver for SATA support and ATI HD 3200 IGP.

I dont know how can I do and start to develop ?

can you share your knowledge and experience related to making drivers.

I am a computer programmer but I told you, I am new with my hackintosh, because of this please give detailed information, dont pass details. may be I dont know your terminology for Hackintosh.

nfoav8or 10-22-2008 08:30 PM

Quote:

Originally Posted by nexusmac (Post 17338)
I need and want to develop SB700 chipset driver for SATA support and ATI HD 3200 IGP... please give detailed information, dont pass details. may be I dont know your terminology for Hackintosh.

The first thing to know about drivers is that they are named kexts (as in kernel extensions) and are located in the /System/Library/Extensions/ folder. When you boot up your OS, the computer doesn't need to look through all of these, though, because it uses a mkext file by caching the necessary kexts together and using this information to allow for hardware detection. One way to bypass this is to use ( -f ) as a boot flag (of course without the ( )'s in there). This is a forced sort of boot in that it forces the OS to bypass the mkext and actually look in the Extensions folder. Proper permissions for the kexts must be set by invoking a Terminal command:
Code:

sudo chmod -R 755 /System/Library/Extensions/
sudo chown -R root:wheel /System/Library/Extensions/

(you can also do this with another shorter set up commands)
Code:

sudo -s
cd /System/Library/Extensions/
chmod -R 755 * && chown -R root:wheel *

after this you typically want to boot using ( -f ) and this will recache your kexts into the mkext and allow you to boot normally next time.

Now onto the Kernel Extensions... if you ctrl-click (or right click) on a kext file in the Extensions folder you will see an option for "show contents"... have a look through these contents and you'll find some .plist files. These are a big portion of the kexts as they include Device IDs (more on how to find your own can be found in the forum) which allow the kexts to find your hardware allow it to interact with the OS.

I use the Apple Developer website to learn about this stuff and I would suggest you look in to it as well. Its a big help in understanding how to make a proper kext. Just realize it is going to take a while to read through everything. (I'm not done yet either)

as for SB700 kexts, those can be found throughout the forum and at other sites. There has been a limited ability to use them though unless you can match it perfectly with your system.


by any chance when you said IGP did you mean AGP? I ran across these at one point but I don't remember where. I'll keep looking.

FirstHackTosh 10-22-2008 09:21 PM

I think he mean the onboard mainboard graphic.

kexts for the HD3200 would be sweet :-)
QE + CI enabled :-)

PingunZ 10-22-2008 10:39 PM

That's a very complete and helpful reply nfoav8or, this should be added to the wiki (how mac drivers work)!

nexusmac 10-30-2008 06:21 PM

firstly, nfoav8or , thanks a lot for information.

Quote:

I use the Apple Developer website to learn about this stuff and I would suggest you look in to it as well. Its a big help in understanding how to make a proper kext. Just realize it is going to take a while to read through everything. (I'm not done yet either)
i need to ask which link that you are using on Apple Developer website , I mean which issues are important to develop driver related to kexts.

if you give advise about apple website , it can be beneficial.

secondly, IGP means Integrated Graphic Card, I need to have kext file to run my ATI hd 3200 IGP. do you have any knowledge about it?

Thanks for help again,nfoav8or

have a great day.

nfoav8or 10-31-2008 02:07 AM

Ahh.. haha. sorry about that. I didn't know if it was just a typo. I've never seen that acronym before (or at least paid attention to it to understand its meaning)... I've only know the "built-in" video chipsets...

well the same applies as I replied to earlier.

I need to first interject that unless your board specifically tell you that its a good IGP... its probably not. Most boards come with great abilities but they typically leave the high-end capabilities to the PCI-E/PCI cards.

http://developer.apple.com/reference...ging-date.html
I think this is the best place to start for what you want to do. Hope it helps.

nexusmac 10-31-2008 01:04 PM

I dont think or expect anything more than built-in Graphic card has it.

I just think that the ATI HD 3200 built-in GP must be better than HD 2600 AGP or PCI-E ?

I dont expect getting better results like Nvidia 9600 or 9800 GT.

just show better resolution such as 1440x900 and play games normally.

i think ,in this case built-in will provide something.

thanks for starting link and I want to ask for developing Built-in chipset kext, which kext I should look to modify. in fact I want to create common kext to run all built-in chipset Graphic cards.

thanks in advance, nfoav8or.

nfoav8or 10-31-2008 05:06 PM

to see what you are using as the graphics kernel extension right now, run kextstat in Terminal to view a list. You'll need to sort through these to figure out which is used for the graphics... however, it may be that your system isn't using an extension if it is giving you a single display mode with no supported other options and graphics. For this, we would need to look into finding out what kind of default graphics extension we could alter in order to place your device ID in and play around a bit. (note: adding a device ID to a known graphics Extension will not hurt the individual Extension if it isn't supporting the hardware in the end as long as you have the correct permissions on the file.)

Let me know how the journey goes.

shibirian 11-03-2008 02:53 PM

Sounds like a great idea of yours, so I wish you the best with your endeavours out of pure selfishness, 'cause I got the same Mobo like yours. ;)

So, if you need some further testers for your kext(s), just drop me a line, I'll be more than willing to help! :)

nexusmac 11-03-2008 07:01 PM

When I created kext , I will distribute to everyone.
I have added you as tester:) thanks for future contribution:)

LawlessPPC 11-03-2008 07:53 PM

good luck the more devs the better

nexusmac 11-03-2008 08:34 PM

thanks I hope I can do something.
I am planing to create my distro maybe you can help me for kexts:) to support all hardware.

nexusmac 11-04-2008 05:54 PM

1 Attachment(s)
Hello nfoav8or, it is me again:)

I run kextstat in terminal and get the result.

the result is attached file.

and know what can I do?

I also found this topic to develop open ATI drivers.

http://www.insanelymac.com/lofiversi.../t96664-0.html

in this case, what can it be the next step:)

nfoav8or 11-10-2008 10:17 PM

I'm still trying to follow up with all of this. I know there are a lot of people out there with good on board video who don't want to add a card to their system because they shouldn't need to. I'll keep plugging away at this. keep my posted if you find anything else that might help us out. Good luck nexusmac.

nexusmac 11-11-2008 02:13 AM

thanks for help, but I didnt understand anything from kextstat result, I was expecting help for kextstat result to understand and determine what is the next step.

thanks for help

DaveGeorge 11-18-2008 12:51 PM

Any news regarding HD3200 support? I am really hoping for this as my setup is a laptop and I can't get another gfx card...

Is there something with this card that makes it hard to support?

nfoav8or 11-19-2008 07:34 AM

not so much hard to support, but hard to CREATE solutions for. I don't have this IGP so it makes it that much harder to make sure I find out just what is necessary to do it. I would need more feedback on device ID's, etc. from people who have them to get a good start.

nexusmac 11-19-2008 11:11 AM

nfoav8or, I sent you kextstat result. and What can I do next?

I have the hardwares and I have no idea to develop the driver , I looked the developer web site but it seems so irrelative. can you show the road to achieve the problem.

In fact , I wonder how netkas do this and other people.

can you share the knowledge about it. thanks in advance

DaveGeorge 11-19-2008 12:36 PM

nfoav8or: I'm willing to provide you with all info I possible can, just point me towards the right direction on where to finde deviceID and other info.. :)

nexusmac 11-19-2008 04:15 PM

I couldnt understand this? device id must be 9610x1002. what else do we need?

nfoav8or 11-20-2008 07:13 PM

well the only thing I have to go on right now is the kernel extension for the Onboard Display. I am working on making this editable for personal devIDs. This is probably going down the wrong road though because ATI and NVidia are different with this.

I'll keep digging but now I'm off to work.

nexusmac 11-20-2008 08:17 PM

How can I do the same thing with you can you open my mind?
Thanks for work.

nfoav8or 11-21-2008 04:01 AM

well I think for starters you can grab some of the open source material from the site you pointed out earlier and just start messing with them. edit the plist files and inject the device IDs in... keep in mind this may not work... also from earlier
Quote:

I couldnt understand this? device id must be 9610x1002. what else do we need?
this would be placed in as "0x10029610"

nexusmac 11-21-2008 11:16 PM

I edited plist files and deviceid adding is not solution for kext. and I know that we can express driver ids in different ways.like 0x96101002 and I read a document about it and I dont remember the otherways , If I can find the document then I can share it.

Ali C. 11-22-2008 06:04 AM

Can I drop in on the beta testing? HD 3200 on GA-MA78GM-S2H, also device ID 9610.
Good luck. A lot of Gigabyte board owners will thank you, myself included.:)

nexusmac 11-22-2008 11:17 AM

I hope we will achieve! then all AMD lovers can thank :)

DaveGeorge 11-22-2008 03:26 PM

Unfortunatly I had to return my laptop to the store yesterday due to a hardware failure. I was offered a new computer and this time I went with a intel setup, so I'm afraid I can no longer be of any help.

But I wish you the best of luck, and I hope you'll get that nasty HD3200 card working soon ;)

Ali C. 11-24-2008 02:16 AM

A quick tip for you if it helps-Supposedly (I'm not 100% sure about it), the HD 3200 is a stripped down version of the HD 2400 PCIe card. If this is true, you may be able to use a 2400 driver as a starting point.

nfoav8or 11-24-2008 07:19 AM

hmmm... I'll have to do some checking on that but it may be a good place to look into if it is true.

@ nexusmac and others who have the HD 3200... try plugging the devID into a kext fit for the 2400 and let me know how it pans out. Sorry I don't have this GFX setup so I can't do it myself.

nfoav8or 11-25-2008 07:28 PM

if the 2400 is a good place to start editing, here is a link that will be helpful:
ATI Radeon HD pkg installers

Once again, sorry I am unable to do much in the way of testing these... I don't have this kind of hardware so I am simply hoping to start pointing people in the right direction to get this done for their hardware (and hopefully they can explain what they did to get it working so we can put together some "fixes").

Ali C. 11-25-2008 10:49 PM

Hmm, there's a DVI problem with the HD 2400 driver. And I tried that one (and put the device ID where instructed) and got no picture, even in VGA. :(
Maybe it can be edited to work. *crosses fingers*
EDIT: The "Radeon HD for AMD" package also contains a 2400 driver and I haven't tried it yet. I'll try tweaking the device IDs within that package and let you know what I get out of it. Wish me luck.

nfoav8or 11-26-2008 04:07 AM

To those posting in this thread:

please post your system specs in your account signature so we can all see what is being used to test. Thanks.

Ali C. 11-26-2008 11:46 PM

OK, specs below...
EDIT: Oye vey! I just read that the HD 3200 is actually *much* closer to the 3600 than the 2400.

Radiance 12-19-2008 03:28 PM

I've tried using the kexts for the 2400, on the HD3200 without succes.

FirstHackTosh 12-25-2008 07:12 PM

What's about the open source Linux driver from ATi?

nexusmac 12-26-2008 08:29 AM

I dont have time to look at but I will look at also Freebsd driver and other linux drivers.

iisevenii 01-01-2009 07:39 AM

count me in
 
I have the same IGP in my HP dv7-1130us, chipset is rs780m (will post a link w/ full specs later..). I am also a developer and work as a PC/mac tech. I can be of assistance in beta testing for sure, and hopefully w/the coding as well. I am new to the osx86 scene but have been spending alot of time playing w/kext's, so far w/little success but a I am learning a lot. Have been running Kalyway for about a week or so but will be hopefully switching over to Zephyroth's release soon enough. Let me know how I can be of assistance.

Taken from system information in vista:
Code:

System Information report written at: 12/31/08 04:04:38
System Name: SEVENS-LAPTOP
[Display]

Item        Value       
Name        ATI Radeon HD 3200 Graphics       
PNP Device ID        PCI\VEN_1002&DEV_9612&SUBSYS_30FC103C&REV_00\4&1D67983E&0&2808       
Adapter Type        ATI Radeon HD 3200 Graphics (0x9612), ATI Technologies Inc. compatible       
Adapter Description        ATI Radeon HD 3200 Graphics       
Adapter RAM        256.00 MB (268,435,456 bytes)       
Installed Drivers        atidxx32.dll,atidxx64,atiumdag.dll,atiumdva.dat,atiumd64,atiumd6a,atitmm64       
Driver Version        7.01.01.747       
INF File        oem3.inf (ati2mtag_RS780M section)       
Color Planes        Not Available       
Color Table Entries        4294967296       
Resolution        1440 x 900 x 59 hertz       
Bits/Pixel        32       
Memory Address        0xC0000000-0xDFFFFFFF       
I/O Port        0x00007000-0x00007FFF       
Memory Address        0xD2400000-0xD240FFFF       
Memory Address        0xD2300000-0xD24FFFFF       
IRQ Channel        IRQ 4294967294       
I/O Port        0x000003B0-0x000003BB       
I/O Port        0x000003C0-0x000003DF       
Memory Address        0xA0000-0xBFFFF       
Driver        c:\windows\system32\drivers\atikmdag.sys (7.1.1.747, 3.39 MB (3,552,768 bytes), 5/21/2008 10:35 AM)

I am limited in the amount of time I can devote to this project because of my work schedule, but I am very eager to get all the hardware working from this chipset/IGP asap.

Ali C. 01-05-2009 03:14 AM

Any word on how this is going? I'm going to end up needing a new video card soon. 4:3 on 16:9 monitor=me no likey. I'm hanging on to a thread of hope though.

Chaoticgod 01-05-2009 04:02 PM

Hey

Adding the following lines to:

/Library/Preferences/SystemConfiguration/com.apple.Boot.plist

<key>Graphics Mode</key>
<string>1600x1200x32</string>

Should give you a higher resolution and not just the 1024x768 res. Try with a widescreen res..

Works for me.

lanceomni 01-05-2009 04:17 PM

@DaveGeorge
I would download DPCI Manager here: http://duddie.kazzuya.com/proj/DPCIManager_01.zip This tool allows you to find the Vendor & Device IDs for devices.

It will show you something like this:

http://img134.imageshack.us/img134/6164/dpciev5.png

For example the numbers on the left in the first column are the Vendor IDs and the numbers on the right in the first column are the Device ID. Find your wireless card's vendor & device IDs

FirstHackTosh 01-05-2009 04:57 PM

The highest resolution I can get are "1450x1050" :-(

samjoandco 03-19-2009 04:50 PM

Quote:

Originally Posted by FirstHackTosh (Post 20489)
The highest resolution I can get are "1450x1050" :-(

I presume you have hd3200 driver. can you tell me how you got this resolution ?
which kext was required apart from editing the plist.boot file?
are there any other issues like mouse tearing etc?

FirstHackTosh 03-19-2009 06:24 PM

No, I only usw PCwiz Tool

samjoandco 03-19-2009 07:57 PM

Quote:

Originally Posted by FirstHackTosh (Post 23747)
No, I only usw PCwiz Tool

FirstHackTosh Thanks for replying!

I got it working, no issues on display side.
Now I need to install the Atheros 5007 and AZalia Audio on 10.5.4 LEV4AllV1 install.

codecrazy 03-22-2009 07:57 PM

Did you use osx86tools? I tried using its gfx string utility and its EFI string editor to change my resolution. Neither of them worked. What did you do?

drxander 04-05-2009 02:14 AM

Quote:

Originally Posted by codecrazy (Post 23848)
Did you use osx86tools? I tried using its gfx string utility and its EFI string editor to change my resolution. Neither of them worked. What did you do?


i use "graphics mode"="1280x1024x32" and i get a good res. i have a 22" monitor and its fine for me... i think it wont kill me to use it like this until any driver available...

Ali C. 04-05-2009 06:40 AM

Trouble is, the command line trick only works for fullscreen resolutions. If you're stuck with a widescreen you're SOL.
I got a happily humming, fully supported 3650 these days, but if something gets going with this I can always revert back to test a beta driver should one turn up.
Continued good luck to all still on this.

rraallvv 01-28-2013 04:45 AM

I'm interested too! Has anyone got a driver?