diff options
author | Johannes Schickel | 2013-08-03 02:41:16 +0200 |
---|---|---|
committer | Johannes Schickel | 2013-08-03 04:02:52 +0200 |
commit | aca802bd701e0043040e82f0fd61d9cf9ff3ab95 (patch) | |
tree | 1de99397c299f6138308fdb8e9a6f029263564ac /engines/pegasus | |
parent | ccaf4d865c46402f9e5d800956c414fd134b5dc9 (diff) | |
download | scummvm-rg350-aca802bd701e0043040e82f0fd61d9cf9ff3ab95.tar.gz scummvm-rg350-aca802bd701e0043040e82f0fd61d9cf9ff3ab95.tar.bz2 scummvm-rg350-aca802bd701e0043040e82f0fd61d9cf9ff3ab95.zip |
PEGASUS: Take advantage of Surface::getPixels.
Diffstat (limited to 'engines/pegasus')
-rw-r--r-- | engines/pegasus/cursor.cpp | 6 | ||||
-rw-r--r-- | engines/pegasus/graphics.cpp | 2 | ||||
-rw-r--r-- | engines/pegasus/neighborhood/caldoria/caldoria.cpp | 4 | ||||
-rw-r--r-- | engines/pegasus/pegasus.cpp | 10 | ||||
-rw-r--r-- | engines/pegasus/transition.cpp | 2 |
5 files changed, 12 insertions, 12 deletions
diff --git a/engines/pegasus/cursor.cpp b/engines/pegasus/cursor.cpp index dcf6749620..ad0d2c2d7d 100644 --- a/engines/pegasus/cursor.cpp +++ b/engines/pegasus/cursor.cpp @@ -85,9 +85,9 @@ void Cursor::setCurrentFrameIndex(int32 index) { if (_info[index].surface->format.bytesPerPixel == 1) { CursorMan.replaceCursorPalette(_info[index].palette, 0, _info[index].colorCount); - CursorMan.replaceCursor(_info[index].surface->getBasePtr(0, 0), _info[index].surface->w, _info[index].surface->h, _info[index].hotspot.x, _info[index].hotspot.y, 0); + CursorMan.replaceCursor(_info[index].surface->getPixels(), _info[index].surface->w, _info[index].surface->h, _info[index].hotspot.x, _info[index].hotspot.y, 0); } else { - CursorMan.replaceCursor(_info[index].surface->getBasePtr(0, 0), _info[index].surface->w, _info[index].surface->h, _info[index].hotspot.x, _info[index].hotspot.y, _info[index].surface->format.RGBToColor(0xFF, 0xFF, 0xFF), false, &_info[index].surface->format); + CursorMan.replaceCursor(_info[index].surface->getPixels(), _info[index].surface->w, _info[index].surface->h, _info[index].hotspot.x, _info[index].hotspot.y, _info[index].surface->format.RGBToColor(0xFF, 0xFF, 0xFF), false, &_info[index].surface->format); } ((PegasusEngine *)g_engine)->_gfx->markCursorAsDirty(); @@ -203,7 +203,7 @@ void Cursor::loadCursorImage(CursorInfo &cursorInfo) { // PixMap data if (pixMap.pixelSize == 8) { cursorInfo.surface->create(pixMap.rowBytes, pixMap.bounds.height(), Graphics::PixelFormat::createFormatCLUT8()); - cicnStream->read(cursorInfo.surface->getBasePtr(0, 0), pixMap.rowBytes * pixMap.bounds.height()); + cicnStream->read(cursorInfo.surface->getPixels(), pixMap.rowBytes * pixMap.bounds.height()); // While this looks sensible, it actually doesn't work for some cursors // (ie. the 'can grab' hand) diff --git a/engines/pegasus/graphics.cpp b/engines/pegasus/graphics.cpp index ee7e7bd9cc..5475108abd 100644 --- a/engines/pegasus/graphics.cpp +++ b/engines/pegasus/graphics.cpp @@ -318,7 +318,7 @@ void GraphicsManager::shakeTheWorld(TimeValue duration, TimeScale scale) { } if (lastOffset.x != 0 || lastOffset.y != 0) { - g_system->copyRectToScreen((byte *)oldScreen.getBasePtr(0, 0), oldScreen.pitch, 0, 0, 640, 480); + g_system->copyRectToScreen((byte *)oldScreen.getPixels(), oldScreen.pitch, 0, 0, 640, 480); g_system->updateScreen(); } diff --git a/engines/pegasus/neighborhood/caldoria/caldoria.cpp b/engines/pegasus/neighborhood/caldoria/caldoria.cpp index 76954afa2b..0b3e1ee040 100644 --- a/engines/pegasus/neighborhood/caldoria/caldoria.cpp +++ b/engines/pegasus/neighborhood/caldoria/caldoria.cpp @@ -200,7 +200,7 @@ void Caldoria::start() { const Graphics::Surface *frame = pullbackMovie->decodeNextFrame(); assert(frame); assert(frame->format == g_system->getScreenFormat()); - g_system->copyRectToScreen((const byte *)frame->getBasePtr(0, 0), frame->pitch, 64, 112, frame->w, frame->h); + g_system->copyRectToScreen((const byte *)frame->getPixels(), frame->pitch, 64, 112, frame->w, frame->h); _vm->_gfx->doFadeInSync(kTwoSeconds * kFifteenTicksPerSecond, kFifteenTicksPerSecond); bool saveAllowed = _vm->swapSaveAllowed(false); @@ -216,7 +216,7 @@ void Caldoria::start() { frame = pullbackMovie->decodeNextFrame(); if (frame) { - g_system->copyRectToScreen((const byte *)frame->getBasePtr(0, 0), frame->pitch, 64, 112, frame->w, frame->h); + g_system->copyRectToScreen((const byte *)frame->getPixels(), frame->pitch, 64, 112, frame->w, frame->h); g_system->updateScreen(); } } diff --git a/engines/pegasus/pegasus.cpp b/engines/pegasus/pegasus.cpp index 83abe4a894..3bd29ce8dd 100644 --- a/engines/pegasus/pegasus.cpp +++ b/engines/pegasus/pegasus.cpp @@ -313,7 +313,7 @@ void PegasusEngine::runIntro() { const Graphics::Surface *frame = video->decodeNextFrame(); if (frame) { - _system->copyRectToScreen((const byte *)frame->getBasePtr(0, 0), frame->pitch, 0, 0, frame->w, frame->h); + _system->copyRectToScreen((const byte *)frame->getPixels(), frame->pitch, 0, 0, frame->w, frame->h); _system->updateScreen(); } } @@ -1367,7 +1367,7 @@ bool PegasusEngine::playMovieScaled(Video::VideoDecoder *video, uint16 x, uint16 if (frame->w <= 320 && frame->h <= 240) { drawScaledFrame(frame, x, y); } else { - _system->copyRectToScreen((const byte *)frame->getBasePtr(0, 0), frame->pitch, x, y, frame->w, frame->h); + _system->copyRectToScreen((const byte *)frame->getPixels(), frame->pitch, x, y, frame->w, frame->h); _system->updateScreen(); } } @@ -2270,11 +2270,11 @@ void PegasusEngine::drawScaledFrame(const Graphics::Surface *frame, uint16 x, ui scaledFrame.create(frame->w * 2, frame->h * 2, frame->format); if (frame->format.bytesPerPixel == 2) - scaleFrame<uint16>((const uint16 *)frame->getBasePtr(0, 0), (uint16 *)scaledFrame.getBasePtr(0, 0), frame->w, frame->h, frame->pitch); + scaleFrame<uint16>((const uint16 *)frame->getPixels(), (uint16 *)scaledFrame.getPixels(), frame->w, frame->h, frame->pitch); else - scaleFrame<uint32>((const uint32 *)frame->getBasePtr(0, 0), (uint32 *)scaledFrame.getBasePtr(0, 0), frame->w, frame->h, frame->pitch); + scaleFrame<uint32>((const uint32 *)frame->getPixels(), (uint32 *)scaledFrame.getPixels(), frame->w, frame->h, frame->pitch); - _system->copyRectToScreen((byte *)scaledFrame.getBasePtr(0, 0), scaledFrame.pitch, x, y, scaledFrame.w, scaledFrame.h); + _system->copyRectToScreen((byte *)scaledFrame.getPixels(), scaledFrame.pitch, x, y, scaledFrame.w, scaledFrame.h); _system->updateScreen(); scaledFrame.free(); } diff --git a/engines/pegasus/transition.cpp b/engines/pegasus/transition.cpp index 37ea38147e..b736b115ee 100644 --- a/engines/pegasus/transition.cpp +++ b/engines/pegasus/transition.cpp @@ -70,7 +70,7 @@ void ScreenFader::setFaderValue(const int32 value) { if (value != getFaderValue()) { Fader::setFaderValue(value); - if (_screen->getBasePtr(0, 0)) { + if (_screen->getPixels()) { // The original game does a gamma fade here using the Mac API. In order to do // that, it would require an immense amount of CPU processing. This does a // linear fade instead, which looks fairly well, IMO. |