d3dx9: Implement D3DXFloat32To16Array and D3DXFloat16To32Array. (try 2)

Rico Schüller kgbricola at web.de
Sun Feb 20 14:43:15 CST 2011


Hi,

I have a small hint to the D3DXFloat32To16Array function. It seems that 
some values are handled in some other way.

A small test:
         D3DXFLOAT16 res;
         union p
         {
             float f;
             DWORD d;
         } x;

         x.d = 0x33000800;
         D3DXFloat32To16Array(&res, &x.f, 1);
         ok(res.value == 1, "Failed %f %x\n", x.f, res.value);

This fails with the current implementation. It's not the only value, 
there are a couple of them which are of by one. This could be easily 
seen by loading both d3dx36.dll (wine and native) and comparing the 
values directly.

Cheers
Rico

Am 18.02.2011 02:18, schrieb Misha Koshelev:
> Fixes bug 25769. Extensively vetted by Stefan Dosinger. Passes winetestbot:
> https://testbot.winehq.org/JobDetails.pl?Key=9366
>
> Thank you
> Misha
> ---
>   dlls/d3dx9_36/d3dx9_36.spec |    4 +-
>   dlls/d3dx9_36/math.c        |  105 +++++++++++++++++++++++++++++++++++++++++++
>   dlls/d3dx9_36/tests/math.c  |   69 ++++++++++++++++++++++++++++
>   include/d3dx9math.h         |   18 +++++++
>   include/d3dx9math.inl       |   31 +++++++++++++
>   5 files changed, 225 insertions(+), 2 deletions(-)
>
>
>

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: d3dx36
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20110220/454c19a2/attachment.asc>


More information about the wine-devel mailing list