diff --git a/desmume/src/windows/main.cpp b/desmume/src/windows/main.cpp index 07afa9c87..c1a37f740 100644 --- a/desmume/src/windows/main.cpp +++ b/desmume/src/windows/main.cpp @@ -132,6 +132,7 @@ GPU3DInterface *core3DList[] = { int autoframeskipenab=1; int frameskiprate=0; +int emu_paused = 0; static int backupmemorytype=MC_TYPE_AUTODETECT; static u32 backupmemorysize=1; @@ -1589,15 +1590,19 @@ LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM CheckMenuItem(menu, IDM_SBG3, MF_BYCOMMAND | MF_CHECKED); } return 0; - case IDM_EXEC: - EnableMenuItem(menu, IDM_EXEC, MF_GRAYED); - EnableMenuItem(menu, IDM_PAUSE, MF_ENABLED); - NDS_UnPause(); - return 0; - case IDM_PAUSE: - EnableMenuItem(menu, IDM_EXEC, MF_ENABLED); - EnableMenuItem(menu, IDM_PAUSE, MF_GRAYED); - NDS_Pause(); + //case IDM_EXEC: + // EnableMenuItem(menu, IDM_EXEC, MF_GRAYED); + // EnableMenuItem(menu, IDM_PAUSE, MF_ENABLED); + // NDS_UnPause(); + // return 0; + case ACCEL_P: + case IDM_PAUSE: + if (emu_paused) NDS_UnPause(); + else NDS_Pause(); + emu_paused ^= 1; + CheckMenuItem(menu, IDM_PAUSE, emu_paused ? MF_CHECKED : MF_UNCHECKED); + // EnableMenuItem(menu, IDM_EXEC, MF_ENABLED); + // EnableMenuItem(menu, IDM_PAUSE, MF_GRAYED); return 0; #define saver(one,two,three,four,five, six) \ diff --git a/desmume/src/windows/resource.h b/desmume/src/windows/resource.h index b84f052c2..7194a920f 100644 --- a/desmume/src/windows/resource.h +++ b/desmume/src/windows/resource.h @@ -283,14 +283,14 @@ #define IDC_LIGHT_VIEWER_LIGHT3COLOR_EDIT 1333 #define IDC_LIGHT_VIEWER_LIGHT3VECTOR_EDIT 1334 #define IDM_ABOUT 40003 -#define IDC_STATIC -1 +#define ACCEL_P 40004 // Next default values for new objects // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 101 -#define _APS_NEXT_COMMAND_VALUE 40003 +#define _APS_NEXT_COMMAND_VALUE 40005 #define _APS_NEXT_CONTROL_VALUE 1000 #define _APS_NEXT_SYMED_VALUE 101 #endif diff --git a/desmume/src/windows/resources.rc b/desmume/src/windows/resources.rc index c37d1b3bd..babdb8b40 100644 --- a/desmume/src/windows/resources.rc +++ b/desmume/src/windows/resources.rc @@ -27,6 +27,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDR_MAIN_ACCEL ACCELERATORS BEGIN + "P", ACCEL_P, VIRTKEY, NOINVERT VK_F1, IDM_STATE_LOAD_F1, VIRTKEY, NOINVERT VK_F10, IDM_STATE_LOAD_F10, VIRTKEY, NOINVERT VK_F2, IDM_STATE_LOAD_F2, VIRTKEY, NOINVERT