New
#1
How I fixed corrupt color palette on some old games on Windows 7
Remember: Backup your registory prior to making any changes to it - Safety First
Step 1: Download / install and run Procmon.exe
Step 2: Run game with all default compatability settings ( eg: none except maybe "run as admin"
Step 3: Alt Tab out of game to Procmon window
Step 4: setup a filter on Procmon -> Path : to "DirectDraw\MostRecentApplication" set as include
Step 5: all going well it should show some entries relating to your game
Step 6: Look at the ID (it'll show up as a DWORD.) you'll need to convert this to a hex value
Step 7: open up regedit.exe and go to section "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\"
Step 8: Make a new Key in there naming it to something that resembles the game your running
Step 9: make a new Binary value and name it "Flags"
Step 10: double click on that newly created field and type in the Hex values " 00 08 00 00"(it will add in the spaces for you) then press enter
EDITED Step 11: make a new DWORD value and name it "ID"
EDITED Step 12: double click on that newly created field and type in the values you've converted DWORD value as DECIMAL then press enter
Step 13: make a new string value entry named "Name"
Step 14: double click on that newly created field and type in the text from Procmon as displayed for the Name of the program
Step 15: export the entries that you've just made as a backup for future use (eg: on a rebuild of your computer or something)
Below are samples of games that had corrupted palletes that are now showing correct on my computer, eg:Age Of Empires, Age Of Empires Expansion, Age of Empires 2, Age of empires 2:Conquerers, StarCraft.
EDITED CODE BELOW TO ADD SOME MORE ENTRIES AS I'VE FOUND THAT THE AUTOMATED METHOD STILL DIDN'T WORK AFTER HAVING TO REBUILD MY SYSTEM. i'VE REVERTED BACK TO MY OLD MANUAL METHOD
AFTER ORIGINALLY POSTING THE MESSAGE I'VE FOUND OUT THAT IT WORKS EVEN IF YOU ENTER THE ENTRY IN STEP 12 AS A DECIMAL dword AS OPPOSED TO A HEX VALUE .. THUS MAKING IT EASIER TO FOLLOW AND DO (NOTE i HAVN'T CHANGED THE OLD HEX VALIES IN THE CODE AS THEY TOO WORK ..Code:Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\AGE2_X1.ICD] "Name"="AGE2_X1.ICD" "Flags"=hex:00,08,00,00 "ID"=dword:3b7433ec [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\EMPIRES2.ICD] "Flags"=hex:00,08,00,00 "ID"=hex:df,d1,81,39 "Name"="EMPIRES2.ICD" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\aoe2_x1] "Flags"=hex:00,08,00,00 "ID"=hex:ec,33,74,3b "Name"="age2_x1.exe" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\StarCraft116] "Flags"=hex:00,08,00,00 "ID"=hex:ca,89,65,49 "Name"="Starcraft.exe" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\EMPIRES.EXE] "Name"="EMPIRES.EXE" "Flags"=hex:00,08,00,00 "ID"=dword:353f8679 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\EMPIRESX.EXE] "Name"="EMPIRESX.EXE" "Flags"=hex:00,08,00,00 "ID"=dword:35ec85c2
enjoy
Last edited by Blue Steel; 15 Nov 2010 at 06:54. Reason: edited steps 11 and 12 & added MORE .REG ENTRIES