-#if 0
- printf("::: %d, %d / %d, %d [%d, %d]\n",
- mScrollX, mScrollY,
- mScrollX_last, mScrollY_last,
- game_sp.scroll_xoffset, game_sp.scroll_yoffset);
-#endif
-
- SyncDisplay();
-
- if (redraw_tiles > REDRAWTILES_THRESHOLD || scrolling || scrolling_last ||
- ExplosionShakeMurphy != 0 || ExplosionShakeMurphy_last != 0)
- {
- BlitScreenToBitmap_SP(window);
- }
- else
- {
- int scroll_xoffset = mScrollX - mScrollX_last + game_sp.scroll_xoffset;
- int scroll_yoffset = mScrollY - mScrollY_last + game_sp.scroll_yoffset;
- int x1 = 0, x2 = SCR_FIELDX - (scroll_xoffset != 0 ? 0 : 1);
- int y1 = 0, y2 = SCR_FIELDY - (scroll_yoffset != 0 ? 0 : 1);
-#if NEW_TILESIZE
- int full_xsize = (FieldWidth - (menBorder ? 0 : 1)) * TILEX_VAR;
- int full_ysize = (FieldHeight - (menBorder ? 0 : 1)) * TILEY_VAR;
-#else
- int full_xsize = (FieldWidth - (menBorder ? 0 : 1)) * TILEX;
- int full_ysize = (FieldHeight - (menBorder ? 0 : 1)) * TILEY;
-#endif
- int sx = SX + (full_xsize < SXSIZE ? (SXSIZE - full_xsize) / 2 : 0);
- int sy = SY + (full_ysize < SYSIZE ? (SYSIZE - full_ysize) / 2 : 0);
-
- InitGfxClipRegion(TRUE, SX, SY, SXSIZE, SYSIZE);
-
-#if NEW_TILESIZE
- scroll_xoffset = scroll_xoffset * TILESIZE_VAR / TILESIZE;
- scroll_yoffset = scroll_yoffset * TILESIZE_VAR / TILESIZE;
-#endif