Allowing any screen resolution on Vista

By default, Windows Display Properties displays only the resolutions allowed by its driver, or (in the case of a Plug-and-Play monitor) exposed by its EDID.

I have been hacking my video and monitor drivers ever since I was 13. On Windows 9x, it was possible to enable all resolutions supported by the display driver, by editing the monitor.inf file and changing the maximum resolution of the currently-detected monitor to something ridiculously high (3200x2400, for example), or by disabling detection of PnP monitors and deleting the monitor driver (though this had the adverse effect of only allowing the lowest refresh rate).

On Windows XP, this hack was rendered obsolete by the "Hide modes that this monitor cannot display" option which, when disabled, displayed all resolutions (and refresh rates) in Display Properties.

The Problem

If you are using Windows Vista (or Windows 7), you have probably noticed that you can only select modes exposed by your monitor even if you uncheck "Hide modes that this monitor cannot display". This is not limited to Display Settings: the NVIDIA Control Panel (if you have an NVIDIA card) and List All Modes dialog also display only those modes that are allowed by the EDID. But what if you wanted to run your CRT monitor at a higher resolution than it tells Windows it supports? What if you have defined a custom mode that is outside the range specified in the EDID? What if you are stuck at 60 Hz because you are running at the rated maximum resolution of your monitor? Or, what if, for some strange reason, you are hopelessly stuck at 60 Hz in Windows 7 like I was?

Fortunately, it's possible to run any resolution and refresh rate in Vista, much like in XP. Unfortunately, in order to do so, you will need to perform surgery on your monitor's cable.

A note about EDID, DDC, and the nature of CRT monitors

EDID stands for Extended Display Identification Data. It is transmitted through the DDC (Display Data Channel) and is used by the operating system to determine which modes the monitor supports, as defined by the manufacturer. EDID also contains information such as monitor manufacturer/model, timings, screen size, color system, and so on.

CRT monitors can be run at resolutions higher than the ones stored in the EDID. I have successfully run a monitor rated for 1024x768 at 1152x864, and a monitor rated for 1280x1024 at 1920x1152. It is also possible to run CRT monitors at higher refresh rates than those specified in the EDID; this is useful when, for example, the maximum resolution of a monitor only allows a 60 Hz refresh rate, but a refresh rate of 70 Hz is desired.

DDC (and thus EDID) can be disabled by removing pin #12 from the VGA connector. This causes the monitor to be detected by the operating system as a non-Plug-and-Play monitor, which makes Vista to display all (or most) of the resolutions supported by the video driver.

Why pull out pins?

Windows 9x uses the EDID to detect a Plug-and-Play monitor's maximum resolution, but this can be overridden by disabling PnP monitor detection and manually selecting a (modified) driver for the monitor. Windows XP honors the EDID for PnP monitors as well, but this behavior can be overriden via the "Hide modes that this monitor cannot display" option. Windows Vista honors the EDID no matter what, so the only way to disable it is to do so at the hardware level.

Performing the modification

WARNING: This tutorial involves the modification of your monitor's video cable. Note that a) this will void your monitor's warranty (unless you are using a detachable cable), b) carries a certain amount of risk, and c) may have unforeseen side effects (such as an application accidentally changing the resolution to a setting that your monitor cannot handle). I am not responsible for any damage to your hardware that you may incur by following my tutorial. Do this at your own risk.

NOTE: This modification is intended for CRT monitors. It is NOT recommended that you do this on an LCD monitor.

1. The Tools

Make sure you have the following:

  • Needle-nose pliers
  • Pinout of a VGA connector, available here (optional)
  • Monitor cable (VGA)
  • A few minutes of time (but may take longer)

TIP: If you have one, use a detachable VGA cable, or a small male-to-female VGA patch cable, instead of the cable on your actual monitor. I used an old 6" patch cable used from an old 3D accelerator card.

2. Identifying the pins

Here is where that pinout comes in handy. Take your VGA connector and position it with the wider end of the connector at the top. The pins are numbered 1 through 15, with pin #1 being the leftmost pin in the top row. In order to disable DDC without affecting anything else, you need to remove pin #12 (see picture).

3. Removing the pin

Firmly grip the pin with needle-nose pliers. Rock the pin back and forth, being careful not to bend any others (or the connector's outer shell), pulling it the whole time. It will take a few tries, but eventually you will get it out. I managed to remove exactly half of pin #12 on my first try, and it took a bit more effort to remove the second half (seems like the top half of the pin is hollow or fluted in some connectors).

Finished product

Finished pin mod
 

I performed this mod on an old 6" patch cable that was previously used for connecting a 3D accelerator. I call it my "freedom cable", as it can be connected to any monitor to temporarily disable its EDID :D

Finished pin mod
 

4. Reconnect your monitor

Plug the monitor back in. Note that you need to restart the computer before changing any settings, or you may have issues with setting resolutions.

Results

After you remove pin #12 and disable DDC, Windows will no longer recognize your monitor as Plug-and-Play due to the lack of EDID.

Now, Windows allowed me to adjust my resolution up to 2048x1536, and so did the NVIDIA Control Panel.

If it weren't for this hack, I would not be using Windows 7 right now due to the 60 Hz refresh rate being the only selectable option. (60 Hz hurts on a CRT monitor.) After the modification, I was able to select any refresh rate that I wanted.

Disadvantages of this modification

Since your monitor is no longer defined as a PnP monitor, and is missing its EDID, programs which rely on this information may have issues. Also, Windows does not know what is best for your monitor, thus you may get a sub-optimal display in some cases.

A note on LCD monitors

Unlike a CRT, an LCD monitor has a fixed number of pixels. The native resolution of an LCD monitor corresponds to the number of actual pixels on the panel; lower resolutions are interpolated to fit this fixed grid, producing a less-than-crisp image.

LCD monitors generally do not respond well to higher-than-intended resolutions; even if you are able to do this successfully, the image may be so blurry it is unusable. I do not recommend this modification for an LCD monitor, unless you want to disable the EDID for a reason other than allowing higher-than-recommended resolutions.

Alternate method: flash your monitor's EDID

This involves replacing the EDID of your monitor with your own custom EDID, which can be set to specify the maximum resolution of the monitor. There are several advantages of using this method over the pin-removal method outlined in this article, the most notable being the fact that the monitor is still detected as a plug-and-play monitor and can be identified as itself.

There is a significant risk involved in flashing your monitor's EDID; if done incorrectly, or something goes wrong, you could end up with a bricked monitor. Additionally, not all monitors have a flashable EDID. I, personally, would rather pull out the pin.

EnTech Taiwan's PowerStrip (great little program that I've been using ever since I got my first desktop computer) includes a tool for flashing your monitor's EDID, though it is not guaranteed to work for all monitors, and requires the registered version.

"Out Of Range" errors

If you, or an application or game on your computer, sets the resolution to something that your monitor can't handle, you will receive an "Out Of Range" error message on your screen, the screen will go black, or the screen will appear garbled. If this happens, you can reset your display mode by restarting the computer manually and pressing F8 immediately after the POST screen. Select "Enable Low Resolution Video (640x480)" or "Enable VGA Mode" and hit Enter. Go back into Display Settings and change your resolution to what you prefer.

This issue is not limited to monitors with DDC disabled; it can happen in Windows XP and eariler if "Hide modes that this monitor cannot display" is turned off or if you are using a modified monitor driver. This issue may have been one of the reasons prompting Microsoft to have Windows Vista follow the EDID no matter what.

Conclusion

I hope you enjoyed this tutorial, and have learned something from it. Please leave a comment if you have any questions or would like to correct me on anything.

Back to top

Posted on 1/20/2009 6:22 PM | Permalink

Comments (16)

Posted by Python09 on Wednesday, January 21, 2009 @ 8:17 PM
NICE article!

I may do this to my Monitor :D

Posted by Dave on Wednesday, July 8, 2009 @ 7:21 PM
I've have an older small 15" LCD monitor ( made be SVA ) that has never worked with my newer Macs or new PC with vista. I finally stumbled on this page, worked perfect ! Thanks!

Posted by Endre on Wednesday, October 28, 2009 @ 4:18 PM
This works perfectly! I have a LCD syncmaster 940n. I was stuck at 60hz in Windows 7. I removed the EDID and can now run at 70hz. I did 70hz with vista. 70hz equal as clear as 60hz(I think), but at 75hz my screen became unclear. By the way, how can I determine the best possible hertz for my monitor?

Posted by nookkin on Thursday, October 29, 2009 @ 9:14 AM
LCD monitors are usually very picky as far as resolutions and refresh rates are concerned. Due to their nature, LCD monitors don't even have a "refresh rate" in the usual sense of the word. A CRT running at 60 Hz redraws the screen 60 times per second (if the phosphors fade out before the next redraw, you get flicker); an LCD only redraws the pixels that have changed. Running an LCD monitor at 70 Hz will make no difference because most of them actually scale down to 60 Hz internally.

Posted by billy on Thursday, November 26, 2009 @ 7:34 AM
is there any way to make this possible via software

Posted by billy on Thursday, November 26, 2009 @ 7:39 AM
is there any way to make this possible via software i have netbook compaq mini with led monitor resolution 1024x546.
i can not operate 800x600 in vista or windows 7. i cant play games;;;

Posted by vrekman32 on Sunday, November 29, 2009 @ 5:33 PM
this comment is just to thank you.
I also have an old "pass through" cable of the legendary voodoo2 that I can mod. This tip of yours might be a life saver, especially if you see the travesty with the 9.11 catalyst for the new 5800 cards and crt monitors...

Posted by Ezane on Saturday, December 5, 2009 @ 5:28 PM
YES! After hours and hours of test: I have my CRT to 1600x1200@100HZ on Windows 7 64 bits !

Posted by Ezane on Saturday, December 5, 2009 @ 5:30 PM
(I remove the pin #12 of adaptater VGA-DVI)

Posted by Cardo on Sunday, December 27, 2009 @ 1:26 AM
This is amazing. I was screwing around with this and different drivers for days and at first the pin removal didn't seem to work either, at least the nVIDIA CPanel test wouldn't allow it and Windows would set me to 256k colors.

But running the game I needed in 640x480 @ 100hz it runs perfect, **** W7 or nVIDIA not making them compatible.

Thanks!

Posted by Boris on Friday, January 22, 2010 @ 9:25 AM
Thank you SO MUCH!!!!!
You are my life... nope... my EYE-SAVER!
(Have a LaCie19blueIV/Mitsubishi Diamondtron 930SB). and a HUGE problem with W7 and a 8500 Nvidia.
May you live luckily 100 years!

Posted by Vader on Tuesday, January 26, 2010 @ 6:08 PM
Stop, man! No need to cut or flash anything for nVidia.
Try adding a resolution - for example "1024x768 at 85Hz" in the NVIDIA Control Panel (tab: "resolutions").
It works well!
(playing with it around, you can discover a new world of performace of some old junky CRT monitor)
:)

Posted by Mike on Sunday, February 7, 2010 @ 1:23 PM
http://social.answers.microsoft.com/Forums/en-US/w7hardware/thread/84f41660-1933 -4109-9b13-1ea8a1c27be7

You are awesome, just saved me about $100

Posted by Mike on Sunday, February 7, 2010 @ 1:24 PM
http://tinyurl.com/yf2lzuz

You are awesome, just saved me about $100

Posted by aamw on Tuesday, February 23, 2010 @ 12:58 PM
Thank you so much! this really saves eyes. Instead of modifying a cable which serves me well for 10 years I have bought a Db15-GenderChanger M-F and pulled out Pin 12.

Posted by seb on Wednesday, March 3, 2010 @ 4:44 PM
doesn't work under win7pro and mobile intel4 series express chipset familie. it always shows one standard resolution even after removing pin12. however, there wont be any solution for me...

Leave a comment:

You may format your comment using BBCode. The following tags are allowed: [b] [i] [u] [s] [quote] [code] [url] [size] [color] [img]. HTML and CSS are not allowed. Your e-mail address will not be displayed publicly.Please read the comment rules and tips before posting.
2 + 0 = (Huh?)
Valid XHTML 1.0 Strict Valid CSS level 3 Level A Conformance to Web Content Accessibility Guidelines 1.0
Web Design by Nookkin