diff options
Diffstat (limited to 'engines/gob/sound.h')
-rw-r--r-- | engines/gob/sound.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/engines/gob/sound.h b/engines/gob/sound.h index dd059b44ee..2fc9a1ce00 100644 --- a/engines/gob/sound.h +++ b/engines/gob/sound.h @@ -52,8 +52,8 @@ public: void speakerOn(int16 frequency, int32 length); void speakerOff(void); SoundDesc *loadSoundData(const char *path); - void stopSound(int16 arg); - void playSample(SoundDesc *sndDesc, int16 repCount, int16 frequency); + void stopSound(int16 fadeLength); + void playSample(SoundDesc *sndDesc, int16 repCount, int16 frequency, int16 fadeLength = 0); void playComposition(int16 *composition, int16 freqVal); void stopComposition(void); int8 getCompositionSlot(void); @@ -113,10 +113,18 @@ protected: int32 _repCount; double _offset; double _ratio; + double _frac; int16 _cur; int16 _last; + bool _fade; + double _fadeVol; + double _fadeVolStep; + uint8 _fadeLength; + uint32 _fadeSamples; + uint32 _curFadeSamples; + GobEngine *_vm; void cleanupFuncCallback() {;} @@ -127,7 +135,7 @@ protected: void writeAdlib(int16 port, int16 data); void setBlasterPort(int16 port); void setResetTimerFlag(char flag){return;} - void setSample(Snd::SoundDesc *sndDesc, int16 repCount, int16 frequency); + void setSample(Snd::SoundDesc *sndDesc, int16 repCount, int16 frequency, int16 fadeLength); void checkEndSample(void); void nextCompositionPos(void); }; |