hotcorez Posted September 12, 2010 Share Posted September 12, 2010 Using the excellent nvenabler code in chameleon I have now created a working guide for Nvidia 8600m on 1064 to activate all outputs:- Requires latest chameleon w/ GraphicsEnabler + mbp3,1 nvrom + DSDT gfx This guide is for for laptops with 8600m GPU only and you will need to use the nvrom extracted from a macbook pro 3,1 if you have one. the rom may work on desktop models as well but you will probably need to port your cards timings and power voltage settings over to the mbp3,1 rom using nbitor or direct rom editing (not tested) 1) Additional Bootflags = GraphicsEnabler=Yes VBIOS=Yes UseNvidiaROM=Yes 2) mbp3,1 nvrom placed in /Extra and renamed to 10de_04XX.rom XX=last 2 digits of your cards device id 3) DSDT gfx entry minus NVCAP placed under: Device (PEGP) / _ADR, 0x00010000 (details found off the net for a 9xxx model) :- Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package () { "@0,AAPL,boot-display", Buffer (Zero) {}, "@0,backlight-control", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "@0,built-in", Buffer (Zero) {}, "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,fboffset", Buffer (0x04) { 0x00, 0x00, 0x03, 0x00 }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@0,use-backlight-blanking", Buffer (Zero) {}, "@1,can-hot-plug", Buffer (Zero) {}, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "AAPL,aux-power-connected", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "AAPL,backlight-control", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "AAPL00,blackscreen-preferences", Buffer (0x04) { 0x00, 0x00, 0x00, 0x08 }, "AAPL01,blackscreen-preferences", Buffer (0x04) { 0x00, 0x00, 0x00, 0x08 }, "NVDA,Features", Buffer (0x04) { 0xFF, 0x02, 0xA0, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x10 /*<-- Ram Amount: 0x40 = 1024mb, 0x20= 512mb, 0x10= 256mb */ }, "device_type", Buffer (0x0C) { "NVDA,Parent" }, "model", Buffer () /*<-- Blank entry ensures correct value is calculated and inserted on compile */ { "GeForce 8600M XX" /*<-- Your Card Name */ }, "rom-revision", Buffer () { "60.84.XX.XX.XX" /*<-- ROM Revision (derivable using fassl's Nvidiainfo.app, nvclock OR nbitor) */ }, } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } I am not sure if you need all of these entries and brightness is not working. i think omitting nvcap ensures this is calculated correctly by graphicsenabler. If this all works for you, make a note of the working nvcap value from ioreg for future ref and if you wish to reincorporate this into your dsdt. 4) Optional revised replacement lid section (for working lid sleep and pnlf brightness entry) note: you will need to rename the other remaining "LID" or other named entries in your dsdt to LID0 for this to compile :- Scope (_SB) { Device (LID0) { Name (_HID, EisaId ("PNP0C0D")) Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x0B, 0x04 }) } Name (LIDS, One) Method (_LID, 0, NotSerialized) { Store (^^PCI0.LPCB.EC0.RPIN (0x06), LIDS) XOr (LIDS, One, Local0) If (Local0) { Notify (SLPB, 0x80) } Return (LIDS) } } Device (PNLF) { Name (_HID, EisaId ("APP0002")) Name (_CID, "backlight") Name (_UID, 0x0C) Name (_STA, 0x0B) } } If anyone is interested in creating a custom .rom for a desktop 8600, please post their findings here and request assistance where necessary nbitior may be a good tool. Please note, using a .ROM file in extra will influence voltage, timings and clocks etc do not blame me if your GPU fries etc. Thats why a modded rom matching your own settings may be the best approach! Monitor your temps using the latest slice fakesmc minus the x3100 and ati kexts to avoid kp! Good luck with this and I hope that it works for you! Link to comment Share on other sites More sharing options...
danofun Posted October 8, 2010 Share Posted October 8, 2010 A huge thanks to hotcorez and the nvenabler team! I now have HDMI video (no Audio) on my XPS 1530m T7250 with 8600m GT (0407) running 10.6.4. Sleep, shutdown, USB, and VoodooHDA all seem to be working but if I am missing something please advise. Attached is the necessary mbp3,1 VGA ROM (provided by hotcorez!), my CPU specific myDSDT.dsl file, compiled DSDT.aml, smbios.plist, and com.apple.Boot.plist. Yo can make your own custom DSDT by following this fantastic thread. As always, know the specifics of your machine before using any files and use these carefully and at your own risk. m1530.zip Link to comment Share on other sites More sharing options...
04152viki Posted October 10, 2010 Share Posted October 10, 2010 HDMI video works. Without DVI adapter. It lacks HDMI audio. Link to comment Share on other sites More sharing options...
luggi Posted October 24, 2010 Share Posted October 24, 2010 Don't work for me. I used the DSDT and Rom from danofun, got a wired looking screen. Have a M1530 with the Geforce 8600. Please Help! Luggi Link to comment Share on other sites More sharing options...
hotcorez Posted October 25, 2010 Author Share Posted October 25, 2010 Hi Luggi, I have been advised that voltage setting are set by the pc bios at boot (gfx is a module of the main bios, so you would have to replace GFX rom in bios to get voltage change) however, the clock settings DO have an effect. Extract you rom under windows using nvflash or under osx using nvclock or use mmtool or some other bios tool to extract the bios module from bios (think mmtool worked on AMI bios) Open up your machines nvidia bios in one instance of nbitor (under windows or using wine form winebottler) and copy your clock setting onto the mac rom. If you cannot find a mac rom, extract it from the EFI Update 1.5.1 (i think) using phoenix bios tool. find the bootcamp bios (contains IBM PC and nvidia strings), edit it using hexeditor, remove small section before 55 and save it as .ROM (ends FF FF FF checksum byte) Open your 8600m rom in another instance of nbitor and copy the clock settings across to the mac bios. Save it and try and use modded rom instead. Also you can try a simpler DSDT to see if that helps. You can also remove the nvcap from the dsdt as graphics enabler will calculate it anyway, and it may be different on your laptop to mine simpler DSDT :- Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package () { "@0,built-in", Buffer (Zero) {}, "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x10 /*<-- Ram Amount: 0x40 = 1024mb, 0x20= 512mb, 0x10= 256mb */ }, "device_type", Buffer (0x0C) { "NVDA,Parent" }, "model", Buffer () /*<-- Blank entry ensures correct value is calculated and inserted on compile */ { "GeForce 8600M XX" /*<-- Your Card Name */ }, "rom-revision", Buffer () { "60.84.XX.XX.XX" /*<-- ROM Revision (derivable using fassl's Nvidiainfo.app, nvclock OR nbitor) */ }, } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Hope this helps and let me know if i made stupid mistake!! Cheers, HC Link to comment Share on other sites More sharing options...
leokash Posted November 2, 2010 Share Posted November 2, 2010 Using the excellent nvenabler code in chameleon I have now created a working guide for Nvidia 8600m on 1064 to activate all outputs:- Requires latest chameleon w/ GraphicsEnabler + mbp3,1 nvrom + DSDT gfx This guide is for for laptops with 8600m GPU only and you will need to use the nvrom extracted from a macbook pro 3,1 if you have one. the rom may work on desktop models as well but you will probably need to port your cards timings and power voltage settings over to the mbp3,1 rom using nbitor or direct rom editing (not tested) 1) Additional Bootflags = GraphicsEnabler=Yes VBIOS=Yes UseNvidiaROM=Yes 2) mbp3,1 nvrom placed in /Extra and renamed to 10de_04XX.rom XX=last 2 digits of your cards device id 3) DSDT gfx entry minus NVCAP placed under: Device (PEGP) / _ADR, 0x00010000 (details found off the net for a 9xxx model) :- Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package () { "@0,AAPL,boot-display", Buffer (Zero) {}, "@0,backlight-control", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "@0,built-in", Buffer (Zero) {}, "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,fboffset", Buffer (0x04) { 0x00, 0x00, 0x03, 0x00 }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@0,use-backlight-blanking", Buffer (Zero) {}, "@1,can-hot-plug", Buffer (Zero) {}, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "AAPL,aux-power-connected", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "AAPL,backlight-control", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "AAPL00,blackscreen-preferences", Buffer (0x04) { 0x00, 0x00, 0x00, 0x08 }, "AAPL01,blackscreen-preferences", Buffer (0x04) { 0x00, 0x00, 0x00, 0x08 }, "NVDA,Features", Buffer (0x04) { 0xFF, 0x02, 0xA0, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x10 /*<-- Ram Amount: 0x40 = 1024mb, 0x20= 512mb, 0x10= 256mb */ }, "device_type", Buffer (0x0C) { "NVDA,Parent" }, "model", Buffer () /*<-- Blank entry ensures correct value is calculated and inserted on compile */ { "GeForce 8600M XX" /*<-- Your Card Name */ }, "rom-revision", Buffer () { "60.84.XX.XX.XX" /*<-- ROM Revision (derivable using fassl's Nvidiainfo.app, nvclock OR nbitor) */ }, } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } I am not sure if you need all of these entries and brightness is not working. i think omitting nvcap ensures this is calculated correctly by graphicsenabler. If this all works for you, make a note of the working nvcap value from ioreg for future ref and if you wish to reincorporate this into your dsdt. 4) Optional revised replacement lid section (for working lid sleep and pnlf brightness entry) note: you will need to rename the other remaining "LID" or other named entries in your dsdt to LID0 for this to compile :- Scope (_SB) { Device (LID0) { Name (_HID, EisaId ("PNP0C0D")) Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x0B, 0x04 }) } Name (LIDS, One) Method (_LID, 0, NotSerialized) { Store (^^PCI0.LPCB.EC0.RPIN (0x06), LIDS) XOr (LIDS, One, Local0) If (Local0) { Notify (SLPB, 0x80) } Return (LIDS) } } Device (PNLF) { Name (_HID, EisaId ("APP0002")) Name (_CID, "backlight") Name (_UID, 0x0C) Name (_STA, 0x0B) } } If anyone is interested in creating a custom .rom for a desktop 8600, please post their findings here and request assistance where necessary nbitior may be a good tool. Please note, using a .ROM file in extra will influence voltage, timings and clocks etc do not blame me if your GPU fries etc. Thats why a modded rom matching your own settings may be the best approach! Monitor your temps using the latest slice fakesmc minus the x3100 and ati kexts to avoid kp! Good luck with this and I hope that it works for you! sorry but im a noob when it comes to macs!! im running my macOS from vmware but i cant play movies coz the nvidia drivers are not present!! im trying to follow your tutorial but i cant find the files to edit... where am i supposed to find them? thankx Link to comment Share on other sites More sharing options...
silentdragoon Posted November 5, 2010 Share Posted November 5, 2010 I too would like to know a little bit more about this -- I'm struggling with getting my 8600M GT working on my Inspiron 1520, and I'd like to see this rewritten to be a little bit more clear for newbs like me Link to comment Share on other sites More sharing options...
hotcorez Posted November 6, 2010 Author Share Posted November 6, 2010 hi guys, sometimes you need to read up on stuff before you can understand it! for vmware i have no idea if you can use dsdt for normal user who doesn't know dsdt or chameleon, do some research! try to find an app called dsdte, it will all become clear when you use that! make sure the mbp3,1 nvidia rom in /Extra matches your actual bios vid_did on the card, ie 10de_0407.rom if thats your id. use lspci to check your gfx id or extract your gfx rom off your laptop and view it under nbitor / advanced settings you could also add/change you gfx device id in DSM section in your dsdt, so you could change your gfx id etc to match a mac compatable card. as you can see see below the bytes are swapped in hex : "device-id", Buffer (0x04) { 0x07, 0x04, 0x00, 0x00 }, "vendor-id", Buffer (0x04) { 0xDE, 0x10, 0x00, 0x00 }, you could also try using the 8600 rom on an 8400 etc. just make sure the clocks are not too high for your card. nbitor is your friend! it does seem to have a different chip tho so not sure if it world work http://en.wikipedia.org/wiki/Comparison_of...8xxxM.29_series tbh, we need some fixes so we can get hdmi workng on all the 8xxx series and above using our original roms, using an improved graphics enabler I also have no idea if a 256mb rom will be compatible with a 512mb card tho for instance, so you'll have to test it yourself or find a more compatible mac bios if it exists! please note that this .rom stuff is only necessary if you want to run hdmi on nvidia 8xxx laptops hope that helps Link to comment Share on other sites More sharing options...
DanMcQ Posted December 28, 2010 Share Posted December 28, 2010 I've been running stock 10.6.5 using a custom DSDT.aml (NO NVEnabler or other injector) which has allowed me to run my 8600m GT at full resolution with all features EXCEPT for HDMI-> HDMI (HDMI->DVI works fine). When I tried this method (in order to try and get HDMI->HDMI working) using NVEnabler the max resolution was 1024x768 (although, HDMI out did work - which is my goal). Any ideas as to how I might be able to solve this? Like I said before, the system is a completely vanilla snow leopard install running 10.6.5 M1530 - T9500 -- 8600m GT Link to comment Share on other sites More sharing options...
DanMcQ Posted December 29, 2010 Share Posted December 29, 2010 UPDATE: SOLVED!! http://www.insanelymac.com/forum/index.php...=0#entry1610561 Link to comment Share on other sites More sharing options...
agingtechie Posted January 5, 2011 Share Posted January 5, 2011 I've been running stock 10.6.5 using a custom DSDT.aml (NO NVEnabler or other injector) which has allowed me to run my 8600m GT at full resolution with all features EXCEPT for HDMI-> HDMI (HDMI->DVI works fine). When I tried this method (in order to try and get HDMI->HDMI working) using NVEnabler the max resolution was 1024x768 (although, HDMI out did work - which is my goal). Any ideas as to how I might be able to solve this? Like I said before, the system is a completely vanilla snow leopard install running 10.6.5 M1530 - T9500 -- 8600m GT How did you install the OSx ? was it a Tonymacx86 [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] or ibootge or EFI or nawcom boot disk method? Link to comment Share on other sites More sharing options...
DanMcQ Posted January 6, 2011 Share Posted January 6, 2011 How did you install the OSx ? was it a Tonymacx86 [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] or ibootge or EFI or nawcom boot disk method? I used the latest version of the Chameleon bootloader (v2 rc5 I believe) and simply ran the retail Snow Leopard install DVD. Link to comment Share on other sites More sharing options...
macdanny Posted July 17, 2011 Share Posted July 17, 2011 Has anyone gotten HDMI working on a Dell XPS M1330 with the 8400M GS? It worked with 10.6.2 but broke with update to 10.6.3. Link to comment Share on other sites More sharing options...
Recommended Posts