Commit Graph

28458 Commits

Author SHA1 Message Date
Alexandre Julliard 1c66c611a1 kernel32: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:10:39 +02:00
Alexandre Julliard bc99ac09d3 dsound: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:10:32 +02:00
Alexandre Julliard 9f37cd55bc dplayx: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:10:21 +02:00
Alexandre Julliard 1b469c2482 dmstyle: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:10:12 +02:00
Alexandre Julliard 7ad5f9eca0 dinput: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:55 +02:00
Alexandre Julliard 4374328271 d3d9: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:46 +02:00
Alexandre Julliard 7bf49faf23 d3d8: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:36 +02:00
Alexandre Julliard aeae92e9f9 comdlg32: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:24 +02:00
Alexandre Julliard 03e2b335c4 comctl32: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:16 +02:00
Alexandre Julliard 553bb2591f advapi32: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:02 +02:00
Alexandre Julliard 82a404a077 winmm/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:04:07 +02:00
Alexandre Julliard 55d9045804 version/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:59 +02:00
Alexandre Julliard 744528578d urlmon/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:51 +02:00
Alexandre Julliard d90f68166c rpcrt4/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:44 +02:00
Alexandre Julliard 28e17a75af ole32/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:36 +02:00
Alexandre Julliard cba2c84741 ntdll/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:19 +02:00
Alexandre Julliard 65459cb344 mshtml/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:01 +02:00
Alexandre Julliard be4dccb33f mlang/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:02:52 +02:00
Alexandre Julliard 4ec2fcc9fd mapi32/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:02:45 +02:00
Alexandre Julliard c6b342d8ff kernel32/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:02:31 +02:00
Alexandre Julliard e19f31b682 gdi/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:02:13 +02:00
Alexandre Julliard 52d6077f8b crypt32/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:02:03 +02:00
Alexandre Julliard 68e4cf4a0b wininet/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:58:30 +02:00
Alexandre Julliard 298d80c2bd version/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:58:12 +02:00
Alexandre Julliard 0cbd0a367d shlwapi/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:57:59 +02:00
Alexandre Julliard 8e5eaaad1b ntdll/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:57:40 +02:00
Alexandre Julliard 1369719d2c mscms/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:57:27 +02:00
Alexandre Julliard e2e6115193 kernel32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:57:12 +02:00
Alexandre Julliard 93fd4524e4 crypt32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:56:39 +02:00
Alexandre Julliard 290ddd8e38 advapi32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format warnings. 2006-06-13 13:56:18 +02:00
Nick Burns 0da92ec9ca include: Use force_align_arg_pointer on MacOS to fix the stack on entry to Wine. 2006-06-13 13:01:56 +02:00
Mike McCormack e09aecff89 include: Remove non-ASCII characters in headers for winelib compatibility. 2006-06-13 12:57:07 +02:00
Mike McCormack 9985c42150 wingdi: Fix typo in definition of BLTALIGNMENT (spotted by Choe Hwanjin). 2006-06-13 12:56:49 +02:00
Mike McCormack cfe36cc81d msi: Fix loading of long strings. 2006-06-13 12:56:42 +02:00
Mike McCormack 25f521f1b2 winmm: Undefine SW_MAX defined by linux/input.h to avoid a conflict with winuser.h. 2006-06-13 12:56:38 +02:00
Michael Stefaniuc fee72b607a Yet another round of redundant NULL checks before HeapFree. 2006-06-13 11:40:23 +02:00
Alexandre Julliard 24beabfd4e msvcrt: Explicitly specify CDECL calling convention on exported functions. 2006-06-13 11:40:23 +02:00
Alexandre Julliard 28bbdf116c oledlg: Declare varargs functions as WINAPIV instead of cdecl. 2006-06-13 11:40:23 +02:00
Alexandre Julliard 1db7a349c9 avifil32: Declare varargs functions as WINAPIV instead of cdecl. 2006-06-13 11:40:23 +02:00
Mike McCormack 4a2d96077e userenv: Add profinfo.h. 2006-06-13 11:40:23 +02:00
Ivan Gyurdiev 45dbb78d73 wined3d: Fix params for DP2ADD/TEXLDD.
DP2ADD is valid on pshaders 2.0 and above, has 4 parameters.
TEXLDD is valid on pshaders 2.x and above, has 5 parameters.
2006-06-13 11:40:23 +02:00
Ivan Gyurdiev 8c6ee8df0d wined3d: Mark instructions without a destination token.
There are a total of 17 instructions without a destination token. Of
those 9 have num_params != 0, which means that we will not process any
of them correctly, because we assume the first token (if present) is a
destination token.

Those are basically all the flow control instructions, which we plan to
support very soon. They have source tokens, and no destination. Add a
flag that marks them up to the ins table. Use this flag in the trace
pass, and generation pass.
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev 14a52e5c09 wined3d: Keep pshader and vshader constants in GLSL separate.
GLSL uniforms have as scope the entire program.
To prevent conflicts, name pshader and vshader constants differently.
Based on a patch by Jason Green.
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev 0d08316523 wined3d: Improve Sampler support on 2.0 and 3.0 shaders.
- track sampler declarations and store the sampler usage in reg_maps structure
- store a fake sampler usage for 1.X shaders (defined as 2D sampler)
- re-sync glsl TEX implementation with the ARB one (no idea why they diverged..)
- use sampler type in new TEX implementation to support 2D, 3D, and Cube sampling
- change drawprim to bind pixel shader samplers

Additional improvements:
- rename texture limit to texcoord to prevent confusion
- add sampler limit, and use that for samplers - *not* the same as texcoord above
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev e99926ee06 wined3d: Cast more things.
Anything with a swizzle has to be casted to vec4, or it won't work properly.
There's multiple ways to do this, for the moment pick the easiest one.
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev a1f4dfe4e3 wined3d: Add support for shader model 3.0 I/O registers.
SM 3.0 can pack multiple "semantics" into 12 generic input/output registers.

To support that, define temporaries called IN and OUT, and use those as
the output registers. At the end of the vshader, unpack the OUT temps
into the proper GL variables. At the beginning of the pshader, pack the
GL variables back into 12 IN registers.
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev 1a3003338f wined3d: Trivial cleanups
- compiler warnings and errors should be FIXME
- remove obsolete comment, and change variable type.
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev a42925ee09 wined3d: Register map cleanups.
Various cleanups:
- do not use DWORD as a bitmask, that places artificial limit of 32 on
  registers
- track attributes that are used and declare only those
- move declarations function call in pshader/vshader to allow us to
  insert pixel or vertex specific code between the declarations and
  the rest of the code
- remove redundant 0 intializers
- remove useless continue statement
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev 17b0d26c1e wined3d: Share trace pass
Now that the declaration function is out of the way, the tracing pass,
which is very long and 100% the same can be shared between pixel and
vertex shaders.

The new function is called shader_trace_init(), and is responsible for:
- tracing the shader
- initializing the function length
- setting the shader version [needed very early]
2006-06-13 11:40:22 +02:00
Ivan Gyurdiev 9bae7755ab wined3d: Rework dcl processing.
The new function is called in pass 2 (getister counting/maps), and
it's now in baseshader. It operates on all INPUT and OUTPUT registers,
which, in addition to the old vertex shader input declarations covers
Shader Model 3.0 vshader output and pshader input declarations. The
result is stored into the reg_map structure.
2006-06-13 11:40:21 +02:00