summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorSonicadvance1 <sonicadvance1@gmail.com>2008-09-23 21:13:34 +0000
committerSonicadvance1 <sonicadvance1@gmail.com>2008-09-23 21:13:34 +0000
commit1a27044b0a06b67b60b65764d1641e7f69f01b03 (patch)
treecf9677769415ddf2faee5678e37b179b8462677d /Source/Core
parent17cff80f2be8987b861e6acced055cb3b80581ff (diff)
Added language select so it actually works. Games that don't have the available language falls back to English from what I see. The checksum isn't checked in the games? Also started added Wiimote usage in Linux, doesn't do anything since the plugin receives NOTHING in Linux for some reason. I blame Masken because I can
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@645 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/Src/CoreParameter.cpp1
-rw-r--r--Source/Core/Core/Src/CoreParameter.h1
-rw-r--r--Source/Core/Core/Src/HW/EXI_DeviceIPL.cpp2
-rw-r--r--Source/Core/DolphinWX/Src/Config.cpp2
-rw-r--r--Source/Core/DolphinWX/Src/ConfigMain.cpp2
5 files changed, 8 insertions, 0 deletions
diff --git a/Source/Core/Core/Src/CoreParameter.cpp b/Source/Core/Core/Src/CoreParameter.cpp
index 5c4a0f6d8b..73718ab962 100644
--- a/Source/Core/Core/Src/CoreParameter.cpp
+++ b/Source/Core/Core/Src/CoreParameter.cpp
@@ -36,6 +36,7 @@ void SCoreStartupParameter::LoadDefaults()
bRunCompareServer = false;
bLockThreads = true;
bWii = false;
+ SelectedLanguage = 0;
}
diff --git a/Source/Core/Core/Src/CoreParameter.h b/Source/Core/Core/Src/CoreParameter.h
index 3d78790bb8..f82cdcc63b 100644
--- a/Source/Core/Core/Src/CoreParameter.h
+++ b/Source/Core/Core/Src/CoreParameter.h
@@ -46,6 +46,7 @@ struct SCoreStartupParameter
bool bRunCompareServer;
bool bRunCompareClient;
+ int SelectedLanguage;
bool bWii;
diff --git a/Source/Core/Core/Src/HW/EXI_DeviceIPL.cpp b/Source/Core/Core/Src/HW/EXI_DeviceIPL.cpp
index 3db54a5a2b..d6237e19b1 100644
--- a/Source/Core/Core/Src/HW/EXI_DeviceIPL.cpp
+++ b/Source/Core/Core/Src/HW/EXI_DeviceIPL.cpp
@@ -108,6 +108,8 @@ CEXIIPL::CEXIIPL() :
{
memcpy(m_SRAM, sram_dump, sizeof(m_SRAM));
}
+ // We Overwrite it here since it's possible on the GC to change the language as you please
+ m_SRAM[0x12] = Core::GetStartupParameter().SelectedLanguage;
WriteProtectMemory(m_pIPL, ROM_SIZE);
m_uAddress = 0;
diff --git a/Source/Core/DolphinWX/Src/Config.cpp b/Source/Core/DolphinWX/Src/Config.cpp
index cccd1f97a4..87fdd0f0d5 100644
--- a/Source/Core/DolphinWX/Src/Config.cpp
+++ b/Source/Core/DolphinWX/Src/Config.cpp
@@ -72,6 +72,7 @@ void SConfig::SaveSettings()
ini.Set("Core", "DefaultGCM", m_LocalCoreStartupParameter.m_strDefaultGCM);
ini.Set("Core", "DVDRoot", m_LocalCoreStartupParameter.m_strDVDRoot);
ini.Set("Core", "OptimizeQuantizers", m_LocalCoreStartupParameter.bOptimizeQuantizers);
+ ini.Set("Core", "SelectedLanguage", m_LocalCoreStartupParameter.SelectedLanguage);
}
ini.Save("Dolphin.ini");
@@ -125,5 +126,6 @@ void SConfig::LoadSettings()
ini.Get("Core", "DefaultGCM", &m_LocalCoreStartupParameter.m_strDefaultGCM);
ini.Get("Core", "DVDRoot", &m_LocalCoreStartupParameter.m_strDVDRoot);
ini.Get("Core", "OptimizeQuantizers", &m_LocalCoreStartupParameter.bOptimizeQuantizers, true);
+ ini.Get("Core", "SelectedLanguage", &m_LocalCoreStartupParameter.SelectedLanguage, 0);
}
}
diff --git a/Source/Core/DolphinWX/Src/ConfigMain.cpp b/Source/Core/DolphinWX/Src/ConfigMain.cpp
index ad53060325..5fa554aa3f 100644
--- a/Source/Core/DolphinWX/Src/ConfigMain.cpp
+++ b/Source/Core/DolphinWX/Src/ConfigMain.cpp
@@ -118,6 +118,7 @@ void CConfigMain::CreateGUIControls()
arrayStringFor_ConsoleLang.Add(wxT("Dutch"));
ConsoleLangText = new wxStaticText(GeneralPage, ID_CONSOLELANG_TEXT, wxT("Console Language:"), wxDefaultPosition, wxDefaultSize);
ConsoleLang = new wxChoice(GeneralPage, ID_CONSOLELANG, wxDefaultPosition, wxDefaultSize, arrayStringFor_ConsoleLang, 0, wxDefaultValidator);
+ ConsoleLang->SetSelection(SConfig::GetInstance().m_LocalCoreStartupParameter.SelectedLanguage);
sGeneral = new wxGridBagSizer(0, 0);
sGeneral->Add(AllwaysHLEBIOS, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5);
@@ -277,6 +278,7 @@ void CConfigMain::SkipIdleCheck(wxCommandEvent& WXUNUSED (event))
void CConfigMain::ConsoleLangChanged(wxCommandEvent& WXUNUSED (event))
{
+ SConfig::GetInstance().m_LocalCoreStartupParameter.SelectedLanguage = ConsoleLang->GetSelection();
}
void CConfigMain::DefaultISOChanged(wxFileDirPickerEvent& WXUNUSED (event))