From 3ac2c74e8519fe05b45fe97ebac72a28457e0354 Mon Sep 17 00:00:00 2001 From: Charles Lombardo Date: Thu, 15 Jun 2023 16:49:09 -0400 Subject: [PATCH] android: Expose fastmem option --- .../features/settings/model/BooleanSetting.kt | 2 + .../settings/ui/SettingsFragmentPresenter.kt | 22 ++++++++ .../res/layout/list_item_setting_switch.xml | 55 ++++++++++--------- .../app/src/main/res/values/strings.xml | 9 ++- 4 files changed, 59 insertions(+), 29 deletions(-) diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt index 63b4df2733..28dbead36a 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt @@ -8,6 +8,8 @@ enum class BooleanSetting( override val section: String, override val defaultValue: Boolean ) : AbstractBooleanSetting { + FASTMEM("cpuopt_fastmem", Settings.SECTION_CPU, true), + FASTMEM_EXCLUSIVES("cpuopt_fastmem_exclusives", Settings.SECTION_CPU, true), PICTURE_IN_PICTURE("picture_in_picture", Settings.SECTION_GENERAL, true), USE_CUSTOM_RTC("custom_rtc_enabled", Settings.SECTION_SYSTEM, false); diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt index 3b33f4fafc..35e3f62f92 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt @@ -487,6 +487,28 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView) IntSetting.RENDERER_DEBUG.defaultValue ) ) + + val fastmem = object : AbstractBooleanSetting { + override var boolean: Boolean + get() = + BooleanSetting.FASTMEM.boolean && BooleanSetting.FASTMEM_EXCLUSIVES.boolean + set(value) { + BooleanSetting.FASTMEM.boolean = value + BooleanSetting.FASTMEM_EXCLUSIVES.boolean = value + } + override val key: String? = null + override val section: String = Settings.SECTION_CPU + override val isRuntimeEditable: Boolean = false + override val valueAsString: String = "" + override val defaultValue: Any = true + } + add( + SwitchSetting( + fastmem, + R.string.fastmem, + 0 + ) + ) } } } diff --git a/src/android/app/src/main/res/layout/list_item_setting_switch.xml b/src/android/app/src/main/res/layout/list_item_setting_switch.xml index 599d845ade..a5767adee1 100644 --- a/src/android/app/src/main/res/layout/list_item_setting_switch.xml +++ b/src/android/app/src/main/res/layout/list_item_setting_switch.xml @@ -1,16 +1,16 @@ + android:paddingEnd="24dp"> - - - + android:gravity="center_vertical" + android:orientation="vertical"> + + + + + + diff --git a/src/android/app/src/main/res/values/strings.xml b/src/android/app/src/main/res/values/strings.xml index 2f2059d42f..0e42956f79 100644 --- a/src/android/app/src/main/res/values/strings.xml +++ b/src/android/app/src/main/res/values/strings.xml @@ -158,7 +158,6 @@ Set custom RTC - API Accuracy level Resolution (Handheld/Docked) VSync mode @@ -172,11 +171,15 @@ Compiles shaders asynchronously, reducing stutter but may introduce glitches. Use reactive flushing Improves rendering accuracy in some games at the cost of performance. - Graphics debugging - Sets the graphics API to a slow debugging mode. Disk shader cache Reduces stuttering by locally storing and loading generated shaders. + + API + Graphics debugging + Sets the graphics API to a slow debugging mode. + Fastmem + Volume Specifies the volume of audio output.