From 714a4f909ba014f3f65ac278cead70d846ff7dc9 Mon Sep 17 00:00:00 2001 From: Jaromir Wysoglad Date: Mon, 24 Jun 2019 10:54:22 +0200 Subject: SUPERNOVA: Refactor graphics --- engines/supernova/graphics.cpp | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) (limited to 'engines') diff --git a/engines/supernova/graphics.cpp b/engines/supernova/graphics.cpp index a317672183..af3a1b30ad 100644 --- a/engines/supernova/graphics.cpp +++ b/engines/supernova/graphics.cpp @@ -258,31 +258,19 @@ bool MSNImage::loadSections() { Graphics::Surface *surface = new Graphics::Surface; _sectionSurfaces.push_back(surface); - if (isNewspaper) { + if (isNewspaper || isCypheredText) { + Color color1 = isNewspaper ? kColorWhite63 : kColorWhite44; surface->create(imageWidth, imageHeight, g_system->getScreenFormat()); byte *surfacePixels = static_cast(surface->getPixels()); for (int i = 0; i < imageWidth * imageHeight / 8; ++i) { - *surfacePixels++ = (_encodedImage[i] & 0x80) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x40) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x20) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x10) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x08) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x04) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x02) ? kColorWhite63 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x01) ? kColorWhite63 : kColorBlack; - } - } else if (isCypheredText) { - surface->create(imageWidth, imageHeight, g_system->getScreenFormat()); - byte *surfacePixels = static_cast(surface->getPixels()); - for (int i = 0; i < imageWidth * imageHeight / 8; ++i) { - *surfacePixels++ = (_encodedImage[i] & 0x80) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x40) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x20) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x10) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x08) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x04) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x02) ? kColorWhite44 : kColorBlack; - *surfacePixels++ = (_encodedImage[i] & 0x01) ? kColorWhite44 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x80) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x40) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x20) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x10) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x08) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x04) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x02) ? color1 : kColorBlack; + *surfacePixels++ = (_encodedImage[i] & 0x01) ? color1 : kColorBlack; } } else { uint32 offset = (_section[section].addressHigh << 16) + _section[section].addressLow; -- cgit v1.2.3