mirror of
https://github.com/libretro/RetroArch
synced 2025-02-03 17:54:04 +00:00
(PS3/XDK) Better way to toggle frame advance
This commit is contained in:
parent
0261d934f2
commit
04674fbba7
@ -815,7 +815,10 @@ HRESULT CRetroArchQuickMenu::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled
|
||||
break;
|
||||
case MENU_ITEM_FRAME_ADVANCE:
|
||||
if (g_extern.console.emulator_initialized)
|
||||
{
|
||||
g_extern.lifecycle_state |= (1ULL << RARCH_FRAMEADVANCE);
|
||||
rarch_settings_change(S_FRAME_ADVANCE);
|
||||
}
|
||||
break;
|
||||
case MENU_ITEM_SCREENSHOT_MODE:
|
||||
if (g_extern.console.rmenu.state.msg_info.enable)
|
||||
|
@ -2036,6 +2036,7 @@ static void ingame_menu(menu *current_menu, uint64_t input)
|
||||
case MENU_ITEM_FRAME_ADVANCE:
|
||||
if((input & (1ULL << RMENU_DEVICE_NAV_B)) || (input & (1ULL << RMENU_DEVICE_NAV_R2)) || (input & (1ULL << RMENU_DEVICE_NAV_L2)))
|
||||
{
|
||||
g_extern.lifecycle_state |= (1ULL << RARCH_FRAMEADVANCE);
|
||||
rarch_settings_change(S_FRAME_ADVANCE);
|
||||
g_extern.console.rmenu.ingame_menu.idx = MENU_ITEM_FRAME_ADVANCE;
|
||||
}
|
||||
|
@ -460,19 +460,7 @@ static bool ps3_input_key_pressed(void *data, int key)
|
||||
if(g_extern.lifecycle_state & (1ULL << key))
|
||||
return true;
|
||||
|
||||
switch (key)
|
||||
{
|
||||
case RARCH_FRAMEADVANCE:
|
||||
if(g_extern.console.screen.state.frame_advance.enable)
|
||||
{
|
||||
g_extern.console.rmenu.state.rmenu.enable = true;
|
||||
g_extern.console.rmenu.state.ingame_menu.enable = true;
|
||||
g_extern.console.rmenu.mode = MODE_MENU;
|
||||
}
|
||||
return false;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
static void ps3_set_default_keybind_lut(unsigned device, unsigned port)
|
||||
|
11
retroarch.c
11
retroarch.c
@ -2821,6 +2821,17 @@ bool rarch_main_iterate(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_RMENU
|
||||
if (input_key_pressed_func(RARCH_FRAMEADVANCE))
|
||||
{
|
||||
g_extern.lifecycle_state &= ~(1ULL << RARCH_FRAMEADVANCE);
|
||||
g_extern.console.rmenu.state.rmenu.enable = true;
|
||||
g_extern.console.rmenu.state.ingame_menu.enable = true;
|
||||
g_extern.console.rmenu.mode = MODE_MENU;
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -344,14 +344,6 @@ static bool xdk_input_key_pressed(void *data, int key)
|
||||
return ((state[0] & XINPUT1_GAMEPAD_RSTICK_RIGHT_MASK) && (state[0] & XINPUT1_GAMEPAD_RIGHT_TRIGGER));
|
||||
case RARCH_STATE_SLOT_MINUS:
|
||||
return ((state[0] & XINPUT1_GAMEPAD_RSTICK_LEFT_MASK) && (state[0] & XINPUT1_GAMEPAD_RIGHT_TRIGGER));
|
||||
case RARCH_FRAMEADVANCE:
|
||||
if(g_extern.console.screen.state.frame_advance.enable)
|
||||
{
|
||||
g_extern.console.rmenu.state.rmenu.enable = true;
|
||||
g_extern.console.rmenu.mode = MODE_MENU;
|
||||
g_extern.console.rmenu.state.ingame_menu.enable = true;
|
||||
}
|
||||
return false;
|
||||
case RARCH_REWIND:
|
||||
return ((state[0] & XINPUT1_GAMEPAD_RSTICK_UP_MASK) && !(state[0] & XINPUT1_GAMEPAD_RIGHT_TRIGGER));
|
||||
default:
|
||||
|
Loading…
x
Reference in New Issue
Block a user