diff --git a/driver.h b/driver.h index 22d5fc40f6..0b0aea4998 100644 --- a/driver.h +++ b/driver.h @@ -681,7 +681,6 @@ extern rarch_joypad_driver_t *joypad_drivers[]; #define check_shader_dir_func(trigger_input) check_shader_dir(BIND_PRESSED(trigger_input, RARCH_SHADER_NEXT), BIND_PRESSED(trigger_input, RARCH_SHADER_PREV)) #define check_enter_menu_func(input) BIND_PRESSED(input, RARCH_MENU_TOGGLE) #define check_mute_func(input, old_input) check_mute(BIND_PRESSED(input, RARCH_MUTE), BIND_PRESSED(old_input, RARCH_MUTE)) -#define check_volume_func(input, old_input) check_volume(BIND_PRESSED(input, RARCH_VOLUME_UP), BIND_PRESSED(old_input, RARCH_VOLUME_DOWN)) #define check_fullscreen_func(trigger_input) rarch_check_fullscreen(BIND_PRESSED(trigger_input, RARCH_FULLSCREEN_TOGGLE_KEY)) #define check_fast_forward_button_func(input, old_input, trigger_input) check_fast_forward_button(BIND_PRESSED(trigger_input, RARCH_FAST_FORWARD_KEY), BIND_PRESSED(input, RARCH_FAST_FORWARD_HOLD_KEY), BIND_PRESSED(old_input, RARCH_FAST_FORWARD_HOLD_KEY)) #define check_rewind_func(input) check_rewind(BIND_PRESSED(input, RARCH_REWIND)) diff --git a/runloop.c b/runloop.c index dc1e896a32..92db10f4b7 100644 --- a/runloop.c +++ b/runloop.c @@ -48,17 +48,11 @@ static void check_mute(void) RARCH_LOG("%s\n", msg); } -static void check_volume(bool pressed_up, bool pressed_down) +static void set_volume(float gain) { char msg[256]; - if (pressed_up) - g_extern.audio_data.volume_db += 0.5f; - else if (pressed_down) - g_extern.audio_data.volume_db -= 0.5f; - else - return; - + g_extern.audio_data.volume_db += gain; g_extern.audio_data.volume_db = max(g_extern.audio_data.volume_db, -80.0f); g_extern.audio_data.volume_db = min(g_extern.audio_data.volume_db, 12.0f); @@ -433,7 +427,10 @@ static int do_state_checks( if (BIND_PRESSED(trigger_input, RARCH_MUTE)) check_mute(); - check_volume_func(input, old_input); + if (BIND_PRESSED(input, RARCH_VOLUME_UP)) + set_volume(0.5f); + else if (BIND_PRESSED(input, RARCH_VOLUME_DOWN)) + set_volume(-0.5f); if (BIND_PRESSED(trigger_input, RARCH_GRAB_MOUSE_TOGGLE)) check_grab_mouse_toggle();