Jason Green : wined3d:
Fix regression from register maps switch for ARB shaders.
Alexandre Julliard
julliard at wine.codeweavers.com
Sat Jun 10 06:26:30 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: e8c97e942188ac1fbb8d48dfdb6cf634a4d6f278
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=e8c97e942188ac1fbb8d48dfdb6cf634a4d6f278
Author: Jason Green <jave27 at gmail.com>
Date: Fri Jun 9 18:28:00 2006 -0400
wined3d: Fix regression from register maps switch for ARB shaders.
I missed a register mask in the move to share the shader_hw_def()
function between pixel and vertex shaders for ARB shaders. Fixed
that, and made the GLSL version use the same mask for consistency.
---
dlls/wined3d/baseshader.c | 4 ++--
dlls/wined3d/glsl_shader.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c
index 8d1f759..47e1ba8 100644
--- a/dlls/wined3d/baseshader.c
+++ b/dlls/wined3d/baseshader.c
@@ -767,10 +767,10 @@ void shader_dump_ins_modifiers(const DWO
* float constant, and stores it's usage on the regmaps. */
void shader_hw_def(SHADER_OPCODE_ARG* arg) {
- DWORD reg = arg->dst;
+ DWORD reg = arg->dst & D3DSP_REGNUM_MASK;
shader_addline(arg->buffer,
- "PARAM C%lu = { %f, %f, %f, %f };\n", reg & 0xFF,
+ "PARAM C%lu = { %f, %f, %f, %f };\n", reg,
*((const float *)(arg->src + 0)),
*((const float *)(arg->src + 1)),
*((const float *)(arg->src + 2)),
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index f8385e0..b2011b6 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -690,7 +690,7 @@ void shader_glsl_def(SHADER_OPCODE_ARG*
DWORD reg = arg->dst & D3DSP_REGNUM_MASK;
shader_addline(arg->buffer,
- "const vec4 C%lu = { %f, %f, %f, %f };\n", reg & 0xFF,
+ "const vec4 C%lu = { %f, %f, %f, %f };\n", reg,
*((const float *)(arg->src + 0)),
*((const float *)(arg->src + 1)),
*((const float *)(arg->src + 2)),
More information about the wine-cvs
mailing list