diff options
| -rw-r--r-- | quantum/audio/voices.c | 19 | ||||
| -rw-r--r-- | quantum/audio/voices.h | 2 |
2 files changed, 18 insertions, 3 deletions
diff --git a/quantum/audio/voices.c b/quantum/audio/voices.c index 886101187..0b4b463c4 100644 --- a/quantum/audio/voices.c +++ b/quantum/audio/voices.c | |||
| @@ -101,14 +101,27 @@ float voice_envelope(float frequency) { | |||
| 101 | break; | 101 | break; |
| 102 | case duty_fifth_down: | 102 | case duty_fifth_down: |
| 103 | note_timbre = 0.5; | 103 | note_timbre = 0.5; |
| 104 | if ((envelope_index % 5) == 0) | 104 | if ((envelope_index % 3) == 0) |
| 105 | note_timbre = 0.75; | 105 | note_timbre = 0.75; |
| 106 | break; | 106 | break; |
| 107 | case duty_fourth_down: | 107 | case duty_fourth_down: |
| 108 | note_timbre = 0.0; | ||
| 108 | if ((envelope_index % 12) == 0) | 109 | if ((envelope_index % 12) == 0) |
| 110 | note_timbre = 0.75; | ||
| 111 | if (((envelope_index % 12) % 4) != 1) | ||
| 112 | note_timbre = 0.75; | ||
| 113 | break; | ||
| 114 | case duty_third_down: | ||
| 115 | note_timbre = 0.5; | ||
| 116 | if ((envelope_index % 5) == 0) | ||
| 117 | note_timbre = 0.75; | ||
| 118 | break; | ||
| 119 | case duty_fifth_third_down: | ||
| 120 | note_timbre = 0.5; | ||
| 121 | if ((envelope_index % 5) == 0) | ||
| 122 | note_timbre = 0.75; | ||
| 123 | if ((envelope_index % 3) == 0) | ||
| 109 | note_timbre = 0.25; | 124 | note_timbre = 0.25; |
| 110 | else | ||
| 111 | note_timbre = 0.5; | ||
| 112 | break; | 125 | break; |
| 113 | 126 | ||
| 114 | default: | 127 | default: |
diff --git a/quantum/audio/voices.h b/quantum/audio/voices.h index cdd14798b..66184c3a2 100644 --- a/quantum/audio/voices.h +++ b/quantum/audio/voices.h | |||
| @@ -18,6 +18,8 @@ typedef enum { | |||
| 18 | duty_octave_down, | 18 | duty_octave_down, |
| 19 | duty_fifth_down, | 19 | duty_fifth_down, |
| 20 | duty_fourth_down, | 20 | duty_fourth_down, |
| 21 | duty_third_down, | ||
| 22 | duty_fifth_third_down, | ||
| 21 | number_of_voices // important that this is last | 23 | number_of_voices // important that this is last |
| 22 | } voice_type; | 24 | } voice_type; |
| 23 | 25 | ||
