Jump to content
  • 0
pichorra

Fixing weird colors on Windows Vista/7

Question

pichorra    0

Well, nobody does this topic, so, i want create it.

 

If you are running windows vista/7 you must perceived the "Command & Conquer: Tiberian Dawn" and "Command & Conquer Red Alert 1" have colors problems on that operational system, the solution is bellow:

 

Command & Conquer Gold

This is an actual fix for the color issue, rather than the workarounds we've been forced to deal with so far. It's based on an identical fix for StarCraft by warlord_7. You need to be using Nyerguds's 1.06c r1f1 patch for this. Open Notepad and paste whichever one of these corresponds to the version of Windows 7 you're running:

 

32-bit:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\Command & Conquer Gold]
"Flags"=hex:00,08,00,00
"Name"="C&C95.exe"
"ID"=hex:d5,83,dd,32

 

64-bit:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Command & Conquer Gold]
"Flags"=hex:00,08,00,00
"Name"="C&C95.exe"
"ID"=hex:d5,83,dd,32

 

File -> Save, choose "All Files" from the "Save As" type dropdown menu, and save it with the extension ".reg". Then, double click on the .reg file you made, confirm that you want to add the key, and give the game a try. The intro video may still have the wrong colors (this seems random, sometimes it's fine, usually it's not), but the game and the rest of the videos will be fine. If you have your wallpaper set to slide show, you'll still get messed up colors when your wallpaper changes. This will last until the end of any video that was playing, but will only cause a brief flicker in the actual game.

 

 

 

Red Alert 95

 

This is an actual fix for the color issue, rather than the workarounds we've been forced to deal with so far. It's based on an identical fix for StarCraft by warlord_7. You need to be using the v3.03e patch for this. Open Notepad and paste whichever one of these corresponds to the version of Windows 7 you're running:

32-bit:

 

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\Command & Conquer Red Alert 95]
"Flags"=hex:00,08,00,00
"Name"="ra95.dat"
"ID"=hex:cb,58,cb,36

 

64-bit:

 
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Command & Conquer Red Alert 95]
"Flags"=hex:00,08,00,00
"Name"="ra95.dat"
"ID"=hex:cb,58,cb,36

 

File -> Save, choose "All Files" from the "Save As" type dropdown menu, and save it with the extension ".reg". Then, double click on the .reg file you made, confirm that you want to add the key, and give the game a try. The intro video may still have the wrong colors (this seems random, sometimes it's fine, usually it's not), but the game and the rest of the videos will be fine. If you have your wallpaper set to slide show, you'll still get messed up colors when your wallpaper changes. This will last until the end of any video that was playing, but will only cause a brief flicker in the actual game.

 

 

(And for the record, no, I have no idea what that flag actually does or what others are available. I only got it from the StarCraft fix, which itself seems to have been based on existing SC fixes already in the registry. I've searched, but I can't find any information on these flags.)

 

Another way to "fixing" it (it is not a fix, it is a workarrond).

 

Simply download This file, extract into the game directory (remember, it is only compatible with C&C!), and run it. But i do not recomend doing it by this way, it is the more messy and the unsecure one, only do this if THE REG. FIX IS NOT WORKING!

 

 

[spellchecked by Nyerguds. And FYI, what this does is putting the game in a special DirectX compatibility mode ;)]

exkillcnc.zip

Share this post


Link to post
Share on other sites

62 answers to this question

Recommended Posts

  • 0
Nyerguds    43

Nice batch file, though for later-than-XP systems (on which this bug is most common), you better use Win98 compat mode.

 

Share this post


Link to post
Share on other sites
  • 0
Irony    0

It's down to when another application grabs focus (even for a millisecond) it will overwrite the current pallet with the windows standard 4-bit pallet.

 

This could be fixed with one of two ways:

 

1. C&C could frequently reload the pallet (Not sure about the feasibility of this, Considering it'd probably need re-initializing of the DDraw object. and that DEP would stop any direct memory writes to that area)

 

2. There's the

 

HKCU/Control Panel/Desktop/ForegroundLockTimeout=0xFFFFFFFF

 

Which may work. But affects all of windows (basically sets an amount of time that has to be waited before an application can steal focus).

 

 

Someone who has the issue a lot should test to see if option 2 works with C&C

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

Actually, the problem persists in C&C through several palette changes. Every video load, switch between theaters, main menu, they're all different palettes. They all get corrupted right away.

Share this post


Link to post
Share on other sites
  • 0
pichorra    0

but, compatible with Windows 98/ME is

set __COMPAT_LAYER=Win98

or

set __COMPAT_LAYER=Win98/ME

???

 

[Edit] The game who is called "Worms Armageddon" uses palletes too, and the 1° options solution don't work to him, but for cnc works :huh: i will implement this game on my batch file :P

Share this post


Link to post
Share on other sites
  • 0
Tarvis    0

For StarCraft and Red Alert (but oddly not CNC GOLD) I have been able to fix this without using the resolution window in Windows 7 by checking 256 Colors and 640x480 Screen Resolution in the compatability tab, also without need to use Windows 98 compatability.

 

As I said though, this doesn't work for CNC Gold, however the resolution window works.

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

Note that it seems to react different on different systems. For some people, the res window didn't work at all in some cases.

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

Not a clue about any of that stuff... but I'll ask Hyper about it. Would be awesome if we can actually fix this issue.

Share this post


Link to post
Share on other sites
  • 0
pichorra    0

Updated 4/22/2010

Added a new way, just follow the 3° Step. i think this is the real solution of the problem.

Share this post


Link to post
Share on other sites
  • 0

Nice one, worked perfectly on my Brothers laptop

im still to fix RA1 but when i do do you want me to post "ID" to give people another example/so its easy for them

(@Tore this topic might be worth being Stickied)

Share this post


Link to post
Share on other sites
  • 0
pichorra    0

I'll search it, but, how i said, wasn't me who did it. I did the killing explorer solution.

 

[Edit] i get the code and does it for Red Alert, it is on the 1rst topic.

Share this post


Link to post
Share on other sites
  • 0
Irony    0

@Nyer,

 

how simple is it to set the blitting to 32-bit colour as per http://stackoverflow.com/questions/1054365/exclusive-directdraw-palette-isnt-actually-exclusive ?

 

Not a clue about any of that stuff... but I'll ask Hyper about it. Would be awesome if we can actually fix this issue.

 

What base language does C&C95 use? It's C++ right?

 

If I was able to (when I get the time) give you the assembled C++ to instantiate a 32 bit buffer and then the routines to blit into that buffer, would you be able to put it in? or have you not really touched the rendering stuff?

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

C or C++... not sure. But I personally have no idea about any of that graphics stuff... sorry.

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

I cleaned the guide up a bit. As far as I know, that ID is generated from the internal process name, which stays the same throughout all versions of C&C and all versions of RA, meaning there's no need to make the key names version specific.

Share this post


Link to post
Share on other sites
  • 0
Titan Joe    0

So maybe this is totally useless, but Sole Survivor has messed up colors too.  Couldn't we make a registry key for that too?

 

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Sole Survivor]

"Flags"=hex:00,08,00,00

"Name"="sole.exe"

"ID"=hex:d5,83,dd,32<<<<--?

 

The only thing is those last hex numbers.  I don't know where you get them from.  I saw for to C&C RA and C&C TD they are different, so I'm assuming that they are uniquely chosen for the game.

 

A couple of other things to report:

C&CRA v2.00  Colors are still wrong with the fix (v3.03 is fine)

but

C&C v1.04a  Colors are good with the fix (worldwide warfare install)

 

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

Hmm, the original guide on the official boards had a way of finding that... basically looking at some RecentPrograms (or something like that) key in the same place after launching the program.

 

[edit]

 

Found it!

 

http://forums.commandandconquer.com/jforum/posts/list/38360.page

 

If you need to update the ID for whatever reason (new version of the C&C95 patch, fix for Red Alert or another game), run the game and then check this registry key:

 

32-bit:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\MostRecentApplication

 

64-bit:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplication

Share this post


Link to post
Share on other sites
  • 0
Titan Joe    0

I actually just found that right before I checked back here.  I followed the path (for 64 bit) and I only found C&C95's entry.  This is after I ran Sole Survivor.  I would think that it would be there.  I tried it a few times, but I must be missing something.

Share this post


Link to post
Share on other sites
  • 0
Nyerguds    43

Odd. I started the game, tabbed out, went to the registry entry and it was right there.

 

sole.exe - ID = 34 F1 B6 03

Share this post


Link to post
Share on other sites
  • 0
Titan Joe    0

This is what I made :

 

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Sole Survivor]

"Flags"=hex:00,08,00,00

"Name"="sole.exe"

"ID"=hex:03,b6,f1,34

 

But I had no luck.  I did the same thing to make it work for RA and C&C TD.  It's not really important since there is no server for the game and the game crashes about 30sec into it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    No registered users viewing this page.

×