diff options
author | Max Horn | 2009-05-08 16:00:39 +0000 |
---|---|---|
committer | Max Horn | 2009-05-08 16:00:39 +0000 |
commit | e34c6316c67a06d9586e217cdca52d3bc6cc0438 (patch) | |
tree | b50edba644faa997de6e9e53b2ede8f561ddf3da /engines/sci/gfx/operations.cpp | |
parent | 418d80c8a84175bdefb5e8310816d489abf0e1c6 (diff) | |
download | scummvm-rg350-e34c6316c67a06d9586e217cdca52d3bc6cc0438.tar.gz scummvm-rg350-e34c6316c67a06d9586e217cdca52d3bc6cc0438.tar.bz2 scummvm-rg350-e34c6316c67a06d9586e217cdca52d3bc6cc0438.zip |
SCI: Replaced gfx_driver_t::set_palette and install_palette by directly invoking their OSystem counterparts
svn-id: r40385
Diffstat (limited to 'engines/sci/gfx/operations.cpp')
-rw-r--r-- | engines/sci/gfx/operations.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/engines/sci/gfx/operations.cpp b/engines/sci/gfx/operations.cpp index 0559a677b3..1cf1f19590 100644 --- a/engines/sci/gfx/operations.cpp +++ b/engines/sci/gfx/operations.cpp @@ -202,12 +202,17 @@ static int _gfxop_install_pixmap(gfx_driver_t *driver, gfx_pixmap_t *pxm) { // TODO: We probably want to only update the colours used by this pixmap // here. This will require updating the 'dirty' system. - for (unsigned int i = 0; i < driver->mode->palette->size(); ++i) { + uint8 paletteData[4*256]; + const uint paletteSize = driver->mode->palette->size(); + for (uint i = 0; i < paletteSize; ++i) { const PaletteEntry& c = (*driver->mode->palette)[i]; - driver->set_palette(driver, i, c.r, c.g, c.b); + paletteData[4*i+0] = c.r; + paletteData[4*i+1] = c.g; + paletteData[4*i+2] = c.b; + paletteData[4*i+3] = 255; } - driver->install_palette(driver, driver->mode->palette); + g_system->setPalette(paletteData, 0, paletteSize); driver->mode->palette->markClean(); return GFX_OK; } |