Fixed game-specific Wii/Widescreen and RE0 Hack checkboxes.
Disabled game-specific Wii/Progressive Scan checkbox, since its never used by Dolphin; it would cause side-effects to global configuration if we did write to SysConf in that place. Fixes Issue 2518 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5283 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
3a4b13e71f
commit
ff9b185a7f
|
@ -338,7 +338,14 @@ THREAD_RETURN EmuThread(void *pArg)
|
||||||
VideoInitialize.Fifo_CPUBase = &ProcessorInterface::Fifo_CPUBase;
|
VideoInitialize.Fifo_CPUBase = &ProcessorInterface::Fifo_CPUBase;
|
||||||
VideoInitialize.Fifo_CPUEnd = &ProcessorInterface::Fifo_CPUEnd;
|
VideoInitialize.Fifo_CPUEnd = &ProcessorInterface::Fifo_CPUEnd;
|
||||||
VideoInitialize.Fifo_CPUWritePointer = &ProcessorInterface::Fifo_CPUWritePointer;
|
VideoInitialize.Fifo_CPUWritePointer = &ProcessorInterface::Fifo_CPUWritePointer;
|
||||||
VideoInitialize.bAutoAspectIs16_9 = _CoreParameter.bWii ? (SConfig::GetInstance().m_SYSCONF->GetData<u8>("IPL.AR") ? true : false) : false;
|
bool aspectWide = _CoreParameter.bWii;
|
||||||
|
if (aspectWide)
|
||||||
|
{
|
||||||
|
IniFile gameIni;
|
||||||
|
gameIni.Load(_CoreParameter.m_strGameIni.c_str());
|
||||||
|
gameIni.Get("Wii", "Widescreen", &aspectWide, !!SConfig::GetInstance().m_SYSCONF->GetData<u8>("IPL.AR"));
|
||||||
|
}
|
||||||
|
VideoInitialize.bAutoAspectIs16_9 = aspectWide;
|
||||||
|
|
||||||
Plugins.GetVideo()->Initialize(&VideoInitialize); // Call the dll
|
Plugins.GetVideo()->Initialize(&VideoInitialize); // Call the dll
|
||||||
|
|
||||||
|
|
|
@ -299,6 +299,13 @@ void CISOProperties::CreateGUIControls(bool IsWad)
|
||||||
EnableProgressiveScan->Hide();
|
EnableProgressiveScan->Hide();
|
||||||
EnableWideScreen->Hide();
|
EnableWideScreen->Hide();
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//Progressive Scan is not used by Dolphin itself,
|
||||||
|
//and changing it on a per-game basis would have the side-effect of changing the SysConf,
|
||||||
|
//making this setting rather useless.
|
||||||
|
EnableProgressiveScan->Disable();
|
||||||
|
}
|
||||||
// Video
|
// Video
|
||||||
sbVideoOverrides = new wxStaticBoxSizer(wxVERTICAL, m_GameConfig, _("Video"));
|
sbVideoOverrides = new wxStaticBoxSizer(wxVERTICAL, m_GameConfig, _("Video"));
|
||||||
ForceFiltering = new wxCheckBox(m_GameConfig, ID_FORCEFILTERING, _("Force Filtering"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
ForceFiltering = new wxCheckBox(m_GameConfig, ID_FORCEFILTERING, _("Force Filtering"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE|wxCHK_ALLOW_3RD_STATE_FOR_USER, wxDefaultValidator);
|
||||||
|
|
|
@ -36,6 +36,7 @@ void CConfig::Load()
|
||||||
file.Load((std::string(File::GetUserPath(D_CONFIG_IDX)) + "DSP.ini").c_str());
|
file.Load((std::string(File::GetUserPath(D_CONFIG_IDX)) + "DSP.ini").c_str());
|
||||||
file.Get("Config", "EnableHLEAudio", &m_EnableHLEAudio, true); // Sound Settings
|
file.Get("Config", "EnableHLEAudio", &m_EnableHLEAudio, true); // Sound Settings
|
||||||
file.Get("Config", "EnableRE0AudioFix", &m_EnableRE0Fix, false); // RE0 Hack
|
file.Get("Config", "EnableRE0AudioFix", &m_EnableRE0Fix, false); // RE0 Hack
|
||||||
|
m_RE0Fix = m_EnableRE0Fix;
|
||||||
ac_Config.Load(file);
|
ac_Config.Load(file);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -49,3 +50,10 @@ void CConfig::Save()
|
||||||
|
|
||||||
file.Save((std::string(File::GetUserPath(D_CONFIG_IDX)) + "DSP.ini").c_str());
|
file.Save((std::string(File::GetUserPath(D_CONFIG_IDX)) + "DSP.ini").c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CConfig::LoadGameIni(const char* gameIniPath)
|
||||||
|
{
|
||||||
|
IniFile gameIni;
|
||||||
|
gameIni.Load(gameIniPath);
|
||||||
|
gameIni.Get("HLEaudio", "UseRE0Fix", &m_RE0Fix, m_EnableRE0Fix);
|
||||||
|
}
|
||||||
|
|
|
@ -23,12 +23,17 @@
|
||||||
struct CConfig
|
struct CConfig
|
||||||
{
|
{
|
||||||
bool m_EnableHLEAudio;
|
bool m_EnableHLEAudio;
|
||||||
|
//is the RE0 fix enabled in config?
|
||||||
bool m_EnableRE0Fix;
|
bool m_EnableRE0Fix;
|
||||||
|
//is the RE0 supposed to be used?
|
||||||
|
//this value includes game.ini, avoiding overwrite of config
|
||||||
|
bool m_RE0Fix;
|
||||||
|
|
||||||
CConfig();
|
CConfig();
|
||||||
|
|
||||||
void Load();
|
void Load();
|
||||||
void Save();
|
void Save();
|
||||||
|
void LoadGameIni(const char*);
|
||||||
};
|
};
|
||||||
|
|
||||||
extern CConfig g_Config;
|
extern CConfig g_Config;
|
||||||
|
|
|
@ -66,7 +66,7 @@ static void ProcessUpdates(AXPB &PB)
|
||||||
int on = 0, off = 0;
|
int on = 0, off = 0;
|
||||||
for (int j = 0; j < numupd; j++)
|
for (int j = 0; j < numupd; j++)
|
||||||
{
|
{
|
||||||
int k = g_Config.m_EnableRE0Fix ? 0 : j;
|
int k = g_Config.m_RE0Fix ? 0 : j;
|
||||||
|
|
||||||
const u16 updpar = Memory_Read_U16(updaddr + k);
|
const u16 updpar = Memory_Read_U16(updaddr + k);
|
||||||
const u16 upddata = Memory_Read_U16(updaddr + k + 2);
|
const u16 upddata = Memory_Read_U16(updaddr + k + 2);
|
||||||
|
|
|
@ -142,8 +142,9 @@ void GetDllInfo(PLUGIN_INFO* _PluginInfo)
|
||||||
|
|
||||||
void SetDllGlobals(PLUGIN_GLOBALS* _pPluginGlobals)
|
void SetDllGlobals(PLUGIN_GLOBALS* _pPluginGlobals)
|
||||||
{
|
{
|
||||||
globals = _pPluginGlobals;
|
globals = _pPluginGlobals;
|
||||||
LogManager::SetInstance((LogManager *)globals->logManager);
|
LogManager::SetInstance((LogManager *)globals->logManager);
|
||||||
|
g_Config.LoadGameIni(globals->game_ini);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DllConfig(HWND _hParent)
|
void DllConfig(HWND _hParent)
|
||||||
|
|
Loading…
Reference in New Issue