1
0
mirror of https://github.com/narzoul/DDrawCompat synced 2024-12-30 08:55:36 +01:00

253 Commits

Author SHA1 Message Date
narzoul
6f14ddf9ae Fixed menu bar highlighting when window is not in top-left corner of desktop 2019-12-31 11:43:46 +01:00
narzoul
743d19bf25 Fixed popup menu scrolling 2019-12-14 15:54:50 +01:00
narzoul
e8491e65c2 Disable immersive context menus (updated for Win10 v1809) 2019-12-14 15:20:28 +01:00
narzoul
cb7a46cd5e Log module path and offset for function hooks 2019-12-09 13:12:53 +01:00
narzoul
6aaf12b0a4 Added critical section to all user-mode display driver functions
Fixes crashes and frozen screen issues in Laghaim Online (issue #58)
2019-11-02 22:55:55 +01:00
narzoul
a49a19c448 Fixed compilation error after Visual Studio update 2019-11-02 11:20:52 +01:00
narzoul
2a129c41c9 Removed dependency on context handle for driver hooks
Potential fix for issue #55.
2019-09-02 22:29:39 +02:00
narzoul
81c2748027 Improved hooking of user32 window procedures 2019-09-01 15:45:36 +02:00
narzoul
c7b94700d3 Use IAT hooks for D3DKMT* functions
Potential fix for issue #55.
2019-08-28 21:04:28 +02:00
narzoul
d1cd6658c9 Fixed deadlock in VirtualScreen::createSurface 2019-08-28 00:09:15 +02:00
narzoul
66e0d20897 Fixed GDI updates interrupted by presentation sync 2019-08-25 22:05:29 +02:00
narzoul
77bdff3f1c Added bounds checking to blits and color fills 2019-08-24 21:23:27 +02:00
narzoul
b8456cc1d4 Fixed deadlock in ScrollWindow(Ex) 2019-08-24 15:50:29 +02:00
narzoul
898c7e819c Added timeout for sysmem preference of blits
Improves performance in Dungeon Keeper 2.
2019-08-22 21:13:50 +02:00
narzoul
a45e5768ae Restrict lock surfaces to off-screen plain and render target surfaces 2019-08-22 15:24:07 +02:00
narzoul
590b6f1ad0 Use HeapAlloc for lock surface memory allocations 2019-08-21 14:51:48 +02:00
narzoul
55e08f62d4 Avoid initial lock surface copy for unmodified surfaces 2019-08-19 22:42:48 +02:00
narzoul
d0289de9a2 Fixed a crash when DPI scaling is set higher than 100% 2019-08-19 14:29:10 +02:00
narzoul
32a67548ae Changed surface alignment to work around performance issues on some drivers 2019-08-19 14:29:05 +02:00
narzoul
8cc73dc68d Moved lock surface handling to UMD level 2019-08-11 23:55:52 +02:00
narzoul
9b24a9b306 Removed the GetDDInterface override
Fixes a crash in UEFA Challenge (issue #50).
2019-08-11 12:48:02 +02:00
narzoul
bb6092e0bd Partial workaround for black D3DTA_DIFFUSE color on some drivers when RHW=0
Fixes black screen issues under some circumstances (e.g. underwater) in
Might and Magic 9 (issue #48).
2019-08-10 14:23:52 +02:00
narzoul
7068d282ff Improved palette handling
Fixes windowed-mode palette issues in SimCopter (issue #46)
2019-08-03 12:09:19 +02:00
narzoul
b747448330 Readded buffer overflow fix for Diablo 1
See issue #3.
2019-08-03 12:09:19 +02:00
narzoul
f9f4b6fb00 Fixed bitmap orientation for Create*Bitmap functions
Fixes upside-down save game screenshots in Siege of Avalon (issue #42)
2019-08-03 12:09:18 +02:00
narzoul
b6f6f2acf0 Limit maximum video memory
Fixes blurry textures in Rayman 2 and crash in Settlers 4
2019-08-03 12:09:17 +02:00
narzoul
e83371afed Moved GDI synchronization to UMD level
Fixes deadlock when starting Rayman 2 (issue #30).
2019-08-03 12:09:12 +02:00
narzoul
7b6b7c911c Resync source surface from system memory during presentation blit
Fixes issues with writing to unlocked primary surfaces (e.g. Nox).
2019-08-01 16:00:22 +02:00
narzoul
d23904afd2 Prefer color fills in system memory 2019-08-01 16:00:22 +02:00
narzoul
c526cc2506 Prefer locks and blits in system memory 2019-08-01 16:00:21 +02:00
narzoul
545b08c55b Minor logging improvements 2019-08-01 16:00:20 +02:00
narzoul
063cefb46e Simplified Surface implementation 2019-08-01 16:00:19 +02:00
narzoul
b0c5736bbf Updated project to VS2019 and SDK/WDK 10.0.17763.0 2019-08-01 16:00:18 +02:00
narzoul
07de716af9 Reworked oversized surface support 2019-08-01 16:00:18 +02:00
narzoul
3e0eada40d Refactored adapter and device references 2019-08-01 16:00:17 +02:00
narzoul
d817c4bfb3 Simplified 8/16 bit display mode emulation 2019-08-01 16:00:16 +02:00
narzoul
26f8742dc2 Reverted forcing surfaces to system memory 2019-08-01 16:00:10 +02:00
narzoul
5b171691f0 Separate DirectDraw and UMD critical sections 2019-06-08 15:59:17 +02:00
narzoul
180811bda1 Handle forwarded exports in getProcAddress 2019-06-08 15:58:07 +02:00
narzoul
0f88271668 Fixed compatibility issue with Windows 10 v1903
See issue #43
2019-06-07 21:19:22 +02:00
narzoul
8e8eeb083a Fixed deadlock when hooking NVIDIA user-mode display drivers
See issue #28
2019-01-02 18:52:06 +01:00
narzoul
14104894b2 Generate full debug info for all build types 2019-01-02 18:17:30 +01:00
narzoul
3de50d98ad Fixed wrong palette returned by GetSystemPaletteEntries 2019-01-02 18:17:19 +01:00
narzoul
7fe68a6e1e Reverting commit 6a225516 due to possible BSOD on AMD drivers 2018-12-31 20:32:09 +01:00
narzoul
587af2c855 Fixed incorrect DC used for opening GDI adapter 2018-12-31 20:32:09 +01:00
narzoul
d655947f18 Fixed crash when rehooking a user-mode display driver 2018-12-31 20:32:08 +01:00
narzoul
c1b35e0434 Workaround for VirtualizeDesktopPainting shim 2018-12-31 20:32:08 +01:00
narzoul
403037c0da Workaround for ForceSimpleWindow shim 2018-12-31 20:32:07 +01:00
narzoul
ec61179b84 Track layered window transparency and position changes 2018-12-31 20:32:07 +01:00
narzoul
291a9c2f9a Fixed various multi-monitor display issues 2018-12-31 20:32:06 +01:00