aboutsummaryrefslogtreecommitdiff
path: root/engines/groovie/music.h
diff options
context:
space:
mode:
authorJordi Vilalta Prat2008-12-19 16:55:54 +0000
committerJordi Vilalta Prat2008-12-19 16:55:54 +0000
commit3f3b742cd64b459de1a7f2a4847159198826fd8f (patch)
tree82bd1a71b75bec84f96b5241c59666098cad2705 /engines/groovie/music.h
parentc4f33dfb866e71ff34331fe696076c0ffc2f60eb (diff)
downloadscummvm-rg350-3f3b742cd64b459de1a7f2a4847159198826fd8f.tar.gz
scummvm-rg350-3f3b742cd64b459de1a7f2a4847159198826fd8f.tar.bz2
scummvm-rg350-3f3b742cd64b459de1a7f2a4847159198826fd8f.zip
T7G: Add support for custom AdLib instruments
svn-id: r35440
Diffstat (limited to 'engines/groovie/music.h')
-rw-r--r--engines/groovie/music.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/engines/groovie/music.h b/engines/groovie/music.h
index 91e42c05e9..aa774fe2bf 100644
--- a/engines/groovie/music.h
+++ b/engines/groovie/music.h
@@ -62,6 +62,24 @@ private:
byte _chanVolumes[0x10];
void updateChanVolume(byte channel);
+ // Channel banks
+ byte _chanBanks[0x10];
+
+ // Timbres
+ class Timbre {
+ public:
+ Timbre() : data(NULL) {}
+ byte patch;
+ byte bank;
+ uint32 size;
+ byte *data;
+ };
+ Common::Array<Timbre> _timbres;
+ void loadTimbres(const Common::String &filename);
+ void clearTimbres();
+ void setTimbreAD(byte channel, const Timbre &timbre);
+ void setTimbreMT(byte channel, const Timbre &timbre);
+
public:
// MidiDriver interface
int open();
@@ -79,6 +97,7 @@ private:
byte *_data;
MidiParser *_midiParser;
MidiDriver *_driver;
+ uint8 _musicType;
uint16 _backgroundFileRef;
uint8 _prevCDtrack;