[Scummvm-cvs-logs] SF.net SVN: scummvm:[49523] scummvm/trunk/engines/sci
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Wed Jun 9 00:01:00 CEST 2010
Revision: 49523
http://scummvm.svn.sourceforge.net/scummvm/?rev=49523&view=rev
Author: m_kiewitz
Date: 2010-06-08 22:00:59 +0000 (Tue, 08 Jun 2010)
Log Message:
-----------
SCI: set default palette after initializing music driver, fixes palette getting messed up when using mt32 emulation
Modified Paths:
--------------
scummvm/trunk/engines/sci/graphics/palette.cpp
scummvm/trunk/engines/sci/graphics/palette.h
scummvm/trunk/engines/sci/sci.cpp
Modified: scummvm/trunk/engines/sci/graphics/palette.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/palette.cpp 2010-06-08 21:41:33 UTC (rev 49522)
+++ scummvm/trunk/engines/sci/graphics/palette.cpp 2010-06-08 22:00:59 UTC (rev 49523)
@@ -36,7 +36,7 @@
namespace Sci {
-GfxPalette::GfxPalette(ResourceManager *resMan, GfxScreen *screen, bool autoSetPalette)
+GfxPalette::GfxPalette(ResourceManager *resMan, GfxScreen *screen)
: _resMan(resMan), _screen(screen) {
int16 color;
@@ -57,19 +57,21 @@
_sysPalette.colors[255].b = 255;
_sysPaletteChanged = false;
- if (autoSetPalette) {
- if (_resMan->getViewType() == kViewEga)
- setEGA();
- else if (_resMan->isAmiga32color())
- setAmiga();
- else
- kernelSetFromResource(999, true);
- }
}
GfxPalette::~GfxPalette() {
}
+// meant to get called only once during init of engine
+void GfxPalette::setDefault() {
+ if (_resMan->getViewType() == kViewEga)
+ setEGA();
+ else if (_resMan->isAmiga32color())
+ setAmiga();
+ else
+ kernelSetFromResource(999, true);
+}
+
#define SCI_PAL_FORMAT_CONSTANT 1
#define SCI_PAL_FORMAT_VARIABLE 0
Modified: scummvm/trunk/engines/sci/graphics/palette.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/palette.h 2010-06-08 21:41:33 UTC (rev 49522)
+++ scummvm/trunk/engines/sci/graphics/palette.h 2010-06-08 22:00:59 UTC (rev 49523)
@@ -36,9 +36,10 @@
*/
class GfxPalette {
public:
- GfxPalette(ResourceManager *resMan, GfxScreen *screen, bool autoSetPalette = true);
+ GfxPalette(ResourceManager *resMan, GfxScreen *screen);
~GfxPalette();
+ void setDefault();
void createFromData(byte *data, Palette *paletteOut);
bool setAmiga();
void modifyAmigaPalette(byte *data);
Modified: scummvm/trunk/engines/sci/sci.cpp
===================================================================
--- scummvm/trunk/engines/sci/sci.cpp 2010-06-08 21:41:33 UTC (rev 49522)
+++ scummvm/trunk/engines/sci/sci.cpp 2010-06-08 22:00:59 UTC (rev 49523)
@@ -254,6 +254,8 @@
else
#endif
_gui->init(_features->usesOldGfxFunctions());
+ // Set default (EGA, amiga or resource 999) palette
+ _gfxPalette->setDefault();
debug("Emulating SCI version %s\n", getSciVersionDesc(getSciVersion()));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list