aboutsummaryrefslogtreecommitdiff
path: root/libopna
diff options
context:
space:
mode:
Diffstat (limited to 'libopna')
-rw-r--r--libopna/opnadrum.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libopna/opnadrum.c b/libopna/opnadrum.c
index c3e8d38..5bb3f56 100644
--- a/libopna/opnadrum.c
+++ b/libopna/opnadrum.c
@@ -94,6 +94,7 @@ void opna_drum_mix(struct opna_drum *drum, int16_t *buf, int samples) {
co *= 15 - (level&7);
co >>= 1+(level>>3);
unsigned outlevel = co > 0 ? co : -co;
+ if (!drum->drums[d].left && !drum->drums[d].right) outlevel = 0;
if (outlevel > levels[d]) levels[d] = outlevel;
if (!(drum->mask & (1u << d))) {
if (drum->drums[d].left) lo += co;