diff options
author | Travis Howell | 2003-07-15 07:29:23 +0000 |
---|---|---|
committer | Travis Howell | 2003-07-15 07:29:23 +0000 |
commit | eddf0754953cada22b0e299dca31513bb98bf694 (patch) | |
tree | 5b6e3d84c8281b0ca21656637990b0b7b9bfd97f /scumm | |
parent | b05e7de7bb7d59647356d63ccb10e53bbec61bcd (diff) | |
download | scummvm-rg350-eddf0754953cada22b0e299dca31513bb98bf694.tar.gz scummvm-rg350-eddf0754953cada22b0e299dca31513bb98bf694.tar.bz2 scummvm-rg350-eddf0754953cada22b0e299dca31513bb98bf694.zip |
Remove warning in simon
Add INDY3EGA Amiga - experimental support for sound effects, patch #771355
svn-id: r9033
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/sound.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/scumm/sound.cpp b/scumm/sound.cpp index 34cbd2b045..096a8310f1 100644 --- a/scumm/sound.cpp +++ b/scumm/sound.cpp @@ -486,6 +486,26 @@ void Sound::playSound(int soundID) { return; } + if ((_scumm->_features & GF_AMIGA) && (_scumm->_version == 3)) + { + // experimental support for Indy3 Amiga sound effects + if (READ_BE_UINT16(ptr + 26) == 0x00FF) // looped sound + // TODO: support looping sounds + // ptr + 14 seems to be looping duration + flags = 0; + else if (READ_BE_UINT16(ptr + 26) == 0x0001) // nonlooped sound + flags = 0; // + else if (READ_BE_UINT16(ptr + 26) == 0x0101) // background music + // TODO: support music + return; + else + debug(3,"Unknown sound type detected!"); + size = READ_BE_UINT16(ptr + 12); + rate = 11000; + _scumm->_mixer->playRaw(NULL, ptr + 28, size, rate, flags, soundID); + return; + } + if (_scumm->_features & GF_OLD_BUNDLE) { //TODO: support maniac v1 sounds if ((_scumm->_version == 1) && (_scumm->_gameId == GID_MANIAC)) |