summaryrefslogtreecommitdiff
path: root/src/common
AgeCommit message (Collapse)Author
2021-07-30Merge pull request #6759 from ReinUsesLisp/pipeline-statisticsbunnei
renderer_vulkan: Add setting to log pipeline statistics
2021-07-29Merge pull request #6742 from Morph1984/uuidbunnei
common: uuid: Return a lower-case hex string in Format
2021-07-28Merge pull request #6758 from jbeich/fastmembunnei
host_memory: enable fastmem on FreeBSD
2021-07-28Merge pull request #6700 from lat9nq/fullscreen-enumbunnei
general: Implement FullscreenMode enumeration
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-27host_memory: Add workaround for FreeBSD 12Jan Beich
src/common/host_memory.cpp:360:14: error: use of undeclared identifier 'memfd_create' fd = memfd_create("HostMemory", 0); ^
2021-07-27host_memory: Enable Linux implementation on FreeBSDJan Beich
HW.Memory <Critical> common/host_memory.cpp:HostMemory:492: Fastmem unavailable, falling back to VirtualBuffer for memory allocation
2021-07-27common: fs: fs_util: Add BufferToUTF8StringMorph
Allows for direct conversion to std::string without having to convert std::u8string to std::string
2021-07-26common: uuid: Return a lower-case hex string in FormatMorph
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-25Merge branch 'master' into fullscreen-enumlat9nq
2021-07-25Merge pull request #6585 from ameerj/hadesbunnei
Shader Decompiler Rewrite
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-23general: Implement FullscreenMode enumerationlat9nq
Prevents us from using an unclear 0 or 1 to describe the fullscreen mode.
2021-07-23common: Publically link to pthreadslat9nq
Common requires pthreads but does not refer to it when linking to other modules. Fix this by linking to Threads where necessary.
2021-07-22cmake: Remove shader cache versionReinUsesLisp
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 loggingReinUsesLisp
2021-07-22shader: Add shader loop safety check settingslat9nq
Also add a setting for enable Nsight Aftermath.
2021-07-22shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq
Mostly fixing unused *, implicit conversion, braced scalar init, fpermissive, and some others. Some Clang errors likely remain in video_core, and std::ranges is still a pertinent issue in shader_recompiler shader_recompiler: cmake: Force bracket depth to 1024 on Clang Increases the maximum fold expression depth thread_worker: Include condition_variable Don't use list initializers in control flow Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc>
2021-07-22shader: Remove old shader managementReinUsesLisp
2021-07-22thread_worker: Fix compile time errorameerj
state is unused in the branch where with_state is false
2021-07-21uuid: Directly compare UUID instead of checking per elementChloe Marcec
We can now update this for C++20
2021-07-16input_common: Fix mouse panning behaivourgerman77
2021-07-15Merge pull request #6579 from ameerj/float-settingsbunnei
settings: Eliminate usage of float-point setting values
2021-07-11Merge pull request #6576 from ameerj/unlock-fps-settingMorph
settings: Disable FPS unlimit setting between title launches
2021-07-10settings: Disable FPS unlimit setting between title launchesameerj
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.
2021-07-09Merge pull request #6573 from lat9nq/cpu-settings-cleanup-2Fernando S
core,common,yuzu qt: Add CPU accuracy option 'Auto'
2021-07-08configure_input: Use u8 for mouse sensitivityameerj
2021-07-08configure_graphics: Use u8 for bg_color valuesameerj
2021-07-08configure_audio: Use u8 for volume valueameerj
2021-07-08common/thread_worker: Stop workers on stop_token when waitingReinUsesLisp
2021-07-08common/thread_worker: Add support for stateful threadsReinUsesLisp
2021-07-08common/thread_worker: Simplify logicFernandoS27
2021-07-08common/thread_worker: Fix data raceFernandoS27
2021-07-08common/thread_worker: Use unique functionReinUsesLisp
2021-07-08common: Add unique functionReinUsesLisp
2021-07-08common/thread_worker: Add wait for requests methodReinUsesLisp
2021-07-08settings, arm_dynarmic, yuzu qt: Move CPU debugging optionlat9nq
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.
2021-07-08settings, yuzu qt: Add migration code for CPU accuracylat9nq
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.
2021-07-08core,common,yuzu qt: Add CPU accuracy option 'Auto'lat9nq
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.
2021-07-08Merge pull request #6539 from lat9nq/default-settingAmeer J
general: Move most settings' defaults and labels into their definition
2021-07-08general: Code formatting improvementslat9nq
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>
2021-07-06common: logging: backend: Close the file after exceeding the write limitMorph
There's no point in keeping the file open after the write limit is exceeded. This allows the file to be committed to the disk shortly after it is closed and avoids redundantly checking whether or not the write limit is exceeded.
2021-07-06common: fs: file: Revert Flush to its previous behavior and add CommitMorph
It became apparent that logging can continuously spam errors that trigger file flushing. Since committing the files to disk is an expensive operation, this causes unnecessarily high disk usage. As such, we will revert Flush() to the previous behavior and add a Commit() member function in the event that this behavior is needed.
2021-07-06common: fs: file: Flush the file in GetSizeMorph
This ensures that GetSize always retrieves the correct file size after a write operation.
2021-07-01settings: Set resolution_factor default to 1lat9nq
Fixes Disgaea 6 Demo issues.
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.