From f98dbc7079ab37d440069b3545a4f7c612b7948b Mon Sep 17 00:00:00 2001 From: Patrice Mandin Date: Sat, 10 Oct 2009 10:28:05 +0000 Subject: [PATCH] Disable double buffer for Milan. Also set current width,height after we read it. --- src/video/xbios/SDL_xbios.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/video/xbios/SDL_xbios.c b/src/video/xbios/SDL_xbios.c index ec11971d5..9a339daab 100644 --- a/src/video/xbios/SDL_xbios.c +++ b/src/video/xbios/SDL_xbios.c @@ -495,14 +495,15 @@ static int XBIOS_VideoInit(_THIS, SDL_PixelFormat *vformat) /* Read infos about current mode */ VsetScreen(-1, &XBIOS_oldvmode, MI_MAGIC, CMD_GETMODE); - this->info.current_w = si.scrWidth; - this->info.current_h = si.scrHeight; si.size = sizeof(SCREENINFO); si.devID = XBIOS_oldvmode; si.scrFlags = 0; VsetScreen(-1, &si, MI_MAGIC, CMD_GETINFO); + this->info.current_w = si.scrWidth; + this->info.current_h = si.scrHeight; + XBIOS_oldnumcol = 0; if (si.scrFlags & SCRINFO_OK) { if (si.scrPlanes <= 8) { @@ -717,7 +718,7 @@ static SDL_Surface *XBIOS_SetVideoMode(_THIS, SDL_Surface *current, } } #endif - if (flags & SDL_DOUBLEBUF) { + if ((flags & SDL_DOUBLEBUF) && ((XBIOS_cvdo>>16) != VDO_MILAN)) { num_buffers = 2; modeflags |= SDL_DOUBLEBUF; }