diff options
author | Filippos Karapetis | 2011-10-14 14:05:34 +0300 |
---|---|---|
committer | Filippos Karapetis | 2011-10-14 14:07:01 +0300 |
commit | b04a0697820d3dfff1fa09831c1bb362a641c49c (patch) | |
tree | c88112d6667ee9fbe07106bdcd048447c654526d /engines/sci/graphics | |
parent | d39cdd8e1cfdcf9992f03f6ef72138dbdc3f6bbb (diff) | |
download | scummvm-rg350-b04a0697820d3dfff1fa09831c1bb362a641c49c.tar.gz scummvm-rg350-b04a0697820d3dfff1fa09831c1bb362a641c49c.tar.bz2 scummvm-rg350-b04a0697820d3dfff1fa09831c1bb362a641c49c.zip |
SCI: More work on kBitmap (still WIP)
Diffstat (limited to 'engines/sci/graphics')
-rw-r--r-- | engines/sci/graphics/text32.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/engines/sci/graphics/text32.cpp b/engines/sci/graphics/text32.cpp index 52124fda6d..0d4f8deb35 100644 --- a/engines/sci/graphics/text32.cpp +++ b/engines/sci/graphics/text32.cpp @@ -104,6 +104,8 @@ void GfxText32::disposeTextBitmap(reg_t hunkId) { _segMan->freeHunkEntry(hunkId); } +#define BITMAP_HEADER_SIZE 46 + void GfxText32::drawTextBitmap(reg_t textObject) { reg_t hunkId = readSelector(_segMan, textObject, SELECTOR(bitmap)); byte *surface = _segMan->getHunkPointer(hunkId); @@ -111,6 +113,10 @@ void GfxText32::drawTextBitmap(reg_t textObject) { if (!surface) error("Attempt to draw an invalid text bitmap"); + // Skip the bitmap header in SCI21 - SCI3 + if (getSciVersion() >= SCI_VERSION_2_1) + surface += BITMAP_HEADER_SIZE; + int curByte = 0; Common::Rect nsRect = getNSRect(textObject); Common::Rect planeRect = getPlaneRect(textObject); |