aqua-mac Posted April 23, 2008 Share Posted April 23, 2008 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: 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. Link to comment Share on other sites More sharing options...
netkas Posted April 23, 2008 Share Posted April 23, 2008 make three cards kthx lol good to see it works, same way should work for gx2, jsut different pci addresses Link to comment Share on other sites More sharing options...
aqua-mac Posted April 23, 2008 Author Share Posted April 23, 2008 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 More sharing options...
AbetheGeek Posted April 23, 2008 Share Posted April 23, 2008 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! Link to comment Share on other sites More sharing options...
aqua-mac Posted April 23, 2008 Author Share Posted April 23, 2008 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 More sharing options...
AbetheGeek Posted April 23, 2008 Share Posted April 23, 2008 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 More sharing options...
macgirl Posted April 23, 2008 Share Posted April 23, 2008 You always have good surprises, aqua-mac Great! Did you bench your cards BTW? Link to comment Share on other sites More sharing options...
aqua-mac Posted April 24, 2008 Author Share Posted April 24, 2008 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 More sharing options...
macgirl Posted April 24, 2008 Share Posted April 24, 2008 So basically you modded the 8600 OGL engine? Link to comment Share on other sites More sharing options...
aqua-mac Posted April 24, 2008 Author Share Posted April 24, 2008 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 More sharing options...
aqua-mac Posted April 24, 2008 Author Share Posted April 24, 2008 Here is the openmark test with 2 x 9800 GTX's in the system using the 8600 GTS open GL engine: Link to comment Share on other sites More sharing options...
macgirl Posted April 25, 2008 Share Posted April 25, 2008 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 More sharing options...
aqua-mac Posted April 25, 2008 Author Share Posted April 25, 2008 Macgirl, Try THESE latest kexts! Link to comment Share on other sites More sharing options...
AbetheGeek Posted April 25, 2008 Share Posted April 25, 2008 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 More sharing options...
Rgbcell Posted April 25, 2008 Share Posted April 25, 2008 Great Job! you are hero. What are you think about 9800gx2 ? i guess you can woking it. Please see your good job again. Link to comment Share on other sites More sharing options...
aqua-mac Posted April 25, 2008 Author Share Posted April 25, 2008 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 More sharing options...
macgirl Posted April 25, 2008 Share Posted April 25, 2008 aqua-mac I tried the kext from post 13, still the same performance and did not fix the restart/shutdown issue Thanks anyway Link to comment Share on other sites More sharing options...
aqua-mac Posted April 26, 2008 Author Share Posted April 26, 2008 Thats a shame Macgirl, what card were you using them with? Link to comment Share on other sites More sharing options...
macgirl Posted April 26, 2008 Share Posted April 26, 2008 a 8400M GS. I will try with my 6600 but with that I have no performance problems or even restart/shutdown issues. Link to comment Share on other sites More sharing options...
aqua-mac Posted April 26, 2008 Author Share Posted April 26, 2008 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 More sharing options...
macgirl Posted April 26, 2008 Share Posted April 26, 2008 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 More sharing options...
aqua-mac Posted April 26, 2008 Author Share Posted April 26, 2008 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 More sharing options...
macgirl Posted April 27, 2008 Share Posted April 27, 2008 Thank you very much aqua-mac, just tested, didn't work Link to comment Share on other sites More sharing options...
Zandig Posted April 28, 2008 Share Posted April 28, 2008 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: 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 More sharing options...
macgirl Posted April 29, 2008 Share Posted April 29, 2008 There are several gfx strings for 7900 cards, but don't know if there are for GX2. check the netkas forums Link to comment Share on other sites More sharing options...
Recommended Posts