I had an identical drawback with an iMac from 2009, my second show is linked by way of a firewire-to-VGA adapter.
I attempted every little thing to repair this points, reseting the nvram labored after a reboot however the subsequent time the monitor ‘slept’ the issue occured once more.
When i attempted to set the decision manually my decision (1920×1080) was not listed, even when holding the ‘choice’ key to indicate extra resolutions.
I discovered an answer on this publish by Andreas Schwarz on embdev.web (see the hyperlink in his code bellow, i can not publish greater than 2 hyperlinks)
It is was circuitously supposed to right the issue, but it surely does with me.
The issue could be solved by overriding the EDID knowledge of the show
in order to inform OS X that the show solely helps RGB. This may be executed by
studying the EDID with “ioreg -l”, modifying the offending bits (see
the specification within the Wikipedia article), and making a show
config override file for OS X.
He then offered a ruby script to create this override file :
#!/usr/bin/ruby
# Create show override file to drive Mac OS X to make use of RGB mode for Show
# see http://embdev.web/subject/284710
#
# Replace 2013-06-24: added -w0 choice to forestall truncated strains
require 'base64'
knowledge=`ioreg -l -w0 -d0 -r -c AppleDisplay`
edid_hex=knowledge.match(/IODisplayEDID.*?<([a-z0-9]+)>/i)[1]
vendorid=knowledge.match(/DisplayVendorID.*?([0-9]+)/i)[1].to_i
productid=knowledge.match(/DisplayProductID.*?([0-9]+)/i)[1].to_i
places "discovered show: vendorid #{vendorid}, productid #{productid}, EDID:n#{edid_hex}"
bytes=edid_hex.scan(/../).map{|x|Integer("0x#{x}")}.flatten
places "Setting coloration help to RGB 4:4:4 solely"
bytes[24] &= ~(0b11000)
places "Variety of extension blocks: #{bytes[126]}"
places "eradicating extension block"
bytes = bytes[0..127]
bytes[126] = 0
bytes[127] = (0x100-(bytes[0..126].cut back(:+) % 256)) % 256
places
places "Recalculated checksum: 0xpercentx" % bytes[127]
places "new EDID:n#{bytes.map"%02X"%b.be part of}"
Dir.mkdir("DisplayVendorID-%x" % vendorid) rescue nil
f = File.open("DisplayVendorID-%x/DisplayProductID-%x" % [vendorid, productid], 'w')
f.write '<?xml model="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist model="1.0">'
f.write "
<dict>
<key>DisplayProductName</key>
<string>Show with compelled RGB mode (EDID override)</string>
<key>IODisplayEDID</key>
<knowledge>#{Base64.encode64(bytes.pack('C*'))}</knowledge>
<key>DisplayVendorID</key>
<integer>#{vendorid}</integer>
<key>DisplayProductID</key>
<integer>#{productid}</integer>
</dict>
</plist>"
f.shut
Executing this script within the terminal with ‘ruby patch-edid.rb’ creates a folder named “DisplayXXX”
transfer the contained folder into
/System/Library/Shows/Overrides. After a reboot, the monitor ought to
present that RGB colours are used.
After rebooting the decision was not right, however i used to be in a position to set the proper one within the show settings.