summaryrefslogtreecommitdiff
path: root/src/yuzu_cmd/config.cpp
AgeCommit message (Collapse)Author
2023-02-04yuzu_cmd: Fix mismatching controller inputgerman77
2023-01-06Merge pull request #9552 from liamwhite/turboliamwhite
vulkan: implement 'turbo mode' clock booster
2023-01-05video_core/vulkan: Added `VkPipelineCache` to store Vulkan pipelinesWollnashorn
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.
2023-01-04common: add setting for renderer clock workaroundLiam
2023-01-04yuzu-ui: Add setting for disabling macro HLEFernando Sahmkow
2022-12-06Merge pull request #9370 from liamwhite/break-unmappedmerry
core: add option to break on unmapped access
2022-12-04cmake: prefer system librariesAlexandre Bouvier
2022-12-02core: add option to break on unmapped accessLiam
2022-11-28Merge pull request #9325 from german77/default_by_defaultliamwhite
yuzu-cmd: Fix default config value
2022-11-27yuzu-cmd: Fix default config valuegerman77
2022-11-24FSR Sharpening Slider part 1 - only a global sliderMatías Locatti
2022-08-25video_core: add option for pessimistic flushingLiam
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda
[REUSE] is a specification that aims at making file copyright information consistent, so that it can be both human and machine readable. It basically requires that all files have a header containing copyright and licensing information. When this isn't possible, like when dealing with binary assets, generated files or embedded third-party dependencies, it is permitted to insert copyright information in the `.reuse/dep5` file. Oh, and it also requires that all the licenses used in the project are present in the `LICENSES` folder, that's why the diff is so huge. This can be done automatically with `reuse download --all`. The `reuse` tool also contains a handy subcommand that analyzes the project and tells whether or not the project is (still) compliant, `reuse lint`. Following REUSE has a few advantages over the current approach: - Copyright information is easy to access for users / downstream - Files like `dist/license.md` do not need to exist anymore, as `.reuse/dep5` is used instead - `reuse lint` makes it easy to ensure that copyright information of files like binary assets / images is always accurate and up to date To add copyright information of files that didn't have it I looked up who committed what and when, for each file. As yuzu contributors do not have to sign a CLA or similar I couldn't assume that copyright ownership was of the "yuzu Emulator Project", so I used the name and/or email of the commit author instead. [REUSE]: https://reuse.software Follow-up to 01cf05bc75b1e47beb08937439f3ed9339e7b254
2022-07-22Project AndioKelebek1
2022-07-16yuzu: settings: Remove framerate cap and merge unlocked framerate setting.bunnei
- These were all somewhat redundant.
2022-07-15common/setting: Make ranged a property of the typemerry
- 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
2022-06-30settings: Consolidate RangedSetting's with regular oneslat9nq
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.
2022-06-10core/debugger: support operation in yuzu-cmdLiam
2022-03-21Merge pull request #8048 from ameerj/include-purgebunnei
general: Reduce unused includes across the project
2022-03-20yuzu_cmd: Reduce unused includesameerj
2022-03-15yuzu_cmd: Allow user to specify config file locationlat9nq
Adds an option `-c` or `--config` with one required argument that allows the user to specify to where the config file is located. Useful for scripts that run specific games with different preferences for settings.
2022-02-27dynarmic: Inline exclusive memory accessesmerry
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
2022-02-21settings: Add a new "use_extended_memory_layout" setting.bunnei
- This will be used to enable emulation of a larger memory arrangement.
2022-02-05config: Support motion inputslat9nq
Motion inputs were not being read in by the config when yuzu-cmd boots up. This adds support for those. While we're at it, make a reference to the current player controls to improve readability. Also updates the if statements in the Analog and Button loops with curly braces to keep the style consistent.
2021-11-24core/hid: Fully implement native mousegerman77
2021-11-24config: Cleanup and documentationgerman77
2021-11-24core: Update input interpretergerman77
2021-11-16Frontend: Add anti-aliasing method settingMarshall Mohror
2021-11-16yuzu_cmd: Read resolution_setup and scaling_filter from configlat9nq
Also adds descriptions and the settings to the default config.
2021-10-17settings: Remove std::chrono usageameerj
Alleviates the dependency on chrono for all files that include settings.h
2021-10-15config: Read network_interfacelat9nq
Let's yuzu_cmd use a network interface. Also adds it to the default ini.
2021-09-29settings: Remove BCAT settingsMorph
2021-09-15remove-audio-stretching-settingMoonlacer
2021-09-11Merge pull request #6846 from ameerj/nvdec-gpu-decodeFernando S
nvdec: Add GPU video decoding for all capable drivers and platforms
2021-08-28Garbage Collection: enable as default, eliminate option.Fernando Sahmkow
2021-08-16configure_graphics: Add GPU nvdec decoding as an optionameerj
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>
2021-08-04config: Read connected setting for controllerslat9nq
Currently yuzu will read the mapping but does not connect a controller despite adding subsequent configurations for it. Read the `connected` setting for now as a boolean like the Qt frontend.
2021-07-27renderer_vulkan: Add setting to log pipeline statisticsReinUsesLisp
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.
2021-07-26Merge pull request #6696 from ameerj/speed-limit-renamebunnei
general: Rename "Frame Limit" references to "Speed Limit"
2021-07-25Merge pull request #6697 from ameerj/fps-capbunnei
config, nvflinger: Add FPS cap setting
2021-07-23general: Rename "Frame Limit" references to "Speed Limit"ameerj
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.
2021-07-23config, nvflinger: Add FPS cap settingameerj
Allows finer tuning of the FPS limit.
2021-07-22general: Add setting shader_backendlat9nq
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.
2021-07-22shader: Add shader loop safety check settingslat9nq
Also add a setting for enable Nsight Aftermath.
2021-07-21yuzu_cmd: Make use of fullscreen_mode settinglat9nq
Reverts 48259de0c1a6a1aca77eec31cb8aca5ca2b680dd to the previous hierarchy and fixes the resolution issue with this fullscreen mode. yuzu-cmd will now read the fullscreen_mode setting and use it appropriately.
2021-07-16yuzu_cmd: Add missing or update current settingslat9nq
Many settings in common/settings.h are missing from yuzu-cmd, either they were added to default_ini.h but not read in, or vice versa, or the setting was altogether omitted from yuzu-cmd. Some defaults were reported wrong, so those were fixed where noticed.
2021-07-08config: Remove float {Read,Write}Setting variantsameerj
2021-06-30yuzu_cmd: config: Pass a reference inlat9nq
Also adds documentation for the ReadSetting function. Address review comments. Co-authored-by: Mai M. <mathew1800@gmail.com>
2021-06-28general: Make most settings a BasicSettinglat9nq
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.
2021-06-17nvflinger: Add toggle to disable buffer swap interval limitsameerj
Enabling this setting will allow some titles to present more frames to the screen as they become available in the nvflinger buffer queue.