diff options
author | Norbert Lange | 2009-08-24 17:51:47 +0000 |
---|---|---|
committer | Norbert Lange | 2009-08-24 17:51:47 +0000 |
commit | 917d4b78b36d6c5a5c25a03e7ee6a1c1b6a85fd5 (patch) | |
tree | e652563203a00f8acecfaafbf93c64dbfbd13f25 /engines/gob/video_v6.cpp | |
parent | 5f87d5090cfcb34cda3c1f5d430e0865344d7366 (diff) | |
parent | dd7868acc2512c9761d892e67a4837f4dc38bdc0 (diff) | |
download | scummvm-rg350-917d4b78b36d6c5a5c25a03e7ee6a1c1b6a85fd5.tar.gz scummvm-rg350-917d4b78b36d6c5a5c25a03e7ee6a1c1b6a85fd5.tar.bz2 scummvm-rg350-917d4b78b36d6c5a5c25a03e7ee6a1c1b6a85fd5.zip |
Merge with trunk
svn-id: r43701
Diffstat (limited to 'engines/gob/video_v6.cpp')
-rw-r--r-- | engines/gob/video_v6.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/engines/gob/video_v6.cpp b/engines/gob/video_v6.cpp index c51b027bad..6f39edb588 100644 --- a/engines/gob/video_v6.cpp +++ b/engines/gob/video_v6.cpp @@ -84,8 +84,23 @@ char Video_v6::spriteUncompressor(byte *sprBuf, int16 srcWidth, int16 srcHeight, return 1; } - warning("Urban Stub: spriteUncompressor(), sprBuf[0,1] = %d,%d", - sprBuf[0], sprBuf[1]); + if (srcWidth & 0xC000) { + warning("Playtoons Stub: srcWidth & 0xC000 == %04X", srcWidth & 0xC000); + srcWidth &= 0x3FFF; + } + + if ((sprBuf[0] == 1) && (sprBuf[1] == 2)) { + if (Video_v2::spriteUncompressor(sprBuf, srcWidth, srcHeight, x, y, transp, destDesc)) + return 1; + + _vm->validateVideoMode(destDesc._vidMode); + + _videoDriver->drawPackedSprite(sprBuf, srcWidth, srcHeight, x, y, transp, destDesc); + return 1; + } + + warning("Urban Stub: spriteUncompressor(), sprBuf[0,1,2] = %d,%d,%d", + sprBuf[0], sprBuf[1], sprBuf[2]); return 1; } |