[Scummvm-cvs-logs] SF.net SVN: scummvm:[54471] scummvm/trunk/engines/sci/sound/drivers/midi. cpp

waltervn at users.sourceforge.net waltervn at users.sourceforge.net
Thu Nov 25 12:19:47 CET 2010


Revision: 54471
          http://scummvm.svn.sourceforge.net/scummvm/?rev=54471&view=rev
Author:   waltervn
Date:     2010-11-25 11:19:46 +0000 (Thu, 25 Nov 2010)

Log Message:
-----------
SCI: Fix bug in MT-32 checksum computation. Thanks Sven for finding this.

Modified Paths:
--------------
    scummvm/trunk/engines/sci/sound/drivers/midi.cpp

Modified: scummvm/trunk/engines/sci/sound/drivers/midi.cpp
===================================================================
--- scummvm/trunk/engines/sci/sound/drivers/midi.cpp	2010-11-25 11:18:20 UTC (rev 54470)
+++ scummvm/trunk/engines/sci/sound/drivers/midi.cpp	2010-11-25 11:19:46 UTC (rev 54471)
@@ -441,9 +441,9 @@
 		_sysExBuf[7 + i] = str->readByte();
 
 	for (int i = 4; i < 7 + len; i++)
-		chk += _sysExBuf[i];
+		chk -= _sysExBuf[i];
 
-	_sysExBuf[7 + len] = 128 - chk % 128;
+	_sysExBuf[7 + len] = chk & 0x7f;
 
 	if (noDelay)
 		_driver->sysEx(_sysExBuf, len + 8);


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