Commit Graph

1591 Commits

Author SHA1 Message Date
Henri Verbeet a5214c306f wined3d: Don't free D3D surfaces until the wined3d surface is destroyed.
This prevents for example a d3d9 depth stencil from being destroyed when it
has no external references but is still in use by the device/stateblock. A
nice side effect is that it simplifies handling of "implicit" surfaces like
the frontbuffer and backbuffers, as well as the forwarding of reference counts
for surfaces that are part of a texture.
2009-09-16 13:04:32 -05:00
Henri Verbeet 2b2fc827ce wined3d: Remove unused parameters to drawPrimitive(). 2009-09-11 12:09:14 +02:00
Alexandre Julliard 192fcc5bb3 libport: Added an interlocked_cmpxchg128 function for 64-bit. 2009-09-01 12:39:17 +02:00
Alexandre Julliard b8ae3f073b ntdll: Fix handling of the duplicate MxCsr entry in the x86_64 context. 2009-08-27 16:49:53 +02:00
Eric Pouech bc56c4eab3 configure: Check for large filesystems support. 2009-08-26 11:58:32 +02:00
Henri Verbeet f9c791f9ca d3d8: Use a wined3d cs for wined3d locking.
We will need this for d3d10, where both dxgi and d3d10core are making wined3d
calls. Right now d3d8/d3d9 also use this to protect their own data, but
eventually we should push this down into wined3d itself and use something a
bit more fine-grained. There's no good reason that doing e.g. a vertex buffer
upload in some thread should block all of wined3d.
2009-08-25 11:12:17 +02:00
Alexandre Julliard da8acbc47d server: Define an architecture-independent structure for process startup info. 2009-08-21 20:00:12 +02:00
Alexandre Julliard ee868cce5b tests: Make wine_dbgstr_w available in test.h for all tests. 2009-08-19 13:19:31 +02:00
Mike Kaplinskiy b05774ee7e server: Change cancel_async to take an optional iosb and only_thread. 2009-08-18 12:26:30 +02:00
Huw Davies 86f0634dae include: Add ALIGNM2 format character. 2009-08-17 16:47:15 +02:00
Alexandre Julliard 9b279deb58 include: Fix the NE exe type defines. 2009-08-17 13:57:48 +02:00
Henri Verbeet 69b7612265 wined3d: Get rid of struct glDescriptor.
In general it might not be a bad idea to group GL specific data into a
separate struct, but IWineD3DSurfaceImpl is currently the only thing that
bothers. It doesn't get it quite right either, since e.g. the PBO isn't in
glDescriptor either.
2009-07-10 12:13:24 +02:00
Henri Verbeet 038d939941 wined3d: Remove GetGlDesc() from the public IWineD3DSurface interface. 2009-07-10 12:13:09 +02:00
Henri Verbeet 699f68cdee wined3d: Get rid of some pointers in WINED3DADAPTER_IDENTIFIER.
This also avoids some unchecked strcpy() calls.
2009-07-07 11:50:30 +02:00
Alexandre Julliard 6056e8a52b server: Return the process CPU in the get_process_info request. 2009-07-07 11:37:47 +02:00
Alexandre Julliard 1d5cb9d23b include: Get rid of the no longer used wine/pthread.h. 2009-07-06 14:35:24 +02:00
Alexandre Julliard c152b4e7d1 include: Add a target address for unwinding for platforms that need it. 2009-06-18 15:17:26 +02:00
Henri Verbeet 88162fabb8 wined3d: Get rid of the pointers in WINED3DSURFACE_DESC. 2009-06-15 13:42:29 +02:00
Henri Verbeet 4bc6b376e0 wined3d: Remove the useless "resource_type" parameter from IWineD3DDevice::CreateSurface(). 2009-06-12 17:33:15 +02:00
Alexandre Julliard 857f1e0924 configure: Detect the appropriate form for the __ASM_GLOBAL_FUNC macro. 2009-06-11 17:36:32 +02:00
Henri Verbeet 621da64245 wined3d: Get rid of the silly pointers in WINED3DVOLUME_DESC. 2009-06-09 17:01:14 +02:00
Henri Verbeet 484cde1327 include: Add a generic red-black tree. 2009-06-03 11:40:09 +02:00
Henri Verbeet 5e0f541621 wined3d: Remove ResourceReleased() from the public device interface. 2009-05-29 11:26:38 +02:00
Henri Verbeet 13a05caa97 wined3d: Remove the "declaration" parameter to IWineD3DDeviceImpl_CreateVertexShader().
Once upon a time this was used for creating fake vertex shader
attribute semantics for d3d8 shaders. We don't need this anymore since
device_stream_info_from_declaration() will use the vertex
declaration's output slot to load the data, if present. That also
avoids the potentially expensive matching of attribute semantics
between vertex shader and declaration for d3d8.
2009-05-28 12:42:18 +02:00
Henri Verbeet f0e303b0f2 wined3d: Add the output signature to IWineD3DDevice_CreateVertexShader(). 2009-05-26 13:49:55 +02:00
Roderick Colenbrander cc96ce438a wgl: Add WGL_SWAP_METHOD_ARB support. 2009-05-18 12:34:48 +02:00
Henri Verbeet 91c3a5eac1 wined3d: Directly call basetexture_apply_state_changes().
All the implementations of IWineD3DBaseTexture::ApplyStateChanges() forward to
basetexture_apply_state_changes().
2009-05-13 11:55:01 +02:00
Henri Verbeet 9a579a43b1 wined3d: Use the output signature to map SM4 pixel shader outputs to the appropriate register. 2009-05-11 12:43:00 +02:00
Henri Verbeet 6f33b97c94 wined3d: Get rid of the shared_handle parameter.
I don't expect us to support this in the near future, and right now it's just
dead code.
2009-04-23 14:22:06 +02:00
Hans Leidekker 24af6f3e01 server: Add requests to set and retrieve default dacl. 2009-04-21 15:40:26 +02:00
Roderick Colenbrander 9b889626d0 opengl: Add WGL_EXT_pixel_format_packed_float support. 2009-04-21 13:16:09 +02:00
Brad Martin 2ea6b36ef1 wined3d: Fix prototype for EnumAdapterModes. 2009-04-20 17:19:53 +02:00
Stefan Dösinger cb1c9dcda9 d3d: Remove the format from index buffers. 2009-04-09 16:28:25 +02:00
Stefan Dösinger f0efa97413 wined3d: Remove the buffer fvf. 2009-04-09 16:28:10 +02:00
Alexandre Julliard 5316dd011f server: Define a generic context structure instead of using the platform-specific version. 2009-04-08 19:59:23 +02:00
Stefan Dösinger 513a493f00 wined3d: Merge IWineD3DIndexBuffer and IWineD3DBuffer. 2009-04-08 11:37:29 +02:00
Stefan Dösinger 3ed94329a3 wined3d: Use Map and Unmap for index buffers.
Just a change in name to prepare for the next patch
2009-04-08 11:36:18 +02:00
Stefan Dösinger dc80a3ede5 d3d: Unify WINED3DVERTEXBUFFER_DESC and WINED3DINDEXBUFFER_DESC. 2009-04-08 11:36:02 +02:00
Alexandre Julliard 279defe66e server: Verify that the client is using a supported CPU type. 2009-04-03 14:59:12 +02:00
Alexandre Julliard 653d2c4a8d server: Store the type of CPU that the client is running on. 2009-04-03 14:49:10 +02:00
Alexandre Julliard b06a919c3c server: Use the thread entry point field to pass the PEB in the initial thread. 2009-04-03 14:30:34 +02:00
Alexandre Julliard 8edf353bd2 libwine: Export __wine_get_main_environment on Mac OS to make sure it's reevaluated when used. 2009-04-01 15:07:42 +02:00
Henri Verbeet 4ccbc948a1 d3d10core: Set the initial buffer data, when present. 2009-03-31 12:42:07 +02:00
Henri Verbeet 4434d00f84 wined3d: Unify vertex and texture formats.
Some fields should be redundant now, eg. gl_vtx_type and glType. I'll leave
that for a different patch to fix though.
2009-03-27 15:51:25 +01:00
Henri Verbeet 6f206c75ec wined3d: Don't create an END element for wined3d vertex declarations.
Wined3d doesn't need it since it already has the element count.
2009-03-27 15:51:25 +01:00
Henri Verbeet 4330d20d0d wined3d: Remove IWineD3DVertexDeclaration_SetDeclaration() from the public interface. 2009-03-27 15:51:25 +01:00
Henri Verbeet d8a4cc6648 wined3d: Remove IWineD3DVertexDeclarationImpl_GetDeclaration().
It's never used.
2009-03-27 15:51:25 +01:00
Henri Verbeet d7c7c76850 wined3d: Use separate structures for ddraw style strided data and wined3d's internal stream info. 2009-03-27 15:51:25 +01:00
Henri Verbeet 6afd97cc9f wined3d: Remove unused attributes from WineDirect3DVertexStridedData.
These are essentially unused, and mostly just complicate the code.
2009-03-26 14:47:52 +01:00
Alexandre Julliard 4aa98e030e include: Get rid of the definitions for the pthread emulation. 2009-03-26 13:26:57 +01:00
Rob Shearman 1c89dacf9c services: svcctl_GetServiceDisplayNameW and svcctl_GetServiceKeyNameW should have string attribute on output buffer.
They also should not have two parameters for specifying the size of the buffer.

The buffer size should also not include in the nul-terminating character.
2009-03-24 13:11:41 +01:00
Henri Verbeet a3657c164d wined3d: Remove some redundant fields from struct glDescriptor. 2009-03-13 11:28:50 +01:00
Henri Verbeet a3df476706 wined3d: Buffer object ID's are supposed to be unsigned. 2009-03-09 14:39:18 +01:00
Henri Verbeet aa3027a604 wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 3b07e7059e wined3d: Add d3d10 primitive types. 2009-03-05 16:16:24 +01:00
Henri Verbeet 602bb1f551 wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods. 2009-03-05 16:16:24 +01:00
Steven Edwards 3d0c0429ad include: Add check to asm macro for Windows Services for Unix/Subsystem for Unix applications. 2009-03-02 13:59:42 +01:00
Henri Verbeet 7facc6906d wined3d: Implement IWineD3DDeviceImpl_ClearRendertargetView(). 2009-02-25 12:37:06 +01:00
Henri Verbeet eda929d010 dxgi: Create a wined3d swapchain. 2009-02-24 16:57:29 +01:00
Henri Verbeet c796f76483 wined3d: Add IWineD3DRendertargetView. 2009-02-24 16:57:29 +01:00
Henri Verbeet 399d992a07 wined3d: Add IWineD3DBuffer, use it in d3d10core. 2009-02-23 12:20:45 +01:00
Henri Verbeet 0048a0373b d3d10core: Keep a reference to the wined3d device in the d3d10 device. 2009-02-23 12:20:29 +01:00
Henri Verbeet 8cefc47d81 wined3d: Add DXGI formats to WINED3DFORMAT. 2009-02-20 11:10:37 +01:00
Alexandre Julliard d55bdc01d9 tests: When tracing is enabled, output the todo tests too. 2009-02-19 16:17:13 +01:00
Stefan Dösinger c585b4de99 wined3d: Duplicate GL textures for srgb switching.
This reduces the number of srgb switching reloads quite a lot. The only
situation in which a reload is needed is if the rgb copy is modified on the GL
side and the srgb copy is needed.
2009-02-17 12:48:05 +01:00
Alexandre Julliard 746948551a services: Add stub implementation for SERVICE_CONFIG_FAILURE_ACTIONS in ChangeServiceConfig2W. 2009-01-27 11:27:45 +01:00
Alexandre Julliard 58010a9750 include: Update the comments about the Wine exception macros. 2009-01-26 15:07:50 +01:00
Alexandre Julliard 05a840dfc9 advapi32: Fix GetServiceDisplayNameW behavior to pass the tests. 2009-01-21 23:35:35 +01:00
Alexandre Julliard c795150932 advapi32: Fix GetServiceKeyNameW behavior to pass the tests. 2009-01-21 23:32:29 +01:00
Alexandre Julliard b608a43df7 advapi32: Reimplemented QueryServiceConfig2W in services.exe. 2009-01-19 20:34:02 +01:00
Alexandre Julliard 913e792b57 server: Store process/thread affinity as a 64-bit value. 2009-01-19 14:15:51 +01:00
Alexandre Julliard 7f1dc355ec server: Generate padding in request structures from make_requests.
Add compile-time asserts to check that the structures have the expected layout.
2009-01-19 14:01:39 +01:00
Henri Verbeet c9f116a56f dxgi: Implement IDXGIDevice::CreateSurface(). 2009-01-19 13:36:25 +01:00
Henri Verbeet 43f469ec6a d3d10core: Implement device_parent_CreateSurface(). 2009-01-19 13:36:25 +01:00
Henri Verbeet a966293f59 wined3d: Add an IWineD3DDeviceParent interface.
Other than being a bit nicer than passing function pointers all over the
place, this helps dxgi/d3d10. While the swapchain itself is created in dxgi,
its surfaces are constructed in d3d10core, which makes it impractical for dxgi
to pass the appropriate function pointers.
2009-01-16 13:29:32 +01:00
Alexandre Julliard 0ffd26ab17 user32: Use the message_data_t union when receiving a message. 2009-01-15 12:50:59 +01:00
Henri Verbeet 9440dfedf4 wined3d: Remove AddDirtyRect() from the public interface. 2009-01-14 13:51:00 +01:00
Henri Verbeet fd90021666 wined3d: Remove AddDirtyBox() from the public interface.
This is an internal wined3d function.
2009-01-14 13:51:00 +01:00
Henri Verbeet 881780276b wined3d: Remove CleanDirtyBox().
It's never used.
2009-01-14 13:51:00 +01:00
Stefan Dösinger a69c86d3f5 ddrawex: Add a test for the permanent DC function. 2009-01-09 16:26:06 +01:00
Henri Verbeet 6791e6b752 wined3d: Simplify handling of swizzled attributes.
This should also be a little bit faster.
2009-01-08 13:21:43 +01:00
Henri Verbeet cc447eac55 wined3d: Move position_transformed out of u.s in struct WineDirect3DVertexStridedData. 2009-01-08 13:21:31 +01:00
Henri Verbeet a8697d90e4 wined3d: Renumber WINED3DTEXTURESTAGESTATETYPE enum elements.
Saves some space by not having unused entries is the arrays tracking these
states.
2009-01-06 12:45:43 +01:00
Henri Verbeet e8ba733706 wined3d: Remove unused enum elements from WINED3DTEXTURESTAGESTATETYPE. 2009-01-05 12:41:31 +01:00
Henri Verbeet d359a7813f d3d: Fix the value of D3DFVF_POSITION_MASK. 2009-01-03 14:55:31 +01:00
Alexandre Julliard 9f365e7705 server: Replace EXCEPTION_RECORD by an explicit definition in debug events. 2009-01-02 20:12:46 +01:00
Alexandre Julliard bc03f0ee39 server: Simplify the debug_event_t structure. 2009-01-02 20:09:25 +01:00
Alexandre Julliard 14da6fa834 Update copyright info for 2009. 2009-01-02 16:50:54 +01:00
Alexandre Julliard 8c8c665a3c server: Reorganize some requests to avoid padding, and make remaining padding explicit. 2008-12-31 15:14:29 +01:00
Alexandre Julliard 0c914e475d server: Make atom_t an unsigned int to avoid padding issues. 2008-12-31 15:09:59 +01:00
Alexandre Julliard fa8643805b server: Make TEB and PEB client_ptr_t instead of void pointers. 2008-12-31 15:09:59 +01:00
Alexandre Julliard c6c335d70e server: Make thread entry points client_ptr_t instead of void pointers. 2008-12-31 15:09:59 +01:00
Alexandre Julliard 2cf868c0be server: Move ldt_copy to the init_process_done request and make it a client_ptr_t. 2008-12-31 15:09:59 +01:00
Alexandre Julliard 6db201080f server: Make the various async I/O parameters client_ptr_t instead of void pointers. 2008-12-30 21:09:41 +01:00
Alexandre Julliard f507ccbf52 server: Specify the user APC to call only once the system APC has executed. 2008-12-30 20:51:55 +01:00
Alexandre Julliard 7ec95c5bee server: Explicitly specify when an ioctl call needs to be blocking. 2008-12-30 20:37:20 +01:00
Alexandre Julliard f69e62207b server: Make the arguments for CreateRemoteThread client_ptr_t instead of void pointers. 2008-12-30 15:30:11 +01:00
Alexandre Julliard c86ec6445c server: Make a couple of fields smaller in the apc_call_t/apc_result_t structures. 2008-12-30 15:22:45 +01:00
Alexandre Julliard 7560a89022 server: Make padding explicit in the wake_up_reply structure. 2008-12-30 15:15:06 +01:00