aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/sound.h
diff options
context:
space:
mode:
authorSven Hesse2007-01-31 13:17:50 +0000
committerSven Hesse2007-01-31 13:17:50 +0000
commit7101c0ef260fb1f095b8e04a5dc1ceb9e99cf759 (patch)
treee640d6e565b51bb7b251fb0b3bda68ddc05d468d /engines/gob/sound.h
parent836a4ea99e36cdfda21d77f3bd8c41d9db824d49 (diff)
downloadscummvm-rg350-7101c0ef260fb1f095b8e04a5dc1ceb9e99cf759.tar.gz
scummvm-rg350-7101c0ef260fb1f095b8e04a5dc1ceb9e99cf759.tar.bz2
scummvm-rg350-7101c0ef260fb1f095b8e04a5dc1ceb9e99cf759.zip
- Correctly setting of Snd::_playingSound
- Implemented sound fading in/out - o2_stub0x81 -> o2_scroll svn-id: r25307
Diffstat (limited to 'engines/gob/sound.h')
-rw-r--r--engines/gob/sound.h14
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);
};