summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2015-04-27 00:42:12 +0200
committermathieui <mathieui@mathieui.net>2015-04-30 11:35:16 +0200
commitec7445d66b81f75fd220889552b62d476a2d214c (patch)
treed9b1697af32e45cb87b2d19c39297646eba66f1b /Source
parent57f458fe9bc380db1cf811cc8289490b9afaa93f (diff)
GCAdapter: Add a setting to toggle rumble
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Core/ConfigManager.cpp2
-rw-r--r--Source/Core/Core/ConfigManager.h1
-rw-r--r--Source/Core/Core/HW/SI_GCAdapter.cpp2
-rw-r--r--Source/Core/DolphinWX/ControllerConfigDiag.cpp8
-rw-r--r--Source/Core/DolphinWX/ControllerConfigDiag.h5
5 files changed, 16 insertions, 2 deletions
diff --git a/Source/Core/Core/ConfigManager.cpp b/Source/Core/Core/ConfigManager.cpp
index 89d561cfca..f23ca15730 100644
--- a/Source/Core/Core/ConfigManager.cpp
+++ b/Source/Core/Core/ConfigManager.cpp
@@ -354,6 +354,7 @@ void SConfig::SaveCoreSettings(IniFile& ini)
core->Set("GFXBackend", m_LocalCoreStartupParameter.m_strVideoBackend);
core->Set("GPUDeterminismMode", m_LocalCoreStartupParameter.m_strGPUDeterminismMode);
core->Set("GameCubeAdapter", m_GameCubeAdapter);
+ core->Set("AdapterRumble", m_AdapterRumble);
}
void SConfig::SaveMovieSettings(IniFile& ini)
@@ -621,6 +622,7 @@ void SConfig::LoadCoreSettings(IniFile& ini)
core->Get("GFXBackend", &m_LocalCoreStartupParameter.m_strVideoBackend, "");
core->Get("GPUDeterminismMode", &m_LocalCoreStartupParameter.m_strGPUDeterminismMode, "auto");
core->Get("GameCubeAdapter", &m_GameCubeAdapter, true);
+ core->Get("AdapterRumble", &m_AdapterRumble, true);
}
void SConfig::LoadMovieSettings(IniFile& ini)
diff --git a/Source/Core/Core/ConfigManager.h b/Source/Core/Core/ConfigManager.h
index 23fce73852..7a811e164a 100644
--- a/Source/Core/Core/ConfigManager.h
+++ b/Source/Core/Core/ConfigManager.h
@@ -116,6 +116,7 @@ struct SConfig : NonCopyable
// Input settings
bool m_BackgroundInput;
bool m_GameCubeAdapter;
+ bool m_AdapterRumble;
SysConf* m_SYSCONF;
diff --git a/Source/Core/Core/HW/SI_GCAdapter.cpp b/Source/Core/Core/HW/SI_GCAdapter.cpp
index f9704c90c9..9ec2f2ecf5 100644
--- a/Source/Core/Core/HW/SI_GCAdapter.cpp
+++ b/Source/Core/Core/HW/SI_GCAdapter.cpp
@@ -392,7 +392,7 @@ void Input(int chan, GCPadStatus* pad)
void Output(int chan, u8 rumble_command)
{
- if (s_handle == nullptr || !SConfig::GetInstance().m_GameCubeAdapter)
+ if (s_handle == nullptr || !SConfig::GetInstance().m_GameCubeAdapter || !SConfig::GetInstance().m_AdapterRumble)
return;
// Skip over rumble commands if it has not changed or the controller is wireless
diff --git a/Source/Core/DolphinWX/ControllerConfigDiag.cpp b/Source/Core/DolphinWX/ControllerConfigDiag.cpp
index b78d8a526e..df892e3eaa 100644
--- a/Source/Core/DolphinWX/ControllerConfigDiag.cpp
+++ b/Source/Core/DolphinWX/ControllerConfigDiag.cpp
@@ -155,10 +155,16 @@ wxStaticBoxSizer* ControllerConfigDiag::CreateGamecubeSizer()
wxCheckBox* const gamecube_adapter = new wxCheckBox(this, wxID_ANY, _("Direct Connect"));
gamecube_adapter->Bind(wxEVT_CHECKBOX, &ControllerConfigDiag::OnGameCubeAdapter, this);
+
+ wxCheckBox* const gamecube_rumble = new wxCheckBox(this, wxID_ANY, _("Rumble"));
+ gamecube_rumble->SetValue(SConfig::GetInstance().m_AdapterRumble);
+ gamecube_rumble->Bind(wxEVT_CHECKBOX, &ControllerConfigDiag::OnAdapterRumble, this);
+
m_adapter_status = new wxStaticText(this, wxID_ANY, _("Adapter Not Detected"));
- gamecube_adapter_sizer->Add(m_adapter_status, 0, wxEXPAND);
+ gamecube_adapter_group->Add(m_adapter_status, 0, wxEXPAND);
gamecube_adapter_sizer->Add(gamecube_adapter, 0, wxEXPAND);
+ gamecube_adapter_sizer->Add(gamecube_rumble, 0, wxEXPAND);
gamecube_adapter_group->Add(gamecube_adapter_sizer, 0, wxEXPAND);
gamecube_static_sizer->Add(gamecube_adapter_group, 0, wxEXPAND);
diff --git a/Source/Core/DolphinWX/ControllerConfigDiag.h b/Source/Core/DolphinWX/ControllerConfigDiag.h
index 25c2153530..c28c160f45 100644
--- a/Source/Core/DolphinWX/ControllerConfigDiag.h
+++ b/Source/Core/DolphinWX/ControllerConfigDiag.h
@@ -74,6 +74,11 @@ private:
SConfig::GetInstance().m_GameCubeAdapter = event.IsChecked();
event.Skip();
}
+ void OnAdapterRumble(wxCommandEvent& event)
+ {
+ SConfig::GetInstance().m_AdapterRumble = event.IsChecked();
+ }
+
wxStaticBoxSizer* CreateGamecubeSizer();
wxStaticBoxSizer* CreateWiimoteConfigSizer();