aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/screen_lok.h
diff options
context:
space:
mode:
authorJohannes Schickel2009-06-25 01:29:14 +0000
committerJohannes Schickel2009-06-25 01:29:14 +0000
commit004f6900b11e0ce841816f06e851ec37b8907466 (patch)
treef63a6f92349d4524958d2c3e4127af039ee2486d /engines/kyra/screen_lok.h
parent4df9dd82fb2a4e9f5772368ec869788e64e380ff (diff)
downloadscummvm-rg350-004f6900b11e0ce841816f06e851ec37b8907466.tar.gz
scummvm-rg350-004f6900b11e0ce841816f06e851ec37b8907466.tar.bz2
scummvm-rg350-004f6900b11e0ce841816f06e851ec37b8907466.zip
Initial support for Kyrandia 1 PC-9801 Japanese 16 color.
svn-id: r41844
Diffstat (limited to 'engines/kyra/screen_lok.h')
-rw-r--r--engines/kyra/screen_lok.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/engines/kyra/screen_lok.h b/engines/kyra/screen_lok.h
index d74da66df5..39a5cc3571 100644
--- a/engines/kyra/screen_lok.h
+++ b/engines/kyra/screen_lok.h
@@ -77,6 +77,23 @@ protected:
uint8 *_saveLoadPageOvl[8];
};
+class Screen_LoK_16 : public Screen_LoK {
+public:
+ Screen_LoK_16(KyraEngine_LoK *vm, OSystem *system);
+
+ void setScreenPalette(const Palette &pal);
+private:
+ void updateDirtyRectsOvl();
+
+ void convertTo16Colors(uint8 *page, int w, int h);
+ void mergeOverlay(int x, int y, int w, int h);
+
+ void paletteMap(uint8 idx, int r, int g, int b);
+ uint8 _paletteMap[1024];
+
+ static const uint8 _palette16[48];
+};
+
} // end of namespace Kyra
#endif