aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/sound/music.cpp
AgeCommit message (Collapse)Author
2016-07-08SCI: Set isSample when starting digital sample from soundInitSndWillem Jan Palenstijn
This fixes digital samples in at least QfG1, SQ3, LSL5. Bug #7159.
2016-06-20SCI32: Rewrite digital audio engineColin Snover
This provides a complete implementation of kDoAudio through SCI2.1mid, plus partial implementation of SCI3 features. Digital audio calls shunted through kDoSound have also been updated to go through the SCI32 audio mixer, though these shunts are a bit hacky because the ScummVM implementation of kDoSound does not currently match how SSCI kDoSound is designed. It is probably possible in the future to just replace the SCI1.1 audio code (audio.cpp) with the new SCI32 code, since the major differences seem to be that (1) SCI1.1 only supported one digital audio playback channel (this is configurable already), (2) it had extra commands for CD audio playback and queued sample playback.
2016-01-15SCI: Add a hack in music init for MUMG Deluxe, so that it startsFilippos Karapetis
2015-12-29SCI32: split up SCI2.1 into EARLY/MIDDLE/LATEMartin Kiewitz
- Detection works via signatures (couldn't find a better way) - new kString subcalls were introduced SCI2.1 LATE - kString now has signatures and is split via subcall table - kString fix, so that KQ7 doesn't crash, when starting a chapter - Sci2StringFunctionType removed, because no longer needed
2015-02-15SCI: Add more audio debugging outputWillem Jan Palenstijn
2015-02-15SCI: Only allow a single 'playBed' song in SCI1earlyWillem Jan Palenstijn
2015-02-15SCI: Allow channel remapping from audio thread tooWillem Jan Palenstijn
2015-02-15SCI: Use sound resource priority by default for songsWillem Jan Palenstijn
SCI1 sound resources can have an embedded priority. We now use that by default, unless an explicit DoSound/SetPriority call overrides it. Thanks waltervn. This fixes relative priority of songs in at least PQ3 room 29. Also increase savegame version to 33.
2015-02-15SCI: Give songs that start playing later higher priorityWillem Jan Palenstijn
2015-02-15SCI: Add debugging outputWillem Jan Palenstijn
2015-02-15SCI: Handle voice limits differentlyWillem Jan Palenstijn
For playBed songs, SCI1early remappers didn't unmap the entire song when there weren't enough voices for a channel. Thanks waltervn.
2015-02-15SCI: Don't remap channels from playBed songsWillem Jan Palenstijn
2015-02-15SCI: Always re-sort playlist in soundPlayWillem Jan Palenstijn
Previously, it would only sort if a song wasn't already in the playlist. Since initSound already adds it, this effectively prevented the list from being sorted.
2015-02-14SCI: Register and save playBed option to PlaySoundWillem Jan Palenstijn
The playBed option is not handled yet, only stored. This increases the savegame format version.
2015-02-14SCI: Match SSCI channel reset orderWillem Jan Palenstijn
It may or may not matter for a driver's voice mapping.
2015-02-14SCI: Avoid resetting already unused channelsWillem Jan Palenstijn
2014-10-28SCI: Remove trailing whitespaceFilippos Karapetis
2014-05-29SCI: kDoSound: only one sample at once - thx wjpMartin Kiewitz
Calling kDoSound(play) on a sample will stop currently playing sample Fixes Space Quest 5 air-lock sound issue (bug #6464) Thanks to wjp for tracking the issue down
2014-05-27ALL: Rename Debugger::DebugPrintf to Debugger::debugPrintf.Johannes Schickel
2014-05-25SCI: Make debugging output conditionalWillem Jan Palenstijn
2014-05-25SCI: Fix voice mapping during midi channel remappingWillem Jan Palenstijn
This fixes the first Patti dream sequence piano song in LSL5 room 320.
2014-02-18SCI: Make GPL headers consistent in themselves.Johannes Schickel
2014-01-06SCI: Fix memory leakWillem Jan Palenstijn
Thanks to digitall for testing.
2013-12-31SCI: Remove no longer necessary hackWillem Jan Palenstijn
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-21AUDIO: Simplify SCI inFastForward flag by moving it to MidiParserWillem Jan Palenstijn
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-04-06SCI: Notify scripts of completed fade when aborting itWillem Jan Palenstijn
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.
2012-09-01SCI: Limit the hack used for sound initialization to the Fun Seeker's demo onlyFilippos Karapetis
2012-09-01SCI: Allow the Fun Seeker's Guide demo to runFilippos Karapetis
This demo doesn't have any music, and the original doesn't work with any sound driver, so don't error out when the sound driver can't be initialized properly
2012-04-29SCI: Fix for bug #3522046 "Detection of SQ4CD as Windows breaks Music"Filippos Karapetis
Fall back to the DOS soundtracks in Windows CD versions if the user picks a non-General MIDI music device, as the Windows tracks only contain MIDI music
2011-12-28SCI: Rename _bMultiMidi to _useDigitalSFX and only initialize it inside ↵Filippos Karapetis
SoundCommandParser
2011-11-05SCI: add Japanese MUMG detection entry and adapt Fm-Towns sound driverathrxx
2011-11-01SCI: Fixed bug #3430834 - "SCI: KQ6: Music stops after leaving shop"Filippos Karapetis
A regression from commit 9654068
2011-11-01SCI: limit new FM-Towns driver to KQ5athrxx
Mixed up mother goose is reported not to use that driver and even crash when trying to use it. Play Id and instrument patch id seem to be different.
2011-11-01SCI: (KQ5 FM-Towns) - fix voice mappingathrxx
(Driver channels would get reserved via the 0x4b control, but they would never get released)
2011-11-01SCI: add sound driver for KQ5 FM-Townsathrxx
2011-10-06SCI: Also default to MIDI for Windows versions of SCI1.1 gamesFilippos Karapetis
2011-06-20ALL: Remove trailing whitespacesMax Horn
This tries to make our code a bit more compliant with our code formatting conventions. For future use, this is the command I used: git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-03SCI: Show object names in the songlib console commandmd5
2011-04-03SCI: Fixed bug #3266480 and partially fixed bug #3041738md5
Hopefully, this will fix some of the oddities happening because of music fading
2011-03-23ENGINES: Use Common::StackLock in more placesMax Horn
2011-03-03SCI: Always clear looping and hold before jumpToTick() is calledmd5
Fixes a crash in LSL3 Amiga
2011-02-28SCI: Reverted rc7bfbc3 and fixed the actual cause of bug #3106107md5
While fast forwarding a song, disable its hold value together with any possible sound looping, so that the song won't loop forever.
2011-02-27SCI: Renamed SCI_VERSION_1_EGA to SCI_VERSION_1_EGA_ONLYmd5
This renaming allows us to better distinguish that this version is for games that only had an EGA version, and avoid confusion with newer SCI1 game releases with EGA graphics (e.g. KQ5 EGA). The only game with this SCI version is QFG2, a SCI1 EGA game with a parser. Also, added some games for each SCI version.
2011-02-09AUDIO: Rename sound/ dir to audio/Max Horn
svn-id: r55850