aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/sound/midiparser_sci.cpp
AgeCommit message (Collapse)Author
2013-12-31SCI: Rewrite MIDI channel remappingWillem Jan Palenstijn
This adds MIDI state tracking to allow channels to be temporarily unmapped and later re-mapped when there are free device channels available again.
2013-09-22SCI: revert fix music start codeMartin Kiewitz
add workaround for eq2 the issue is known, but can't be properly fixed without rewriting the midiparser into a channel specific parser previous commit caused issues in kq5/french and others
2013-09-22SCI: fix music start code fixes eq2 bug #3037267Martin Kiewitz
we start at offset 10 for sound SCI1 games. This is hardcoded in the interpreter. Also removing not handling signals on tick 0. This fixes Eco Quest 2 / Gonzales dancing in room 530. Thanks to wjp for the help.
2013-09-21Merge branch 'master' into sci_midiparserWillem Jan Palenstijn
Conflicts: engines/sci/sound/midiparser_sci.cpp
2013-09-21SCI: fix dataInc signalling fixes bug #3035159m-kiewitz
we set signal in parseNextEvent on dataInc events, which then effectively triggered 2 cues through kDoSoundUpdateCues instead of one. Fixes Freddy Pharkas Ballad intro on floppy + demos
2013-09-21SCI: Handle !fireEvents in processEventWillem Jan Palenstijn
2013-09-21AUDIO: Simplify SCI inFastForward flag by moving it to MidiParserWillem Jan Palenstijn
2013-09-21SCI: Move MIDI event processing out of parseNextEventWillem Jan Palenstijn
2013-09-19SCI: Fix too strict assert triggering in LSL5Willem Jan Palenstijn
2013-09-16SCI: longbow intro night rider fix (with help of wjp) - seems to fix bug 3489094m-kiewitz
2013-09-15SCI: fix tabs in last commitm-kiewitz
2013-09-15SCI: disable signals when resuming music, so that debugger will work ↵m-kiewitz
properly for longbow intro
2013-07-19SCI: Add FIXMEWillem Jan Palenstijn
2013-07-08SCI: Rewrite the song loop comments in commit 6fa668e to make more senseFilippos Karapetis
2013-07-08SCI: Add some comments a possible TODO regarding song loopingFilippos Karapetis
2013-07-07SCI: Fix bug #3614566 - "LSL6: ScummVM locks up at Electro-Shock room"Filippos Karapetis
We now do the jumpToTick() for hold events after waiting for the delta of the current event, like we do for the signal set events. This keeps the fixes for the hold timings in QFG3, while not breaking LSL6. Many thanks to wjp for pinpointing the actual cause of the issue.
2013-04-16SCI: Don't suppress loop delta in SCI1 midiWillem Jan Palenstijn
This fixes bug #3293354.
2013-04-16SCI: Don't suppress end-of-track delta in SCI0 midiWillem Jan Palenstijn
This fixes the main part of bug #3487090. This seems to be a conversion error from SCI1's channel mixing to SCI0's channel filtering code.
2013-04-05SCI: Revert "Add a more generic solution for the problem found in bug #3605269"Willem Jan Palenstijn
This reverts commit c6320a28e483e52b489cae8e86774008e030492b. SSCI does not interpret signals on other channels than 15. Conflicts: engines/sci/sound/soundcmd.cpp
2013-04-02SCI: Add a more generic solution for the problem found in bug #3605269Filippos Karapetis
We now accept signals from all channels if channel 15 is missing. This is a very rare edge case, but our behavior is now somewhat closer to what the original interpreter seems to be doing. Mordack's appearance animation is now synced properly. The more generic workaround works for songs 1840 and 1843, but not for 1849, which is still problematic and we still resort to manually changing its dataInc selector
2012-09-07JANITORIAL: Remove underscores from MidiParser variable names.Alyssa Milburn
2011-11-20SCI: Reset parameters for all channels used by a song when it startsFilippos Karapetis
2011-08-28SCI: Fixed bug #3297883 - "SCI: LB1 (Amiga) - Intro stuck"Filippos Karapetis
2011-08-26SCI: Fixed bug #3311911 - "SCI: QFG3: Intro music abruptly stops"Filippos Karapetis
2011-05-12SCI: Added a warning for SCI0 games like in bug #3297881md5
LB1 Amiga doesn't contain MT-32 music tracks. Added a warning for this situation
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2010-11-27SCI: Removed bogus warningFilippos Karapetis
svn-id: r54512
2010-11-27SCI: Fix for bug #3119713 - "PQ2: song-specific reverb changes are ignored" ↵Filippos Karapetis
(thanks to waltervn) svn-id: r54509
2010-11-26SCI: Pull reverb default directly from control channel.Walter van Niftrik
svn-id: r54499
2010-11-26Fixed bug with r54485Filippos Karapetis
svn-id: r54488
2010-11-26SCI: set the reverb setting of the current song when a relevant event is ↵Filippos Karapetis
fired from the MIDI stream svn-id: r54485
2010-11-25SCI: Global reverb can't be 127. Some cleanupFilippos Karapetis
svn-id: r54482
2010-11-25SCI: implemented reverb handling and related functionalityFilippos Karapetis
svn-id: r54478
2010-11-24SCI: Some renaming and added several TODOs concerning reverbFilippos Karapetis
svn-id: r54461
2010-11-24SCI: Moved handling of special reverb value 127 outside of the MIDI driverFilippos Karapetis
svn-id: r54459
2010-11-23SCI: Also send a sustain off on a notes off event (patch from bug #3116608)Filippos Karapetis
svn-id: r54429
2010-09-01SCI: set master volume correctlyMartin Kiewitz
and merge it together with global volume, fixes bug #3053104) svn-id: r52484
2010-08-18SCI: Only perform queuing of song signals for SCI0, where we handle the ↵Filippos Karapetis
updating of song queues ourselves. Newer games handle signaling on their own, thus we shouldn't interfere with this. Fixes bug #3045913 - "PHARKAS CD: Crash at the start menu" (a regression from rev #52043) svn-id: r52195
2010-08-12SCI: queuing signal, if signal not passed to scriptsMartin Kiewitz
fixes laura bow 1 when knocking at the door in the attic, scripts wait for 0xb in that case, sound resource sets 0xb and then immediately ends. This resulted in the scripts only getting the termination signal, so they waited endlessly. (bug #3042981) svn-id: r52043
2010-08-03SCI: not error()ing out on no free channelsMartin Kiewitz
instead we just ignore such channels. I'm not sure how sierra sci behaved in that case, they ignored channels as well, but maybe they removed them from earlier music svn-id: r51715
2010-07-20SCI: fix regression of r50463Martin Kiewitz
also check delta, because _play_tick does not include delta at that point - fixing sq1 ship takeoff svn-id: r51067
2010-07-14SCI: adding sound version 2.1, to properly add sci2.1 signature for ↵Martin Kiewitz
kDoSound(play) svn-id: r50878
2010-07-13SCI: erroring out on unsupported soundversion in midiparserMartin Kiewitz
svn-id: r50849
2010-06-28SCI: removing ignoring of channel volume change code from r50463, the lsl5 ↵Martin Kiewitz
issue was actually caused by the old volume adjust code that was also causing the issues in gk1 svn-id: r50466
2010-06-28SCI: its lsl5 sound resource 294, not 274 (changed comment only)Martin Kiewitz
svn-id: r50465
2010-06-28SCI: ignoring set signal on tick 0 directly in parseNextEvent instead of ↵Martin Kiewitz
filtering, also now ignoring channel volume changes on tick 0 (fixes lsl5 fading of sound 274, almost at the end), fixing also fading in gk1 and enabling fading in sci32 again svn-id: r50463
2010-06-28SCI: remove clipping of volume inside SciMidiParser::setvolumeMartin Kiewitz
svn-id: r50456
2010-06-28SCI: set volume all the time, fixes volume being 0 after fading in sci0Martin Kiewitz
svn-id: r50418
2010-06-28SCI: changed the way setVolume works for sci0 back to the way it was from ↵Martin Kiewitz
r50414, because adlib driver doesn't support channel volume changes for sci0 games, fixes fading in those games svn-id: r50417
2010-06-28SCI: reordering and cleanup, removing debug code from sci0 mix-codeMartin Kiewitz
svn-id: r50415