From 7a45533d80beeb5ccc9e0d9152d0b33be6ac688c Mon Sep 17 00:00:00 2001
From: 72374 <250991390+72374@users.noreply.github.com>
Date: Wed, 11 Mar 2026 02:27:32 +0100
Subject: [PATCH] feat: Offer settings for up to 256 times the original
resolution ("16x")
---
.../app/src/main/res/values/arrays.xml | 12 ++++++++
.../app/src/main/res/values/strings.xml | 6 ++++
src/citra_libretro/core_settings.cpp | 6 ++++
.../configuration/configure_enhancements.ui | 30 +++++++++++++++++++
src/common/settings.h | 2 +-
5 files changed, 55 insertions(+), 1 deletion(-)
diff --git a/src/android/app/src/main/res/values/arrays.xml b/src/android/app/src/main/res/values/arrays.xml
index 2a08cd546..742b5334f 100644
--- a/src/android/app/src/main/res/values/arrays.xml
+++ b/src/android/app/src/main/res/values/arrays.xml
@@ -384,6 +384,12 @@
- @string/internal_resolution_setting_8x
- @string/internal_resolution_setting_9x
- @string/internal_resolution_setting_10x
+ - @string/internal_resolution_setting_11x
+ - @string/internal_resolution_setting_12x
+ - @string/internal_resolution_setting_13x
+ - @string/internal_resolution_setting_14x
+ - @string/internal_resolution_setting_15x
+ - @string/internal_resolution_setting_16x
- 0
@@ -397,6 +403,12 @@
- 8
- 9
- 10
+ - 11
+ - 12
+ - 13
+ - 14
+ - 15
+ - 16
diff --git a/src/android/app/src/main/res/values/strings.xml b/src/android/app/src/main/res/values/strings.xml
index 46a2b0e47..6bf293cee 100644
--- a/src/android/app/src/main/res/values/strings.xml
+++ b/src/android/app/src/main/res/values/strings.xml
@@ -294,6 +294,12 @@
8x Native (3200x1920)
9x Native (3600x2160)
10x Native (4000x2400)
+ 11x Native (4400x2640)
+ 12x Native (4800x2880)
+ 13x Native (5200x3120)
+ 14x Native (5600x3360)
+ 15x Native (6000x3600)
+ 16x Native (6400x3840)
Turning off this setting will significantly reduce emulation performance! For the best experience, it is recommended that you leave this setting enabled.
Warning: Modifying these settings will slow emulation
Stereoscopy
diff --git a/src/citra_libretro/core_settings.cpp b/src/citra_libretro/core_settings.cpp
index 3710709c4..93c878144 100644
--- a/src/citra_libretro/core_settings.cpp
+++ b/src/citra_libretro/core_settings.cpp
@@ -372,6 +372,12 @@ static constexpr retro_core_option_v2_definition option_definitions[] = {
{ "8", "8x (3200x1920)" },
{ "9", "9x (3600x2160)" },
{ "10", "10x (4000x2400)" },
+ { "11", "11x (4400x2640)" },
+ { "12", "12x (4800x2880)" },
+ { "13", "13x (5200x3120)" },
+ { "14", "14x (5600x3360)" },
+ { "15", "15x (6000x3600)" },
+ { "16", "16x (6400x3840)" },
{ nullptr, nullptr }
},
"1"
diff --git a/src/citra_qt/configuration/configure_enhancements.ui b/src/citra_qt/configuration/configure_enhancements.ui
index dc3c3deaf..9e163f7d1 100644
--- a/src/citra_qt/configuration/configure_enhancements.ui
+++ b/src/citra_qt/configuration/configure_enhancements.ui
@@ -105,6 +105,36 @@
10x Native (4000x2400)
+ -
+
+ 11x Native (4400x2640)
+
+
+ -
+
+ 12x Native (4800x2880)
+
+
+ -
+
+ 13x Native (5200x3120)
+
+
+ -
+
+ 14x Native (5600x3360)
+
+
+ -
+
+ 15x Native (6000x3600)
+
+
+ -
+
+ 16x Native (6400x3840)
+
+
diff --git a/src/common/settings.h b/src/common/settings.h
index 90922bcff..7c19e2813 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -529,7 +529,7 @@ struct Values {
SwitchableSetting use_display_refresh_rate_detection{
true, Keys::use_display_refresh_rate_detection};
Setting use_shader_jit{true, Keys::use_shader_jit};
- SwitchableSetting resolution_factor{1, 0, 10, Keys::resolution_factor};
+ SwitchableSetting resolution_factor{1, 0, 16, Keys::resolution_factor};
SwitchableSetting use_integer_scaling{false, Keys::use_integer_scaling};
SwitchableSetting frame_limit{100, 0, 1000, Keys::frame_limit};
SwitchableSetting turbo_limit{200, 0, 1000, Keys::turbo_limit};