Windows: Separate Pause and Break actions.
It was confusing that "Pause" made PPSSPP appear to hang. This has the side effect of making "Break on Load" work outside Windows.
This commit is contained in:
parent
9f307fd6e9
commit
0d4bd341e9
11 changed files with 39 additions and 32 deletions
|
@ -60,10 +60,11 @@ namespace MainWindow {
|
|||
EnableMenuItem(menu, ID_FILE_LOADSTATEFILE, menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_QUICKSAVESTATE, menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_QUICKLOADSTATE, menuEnable);
|
||||
EnableMenuItem(menu, ID_TOGGLE_PAUSE, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_PAUSE, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_STOP, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_RESET, menuEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_SWITCH_UMD, umdSwitchEnable);
|
||||
EnableMenuItem(menu, ID_TOGGLE_BREAK, menuEnable);
|
||||
EnableMenuItem(menu, ID_DEBUG_LOADMAPFILE, menuEnable);
|
||||
EnableMenuItem(menu, ID_DEBUG_SAVEMAPFILE, menuEnable);
|
||||
EnableMenuItem(menu, ID_DEBUG_LOADSYMFILE, menuEnable);
|
||||
|
@ -270,7 +271,7 @@ namespace MainWindow {
|
|||
TranslateMenuItem(menu, ID_FILE_EXIT, L"\tAlt+F4");
|
||||
|
||||
// Emulation menu
|
||||
TranslateMenuItem(menu, ID_TOGGLE_PAUSE, L"\tF8", "Pause");
|
||||
TranslateMenuItem(menu, ID_EMULATION_PAUSE);
|
||||
TranslateMenuItem(menu, ID_EMULATION_STOP, L"\tCtrl+W");
|
||||
TranslateMenuItem(menu, ID_EMULATION_RESET, L"\tCtrl+B");
|
||||
TranslateMenuItem(menu, ID_EMULATION_SWITCH_UMD, L"\tCtrl+U", "Switch UMD");
|
||||
|
@ -281,16 +282,17 @@ namespace MainWindow {
|
|||
TranslateMenuItem(menu, ID_EMULATION_ROTATION_V_R);
|
||||
|
||||
// Debug menu
|
||||
TranslateMenuItem(menu, ID_TOGGLE_BREAK, L"\tF8", "Break");
|
||||
TranslateMenuItem(menu, ID_DEBUG_BREAKONLOAD);
|
||||
TranslateMenuItem(menu, ID_DEBUG_IGNOREILLEGALREADS);
|
||||
TranslateMenuItem(menu, ID_DEBUG_LOADMAPFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_SAVEMAPFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_LOADSYMFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_SAVESYMFILE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_RESETSYMBOLTABLE);
|
||||
TranslateMenuItem(menu, ID_DEBUG_DUMPNEXTFRAME);
|
||||
TranslateMenuItem(menu, ID_DEBUG_TAKESCREENSHOT, L"\tF12");
|
||||
TranslateMenuItem(menu, ID_DEBUG_DUMPNEXTFRAME);
|
||||
TranslateMenuItem(menu, ID_DEBUG_SHOWDEBUGSTATISTICS);
|
||||
TranslateMenuItem(menu, ID_DEBUG_IGNOREILLEGALREADS);
|
||||
TranslateMenuItem(menu, ID_DEBUG_RUNONLOAD);
|
||||
TranslateMenuItem(menu, ID_DEBUG_DISASSEMBLY, L"\tCtrl+D");
|
||||
TranslateMenuItem(menu, ID_DEBUG_GEDEBUGGER, L"\tCtrl+G");
|
||||
TranslateMenuItem(menu, ID_DEBUG_EXTRACTFILE);
|
||||
|
@ -582,7 +584,7 @@ namespace MainWindow {
|
|||
ShellExecute(NULL, L"open", ConvertUTF8ToWString(g_Config.memStickDirectory).c_str(), 0, 0, SW_SHOW);
|
||||
break;
|
||||
|
||||
case ID_TOGGLE_PAUSE:
|
||||
case ID_TOGGLE_BREAK:
|
||||
if (GetUIState() == UISTATE_PAUSEMENU) {
|
||||
// Causes hang
|
||||
//NativeMessageReceived("run", "");
|
||||
|
@ -603,6 +605,11 @@ namespace MainWindow {
|
|||
noFocusPause = !noFocusPause; // If we pause, override pause on lost focus
|
||||
break;
|
||||
|
||||
case ID_EMULATION_PAUSE:
|
||||
NativeMessageReceived("pause", "");
|
||||
Core_EnableStepping(false);
|
||||
break;
|
||||
|
||||
case ID_EMULATION_STOP:
|
||||
if (Core_IsStepping())
|
||||
Core_EnableStepping(false);
|
||||
|
@ -821,7 +828,7 @@ namespace MainWindow {
|
|||
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
||||
break;
|
||||
|
||||
case ID_DEBUG_RUNONLOAD:
|
||||
case ID_DEBUG_BREAKONLOAD:
|
||||
g_Config.bAutoRun = !g_Config.bAutoRun;
|
||||
break;
|
||||
|
||||
|
@ -1055,7 +1062,7 @@ namespace MainWindow {
|
|||
CHECKITEM(ID_DEBUG_IGNOREILLEGALREADS, g_Config.bIgnoreBadMemAccess);
|
||||
CHECKITEM(ID_DEBUG_SHOWDEBUGSTATISTICS, g_Config.bShowDebugStats);
|
||||
CHECKITEM(ID_OPTIONS_HARDWARETRANSFORM, g_Config.bHardwareTransform);
|
||||
CHECKITEM(ID_DEBUG_RUNONLOAD, g_Config.bAutoRun);
|
||||
CHECKITEM(ID_DEBUG_BREAKONLOAD, !g_Config.bAutoRun);
|
||||
CHECKITEM(ID_OPTIONS_VERTEXCACHE, g_Config.bVertexCache);
|
||||
CHECKITEM(ID_OPTIONS_SHOWFPS, g_Config.iShowFPSCounter);
|
||||
CHECKITEM(ID_OPTIONS_FRAMESKIP_AUTO, g_Config.bAutoFrameSkip);
|
||||
|
@ -1322,7 +1329,7 @@ namespace MainWindow {
|
|||
lastGlobalUIState = GetUIState();
|
||||
|
||||
bool isPaused = Core_IsStepping() && GetUIState() == UISTATE_INGAME;
|
||||
TranslateMenuItem(menu, ID_TOGGLE_PAUSE, L"\tF8", isPaused ? "Run" : "Pause");
|
||||
TranslateMenuItem(menu, ID_TOGGLE_BREAK, L"\tF8", isPaused ? "Run" : "Break");
|
||||
}
|
||||
|
||||
// Message handler for about box.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue