Implemented SysEx command 1 for non-S&M SCUMM games, per the latest comment on Bug 1088045.

svn-id: r21156
This commit is contained in:
Jamieson Christian 2006-03-09 03:29:12 +00:00
parent ea26ccea4a
commit effed85448

View File

@ -456,10 +456,16 @@ void Player::sysEx(const byte *p, uint16 len) {
break;
case 1:
// This SysEx is used in Sam & Max for maybe_jump.
if (_scanning)
break;
maybe_jump(p[0], p[1] - 1, (READ_BE_UINT16(p + 2) - 1) * 4 + p[4], ((p[5] * TICKS_PER_BEAT) >> 2) + p[6]);
if (_se->_game_id != GID_SAMNMAX) {
// Shut down a part. [Bug 1088045, comments]
part = getPart (p[0]);
if (part != NULL) part->uninit();
} else {
// Sam & Max: maybe_jump.
if (_scanning)
break;
maybe_jump(p[0], p[1] - 1, (READ_BE_UINT16(p + 2) - 1) * 4 + p[4], ((p[5] * TICKS_PER_BEAT) >> 2) + p[6]);
}
break;
case 2: // Start of song. Ignore for now.