summaryrefslogtreecommitdiffstats
path: root/src/common/settings.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #9906 from german77/metroid2bunnei2023-03-081-1/+1
|\ | | | | input_common: Increase mouse sensitivity range
| * input_common: Increase mouse sensitivity rangegerman772023-03-081-1/+1
| |
* | fix typo in settings.hIkko Eltociear Ashimine2023-03-061-4/+4
|/ | | Intial -> Initial
* Revert "yuzu: config: Remove player 8 and 9 from config file"Narr the Reg2023-02-261-1/+1
|
* Merge pull request #9849 from ameerj/async-astcliamwhite2023-02-261-0/+1
|\ | | | | texture_cache: Add asynchronous ASTC texture decoding
| * configuration: Add async ASTC decode settingameerj2023-02-231-0/+1
| |
* | yuzu: config: Remove player 8 and 9 from config fileNarr the Reg2023-02-261-1/+1
|/
* input_common: Reintroduce custom pro controller supportNarr the Reg2023-02-101-0/+1
|
* Move to Clang Format 15Levi Behunin2023-01-301-4/+8
| | | | | | Depends on https://github.com/yuzu-emu/build-environments/pull/69 clang-15 primary run
* input_common: Disable SDL driver with switch controllersNarr the Reg2023-01-201-0/+1
|
* Update settings.hMatías Locatti2023-01-131-0/+2
|
* 1.5X resolution scaler optionMatías Locatti2023-01-131-5/+6
|
* renderer_vulkan: disable turbo by defaultLiam2023-01-081-1/+1
|
* Merge pull request #9552 from liamwhite/turboliamwhite2023-01-061-0/+1
|\ | | | | vulkan: implement 'turbo mode' clock booster
| * common: add setting for renderer clock workaroundLiam2023-01-051-0/+1
| |
* | config: Better wording for VK pipeline cache option and enable by defaultWollnashorn2023-01-051-1/+1
| |
* | video_core/vulkan: Added `VkPipelineCache` to store Vulkan pipelinesWollnashorn2023-01-051-0/+2
|/ | | | | | As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk. These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically.
* yuzu-ui: Add setting for disabling macro HLEFernando Sahmkow2023-01-041-0/+1
|
* Set: Allow setting device nicknameChloe Marcec2022-12-141-0/+1
|
* video_core: Integrate SMAALiam2022-12-081-1/+2
| | | | | Co-authored-by: goldenx86 <goldenx86@users.noreply.github.com> Co-authored-by: BreadFish64 <breadfish64@users.noreply.github.com>
* Merge pull request #9370 from liamwhite/break-unmappedmerry2022-12-061-0/+1
|\ | | | | core: add option to break on unmapped access
| * core: add option to break on unmapped accessLiam2022-12-021-0/+1
| |
* | video_core: add null backendLiam2022-11-291-1/+2
|/
* Merge pull request #9276 from goldenx86/fsrSliderbunnei2022-11-271-0/+1
|\ | | | | FSR Sharpening Slider
| * FSR Sharpening Slider part 1 - only a global sliderMatías Locatti2022-11-241-0/+1
| |
* | OopsMatías Locatti2022-11-261-1/+1
| |
* | Replace GLSL as the default OpenGL shader backendMatías Locatti2022-11-261-1/+1
|/ | | GLASM is not very compatible with the latest games, and too many people have the special superpower to break their Vulkan support.
* settings: Update aspect_ratio rangeMorph2022-10-131-1/+1
| | | | Since 16:10 was added, the maximum value is now 4.
* yuzu qt: Add option to disable startup Vulkan checklat9nq2022-09-191-0/+1
| | | | | | | The startup check apparently confuses other programs when yuzu launches 2 processes and then quickly closes one of them. Though this isn't really our issues it's also not a big deal for me to add an option to work around that issue.
* Merge pull request #8682 from lat9nq/dumpyMorph2022-09-161-0/+1
|\ | | | | yuzu qt: Add option to create Windows crash dumps
| * yuzu: Use a debugger to generate minidumpslat9nq2022-09-051-0/+1
| | | | | | | | | | | | yuzu: Move mini_dump out of core startup_checks: Better exception handling
* | video_core: add option for pessimistic flushingLiam2022-08-251-0/+1
|/
* Allow audio volume up to 200%Kelebek12022-08-121-1/+1
|
* yuzu: Add webcam support and rebase to latest masterNarr the Reg2022-07-241-2/+2
|
* input_common: Add camera drivergerman772022-07-241-0/+3
|
* Project AndioKelebek12022-07-221-1/+3
|
* yuzu: settings: Remove framerate cap and merge unlocked framerate setting.bunnei2022-07-171-2/+0
| | | | - These were all somewhat redundant.
* common/setting: Make ranged a property of the typemerry2022-07-151-34/+33
| | | | | - Avoids new GCC 12 warnings when Type is of form std::optional<T> - Makes more sense this way, because ranged is not a property which would change over time
* settings: Consolidate RangedSetting's with regular oneslat9nq2022-06-301-270/+182
| | | | | | | | | | | | The latest git version of GCC has issues with my diamond inheritance shenanigans. Since that's now two compilers that don't like it I thought it'd be best to just axe all of it and just have the two templates like before. This rolls the features of BasicRangedSetting into BasicSetting, and likewise RangedSetting into Setting. It also renames them from BasicSetting and Setting to Setting and SwitchableSetting respectively. Now longer name corresponds to more complex thing.
* Merge pull request #8393 from lat9nq/default-vulkanbunnei2022-06-111-1/+1
|\ | | | | general: Set renderer_backend's default to Vulkan
| * settings: Set Vulkan to the default renderer backendlat9nq2022-05-301-1/+1
| |
* | core/debugger: Implement new GDB stub debuggerLiam2022-06-011-1/+1
|/
* VideoCore: Add option to dump the macros.Fernando Sahmkow2022-05-091-0/+1
| | | | Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* yuzu: Add custom ringcon configurationgerman772022-04-161-0/+3
|
* configuration: Add Paranoid CPU accuracy levelmerry2022-03-261-1/+2
| | | | Disables most optimizations for the paranoid.
* dynarmic: Inline exclusive memory accessesmerry2022-02-271-0/+3
| | | | | | | | | | | | | | | Inlines implementation of exclusive instructions into JITted code, improving performance of applications relying heavily on these instructions. We also fastmem these instructions for additional speed, with support for appropriate recompilation on fastmem failure. An unsafe optimization to disable the intercore global_monitor is also provided, should one wish to rely solely on cmpxchg semantics for safety. See also: merryhime/dynarmic#664
* settings: Add a new "use_extended_memory_layout" setting.bunnei2022-02-211-0/+1
| | | | - This will be used to enable emulation of a larger memory arrangement.
* yuzu: Add setting to disable controller navigationgerman772022-01-241-0/+1
|
* ShaderDecompiler: Add a debug option to dump the game's shaders.Fernando Sahmkow2022-01-041-0/+1
|
* settings: Add debug setting to enable all controllersgerman772021-11-281-0/+1
|
* input_common: Fully implement UDP controllersNarr the Reg2021-11-261-0/+1
|
* core/hid: Fully implement native mousegerman772021-11-251-1/+0
|
* input_common: Allow keyboard to be backwards compatiblegerman772021-11-251-2/+0
|
* config: Cleanup and documentationgerman772021-11-251-3/+0
|
* kraken: Address comments from reviewgerman772021-11-251-1/+0
| | | | start lion review
* core/hid: Add TAS inputgerman772021-11-251-1/+0
|
* settings: Cleanup settingsgerman772021-11-251-3/+0
|
* configure_general: Allow framerate cap to be used in custom game configsKewlan2021-11-211-1/+1
|
* TextureCache: Add automatic anisotropic filtering and refactor code.Fernando Sahmkow2021-11-161-1/+1
|
* Yuzu UI: Add button for Anti AliasFernando Sahmkow2021-11-161-0/+1
|
* Settings: Add anti-aliasing method settingMarshall Mohror2021-11-161-0/+6
|
* QtGUI: Add buttton to toggle the filter.FernandoS272021-11-161-0/+1
|
* VideoCore: Add gaussian filtering.FernandoS272021-11-161-2/+3
|
* VideoCore: Add more rescaling option.FernandoS272021-11-161-4/+7
|
* Presentation: add Nearest Neighbor filter.Fernando Sahmkow2021-11-161-4/+5
|
* vulkan: Implement FidelityFX Super ResolutionMarshall Mohror2021-11-161-0/+1
|
* Texture Cahe: Fix downscaling on SMO.Fernando Sahmkow2021-11-161-0/+1
|
* video_core: Refactor resolution scale functionameerj2021-11-161-0/+14
|
* Renderer: Implement Bicubic and ScaleForce filters.Fernando Sahmkow2021-11-161-6/+11
|
* common/settings: Remove unused scaling optionsReinUsesLisp2021-11-161-2/+0
|
* Settings: eliminate rescaling_factor.Fernando Sahmkow2021-11-161-1/+1
|
* Settings: Add resolution scaling to settings.Fernando Sahmkow2021-11-161-4/+9
|
* VideoCore: Initial Setup for the Resolution Scaler.Fernando Sahmkow2021-11-161-0/+18
|
* settings: Remove std::chrono usageameerj2021-10-171-3/+2
| | | | Alleviates the dependency on chrono for all files that include settings.h
* settings: Remove BCAT settingsMorph2021-09-291-2/+0
|
* input_common/tas: Document the main classgerman772021-09-181-7/+4
|
* input_common/tas: Fallback to simple updateMonsterDruide12021-09-181-4/+3
|
* core: Hacky TAS syncing & load pausingMonsterDruide12021-09-181-5/+4
| | | | | | | | To keep the TAS inputs synced to the game speed even through lag spikes and loading zones, deeper access is required. First, the `TAS::UpdateThread` has to be executed exactly once per frame. This is done by connecting it to the service method the game calls to pass parameters to the GPU: `Service::VI::QueueBuffer`. Second, the loading time of new subareas and/or kingdoms (SMO) can vary. To counteract that, the `CPU_BOOST_MODE` can be detected: In the `APM`-interface, the call to enabling/disabling the boost mode can be caught and forwarded to the TASing system, which can pause the script execution if neccessary and enabled in the settings.
* settings: File selector & other settingsMonsterDruide12021-09-181-0/+3
| | | | | | First of all, TASing requires a script to play back. The user can select the parent directory at `System -> Filesystem`, next to an option to pause TAS during loads: This requires a "hacky" setup deeper in the code and will be added in the last commit. Also, Hotkeys are being introduced: CTRL+F5 for playback start/stop, CTRL+F6 for re-reading the script and CTRL+F7 for recording a new script.
* input_common/tas: Base playback & recording systemMonsterDruide12021-09-181-0/+7
| | | | | | | | | The base playback system supports up to 8 controllers (specified by `PLAYER_NUMBER` in `tas_input.h`), which all change their inputs simulataneously when `TAS::UpdateThread` is called. The recording system uses the controller debugger to read the state of the first controller and forwards that data to the TASing system for recording. Currently, this process sadly is not frame-perfect and pixel-accurate. Co-authored-by: Naii-the-Baf <sfabian200@gmail.com> Co-authored-by: Narr-the-Reg <juangerman-13@hotmail.com>
* Merge pull request #7020 from Moonlacer/remove_audio_stretchingbunnei2021-09-181-1/+0
|\ | | | | Remove audio stretching
| * remove-audio-stretching-settingMoonlacer2021-09-161-1/+0
| |
* | Merge pull request #6950 from german77/multiplaybunnei2021-09-181-3/+3
|\ \ | |/ |/| input_common: Add advanced setting for 8 player support
| * input_common: Enable steam controllers and 8 player supportgerman772021-09-101-3/+3
| |
* | Merge pull request #6846 from ameerj/nvdec-gpu-decodeFernando S2021-09-111-1/+7
|\ \ | |/ |/| nvdec: Add GPU video decoding for all capable drivers and platforms
| * configure_graphics: Add GPU nvdec decoding as an optionameerj2021-08-161-1/+7
| | | | | | | | | | | | Some system configurations may see visual regressions or lower performance using GPU decoding compared to CPU decoding. This setting provides the option for users to specify their decoding preference. Co-Authored-By: yzct12345 <87620833+yzct12345@users.noreply.github.com>
* | Garbage Collection: enable as default, eliminate option.Fernando Sahmkow2021-08-281-1/+0
| |
* | 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.