From ab432327d89e239c077eda6d64f50253773e9d76 Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Mon, 3 Jan 2005 11:33:12 +0000 Subject: Add missing control changes, patch #1094825. svn-id: r16416 --- sound/softsynth/adlib.cpp | 10 ++++++++-- 1 file 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); } } -- cgit v1.2.3