summaryrefslogtreecommitdiff
path: root/src/common/settings.h
AgeCommit message (Collapse)Author
2025-05-12fix(renderer_vulkan): resolve asynchronous presentation crashes and ↵Zephyron
compilation errors Fix multiple issues in the Vulkan asynchronous presentation implementation: - Convert regular mutexes to timed_mutex for timeout support - Use condition_variable_any for compatibility with timed_mutex - Fix thread synchronization with proper locking and error handling - Add VkResultToString helper to replace missing ToString function - Implement better error recovery with recreation attempt limits - Add comprehensive logging for better troubleshooting These changes make the asynchronous presentation feature more robust and less prone to deadlocks, while keeping it disabled by default since it may still cause instability in some games. Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-12feat: add CPU clock rate slider to settingsZephyron
Implement a slider in the CPU settings tab to adjust the BASE_CLOCK_RATE up to 1,785 MHz (Switch's official maximum clock rate). Default remains at 1,020 MHz. This change: - Adds UI slider and spinbox to configure_cpu.ui with range 500-1785 MHz - Makes BASE_CLOCK_RATE dynamic by reading from settings - Modifies WallClock to handle dynamic clock rate changes - Updates APM controller to properly set the clock rate - Changes clock rate settings category from Core to CPU The user can now easily adjust the CPU clock rate to improve performance or manage thermals and power consumption. Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-12feat: add option to respect present interval 0 as unlocked FPSZephyron
When enabled, this feature allows games using present interval 0 to run with truly unlocked FPS, matching actual hardware behavior more accurately. Previously, Citron would cap present interval 0 at 120FPS to conserve battery, but this prevented proper functionality of dynamic framerate mods like UltraCam by MaxLastBreath (https://www.nxoptimizer.com/). The setting is disabled by default to maintain the current behavior for most users. Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-11impl(Multiplayer): Switched API To Enable MultiplayerZephyron
2024-12-20Add 12gb DRAM option (#90)Zuckerwatte1
This adds the option to allow the emulator to use 12gb of RAM for something like really big texture packs. Co-authored-by: smiRaphi <neogt404@gmail.com> Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/90 Co-authored-by: Zuckerwatte1 <zuckerwatte1@noreply.localhost> Co-committed-by: Zuckerwatte1 <zuckerwatte1@noreply.localhost>
2024-12-20Add option to only optimize SPIRV during load (#13)echosys
Adds a new option "On Load" to the "Optimize SPIRV output" option that turns on optimizations during the loading of the shader cache from disk, but turns it off after that. The previous checkbox states have been named "Never" for unchecked and "Always" for checked. The idea is that once the shader cache has most of the shaders in a game cached they can be optimized during initial game startup (where a performance hit matters less) and the few shaders that get compiled during runtime are not optimized to reduce performance hits. Most of the commit is adding the setting to the Android app, the main logic is in the `gl_shader_cache.cpp` and `vk_pipeline_cache.cpp` files. Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/13 Co-authored-by: echosys <echosys@noreply.localhost> Co-committed-by: echosys <echosys@noreply.localhost>
2024-12-20Added option to synchronize core tick speed to max speed percentagespectranator
2024-12-20Optionally optimize generated SPIRV with spirv-opt (#10)darktux
Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/10 Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion> Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
2024-12-20Removed telemetry and anonymized SCM (git) stringsdarktux
2024-12-20Add option to log synchronously, add tooltip to log filter.Kelebek1
2024-12-20fix: Increased max sensitivity for mouse panningAkatsuki Levi
2024-02-26Merge pull request #13159 from liamwhite/web-errorliamwhite
core: enable error applet, add stubs for web applet
2024-02-26settings: remove global override for smash on amdvlkLiam
2024-02-24settings: enable error appletLiam
2024-02-18vulkan_device: don't use fixed cap for memory limitsLiam
2024-02-09general: add default configurations for applet modeLiam
2024-01-31settings: Allow audio sink, input, and output to be set per gamet895
2024-01-24Rework time service to fix time passing offline.Kelebek1
2023-12-12settings: Allow vsync to be changed per-gamet895
2023-12-12settings: Allow CPU Debug and Fastmem to be changed per-gamet895
2023-12-08settings: Enable NCE by default on capable systemst895
2023-11-30Merge pull request #12074 from GPUCode/yuwu-on-the-metalliamwhite
Implement Native Code Execution (NCE)
2023-11-29Merge pull request #11946 from flodavid/gamemodeliamwhite
Enable (Feral Interactive) Gamemode on Linux
2023-11-26qt: add cpu_backend configurationamazingfate
2023-11-26Merge pull request #11535 from GPUCode/upload_cmdbufFernando S
renderer_vulkan: Introduce separate cmd buffer for uploads
2023-11-25yuzu: create linux group in general settingsflodavid
- Create files dedicated to starting and stopping gamemode functions - Use them in yuzu and yuzu_cmd modules
2023-11-25yuzu: integrate gamemode support on linuxxcfrg
2023-11-25Address some review commentsGPUCode
2023-11-25arm: Implement native code execution backendLiam
2023-11-25device_memory: Enable direct mapped addresses for nceGPUCode
2023-11-25settings: Add cpu backend settingGPUCode
2023-11-21common: settings: Add ifdefs to define android's default settingst895
2023-11-12renderer_vulkan: Introduce separate cmd buffer for uploadsGPUCode
2023-11-10yuzu: Make mute audio persistentNarr the Reg
2023-10-29Merge pull request #11689 from liamwhite/breakpadliamwhite
qt: implement automatic crash dump support
2023-10-12yuzu: Use new setting method for stop emulationFlorian
2023-10-08qt: implement automatic crash dump supportLiam
2023-09-28Merge pull request #11402 from FernandoS27/depth-bias-controlliamwhite
Vulkan: Implement Depth Bias Control
2023-09-23Query Cachge: Fully rework Vulkan's query cacheFernando Sahmkow
2023-09-16Vulkan: add temporary workaround for AMDVLKFernando Sahmkow
2023-09-14debug: Add renderdoc capture hotkeyGPUCode
2023-08-22settings: Add docked mode helper functionlat9nq
2023-08-22general: Convert use_docked_mode to an enumerationlat9nq
Allows some special interactions with it in the Qt frontend.
2023-08-15settings: Add AspectRatio enum, split res scale functionlat9nq
2023-07-25(ui)settings: Add more runtime_modifiable settingslat9nq
2023-07-24settings: Set GPU as default ASTC decoderlat9nq
2023-07-21common: Move global configuration state modifiers back to settingslat9nq
2023-07-21core,common: Give memory layout setting an enumlat9nq
Allows for 6GB and 8GB layouts to be selected.
2023-07-21settings: Require time zone setting value for stirnglat9nq
2023-07-21settings,configuration: Add a default suffixlat9nq