Jump to content

Dual 9800 GTX 512 Working in OSX86!


aqua-mac
 Share

165 posts in this topic

Recommended Posts

Been working on this for a while and I finally got it to work. Dual 9800 GTX 512 Graphics cards working in a hackintosh. I did it using GFX strings that I made for 2 cards. I could not get it to work with NVInject. Actually in the end, it was not that difficult when I thought about it logically. I wrote 2 input files individually for the two cards and their positions in the motherboard, then amalgamated the two input files together, then ran GFX strings.

 

Here she blows:

 

dualnv9800gtx.jpeg

 

This is what I did:

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>

<dict>

<key>@0,compatible</key>

<string>NVDA,NVMac</string>

<key>@0,device_type</key>

<string>display</string>

<key>@0,name</key>

<string>NVDA,Display-A</string>

<key>@1,compatible</key>

<string>NVDA,NVMac</string>

<key>@1,device_type</key>

<string>display</string>

<key>@1,name</key>

<string>NVDA,Display-B</string>

<key>@2,#adress-cells</key>

<string>0x01000000</string>

<key>@2,#size-cells</key>

<string>0x00000000</string>

<key>@2,compatible</key>

<string>NVDA,sensor-parent</string>

<key>@2,device_type</key>

<string>NVDA,gpu-diode</string>

<key>@2,hwctrl-params-version</key>

<string>0x02000000</string>

<key>@2,hwsensor-params-version</key>

<string>0x02000000</string>

<key>@2,name</key>

<string>sensor-parent</string>

<key>@2,reg</key>

<string>0x02000000</string>

<key>NVCAP</key>

<data>

BAAAAAAAAwAMAAAAAAAABwAAAAA=

</data>

<key>NVPM</key>

<data>

AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==

</data>

<key>VRAM,totalsize</key>

<data>

AAAAIA==

</data>

<key>device_type</key>

<string>NVDA,GeForce</string>

<key>model</key>

<string>NVIDIA GeForce 9800 GTX DDL</string>

<key>name</key>

<string>NVDA,Parent</string>

<key>rom-revision</key>

<string>3172a</string>

</dict>

<key>PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)</key>

<dict>

<key>@0,compatible</key>

<string>NVDA,NVMac</string>

<key>@0,device_type</key>

<string>display</string>

<key>@0,name</key>

<string>NVDA,Display-A</string>

<key>@1,compatible</key>

<string>NVDA,NVMac</string>

<key>@1,device_type</key>

<string>display</string>

<key>@1,name</key>

<string>NVDA,Display-B</string>

<key>@2,#adress-cells</key>

<string>0x01000000</string>

<key>@2,#size-cells</key>

<string>0x00000000</string>

<key>@2,compatible</key>

<string>NVDA,sensor-parent</string>

<key>@2,device_type</key>

<string>NVDA,gpu-diode</string>

<key>@2,hwctrl-params-version</key>

<string>0x02000000</string>

<key>@2,hwsensor-params-version</key>

<string>0x02000000</string>

<key>@2,name</key>

<string>sensor-parent</string>

<key>@2,reg</key>

<string>0x02000000</string>

<key>NVCAP</key>

<data>

BAAAAAAAAwAMAAAAAAAABwAAAAA=

</data>

<key>NVPM</key>

<data>

AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==

</data>

<key>VRAM,totalsize</key>

<data>

AAAAIA==

</data>

<key>device_type</key>

<string>NVDA,GeForce</string>

<key>model</key>

<string>NVIDIA GeForce 9800 GTX DDL</string>

<key>name</key>

<string>NVDA,Parent</string>

<key>rom-revision</key>

<string>3172a</string>

</dict>

</dict>

</plist>

 

and here is the output file for Dual 9800 GTX 512MB in a Asus P5K3 Deluxe Motherboard.:

 

980700000100000002000000c60300001500000002010c00d041030a000000000101060000010101

60000007fff040014000000400032002c006e0061006d00650000001100000073656e736f722d706

72656e74220000005600520041004d002c0074006f00740061006c00730069007a00650000000800

0000000002036000000400032002c00680077006300740072006c002d0070006100720061006d007

002d00760065007200730069006f006e00000008000000000000021c000000640065007600690063

065005f0074007900700065000000100000004e5644412c4765466f7263650e0000006e0061006d0

650000000f0000004e5644412c506172656e7422000000400030002c006400650076006900630065

05f00740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001

0000004e5649444941204765466f7263652039383030204754582044444c22000000400031002c00

400650076006900630065005f00740079007000650000000b000000646973706c617912000000400

32002c007200650067000000080000000000000222000000400032002c0064006500760069006300

5005f0074007900700065000000120000004e5644412c6770752d64696f646520000000400032002

0063006f006d00700061007400690062006c0065000000160000004e5644412c73656e736f722d70

172656e7422000000400032002c002300730069007a0065002d00630065006c006c0073000000080

00000000000020000000400031002c0063006f006d00700061007400690062006c00650000000e00

0004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412

446973706c61792d413a000000400032002c0068007700730065006e0073006f0072002d00700061

0720061006d0073002d00760065007200730069006f006e000000080000000000000226000000400

32002c0023006100640072006500730073002d00630065006c006c00730000000800000000000001

4000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000

00400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e56

d61631e00000072006f006d002d007200650076006900730069006f006e000000090000003331373

61100000004e00560043004100500000001800000004000000000003000c00000000000007000000

00e0000004e00560050004d000000200000000100000000000000000000000000000000000000000

000000000000c60300001500000002010c00d041030a0000000001010600001c0101060000007fff

40014000000400032002c006e0061006d00650000001100000073656e736f722d706172656e74220

00005600520041004d002c0074006f00740061006c00730069007a00650000000800000000000020

6000000400032002c00680077006300740072006c002d0070006100720061006d0073002d0076006

007200730069006f006e00000008000000000000021c0000006400650076006900630065005f0074

07900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f0

00004e5644412c506172656e7422000000400030002c006400650076006900630065005f00740079

07000650000000b000000646973706c6179100000006d006f00640065006c0000001f0000004e564

444941204765466f7263652039383030204754582044444c22000000400031002c00640065007600

900630065005f00740079007000650000000b000000646973706c617912000000400032002c00720

650067000000080000000000000222000000400032002c006400650076006900630065005f007400

900700065000000120000004e5644412c6770752d64696f646520000000400032002c0063006f006

00700061007400690062006c0065000000160000004e5644412c73656e736f722d706172656e7422

00000400032002c002300730069007a0065002d00630065006c006c0073000000080000000000000

20000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e564441

c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c6

792d413a000000400032002c0068007700730065006e0073006f0072002d0070006100720061006d

073002d00760065007200730069006f006e000000080000000000000226000000400032002c00230

6100640072006500730073002d00630065006c006c00730000000800000000000001140000004000

1002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002

0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e0000

072006f006d002d007200650076006900730069006f006e000000090000003331373261100000004

00560043004100500000001800000004000000000003000c00000000000007000000000e0000004e

0560050004d000000200000000100000000000000000000000000000000000000000000000000000

 

 

So 4 monitors anyone? It works fine with with an SLi bridge fitted too, so for all those who want to maintain their windows setup, without the tedious need to swap hardware every time they boot OSX, they can. :P

Link to comment
Share on other sites

Hi Netkas,

 

Great Utility GFX Strings. So glad this worked at last, fairly straightforward too. All I need now is 4 monitors, lol! Do you know if "Expansion Slot Utility" works with Xeon motherboards only?

Link to comment
Share on other sites

Great Job!!!!!!

 

So help a brother out; how does this differ from what I did? Any guidance is appreciated as always.

 

Keep up the good work!

 

Put each card in one at a time and run GFX strings to determine the correct info for the position of each card. Use the 512 mb download that I have put up that inputs the VRAM. (9800 GTX Thread)

 

My input file is below for you to have a look at. Let me know how you get on.

in.plist.zip

Link to comment
Share on other sites

Still haven't gotten it to work. I have the 10.5.3 Kexts. I edited the GFX strings separately so I know the paths are right. Then recreated the HEX file. It was different, but the results were not. Kernel panic right before switch to GUI.

 

Did you just copy paste two plist files together?

Link to comment
Share on other sites

Abethegreek,

 

Yes I copied and pasted the two files together with the card from the main PCIe slot at the top being the first in the list. I have a suggestion, take my input file, in text edit, overwrite the two:

 

PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)

 

and

 

PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)

 

items and the name of your card and give it a go. If that does not work, the only other thing I did was to combine the 10.5.2 and 10.5.3 opengl.framework.

 

Let me know how it goes.

 

Hi Macgirl,

 

Yes I did benchmark the cards, the bench in Open GL Viewer came in at over 4000 which blows away the 8800 GTX 768 I have. The scores in xbench were around 220 slightly higher than the 8800 GTX (210). I have yet to try Openmark. I will give this a go, but want to clear up my wiring first as I know this really heats up the cards and at the moment the 4 leads supplying power are lets say "slightly temporary".

 

I will sort it all out tonight and report back.

Link to comment
Share on other sites

I forced OSX to use the 8600 GTS open GL engine by making some changes to NVDAResman, but interestingly, the latest 10.5.3 drivers see it as that card when using Open GL Viewer. Open GL Viewer does not include information for the 9800 GTX as yet, interesting! Maybe there will yet be some changes to NV drivers in 10.5.3 still before it is finally released.

Link to comment
Share on other sites

I want to try the 10.5.3 kexts, I downloades the kext form the other 9800GTX thread, but I do not see a new OpenGL bundle, do they work with the 10.5.2 version?

 

 

EDIT:

 

I tested them, unfortunately the OGL performance decreased a lot.

 

I had 45 FPS before sleep display trick, 450 after, but with these kext I obtain 11 fps.

 

Did you have the 10.5.3 OGL bundle?

Link to comment
Share on other sites

Still no go. I just don't understand it. I tried all the kexts, edited and unedited. I tried both opengl packages. It simply won't work. The only thing I can think of is the 680i chipset. It seems it all comes down to NVDAResman.kext.

 

 

Any advice?

Link to comment
Share on other sites

Rrbcell,

 

I wish I had a 9800 GX2 to test, there maybe a chance for it to work, someone could use GFX strings on their motherboard with a 9800 GX2 installed to find the PCI address by following these instructions for both chips. If they then pasted their pci addresses over the input file I have provided for download above in post 5 it may just work. You will need the kexts in post 13 too!

Link to comment
Share on other sites

Macgirl,

 

Are you using Netkas's fixed kernel or the vanilla one? When I used Netkas's kernel, all my shutdown problems went away even with 8800 GTX. I am sure you would have tried this anyway. Is the 8400M GS on a laptop?

Link to comment
Share on other sites

I used various kernels, netkas' included none of them gives the ability to proper shudown or restart.

 

Yes the 8400M GS is in a Dell Laptop.

 

it is not very important since I almost do not make shutdown or restart frequently since Sleep is working fine I close the lid and it sleeps, and if I open the lid it wakes ant I can work immediately where booting can take up to 45 seconds (is not tha bad compared to the other OSes it has installed).

Link to comment
Share on other sites

I used various kernels, netkas' included none of them gives the ability to proper shudown or restart.

 

Yes the 8400M GS is in a Dell Laptop.

 

it is not very important since I almost do not make shutdown or restart frequently since Sleep is working fine I close the lid and it sleeps, and if I open the lid it wakes ant I can work immediately where booting can take up to 45 seconds (is not tha bad compared to the other OSes it has installed).

 

Did you try this ACPI Shutdown fix. Don't know if it will work.

AppleACPIPlatform.kext.zip

Link to comment
Share on other sites

make three cards kthx

 

lol

 

good to see it works, same way should work for gx2, jsut different pci addresses

I tried to apply this to my 7900 GX2.

./gfxutil -f display outputs this:

DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)

 

If I make s GFX string out of it and put it in com.boot.apple.plist i get this:

bild1ni8.png

Installing GeForce.kext & NVD* kexts crashes the system, whether I put my device-id 0x029310de or not.

 

My guessing is the problem is the DevicePath. Has anyone gotten this to work ?

Link to comment
Share on other sites

 Share

×
×
  • Create New...