1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-24 17:49:52 +01:00

allow to override bpp via fake_mode

This commit is contained in:
FunkyFr3sh 2024-09-01 12:16:19 +02:00
parent c28e1d98dc
commit 094d020e05

View File

@ -849,15 +849,27 @@ SHORT WINAPI fake_GetAsyncKeyState(int vKey)
int WINAPI fake_GetDeviceCaps(HDC hdc, int index) int WINAPI fake_GetDeviceCaps(HDC hdc, int index)
{ {
if (g_ddraw.ref && DWORD bpp = 0;
g_ddraw.bpp &&
index == BITSPIXEL && if (g_ddraw.ref && g_ddraw.bpp)
(g_config.hook != 2 || g_ddraw.renderer == gdi_render_main))
{ {
return g_ddraw.bpp; bpp = g_ddraw.bpp;
}
else if (g_config.fake_mode[0])
{
char* e = &g_config.fake_mode[0];
strtoul(e, &e, 0);
strtoul(e + 1, &e, 0);
bpp = strtoul(e + 1, &e, 0);
} }
if (g_ddraw.ref && g_ddraw.bpp == 8 && (g_config.hook != 2 || g_ddraw.renderer == gdi_render_main)) if (bpp && index == BITSPIXEL && (g_config.hook != 2 || g_ddraw.renderer == gdi_render_main))
{
return bpp;
}
if (bpp == 8 && (g_config.hook != 2 || g_ddraw.renderer == gdi_render_main))
{ {
if (index == RASTERCAPS) if (index == RASTERCAPS)
{ {