Jakob Eriksson
d4727291ca
SetDisplayMode can return DDERR_UNSUPPORTED. If it does, we shouldn't
...
try to restore something either.
2005-03-16 19:49:25 +00:00
Paul Vriens
fc1f63d279
Check always if destination surface is locked.
2005-03-10 11:13:11 +00:00
Paul Vriens
327049504b
Check for NULL before touching src.
2005-03-09 18:42:35 +00:00
Matthew Mastracci
9cf27b5f1a
Added surface locking.
2005-03-07 12:23:34 +00:00
Matthew Mastracci
2565f7311c
Add DDCAPS_OVERLAY and DDCAPS_OVERLAYSTRETCH to GetCaps().
2005-03-07 11:01:10 +00:00
Christian Costa
e64aae00e0
Handle more properly versions for Direct3D and Direct3DDevice
...
objects.
2005-02-14 11:09:46 +00:00
Raphael Junqueira
52bf5023fb
Set default video memory to 64Mb (was 16Mb) as many d3d9 demos use
...
d3d7 code to get available video memory size (ex ConfigSystem.exe on
d3d9 sdk).
2005-01-27 10:42:24 +00:00
Francois Gouget
87b0906789
Assorted spelling fixes.
2005-01-10 13:29:24 +00:00
Paul Vriens
202b340a51
- use Interlocked* functions in AddRef and Release.
...
- store the result of the Interlocked functions and use only this.
2005-01-09 17:29:21 +00:00
Eric Pouech
cf1d00bb08
Removed excessive statement (break after return or goto, not useful
...
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Mike McCormack
4a0f999859
Use CreateEventW in preference to CreateEventA for unnamed events.
2005-01-07 15:40:09 +00:00
Alexandre Julliard
75f87dd43f
Get rid of the ThunkData stubs, these are not functions.
2005-01-03 20:47:48 +00:00
Christian Costa
65a4775b30
Handle correctly DDSD_LINEARSIZE flag for FOURCC textures.
2005-01-03 14:41:08 +00:00
Christian Costa
171c9420c2
Fake line sweeping of the monitor.
2004-12-27 17:12:55 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00
Crestez Leonard
f4205ad71f
Check for malformed source rect in DIB_DirectDrawSurfact_BltFast, and
...
return DDERR_INVALID_RECT.
2004-12-21 14:47:35 +00:00
Christian Costa
3bb7f70f6b
Enable creation of the RGB device.
2004-12-20 17:08:41 +00:00
Alexandre Julliard
ebe3c529b1
Janitorial: C booleans must not be compared against TRUE.
2004-12-09 14:07:59 +00:00
Dmitry Timoshkov
627260f89e
Avoid crashes in ddraw.dll when loading it without x11drv, for
...
instance from wineprefixcreate in a text mode console.
2004-12-06 16:21:27 +00:00
Eric Pouech
0a258964c2
Const correctness fixes.
2004-11-30 21:38:57 +00:00
Tom Wickline
5c38e1b561
Version resources cleanup.
2004-11-23 13:59:34 +00:00
Christian Costa
0948ed709e
Fixed colorkey conversion.
...
Handle null surface pointer when creating surface.
2004-11-19 18:05:15 +00:00
Francois Gouget
3bb5b093e8
Assorted spelling fixes.
2004-10-22 22:27:51 +00:00
Francois Gouget
486d020c1b
Don't define COBJMACROS in objbase.h.
...
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Huw Davies
e8d89cd0f5
Fix a reference leak on failure (spotted by Rob Shearman).
...
Move some code over to the Interlocked* functions.
2004-09-28 19:19:27 +00:00
Alexandre Julliard
f5f7a1822c
Removed some more uses of the non-standard ICOM_THIS macro.
2004-09-08 01:50:37 +00:00
Hans Leidekker
fe442b21f7
Fix signed/unsigned comparison warnings.
2004-09-08 01:23:57 +00:00
James Hawkins
fae181b099
Added API documentation for DirectDrawEnumerateEx.
2004-08-30 18:37:17 +00:00
Robert Shearman
9e2e594a1c
Implement IDirectDrawClipper_GetClipList for case where we have a
...
handle to a window.
2004-08-24 20:14:26 +00:00
Alexandre Julliard
f714b39762
Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
...
macro.
2004-08-23 19:39:48 +00:00
Tobias Burnus
998a827370
- Limit number of FIXME()s in Clipper_SetClipList and document
...
function.
- Document Clipper_GetClipList.
2004-08-23 18:50:14 +00:00
Alexandre Julliard
48c4bb3c31
Get rid of the non-standard ICOM_VTABLE macro.
2004-08-12 23:00:51 +00:00
Christian Costa
479c13b84e
Implemented IDirect3DDevice{2,3}::GetLightState.
...
Fixed traces in execute buffers.
Updated copyright info.
2004-08-06 17:30:44 +00:00
Lionel Ulmer
fbf003dd39
- add S3TC support to BltFast (fixes NOLF)
...
- proper surface unlocking in case of error in the Blt case
2004-08-02 22:21:30 +00:00
Christian Costa
5e6487fe78
Improved IDirect3DViewportImpl_3_2_1_TransformVertices stub.
2004-08-02 18:27:32 +00:00
Christian Costa
0bbe91213d
Fixed D3DOP_STATELIGHT opcode.
...
Implemented _dump_D3DEXECUTEBUFFERDESC.
2004-08-02 18:26:53 +00:00
Christian Costa
9713f651fe
Moved libtxc_dxt definitions into ddraw headers.
2004-08-02 18:24:40 +00:00
Lionel Ulmer
5ffe177543
- Fix compilation on boxes without OpenGL installed.
...
- Print the warning message only once.
2004-08-02 18:24:04 +00:00
Christian Costa
eac96b5606
Added native and emulated S3TC support.
2004-07-30 18:54:32 +00:00
Lionel Ulmer
c9eb05e560
Better handle the frame-buffer locking case.
2004-07-12 19:47:48 +00:00
Marcus Meissner
42e1216cf5
COPY_COLORKEY_FX: Do not use lvalue casts.
2004-07-06 18:43:10 +00:00
Lionel Ulmer
112c426c47
Move the FPS computation from the D3D code to the common code.
2004-06-04 19:37:16 +00:00
Ivan Leo Murray-Smith
10778aa761
Updated the version info of all DirectX dlls to the version numbers of
...
DirectX 9.0b for Windows 2000/XP.
2004-05-14 21:37:32 +00:00
Lionel Ulmer
d069312de6
Add the possibility to save a snapshot of the backbuffer at
...
flip-time.
2004-04-12 22:07:33 +00:00
Alexandre Julliard
bb133bd596
Fixed a couple of header files ordering issues.
2004-04-07 03:59:41 +00:00
James Perry
7afb399802
Fix handling of D3DBLEND_BOTH* blend modes.
2004-03-27 01:36:26 +00:00
Alexandre Julliard
9e4ed6460c
.spec.c files are no longer used for 32-bit dlls.
2004-03-24 03:36:44 +00:00
Christian Costa
a501ea73ea
Do not return an error when setting a material to NULL.
...
Fixed access to d3d private data.
2004-03-23 23:02:37 +00:00
Christian Costa
bfeca3bff9
Enable creation of a zbuffer in system memory.
2004-03-22 22:57:30 +00:00
Christian Costa
7e51de6ea7
Improve D3D7 compatibility.
2004-03-20 02:33:17 +00:00
Elias Ross
56aca378c1
Added 24-bit color key support in DIB_DirectDrawSurface_BltFast.
2004-03-16 19:41:50 +00:00
Christian Costa
85cbe8213b
DD_STRUCT_COPY_BYSIZE: Do not clear more that struct size.
2004-03-16 01:13:29 +00:00
Dmitry Timoshkov
21fc3c8067
CreateDIBSection takes a const pointer to BITMAPINFO.
2004-03-12 19:46:12 +00:00
Alexandre Julliard
05df86a38f
Moved more GDI definitions to gdi_private.h.
...
Get rid of bitmap.h and palette.h.
2004-03-04 20:41:12 +00:00
Alexandre Julliard
589e115233
We no longer use the .exe.spec.c files.
2004-03-02 21:16:37 +00:00
Patrik Stridvall
ede82e3055
Fixed some issues found by winapi_check.
2004-02-20 20:19:23 +00:00
Sami Aario
d3383740d6
No need to link against the uuid library.
2004-02-16 22:18:59 +00:00
Sami Aario
225f142c8d
Added surface tests.
2004-02-16 20:23:58 +00:00
Dmitry Timoshkov
cc535b7cce
There is no point in specifying both MEM_RESERVE and MEM_COMMIT for
...
VirtualAlloc.
2004-02-11 23:57:36 +00:00
Lionel Ulmer
2b8281a827
Fix palette deletion issue seen in DungeonKeeper.
2004-01-30 22:58:03 +00:00
Lionel Ulmer
2ae876fadf
Fix the Z transform in the XYRZHW case.
2004-01-30 22:57:43 +00:00
Alexandre Julliard
20b4585e3c
Only link against libdxguid where necessary.
2004-01-27 00:11:16 +00:00
Francois Gouget
6b6ed724ae
Add missing '\n's to debug traces.
2004-01-27 00:01:43 +00:00
Francois Gouget
998cc56773
Add trailing '\n's to ok() calls.
2004-01-20 21:49:35 +00:00
Lionel Ulmer
266223ddf1
Also remove in the D3D code the pedantic check on the GetProcAddress
...
extension.
2003-12-30 19:13:32 +00:00
Lionel Ulmer
88b928fd0d
Limit usage of vertex arrays to correct states.
2003-12-08 21:53:40 +00:00
Lionel Ulmer
1eaee42399
Use vertex arrays when possible.
2003-11-25 00:06:33 +00:00
Lionel Ulmer
63d9cfcf11
Fix some other multi-texturing problems.
2003-11-18 23:20:25 +00:00
Sami Aario
f22a4720b5
Added some conformance tests for ddraw. These enumerate some display
...
modes and then attempt to open them.
2003-11-18 00:12:00 +00:00
Lionel Ulmer
a122673ebf
Fix graphical corruption on surface lock when multi-texturing is
...
active.
2003-11-17 20:02:33 +00:00
Lionel Ulmer
a39afdd633
Fix parsing of GL version string in X.Y cases.
2003-11-11 20:38:20 +00:00
Lionel Ulmer
b6ddd8cadb
Better color-keying support.
2003-11-11 00:31:16 +00:00
Lionel Ulmer
4a078c8376
Fix some stupid bug with missing braces.
2003-11-09 01:21:25 +00:00
Christian Costa
4bf5d02c23
Add support for all Z buffer depths that are lower that the current
...
one.
2003-10-16 19:08:33 +00:00
Christian Costa
a03c939a66
Add necessary AddRef/Release stuff to {Set/Get}CurrentViewport.
...
When changing parameters of a viewport, do the appropriate update if
it is current.
2003-10-14 01:16:42 +00:00
Dimitrie O. Paun
fbdfd910c1
Remove SYMBOLFILE and LDDLLFLAGS from Makefiles.
2003-10-11 01:09:15 +00:00
Daniel Marmier
0348649853
Fixed warnings with gcc option "-Wwrite-strings".
2003-10-06 21:03:32 +00:00
Alex Pasadyn
bd554e63fc
- Add more logging to resolution changes and queries.
...
- Always enumerate and allow 8, 16, and 32-bit modes.
- Add more default choices to Wine desktop sizes.
- Renamed some variables to make things easier to follow.
2003-09-30 00:31:42 +00:00
Christian Costa
0accacecb2
Small lighting fix.
2003-09-30 00:29:11 +00:00
Dimitrie O. Paun
976483e2a9
Merge documentation/status/directdraw into the ddraw code.
2003-09-27 02:22:56 +00:00
Alex Pasadyn
6c9f813cce
Enable resolution changes for older D3D/DDraw applications.
2003-09-16 20:25:02 +00:00
Lionel Ulmer
8c1c276b5b
- add ZBuffer write support
...
- some TRACEing fixes
2003-09-15 20:00:03 +00:00
Lionel Ulmer
6288266a61
Use ddraw_geom in the execute buffer code.
2003-09-15 19:59:19 +00:00
Alexandre Julliard
cf52644a1c
Removed the A/W constants for builtin cursors, icons and resource
...
types since they don't exist on Windows, and added typecasts
everywhere instead.
2003-09-10 03:56:47 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard
864ca06832
winnls.h must not include winbase.h.
2003-08-20 18:22:31 +00:00
Lionel Ulmer
4d8d0f03ca
Added support for multi-texturing.
2003-08-18 19:55:11 +00:00
Lionel Ulmer
50fbe7330e
Support the mimap lod bias extension.
2003-08-05 19:18:19 +00:00
Lionel Ulmer
1d45ab4aab
Proper MIRROR texture address support.
2003-08-05 18:28:07 +00:00
Lionel Ulmer
4bc97ce8b4
Report some news caps that were added in DX6.
2003-08-02 00:41:03 +00:00
Alexandre Julliard
20698b22df
Make the DllRegisterServer, DllRegisterServerEx, DllUnregisterServer,
...
DllGetClassObject and DllCanUnloadNow functions private (suggested by
Jon Griffiths).
2003-07-30 03:48:55 +00:00
Lionel Ulmer
1b2f56e62e
Fixed the TEXCOORDINDEX code.
2003-07-30 03:40:39 +00:00
Lionel Ulmer
8297fec7d2
Added ddraw_tex to add texture snooping without needing to recompile.
2003-07-30 03:39:58 +00:00
Lionel Ulmer
d1291ba19a
Better caps support (ie more in line with what GL reports).
2003-07-28 19:05:49 +00:00
Lionel Ulmer
3057315863
- added a ddraw_fps debug channel
...
- checked what Windows does on empty surface description
- fix the GetTextureStageStage call
2003-07-26 20:33:23 +00:00
John K. Hohm
97ae1d2139
Implement DllRegisterServer and DllUnregisterServer for ddraw.dll, and
...
add OleSelfRegister version string.
2003-07-19 03:10:06 +00:00
Lionel Ulmer
08cc0d1c73
- do not forget to set the 'initial_upload_done' flag (to have better
...
performance)
- better handling of the 'initial' flag for frame-buffer flushes
2003-07-16 23:28:37 +00:00
Francois Gouget
3ca761220a
Spelling fixes (s/occured/occurred/ and variants).
2003-07-15 20:53:39 +00:00
Lionel Ulmer
2f34e74ede
Some broken games do not put the TEXTURE flags in the surface caps.
2003-07-15 20:45:01 +00:00
Lionel Ulmer
ad912cf257
- added fast-path for color-keyed Blts
...
- fix 565 colour-keying conversion
- properly handles Pitch in colour conversion
- easier and less buggy UNPACK_WIDTH support
2003-07-11 03:50:43 +00:00
Lionel Ulmer
51df9314d8
- fix FPS computation
...
- some TRACEing fixes
- optimize BltFast locking rectangles
2003-07-08 21:10:01 +00:00
Dmitry Timoshkov
4e1ef0c114
For all DLLs with defined DllMain and which do not require
...
DLL_THREAD_ATTACH/DLL_THREAD_DETACH notifications, call
DisableThreadLibraryCalls() in order to slightly improve performance
on thread creation/exiting.
2003-06-30 20:53:48 +00:00
Lionel Ulmer
3dfdfbfa6f
- some TRACEing fixes
...
- faster Blt to the framebuffer using texture engine
2003-06-23 03:34:34 +00:00
Francois Gouget
9591836ffb
'sizeof type' is best avoided as it won't always compile (e.g. 'int
...
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Lionel Ulmer
e10a0fd375
- rewrote the buffer to buffer fast path using Texture engine (much
...
faster on my NVIDIA hardware)
- small optimizations
2003-06-16 20:22:46 +00:00
Lionel Ulmer
c203d68e98
- fix some regressions
...
- GetDC does not lock in ReadOnly mode as it leads to problems with
some D3D optimizations
- added a fast Back => Front / Front => Back Blt fast path
2003-06-16 19:41:34 +00:00
Lionel Ulmer
815118a092
- GL state change optimizations
...
- some more preparations for GL-accelerated Blts
- added debug code to compute FPS (nice when adding optimizations)
2003-06-16 01:23:58 +00:00
Lionel Ulmer
26f51af674
- fixes the COLORFILL case for front-buffer
...
- some preparations for GL-accelerated Blts
- some small optimizations in the Clear code
2003-06-13 23:17:59 +00:00
Christian Costa
0153a911e4
Fix matrix multiplication.
2003-06-13 18:54:37 +00:00
Lionel Ulmer
8944b25ead
Be more stringent in the 'Lock' invalid RECT check.
2003-06-13 16:31:41 +00:00
Lionel Ulmer
f0339d222d
Fix the BLT COLOR_FILL case.
2003-06-13 16:29:18 +00:00
Lionel Ulmer
068fa5d471
- fix the texture upload code when RECT is actually used
...
- optimize FB Locks / Unlocks when RECTs are used
2003-06-04 23:43:29 +00:00
Lionel Ulmer
e14233ae03
- Viewport hack to get some old D3D1 games to work
...
- TRACEing fix
2003-06-04 23:39:13 +00:00
Lionel Ulmer
3f61d28661
- small TRACEing fix
...
- fix bug in texture upload (I wonder how I missed this :-/ )
- improve the D3D1/2 texture mapping modes
2003-06-04 23:38:22 +00:00
Lionel Ulmer
ed88304868
- fix (stupid) regressions introduced by last series of patch
...
- 24 bpp handling for lock / unlock code
- some better checks for AlphaPixel value
- better TRACEing to better catch threading problems
2003-06-04 23:36:48 +00:00
Lionel Ulmer
fc58c2a933
- some GL critical section fixes
...
- only bind textures at start of rendering
- optimized the texture parameter code
- optimize of the 'dirty checking code' for mipmapping
- handles the MAXMIPLEVEL texture parameter
2003-06-04 23:34:58 +00:00
Lionel Ulmer
4aba282bb8
- proper (tested on Win2K) reference counting for Direct3D object
...
- fix one case of reference counting on textures
- fix stupid bug in texture upload code
- yet another texture enumeration reordering
2003-06-04 23:31:39 +00:00
Lionel Ulmer
f683839c13
Fixed a bug in the FrameBuffer => Texture blits.
2003-06-04 23:27:28 +00:00
Lionel Ulmer
97140ba2d1
- added RECT support to the texture upload code
...
- use the common code for the FB Unlock code
2003-06-04 23:26:53 +00:00
Lionel Ulmer
3383ce5d51
- some clean-ups (extension code to be added soon)
...
- some interface changes for future reuse for Blt / Lock code
- fixed some Pitch problems in texture uploads (mostly for 'small'
mip-mapping levels)
2003-06-04 23:24:59 +00:00
Lionel Ulmer
094f6bc985
Refactoring of the texture upload code.
2003-06-04 23:22:13 +00:00
Lionel Ulmer
934d97b56b
Fix texture parameters handling on texture change.
2003-06-04 23:19:14 +00:00
Lionel Ulmer
8352f1f48a
- remove some extraneous saving of the read buffer settings
...
- cleaned-up the GL / device critical section handling
2003-06-04 23:18:24 +00:00
Lionel Ulmer
241d306221
- protect viewport setting with GL lock
...
- no need anymore to flush to FB on execute buffer calling
2003-06-04 23:17:23 +00:00
Lionel Ulmer
f87c54f14f
Some threading fixes (prevents some dead-locks).
2003-06-04 23:16:28 +00:00
Lionel Ulmer
21856fbd1c
- implement FB => Texture blits
...
- fix compilation on non-recent glext.h systems
2003-06-04 23:10:38 +00:00
Lionel Ulmer
c312ff950b
- do not search for attached surfaces if the texture doesn't have the
...
MIPMAP flag set
- add GL crit. section support for matrix setting
- support the various BLEND texture operations
2003-06-04 21:53:43 +00:00
Yorick Hardy
a856019687
Added the D3DTBLEND_DECAL render state.
2003-06-04 21:52:46 +00:00
Alexandre Julliard
24d0a8394f
Authors: Mike McCormack <mike@codeweavers.com>, Lionel Ulmer <lionel.ulmer@free.fr>
...
Make DDraw not linked 'statically' to OpenGL.
2003-06-04 20:13:21 +00:00
Lionel Ulmer
a4d733ae5a
- remove fogging too when doing the flush of the frame buffer
...
- handle dest rect in the Blt DEPTH_FILL case
- fix QueryInterface on the D3D Device
2003-05-22 03:38:22 +00:00
Christian Costa
1392c77d7e
Remove all openGL calls in execute buffers and use the Direct3D7 APIs.
...
Enable retrieving the render target surface of a device through its
QueryInterface method.
Avoid lights updating when a viewport and a device have not been
associated to them.
Clear the Z buffer only when we're asked to by Checking D3DBTL_FILL
flag.
2003-05-20 17:49:40 +00:00
Lionel Ulmer
97f216c93c
- some tracing fixes
...
- flush the right buffer to the screen
2003-05-20 04:27:04 +00:00
Lionel Ulmer
c577c27e2b
No need to flush the surface back if last lock was a RO lock.
2003-05-20 04:21:46 +00:00
Lionel Ulmer
8daf96c203
- fix bug in 'Blt DEPTH_FILL' override
...
- added a lock around the flushing of a surface to the frame buffer
- optimize texture loading my minimizing the cases where a conversion
needs to occur and also by reusing the allocated memory
2003-05-20 04:10:22 +00:00
Lionel Ulmer
7b245fa7de
Have Lights and Clipplanes transformed properly.
2003-05-20 03:58:01 +00:00
Lionel Ulmer
11b1b94a67
- implement the TFACTOR texture stage state
...
- support Texture matrices
- various misc. clean-ups
2003-05-20 02:15:24 +00:00
Lionel Ulmer
86f69135c4
Added support for non-full screen viewports and clearing.
2003-05-19 23:03:38 +00:00
Lionel Ulmer
5d62e55d3d
Better handling of pitch set to 0.
2003-05-19 21:38:58 +00:00
Lionel Ulmer
2d27504fc1
Added RGB 32 surface locking (seems to work fine without resorting to
...
Alpha hacks).
2003-05-19 21:37:50 +00:00
Lionel Ulmer
783b3236f5
Support for device surface locking.
2003-05-17 18:41:26 +00:00
Lionel Ulmer
166750299e
Silence some TRACEs to better spot real errors.
2003-05-17 18:30:27 +00:00
Francois Gouget
f803e2a92d
Fix miscellaneous spelling errors and typos.
2003-05-13 00:41:57 +00:00
Lionel Ulmer
a872c781ea
- separate geometry tracing in a new debug channel (ddraw_geom)
...
- added handling for some new texturing ops
- prepare for addition of multi-texturing
- another way to fix the device enumeration for the reference device
- fix compilation with some glext.h files
- fix a bug in one texture conversion function
- added new texture format (but still texturing problems in 3DMark2000)
2003-05-12 03:09:17 +00:00
Lionel Ulmer
7ebdcb3538
Initialize the dwMipmapCount field even if the application forgets it.
2003-05-11 03:46:53 +00:00
Lionel Ulmer
449f6b212f
- added mipmapping support
...
- added locking for concurrent access to the D3D device
- improved tracing
- added support for most texture combine stages (inspired by the D3D8
code)
- disable current lock / unlock code pending proper solution
2003-05-11 03:44:53 +00:00
Christian Costa
0955adfc2e
Enable branch forward operation in execute buffer.
2003-05-11 03:28:53 +00:00
Christian Costa
4ea9589981
Put the device name string on the stack during devices enumeration.
...
Disable reference enumeration.
2003-05-11 03:28:33 +00:00
Lionel Ulmer
9914a8ec5d
- only enumerate 32 bpp ARGB texture format and remove RGBA one
...
- add support for 32 bpp ARGB texture format
2003-05-08 21:03:57 +00:00
Lionel Ulmer
1279d9a0f4
Actually set the GL context before doing any GL calls.
2003-05-04 02:24:03 +00:00
Alexandre Julliard
69361e08b9
Moved x11drv.h to dlls/x11drv.
2003-04-22 04:05:08 +00:00