aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlyssa Milburn2013-08-01 22:55:40 +0200
committerAlyssa Milburn2013-08-02 00:01:10 +0200
commit9c02f5b59355590219fb37a0f1ec2b325acae9eb (patch)
treec7eb97ed0e2fdb31221c105984e28c820b7d7b32
parentd1795a21bc26ae32e36bd0cf777fb05b556107fd (diff)
downloadscummvm-rg350-9c02f5b59355590219fb37a0f1ec2b325acae9eb.tar.gz
scummvm-rg350-9c02f5b59355590219fb37a0f1ec2b325acae9eb.tar.bz2
scummvm-rg350-9c02f5b59355590219fb37a0f1ec2b325acae9eb.zip
TONY: Fix thumbnails on BE.
-rw-r--r--engines/tony/game.cpp3
-rw-r--r--engines/tony/gfxcore.h4
-rw-r--r--engines/tony/window.cpp8
3 files changed, 13 insertions, 2 deletions
diff --git a/engines/tony/game.cpp b/engines/tony/game.cpp
index 501a588ff5..ca7c07ad8c 100644
--- a/engines/tony/game.cpp
+++ b/engines/tony/game.cpp
@@ -508,7 +508,8 @@ void RMOptionScreen::refreshThumbnails() {
_curThumb[i] = NULL;
_curThumbName[i].clear();
_curThumbDiff[i] = 11;
- }
+ } else
+ _curThumb[i]->prepareImage();
}
}
diff --git a/engines/tony/gfxcore.h b/engines/tony/gfxcore.h
index 2548968e81..9e8f5225c0 100644
--- a/engines/tony/gfxcore.h
+++ b/engines/tony/gfxcore.h
@@ -208,8 +208,10 @@ public:
* 16-bit color source
*/
class RMGfxSourceBuffer16 : public RMGfxSourceBuffer {
-protected:
+public:
virtual void prepareImage();
+
+protected:
bool _bTrasp0;
public:
diff --git a/engines/tony/window.cpp b/engines/tony/window.cpp
index 61497a8066..a732862854 100644
--- a/engines/tony/window.cpp
+++ b/engines/tony/window.cpp
@@ -330,6 +330,14 @@ void RMSnapshot::grabScreenshot(byte *lpBuf, int dezoom, uint16 *lpDestBuf) {
src += RM_BBX * dezoom;
}
}
+
+#ifdef SCUMM_BIG_ENDIAN
+ if (lpDestBuf != NULL) {
+ for (int i = 0; i < dimx * dimy; i++) {
+ lpDestBuf[i] = SWAP_BYTES_16(lpDestBuf[i]);
+ }
+ }
+#endif
}
} // End of namespace Tony