diff options
| -rw-r--r-- | src/citra/config.cpp | 6 | ||||
| -rw-r--r-- | src/citra/default_ini.h | 8 | ||||
| -rw-r--r-- | src/citra/emu_window/emu_window_glfw.cpp | 10 | ||||
| -rw-r--r-- | src/citra_qt/bootmanager.cpp | 10 | ||||
| -rw-r--r-- | src/citra_qt/config.cpp | 36 | ||||
| -rw-r--r-- | src/core/hle/service/hid/hid.h | 19 | ||||
| -rw-r--r-- | src/core/settings.h | 6 |
7 files changed, 82 insertions, 13 deletions
diff --git a/src/citra/config.cpp b/src/citra/config.cpp index f5b4069c7..e9f3dfd5b 100644 --- a/src/citra/config.cpp +++ b/src/citra/config.cpp | |||
| @@ -44,6 +44,8 @@ void Config::ReadValues() { | |||
| 44 | Settings::values.pad_y_key = glfw_config->GetInteger("Controls", "pad_y", GLFW_KEY_X); | 44 | Settings::values.pad_y_key = glfw_config->GetInteger("Controls", "pad_y", GLFW_KEY_X); |
| 45 | Settings::values.pad_l_key = glfw_config->GetInteger("Controls", "pad_l", GLFW_KEY_Q); | 45 | Settings::values.pad_l_key = glfw_config->GetInteger("Controls", "pad_l", GLFW_KEY_Q); |
| 46 | Settings::values.pad_r_key = glfw_config->GetInteger("Controls", "pad_r", GLFW_KEY_W); | 46 | Settings::values.pad_r_key = glfw_config->GetInteger("Controls", "pad_r", GLFW_KEY_W); |
| 47 | Settings::values.pad_zl_key = glfw_config->GetInteger("Controls", "pad_zl", GLFW_KEY_1); | ||
| 48 | Settings::values.pad_zr_key = glfw_config->GetInteger("Controls", "pad_zr", GLFW_KEY_2); | ||
| 47 | Settings::values.pad_start_key = glfw_config->GetInteger("Controls", "pad_start", GLFW_KEY_M); | 49 | Settings::values.pad_start_key = glfw_config->GetInteger("Controls", "pad_start", GLFW_KEY_M); |
| 48 | Settings::values.pad_select_key = glfw_config->GetInteger("Controls", "pad_select", GLFW_KEY_N); | 50 | Settings::values.pad_select_key = glfw_config->GetInteger("Controls", "pad_select", GLFW_KEY_N); |
| 49 | Settings::values.pad_home_key = glfw_config->GetInteger("Controls", "pad_home", GLFW_KEY_B); | 51 | Settings::values.pad_home_key = glfw_config->GetInteger("Controls", "pad_home", GLFW_KEY_B); |
| @@ -55,6 +57,10 @@ void Config::ReadValues() { | |||
| 55 | Settings::values.pad_sdown_key = glfw_config->GetInteger("Controls", "pad_sdown", GLFW_KEY_DOWN); | 57 | Settings::values.pad_sdown_key = glfw_config->GetInteger("Controls", "pad_sdown", GLFW_KEY_DOWN); |
| 56 | Settings::values.pad_sleft_key = glfw_config->GetInteger("Controls", "pad_sleft", GLFW_KEY_LEFT); | 58 | Settings::values.pad_sleft_key = glfw_config->GetInteger("Controls", "pad_sleft", GLFW_KEY_LEFT); |
| 57 | Settings::values.pad_sright_key = glfw_config->GetInteger("Controls", "pad_sright", GLFW_KEY_RIGHT); | 59 | Settings::values.pad_sright_key = glfw_config->GetInteger("Controls", "pad_sright", GLFW_KEY_RIGHT); |
| 60 | Settings::values.pad_cup_key = glfw_config->GetInteger("Controls", "pad_cup", GLFW_KEY_I); | ||
| 61 | Settings::values.pad_cdown_key = glfw_config->GetInteger("Controls", "pad_cdown", GLFW_KEY_K); | ||
| 62 | Settings::values.pad_cleft_key = glfw_config->GetInteger("Controls", "pad_cleft", GLFW_KEY_J); | ||
| 63 | Settings::values.pad_cright_key = glfw_config->GetInteger("Controls", "pad_cright", GLFW_KEY_L); | ||
| 58 | 64 | ||
| 59 | // Core | 65 | // Core |
| 60 | Settings::values.gpu_refresh_rate = glfw_config->GetInteger("Core", "gpu_refresh_rate", 30); | 66 | Settings::values.gpu_refresh_rate = glfw_config->GetInteger("Core", "gpu_refresh_rate", 30); |
diff --git a/src/citra/default_ini.h b/src/citra/default_ini.h index be4b289bd..798ff6e84 100644 --- a/src/citra/default_ini.h +++ b/src/citra/default_ini.h | |||
| @@ -19,12 +19,18 @@ pad_a = | |||
| 19 | pad_b = | 19 | pad_b = |
| 20 | pad_x = | 20 | pad_x = |
| 21 | pad_y = | 21 | pad_y = |
| 22 | pad_r = | ||
| 23 | pad_l = | 22 | pad_l = |
| 23 | pad_r = | ||
| 24 | pad_zl = | ||
| 25 | pad_zr = | ||
| 24 | pad_sup = | 26 | pad_sup = |
| 25 | pad_sdown = | 27 | pad_sdown = |
| 26 | pad_sleft = | 28 | pad_sleft = |
| 27 | pad_sright = | 29 | pad_sright = |
| 30 | pad_cup = | ||
| 31 | pad_cdown = | ||
| 32 | pad_cleft = | ||
| 33 | pad_cright = | ||
| 28 | 34 | ||
| 29 | [Core] | 35 | [Core] |
| 30 | gpu_refresh_rate = ## 30 (default) | 36 | gpu_refresh_rate = ## 30 (default) |
diff --git a/src/citra/emu_window/emu_window_glfw.cpp b/src/citra/emu_window/emu_window_glfw.cpp index 8a3ee64a8..ec3e8cf34 100644 --- a/src/citra/emu_window/emu_window_glfw.cpp +++ b/src/citra/emu_window/emu_window_glfw.cpp | |||
| @@ -139,6 +139,16 @@ void EmuWindow_GLFW::ReloadSetKeymaps() { | |||
| 139 | KeyMap::SetKeyMapping({Settings::values.pad_l_key, keyboard_id}, Service::HID::PAD_L); | 139 | KeyMap::SetKeyMapping({Settings::values.pad_l_key, keyboard_id}, Service::HID::PAD_L); |
| 140 | KeyMap::SetKeyMapping({Settings::values.pad_x_key, keyboard_id}, Service::HID::PAD_X); | 140 | KeyMap::SetKeyMapping({Settings::values.pad_x_key, keyboard_id}, Service::HID::PAD_X); |
| 141 | KeyMap::SetKeyMapping({Settings::values.pad_y_key, keyboard_id}, Service::HID::PAD_Y); | 141 | KeyMap::SetKeyMapping({Settings::values.pad_y_key, keyboard_id}, Service::HID::PAD_Y); |
| 142 | |||
| 143 | KeyMap::SetKeyMapping({Settings::values.pad_zl_key, keyboard_id}, Service::HID::PAD_ZL); | ||
| 144 | KeyMap::SetKeyMapping({Settings::values.pad_zr_key, keyboard_id}, Service::HID::PAD_ZR); | ||
| 145 | |||
| 146 | // KeyMap::SetKeyMapping({Settings::values.pad_touch_key, keyboard_id}, Service::HID::PAD_TOUCH); | ||
| 147 | |||
| 148 | KeyMap::SetKeyMapping({Settings::values.pad_cright_key, keyboard_id}, Service::HID::PAD_C_RIGHT); | ||
| 149 | KeyMap::SetKeyMapping({Settings::values.pad_cleft_key, keyboard_id}, Service::HID::PAD_C_LEFT); | ||
| 150 | KeyMap::SetKeyMapping({Settings::values.pad_cup_key, keyboard_id}, Service::HID::PAD_C_UP); | ||
| 151 | KeyMap::SetKeyMapping({Settings::values.pad_cdown_key, keyboard_id}, Service::HID::PAD_C_DOWN); | ||
| 142 | KeyMap::SetKeyMapping({Settings::values.pad_sright_key, keyboard_id}, Service::HID::PAD_CIRCLE_RIGHT); | 152 | KeyMap::SetKeyMapping({Settings::values.pad_sright_key, keyboard_id}, Service::HID::PAD_CIRCLE_RIGHT); |
| 143 | KeyMap::SetKeyMapping({Settings::values.pad_sleft_key, keyboard_id}, Service::HID::PAD_CIRCLE_LEFT); | 153 | KeyMap::SetKeyMapping({Settings::values.pad_sleft_key, keyboard_id}, Service::HID::PAD_CIRCLE_LEFT); |
| 144 | KeyMap::SetKeyMapping({Settings::values.pad_sup_key, keyboard_id}, Service::HID::PAD_CIRCLE_UP); | 154 | KeyMap::SetKeyMapping({Settings::values.pad_sup_key, keyboard_id}, Service::HID::PAD_CIRCLE_UP); |
diff --git a/src/citra_qt/bootmanager.cpp b/src/citra_qt/bootmanager.cpp index 22a7842bf..6514288a0 100644 --- a/src/citra_qt/bootmanager.cpp +++ b/src/citra_qt/bootmanager.cpp | |||
| @@ -291,6 +291,16 @@ void GRenderWindow::ReloadSetKeymaps() | |||
| 291 | KeyMap::SetKeyMapping({Settings::values.pad_l_key, keyboard_id}, Service::HID::PAD_L); | 291 | KeyMap::SetKeyMapping({Settings::values.pad_l_key, keyboard_id}, Service::HID::PAD_L); |
| 292 | KeyMap::SetKeyMapping({Settings::values.pad_x_key, keyboard_id}, Service::HID::PAD_X); | 292 | KeyMap::SetKeyMapping({Settings::values.pad_x_key, keyboard_id}, Service::HID::PAD_X); |
| 293 | KeyMap::SetKeyMapping({Settings::values.pad_y_key, keyboard_id}, Service::HID::PAD_Y); | 293 | KeyMap::SetKeyMapping({Settings::values.pad_y_key, keyboard_id}, Service::HID::PAD_Y); |
| 294 | |||
| 295 | KeyMap::SetKeyMapping({Settings::values.pad_zl_key, keyboard_id}, Service::HID::PAD_ZL); | ||
| 296 | KeyMap::SetKeyMapping({Settings::values.pad_zr_key, keyboard_id}, Service::HID::PAD_ZR); | ||
| 297 | |||
| 298 | // KeyMap::SetKeyMapping({Settings::values.pad_touch_key, keyboard_id}, Service::HID::PAD_TOUCH); | ||
| 299 | |||
| 300 | KeyMap::SetKeyMapping({Settings::values.pad_cright_key, keyboard_id}, Service::HID::PAD_C_RIGHT); | ||
| 301 | KeyMap::SetKeyMapping({Settings::values.pad_cleft_key, keyboard_id}, Service::HID::PAD_C_LEFT); | ||
| 302 | KeyMap::SetKeyMapping({Settings::values.pad_cup_key, keyboard_id}, Service::HID::PAD_C_UP); | ||
| 303 | KeyMap::SetKeyMapping({Settings::values.pad_cdown_key, keyboard_id}, Service::HID::PAD_C_DOWN); | ||
| 294 | KeyMap::SetKeyMapping({Settings::values.pad_sright_key, keyboard_id}, Service::HID::PAD_CIRCLE_RIGHT); | 304 | KeyMap::SetKeyMapping({Settings::values.pad_sright_key, keyboard_id}, Service::HID::PAD_CIRCLE_RIGHT); |
| 295 | KeyMap::SetKeyMapping({Settings::values.pad_sleft_key, keyboard_id}, Service::HID::PAD_CIRCLE_LEFT); | 305 | KeyMap::SetKeyMapping({Settings::values.pad_sleft_key, keyboard_id}, Service::HID::PAD_CIRCLE_LEFT); |
| 296 | KeyMap::SetKeyMapping({Settings::values.pad_sup_key, keyboard_id}, Service::HID::PAD_CIRCLE_UP); | 306 | KeyMap::SetKeyMapping({Settings::values.pad_sup_key, keyboard_id}, Service::HID::PAD_CIRCLE_UP); |
diff --git a/src/citra_qt/config.cpp b/src/citra_qt/config.cpp index 76aeaedd0..ac250e0a5 100644 --- a/src/citra_qt/config.cpp +++ b/src/citra_qt/config.cpp | |||
| @@ -23,12 +23,14 @@ Config::Config() { | |||
| 23 | 23 | ||
| 24 | void Config::ReadValues() { | 24 | void Config::ReadValues() { |
| 25 | qt_config->beginGroup("Controls"); | 25 | qt_config->beginGroup("Controls"); |
| 26 | Settings::values.pad_a_key = qt_config->value("pad_a", Qt::Key_A).toInt(); | 26 | Settings::values.pad_a_key = qt_config->value("pad_a", Qt::Key_A).toInt(); |
| 27 | Settings::values.pad_b_key = qt_config->value("pad_b", Qt::Key_S).toInt(); | 27 | Settings::values.pad_b_key = qt_config->value("pad_b", Qt::Key_S).toInt(); |
| 28 | Settings::values.pad_x_key = qt_config->value("pad_x", Qt::Key_Z).toInt(); | 28 | Settings::values.pad_x_key = qt_config->value("pad_x", Qt::Key_Z).toInt(); |
| 29 | Settings::values.pad_y_key = qt_config->value("pad_y", Qt::Key_X).toInt(); | 29 | Settings::values.pad_y_key = qt_config->value("pad_y", Qt::Key_X).toInt(); |
| 30 | Settings::values.pad_l_key = qt_config->value("pad_l", Qt::Key_Q).toInt(); | 30 | Settings::values.pad_l_key = qt_config->value("pad_l", Qt::Key_Q).toInt(); |
| 31 | Settings::values.pad_r_key = qt_config->value("pad_r", Qt::Key_W).toInt(); | 31 | Settings::values.pad_r_key = qt_config->value("pad_r", Qt::Key_W).toInt(); |
| 32 | Settings::values.pad_zl_key = qt_config->value("pad_zl", Qt::Key_1).toInt(); | ||
| 33 | Settings::values.pad_zr_key = qt_config->value("pad_zr", Qt::Key_2).toInt(); | ||
| 32 | Settings::values.pad_start_key = qt_config->value("pad_start", Qt::Key_M).toInt(); | 34 | Settings::values.pad_start_key = qt_config->value("pad_start", Qt::Key_M).toInt(); |
| 33 | Settings::values.pad_select_key = qt_config->value("pad_select", Qt::Key_N).toInt(); | 35 | Settings::values.pad_select_key = qt_config->value("pad_select", Qt::Key_N).toInt(); |
| 34 | Settings::values.pad_home_key = qt_config->value("pad_home", Qt::Key_B).toInt(); | 36 | Settings::values.pad_home_key = qt_config->value("pad_home", Qt::Key_B).toInt(); |
| @@ -40,6 +42,10 @@ void Config::ReadValues() { | |||
| 40 | Settings::values.pad_sdown_key = qt_config->value("pad_sdown", Qt::Key_Down).toInt(); | 42 | Settings::values.pad_sdown_key = qt_config->value("pad_sdown", Qt::Key_Down).toInt(); |
| 41 | Settings::values.pad_sleft_key = qt_config->value("pad_sleft", Qt::Key_Left).toInt(); | 43 | Settings::values.pad_sleft_key = qt_config->value("pad_sleft", Qt::Key_Left).toInt(); |
| 42 | Settings::values.pad_sright_key = qt_config->value("pad_sright", Qt::Key_Right).toInt(); | 44 | Settings::values.pad_sright_key = qt_config->value("pad_sright", Qt::Key_Right).toInt(); |
| 45 | Settings::values.pad_cup_key = qt_config->value("pad_cup", Qt::Key_I).toInt(); | ||
| 46 | Settings::values.pad_cdown_key = qt_config->value("pad_cdown", Qt::Key_K).toInt(); | ||
| 47 | Settings::values.pad_cleft_key = qt_config->value("pad_cleft", Qt::Key_J).toInt(); | ||
| 48 | Settings::values.pad_cright_key = qt_config->value("pad_cright", Qt::Key_L).toInt(); | ||
| 43 | qt_config->endGroup(); | 49 | qt_config->endGroup(); |
| 44 | 50 | ||
| 45 | qt_config->beginGroup("Core"); | 51 | qt_config->beginGroup("Core"); |
| @@ -62,12 +68,14 @@ void Config::ReadValues() { | |||
| 62 | 68 | ||
| 63 | void Config::SaveValues() { | 69 | void Config::SaveValues() { |
| 64 | qt_config->beginGroup("Controls"); | 70 | qt_config->beginGroup("Controls"); |
| 65 | qt_config->setValue("pad_a", Settings::values.pad_a_key); | 71 | qt_config->setValue("pad_a", Settings::values.pad_a_key); |
| 66 | qt_config->setValue("pad_b", Settings::values.pad_b_key); | 72 | qt_config->setValue("pad_b", Settings::values.pad_b_key); |
| 67 | qt_config->setValue("pad_x", Settings::values.pad_x_key); | 73 | qt_config->setValue("pad_x", Settings::values.pad_x_key); |
| 68 | qt_config->setValue("pad_y", Settings::values.pad_y_key); | 74 | qt_config->setValue("pad_y", Settings::values.pad_y_key); |
| 69 | qt_config->setValue("pad_l", Settings::values.pad_l_key); | 75 | qt_config->setValue("pad_l", Settings::values.pad_l_key); |
| 70 | qt_config->setValue("pad_r", Settings::values.pad_r_key); | 76 | qt_config->setValue("pad_r", Settings::values.pad_r_key); |
| 77 | qt_config->setValue("pad_zl", Settings::values.pad_zl_key); | ||
| 78 | qt_config->setValue("pad_zr", Settings::values.pad_zr_key); | ||
| 71 | qt_config->setValue("pad_start", Settings::values.pad_start_key); | 79 | qt_config->setValue("pad_start", Settings::values.pad_start_key); |
| 72 | qt_config->setValue("pad_select", Settings::values.pad_select_key); | 80 | qt_config->setValue("pad_select", Settings::values.pad_select_key); |
| 73 | qt_config->setValue("pad_home", Settings::values.pad_home_key); | 81 | qt_config->setValue("pad_home", Settings::values.pad_home_key); |
| @@ -79,6 +87,10 @@ void Config::SaveValues() { | |||
| 79 | qt_config->setValue("pad_sdown", Settings::values.pad_sdown_key); | 87 | qt_config->setValue("pad_sdown", Settings::values.pad_sdown_key); |
| 80 | qt_config->setValue("pad_sleft", Settings::values.pad_sleft_key); | 88 | qt_config->setValue("pad_sleft", Settings::values.pad_sleft_key); |
| 81 | qt_config->setValue("pad_sright", Settings::values.pad_sright_key); | 89 | qt_config->setValue("pad_sright", Settings::values.pad_sright_key); |
| 90 | qt_config->setValue("pad_cup", Settings::values.pad_cup_key); | ||
| 91 | qt_config->setValue("pad_cdown", Settings::values.pad_cdown_key); | ||
| 92 | qt_config->setValue("pad_cleft", Settings::values.pad_cleft_key); | ||
| 93 | qt_config->setValue("pad_cright", Settings::values.pad_cright_key); | ||
| 82 | qt_config->endGroup(); | 94 | qt_config->endGroup(); |
| 83 | 95 | ||
| 84 | qt_config->beginGroup("Core"); | 96 | qt_config->beginGroup("Core"); |
diff --git a/src/core/hle/service/hid/hid.h b/src/core/hle/service/hid/hid.h index 2116d2ca3..fc628f36a 100644 --- a/src/core/hle/service/hid/hid.h +++ b/src/core/hle/service/hid/hid.h | |||
| @@ -47,6 +47,15 @@ struct PadState { | |||
| 47 | BitField<10, 1, u32> x; | 47 | BitField<10, 1, u32> x; |
| 48 | BitField<11, 1, u32> y; | 48 | BitField<11, 1, u32> y; |
| 49 | 49 | ||
| 50 | BitField<14, 1, u32> zl; | ||
| 51 | BitField<15, 1, u32> zr; | ||
| 52 | |||
| 53 | BitField<20, 1, u32> touch; | ||
| 54 | |||
| 55 | BitField<24, 1, u32> c_right; | ||
| 56 | BitField<25, 1, u32> c_left; | ||
| 57 | BitField<26, 1, u32> c_up; | ||
| 58 | BitField<27, 1, u32> c_down; | ||
| 50 | BitField<28, 1, u32> circle_right; | 59 | BitField<28, 1, u32> circle_right; |
| 51 | BitField<29, 1, u32> circle_left; | 60 | BitField<29, 1, u32> circle_left; |
| 52 | BitField<30, 1, u32> circle_up; | 61 | BitField<30, 1, u32> circle_up; |
| @@ -99,6 +108,16 @@ const PadState PAD_R = {{1u << 8}}; | |||
| 99 | const PadState PAD_L = {{1u << 9}}; | 108 | const PadState PAD_L = {{1u << 9}}; |
| 100 | const PadState PAD_X = {{1u << 10}}; | 109 | const PadState PAD_X = {{1u << 10}}; |
| 101 | const PadState PAD_Y = {{1u << 11}}; | 110 | const PadState PAD_Y = {{1u << 11}}; |
| 111 | |||
| 112 | const PadState PAD_ZL = {{1u << 14}}; | ||
| 113 | const PadState PAD_ZR = {{1u << 15}}; | ||
| 114 | |||
| 115 | const PadState PAD_TOUCH = {{1u << 20}}; | ||
| 116 | |||
| 117 | const PadState PAD_C_RIGHT = {{1u << 24}}; | ||
| 118 | const PadState PAD_C_LEFT = {{1u << 25}}; | ||
| 119 | const PadState PAD_C_UP = {{1u << 26}}; | ||
| 120 | const PadState PAD_C_DOWN = {{1u << 27}}; | ||
| 102 | const PadState PAD_CIRCLE_RIGHT = {{1u << 28}}; | 121 | const PadState PAD_CIRCLE_RIGHT = {{1u << 28}}; |
| 103 | const PadState PAD_CIRCLE_LEFT = {{1u << 29}}; | 122 | const PadState PAD_CIRCLE_LEFT = {{1u << 29}}; |
| 104 | const PadState PAD_CIRCLE_UP = {{1u << 30}}; | 123 | const PadState PAD_CIRCLE_UP = {{1u << 30}}; |
diff --git a/src/core/settings.h b/src/core/settings.h index e62dd4358..870eea958 100644 --- a/src/core/settings.h +++ b/src/core/settings.h | |||
| @@ -16,6 +16,8 @@ struct Values { | |||
| 16 | int pad_y_key; | 16 | int pad_y_key; |
| 17 | int pad_l_key; | 17 | int pad_l_key; |
| 18 | int pad_r_key; | 18 | int pad_r_key; |
| 19 | int pad_zl_key; | ||
| 20 | int pad_zr_key; | ||
| 19 | int pad_start_key; | 21 | int pad_start_key; |
| 20 | int pad_select_key; | 22 | int pad_select_key; |
| 21 | int pad_home_key; | 23 | int pad_home_key; |
| @@ -27,6 +29,10 @@ struct Values { | |||
| 27 | int pad_sdown_key; | 29 | int pad_sdown_key; |
| 28 | int pad_sleft_key; | 30 | int pad_sleft_key; |
| 29 | int pad_sright_key; | 31 | int pad_sright_key; |
| 32 | int pad_cup_key; | ||
| 33 | int pad_cdown_key; | ||
| 34 | int pad_cleft_key; | ||
| 35 | int pad_cright_key; | ||
| 30 | 36 | ||
| 31 | // Core | 37 | // Core |
| 32 | int gpu_refresh_rate; | 38 | int gpu_refresh_rate; |