Commit Graph
465 Commits
Author SHA1 Message Date
Willem Jan Palenstijn 0dfd742b21 SCI: Remove no longer necessary hack 2013-12-31 13:52:37 +01:00
Willem Jan Palenstijn 857d2e7bef SCI: Rewrite MIDI channel remapping
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-12-31 13:52:15 +01:00
Willem Jan Palenstijn 8cc82d0a0b SCI: Make fade signal version check more precise 2013-11-23 16:11:07 +01:00
Willem Jan Palenstijn 35617bf601 SCI: Fix SCI1late fade complete signal
This fixes duplicate music playing in LauraBow2CD (#6462)
2013-11-23 15:27:16 +01:00
Martin Kiewitz 551e263165 SCI: revert fix music start code
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-22 20:13:33 +02:00
Martin Kiewitz f1b0a77408 SCI: fix music start code fixes eq2 bug #3037267
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-22 15:40:51 +02:00
Willem Jan Palenstijn 4b5ca10f68 Merge branch 'master' into sci_midiparser
Conflicts:
	engines/sci/sound/midiparser_sci.cpp
2013-09-21 20:05:47 +02:00
m-kiewitz 97b255ab33 SCI: fix dataInc signalling fixes bug #3035159
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-21 19:41:45 +02:00
Willem Jan Palenstijn a6d902df28 SCI: Handle !fireEvents in processEvent 2013-09-21 14:42:59 +02:00
m-kiewitz 158d12e555 SCI: abbrev. ffs to FE and priority check fix 2013-09-21 14:34:42 +02:00
m-kiewitz 4443793b97 SCI: sfx/music priority int16 fixes bug #3615038
it seems that sound system up till SCI0_LATE uses int16, afterwards it seems they changed to byte
main music object (conMusic) in Laura Bow 1 uses -1 as priority. This was truncated to 255 till now, which resulted in many sound effects not getting played, because those used priority 0
2013-09-21 14:27:16 +02:00
Willem Jan Palenstijn 3792af8e95 AUDIO: Simplify SCI inFastForward flag by moving it to MidiParser 2013-09-21 09:31:08 +02:00
Willem Jan Palenstijn 11d425b76c SCI: Move MIDI event processing out of parseNextEvent 2013-09-21 01:43:04 +02:00
Willem Jan Palenstijn 5b23a251ce SCI: Fix too strict assert triggering in LSL5 2013-09-19 23:54:27 +02:00
m-kiewitz 1c9316cee0 SCI: longbow intro night rider fix (with help of wjp) - seems to fix bug 3489094 2013-09-16 00:34:49 +02:00
m-kiewitz 0fd15e6db3 SCI: fix tabs in last commit 2013-09-15 23:21:23 +02:00
m-kiewitz 0367d40647 SCI: disable signals when resuming music, so that debugger will work properly for longbow intro 2013-09-15 22:14:35 +02:00
Willem Jan Palenstijn 06cc30cf6c SCI: Add FIXME 2013-07-19 21:22:36 +02:00
Filippos Karapetis fef7d59c54 SCI: Rewrite the song loop comments in commit 6fa668e to make more sense 2013-07-08 12:32:12 +03:00
Filippos Karapetis 6fa668e32a SCI: Add some comments a possible TODO regarding song looping 2013-07-08 12:19:15 +03:00
Filippos Karapetis 0f30ba2f10 SCI: Fix bug #3614566 - "LSL6: ScummVM locks up at Electro-Shock room"
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-07-07 19:41:42 +03:00
Filippos Karapetis 125b146b06 SCI: Implement the 4-param version of kDoSoundSendMidi - bug #3614447
Many thanks to wjp for his help with disassembly
2013-06-19 02:08:06 +03:00
Willem Jan Palenstijn 6e3510ac61 SCI: Add note about LSL1vga DoSoundSendMidi 2013-06-18 18:46:54 +02:00
Filippos Karapetis b8eaefbf8a SCI: Silence some false positive warnings - CID 1003539, 1003540, 1003541, 1003542 2013-05-01 01:51:12 +03:00
Filippos Karapetis d0697addab SCI: Change wording for a function reference 2013-04-28 23:31:11 +03:00
Filippos Karapetis 46ebf37ec9 SCI: Change wording for bug/further info references 2013-04-27 14:04:27 +03:00
Willem Jan Palenstijn 09fc458f15 SCI: Report sound stream loading errors 2013-04-20 16:13:41 +02:00
Willem Jan Palenstijn e273a387a7 SCI: Replace workaround for bug #3605269 by script patch 2013-04-19 23:50:04 +02:00
Willem Jan Palenstijn 430db6719f SCI: Fix confusing use of strncpy 2013-04-17 23:55:01 +02:00
Willem Jan Palenstijn f280789afe SCI: Don't suppress loop delta in SCI1 midi
This fixes bug #3293354.
2013-04-16 23:10:09 +02:00
Willem Jan Palenstijn 457f5da095 SCI: Don't suppress end-of-track delta in SCI0 midi
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-16 23:04:33 +02:00
Willem Jan Palenstijn cdf1900ce0 SCI: Add signal/fade related CHECKME 2013-04-07 18:22:41 +02:00
Willem Jan Palenstijn 6f3c83bd51 SCI: Minor cleanup
(Thanks waltervn)
2013-04-06 22:28:42 +02:00
Willem Jan Palenstijn 1e1cc7309f SCI: Further clarify comment 2013-04-06 22:11:15 +02:00
Willem Jan Palenstijn 173a022f91 SCI: Clarify comment 2013-04-06 20:48:52 +02:00
Willem Jan Palenstijn d0d9894b22 SCI: Revert "Fixed fading-related bugs #3267956 and #3041738"
This reverts commit bfef0f5a6f.
2013-04-06 20:46:15 +02:00
Willem Jan Palenstijn 6f3716ae74 SCI: Re-initialize more of MusicEntry on play
This fixes bug #3267956.
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn 18feefbe40 SCI: Notify scripts of completed fade when aborting it
This tweaks a fix/workaround (commit 96540686) for bugs #3266480 and #3041738.
Also add CHECKME to verify the accuracy of this workaround further.

This fixes the regressions #3291115, #3555404, #3596335 and #3610063.
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn eb48325248 SCI: Revert "Added a more specific workaround for bug #3267956.[...]"
This reverts commit 5654e12575.

Conflicts:
	engines/sci/sound/soundcmd.cpp
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn da3583f569 SCI: Revert "Clarify comment from rev 5654e12 further"
This reverts commit 9f74a6eda2.
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn 5a2ef39335 SCI: Revert "Fix script bug #3555404 - "SCI: KQ6 Spider Scene Game Freeze""
This reverts commit 8524ebd699.
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn 9155e8e1a1 SCI: Revert "Properly fix bugs #3267956 and #3605377"
This reverts commit 17ca8d14b1,
except for a minor unrelated change to the workaround for bug #3605269

Conflicts:
	engines/sci/sound/soundcmd.cpp
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn 0f2fae14cc SCI: Revert "Add a hack to fix bug #3596335"
This reverts commit f019d5a488.
2013-04-06 20:31:34 +02:00
Willem Jan Palenstijn 841b6ca540 SCI: Revert "Add a more generic solution for the problem found in bug #3605269"
This reverts commit c6320a28e4.
SSCI does not interpret signals on other channels than 15.

Conflicts:
	engines/sci/sound/soundcmd.cpp
2013-04-05 21:14:55 +02:00
Filippos Karapetis f019d5a488 SCI: Add a hack to fix bug #3596335
Game scripts are waiting indefinitely for a song, thus we change its dataInc
selector to prevent that from happening
2013-04-04 00:37:43 +03:00
Filippos Karapetis 17ca8d14b1 Properly fix bugs #3267956 and #3605377
SCI: Only stop after fading, if the song to be faded is faded down. Also,
reset the song signal when fading starts. It was set to -1 when fading
started in bug #3267956, thus it stopped immediately.
2013-04-04 00:37:43 +03:00
Filippos Karapetis c6320a28e4 SCI: Add a more generic solution for the problem found in bug #3605269
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
2013-04-02 10:03:48 +03:00
Filippos Karapetis dc2d8793b9 SCI: Set the song's sound queue signal to -1 when stopping a sound, like SSCI does
Previously, we set the signal of the sound objects themselves to -1, but set the
sound queue's signal to 0. This now matches the original behavior.
2013-04-01 21:31:50 +03:00
Filippos Karapetis 2e93ee2b83 SCI: Fix bug #3605269 - "SCI: KQ5 Windows CD - Game Hangs Before Final Battle"
This is caused because songs 1840, 1843 and 1849 are all missing their special
SCI signaling channel (channel 15), so the game scripts wait indefinitely for
signals which are never set
2013-04-01 21:31:50 +03:00
Filippos Karapetis d54a57ccee SCI: Stop and clear sounds that have no data. Fixes an issue in KQ6 Mac
Thanks to waltervn and clone2727 for the original patch. Tested LSL5
with this change, and the problematic sound in the mud wrestling scene
is handled correctly
2013-03-29 01:25:35 +02:00