bug #1324103.
I've changed it - again - so that now it only centers the pitch wheels on
unload if a new mpCenterPitchWheelOnUnload property has been set. Currently
only the SAGA engine does that, so if it still breaks it only breaks SAGA.
I've also fixed what looked like an unintentional fall-through in the
MidiParser::property() function. Surently that can't cause any new
regressions? Please.
svn-id: r19032
and I don't want to have to worry about it. Centering the pitch wheel is
the change that I primarily wanted to make, and that should be supported by
every MIDI driver we have.
svn-id: r18999
the music will be horribly out of tune because the pitch wheel setting from
the old music will still apply.
I hope allNotesOff() is the correct place to ensure that the pitch wheel is
centered.
svn-id: r18998
I wasn't able to fully stop ITE's XMIDI music - there would always be a
couple of notes hanging even after unloading it. Apparently this music
doesn't use the "active notes" mechanism at all, and I guess the ALSA
driver doesn't support the "All Note Off" event.
I'm still not 100% sure this is the correct fix, but unless someone has any
better idea...
svn-id: r13910
When scanning (not jumping) to a target location
in a different track, the current track is first
scanned to the end to update the player state
before starting into the new track.
Miscellaneous scan-related cleanup is included.
svn-id: r9589
Tightened up OOB track selection handling in
MidiParser. Apparently some SMFs in the Mac
version of MI2 (and other games?) specify
track -1 in their jump commands to indicate
a jump within the same track.
svn-id: r9321
Corrected active notes tracking when switching
between Type 2 SMF tracks. Although Note Off
events from the previous track are properly
simulated, those sustaining notes are cleared
from the active notes list so that jumps
within the new track will not attempt to
sustain them again.
svn-id: r9194
Modified Smart Jump logic to deal with active notes
whose Note On and Note Off events BOTH occur OUTSIDE
the range of the jump. While this is not a thorough
way to deal with Note On events that occur outside
jump points, it at least deals with the issue of
long, unchanging Adlib SFX used by some earlier
SCUMM games.
svn-id: r8892
Miscellaneous upgrades and fixes to MidiParser, including the Smart Jump (which could not be tested before iMuse started making use of the MidiParser).
*** THIS IS A BIG UPGRADE! EXTENSIVE REGRESSION TESTING IS NEEDED! ***
This has been tested through the intros and a number of other scenes from MI2, FOA and S&M.
NOTE! This upgrade introduces savegame format version V19. Earlier version savegames will load, but the music will simply start over from the beginning. Only V19 and later games will properly restore the position of the music! Don't say you weren't warned....
svn-id: r7849