diff options
23 files changed, 148 insertions, 85 deletions
diff --git a/src/common/settings.cpp b/src/common/settings.cpp index 49b41c158..749ac213f 100644 --- a/src/common/settings.cpp +++ b/src/common/settings.cpp | |||
| @@ -76,6 +76,13 @@ void LogSettings() { | |||
| 76 | log_setting("Debugging_GDBStub", values.use_gdbstub.GetValue()); | 76 | log_setting("Debugging_GDBStub", values.use_gdbstub.GetValue()); |
| 77 | log_setting("Input_EnableMotion", values.motion_enabled.GetValue()); | 77 | log_setting("Input_EnableMotion", values.motion_enabled.GetValue()); |
| 78 | log_setting("Input_EnableVibration", values.vibration_enabled.GetValue()); | 78 | log_setting("Input_EnableVibration", values.vibration_enabled.GetValue()); |
| 79 | log_setting("Input_EnableTouch", values.touchscreen.enabled); | ||
| 80 | log_setting("Input_EnableMouse", values.mouse_enabled.GetValue()); | ||
| 81 | log_setting("Input_EnableKeyboard", values.keyboard_enabled.GetValue()); | ||
| 82 | log_setting("Input_EnableRingController", values.enable_ring_controller.GetValue()); | ||
| 83 | log_setting("Input_EnableIrSensor", values.enable_ir_sensor.GetValue()); | ||
| 84 | log_setting("Input_EnableCustomJoycon", values.enable_joycon_driver.GetValue()); | ||
| 85 | log_setting("Input_EnableCustomProController", values.enable_procon_driver.GetValue()); | ||
| 79 | log_setting("Input_EnableRawInput", values.enable_raw_input.GetValue()); | 86 | log_setting("Input_EnableRawInput", values.enable_raw_input.GetValue()); |
| 80 | } | 87 | } |
| 81 | 88 | ||
diff --git a/src/core/hid/emulated_devices.cpp b/src/core/hid/emulated_devices.cpp index 578a6ff61..8e165dded 100644 --- a/src/core/hid/emulated_devices.cpp +++ b/src/core/hid/emulated_devices.cpp | |||
| @@ -19,52 +19,53 @@ void EmulatedDevices::ReloadFromSettings() { | |||
| 19 | 19 | ||
| 20 | void EmulatedDevices::ReloadInput() { | 20 | void EmulatedDevices::ReloadInput() { |
| 21 | // If you load any device here add the equivalent to the UnloadInput() function | 21 | // If you load any device here add the equivalent to the UnloadInput() function |
| 22 | |||
| 23 | // Native Mouse is mapped on port 1, pad 0 | ||
| 24 | const Common::ParamPackage mouse_params{"engine:mouse,port:1,pad:0"}; | ||
| 25 | |||
| 26 | // Keyboard keys is mapped on port 1, pad 0 for normal keys, pad 1 for moddifier keys | ||
| 27 | const Common::ParamPackage keyboard_params{"engine:keyboard,port:1"}; | ||
| 28 | |||
| 22 | std::size_t key_index = 0; | 29 | std::size_t key_index = 0; |
| 23 | for (auto& mouse_device : mouse_button_devices) { | 30 | for (auto& mouse_device : mouse_button_devices) { |
| 24 | Common::ParamPackage mouse_params; | 31 | Common::ParamPackage mouse_button_params = mouse_params; |
| 25 | mouse_params.Set("engine", "mouse"); | 32 | mouse_button_params.Set("button", static_cast<int>(key_index)); |
| 26 | mouse_params.Set("button", static_cast<int>(key_index)); | 33 | mouse_device = Common::Input::CreateInputDevice(mouse_button_params); |
| 27 | mouse_device = Common::Input::CreateInputDevice(mouse_params); | ||
| 28 | key_index++; | 34 | key_index++; |
| 29 | } | 35 | } |
| 30 | 36 | ||
| 31 | mouse_stick_device = | 37 | Common::ParamPackage mouse_position_params = mouse_params; |
| 32 | Common::Input::CreateInputDeviceFromString("engine:mouse,axis_x:0,axis_y:1"); | 38 | mouse_position_params.Set("axis_x", 0); |
| 39 | mouse_position_params.Set("axis_y", 1); | ||
| 40 | mouse_position_params.Set("deadzone", 0.0f); | ||
| 41 | mouse_position_params.Set("range", 1.0f); | ||
| 42 | mouse_position_params.Set("threshold", 0.0f); | ||
| 43 | mouse_stick_device = Common::Input::CreateInputDevice(mouse_position_params); | ||
| 33 | 44 | ||
| 34 | // First two axis are reserved for mouse position | 45 | // First two axis are reserved for mouse position |
| 35 | key_index = 2; | 46 | key_index = 2; |
| 36 | for (auto& mouse_device : mouse_analog_devices) { | 47 | for (auto& mouse_device : mouse_wheel_devices) { |
| 37 | // Mouse axis are only mapped on port 1, pad 0 | 48 | Common::ParamPackage mouse_wheel_params = mouse_params; |
| 38 | Common::ParamPackage mouse_params; | 49 | mouse_wheel_params.Set("axis", static_cast<int>(key_index)); |
| 39 | mouse_params.Set("engine", "mouse"); | 50 | mouse_device = Common::Input::CreateInputDevice(mouse_wheel_params); |
| 40 | mouse_params.Set("axis", static_cast<int>(key_index)); | ||
| 41 | mouse_params.Set("port", 1); | ||
| 42 | mouse_params.Set("pad", 0); | ||
| 43 | mouse_device = Common::Input::CreateInputDevice(mouse_params); | ||
| 44 | key_index++; | 51 | key_index++; |
| 45 | } | 52 | } |
| 46 | 53 | ||
| 47 | key_index = 0; | 54 | key_index = 0; |
| 48 | for (auto& keyboard_device : keyboard_devices) { | 55 | for (auto& keyboard_device : keyboard_devices) { |
| 49 | // Keyboard keys are only mapped on port 1, pad 0 | 56 | Common::ParamPackage keyboard_key_params = keyboard_params; |
| 50 | Common::ParamPackage keyboard_params; | 57 | keyboard_key_params.Set("button", static_cast<int>(key_index)); |
| 51 | keyboard_params.Set("engine", "keyboard"); | 58 | keyboard_key_params.Set("pad", 0); |
| 52 | keyboard_params.Set("button", static_cast<int>(key_index)); | 59 | keyboard_device = Common::Input::CreateInputDevice(keyboard_key_params); |
| 53 | keyboard_params.Set("port", 1); | ||
| 54 | keyboard_params.Set("pad", 0); | ||
| 55 | keyboard_device = Common::Input::CreateInputDevice(keyboard_params); | ||
| 56 | key_index++; | 60 | key_index++; |
| 57 | } | 61 | } |
| 58 | 62 | ||
| 59 | key_index = 0; | 63 | key_index = 0; |
| 60 | for (auto& keyboard_device : keyboard_modifier_devices) { | 64 | for (auto& keyboard_device : keyboard_modifier_devices) { |
| 61 | // Keyboard moddifiers are only mapped on port 1, pad 1 | 65 | Common::ParamPackage keyboard_moddifier_params = keyboard_params; |
| 62 | Common::ParamPackage keyboard_params; | 66 | keyboard_moddifier_params.Set("button", static_cast<int>(key_index)); |
| 63 | keyboard_params.Set("engine", "keyboard"); | 67 | keyboard_moddifier_params.Set("pad", 1); |
| 64 | keyboard_params.Set("button", static_cast<int>(key_index)); | 68 | keyboard_device = Common::Input::CreateInputDevice(keyboard_moddifier_params); |
| 65 | keyboard_params.Set("port", 1); | ||
| 66 | keyboard_params.Set("pad", 1); | ||
| 67 | keyboard_device = Common::Input::CreateInputDevice(keyboard_params); | ||
| 68 | key_index++; | 69 | key_index++; |
| 69 | } | 70 | } |
| 70 | 71 | ||
| @@ -80,14 +81,14 @@ void EmulatedDevices::ReloadInput() { | |||
| 80 | }); | 81 | }); |
| 81 | } | 82 | } |
| 82 | 83 | ||
| 83 | for (std::size_t index = 0; index < mouse_analog_devices.size(); ++index) { | 84 | for (std::size_t index = 0; index < mouse_wheel_devices.size(); ++index) { |
| 84 | if (!mouse_analog_devices[index]) { | 85 | if (!mouse_wheel_devices[index]) { |
| 85 | continue; | 86 | continue; |
| 86 | } | 87 | } |
| 87 | mouse_analog_devices[index]->SetCallback({ | 88 | mouse_wheel_devices[index]->SetCallback({ |
| 88 | .on_change = | 89 | .on_change = |
| 89 | [this, index](const Common::Input::CallbackStatus& callback) { | 90 | [this, index](const Common::Input::CallbackStatus& callback) { |
| 90 | SetMouseAnalog(callback, index); | 91 | SetMouseWheel(callback, index); |
| 91 | }, | 92 | }, |
| 92 | }); | 93 | }); |
| 93 | } | 94 | } |
| @@ -95,7 +96,9 @@ void EmulatedDevices::ReloadInput() { | |||
| 95 | if (mouse_stick_device) { | 96 | if (mouse_stick_device) { |
| 96 | mouse_stick_device->SetCallback({ | 97 | mouse_stick_device->SetCallback({ |
| 97 | .on_change = | 98 | .on_change = |
| 98 | [this](const Common::Input::CallbackStatus& callback) { SetMouseStick(callback); }, | 99 | [this](const Common::Input::CallbackStatus& callback) { |
| 100 | SetMousePosition(callback); | ||
| 101 | }, | ||
| 99 | }); | 102 | }); |
| 100 | } | 103 | } |
| 101 | 104 | ||
| @@ -128,7 +131,7 @@ void EmulatedDevices::UnloadInput() { | |||
| 128 | for (auto& button : mouse_button_devices) { | 131 | for (auto& button : mouse_button_devices) { |
| 129 | button.reset(); | 132 | button.reset(); |
| 130 | } | 133 | } |
| 131 | for (auto& analog : mouse_analog_devices) { | 134 | for (auto& analog : mouse_wheel_devices) { |
| 132 | analog.reset(); | 135 | analog.reset(); |
| 133 | } | 136 | } |
| 134 | mouse_stick_device.reset(); | 137 | mouse_stick_device.reset(); |
| @@ -362,18 +365,18 @@ void EmulatedDevices::SetMouseButton(const Common::Input::CallbackStatus& callba | |||
| 362 | TriggerOnChange(DeviceTriggerType::Mouse); | 365 | TriggerOnChange(DeviceTriggerType::Mouse); |
| 363 | } | 366 | } |
| 364 | 367 | ||
| 365 | void EmulatedDevices::SetMouseAnalog(const Common::Input::CallbackStatus& callback, | 368 | void EmulatedDevices::SetMouseWheel(const Common::Input::CallbackStatus& callback, |
| 366 | std::size_t index) { | 369 | std::size_t index) { |
| 367 | if (index >= device_status.mouse_analog_values.size()) { | 370 | if (index >= device_status.mouse_wheel_values.size()) { |
| 368 | return; | 371 | return; |
| 369 | } | 372 | } |
| 370 | std::unique_lock lock{mutex}; | 373 | std::unique_lock lock{mutex}; |
| 371 | const auto analog_value = TransformToAnalog(callback); | 374 | const auto analog_value = TransformToAnalog(callback); |
| 372 | 375 | ||
| 373 | device_status.mouse_analog_values[index] = analog_value; | 376 | device_status.mouse_wheel_values[index] = analog_value; |
| 374 | 377 | ||
| 375 | if (is_configuring) { | 378 | if (is_configuring) { |
| 376 | device_status.mouse_position_state = {}; | 379 | device_status.mouse_wheel_state = {}; |
| 377 | lock.unlock(); | 380 | lock.unlock(); |
| 378 | TriggerOnChange(DeviceTriggerType::Mouse); | 381 | TriggerOnChange(DeviceTriggerType::Mouse); |
| 379 | return; | 382 | return; |
| @@ -392,7 +395,7 @@ void EmulatedDevices::SetMouseAnalog(const Common::Input::CallbackStatus& callba | |||
| 392 | TriggerOnChange(DeviceTriggerType::Mouse); | 395 | TriggerOnChange(DeviceTriggerType::Mouse); |
| 393 | } | 396 | } |
| 394 | 397 | ||
| 395 | void EmulatedDevices::SetMouseStick(const Common::Input::CallbackStatus& callback) { | 398 | void EmulatedDevices::SetMousePosition(const Common::Input::CallbackStatus& callback) { |
| 396 | std::unique_lock lock{mutex}; | 399 | std::unique_lock lock{mutex}; |
| 397 | const auto touch_value = TransformToTouch(callback); | 400 | const auto touch_value = TransformToTouch(callback); |
| 398 | 401 | ||
diff --git a/src/core/hid/emulated_devices.h b/src/core/hid/emulated_devices.h index 76f9150df..caf2ca659 100644 --- a/src/core/hid/emulated_devices.h +++ b/src/core/hid/emulated_devices.h | |||
| @@ -23,8 +23,8 @@ using KeyboardModifierDevices = std::array<std::unique_ptr<Common::Input::InputD | |||
| 23 | Settings::NativeKeyboard::NumKeyboardMods>; | 23 | Settings::NativeKeyboard::NumKeyboardMods>; |
| 24 | using MouseButtonDevices = std::array<std::unique_ptr<Common::Input::InputDevice>, | 24 | using MouseButtonDevices = std::array<std::unique_ptr<Common::Input::InputDevice>, |
| 25 | Settings::NativeMouseButton::NumMouseButtons>; | 25 | Settings::NativeMouseButton::NumMouseButtons>; |
| 26 | using MouseAnalogDevices = std::array<std::unique_ptr<Common::Input::InputDevice>, | 26 | using MouseWheelDevices = std::array<std::unique_ptr<Common::Input::InputDevice>, |
| 27 | Settings::NativeMouseWheel::NumMouseWheels>; | 27 | Settings::NativeMouseWheel::NumMouseWheels>; |
| 28 | using MouseStickDevice = std::unique_ptr<Common::Input::InputDevice>; | 28 | using MouseStickDevice = std::unique_ptr<Common::Input::InputDevice>; |
| 29 | 29 | ||
| 30 | using MouseButtonParams = | 30 | using MouseButtonParams = |
| @@ -36,7 +36,7 @@ using KeyboardModifierValues = | |||
| 36 | std::array<Common::Input::ButtonStatus, Settings::NativeKeyboard::NumKeyboardMods>; | 36 | std::array<Common::Input::ButtonStatus, Settings::NativeKeyboard::NumKeyboardMods>; |
| 37 | using MouseButtonValues = | 37 | using MouseButtonValues = |
| 38 | std::array<Common::Input::ButtonStatus, Settings::NativeMouseButton::NumMouseButtons>; | 38 | std::array<Common::Input::ButtonStatus, Settings::NativeMouseButton::NumMouseButtons>; |
| 39 | using MouseAnalogValues = | 39 | using MouseWheelValues = |
| 40 | std::array<Common::Input::AnalogStatus, Settings::NativeMouseWheel::NumMouseWheels>; | 40 | std::array<Common::Input::AnalogStatus, Settings::NativeMouseWheel::NumMouseWheels>; |
| 41 | using MouseStickValue = Common::Input::TouchStatus; | 41 | using MouseStickValue = Common::Input::TouchStatus; |
| 42 | 42 | ||
| @@ -50,7 +50,7 @@ struct DeviceStatus { | |||
| 50 | KeyboardValues keyboard_values{}; | 50 | KeyboardValues keyboard_values{}; |
| 51 | KeyboardModifierValues keyboard_moddifier_values{}; | 51 | KeyboardModifierValues keyboard_moddifier_values{}; |
| 52 | MouseButtonValues mouse_button_values{}; | 52 | MouseButtonValues mouse_button_values{}; |
| 53 | MouseAnalogValues mouse_analog_values{}; | 53 | MouseWheelValues mouse_wheel_values{}; |
| 54 | MouseStickValue mouse_stick_value{}; | 54 | MouseStickValue mouse_stick_value{}; |
| 55 | 55 | ||
| 56 | // Data for HID serices | 56 | // Data for HID serices |
| @@ -111,15 +111,6 @@ public: | |||
| 111 | /// Reverts any mapped changes made that weren't saved | 111 | /// Reverts any mapped changes made that weren't saved |
| 112 | void RestoreConfig(); | 112 | void RestoreConfig(); |
| 113 | 113 | ||
| 114 | // Returns the current mapped ring device | ||
| 115 | Common::ParamPackage GetRingParam() const; | ||
| 116 | |||
| 117 | /** | ||
| 118 | * Updates the current mapped ring device | ||
| 119 | * @param param ParamPackage with ring sensor data to be mapped | ||
| 120 | */ | ||
| 121 | void SetRingParam(Common::ParamPackage param); | ||
| 122 | |||
| 123 | /// Returns the latest status of button input from the keyboard with parameters | 114 | /// Returns the latest status of button input from the keyboard with parameters |
| 124 | KeyboardValues GetKeyboardValues() const; | 115 | KeyboardValues GetKeyboardValues() const; |
| 125 | 116 | ||
| @@ -187,19 +178,13 @@ private: | |||
| 187 | * @param callback A CallbackStatus containing the wheel status | 178 | * @param callback A CallbackStatus containing the wheel status |
| 188 | * @param index wheel ID to be updated | 179 | * @param index wheel ID to be updated |
| 189 | */ | 180 | */ |
| 190 | void SetMouseAnalog(const Common::Input::CallbackStatus& callback, std::size_t index); | 181 | void SetMouseWheel(const Common::Input::CallbackStatus& callback, std::size_t index); |
| 191 | 182 | ||
| 192 | /** | 183 | /** |
| 193 | * Updates the mouse position status of the mouse device | 184 | * Updates the mouse position status of the mouse device |
| 194 | * @param callback A CallbackStatus containing the position status | 185 | * @param callback A CallbackStatus containing the position status |
| 195 | */ | 186 | */ |
| 196 | void SetMouseStick(const Common::Input::CallbackStatus& callback); | 187 | void SetMousePosition(const Common::Input::CallbackStatus& callback); |
| 197 | |||
| 198 | /** | ||
| 199 | * Updates the ring analog sensor status of the ring controller | ||
| 200 | * @param callback A CallbackStatus containing the force status | ||
| 201 | */ | ||
| 202 | void SetRingAnalog(const Common::Input::CallbackStatus& callback); | ||
| 203 | 188 | ||
| 204 | /** | 189 | /** |
| 205 | * Triggers a callback that something has changed on the device status | 190 | * Triggers a callback that something has changed on the device status |
| @@ -212,7 +197,7 @@ private: | |||
| 212 | KeyboardDevices keyboard_devices; | 197 | KeyboardDevices keyboard_devices; |
| 213 | KeyboardModifierDevices keyboard_modifier_devices; | 198 | KeyboardModifierDevices keyboard_modifier_devices; |
| 214 | MouseButtonDevices mouse_button_devices; | 199 | MouseButtonDevices mouse_button_devices; |
| 215 | MouseAnalogDevices mouse_analog_devices; | 200 | MouseWheelDevices mouse_wheel_devices; |
| 216 | MouseStickDevice mouse_stick_device; | 201 | MouseStickDevice mouse_stick_device; |
| 217 | 202 | ||
| 218 | mutable std::mutex mutex; | 203 | mutable std::mutex mutex; |
diff --git a/src/core/hle/service/acc/acc.cpp b/src/core/hle/service/acc/acc.cpp index 1495d64de..1241fcdff 100644 --- a/src/core/hle/service/acc/acc.cpp +++ b/src/core/hle/service/acc/acc.cpp | |||
| @@ -76,6 +76,8 @@ public: | |||
| 76 | {141, nullptr, "RefreshNetworkServiceLicenseCacheAsync"}, // 5.0.0+ | 76 | {141, nullptr, "RefreshNetworkServiceLicenseCacheAsync"}, // 5.0.0+ |
| 77 | {142, nullptr, "RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed"}, // 5.0.0+ | 77 | {142, nullptr, "RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed"}, // 5.0.0+ |
| 78 | {150, nullptr, "CreateAuthorizationRequest"}, | 78 | {150, nullptr, "CreateAuthorizationRequest"}, |
| 79 | {160, nullptr, "RequiresUpdateNetworkServiceAccountIdTokenCache"}, | ||
| 80 | {161, nullptr, "RequireReauthenticationOfNetworkServiceAccount"}, | ||
| 79 | }; | 81 | }; |
| 80 | // clang-format on | 82 | // clang-format on |
| 81 | 83 | ||
| @@ -136,7 +138,10 @@ public: | |||
| 136 | {140, nullptr, "GetNetworkServiceLicenseCache"}, // 5.0.0+ | 138 | {140, nullptr, "GetNetworkServiceLicenseCache"}, // 5.0.0+ |
| 137 | {141, nullptr, "RefreshNetworkServiceLicenseCacheAsync"}, // 5.0.0+ | 139 | {141, nullptr, "RefreshNetworkServiceLicenseCacheAsync"}, // 5.0.0+ |
| 138 | {142, nullptr, "RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed"}, // 5.0.0+ | 140 | {142, nullptr, "RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed"}, // 5.0.0+ |
| 141 | {143, nullptr, "GetNetworkServiceLicenseCacheEx"}, | ||
| 139 | {150, nullptr, "CreateAuthorizationRequest"}, | 142 | {150, nullptr, "CreateAuthorizationRequest"}, |
| 143 | {160, nullptr, "RequiresUpdateNetworkServiceAccountIdTokenCache"}, | ||
| 144 | {161, nullptr, "RequireReauthenticationOfNetworkServiceAccount"}, | ||
| 140 | {200, nullptr, "IsRegistered"}, | 145 | {200, nullptr, "IsRegistered"}, |
| 141 | {201, nullptr, "RegisterAsync"}, | 146 | {201, nullptr, "RegisterAsync"}, |
| 142 | {202, nullptr, "UnregisterAsync"}, | 147 | {202, nullptr, "UnregisterAsync"}, |
| @@ -242,6 +247,7 @@ public: | |||
| 242 | {100, nullptr, "GetRequestWithTheme"}, | 247 | {100, nullptr, "GetRequestWithTheme"}, |
| 243 | {101, nullptr, "IsNetworkServiceAccountReplaced"}, | 248 | {101, nullptr, "IsNetworkServiceAccountReplaced"}, |
| 244 | {199, nullptr, "GetUrlForIntroductionOfExtraMembership"}, // 2.0.0 - 5.1.0 | 249 | {199, nullptr, "GetUrlForIntroductionOfExtraMembership"}, // 2.0.0 - 5.1.0 |
| 250 | {200, nullptr, "ApplyAsyncWithAuthorizedToken"}, | ||
| 245 | }; | 251 | }; |
| 246 | // clang-format on | 252 | // clang-format on |
| 247 | 253 | ||
| @@ -647,9 +653,11 @@ public: | |||
| 647 | {0, nullptr, "EnsureAuthenticationTokenCacheAsync"}, | 653 | {0, nullptr, "EnsureAuthenticationTokenCacheAsync"}, |
| 648 | {1, nullptr, "LoadAuthenticationTokenCache"}, | 654 | {1, nullptr, "LoadAuthenticationTokenCache"}, |
| 649 | {2, nullptr, "InvalidateAuthenticationTokenCache"}, | 655 | {2, nullptr, "InvalidateAuthenticationTokenCache"}, |
| 656 | {3, nullptr, "IsDeviceAuthenticationTokenCacheAvailable"}, | ||
| 650 | {10, nullptr, "EnsureEdgeTokenCacheAsync"}, | 657 | {10, nullptr, "EnsureEdgeTokenCacheAsync"}, |
| 651 | {11, nullptr, "LoadEdgeTokenCache"}, | 658 | {11, nullptr, "LoadEdgeTokenCache"}, |
| 652 | {12, nullptr, "InvalidateEdgeTokenCache"}, | 659 | {12, nullptr, "InvalidateEdgeTokenCache"}, |
| 660 | {13, nullptr, "IsEdgeTokenCacheAvailable"}, | ||
| 653 | {20, nullptr, "EnsureApplicationAuthenticationCacheAsync"}, | 661 | {20, nullptr, "EnsureApplicationAuthenticationCacheAsync"}, |
| 654 | {21, nullptr, "LoadApplicationAuthenticationTokenCache"}, | 662 | {21, nullptr, "LoadApplicationAuthenticationTokenCache"}, |
| 655 | {22, nullptr, "LoadApplicationNetworkServiceClientConfigCache"}, | 663 | {22, nullptr, "LoadApplicationNetworkServiceClientConfigCache"}, |
diff --git a/src/core/hle/service/acc/acc_su.cpp b/src/core/hle/service/acc/acc_su.cpp index b6bfd6155..d9882ecd3 100644 --- a/src/core/hle/service/acc/acc_su.cpp +++ b/src/core/hle/service/acc/acc_su.cpp | |||
| @@ -55,6 +55,10 @@ ACC_SU::ACC_SU(std::shared_ptr<Module> module_, std::shared_ptr<ProfileManager> | |||
| 55 | {290, nullptr, "ProxyProcedureForGuestLoginWithNintendoAccount"}, | 55 | {290, nullptr, "ProxyProcedureForGuestLoginWithNintendoAccount"}, |
| 56 | {291, nullptr, "ProxyProcedureForFloatingRegistrationWithNintendoAccount"}, | 56 | {291, nullptr, "ProxyProcedureForFloatingRegistrationWithNintendoAccount"}, |
| 57 | {299, nullptr, "SuspendBackgroundDaemon"}, | 57 | {299, nullptr, "SuspendBackgroundDaemon"}, |
| 58 | {900, nullptr, "SetUserUnqualifiedForDebug"}, | ||
| 59 | {901, nullptr, "UnsetUserUnqualifiedForDebug"}, | ||
| 60 | {902, nullptr, "ListUsersUnqualifiedForDebug"}, | ||
| 61 | {910, nullptr, "RefreshFirmwareSettingsForDebug"}, | ||
| 58 | {997, nullptr, "DebugInvalidateTokenCacheForUser"}, | 62 | {997, nullptr, "DebugInvalidateTokenCacheForUser"}, |
| 59 | {998, nullptr, "DebugSetUserStateClose"}, | 63 | {998, nullptr, "DebugSetUserStateClose"}, |
| 60 | {999, nullptr, "DebugSetUserStateOpen"}, | 64 | {999, nullptr, "DebugSetUserStateOpen"}, |
diff --git a/src/core/hle/service/am/am.cpp b/src/core/hle/service/am/am.cpp index beb2da06e..26af499d2 100644 --- a/src/core/hle/service/am/am.cpp +++ b/src/core/hle/service/am/am.cpp | |||
| @@ -226,6 +226,8 @@ IDebugFunctions::IDebugFunctions(Core::System& system_) | |||
| 226 | {30, nullptr, "RequestLaunchApplicationWithUserAndArgumentForDebug"}, | 226 | {30, nullptr, "RequestLaunchApplicationWithUserAndArgumentForDebug"}, |
| 227 | {31, nullptr, "RequestLaunchApplicationByApplicationLaunchInfoForDebug"}, | 227 | {31, nullptr, "RequestLaunchApplicationByApplicationLaunchInfoForDebug"}, |
| 228 | {40, nullptr, "GetAppletResourceUsageInfo"}, | 228 | {40, nullptr, "GetAppletResourceUsageInfo"}, |
| 229 | {50, nullptr, "AddSystemProgramIdAndAppletIdForDebug"}, | ||
| 230 | {51, nullptr, "AddOperationConfirmedLibraryAppletIdForDebug"}, | ||
| 229 | {100, nullptr, "SetCpuBoostModeForApplet"}, | 231 | {100, nullptr, "SetCpuBoostModeForApplet"}, |
| 230 | {101, nullptr, "CancelCpuBoostModeForApplet"}, | 232 | {101, nullptr, "CancelCpuBoostModeForApplet"}, |
| 231 | {110, nullptr, "PushToAppletBoundChannelForDebug"}, | 233 | {110, nullptr, "PushToAppletBoundChannelForDebug"}, |
| @@ -237,6 +239,8 @@ IDebugFunctions::IDebugFunctions(Core::System& system_) | |||
| 237 | {131, nullptr, "FriendInvitationClearApplicationParameter"}, | 239 | {131, nullptr, "FriendInvitationClearApplicationParameter"}, |
| 238 | {132, nullptr, "FriendInvitationPushApplicationParameter"}, | 240 | {132, nullptr, "FriendInvitationPushApplicationParameter"}, |
| 239 | {140, nullptr, "RestrictPowerOperationForSecureLaunchModeForDebug"}, | 241 | {140, nullptr, "RestrictPowerOperationForSecureLaunchModeForDebug"}, |
| 242 | {200, nullptr, "CreateFloatingLibraryAppletAccepterForDebug"}, | ||
| 243 | {300, nullptr, "TerminateAllRunningApplicationsForDebug"}, | ||
| 240 | {900, nullptr, "GetGrcProcessLaunchedSystemEvent"}, | 244 | {900, nullptr, "GetGrcProcessLaunchedSystemEvent"}, |
| 241 | }; | 245 | }; |
| 242 | // clang-format on | 246 | // clang-format on |
| @@ -1855,6 +1859,8 @@ IHomeMenuFunctions::IHomeMenuFunctions(Core::System& system_) | |||
| 1855 | {31, nullptr, "GetWriterLockAccessorEx"}, | 1859 | {31, nullptr, "GetWriterLockAccessorEx"}, |
| 1856 | {40, nullptr, "IsSleepEnabled"}, | 1860 | {40, nullptr, "IsSleepEnabled"}, |
| 1857 | {41, nullptr, "IsRebootEnabled"}, | 1861 | {41, nullptr, "IsRebootEnabled"}, |
| 1862 | {50, nullptr, "LaunchSystemApplet"}, | ||
| 1863 | {51, nullptr, "LaunchStarter"}, | ||
| 1858 | {100, nullptr, "PopRequestLaunchApplicationForDebug"}, | 1864 | {100, nullptr, "PopRequestLaunchApplicationForDebug"}, |
| 1859 | {110, nullptr, "IsForceTerminateApplicationDisabledForDebug"}, | 1865 | {110, nullptr, "IsForceTerminateApplicationDisabledForDebug"}, |
| 1860 | {200, nullptr, "LaunchDevMenu"}, | 1866 | {200, nullptr, "LaunchDevMenu"}, |
diff --git a/src/core/hle/service/aoc/aoc_u.cpp b/src/core/hle/service/aoc/aoc_u.cpp index 7264f23f9..1bbf057cb 100644 --- a/src/core/hle/service/aoc/aoc_u.cpp +++ b/src/core/hle/service/aoc/aoc_u.cpp | |||
| @@ -129,6 +129,9 @@ AOC_U::AOC_U(Core::System& system_) | |||
| 129 | {101, &AOC_U::CreatePermanentEcPurchasedEventManager, "CreatePermanentEcPurchasedEventManager"}, | 129 | {101, &AOC_U::CreatePermanentEcPurchasedEventManager, "CreatePermanentEcPurchasedEventManager"}, |
| 130 | {110, nullptr, "CreateContentsServiceManager"}, | 130 | {110, nullptr, "CreateContentsServiceManager"}, |
| 131 | {200, nullptr, "SetRequiredAddOnContentsOnContentsAvailabilityTransition"}, | 131 | {200, nullptr, "SetRequiredAddOnContentsOnContentsAvailabilityTransition"}, |
| 132 | {300, nullptr, "SetupHostAddOnContent"}, | ||
| 133 | {301, nullptr, "GetRegisteredAddOnContentPath"}, | ||
| 134 | {302, nullptr, "UpdateCachedList"}, | ||
| 132 | }; | 135 | }; |
| 133 | // clang-format on | 136 | // clang-format on |
| 134 | 137 | ||
diff --git a/src/core/hle/service/audio/hwopus.cpp b/src/core/hle/service/audio/hwopus.cpp index e01f87356..3db3fe188 100644 --- a/src/core/hle/service/audio/hwopus.cpp +++ b/src/core/hle/service/audio/hwopus.cpp | |||
| @@ -362,6 +362,8 @@ HwOpus::HwOpus(Core::System& system_) : ServiceFramework{system_, "hwopus"} { | |||
| 362 | {5, &HwOpus::GetWorkBufferSizeEx, "GetWorkBufferSizeEx"}, | 362 | {5, &HwOpus::GetWorkBufferSizeEx, "GetWorkBufferSizeEx"}, |
| 363 | {6, nullptr, "OpenHardwareOpusDecoderForMultiStreamEx"}, | 363 | {6, nullptr, "OpenHardwareOpusDecoderForMultiStreamEx"}, |
| 364 | {7, &HwOpus::GetWorkBufferSizeForMultiStreamEx, "GetWorkBufferSizeForMultiStreamEx"}, | 364 | {7, &HwOpus::GetWorkBufferSizeForMultiStreamEx, "GetWorkBufferSizeForMultiStreamEx"}, |
| 365 | {8, nullptr, "GetWorkBufferSizeExEx"}, | ||
| 366 | {9, nullptr, "GetWorkBufferSizeForMultiStreamExEx"}, | ||
| 365 | }; | 367 | }; |
| 366 | RegisterHandlers(functions); | 368 | RegisterHandlers(functions); |
| 367 | } | 369 | } |
diff --git a/src/core/hle/service/hid/controllers/gesture.cpp b/src/core/hle/service/hid/controllers/gesture.cpp index 32e0708ba..de0090cc5 100644 --- a/src/core/hle/service/hid/controllers/gesture.cpp +++ b/src/core/hle/service/hid/controllers/gesture.cpp | |||
| @@ -65,6 +65,11 @@ void Controller_Gesture::OnUpdate(const Core::Timing::CoreTiming& core_timing) { | |||
| 65 | } | 65 | } |
| 66 | 66 | ||
| 67 | void Controller_Gesture::ReadTouchInput() { | 67 | void Controller_Gesture::ReadTouchInput() { |
| 68 | if (!Settings::values.touchscreen.enabled) { | ||
| 69 | fingers = {}; | ||
| 70 | return; | ||
| 71 | } | ||
| 72 | |||
| 68 | const auto touch_status = console->GetTouch(); | 73 | const auto touch_status = console->GetTouch(); |
| 69 | for (std::size_t id = 0; id < fingers.size(); ++id) { | 74 | for (std::size_t id = 0; id < fingers.size(); ++id) { |
| 70 | fingers[id] = touch_status[id]; | 75 | fingers[id] = touch_status[id]; |
diff --git a/src/core/hle/service/hid/controllers/mouse.cpp b/src/core/hle/service/hid/controllers/mouse.cpp index b11cb438d..0afc66681 100644 --- a/src/core/hle/service/hid/controllers/mouse.cpp +++ b/src/core/hle/service/hid/controllers/mouse.cpp | |||
| @@ -33,10 +33,11 @@ void Controller_Mouse::OnUpdate(const Core::Timing::CoreTiming& core_timing) { | |||
| 33 | return; | 33 | return; |
| 34 | } | 34 | } |
| 35 | 35 | ||
| 36 | next_state = {}; | ||
| 37 | |||
| 36 | const auto& last_entry = shared_memory->mouse_lifo.ReadCurrentEntry().state; | 38 | const auto& last_entry = shared_memory->mouse_lifo.ReadCurrentEntry().state; |
| 37 | next_state.sampling_number = last_entry.sampling_number + 1; | 39 | next_state.sampling_number = last_entry.sampling_number + 1; |
| 38 | 40 | ||
| 39 | next_state.attribute.raw = 0; | ||
| 40 | if (Settings::values.mouse_enabled) { | 41 | if (Settings::values.mouse_enabled) { |
| 41 | const auto& mouse_button_state = emulated_devices->GetMouseButtons(); | 42 | const auto& mouse_button_state = emulated_devices->GetMouseButtons(); |
| 42 | const auto& mouse_position_state = emulated_devices->GetMousePosition(); | 43 | const auto& mouse_position_state = emulated_devices->GetMousePosition(); |
diff --git a/src/core/hle/service/hid/controllers/touchscreen.cpp b/src/core/hle/service/hid/controllers/touchscreen.cpp index 1da8d3eb0..d90a4e732 100644 --- a/src/core/hle/service/hid/controllers/touchscreen.cpp +++ b/src/core/hle/service/hid/controllers/touchscreen.cpp | |||
| @@ -58,6 +58,11 @@ void Controller_Touchscreen::OnUpdate(const Core::Timing::CoreTiming& core_timin | |||
| 58 | } | 58 | } |
| 59 | 59 | ||
| 60 | if (!finger.pressed && current_touch.pressed) { | 60 | if (!finger.pressed && current_touch.pressed) { |
| 61 | // Ignore all touch fingers if disabled | ||
| 62 | if (!Settings::values.touchscreen.enabled) { | ||
| 63 | continue; | ||
| 64 | } | ||
| 65 | |||
| 61 | finger.attribute.start_touch.Assign(1); | 66 | finger.attribute.start_touch.Assign(1); |
| 62 | finger.pressed = true; | 67 | finger.pressed = true; |
| 63 | finger.position = current_touch.position; | 68 | finger.position = current_touch.position; |
diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp index eb3c45a58..8c99cec06 100644 --- a/src/core/hle/service/hid/hid.cpp +++ b/src/core/hle/service/hid/hid.cpp | |||
| @@ -63,6 +63,7 @@ IAppletResource::IAppletResource(Core::System& system_, | |||
| 63 | MakeControllerWithServiceContext<Controller_NPad>(HidController::NPad, shared_memory); | 63 | MakeControllerWithServiceContext<Controller_NPad>(HidController::NPad, shared_memory); |
| 64 | MakeController<Controller_Gesture>(HidController::Gesture, shared_memory); | 64 | MakeController<Controller_Gesture>(HidController::Gesture, shared_memory); |
| 65 | MakeController<Controller_ConsoleSixAxis>(HidController::ConsoleSixAxisSensor, shared_memory); | 65 | MakeController<Controller_ConsoleSixAxis>(HidController::ConsoleSixAxisSensor, shared_memory); |
| 66 | MakeController<Controller_Stubbed>(HidController::DebugMouse, shared_memory); | ||
| 66 | MakeControllerWithServiceContext<Controller_Palma>(HidController::Palma, shared_memory); | 67 | MakeControllerWithServiceContext<Controller_Palma>(HidController::Palma, shared_memory); |
| 67 | 68 | ||
| 68 | // Homebrew doesn't try to activate some controllers, so we activate them by default | 69 | // Homebrew doesn't try to activate some controllers, so we activate them by default |
| @@ -74,6 +75,7 @@ IAppletResource::IAppletResource(Core::System& system_, | |||
| 74 | GetController<Controller_Stubbed>(HidController::CaptureButton).SetCommonHeaderOffset(0x5000); | 75 | GetController<Controller_Stubbed>(HidController::CaptureButton).SetCommonHeaderOffset(0x5000); |
| 75 | GetController<Controller_Stubbed>(HidController::InputDetector).SetCommonHeaderOffset(0x5200); | 76 | GetController<Controller_Stubbed>(HidController::InputDetector).SetCommonHeaderOffset(0x5200); |
| 76 | GetController<Controller_Stubbed>(HidController::UniquePad).SetCommonHeaderOffset(0x5A00); | 77 | GetController<Controller_Stubbed>(HidController::UniquePad).SetCommonHeaderOffset(0x5A00); |
| 78 | GetController<Controller_Stubbed>(HidController::DebugMouse).SetCommonHeaderOffset(0x3DC00); | ||
| 77 | 79 | ||
| 78 | // Register update callbacks | 80 | // Register update callbacks |
| 79 | npad_update_event = Core::Timing::CreateEvent( | 81 | npad_update_event = Core::Timing::CreateEvent( |
| @@ -236,6 +238,7 @@ Hid::Hid(Core::System& system_) | |||
| 236 | {1, &Hid::ActivateDebugPad, "ActivateDebugPad"}, | 238 | {1, &Hid::ActivateDebugPad, "ActivateDebugPad"}, |
| 237 | {11, &Hid::ActivateTouchScreen, "ActivateTouchScreen"}, | 239 | {11, &Hid::ActivateTouchScreen, "ActivateTouchScreen"}, |
| 238 | {21, &Hid::ActivateMouse, "ActivateMouse"}, | 240 | {21, &Hid::ActivateMouse, "ActivateMouse"}, |
| 241 | {26, nullptr, "ActivateDebugMouse"}, | ||
| 239 | {31, &Hid::ActivateKeyboard, "ActivateKeyboard"}, | 242 | {31, &Hid::ActivateKeyboard, "ActivateKeyboard"}, |
| 240 | {32, &Hid::SendKeyboardLockKeyEvent, "SendKeyboardLockKeyEvent"}, | 243 | {32, &Hid::SendKeyboardLockKeyEvent, "SendKeyboardLockKeyEvent"}, |
| 241 | {40, nullptr, "AcquireXpadIdEventHandle"}, | 244 | {40, nullptr, "AcquireXpadIdEventHandle"}, |
| @@ -2380,6 +2383,8 @@ public: | |||
| 2380 | {20, nullptr, "DeactivateMouse"}, | 2383 | {20, nullptr, "DeactivateMouse"}, |
| 2381 | {21, nullptr, "SetMouseAutoPilotState"}, | 2384 | {21, nullptr, "SetMouseAutoPilotState"}, |
| 2382 | {22, nullptr, "UnsetMouseAutoPilotState"}, | 2385 | {22, nullptr, "UnsetMouseAutoPilotState"}, |
| 2386 | {25, nullptr, "SetDebugMouseAutoPilotState"}, | ||
| 2387 | {26, nullptr, "UnsetDebugMouseAutoPilotState"}, | ||
| 2383 | {30, nullptr, "DeactivateKeyboard"}, | 2388 | {30, nullptr, "DeactivateKeyboard"}, |
| 2384 | {31, nullptr, "SetKeyboardAutoPilotState"}, | 2389 | {31, nullptr, "SetKeyboardAutoPilotState"}, |
| 2385 | {32, nullptr, "UnsetKeyboardAutoPilotState"}, | 2390 | {32, nullptr, "UnsetKeyboardAutoPilotState"}, |
| @@ -2495,6 +2500,7 @@ public: | |||
| 2495 | {2000, nullptr, "DeactivateDigitizer"}, | 2500 | {2000, nullptr, "DeactivateDigitizer"}, |
| 2496 | {2001, nullptr, "SetDigitizerAutoPilotState"}, | 2501 | {2001, nullptr, "SetDigitizerAutoPilotState"}, |
| 2497 | {2002, nullptr, "UnsetDigitizerAutoPilotState"}, | 2502 | {2002, nullptr, "UnsetDigitizerAutoPilotState"}, |
| 2503 | {2002, nullptr, "ReloadFirmwareDebugSettings"}, | ||
| 2498 | }; | 2504 | }; |
| 2499 | // clang-format on | 2505 | // clang-format on |
| 2500 | 2506 | ||
diff --git a/src/core/hle/service/hid/hid.h b/src/core/hle/service/hid/hid.h index b7c2a23ef..8fc9ed88a 100644 --- a/src/core/hle/service/hid/hid.h +++ b/src/core/hle/service/hid/hid.h | |||
| @@ -33,6 +33,7 @@ enum class HidController : std::size_t { | |||
| 33 | NPad, | 33 | NPad, |
| 34 | Gesture, | 34 | Gesture, |
| 35 | ConsoleSixAxisSensor, | 35 | ConsoleSixAxisSensor, |
| 36 | DebugMouse, | ||
| 36 | Palma, | 37 | Palma, |
| 37 | 38 | ||
| 38 | MaxControllers, | 39 | MaxControllers, |
diff --git a/src/core/hle/service/hid/hidbus.cpp b/src/core/hle/service/hid/hidbus.cpp index bd94e8f3d..8dbb2cf50 100644 --- a/src/core/hle/service/hid/hidbus.cpp +++ b/src/core/hle/service/hid/hidbus.cpp | |||
| @@ -91,7 +91,7 @@ std::optional<std::size_t> HidBus::GetDeviceIndexFromHandle(BusHandle handle) co | |||
| 91 | if (handle.abstracted_pad_id == device_handle.abstracted_pad_id && | 91 | if (handle.abstracted_pad_id == device_handle.abstracted_pad_id && |
| 92 | handle.internal_index == device_handle.internal_index && | 92 | handle.internal_index == device_handle.internal_index && |
| 93 | handle.player_number == device_handle.player_number && | 93 | handle.player_number == device_handle.player_number && |
| 94 | handle.bus_type == device_handle.bus_type && | 94 | handle.bus_type_id == device_handle.bus_type_id && |
| 95 | handle.is_valid == device_handle.is_valid) { | 95 | handle.is_valid == device_handle.is_valid) { |
| 96 | return i; | 96 | return i; |
| 97 | } | 97 | } |
| @@ -123,7 +123,7 @@ void HidBus::GetBusHandle(Kernel::HLERequestContext& ctx) { | |||
| 123 | continue; | 123 | continue; |
| 124 | } | 124 | } |
| 125 | if (static_cast<Core::HID::NpadIdType>(handle.player_number) == parameters.npad_id && | 125 | if (static_cast<Core::HID::NpadIdType>(handle.player_number) == parameters.npad_id && |
| 126 | handle.bus_type == parameters.bus_type) { | 126 | handle.bus_type_id == static_cast<u8>(parameters.bus_type)) { |
| 127 | is_handle_found = true; | 127 | is_handle_found = true; |
| 128 | handle_index = i; | 128 | handle_index = i; |
| 129 | break; | 129 | break; |
| @@ -140,7 +140,7 @@ void HidBus::GetBusHandle(Kernel::HLERequestContext& ctx) { | |||
| 140 | .abstracted_pad_id = static_cast<u8>(i), | 140 | .abstracted_pad_id = static_cast<u8>(i), |
| 141 | .internal_index = static_cast<u8>(i), | 141 | .internal_index = static_cast<u8>(i), |
| 142 | .player_number = static_cast<u8>(parameters.npad_id), | 142 | .player_number = static_cast<u8>(parameters.npad_id), |
| 143 | .bus_type = parameters.bus_type, | 143 | .bus_type_id = static_cast<u8>(parameters.bus_type), |
| 144 | .is_valid = true, | 144 | .is_valid = true, |
| 145 | }; | 145 | }; |
| 146 | handle_index = i; | 146 | handle_index = i; |
| @@ -172,7 +172,7 @@ void HidBus::IsExternalDeviceConnected(Kernel::HLERequestContext& ctx) { | |||
| 172 | LOG_INFO(Service_HID, | 172 | LOG_INFO(Service_HID, |
| 173 | "Called, abstracted_pad_id={}, bus_type={}, internal_index={}, " | 173 | "Called, abstracted_pad_id={}, bus_type={}, internal_index={}, " |
| 174 | "player_number={}, is_valid={}", | 174 | "player_number={}, is_valid={}", |
| 175 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 175 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 176 | bus_handle_.player_number, bus_handle_.is_valid); | 176 | bus_handle_.player_number, bus_handle_.is_valid); |
| 177 | 177 | ||
| 178 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 178 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -201,7 +201,7 @@ void HidBus::Initialize(Kernel::HLERequestContext& ctx) { | |||
| 201 | LOG_INFO(Service_HID, | 201 | LOG_INFO(Service_HID, |
| 202 | "called, abstracted_pad_id={} bus_type={} internal_index={} " | 202 | "called, abstracted_pad_id={} bus_type={} internal_index={} " |
| 203 | "player_number={} is_valid={}, applet_resource_user_id={}", | 203 | "player_number={} is_valid={}, applet_resource_user_id={}", |
| 204 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 204 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 205 | bus_handle_.player_number, bus_handle_.is_valid, applet_resource_user_id); | 205 | bus_handle_.player_number, bus_handle_.is_valid, applet_resource_user_id); |
| 206 | 206 | ||
| 207 | is_hidbus_enabled = true; | 207 | is_hidbus_enabled = true; |
| @@ -253,7 +253,7 @@ void HidBus::Finalize(Kernel::HLERequestContext& ctx) { | |||
| 253 | LOG_INFO(Service_HID, | 253 | LOG_INFO(Service_HID, |
| 254 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, " | 254 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, " |
| 255 | "player_number={}, is_valid={}, applet_resource_user_id={}", | 255 | "player_number={}, is_valid={}, applet_resource_user_id={}", |
| 256 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 256 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 257 | bus_handle_.player_number, bus_handle_.is_valid, applet_resource_user_id); | 257 | bus_handle_.player_number, bus_handle_.is_valid, applet_resource_user_id); |
| 258 | 258 | ||
| 259 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 259 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -301,7 +301,7 @@ void HidBus::EnableExternalDevice(Kernel::HLERequestContext& ctx) { | |||
| 301 | "called, enable={}, abstracted_pad_id={}, bus_type={}, internal_index={}, " | 301 | "called, enable={}, abstracted_pad_id={}, bus_type={}, internal_index={}, " |
| 302 | "player_number={}, is_valid={}, inval={}, applet_resource_user_id{}", | 302 | "player_number={}, is_valid={}, inval={}, applet_resource_user_id{}", |
| 303 | parameters.enable, parameters.bus_handle.abstracted_pad_id, | 303 | parameters.enable, parameters.bus_handle.abstracted_pad_id, |
| 304 | parameters.bus_handle.bus_type, parameters.bus_handle.internal_index, | 304 | parameters.bus_handle.bus_type_id, parameters.bus_handle.internal_index, |
| 305 | parameters.bus_handle.player_number, parameters.bus_handle.is_valid, parameters.inval, | 305 | parameters.bus_handle.player_number, parameters.bus_handle.is_valid, parameters.inval, |
| 306 | parameters.applet_resource_user_id); | 306 | parameters.applet_resource_user_id); |
| 307 | 307 | ||
| @@ -329,7 +329,7 @@ void HidBus::GetExternalDeviceId(Kernel::HLERequestContext& ctx) { | |||
| 329 | LOG_DEBUG(Service_HID, | 329 | LOG_DEBUG(Service_HID, |
| 330 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " | 330 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " |
| 331 | "is_valid={}", | 331 | "is_valid={}", |
| 332 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 332 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 333 | bus_handle_.player_number, bus_handle_.is_valid); | 333 | bus_handle_.player_number, bus_handle_.is_valid); |
| 334 | 334 | ||
| 335 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 335 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -357,7 +357,7 @@ void HidBus::SendCommandAsync(Kernel::HLERequestContext& ctx) { | |||
| 357 | LOG_DEBUG(Service_HID, | 357 | LOG_DEBUG(Service_HID, |
| 358 | "called, data_size={}, abstracted_pad_id={}, bus_type={}, internal_index={}, " | 358 | "called, data_size={}, abstracted_pad_id={}, bus_type={}, internal_index={}, " |
| 359 | "player_number={}, is_valid={}", | 359 | "player_number={}, is_valid={}", |
| 360 | data.size(), bus_handle_.abstracted_pad_id, bus_handle_.bus_type, | 360 | data.size(), bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, |
| 361 | bus_handle_.internal_index, bus_handle_.player_number, bus_handle_.is_valid); | 361 | bus_handle_.internal_index, bus_handle_.player_number, bus_handle_.is_valid); |
| 362 | 362 | ||
| 363 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 363 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -384,7 +384,7 @@ void HidBus::GetSendCommandAsynceResult(Kernel::HLERequestContext& ctx) { | |||
| 384 | LOG_DEBUG(Service_HID, | 384 | LOG_DEBUG(Service_HID, |
| 385 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " | 385 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " |
| 386 | "is_valid={}", | 386 | "is_valid={}", |
| 387 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 387 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 388 | bus_handle_.player_number, bus_handle_.is_valid); | 388 | bus_handle_.player_number, bus_handle_.is_valid); |
| 389 | 389 | ||
| 390 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 390 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -413,7 +413,7 @@ void HidBus::SetEventForSendCommandAsycResult(Kernel::HLERequestContext& ctx) { | |||
| 413 | LOG_INFO(Service_HID, | 413 | LOG_INFO(Service_HID, |
| 414 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " | 414 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " |
| 415 | "is_valid={}", | 415 | "is_valid={}", |
| 416 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 416 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 417 | bus_handle_.player_number, bus_handle_.is_valid); | 417 | bus_handle_.player_number, bus_handle_.is_valid); |
| 418 | 418 | ||
| 419 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 419 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -464,7 +464,7 @@ void HidBus::EnableJoyPollingReceiveMode(Kernel::HLERequestContext& ctx) { | |||
| 464 | LOG_INFO(Service_HID, | 464 | LOG_INFO(Service_HID, |
| 465 | "called, t_mem_handle=0x{:08X}, polling_mode={}, abstracted_pad_id={}, bus_type={}, " | 465 | "called, t_mem_handle=0x{:08X}, polling_mode={}, abstracted_pad_id={}, bus_type={}, " |
| 466 | "internal_index={}, player_number={}, is_valid={}", | 466 | "internal_index={}, player_number={}, is_valid={}", |
| 467 | t_mem_handle, polling_mode_, bus_handle_.abstracted_pad_id, bus_handle_.bus_type, | 467 | t_mem_handle, polling_mode_, bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, |
| 468 | bus_handle_.internal_index, bus_handle_.player_number, bus_handle_.is_valid); | 468 | bus_handle_.internal_index, bus_handle_.player_number, bus_handle_.is_valid); |
| 469 | 469 | ||
| 470 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 470 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
| @@ -492,7 +492,7 @@ void HidBus::DisableJoyPollingReceiveMode(Kernel::HLERequestContext& ctx) { | |||
| 492 | LOG_INFO(Service_HID, | 492 | LOG_INFO(Service_HID, |
| 493 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " | 493 | "called, abstracted_pad_id={}, bus_type={}, internal_index={}, player_number={}, " |
| 494 | "is_valid={}", | 494 | "is_valid={}", |
| 495 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type, bus_handle_.internal_index, | 495 | bus_handle_.abstracted_pad_id, bus_handle_.bus_type_id, bus_handle_.internal_index, |
| 496 | bus_handle_.player_number, bus_handle_.is_valid); | 496 | bus_handle_.player_number, bus_handle_.is_valid); |
| 497 | 497 | ||
| 498 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); | 498 | const auto device_index = GetDeviceIndexFromHandle(bus_handle_); |
diff --git a/src/core/hle/service/hid/hidbus.h b/src/core/hle/service/hid/hidbus.h index 8c687f678..91c99b01f 100644 --- a/src/core/hle/service/hid/hidbus.h +++ b/src/core/hle/service/hid/hidbus.h | |||
| @@ -41,7 +41,7 @@ private: | |||
| 41 | }; | 41 | }; |
| 42 | 42 | ||
| 43 | // This is nn::hidbus::BusType | 43 | // This is nn::hidbus::BusType |
| 44 | enum class BusType : u8 { | 44 | enum class BusType : u32 { |
| 45 | LeftJoyRail, | 45 | LeftJoyRail, |
| 46 | RightJoyRail, | 46 | RightJoyRail, |
| 47 | InternalBus, // Lark microphone | 47 | InternalBus, // Lark microphone |
| @@ -54,7 +54,7 @@ private: | |||
| 54 | u32 abstracted_pad_id; | 54 | u32 abstracted_pad_id; |
| 55 | u8 internal_index; | 55 | u8 internal_index; |
| 56 | u8 player_number; | 56 | u8 player_number; |
| 57 | BusType bus_type; | 57 | u8 bus_type_id; |
| 58 | bool is_valid; | 58 | bool is_valid; |
| 59 | }; | 59 | }; |
| 60 | static_assert(sizeof(BusHandle) == 0x8, "BusHandle is an invalid size"); | 60 | static_assert(sizeof(BusHandle) == 0x8, "BusHandle is an invalid size"); |
diff --git a/src/core/hle/service/ncm/ncm.cpp b/src/core/hle/service/ncm/ncm.cpp index 68210a108..4c66cfeba 100644 --- a/src/core/hle/service/ncm/ncm.cpp +++ b/src/core/hle/service/ncm/ncm.cpp | |||
| @@ -124,6 +124,7 @@ public: | |||
| 124 | {12, nullptr, "InactivateContentMetaDatabase"}, | 124 | {12, nullptr, "InactivateContentMetaDatabase"}, |
| 125 | {13, nullptr, "InvalidateRightsIdCache"}, | 125 | {13, nullptr, "InvalidateRightsIdCache"}, |
| 126 | {14, nullptr, "GetMemoryReport"}, | 126 | {14, nullptr, "GetMemoryReport"}, |
| 127 | {15, nullptr, "ActivateFsContentStorage"}, | ||
| 127 | }; | 128 | }; |
| 128 | // clang-format on | 129 | // clang-format on |
| 129 | 130 | ||
diff --git a/src/core/hle/service/ns/ns.cpp b/src/core/hle/service/ns/ns.cpp index f59a1a63d..e53bdde52 100644 --- a/src/core/hle/service/ns/ns.cpp +++ b/src/core/hle/service/ns/ns.cpp | |||
| @@ -159,6 +159,8 @@ IApplicationManagerInterface::IApplicationManagerInterface(Core::System& system_ | |||
| 159 | {606, nullptr, "GetContentMetaStorage"}, | 159 | {606, nullptr, "GetContentMetaStorage"}, |
| 160 | {607, nullptr, "ListAvailableAddOnContent"}, | 160 | {607, nullptr, "ListAvailableAddOnContent"}, |
| 161 | {609, nullptr, "ListAvailabilityAssuredAddOnContent"}, | 161 | {609, nullptr, "ListAvailabilityAssuredAddOnContent"}, |
| 162 | {610, nullptr, "GetInstalledContentMetaStorage"}, | ||
| 163 | {611, nullptr, "PrepareAddOnContent"}, | ||
| 162 | {700, nullptr, "PushDownloadTaskList"}, | 164 | {700, nullptr, "PushDownloadTaskList"}, |
| 163 | {701, nullptr, "ClearTaskStatusList"}, | 165 | {701, nullptr, "ClearTaskStatusList"}, |
| 164 | {702, nullptr, "RequestDownloadTaskList"}, | 166 | {702, nullptr, "RequestDownloadTaskList"}, |
| @@ -228,6 +230,7 @@ IApplicationManagerInterface::IApplicationManagerInterface(Core::System& system_ | |||
| 228 | {1900, nullptr, "IsActiveAccount"}, | 230 | {1900, nullptr, "IsActiveAccount"}, |
| 229 | {1901, nullptr, "RequestDownloadApplicationPrepurchasedRights"}, | 231 | {1901, nullptr, "RequestDownloadApplicationPrepurchasedRights"}, |
| 230 | {1902, nullptr, "GetApplicationTicketInfo"}, | 232 | {1902, nullptr, "GetApplicationTicketInfo"}, |
| 233 | {1903, nullptr, "RequestDownloadApplicationPrepurchasedRightsForAccount"}, | ||
| 231 | {2000, nullptr, "GetSystemDeliveryInfo"}, | 234 | {2000, nullptr, "GetSystemDeliveryInfo"}, |
| 232 | {2001, nullptr, "SelectLatestSystemDeliveryInfo"}, | 235 | {2001, nullptr, "SelectLatestSystemDeliveryInfo"}, |
| 233 | {2002, nullptr, "VerifyDeliveryProtocolVersion"}, | 236 | {2002, nullptr, "VerifyDeliveryProtocolVersion"}, |
| @@ -276,8 +279,11 @@ IApplicationManagerInterface::IApplicationManagerInterface(Core::System& system_ | |||
| 276 | {2352, nullptr, "RequestResolveNoDownloadRightsError"}, | 279 | {2352, nullptr, "RequestResolveNoDownloadRightsError"}, |
| 277 | {2353, nullptr, "GetApplicationDownloadTaskInfo"}, | 280 | {2353, nullptr, "GetApplicationDownloadTaskInfo"}, |
| 278 | {2354, nullptr, "PrioritizeApplicationBackgroundTask"}, | 281 | {2354, nullptr, "PrioritizeApplicationBackgroundTask"}, |
| 279 | {2355, nullptr, "Unknown2355"}, | 282 | {2355, nullptr, "PreferStorageEfficientUpdate"}, |
| 280 | {2356, nullptr, "Unknown2356"}, | 283 | {2356, nullptr, "RequestStorageEfficientUpdatePreferable"}, |
| 284 | {2357, nullptr, "EnableMultiCoreDownload"}, | ||
| 285 | {2358, nullptr, "DisableMultiCoreDownload"}, | ||
| 286 | {2359, nullptr, "IsMultiCoreDownloadEnabled"}, | ||
| 281 | {2400, nullptr, "GetPromotionInfo"}, | 287 | {2400, nullptr, "GetPromotionInfo"}, |
| 282 | {2401, nullptr, "CountPromotionInfo"}, | 288 | {2401, nullptr, "CountPromotionInfo"}, |
| 283 | {2402, nullptr, "ListPromotionInfo"}, | 289 | {2402, nullptr, "ListPromotionInfo"}, |
| @@ -295,6 +301,7 @@ IApplicationManagerInterface::IApplicationManagerInterface(Core::System& system_ | |||
| 295 | {2519, nullptr, "IsQualificationTransitionSupported"}, | 301 | {2519, nullptr, "IsQualificationTransitionSupported"}, |
| 296 | {2520, nullptr, "IsQualificationTransitionSupportedByProcessId"}, | 302 | {2520, nullptr, "IsQualificationTransitionSupportedByProcessId"}, |
| 297 | {2521, nullptr, "GetRightsUserChangedEvent"}, | 303 | {2521, nullptr, "GetRightsUserChangedEvent"}, |
| 304 | {2522, nullptr, "IsRomRedirectionAvailable"}, | ||
| 298 | {2800, nullptr, "GetApplicationIdOfPreomia"}, | 305 | {2800, nullptr, "GetApplicationIdOfPreomia"}, |
| 299 | {3000, nullptr, "RegisterDeviceLockKey"}, | 306 | {3000, nullptr, "RegisterDeviceLockKey"}, |
| 300 | {3001, nullptr, "UnregisterDeviceLockKey"}, | 307 | {3001, nullptr, "UnregisterDeviceLockKey"}, |
| @@ -311,6 +318,7 @@ IApplicationManagerInterface::IApplicationManagerInterface(Core::System& system_ | |||
| 311 | {3012, nullptr, "IsApplicationTitleHidden"}, | 318 | {3012, nullptr, "IsApplicationTitleHidden"}, |
| 312 | {3013, nullptr, "IsGameCardEnabled"}, | 319 | {3013, nullptr, "IsGameCardEnabled"}, |
| 313 | {3014, nullptr, "IsLocalContentShareEnabled"}, | 320 | {3014, nullptr, "IsLocalContentShareEnabled"}, |
| 321 | {3050, nullptr, "ListAssignELicenseTaskResult"}, | ||
| 314 | {9999, nullptr, "GetApplicationCertificate"}, | 322 | {9999, nullptr, "GetApplicationCertificate"}, |
| 315 | }; | 323 | }; |
| 316 | // clang-format on | 324 | // clang-format on |
diff --git a/src/core/hle/service/sockets/bsd.cpp b/src/core/hle/service/sockets/bsd.cpp index bdb499268..330a66409 100644 --- a/src/core/hle/service/sockets/bsd.cpp +++ b/src/core/hle/service/sockets/bsd.cpp | |||
| @@ -954,6 +954,9 @@ BSDCFG::BSDCFG(Core::System& system_) : ServiceFramework{system_, "bsdcfg"} { | |||
| 954 | {10, nullptr, "ClearArpEntries"}, | 954 | {10, nullptr, "ClearArpEntries"}, |
| 955 | {11, nullptr, "ClearArpEntries2"}, | 955 | {11, nullptr, "ClearArpEntries2"}, |
| 956 | {12, nullptr, "PrintArpEntries"}, | 956 | {12, nullptr, "PrintArpEntries"}, |
| 957 | {13, nullptr, "Unknown13"}, | ||
| 958 | {14, nullptr, "Unknown14"}, | ||
| 959 | {15, nullptr, "Unknown15"}, | ||
| 957 | }; | 960 | }; |
| 958 | // clang-format on | 961 | // clang-format on |
| 959 | 962 | ||
diff --git a/src/core/hle/service/ssl/ssl.cpp b/src/core/hle/service/ssl/ssl.cpp index dcf47083f..015208593 100644 --- a/src/core/hle/service/ssl/ssl.cpp +++ b/src/core/hle/service/ssl/ssl.cpp | |||
| @@ -46,6 +46,14 @@ public: | |||
| 46 | {25, nullptr, "GetCipherInfo"}, | 46 | {25, nullptr, "GetCipherInfo"}, |
| 47 | {26, nullptr, "SetNextAlpnProto"}, | 47 | {26, nullptr, "SetNextAlpnProto"}, |
| 48 | {27, nullptr, "GetNextAlpnProto"}, | 48 | {27, nullptr, "GetNextAlpnProto"}, |
| 49 | {28, nullptr, "SetDtlsSocketDescriptor"}, | ||
| 50 | {29, nullptr, "GetDtlsHandshakeTimeout"}, | ||
| 51 | {30, nullptr, "SetPrivateOption"}, | ||
| 52 | {31, nullptr, "SetSrtpCiphers"}, | ||
| 53 | {32, nullptr, "GetSrtpCipher"}, | ||
| 54 | {33, nullptr, "ExportKeyingMaterial"}, | ||
| 55 | {34, nullptr, "SetIoTimeout"}, | ||
| 56 | {35, nullptr, "GetIoTimeout"}, | ||
| 49 | }; | 57 | }; |
| 50 | // clang-format on | 58 | // clang-format on |
| 51 | 59 | ||
| @@ -69,6 +77,8 @@ public: | |||
| 69 | {9, nullptr, "AddPolicyOid"}, | 77 | {9, nullptr, "AddPolicyOid"}, |
| 70 | {10, nullptr, "ImportCrl"}, | 78 | {10, nullptr, "ImportCrl"}, |
| 71 | {11, nullptr, "RemoveCrl"}, | 79 | {11, nullptr, "RemoveCrl"}, |
| 80 | {12, nullptr, "ImportClientCertKeyPki"}, | ||
| 81 | {13, nullptr, "GeneratePrivateKeyAndCert"}, | ||
| 72 | }; | 82 | }; |
| 73 | RegisterHandlers(functions); | 83 | RegisterHandlers(functions); |
| 74 | } | 84 | } |
diff --git a/src/core/hle/service/vi/vi.cpp b/src/core/hle/service/vi/vi.cpp index 2fb631183..0915785d2 100644 --- a/src/core/hle/service/vi/vi.cpp +++ b/src/core/hle/service/vi/vi.cpp | |||
| @@ -249,6 +249,9 @@ public: | |||
| 249 | {2053, nullptr, "DestroyIndirectProducerEndPoint"}, | 249 | {2053, nullptr, "DestroyIndirectProducerEndPoint"}, |
| 250 | {2054, nullptr, "CreateIndirectConsumerEndPoint"}, | 250 | {2054, nullptr, "CreateIndirectConsumerEndPoint"}, |
| 251 | {2055, nullptr, "DestroyIndirectConsumerEndPoint"}, | 251 | {2055, nullptr, "DestroyIndirectConsumerEndPoint"}, |
| 252 | {2060, nullptr, "CreateWatermarkCompositor"}, | ||
| 253 | {2062, nullptr, "SetWatermarkText"}, | ||
| 254 | {2063, nullptr, "SetWatermarkLayerStacks"}, | ||
| 252 | {2300, nullptr, "AcquireLayerTexturePresentingEvent"}, | 255 | {2300, nullptr, "AcquireLayerTexturePresentingEvent"}, |
| 253 | {2301, nullptr, "ReleaseLayerTexturePresentingEvent"}, | 256 | {2301, nullptr, "ReleaseLayerTexturePresentingEvent"}, |
| 254 | {2302, nullptr, "GetDisplayHotplugEvent"}, | 257 | {2302, nullptr, "GetDisplayHotplugEvent"}, |
| @@ -279,6 +282,8 @@ public: | |||
| 279 | {6011, nullptr, "EnableLayerAutoClearTransitionBuffer"}, | 282 | {6011, nullptr, "EnableLayerAutoClearTransitionBuffer"}, |
| 280 | {6012, nullptr, "DisableLayerAutoClearTransitionBuffer"}, | 283 | {6012, nullptr, "DisableLayerAutoClearTransitionBuffer"}, |
| 281 | {6013, nullptr, "SetLayerOpacity"}, | 284 | {6013, nullptr, "SetLayerOpacity"}, |
| 285 | {6014, nullptr, "AttachLayerWatermarkCompositor"}, | ||
| 286 | {6015, nullptr, "DetachLayerWatermarkCompositor"}, | ||
| 282 | {7000, nullptr, "SetContentVisibility"}, | 287 | {7000, nullptr, "SetContentVisibility"}, |
| 283 | {8000, nullptr, "SetConductorLayer"}, | 288 | {8000, nullptr, "SetConductorLayer"}, |
| 284 | {8001, nullptr, "SetTimestampTracking"}, | 289 | {8001, nullptr, "SetTimestampTracking"}, |
diff --git a/src/core/hle/service/vi/vi_m.cpp b/src/core/hle/service/vi/vi_m.cpp index 1ab7fe4ab..7ca44354b 100644 --- a/src/core/hle/service/vi/vi_m.cpp +++ b/src/core/hle/service/vi/vi_m.cpp | |||
| @@ -14,6 +14,10 @@ VI_M::VI_M(Core::System& system_, NVFlinger::NVFlinger& nv_flinger_, | |||
| 14 | static const FunctionInfo functions[] = { | 14 | static const FunctionInfo functions[] = { |
| 15 | {2, &VI_M::GetDisplayService, "GetDisplayService"}, | 15 | {2, &VI_M::GetDisplayService, "GetDisplayService"}, |
| 16 | {3, nullptr, "GetDisplayServiceWithProxyNameExchange"}, | 16 | {3, nullptr, "GetDisplayServiceWithProxyNameExchange"}, |
| 17 | {100, nullptr, "PrepareFatal"}, | ||
| 18 | {101, nullptr, "ShowFatal"}, | ||
| 19 | {102, nullptr, "DrawFatalRectangle"}, | ||
| 20 | {103, nullptr, "DrawFatalText32"}, | ||
| 17 | }; | 21 | }; |
| 18 | RegisterHandlers(functions); | 22 | RegisterHandlers(functions); |
| 19 | } | 23 | } |
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index db68ed259..bfed2d038 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp | |||
| @@ -1312,9 +1312,7 @@ void Config::SaveRendererValues() { | |||
| 1312 | static_cast<u32>(Settings::values.renderer_backend.GetValue(global)), | 1312 | static_cast<u32>(Settings::values.renderer_backend.GetValue(global)), |
| 1313 | static_cast<u32>(Settings::values.renderer_backend.GetDefault()), | 1313 | static_cast<u32>(Settings::values.renderer_backend.GetDefault()), |
| 1314 | Settings::values.renderer_backend.UsingGlobal()); | 1314 | Settings::values.renderer_backend.UsingGlobal()); |
| 1315 | WriteSetting(QString::fromStdString(Settings::values.renderer_force_max_clock.GetLabel()), | 1315 | WriteGlobalSetting(Settings::values.renderer_force_max_clock); |
| 1316 | static_cast<u32>(Settings::values.renderer_force_max_clock.GetValue(global)), | ||
| 1317 | static_cast<u32>(Settings::values.renderer_force_max_clock.GetDefault())); | ||
| 1318 | WriteGlobalSetting(Settings::values.vulkan_device); | 1316 | WriteGlobalSetting(Settings::values.vulkan_device); |
| 1319 | WriteSetting(QString::fromStdString(Settings::values.fullscreen_mode.GetLabel()), | 1317 | WriteSetting(QString::fromStdString(Settings::values.fullscreen_mode.GetLabel()), |
| 1320 | static_cast<u32>(Settings::values.fullscreen_mode.GetValue(global)), | 1318 | static_cast<u32>(Settings::values.fullscreen_mode.GetValue(global)), |
diff --git a/src/yuzu/configuration/configure_graphics_advanced.cpp b/src/yuzu/configuration/configure_graphics_advanced.cpp index cc0155a2c..7ab5d5bf5 100644 --- a/src/yuzu/configuration/configure_graphics_advanced.cpp +++ b/src/yuzu/configuration/configure_graphics_advanced.cpp | |||
| @@ -45,8 +45,6 @@ void ConfigureGraphicsAdvanced::SetConfiguration() { | |||
| 45 | &Settings::values.max_anisotropy); | 45 | &Settings::values.max_anisotropy); |
| 46 | ConfigurationShared::SetHighlight(ui->label_gpu_accuracy, | 46 | ConfigurationShared::SetHighlight(ui->label_gpu_accuracy, |
| 47 | !Settings::values.gpu_accuracy.UsingGlobal()); | 47 | !Settings::values.gpu_accuracy.UsingGlobal()); |
| 48 | ConfigurationShared::SetHighlight(ui->renderer_force_max_clock, | ||
| 49 | !Settings::values.renderer_force_max_clock.UsingGlobal()); | ||
| 50 | ConfigurationShared::SetHighlight(ui->af_label, | 48 | ConfigurationShared::SetHighlight(ui->af_label, |
| 51 | !Settings::values.max_anisotropy.UsingGlobal()); | 49 | !Settings::values.max_anisotropy.UsingGlobal()); |
| 52 | } | 50 | } |