[Scummvm-cvs-logs] SF.net SVN: scummvm:[48665] scummvm/trunk
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Fri Apr 16 13:00:13 CEST 2010
Revision: 48665
http://scummvm.svn.sourceforge.net/scummvm/?rev=48665&view=rev
Author: fingolfin
Date: 2010-04-16 11:00:13 +0000 (Fri, 16 Apr 2010)
Log Message:
-----------
Fix for bug #2987895: "DW2: graphical errors in video on Windows"
Modified Paths:
--------------
scummvm/trunk/NEWS
scummvm/trunk/engines/tinsel/bmv.cpp
Modified: scummvm/trunk/NEWS
===================================================================
--- scummvm/trunk/NEWS 2010-04-16 10:59:23 UTC (rev 48664)
+++ scummvm/trunk/NEWS 2010-04-16 11:00:13 UTC (rev 48665)
@@ -12,7 +12,10 @@
KYRA:
- Fixed a bug which caused the DOS versions to crash before the credits when AdLib
music is selected.
-
+
+ Tinsel:
+ - Fix video playback regression in Discworld 2.
+
PSP port: (Also forgot to mention in 1.1.0)
- Added plugin support which allows the PSP Phat to run every game.
- Added a new virtual keyboard optimized for rapid D-Pad input.
Modified: scummvm/trunk/engines/tinsel/bmv.cpp
===================================================================
--- scummvm/trunk/engines/tinsel/bmv.cpp 2010-04-16 10:59:23 UTC (rev 48664)
+++ scummvm/trunk/engines/tinsel/bmv.cpp 2010-04-16 11:00:13 UTC (rev 48665)
@@ -232,17 +232,8 @@
}
switch (loopCtr) {
- case 1:
+ case 1: {
// @_rDelta:
-#if 1
- if (forwardDirection) {
- memcpy(dst, dst + ebx, byteLen);
- dst += byteLen;
- } else {
- dst -= byteLen;
- memcpy(dst + 1, dst + ebx + 1, byteLen);
- }
-#else
const byte *saved_src = src; // Save the source pointer
src = dst + ebx; // Point it to existing data
@@ -254,45 +245,23 @@
}
src = saved_src;
-#endif
break;
+ }
case 2:
// @_rRaw
// Copy data from source to dest
-#if 1
- if (forwardDirection) {
- memcpy(dst, src, byteLen);
- dst += byteLen;
- src += byteLen;
- } else {
- dst -= byteLen;
- src -= byteLen;
- memcpy(dst + 1, src + 1, byteLen);
- }
-#else
while (byteLen > 0) {
*dst = *src;
NEXT_BYTE(src);
NEXT_BYTE(dst);
--byteLen;
}
-#endif
break;
case 3:
// @_rRun
// Repeating run of data
-#if 1
- if (forwardDirection) {
- memset(dst, *(dst - 1), byteLen);
- dst += byteLen;
- } else {
- eax = *(dst + 1);
- dst -= byteLen;
- memset(dst + 1, eax, byteLen);
- }
-#else
eax = forwardDirection ? *(dst - 1) : *(dst + 1);
while (byteLen > 0) {
@@ -300,7 +269,6 @@
NEXT_BYTE(dst);
--byteLen;
}
-#endif
break;
default:
break;
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