diff options
Diffstat (limited to 'engines/sci/engine/segment.cpp')
-rw-r--r-- | engines/sci/engine/segment.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/engines/sci/engine/segment.cpp b/engines/sci/engine/segment.cpp index 2cff799f4b..7f690cb7c4 100644 --- a/engines/sci/engine/segment.cpp +++ b/engines/sci/engine/segment.cpp @@ -70,6 +70,9 @@ SegmentObj *SegmentObj::createSegmentObj(SegmentType type) { case SEG_TYPE_STRING: mem = new StringTable(); break; + case SEG_TYPE_BITMAP: + mem = new BitmapTable(); + break; #endif default: error("Unknown SegmentObj type %d", type); @@ -310,6 +313,17 @@ SegmentRef StringTable::dereference(reg_t pointer) { return ret; } +#pragma mark - +#pragma mark Bitmaps + +SegmentRef BitmapTable::dereference(reg_t pointer) { + SegmentRef ret; + ret.isRaw = true; + ret.maxSize = at(pointer.getOffset()).getRawSize(); + ret.raw = at(pointer.getOffset()).getRawData(); + return ret; +} + #endif } // End of namespace Sci |