Skywing's DxWnd (Run DirectDraw fullscreen apps as a window)

DxWnd can be used to run DirectDraw 7 (or below) programs as a window, even if they don't natively support a windowed mode. It probably won't work with programs that use Direct3D or DirectDraw 8/9 right now.

If it doesn't quite give the results you expect with a game (such as odd cursor behavior), you may have some luck by customizing the standard patch configuration for the program.

Feel free to post back with any programs you get it working with, and what options you used.

As a side note, games that were ported from DOS to Win32 are an especially good candidate for this.

A list of known compatible games and the options to use with them is included.

System requirements:

Getting Started:

After you download and extract the DxWnd.zip you can begin by either executing from command line (in Command Prompt) or more conveniently create a shortcut. The syntax for the execution should be:
(e.g. With Starcraft, I created a shortcut named "Starcraft - Window Mode" and then as a the target: "C:\Documents and Settings\Interdev\My Documents\My Received Files\DxWnd\DxWnd.exe" "C:\Program Files\Starcraft\starcraft.exe" "C:\Documents and Settings\Interdev\My Documents\My Received Files\DxWnd\Starcraft.dxw")

Update History:

[02/10/2004] Version 1.02 has been released. This corrects an issue that prevented the Starcraft patcher from working properly, and adds a new patch option to the standard patcher (Defer Window Display). This option is off by default.

[03/18/2004] Version 1.031 has been released. This corrects an issue that caused crashes when programs called GetProcAddress with an ordinal. Additionally, it introduces preliminary Direct3D8 support (further testing is required to determine how well the D3D8 patching will work in practice - this is included in the generic patcher).

[03/18/2004] Version 1.032 has been released. This adds some new compatibility fixes, which among other things can be used to fix some problems when playing Civilization III with DxWnd. Additionally, now the first patcher in the patcher list is automatically selected when you first start DxWnd.

[09/24/2006] Version 1.034 has been released. This is a minor release that fixes a couple of obscure crash problems, and adds experimental support for rescaling windows to a larger size for DirectDraw (at this time, scaling is available only for the Standard patcher, not the Starcraft patcher). To enable scaling, configure a program with the Standard patcher and select the "Stretch Video" option. Optionally, specify an initial desired window size with the "Window Size" option. Rescaling the program's video output in this manner will incur a performance penality, so if your program runs too slow with scaling enabled, you may need to disabling scaling and run the program at it's normal output size. Additionally, scaling will result in a perceived loss in precision with the mouse cursor, as coordinates are translated back down to the program's preferred video output size. Enabling scaling will also enable the maximize and resize functionality for the main program window of the program you are patching. Remember that if you have selected the "Clip Cursor to Window" option, the cursor will continue to be clipped to the client area as long as the target program has focus, so you will probably need to right click on the task bar icon for the program to access to the maximize or resize options from the system menu. Additionally, this release was rebuilt using a new compiler, so new runtime libraries are required (linked from this post); be sure to install them if you are unable to start the new DxWnd version.

[09/24/2006] Version 1.035 has been released. This release fixes a longstanding graphics corruption problem with games using IDirectDrawSurface::Flip (such as Master of Orion II), and fixes a problem where the "Stretch Video" option would not function as expected if the window size was left set at the automatic option.

How You Can Help:

We are going to extended lengths to provide open knowledge and resources for DxWnd so that we can enhance the database of games in which DxWnd may support. You can help by submitting (preferably in this forum thread) which games you found to be working and which patch was used during testing, so that we may add to our compatibility.txt (or perhaps a more efficient database, depending on popularity). Another way to help would of course be writing the patches for the games that may need them, as well as what options you use while configuring DxWnd to work with the specified game. Finally, you will be a great help by submitting any known errors with DxWnd. -Please-, be specific. Read current known compatibility issues and errors before submitting. Also, give as many details as you possibly can. Thank you all for your interest in DxWnd.

Authors:

Skywing, http://www.nynaeve.net/