From 340febc65ecbdef992f039f5fbbad7125e4cd0a8 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh <cc.red.alert.1@googlemail.com> Date: Sun, 10 Sep 2023 02:31:28 +0200 Subject: [PATCH] fix flags --- src/dd.c | 3 ++- src/ddsurface.c | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/dd.c b/src/dd.c index cf167d8..206cb8a 100644 --- a/src/dd.c +++ b/src/dd.c @@ -406,7 +406,8 @@ HRESULT dd_GetCaps(LPDDCAPS_DX1 lpDDDriverCaps, LPDDCAPS_DX1 lpDDEmulCaps) DDCAPS_BLTSTRETCH | DDCAPS_CANCLIP | DDCAPS_CANBLTSYSMEM | - DDCAPS_CANCLIPSTRETCHED; + DDCAPS_CANCLIPSTRETCHED | + DDCAPS_COLORKEY; lpDDDriverCaps->dwCaps2 = DDCAPS2_NOPAGELOCKREQUIRED | diff --git a/src/ddsurface.c b/src/ddsurface.c index e9a2eb8..ce4404e 100644 --- a/src/ddsurface.c +++ b/src/ddsurface.c @@ -686,8 +686,7 @@ HRESULT dds_GetSurfaceDesc(IDirectDrawSurfaceImpl* This, LPDDSURFACEDESC lpDDSur DDSD_HEIGHT | DDSD_PITCH | DDSD_PIXELFORMAT | - DDSD_LPSURFACE | - DDSD_BACKBUFFERCOUNT; + DDSD_LPSURFACE; lpDDSurfaceDesc->dwWidth = This->width; lpDDSurfaceDesc->dwHeight = This->height; @@ -697,7 +696,12 @@ HRESULT dds_GetSurfaceDesc(IDirectDrawSurfaceImpl* This, LPDDSURFACEDESC lpDDSur lpDDSurfaceDesc->ddpfPixelFormat.dwFlags = DDPF_RGB; lpDDSurfaceDesc->ddpfPixelFormat.dwRGBBitCount = This->bpp; lpDDSurfaceDesc->ddsCaps.dwCaps = This->caps; + + if (This->flags & DDSD_BACKBUFFERCOUNT) + { + lpDDSurfaceDesc->dwFlags |= DDSD_BACKBUFFERCOUNT; lpDDSurfaceDesc->dwBackBufferCount = This->backbuffer_count; + } if (This->bpp == 8) {