aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/bitmap.h
diff options
context:
space:
mode:
authorMatthew Hoops2010-12-14 22:59:39 +0000
committerMatthew Hoops2010-12-14 22:59:39 +0000
commite88fcee0579e29313a0621679bc88e1dd80a34c3 (patch)
tree364cdb3bacd0ec354e6d9f80d549014fa49a4dba /engines/mohawk/bitmap.h
parent0c677aacde925fdef989b8702d23dac6cb9f04a1 (diff)
downloadscummvm-rg350-e88fcee0579e29313a0621679bc88e1dd80a34c3.tar.gz
scummvm-rg350-e88fcee0579e29313a0621679bc88e1dd80a34c3.tar.bz2
scummvm-rg350-e88fcee0579e29313a0621679bc88e1dd80a34c3.zip
MOHAWK: Add support for DOS bitmaps (thanks to fuzzie for the EGA planar code)
svn-id: r54913
Diffstat (limited to 'engines/mohawk/bitmap.h')
-rw-r--r--engines/mohawk/bitmap.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/mohawk/bitmap.h b/engines/mohawk/bitmap.h
index 8f3f6af436..6dd6b1115d 100644
--- a/engines/mohawk/bitmap.h
+++ b/engines/mohawk/bitmap.h
@@ -188,6 +188,21 @@ protected:
byte getBitsPerPixel() { return 8; }
};
+class DOSBitmap : public MohawkBitmap {
+public:
+ DOSBitmap() : MohawkBitmap() {}
+ ~DOSBitmap() {}
+
+ MohawkSurface *decodeImage(Common::SeekableReadStream *stream);
+
+protected:
+ byte getBitsPerPixel() { return ((_header.format & 0x30) >> 4) + 1; }
+
+private:
+ void expandMonochromePlane(Graphics::Surface *surface, Common::SeekableReadStream *rawStream);
+ void expandEGAPlanes(Graphics::Surface *surface, Common::SeekableReadStream *rawStream);
+};
+
} // End of namespace Mohawk
#endif