=?UTF-8?Q?Rico=20Sch=C3=BCller=20?=: d3dx9: Add debug helper function for RegisterSet.
Alexandre Julliard
julliard at winehq.org
Mon Aug 27 14:35:03 CDT 2012
Module: wine
Branch: master
Commit: 3dc48141d108dc47b100ea53b4b2be4a19b4de37
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3dc48141d108dc47b100ea53b4b2be4a19b4de37
Author: Rico Schüller <kgbricola at web.de>
Date: Sat Aug 25 16:28:53 2012 +0200
d3dx9: Add debug helper function for RegisterSet.
---
dlls/d3dx9_36/d3dx9_36_private.h | 1 +
dlls/d3dx9_36/shader.c | 17 +++++++++--------
dlls/d3dx9_36/util.c | 16 +++++++++++++++-
3 files changed, 25 insertions(+), 9 deletions(-)
diff --git a/dlls/d3dx9_36/d3dx9_36_private.h b/dlls/d3dx9_36/d3dx9_36_private.h
index 76a9694..ea7b401 100644
--- a/dlls/d3dx9_36/d3dx9_36_private.h
+++ b/dlls/d3dx9_36/d3dx9_36_private.h
@@ -91,5 +91,6 @@ HRESULT load_volume_texture_from_dds(IDirect3DVolumeTexture9 *volume_texture, co
/* debug helpers */
const char *debug_d3dxparameter_class(D3DXPARAMETER_CLASS c) DECLSPEC_HIDDEN;
const char *debug_d3dxparameter_type(D3DXPARAMETER_TYPE t) DECLSPEC_HIDDEN;
+const char *debug_d3dxparameter_registerset(D3DXREGISTER_SET r) DECLSPEC_HIDDEN;
#endif /* __WINE_D3DX9_36_PRIVATE_H */
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index a3cd6f1..e7fbf30 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -674,8 +674,8 @@ static inline int is_vertex_shader(DWORD version)
static DWORD calc_bytes(D3DXCONSTANT_DESC *desc)
{
if (desc->RegisterSet != D3DXRS_FLOAT4 && desc->RegisterSet != D3DXRS_SAMPLER)
- FIXME("Don't know how to calculate Bytes for constants of type %d\n",
- desc->RegisterSet);
+ FIXME("Don't know how to calculate Bytes for constants of type %s\n",
+ debug_d3dxparameter_registerset(desc->RegisterSet));
return 4 * desc->Elements * desc->Rows * desc->Columns;
}
@@ -1064,7 +1064,7 @@ static HRESULT set_scalar_array(ID3DXConstantTable *iface, IDirect3DDevice9 *dev
}
break;
default:
- FIXME("Handle other register sets\n");
+ FIXME("Unhandled register set %s\n", debug_d3dxparameter_registerset(desc.RegisterSet));
return E_NOTIMPL;
}
@@ -1117,7 +1117,7 @@ static HRESULT set_vector_array(ID3DXConstantTable *iface, IDirect3DDevice9 *dev
}
break;
default:
- FIXME("Unhandled register set %#x\n", desc.RegisterSet);
+ FIXME("Unhandled register set %s\n", debug_d3dxparameter_registerset(desc.RegisterSet));
return E_NOTIMPL;
}
@@ -1235,7 +1235,7 @@ static HRESULT set_matrix_array(ID3DXConstantTable *iface, IDirect3DDevice9 *dev
}
break;
default:
- FIXME("Unhandled register set %#x\n", desc.RegisterSet);
+ FIXME("Unhandled register set %s\n", debug_d3dxparameter_registerset(desc.RegisterSet));
return E_NOTIMPL;
}
@@ -1340,7 +1340,7 @@ static HRESULT set_matrix_pointer_array(ID3DXConstantTable *iface, IDirect3DDevi
}
break;
default:
- FIXME("Unhandled register set %#x\n", desc.RegisterSet);
+ FIXME("Unhandled register set %s\n", debug_d3dxparameter_registerset(desc.RegisterSet));
return E_NOTIMPL;
}
@@ -1599,8 +1599,9 @@ static HRESULT parse_ctab_constant_type(const char *ctab, DWORD typeoffset, stru
constant->desc.RegisterSet = regset;
constant->desc.RegisterIndex = index;
- TRACE("name %s, elements %u, index %u, defaultvalue %p\n", constant->desc.Name,
- constant->desc.Elements, index, constant->desc.DefaultValue);
+ TRACE("name %s, elements %u, index %u, defaultvalue %p, regset %s\n", constant->desc.Name,
+ constant->desc.Elements, index, constant->desc.DefaultValue,
+ debug_d3dxparameter_registerset(regset));
TRACE("class %s, type %s, rows %d, columns %d, elements %d, struct_members %d\n",
debug_d3dxparameter_class(type->Class), debug_d3dxparameter_type(type->Type),
type->Rows, type->Columns, type->Elements, type->StructMembers);
diff --git a/dlls/d3dx9_36/util.c b/dlls/d3dx9_36/util.c
index cf974cf..5c34834 100644
--- a/dlls/d3dx9_36/util.c
+++ b/dlls/d3dx9_36/util.c
@@ -250,7 +250,21 @@ const char *debug_d3dxparameter_type(D3DXPARAMETER_TYPE t)
WINE_D3DX_TO_STR(D3DXPT_VERTEXFRAGMENT);
WINE_D3DX_TO_STR(D3DXPT_UNSUPPORTED);
default:
- FIXME("Unrecognized D3DXPARAMETER_TYP %#x.\n", t);
+ FIXME("Unrecognized D3DXPARAMETER_TYP %#x.\n", t);
+ return "unrecognized";
+ }
+}
+
+const char *debug_d3dxparameter_registerset(D3DXREGISTER_SET r)
+{
+ switch (r)
+ {
+ WINE_D3DX_TO_STR(D3DXRS_BOOL);
+ WINE_D3DX_TO_STR(D3DXRS_INT4);
+ WINE_D3DX_TO_STR(D3DXRS_FLOAT4);
+ WINE_D3DX_TO_STR(D3DXRS_SAMPLER);
+ default:
+ FIXME("Unrecognized D3DXREGISTER_SET %#x.\n", r);
return "unrecognized";
}
}
More information about the wine-cvs
mailing list