PippoX0 Posted October 25, 2011 Share Posted October 25, 2011 Hi Timp, i would like to get VGA port working on my Hackintosh GA-H67N-USb3-B3 mobo with intel i5-2500K and Intel Hd 3000 video ID:0112 ... I have installed OSX Lion 10.7.1 , Chimera 1.5.4 / Macmini5.1 smbios.plist /DSDT.aml and everything works on HDMI port, but i want to use my VGA monitor because i use my PC with dual boot with Windows and i don't want to connect pc to TV when i want to use OSX . GA-H67N-USb3-B3 mobo has one VGA port and two HDMI ports ( no DVI) Info here http://www.gigabyte.us/products/product-pa...spx?pid=3783#sp I'm relative new on patching to get VGA Port working ... so can give me some hints to see the light ... ? Thanks a lot Best Regards PippoX0 Link to comment Share on other sites More sharing options...
hchinasky Posted October 26, 2011 Share Posted October 26, 2011 Editing the table as bcc9 suggested works fine in the first boot but...¿why the display freezes showing the same message (kernel: stampWait: Overflowed checking for stamp 0x39fa8 on Main ring: called from )? In my case it doesn´t matter the program I´m using, I can even spend two days without this problem, but suddenly it happens again... regards Link to comment Share on other sites More sharing options...
timp Posted October 27, 2011 Share Posted October 27, 2011 Hey Timp,Can you elaborate on your dsdt edit/ Thanks, Sure: Device (IGPU) { Name (_ADR, 0x00020000) Method (_DSM, 4, NotSerialized) { Store (Package (0x06) { "hda-gfx", Buffer (0x09) {"onboard-2"}, "device-id", Buffer (0x04) {0x16, 0x01, 0x00, 0x00}, "AAPL01,override-no-edid", Buffer (0x80) { 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x10, 0xAC, 0x0F, 0xA0, 0x53, 0x59, 0x56, 0x31, 0x32, 0x0F, 0x01, 0x03, 0x08, 0x34, 0x21, 0x78, 0xE8, 0xEE, 0x50, 0xA3, 0x54, 0x4C, 0x9B, 0x26, 0x0F, 0x50, 0x54, 0xA5, 0x4B, 0x00, 0xB3, 0x00, 0x95, 0x00, 0x81, 0x00, 0xA9, 0x40, 0xD1, 0xC0, 0x8B, 0xC0, 0x81, 0xC0, 0x90, 0x40, 0x28, 0x3C, 0x80, 0xA0, 0x70, 0xB0, 0x23, 0x40, 0x30, 0x20, 0x36, 0x00, 0x07, 0x44, 0x21, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x44, 0x53, 0x44, 0x54, 0x20, 0x56, 0x47, 0x41, 0x20, 0x50, 0x6F, 0x72, 0x74, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x56, 0x67, 0x61, 0x4D, 0x6F, 0x6E, 0x69, 0x74, 0x6F, 0x72, 0x0A, 0x0A, 0x0A, 0x00, 0x00, 0x00, 0xFD, 0x00, 0x38, 0x4C, 0x1E, 0x51, 0x11, 0x00, 0x0A, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0xF4 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } I would get the EDID from your monitor as this may not work with all monitors. Power Saving also doesn't work as this is also controlled by the I2C bus. I notice that the display sometimes freezes. Like only the mouse pointer moves but you can't click on anything. I think it's related to the Intel display driver too but haven't been able to isolate it for sure. I can still connect with ssh. HD 3000 graphics on Mac all seem a bit dodge to me. Wonder if Apple or Intel wrote the driver.. BTW this is on a Dell Vostro 3350 with a I5-2410M and Intel HD 3000 graphics only. Good luck. Hi All, I wasn't happy with the DSDT edid thing so I tried some more numbers in the AppleIntelSNBGraphics binary to see if I could get the EDID from the monitor via the VGA connector. I found 0602 instead of 0607 works! There are still a few issues. Like have to sleep/wake the machine to get the VGA out working in some cases, or unplug the display, detect displays plug in the display again and detect again.. Below are the numbers I'm currently using that give me internal LCD + HDMI or Internal LCD + VGA. Connecting both doesn't work as the HD3000 only seems to support 2 monitors at a time. I tried removing the line for the internal LCD to see if I could get dual display on VGA and HDMI but that didn't seem to work, but maybe I did something wrong. The four lines are 0503 - Internal LCD 0205 - HDMI 0602 - VGA 0000 - unused. Still don't know if the order is important or what the number is the fifth column means. 0102 0300 1007 0000 1007 0000 0503 0000 0200 0000 3000 0000 0205 0000 0004 0000 0700 0000 0602 0000 1000 0000 0900 0000 0000 0000 0100 0000 4000 0000 My IGPU now only has Store (Package (0x04) { "hda-gfx", Buffer (0x09) {"onboard-2"}, "device-id", Buffer (0x04) {0x16, 0x01, 0x00, 0x00} }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Link to comment Share on other sites More sharing options...
PippoX0 Posted November 4, 2011 Share Posted November 4, 2011 Eureka ! I got my VGA port working on my Hackintosh GA-H67N-USb3-B3 mobo with intel i5-2500K and Intel Hd 3000 video ID:0112 ... on OSX Lion 10.7.1 , Chimera 1.5.4 / MacBookPro8.1 smbios.plist /DSDT.aml and everything works with QE/CI enabled !! i finally can use iMovie and iWorks ... I followed as described on first post the hex editing in the AppleIntelSNBGraphics binary thanks to Bcc9 and Timp. ( i use 602 values suggested by timp) AppleIntelSNBGraphics FrameBuffer to be binary patched 0102 0400 1007 0000 1007 0000 0503 0000 0200 0000 3000 0000 0205 0000 0004 0000 0700 0000 0304 0000 0004 0000 0900 0000 0406 0000 0004 0000 0900 0000 Patch 0503->0602 From internal LCD port to VGA port ... I patched also my DSDT to get ID:116 instead of ID:112 (real one) Mod. IGD0 Device (IGD0) { Name (_ADR, 0x00020000) Method (_DSM, 4, NotSerialized) { Store (Package (0x04) { "hda-gfx", Buffer (0x09) {"onboard-2"}, "device-id", Buffer (0x04) {0x16, 0x01, 0x00, 0x00} }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } OperationRegion (IGDP, PCI_Config, 0x40, 0xC0) what to fix: my Monitor Acer AL1914 has 1280x1024 res, but i got 1152x864. If i try to change resolution i lost qe/ci and get black screen ( I need to boot with " -x -v" option and delete /Library/Preferences/com.apple.windowserver.plist to get back 1152x864 resolution and fix black screen) Best Regards !! Link to comment Share on other sites More sharing options...
Mohamed Khairy Posted November 5, 2011 Share Posted November 5, 2011 Hi All, I wasn't happy with the DSDT edid thing so I tried some more numbers in the AppleIntelSNBGraphics binary to see if I could get the EDID from the monitor via the VGA connector. I found 0602 instead of 0607 works! There are still a few issues. Like have to sleep/wake the machine to get the VGA out working in some cases, or unplug the display, detect displays plug in the display again and detect again.. Below are the numbers I'm currently using that give me internal LCD + HDMI or Internal LCD + VGA. Connecting both doesn't work as the HD3000 only seems to support 2 monitors at a time. I tried removing the line for the internal LCD to see if I could get dual display on VGA and HDMI but that didn't seem to work, but maybe I did something wrong. The four lines are 0503 - Internal LCD 0205 - HDMI 0602 - VGA 0000 - unused. Still don't know if the order is important or what the number is the fifth column means. 0102 0300 1007 0000 1007 0000 0503 0000 0200 0000 3000 0000 0205 0000 0004 0000 0700 0000 0602 0000 1000 0000 0900 0000 0000 0000 0100 0000 4000 0000 My IGPU now only has Store (Package (0x04) { "hda-gfx", Buffer (0x09) {"onboard-2"}, "device-id", Buffer (0x04) {0x16, 0x01, 0x00, 0x00} }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } thanks no need for dsm method on igpu and there is wrong on vga connector code i got the vga to works thanks for your 0602 code how did you get it ? i made only lvds and vga as idont need hdmi and here is my edit 0000000: 0102 0200 1007 0000 1007 0000 ............ 000000c: 0503 0000 0200 0000 3000 0000 ........0... 0000018: 0602 0000 0010 0000 0900 0000 ............ 0000024: 0000 0000 0000 0000 0000 0000 ............ 0000030: 0000 0000 0000 0000 0000 0000 ............ now vga and lvds works with full resloution and qe/cl just need to detect vga display i think this is normal thanks very much Link to comment Share on other sites More sharing options...
beidl Posted November 11, 2011 Share Posted November 11, 2011 I've successfully managed to get HDMI + VGA output working on my HP ProBook 4730s. The only problem is: the hangs still appear. It's even more annoying if the hangs appear when using things like Mission Control or Launchpad. I've even modified the kext to use LVDS only.. still no luck. However what I've found out is that the hangs disappear when flipping the display by 90°, 180° and/or 270°. I've used SwitchResX for this, but you can do it the using an alternative way: Press and hold [Alt] + [Command] keys, -> System preferences -> Display settings and releasing the keys. Of course, it's not very practical to use a laptop with stuff being shown upside down. I've dumped the IORegistry before and after rotating the screen + diffed the files. You can take a look at it. I've noticed that with SwitchResX all resolutions except of the current one were gone after rotating, so I'm not sure if the IOReg would look the same with the alternative method. I'm pretty sure we have to change more stuff in the connector info. Here's my current connector setup: 0000000: 0102 0300 1007 0000 1007 0000 ............ 000000c: 0503 0000 0200 0000 3000 0000 ........0... 0000018: 0406 0000 0008 0000 0600 0000 ............ 0000024: 0602 0000 0001 0000 0700 0000 ............ 0000030: 0000 0000 0000 0000 0000 0000 ............ Hangs_IORegs.zip Link to comment Share on other sites More sharing options...
timp Posted November 14, 2011 Share Posted November 14, 2011 thanksno need for dsm method on igpu and there is wrong on vga connector code . . Hi Mohamed, Are you sure the code is wrong? #define CONNECTORTYPE_LVDS 0x00000002 /* Ie internal Low Voltage display, such as laptop */ #define CONNECTORTYPE_DP 0x00000400 /* Displayport */ #define CONNECTORTYPE_HDMI 0x00000800 HDMI is 0800 which flips to 0008 and DP is 0400 which flips to 0004. etc.. I assumed these are the same as the ATI connector type codes. They have VGA as 10, so flipped it's 1000. Are you saying that the VGA connetor is really 1000? Where did you find that? I don't think it's used for anything anyway but it would be nice to know what the correct code is.. Link to comment Share on other sites More sharing options...
Mohamed Khairy Posted November 16, 2011 Share Posted November 16, 2011 Hi Mohamed, Are you sure the code is wrong? #define CONNECTORTYPE_LVDS 0x00000002 /* Ie internal Low Voltage display, such as laptop */ #define CONNECTORTYPE_DP 0x00000400 /* Displayport */ #define CONNECTORTYPE_HDMI 0x00000800 HDMI is 0800 which flips to 0008 and DP is 0400 which flips to 0004. etc.. I assumed these are the same as the ATI connector type codes. They have VGA as 10, so flipped it's 1000. Are you saying that the VGA connetor is really 1000? Where did you find that? I don't think it's used for anything anyway but it would be nice to know what the correct code is.. you are correct it is 1000 but any way it also work with 0010 so from that what about 0004 !! Link to comment Share on other sites More sharing options...
CrimsonHat Posted November 17, 2011 Share Posted November 17, 2011 1) On my laptop i.e. (expecting to see LVDS connector in IOReg) is always blank (00 00 00 00) I'm guessing that means my display is not being detected. So I can't get my connectors sorted. Can someone point me in the right direction as I can only use LVDS on Lion without HDGraphics and SNB loaded. If I load them I end up at a blank laptop display. VGA works. but prefer to be able to use LCD on laptop. i.e. SNB buffer not shown up... Or Buffer pool allocate, but no display. 2) Because of 1) any change to my connector tables may be useless.. However can you work out which one of the sets of connectors you are using or do you have to update them until it works. Cheers Chris Link to comment Share on other sites More sharing options...
beidl Posted November 18, 2011 Share Posted November 18, 2011 1) On my laptop i.e. (expecting to see LVDS connector in IOReg) is always blank (00 00 00 00) I'm guessing that means my display is not being detected. So I can't get my connectors sorted. Can someone point me in the right direction as I can only use LVDS on Lion without HDGraphics and SNB loaded. If I load them I end up at a blank laptop display. VGA works. but prefer to be able to use LCD on laptop. i.e. SNB buffer not shown up... Or Buffer pool allocate, but no display. 2) Because of 1) any change to my connector tables may be useless.. However can you work out which one of the sets of connectors you are using or do you have to update them until it works. Cheers Chris Have you applied the DualLink patch in your DSDT? Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "AAPL00,DualLink", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Link to comment Share on other sites More sharing options...
CrimsonHat Posted November 21, 2011 Share Posted November 21, 2011 Have you applied the DualLink patch in your DSDT? Yep... already in there.. Worked in 10.6.7 but not in 10.7-10.7.2 Thanks Link to comment Share on other sites More sharing options...
CrimsonHat Posted November 22, 2011 Share Posted November 22, 2011 Toshiba Portege r830 Don't know if this is new but I discovered that if you set the connector ID in the AppleIntelSNBGraphicsFB connector to 00 on the LVDS line of a Macbook pro the LCD display works on my Toshiba r830 where it did not work when the connector was set to 02 00 originally before. There is still an issue with the frame buffer not being created properly which means acceleration for you tube dosent work and open GL is not available. If I VNC in when the connector is 0200 i can see in IO reg that the framebuffer is set up. However not when the connector is 00 to get the LCD to work. VGA and HDVI connectors work as normal. Cheers Chris Link to comment Share on other sites More sharing options...
jkbuha Posted November 23, 2011 Share Posted November 23, 2011 Toshiba Portege r830 Don't know if this is new but I discovered that if you set the connector ID in the AppleIntelSNBGraphicsFB connector to 00 on the LVDS line of a Macbook pro the LCD display works on my Toshiba r830 where it did not work when the connector was set to 02 00 originally before. There is still an issue with the frame buffer not being created properly which means acceleration for you tube dosent work and open GL is not available. If I VNC in when the connector is 0200 i can see in IO reg that the framebuffer is set up. However not when the connector is 00 to get the LCD to work. VGA and HDVI connectors work as normal. Cheers Chris I think this is a strong indicator as well. I have a 1920x1080 LVDS which freezes every 5 seconds, and when I switch to my external monitor (also 1920x1080) I don't get any freezing, and SwitchResX correctly shows all the monitor information. IORegistryExplorer also reports full information for AAPL,DisplayPipe, audio-codec-info, av-signal-type etc on my external monitor but just 00s for the LVDS. It must be something to do with the framebuffer not being set up correctly. Has anyone had perfect (ie: full QE/CI, no freezing, pressing F9 to view all windows works seamlessly etc) display performance on a single LVDS display greater than 1440x900, and if so, could they post the IORegistry data from the AppleIntelFramebuffer key? Cheers jkbuha Link to comment Share on other sites More sharing options...
nerdkiller14 Posted November 24, 2011 Share Posted November 24, 2011 Hello, I have a Lenovo T420 and have been trying to patch all day. Nothing works. I have a Intel HD 3000 and NVDIA Optimus 4200m. I don't understand hex at all. If someone could patch mine for me that would be great just tell me what I need to upload? THANKS IN ADVANCE!! Link to comment Share on other sites More sharing options...
jazzyguy Posted November 25, 2011 Share Posted November 25, 2011 We have patched this kext and have no freezing problems, and we have HDMI audio as well. But we have this problem where when people turn on their laptops, they have to plug in HDMI and unplug it in order to make the laptop screen become activated (because this refreshes the connectors.) Here is my table below, what should I change? We are using SMBIOS of a MBP8,1 and have a device id of 0116 Thanks! 0000000: 0102 0300 1007 0000 1007 0000 ............ 000000c: 0503 0000 0200 0000 3000 0000 ........0... 0000018: 0406 0000 0008 0000 0900 0000 ............ 0000024: 0602 0000 0001 0000 0700 0000 ............ 0000030: 0000 0000 0000 0000 0000 0000 ............ Link to comment Share on other sites More sharing options...
CrimsonHat Posted November 25, 2011 Share Posted November 25, 2011 We have patched this kext and have no freezing problems, and we have HDMI audio as well. But we have this problem where when people turn on their laptops, they have to plug in HDMI and unplug it in order to make the laptop screen become activated (because this refreshes the connectors.) Here is my table below, what should I change? We are using SMBIOS of a MBP8,1 and have a device id of 0116 Thanks! 0000000: 0102 0300 1007 0000 1007 0000 ............ 000000c: 0503 0000 0200 0000 3000 0000 ........0... 0000018: 0406 0000 0008 0000 0900 0000 ............ 0000024: 0602 0000 0001 0000 0700 0000 ............ 0000030: 0000 0000 0000 0000 0000 0000 ............ If you change the 0200 in the second row to 0000 the laptop lvds may be enabled it's self.. It would be good if you could try this and let me know if you have any issues watching youtube videos on the LCD using your plug-unplug method and when you change the connection type to 0000. Also if you have any benchmarking/frame rate measuring sw to see if there is any performance difference. I have a concern that when you change the connector the framebuffer may not be being set up correctly. Might not be perfect but hope that helps Chris Link to comment Share on other sites More sharing options...
jazzyguy Posted November 25, 2011 Share Posted November 25, 2011 If you change the 0200 in the second row to 0000 the laptop lvds may be enabled it's self.. It would be good if you could try this and let me know if you have any issues watching youtube videos on the LCD using your plug-unplug method and when you change the connection type to 0000. Also if you have any benchmarking/frame rate measuring sw to see if there is any performance difference. I have a concern that when you change the connector the framebuffer may not be being set up correctly. Might not be perfect but hope that helps Chris Why would that enable it? Link to comment Share on other sites More sharing options...
CrimsonHat Posted November 26, 2011 Share Posted November 26, 2011 It looks like with 0000 a default/no framebuffer is set up which allows the screen to work without buffer support... no acceleration etc. But that way i get vga and lcd working. Link to comment Share on other sites More sharing options...
jazzyguy Posted December 7, 2011 Share Posted December 7, 2011 Has anyone been able to mess with frequencies in order to remove lines/artifacts? Link to comment Share on other sites More sharing options...
Dids Posted January 10, 2012 Share Posted January 10, 2012 I've successfully done the edits so that I only have one output device: HDMI. Every now and then though (especially when I have multiple windows open and trying to watch a video), I get a crash like this: 10.1.2012 10.15.43,000 kernel: stampWait: Overflowed checking for stamp 0x18a2cf on Main ring: called from 10.1.2012 10.15.43,000 kernel: timestamp = 0x18a2cd 10.1.2012 10.15.43,000 kernel: **** Debug info for apparent hang in Main graphics engine **** 10.1.2012 10.15.43,000 kernel: ring head = 0x7f202abc, wrap count = 0x3f9 10.1.2012 10.15.43,000 kernel: ring tail = 0x00003318 ring control = 0x00003001 enabled, auto report disabled, not waiting, semaphore not waiting, length = 0x004 4KB pages 10.1.2012 10.15.43,000 kernel: timestamps = 0x18a2cd 10.1.2012 10.15.43,000 kernel: Semaphore register values: 10.1.2012 10.15.43,000 kernel: VRSYNC: (0x12044) = 0x18a2cd 10.1.2012 10.15.43,000 kernel: BRSYNC: (0x22040) = 0x0 10.1.2012 10.15.43,000 kernel: RVSYNC: (0x 2040) = 0x0 10.1.2012 10.15.43,000 kernel: BVSYNC: (0x22044) = 0x0 10.1.2012 10.15.43,000 kernel: RBSYNC: (0x 2044) = 0x0 10.1.2012 10.15.43,000 kernel: VBSYNC: (0x12040) = 0x0 10.1.2012 10.15.43,000 kernel: kIPEHR: 0xfff0ffff 10.1.2012 10.15.43,000 kernel: kINSTDONE: 0xffffffff 10.1.2012 10.15.43,000 kernel: kINSTDONE_1: 0xbfffffff Does anyone have any clues on how to remedy this? I'd also like to point out that I do in fact get random artifacts every now and then (glitchy lines here and there). I have a custom DSDT with a custom device id injected, while I've also hex-edited the kext in question manually. Link to comment Share on other sites More sharing options...
Dids Posted January 11, 2012 Share Posted January 11, 2012 I've made a few observations. First of all, the hang issue I randomly get while working on my hackintosh is not the kind of "slow UI" hang, but instead, it *actually* hangs, though the mouse keeps moving. Now, initially I had 4Gb of RAM, which means that the integrated HD3000 was using 384Mb of RAM, just like OS X showed it. While I only had 4Gb of RAM, the hanging issue appeared once or twice in a month, so not that bad at all. I've now upgraded to 8Gb of RAM and the HD3000 is now using 512Mb of RAM. Now I'm getting the crash/hang every single day, atleast once, usually several times per day. Why do I get the feeling that either OS X is exhausting all that RAM and doesn't know what to do when the GPU has no more memory to use, OR, OS X doesn't properly assign/reserve that 512Mb of RAM, and after it's past using 384Mb (which worked okayish before), it'll hang. I dunno, but I'd like to get some answers, might have to contact someone like RevoGirl about this though. Link to comment Share on other sites More sharing options...
jazzyguy Posted January 13, 2012 Share Posted January 13, 2012 The HP Probook 4530s have freezes like you mention where only the mouse moves as well. Link to comment Share on other sites More sharing options...
Jugz Posted January 23, 2012 Share Posted January 23, 2012 Hello, When I type into terminal nm -arch x86_64 etc., I get: nm: command not found I am obviously missing something. Can someone help me out? -Jugz Link to comment Share on other sites More sharing options...
col22 Posted January 23, 2012 Share Posted January 23, 2012 Did you install Xcode? nm won't be in your OS X install by default, but if you go to the Appstore and grab the Xcode (free) and let it install, you should be good to go! =) Hello, When I type into terminal nm -arch x86_64 etc., I get: nm: command not found I am obviously missing something. Can someone help me out? -Jugz Link to comment Share on other sites More sharing options...
Jugz Posted January 23, 2012 Share Posted January 23, 2012 Did you install Xcode? nm won't be in your OS X install by default, but if you go to the Appstore and grab the Xcode (free) and let it install, you should be good to go! =) Just installed it last night. I believe I read a little farther after I made the comment and saw something about Xcode. Thank you though. 1st post? Nice. Link to comment Share on other sites More sharing options...
Recommended Posts