aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorMartin Kiewitz2009-10-15 11:47:05 +0000
committerMartin Kiewitz2009-10-15 11:47:05 +0000
commit5d6b2564953fd1452d4af7130c7c39fb6d301b1d (patch)
tree012150d2e38bc84928ce3ac0256eaf3dbd1be94d /engines
parent022491c1cd7a8b3da5ed14d6dd04846ac7d44beb (diff)
downloadscummvm-rg350-5d6b2564953fd1452d4af7130c7c39fb6d301b1d.tar.gz
scummvm-rg350-5d6b2564953fd1452d4af7130c7c39fb6d301b1d.tar.bz2
scummvm-rg350-5d6b2564953fd1452d4af7130c7c39fb6d301b1d.zip
SCI/newgui: SciGuiPicture now supports embedded ega cel data
svn-id: r45112
Diffstat (limited to 'engines')
-rw-r--r--engines/sci/gui/gui_picture.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/engines/sci/gui/gui_picture.cpp b/engines/sci/gui/gui_picture.cpp
index 82dabbb74e..3c04625516 100644
--- a/engines/sci/gui/gui_picture.cpp
+++ b/engines/sci/gui/gui_picture.cpp
@@ -136,6 +136,14 @@ void SciGuiPicture::drawCelData(byte *inbuffer, int size, int headerPos, int rle
if (literalPos == 0) {
// decompression for data that has only one stream (vecor embedded view data)
switch (_resMan->getViewType()) {
+ case kViewEga:
+ while (pixelNr < pixelCount) {
+ curByte = *rlePtr++;
+ runLength = curByte >> 4;
+ memset(ptr + pixelNr, curByte & 0x0F, MIN<uint16>(runLength, pixelCount - pixelNr));
+ pixelNr += runLength;
+ }
+ break;
case kViewVga:
case kViewVga11:
while (pixelNr < pixelCount) {