aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics
diff options
context:
space:
mode:
authorMartin Kiewitz2010-01-31 16:21:11 +0000
committerMartin Kiewitz2010-01-31 16:21:11 +0000
commit72c2d360f748d5c9934db2edf3c672bac7b1e165 (patch)
tree6b9582f574bf3895f7418c083ce7b94ad1eda4b5 /engines/sci/graphics
parentc991a5bcebd9c46070e41361855969bed9754e57 (diff)
downloadscummvm-rg350-72c2d360f748d5c9934db2edf3c672bac7b1e165.tar.gz
scummvm-rg350-72c2d360f748d5c9934db2edf3c672bac7b1e165.tar.bz2
scummvm-rg350-72c2d360f748d5c9934db2edf3c672bac7b1e165.zip
SCI: renamed SciPalette to GfxPalette, Screen to GfxScreen, GfxPalette is now called directly w/o SciGui
svn-id: r47752
Diffstat (limited to 'engines/sci/graphics')
-rw-r--r--engines/sci/graphics/animate.cpp2
-rw-r--r--engines/sci/graphics/animate.h6
-rw-r--r--engines/sci/graphics/cache.cpp2
-rw-r--r--engines/sci/graphics/cache.h6
-rw-r--r--engines/sci/graphics/compare.cpp2
-rw-r--r--engines/sci/graphics/compare.h4
-rw-r--r--engines/sci/graphics/cursor.cpp2
-rw-r--r--engines/sci/graphics/cursor.h6
-rw-r--r--engines/sci/graphics/font.cpp2
-rw-r--r--engines/sci/graphics/font.h2
-rw-r--r--engines/sci/graphics/gui.cpp43
-rw-r--r--engines/sci/graphics/gui.h23
-rw-r--r--engines/sci/graphics/gui32.cpp2
-rw-r--r--engines/sci/graphics/gui32.h6
-rw-r--r--engines/sci/graphics/menu.cpp2
-rw-r--r--engines/sci/graphics/menu.h4
-rw-r--r--engines/sci/graphics/paint16.cpp2
-rw-r--r--engines/sci/graphics/paint16.h6
-rw-r--r--engines/sci/graphics/palette.cpp64
-rw-r--r--engines/sci/graphics/palette.h20
-rw-r--r--engines/sci/graphics/picture.cpp2
-rw-r--r--engines/sci/graphics/picture.h6
-rw-r--r--engines/sci/graphics/portrait.cpp2
-rw-r--r--engines/sci/graphics/portrait.h6
-rw-r--r--engines/sci/graphics/ports.cpp2
-rw-r--r--engines/sci/graphics/ports.h4
-rw-r--r--engines/sci/graphics/robot.cpp2
-rw-r--r--engines/sci/graphics/robot.h4
-rw-r--r--engines/sci/graphics/screen.cpp62
-rw-r--r--engines/sci/graphics/screen.h6
-rw-r--r--engines/sci/graphics/text.cpp2
-rw-r--r--engines/sci/graphics/text.h4
-rw-r--r--engines/sci/graphics/transitions.cpp4
-rw-r--r--engines/sci/graphics/transitions.h6
-rw-r--r--engines/sci/graphics/view.cpp2
-rw-r--r--engines/sci/graphics/view.h6
36 files changed, 141 insertions, 185 deletions
diff --git a/engines/sci/graphics/animate.cpp b/engines/sci/graphics/animate.cpp
index 57b9226c02..9a3e96b4c5 100644
--- a/engines/sci/graphics/animate.cpp
+++ b/engines/sci/graphics/animate.cpp
@@ -42,7 +42,7 @@
namespace Sci {
-GfxAnimate::GfxAnimate(EngineState *state, GfxCache *cache, GfxPorts *ports, GfxPaint16 *paint16, Screen *screen, SciPalette *palette, Cursor *cursor, Transitions *transitions)
+GfxAnimate::GfxAnimate(EngineState *state, GfxCache *cache, GfxPorts *ports, GfxPaint16 *paint16, GfxScreen *screen, GfxPalette *palette, Cursor *cursor, Transitions *transitions)
: _s(state), _cache(cache), _ports(ports), _paint16(paint16), _screen(screen), _palette(palette), _cursor(cursor), _transitions(transitions) {
init();
}
diff --git a/engines/sci/graphics/animate.h b/engines/sci/graphics/animate.h
index fccd96391c..7d421c5b8c 100644
--- a/engines/sci/graphics/animate.h
+++ b/engines/sci/graphics/animate.h
@@ -64,7 +64,7 @@ class SciPalette;
class Transitions;
class GfxAnimate {
public:
- GfxAnimate(EngineState *state, GfxCache *cache, GfxPorts *ports, GfxPaint16 *paint16, Screen *screen, SciPalette *palette, Cursor *cursor, Transitions *transitions);
+ GfxAnimate(EngineState *state, GfxCache *cache, GfxPorts *ports, GfxPaint16 *paint16, GfxScreen *screen, GfxPalette *palette, Cursor *cursor, Transitions *transitions);
~GfxAnimate();
// FIXME: Don't store EngineState
@@ -98,8 +98,8 @@ private:
GfxCache *_cache;
GfxPorts *_ports;
GfxPaint16 *_paint16;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
Cursor *_cursor;
Transitions *_transitions;
diff --git a/engines/sci/graphics/cache.cpp b/engines/sci/graphics/cache.cpp
index 2d204a2314..bce467a480 100644
--- a/engines/sci/graphics/cache.cpp
+++ b/engines/sci/graphics/cache.cpp
@@ -36,7 +36,7 @@
namespace Sci {
-GfxCache::GfxCache(ResourceManager *resMan, Screen *screen, SciPalette *palette)
+GfxCache::GfxCache(ResourceManager *resMan, GfxScreen *screen, GfxPalette *palette)
: _resMan(resMan), _screen(screen), _palette(palette) {
}
diff --git a/engines/sci/graphics/cache.h b/engines/sci/graphics/cache.h
index 1585003d0e..804ce810e4 100644
--- a/engines/sci/graphics/cache.h
+++ b/engines/sci/graphics/cache.h
@@ -39,7 +39,7 @@ typedef Common::HashMap<int, View *> ViewCache;
class GfxCache {
public:
- GfxCache(ResourceManager *resMan, Screen *screen, SciPalette *palette);
+ GfxCache(ResourceManager *resMan, GfxScreen *screen, GfxPalette *palette);
~GfxCache();
View *getView(GuiResourceId viewNum);
@@ -48,8 +48,8 @@ private:
void purgeCache();
ResourceManager *_resMan;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
ViewCache _cachedViews;
};
diff --git a/engines/sci/graphics/compare.cpp b/engines/sci/graphics/compare.cpp
index e00fd52cba..a80309ab81 100644
--- a/engines/sci/graphics/compare.cpp
+++ b/engines/sci/graphics/compare.cpp
@@ -38,7 +38,7 @@
namespace Sci {
-GfxCompare::GfxCompare(SegManager *segMan, Kernel *kernel, GfxCache *cache, Screen *screen)
+GfxCompare::GfxCompare(SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxScreen *screen)
: _segMan(segMan), _kernel(kernel), _cache(cache), _screen(screen) {
}
diff --git a/engines/sci/graphics/compare.h b/engines/sci/graphics/compare.h
index f759aad0aa..7de0a3bfeb 100644
--- a/engines/sci/graphics/compare.h
+++ b/engines/sci/graphics/compare.h
@@ -36,7 +36,7 @@ class Screen;
class GfxCompare {
public:
- GfxCompare(SegManager *segMan, Kernel *kernel, GfxCache *cache, Screen *screen);
+ GfxCompare(SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxScreen *screen);
~GfxCompare();
uint16 onControl(uint16 screenMask, Common::Rect rect);
@@ -47,7 +47,7 @@ private:
SegManager *_segMan;
Kernel *_kernel;
GfxCache *_cache;
- Screen *_screen;
+ GfxScreen *_screen;
};
} // End of namespace Sci
diff --git a/engines/sci/graphics/cursor.cpp b/engines/sci/graphics/cursor.cpp
index e0e5a8893e..31b09d92a3 100644
--- a/engines/sci/graphics/cursor.cpp
+++ b/engines/sci/graphics/cursor.cpp
@@ -36,7 +36,7 @@
namespace Sci {
-Cursor::Cursor(ResourceManager *resMan, SciPalette *palette, Screen *screen)
+Cursor::Cursor(ResourceManager *resMan, GfxPalette *palette, GfxScreen *screen)
: _resMan(resMan), _palette(palette), _screen(screen) {
_upscaledHires = _screen->getUpscaledHires();
diff --git a/engines/sci/graphics/cursor.h b/engines/sci/graphics/cursor.h
index 087772fc98..c89caacd82 100644
--- a/engines/sci/graphics/cursor.h
+++ b/engines/sci/graphics/cursor.h
@@ -42,7 +42,7 @@ typedef Common::HashMap<int, View *> CursorCache;
class Cursor {
public:
- Cursor(ResourceManager *resMan, SciPalette *palette, Screen *screen);
+ Cursor(ResourceManager *resMan, GfxPalette *palette, GfxScreen *screen);
~Cursor();
void show();
@@ -65,8 +65,8 @@ private:
void purgeCache();
ResourceManager *_resMan;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
bool _upscaledHires;
diff --git a/engines/sci/graphics/font.cpp b/engines/sci/graphics/font.cpp
index b7ffec522b..82c949f88d 100644
--- a/engines/sci/graphics/font.cpp
+++ b/engines/sci/graphics/font.cpp
@@ -78,7 +78,7 @@ byte *Font::getCharData(byte chr) {
return chr < _numChars ? _resourceData + _chars[chr].offset + 2 : 0;
}
-void Font::draw(Screen *screen, int16 chr, int16 top, int16 left, byte color, bool greyedOutput) {
+void Font::draw(GfxScreen *screen, int16 chr, int16 top, int16 left, byte color, bool greyedOutput) {
int charWidth = MIN<int>(getCharWidth(chr), screen->getWidth() - left);
int charHeight = MIN<int>(getCharHeight(chr), screen->getHeight() - top);
byte b = 0, mask = 0xFF;
diff --git a/engines/sci/graphics/font.h b/engines/sci/graphics/font.h
index 102b8ac92d..65406c907a 100644
--- a/engines/sci/graphics/font.h
+++ b/engines/sci/graphics/font.h
@@ -40,7 +40,7 @@ public:
byte getCharWidth(byte chr);
byte getCharHeight(byte chr);
byte *getCharData(byte chr);
- void draw(Screen *screen, int16 chr, int16 top, int16 left, byte color, bool greyedOutput);
+ void draw(GfxScreen *screen, int16 chr, int16 top, int16 left, byte color, bool greyedOutput);
private:
ResourceManager *_resMan;
diff --git a/engines/sci/graphics/gui.cpp b/engines/sci/graphics/gui.cpp
index a122e2180a..9b7ef36f1a 100644
--- a/engines/sci/graphics/gui.cpp
+++ b/engines/sci/graphics/gui.cpp
@@ -50,7 +50,7 @@
namespace Sci {
-SciGui::SciGui(EngineState *state, Screen *screen, SciPalette *palette, Cursor *cursor, GfxPorts *ports, AudioPlayer *audio)
+SciGui::SciGui(EngineState *state, GfxScreen *screen, GfxPalette *palette, Cursor *cursor, GfxPorts *ports, AudioPlayer *audio)
: _s(state), _screen(screen), _palette(palette), _cursor(cursor), _ports(ports), _audio(audio) {
_cache = new GfxCache(_s->resMan, _screen, _palette);
@@ -507,45 +507,6 @@ int16 SciGui::picNotValid(int16 newPicNotValid) {
}
-void SciGui::paletteSet(GuiResourceId resourceId, bool force) {
- // we are also called on EGA games as well, this doesnt make sense. doing this would actually break the system EGA palette
- if (!_s->resMan->isVGA())
- return;
- _palette->setFromResource(resourceId, force);
-}
-
-void SciGui::paletteSetFlag(uint16 fromColor, uint16 toColor, uint16 flag) {
- _palette->setFlag(fromColor, toColor, flag);
-}
-
-void SciGui::paletteUnsetFlag(uint16 fromColor, uint16 toColor, uint16 flag) {
- _palette->unsetFlag(fromColor, toColor, flag);
-}
-
-int16 SciGui::paletteFind(uint16 r, uint16 g, uint16 b) {
- return _palette->matchColor(&_palette->_sysPalette, r, g, b) & 0xFF;
-}
-
-void SciGui::paletteSetIntensity(uint16 fromColor, uint16 toColor, uint16 intensity, bool setPalette) {
- // we are also called on Amiga as well, but for colors above 32, so it doesnt make sense
- if (!_s->resMan->isVGA())
- return;
-
- _palette->setIntensity(fromColor, toColor, intensity, setPalette);
-}
-
-bool SciGui::paletteAnimate(uint16 fromColor, uint16 toColor, int16 speed) {
- // we are also called on Amiga as well, but for colors above 32, so it doesnt make sense
- if (!_s->resMan->isVGA())
- return false;
-
- return _palette->animate(fromColor, toColor, speed);
-}
-
-void SciGui::paletteAnimateSet() {
- _palette->setOnScreen();
-}
-
void SciGui::shakeScreen(uint16 shakeCount, uint16 directions) {
while (shakeCount--) {
if (directions & SCI_SHAKE_DIRECTION_VERTICAL)
@@ -755,7 +716,7 @@ void SciGui::stopPalVary() {
_palVaryId = -1; // invalidate the target palette
// HACK: just set the target palette
- _palette->setFromResource(_palVaryId, true);
+ _palette->kernelSetFromResource(_palVaryId, true);
}
void SciGui::palVaryCallback(void *refCon) {
diff --git a/engines/sci/graphics/gui.h b/engines/sci/graphics/gui.h
index 184e2607d7..4242ecbdda 100644
--- a/engines/sci/graphics/gui.h
+++ b/engines/sci/graphics/gui.h
@@ -42,7 +42,7 @@ enum {
};
class Screen;
-class SciPalette;
+class GfxPalette;
class Cursor;
class GfxCache;
class GfxCompare;
@@ -57,24 +57,17 @@ class Transitions;
class SciGui {
public:
- SciGui(EngineState *s, Screen *screen, SciPalette *palette, Cursor *cursor, GfxPorts *ports, AudioPlayer *audio);
+ SciGui(EngineState *s, GfxScreen *screen, GfxPalette *palette, Cursor *cursor, GfxPorts *ports, AudioPlayer *audio);
virtual ~SciGui();
virtual void init(bool usesOldGfxFunctions);
virtual void wait(int16 ticks);
- // virtual void setPort(uint16 portPtr);
- // virtual Common::Rect getPortPic(int16 &picTop, int16 &picLeft);
- // virtual void setPortPic(Common::Rect rect, int16 picTop, int16 picLeft, bool initPriorityBandsFlag);
- // virtual reg_t getPort();
virtual void globalToLocal(int16 *x, int16 *y);
virtual void localToGlobal(int16 *x, int16 *y);
virtual int16 coordinateToPriority(int16 y);
virtual int16 priorityToCoordinate(int16 priority);
- // virtual reg_t newWindow(Common::Rect dims, Common::Rect restoreRect, uint16 style, int16 priority, int16 colorPen, int16 colorBack, const char *title);
- // virtual void disposeWindow(uint16 windowPtr, bool reanimate);
-
virtual void display(const char *text, int argc, reg_t *argv);
virtual void textSize(const char *text, int16 font, int16 maxWidth, int16 *textWidth, int16 *textHeight);
@@ -112,14 +105,6 @@ public:
virtual int16 picNotValid(int16 newPicNotValid);
- virtual void paletteSet(GuiResourceId resourceNo, bool force);
- virtual void paletteSetFlag(uint16 fromColor, uint16 toColor, uint16 flag);
- virtual void paletteUnsetFlag(uint16 fromColor, uint16 toColor, uint16 flag);
- virtual int16 paletteFind(uint16 r, uint16 g, uint16 b);
- virtual void paletteSetIntensity(uint16 fromColor, uint16 toColor, uint16 intensity, bool setPalette);
- virtual bool paletteAnimate(uint16 fromColor, uint16 toColor, int16 speed);
- virtual void paletteAnimateSet();
-
virtual void shakeScreen(uint16 shakeCount, uint16 directions);
virtual uint16 onControl(byte screenMask, Common::Rect rect);
@@ -164,8 +149,8 @@ public:
protected:
Cursor *_cursor;
EngineState *_s;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
GfxCache *_cache;
GfxCompare *_compare;
GfxPorts *_ports;
diff --git a/engines/sci/graphics/gui32.cpp b/engines/sci/graphics/gui32.cpp
index 781b346480..f690ec68da 100644
--- a/engines/sci/graphics/gui32.cpp
+++ b/engines/sci/graphics/gui32.cpp
@@ -44,7 +44,7 @@
namespace Sci {
-SciGui32::SciGui32(EngineState *state, Screen *screen, SciPalette *palette, Cursor *cursor)
+SciGui32::SciGui32(EngineState *state, GfxScreen *screen, GfxPalette *palette, Cursor *cursor)
: _s(state), _screen(screen), _palette(palette), _cursor(cursor) {
_cache = new GfxCache(_s->resMan, _screen, _palette);
diff --git a/engines/sci/graphics/gui32.h b/engines/sci/graphics/gui32.h
index a336290776..1484af4219 100644
--- a/engines/sci/graphics/gui32.h
+++ b/engines/sci/graphics/gui32.h
@@ -39,7 +39,7 @@ class Text;
class SciGui32 {
public:
- SciGui32(EngineState *s, Screen *screen, SciPalette *palette, Cursor *cursor);
+ SciGui32(EngineState *s, GfxScreen *screen, GfxPalette *palette, Cursor *cursor);
~SciGui32();
void init();
@@ -91,8 +91,8 @@ public:
protected:
Cursor *_cursor;
EngineState *_s;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
GfxCache *_cache;
GfxCompare *_compare;
diff --git a/engines/sci/graphics/menu.cpp b/engines/sci/graphics/menu.cpp
index 0695d98f62..81edcef280 100644
--- a/engines/sci/graphics/menu.cpp
+++ b/engines/sci/graphics/menu.cpp
@@ -43,7 +43,7 @@
namespace Sci {
-Menu::Menu(SciEvent *event, SegManager *segMan, SciGui *gui, GfxPorts *ports, GfxPaint16 *paint16, Text *text, Screen *screen, Cursor *cursor)
+Menu::Menu(SciEvent *event, SegManager *segMan, SciGui *gui, GfxPorts *ports, GfxPaint16 *paint16, Text *text, GfxScreen *screen, Cursor *cursor)
: _event(event), _segMan(segMan), _gui(gui), _ports(ports), _paint16(paint16), _text(text), _screen(screen), _cursor(cursor) {
_listCount = 0;
diff --git a/engines/sci/graphics/menu.h b/engines/sci/graphics/menu.h
index 2446ba40cf..05ac89abaa 100644
--- a/engines/sci/graphics/menu.h
+++ b/engines/sci/graphics/menu.h
@@ -78,7 +78,7 @@ typedef Common::List<GuiMenuItemEntry *> GuiMenuItemList;
class Menu {
public:
- Menu(SciEvent *event, SegManager *segMan, SciGui *gui, GfxPorts *ports, GfxPaint16 *paint16, Text *text, Screen *screen, Cursor *cursor);
+ Menu(SciEvent *event, SegManager *segMan, SciGui *gui, GfxPorts *ports, GfxPaint16 *paint16, Text *text, GfxScreen *screen, Cursor *cursor);
~Menu();
void reset();
@@ -108,7 +108,7 @@ private:
GfxPorts *_ports;
GfxPaint16 *_paint16;
Text *_text;
- Screen *_screen;
+ GfxScreen *_screen;
Cursor *_cursor;
uint16 _listCount;
diff --git a/engines/sci/graphics/paint16.cpp b/engines/sci/graphics/paint16.cpp
index 539059c4d2..184c50b8cb 100644
--- a/engines/sci/graphics/paint16.cpp
+++ b/engines/sci/graphics/paint16.cpp
@@ -43,7 +43,7 @@
namespace Sci {
-GfxPaint16::GfxPaint16(ResourceManager *resMan, SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxPorts *ports, Screen *screen, SciPalette *palette)
+GfxPaint16::GfxPaint16(ResourceManager *resMan, SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxPorts *ports, GfxScreen *screen, GfxPalette *palette)
: _resMan(resMan), _segMan(segMan), _kernel(kernel), _cache(cache), _ports(ports), _screen(screen), _palette(palette) {
}
diff --git a/engines/sci/graphics/paint16.h b/engines/sci/graphics/paint16.h
index 2a6f35a360..5a99c4f7ef 100644
--- a/engines/sci/graphics/paint16.h
+++ b/engines/sci/graphics/paint16.h
@@ -41,7 +41,7 @@ class View;
class GfxPaint16 {
public:
- GfxPaint16(ResourceManager *resMan, SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxPorts *ports, Screen *screen, SciPalette *palette);
+ GfxPaint16(ResourceManager *resMan, SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxPorts *ports, GfxScreen *screen, GfxPalette *palette);
~GfxPaint16();
void init(Text *text);
@@ -74,8 +74,8 @@ private:
Kernel *_kernel;
GfxCache *_cache;
GfxPorts *_ports;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
Text *_text;
// true means make EGA picture drawing visible
diff --git a/engines/sci/graphics/palette.cpp b/engines/sci/graphics/palette.cpp
index f18d51fd70..d2c485961b 100644
--- a/engines/sci/graphics/palette.cpp
+++ b/engines/sci/graphics/palette.cpp
@@ -33,7 +33,7 @@
namespace Sci {
-SciPalette::SciPalette(ResourceManager *resMan, Screen *screen, bool autoSetPalette)
+GfxPalette::GfxPalette(ResourceManager *resMan, GfxScreen *screen, bool autoSetPalette)
: _resMan(resMan), _screen(screen) {
int16 color;
@@ -59,17 +59,17 @@ SciPalette::SciPalette(ResourceManager *resMan, Screen *screen, bool autoSetPale
else if (_resMan->isAmiga32color())
setAmiga();
else
- setFromResource(999, true);
+ kernelSetFromResource(999, true);
}
}
-SciPalette::~SciPalette() {
+GfxPalette::~GfxPalette() {
}
#define SCI_PAL_FORMAT_CONSTANT 1
#define SCI_PAL_FORMAT_VARIABLE 0
-void SciPalette::createFromData(byte *data, Palette *paletteOut) {
+void GfxPalette::createFromData(byte *data, Palette *paletteOut) {
int palFormat = 0;
int palOffset = 0;
int palColorStart = 0;
@@ -114,7 +114,7 @@ void SciPalette::createFromData(byte *data, Palette *paletteOut) {
}
// Will try to set amiga palette by using "spal" file. If not found, we return false
-bool SciPalette::setAmiga() {
+bool GfxPalette::setAmiga() {
Common::File file;
int curColor, byte1, byte2;
@@ -138,7 +138,7 @@ bool SciPalette::setAmiga() {
}
// Called from picture class, some amiga sci1 games set half of the palette
-void SciPalette::modifyAmigaPalette(byte *data) {
+void GfxPalette::modifyAmigaPalette(byte *data) {
int16 curColor, curPos = 0;
byte byte1, byte2;
for (curColor = 0; curColor < 16; curColor++) {
@@ -151,7 +151,7 @@ void SciPalette::modifyAmigaPalette(byte *data) {
_screen->setPalette(&_sysPalette);
}
-void SciPalette::setEGA() {
+void GfxPalette::setEGA() {
int curColor;
byte color1, color2;
@@ -185,19 +185,7 @@ void SciPalette::setEGA() {
setOnScreen();
}
-bool SciPalette::setFromResource(GuiResourceId resourceId, bool force) {
- Resource *palResource = _resMan->findResource(ResourceId(kResourceTypePalette, resourceId), 0);
- Palette palette;
-
- if (palResource) {
- createFromData(palResource->data, &palette);
- set(&palette, true);
- return true;
- }
- return false;
-}
-
-void SciPalette::set(Palette *sciPal, bool force, bool forceRealMerge) {
+void GfxPalette::set(Palette *sciPal, bool force, bool forceRealMerge) {
uint32 systime = _sysPalette.timestamp;
if (force || sciPal->timestamp != systime) {
merge(sciPal, &_sysPalette, force, forceRealMerge);
@@ -207,7 +195,7 @@ void SciPalette::set(Palette *sciPal, bool force, bool forceRealMerge) {
}
}
-void SciPalette::merge(Palette *pFrom, Palette *pTo, bool force, bool forceRealMerge) {
+void GfxPalette::merge(Palette *pFrom, Palette *pTo, bool force, bool forceRealMerge) {
uint16 res;
int i,j;
@@ -269,7 +257,7 @@ void SciPalette::merge(Palette *pFrom, Palette *pTo, bool force, bool forceRealM
pTo->timestamp = g_system->getMillis() * 60 / 1000;
}
-uint16 SciPalette::matchColor(Palette *pPal, byte r, byte g, byte b) {
+uint16 GfxPalette::matchColor(Palette *pPal, byte r, byte g, byte b) {
byte found = 0xFF;
int diff = 0x2FFFF, cdiff;
int16 dr,dg,db;
@@ -294,12 +282,12 @@ uint16 SciPalette::matchColor(Palette *pPal, byte r, byte g, byte b) {
return found;
}
-void SciPalette::getSys(Palette *pal) {
+void GfxPalette::getSys(Palette *pal) {
if (pal != &_sysPalette)
memcpy(pal, &_sysPalette,sizeof(Palette));
}
-void SciPalette::setOnScreen() {
+void GfxPalette::setOnScreen() {
// if (pal != &_sysPalette)
// memcpy(&_sysPalette,pal,sizeof(Palette));
// We dont change palette at all times for amiga
@@ -308,28 +296,44 @@ void SciPalette::setOnScreen() {
_screen->setPalette(&_sysPalette);
}
-void SciPalette::setFlag(uint16 fromColor, uint16 toColor, uint16 flag) {
+bool GfxPalette::kernelSetFromResource(GuiResourceId resourceId, bool force) {
+ Resource *palResource = _resMan->findResource(ResourceId(kResourceTypePalette, resourceId), 0);
+ Palette palette;
+
+ if (palResource) {
+ createFromData(palResource->data, &palette);
+ set(&palette, true);
+ return true;
+ }
+ return false;
+}
+
+void GfxPalette::kernelSetFlag(uint16 fromColor, uint16 toColor, uint16 flag) {
uint16 colorNr;
for (colorNr = fromColor; colorNr < toColor; colorNr++) {
_sysPalette.colors[colorNr].used |= flag;
}
}
-void SciPalette::unsetFlag(uint16 fromColor, uint16 toColor, uint16 flag) {
+void GfxPalette::kernelUnsetFlag(uint16 fromColor, uint16 toColor, uint16 flag) {
uint16 colorNr;
for (colorNr = fromColor; colorNr < toColor; colorNr++) {
_sysPalette.colors[colorNr].used &= ~flag;
}
}
-void SciPalette::setIntensity(uint16 fromColor, uint16 toColor, uint16 intensity, bool setPalette) {
+void GfxPalette::kernelSetIntensity(uint16 fromColor, uint16 toColor, uint16 intensity, bool setPalette) {
memset(&_sysPalette.intensity[0] + fromColor, intensity, toColor - fromColor);
if (setPalette)
setOnScreen();
}
+int16 GfxPalette::kernelFind(uint16 r, uint16 g, uint16 b) {
+ return matchColor(&_sysPalette, r, g, b) & 0xFF;
+}
+
// Returns true, if palette got changed
-bool SciPalette::animate(byte fromColor, byte toColor, int speed) {
+bool GfxPalette::kernelAnimate(byte fromColor, byte toColor, int speed) {
Color col;
//byte colorNr;
int16 colorCount;
@@ -383,6 +387,10 @@ bool SciPalette::animate(byte fromColor, byte toColor, int speed) {
return false;
}
+void GfxPalette::kernelAnimateSet() {
+ setOnScreen();
+}
+
// palVary
// init - only does, if palVaryOn == false
// target, start, new palette allocation
diff --git a/engines/sci/graphics/palette.h b/engines/sci/graphics/palette.h
index b2d007c6b3..a7dfe2e837 100644
--- a/engines/sci/graphics/palette.h
+++ b/engines/sci/graphics/palette.h
@@ -31,16 +31,15 @@
namespace Sci {
class Screen;
-class SciPalette {
+class GfxPalette {
public:
- SciPalette(ResourceManager *resMan, Screen *screen, bool autoSetPalette = true);
- ~SciPalette();
+ GfxPalette(ResourceManager *resMan, GfxScreen *screen, bool autoSetPalette = true);
+ ~GfxPalette();
void createFromData(byte *data, Palette *paletteOut);
bool setAmiga();
void modifyAmigaPalette(byte *data);
void setEGA();
- bool setFromResource(GuiResourceId resourceId, bool force);
void set(Palette *sciPal, bool force, bool forceRealMerge = false);
void merge(Palette *pFrom, Palette *pTo, bool force, bool forceRealMerge);
uint16 matchColor(Palette *pPal, byte r, byte g, byte b);
@@ -48,15 +47,18 @@ public:
void setOnScreen();
- void setFlag(uint16 fromColor, uint16 toColor, uint16 flag);
- void unsetFlag(uint16 fromColor, uint16 toColor, uint16 flag);
- void setIntensity(uint16 fromColor, uint16 toColor, uint16 intensity, bool setPalette);
- bool animate(byte fromColor, byte toColor, int speed);
+ bool kernelSetFromResource(GuiResourceId resourceId, bool force);
+ void kernelSetFlag(uint16 fromColor, uint16 toColor, uint16 flag);
+ void kernelUnsetFlag(uint16 fromColor, uint16 toColor, uint16 flag);
+ void kernelSetIntensity(uint16 fromColor, uint16 toColor, uint16 intensity, bool setPalette);
+ int16 GfxPalette::kernelFind(uint16 r, uint16 g, uint16 b);
+ bool kernelAnimate(byte fromColor, byte toColor, int speed);
+ void kernelAnimateSet();
Palette _sysPalette;
private:
- Screen *_screen;
+ GfxScreen *_screen;
ResourceManager *_resMan;
Common::Array<PalSchedule> _schedules;
diff --git a/engines/sci/graphics/picture.cpp b/engines/sci/graphics/picture.cpp
index 9831a60c2c..1a2ae01c67 100644
--- a/engines/sci/graphics/picture.cpp
+++ b/engines/sci/graphics/picture.cpp
@@ -33,7 +33,7 @@
namespace Sci {
-SciGuiPicture::SciGuiPicture(ResourceManager *resMan, GfxPorts *ports, Screen *screen, SciPalette *palette, GuiResourceId resourceId, bool EGAdrawingVisualize)
+SciGuiPicture::SciGuiPicture(ResourceManager *resMan, GfxPorts *ports, GfxScreen *screen, GfxPalette *palette, GuiResourceId resourceId, bool EGAdrawingVisualize)
: _resMan(resMan), _ports(ports), _screen(screen), _palette(palette), _resourceId(resourceId), _EGAdrawingVisualize(EGAdrawingVisualize) {
assert(resourceId != -1);
initData(resourceId);
diff --git a/engines/sci/graphics/picture.h b/engines/sci/graphics/picture.h
index 34e8988bea..38dc17fed0 100644
--- a/engines/sci/graphics/picture.h
+++ b/engines/sci/graphics/picture.h
@@ -38,7 +38,7 @@ class SciPalette;
class SciGuiPicture {
public:
- SciGuiPicture(ResourceManager *resMan, GfxPorts *ports, Screen *screen, SciPalette *palette, GuiResourceId resourceId, bool EGAdrawingVisualize = false);
+ SciGuiPicture(ResourceManager *resMan, GfxPorts *ports, GfxScreen *screen, GfxPalette *palette, GuiResourceId resourceId, bool EGAdrawingVisualize = false);
~SciGuiPicture();
GuiResourceId getResourceId();
@@ -68,8 +68,8 @@ private:
ResourceManager *_resMan;
GfxPorts *_ports;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
int16 _resourceId;
Resource *_resource;
diff --git a/engines/sci/graphics/portrait.cpp b/engines/sci/graphics/portrait.cpp
index 808d2dc6aa..61c400d6e2 100644
--- a/engines/sci/graphics/portrait.cpp
+++ b/engines/sci/graphics/portrait.cpp
@@ -38,7 +38,7 @@
namespace Sci {
-Portrait::Portrait(ResourceManager *resMan, SciEvent *event, SciGui *gui, Screen *screen, SciPalette *palette, AudioPlayer *audio, Common::String resourceName)
+Portrait::Portrait(ResourceManager *resMan, SciEvent *event, SciGui *gui, GfxScreen *screen, GfxPalette *palette, AudioPlayer *audio, Common::String resourceName)
: _resMan(resMan), _event(event), _gui(gui), _screen(screen), _palette(palette), _audio(audio), _resourceName(resourceName) {
init();
}
diff --git a/engines/sci/graphics/portrait.h b/engines/sci/graphics/portrait.h
index 5053df8b7c..4b22e209a3 100644
--- a/engines/sci/graphics/portrait.h
+++ b/engines/sci/graphics/portrait.h
@@ -42,7 +42,7 @@ struct PortraitBitmap {
*/
class Portrait {
public:
- Portrait(ResourceManager *resMan, SciEvent *event, SciGui *gui, Screen *screen, SciPalette *palette, AudioPlayer *audio, Common::String resourceName);
+ Portrait(ResourceManager *resMan, SciEvent *event, SciGui *gui, GfxScreen *screen, GfxPalette *palette, AudioPlayer *audio, Common::String resourceName);
~Portrait();
void setupAudio(uint16 resourceId, uint16 noun, uint16 verb, uint16 cond, uint16 seq);
@@ -58,8 +58,8 @@ private:
ResourceManager *_resMan;
SciEvent *_event;
SciGui *_gui;
- SciPalette *_palette;
- Screen *_screen;
+ GfxPalette *_palette;
+ GfxScreen *_screen;
AudioPlayer *_audio;
uint16 _height;
diff --git a/engines/sci/graphics/ports.cpp b/engines/sci/graphics/ports.cpp
index 2b4a9c9afa..f834e93541 100644
--- a/engines/sci/graphics/ports.cpp
+++ b/engines/sci/graphics/ports.cpp
@@ -44,7 +44,7 @@ enum {
SCI_WINDOWMGR_STYLE_USER = (1 << 7)
};
-GfxPorts::GfxPorts(SegManager *segMan, Screen *screen)
+GfxPorts::GfxPorts(SegManager *segMan, GfxScreen *screen)
: _segMan(segMan), _screen(screen) {
}
diff --git a/engines/sci/graphics/ports.h b/engines/sci/graphics/ports.h
index a200748e4f..d6b6000c51 100644
--- a/engines/sci/graphics/ports.h
+++ b/engines/sci/graphics/ports.h
@@ -38,7 +38,7 @@ class Text;
class GfxPorts {
public:
- GfxPorts(SegManager *segMan, Screen *screen);
+ GfxPorts(SegManager *segMan, GfxScreen *screen);
~GfxPorts();
void init(SciGui *gui, GfxPaint16 *paint16, Text *text, Common::String gameId);
@@ -97,7 +97,7 @@ private:
SegManager *_segMan;
SciGui *_gui;
GfxPaint16 *_paint16;
- Screen *_screen;
+ GfxScreen *_screen;
Text *_text;
/** The list of open 'windows' (and ports), in visual order. */
diff --git a/engines/sci/graphics/robot.cpp b/engines/sci/graphics/robot.cpp
index 0f880b40a2..7465ec5a45 100644
--- a/engines/sci/graphics/robot.cpp
+++ b/engines/sci/graphics/robot.cpp
@@ -31,7 +31,7 @@
namespace Sci {
#ifdef ENABLE_SCI32
-Robot::Robot(ResourceManager *resMan, Screen *screen, GuiResourceId resourceId)
+Robot::Robot(ResourceManager *resMan, GfxScreen *screen, GuiResourceId resourceId)
: _resMan(resMan), _screen(screen), _resourceId(resourceId) {
assert(resourceId != -1);
initData(resourceId);
diff --git a/engines/sci/graphics/robot.h b/engines/sci/graphics/robot.h
index 725e30df63..009b76a91c 100644
--- a/engines/sci/graphics/robot.h
+++ b/engines/sci/graphics/robot.h
@@ -33,7 +33,7 @@ namespace Sci {
#ifdef ENABLE_SCI32
class Robot {
public:
- Robot(ResourceManager *resMan, Screen *screen, GuiResourceId resourceId);
+ Robot(ResourceManager *resMan, GfxScreen *screen, GuiResourceId resourceId);
~Robot();
void draw();
@@ -42,7 +42,7 @@ private:
void initData(GuiResourceId resourceId);
ResourceManager *_resMan;
- Screen *_screen;
+ GfxScreen *_screen;
GuiResourceId _resourceId;
Resource *_resource;
diff --git a/engines/sci/graphics/screen.cpp b/engines/sci/graphics/screen.cpp
index 6d9cd0cbd8..82d15df9dd 100644
--- a/engines/sci/graphics/screen.cpp
+++ b/engines/sci/graphics/screen.cpp
@@ -33,7 +33,7 @@
namespace Sci {
-Screen::Screen(ResourceManager *resMan, int16 width, int16 height, bool upscaledHires) :
+GfxScreen::GfxScreen(ResourceManager *resMan, int16 width, int16 height, bool upscaledHires) :
_resMan(resMan), _width(width), _height(height), _upscaledHires(upscaledHires) {
_pixels = _width * _height;
@@ -75,32 +75,32 @@ Screen::Screen(ResourceManager *resMan, int16 width, int16 height, bool upscaled
initGraphics(_displayWidth, _displayHeight, _displayWidth > 320);
}
-Screen::~Screen() {
+GfxScreen::~GfxScreen() {
free(_visualScreen);
free(_priorityScreen);
free(_controlScreen);
free(_displayScreen);
}
-void Screen::copyToScreen() {
+void GfxScreen::copyToScreen() {
g_system->copyRectToScreen(_activeScreen, _displayWidth, 0, 0, _displayWidth, _displayHeight);
}
-void Screen::copyFromScreen(byte *buffer) {
+void GfxScreen::copyFromScreen(byte *buffer) {
Graphics::Surface *screen;
screen = g_system->lockScreen();
memcpy(buffer, screen->pixels, _displayWidth * _displayHeight);
g_system->unlockScreen();
}
-void Screen::syncWithFramebuffer() {
+void GfxScreen::syncWithFramebuffer() {
Graphics::Surface *screen = g_system->lockScreen();
memcpy(_displayScreen, screen->pixels, _displayPixels);
g_system->unlockScreen();
}
-void Screen::copyRectToScreen(const Common::Rect &rect) {
+void GfxScreen::copyRectToScreen(const Common::Rect &rect) {
if (!_upscaledHires) {
g_system->copyRectToScreen(_activeScreen + rect.top * _displayWidth + rect.left, _displayWidth, rect.left, rect.top, rect.width(), rect.height());
} else {
@@ -109,13 +109,13 @@ void Screen::copyRectToScreen(const Common::Rect &rect) {
}
// This copies a rect to screen w/o scaling adjustment and is only meant to be used on hires graphics used in upscaled hires mode
-void Screen::copyDisplayRectToScreen(const Common::Rect &rect) {
+void GfxScreen::copyDisplayRectToScreen(const Common::Rect &rect) {
if (!_upscaledHires)
error("copyDisplayRectToScreen: not in upscaled hires mode");
g_system->copyRectToScreen(_activeScreen + rect.top * _displayWidth + rect.left, _displayWidth, rect.left, rect.top, rect.width(), rect.height());
}
-void Screen::copyRectToScreen(const Common::Rect &rect, int16 x, int16 y) {
+void GfxScreen::copyRectToScreen(const Common::Rect &rect, int16 x, int16 y) {
if (!_upscaledHires) {
g_system->copyRectToScreen(_activeScreen + rect.top * _displayWidth + rect.left, _displayWidth, x, y, rect.width(), rect.height());
} else {
@@ -123,7 +123,7 @@ void Screen::copyRectToScreen(const Common::Rect &rect, int16 x, int16 y) {
}
}
-byte Screen::getDrawingMask(byte color, byte prio, byte control) {
+byte GfxScreen::getDrawingMask(byte color, byte prio, byte control) {
byte flag = 0;
if (color != 255)
flag |= SCI_SCREEN_MASK_VISUAL;
@@ -134,7 +134,7 @@ byte Screen::getDrawingMask(byte color, byte prio, byte control) {
return flag;
}
-void Screen::putPixel(int x, int y, byte drawMask, byte color, byte priority, byte control) {
+void GfxScreen::putPixel(int x, int y, byte drawMask, byte color, byte priority, byte control) {
int offset = y * _width + x;
if (drawMask & SCI_SCREEN_MASK_VISUAL) {
@@ -157,14 +157,14 @@ void Screen::putPixel(int x, int y, byte drawMask, byte color, byte priority, by
// This will just change a pixel directly on displayscreen. Its supposed to get only used on upscaled-Hires games where
// hires content needs to get drawn ONTO the upscaled display screen (like japanese fonts, hires portraits, etc.)
-void Screen::putPixelOnDisplay(int x, int y, byte color) {
+void GfxScreen::putPixelOnDisplay(int x, int y, byte color) {
int offset = y * _displayWidth + x;
_displayScreen[offset] = color;
}
// Sierra's Bresenham line drawing
// WARNING: Do not just blindly replace this with Graphics::drawLine(), as it seems to create issues with flood fill
-void Screen::drawLine(Common::Point startPoint, Common::Point endPoint, byte color, byte priority, byte control) {
+void GfxScreen::drawLine(Common::Point startPoint, Common::Point endPoint, byte color, byte priority, byte control) {
int16 left = startPoint.x;
int16 top = startPoint.y;
int16 right = endPoint.x;
@@ -226,19 +226,19 @@ void Screen::drawLine(Common::Point startPoint, Common::Point endPoint, byte col
}
}
-byte Screen::getVisual(int x, int y) {
+byte GfxScreen::getVisual(int x, int y) {
return _visualScreen[y * _width + x];
}
-byte Screen::getPriority(int x, int y) {
+byte GfxScreen::getPriority(int x, int y) {
return _priorityScreen[y * _width + x];
}
-byte Screen::getControl(int x, int y) {
+byte GfxScreen::getControl(int x, int y) {
return _controlScreen[y * _width + x];
}
-byte Screen::isFillMatch(int16 x, int16 y, byte screenMask, byte t_color, byte t_pri, byte t_con) {
+byte GfxScreen::isFillMatch(int16 x, int16 y, byte screenMask, byte t_color, byte t_pri, byte t_con) {
int offset = y * _width + x;
byte match = 0;
@@ -251,7 +251,7 @@ byte Screen::isFillMatch(int16 x, int16 y, byte screenMask, byte t_color, byte t
return match;
}
-int Screen::bitsGetDataSize(Common::Rect rect, byte mask) {
+int GfxScreen::bitsGetDataSize(Common::Rect rect, byte mask) {
int byteCount = sizeof(rect) + sizeof(mask);
int pixels = rect.width() * rect.height();
if (mask & SCI_SCREEN_MASK_VISUAL) {
@@ -277,7 +277,7 @@ int Screen::bitsGetDataSize(Common::Rect rect, byte mask) {
return byteCount;
}
-void Screen::bitsSave(Common::Rect rect, byte mask, byte *memoryPtr) {
+void GfxScreen::bitsSave(Common::Rect rect, byte mask, byte *memoryPtr) {
memcpy(memoryPtr, (void *)&rect, sizeof(rect)); memoryPtr += sizeof(rect);
memcpy(memoryPtr, (void *)&mask, sizeof(mask)); memoryPtr += sizeof(mask);
@@ -298,7 +298,7 @@ void Screen::bitsSave(Common::Rect rect, byte mask, byte *memoryPtr) {
}
}
-void Screen::bitsSaveScreen(Common::Rect rect, byte *screen, uint16 screenWidth, byte *&memoryPtr) {
+void GfxScreen::bitsSaveScreen(Common::Rect rect, byte *screen, uint16 screenWidth, byte *&memoryPtr) {
int width = rect.width();
int y;
@@ -310,7 +310,7 @@ void Screen::bitsSaveScreen(Common::Rect rect, byte *screen, uint16 screenWidth,
}
}
-void Screen::bitsSaveDisplayScreen(Common::Rect rect, byte *&memoryPtr) {
+void GfxScreen::bitsSaveDisplayScreen(Common::Rect rect, byte *&memoryPtr) {
byte *screen = _displayScreen;
int width = rect.width();
int y;
@@ -329,11 +329,11 @@ void Screen::bitsSaveDisplayScreen(Common::Rect rect, byte *&memoryPtr) {
}
}
-void Screen::bitsGetRect(byte *memoryPtr, Common::Rect *destRect) {
+void GfxScreen::bitsGetRect(byte *memoryPtr, Common::Rect *destRect) {
memcpy((void *)destRect, memoryPtr, sizeof(Common::Rect));
}
-void Screen::bitsRestore(byte *memoryPtr) {
+void GfxScreen::bitsRestore(byte *memoryPtr) {
Common::Rect rect;
byte mask;
@@ -357,7 +357,7 @@ void Screen::bitsRestore(byte *memoryPtr) {
}
}
-void Screen::bitsRestoreScreen(Common::Rect rect, byte *&memoryPtr, byte *screen, uint16 screenWidth) {
+void GfxScreen::bitsRestoreScreen(Common::Rect rect, byte *&memoryPtr, byte *screen, uint16 screenWidth) {
int width = rect.width();
int y;
@@ -369,7 +369,7 @@ void Screen::bitsRestoreScreen(Common::Rect rect, byte *&memoryPtr, byte *screen
}
}
-void Screen::bitsRestoreDisplayScreen(Common::Rect rect, byte *&memoryPtr) {
+void GfxScreen::bitsRestoreDisplayScreen(Common::Rect rect, byte *&memoryPtr) {
byte *screen = _displayScreen;
int width = rect.width();
int y;
@@ -388,7 +388,7 @@ void Screen::bitsRestoreDisplayScreen(Common::Rect rect, byte *&memoryPtr) {
}
}
-void Screen::setPalette(Palette*pal) {
+void GfxScreen::setPalette(Palette*pal) {
// just copy palette to system
byte bpal[4 * 256];
// Get current palette, update it and put back
@@ -404,14 +404,14 @@ void Screen::setPalette(Palette*pal) {
g_system->setPalette(bpal, 0, 256);
}
-void Screen::setVerticalShakePos(uint16 shakePos) {
+void GfxScreen::setVerticalShakePos(uint16 shakePos) {
if (!_upscaledHires)
g_system->setShakePos(shakePos);
else
g_system->setShakePos(shakePos * 2);
}
-void Screen::dither(bool addToFlag) {
+void GfxScreen::dither(bool addToFlag) {
int y, x;
byte color, ditheredColor;
byte *visualPtr = _visualScreen;
@@ -477,18 +477,18 @@ void Screen::dither(bool addToFlag) {
}
}
-void Screen::unditherSetState(bool flag) {
+void GfxScreen::unditherSetState(bool flag) {
_unditherState = flag;
}
-int16 *Screen::unditherGetMemorial() {
+int16 *GfxScreen::unditherGetMemorial() {
if (_unditherState)
return (int16 *)&_unditherMemorial;
else
return NULL;
}
-void Screen::debugShowMap(int mapNo) {
+void GfxScreen::debugShowMap(int mapNo) {
// We cannot really support changing maps when in upscaledHires mode
if (_upscaledHires)
return;
@@ -510,7 +510,7 @@ void Screen::debugShowMap(int mapNo) {
copyToScreen();
}
-void Screen::scale2x(byte *src, byte *dst, int16 srcWidth, int16 srcHeight) {
+void GfxScreen::scale2x(byte *src, byte *dst, int16 srcWidth, int16 srcHeight) {
int newWidth = srcWidth * 2;
byte *srcPtr = src;
diff --git a/engines/sci/graphics/screen.h b/engines/sci/graphics/screen.h
index fcf8b2b002..63ae0afcea 100644
--- a/engines/sci/graphics/screen.h
+++ b/engines/sci/graphics/screen.h
@@ -41,10 +41,10 @@ namespace Sci {
#define SCI_SCREEN_UNDITHERMEMORIAL_SIZE 256
-class Screen {
+class GfxScreen {
public:
- Screen(ResourceManager *resMan, int16 width = 320, int16 height = 200, bool upscaledHires = false);
- ~Screen();
+ GfxScreen(ResourceManager *resMan, int16 width = 320, int16 height = 200, bool upscaledHires = false);
+ ~GfxScreen();
uint16 getWidth() { return _width; };
uint16 getHeight() { return _height; };
diff --git a/engines/sci/graphics/text.cpp b/engines/sci/graphics/text.cpp
index f1be3eb1b5..011232ff07 100644
--- a/engines/sci/graphics/text.cpp
+++ b/engines/sci/graphics/text.cpp
@@ -36,7 +36,7 @@
namespace Sci {
-Text::Text(ResourceManager *resMan, GfxPorts *ports, GfxPaint16 *paint16, Screen *screen)
+Text::Text(ResourceManager *resMan, GfxPorts *ports, GfxPaint16 *paint16, GfxScreen *screen)
: _resMan(resMan), _ports(ports), _paint16(paint16), _screen(screen) {
init();
}
diff --git a/engines/sci/graphics/text.h b/engines/sci/graphics/text.h
index 1e94398558..65ca413ef9 100644
--- a/engines/sci/graphics/text.h
+++ b/engines/sci/graphics/text.h
@@ -38,7 +38,7 @@ class Screen;
class Font;
class Text {
public:
- Text(ResourceManager *_resMan, GfxPorts *ports, GfxPaint16 *paint16, Screen *screen);
+ Text(ResourceManager *_resMan, GfxPorts *ports, GfxPaint16 *paint16, GfxScreen *screen);
~Text();
GuiResourceId GetFontId();
@@ -72,7 +72,7 @@ private:
ResourceManager *_resMan;
GfxPorts *_ports;
GfxPaint16 *_paint16;
- Screen *_screen;
+ GfxScreen *_screen;
int _codeFontsCount;
GuiResourceId *_codeFonts;
diff --git a/engines/sci/graphics/transitions.cpp b/engines/sci/graphics/transitions.cpp
index 77843d626f..795e1df894 100644
--- a/engines/sci/graphics/transitions.cpp
+++ b/engines/sci/graphics/transitions.cpp
@@ -37,7 +37,7 @@
namespace Sci {
-Transitions::Transitions(SciGui *gui, Screen *screen, SciPalette *palette, bool isVGA)
+Transitions::Transitions(SciGui *gui, GfxScreen *screen, GfxPalette *palette, bool isVGA)
: _gui(gui), _screen(screen), _palette(palette), _isVGA(isVGA) {
init();
}
@@ -292,7 +292,7 @@ void Transitions::fadeIn() {
int16 stepNr;
for (stepNr = 0; stepNr <= 100; stepNr += 10) {
- _palette->setIntensity(1, 255, stepNr, true);
+ _palette->kernelSetIntensity(1, 255, stepNr, true);
_gui->wait(2);
}
}
diff --git a/engines/sci/graphics/transitions.h b/engines/sci/graphics/transitions.h
index 43d94dec9e..1263068a30 100644
--- a/engines/sci/graphics/transitions.h
+++ b/engines/sci/graphics/transitions.h
@@ -62,7 +62,7 @@ enum {
class Screen;
class Transitions {
public:
- Transitions(SciGui *gui, Screen *screen, SciPalette *palette, bool isVGA);
+ Transitions(SciGui *gui, GfxScreen *screen, GfxPalette *palette, bool isVGA);
~Transitions();
void setup(int16 number, bool blackoutFlag);
@@ -90,8 +90,8 @@ private:
void updateScreenAndWait(int msec);
SciGui *_gui;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
bool _isVGA;
const GuiTransitionTranslateEntry *_translationTable;
diff --git a/engines/sci/graphics/view.cpp b/engines/sci/graphics/view.cpp
index 1fff191441..4080af821d 100644
--- a/engines/sci/graphics/view.cpp
+++ b/engines/sci/graphics/view.cpp
@@ -31,7 +31,7 @@
namespace Sci {
-View::View(ResourceManager *resMan, Screen *screen, SciPalette *palette, GuiResourceId resourceId)
+View::View(ResourceManager *resMan, GfxScreen *screen, GfxPalette *palette, GuiResourceId resourceId)
: _resMan(resMan), _screen(screen), _palette(palette), _resourceId(resourceId) {
assert(resourceId != -1);
initData(resourceId);
diff --git a/engines/sci/graphics/view.h b/engines/sci/graphics/view.h
index ec8f9ef7eb..f4c1521614 100644
--- a/engines/sci/graphics/view.h
+++ b/engines/sci/graphics/view.h
@@ -53,7 +53,7 @@ class SciPalette;
class View {
public:
- View(ResourceManager *resMan, Screen *screen, SciPalette *palette, GuiResourceId resourceId);
+ View(ResourceManager *resMan, GfxScreen *screen, GfxPalette *palette, GuiResourceId resourceId);
~View();
GuiResourceId getResourceId();
@@ -76,8 +76,8 @@ private:
void unditherBitmap(byte *bitmap, int16 width, int16 height, byte clearKey);
ResourceManager *_resMan;
- Screen *_screen;
- SciPalette *_palette;
+ GfxScreen *_screen;
+ GfxPalette *_palette;
GuiResourceId _resourceId;
Resource *_resource;