1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-15 06:04:49 +01:00

add new option to limit game ticks via bltfast

This commit is contained in:
FunkyFr3sh 2022-10-31 02:54:40 +01:00
parent 80b213a41b
commit 56299662aa
3 changed files with 11 additions and 0 deletions

View File

@ -154,6 +154,7 @@ typedef struct CNCDDRAW
int guard_lines;
int resolutions;
int max_resolutions;
BOOL limit_bltfast;
BOOL armadahack;
BOOL tshack;
BOOL infantryhack;

View File

@ -52,6 +52,7 @@ void cfg_load()
g_ddraw->d3d9_adapter = cfg_get_int("d3d9_adapter", 0);
g_ddraw->guard_lines = cfg_get_int("guard_lines", 200);
g_ddraw->max_resolutions = cfg_get_int("max_resolutions", 0);
g_ddraw->limit_bltfast = cfg_get_bool("limit_bltfast", FALSE);
g_ddraw->opengl_core = cfg_get_bool("opengl_core", FALSE);
cfg_get_string("screenshotdir", ".\\Screenshots\\", g_ddraw->screenshot_dir, sizeof(g_ddraw->screenshot_dir));
@ -358,6 +359,7 @@ static void cfg_create_ini()
"d3d9on12=false\n"
"guard_lines=200\n"
"max_resolutions=0\n"
"limit_bltfast=false\n"
"game_handles_close=false\n"
"accuratetimers=false\n"
"fixpitch=true\n"
@ -711,6 +713,7 @@ static void cfg_create_ini()
"[AdSanguo]\n"
"maxgameticks=60\n"
"noactivateapp=true\n"
"limit_bltfast=true\n"
"\n"
"; Dark Reign: The Future of War\n"
"[DKReign]\n"
@ -996,6 +999,7 @@ static void cfg_create_ini()
"[sanguo]\n"
"maxgameticks=60\n"
"noactivateapp=true\n"
"limit_bltfast=true\n"
"\n"
"; Twisted Metal\n"
"[TWISTED]\n"

View File

@ -638,6 +638,12 @@ HRESULT dds_BltFast(
(This->last_flip_tick + FLIP_REDRAW_TIMEOUT < time && This->last_blt_tick + FLIP_REDRAW_TIMEOUT < time))
{
ReleaseSemaphore(g_ddraw->render.sem, 1, NULL);
if (g_ddraw->limit_bltfast && g_ddraw->ticks_limiter.tick_length > 0)
{
g_ddraw->ticks_limiter.use_blt_or_flip = TRUE;
util_limit_game_ticks();
}
}
}