From af75abf0266c7eaa5bbdee626e142abbb3af5711 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Thu, 31 Aug 2023 19:30:51 +0200 Subject: [PATCH] add hack for Metal Gear Solid --- inc/dd.h | 1 + src/config.c | 1 + src/dd.c | 2 ++ 3 files changed, 4 insertions(+) diff --git a/inc/dd.h b/inc/dd.h index e8a96aa..846904a 100644 --- a/inc/dd.h +++ b/inc/dd.h @@ -166,6 +166,7 @@ typedef struct CNCDDRAW BOOL tshack; BOOL infantryhack; BOOL stronghold_hack; + BOOL mgs_hack; BOOL remove_menu; int maxgameticks; BOOL alt_key_down; diff --git a/src/config.c b/src/config.c index 5756745..77d8878 100644 --- a/src/config.c +++ b/src/config.c @@ -59,6 +59,7 @@ void cfg_load() g_ddraw->tshack = cfg_get_bool("tshack", FALSE); g_ddraw->infantryhack = cfg_get_bool("infantryhack", FALSE); g_ddraw->stronghold_hack = cfg_get_bool("stronghold_hack", FALSE); + g_ddraw->mgs_hack = cfg_get_bool("mgs_hack", FALSE); if (cfg_get_bool("game_handles_close", FALSE) || g_ddraw->infantryhack) { diff --git a/src/dd.c b/src/dd.c index ec4f38f..cf167d8 100644 --- a/src/dd.c +++ b/src/dd.c @@ -544,6 +544,8 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl if (dwBPP != 8 && dwBPP != 16 && dwBPP != 32) return DDERR_INVALIDMODE; + if (g_ddraw->mgs_hack && dwHeight == 480) dwHeight -= 32; /* Remove black bar in Metal Gear Solid */ + if (g_ddraw->render.thread) { EnterCriticalSection(&g_ddraw->cs);