OSDN Git Service

Fix lowpass filter for system effect.
authorSaito <saito2@digitalme.com>
Sun, 21 Dec 2003 08:05:29 +0000 (08:05 +0000)
committerSaito <saito2@digitalme.com>
Sun, 21 Dec 2003 08:05:29 +0000 (08:05 +0000)
ChangeLog
timidity/playmidi.c

index 2afd609..ee33cb6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,7 @@
        * timidity/reverb.[ch], timidity/readmidi.c, timidity/playmidi.c:
          Fix about Insertion Effect.
          Sort out codes.
+         Fix lowpass filter for system effect.
 
 2003-12-16  Saito <saito2@digitalme.com>
 
index df09a6b..7041212 100644 (file)
@@ -3119,7 +3119,7 @@ static void process_sysex_event(int ev, int ch, int val, int b)
                case 0x07:      /* Reverb Pre-LPF */
                        ctl->cmsg(CMSG_INFO,VERB_NOISY,"Reverb Pre-LPF (%d)",val);
                        if(reverb_status.pre_lpf != val) {
-                               reverb_status.pre_lpf = val;
+                               reverb_status.pre_lpf = val & 0x7;
                                recompute_reverb_status_gs();
                        }
                        break;
@@ -3162,7 +3162,7 @@ static void process_sysex_event(int ev, int ch, int val, int b)
                        break;
                case 0x0E:      /* Chorus Pre-LPF */
                        ctl->cmsg(CMSG_INFO,VERB_NOISY,"Chorus Pre-LPF (%d)",val);
-                       chorus_param.chorus_pre_lpf = val;
+                       chorus_param.chorus_pre_lpf = val & 0x7;
                        recompute_chorus_status_gs();
                        break;
                case 0x0F:      /* Chorus Level */
@@ -3212,7 +3212,7 @@ static void process_sysex_event(int ev, int ch, int val, int b)
                        break;
                case 0x17:      /* Delay Pre-LPF */
                        ctl->cmsg(CMSG_INFO,VERB_NOISY,"Delay Pre-LPF (%d)",val);
-                       delay_status.pre_lpf = val;
+                       delay_status.pre_lpf = val & 0x7;
                        recompute_delay_status_gs();
                        break;
                case 0x18:      /* Delay Time Center */