
cnc-ddraw
Summary
cnc-ddraw reimplements the DirectDraw API to address compatibility problems in older 2D games, including black screens, poor performance, crashes, and faulty Alt+Tab behavior. It supports GDI, OpenGL, and Direct3D 9 renderers, with automatic renderer selection. Display options include windowed, fullscreen exclusive, and borderless modes; Alt+Enter switches between fullscreen and windowed. GLSL shaders can upscale the image. Other features include an FPS limiter, VSync, optional mouse sensitivity scaling, and automatic saving and restoring of window position, size, and state. The project lists Windows, Linux through Wine, macOS, Android, and virtual machines as supported environments. To set it up, extract the downloaded archive into the game folder and start the game. On Wine, users need to configure the ddraw override in winecfg or run the configuration utility once. The game must use a DirectDraw Software renderer: cnc-ddraw does not support Direct3D games. It is free software provided under the MIT License.
Who it is for
cnc-ddraw suits people trying to run older 2D games that use a DirectDraw Software renderer. It is not suited to games that use Direct3D.
What is good
- Supports GDI, OpenGL, and Direct3D 9 renderers.
- Provides windowed, fullscreen, and borderless modes.
- Includes an FPS limiter and VSync.
- Available for Windows, Wine, macOS, Android, and virtual machines.
- MIT-licensed and free.
What to know first
- Requires a game with a DirectDraw Software renderer.
- Does not support Direct3D games.
- Wine users need to configure the ddraw override or run the utility.
Everything Xiaomi review
cnc-ddraw: the full review
cnc-ddraw offers display and compatibility options for games that use DirectDraw Software rendering. Confirm the game's renderer before setting it up.
Overview
cnc-ddraw is a free runtime compatibility layer for older 2D games built around DirectDraw. It suits players whose games offer a DirectDraw software renderer and struggle with display behavior on newer systems. Its focused compatibility tools are useful, but it is not a fix for every older Windows game.
The key dividing line is the game's renderer: cnc-ddraw does not support Direct3D games. The project lists many classic titles, while noting that its compatibility list is incomplete and not usually updated, so a missing game is not proof that it will fail.
Key features
Rendering can use GDI, OpenGL, or Direct3D 9, with automatic selection available. That gives the layer several paths to address compatibility problems without asking users to choose manually, though the underlying game still needs DirectDraw software rendering.
Windowed, fullscreen-exclusive, and borderless modes cover the main ways to fit older games to a modern desktop. Alt+Enter switches between windowed and fullscreen, a practical shortcut for players who need to move between play and other tasks. GLSL shader upscaling can improve the presentation of low-resolution games.
An FPS limiter and VSync provide controls for frame pacing and synchronization. Optional mouse-sensitivity scaling helps when input feels mismatched, and automatic saving and restoration of window position, size, and state avoids resetting the layout each time. These conveniences address display and usability issues rather than broad game compatibility.
Pricing
cnc-ddraw costs 0.00 USD per free. The MIT License permits use, copying, modification, distribution, sublicensing, and sale subject to its terms. There are no paid tiers to weigh against the free version; the main qualification is that the game must use a DirectDraw software renderer.
Setup is direct: download cnc-ddraw.zip, extract it into the game's folder, and start the game. On Wine for Linux, macOS, or Android, the instructions call for manually overriding ddraw in winecfg or running cnc-ddraw config.exe once. If a game will not start or crashes, the project asks users to generate and upload a debug log and points to its wiki for game-specific setup guidance.
Platforms
The project lists Windows ME, 2000, XP, Vista, 7, 8, 10, and 11, along with Wine on Linux, macOS, Android, and virtual machines, as supported environments. Its host platforms are Windows, Linux, macOS, and Android.
Who it's for
Choose cnc-ddraw when a classic 2D game has a DirectDraw software renderer and suffers from black screens, weak performance, crashes, or unreliable Alt+Tab behavior. Its renderer choices and display controls make it a focused option for that specific compatibility problem. Look elsewhere if the game uses Direct3D, or if you need a broader tool for running games rather than a DirectDraw replacement.
Pros and cons
- Pros: Free under the MIT License, with no paid tier to unlock its listed functionality.
- Pros: Multiple renderers, display modes, shader upscaling, and window-state restoration address several common presentation issues in one layer.
- Cons: Direct3D games are outside its scope, making the game's renderer a necessary compatibility check.
- Cons: Troubleshooting a failed launch may require producing and uploading a debug log or following game-specific wiki instructions.
Alternatives
Game Compatibility Layers is a useful category to browse when you want to compare approaches rather than settle on a DirectDraw-specific tool.
Box64 is another free option for Android and Linux; choose it if those are your target platforms and you are considering a different compatibility tool.
GameHub is free across Android, iOS, and macOS. Its cloud gaming and streaming require a stable network, so it is a different fit from a local DirectDraw compatibility layer.
Bannerlator is a free Android option, with compatibility varying by GPU, Android version, and game and no support commitment. Bottles is free for Linux and macOS users considering another option.
Proton-CachyOS is a free Linux alternative. DXVK is free for Linux and Windows, but requires Vulkan; Linux/Wine use also needs a compatible Vulkan driver.
PlayOnLinux is free on Linux and macOS, though not all games are supported and performance can occasionally decrease. vkd3d-proton is a free open-source project for Linux and Windows.
Verdict
cnc-ddraw is a strong, cost-free choice for players whose older 2D games use DirectDraw software rendering and need better display compatibility. Its renderer and window controls target that job directly. The decisive reason to look elsewhere is equally clear: it does not support Direct3D games, so it cannot serve as a universal fix for a classic title.
cnc-ddraw plans and pricing
All plansCompared on game compatibility layers
- Free plan
- Yesgithub.com
- Host platforms
- Windows, Linux, macOS, Androidgithub.com
- Runtime model
- translation + runtimegithub.com
- DirectX support
- not statedgithub.com
- Vulkan support
- Nogithub.com
- Steam integration
- Nogithub.com
- Anti-cheat status
- not statedgithub.com
Facts
- Purpose
- cnc-ddraw reimplements the DirectDraw API to improve compatibility in older 2D games that have issues such as black screens, poor performance, crashes, or defective Alt+Tab behavior.github.com · 28 Sept 2026
- Renderers
- It supports GDI, OpenGL, and Direct3D 9 renderers, with automatic renderer selection.github.com · 28 Sept 2026
- Display modes
- It supports windowed, fullscreen exclusive, and borderless modes, and Alt+Enter switches between fullscreen and windowed modes.github.com · 28 Sept 2026
- Scaling
- It supports upscaling through GLSL shaders.github.com · 28 Sept 2026
- Other features
- It includes an FPS limiter, VSync, optional mouse sensitivity scaling, and automatic saving and restoring of window position, size, and state.github.com · 28 Sept 2026
- Compatibility
- The project lists Windows ME, 2000, XP, Vista, 7, 8, 10, and 11, Wine on Linux, macOS, and Android, and virtual machines as supported environments.github.com · 28 Sept 2026
- Setup
- The instructions say to download cnc-ddraw.zip, extract it into the game folder, and start the game.github.com · 28 Sept 2026
- Wine setup
- For Wine on Linux, macOS, or Android, the instructions say to override ddraw in winecfg manually or run cnc-ddraw config.exe once.github.com · 28 Sept 2026
- Limit
- The game must have a DirectDraw (Software) renderer; cnc-ddraw does not support Direct3D games.github.com · 28 Sept 2026
- Game compatibility
- The repository lists many supported classic games and says the list is incomplete and is not usually updated.github.com · 28 Sept 2026
- Troubleshooting
- For games that fail to start or crash, the README asks users to generate and upload a debug log; it also directs users to the wiki for game-specific setup steps.github.com · 28 Sept 2026
- License
- The repository provides the software under the MIT License, which permits use, copying, modification, distribution, sublicensing, and sale subject to its terms.github.com · 28 Sept 2026
Best cnc-ddraw alternatives
See all 12Where it ranks on Everything Xiaomi
Is cnc-ddraw yours?
Claim it for free: prove the domain, then correct facts, plans and screenshots. An editor reviews every change.
Sources
- github.com/FunkyFr3sh/cnc-ddraw· checked 28 Sept 2026
- github.com/FunkyFr3sh/cnc-ddraw/blob/master/LICENS· checked 28 Sept 2026