<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://dxgl.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=William</id>
	<title>DXGL Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://dxgl.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=William"/>
	<link rel="alternate" type="text/html" href="https://dxgl.org/wiki/Special:Contributions/William"/>
	<updated>2026-04-06T20:57:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3821</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3821"/>
		<updated>2026-04-05T05:20:36Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|100|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3820</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3820"/>
		<updated>2026-04-04T21:21:05Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|95|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3819</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3819"/>
		<updated>2026-03-30T04:41:33Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|80|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3818</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3818"/>
		<updated>2026-03-29T03:36:12Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|75|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3817</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3817"/>
		<updated>2026-03-28T04:12:21Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|60|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3816</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3816"/>
		<updated>2026-03-27T02:56:42Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|40|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3815</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3815"/>
		<updated>2026-03-21T15:42:43Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|25|task=Support dark mode themes}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=DXGL_Test_Results&amp;diff=3814</id>
		<title>DXGL Test Results</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=DXGL_Test_Results&amp;diff=3814"/>
		<updated>2026-03-15T22:47:22Z</updated>

		<summary type="html">&lt;p&gt;William: /* API Test Cases */  Update test results for API category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are the results of testing DirectX SDK demos and driver test programs.&lt;br /&gt;
Please note that these results are currently out of date.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=DirectX SDKs=&lt;br /&gt;
==DirectX 2.0 SDK==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Program&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|d3dtest.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|ddcaps.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes&lt;br /&gt;
|-&lt;br /&gt;
|ddex1.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing center message&lt;br /&gt;
|-&lt;br /&gt;
|ddex2.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Wrong colors&lt;br /&gt;
|-&lt;br /&gt;
|ddex3.exe&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Perfect&lt;br /&gt;
|-&lt;br /&gt;
|ddex4.exe&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Perfect&lt;br /&gt;
|-&lt;br /&gt;
|ddex5.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Possible palette issues&lt;br /&gt;
|-&lt;br /&gt;
|ddtest.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes&lt;br /&gt;
|-&lt;br /&gt;
|donut.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No output&lt;br /&gt;
|-&lt;br /&gt;
|duel.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes when beginning game&lt;br /&gt;
|-&lt;br /&gt;
|flipcube.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|foxbear.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes after loading graphics&lt;br /&gt;
|-&lt;br /&gt;
|globe.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|iklowns.exe&lt;br /&gt;
|bgcolor=&amp;quot;gray&amp;quot; | Untested&lt;br /&gt;
|-&lt;br /&gt;
|memtime.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Slow FPS, does not return to windowed mode&lt;br /&gt;
|-&lt;br /&gt;
|palette.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No effect&lt;br /&gt;
|-&lt;br /&gt;
|rockem.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|stretch.exe&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Perfect&lt;br /&gt;
|-&lt;br /&gt;
|tunnel.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|twist.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|wormhole.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Must change desktop resolution, palette cycling not working correctly&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Fnddraw.exe Tests=&lt;br /&gt;
==DCT Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|DCT_GetCaps ROP verification (DCT 5.20.1)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC98_21 (PC97 19) Transparent Blter&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC98_22 (PC97 20) Perform Double Buffer Swaps with no tearing&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC98_23 (PC97 22) Programmable Blter Stride&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Passes with warning&lt;br /&gt;
|-&lt;br /&gt;
|PC99 14.8 ScrnRes &amp;amp; VidMem Amt&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|PC99 14.23 Low-Res Support&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Passes with DXGLCFG option&lt;br /&gt;
|-&lt;br /&gt;
|PC99 14.22 App Access. FrameBuff1&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Fail but may be due to surface caching&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.6 720x576 Resolution&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass with minimum resolution&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.6 1280x720 Resolution&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass with minimum resolution&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.4 YUV support&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing YV12 format&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.5 Qual scaling Cons.&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.5 Qual scaling Enter.&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.1 Overlay support&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.2 Color key support&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|GRPH-0168 Minimum Screen Resolution (non-mobile)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|GRPH-0393.1 Mobile Minimum Screen Resolution&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DCT_LargeNumberOfBuffersPageFlipping&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DCT_ColorFillWithSourceSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass, disregards source&lt;br /&gt;
|-&lt;br /&gt;
|DCT_AGPPrimarySurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==API Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_DirectDrawCreate&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_DirectDrawEnumerate&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_AddRef/Release&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_Compact&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_CreateSurf&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_CreateSurf&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass/missing formats&lt;br /&gt;
|-&lt;br /&gt;
|API_HEL_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_DuplicateSurf&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with warnings&lt;br /&gt;
|-&lt;br /&gt;
|API_EnumDisplayModes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetFourCCCodes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_EnumSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass but wrong bitmasks&lt;br /&gt;
|-&lt;br /&gt;
|API_GetGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|API_FlipToGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Crashes in real life&lt;br /&gt;
|-&lt;br /&gt;
|API_Lock&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_RestoreDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetVerticalBlankStatus&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|API_GetScanLine&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Incorrect behavior&lt;br /&gt;
|-&lt;br /&gt;
|API_GetMonitorFrequency&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_SetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_Lander&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with errors&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDeviceIdentifier&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_TestCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Corrupts window style&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_SurfQueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetAvailableVidMem&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Flip&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetFourCCCodes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Unlock&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_SetCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetVerticalBlankStatus&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_WaitForVerticalBlank&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_EnumSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_SetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass with default settings&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Release&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Compact&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_RestoreDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_FlipToGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetScanLine&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_CreatePalette&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_EnumDisplayModes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetMonitorFrequency&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_ClassFactory&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==PAL Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|PAL_CreatePalette - Init 256 clrs(TC 2.6.9)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_CreatePalette - ALLOW256 Test(TC 2.6.12)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetEntries/SetEntries (8-Bit)(TC 4.5.7, 4.7.7)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Verify Palette Entries Untouched(Regress Nash #7535)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_CreatePalette - Invalid Params Test(TC 2.6.1-5)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetEntries - Invalid Params Test(TC 4.5.1-6)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_SetEntries - Invalid Params Test(TC 4.7.1-6)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetCaps Test(TC 4.4.3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetCaps - Invalid Params Test(TC 4.4.1-2)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Initialize Test(TC 4.6.3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette AddRef/Release Test (TC 4.2.2-3, 4.3.2-3 )&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Query Interface Test(TC 4.1.5-7)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Set New Palette Test (Regress: #8154)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Query Interface Invalid Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Release Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette AddRef Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_palGetPalette Test&#039;s surface get palette&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_MultiPalSwitch&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_IV_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==MEMMAN Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Consume All Video Mem Test(TC 6.1.1)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Test VidMem/AGP boundary for MipMap chains&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Rand Create/Release Video Memory surfaces 100X Test(TC 6.1.3)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Rand Create/Release AGP surfaces 100X Test(TC 6.1.3)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Video Memory Reuse Test(TC 6.1.2)&lt;br /&gt;
|bgcolor=&amp;quot;gray&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Create/Verify All Video Memory Types(TC ??]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN_GetAvailableVidMem(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Consume Half SysMem Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Random Create/Release System Memory surfaces Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Aborted&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==CLIP Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetHWnd/GetHWnd Test(TC 5.5.4, 5.9.5)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|GetClipList Test(TC 5.4.8, 5.8.9-10)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_IsClipListChanged Test(TC 5.7.3-4)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_CreateClipper - Invalid Params Test(TC 2.5.1-4)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetHWnd - Invalid Params Test(TC 5.9.1-3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_GetHWnd - Invalid Params Test(TC 5.5.1-3)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with warning&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetClipList While Using HWnd Test(TC 5.8.11)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetClipList - Invalid Params Test(TC 5.8.1-7)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_GetClipList - Invalid Params Test(TC 5.4.1-6)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_IsClipListChanged - Invalid Params Test(TC 5.7.1-2)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_DirectDrawCreateClipper(regress bug#4311)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_QueryInterface Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_Initialize Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==BLT Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, Offscreen Surfaces(TC 3.6.101-102, 2.6.105-106)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, VMem to Primary(TC 3.6.48, 3.6.103)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, System to Primary(TC 3.6.48, 3.6.107)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, AGP to Primary(TC 3.6.48, 3.6.103)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 2, VMem to Primary(TC 3.6.49-50)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 2, System to Primary(TC 3.6.49-50)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 2, AGP to Primary(TC 3.6.49-50)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 1.5, VMem to Primary(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 1.5, System to Primary(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 1.5, AGP to Primary(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Shrink (1/2), VMem to Primary(TC 3.6.53-54)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Shrink (1/2), System to Primary(TC 3.6.53-54)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Shrink (1/2), AGP to Primary(TC 3.6.53-54)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch(width only) x 1.5, VMem to Pri(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch(width only) x 1.5, System to Pri(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch(width only) x 1.5, AGP to Pri(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single SRCKEY, System to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single SRCKEY, VMem to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single SRCKEY, AGP to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY Space, System to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Probably incorrect fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY Space, VMem to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Probably incorrect fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single DESTKEY, System to Primary(TC 3.6.58)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single DESTKEY, VMem to Primary(TC 3.6.58)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single DESTKEY, AGP to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, DESTKEY Space, System to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, DESTKEY Space, VMem to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch, SRCKEY, System to primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch, SRCKEY, VMem to primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch, SRCKEY, AGP to primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch(width only), SRCKEY, Sys to pri(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch(width only), SRCKEY, VMem to pri(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch(width only), SRCKEY, AGP to pri(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch, Complete Overlap, VMem(primary)(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch, Complete Overlap, Sys. mem.(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch, Complete Overlap, AGP mem.(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,ROPs, VMem to Primary (TC 3.6.84)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT,ROPs, System to Primary(TC 3.6.84)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT Color Fill Primary(TC 3.6.57)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Color Fill SysMem(TC 3.6.57)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Color Fill AGP Mem(TC 3.6.57)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Clipped, VMem to Primary Test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Clipped, System to Primary Test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Border clipping test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Mirrored and Clipped (Manbug4.1#13532)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Shrink, (3/4), VMem To Primary&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Shrink, (3/4), Sys To Primary&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Shrink, (3/4), AGP To Primary&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch (Wx2, Hx.75), VMem to Pri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch (Wx2, Hx.75), Sys to Pri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch (Wx2, Hx.75), AGP to Pri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast From/To Same Surface(TC#3.6.97a)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Possible glitches&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast, SRCKEY, From/To same surface (TC#3.6.97b)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Possible glithces&lt;br /&gt;
|-&lt;br /&gt;
|BLT, FourCC to RGB conversion (TC#??.??.]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT, FourCC to RGB stretch (TC#??.??.]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT, FourCC to FourCC(TC# ?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast - MoveToSytemMemoryTest&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast - Verify RLE recompression triggered&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY with unused pixel bits set (#5663)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY (from VMem) with unused pixel bits set&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, DDERR_NOROTATIONHW (Manbug4.1#8172)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT_ZBuffer&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Blt with CS_PARENTDC clip window(#5673)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Incorrect output&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Invalid Params Test(TC 3.6.1-3, 3.6.5, 3.6.7-8 )&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_GetBltStatusMultBlts&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_GetBltStatusPostFlip&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFrontToBackBuff&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_OnscreenOverlap&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_OffscreenOverlap&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_SafeLockPri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_ColorConverting&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Sys to Sys&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Sys to Vid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Sys to AGP&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Vid to Vid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_NoSrcColorKey&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_NoDestColorKey&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT_CanNotColorFill&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_CanNotDepthFill&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_InvalidFlagsDDFX&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Sys to Sys&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Sys to Vid&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Sys to AGP&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast AGP to AGP&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast AGP to Sys (Driver may return DDERR_UNSUPPORTED)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast AGP to Vid&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Vid to Vid&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Vid to Sys&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Vid to AGP&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==DC Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|Get/Release DC x 25(TC ?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, Verify Pixel Format(TC ?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, GDI BitBlt() Tests(TC ?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, 16-bit DC Cache (ManBug #8348)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, GDI Blt from VidMem Surface to Window DC (ManBug #10431)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, StretchBlt with Pitch (ManBug #8154)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SURF Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LockRectVideo&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LockRectVideoWindowedMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LockRectSystem&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_Lock, Multiple Rects, Video&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Lock Invalid Parameters&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetDDInterface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumAttachedSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_Set/GetColorKey Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_QueryInterface, multiple buffer surface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_WideSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetClipper&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_AddAttachedSurface (flip chain)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LostSurfaceInvalidParam&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_DOSBoxInteraction&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetFlipStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_CopyToClipboard&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumPrimarySurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumOffScrnPlain&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumFourCCSurf&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with failures&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumSurfTryMatch&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_SetSurf&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|Surface4_API_GetSurfaceFromDC&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DATA_Surface4_GetSetClientDataInvalid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DATA_Surface4_GetSetClientData&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_CreateSurfaceFromMemory&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|UNIQ_Surface4_GetChangeUniquenessValue&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_IV_Create From Existing Mem&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_Blt Custom Memory Surfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_GetDC Custom Memory Surfaces&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_Change Surfaces and Blt&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetFlipStatus&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetBltStatus&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_PageLock&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_PageUnLock&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot;| Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetDC&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_ReleaseDC&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetColorKey&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetColorKey&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_BltBatch&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_BltFast&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Blt&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetPixelFormat&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Lock&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetDDInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetPalette&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetPalette&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetClipper&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetClipper&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_DuplicateSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_AddAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_EnumAttachedSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_DeleteAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_ReleaseFrontBeforeBack&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_SetSurfaceDescDXTn&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==OVERLAY Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Destination Color Key Test (TC#3.30.10)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Create with DestKey Test (TC#3.30.10)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Z Order (Insert front/back of)(TC# ?.?.?)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Position not maintained (Regress. OSR#49314)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Set/GetOverlayPosition (TC. 3.28.8, 3.31.7)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, SetColorKey(NULL) (TC. 3.30.17+18)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, UpdateOverlay&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, UpdateOverlayDisplay&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, AddOverlayDirtyRect&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, EnumOverlayZOrders&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, MultiOverlay&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Create 1x1 doesn&#039;t crash&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==3D Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|3D_Depth Fill Blt Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|3D_Flip MipMap Chain&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|3D_Z-Buffer Mask Fill&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|3D_NOSYSLOCK Texture Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|3D_ReallocateAliasing Texture Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|3D_IsSurfaceReallyLost Surface Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==VPE Test Cases==&lt;br /&gt;
Note:  Video port objects are not currently available in DXGL.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetDDVideoContainer&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_EnumDDVideoContainer&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_CreateEnumDDVideoContainer&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetInput/OutputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetBandwidthInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_WaitForSync&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_WaitForSync(Specific Line)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Flip&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_SetTargetSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetColorControls&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_SetColorControls&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetVideoSignalStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetVideoLine&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetFieldPolarity&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_QueryVideoPortStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_CreateVideoPort&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_StartVideo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_StopVideo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetOutputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetInputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetVideoPortConnectInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_EnumVideoPorts&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_UpdateVideo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Bob (AUTO)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Weave (AUTO)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Bob (MANUAL)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Weave (MANUAL)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_IV_SetTargetSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_IV_GetInputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_IV_GetOutputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_HardwareDeinterlacing (AUTO)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_HardwareDeinterlacing (MANUAL)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Color Control Test Cases==&lt;br /&gt;
Note:  Color control is not currently available in DXGL&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestBrightnessCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestContrastCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestHueCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestSaturationCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestSharpnessCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestGammaCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestColorEnableCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestInvalidGet&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestInvalidSet&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestGetInvalidSize&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestSetInvalidSize&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|cctrl_IV_TestAddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrl_IV_TestRelease&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrl_IV_TestQueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Kernel Test Cases==&lt;br /&gt;
Note:  Kernel mode functions are not currently available in DXGL&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_Release&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_GetKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_ReleaseKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfAddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfQueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfRelease&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfGetKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfReleaseKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==MULTIMON Test Cases==&lt;br /&gt;
Note:  DXGL does not currently support multiple-monitor configurations.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_AllFullScreen_AllResolutionCombinations&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_TwoFullScreen_ReleaseSecondaryMonitor&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_AllFullScreen_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_InitWindowedWithFullScreen&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_InitFullScreenWithWindow&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_InitWindowedAllDevices&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_TwoFullScreenPrototype&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_BltFast&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_SetSingleCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_SetDoubleCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==MOCOMP Test Cases==&lt;br /&gt;
Note:  DXGL does not support DXVA accleration.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MCC_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MCC_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MCC_Release&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetMotionCompGUIDs&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetCompBufferInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetInternalMemInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetUncompFormatsSupported&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_CreateMotionComp&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MC_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MC_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MC_Release&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_BeginFrame&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_EndFrame&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_Execute&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_QueryRenderStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==COM Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|Release DDRAW without Initializing&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|RELE_IndependentChildObjects(DD4, SURF3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|RELE_IndependentChildObjects2(DD4,SURF3-flipping chain)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Corrupts FNDDraw window&lt;br /&gt;
|-&lt;br /&gt;
|RELE_DependentChildObjects(DD2,SURF3)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Leaks objects&lt;br /&gt;
|-&lt;br /&gt;
|RELE_DependentChildObjects2(DD1,SURF1)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Leaks objects&lt;br /&gt;
|-&lt;br /&gt;
|RELE_DependentChildObjects3(DD1, SURF4)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Leaks objects&lt;br /&gt;
|-&lt;br /&gt;
|DDrawEnumEx&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==DD4 Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|DD4_API_IDirectDraw4&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DD4_DuplicateSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_EnumDisplayModes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_EnumSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetAvailableVidMem&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_SetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==WRITECOM Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|WRITECOM_CheckWriteCombineIsEnabled&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==GAMMA Test Cases==&lt;br /&gt;
Note: DXGL does not currently support gamma correction.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaModeChange&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaDOSBox&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaInterfaceInvalid&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Compressed Texture Tests==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_RGB to DXT* to Primary&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Verify DXT1 Compression&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Freezes up&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT - Sys to Sys&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT - Sys to Vid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT - Sys to AGP&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_TextureDXT1&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Incorrect output&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==CUBEMAP Test Cases==&lt;br /&gt;
Note:  Cube maps will be supported in a later release of DXGL.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|CUBE_Create Cube Map Surfaces Test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==STEREO Test Cases==&lt;br /&gt;
Note:  Stereoscopic display modes are not currently supported.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_EnumStereoModes&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_LableLeftRight&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_Flip&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_InvalidParms&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Refresh Rate Test Cases==&lt;br /&gt;
Note:  FNDDraw does not support refresh tests on Windows NT type systems; Win98 compatibility mode causes crashes.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|REFRESH_Suite&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash / Pending on WinNT&lt;br /&gt;
|-&lt;br /&gt;
|REFRESH_ParamTest&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash / Pending on WinNT&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3813</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3813"/>
		<updated>2026-02-21T06:00:11Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|100|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3812</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3812"/>
		<updated>2026-02-16T17:20:23Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|0|task=Improve GetDC() surface formats.}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3811</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3811"/>
		<updated>2026-02-16T17:20:09Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|100|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|0|task=Improve GetDC() surface formats.&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3810</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3810"/>
		<updated>2026-02-14T06:09:10Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */ Remove a finished task, was implemented in 0.5.26.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|50|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3809</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3809"/>
		<updated>2026-02-14T06:05:54Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|100|task=Add force single core mode}}&lt;br /&gt;
{{progression|50|task=Improve reliability of pixel formats in surface creation}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|99|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3808</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3808"/>
		<updated>2026-01-24T03:26:35Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */ Try to make antivirus less grumpy&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|90|task=Add force single core mode}}&lt;br /&gt;
{{progression|0|task=Move COM registration from installer to DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|99|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=3807</id>
		<title>Privacy policy</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=3807"/>
		<updated>2026-01-19T02:17:33Z</updated>

		<summary type="html">&lt;p&gt;William: /* Protection of information */ Update for current SSL certificates&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Please read the privacy policy before using this site.&lt;br /&gt;
&lt;br /&gt;
Please look at the bottom of the page at https://dxgl.org/wiki/Privacy_policy to determine the last time the Privacy Policy was modified.  To view changes, please [https://dxgl.org/w/index.php?title=Privacy_policy&amp;amp;action=history click here].&lt;br /&gt;
&lt;br /&gt;
== Information automatically gathered ==&lt;br /&gt;
As with all web servers, when you access this site, the following standard information may be automatically stored by the server:&lt;br /&gt;
* The current date and time&lt;br /&gt;
* The page requested&lt;br /&gt;
* Your user agent ID (which tells the type of browser you are using)&lt;br /&gt;
* IP address of your Internet connection.&lt;br /&gt;
These logs are occasionally deleted to create a `clean slate` when I debug my site, and sometimes to speed up backup operations, as I treat them as temporary.&lt;br /&gt;
&lt;br /&gt;
=== BitTorrent downloads ===&lt;br /&gt;
This website may offer one or more downloads using the &amp;quot;BitTorrent&amp;quot; protocol, for the specific purpose to distribute archive copies of the DXGL software and website.  In order to deliver the content, your IP address will be temporarily stored and shared with other users, for the sole purpose to facilitate the acceleration of the content&#039;s downloading.  This is so your BitTorrent client can share downloaded content with other users and help accelerate the delivery of the content.  In addition, your BitTorrent client may publicly share your IP address over decentralized networks for the same purpose.  Once you disconnect your BitTorrent client, the server will soon discontinue sharing your IP address.&lt;br /&gt;
&lt;br /&gt;
Since for the purpose of avoiding the distribution of illegal or infringing files the BitTorrent tracker is programmed to only accept Torrent info-hashes authorized by this site, copyright protection organizations are requested to refrain from scraping IP addresses from this tracker.&lt;br /&gt;
&lt;br /&gt;
The tracker is available via unencrypted HTTP for the purpose of compatibility with older and/or embedded BitTorrent clients.  If your client supports HTTPS tracker URLs, you may modify the tracker portion of the Magnet link from http to https before pasting into your client.&lt;br /&gt;
&lt;br /&gt;
=== Protection against unauthorized access ===&lt;br /&gt;
This server may contain one or more software applications designed to prevent unauthorized access to secure areas of the server.  In this case, the logs generated by this security software will be e-mailed to a special mailbox on the server, and may be retained indefinitely and disclosed to the attacker&#039;s ISP as described under Use of Information.&lt;br /&gt;
* Abuse logs will NOT be generated through normal, unauthenticated browsing of this website and only apply to private, administrative areas.  For normal browsing, the rest of the &#039;&#039;Information Automatically Gathered&#039;&#039; section applies.&lt;br /&gt;
&lt;br /&gt;
== Cookies ==&lt;br /&gt;
* Certain areas of this website use &amp;quot;cookies&amp;quot; so that the software can track logins and session information.  Other than for the purpose of validating logins, these cookies are not used to identify you.&lt;br /&gt;
* In addition, as described in the &amp;quot;Matomo&amp;quot; section below, one or more anonymized cookies are used for site analytics purposes.&lt;br /&gt;
* You may disable cookies on your web browser if you wish; however you will be logged out of any area of the site using a login.&lt;br /&gt;
* Embedded YouTube videos are set to use &amp;quot;Privacy-enhanced mode&amp;quot; and will not set cookies automatically on your system.  YouTube however may set cookies as soon as you click to play those videos.  For privacy information regarding YouTube, please see https://www.google.com/intl/en/policies/privacy/&lt;br /&gt;
=== Matomo ===&lt;br /&gt;
* This website uses the Matomo platform (formerly known as Piwik) in order to gather aggregated information regarding the use of this website.  No personal information is gathered as a result of this software, with the exception of IP address which will be used for statistical purposes.&lt;br /&gt;
** This information is stored locally on the web server (this is self-hosted software), and will not be disclosed except under very limited circumstances as explained under the &amp;quot;Use of information&amp;quot; section.&lt;br /&gt;
** Collected IP addresses will be partially anonymized; IPv4 addresses will have the last two octets set to 0 and IPv6 addresses will have the last 80 bits set to 0.&lt;br /&gt;
** You may disable tracking by two methods.&lt;br /&gt;
*** If your browser has &amp;quot;Do Not Track&amp;quot; enabled, this will automatically disable analytics collection.&lt;br /&gt;
*** If you do not have &amp;quot;Do Not Track&amp;quot; enabled or your browser does not support this feature, you may use the following opt-out checkbox to disable or re-enable tracking on this website:&lt;br /&gt;
{{#widget:PiwikOptout}}&lt;br /&gt;
&lt;br /&gt;
== Advertising ==&lt;br /&gt;
* Third party vendors, including Google, use cookies to serve ads based on a user&#039;s prior visits to this website.&lt;br /&gt;
* Google&#039;s use of the DART cookie enables it and its partners to serve ads to you based on your visit to this site and/or other sites on the Internet.&lt;br /&gt;
* Users may opt out of personalized advertising by visiting Ads Settings ([https://www.google.com/settings/ads https://www.google.com/settings/ads]).  In addition, you may visit [https://optout.aboutads.info/ https://optout.aboutads.info/] to opt out of personalized advertising for a variety of ad networks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== WOT Ratings ==&lt;br /&gt;
This website supports Web of Trust ratings using the WOT widget, documentation of which is at [https://www.mywot.com/wiki/WOT_widget https://www.mywot.com/wiki/WOT_widget], to provide web safety ratings for external websites.  Certain non-identifying information may be collected as a result of the addon, and privacy information may be found at [https://www.mywot.com/en/privacy https://www.mywot.com/en/privacy].&lt;br /&gt;
* External websites are denoted with a colored circle based on the WOT trustworthiness of the linked website.  Please note that these external websites have their own policies, for which the owner of dxgl.org, dxgl.info and williamfeely.info is not responsible. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Information you provide ==&lt;br /&gt;
You may provide information to this website in the following ways:&lt;br /&gt;
* By creating or editing a page (including discussion pages)&lt;br /&gt;
* By requesting a Wiki account or confirming account creation&lt;br /&gt;
* If you add to a discussion page while not logged on, your IP address will be recorded.&lt;br /&gt;
* If you request a Wiki account, you will need to provide a valid E-mail address.&lt;br /&gt;
* Any user may create a Bugzilla account, which is separate from the MediaWiki system. An E-mail address is required to send the activation E-mail and is used as your username.&lt;br /&gt;
** Please note that E-mail addresses are publicly displayed when entering bug reports, so consider getting a free `disposable` account for use on public services such as Bugzilla.&lt;br /&gt;
* Any user may create an account on the AppDB system, which is also separate from the MediaWiki system.&lt;br /&gt;
** E-mail addresses in the AppDB system are not publicly displayed, but registered users may be able to e-mail you through the site if you submit any content to the AppDB.&lt;br /&gt;
* This website has a phpBB based forum, with separate registration. You may control the availability of your information to other users via the User Control Panel link at the top left of the page.  E-mail addresses are not disclosed to other users, although users may be able to e-mail each other using a web based form.&lt;br /&gt;
&lt;br /&gt;
== Minimum age to use services ==&lt;br /&gt;
In order to ensure compliance with the laws of the United States and to ensure personal data is not collected from underage users, you must be 13 years of age or older to register an account on this website.  Any user account found to belong to a user under 13 years of age (or the minimum age for your country, often 16 in Europe) will have that account information permanently deleted without notice.&lt;br /&gt;
* No personal information entered into this website will be used for any form of targeted marketing, however please note that if advertising is ever added to this website it may perform said marketing using data that isn&#039;t part of any user account maintained on this site (such data is strictly confidential and only disclosed per the terms below).&lt;br /&gt;
* This section does not apply to usage of this site where no personal data is provided.  However, if you are a minor please remember to get your parents&#039; permission before installing any software provided on this website.&lt;br /&gt;
&lt;br /&gt;
== Use of information ==&lt;br /&gt;
* Server logs may be used for the purpose of diagnosing site problems and ensuring the security of the service.&lt;br /&gt;
* All page edits are automatically made visible to the public.&lt;br /&gt;
* Your username, or IP address if you are not logged on, will be visible to the public whenever an edit is made.&lt;br /&gt;
* IP addresses or user names will act as your signature on any edits or discussions on this site, and will be used to help protect against abuse.&lt;br /&gt;
* E-mail addresses will be used to send a validation link upon account registration.  If an account is approved, it will be associated with your username for the life of your account.  E-mail addresses collected through the Contact form or by direct e-mail will be used for the sole purpose of responding to your message.&lt;br /&gt;
* The Bugzilla system will display your e-mail address along with any bug report you submit.&lt;br /&gt;
* The forum will collect the IP address used to register for an account, as well as your E-mail address, which will be available to other registered members.  This information is associated with your username for the life of the account.&lt;br /&gt;
* Information submitted to this website will not be given to third parties, except in special circumstances:&lt;br /&gt;
** If abuse of this site is detected, your information may be disclosed to your Internet provider&#039;s abuse contact.&lt;br /&gt;
** In case of spam, your information (or the information provided by the spambot) may be reported to the provider&#039;s abuse contact as well as to anti-spam services, web safety forums, or trademark owners.&lt;br /&gt;
** In extreme situations, such as criminal activity, information may be disclosed to the relevant authorities as the situation dictates.&lt;br /&gt;
** Information may be disclosed in response to a valid legal order, warrant, or subpoena.&lt;br /&gt;
*** Information will NOT be disclosed if a legal order is from a foreign country, and such disclosure would violate human rights laws or be in violation of United States law.  In this unlikely scenario (politics are not allowed on this website) I would seek assistance from legal counsel before continuing.&lt;br /&gt;
&lt;br /&gt;
== Protection of information ==&lt;br /&gt;
* To protect sensitive information, certain areas of this website are protected with TLS and strong encryption. To ensure maximum security and proper functionality, please make sure your web browser is up to date, as this site supports TLS 1.2 with Perfect Forward Secrecy on supported browsers.&lt;br /&gt;
* A web browser supporting at least TLS 1.2 and SHA-2 certificates is required to access many parts of this website.&lt;br /&gt;
* To ensure maximum protection, parts of the website that require HTTPS will be inaccessible over plaintext HTTP.  In addition, the https part of the site will deliver a Strict Transport Security header to instruct your browser to only use HTTPS.  This site has been submitted to HSTS preloading lists on all major web browsers, &lt;br /&gt;
* To ensure the security of the connection you can check that the certificate has been issued by a Let&#039;s Encrypt intermediate such as E7 or R13.  Any CA other than Let&#039;s Encrypt or one of its E/R  means that your connection has more than likely been compromised, and you should run an anti-malware program, or if you are on a work or school network check with your network administrator.&lt;br /&gt;
** For additional information on the protection of your privacy when connecting to this website please visit https://www.grc.com/fingerprints.htm?domain=dxgl.org and ensure its certificate isn&#039;t altered and is issued to Gibson Research Corporation.  This will display the current fingerprint being used by dxgl.org so you can compare it with the fingerprint displayed in your web browser&#039;s certificate information.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* External links are provided for your convenience in certain areas of this site.  Please note that they are subject to their own privacy practices, and you should review their privacy policies.&lt;br /&gt;
&lt;br /&gt;
== Removal of information ==&lt;br /&gt;
If you have been granted a user name and would like it removed, please leave a message under the discussion tab of this page, with the title &#039;&#039;&#039;USERNAME REMOVAL&#039;&#039;&#039;.  You must be logged on to the username that you wish to have removed.&lt;br /&gt;
* Your username will still be associated to any contributions you have made, but I will blank out all personal information from the database.&lt;br /&gt;
* To remove a Bugzilla account or any other account you may have on this website, please leave a message at https://dxgl.org/contact/ and I will remove the account from the Bugzilla system.&lt;br /&gt;
* To remove a forum account, please send a Private Message to username William, and I will delete the username from the forums.&lt;br /&gt;
&lt;br /&gt;
== Access to data ==&lt;br /&gt;
If you would like access to data collected as part of any user accounts, please leave a message at https://dxgl.org/contact/ using the e-mail address that matches your user account.  If your e-mail address has changed, please make sure to change it in your user account before contacting, for security purposes.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3806</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3806"/>
		<updated>2026-01-18T04:06:10Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */ Feature is enabled, needs DXGL Config update still.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|90|task=Add force single core mode}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|99|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3805</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3805"/>
		<updated>2026-01-18T02:34:06Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */ Update progress&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|100|task=Fix heap corruption creating mipmapped textures}}&lt;br /&gt;
{{progression|0|task=Add force single core mode}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|90|task=Reimplement surface lock/unlock}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|10|task=Reimplement Blt}}&lt;br /&gt;
{{progression|5|task=Rewrite rendering backend}}&lt;br /&gt;
{{progression|0|task=Reimplement GetDC/ReleaseDC}}&lt;br /&gt;
{{progression|0|task=Reimplement Direct3D}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|99|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3804</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3804"/>
		<updated>2026-01-11T22:39:11Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.27&lt;br /&gt;
{{progression|0|task=Add force single core mode}}&lt;br /&gt;
{{progression|0|task=Lands of Lore III compatibility fixes}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3803</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3803"/>
		<updated>2026-01-01T01:15:02Z</updated>

		<summary type="html">&lt;p&gt;William: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.26.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.26.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008, Visual Studio 2005, and Visual Studio .NET 2003.  These builds are experimental and are compatible with Windows 2000 and up.  In addition, the VS2003 build may run on Windows NT 4.0 if you have compatible graphics drivers.  The VS2005 and VS2003 builds are built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-win32-msvc7_1.exe Windows installer (VS2003 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.26&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.26.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.26-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.26-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Implement trace log levels. Sync Blt and D3D commands in scaled primary to unscaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.25&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.25.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.25-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2003 build. Add experimental Windows NT 4.0 support. Fix DXGL Config in MBCS builds.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.24&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.24.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.24-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2003 build. Add experimental Windows NT 4.0 support. Fix DXGL Config in MBCS builds.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.23&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.23.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.23-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix installation of MSVC runtime and Program Files links.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.22&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.22.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.22-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix freezing during ddraw.dll initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.21&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Prevent screensaver when program is active. Rewrite profile update. Add portable install. Add debug symbols.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3802</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3802"/>
		<updated>2025-12-29T04:25:37Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.26&lt;br /&gt;
{{progression|100|task=Implement multiple log levels}}&lt;br /&gt;
{{progression|0|task=Fix scaled primary writes}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3801</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3801"/>
		<updated>2025-12-28T20:28:00Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */ Adjust progress for post-0.5.25, remove task to hook ClipCursor, it was implemented in 0.5.25.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.26&lt;br /&gt;
{{progression|0|task=Fix log levels 1 and 2}}&lt;br /&gt;
{{progression|0|task=Add less verbose API logging}}&lt;br /&gt;
{{progression|0|task=Fix scaled primary writes}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs except when needed for OpenGL 2.x support}}&lt;br /&gt;
{{progression|15|task=Port DDraw to new rendering backend}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|50|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|95|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for &amp;quot;System (Enhanced)&amp;quot; DPI scaling, if necessary}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3800</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3800"/>
		<updated>2025-12-25T00:47:48Z</updated>

		<summary type="html">&lt;p&gt;William: Update release version.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.25.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.25.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008, Visual Studio 2005, and Visual Studio .NET 2003.  These builds are experimental and are compatible with Windows 2000 and up.  In addition, the VS2003 build may run on Windows NT 4.0 if you have compatible graphics drivers.  The VS2005 and VS2003 builds are built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32-msvc7_1.exe Windows installer (VS2003 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.25&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.25.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.25-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.25-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2003 build. Add experimental Windows NT 4.0 support. Fix DXGL Config in MBCS builds.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.24&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.24.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.24-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2003 build. Add experimental Windows NT 4.0 support. Fix DXGL Config in MBCS builds.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.23&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.23.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.23-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix installation of MSVC runtime and Program Files links.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.22&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.22.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.22-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix freezing during ddraw.dll initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.21&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Prevent screensaver when program is active. Rewrite profile update. Add portable install. Add debug symbols.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3799</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3799"/>
		<updated>2025-12-25T00:44:14Z</updated>

		<summary type="html">&lt;p&gt;William: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
DXGL is a free replacement for the Windows ddraw.dll library, running on OpenGL.  It is designed to overcome driver bugs, particularly in Windows Vista and newer operating systems.  It also adds various enhancements to the graphics output such as display scaling and filtering options.&lt;br /&gt;
DXGL supports the DirectX 7.0 graphics APIs, however it is currently under development and does not work with many programs.&lt;br /&gt;
&lt;br /&gt;
DXGL is currently in an alpha stage, but several applications and games already work.&lt;br /&gt;
&lt;br /&gt;
== System Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Windows 10 or 11 (standard build)&lt;br /&gt;
* Windows XP (with SP3), Vista, 7, 8, 8.1, 10, or 11 (legacy build)&lt;br /&gt;
** Also compatible with most versions of Wine, by setting the ddraw DLL override to &amp;quot;native, builtin&amp;quot; which is done automatically at installation.&lt;br /&gt;
** Not compatible with Windows 10 in S mode.&lt;br /&gt;
* OpenGL 2.0 or higher compatible video card&lt;br /&gt;
** Requires support for Framebuffer objects&lt;br /&gt;
** Requires support for hardware accelerated non-power-of-two textures&lt;br /&gt;
** OpenGL 3.2 or higher recommended.&lt;br /&gt;
* The standard build requires a SSE2-capable processor; older processors require the legacy build.&lt;br /&gt;
* For the standard build, Visual C++ v14 x86 runtime.&lt;br /&gt;
* For the legacy build, Visual C++ 2010 x86 runtime.&lt;br /&gt;
* Visual C++ runtimes will be installed automatically during setup, but they can be manually downloaded straight from Microsoft at [https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist].&lt;br /&gt;
&lt;br /&gt;
=== [[Downloads|Download DXGL]] ===&lt;br /&gt;
=== [[Source|Get source code]] ===&lt;br /&gt;
=== [[Build_from_source|Build instructions]] ===&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://www.dxgl.info/appdb AppDB]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
=== [[Bug_reports|Bug reports]] ===&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://forum.dxgl.info Forums]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
At this time, the DXGL Wiki is currently under construction.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3798</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3798"/>
		<updated>2025-12-25T00:39:41Z</updated>

		<summary type="html">&lt;p&gt;William: Update system requirements.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
DXGL is a free replacement for the Windows ddraw.dll library, running on OpenGL.  It is designed to overcome driver bugs, particularly in Windows Vista and newer operating systems.  It also adds various enhancements to the graphics output such as display scaling and filtering options.&lt;br /&gt;
DXGL supports the DirectX 7.0 graphics APIs, however it is currently under development and does not work with many programs.&lt;br /&gt;
&lt;br /&gt;
DXGL is currently in an alpha stage, but several applications and games already work.&lt;br /&gt;
&lt;br /&gt;
== System Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Windows 10 or 11 (standard build)&lt;br /&gt;
* Windows XP (with SP3), Vista, 7, 8, 8.1, 10, or 11 (legacy build)&lt;br /&gt;
** Also compatible with most versions of Wine, by setting the ddraw DLL override to &amp;quot;native, builtin&amp;quot; which is done automatically at installation.&lt;br /&gt;
** Not compatible with Windows 10 in S mode.&lt;br /&gt;
* OpenGL 2.0 or higher compatible video card&lt;br /&gt;
** Requires support for Framebuffer objects&lt;br /&gt;
** Requires support for hardware accelerated non-power-of-two textures&lt;br /&gt;
** OpenGL 3.2 or higher recommended.&lt;br /&gt;
* The standard build requires a SSE2-capable processor; older processors require the legacy build.&lt;br /&gt;
* For the standard build, Visual C++ v14 x86 runtime, which can be found at https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads (will be installed if not present)&lt;br /&gt;
* For the legacy build, Visual C++ 2010 x86 runtime, available at https://www.microsoft.com/en-us/download/details.aspx?id=8328 (will be installed if not present)&lt;br /&gt;
&lt;br /&gt;
=== [[Downloads|Download DXGL]] ===&lt;br /&gt;
=== [[Source|Get source code]] ===&lt;br /&gt;
=== [[Build_from_source|Build instructions]] ===&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://www.dxgl.info/appdb AppDB]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
=== [[Bug_reports|Bug reports]] ===&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://forum.dxgl.info Forums]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
At this time, the DXGL Wiki is currently under construction.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3797</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3797"/>
		<updated>2025-07-13T04:09:56Z</updated>

		<summary type="html">&lt;p&gt;William: DXGL 0.5.24 release&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.24.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.24.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008, Visual Studio 2005, and Visual Studio .NET 2003.  These builds are experimental and are compatible with Windows 2000 and up.  In addition, the VS2003 build may run on Windows NT 4.0 if you have compatible graphics drivers.  The VS2005 and VS2003 builds are built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32-msvc7_1.exe Windows installer (VS2003 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.24&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.24.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.24-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.24-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2003 build. Add experimental Windows NT 4.0 support. Fix DXGL Config in MBCS builds.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.23&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.23.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.23-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix installation of MSVC runtime and Program Files links.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.22&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.22.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.22-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix freezing during ddraw.dll initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.21&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Prevent screensaver when program is active. Rewrite profile update. Add portable install. Add debug symbols.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3796</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3796"/>
		<updated>2024-02-27T02:54:05Z</updated>

		<summary type="html">&lt;p&gt;William: Release DXGL 0.5.23&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.23.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.23.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008 and Visual Studio 2005.  These builds are experimental and are compatible with Windows 2000 and up.  The VS2005 build is built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.23&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.23.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.23-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.23-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix installation of MSVC runtime and Program Files links.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.22&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.22.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.22-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix freezing during ddraw.dll initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.21&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Prevent screensaver when program is active. Rewrite profile update. Add portable install. Add debug symbols.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3795</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3795"/>
		<updated>2024-01-17T16:44:00Z</updated>

		<summary type="html">&lt;p&gt;William: Release 0.5.22&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.22.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.22.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008 and Visual Studio 2005.  These builds are experimental and are compatible with Windows 2000 and up.  The VS2005 build is built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.22&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.22.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.22-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.22-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Fix freezing during ddraw.dll initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.21&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Prevent screensaver when program is active. Rewrite profile update. Add portable install. Add debug symbols.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3794</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3794"/>
		<updated>2024-01-17T16:40:00Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3793</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3793"/>
		<updated>2024-01-16T23:52:17Z</updated>

		<summary type="html">&lt;p&gt;William: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.21.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008 and Visual Studio 2005.  These builds are experimental and are compatible with Windows 2000 and up.  The VS2005 build is built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.21&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.21.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.21-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.21-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Prevent screensaver when program is active. Rewrite profile update. Add portable install. Add debug symbols.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3792</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3792"/>
		<updated>2024-01-15T01:48:47Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.21&lt;br /&gt;
{{progression|100|task=Disable screensaver when active}}&lt;br /&gt;
{{progression|100|task=Fix infinite loops in upgrade}}&lt;br /&gt;
{{progression|0|task=Portable mode for installer}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3791</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3791"/>
		<updated>2024-01-04T03:49:13Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.21&lt;br /&gt;
{{progression|100|task=Disable screensaver when active}}&lt;br /&gt;
{{progression|75|task=Fix infinite loops in upgrade}}&lt;br /&gt;
{{progression|0|task=Portable mode for installer}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3790</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3790"/>
		<updated>2023-12-12T15:20:39Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.21&lt;br /&gt;
{{progression|100|task=Disable screensaver when active}}&lt;br /&gt;
{{progression|0|task=Portable mode for installer}}&lt;br /&gt;
{{progression|0|task=Fix infinite loops in upgrade}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3789</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3789"/>
		<updated>2023-05-15T01:42:53Z</updated>

		<summary type="html">&lt;p&gt;William: /* System Requirements */ Vista no longer supported in VS2022 builds.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
DXGL is a free replacement for the Windows ddraw.dll library, running on OpenGL.  It is designed to overcome driver bugs, particularly in Windows Vista and newer operating systems.  It also adds various enhancements to the graphics output such as display scaling and filtering options.&lt;br /&gt;
DXGL supports the DirectX 7.0 graphics APIs, however it is currently under development and does not work with many programs.&lt;br /&gt;
&lt;br /&gt;
DXGL is currently in an alpha stage, but several applications and games already work.&lt;br /&gt;
&lt;br /&gt;
== System Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Windows 7 (with SP1), 8, 8.1, 10, or 11 (standard build)&lt;br /&gt;
* Windows XP (with SP3), Vista, 7, 8, 8.1, 10, or 11 (legacy build)&lt;br /&gt;
** Also compatible with most versions of Wine, by setting the ddraw DLL override to &amp;quot;native, builtin&amp;quot; which is done automatically at installation.&lt;br /&gt;
** Not compatible with Windows 10 in S mode.&lt;br /&gt;
* OpenGL 2.0 or higher compatible video card&lt;br /&gt;
** Requires support for Framebuffer objects&lt;br /&gt;
** Requires support for hardware accelerated non-power-of-two textures&lt;br /&gt;
** OpenGL 3.2 or higher recommended.&lt;br /&gt;
* The standard build requires a SSE2-capable processor; older processors require the legacy build.&lt;br /&gt;
* For the standard build, Visual C++ 2015-2022 x86 runtime, which can be found at https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads (will be installed if not present)&lt;br /&gt;
* For the legacy build, Visual C++ 2010 x86 runtime, available at https://www.microsoft.com/en-us/download/details.aspx?id=8328 (will be installed if not present)&lt;br /&gt;
&lt;br /&gt;
=== [[Downloads|Download DXGL]] ===&lt;br /&gt;
=== [[Source|Get source code]] ===&lt;br /&gt;
=== [[Build_from_source|Build instructions]] ===&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://www.dxgl.info/appdb AppDB]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
=== [[Bug_reports|Bug reports]] ===&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://forum.dxgl.info Forums]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
At this time, the DXGL Wiki is currently under construction.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3788</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3788"/>
		<updated>2022-10-02T18:43:33Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|100|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|1|task=Rewrite rendering backend}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Downloads&amp;diff=3787</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Downloads&amp;diff=3787"/>
		<updated>2022-04-16T19:10:06Z</updated>

		<summary type="html">&lt;p&gt;William: 0.5.20 release&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is provided subject to the terms of the [http://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, version 2.1].&lt;br /&gt;
To install DXGL, simply download and run the Windows installer.  To upgrade, install over the old version.  All programs configured by the configuration tool or automatically added by the DXGL library will be automatically updated during the installation progress.&lt;br /&gt;
&lt;br /&gt;
=== Updgrade notes ===&lt;br /&gt;
If you upgrade from DXGL 0.5.8 or earlier, the configuration format will be changed, and earlier versions of DXGL will no longer recognize the profiles. In addition, any profiles generated by older versions of DXGL going forward will not be recognized by DXGL 0.5.9 or later. If you wish to migrate any old profiles generated after installing DXGL 0.5.9 or later, you will need to use Regedit to delete the &amp;quot;Configuration Version&amp;quot; registry value from the HKEY_CURRENT_USER\SOFTWARE\DXGL registry key to force the upgrade to be run again. &lt;br /&gt;
&lt;br /&gt;
The current available version of DXGL is 0.5.20.  Please click one of the links below to download.&lt;br /&gt;
&lt;br /&gt;
DXGL 0.5.15 and newer now come in two versions, a standard version requiring at least Windows Vista SP2 and a SSE2-capable processor, and a legacy version with the same requirements as previous versions.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Source code]&lt;br /&gt;
&lt;br /&gt;
==Experimental versions==&lt;br /&gt;
DXGL has been built in Visual Studio 2008 and Visual Studio 2005.  These builds are experimental and are compatible with Windows 2000 and up.  The VS2005 build is built in Multi-Byte Character Set mode and may not be compatible with installation paths containing characters that are not part of your operating system’s ANSI character set.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
Please see below for older versions.&lt;br /&gt;
&lt;br /&gt;
== Experimental x64 version ==&lt;br /&gt;
DXGL is now available in an x64 version, for use with x64 programs.  This version is not compatible with 32-bit programs, and should only be downloaded when needed.&lt;br /&gt;
OS requirements are the same as for the 32-bit versions, except that the x64 version is required and installation will be canceled if a 32-bit version of Windows is detected.&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-x64.exe Windows installer]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-x64-msvc10.exe Windows installer (legacy)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-x64-msvc9.exe Windows installer (VS2008 build)]&lt;br /&gt;
&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-x64-msvc8.exe Windows installer (VS2005 MBCS build)]&lt;br /&gt;
&lt;br /&gt;
== Version history ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Version&lt;br /&gt;
! Source&lt;br /&gt;
! Binary&lt;br /&gt;
! Major changes&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.20&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.20.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.20-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.20-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Rewrite surface structures. Partially implement hardware accelerated scaled primary.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.19&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.19.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.19-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.19-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add x64 build. Add shader compatibility with OpenGL 3.x. Fix some API bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.18&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.18.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.18-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.18-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Migrate source code to GitHub. Add basic overlay surface support. Add scaling for windowed mode applications.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.17&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.17.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.17-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.17-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VS2005 and VS2008 builds.  Change debug tracing to a .ini option.  Fix profile directory SHA256 hashes.  Add included directive to .ini files and support alternate dxgl.cfg configuration file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.16&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.16.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.16-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.16-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Upgrade VC2017 to VC2019.&amp;amp;nbsp; Add some improvements to DDraw API.&amp;amp;nbsp; Add color format conversions for several surface formats.&amp;amp;nbsp; Add 1, 2, and 4-bit pixel formats.&amp;amp;nbsp; Add packed YUV pixel formats.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.15&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.15.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.15-win32.exe Download]&amp;lt;br /&amp;gt;[https://dxgl.org/download/DXGL-0.5.15-win32-msvc10.exe Download (legacy)]&lt;br /&gt;
|Add VC2017 build. Add Wine DLL overrides. Fix uninstaller to clean up files and registry. Improve color palette support. Improve 512×448 scaling mode. Several bug fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.14&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.14.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.14-win32.exe Download]&lt;br /&gt;
|Add offline help. Add mouse related hooks including a contributed addition. Improve window mode. Add custom scaling options. Support saving INI files. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.13&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.13.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.13-win32.exe Download]&lt;br /&gt;
|New DXGL Config application. Improved color depth and display mode selections. Add debug options and rendering hacks. Fix a few bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.12&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.12.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.12-win32.exe Download]&lt;br /&gt;
|Fix window mode. Add .ini configuration support. Add debug options. Add color key override. Add single buffer display mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.11&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.11.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.11-win32.exe Download]&lt;br /&gt;
|Bug fixes. Downgrade runtime to VS2010. Add first pass scaling mode and forced SSAA.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.10&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.10.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.10-win32.exe Download]&lt;br /&gt;
| Minor bug fixes.  Optimization for shader cache.  Add non-minimizing windowed borderless modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.9&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.9.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.9-win32.exe Download]&lt;br /&gt;
| Minor clipper fixes.  Isolate most of renderer backend from frontend API.  Overhaul installer and configuration.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.8&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.8.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.8-win32.exe Download]&lt;br /&gt;
| Upgrade compiler to Visual Studio 2013.  Add forced-window mode.  Add borderless-window (non-exclusive) fullscreen mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.7-win32.exe Download]&lt;br /&gt;
| Minimize fullscreen mode on Alt+Tab and restore desktop resolution.  Fix D3DTLVERTEX rendering.  Fix D3D color key support.  Add depth fill Blt.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.6-win32.exe Download]&lt;br /&gt;
| More API improvements.  Improve dithering performance.  Full ROP support.  Windows 10 compatibility.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.5-win32.exe Download]&lt;br /&gt;
| API improvements.  Add mipmap texture support.  Better Direct3D2 texture support.  Adjustments to transformed vertices.  Add dithering.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.4-win32.exe Download]&lt;br /&gt;
| Blt fixes.  Color key fix.  Add destination and colorspace color key.  Add 90 degree blt rotation.  Add blt mirroring.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.3-win32.exe Download]&lt;br /&gt;
| Surface clipper support.  Same source/dest blt fix.  Dynamic blt shader generation.  Partial ROP support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.2-win32.exe Download]&lt;br /&gt;
| Better Windows 8.1 compatibility.  High DPI support.  Custom aspect ratio support.  Better 8-bit color support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.1-win32.exe Download]&lt;br /&gt;
| Fix Intel graphics compatibility.  Support ARB_sampler_objects for more accurate D3D emulation.  Fix several bugs.  Add tracing support to source code.&lt;br /&gt;
|-&lt;br /&gt;
| 0.5.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.5.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.5.0-win32.exe Download]&lt;br /&gt;
| Add partial DirectX2 D3D support.  Enable D3D support on all builds.  Improve Windows 8 compatibility.  Fix a few D3D bugs.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.2-win32.exe Download]&lt;br /&gt;
| Add wireframe and point rendering.  Add fog.  Add flat shading.  Fix light positions.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.1-win32.exe Download]&lt;br /&gt;
| Add backface culling.  Add alpha test functions.  Add texture color key.  Various DDraw and D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.4.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.4.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.4.0-win32.exe Download]&lt;br /&gt;
| Add DirectX5 D3D support.  Add locking of surface rects.  Various minor fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.2-win32.exe Download]&lt;br /&gt;
| Rewrite texture management.  Add RGBA4444 textures.  Add alpha blending.  Fix crash in XP.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.1-win32.exe Download]&lt;br /&gt;
| Fix surface access.  Eliminate redundant GL state changes.  Some D3D fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.3.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.3.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.3.0-win32.exe Download]&lt;br /&gt;
| Improve installer.  Add DirectX6 D3D support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.3-win32.exe Download]&lt;br /&gt;
| Add spot lights.  Add specular lighting.  Add transformed vertices support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.2-win32.exe Download]&lt;br /&gt;
| Fix threading bugs.  Add Z buffer testing.  Add point lights.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.1-win32.exe Download]&lt;br /&gt;
| Add more texture shaders.  Add Windows 8 registry fix.  Various fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.2.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.2.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.2.0-win32.exe Download]&lt;br /&gt;
| Add preliminary IDirect3D7 interfaces.  Fix DXGLCFG profiles.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.6-win32.exe Download]&lt;br /&gt;
| Fix AMD/ATI compatibility.  Validate parameters.  Fix render thread.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.5-win32.exe Download]&lt;br /&gt;
| Fix shader engine.  Improved application compatibility.  Screen smoothing in 8-bit modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.4-win32.exe Download]&lt;br /&gt;
| Use shaders for rendering.  Fix OpenGL memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.3-win32.exe Download]&lt;br /&gt;
| Optimize texture uploads.  Add Z buffer support.  Fix framebuffer object initialization.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.2-win32.exe Download]&lt;br /&gt;
| Add COM initialization.  Restore display mode when deleting DDraw object.  Fix VSync.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.1-win32.exe Download]&lt;br /&gt;
| Add mouse support.  Improve render window drawing.  Add vertical sync support.&lt;br /&gt;
|-&lt;br /&gt;
| 0.1.0&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.1.0.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/DXGL-0.1.0-win32.exe Download]&lt;br /&gt;
| Fix Windows XP compatibility.  Add installer.  Add application profile support.  Add help file.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.7&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.7.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.7.zip Download]&lt;br /&gt;
| Add DirectDrawEnumerate. Add color fill and colorkey blt(). Fix flipping. Add compatibility with Windows 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.6&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.6.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.6.zip Download]&lt;br /&gt;
| Speed up surface locking. Fix non-multiple-of-8 modes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.5&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.5.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.5.zip Download]&lt;br /&gt;
| Add GetDC() GDI surface access. Add more tests to DXGLTest.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.4&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.4.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.4.zip Download]&lt;br /&gt;
| Add all DDraw interface versions, add 15 and 24 bit modes, add low-res modes, fix memory leaks.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.3&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.3.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.3.zip Download]&lt;br /&gt;
| Remove wxWidgets and GLEW, fix duplicate mode enumeration, multiple fixes.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.2&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.2.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.2.zip Download]&lt;br /&gt;
| Add windowed mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0.0.1&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-src-0.0.1.zip Download]&lt;br /&gt;
|&lt;br /&gt;
[https://dxgl.org/download/dxgl-bin-0.0.1.zip Download]&lt;br /&gt;
| Initial preview release. Only direct access to primary surface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3786</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3786"/>
		<updated>2022-04-16T19:08:21Z</updated>

		<summary type="html">&lt;p&gt;William: /* System Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
DXGL is a free replacement for the Windows ddraw.dll library, running on OpenGL.  It is designed to overcome driver bugs, particularly in Windows Vista and newer operating systems.  It also adds various enhancements to the graphics output such as display scaling and filtering options.&lt;br /&gt;
DXGL supports the DirectX 7.0 graphics APIs, however it is currently under development and does not work with many programs.&lt;br /&gt;
&lt;br /&gt;
DXGL is currently in an alpha stage, but several applications and games already work.&lt;br /&gt;
&lt;br /&gt;
== System Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Windows Vista (with SP2), 7 (with SP1), 8, 8.1, 10, or 11 (standard build)&lt;br /&gt;
* Windows XP (with SP3), Vista, 7, 8, 8.1, 10, or 11 (legacy build)&lt;br /&gt;
** Also compatible with most versions of Wine, by setting the ddraw DLL override to &amp;quot;native, builtin&amp;quot; which is done automatically at installation.&lt;br /&gt;
** Not compatible with Windows 10 in S mode.&lt;br /&gt;
* OpenGL 2.0 or higher compatible video card&lt;br /&gt;
** Requires support for Framebuffer objects&lt;br /&gt;
** Requires support for hardware accelerated non-power-of-two textures&lt;br /&gt;
** OpenGL 3.2 or higher recommended.&lt;br /&gt;
* The standard build requires a SSE2-capable processor; older processors require the legacy build.&lt;br /&gt;
* For the standard build, Visual C++ 2015-2022 x86 runtime, which can be found at https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads (will be installed if not present)&lt;br /&gt;
* For the legacy build, Visual C++ 2010 x86 runtime, available at https://www.microsoft.com/en-us/download/details.aspx?id=8328 (will be installed if not present)&lt;br /&gt;
&lt;br /&gt;
=== [[Downloads|Download DXGL]] ===&lt;br /&gt;
=== [[Source|Get source code]] ===&lt;br /&gt;
=== [[Build_from_source|Build instructions]] ===&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://www.dxgl.info/appdb AppDB]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
=== [[Bug_reports|Bug reports]] ===&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://forum.dxgl.info Forums]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
At this time, the DXGL Wiki is currently under construction.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3785</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3785"/>
		<updated>2021-12-10T19:57:13Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */ Update roadmap&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20&lt;br /&gt;
{{progression|100|task=Support VS2022}}&lt;br /&gt;
{{progression|90|task=Refactor surface storage}}&lt;br /&gt;
{{progression|0|task=Improve scaled color key Blt support}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
{{progression|0|task=Separate VS2010 and VS2022 project files}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3779</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Main_Page&amp;diff=3779"/>
		<updated>2021-06-30T00:30:32Z</updated>

		<summary type="html">&lt;p&gt;William: /* System Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
DXGL is a free replacement for the Windows ddraw.dll library, running on OpenGL.  It is designed to overcome driver bugs, particularly in Windows Vista and newer operating systems.  It also adds various enhancements to the graphics output such as display scaling and filtering options.&lt;br /&gt;
DXGL supports the DirectX 7.0 graphics APIs, however it is currently under development and does not work with many programs.&lt;br /&gt;
&lt;br /&gt;
DXGL is currently in an alpha stage, but several applications and games already work.&lt;br /&gt;
&lt;br /&gt;
== System Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Windows Vista (with SP2), 7 (with SP1), 8, 8.1, 10, or 11 (standard build)&lt;br /&gt;
* Windows XP (with SP3), Vista, 7, 8, 8.1, 10, or 11 (legacy build)&lt;br /&gt;
** Also compatible with most versions of Wine, by setting the ddraw DLL override to &amp;quot;native, builtin&amp;quot; which is done automatically at installation.&lt;br /&gt;
** Not compatible with Windows 10 in S mode.&lt;br /&gt;
* OpenGL 2.0 or higher compatible video card&lt;br /&gt;
** Requires support for Framebuffer objects&lt;br /&gt;
** Requires support for hardware accelerated non-power-of-two textures&lt;br /&gt;
** OpenGL 3.2 or higher recommended.&lt;br /&gt;
* The standard build requires a SSE2-capable processor; older processors require the legacy build.&lt;br /&gt;
* For the standard build, Visual C++ 2015-2019 x86 runtime, which can be found at https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads (will be installed if not present)&lt;br /&gt;
* For the legacy build, Visual C++ 2010 x86 runtime, available at https://www.microsoft.com/en-us/download/details.aspx?id=8328 (will be installed if not present)&lt;br /&gt;
&lt;br /&gt;
=== [[Downloads|Download DXGL]] ===&lt;br /&gt;
=== [[Source|Get source code]] ===&lt;br /&gt;
=== [[Build_from_source|Build instructions]] ===&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://www.dxgl.info/appdb AppDB]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
=== [[Bug_reports|Bug reports]] ===&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[https://forum.dxgl.info Forums]&amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
At this time, the DXGL Wiki is currently under construction.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3758</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3758"/>
		<updated>2021-05-05T00:12:20Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|0|task=Separate VS2010 and VS2019 project files}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3726</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3726"/>
		<updated>2021-04-04T23:59:26Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3725</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3725"/>
		<updated>2021-04-04T23:00:45Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|0|task=Support dark mode in DXGL Config}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3723</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3723"/>
		<updated>2021-04-04T02:36:16Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|0|task=Fix x64 installer}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=3603</id>
		<title>Privacy policy</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=3603"/>
		<updated>2021-01-28T00:49:12Z</updated>

		<summary type="html">&lt;p&gt;William: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Please read the privacy policy before using this site.&lt;br /&gt;
&lt;br /&gt;
Please look at the bottom of the page at https://dxgl.org/wiki/Privacy_policy to determine the last time the Privacy Policy was modified.  To view changes, please [https://dxgl.org/w/index.php?title=Privacy_policy&amp;amp;action=history click here].&lt;br /&gt;
&lt;br /&gt;
== Information automatically gathered ==&lt;br /&gt;
As with all web servers, when you access this site, the following standard information may be automatically stored by the server:&lt;br /&gt;
* The current date and time&lt;br /&gt;
* The page requested&lt;br /&gt;
* Your user agent ID (which tells the type of browser you are using)&lt;br /&gt;
* IP address of your Internet connection.&lt;br /&gt;
These logs are occasionally deleted to create a `clean slate` when I debug my site, and sometimes to speed up backup operations, as I treat them as temporary.&lt;br /&gt;
&lt;br /&gt;
=== BitTorrent downloads ===&lt;br /&gt;
This website may offer one or more downloads using the &amp;quot;BitTorrent&amp;quot; protocol, for the specific purpose to distribute archive copies of the DXGL software and website.  In order to deliver the content, your IP address will be temporarily stored and shared with other users, for the sole purpose to facilitate the acceleration of the content&#039;s downloading.  This is so your BitTorrent client can share downloaded content with other users and help accelerate the delivery of the content.  In addition, your BitTorrent client may publicly share your IP address over decentralized networks for the same purpose.  Once you disconnect your BitTorrent client, the server will soon discontinue sharing your IP address.&lt;br /&gt;
&lt;br /&gt;
Since for the purpose of avoiding the distribution of illegal or infringing files the BitTorrent tracker is programmed to only accept Torrent info-hashes authorized by this site, copyright protection organizations are requested to refrain from scraping IP addresses from this tracker.&lt;br /&gt;
&lt;br /&gt;
The tracker is available via unencrypted HTTP for the purpose of compatibility with older and/or embedded BitTorrent clients.  If your client supports HTTPS tracker URLs, you may modify the tracker portion of the Magnet link from http to https before pasting into your client.&lt;br /&gt;
&lt;br /&gt;
=== Protection against unauthorized access ===&lt;br /&gt;
This server may contain one or more software applications designed to prevent unauthorized access to secure areas of the server.  In this case, the logs generated by this security software will be e-mailed to a special mailbox on the server, and may be retained indefinitely and disclosed to the attacker&#039;s ISP as described under Use of Information.&lt;br /&gt;
* Abuse logs will NOT be generated through normal, unauthenticated browsing of this website and only apply to private, administrative areas.  For normal browsing, the rest of the &#039;&#039;Information Automatically Gathered&#039;&#039; section applies.&lt;br /&gt;
&lt;br /&gt;
== Cookies ==&lt;br /&gt;
* Certain areas of this website use &amp;quot;cookies&amp;quot; so that the software can track logins and session information.  Other than for the purpose of validating logins, these cookies are not used to identify you.&lt;br /&gt;
* In addition, as described in the &amp;quot;Matomo&amp;quot; section below, one or more anonymized cookies are used for site analytics purposes.&lt;br /&gt;
* You may disable cookies on your web browser if you wish; however you will be logged out of any area of the site using a login.&lt;br /&gt;
* Embedded YouTube videos are set to use &amp;quot;Privacy-enhanced mode&amp;quot; and will not set cookies automatically on your system.  YouTube however may set cookies as soon as you click to play those videos.  For privacy information regarding YouTube, please see https://www.google.com/intl/en/policies/privacy/&lt;br /&gt;
=== Matomo ===&lt;br /&gt;
* This website uses the Matomo platform (formerly known as Piwik) in order to gather aggregated information regarding the use of this website.  No personal information is gathered as a result of this software, with the exception of IP address which will be used for statistical purposes.&lt;br /&gt;
** This information is stored locally on the web server (this is self-hosted software), and will not be disclosed except under very limited circumstances as explained under the &amp;quot;Use of information&amp;quot; section.&lt;br /&gt;
** Collected IP addresses will be partially anonymized; IPv4 addresses will have the last two octets set to 0 and IPv6 addresses will have the last 80 bits set to 0.&lt;br /&gt;
** You may disable tracking by two methods.&lt;br /&gt;
*** If your browser has &amp;quot;Do Not Track&amp;quot; enabled, this will automatically disable analytics collection.&lt;br /&gt;
*** If you do not have &amp;quot;Do Not Track&amp;quot; enabled or your browser does not support this feature, you may use the following opt-out checkbox to disable or re-enable tracking on this website:&lt;br /&gt;
{{#widget:PiwikOptout}}&lt;br /&gt;
&lt;br /&gt;
== Advertising ==&lt;br /&gt;
* Third party vendors, including Google, use cookies to serve ads based on a user&#039;s prior visits to this website.&lt;br /&gt;
* Google&#039;s use of the DART cookie enables it and its partners to serve ads to you based on your visit to this site and/or other sites on the Internet.&lt;br /&gt;
* Users may opt out of personalized advertising by visiting Ads Settings ([https://www.google.com/settings/ads https://www.google.com/settings/ads]).  In addition, you may visit [https://optout.aboutads.info/ https://optout.aboutads.info/] to opt out of personalized advertising for a variety of ad networks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== WOT Ratings ==&lt;br /&gt;
This website supports Web of Trust ratings using the WOT widget, documentation of which is at [https://www.mywot.com/wiki/WOT_widget https://www.mywot.com/wiki/WOT_widget], to provide web safety ratings for external websites.  Certain non-identifying information may be collected as a result of the addon, and privacy information may be found at [https://www.mywot.com/en/privacy https://www.mywot.com/en/privacy].&lt;br /&gt;
* External websites are denoted with a colored circle based on the WOT trustworthiness of the linked website.  Please note that these external websites have their own policies, for which the owner of dxgl.org, dxgl.info and williamfeely.info is not responsible. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Information you provide ==&lt;br /&gt;
You may provide information to this website in the following ways:&lt;br /&gt;
* By creating or editing a page (including discussion pages)&lt;br /&gt;
* By requesting a Wiki account or confirming account creation&lt;br /&gt;
* If you add to a discussion page while not logged on, your IP address will be recorded.&lt;br /&gt;
* If you request a Wiki account, you will need to provide a valid E-mail address.&lt;br /&gt;
* Any user may create a Bugzilla account, which is separate from the MediaWiki system. An E-mail address is required to send the activation E-mail and is used as your username.&lt;br /&gt;
** Please note that E-mail addresses are publicly displayed when entering bug reports, so consider getting a free `disposable` account for use on public services such as Bugzilla.&lt;br /&gt;
* Any user may create an account on the AppDB system, which is also separate from the MediaWiki system.&lt;br /&gt;
** E-mail addresses in the AppDB system are not publicly displayed, but registered users may be able to e-mail you through the site if you submit any content to the AppDB.&lt;br /&gt;
* This website has a phpBB based forum, with separate registration. You may control the availability of your information to other users via the User Control Panel link at the top left of the page.  E-mail addresses are not disclosed to other users, although users may be able to e-mail each other using a web based form.&lt;br /&gt;
&lt;br /&gt;
== Minimum age to use services ==&lt;br /&gt;
In order to ensure compliance with the laws of the United States and to ensure personal data is not collected from underage users, you must be 13 years of age or older to register an account on this website.  Any user account found to belong to a user under 13 years of age (or the minimum age for your country, often 16 in Europe) will have that account information permanently deleted without notice.&lt;br /&gt;
* No personal information entered into this website will be used for any form of targeted marketing, however please note that if advertising is ever added to this website it may perform said marketing using data that isn&#039;t part of any user account maintained on this site (such data is strictly confidential and only disclosed per the terms below).&lt;br /&gt;
* This section does not apply to usage of this site where no personal data is provided.  However, if you are a minor please remember to get your parents&#039; permission before installing any software provided on this website.&lt;br /&gt;
&lt;br /&gt;
== Use of information ==&lt;br /&gt;
* Server logs may be used for the purpose of diagnosing site problems and ensuring the security of the service.&lt;br /&gt;
* All page edits are automatically made visible to the public.&lt;br /&gt;
* Your username, or IP address if you are not logged on, will be visible to the public whenever an edit is made.&lt;br /&gt;
* IP addresses or user names will act as your signature on any edits or discussions on this site, and will be used to help protect against abuse.&lt;br /&gt;
* E-mail addresses will be used to send a validation link upon account registration.  If an account is approved, it will be associated with your username for the life of your account.  E-mail addresses collected through the Contact form or by direct e-mail will be used for the sole purpose of responding to your message.&lt;br /&gt;
* The Bugzilla system will display your e-mail address along with any bug report you submit.&lt;br /&gt;
* The forum will collect the IP address used to register for an account, as well as your E-mail address, which will be available to other registered members.  This information is associated with your username for the life of the account.&lt;br /&gt;
* Information submitted to this website will not be given to third parties, except in special circumstances:&lt;br /&gt;
** If abuse of this site is detected, your information may be disclosed to your Internet provider&#039;s abuse contact.&lt;br /&gt;
** In case of spam, your information (or the information provided by the spambot) may be reported to the provider&#039;s abuse contact as well as to anti-spam services, web safety forums, or trademark owners.&lt;br /&gt;
** In extreme situations, such as criminal activity, information may be disclosed to the relevant authorities as the situation dictates.&lt;br /&gt;
** Information may be disclosed in response to a valid legal order, warrant, or subpoena.&lt;br /&gt;
*** Information will NOT be disclosed if a legal order is from a foreign country, and such disclosure would violate human rights laws or be in violation of United States law.  In this unlikely scenario (politics are not allowed on this website) I would seek assistance from legal counsel before continuing.&lt;br /&gt;
&lt;br /&gt;
== Protection of information ==&lt;br /&gt;
* To protect sensitive information, certain areas of this website are protected with TLS and strong encryption. To ensure maximum security and proper functionality, please make sure your web browser is up to date, as this site supports TLS 1.2 with Perfect Forward Secrecy on supported browsers.&lt;br /&gt;
* A web browser supporting at least TLS 1.2 and SHA-2 certificates is required to access many parts of this website.&lt;br /&gt;
* To ensure maximum protection, parts of the website that require HTTPS will be inaccessible over plaintext HTTP.  In addition, the https part of the site will deliver a Strict Transport Security header to instruct your browser to only use HTTPS.  This site has been submitted to HSTS preloading lists on all major web browsers, &lt;br /&gt;
* To ensure the security of the connection you can check that the certificate has been issued by R3 (the Let&#039;s Encrypt intermediate).  Any CA other than Let&#039;s Encrypt or R3 means that your connection has more than likely been compromised, and you should run an anti-malware program, or if you are on a work or school network check with your network administrator.&lt;br /&gt;
** For additional information on the protection of your privacy when connecting to this website please visit https://www.grc.com/fingerprints.htm?domain=dxgl.org using a web browser that properly supports Extended Validation certificates (such as Chrome or Firefox) and ensure that &amp;quot;Gibson Research Corporation [US]&amp;quot; is displayed in the Address Bar.  This will display the current fingerprint being used by dxgl.org so you can compare it with the fingerprint displayed in your web browser&#039;s certificate information.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* External links are provided for your convenience in certain areas of this site.  Please note that they are subject to their own privacy practices, and you should review their privacy policies.&lt;br /&gt;
&lt;br /&gt;
== Removal of information ==&lt;br /&gt;
If you have been granted a user name and would like it removed, please leave a message under the discussion tab of this page, with the title &#039;&#039;&#039;USERNAME REMOVAL&#039;&#039;&#039;.  You must be logged on to the username that you wish to have removed.&lt;br /&gt;
* Your username will still be associated to any contributions you have made, but I will blank out all personal information from the database.&lt;br /&gt;
* To remove a Bugzilla account or any other account you may have on this website, please leave a message at https://dxgl.org/contact/ and I will remove the account from the Bugzilla system.&lt;br /&gt;
* To remove a forum account, please send a Private Message to username William, and I will delete the username from the forums.&lt;br /&gt;
&lt;br /&gt;
== Access to data ==&lt;br /&gt;
If you would like access to data collected as part of any user accounts, please leave a message at https://dxgl.org/contact/ using the e-mail address that matches your user account.  If your e-mail address has changed, please make sure to change it in your user account before contacting, for security purposes.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=3065</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=3065"/>
		<updated>2021-01-17T04:20:20Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|50|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=2369</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=2369"/>
		<updated>2021-01-03T02:10:12Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|25|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=1895</id>
		<title>Privacy policy</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=1895"/>
		<updated>2020-12-23T20:16:16Z</updated>

		<summary type="html">&lt;p&gt;William: Update domain for checking certificate&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Please read the privacy policy before using this site.&lt;br /&gt;
&lt;br /&gt;
Please look at the bottom of the page at https://dxgl.org/wiki/Privacy_policy to determine the last time the Privacy Policy was modified.  To view changes, please [https://dxgl.org/w/index.php?title=Privacy_policy&amp;amp;action=history click here].&lt;br /&gt;
&lt;br /&gt;
== Information automatically gathered ==&lt;br /&gt;
As with all web servers, when you access this site, the following standard information may be automatically stored by the server:&lt;br /&gt;
* The current date and time&lt;br /&gt;
* The page requested&lt;br /&gt;
* Your user agent ID (which tells the type of browser you are using)&lt;br /&gt;
* IP address may be logged if a server error occurs; this is a limitation of Nginx error logging.  For normal access your IP address will not be logged.&lt;br /&gt;
These logs are occasionally deleted to create a `clean slate` when I debug my site, and sometimes to speed up backup operations, as I treat them as temporary.&lt;br /&gt;
&lt;br /&gt;
=== BitTorrent downloads ===&lt;br /&gt;
This website may offer one or more downloads using the &amp;quot;BitTorrent&amp;quot; protocol, for the specific purpose to distribute archive copies of the DXGL software and website.  In order to deliver the content, your IP address will be temporarily stored and shared with other users, for the sole purpose to facilitate the acceleration of the content&#039;s downloading.  This is so your BitTorrent client can share downloaded content with other users and help accelerate the delivery of the content.  In addition, your BitTorrent client may publicly share your IP address over decentralized networks for the same purpose.  Once you disconnect your BitTorrent client, the server will soon discontinue sharing your IP address.&lt;br /&gt;
&lt;br /&gt;
Since for the purpose of avoiding the distribution of illegal or infringing files the BitTorrent tracker is programmed to only accept Torrent info-hashes authorized by this site, copyright protection organizations are requested to refrain from scraping IP addresses from this tracker.&lt;br /&gt;
&lt;br /&gt;
The tracker is available via unencrypted HTTP for the purpose of compatibility with older and/or embedded BitTorrent clients.  If your client supports HTTPS tracker URLs, you may modify the tracker portion of the Magnet link from http to https before pasting into your client.&lt;br /&gt;
&lt;br /&gt;
=== Protection against unauthorized access ===&lt;br /&gt;
This server may contain one or more software applications designed to prevent unauthorized access to secure areas of the server.  In this case, the logs generated by this security software will be e-mailed to a special mailbox on the server, and may be retained indefinitely and disclosed to the attacker&#039;s ISP as described under Use of Information.&lt;br /&gt;
* Abuse logs will NOT be generated through normal, unauthenticated browsing of this website and only apply to private, administrative areas.  For normal browsing, the rest of the &#039;&#039;Information Automatically Gathered&#039;&#039; section applies.&lt;br /&gt;
&lt;br /&gt;
== Cookies ==&lt;br /&gt;
* Certain areas of this website use &amp;quot;cookies&amp;quot; so that the software can track logins and session information.  Other than for the purpose of validating logins, these cookies are not used to identify you.&lt;br /&gt;
* In addition, as described in the &amp;quot;Matomo&amp;quot; section below, one or more anonymized cookies are used for site analytics purposes.&lt;br /&gt;
* You may disable cookies on your web browser if you wish; however you will be logged out of any area of the site using a login.&lt;br /&gt;
* Embedded YouTube videos are set to use &amp;quot;Privacy-enhanced mode&amp;quot; and will not set cookies automatically on your system.  YouTube however may set cookies as soon as you click to play those videos.  For privacy information regarding YouTube, please see https://www.google.com/intl/en/policies/privacy/&lt;br /&gt;
=== Matomo ===&lt;br /&gt;
* This website uses the Matomo platform (formerly known as Piwik) in order to gather aggregated information regarding the use of this website.  No personal information is gathered as a result of this software, with the exception of IP address which will be used for statistical purposes.&lt;br /&gt;
** This information is stored locally on the web server (this is self-hosted software), and will not be disclosed except under very limited circumstances as explained under the &amp;quot;Use of information&amp;quot; section.&lt;br /&gt;
** Collected IP addresses will be partially anonymized; IPv4 addresses will have the last two octets set to 0 and IPv6 addresses will have the last 80 bits set to 0.&lt;br /&gt;
** You may disable tracking by two methods.&lt;br /&gt;
*** If your browser has &amp;quot;Do Not Track&amp;quot; enabled, this will automatically disable analytics collection.&lt;br /&gt;
*** If you do not have &amp;quot;Do Not Track&amp;quot; enabled or your browser does not support this feature, you may use the following opt-out checkbox to disable or re-enable tracking on this website:&lt;br /&gt;
{{#widget:PiwikOptout}}&lt;br /&gt;
&lt;br /&gt;
== Advertising ==&lt;br /&gt;
* Third party vendors, including Google, use cookies to serve ads based on a user&#039;s prior visits to this website.&lt;br /&gt;
* Google&#039;s use of the DART cookie enables it and its partners to serve ads to you based on your visit to this site and/or other sites on the Internet.&lt;br /&gt;
* Users may opt out of personalized advertising by visiting Ads Settings ([https://www.google.com/settings/ads https://www.google.com/settings/ads]).  In addition, you may visit [https://optout.aboutads.info/ https://optout.aboutads.info/] to opt out of personalized advertising for a variety of ad networks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== WOT Ratings ==&lt;br /&gt;
This website supports Web of Trust ratings using the WOT widget, documentation of which is at [https://www.mywot.com/wiki/WOT_widget https://www.mywot.com/wiki/WOT_widget], to provide web safety ratings for external websites.  Certain non-identifying information may be collected as a result of the addon, and privacy information may be found at [https://www.mywot.com/en/privacy https://www.mywot.com/en/privacy].&lt;br /&gt;
* External websites are denoted with a colored circle based on the WOT trustworthiness of the linked website.  Please note that these external websites have their own policies, for which the owner of dxgl.org, dxgl.info and williamfeely.info is not responsible. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Information you provide ==&lt;br /&gt;
You may provide information to this website in the following ways:&lt;br /&gt;
* By creating or editing a page (including discussion pages)&lt;br /&gt;
* By requesting a Wiki account or confirming account creation&lt;br /&gt;
* If you add to a discussion page while not logged on, your IP address will be recorded.&lt;br /&gt;
* If you request a Wiki account, you will need to provide a valid E-mail address.&lt;br /&gt;
* Any user may create a Bugzilla account, which is separate from the MediaWiki system. An E-mail address is required to send the activation E-mail and is used as your username.&lt;br /&gt;
** Please note that E-mail addresses are publicly displayed when entering bug reports, so consider getting a free `disposable` account for use on public services such as Bugzilla.&lt;br /&gt;
* Any user may create an account on the AppDB system, which is also separate from the MediaWiki system.&lt;br /&gt;
** E-mail addresses in the AppDB system are not publicly displayed, but registered users may be able to e-mail you through the site if you submit any content to the AppDB.&lt;br /&gt;
* This website has a phpBB based forum, with separate registration. You may control the availability of your information to other users via the User Control Panel link at the top left of the page.  E-mail addresses are not disclosed to other users, although users may be able to e-mail each other using a web based form.&lt;br /&gt;
&lt;br /&gt;
== Minimum age to use services ==&lt;br /&gt;
In order to ensure compliance with the laws of the United States and to ensure personal data is not collected from underage users, you must be 13 years of age or older to register an account on this website.  Any user account found to belong to a user under 13 years of age (or the minimum age for your country, often 16 in Europe) will have that account information permanently deleted without notice.&lt;br /&gt;
* No personal information entered into this website will be used for any form of targeted marketing, however please note that if advertising is ever added to this website it may perform said marketing using data that isn&#039;t part of any user account maintained on this site (such data is strictly confidential and only disclosed per the terms below).&lt;br /&gt;
* This section does not apply to usage of this site where no personal data is provided.  However, if you are a minor please remember to get your parents&#039; permission before installing any software provided on this website.&lt;br /&gt;
&lt;br /&gt;
== Use of information ==&lt;br /&gt;
* Server logs may be used for the purpose of diagnosing site problems.&lt;br /&gt;
* All page edits are automatically made visible to the public.&lt;br /&gt;
* Your username, or IP address if you are not logged on, will be visible to the public whenever an edit is made.&lt;br /&gt;
* IP addresses or user names will act as your signature on any edits or discussions on this site, and will be used to help protect against abuse.&lt;br /&gt;
* E-mail addresses will be used to send a validation link upon account registration.  If an account is approved, it will be associated with your username for the life of your account.  E-mail addresses collected through the Contact form or by direct e-mail will be used for the sole purpose of responding to your message.&lt;br /&gt;
* The Bugzilla system will display your e-mail address along with any bug report you submit.&lt;br /&gt;
* The forum will collect the IP address used to register for an account, as well as your E-mail address, which will be available to other registered members.  This information is associated with your username for the life of the account.&lt;br /&gt;
* Information submitted to this website will not be given to third parties, except in special circumstances:&lt;br /&gt;
** If abuse of this site is detected, your information may be disclosed to your Internet provider&#039;s abuse contact.&lt;br /&gt;
** In case of spam, your information (or the information provided by the spambot) may be reported to the provider&#039;s abuse contact as well as to anti-spam services, web safety forums, or trademark owners.&lt;br /&gt;
** In extreme situations, such as criminal activity, information may be disclosed to the relevant authorities as the situation dictates.&lt;br /&gt;
** Information may be disclosed in response to a valid legal order, warrant, or subpoena.&lt;br /&gt;
*** Information will NOT be disclosed if a legal order is from a foreign country, and such disclosure would violate human rights laws or be in violation of United States law.  In this unlikely scenario (politics are not allowed on this website) I would seek assistance from legal counsel before continuing.&lt;br /&gt;
&lt;br /&gt;
== Protection of information ==&lt;br /&gt;
* To protect sensitive information, certain areas of this website are protected with TLS and strong encryption. To ensure maximum security and proper functionality, please make sure your web browser is up to date, as this site supports TLS 1.2 with Perfect Forward Secrecy on supported browsers.&lt;br /&gt;
* A web browser supporting at least TLS 1.2 and SHA-2 certificates is required to access many parts of this website.&lt;br /&gt;
* To ensure maximum protection, parts of the website that require HTTPS will be inaccessible over plaintext HTTP.  In addition, the https part of the site will deliver a Strict Transport Security header to instruct your browser to only use HTTPS.  This site has been submitted to HSTS preloading lists on all major web browsers, &lt;br /&gt;
* To ensure the security of the connection you can check that the certificate has been issued by R3 (the Let&#039;s Encrypt intermediate).  Any CA other than Let&#039;s Encrypt or R3 means that your connection has more than likely been compromised, and you should run an anti-malware program, or if you are on a work or school network check with your network administrator.&lt;br /&gt;
** For additional information on the protection of your privacy when connecting to this website please visit https://www.grc.com/fingerprints.htm?domain=dxgl.org using a web browser that properly supports Extended Validation certificates (such as Chrome or Firefox) and ensure that &amp;quot;Gibson Research Corporation [US]&amp;quot; is displayed in the Address Bar.  This will display the current fingerprint being used by www.williamfeely.info so you can compare it with the fingerprint displayed in your web browser&#039;s certificate information.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* External links are provided for your convenience in certain areas of this site.  Please note that they are subject to their own privacy practices, and you should review their privacy policies.&lt;br /&gt;
&lt;br /&gt;
== Removal of information ==&lt;br /&gt;
If you have been granted a user name and would like it removed, please leave a message under the discussion tab of this page, with the title &#039;&#039;&#039;USERNAME REMOVAL&#039;&#039;&#039;.  You must be logged on to the username that you wish to have removed.&lt;br /&gt;
* Your username will still be associated to any contributions you have made, but I will blank out all personal information from the database.&lt;br /&gt;
* To remove a Bugzilla account or any other account you may have on this website, please leave a message at https://dxgl.org/contact/ and I will remove the account from the Bugzilla system.&lt;br /&gt;
* To remove a forum account, please send a Private Message to username William, and I will delete the username from the forums.&lt;br /&gt;
&lt;br /&gt;
== Access to data ==&lt;br /&gt;
If you would like access to data collected as part of any user accounts, please leave a message at https://dxgl.org/contact/ using the e-mail address that matches your user account.  If your e-mail address has changed, please make sure to change it in your user account before contacting, for security purposes.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=1894</id>
		<title>Privacy policy</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Privacy_policy&amp;diff=1894"/>
		<updated>2020-12-23T20:09:19Z</updated>

		<summary type="html">&lt;p&gt;William: Change in Let&amp;#039;s Encrypt CA&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Please read the privacy policy before using this site.&lt;br /&gt;
&lt;br /&gt;
Please look at the bottom of the page at https://dxgl.org/wiki/Privacy_policy to determine the last time the Privacy Policy was modified.  To view changes, please [https://dxgl.org/w/index.php?title=Privacy_policy&amp;amp;action=history click here].&lt;br /&gt;
&lt;br /&gt;
== Information automatically gathered ==&lt;br /&gt;
As with all web servers, when you access this site, the following standard information may be automatically stored by the server:&lt;br /&gt;
* The current date and time&lt;br /&gt;
* The page requested&lt;br /&gt;
* Your user agent ID (which tells the type of browser you are using)&lt;br /&gt;
* IP address may be logged if a server error occurs; this is a limitation of Nginx error logging.  For normal access your IP address will not be logged.&lt;br /&gt;
These logs are occasionally deleted to create a `clean slate` when I debug my site, and sometimes to speed up backup operations, as I treat them as temporary.&lt;br /&gt;
&lt;br /&gt;
=== BitTorrent downloads ===&lt;br /&gt;
This website may offer one or more downloads using the &amp;quot;BitTorrent&amp;quot; protocol, for the specific purpose to distribute archive copies of the DXGL software and website.  In order to deliver the content, your IP address will be temporarily stored and shared with other users, for the sole purpose to facilitate the acceleration of the content&#039;s downloading.  This is so your BitTorrent client can share downloaded content with other users and help accelerate the delivery of the content.  In addition, your BitTorrent client may publicly share your IP address over decentralized networks for the same purpose.  Once you disconnect your BitTorrent client, the server will soon discontinue sharing your IP address.&lt;br /&gt;
&lt;br /&gt;
Since for the purpose of avoiding the distribution of illegal or infringing files the BitTorrent tracker is programmed to only accept Torrent info-hashes authorized by this site, copyright protection organizations are requested to refrain from scraping IP addresses from this tracker.&lt;br /&gt;
&lt;br /&gt;
The tracker is available via unencrypted HTTP for the purpose of compatibility with older and/or embedded BitTorrent clients.  If your client supports HTTPS tracker URLs, you may modify the tracker portion of the Magnet link from http to https before pasting into your client.&lt;br /&gt;
&lt;br /&gt;
=== Protection against unauthorized access ===&lt;br /&gt;
This server may contain one or more software applications designed to prevent unauthorized access to secure areas of the server.  In this case, the logs generated by this security software will be e-mailed to a special mailbox on the server, and may be retained indefinitely and disclosed to the attacker&#039;s ISP as described under Use of Information.&lt;br /&gt;
* Abuse logs will NOT be generated through normal, unauthenticated browsing of this website and only apply to private, administrative areas.  For normal browsing, the rest of the &#039;&#039;Information Automatically Gathered&#039;&#039; section applies.&lt;br /&gt;
&lt;br /&gt;
== Cookies ==&lt;br /&gt;
* Certain areas of this website use &amp;quot;cookies&amp;quot; so that the software can track logins and session information.  Other than for the purpose of validating logins, these cookies are not used to identify you.&lt;br /&gt;
* In addition, as described in the &amp;quot;Matomo&amp;quot; section below, one or more anonymized cookies are used for site analytics purposes.&lt;br /&gt;
* You may disable cookies on your web browser if you wish; however you will be logged out of any area of the site using a login.&lt;br /&gt;
* Embedded YouTube videos are set to use &amp;quot;Privacy-enhanced mode&amp;quot; and will not set cookies automatically on your system.  YouTube however may set cookies as soon as you click to play those videos.  For privacy information regarding YouTube, please see https://www.google.com/intl/en/policies/privacy/&lt;br /&gt;
=== Matomo ===&lt;br /&gt;
* This website uses the Matomo platform (formerly known as Piwik) in order to gather aggregated information regarding the use of this website.  No personal information is gathered as a result of this software, with the exception of IP address which will be used for statistical purposes.&lt;br /&gt;
** This information is stored locally on the web server (this is self-hosted software), and will not be disclosed except under very limited circumstances as explained under the &amp;quot;Use of information&amp;quot; section.&lt;br /&gt;
** Collected IP addresses will be partially anonymized; IPv4 addresses will have the last two octets set to 0 and IPv6 addresses will have the last 80 bits set to 0.&lt;br /&gt;
** You may disable tracking by two methods.&lt;br /&gt;
*** If your browser has &amp;quot;Do Not Track&amp;quot; enabled, this will automatically disable analytics collection.&lt;br /&gt;
*** If you do not have &amp;quot;Do Not Track&amp;quot; enabled or your browser does not support this feature, you may use the following opt-out checkbox to disable or re-enable tracking on this website:&lt;br /&gt;
{{#widget:PiwikOptout}}&lt;br /&gt;
&lt;br /&gt;
== Advertising ==&lt;br /&gt;
* Third party vendors, including Google, use cookies to serve ads based on a user&#039;s prior visits to this website.&lt;br /&gt;
* Google&#039;s use of the DART cookie enables it and its partners to serve ads to you based on your visit to this site and/or other sites on the Internet.&lt;br /&gt;
* Users may opt out of personalized advertising by visiting Ads Settings ([https://www.google.com/settings/ads https://www.google.com/settings/ads]).  In addition, you may visit [https://optout.aboutads.info/ https://optout.aboutads.info/] to opt out of personalized advertising for a variety of ad networks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== WOT Ratings ==&lt;br /&gt;
This website supports Web of Trust ratings using the WOT widget, documentation of which is at [https://www.mywot.com/wiki/WOT_widget https://www.mywot.com/wiki/WOT_widget], to provide web safety ratings for external websites.  Certain non-identifying information may be collected as a result of the addon, and privacy information may be found at [https://www.mywot.com/en/privacy https://www.mywot.com/en/privacy].&lt;br /&gt;
* External websites are denoted with a colored circle based on the WOT trustworthiness of the linked website.  Please note that these external websites have their own policies, for which the owner of dxgl.org, dxgl.info and williamfeely.info is not responsible. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Information you provide ==&lt;br /&gt;
You may provide information to this website in the following ways:&lt;br /&gt;
* By creating or editing a page (including discussion pages)&lt;br /&gt;
* By requesting a Wiki account or confirming account creation&lt;br /&gt;
* If you add to a discussion page while not logged on, your IP address will be recorded.&lt;br /&gt;
* If you request a Wiki account, you will need to provide a valid E-mail address.&lt;br /&gt;
* Any user may create a Bugzilla account, which is separate from the MediaWiki system. An E-mail address is required to send the activation E-mail and is used as your username.&lt;br /&gt;
** Please note that E-mail addresses are publicly displayed when entering bug reports, so consider getting a free `disposable` account for use on public services such as Bugzilla.&lt;br /&gt;
* Any user may create an account on the AppDB system, which is also separate from the MediaWiki system.&lt;br /&gt;
** E-mail addresses in the AppDB system are not publicly displayed, but registered users may be able to e-mail you through the site if you submit any content to the AppDB.&lt;br /&gt;
* This website has a phpBB based forum, with separate registration. You may control the availability of your information to other users via the User Control Panel link at the top left of the page.  E-mail addresses are not disclosed to other users, although users may be able to e-mail each other using a web based form.&lt;br /&gt;
&lt;br /&gt;
== Minimum age to use services ==&lt;br /&gt;
In order to ensure compliance with the laws of the United States and to ensure personal data is not collected from underage users, you must be 13 years of age or older to register an account on this website.  Any user account found to belong to a user under 13 years of age (or the minimum age for your country, often 16 in Europe) will have that account information permanently deleted without notice.&lt;br /&gt;
* No personal information entered into this website will be used for any form of targeted marketing, however please note that if advertising is ever added to this website it may perform said marketing using data that isn&#039;t part of any user account maintained on this site (such data is strictly confidential and only disclosed per the terms below).&lt;br /&gt;
* This section does not apply to usage of this site where no personal data is provided.  However, if you are a minor please remember to get your parents&#039; permission before installing any software provided on this website.&lt;br /&gt;
&lt;br /&gt;
== Use of information ==&lt;br /&gt;
* Server logs may be used for the purpose of diagnosing site problems.&lt;br /&gt;
* All page edits are automatically made visible to the public.&lt;br /&gt;
* Your username, or IP address if you are not logged on, will be visible to the public whenever an edit is made.&lt;br /&gt;
* IP addresses or user names will act as your signature on any edits or discussions on this site, and will be used to help protect against abuse.&lt;br /&gt;
* E-mail addresses will be used to send a validation link upon account registration.  If an account is approved, it will be associated with your username for the life of your account.  E-mail addresses collected through the Contact form or by direct e-mail will be used for the sole purpose of responding to your message.&lt;br /&gt;
* The Bugzilla system will display your e-mail address along with any bug report you submit.&lt;br /&gt;
* The forum will collect the IP address used to register for an account, as well as your E-mail address, which will be available to other registered members.  This information is associated with your username for the life of the account.&lt;br /&gt;
* Information submitted to this website will not be given to third parties, except in special circumstances:&lt;br /&gt;
** If abuse of this site is detected, your information may be disclosed to your Internet provider&#039;s abuse contact.&lt;br /&gt;
** In case of spam, your information (or the information provided by the spambot) may be reported to the provider&#039;s abuse contact as well as to anti-spam services, web safety forums, or trademark owners.&lt;br /&gt;
** In extreme situations, such as criminal activity, information may be disclosed to the relevant authorities as the situation dictates.&lt;br /&gt;
** Information may be disclosed in response to a valid legal order, warrant, or subpoena.&lt;br /&gt;
*** Information will NOT be disclosed if a legal order is from a foreign country, and such disclosure would violate human rights laws or be in violation of United States law.  In this unlikely scenario (politics are not allowed on this website) I would seek assistance from legal counsel before continuing.&lt;br /&gt;
&lt;br /&gt;
== Protection of information ==&lt;br /&gt;
* To protect sensitive information, certain areas of this website are protected with TLS and strong encryption. To ensure maximum security and proper functionality, please make sure your web browser is up to date, as this site supports TLS 1.2 with Perfect Forward Secrecy on supported browsers.&lt;br /&gt;
* A web browser supporting at least TLS 1.2 and SHA-2 certificates is required to access many parts of this website.&lt;br /&gt;
* To ensure maximum protection, parts of the website that require HTTPS will be inaccessible over plaintext HTTP.  In addition, the https part of the site will deliver a Strict Transport Security header to instruct your browser to only use HTTPS.  This site has been submitted to HSTS preloading lists on all major web browsers, &lt;br /&gt;
* To ensure the security of the connection you can check that the certificate has been issued by R3 (the Let&#039;s Encrypt intermediate).  Any CA other than Let&#039;s Encrypt or R3 means that your connection has more than likely been compromised, and you should run an anti-malware program, or if you are on a work or school network check with your network administrator.&lt;br /&gt;
** For additional information on the protection of your privacy when connecting to this website please visit https://www.grc.com/fingerprints.htm?domain=www.williamfeely.info using a web browser that properly supports Extended Validation certificates (such as Chrome or Firefox) and ensure that &amp;quot;Gibson Research Corporation [US]&amp;quot; is displayed in the Address Bar.  This will display the current fingerprint being used by www.williamfeely.info so you can compare it with the fingerprint displayed in your web browser&#039;s certificate information.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* External links are provided for your convenience in certain areas of this site.  Please note that they are subject to their own privacy practices, and you should review their privacy policies.&lt;br /&gt;
&lt;br /&gt;
== Removal of information ==&lt;br /&gt;
If you have been granted a user name and would like it removed, please leave a message under the discussion tab of this page, with the title &#039;&#039;&#039;USERNAME REMOVAL&#039;&#039;&#039;.  You must be logged on to the username that you wish to have removed.&lt;br /&gt;
* Your username will still be associated to any contributions you have made, but I will blank out all personal information from the database.&lt;br /&gt;
* To remove a Bugzilla account or any other account you may have on this website, please leave a message at https://dxgl.org/contact/ and I will remove the account from the Bugzilla system.&lt;br /&gt;
* To remove a forum account, please send a Private Message to username William, and I will delete the username from the forums.&lt;br /&gt;
&lt;br /&gt;
== Access to data ==&lt;br /&gt;
If you would like access to data collected as part of any user accounts, please leave a message at https://dxgl.org/contact/ using the e-mail address that matches your user account.  If your e-mail address has changed, please make sure to change it in your user account before contacting, for security purposes.&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=839</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=839"/>
		<updated>2020-11-12T20:02:45Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.5.20 or 0.6.0&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|19|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=DXGL_Test_Results&amp;diff=617</id>
		<title>DXGL Test Results</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=DXGL_Test_Results&amp;diff=617"/>
		<updated>2020-10-17T15:41:08Z</updated>

		<summary type="html">&lt;p&gt;William: /* API Test Cases */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are the results of testing DirectX SDK demos and driver test programs.&lt;br /&gt;
Please note that these results are currently out of date.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=DirectX SDKs=&lt;br /&gt;
==DirectX 2.0 SDK==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Program&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|d3dtest.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|ddcaps.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes&lt;br /&gt;
|-&lt;br /&gt;
|ddex1.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing center message&lt;br /&gt;
|-&lt;br /&gt;
|ddex2.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Wrong colors&lt;br /&gt;
|-&lt;br /&gt;
|ddex3.exe&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Perfect&lt;br /&gt;
|-&lt;br /&gt;
|ddex4.exe&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Perfect&lt;br /&gt;
|-&lt;br /&gt;
|ddex5.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Possible palette issues&lt;br /&gt;
|-&lt;br /&gt;
|ddtest.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes&lt;br /&gt;
|-&lt;br /&gt;
|donut.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No output&lt;br /&gt;
|-&lt;br /&gt;
|duel.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes when beginning game&lt;br /&gt;
|-&lt;br /&gt;
|flipcube.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|foxbear.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crashes after loading graphics&lt;br /&gt;
|-&lt;br /&gt;
|globe.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|iklowns.exe&lt;br /&gt;
|bgcolor=&amp;quot;gray&amp;quot; | Untested&lt;br /&gt;
|-&lt;br /&gt;
|memtime.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Slow FPS, does not return to windowed mode&lt;br /&gt;
|-&lt;br /&gt;
|palette.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No effect&lt;br /&gt;
|-&lt;br /&gt;
|rockem.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|stretch.exe&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Perfect&lt;br /&gt;
|-&lt;br /&gt;
|tunnel.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|twist.exe&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | No 3D&lt;br /&gt;
|-&lt;br /&gt;
|wormhole.exe&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Must change desktop resolution, palette cycling not working correctly&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Fnddraw.exe Tests=&lt;br /&gt;
==DCT Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|DCT_GetCaps ROP verification (DCT 5.20.1)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC98_21 (PC97 19) Transparent Blter&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC98_22 (PC97 20) Perform Double Buffer Swaps with no tearing&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC98_23 (PC97 22) Programmable Blter Stride&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Passes with warning&lt;br /&gt;
|-&lt;br /&gt;
|PC99 14.8 ScrnRes &amp;amp; VidMem Amt&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|PC99 14.23 Low-Res Support&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Passes with DXGLCFG option&lt;br /&gt;
|-&lt;br /&gt;
|PC99 14.22 App Access. FrameBuff1&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Fail but may be due to surface caching&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.6 720x576 Resolution&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass with minimum resolution&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.6 1280x720 Resolution&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass with minimum resolution&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.4 YUV support&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing YV12 format&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.5 Qual scaling Cons.&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.5 Qual scaling Enter.&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.1 Overlay support&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PC99TA 6.8.2 Color key support&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|GRPH-0168 Minimum Screen Resolution (non-mobile)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|GRPH-0393.1 Mobile Minimum Screen Resolution&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DCT_LargeNumberOfBuffersPageFlipping&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DCT_ColorFillWithSourceSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass, disregards source&lt;br /&gt;
|-&lt;br /&gt;
|DCT_AGPPrimarySurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==API Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_DirectDrawCreate&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_DirectDrawEnumerate&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with errors&lt;br /&gt;
|-&lt;br /&gt;
|API_AddRef/Release&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_Compact&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_CreateSurf&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_CreateSurf&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass/missing formats&lt;br /&gt;
|-&lt;br /&gt;
|API_HEL_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_DuplicateSurf&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with warnings&lt;br /&gt;
|-&lt;br /&gt;
|API_EnumDisplayModes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetFourCCCodes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_EnumSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with warnings&lt;br /&gt;
|-&lt;br /&gt;
|API_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass but wrong bitmasks&lt;br /&gt;
|-&lt;br /&gt;
|API_GetGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|API_FlipToGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Crashes in real life&lt;br /&gt;
|-&lt;br /&gt;
|API_Lock&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_RestoreDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetVerticalBlankStatus&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|API_GetScanLine&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Incorrect behavior&lt;br /&gt;
|-&lt;br /&gt;
|API_GetMonitorFrequency&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_SetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_Lander&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with errors&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDeviceIdentifier&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_TestCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Corrupts window style&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_SurfQueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetAvailableVidMem&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Flip&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetFourCCCodes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Unlock&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_SetCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetVerticalBlankStatus&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_WaitForVerticalBlank&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_EnumSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_SetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass with default settings&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Release&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Compact&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_RestoreDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_FlipToGDISurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetScanLine&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_CreatePalette&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_EnumDisplayModes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_IV_GetMonitorFrequency&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_ClassFactory&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==PAL Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|PAL_CreatePalette - Init 256 clrs(TC 2.6.9)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_CreatePalette - ALLOW256 Test(TC 2.6.12)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetEntries/SetEntries (8-Bit)(TC 4.5.7, 4.7.7)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Verify Palette Entries Untouched(Regress Nash #7535)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_CreatePalette - Invalid Params Test(TC 2.6.1-5)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetEntries - Invalid Params Test(TC 4.5.1-6)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_SetEntries - Invalid Params Test(TC 4.7.1-6)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetCaps Test(TC 4.4.3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_GetCaps - Invalid Params Test(TC 4.4.1-2)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Initialize Test(TC 4.6.3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette AddRef/Release Test (TC 4.2.2-3, 4.3.2-3 )&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Query Interface Test(TC 4.1.5-7)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Set New Palette Test (Regress: #8154)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Query Interface Invalid Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette Release Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_Palette AddRef Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_palGetPalette Test&#039;s surface get palette&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_MultiPalSwitch&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|PAL_IV_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==MEMMAN Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Consume All Video Mem Test(TC 6.1.1)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Test VidMem/AGP boundary for MipMap chains&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Rand Create/Release Video Memory surfaces 100X Test(TC 6.1.3)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Rand Create/Release AGP surfaces 100X Test(TC 6.1.3)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Video Memory Reuse Test(TC 6.1.2)&lt;br /&gt;
|bgcolor=&amp;quot;gray&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Create/Verify All Video Memory Types(TC ??]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN_GetAvailableVidMem(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Consume Half SysMem Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|MEMMAN - Random Create/Release System Memory surfaces Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Aborted&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==CLIP Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetHWnd/GetHWnd Test(TC 5.5.4, 5.9.5)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|GetClipList Test(TC 5.4.8, 5.8.9-10)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_IsClipListChanged Test(TC 5.7.3-4)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_CreateClipper - Invalid Params Test(TC 2.5.1-4)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetHWnd - Invalid Params Test(TC 5.9.1-3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_GetHWnd - Invalid Params Test(TC 5.5.1-3)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with warning&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetClipList While Using HWnd Test(TC 5.8.11)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_SetClipList - Invalid Params Test(TC 5.8.1-7)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_GetClipList - Invalid Params Test(TC 5.4.1-6)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_IsClipListChanged - Invalid Params Test(TC 5.7.1-2)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_DirectDrawCreateClipper(regress bug#4311)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_QueryInterface Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_Initialize Invalid Params Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CLIP_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==BLT Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, Offscreen Surfaces(TC 3.6.101-102, 2.6.105-106)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, VMem to Primary(TC 3.6.48, 3.6.103)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, System to Primary(TC 3.6.48, 3.6.107)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Basic, AGP to Primary(TC 3.6.48, 3.6.103)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 2, VMem to Primary(TC 3.6.49-50)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 2, System to Primary(TC 3.6.49-50)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 2, AGP to Primary(TC 3.6.49-50)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 1.5, VMem to Primary(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 1.5, System to Primary(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch x 1.5, AGP to Primary(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Shrink (1/2), VMem to Primary(TC 3.6.53-54)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Shrink (1/2), System to Primary(TC 3.6.53-54)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Shrink (1/2), AGP to Primary(TC 3.6.53-54)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch(width only) x 1.5, VMem to Pri(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch(width only) x 1.5, System to Pri(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Stretch(width only) x 1.5, AGP to Pri(TC 3.6.51-52)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single SRCKEY, System to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single SRCKEY, VMem to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single SRCKEY, AGP to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY Space, System to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Probably incorrect fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY Space, VMem to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Probably incorrect fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single DESTKEY, System to Primary(TC 3.6.58)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single DESTKEY, VMem to Primary(TC 3.6.58)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, single DESTKEY, AGP to Primary(TC 3.6.60)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, DESTKEY Space, System to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT, DESTKEY Space, VMem to Primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch, SRCKEY, System to primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch, SRCKEY, VMem to primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch, SRCKEY, AGP to primary(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch(width only), SRCKEY, Sys to pri(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch(width only), SRCKEY, VMem to pri(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Stretch(width only), SRCKEY, AGP to pri(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch, Complete Overlap, VMem(primary)(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch, Complete Overlap, Sys. mem.(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch, Complete Overlap, AGP mem.(TC 3.6.?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT,ROPs, VMem to Primary (TC 3.6.84)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT,ROPs, System to Primary(TC 3.6.84)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT Color Fill Primary(TC 3.6.57)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Color Fill SysMem(TC 3.6.57)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT Color Fill AGP Mem(TC 3.6.57)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Clipped, VMem to Primary Test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Clipped, System to Primary Test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Border clipping test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Mirrored and Clipped (Manbug4.1#13532)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass on most hardware&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Shrink, (3/4), VMem To Primary&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Shrink, (3/4), Sys To Primary&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Shrink, (3/4), AGP To Primary&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch (Wx2, Hx.75), VMem to Pri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch (Wx2, Hx.75), Sys to Pri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Stretch (Wx2, Hx.75), AGP to Pri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast From/To Same Surface(TC#3.6.97a)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Possible glitches&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast, SRCKEY, From/To same surface (TC#3.6.97b)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Possible glithces&lt;br /&gt;
|-&lt;br /&gt;
|BLT, FourCC to RGB conversion (TC#??.??.]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT, FourCC to RGB stretch (TC#??.??.]&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT, FourCC to FourCC(TC# ?]&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast - MoveToSytemMemoryTest&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast - Verify RLE recompression triggered&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY with unused pixel bits set (#5663)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, SRCKEY (from VMem) with unused pixel bits set&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT, DDERR_NOROTATIONHW (Manbug4.1#8172)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT_ZBuffer&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|BLT, Blt with CS_PARENTDC clip window(#5673)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Incorrect output&lt;br /&gt;
|-&lt;br /&gt;
|BLT,Invalid Params Test(TC 3.6.1-3, 3.6.5, 3.6.7-8 )&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_GetBltStatusMultBlts&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_GetBltStatusPostFlip&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFrontToBackBuff&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_OnscreenOverlap&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_OffscreenOverlap&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_SafeLockPri&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_ColorConverting&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Sys to Sys&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Sys to Vid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Sys to AGP&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_Texture Vid to Vid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_NoSrcColorKey&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_NoDestColorKey&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|BLT_CanNotColorFill&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_CanNotDepthFill&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_InvalidFlagsDDFX&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Sys to Sys&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Sys to Vid&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Sys to AGP&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast AGP to AGP&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast AGP to Sys (Driver may return DDERR_UNSUPPORTED)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast AGP to Vid&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Vid to Vid&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Vid to Sys&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|BLT_BltFast Vid to AGP&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==DC Test Cases==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|Get/Release DC x 25(TC ?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, Verify Pixel Format(TC ?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, GDI BitBlt() Tests(TC ?]&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, 16-bit DC Cache (ManBug #8348)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, GDI Blt from VidMem Surface to Window DC (ManBug #10431)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|API_GetDC, StretchBlt with Pitch (ManBug #8154)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SURF Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LockRectVideo&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LockRectVideoWindowedMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LockRectSystem&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_Lock, Multiple Rects, Video&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Lock Invalid Parameters&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetDDInterface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumAttachedSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_Set/GetColorKey Test&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_QueryInterface, multiple buffer surface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_WideSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetClipper&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_AddAttachedSurface (flip chain)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_LostSurfaceInvalidParam&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_DOSBoxInteraction&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_GetFlipStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_CopyToClipboard&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumPrimarySurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumOffScrnPlain&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumFourCCSurf&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pass with failures&lt;br /&gt;
|-&lt;br /&gt;
|SURF_EnumSurfTryMatch&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_SetSurf&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|Surface4_API_GetSurfaceFromDC&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DATA_Surface4_GetSetClientDataInvalid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DATA_Surface4_GetSetClientData&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_CreateSurfaceFromMemory&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|UNIQ_Surface4_GetChangeUniquenessValue&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_IV_Create From Existing Mem&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_Blt Custom Memory Surfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_GetDC Custom Memory Surfaces&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|CSEM_Change Surfaces and Blt&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetFlipStatus&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetBltStatus&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_PageLock&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_PageUnLock&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot;| Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetDC&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_ReleaseDC&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetColorKey&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetColorKey&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_BltBatch&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_BltFast&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Blt&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetPixelFormat&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Initialize&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_Lock&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetDDInterface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetPalette&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetPalette&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_SetClipper&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetClipper&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_GetAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_DuplicateSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_AddAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_EnumAttachedSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|SURF_IV_DeleteAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|SURF_ReleaseFrontBeforeBack&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|SURF_SetSurfaceDescDXTn&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==OVERLAY Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Destination Color Key Test (TC#3.30.10)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Create with DestKey Test (TC#3.30.10)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Z Order (Insert front/back of)(TC# ?.?.?)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Position not maintained (Regress. OSR#49314)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Set/GetOverlayPosition (TC. 3.28.8, 3.31.7)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, SetColorKey(NULL) (TC. 3.30.17+18)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, UpdateOverlay&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, UpdateOverlayDisplay&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, AddOverlayDirtyRect&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, EnumOverlayZOrders&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, MultiOverlay&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|OVERLAY, Create 1x1 doesn&#039;t crash&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==3D Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|3D_Depth Fill Blt Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|3D_Flip MipMap Chain&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|3D_Z-Buffer Mask Fill&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|3D_NOSYSLOCK Texture Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|3D_ReallocateAliasing Texture Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash&lt;br /&gt;
|-&lt;br /&gt;
|3D_IsSurfaceReallyLost Surface Test&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==VPE Test Cases==&lt;br /&gt;
Note:  Video port objects are not currently available in DXGL.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetDDVideoContainer&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_EnumDDVideoContainer&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_CreateEnumDDVideoContainer&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetInput/OutputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetBandwidthInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_WaitForSync&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_WaitForSync(Specific Line)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Flip&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_SetTargetSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetColorControls&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_SetColorControls&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetVideoSignalStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetVideoLine&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetFieldPolarity&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_QueryVideoPortStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_CreateVideoPort&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_StartVideo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_StopVideo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetOutputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetInputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_GetVideoPortConnectInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_EnumVideoPorts&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_UpdateVideo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Bob (AUTO)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Weave (AUTO)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Bob (MANUAL)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_Weave (MANUAL)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_IV_SetTargetSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_IV_GetInputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_IV_GetOutputFormats&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_HardwareDeinterlacing (AUTO)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|VPE_HardwareDeinterlacing (MANUAL)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Color Control Test Cases==&lt;br /&gt;
Note:  Color control is not currently available in DXGL&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestBrightnessCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestContrastCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestHueCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestSaturationCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestSharpnessCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestGammaCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestColorEnableCtl&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestInvalidGet&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestInvalidSet&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestGetInvalidSize&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|cctrlTestSetInvalidSize&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|cctrl_IV_TestAddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrl_IV_TestRelease&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|-&lt;br /&gt;
|cctrl_IV_TestQueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Missing functionality&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Kernel Test Cases==&lt;br /&gt;
Note:  Kernel mode functions are not currently available in DXGL&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_Release&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_GetCaps&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_GetKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_ReleaseKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfAddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfQueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfRelease&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfGetKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|KERNEL_SurfReleaseKernelHandle&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==MULTIMON Test Cases==&lt;br /&gt;
Note:  DXGL does not currently support multiple-monitor configurations.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_AllFullScreen_AllResolutionCombinations&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_TwoFullScreen_ReleaseSecondaryMonitor&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_AllFullScreen_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_InitWindowedWithFullScreen&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_InitFullScreenWithWindow&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_InitWindowedAllDevices&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_TwoFullScreenPrototype&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_BltFast&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_SetSingleCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MULTIMON_SetDoubleCooperativeLevel&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==MOCOMP Test Cases==&lt;br /&gt;
Note:  DXGL does not support DXVA accleration.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MCC_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MCC_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MCC_Release&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetMotionCompGUIDs&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetCompBufferInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetInternalMemInfo&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_GetUncompFormatsSupported&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_CreateMotionComp&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MC_QueryInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MC_AddRef&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_MC_Release&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_BeginFrame&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_EndFrame&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_Execute&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|MOCOMP_QueryRenderStatus&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==COM Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|Release DDRAW without Initializing&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|RELE_IndependentChildObjects(DD4, SURF3)&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|RELE_IndependentChildObjects2(DD4,SURF3-flipping chain)&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Corrupts FNDDraw window&lt;br /&gt;
|-&lt;br /&gt;
|RELE_DependentChildObjects(DD2,SURF3)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Leaks objects&lt;br /&gt;
|-&lt;br /&gt;
|RELE_DependentChildObjects2(DD1,SURF1)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Leaks objects&lt;br /&gt;
|-&lt;br /&gt;
|RELE_DependentChildObjects3(DD1, SURF4)&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Leaks objects&lt;br /&gt;
|-&lt;br /&gt;
|DDrawEnumEx&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==DD4 Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|DD4_API_IDirectDraw4&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_CreateSurface&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DD4_DuplicateSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_EnumDisplayModes&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_EnumSurfaces&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetAvailableVidMem&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetDisplayMode&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetAttachedSurface&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_GetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|-&lt;br /&gt;
|DD4_SetSurfaceDesc&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==WRITECOM Test Cases==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|WRITECOM_CheckWriteCombineIsEnabled&lt;br /&gt;
|bgcolor=&amp;quot;green&amp;quot; | Pass&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==GAMMA Test Cases==&lt;br /&gt;
Note: DXGL does not currently support gamma correction.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaInterface&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaModeChange&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaDOSBox&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|GAMMA_DDrawGammaInterfaceInvalid&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Compressed Texture Tests==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_RGB to DXT* to Primary&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Verify DXT1 Compression&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Freezes up&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT - Sys to Sys&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT - Sys to Vid&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_Blt DXT to DXT - Sys to AGP&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|DXTC_TextureDXT1&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Incorrect output&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==CUBEMAP Test Cases==&lt;br /&gt;
Note:  Cube maps will be supported in a later release of DXGL.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|CUBE_Create Cube Map Surfaces Test&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==STEREO Test Cases==&lt;br /&gt;
Note:  Stereoscopic display modes are not currently supported.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_EnumStereoModes&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Fail&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_LableLeftRight&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_Flip&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|-&lt;br /&gt;
|STEREO_InvalidParms&lt;br /&gt;
|bgcolor=&amp;quot;olive&amp;quot; | Pending&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Refresh Rate Test Cases==&lt;br /&gt;
Note:  FNDDraw does not support refresh tests on Windows NT type systems; Win98 compatibility mode causes crashes.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Result&lt;br /&gt;
|-&lt;br /&gt;
|REFRESH_Suite&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash / Pending on WinNT&lt;br /&gt;
|-&lt;br /&gt;
|REFRESH_ParamTest&lt;br /&gt;
|bgcolor=&amp;quot;darkred&amp;quot; | Crash / Pending on WinNT&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
	<entry>
		<id>https://dxgl.org/w/index.php?title=Progress&amp;diff=598</id>
		<title>Progress</title>
		<link rel="alternate" type="text/html" href="https://dxgl.org/w/index.php?title=Progress&amp;diff=598"/>
		<updated>2020-10-11T13:32:49Z</updated>

		<summary type="html">&lt;p&gt;William: /* Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DXGL is currently a work-in-progress and is currently considered alpha-quality software..&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Features]] for detailed information.&lt;br /&gt;
&lt;br /&gt;
See [[DXGL Changelog|Version history]] from the downloads section for release information and previous version downloads.&lt;br /&gt;
&lt;br /&gt;
Also see [[DXGL Test Results]] for some detailed tests performed occasionally.&lt;br /&gt;
&lt;br /&gt;
What works:&lt;br /&gt;
* DirectDraw object creation and destruction (versions 1 to 7)&lt;br /&gt;
* Display mode enumeration and switching (with emulated mode switching)&lt;br /&gt;
* Fullscreen and windowed modes.&lt;br /&gt;
* Basic Blt() functionality&lt;br /&gt;
* 8-bit color emulated with GLSL shader&lt;br /&gt;
&lt;br /&gt;
What partially works:&lt;br /&gt;
* 3D graphics are only partially supported.&lt;br /&gt;
&lt;br /&gt;
What doesn&#039;t work:&lt;br /&gt;
* Many functions are stubbed out and return an error&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
These are goals to be set for future releases.  This is completely subject to change at any time.&lt;br /&gt;
&lt;br /&gt;
* 0.6.0&lt;br /&gt;
{{progression|95|task=Remove deprecated OpenGL APIs}}&lt;br /&gt;
{{progression|0|task=Optimize D3D to GLSL storage}}&lt;br /&gt;
{{progression|0|task=Migrate to VBO}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (higher priority)&lt;br /&gt;
{{progression|90|task=Fix reference counts}}&lt;br /&gt;
{{progression|75|task=Validate DDraw parameters}}&lt;br /&gt;
{{progression|25|task=Fix resource leaks}}&lt;br /&gt;
{{progression|25|task=Remove trace build, control tracing via config option}}&lt;br /&gt;
{{progression|15|task=Improve DDraw API}}&lt;br /&gt;
{{progression|0|task=Improve color conversion on destination side}}&lt;br /&gt;
{{progression|0|task=Hook ClipCursor function}}&lt;br /&gt;
&lt;br /&gt;
* 0.6.x (lower priority)&lt;br /&gt;
{{progression|95|task=Add mipmap surfaces}}&lt;br /&gt;
{{progression|95|task=Support D3D2 textures}}&lt;br /&gt;
{{progression|95|task=Isolate API from backend threads}}&lt;br /&gt;
{{progression|90|task=Add depth buffer fill}}&lt;br /&gt;
{{progression|75|task=Implement D3D execute buffers}}&lt;br /&gt;
{{progression|50|task=Rework D3DTLVERTEX rendering}}&lt;br /&gt;
{{progression|50|task=Add software T&amp;amp;L for execute buffers}}&lt;br /&gt;
{{progression|10|task=Group renderer commands into batches}}&lt;br /&gt;
{{progression|10|task=Add client memory surfaces}}&lt;br /&gt;
{{progression|1|task=Improve D3D backend}}&lt;br /&gt;
{{progression|0|task=Support Blt() to/from different surface formats}}&lt;br /&gt;
{{progression|0|task=Expand use of PBO transfers}}&lt;br /&gt;
{{progression|0|task=Improve filtered color key Blt()}}&lt;br /&gt;
{{progression|0|task=Postprocess scaling for change mode with fallback}}&lt;br /&gt;
{{progression|0|task=Add framerate limiter}}&lt;br /&gt;
{{progression|0|task=Improve fog support}}&lt;br /&gt;
{{progression|0|task=Add multisampling}}&lt;br /&gt;
{{progression|0|task=Precompile generated shaders used in previous sessions}}&lt;br /&gt;
{{progression|0|task=Fix clippers on NVIDIA GeForce 6 series GPU}}&lt;br /&gt;
&lt;br /&gt;
* Future&lt;br /&gt;
{{progression|75|task=Support multiple DirectDraw drivers per process}}&lt;br /&gt;
{{progression|75|task=Support surface color depths}}&lt;br /&gt;
{{progression|25|task=Support NULL HWND}}&lt;br /&gt;
{{progression|25|task=Implement and improve API functions}}&lt;br /&gt;
{{progression|19|task=Convert from C++ to C}}&lt;br /&gt;
{{progression|5|task=Support GCC/MinGW compilation}}&lt;br /&gt;
{{progression|1|task=Hook mouse APIs - GetCursorPos, SetCursorPos, ClipCursor, GetClipCursor, GetCursorInfo}}&lt;br /&gt;
{{progression|0|task=Support Per-Monitor v2 DPI awareness in DXGL Config}}&lt;br /&gt;
{{progression|0|task=Advanced VSync support}}&lt;br /&gt;
{{progression|0|task=Hook GDI palette function}}&lt;br /&gt;
{{progression|0|task=Support GL_ARB_texture_barrier for destination color keying}}&lt;br /&gt;
{{progression|0|task=Workaround for Windows 10 Creators Edition &amp;quot;System (Enhanced)&amp;quot; scaling, if necessary}}&lt;br /&gt;
{{progression|5|task=Create Doxygen documentation [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Support configuring old/legacy DXGL versions [MAYBE]}}&lt;br /&gt;
{{progression|0|task=Add DXGL loader stub to fix programs that demand ddraw.dll from system32}}&lt;/div&gt;</summary>
		<author><name>William</name></author>
	</entry>
</feed>