Jump to content

Dual video cards?


asimovrobot
 Share

19 posts in this topic

Recommended Posts

Just wondering if anyone has played around with getting dual video cards to work. I am running JAS 10.4.8 with natit v02 on asus a8n-sli nforce4 mobo with XFX 7600GT dual DVI video card. When I was trying to get the 7600GT working to its full capabilities I originally had the 2nd video card in the machine. At that time I was getting dual display and res switching on the 7600GT and the system just pretty much ignored the 7100GS I had in the 2nd pcie slot. While trying to get the 7600GT working I removed the 7100GS just to be sure it was not getting in my way. Now that I have QE/CI running on the 7600GT I slipped the 7100GS back in and I get a kernel panic on startup.

 

Pre-QE/CI when I had the 7100GS in there it was just a black screen on the 3rd monitor which is OK(better than kernel panic anyway). When the system was ignoring the 7100GS I would have been missing all the geforce*.bundle files in the extensions folder(getting these files back where they belonged ended up being the key to the 7600GT). I played around a little bit just trying to insert the dev id for 7100GS into geforce.kext but didnt make any difference... still a kernel panic.

 

Would be fantastic if I could drive all 3 monitors but at the very least I would like to be able to make OSX ignore that 2nd video card again and still have QE/CI enabled on the 7600GT.

Link to comment
Share on other sites

I'm having problems with a 7950gx2 (already flashed to show correct memory) and maybe it's because system is loading two cards. I would like to tell system to ignore one of them and see what happens. Can this be done in natit? Could it load just one card and stop?

Link to comment
Share on other sites

  • 4 weeks later...
  • 6 months later...

I am currently working on a total bloody outrageous hack to give me tripple head... (then hopefully quad head)

 

I can boot with 3 cards installed...... and it only detects primary card, NATIT gives me dual monitors....

 

I can boot with only primary card... and macvidia drivers.... and no problems....

 

more than primary card.. plus macvidia drivers... = crash and burn... BUT... third head CLICKS ON to black screen when macvidia loads... I am closer....

 

God I wish I had two NATIT supported cards instead of the prehistoric stuff I'm working with.....

 

 

If anyone has an NV40 supported PCI card laying around unused.... I'd be interested in borrowing it for a bit or buying cheap.....

 

 

(Must.... Have...... More..... Resolution!)

 

booting -s....

 

Display@0 (AGP 6600GT) (2048x1536 + 2048x1536 via NATIT)

Display@4 (dual head PCI junk card)

Display@6 (single head PCI junkier card)

 

other stuff

Display@2 (onboard)

 

 

 

So.... getting there... farther than I've ever gotten so far.....

Link to comment
Share on other sites

I'm curious, are you just modifying Natit, or the Geforce kexts? I have two Natit supported ATI cards (2900XT and 1800GTO) and I'd like to help, but if what you're doing only relates to Nvidia cards, then I can't. Let me know.

 

I am currently working on a total bloody outrageous hack to give me tripple head... (then hopefully quad head)

 

I can boot with 3 cards installed...... and it only detects primary card, NATIT gives me dual monitors....

 

I can boot with only primary card... and macvidia drivers.... and no problems....

 

more than primary card.. plus macvidia drivers... = crash and burn... BUT... third head CLICKS ON to black screen when macvidia loads... I am closer....

 

God I wish I had two NATIT supported cards instead of the prehistoric stuff I'm working with.....

If anyone has an NV40 supported PCI card laying around unused.... I'd be interested in borrowing it for a bit or buying cheap.....

(Must.... Have...... More..... Resolution!)

 

booting -s....

 

Display@0 (AGP 6600GT) (2048x1536 + 2048x1536 via NATIT)

Display@4 (dual head PCI junk card)

Display@6 (single head PCI junkier card)

 

other stuff

Display@2 (onboard)

So.... getting there... farther than I've ever gotten so far.....

Link to comment
Share on other sites

Awesome.... more help would always help...

 

turns out I get 4 monitors showing up now in single user mode full boot....... but crashes at loginwindow when going to GUI....

 

OR i can get both cards showing up in GUI in system profiler..... but only primary card has monitors.....

 

can't seem to get 2nd card into GUI yet...

 

 

Card detection order DOES seem to make a difference....

 

basic version of my mod:

 

In Natit..... you have:

 

<key>IOKitPersonalities</key>

<dict>

<key>Natit</key>

<dict>

Lots of stuff

</dict>

</dict>

 

do a full IOPCIMatch with no wildcarding...

 

in my case, my two cards are 10de,f1 and 10de,0322... so the IOPCIMatch's are:

0x00f110de&0xffffffff

and

0x032210de&0xffffffff

 

SO.... we add another section of natit... so now it looks like:

 

 

<key>IOKitPersonalities</key>

<dict>

<key>Natit</key>

<dict>

Lots of stuff (with first IOPCIMatch)

</dict>

<key>Natit2</key>

<dict>

Lots of stuff (with second IOPCIMatch)

</dict>

</dict>

 

 

Then.... you have <string>NVDA,Display-A</string>

etc...

 

In first section... you have Display-A and Display-B

in second section for 2nd card, you have Display-C and Display-D

 

also... if you add:

<key>AAPL,slot-name</key>

<string>Slot-1</string>

 

it adds the slot number in system profiler when both cards show up... so I have Slot-1 for the AGP card... and Slot-3 for the FX5200 PCI card showing up....

 

if you keep @0, and @1 for both primary and secondary cards... I hang at loginwindow... but if you boot -s

then /sbin/mount -uw /

then sh /etc/rc

to full boot single user mode, then

ioreg -c IOPCIDevice | more

you can go look at the cards... and see what displays show up.....

then type: exit

to leave single user mode and boot fully into GUI... here I crash...

 

so I go back into natit and change @0 and @1 for secondary card to @2 and @3 (placeholders)

now I can fully boot into GUI, only primary card works... secondary card shows up in system profiler, doesn't show displays or video ram amount......

 

I believe I need a different NVCAP value for the FX5200 since its a dual VGA card, and if I set it as primary card in BIOS, and have Natit enable it first.... then I get dual monitors up to loginwindow... then primary monitor stays black, and secondary comes up with primary claiming "no display connected"...

 

I'm not exactly sure what the problem is now about getting the 2nd card through loginwindow.... but I'm still working on it...

 

 

Let me know what you find out in your testing and if I can help in any way...

 

I've also tried faking the 2nd card by adding a few other strings to natit for the 2nd display to get it to load proper driver, etc.... see if I can fake it past the next step or something... but so far no luck.

 

I would assume a similar approach would work with ATI cards, but I don't have any ATI cards that are supported by Natit or any of the like.... so it'll be a good learning experience.... maybe a fresh look on things will give us some more ideas.

Link to comment
Share on other sites

Bypass loginwindow by full booting single user mode... then running dock.app.....

 

 

still only 2 working displays.... but now both cards show up better... believe next step is to hardcode video ram amount for secondary card since it shows up as 2MB

 

Both cards now show up:

 

Displays:

display:

display:

 

 

have screenshots, but they're in .tiff since i got them with grab.app

Link to comment
Share on other sites

Ok, so I'm almost there. This is my Radeon X1800GTO as a secondary graphics card. I've used your method of showing them on different slots.

Picture5.png

 

I basically have two different Natit Kexts for each of my cards. I've named them NatitX1800.kext and NatitX2900.kext. I've got both of them to successfully load as well as ATY_Franklin.kext (Radeon 2900XT), ATY_Alopias.kext (Radeon X1800), ATIRadeonX1000.kext, and ATIRadeonX2000.kext. I'm basically there, I just need to figure out how to get the displays on the X1800 to be a third and fourth display.

 

I'll keep you posted if I advance some more.

 

Paul

Link to comment
Share on other sites

I'm very happy to see this topic, i'm trying since my first osx86 install to get my 2 7600GT cards to work on my hack.

For now I haven't managed to pass the loginwindow.app launch (kernel panic)

i have to unplug a card to boot osx, and put the second one back when i boot to windows.

I'm not interested in multiple displays, just not to plug or unplug a card

 

I tried to have natit and nvinject both at the same time, system boots with a single card, still kernel panic with 2.

 

I was surprised the system booted with both natit and nvinject kext installed (both of them detect card at boot)

I'll try later today to mod natit.kext as explained in this post and i'll comeback here to post results

Link to comment
Share on other sites

now that it shows up...

 

edit your config so its

0@Display-A

1@Display-B

 

then for second card:

0@Display-C

1@Display-D

 

and see if you get the 2nd card to work and come up....... or if you also hang at loginwindow like me...

 

if it hangs at loginwindow, bypass loginwindow with a single user mode full boot, then launch dock.app command is: /system/library/coreservices/dock.app/contents/macos/dock

 

then see if you get 4 working and showing up.... then I get:

Displays:

Display:

Display:

 

on both cards... but looking further, it doesn't detect the displays connected to the 2nd card.....

Link to comment
Share on other sites

I'm running Leopard, so I don't have the option to boot under single user mode. Though I haven't had a problem with getting past loginwindow.app. Also, each of my cards use a different Natit.kext. Display-C and Display-D are just names that show up in system-profiler. I don't think they are used for anything else.

Link to comment
Share on other sites

I tried to mod natit.kext to add a second section for my second card, the system won't boot

I don't even see the natit messages when booting with -v

 

i also tried to boot with -s and then run dock.app to bypass loginwindow, still no luck.

does the cards have to be differents ? i have Asus en7600GT x2

 

could you post please the content of your natit.kext so i could see where i am going wrong

 

here is mine :

 




CFBundleDevelopmentRegion
English
CFBundleExecutable
Natit
CFBundleIdentifier
com.dmweb.Natit
CFBundleInfoDictionaryVersion
6.0
CFBundleName
Natit
CFBundlePackageType
KEXT
CFBundleSignature
????
CFBundleVersion
1.0.0d1
IOKitPersonalities

	Natit

		CFBundleIdentifier
		com.dmweb.Natit
		IOClass
		com_dmweb_Natit
		IOMatchCategory
		IOFramebuffer
		IONameMatch
		display
		IOPCIMatch
		0x000010de&0x0000ffff
		IOProbeScore
		0
		IOProviderClass
		IOPCIDevice
		entriesToAdd

			@0,NVMT

			CgN/IEwtHAJ4BRoESAfQBWAGAABBBB0EIQQAAPDBQQcA
			AAEAAAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
			AAD//wAAAAAAAAAAAAABAAAAAAAAAA==

			@0,compatible
			NVDA,NVMac
			@0,device_type
			display
			@0,fboffset
			131072
			@0,name
			NVDA,Display-A
			@1,compatible
			NVDA,NVMac
			@1,device_type
			display
			@1,name
			NVDA,Display-B
			NVCAP

			BAABAAAAAwAMAAAAAAAACgAAAAA=

			device_type
			NVDA,Parent

	Natit2

		CFBundleIdentifier
		com.dmweb.Natit
		IOClass
		com_dmweb_Natit
		IOMatchCategory
		IOFramebuffer
		IONameMatch
		display
		IOPCIMatch
		0x000010de&0x0000ffff
		IOProbeScore
		0
		IOProviderClass
		IOPCIDevice
		entriesToAdd

			@2,NVMT

			CgN/IEwtHAJ4BRoESAfQBWAGAABBBB0EIQQAAPDBQQcA
			AAEAAAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
			AAD//wAAAAAAAAAAAAABAAAAAAAAAA==

			@2,compatible
			NVDA,NVMac
			@2,device_type
			display
			@2,fboffset
			131072
			@2,name
			NVDA,Display-C
			@3,compatible
			NVDA,NVMac
			@3,device_type
			display
			@3,name
			NVDA,Display-D
			NVCAP

			BAABAAAAAwAMAAAAAAAACgAAAAA=

			device_type
			NVDA,Parent



OSBundleLibraries

	com.apple.iokit.IOPCIFamily
	1.0.0b1
	com.apple.kernel.iokit
	6.0

OSBundleRequired
Safe Boot


 

I hope this'll help

Link to comment
Share on other sites

  • 2 weeks later...

Was there any progress on this topic? I've a setup with an ATI X1900XT PCIe as primary card, and a Geforce 5200FX PCI as secondary card. With Natit, I see both cards, but no displays connected to secondary card, and no video memory.

 

I've added a second Natit section to the Info.plist and renamed displays to Display-C and Display-D. I also removed all NVidia entries from the first Natit section, and all ATI stuff from the second one. I didn't experience any crashes, but only the two monitors on the primary card are working, the third monitor remains black.

 

My operating System is Leopard 10.5.0

 

Regards,

Diego

Link to comment
Share on other sites

I don't, but I don't think the problem is with the card. I am almost totally sure it's with the EFI info that Natit tries to inject. I checked my system log, and even though it's detecting both cards, loading ATY_Alopias (X1800),ATY_Franklin (HD2900), ATIRadeonX1000 and ATIRadeonX2000 kexts, I get a message saying Display-A not usable (I've tried it with Display-C for the second card as well and same error). I'd really like to see the ioreg of a Mac Pro with a Mac X1900XT and some other ATI card that is supported by Natit.

 

Do you know if anyone succeeded with a native mac video card as secondary card?
Link to comment
Share on other sites

Because of the issues I've been having with bios....

 

whatever card Bios has as primary graphics is the only card that actually works... AND must be loaded first...

 

 

I'm wondering if its a BIOS issue that you can't have AGP and PCI cards at the same time without some fancy driver handiwork....

 

I wish I had a PCIe board and some PCIe stuff to work with...

 

Another thing I'd like to look at is maybe see if someone has an old ATI Radeon 7000 mac edition PCI card...... and can throw that into a G4 tower or something and go see what the IOreg shows then..... see if it shows anything fancy with one card being AGP and the other being PCI....

 

we really need to see a few IOregs with dual card setups so we can see what the heck is going on there and how the OS is setting 1 card as primary and the other as secondary....

Link to comment
Share on other sites

I've trial and errored my way to a working NVCAP for PCI FX5200 with dual VGA connectors...

 

04000100 00000200 01000000 0000000A 00000000

 

BOTH VGA's work now... dualhead....

 

Now back to getting both cards working.......

 

(That NVCAP may also fix other VGA+VGA cards)

Link to comment
Share on other sites

 Share

×
×
  • Create New...