SF [ 2058942 ] Load state as... does not use the savestate override dir (fixed; now, it does)

; permit user optionally to proceed through the movie savestate mismatch error condition, in case he knows what he is doing.
This commit is contained in:
zeromus 2008-08-19 04:48:45 +00:00
parent 83f30885a2
commit 117efd39ff
3 changed files with 22 additions and 8 deletions

View File

@ -1,4 +1,14 @@
---version 2.0.3 released---
18-aug-2008 - zeromus - windows - SF [ 2058942 ] Load state as... does not use the savestate override dir (fixed; now, it does)
18-aug-2008 - zeromus - windows - permit user optionally to proceed through the movie savestate mismatch error condition, in case he knows what he is doing.
18-aug-2008 - zeromus - fix a bug in the savestate recovery code which prevent aborted savestate loads from recovering emulator state correctly.
18-aug-2008 - zeromus - windows - bind a menu option for display framecounter
17-aug-2008 - zeromus - windows - fix problem where replay dialog couldnt work when the process current directory had changed to something other than emulator base directory
17-aug-2008 - zeromus - windows - autoload the only useful rom or movie from an archive, in cases where there is only one
17-aug-2008 - zeromus - gracefully handle non-convertible broken utf-8 text without crashing
17-aug-2008 - zeromus - windows - don't read every archive file when scanning for replay dialog. scan them, and only look for *.fm2
17-aug-2008 - zeromus - debugger - fix issue where keyboard keys get stuck when switching between debugger window and main window
15-aug-2008 - adelikat - fixed an oversight on my part. Sound config dialog will now look to see if Mute Turbo should be checked
---version 2.0.2 released---

View File

@ -17,6 +17,8 @@ void FCEUD_SaveStateAs()
ofn.lpstrDefExt = "fcs";
nameo[0] = 0;
ofn.lpstrFile = nameo;
std::string initdir = FCEU_GetPath(FCEUMKF_STATE);
ofn.lpstrInitialDir = initdir.c_str();
ofn.nMaxFile = 256;
ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
@ -43,6 +45,8 @@ void FCEUD_LoadStateFrom()
ofn.lpstrFilter=filter;
nameo[0]=0;
ofn.lpstrFile=nameo;
std::string initdir = FCEU_GetPath(FCEUMKF_STATE);
ofn.lpstrInitialDir = initdir.c_str();
ofn.nMaxFile=256;
ofn.Flags=OFN_EXPLORER|OFN_FILEMUSTEXIST|OFN_HIDEREADONLY;

View File

@ -1004,16 +1004,16 @@ bool FCEUMOV_ReadState(std::istream* is, uint32 size)
if(tempMovieData.guid != currMovieData.guid)
{
//mbg 8/18/08 - this code can be used to turn the error message into an OK/CANCEL
//#ifdef WIN32
// std::string msg = "There is a mismatch between savestate's movie and current movie.\ncurrent: " + currMovieData.guid.toString() + "\nsavestate: " + tempMovieData.guid.toString() + "\n\nThis means that you have loaded a savestate belonging to a different movie than the one you are playing now.\n\nContinue loading this savestate anyway?";
// extern HWND pwindow;
// int result = MessageBox(pwindow,msg.c_str(),"Error loading savestate",MB_OKCANCEL);
// if(result == IDCANCEL)
// return false;
//#else
#ifdef WIN32
std::string msg = "There is a mismatch between savestate's movie and current movie.\ncurrent: " + currMovieData.guid.toString() + "\nsavestate: " + tempMovieData.guid.toString() + "\n\nThis means that you have loaded a savestate belonging to a different movie than the one you are playing now.\n\nContinue loading this savestate anyway?";
extern HWND pwindow;
int result = MessageBox(pwindow,msg.c_str(),"Error loading savestate",MB_OKCANCEL);
if(result == IDCANCEL)
return false;
#else
FCEU_PrintError("Mismatch between savestate's movie and current movie.\ncurrent: %s\nsavestate: %s\n",currMovieData.guid.toString().c_str(),tempMovieData.guid.toString().c_str());
return false;
//#endif
#endif
}
closeRecordingMovie();