* win32 video: always create backbuffer in system memory, should fix the blur in WinXP

* also made hardware acceleration enabled by default
This commit is contained in:
ansstuff 2013-04-24 13:44:42 +00:00
parent 7bc40c5c51
commit d15b71a9ce
1 changed files with 5 additions and 8 deletions

View File

@ -40,7 +40,7 @@ static int bpp;
static int vflags; static int vflags;
static int veflags; static int veflags;
int disvaccel = 1; // Disable video hardware acceleration. By default it's disabled in windowed, but enabled in Fullscreen mode int disvaccel = 0; // Disable video hardware acceleration. By default it's enabled in both windowed and Fullscreen mode
int fssync=0; int fssync=0;
int winsync=0; int winsync=0;
@ -368,10 +368,7 @@ int SetVideoMode(int fs)
ddsdback.dwWidth=256 * specmul; ddsdback.dwWidth=256 * specmul;
ddsdback.dwHeight=FSettings.TotalScanlines() * specmul; ddsdback.dwHeight=FSettings.TotalScanlines() * specmul;
//If the blit hardware can't stretch, assume it's cheap(and slow) // create the buffer in system memory.
//and create the buffer in system memory.
if(!(caps.dwCaps&DDCAPS_BLTSTRETCH))
ddsdback.ddsCaps.dwCaps |= DDSCAPS_SYSTEMMEMORY; ddsdback.ddsCaps.dwCaps |= DDSCAPS_SYSTEMMEMORY;
ddrval = IDirectDraw7_CreateSurface ( lpDD7, &ddsdback, &lpDDSBack, (IUnknown FAR*)NULL); ddrval = IDirectDraw7_CreateSurface ( lpDD7, &ddsdback, &lpDDSBack, (IUnknown FAR*)NULL);
@ -460,7 +457,7 @@ int SetVideoMode(int fs)
ddsdback.dwWidth=256 * specmul; //vmodes[vmod].srect.right; ddsdback.dwWidth=256 * specmul; //vmodes[vmod].srect.right;
ddsdback.dwHeight=FSettings.TotalScanlines() * specmul; //vmodes[vmod].srect.bottom; ddsdback.dwHeight=FSettings.TotalScanlines() * specmul; //vmodes[vmod].srect.bottom;
if(!(caps.dwCaps&DDCAPS_BLTSTRETCH)) // create the buffer in system memory.
ddsdback.ddsCaps.dwCaps |= DDSCAPS_SYSTEMMEMORY; ddsdback.ddsCaps.dwCaps |= DDSCAPS_SYSTEMMEMORY;
ddrval = IDirectDraw7_CreateSurface ( lpDD7, &ddsdback, &lpDDSBack, (IUnknown FAR*)NULL); ddrval = IDirectDraw7_CreateSurface ( lpDD7, &ddsdback, &lpDDSBack, (IUnknown FAR*)NULL);