diff --git a/win32/rsrc/resource.h b/win32/rsrc/resource.h index a59fae5d..8bbce310 100644 --- a/win32/rsrc/resource.h +++ b/win32/rsrc/resource.h @@ -541,8 +541,9 @@ #define ID_FILE_LOAD7 44027 #define ID_FILE_LOAD8 44028 #define ID_FILE_LOAD9 44029 -#define ID_FILE_LOAD_FILE 44030 -#define IDM_MACSRIFLE_TOGGLE 44031 +#define ID_FILE_LOAD_OOPS 44030 +#define ID_FILE_LOAD_FILE 44031 +#define IDM_MACSRIFLE_TOGGLE 44032 #define IDC_STATIC -1 // Next default values for new objects diff --git a/win32/rsrc/snes9x.rc b/win32/rsrc/snes9x.rc index 35d115b6..27bd2ecb 100644 --- a/win32/rsrc/snes9x.rc +++ b/win32/rsrc/snes9x.rc @@ -924,6 +924,7 @@ BEGIN MENUITEM "Slot #&7", ID_FILE_SAVE7 MENUITEM "Slot #&8", ID_FILE_SAVE8 MENUITEM "Slot #&9", ID_FILE_SAVE9 + MENUITEM SEPARATOR MENUITEM "&Select File", ID_FILE_SAVE_FILE END POPUP "&Load Game Position" @@ -938,6 +939,9 @@ BEGIN MENUITEM "Slot #&7", ID_FILE_LOAD7 MENUITEM "Slot #&8", ID_FILE_LOAD8 MENUITEM "Slot #&9", ID_FILE_LOAD9 + MENUITEM SEPARATOR + MENUITEM "Oops File", ID_FILE_LOAD_OOPS + MENUITEM SEPARATOR MENUITEM "&Select File", ID_FILE_LOAD_FILE END MENUITEM "Load MultiCart...", ID_FILE_LOADMULTICART diff --git a/win32/wsnes9x.cpp b/win32/wsnes9x.cpp index 9e03383a..1c8834d5 100644 --- a/win32/wsnes9x.cpp +++ b/win32/wsnes9x.cpp @@ -2142,6 +2142,9 @@ LRESULT CALLBACK WinProc( case ID_FILE_LOAD9: FreezeUnfreezeSlot (9, FALSE); break; + case ID_FILE_LOAD_OOPS: + FreezeUnfreezeSlot(-1, FALSE); + break; case ID_FILE_LOAD_FILE: FreezeUnfreezeDialog(FALSE); break; @@ -3610,7 +3613,10 @@ void FreezeUnfreezeSlot(int slot, bool8 freeze) char filename[_MAX_PATH + 1]; char ext[_MAX_EXT + 1]; - snprintf(ext, _MAX_EXT, ".%03d", slot); + if (slot == -1) + strcpy(ext, ".oops"); + else + snprintf(ext, _MAX_EXT, ".%03d", slot); strcpy(filename, S9xGetFilename(ext, SNAPSHOT_DIR)); FreezeUnfreeze(filename, freeze);