diff options
author | Sven Hesse | 2007-02-15 22:07:44 +0000 |
---|---|---|
committer | Sven Hesse | 2007-02-15 22:07:44 +0000 |
commit | 15043066f2d7644ee7e885b1c57227bfeec34c3a (patch) | |
tree | 41a104d10d66f0edcc28e6c9d84eac9de7b0e18d /engines/gob/sound.h | |
parent | e3e76b59b6022054433c6c1df994b5ef97d8fa82 (diff) | |
download | scummvm-rg350-15043066f2d7644ee7e885b1c57227bfeec34c3a.tar.gz scummvm-rg350-15043066f2d7644ee7e885b1c57227bfeec34c3a.tar.bz2 scummvm-rg350-15043066f2d7644ee7e885b1c57227bfeec34c3a.zip |
- Changed the speaker stuff again
- Added the spanish gob2 version from bug report #1659884
svn-id: r25615
Diffstat (limited to 'engines/gob/sound.h')
-rw-r--r-- | engines/gob/sound.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/gob/sound.h b/engines/gob/sound.h index 4a614fc8cc..8d7ffd7b8d 100644 --- a/engines/gob/sound.h +++ b/engines/gob/sound.h @@ -51,6 +51,7 @@ public: Snd(GobEngine *vm); void speakerOn(int16 frequency, int32 length); void speakerOff(void); + void speakerOnUpdate(uint32 milis); SoundDesc *loadSoundData(const char *path); void stopSound(int16 fadeLength); void playSample(SoundDesc *sndDesc, int16 repCount, int16 frequency, int16 fadeLength = 0); @@ -79,6 +80,7 @@ protected: uint32 _periodLength; uint32 _periodSamples; uint32 _remainingSamples; + uint32 _mixedSamples; int16 _sampleValue; public: @@ -86,7 +88,8 @@ protected: ~SquareWaveStream() {} void playNote(int freq, int32 ms, uint rate); - void stop(void) { _remainingSamples = 0; } + void update(uint32 milis); + void stop(uint32 milis); int readBuffer(int16 *buffer, const int numSamples); @@ -98,6 +101,8 @@ protected: SquareWaveStream _speakerStream; Audio::SoundHandle _speakerHandle; + uint32 _speakerStartTimeKey; + Audio::SoundHandle *_activeHandle; Audio::SoundHandle _compositionHandle; |