diff --git a/doomsday/build/win32/vs8/doomsday.sln b/doomsday/build/win32/vs8/doomsday.sln
index b17e3902ae..1d9c5a614e 100644
--- a/doomsday/build/win32/vs8/doomsday.sln
+++ b/doomsday/build/win32/vs8/doomsday.sln
@@ -26,6 +26,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WolfTC", "WolfTC.vcproj", "
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dsA3D", "dsA3D.vcproj", "{872D3583-05F8-407F-BFAC-111C839845C7}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "drDebug", "drdebug.vcproj", "{FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -111,6 +113,12 @@ Global
{872D3583-05F8-407F-BFAC-111C839845C7}.Mesa Release|Win32.Build.0 = Release|Win32
{872D3583-05F8-407F-BFAC-111C839845C7}.Release|Win32.ActiveCfg = Release|Win32
{872D3583-05F8-407F-BFAC-111C839845C7}.Release|Win32.Build.0 = Release|Win32
+ {FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}.Debug|Win32.ActiveCfg = Debug|Win32
+ {FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}.Debug|Win32.Build.0 = Debug|Win32
+ {FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}.Mesa Release|Win32.ActiveCfg = Mesa Release|Win32
+ {FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}.Mesa Release|Win32.Build.0 = Mesa Release|Win32
+ {FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}.Release|Win32.ActiveCfg = Release|Win32
+ {FAD44EAA-44F7-42C1-BCD8-93059C60BDE0}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/doomsday/build/win32/vs8/drdebug.vcproj b/doomsday/build/win32/vs8/drdebug.vcproj
new file mode 100644
index 0000000000..a14df12eae
--- /dev/null
+++ b/doomsday/build/win32/vs8/drdebug.vcproj
@@ -0,0 +1,336 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doomsday/engine/portable/include/dd_dgl.h b/doomsday/engine/portable/include/dd_dgl.h
index d2dbd07c12..cccf7a696d 100644
--- a/doomsday/engine/portable/include/dd_dgl.h
+++ b/doomsday/engine/portable/include/dd_dgl.h
@@ -122,7 +122,7 @@ typedef struct dgldriver_s {
void (*Fogv) (int pname, void *data);
int (*Project) (int num, gl_fc3vertex_t * inVertices,
gl_fc3vertex_t * outVertices);
- int (*ReadPixels) (int *inData, int format, void *pixels);
+// int (*ReadPixels) (int *inData, int format, void *pixels);
} dgldriver_t;
extern dgldriver_t __gl;
diff --git a/doomsday/engine/portable/src/dd_dgl.c b/doomsday/engine/portable/src/dd_dgl.c
index e9cf64556d..cc6b15bcb0 100644
--- a/doomsday/engine/portable/src/dd_dgl.c
+++ b/doomsday/engine/portable/src/dd_dgl.c
@@ -161,7 +161,7 @@ DEF_1(int, Bind, DGLuint)
DEF_2(int, GetIntegerv, int, int*)
DEF_2(int, SetInteger, int, int)
DEF_2(int, SetFloatv, int, float*)
-DEF_3(int, ReadPixels, int*, int, void*)
+// DEF_3(int, ReadPixels, int*, int, void*)
DEF_3(int, Project, int, gl_fc3vertex_t*, gl_fc3vertex_t*)
DEF_3(int, ChangeVideoMode, int, int, int)
DEF_4(int, CreateContext, int, int, int, int)
@@ -242,7 +242,7 @@ void DD_RouteAPI(void)
ROUTE(Fog);
ROUTE(Fogv);
ROUTE(Project);
- ROUTE(ReadPixels);
+// ROUTE(ReadPixels);
#undef ROUTE
#endif
}
@@ -334,7 +334,7 @@ int DD_InitDGLDriver(void)
Req(Fog);
Req(Fogv);
Req(Project);
- Req(ReadPixels);
+// Req(ReadPixels);
DD_RouteAPI();
diff --git a/doomsday/plugins/debugrenderer/src/main.c b/doomsday/plugins/debugrenderer/src/main.c
index b0aefb7e6c..a255136e51 100644
--- a/doomsday/plugins/debugrenderer/src/main.c
+++ b/doomsday/plugins/debugrenderer/src/main.c
@@ -33,7 +33,7 @@
#include
#include "doomsday.h"
-#include "dd_dgl.h"
+#include "..\..\..\engine\portable\include\dd_dgl.h"
/*
* This macro is used to import all the exported functions from the
@@ -48,7 +48,7 @@ int level; // Debug message level.
/*
* Entry point of the DLL.
*/
-BOOL DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
+BOOL __stdcall DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
const char *dglFileName = "drOpenGL.dll";
@@ -205,6 +205,12 @@ void out(int messageLevel, const char *format, ...)
*/
#define SIMPLE(name) in(1, #name); gl.name(); out(1, #name);
+#define VOID_INT(name) \
+ int result; \
+ in(1, #name); \
+ result = gl.name(); \
+ out(1, #name": %i", result); \
+ return result;
#define INT1_VOID(name, a) \
in(1, #name" (%i)", a); \
gl.name(a); \
@@ -215,6 +221,12 @@ void out(int messageLevel, const char *format, ...)
result = gl.name(a); \
out(1, #name": %i", result); \
return result;
+#define INT3_INT(name, a, b, c) \
+ int result; \
+ in(1, #name" (%i, %i, %i)", a, b, c); \
+ result = gl.name(a, b, c); \
+ out(1, #name": %i", result); \
+ return result;
#define INT4_VOID(name, a, b, c, d) \
in(1, #name" (%i, %i, %i, %i)", a, b, c, d); \
gl.name(a, b, c, d); \
@@ -228,7 +240,7 @@ void out(int messageLevel, const char *format, ...)
int DG_Init(void)
{
- SIMPLE(Init);
+ VOID_INT(Init);
}
int DG_ChangeVideoMode(int width, int height, int bpp)