aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJamieson Christian2003-07-11 06:25:37 +0000
committerJamieson Christian2003-07-11 06:25:37 +0000
commit39b37df37a7fed6f5dd62d11fb10e4b8276f05c1 (patch)
tree7b7e975aeea2f87ea5d2c11182c36de44a1c628b
parent85ef932330952a4e568bbd6ab171524eb9f530df (diff)
downloadscummvm-rg350-39b37df37a7fed6f5dd62d11fb10e4b8276f05c1.tar.gz
scummvm-rg350-39b37df37a7fed6f5dd62d11fb10e4b8276f05c1.tar.bz2
scummvm-rg350-39b37df37a7fed6f5dd62d11fb10e4b8276f05c1.zip
Fix for Bug [766984]: FOA: Adlib sound distortion
Added check for OOB note numbers when instantiating Adlib registers with frequency information. Must check WHY exactly we're getting OOB note numbers (and *way* OOB, at that). svn-id: r8902
-rw-r--r--backends/midi/adlib.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/backends/midi/adlib.cpp b/backends/midi/adlib.cpp
index b89d09c2b2..734f4632a6 100644
--- a/backends/midi/adlib.cpp
+++ b/backends/midi/adlib.cpp
@@ -1244,6 +1244,7 @@ void MidiDriver_ADLIB::adlib_playnote(int channel, int note) {
int i;
note2 = (note >> 7) - 4;
+ note2 = (note2 < 128) ? note2 : 0;
oct = (note2 / 12);
if (oct > 7)