Commit graph

4 commits

Author SHA1 Message Date
Oleg Dubinskiy
8a6312abda
[WIN32SS][NTDDRAW] Improve DxEngGetDCState type 2 implementation (#4176)
- Use the REGION_Complexity() function to get the actual region complexity instead of just number of rectangles.
- Don't use prgnRao at all, because it is always uninitialized when passed to the function. So in condition between prgnRao and prgnVis, the 2nd one always succeeds.
- Update the comment accordingly.
- Additionally, add a DPRINT to the end of the function, which displays the returned value.

This allows to properly enable and use DirectDraw and Direct3D hardware acceleration with the following MS DirectX components: ddraw.dll, d3d8.dll, d3d9.dll and dxg.sys. As in VM, same on real hardware.
But note that now the bugcheck 0x50 (PAGE_FAULT_IN_NONPAGED_AREA) occurs when executing fullscreen DDraw apps, after switching display mode. It's unhidden by this fix.
Addendum to 855bf46.
CORE-17561
2021-12-20 21:27:13 +01:00
Oleg Dubinskiy
855bf46399
[WIN32SS][NTDDRAW] Get complexity of visible region in DxEngGetDCState (#2604)
CORE-7733

Get the complexity of visible region in the DxEngGetDCState() function, according to its remarks.
This implementation returns a number of rectangles that make up the region, similarly to as it done in REGION_Complexity() function:
https://git.reactos.org/?p=reactos.git;a=blob;f=win32ss/gdi/ntgdi/region.c;h=38bf3d377fa805e9db8768774c4fc473590252d0;hb=HEAD#l573 
It is required by MS ddraw.dll when calling win32k/dxg functions during launching DirectDraw test or any DirectX 1 - 7 apps/games.
2020-05-01 15:57:11 +02:00
Timo Kreuzer
2a5e2a2ab6 [REACTX] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Colin Finck
c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
Renamed from reactos/win32ss/reactx/ntddraw/dxeng.c (Browse further)