diff --git a/desmume/src/movie.cpp b/desmume/src/movie.cpp index 5f2e769bc..27f592df4 100644 --- a/desmume/src/movie.cpp +++ b/desmume/src/movie.cpp @@ -574,6 +574,12 @@ const char* _CDECL_ FCEUI_LoadMovie(const char *fname, bool _read_only, bool tas //fully reload the game to reinitialize everything before playing any movie //poweron(true); + // reset firmware (some games can write to it) + if (CommonSettings.UseExtFirmware == false) + { + NDS_CreateDummyFirmware(&CommonSettings.InternalFirmConf); + } + NDS_Reset(); ////WE NEED TO LOAD A SAVESTATE @@ -683,6 +689,12 @@ void FCEUI_SaveMovie(const char *fname, std::wstring author, int flag, std::stri currMovieData.romFilename = path.GetRomName(); currMovieData.rtcStart = rtcstart; + // reset firmware (some games can write to it) + if (CommonSettings.UseExtFirmware == false) + { + NDS_CreateDummyFirmware(&CommonSettings.InternalFirmConf); + } + NDS_Reset(); //todo ?