diff options
author | Martin Kiewitz | 2010-05-15 15:16:32 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-05-15 15:16:32 +0000 |
commit | f3b2627179852a869963c9120acf250de5a71b3c (patch) | |
tree | 51b4e8c5b851feed4a1ba22ec004bdeeb876b485 /engines | |
parent | eb2b3f352ed03dc7299ff6202e68a68116476aa9 (diff) | |
download | scummvm-rg350-f3b2627179852a869963c9120acf250de5a71b3c.tar.gz scummvm-rg350-f3b2627179852a869963c9120acf250de5a71b3c.tar.bz2 scummvm-rg350-f3b2627179852a869963c9120acf250de5a71b3c.zip |
SCI: adding special 640x440 upscaling mode for kq6, finally hires portraits are drawn at the right position
svn-id: r49041
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sci/graphics/cursor.cpp | 4 | ||||
-rw-r--r-- | engines/sci/graphics/screen.cpp | 6 | ||||
-rw-r--r-- | engines/sci/graphics/screen.h | 3 | ||||
-rw-r--r-- | engines/sci/sci.cpp | 2 |
4 files changed, 13 insertions, 2 deletions
diff --git a/engines/sci/graphics/cursor.cpp b/engines/sci/graphics/cursor.cpp index 5ffb233566..e756c773ed 100644 --- a/engines/sci/graphics/cursor.cpp +++ b/engines/sci/graphics/cursor.cpp @@ -222,6 +222,10 @@ Common::Point GfxCursor::getPosition() { mousePos.x /= 2; mousePos.y /= 2; break; + case GFX_SCREEN_UPSCALED_640x440: + mousePos.x /= 2; + mousePos.y = (mousePos.y * 5) / 11; + break; case GFX_SCREEN_UPSCALED_640x480: mousePos.x /= 2; mousePos.y = (mousePos.y * 5) / 12; diff --git a/engines/sci/graphics/screen.cpp b/engines/sci/graphics/screen.cpp index 8d20dca3a2..7ca9e33509 100644 --- a/engines/sci/graphics/screen.cpp +++ b/engines/sci/graphics/screen.cpp @@ -47,6 +47,12 @@ GfxScreen::GfxScreen(ResourceManager *resMan, int16 width, int16 height, int ups for (int i = 0; i <= _height; i++) _upscaledMapping[i] = i * 2; break; + case GFX_SCREEN_UPSCALED_640x440: + _displayWidth = 640; + _displayHeight = 440; + for (int i = 0; i <= _height; i++) + _upscaledMapping[i] = (i * 11) / 5; + break; case GFX_SCREEN_UPSCALED_640x480: _displayWidth = 640; _displayHeight = 480; diff --git a/engines/sci/graphics/screen.h b/engines/sci/graphics/screen.h index bb8d1231d5..dff8eda29f 100644 --- a/engines/sci/graphics/screen.h +++ b/engines/sci/graphics/screen.h @@ -38,7 +38,8 @@ namespace Sci { enum GfxScreenUpscaledMode { GFX_SCREEN_UPSCALED_DISABLED = 0, GFX_SCREEN_UPSCALED_640x400 = 1, - GFX_SCREEN_UPSCALED_640x480 = 2 + GFX_SCREEN_UPSCALED_640x440 = 2, + GFX_SCREEN_UPSCALED_640x480 = 3 }; enum GfxScreenMasks { diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp index 49546fe4c8..5387b19a30 100644 --- a/engines/sci/sci.cpp +++ b/engines/sci/sci.cpp @@ -148,7 +148,7 @@ Common::Error SciEngine::run() { // it to platform windows. if (getPlatform() == Common::kPlatformWindows) { if (!strcmp(getGameID(), "kq6")) - upscaledHires = GFX_SCREEN_UPSCALED_640x480; + upscaledHires = GFX_SCREEN_UPSCALED_640x440; #ifdef ENABLE_SCI32 if (!strcmp(getGameID(), "gk1")) upscaledHires = GFX_SCREEN_UPSCALED_640x480; |