Commit Graph

348 Commits

Author SHA1 Message Date
Henri Verbeet 6e518a1d06 d3dx9_36/tests: Cleanup / simplify test_fvf_decl_conversion(). 2010-08-27 11:58:43 +02:00
Francois Gouget 2f8f70bca7 d3dx9_36: Make {is,make}_pow2() static. 2010-08-26 13:40:34 +02:00
Henri Verbeet 1bfd89986c d3dx9_36/tests: Avoid a redundant vertex declaration copy in test_decl_to_fvf(). 2010-08-26 12:41:58 +02:00
Henri Verbeet 5ed9403c74 d3dx9_36: Fix the D3DXFVFFromDeclarator() prototype.
The current version matches MSDN, but not the actual SDK header.
2010-08-26 12:41:53 +02:00
Matteo Bruni 53a15436f8 d3dcompiler: Move D3DAssemble tests from d3dx9_36. 2010-08-25 17:35:19 +02:00
Matteo Bruni 5dcb2e4b7e d3dcompiler: Move shader assembler implementation from d3dx9_36. 2010-08-25 17:34:24 +02:00
Henri Verbeet 5655c6f0bb d3dx9_36/tests: Use the proper D3DFVF_PSIZE constant in test_fvf_decl_conversion(). 2010-08-25 11:56:59 +02:00
Henri Verbeet bcd452ab82 d3dx9_36/tests: Remove a (mostly) redundant test. 2010-08-25 11:56:50 +02:00
Henri Verbeet 31e8a20d88 d3dx9_36: Use a lookup table in D3DXGetDeclVertexSize(). 2010-08-25 11:56:35 +02:00
Tony Wasserka ecce9eebcf d3dx9: Fix an off by one error in point_filter_simple_data. 2010-08-23 13:37:03 +02:00
Tony Wasserka 18b8916942 d3dx9: Black out pixels which are outside the source rect in D3DXLoadSurfaceFromMemory if no stretching is used. 2010-08-23 13:37:03 +02:00
Gerald Pfeifer 0fed73ef4b d3dx9_36: Simplify instr_ps_1_0123_texld. 2010-08-23 11:52:34 +02:00
Misha Koshelev 46050fb377 d3dx9: Add tests for FVF <-> declaration conversion. 2010-08-19 17:32:18 +02:00
Gerald Pfeifer f781be07fc d3dx9_36: minwidth and minheight are set but not used in point_filter_simple_data; remove them. 2010-08-16 17:28:55 +02:00
Alexandre Julliard 277040d924 d3dx9: Fix some incorrect const typecasts. 2010-08-04 17:53:14 +02:00
Tony Wasserka 1905e93b54 d3dx9: Implement ARGB point filtering in D3DXLoadSurfaceFromMemory. 2010-08-04 17:49:43 +02:00
Tony Wasserka 5bdfd877a7 d3dx9: Return D3DERR_INVALIDCALL in D3DXLoadSurfaceFromMemory if pDestRect is invalid. 2010-08-04 17:48:45 +02:00
Tony Wasserka 295d2a6777 d3dx9: Move pixel sampling and recombination in copy_simple_data to separate helper functions. 2010-08-04 17:48:21 +02:00
Misha Koshelev bf46b4fdfc d3dx9: Add stub and tests for D3DXCreateMesh. 2010-08-04 13:19:00 +02:00
Henri Verbeet 24f522c520 d3dx9_36/tests: Avoid the non-portable NAN macro. 2010-08-03 11:06:14 +02:00
Misha Koshelev cc1738ad3c d3dx9: Complete test for D3DXCreateSphere. 2010-08-02 15:14:41 +02:00
Matteo Bruni 1b3376982d d3dx9: Implement D3DXAssembleShaderFromFile. 2010-07-29 17:48:20 +02:00
Matteo Bruni 2a62616ac7 d3dx9: Handle parent_data parameter of D3DXInclude.Open() function. 2010-07-29 17:48:09 +02:00
Paul Chitescu 8068d4ee22 d3dx9_36: Provide an empty error message in the stub D3DXCompileShader. 2010-07-28 16:28:21 +02:00
Owen Rudge 54f049a656 d3dx9: Add basic implementation of D3DXFilterTexture, plus tests. 2010-07-24 11:16:43 +02:00
Owen Rudge 30d5e375e6 d3dx9: Implement D3DXCreateTexture plus tests. 2010-07-24 11:16:37 +02:00
Owen Rudge a9fe0ccbd2 d3dx9/tests: Implement additional texture requirement tests. 2010-07-24 11:16:24 +02:00
Owen Rudge b5c7675dd3 d3dx9: Implement D3DXCheckTextureRequirements. 2010-07-24 11:16:18 +02:00
Owen Rudge 79690ab1ea d3dx9/tests: Add beginning of general tests for texture functions. 2010-07-22 16:27:52 +02:00
Matteo Bruni d567a030ec d3dx9: Shader assembler <= ps_1_3 support. 2010-07-22 10:11:14 +02:00
Matteo Bruni 8ce3ecea0d d3dx9: Add <= ps_1_3 instruction parsing to the shader assembler. 2010-07-22 10:10:59 +02:00
Matteo Bruni 383a7fe3b1 d3dx9: Fix dst register handling in ps_1_4. 2010-07-22 10:10:53 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Matteo Bruni bfa3999284 d3dx9: Shader assembler ps_1_4 support. 2010-07-20 16:29:45 +02:00
Matteo Bruni 7c834e30d7 d3dx9: Add ps_1_4 instructions parsing to the shader assembler. 2010-07-20 16:29:45 +02:00
Matteo Bruni 949eca4012 d3dx9: Add shift modifiers parsing to the shader assembler. 2010-07-20 16:29:45 +02:00
Matteo Bruni 4c5954eaa4 d3dx9: Add ps_1_x source register modifiers to the shader assembler. 2010-07-20 16:29:45 +02:00
Misha Koshelev 242b4f3fe8 d3dx9: Add stub and basic test for D3DXCreateSphere. 2010-07-19 15:47:28 +02:00
Matteo Bruni c2b0f200fa d3dx9: Check dcl input instruction syntax against shader version. 2010-07-19 15:10:16 +02:00
Matteo Bruni 0ea6f7957a d3dx9: Error out on dcl output instruction where not supported. 2010-07-19 15:10:10 +02:00
Matteo Bruni d76e3ac9c6 d3dx9: Improve a FIXME. 2010-07-19 15:10:06 +02:00
Matteo Bruni a5e55c157f d3dx9: Remove unused parameter from get_regname(). 2010-07-19 15:09:59 +02:00
David Adam 4771ee2c5f d3dx9_36/test: Fix a copy/paste typo. 2010-07-09 09:52:15 +02:00
Misha Koshelev cd72aef038 d3dx9: Test penultimate declaration element in D3DXDeclaratorFromFVFTest. 2010-07-07 17:38:15 +02:00
Francois Gouget 7649c75b40 Assorted typo and spelling fixes. 2010-06-24 10:37:05 +02:00
Francois Gouget 3133b71e92 d3dx9_36: Make assemble_shader() static. 2010-06-24 10:34:40 +02:00
Matteo Bruni 5a5844d458 d3dx9: Disallow sampler declarations where not supported. 2010-06-10 17:17:57 +02:00
Matteo Bruni a74978dfef d3dx9: Check register type in dcl input instruction. 2010-06-10 17:17:57 +02:00
Matteo Bruni 5bb403ceb2 d3dx9: Allow sampler declaration without sampler type. 2010-06-10 17:17:57 +02:00
Matteo Bruni 2fa119f765 d3dx9: Accept texture coordinate registers in dcl instruction. 2010-06-09 20:20:58 +02:00
Matteo Bruni 00951f84ed d3dx9: Support ps_2_0-style dcl instruction in the shader assembler. 2010-06-09 20:20:58 +02:00
Matteo Bruni 9a8ffc916c d3dx9: Mark builtin compatibility declarations in the shader assembler.
This way we can output declarations in the bytecode without polluting
them with the builtin ones.
2010-06-09 20:20:58 +02:00
Matteo Bruni 8094c5563e d3dx9: Allow D3DXAssembleShader calls with NULL parameters. 2010-06-07 13:52:39 +02:00
Matteo Bruni bc42217401 d3dx9: Make D3DXCompileShader stub more verbose. 2010-06-01 17:48:59 +02:00
Matteo Bruni b45a17c7b3 d3dx9: Remove stray debug trace. 2010-06-01 17:48:54 +02:00
Matteo Bruni a262fde88c d3dx9: Fix get_regname debug function. 2010-06-01 17:48:50 +02:00
Matteo Bruni 25d4fe6817 d3dx9: Allow modifiers on the ps dcl sampler instruction. 2010-05-31 16:43:49 +02:00
Matteo Bruni 7de630ef2f d3dx9: Allow modifiers on the ps dcl input instruction. 2010-05-31 16:43:46 +02:00
Matteo Bruni 913278c5cb d3dx9: Shader assembler vs_1_0 and vs_1_1 support. 2010-05-27 14:46:42 +02:00
Marcus Meissner 41809d5833 d3dx9_36: Fixed off by 1 in the usage_idx check (Coverity). 2010-05-26 10:11:01 +02:00
Matteo Bruni 084d5f1f6c d3dx9: Stricter checks for relative addressing in the shader assembler. 2010-05-25 12:13:24 +02:00
Matteo Bruni 5786d3a0c7 d3dx9: Shader assembler ps_2_x support. 2010-05-21 18:58:05 +02:00
Matteo Bruni ce3e846f3b d3dx9: Add some more tests on register number checking. 2010-05-21 18:58:05 +02:00
Matteo Bruni 5050f7c8d2 d3dx9: Shader assembler vs_2_x support. 2010-05-21 18:58:05 +02:00
Matteo Bruni 961db7964d d3dx9: Check for oCx register number. 2010-05-21 18:58:04 +02:00
Matteo Bruni a9118ba171 d3dx9: Use separate opcodes for TEXLDP and TEXLDB.
There is no reason we have to strictly follow D3D bytecode format in our
intermediate representation.
2010-05-21 18:58:04 +02:00
Matteo Bruni 1d3f462fef d3dx9: Add missing texkill instruction parsing. 2010-05-21 18:58:04 +02:00
Matteo Bruni 5cc00e82b6 d3dx9: Shader assembler ps_3_0 support. 2010-05-19 16:58:00 +02:00
Matteo Bruni abb489b29d d3dx9: Add ps_3_0 instructions parsing to the shader assembler. 2010-05-19 16:58:00 +02:00
Matteo Bruni c1f7faca45 d3dx9: Add some version-specific checks in the shader assembler. 2010-05-18 18:42:09 +02:00
Owen Rudge 00eb092e4d d3dx9: Implement CreateEffectFromFile/Resource functions. 2010-05-18 08:47:38 +02:00
Owen Rudge b3523a447c d3dx9: Implement D3DXCreateEffectCompilerFromFile/Resource. 2010-05-18 08:47:35 +02:00
Matteo Bruni 1371e71f61 d3dx9: Add DEFB instruction support in the shader assembler.
This completes vs_3_0 assembler language support.
2010-05-17 12:42:32 +02:00
Matteo Bruni fa44f242b5 d3dx9: Add DEFI instruction support in the shader assembler. 2010-05-17 12:42:32 +02:00
Matteo Bruni dc1fa014ac d3dx9: Add DEF instruction support in the shader assembler. 2010-05-17 12:42:32 +02:00
Octavian Voicu 8921d8c730 d3dx9_36: Export D3DXCreateEffectEx stub. 2010-05-17 12:42:32 +02:00
Matteo Bruni 745b5fe8f1 d3dx9: Add sampler dcl instruction support to the shader assembler. 2010-05-13 19:44:13 +02:00
Matteo Bruni 6cbd511475 d3dx9: Add input dcl instruction support to the shader assembler. 2010-05-13 19:44:08 +02:00
Matteo Bruni efec8bb361 d3dx9: Complete output dcl instruction support. 2010-05-13 19:44:01 +02:00
Matteo Bruni b627d13ea8 d3dx9: Add output dcl instruction partial support to the shader assembler. 2010-05-13 19:43:55 +02:00
Matteo Bruni 9847d28753 d3dx9: Add predicate support to the shader assembler. 2010-05-12 14:13:15 +02:00
Matteo Bruni 93b2648c49 d3dx9: Add other flow control instructions in the shader assembler. 2010-05-12 14:13:15 +02:00
Matteo Bruni 25c929ab61 d3dx9: Support some flow control instructions in the shader assembler. 2010-05-12 14:13:15 +02:00
Gerald Pfeifer c45c226de4 d3dx9_36/tests: Remove variable scaling which is not really used from D3DXMatrixTest. 2010-05-10 10:17:14 +02:00
Matteo Bruni fb3ee6e0a6 d3dx9: Support some more vs_3_0 instructions in the shader assembler. 2010-05-06 14:45:16 +02:00
Matteo Bruni 399bde576e d3dx9: Add relative addressing support to the shader assembler. 2010-05-06 14:45:06 +02:00
Matteo Bruni 5f934aca62 d3dx9: Support all the remaining register types in the shader assembler. 2010-05-06 14:44:57 +02:00
Matteo Bruni ce3c1dfcb6 d3dx9: Add source register modifiers (sm 2+) support to the shader assembler. 2010-04-28 15:04:40 -05:00
Matteo Bruni 004a30a5c3 d3dx9: Add instruction modifiers (sm 2.0+) support to the shader assembler. 2010-04-28 15:04:40 -05:00
Matteo Bruni 9019267bfa d3dx9: Add swizzle and writemask support to the shader assembler. 2010-04-28 15:04:40 -05:00
Gerald Pfeifer d30629ff74 d3dx9_36: Remove variable nul which is not really used from D3DXVector4Test. 2010-04-26 07:02:11 -05:00
Tony Wasserka 7746136f9a d3dx9: Add tests for D3DXDeclaratorFromFVF. 2010-04-20 18:13:56 +02:00
Tony Wasserka a1945388f5 d3dx9: Add a stubbed D3DXDeclaratorFromFVF. 2010-04-20 18:13:41 +02:00
Christian Costa d862b40aeb d3dx9_36: Check wnd just after CreateWindow. Remove useless wnd check before calling DestroyWindow. 2010-04-15 14:21:07 +02:00
Christian Costa 79b8de1263 d3dx9_36/tests: Move surface tests into surface.c. 2010-04-14 18:00:48 +02:00
Christian Costa 9e67f954f1 d3dx9_36: Add support for 32-bit BGRA in D3DXGetImageInfoFromFileInMemory. 2010-04-12 15:39:57 +02:00
Christian Costa 3a98a6295a d3dx9_36: Implement D3DXGetImageInfoFromFileInMemory using WindowsCodecs (based on work from Tony Wasserka). 2010-04-09 11:42:10 +02:00
Christian Costa 83680cd094 d3dx9_36: Fix indentation. 2010-04-07 18:12:25 +02:00
Christian Costa 5046858528 d3dx9_36: Add stub for D3DXCreateTextureFromFileA. 2010-04-07 18:12:20 +02:00
Christian Costa 36ef502e2f d3dx9_36: Forward D3DXCreateTextureFromFileExW to D3DXCreateTextureFromFileInMemoryEx. 2010-04-07 18:12:05 +02:00
Christian Costa 24b37eaca0 d3dx9_36: Improve FIXMEs and TRACEs for surface. 2010-04-06 14:09:31 +02:00
Christian Costa 7444b682d0 d3dx9_36: Add stub for D3DXCreateBox. 2010-04-06 14:01:06 +02:00
Christian Costa adc1aaf06b d3dx9_36: Add stub for D3DXCheckTextureRequirements. 2010-04-05 16:46:40 +02:00
Alexandre Julliard 4bfc99b86c d3dx9_36: Don't include the bison-generated header from the bison source file. 2010-04-05 15:30:48 +02:00
Christian Costa b3ad91f699 d3dx9_36: Improve FIXMEs and TRACEs for font. 2010-04-02 10:45:28 +02:00
Christian Costa c1f6857636 d3dx9_36: Improve FIXMEs and TRACEs for sprite. 2010-04-02 10:45:25 +02:00
Christian Costa cf2315bd52 d3dx9_36: Implement D3DXCreateLine and add stubbed interface for ID3DXLine + tests. 2010-04-02 10:45:22 +02:00
Christian Costa 60f736af87 d3dx9_36: Add stub for D3DXLoadVolumeFromMemory. 2010-04-01 18:12:27 +02:00
Matteo Bruni 18c6f23a94 d3dx9: Implement a basic bytecode writer.
Now the shader assembler is structurally complete and it correctly
assembles one trivial shader program.
2010-03-30 15:52:57 +02:00
Matteo Bruni 95afbeadf5 d3dx9: Implement D3DXAssembleShader function, really basic shader assembler.
Currently it only accepts a minimal subset of the syntax (e.g. just an
instruction and two register types supported) and doesn't produce any
real output (i.e. shader bytecode).
2010-03-30 15:52:57 +02:00
Matteo Bruni 7545416133 d3dx9: Partial implementation of D3DXAssembleShader function.
This only executes the preprocessing pass. No parsing of the shader yet.
2010-03-30 15:52:56 +02:00
Mikhail Maroukhine adf09ce66e d3dx9_36: Fix compiler warnings with flag -Wcast-qual. 2010-03-29 12:12:36 +02:00
Christian Costa 39b60870ff d3dx9_36: Implement D3DXCreateEffectEx and make D3DXCreateEffect use it. 2010-03-25 10:01:32 +01:00
Christian Costa 947fe3a564 d3dx9_36: Add stub for D3DXCreateEffectCompiler. 2010-03-25 10:01:28 +01:00
Christian Costa 978d51b29c d3dx9_36: Remove useless includes. 2010-03-25 10:01:20 +01:00
Christian Costa b5f7ca9ed9 d3dx9_36: Implement D3DXCreateEffectPool and ID3DXEffectPool interface. 2010-03-25 10:01:16 +01:00
Christian Costa 4082920c3a d3dx9_36: Add stubbed interface for ID3DXEffect. 2010-03-22 12:16:15 +01:00
Francois Gouget 3428b94a8d Assorted spelling and case fixes. 2010-03-22 10:49:13 +01:00
Francois Gouget 381d73e423 d3dx9_36: Add a trailing '\n' to a TRACE(). 2010-03-22 10:48:23 +01:00
Christian Costa 62981582dd d3dx9_36: Add stub for D3DXCreateEffect. 2010-03-19 14:31:33 +01:00
Christian Costa 8da1d69c22 d3dx9_36: Use %u to print unsigned integer. 2010-03-19 13:17:31 +01:00
Christian Costa 312aa4996e d3dx9_36: Fix method name. 2010-03-19 13:17:20 +01:00
Christian Costa 441ee39495 d3dx9_36: Add missing GetSamplerIndex method to ID3DXConstantTable. 2010-03-19 13:17:08 +01:00
Christian Costa 70b79445f6 d3dx9_36: Implement ID3DXConstantTableImpl_GetDesc + tests. 2010-03-19 13:16:06 +01:00
Christian Costa c090624fbc d3dx9_36: Add stub for D3DXCreateTextureFromFileInMemoryEx. 2010-03-17 16:12:23 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Henri Verbeet a8b76781bf d3dx9_36: Not implementing an interface is not an internal error. 2010-03-15 15:55:26 +01:00
Henri Verbeet d85730c8e3 d3dx9_36: ID3DXBuffer is a base interface for ID3DXConstantTable. 2010-03-15 15:55:19 +01:00
Christian Costa e6d540d5c8 d3dx9_36/tests: Fix contant table header in ctab data. 2010-03-15 13:19:08 +01:00
Christian Costa c29f186fe0 d3dx9_36: Rename variables in D3DXGetShaderConstantTable(Ex) to match naming convention used in the file. 2010-03-15 13:18:44 +01:00
Christian Costa 6dfe16fc48 d3dx9_36: Avoid dereferencing null pointers in trace (spotted by Paul Vriens). 2010-03-04 12:30:21 +01:00
Christian Costa a942fe6fd7 d3dx9_36: Remove useless HEAP_ZERO_MEMORY flag (spotted by Henri Verbeet). 2010-03-02 11:14:38 +01:00
Christian Costa 4072edc111 d3dx9_36: Find, store and enable retreival of CTAB comment data in shader (based on code from Luis Busquets). 2010-03-01 14:03:00 +01:00
Christian Costa ea50ef8e08 d3dx9_36: Implement D3DXFindShaderComment (based on code from Luis Busquets) + tests. 2010-03-01 13:57:01 +01:00
Christian Costa 66d66f2e22 d3dx9_36: Implement stubbed ID3DXConstantTable interface. 2010-03-01 13:56:14 +01:00
Christian Costa 88b2892a59 d3dx9_36: Add stub for D3DXGetShaderConstantTableEx. Implement D3DXGetShaderConstantTable. 2010-02-22 12:37:17 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Christian Costa 6b6db0dcb2 d3dx9_36: Improve some stubs. 2010-02-15 12:50:45 +01:00
Christian Costa 82d7054085 d3dx9_36: Implement D3DXCreateTexture. 2010-02-15 12:50:42 +01:00
Christian Costa 8f63f180c9 d3dx9_36: Add stub for D3DXCompileShader. 2010-02-11 14:38:44 +01:00
David Adam 202f826d02 d3dx9/tests: 1 must be a float. 2009-12-22 14:12:43 +01:00
David Adam 3ff4d07c40 d3dx9/tests: Check a relative error instead of an absolute error. 2009-12-15 11:45:09 +01:00
Matteo Bruni c6af1f5cd4 d3dx9: Add D3DXAssembleShader tests. 2009-10-27 13:57:31 +01:00
Matteo Bruni cbcf699856 d3dx9: D3DXAssembleShaderFromResource implementation. 2009-10-19 14:46:55 +02:00
Matteo Bruni c31121dd35 d3dx9: D3DXAssembleShader and D3DXAssembleShaderFromFile stubs. 2009-10-19 14:46:40 +02:00
Tony Wasserka 7f8e4e275d d3dx9: Add tests for ARGB pixel format conversion in D3DXLoadSurfaceFromMemory. 2009-10-16 17:32:46 +02:00
Tony Wasserka 56e86b3df1 d3dx9: Implement converting and copying ARGB surface data in D3DXLoadSurfaceFromMemory. 2009-10-16 17:32:37 +02:00
Alexandre Julliard fa6ffb4d5d Fix empty function prototypes. 2009-10-07 12:24:53 +02:00
Francois Gouget 74b5da9a47 d3dx9_36: Fix compilation on systems that don't support nameless unions. 2009-08-31 12:51:29 +02:00
David Adam 9ec5d4388d d3dx9: Add forgotten copyrights. 2009-07-21 10:46:32 +02:00