Commit graph

548 commits

Author SHA1 Message Date
FunkyFr3sh
5db961656a rename upscale hack related stuff 2021-05-15 02:58:07 +02:00
FunkyFr3sh
c467b90e88 #92 allow shader upscale with vhack=true 2021-05-15 02:36:05 +02:00
FunkyFr3sh
39c62d6e7d support upscale hack for KKND Xtreme high resolution patch (vhack=true) 2021-05-15 00:41:50 +02:00
FunkyFr3sh
369d3c2b65 move dinput hooks into hook.c 2021-05-14 01:24:46 +02:00
FunkyFr3sh
1afa15bdba override first and last color in palette if DDPCAPS_ALLOW256 isn't set 2021-05-13 20:02:35 +02:00
FunkyFr3sh
3bc8fffe81 improve dinput hooks with hook=3 2021-05-11 21:45:38 +02:00
FunkyFr3sh
3e9c38dade fix some warning messages 2021-05-10 04:00:45 +02:00
FunkyFr3sh
6efc112c39 make old windows xp workaround optional 2021-05-08 23:42:29 +02:00
FunkyFr3sh
ae4446becb create backbuffer for flip games 2021-05-04 22:49:22 +02:00
FunkyFr3sh
7f9a6b5925 #81 use different workaround for D2 alt-key-stuck bug 2021-03-20 06:15:53 +01:00
FunkyFr3sh
2561147a4a fix wndproc hook 2021-03-03 20:30:31 +01:00
FunkyFr3sh
8f8fd74e3b adjust version numbers on shaders for core profiles 2021-02-22 12:10:21 +01:00
FunkyFr3sh
a6af34fbff optional wait_for_vblank on flip 2021-02-22 09:09:21 +01:00
FunkyFr3sh
65443fa4e4 new .ini option "maxgameticks=-2" 2021-02-19 03:24:11 +01:00
FunkyFr3sh
2fd2de207a typedef functions 2021-02-18 10:04:05 +01:00
FunkyFr3sh
e34cd3b5e2 re-enable maximize button 2021-02-18 07:10:15 +01:00
FunkyFr3sh
2d1b967630 add debug logging for window messages 2021-02-18 05:00:35 +01:00
FunkyFr3sh
76891cb766 use LoadLibrary 2021-02-03 20:50:14 +01:00
FunkyFr3sh
d8530d8cf6 fix typo 2021-02-02 21:33:39 +01:00
FunkyFr3sh
a6f85fbd73 improve fps limiter for vsync and maxfps=-1 2021-02-02 18:15:25 +01:00
FunkyFr3sh
76dd7ae674 create MiniDump on crash in Debug builds 2021-01-28 07:38:03 +01:00
FunkyFr3sh
a6a95ec936 add dummy IDirectDrawGammaControl 2021-01-09 19:51:26 +01:00
FunkyFr3sh
ddc631708d use WM_APP instead of WM_USER 2021-01-08 20:56:42 +01:00
FunkyFr3sh
05d665dea9 #52 fixes macOS OpenGL core profile 2020-10-23 17:56:24 +02:00
FunkyFr3sh
7d4075e314 #52 Possible fix for getting shaders to work on macOS 2020-10-23 03:17:03 +02:00
FunkyFr3sh
8c965c56c0 add dummy IAMMediaStream and IMediaStream interfaces 2020-10-22 21:30:37 +02:00
FunkyFr3sh
e106ce3055 add dummy Direct3D 2/3/7 interfaces 2020-10-22 18:58:56 +02:00
FunkyFr3sh
d85b6e3243 add hidden option for linear filtering on direct3d 9 (16bpp games only) 2020-10-21 17:14:40 +02:00
FunkyFr3sh
8e54756b4a add a new .ini setting for child window handling (currently only used for tm2) 2020-10-21 16:02:00 +02:00
FunkyFr3sh
8549494af2 #51 support GetDisplayMode 2020-10-20 16:38:51 +02:00
FunkyFr3sh
de02f46413 more hook 3/4 performance improvements 2020-10-20 05:59:41 +02:00
FunkyFr3sh
9c555c8e05 tweaks for last commit 2020-10-19 16:40:55 +02:00
FunkyFr3sh
b690cb5c24 improve hook 3/4 performance 2020-10-19 16:37:12 +02:00
FunkyFr3sh
7d0e3e8da5 replace "forcefps=" with "minfps=" 2020-10-18 02:40:45 +02:00
FunkyFr3sh
583d927da6 add a few more missing functions for logging 2020-10-16 01:03:01 +02:00
FunkyFr3sh
6e54817718 add a hack for Dungeon Keeper 2 util there's a better solution 2020-10-15 07:43:03 +02:00
FunkyFr3sh
1ebacfcd27 comment on ddraw passthrough 2020-10-15 07:22:48 +02:00
FunkyFr3sh
ae4b72c9c9 export DirectDrawCreateEx 2020-10-15 05:13:37 +02:00
FunkyFr3sh
b496169243 add dummy IDirect3D interface 2020-10-14 00:42:42 +02:00
FunkyFr3sh
b10ece0687 support GetMonitorFrequency 2020-10-13 22:55:49 +02:00
FunkyFr3sh
be79bb8c8b align and tweak some more 2020-10-13 11:29:52 +02:00
FunkyFr3sh
b417da74f6 align 2020-10-13 10:53:30 +02:00
FunkyFr3sh
25e561d953 add DebugLog build config 2020-10-13 10:15:42 +02:00
FunkyFr3sh
baaa87b18f refactoring 2020-10-13 09:20:52 +02:00
FunkyFr3sh
37af4e6ee4 add 2 new .ini settings "nonexclusive" and "resizable" 2020-10-06 20:43:40 +02:00
FunkyFr3sh
2c629cbe55 some Twisted Metal experiments 2020-10-06 02:33:41 +02:00
FunkyFr3sh
27323efa4b Fix for twisted metal 2 2020-09-27 13:38:41 +02:00
FunkyFr3sh
5231054096 #29 Fix Sierra City Building series scrolling bugs 2020-09-25 08:07:41 +02:00
FunkyFr3sh
3aed2239ab #29 Sierra's City Building series support (Caesar III, Pharaoh and Zeus) 2020-09-24 10:29:18 +02:00
FunkyFr3sh
ad16993376 Add Twisted Metal 2 section to ddraw.ini 2020-09-23 04:37:28 +02:00
FunkyFr3sh
62d1451885 IAT Hooking for all game modules (Without Detours) 2020-09-22 07:08:14 +02:00
FunkyFr3sh
28b4965611 #41 IAT Hooking for all game modules 2020-09-19 11:23:06 +02:00
FunkyFr3sh
4e6ecfe37c #39 hook GetDeviceCaps - fixes graphcial glitches for Megaman X4 2020-09-17 05:49:36 +02:00
FunkyFr3sh
2d94d42e91 #5 add forcefps bool 2020-01-23 08:58:22 +01:00
FunkyFr3sh
da09069d7b adjust fps limiter for gdi renderer 2020-01-22 11:35:04 +01:00
FunkyFr3sh
cee27902b1 support GetAvailableVidMem 2019-08-30 05:37:29 +02:00
FunkyFr3sh
1198cb0e93 always run bnet in windowed mode 2019-08-19 17:02:36 +02:00
FunkyFr3sh
8f28bfad9c resize window on bnet 2019-08-14 17:53:36 +02:00
FunkyFr3sh
43224a0f65 add resizeable bool 2019-08-13 15:46:05 +02:00
FunkyFr3sh
42541debda don't toggle fullscreen instantly when leaving bnet 2019-08-08 12:40:20 +02:00
FunkyFr3sh
7b70ec2297 temp changes 2019-08-08 07:13:53 +02:00
FunkyFr3sh
f400504dd8 clean up bnet related code 2019-08-08 03:19:15 +02:00
FunkyFr3sh
122dca8216 sync with master 2019-08-07 13:05:05 +02:00
FunkyFr3sh
0a779ac4fe sync with master 2019-08-07 12:45:40 +02:00
FunkyFr3sh
9a9e9feead automatically switch between windowed/fullscreen with d3d9 renderer 2019-08-07 04:40:43 +02:00
FunkyFr3sh
18f2e16bb0 make bnet moveable 2019-08-06 04:37:06 +02:00
FunkyFr3sh
11c103f36c some more hook.c tweaks 2019-03-19 09:45:14 +01:00
FunkyFr3sh
d42284c4bf optional hotpatch support 2019-03-19 06:57:49 +01:00
FunkyFr3sh
0f58746515 experimental tweaks for diablo and warcraft 2 2019-03-17 00:16:09 +01:00
FunkyFr3sh
45c2206946 adjust gdi renderer for accurateTimers 2018-11-30 05:18:44 +01:00
FunkyFr3sh
97ca023f09 use waitable timer also for fps limiter 2018-11-29 21:26:43 +01:00
FunkyFr3sh
435854456b use waitable timers for better precision (limit game ticks / flip wait) 2018-11-29 17:45:10 +01:00
FunkyFr3sh
14304ff330 only limit game ticks via unlock if there was never any blt or flip 2018-11-28 13:40:29 +01:00
FunkyFr3sh
8e75c40cc3 revert LimitGameTicks changes since it's causing flickering in unpatched versions of cnc1 and ra1 2018-11-28 13:28:07 +01:00
FunkyFr3sh
5d2d258d52 save last flip tick to force redraw in case the game switches between blt and flip 2018-11-19 08:36:18 +01:00
FunkyFr3sh
6f520b4843 add checks for media stream 2018-11-18 13:11:05 +01:00
FunkyFr3sh
e4437a278f Linear scaling using integer math (copied from ts-ddraw) 2018-11-17 05:54:22 +01:00
FunkyFr3sh
55328cb497 rename hidemouse to handlemouse since it got a lot more functionality now 2018-11-16 08:58:39 +01:00
FunkyFr3sh
ec435d21d3 make cursor visible on unlock for tiberian sun 2018-11-16 08:43:28 +01:00
FunkyFr3sh
d45fabe5cd add workaround for TS/YR stretching - don't stretch the menus 2018-11-16 06:37:11 +01:00
FunkyFr3sh
4d867fcaef add floats for scaling 2018-11-16 02:59:42 +01:00
FunkyFr3sh
5e4de793d4 fix tiberian sun menus 2018-11-15 09:45:24 +01:00
FunkyFr3sh
b04dc01104 make opengl compatible with older versions than 2.0 (for 16bit games only) 2018-11-15 06:16:09 +01:00
FunkyFr3sh
806746d364 experimental 16bit color support (Dune 2000) 2018-11-14 05:35:59 +01:00
FunkyFr3sh
45ceb74df2 use lodepng for screenshots 2018-11-12 06:31:02 +01:00
FunkyFr3sh
9811f310bc use fancy macros 2018-11-12 00:39:47 +01:00
FunkyFr3sh
bdb5675459 make maxgameticks working via surface unlock for atomic bomberman 2018-11-09 20:39:45 +01:00
FunkyFr3sh
72a86a9f78 make alt+enter working with a resized window 2018-11-04 19:35:38 +01:00
FunkyFr3sh
8ba6185965 fix for carmageddon 2 2018-11-02 02:21:16 +01:00
FunkyFr3sh
7b55df3ed7 remove screenshot hotkey 2018-11-01 20:14:33 +01:00
FunkyFr3sh
d56240e178 make windowed+stretching working for a lot of non-cnc games 2018-11-01 20:09:42 +01:00
FunkyFr3sh
0e6d415f63 remove sleep hack and add a smarter game speed limiter that takes the games performance into account 2018-10-31 11:48:41 +01:00
FunkyFr3sh
737a26bfb3 add Dungeon Keeper preset + required hack 2018-10-30 21:48:01 +01:00
FunkyFr3sh
5bcf6b2a97 resizable window 2018-10-27 16:44:09 +02:00
FunkyFr3sh
2d1ab88f85 partial support for DDBLTFAST_SRCCOLORKEY 2018-10-26 08:33:09 +02:00
FunkyFr3sh
cbc66c3bc2 implement EnumDisplayModes and BltFast - Fixes DDBLT_COLORFILL with NULL rect - support resolution changes during runtime (AoE2) 2018-10-26 05:27:10 +02:00
FunkyFr3sh
3fa02ac34d support for loading/saving settings for multiple games via a single settings file 2018-10-25 07:03:01 +02:00
FunkyFr3sh
4814054df5 remove duplicate code 2018-10-24 06:27:42 +02:00
FunkyFr3sh
35ac845688 use run-time dynamic linking for opengl32.dll to prevent random bugs where the game fails to start 2018-10-24 04:21:22 +02:00
FunkyFr3sh
21500ca591 make sure d3ddev is not null 2018-10-15 03:31:57 +02:00
FunkyFr3sh
59f0f4d9b2 add a header file for d3d9 renderer 2018-10-15 00:57:05 +02:00
FunkyFr3sh
28c9886dbe fix d3d9 multi threading 2018-10-15 00:01:31 +02:00
FunkyFr3sh
42d13edb92 fix d3d9 automatic cursor lock on alt+tab 2018-10-09 09:16:00 +02:00
FunkyFr3sh
bbe8fa11d8 release d3d9 on alt+enter 2018-10-07 16:49:35 +02:00
FunkyFr3sh
12655fa5a3 stop drawing and release d3d9 on alt+tab 2018-10-07 13:42:32 +02:00
FunkyFr3sh
36c14bd857 separate d3d9 and opengl shaders into 2 headers 2018-10-06 12:24:43 +02:00
FunkyFr3sh
a741fa9dca fix palette bug 2018-10-06 05:02:53 +02:00
FunkyFr3sh
519f499d23 improve d3d9 auto renderer check 2018-10-04 06:27:03 +02:00
FunkyFr3sh
9cbd2de62f force at least 5 FPS to avoid problems in the menus 2018-10-03 12:12:11 +02:00
FunkyFr3sh
c0a26ce858 enables fullscreen exclusive mode for d3d9 2018-10-03 08:50:00 +02:00
FunkyFr3sh
848f996f9b try to use 1.30 shader first and use 1.10 shader as fallback solution 2018-10-02 16:26:37 +02:00
FunkyFr3sh
29478d6e25 remove legacy opengl code 2018-10-02 15:58:30 +02:00
FunkyFr3sh
b2cf1b0a55 move pixel shader into header file 2018-10-02 12:19:46 +02:00
FunkyFr3sh
ebae1add37 remove duplicate debug code 2018-10-02 11:38:38 +02:00
FunkyFr3sh
1d43b112c9 switch to gdi on failure 2018-09-30 01:02:48 +02:00
FunkyFr3sh
ac4f993976 separate opengl render code into multiple functions 2018-09-15 16:12:03 +02:00
FunkyFr3sh
79fe86062f add "sleep" setting for CnC1 2018-09-11 14:20:40 +02:00
FunkyFr3sh
f5698f2d0b fix gdi palette bug + refactoring 2018-08-23 00:57:31 +02:00
FunkyFr3sh
7661a589bb yet another unity/gnome3 hack - Fixes random window repositioning 2018-08-14 15:43:48 +02:00
FunkyFr3sh
b9eab72850 add temporary workaround for ubuntu alt+enter bug until we got a better solution 2018-08-09 11:19:36 +02:00
FunkyFr3sh
d98cf4f6ea fix for non working vsync 2018-07-16 12:27:41 +02:00
FunkyFr3sh
a40392e11a only update textures if necessary 2018-07-04 23:27:12 +02:00
FunkyFr3sh
0b12de90e2 fix for fullscreen bug with auto renderer 2018-06-26 18:02:03 +02:00
FunkyFr3sh
fa54189259 show opengl unavailable warning 2018-06-22 04:27:34 +02:00
FunkyFr3sh
203cee4d01 add QueryPerformanceCounter debug code 2018-05-31 03:38:33 +02:00
FunkyFr3sh
90758a08c8 move wglSwapIntervalEXT to opengl.c 2018-05-23 02:03:45 +02:00
FunkyFr3sh
5ed60e662e remove redundant stuff from render loop 2018-05-23 01:11:40 +02:00
FunkyFr3sh
d8cee91ee8 try to use GL_LUMINANCE first for better performance 2018-05-21 22:32:19 +02:00
FunkyFr3sh
6d57bbbfcb remove unused stuff 2018-05-20 21:59:47 +02:00
FunkyFr3sh
d36d432c1a avoid deprecated functions if possible 2018-05-20 06:27:53 +02:00
FunkyFr3sh
07182e2055 use PFNGLACTIVETEXTUREPROC for glActiveTexture 2018-05-20 01:11:37 +02:00
FunkyFr3sh
fd939bfff4 choose best renderer automatically 2018-05-18 16:18:34 +02:00
FunkyFr3sh
87450e320f preliminary libretro GLSL shader support https://github.com/libretro/glsl-shaders 2018-05-12 12:28:07 +02:00
FunkyFr3sh
b053bc377e OpenGL: add 8bit palette conversion shader for better performance - remove pixel buffer objects - temporary remove scaling filters (need to be replaced with shaders) 2018-05-09 05:09:57 +02:00
FunkyFr3sh
5a2748f3d1 add visual studio project files 2018-05-06 10:52:06 +02:00
FunkyFr3sh
e65c03c607 fix vhack for cnc1 2018-03-23 03:21:16 +01:00
FunkyFr3sh
47026bf011 fix for alt+tab freeze (carmageddon) 2018-03-19 02:27:55 +01:00
FunkyFr3sh
b2bacb95c3 optional fake GetCursorPos for carmageddon 2018-03-19 00:32:13 +01:00
FunkyFr3sh
9ce87449ec improve boxing/maintas cursor lock/unlock - fix automatic mouse sensitivity scaling with boxing/maintas 2018-03-15 20:49:27 +01:00
FunkyFr3sh
ecaaf8e647 maintain aspect ratio 2018-03-14 14:02:04 +01:00
FunkyFr3sh
fcdc863ffa reinvent adjmouse 2018-03-11 21:23:22 +01:00
FunkyFr3sh
308413323c SetProcessDpiAwareness 2018-03-10 10:19:54 +01:00
FunkyFr3sh
7a17726679 fix for uncontrollable mouse cursor on window 10 fall creators update 2018-03-09 13:50:56 +01:00
FunkyFr3sh
e60db3ccb5 adjust names 2017-11-26 09:09:38 +01:00
FunkyFr3sh
c526cf63de log fps 2017-11-26 08:49:30 +01:00
FunkyFr3sh
3358ada5c3 stretch to full screen bool 2017-11-20 05:11:39 +01:00
FunkyFr3sh
8f3b947eb1 Use Pixel Buffer Objects (OpenGL) 2017-11-16 22:21:13 +01:00
FunkyFr3sh
153bfda117 compile resources again + cleanup 2017-11-16 19:19:17 +01:00