bugfix from last commit

This commit is contained in:
SuuperW 2018-09-01 12:03:31 -05:00
parent e83ec89578
commit 4a844b2394
1 changed files with 31 additions and 23 deletions

View File

@ -488,43 +488,51 @@ void FCEUI_StopMovie()
static void LoadSettingsFromMovie(MovieData movieData) static void LoadSettingsFromMovie(MovieData movieData)
{ {
if (currMovieData.useExtBios != -1) if (movieData.useExtBios != -1)
CommonSettings.UseExtBIOS = currMovieData.useExtBios; CommonSettings.UseExtBIOS = movieData.useExtBios;
if (currMovieData.useExtFirmware != -1) if (movieData.useExtFirmware != -1)
CommonSettings.UseExtFirmware = currMovieData.useExtFirmware; CommonSettings.UseExtFirmware = movieData.useExtFirmware;
if (!CommonSettings.UseExtFirmware) if (!CommonSettings.UseExtFirmware)
{ {
if (currMovieData.firmNickname != "") if (movieData.firmNickname != "")
{ {
CommonSettings.fw_config.nickname_len = currMovieData.firmNickname.length() > MAX_FW_NICKNAME_LENGTH ? MAX_FW_NICKNAME_LENGTH : currMovieData.firmNickname.length(); CommonSettings.fw_config.nickname_len = movieData.firmNickname.length() > MAX_FW_NICKNAME_LENGTH ? MAX_FW_NICKNAME_LENGTH : movieData.firmNickname.length();
for (int i = 0; i < CommonSettings.fw_config.nickname_len; i++) for (int i = 0; i < CommonSettings.fw_config.nickname_len; i++)
CommonSettings.fw_config.nickname[i] = currMovieData.firmNickname[i]; CommonSettings.fw_config.nickname[i] = movieData.firmNickname[i];
} }
if (currMovieData.firmMessage != "") if (movieData.firmMessage != "")
{ {
CommonSettings.fw_config.message_len = currMovieData.firmMessage.length() > MAX_FW_MESSAGE_LENGTH ? MAX_FW_MESSAGE_LENGTH : currMovieData.firmMessage.length(); CommonSettings.fw_config.message_len = movieData.firmMessage.length() > MAX_FW_MESSAGE_LENGTH ? MAX_FW_MESSAGE_LENGTH : movieData.firmMessage.length();
for (int i = 0; i < CommonSettings.fw_config.message_len; i++) for (int i = 0; i < CommonSettings.fw_config.message_len; i++)
CommonSettings.fw_config.message[i] = currMovieData.firmMessage[i]; CommonSettings.fw_config.message[i] = movieData.firmMessage[i];
} }
if (currMovieData.firmFavColour != -1) if (movieData.firmFavColour != -1)
CommonSettings.fw_config.fav_colour = currMovieData.firmFavColour; CommonSettings.fw_config.fav_colour = movieData.firmFavColour;
if (currMovieData.firmBirthMonth != -1) if (movieData.firmBirthMonth != -1)
CommonSettings.fw_config.birth_month = currMovieData.firmBirthMonth; CommonSettings.fw_config.birth_month = movieData.firmBirthMonth;
if (currMovieData.firmBirthDay != -1) if (movieData.firmBirthDay != -1)
CommonSettings.fw_config.birth_day = currMovieData.firmBirthDay; CommonSettings.fw_config.birth_day = movieData.firmBirthDay;
if (currMovieData.firmLanguage != -1) if (movieData.firmLanguage != -1)
CommonSettings.fw_config.language = currMovieData.firmLanguage; CommonSettings.fw_config.language = movieData.firmLanguage;
// reset firmware (some games can write to it) // reset firmware (some games can write to it)
NDS_CreateDummyFirmware(&CommonSettings.fw_config); NDS_CreateDummyFirmware(&CommonSettings.fw_config);
} }
if (currMovieData.advancedTiming != -1) if (movieData.advancedTiming != -1)
CommonSettings.advanced_timing = currMovieData.advancedTiming; CommonSettings.advanced_timing = movieData.advancedTiming;
if (currMovieData.jitBlockSize != -1) if (movieData.jitBlockSize != -1)
{ {
CommonSettings.use_jit = currMovieData.jitBlockSize != 0; CommonSettings.use_jit = movieData.jitBlockSize != 0;
CommonSettings.jit_max_block_size = currMovieData.jitBlockSize; CommonSettings.jit_max_block_size = movieData.jitBlockSize;
}
}
void UnloadMovieEmulationSettings()
{
if (&oldSettings)
{
LoadSettingsFromMovie(oldSettings);
oldSettings = NULL;
} }
} }
//begin playing an existing movie //begin playing an existing movie