[Scummvm-cvs-logs] SF.net SVN: scummvm:[43197] scummvm/trunk/engines/kyra
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Mon Aug 10 03:34:14 CEST 2009
Revision: 43197
http://scummvm.svn.sourceforge.net/scummvm/?rev=43197&view=rev
Author: lordhoto
Date: 2009-08-10 01:34:14 +0000 (Mon, 10 Aug 2009)
Log Message:
-----------
Use interface palette for mouse cursor in Kyra1 amiga, when it's enabled.
Modified Paths:
--------------
scummvm/trunk/engines/kyra/screen.cpp
scummvm/trunk/engines/kyra/screen_lok.cpp
scummvm/trunk/engines/kyra/screen_lok.h
Modified: scummvm/trunk/engines/kyra/screen.cpp
===================================================================
--- scummvm/trunk/engines/kyra/screen.cpp 2009-08-10 01:33:56 UTC (rev 43196)
+++ scummvm/trunk/engines/kyra/screen.cpp 2009-08-10 01:34:14 UTC (rev 43197)
@@ -643,6 +643,8 @@
_forceFullUpdate = true;
_dirtyRects.clear();
+ // TODO: We might need to reset the mouse cursor
+
updateScreen();
}
Modified: scummvm/trunk/engines/kyra/screen_lok.cpp
===================================================================
--- scummvm/trunk/engines/kyra/screen_lok.cpp 2009-08-10 01:33:56 UTC (rev 43196)
+++ scummvm/trunk/engines/kyra/screen_lok.cpp 2009-08-10 01:34:14 UTC (rev 43197)
@@ -240,6 +240,20 @@
return ((x*y) << 3);
}
+void Screen_LoK::postProcessCursor(uint8 *data, int width, int height, int pitch) {
+ if (_vm->gameFlags().platform == Common::kPlatformAmiga && _interfacePaletteEnabled) {
+ pitch -= width;
+
+ for (int y = 0; y < height; ++y) {
+ for (int x = 0; x < width; ++x)
+ if (*data != _cursorColorKey)
+ *data++ += 32;
+
+ data += pitch;
+ }
+ }
+}
+
#pragma mark -
Screen_LoK_16::Screen_LoK_16(KyraEngine_LoK *vm, OSystem *system) : Screen_LoK(vm, system) {
Modified: scummvm/trunk/engines/kyra/screen_lok.h
===================================================================
--- scummvm/trunk/engines/kyra/screen_lok.h 2009-08-10 01:33:56 UTC (rev 43196)
+++ scummvm/trunk/engines/kyra/screen_lok.h 2009-08-10 01:34:14 UTC (rev 43197)
@@ -59,6 +59,9 @@
void addBitBlitRect(int x, int y, int w, int h);
void bitBlitRects();
+ // AMIGA specific
+ virtual void postProcessCursor(uint8 *data, int width, int height, int pitch);
+
protected:
enum {
kNumBitBlitRects = 10
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