Jump to content

Custom EDID being Ignored (OSX 10.8.5, MacMini)


2 posts in this topic

Recommended Posts

I have a Mac Mini 2006 (upgraded) with Intel GMA950 graphics, running MLPostFactor 10.8.5.  It is connected to an ASUS VS197 LCD panel using DVI-D.  This is natively a 1366x768 panel that is recognized and works fine.

 

However, the other choices for resolution are 4:3 800x600 and 1024x768, and then the oddballs 832x624 and 1360x768.  None of these are useful as a low-resolution widescreen for gaming or watching DVD content.  Specifically I want to get access to 848x480 or 854x480, and also 1024x576.  SwitchResX makes these choices available, but it doesn't work with a "full screen" game, presumably because the game directly queries OSX Display to get a list of valid resolutions and SwitchResX is bypassing that system instead.

 

So the solution is obvious: buy a new computer pull the monitor's EDID data, hack it to enable new resolutions, and then tell OSX to use this custom EDID instead of the one retrieved from the monitor.

 

Following the steps of the EDID injection guide, here is where I am:

 

* Retrieve EDID, DisplayVendorID etc from ioreg.

00 FF FF FF FF FF FF 00 04 69 F2 19 24 94 00 00 31 16 01 03 80 29 17 78 EA F5 45 A4 55 50 9E 27 0F 50 54 BD EE 00 81 C0 01 01 01 01 01 01 01 01 01 01 01 01 01 01 66 21 56 AA 51 00 1E 30 46 8F 33 00 9A E6 10 00 00 1E 00 00 00 FD 00 32 4B 18 53 11 00 0A 20 20 20 20 20 20 00 00 00 FC 00 41 53 55 53 20 56 53 31 39 37 0A 20 20 00 00 00 FF 00 43 43 4C 4D 54 46 30 33 37 39 32 34 0A 00 F1

* Use an EDID editor to enable new 848x477 and 1024x576 resolutions.  (Verify with an online EDID tool, and compare to the previous version)

00 FF FF FF FF FF FF 00 04 69 F2 19 24 94 00 00 31 16 01 03 80 29 17 78 EA F5 45 A4 55 50 9E 27 0F 50 54 BD EE 00 81 C0 4B C0 4B CA 4B CF 61 C0 61 CA 61 CF 01 01 66 21 56 AA 51 00 1E 30 46 8F 33 00 9A E6 10 00 00 1E 00 00 00 FD 00 32 4B 18 53 11 00 0A 20 20 20 20 20 20 00 00 00 FC 00 41 53 55 53 20 56 53 31 39 37 0A 20 20 00 00 00 FF 00 43 43 4C 4D 54 46 30 33 37 39 32 34 0A 00 47

* Create a new subfolder and plist within /System/Library/Overrides/Display/ containing the new EDID string and monitor name.

* Reboot.

 

Now the problems begin.  Even though the plist file is being read (which I know because the Monitor Name has changed in Displays), the custom EDID is not being used.  When I dig into IORegExplorer I am able to come up with AAPL00,EDID string and it is the unmodified one read from the monitor.  I even tried a plug-and-unplug while OSX is running, and also tried to reset the SMC and NVRAM, but no dice.

 

Do I need to start digging into DSDT hacking?  Is the Intel driver pulling down EDID during boot and I need to override it somewhere else?  What am I missing here?

Link to comment
Share on other sites

For reference, here are the contents of my file

/System/Library/Displays/Overrides/DisplayVendorID-469/DisplayProductID-19f2

 

<?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>DisplayProductID</key>
    <integer>6642</integer>
    <key>DisplayProductName</key>
    <string>ASUS VS197 (Modified)</string>
    <key>DisplayVendorID</key>
    <integer>1129</integer>
    <key>IODisplayEDID</key>
    <data>AP///////wAEafIZJJQAADEWAQOAKRd46vVFpFVQnicPUFS97gCBwEvAS8pLz2HAYcphzwEBZiFWqlEAHjBGjzMAmuYQAAAeAAAA/QAySxhTEQAKICAgICAgAAAA/ABBU1VTIFZTMTk3CiAgAAAA/wBDQ0xNVEYwMzc5MjQKAEc=</data>
</dict>
</plist>

Link to comment
Share on other sites

 Share

×
×
  • Create New...