diff options
author | Nicolas Bacca | 2003-07-13 12:28:01 +0000 |
---|---|---|
committer | Nicolas Bacca | 2003-07-13 12:28:01 +0000 |
commit | 765e4a8d93a9f61f91a6025a018d9dbf295457a8 (patch) | |
tree | 4c56139f0b79fb027e6ffaaff2267b321003f4e7 /backends | |
parent | f163ae5ce5a02ee5ce1d899bdf653cff8dc033be (diff) | |
download | scummvm-rg350-765e4a8d93a9f61f91a6025a018d9dbf295457a8.tar.gz scummvm-rg350-765e4a8d93a9f61f91a6025a018d9dbf295457a8.tar.bz2 scummvm-rg350-765e4a8d93a9f61f91a6025a018d9dbf295457a8.zip |
Fix screen limit (Zak)
svn-id: r8977
Diffstat (limited to 'backends')
-rw-r--r-- | backends/wince/screen.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/backends/wince/screen.cpp b/backends/wince/screen.cpp index a7fec1ceca..4da4b9755e 100644 --- a/backends/wince/screen.cpp +++ b/backends/wince/screen.cpp @@ -990,11 +990,17 @@ void Blt_part(UBYTE * src_ptr, int x, int y, int width, int height, int pitch, b if (toolbar_available && !toolbar_drawn && !hide_toolbar) drawAllToolbar(); + if (y > _geometry_h) + return; + + if (y + height > _geometry_h) + height = _geometry_h - y; + pBlt_part(src_ptr, x, y, width, height, NULL, pitch); - if (check && (y > _geometry_h || (y + height) > _geometry_h)) { - toolbar_drawn = false; - } + //if (check && (y > _geometry_h || (y + height) > _geometry_h)) { + // toolbar_drawn = false; + //} } @@ -1149,8 +1155,10 @@ void mono_Blt_part(UBYTE * scr_ptr, int x, int y, int width, int height, scr_ptr_limit = scr_ptr + (pitch ? pitch : width) * height; src_limit = scr_ptr + width; + /* if (scr_ptr_limit > scr_ptr + geom[useMode].lineLimit) scr_ptr_limit = scr_ptr + geom[useMode].lineLimit; + */ /* CMI rendering */ if (high_res && !own_palette && !extra_wide_screen) { @@ -1704,8 +1712,10 @@ void palette_Blt_part(UBYTE * scr_ptr,int x, int y, int width, int height, scr_ptr_limit = scr_ptr + (pitch ? pitch : width) * height; src_limit = scr_ptr + width; + /* if (scr_ptr_limit > scr_ptr + geom[useMode].lineLimit) scr_ptr_limit = scr_ptr + geom[useMode].lineLimit; + */ /* CMI rendering */ if (high_res && !own_palette && !extra_wide_screen) { @@ -1926,8 +1936,10 @@ void hicolor555_Blt_part(UBYTE * scr_ptr,int x, int y, int width, int height, scraddr += y * linestep; scr_ptr_limit = scr_ptr + (pitch ? pitch : width) * height; + /* if (scr_ptr_limit > scr_ptr + geom[useMode].lineLimit) scr_ptr_limit = scr_ptr + geom[useMode].lineLimit; + */ src_limit = scr_ptr + width; @@ -2277,8 +2289,10 @@ void hicolor565_Blt_part(UBYTE * scr_ptr, int x, int y, int width, int height, scraddr += y * linestep; scr_ptr_limit = scr_ptr + (pitch ? pitch : width) * height; + /* if (scr_ptr_limit > scr_ptr + geom[useMode].lineLimit) scr_ptr_limit = scr_ptr + geom[useMode].lineLimit; + */ src_limit = scr_ptr + width; |