Skip to content

Commit d5efca7

Browse files
committed
Fix regression in Vu
1 parent 53dfc2b commit d5efca7

2 files changed

Lines changed: 9 additions & 8 deletions

File tree

src/macros.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787
#define ugrb_u32(r,g,b) ((uint32_t)(r) << 8) | ((uint32_t)(g) << 16) | (uint32_t)(b)
8888
#endif
8989
#ifndef rgbb
90-
#define rgbb(inp,br) (uint8_t)abs((inp / 255) * br)
90+
#define rgbb(inp,br) (uint8_t)fabsl((inp / 255) * br)
9191
#endif
9292
#endif
9393

src/vu.c

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
*
2424
*/
2525

26+
#include <math.h>
2627
#include "globals.h"
2728
#include "config.h"
2829
#include "gpio.h"
@@ -119,7 +120,7 @@ void led_vumeter_task(void)
119120
osc2 = (sid_memory[0x07] * 0.596f); /* Frequency in Hz of SID1 @ $D400 Oscillator 2 */
120121
osc3 = (sid_memory[0x0E] * 0.596f); /* Frequency in Hz of SID1 @ $D400 Oscillator 3 */
121122

122-
vu = abs((int)((osc1 + osc2 + osc3) / 3.0f));
123+
vu = fabsl(((osc1 + osc2 + osc3) / 3.0f));
123124
vu = map(vu, 0, HZ_MAX, 0, VU_MAX);
124125
if (usbsid_config.LED.enabled) {
125126
pwm_value = (uint16_t)vu;
@@ -131,9 +132,9 @@ void led_vumeter_task(void)
131132
int sidno = (usbsid_config.RGBLED.sid_to_use - 1) * 0x20;
132133
rgb_value = (
133134
(ugrb_u32(
134-
rgbb((int)(sid_memory[0x00 + sidno] * 0.596f),usbsid_config.RGBLED.brightness),
135-
rgbb((int)(sid_memory[0x07 + sidno] * 0.596f),usbsid_config.RGBLED.brightness),
136-
rgbb((int)(sid_memory[0x0E + sidno] * 0.596f),usbsid_config.RGBLED.brightness))
135+
rgbb((sid_memory[0x00 + sidno] * 0.596f),usbsid_config.RGBLED.brightness),
136+
rgbb((sid_memory[0x07 + sidno] * 0.596f),usbsid_config.RGBLED.brightness),
137+
rgbb((sid_memory[0x0E + sidno] * 0.596f),usbsid_config.RGBLED.brightness))
137138
) << 8u);
138139
dma_hw->multi_channel_trigger = (1u << dma_rgbled);
139140
}
@@ -187,9 +188,9 @@ void led_breathe_task(void)
187188
b_ = (_rgb == 2 || _rgb == 4 || _rgb == 5) ? (rgb_ * 8) : 0;
188189
rgb_value = (
189190
(ugrb_u32(
190-
rgbb((int)r_,usbsid_config.RGBLED.brightness),
191-
rgbb((int)g_,usbsid_config.RGBLED.brightness),
192-
rgbb((int)b_,usbsid_config.RGBLED.brightness))
191+
rgbb(r_,usbsid_config.RGBLED.brightness),
192+
rgbb(g_,usbsid_config.RGBLED.brightness),
193+
rgbb(b_,usbsid_config.RGBLED.brightness))
193194
) << 8u);
194195
dma_hw->multi_channel_trigger = (1u << dma_rgbled);
195196
} else {

0 commit comments

Comments
 (0)