From 02719f57446023f0404a2793ba2afa0a3cc8e4a6 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Sun, 8 Aug 2021 22:39:32 +0200 Subject: [PATCH] remove passthrough setting and adjust presets --- inc/dd.h | 1 - src/config.c | 29 ++++++++--------------------- src/dd.c | 24 +----------------------- src/ddsurface.c | 1 - 4 files changed, 9 insertions(+), 46 deletions(-) diff --git a/inc/dd.h b/inc/dd.h index 4b78f43..dff2b44 100644 --- a/inc/dd.h +++ b/inc/dd.h @@ -121,7 +121,6 @@ typedef struct CNCDDRAW BOOL fixwndprochook; BOOL d3d9linear; BOOL gdilinear; - BOOL passthrough; int resolutions; BOOL armadahack; BOOL tshack; diff --git a/src/config.c b/src/config.c index 0b7570e..195d777 100644 --- a/src/config.c +++ b/src/config.c @@ -53,7 +53,6 @@ void cfg_load() g_ddraw->fixwndprochook = cfg_get_bool("fixwndprochook", FALSE); g_ddraw->d3d9linear = cfg_get_bool("d3d9linear", TRUE); g_ddraw->gdilinear = cfg_get_bool("gdilinear", FALSE); - g_ddraw->passthrough = cfg_get_bool("passthrough", TRUE); g_ddraw->resolutions = cfg_get_int("resolutions", RESLIST_NORMAL); g_ddraw->armadahack = cfg_get_bool("armadahack", FALSE); @@ -330,10 +329,6 @@ static void cfg_create_ini() "; Note: Set this to 2 if your chosen resolution is not working, set to 1 if the game is crashing\n" "resolutions=0\n" "\n" - "; Pass additional DirectDrawCreate calls to original system ddraw.dll\n" - "; Note: Disable this if videos are not being upscaled or the game is refusing to start\n" - "passthrough=true\n" - "\n" "\n" "\n" "; ### Game specific settings ###\n" @@ -416,7 +411,6 @@ static void cfg_create_ini() "renderer=opengl\n" "nonexclusive=true\n" "fixpitch=true\n" - "fixchildwindows=false\n" "\n" "; Blood II - The Chosen / Shogo - Mobile Armor Division\n" "[Client]\n" @@ -426,7 +420,6 @@ static void cfg_create_ini() "; Casino Empire\n" "[CasinoEmpire]\n" "hook=2\n" - "passthrough=false\n" "\n" "; Carmageddon\n" "[CARMA95]\n" @@ -617,7 +610,6 @@ static void cfg_create_ini() "\n" "; Call To Power 2\n" "[ctp2]\n" - "passthrough=false\n" "maintas=false\n" "boxing=false\n" "\n" @@ -631,7 +623,6 @@ static void cfg_create_ini() "[AdSanguo]\n" "maxgameticks=60\n" "noactivateapp=true\n" - "passthrough=false\n" "\n" "; Dark Reign: The Future of War\n" "[DKReign]\n" @@ -642,7 +633,6 @@ static void cfg_create_ini() "[DKII]\n" "maxgameticks=60\n" "noactivateapp=true\n" - "passthrough=false\n" "\n" "; Deadlock 2\n" "[DEADLOCK]\n" @@ -660,7 +650,6 @@ static void cfg_create_ini() "adjmouse=true\n" "renderer=opengl\n" "hook=3\n" - "passthrough=false\n" "maintas=false\n" "boxing=false\n" "\n" @@ -723,13 +712,13 @@ static void cfg_create_ini() "\n" "; Konung\n" "[konung]\n" - "renderer=opengl\n" - "nonexclusive=true\n" + "renderer=gdi\n" + "hook=2\n" "\n" "; Konung 2\n" "[Konung2]\n" - "renderer=opengl\n" - "nonexclusive=true\n" + "renderer=gdi\n" + "hook=2\n" "\n" "; KKND Xtreme (With high resolution patch)\n" "[KKNDgame]\n" @@ -795,6 +784,10 @@ static void cfg_create_ini() "[RoadRash]\n" "adjmouse=true\n" "\n" + "; Septerra Core\n" + "[septerra]\n" + "hook=2\n" + "\n" "; Settlers 3\n" "[s3]\n" "renderer=opengl\n" @@ -838,7 +831,6 @@ static void cfg_create_ini() "; Sim City 3000\n" "[SC3]\n" "renderer=opengl\n" - "passthrough=false\n" "minfps=-2\n" "\n" "; Shadow Watch\n" @@ -858,7 +850,6 @@ static void cfg_create_ini() "[sanguo]\n" "maxgameticks=60\n" "noactivateapp=true\n" - "passthrough=false\n" "\n" "; Twisted Metal\n" "[TWISTED]\n" @@ -897,10 +888,6 @@ static void cfg_create_ini() "[Darklord]\n" "renderer=gdi\n" "\n" - "; Wizardry 8\n" - "[Wiz8]\n" - "passthrough=false\n" - "\n" "; Worms Armageddon\n" "[WA]\n" "adjmouse=true\n" diff --git a/src/dd.c b/src/dd.c index be30f8b..15f6749 100644 --- a/src/dd.c +++ b/src/dd.c @@ -1022,29 +1022,7 @@ HRESULT dd_GetVerticalBlankStatus(LPBOOL lpbIsInVB) HRESULT dd_CreateEx(GUID* lpGuid, LPVOID* lplpDD, REFIID iid, IUnknown* pUnkOuter) { - if (g_ddraw) - { - if (g_ddraw->passthrough) - { - if (iid && IsEqualGUID(&IID_IDirectDraw, iid)) - { - if (!g_ddraw->real_dll) - g_ddraw->real_dll = LoadLibrary("system32\\ddraw.dll"); - - if (g_ddraw->real_dll && !g_ddraw->DirectDrawCreate) - g_ddraw->DirectDrawCreate = (void*)GetProcAddress(g_ddraw->real_dll, "DirectDrawCreate"); - - if (g_ddraw->DirectDrawCreate == DirectDrawCreate) - g_ddraw->DirectDrawCreate = NULL; - - if (g_ddraw->DirectDrawCreate) - return g_ddraw->DirectDrawCreate(lpGuid, (LPDIRECTDRAW*)lplpDD, pUnkOuter); - } - - return DDERR_DIRECTDRAWALREADYCREATED; - } - } - else + if (!g_ddraw) { g_ddraw = (CNCDDRAW*)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CNCDDRAW)); g_ddraw->ref++; diff --git a/src/ddsurface.c b/src/ddsurface.c index 70b3eac..8c8b417 100644 --- a/src/ddsurface.c +++ b/src/ddsurface.c @@ -1324,7 +1324,6 @@ HRESULT dd_CreateSurface( dbg_dump_dds_caps(lpDDSurfaceDesc->ddsCaps.dwCaps); if ((lpDDSurfaceDesc->ddsCaps.dwCaps & DDSCAPS_PRIMARYSURFACE) && - !g_ddraw->passthrough && g_ddraw->primary && g_ddraw->primary->width == g_ddraw->width && g_ddraw->primary->height == g_ddraw->height &&