Show PREV/NEXT state status when paused and add State UNDO to the menu

This commit is contained in:
dinkc64 2014-06-11 19:14:33 +00:00
parent 3af87eb180
commit cc3a3dde84
4 changed files with 22 additions and 9 deletions

View File

@ -750,6 +750,7 @@ BEGIN
MENUITEM "Activate next slot\tF11", MENU_STATE_NEXTSLOT
MENUITEM "MENU_STATE_LOAD_SLOT", MENU_STATE_LOAD_SLOT, GRAYED
MENUITEM "MENU_STATE_SAVE_SLOT", MENU_STATE_SAVE_SLOT, GRAYED
MENUITEM "Undo last state save\tShift+F8", MENU_STATE_UNDO
END
MENUITEM "Restore full state on load", MENU_ALLRAM
END
@ -1313,6 +1314,7 @@ BEGIN
VK_F7, MENU_MEMCARD_SELECT, CONTROL, VIRTKEY, NOINVERT
VK_F8, MENU_STATE_PREVSLOT, VIRTKEY, NOINVERT
VK_F8, MENU_LOAD_NEOCD, CONTROL, VIRTKEY, NOINVERT
VK_F8, MENU_STATE_UNDO, SHIFT, VIRTKEY, NOINVERT
VK_F9, MENU_STATE_LOAD_SLOT, VIRTKEY, NOINVERT
VK_F9, MENU_STATE_LOAD_DIALOG, CONTROL, VIRTKEY, NOINVERT
VK_F10, MENU_STATE_SAVE_SLOT, VIRTKEY, NOINVERT

View File

@ -392,6 +392,7 @@
#define MENU_STATE_PREVSLOT 10034
#define MENU_STATE_NEXTSLOT 10035
#define MENU_ALLRAM 10036
#define MENU_STATE_UNDO 10037
#define MENU_TRIPLE 10100
#define MENU_FULL 10102
#define MENU_DWMFIX 10103

View File

@ -483,15 +483,6 @@ int RunMessageLoop()
}
break;
}
case VK_F8: {
if (bDrvOkay && (GetAsyncKeyState(VK_SHIFT) & 0x80000000)) {
TCHAR szString[256] = _T("state undo");
StatedUNDO(nSavestateSlot);
VidSNewShortMsg(szString);
}
break;
}
case VK_BACK: {
bShowFPS = !bShowFPS;
if (bShowFPS) {

View File

@ -741,6 +741,13 @@ int BurnerLoadDriver(TCHAR *szDriverName)
return 0;
}
static void PausedRedraw(void)
{
if (bVidOkay && (bRunPause || !bDrvOkay)) { // Show the message even if paused. - dink
VidRedraw();
VidPaint(0);
}
}
static void OnCommand(HWND /*hDlg*/, int id, HWND /*hwndCtl*/, UINT codeNotify)
{
@ -1037,6 +1044,7 @@ static void OnCommand(HWND /*hDlg*/, int id, HWND /*hwndCtl*/, UINT codeNotify)
}
_sntprintf(szString, 256, FBALoadStringEx(hAppInst, IDS_STATE_ACTIVESLOT, true), nSavestateSlot);
VidSNewShortMsg(szString);
PausedRedraw();
break;
}
case MENU_STATE_NEXTSLOT: {
@ -1048,8 +1056,19 @@ static void OnCommand(HWND /*hDlg*/, int id, HWND /*hwndCtl*/, UINT codeNotify)
}
_sntprintf(szString, 256, FBALoadStringEx(hAppInst, IDS_STATE_ACTIVESLOT, true), nSavestateSlot);
VidSNewShortMsg(szString);
PausedRedraw();
break;
}
case MENU_STATE_UNDO: {
if (bDrvOkay) {
TCHAR szString[256] = _T("state undo");
StatedUNDO(nSavestateSlot);
VidSNewShortMsg(szString);
PausedRedraw();
}
break;
}
case MENU_STATE_LOAD_SLOT:
if (bDrvOkay && !kNetGame) {
if (StatedLoad(nSavestateSlot) == 0) {