Tweaks to fullscreen 32-bit mode

This commit is contained in:
tomcw 2014-06-27 22:43:25 +01:00
parent c509349469
commit b036b03062
2 changed files with 6 additions and 8 deletions

View File

@ -535,7 +535,8 @@ static void DrawFrameWindow ()
else if (g_nAppMode == MODE_DEBUG)
DebugDisplay(1);
else
VideoRedrawScreen(g_bIsFullScreen ? 2 : 1); // TC: 22/06/2014: Why 2 redraws in full-screen mode (32-bit only. 8-bit doesn't need this)
// Win7: In fullscreen mode with 1 redraw, the the screen doesn't get redraw.
VideoRedrawScreen(g_bIsFullScreen ? 2 : 1); // TC: 22/06/2014: Why 2 redraws in full-screen mode (32-bit only)? (8-bit doesn't need this nor does Win8, just Win7 or older OS's)
// DD Full-Screen Palette: BUGFIX: needs to come _after_ all drawing...
if (g_bPaintingWindow)
@ -1489,7 +1490,7 @@ static void ScreenWindowResize(const bool bCtrlKey)
g_nOldViewportScale = g_nViewportScale;
FrameResizeWindow(1); // reset to 1x
SetFullScreenMode();
VideoRedrawScreen(1); // [TC-10/06/2014] Why isn't this working?
//VideoRedrawScreen(1); // [TC-10/06/2014] Remove this once checked it's not needed by Win8
}
else
{
@ -1603,11 +1604,6 @@ static void ProcessButtonClick(int button, bool bFromButtonUI /*=false*/)
g_bDebugBreakDelayCheck = true;
ProcessButtonClick(BTN_RUN); // Exit debugger, switch to MODE_RUNNING or MODE_STEPPING
// TC: 22/6/2014: Remove this comment now we are using 32-bits per pixel for Fullscreen?
// TODO: DD Full-Screen Palette
// exiting debugger using wrong palette, but this makes problem worse...
//InvalidateRect(g_hFrameWindow,NULL,1);
}
else
{

View File

@ -221,7 +221,7 @@ int const kVLine0State = 0x100; // V[543210CBA] = 100000000
int const kVPresetLine = 256; // line when V state presets
int const kVSyncLines = 4; // lines per VSync duration
static BYTE celldirty[40][32]; // NB. No longer used!
static BYTE celldirty[40][32]; // [TC: 27/06/2014] NB. No longer used!
// NUM_COLOR_PALETTE
static COLORREF customcolors[256]; // MONOCHROME is last custom color
@ -3399,6 +3399,8 @@ void VideoRealizePalette(HDC dc)
}
//===========================================================================
// Called by DrawFrameWindow() when in fullscreen mode (eg. after WM_PAINT msg)
VideoUpdateFuncPtr_t VideoRedrawScreen (UINT n)
{
g_VideoForceFullRedraw = n;