aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorathrxx2011-06-18 13:12:13 +0200
committerathrxx2011-06-18 13:12:13 +0200
commitcc77de35c23c5cf3caee33b04a93c88fa4e02b29 (patch)
tree29e969d1e0572303b009855b35855d47716edf85 /engines/scumm
parentafc6b2e617a6bef77963ac8b95cb424fa645668f (diff)
downloadscummvm-rg350-cc77de35c23c5cf3caee33b04a93c88fa4e02b29.tar.gz
scummvm-rg350-cc77de35c23c5cf3caee33b04a93c88fa4e02b29.tar.bz2
scummvm-rg350-cc77de35c23c5cf3caee33b04a93c88fa4e02b29.zip
SCUMM: make sure asmDrawStripToScreen is not called in 16bit mode
(fixes possible issue in LOOM PCE)
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/gfx.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index d3ff8266a0..b78059bd94 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -658,9 +658,6 @@ void ScummEngine::drawStripToScreen(VirtScreen *vs, int x, int width, int top, i
return;
} else
#endif
-#ifdef USE_ARM_GFX_ASM
- asmDrawStripToScreen(height, width, text, src, _compositeBuf, vs->pitch, width, _textSurface.pitch);
-#else
if (_outputPixelFormat.bytesPerPixel == 2) {
const byte *srcPtr = (const byte *)src;
const byte *textPtr = (byte *)_textSurface.getBasePtr(x * m, y * m);
@@ -682,7 +679,11 @@ void ScummEngine::drawStripToScreen(VirtScreen *vs, int x, int width, int top, i
srcPtr += vsPitch;
textPtr += _textSurface.pitch - width * m;
}
- } else {
+ }
+#ifdef USE_ARM_GFX_ASM
+ asmDrawStripToScreen(height, width, text, src, _compositeBuf, vs->pitch, width, _textSurface.pitch);
+#else
+ else {
// We blit four pixels at a time, for improved performance.
const uint32 *src32 = (const uint32 *)src;
uint32 *dst32 = (uint32 *)_compositeBuf;