From e36dff45f4cd091dc55f0a2d137c2de3c78fa26a Mon Sep 17 00:00:00 2001 From: kalaposfos13 <153381648+kalaposfos13@users.noreply.github.com> Date: Fri, 15 May 2026 13:05:00 +0200 Subject: [PATCH] Add setting to toggle Enter button from cross to circle (#4427) * Add setting to toggle Enter button from cross to circle * clang is not my friend :( --- src/core/emulator_settings.h | 6 +++++- src/core/libraries/system/systemservice.cpp | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/core/emulator_settings.h b/src/core/emulator_settings.h index 831d411fd..5b4ed0c97 100644 --- a/src/core/emulator_settings.h +++ b/src/core/emulator_settings.h @@ -293,6 +293,7 @@ struct InputSettings { Setting background_controller_input{false}; // specific Setting ime_accessibility_enabled{false}; // specific Setting ime_url_mail_short_panel{false}; // specific + Setting is_circle_enter{false}; // specific Setting camera_id{-1}; std::vector GetOverrideableFields() const { @@ -309,6 +310,7 @@ struct InputSettings { &InputSettings::ime_accessibility_enabled), make_override("ime_url_mail_short_panel", &InputSettings::ime_url_mail_short_panel), + make_override("is_circle_enter", &InputSettings::is_circle_enter), make_override("camera_id", &InputSettings::camera_id)}; } }; @@ -316,7 +318,8 @@ NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(InputSettings, cursor_state, cursor_hide_time usb_device_backend, use_special_pad, special_pad_class, motion_controls_enabled, use_unified_input_config, default_controller_id, background_controller_input, - ime_accessibility_enabled, ime_url_mail_short_panel, camera_id) + ime_accessibility_enabled, ime_url_mail_short_panel, camera_id, + is_circle_enter) // ------------------------------- // Audio settings // ------------------------------- @@ -675,6 +678,7 @@ public: SETTING_FORWARD(m_input, SpecialPadClass, special_pad_class) SETTING_FORWARD_BOOL(m_input, UseUnifiedInputConfig, use_unified_input_config) SETTING_FORWARD(m_input, CameraId, camera_id) + SETTING_FORWARD_BOOL(m_input, CircleEnter, is_circle_enter) // Vulkan settings SETTING_FORWARD(m_vulkan, GpuId, gpu_id) diff --git a/src/core/libraries/system/systemservice.cpp b/src/core/libraries/system/systemservice.cpp index 0e40c723f..6c17de3d5 100644 --- a/src/core/libraries/system/systemservice.cpp +++ b/src/core/libraries/system/systemservice.cpp @@ -1935,7 +1935,8 @@ s32 PS4_SYSV_ABI sceSystemServiceParamGetInt(OrbisSystemServiceParamId param_id, *value = u32(OrbisSystemParamGameParentalLevel::Off); break; case OrbisSystemServiceParamId::EnterButtonAssign: - *value = u32(OrbisSystemParamEnterButtonAssign::Cross); + *value = u32(EmulatorSettings.IsCircleEnter() ? OrbisSystemParamEnterButtonAssign::Circle + : OrbisSystemParamEnterButtonAssign::Cross); break; default: LOG_ERROR(Lib_SystemService, "param_id {} unsupported!", u32(param_id));