CnC-DDraw

CnC-DDraw is a graphics system override which fixes many of the graphical bugs in the Command & Conquer games that use 256-color full-screen DirectDraw as graphics system. It was specifically developed for Command & Conquer Gold and Red Alert, but was developed further to support other games, like Carmageddon.

Reasons for development
The DirectDraw full-screen 256-color mode is subject to numerous bugs, mostly caused by the fact programmers were tempted to use undocumented and therefore technically unsupported features of the DirectDraw system. The abandonment of these features in later updates of DirectX caused several bugs in older games. One of the most notable problems is the fact the 256-color palette of the game is corrupted by the Windows desktop by replacing the first and last eight colors of the palette by those of the standard Windows 16-color palette.

Operating principles
CnC-DDraw gets around these bugs by means of a ddraw.dll file put in the game folder, which then receives and handles all graphics output from the game instead of the real DirectDraw system. The CnC-DDraw dll then displays the graphics on a graphics surface which uses either GDI software rendering or OpenGL.

Besides the fixing of palette-related bugs, CnC-DDraw also contains options that allow extra game features like windowed mode, stretching of the game surface to custom resolutions, and frame rate limiting.