Rammjet Posted December 10, 2006 Share Posted December 10, 2006 (edited) How To Get Your Nvidia GeForce Video Card Working with QE/CI - maybe Edit: I now have a 7600GS Nvidia card, so I have tried this and it works. I have QE/CI and spanning across two monitors. My device string is 0x039210de and I added this to the GeForce.kext, the NVDAResman.kext and the NVDANV40Hal.kext. None of these had an existing string inside that would handle my device id 0x0392. I placed the three kexts I modified into the Extensions folder along with all of the other GeForce* files. I did not place the other NVDANVxxHal.kext's into the Extensions folder. Then I dropped my Natit kext into the Extensions folder. I used the Natit_Dual_v0.01 found here. I first tried the Natit_Dual_v0.02, but it crashed when I connected the second monitor. After adding all of the files, I repaired permissions and removed the kext caches and rebooted. The following is purely my observation of successful use of Titan and Natit with Nvidia cards. Forum member spanakorizo has worked hard to determine the basic process. I am trying to extend it to other cards and clear up some of the issues. If successful, you should have full resolution and QE/CI. Need: - Nvidia GeForce video card with 256 MB VRAM or less - a version of Titan or Natit kext - device id of your video card - 10.4.8 with new 8.8.1 kernel (newest versions are better for this) .... also .... - Possibly need to delete/move AGPGart if using Natit. - For SSE2, probably need to add OpenGL.framework from Apple Intel 10.4.8 Combo Update Put your device id into these three kexts: - GeForce.kext - NVDAResman.kext - IONDRVSupport.kext Put your device id into one of these kexts depending upon your card: older cards NVDANV10Hal.kext (see note) 4xxx cards NVDANV20Hal.kext (see note) 5xxx cards NVDANV30Hal.kext 6xxx cards NVDANV40Hal.kext 7xxx cards NVDANV40Hal.kext Note : np_ feels that NVDANV10Hal.kext and NVDANV20Hal.kext are "stubs" and will not provide sufficient function to make this work. Try it at your own risk. To accomplish all of this: - Drop your Titan or Natit kext into the /System/Library/Extensions folder. - Edit the kexts and clean up as follows. - Go to Terminal and type: cd /System/Library sudo rm -rf Extensions.mkext Extensions.kextcache (-- give password) cd Extensions sudo nano GeForce.kext/Contents/Info.plist (-- edit the entire string <string>0x000010de&0x0000ffff ... </string> down to <string>0xNNNN10de</string> where NNNN is your device id) (-- press Control-O to save) (-- press <Enter> to accept file name) (-- press Control-X to exit) (-- repeat "sudo nano" commands above for NVDAResman.kext) (-- repeat "sudo nano" commands above for NVDANVxxHal.kext where xx is value of your particular kext from table above) sudo chown -Rf root:wheel GeForce* NVDA* Titan* Natit* sudo chmod -Rf 755 GeForce* NVDA* Titan* Natit* diskutil repairPermissions / - Then reboot. See whether it works for you. Provide feedback in this thread. If major errors or improvements are found, I will update the above. Edited December 22, 2006 by Rammjet Link to comment Share on other sites More sharing options...
joe75 Posted December 10, 2006 Share Posted December 10, 2006 I can confirm it worked for my 5700 with Titan Link to comment Share on other sites More sharing options...
my1stmacisaHACK Posted December 10, 2006 Share Posted December 10, 2006 can wer use the natit installer or we should use the kext? and wer can i get he latest kext? thanks a lot... Link to comment Share on other sites More sharing options...
Rammjet Posted December 10, 2006 Author Share Posted December 10, 2006 can wer use the natit installer or we should use the kext? I don't know because I don't know what is inside the installer. When I get a chance, I might open it and see. Followup: probably OK, except it also adds an OpenGL.framework. I don't know what version it is or if it will cause problems or make things better. Installer and wer can i get he latest kext? I believe here - use one of the first two in that post. Link to comment Share on other sites More sharing options...
my1stmacisaHACK Posted December 10, 2006 Share Posted December 10, 2006 tnx ramjet!! gonna try it this 1 on my mx 4000.. hope it works crisscrossing my fingers!! wait.. my gforce mx 4000 belongs to "4xxx cards NVDANV20Hal.kext" right? Link to comment Share on other sites More sharing options...
Rammjet Posted December 10, 2006 Author Share Posted December 10, 2006 From what I can tell, "MX 4000" belongs in NVDA10Hal.kext because it is type "NV18", but you may have to try 20 if it doesn't work. Link to comment Share on other sites More sharing options...
my1stmacisaHACK Posted December 10, 2006 Share Posted December 10, 2006 kk ramjet sir... trying it now!! please pray for me!!! how come i dont have this 2 kext? (-- repeat "sudo nano" commands above for NVDAResman.kext)(-- repeat "sudo nano" commands above for NVDANVxxHal.kext Link to comment Share on other sites More sharing options...
Rammjet Posted December 10, 2006 Author Share Posted December 10, 2006 how come i dont have this 2 kext? Is it possible that in past playing around they got moved? Remember, instead of "NVDANVxxHal.kext", you must replace the "xx" with the correct value of 10, 20, 30, etc. And in a previous posting, I said to look for NVDANV10Hal.kext. You should have all 5 of these kexts: NVDAResman.kext NVDANV40Hal.kext NVDANV30Hal.kext NVDANV20Hal.kext NVDANV10Hal.kext Link to comment Share on other sites More sharing options...
Xopek Posted December 10, 2006 Share Posted December 10, 2006 Where in info.plist of kext files I myst put device ID? Here is myne GeForce code: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>English</string> <key>CFBundleExecutable</key> <string>GeForce</string> <key>CFBundleGetInfoString</key> <string>GeForce 1.4.40.4 (8.6.0f1)</string> <key>CFBundleIdentifier</key> <string>com.apple.GeForce</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> <string>NVIDIA GeForce Kernel Extension</string> <key>CFBundlePackageType</key> <string>KEXT</string> <key>CFBundleShortVersionString</key> <string>1.4.40</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>4.4.0</string> <key>IOKitPersonalities</key> <dict> <key>GeForce</key> <dict> <key>CFBundleIdentifier</key> <string>com.apple.GeForce</string> <key>IOCFPlugInTypes</key> <dict> <key>ACCF0000-0000-0000-0000-000a2789904e</key> <string>GeForceGA.plugin</string> </dict> <key>IOClass</key> <string>NVKernel</string> <key>IOMatchCategory</key> <string>IOAccelerator</string> <key>IOPCIMatch</key> <string>0x000010de&0x0000ffff</string> <key>IOProbeScore</key> <integer>100</integer> <key>IOProviderClass</key> <string>IOPCIDevice</string> <key>IOSourceVersion</key> <string>1.4.40.4</string> </dict> </dict> <key>OSBundleLibraries</key> <dict> <key>com.apple.NVDAResman</key> <string>1.2.0</string> <key>com.apple.iokit.IOGraphicsFamily</key> <string>1.0.0b1</string> <key>com.apple.iokit.IONDRVSupport</key> <string>1.0.0b1</string> <key>com.apple.iokit.IOPCIFamily</key> <string>1.0.0b1</string> <key>com.apple.kernel.iokit</key> <string>1.0.0b1</string> <key>com.apple.kpi.bsd</key> <string>8.0.0</string> <key>com.apple.kpi.iokit</key> <string>8.0.0</string> <key>com.apple.kpi.libkern</key> <string>8.0.0</string> <key>com.apple.kpi.mach</key> <string>8.0.0</string> </dict> </dict> </plist> Link to comment Share on other sites More sharing options...
spanakorizo Posted December 10, 2006 Share Posted December 10, 2006 HERE <key>IOPCIMatch</key> <string>0x000010de&0x0000ffff</string> Link to comment Share on other sites More sharing options...
Xopek Posted December 10, 2006 Share Posted December 10, 2006 HERE <key>IOPCIMatch</key> <string>0x000010de&0x0000ffff</string> So I need to paste <key>IOPCIMatch</key> <string>0x039110de&0x0000ffff</string> instead of <key>IOPCIMatch</key> <string>0x000010de&0x0000ffff</string> Am I right? My mymac's video info: Device ID: 0x0391 Revision ID: 0x00a1 Link to comment Share on other sites More sharing options...
spanakorizo Posted December 10, 2006 Share Posted December 10, 2006 Getting Nvidia GeForce Working with Titan/Natit, with 8.8.1 Kernel - my theory its not "your theory" http://forum.insanelymac.com/index.php?sho...amp;hl=7600gs#9 you dont have nvidia card so you didnot test this i was testing since 1 month+ since the 1st titan.kext (4 of november by omni) so i know how it is and im glad that it's getting closer to fully working for everybody now... i know that you try to help the others (u helped me a lot in the past) but this is not a challenge,i blv some cards dont have problems with any of nvidia/grforce kexts but some others is pain in the ass to make them work and i cleared up which kexts are only the important to make it work 2 weeks ago So I need to paste <key>IOPCIMatch</key> <string>0x039110de&0x0000ffff</string> instead of <key>IOPCIMatch</key> <string>0x000010de&0x0000ffff</string> Am I right? My mymac's video info: Device ID: 0x0391 Revision ID: 0x00a1 yes xopek you are right save the changes did you open the .plist at nano? Link to comment Share on other sites More sharing options...
Xopek Posted December 10, 2006 Share Posted December 10, 2006 did you open the .plist at nano? Yes , by this command: sudo nano /System/Library/Extensions/GeForce.kext/Content/Info.plist But I can't seen anything in this file now. File is correctly displayed by TextEdit , but can't be saved. Link to comment Share on other sites More sharing options...
spanakorizo Posted December 10, 2006 Share Posted December 10, 2006 you cant save it in textedit you must modify it in nano (inside terminal) and to save the changes press ctrl+x and then "y" (it will ask you to save the changes) after this you'll be back at the terminal ,the file will be saved Link to comment Share on other sites More sharing options...
Xopek Posted December 10, 2006 Share Posted December 10, 2006 How can I edit it in nano, if nano don't show any data from this file -( ? ^ + w = find: I write "IOPCIMatch" -> nothing is found. Link to comment Share on other sites More sharing options...
Rammjet Posted December 10, 2006 Author Share Posted December 10, 2006 Verify that the GeForce.kext is in the /System/Library/Extensions folder. Some installers might have put it into an Extensions.disabled folder inside the Extensions folder. If so, move it out. If you have verified the kext is in the right place and it still comes up blank, be sure you are typing the "sudo nano" command exactly - make sure you start the path with the leading slash (/). Link to comment Share on other sites More sharing options...
Hagar Posted December 10, 2006 Share Posted December 10, 2006 Just a comment: I am a fan of KISS... often, all that is needed is to drop natit into /S/L/E & add the DEV ID into Geforce.kext.. Only if this fails would I start adding ID's elsewhere.. it has become clear from IRC that *a lot* of people jump right in adding IDs all over the place & then have to go to -s to try & untangle the mess.. a simple order of which to do first might be useful, I would go with the relevant NV*Hal.kext, followed possibly by Nvidiaresman, but I have personally never found that to be necessary. As for agpgart, some people report success using it with titan, but not natit.. my experience is that I lost dualscreen support when using agpgart with natit, but agpgart is in active development... Link to comment Share on other sites More sharing options...
Rammjet Posted December 10, 2006 Author Share Posted December 10, 2006 So I need to paste <key>IOPCIMatch</key> <string>0x039110de&0x0000ffff</string> The "&0x0000ffff" part of the id is used to allow the string to match a range of cards. If you are putting a single device id into the Info.plist, you do not need the "&0x0000ffff" part. If you leave that in there, it could try to attach itself to device ids: 0391, 1391, 2391,...,9391 if any of those devices are in your computer. (Note: this phenomenon is the cause of the GeForce.kext kernel panic that many people have. The kext attaches itself to an Nvidia device on the motherboard that was not a video card and this causes the panic.) <key>IOPCIMatch</key> <string>0x039110de</string> This is better. I am a fan of KISS...often, all that is needed is to drop natit into /S/L/E & add the DEV ID into Geforce.kext.. Only if this fails would I start adding ID's elsewhere.. it has become clear from IRC that *a lot* of people jump right in adding IDs all over the place & then have to go to -s to try & untangle the mess.. a simple order of which to do first might be useful, I would go with the relevant NV*Hal.kext, followed possibly by Nvidiaresman, but I have personally never found that to be necessary. Member spanakorizo discovered that the 3 kexts need to be edited. I am trying to clarify which HAL kext to edit for which card and to clean up loose ends for maximum success. http://forum.insanelymac.com/index.php?s=&...st&p=243175 As for agpgart, some people report success using it with titan, but not natit.. my experience is that I lost dualscreen support when using agpgart with natit, but agpgart is in active development... Thanks for the AGPGart tip. That is what this thread is for is to collect all of the correct information for success. I will clarify that AGPGart may need to be removed for Natit. Link to comment Share on other sites More sharing options...
spanakorizo Posted December 10, 2006 Share Posted December 10, 2006 hagar i know that is strange (maybe) but with natit and agpgart i have dual screen i tested it yesterday just for fun second screen in DVI and it works perfect the OSX was even running and i plugged the second monitor the primary monitor switched off and after 5 seconds both screens were working i didnt either need to reboot or something only problem : if i press "detect screens" the primary monitor power off and the system crash but i dont need to do this cause it works and i can switch resolutions in both monitors and blv me that 7600gs agp was imposible to get QE/CI but now everything works perfect anyway it is nice that we are testing and help each other EDIT: i have an old GEFORCE MX440 AGP somewhere i'm sure it is not working with QE/CI is it? if its not i'm gonna test with this method and different NVDANVx0Hal.kext and i blv i can make it work i will post later my results but as i said if MX440 is known as working ,there is no reason to test ,so post it (i'm lazy now to check the compatibility list thread or wiki) Link to comment Share on other sites More sharing options...
Xopek Posted December 10, 2006 Share Posted December 10, 2006 Verify that the GeForce.kext is in the /System/Library/Extensions folder. Some installers might have put it into an Extensions.disabled folder inside the Extensions folder. If so, move it out. If you have verified the kext is in the right place and it still comes up blank, be sure you are typing the "sudo nano" command exactly - make sure you start the path with the leading slash (/). Yes, it's there. I type in terminal "sudo nano /System/Library/Extensions/GeForce.kext/Content/Info.plist" . Am I right? But file doesn't open ;-( Link to comment Share on other sites More sharing options...
spanakorizo Posted December 10, 2006 Share Posted December 10, 2006 try this open terminal and type nano /System/Library/Extensions/GeForce.kext/Contents/Info.plist it will open Link to comment Share on other sites More sharing options...
ChiefWiggum Posted December 10, 2006 Share Posted December 10, 2006 I used GeForce*.kext, NVDA*.kext & IONDRVSupport.kext from 10.4.8. In my case I found that I did NOT need to do ANY kext editing at all !! (There arent any DevIDs for my card in the kext by default - 0x0332) Just thow in the files & it works. Strange... Link to comment Share on other sites More sharing options...
spanakorizo Posted December 10, 2006 Share Posted December 10, 2006 I used GeForce*.kext, NVDA*.kext & IONDRVSupport.kext from 10.4.8. In my case I found that I did NOT need to do ANY kext editing at all !! (There arent any DevIDs for my card in the kext by default - 0x0332) Just thow in the files & it works. Strange... its not strange for some cards nothing is needed to have QE/CI for some others (including mine) is pain in the ass blv me Link to comment Share on other sites More sharing options...
Rammjet Posted December 10, 2006 Author Share Posted December 10, 2006 I type in terminal "sudo nano /System/Library/Extensions/GeForce.kext/Content/Info.plist" Contents/Info.plist Link to comment Share on other sites More sharing options...
John Burton Posted December 10, 2006 Share Posted December 10, 2006 I have a Galaxy GeForce 6600 GT AGP and cant get QE/CI with good performance , its start with , but the Mouse and all others Lags like Hell !!!! testet with Titan and natit with and without modifying .kext`s Link to comment Share on other sites More sharing options...
Recommended Posts