aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/sound.h
diff options
context:
space:
mode:
authorPaul Gilbert2011-05-24 20:07:41 +1000
committerPaul Gilbert2011-05-24 21:27:19 +1000
commita4f3907bb1c8cc7d9a861f0901135e8a8d9846b0 (patch)
tree1f01d11d02f28595df013eb7aa41ea98388845b5 /engines/tsage/sound.h
parent52fbf6709aaa84574d96b98aedc99b1c611da1e6 (diff)
downloadscummvm-rg350-a4f3907bb1c8cc7d9a861f0901135e8a8d9846b0.tar.gz
scummvm-rg350-a4f3907bb1c8cc7d9a861f0901135e8a8d9846b0.tar.bz2
scummvm-rg350-a4f3907bb1c8cc7d9a861f0901135e8a8d9846b0.zip
TSAGE: Added some extra code for volume control and start on rethinking voice types
Diffstat (limited to 'engines/tsage/sound.h')
-rw-r--r--engines/tsage/sound.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/engines/tsage/sound.h b/engines/tsage/sound.h
index 591d0e1e07..145282c499 100644
--- a/engines/tsage/sound.h
+++ b/engines/tsage/sound.h
@@ -77,8 +77,10 @@ public:
virtual bool open() { return true; }
virtual void close() {}
virtual const GroupData *getGroupData() = 0;
- virtual void setVolume(int volume) {}
+ virtual void setMasterVolume(int volume) {}
virtual void installPatchBank(const byte *data) {}
+ virtual void setVolume0(int channel, int v2, int v3, int volume) {}
+ virtual void setVolume1(int channel, int v2, int v3, int volume) {}
virtual void poll() {}
};
@@ -93,11 +95,25 @@ struct VoiceStructEntry {
int _fieldA;
int _fieldC;
int _fieldD;
+ int _fieldE;
+ int _field10;
+ int _field11;
+ int _field12;
+ int _field13;
+ int _field14;
+ int _field16;
+ int _field18;
+ int _field19;
+
+ int _field1A;
+ int _field1B;
};
+enum VoiceType {VOICETYPE_0 = 0, VOICETYPE_1 = 1};
+
class VoiceStruct {
public:
- int _field0;
+ VoiceType _voiceType;
int _field1;
int _field2;
@@ -195,6 +211,7 @@ public:
static void _sfDoUpdateVolume(Sound *sound);
static void _sfSoundServer();
static void _sfProcessFading();
+ static void _sfUpdateVoiceStructs();
};
class Sound: public EventHandler {