summaryrefslogtreecommitdiffstats
path: root/src/common/settings.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* settings: Amend language_index maximum setting rangeMorph2021-08-211-1/+1
| | | | The maximum is now 17 with the addition of Brazilian Portuguese
* Merge branch 'yuzu-emu:master' into fix-lan-playspholz2021-08-121-28/+153
|\
| * settings: Fix MSVC issueslat9nq2021-08-111-7/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to https://stackoverflow.com/questions/469508, we run into a MSVC bug (since VS 2005) when using diamond inheritance for RangedSetting. This explicitly implements those functions in RangedSetting. GetValue is implemented as just calling the inherited version. The explicit converson operator is reimplemented. I opted for this over ignoring the warning with a pragma since this specifies the inherited behavior, and I have now less faith in MSVC to pick the right one. In addition, we mark destructors as virtual to silence what I believe is a fair MSVC compilation error.
| * Merge pull request #6776 from lat9nq/ranged-settingsbunnei2021-08-111-26/+136
| |\ | | | | | | settings: Implement settings ranges
| | * settings: Use std::clamp where possiblelat9nq2021-07-311-39/+9
| | | | | | | | | | | | | | | | | | Addresses PR review Co-authored-by: PixelyIon <pixelyion@protonmail.com>
| | * settings: Remove unnecessary std::move usageslat9nq2021-07-311-12/+12
| | | | | | | | | | | | | | | | | | Addresses review feedback. Co-authored-by: Mai M. <mathew1800@gmail.com>
| | * settings: Fix function virtualizationlat9nq2021-07-301-12/+18
| | | | | | | | | | | | | | | | | | | | | Fixes a theoretical scenario where a Setting is using the BasicSetting's GetValue function. In practice this probably only happens on yuzu-cmd, where there is no need for a Setting's additional features. Need to fix regardless.
| | * settings: Implement setting rangeslat9nq2021-07-301-18/+152
| | | | | | | | | | | | | | | Clamps the setting's values against the specified minimum and maximum values.
* | | configuration: add option to select network interfacespholz2021-08-121-1/+2
|/ / | | | | | | This commit renames the "Services" tab to "Network" and adds a combobox that allows the user to select the network interface that yuzu should use. This new setting is now used to get the local IP address in Network::GetHostIPv4Address. This prevents yuzu from selecting the wrong network interface and thus using the wrong IP address. The return type of Network::GetHostIPv4Adress has also been changed.
* | Merge pull request #6759 from ReinUsesLisp/pipeline-statisticsbunnei2021-07-301-0/+1
|\ \ | |/ |/| renderer_vulkan: Add setting to log pipeline statistics
| * renderer_vulkan: Add setting to log pipeline statisticsReinUsesLisp2021-07-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use VK_KHR_pipeline_executable_properties when enabled and available to log statistics about the pipeline cache in a game. For example, this is on Turing GPUs when generating a pipeline cache from Super Smash Bros. Ultimate: Average pipeline statistics ========================================== Code size: 6433.167 Register count: 32.939 More advanced results could be presented, at the moment it's just an average of all 3D and compute pipelines.
* | Merge pull request #6700 from lat9nq/fullscreen-enumbunnei2021-07-281-3/+8
|\ \ | |/ |/| general: Implement FullscreenMode enumeration
| * Merge branch 'master' into fullscreen-enumlat9nq2021-07-251-1/+10
| |\
| * | general: Implement FullscreenMode enumerationlat9nq2021-07-231-3/+8
| | | | | | | | | | | | | | | Prevents us from using an unclear 0 or 1 to describe the fullscreen mode.
* | | Merge pull request #6696 from ameerj/speed-limit-renamebunnei2021-07-271-2/+2
|\ \ \ | | | | | | | | general: Rename "Frame Limit" references to "Speed Limit"
| * | | general: Rename "Frame Limit" references to "Speed Limit"ameerj2021-07-241-2/+2
| |/ / | | | | | | | | | | | | This setting is best referred to as a speed limit, as it involves the limits of all timing based aspects of the emulator, not only framerate. This allows us to differentiate it from the fps unlocker setting.
* | | Merge pull request #6697 from ameerj/fps-capbunnei2021-07-261-0/+1
|\ \ \ | |_|/ |/| | config, nvflinger: Add FPS cap setting
| * | config, nvflinger: Add FPS cap settingameerj2021-07-241-0/+1
| |/ | | | | | | Allows finer tuning of the FPS limit.
* | general: Add setting shader_backendlat9nq2021-07-231-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLASM is getting good enough that we can move it out of advanced graphics settings. This removes the setting `use_assembly_shaders`, opting for a enum class `shader_backend`. This comes with the benefits that it is extensible for additional shader backends besides GLSL and GLASM, and this will work better with a QComboBox. Qt removes the related assembly shader setting from the Advanced Graphics section and places it as a new QComboBox in the API Settings group. This will replace the Vulkan device selector when OpenGL is selected. Additionally, mark all of the custom anisotropic filtering settings as "WILL BREAK THINGS", as that is the case with a select few games.
* | shader: Add shader loop safety check settingslat9nq2021-07-231-0/+3
|/ | | | Also add a setting for enable Nsight Aftermath.
* input_common: Fix mouse panning behaivourgerman772021-07-171-1/+1
|
* Merge pull request #6579 from ameerj/float-settingsbunnei2021-07-161-5/+5
|\ | | | | settings: Eliminate usage of float-point setting values
| * configure_input: Use u8 for mouse sensitivityameerj2021-07-091-1/+1
| |
| * configure_graphics: Use u8 for bg_color valuesameerj2021-07-091-3/+3
| |
| * configure_audio: Use u8 for volume valueameerj2021-07-091-1/+1
| |
* | Merge pull request #6576 from ameerj/unlock-fps-settingMorph2021-07-111-1/+1
|\ \ | | | | | | settings: Disable FPS unlimit setting between title launches
| * | settings: Disable FPS unlimit setting between title launchesameerj2021-07-101-1/+1
| |/ | | | | | | | | | | Some titles crash if the FPS limit is disabled when launching. This change ensures that titles launch with the limit in-place to avoid issues. In order to simplify the change, the UI toggle was removed as it will always be overridden at launch to be disabled. The setting can still be toggled during gameplay with the hotkey, and indicated by the fps label in the status bar.
* | settings, arm_dynarmic, yuzu qt: Move CPU debugging optionlat9nq2021-07-081-1/+1
| | | | | | | | | | | | Decouples the CPU debugging mode from the enumeration to its own boolean. After this, it moves the CPU Debugging tab over to a sub tab underneath the Debug tab in the configuration UI.
* | settings, yuzu qt: Add migration code for CPU accuracylat9nq2021-07-081-0/+2
| | | | | | | | | | | | Old CPU Accuracy setting won't translate well into since we're adding one at the beginning of the list. On first boot with the new setting, just use the default setting.
* | core,common,yuzu qt: Add CPU accuracy option 'Auto'lat9nq2021-07-081-4/+5
|/ | | | | | | The current CPU accuracy settings in yuzu are fairly polarized and require more than common knowledge to know what the optimal settings for yuzu would be. This adds a curated option called 'Auto' that applies a few at the moment known-good unsafe optimizations to Dynarmic.
* general: Code formatting improvementslat9nq2021-07-081-2/+1
| | | | | | | | | | | | Slight improvements to readability. Dropped suggestions for string_view (settings.h:101), pass by value (settings.h:82), reverting double to a float (config.cpp:316), and other smaller ones, some out of scope. Addresses review feedback. Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com>
* settings: Set resolution_factor default to 1lat9nq2021-07-011-1/+1
| | | | Fixes Disgaea 6 Demo issues.
* general: Make most settings a BasicSettinglat9nq2021-06-281-119/+287
| | | | | | | | | | | Creates a new BasicSettings class in common/settings, and forces setting a default and label for each setting that uses it in common/settings. Moves defaults and labels from both frontends into common settings. Creates a helper function in each frontend to facillitate reading the settings now with the new default and label properties. Settings::Setting is also now a subclass of Settings::BasicSetting. Also adds documentation for both Setting and BasicSetting.
* common: Force defaults for Settings::Setting'slat9nq2021-06-261-44/+57
| | | | Requires a default value when creating each per-game setting.
* Merge pull request #6465 from FernandoS27/sex-on-the-beachMai M2021-06-231-0/+1
|\ | | | | GPU: Implement a garbage collector for GPU Caches (project Reaper+)
| * Reaper: Setup settings and final tuning.Fernando Sahmkow2021-06-161-0/+1
| |
* | Merge pull request #6499 from FernandoS27/we-were-on-a-breakbunnei2021-06-211-0/+1
|\ \ | | | | | | Update dynarmic and add new unsafe CPU option.
| * | Update dynarmic and add new unsafe CPU option.Fernando Sahmkow2021-06-201-0/+1
| |/
* / nvflinger: Add toggle to disable buffer swap interval limitsameerj2021-06-171-0/+1
|/ | | | | Enabling this setting will allow some titles to present more frames to the screen as they become available in the nvflinger buffer queue.
* Merge pull request #6464 from ameerj/disable-astcbunnei2021-06-161-0/+1
|\ | | | | textures: Add a toggle for GPU Accelerated ASTC decoder
| * configure_graphics: Add Accelerate ASTC decoding settingameerj2021-06-161-0/+1
| |
* | fsp_srv: Fix filesystem access loggingMorph2021-06-161-0/+1
|/ | | | | | | | This introduces a new setting Enable FS Access Log which saves the filesystem access log to sdmc:/FsAccessLog.txt If this setting is not enabled, this will indicate to FS to not call OutputAccessLogToSdCard. Fixes softlocks during loading in Xenoblade Chronicles 2 when certain DLC is enabled.
* General: Add settings for fastmem and disabling adress space check.FernandoS272021-06-111-0/+4
|
* general: Demote custom_rtc to regular settinglat9nq2021-05-171-1/+1
|
* general: Make CPU accuracy and related a Settings::Settinglat9nq2021-05-161-4/+4
| | | | | Required to make CPU accuracy and unsafe settings available to use as a per-game setting.
* common: Move settings to common from core.bunnei2021-04-151-0/+261
- Removes a dependency on core and input_common from common.