Instructions:

To fix corrupted monitor EDIDs:
- create an DOS boot floppy (e.g. using WinXP format command)
- unzip the contents of the zip file to that boot floppy
- reboot the machine with the corrupted monitor attached and the boot floppy in the floppy drive
- wait for commands to complete, remove floppy, and reboot


Other Instructions:
- attach the monitor to be checked or updated to the desired output of the video card (note the use of the -m switch below may be required, depending on which port you select)
- unzip the attached files to a MS-DOS boot floppy (like the one created by WinXP format...), delete the autoexec.bat file
- boot the system with this floppy
- then:

1. run the following command:
ddcw
this will simply read the EDID from the attached monitor.  There are some switches like -q, -m, -f which are explained in the output from the ddcw command.  The ddcw command will also read and dump out the EDID from the attached monitor.  Check this EDID to see that it appears to be valid (i.e. if it is a monitor with a "bad" EDID, then make sure the output displays the "bad" EDID).

2. if the EDID dump looks OK, you can run the following command:
ddcw -f edid.txt
this will read (and dump out) the EDID from the monitor, compare it byte-by-byte to the edid read in from the file, and if there is a mismatch, it will attempt to write the edid from the file out to the monitor.  After the write, it will wait and then read the EDID again from the monitor.  If the correct EDID is read back, then it will display the message "update successful"  otherwise it will display "update FAILURE".  If the update is a FAILURE, you can try the ddcw command by itself again to dump out the EDID to see if any changes were made.

- other notes:

you can use the switch -q on the command line like this:

ddcw -f edid.txt -q
in order to suppress most of the output.  The program will still read and update the edid, but the only display message you will get is "update successful" or "update FAILURE"

you can use the switch -m on the command line like this:

ddcw -m 1  (or ddcw -m 1 -f lge_edid.txt -q)
this will cause the program to use the DDC channel on the second vga card port instead of the first output.  This usually means it will use the DVI port instead of the VGA port, but it may depend on the video card you use.  If no device is attached to the port you are trying to use, you will see an error message.


if you want to check the EDID only against an EDID file and report an error if mismatch (but no update) use:
ddcw -c edid.txt

The -p command will automatically (if a device is attached to the specified port) write the first 8 bytes of the device A0 EDID to 00 FF FF FF FF FF FF 00, use:

ddcw -p
(or ddcw -m 1 -p)