diff options
author | athrxx | 2011-06-18 13:12:13 +0200 |
---|---|---|
committer | athrxx | 2011-06-18 13:12:13 +0200 |
commit | cc77de35c23c5cf3caee33b04a93c88fa4e02b29 (patch) | |
tree | 29e969d1e0572303b009855b35855d47716edf85 /engines | |
parent | afc6b2e617a6bef77963ac8b95cb424fa645668f (diff) | |
download | scummvm-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')
-rw-r--r-- | engines/scumm/gfx.cpp | 9 |
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; |