Ivan Gyurdiev : wined3d: Trace ABS/ABSNEG modifiers.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Jul 7 11:10:28 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: 5638fac685ec40fa0c6c5db1e5bd919650fdfdee
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=5638fac685ec40fa0c6c5db1e5bd919650fdfdee
Author: Ivan Gyurdiev <ivg231 at gmail.com>
Date: Fri Jul 7 00:29:39 2006 -0600
wined3d: Trace ABS/ABSNEG modifiers.
---
dlls/wined3d/baseshader.c | 26 ++++++++++++++++----------
1 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c
index b7aa45f..84c86c7 100644
--- a/dlls/wined3d/baseshader.c
+++ b/dlls/wined3d/baseshader.c
@@ -436,6 +436,7 @@ void shader_dump_param(
DWORD reg = param & D3DSP_REGNUM_MASK;
DWORD regtype = shader_get_regtype(param);
+ DWORD modifier = param & D3DSP_SRCMOD_MASK;
/* There are some minor differences between pixel and vertex shaders */
char pshader = shader_is_pshader_version(This->baseShader.hex_version);
@@ -449,15 +450,19 @@ void shader_dump_param(
swizzle_reg_chars[3] = pshader? 'a': 'w';
if (input) {
- if ( ((param & D3DSP_SRCMOD_MASK) == D3DSPSM_NEG) ||
- ((param & D3DSP_SRCMOD_MASK) == D3DSPSM_BIASNEG) ||
- ((param & D3DSP_SRCMOD_MASK) == D3DSPSM_SIGNNEG) ||
- ((param & D3DSP_SRCMOD_MASK) == D3DSPSM_X2NEG) )
+ if ( (modifier == D3DSPSM_NEG) ||
+ (modifier == D3DSPSM_BIASNEG) ||
+ (modifier == D3DSPSM_SIGNNEG) ||
+ (modifier == D3DSPSM_X2NEG) ||
+ (modifier == D3DSPSM_ABSNEG) )
TRACE("-");
- else if ((param & D3DSP_SRCMOD_MASK) == D3DSPSM_COMP)
+ else if (modifier == D3DSPSM_COMP)
TRACE("1-");
- else if ((param & D3DSP_SRCMOD_MASK) == D3DSPSM_NOT)
+ else if (modifier == D3DSPSM_NOT)
TRACE("!");
+
+ if (modifier == D3DSPSM_ABS || modifier == D3DSPSM_ABSNEG)
+ TRACE("abs(");
}
switch (regtype) {
@@ -546,9 +551,8 @@ void shader_dump_param(
DWORD swizzle_b = (swizzle >> 4) & 0x03;
DWORD swizzle_a = (swizzle >> 6) & 0x03;
- if (0 != (param & D3DSP_SRCMOD_MASK)) {
- DWORD mask = param & D3DSP_SRCMOD_MASK;
- switch (mask) {
+ if (0 != modifier) {
+ switch (modifier) {
case D3DSPSM_NONE: break;
case D3DSPSM_NEG: break;
case D3DSPSM_NOT: break;
@@ -561,8 +565,10 @@ void shader_dump_param(
case D3DSPSM_X2NEG: TRACE("_x2"); break;
case D3DSPSM_DZ: TRACE("_dz"); break;
case D3DSPSM_DW: TRACE("_dw"); break;
+ case D3DSPSM_ABSNEG: TRACE(")"); break;
+ case D3DSPSM_ABS: TRACE(")"); break;
default:
- TRACE("_unknown_modifier(%#lx)", mask >> D3DSP_SRCMOD_SHIFT);
+ TRACE("_unknown_modifier(%#lx)", modifier >> D3DSP_SRCMOD_SHIFT);
}
}
More information about the wine-cvs
mailing list