[Scummvm-cvs-logs] SF.net SVN: scummvm: [30203] scummvm/branches/branch-0-11-0/engines/scumm/ midiparser_ro.cpp
eriktorbjorn at users.sourceforge.net
eriktorbjorn at users.sourceforge.net
Thu Jan 3 20:55:21 CET 2008
Revision: 30203
http://scummvm.svn.sourceforge.net/scummvm/?rev=30203&view=rev
Author: eriktorbjorn
Date: 2008-01-03 11:55:21 -0800 (Thu, 03 Jan 2008)
Log Message:
-----------
Backported fix for bug #1498785 ("LOOM: Unknown Roland MIDI music events").
Modified Paths:
--------------
scummvm/branches/branch-0-11-0/engines/scumm/midiparser_ro.cpp
Modified: scummvm/branches/branch-0-11-0/engines/scumm/midiparser_ro.cpp
===================================================================
--- scummvm/branches/branch-0-11-0/engines/scumm/midiparser_ro.cpp 2008-01-03 19:43:43 UTC (rev 30202)
+++ scummvm/branches/branch-0-11-0/engines/scumm/midiparser_ro.cpp 2008-01-03 19:55:21 UTC (rev 30203)
@@ -69,9 +69,17 @@
if (info.command() == 0xA) {
++_lastMarkerCount;
info.event = 0xF0;
- } else if (info.event == 0xF0) {
+ } else if (info.event == 0xF0 || info.event == 0xF1) {
byte delay = *(_position._play_pos++);
info.delta += delay;
+ if (info.event == 0xF1) {
+ // This event is, as far as we have been able
+ // to determine, only used in one single song
+ // in EGA Loom. It seems to be meant for adding
+ // values greater than 255 to info.delta. See
+ // bug #1498785.
+ info.delta += 256;
+ }
continue;
}
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