diff options
author | Travis Howell | 2005-01-03 11:33:12 +0000 |
---|---|---|
committer | Travis Howell | 2005-01-03 11:33:12 +0000 |
commit | ab432327d89e239c077eda6d64f50253773e9d76 (patch) | |
tree | d2615e176485e972c2b9743881442e972d1ded19 | |
parent | 63be4b64350f72463965c2716e1e0cc43ade2f98 (diff) | |
download | scummvm-rg350-ab432327d89e239c077eda6d64f50253773e9d76.tar.gz scummvm-rg350-ab432327d89e239c077eda6d64f50253773e9d76.tar.bz2 scummvm-rg350-ab432327d89e239c077eda6d64f50253773e9d76.zip |
Add missing control changes, patch #1094825.
svn-id: r16416
-rw-r--r-- | sound/softsynth/adlib.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sound/softsynth/adlib.cpp b/sound/softsynth/adlib.cpp index 072a1fbc24..d77c7e4992 100644 --- a/sound/softsynth/adlib.cpp +++ b/sound/softsynth/adlib.cpp @@ -669,6 +669,7 @@ void AdlibPart::pitchBend(int16 bend) { void AdlibPart::controlChange(byte control, byte value) { switch (control) { + case 0: break; // Bank select. Not supported case 1: modulationWheel(value); break; case 7: volume(value); break; case 10: break; // Pan position. Not supported. @@ -679,10 +680,15 @@ void AdlibPart::controlChange(byte control, byte value) { case 91: break; // Effects level. Not supported. case 93: break; // Chorus level. Not supported. case 119: break; // Unknown, used in Simon the Sorcerer 2 - case 121: break; // Unknown, used in Simon the Sorcerer 1 + case 121: // reset all controllers + modulationWheel(0); + pitchBendFactor(0); + detune(0); + sustain(0); + break; case 123: allNotesOff(); break; default: - warning("Adlib: Unknown control change message %d", (int) control); + warning("Adlib: Unknown control change message %d (%d)", (int) control, (int)value); } } |