[Scummvm-cvs-logs] SF.net SVN: scummvm: [22372] scummvm/trunk/engines/simon/draw.cpp
kirben at users.sourceforge.net
kirben at users.sourceforge.net
Sat May 6 17:33:31 CEST 2006
Revision: 22372
Author: kirben
Date: 2006-05-06 17:32:00 -0700 (Sat, 06 May 2006)
ViewCVS: http://svn.sourceforge.net/scummvm/?rev=22372&view=rev
Log Message:
-----------
Fix slowFadeIn, the code of original Windows version was flawed
Modified Paths:
--------------
scummvm/trunk/engines/simon/draw.cpp
Modified: scummvm/trunk/engines/simon/draw.cpp
===================================================================
--- scummvm/trunk/engines/simon/draw.cpp 2006-05-06 22:49:57 UTC (rev 22371)
+++ scummvm/trunk/engines/simon/draw.cpp 2006-05-07 00:32:00 UTC (rev 22372)
@@ -467,20 +467,23 @@
_fastFadeInFlag &= 0x7fff;
_paletteFlag = false;
- memset(_videoBuf1, 0, 768);
- memcpy(_currentPalette, _displayPalette, 768);
- memcpy(_videoBuf1 + 768, _displayPalette, 768);
+ memset(_videoBuf1, 0, 1024);
+ memcpy(_currentPalette, _displayPalette, 1024);
+ memcpy(_videoBuf1 + 1024, _displayPalette, 1024);
for (c = 255; c >= 0; c -= 4) {
- src = _videoBuf1 + 768;
+ src = _videoBuf1 + 1024;
dst = _videoBuf1;
- for (p = _fastFadeInFlag; p !=0 ; p--) {
- if (*src >= c)
- *dst = *dst + 4;
-
- src++;
- dst++;
+ for (p = _fastFadeInFlag; p !=0 ; p -= 3) {
+ if (src[0] >= c)
+ dst[0] += 4;
+ if (src[1] >= c)
+ dst[1] += 4;
+ if (src[2] >= c)
+ dst[2] += 4;
+ src += 4;
+ dst += 4;
}
_system->setPalette(_videoBuf1, 0, _fastFadeCount);
delay(5);
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