aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/sfx/music.cpp
AgeCommit message (Collapse)Author
2010-01-04SCI/new music code: Fixed the code that handles mixed Adlib/MIDI mode, and ↵Filippos Karapetis
added better comments on what it actually does svn-id: r46981
2010-01-04SCI/newmusic: fadeout in sci0 (not stopping music yet), revert of ↵Martin Kiewitz
SoundResource changes svn-id: r46972
2010-01-04SCI/new music code: Now the the music driver to use is obtained directly ↵Filippos Karapetis
from the sound options, instead of asking for a driver which supports the requested MIDI driver flags svn-id: r46966
2010-01-04SCI/new music code: The number of voices is now obtained from the MIDI driverFilippos Karapetis
svn-id: r46964
2010-01-03Fixed a bunch of cppcheck warnings. Mostly about checking if a pointer is nullTorbjörn Andersson
before freeing it, which isn't necessary. svn-id: r46941
2010-01-03SCI/new music code:Filippos Karapetis
- sounds are no longer stopped in cmdUpdateCues if their signal is set - cmdSetSoundVolume no longer throws a warning if it can't find the associated sound (in some games, it's called before the actual sound is loaded) - removed unused parameters to the SciMusic() class and to MusicEntry::onTimer() - removed a hack to get the sound loop selector svn-id: r46923
2010-01-02SCI/new music code: Fixed sound patch loading when restoring a saved gameFilippos Karapetis
svn-id: r46896
2010-01-02SCI/newmusic: fading signal handling changed... fixes lsl1demo and gk1demoMartin Kiewitz
svn-id: r46891
2010-01-02SCI/new music code: don't stop a music track if the fading effect has just ↵Filippos Karapetis
finished. Fixes the music in GK1 (demo and full) svn-id: r46887
2010-01-02SCI/new music code: Properly implemented cmdSetSoundHold, with the help of ↵Filippos Karapetis
wjp and waltervn svn-id: r46886
2010-01-02SCI/new music code: Implemented cmdSetSoundHold. Larry now exits the limo ↵Filippos Karapetis
normally in LSL5 svn-id: r46880
2010-01-02SCI/newmusic: set default volume on MusicEntry creation, use volume selector ↵Martin Kiewitz
sci1late (soundversion) only svn-id: r46875
2010-01-02SCI/new music code: Fixed some mutex-related issuesFilippos Karapetis
svn-id: r46869
2010-01-01SCI/newmusic: changed setting volume from fade logic, implemented updating ↵Martin Kiewitz
loop selector for sound fx svn-id: r46856
2010-01-01SCI: fix buildMartin Kiewitz
svn-id: r46854
2010-01-01SCI/newmusic: changed fade volume setting for digital fx to onTimer() again, ↵Martin Kiewitz
because setting it in updateCues() wont work right. We are processing fading effectively in there any way, added TODO for working approach svn-id: r46853
2010-01-01SCI/newmusic: now clips volume against MUSIC_VOLUME_MAX (127) instead of the ↵Martin Kiewitz
mixer max volume (which would be wrong of course), adjusts volume when setting sample channel volume svn-id: r46850
2010-01-01SCI/new music code: The MIDI driver is now reset whenever the game's VM ↵Filippos Karapetis
respawns, like what the old music code does. Fixes the MIDI music in KQ5CD, Lonbgow and perhaps others svn-id: r46843
2010-01-01SCI/newmusic: set speech soundtype for audio resources played by kDoSound, ↵Martin Kiewitz
cmdVolume is supposed to set music and sfx volume only - this whole fixes volume issues in lb2cd and others svn-id: r46842
2010-01-01SCI/new music code: Center pitch wheel when unloading music tracksFilippos Karapetis
svn-id: r46840
2010-01-01SCI/new music code: Moved processing of digital sound effects outside the ↵Filippos Karapetis
MIDI worker thread. Some cleanup svn-id: r46834
2010-01-01SCI/newmusic: better solution for volume - using int16 during fade, volume ↵Martin Kiewitz
is now byte again svn-id: r46829
2010-01-01SCI/newmusic: added fade and loop capability to samples (looping doesnt work ↵Martin Kiewitz
yet), fixes lsl1 doll inflation endless loop svn-id: r46820
2010-01-01SCI/new music code:Filippos Karapetis
- Resolved a deadlock with the mixer, and added appropriate mutexes (a result of the fact that SCI mixes MIDI and digital audio in the same list) - Fixed sound playing when loading games, by properly resetting the MIDI driver - Reverted savegame version to 14 - the changes in versions 15 and 16 don't have any effect on the currently enabled old music code, and the new music code is disabled by default, and is still prone to changes - Now saving/loading signal, loop and hold for each sound, as well as reverb - Added stub code for setting reverb and channel hold - The signal, loop and hold values of each song are cached, like in SSCI and like what happens in Greg's SCI implementation. This allows a clear separation of the engine code from the rest of the engine. Reverted commits 46792 and 46797 - Removed duplicate song list accessing code - Song cues are now updated in kAnimate for SCI0, like the old music code does, to compensate for the fact that SCI0 didn't poll for music changes via cmdUpdateCues, like what SCI01 and newer do - Cleanup svn-id: r46812
2009-12-31SCI/new music: trigger signal when fade is completed, fixes lsl1 dance with girlMartin Kiewitz
svn-id: r46798
2009-12-31SCI/new music code: removed some hacksFilippos Karapetis
svn-id: r46793
2009-12-31SCI/new music code: The loop selector for each music score is no longer ↵Filippos Karapetis
cached, but read directly from the sound object svn-id: r46792
2009-12-29SCI/newmusic: fixed fading (fixes gk1 demo, park area)Martin Kiewitz
svn-id: r46730
2009-12-29SCI/newmusic: changed pauseCounter again ;)Martin Kiewitz
svn-id: r46707
2009-12-29SCI/newmusic: changed pausecounter behaviour within resumeMartin Kiewitz
svn-id: r46706
2009-12-29SCI/new music code: Fixed loading of saved games. Also, stopped sounds are ↵Filippos Karapetis
no longer paused svn-id: r46700
2009-12-28SCI/newmusic: Added pausecounter cause sierra sci also does thisMartin Kiewitz
svn-id: r46693
2009-12-28SCI/newmusic: Added comment about weird sierra sci behaviourMartin Kiewitz
svn-id: r46691
2009-12-28SCI/newmusic: Accept object 0:0 in cmdPauseHandle, pause the whole playlist ↵Martin Kiewitz
then (fixes castle of dr. brain during intro) svn-id: r46690
2009-12-28SCI: Further objectify MusicEntryMax Horn
svn-id: r46689
2009-12-28SCI: Start objectifying MusicEntryMax Horn
svn-id: r46687
2009-12-28cleanupMax Horn
svn-id: r46686
2009-12-28SCI: Make some code comply to our naming conventionsMax Horn
svn-id: r46685
2009-12-28SCI/new sound code:Filippos Karapetis
- Made the SciMusic class private, and added wrapper functions for invoking specific methods of SciMusic from outside the SoundCommandParser class - Many SCI games keep creating and destroying sound effects constantly (i.e. many times per second). Therefore, another scheme has been devised, which replaces the mutex that was in place. Whenever a sound command is run which operates on a specific object in the play list, we disallow onTimer() from kicking in. This isn't ideal, but it does stop random deadlocks because of locked mutexes without any noticeable side effects svn-id: r46681
2009-12-28SCI/new music code: Implemented the "songlib" debug commandFilippos Karapetis
svn-id: r46670
2009-12-28SCI/new music code: Fixed a race condition when removing a sound from the ↵Filippos Karapetis
playlist svn-id: r46668
2009-12-28SCI/new music code: Fixed music fading in SCI2 - seems like setting the ↵Filippos Karapetis
signal when fading is done isn't necessary svn-id: r46666
2009-12-27SCI/new music code:Filippos Karapetis
- Switched to Common::StackLock for mutexes - Renamed Music::stopAll() -> Music::clearPlayList() - Implemented a better Music::stopAll method, which stops all sounds with proper signals, instead of destroying them - Renamed the SCI0 command cmdGetPlayNext -> cmdStopAllSounds and implemented it svn-id: r46665
2009-12-27SCI/newmusic: fix getting of mastervolume. cause of rounding we will ↵Martin Kiewitz
otherwise decrease mastervolume by 1 on every access resulting in no sound after a while :) (fixes lb2, sq4cd and others) svn-id: r46654
2009-12-27SCI/newmusic: Fixed fading (fixes intro of castle of brain)Martin Kiewitz
svn-id: r46651
2009-12-27Added some currently disabled code to be used when sound fading is done ↵Filippos Karapetis
(needs testing) svn-id: r46649
2009-12-27SCI/new music code:Filippos Karapetis
- Implemented sound muting - Now saving/loading the master music volume svn-id: r46643
2009-12-27SCI/newmusic: moving commented assertMartin Kiewitz
svn-id: r46632
2009-12-27SCI/newmusic: now playing sample data for sci0 games (this also fixes sq3 ↵Martin Kiewitz
amiga freezing during pot exit) svn-id: r46631
2009-12-27SCI/newmusic: now adding digital sample data as separate channel for sci0 ↵Martin Kiewitz
games (not yet playing) svn-id: r46629