aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/support/video_surface.h
diff options
context:
space:
mode:
authorPaul Gilbert2016-04-04 18:15:02 -0400
committerPaul Gilbert2016-04-04 18:15:02 -0400
commit572301a33efc8c574d7ab2fc9b243050b2db1492 (patch)
tree80cc09df4c279b2b556a8799091711d0a6c8b1fb /engines/titanic/support/video_surface.h
parent3acf1116cd7eff2f98538f8457f724ac25b28df1 (diff)
downloadscummvm-rg350-572301a33efc8c574d7ab2fc9b243050b2db1492.tar.gz
scummvm-rg350-572301a33efc8c574d7ab2fc9b243050b2db1492.tar.bz2
scummvm-rg350-572301a33efc8c574d7ab2fc9b243050b2db1492.zip
TITANIC: Implement OSVideoSurface::setupMap
Diffstat (limited to 'engines/titanic/support/video_surface.h')
-rw-r--r--engines/titanic/support/video_surface.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/engines/titanic/support/video_surface.h b/engines/titanic/support/video_surface.h
index da53270122..e1ddde8013 100644
--- a/engines/titanic/support/video_surface.h
+++ b/engines/titanic/support/video_surface.h
@@ -143,6 +143,11 @@ public:
virtual uint16 getPixel(const Common::Point &pt) = 0;
/**
+ * Change a pixel
+ */
+ virtual void changePixel(uint16 *pixelP, uint16 color, int val3, int val5) = 0;
+
+ /**
* Shifts the colors of the surface.. maybe greys it out?
*/
virtual void shiftColors() = 0;
@@ -202,6 +207,18 @@ public:
};
class OSVideoSurface : public CVideoSurface {
+private:
+ static byte _map[0x400];
+
+ /**
+ * Setup the color mapping table
+ */
+ static void setupMap(byte map[0x400], byte val);
+public:
+ /**
+ * Setup statics
+ */
+ static void setup() { setupMap(_map, 0xff); }
public:
OSVideoSurface(CScreenManager *screenManager, DirectDrawSurface *surface);
OSVideoSurface(CScreenManager *screenManager, const CResourceKey &key, bool flag = false);
@@ -272,6 +289,11 @@ public:
virtual uint16 getPixel(const Common::Point &pt);
/**
+ * Change a pixel
+ */
+ virtual void changePixel(uint16 *pixelP, uint16 color, int val3, int val5);
+
+ /**
* Shifts the colors of the surface.. maybe greys it out?
*/
virtual void shiftColors();