summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/settings.cpp7
-rw-r--r--src/common/settings.h87
2 files changed, 54 insertions, 40 deletions
diff --git a/src/common/settings.cpp b/src/common/settings.cpp
index 59934803e..38a82f6f7 100644
--- a/src/common/settings.cpp
+++ b/src/common/settings.cpp
@@ -151,14 +151,19 @@ const char* TranslateCategory(Category category) {
151 case Category::Core: 151 case Category::Core:
152 return "Core"; 152 return "Core";
153 case Category::Cpu: 153 case Category::Cpu:
154 case Category::CpuDebug:
155 case Category::CpuUnsafe:
154 return "Cpu"; 156 return "Cpu";
155 case Category::Renderer: 157 case Category::Renderer:
158 case Category::RendererAdvanced:
159 case Category::RendererDebug:
156 return "Renderer"; 160 return "Renderer";
157 case Category::System: 161 case Category::System:
158 return "System"; 162 return "System";
159 case Category::DataStorage: 163 case Category::DataStorage:
160 return "Data Storage"; 164 return "Data Storage";
161 case Category::Debugging: 165 case Category::Debugging:
166 case Category::DebuggingGraphics:
162 return "Debugging"; 167 return "Debugging";
163 case Category::Miscellaneous: 168 case Category::Miscellaneous:
164 return "Miscellaneous"; 169 return "Miscellaneous";
@@ -188,8 +193,6 @@ const char* TranslateCategory(Category category) {
188 return "Paths"; 193 return "Paths";
189 case Category::MaxEnum: 194 case Category::MaxEnum:
190 break; 195 break;
191 case Category::AdvancedGraphics:
192 return "Renderer";
193 } 196 }
194 return "Miscellaneous"; 197 return "Miscellaneous";
195} 198}
diff --git a/src/common/settings.h b/src/common/settings.h
index 48f86d0aa..70ab8d584 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -120,11 +120,15 @@ enum class Category : u32 {
120 Audio, 120 Audio,
121 Core, 121 Core,
122 Cpu, 122 Cpu,
123 CpuDebug,
124 CpuUnsafe,
123 Renderer, 125 Renderer,
124 AdvancedGraphics, 126 RendererAdvanced,
127 RendererDebug,
125 System, 128 System,
126 DataStorage, 129 DataStorage,
127 Debugging, 130 Debugging,
131 DebuggingGraphics,
128 Miscellaneous, 132 Miscellaneous,
129 Network, 133 Network,
130 WebService, 134 WebService,
@@ -624,53 +628,56 @@ struct Values {
624 "cpu_accuracy", Category::Cpu}; 628 "cpu_accuracy", Category::Cpu};
625 // TODO: remove cpu_accuracy_first_time, migration setting added 8 July 2021 629 // TODO: remove cpu_accuracy_first_time, migration setting added 8 July 2021
626 Setting<bool> cpu_accuracy_first_time{linkage, true, "cpu_accuracy_first_time", Category::Cpu}; 630 Setting<bool> cpu_accuracy_first_time{linkage, true, "cpu_accuracy_first_time", Category::Cpu};
627 Setting<bool> cpu_debug_mode{linkage, false, "cpu_debug_mode", Category::Cpu}; 631 Setting<bool> cpu_debug_mode{linkage, false, "cpu_debug_mode", Category::CpuDebug};
628 632
629 Setting<bool> cpuopt_page_tables{linkage, true, "cpuopt_page_tables", Category::Cpu}; 633 Setting<bool> cpuopt_page_tables{linkage, true, "cpuopt_page_tables", Category::CpuDebug};
630 Setting<bool> cpuopt_block_linking{linkage, true, "cpuopt_block_linking", Category::Cpu}; 634 Setting<bool> cpuopt_block_linking{linkage, true, "cpuopt_block_linking", Category::CpuDebug};
631 Setting<bool> cpuopt_return_stack_buffer{linkage, true, "cpuopt_return_stack_buffer", 635 Setting<bool> cpuopt_return_stack_buffer{linkage, true, "cpuopt_return_stack_buffer",
632 Category::Cpu}; 636 Category::CpuDebug};
633 Setting<bool> cpuopt_fast_dispatcher{linkage, true, "cpuopt_fast_dispatcher", Category::Cpu}; 637 Setting<bool> cpuopt_fast_dispatcher{linkage, true, "cpuopt_fast_dispatcher",
638 Category::CpuDebug};
634 Setting<bool> cpuopt_context_elimination{linkage, true, "cpuopt_context_elimination", 639 Setting<bool> cpuopt_context_elimination{linkage, true, "cpuopt_context_elimination",
635 Category::Cpu}; 640 Category::CpuDebug};
636 Setting<bool> cpuopt_const_prop{linkage, true, "cpuopt_const_prop", Category::Cpu}; 641 Setting<bool> cpuopt_const_prop{linkage, true, "cpuopt_const_prop", Category::CpuDebug};
637 Setting<bool> cpuopt_misc_ir{linkage, true, "cpuopt_misc_ir", Category::Cpu}; 642 Setting<bool> cpuopt_misc_ir{linkage, true, "cpuopt_misc_ir", Category::CpuDebug};
638 Setting<bool> cpuopt_reduce_misalign_checks{linkage, true, "cpuopt_reduce_misalign_checks", 643 Setting<bool> cpuopt_reduce_misalign_checks{linkage, true, "cpuopt_reduce_misalign_checks",
639 Category::Cpu}; 644 Category::CpuDebug};
640 Setting<bool> cpuopt_fastmem{linkage, true, "cpuopt_fastmem", Category::Cpu}; 645 Setting<bool> cpuopt_fastmem{linkage, true, "cpuopt_fastmem", Category::CpuDebug};
641 Setting<bool> cpuopt_fastmem_exclusives{linkage, true, "cpuopt_fastmem_exclusives", 646 Setting<bool> cpuopt_fastmem_exclusives{linkage, true, "cpuopt_fastmem_exclusives",
642 Category::Cpu}; 647 Category::CpuDebug};
643 Setting<bool> cpuopt_recompile_exclusives{linkage, true, "cpuopt_recompile_exclusives", 648 Setting<bool> cpuopt_recompile_exclusives{linkage, true, "cpuopt_recompile_exclusives",
644 Category::Cpu}; 649 Category::CpuDebug};
645 Setting<bool> cpuopt_ignore_memory_aborts{linkage, true, "cpuopt_ignore_memory_aborts", 650 Setting<bool> cpuopt_ignore_memory_aborts{linkage, true, "cpuopt_ignore_memory_aborts",
646 Category::Cpu}; 651 Category::CpuDebug};
647 652
648 SwitchableSetting<bool> cpuopt_unsafe_unfuse_fma{linkage, true, "cpuopt_unsafe_unfuse_fma", 653 SwitchableSetting<bool> cpuopt_unsafe_unfuse_fma{linkage, true, "cpuopt_unsafe_unfuse_fma",
649 Category::Cpu}; 654 Category::CpuUnsafe};
650 SwitchableSetting<bool> cpuopt_unsafe_reduce_fp_error{ 655 SwitchableSetting<bool> cpuopt_unsafe_reduce_fp_error{
651 linkage, true, "cpuopt_unsafe_reduce_fp_error", Category::Cpu}; 656 linkage, true, "cpuopt_unsafe_reduce_fp_error", Category::CpuUnsafe};
652 SwitchableSetting<bool> cpuopt_unsafe_ignore_standard_fpcr{ 657 SwitchableSetting<bool> cpuopt_unsafe_ignore_standard_fpcr{
653 linkage, true, "cpuopt_unsafe_ignore_standard_fpcr", Category::Cpu}; 658 linkage, true, "cpuopt_unsafe_ignore_standard_fpcr", Category::CpuUnsafe};
654 SwitchableSetting<bool> cpuopt_unsafe_inaccurate_nan{ 659 SwitchableSetting<bool> cpuopt_unsafe_inaccurate_nan{
655 linkage, true, "cpuopt_unsafe_inaccurate_nan", Category::Cpu}; 660 linkage, true, "cpuopt_unsafe_inaccurate_nan", Category::CpuUnsafe};
656 SwitchableSetting<bool> cpuopt_unsafe_fastmem_check{ 661 SwitchableSetting<bool> cpuopt_unsafe_fastmem_check{
657 linkage, true, "cpuopt_unsafe_fastmem_check", Category::Cpu}; 662 linkage, true, "cpuopt_unsafe_fastmem_check", Category::CpuUnsafe};
658 SwitchableSetting<bool> cpuopt_unsafe_ignore_global_monitor{ 663 SwitchableSetting<bool> cpuopt_unsafe_ignore_global_monitor{
659 linkage, true, "cpuopt_unsafe_ignore_global_monitor", Category::Cpu}; 664 linkage, true, "cpuopt_unsafe_ignore_global_monitor", Category::CpuUnsafe};
660 665
661 // Renderer 666 // Renderer
662 SwitchableSetting<RendererBackend, true> renderer_backend{ 667 SwitchableSetting<RendererBackend, true> renderer_backend{
663 linkage, RendererBackend::Vulkan, RendererBackend::OpenGL, RendererBackend::Null, 668 linkage, RendererBackend::Vulkan, RendererBackend::OpenGL, RendererBackend::Null,
664 "backend", Category::Renderer}; 669 "backend", Category::Renderer};
665 SwitchableSetting<bool> async_presentation{linkage, false, "async_presentation", 670 SwitchableSetting<bool> async_presentation{linkage, false, "async_presentation",
666 Category::AdvancedGraphics}; 671 Category::RendererAdvanced};
667 SwitchableSetting<bool> renderer_force_max_clock{linkage, false, "force_max_clock", 672 SwitchableSetting<bool> renderer_force_max_clock{linkage, false, "force_max_clock",
668 Category::AdvancedGraphics}; 673 Category::RendererAdvanced};
669 Setting<bool> renderer_debug{linkage, false, "debug", Category::Renderer}; 674 Setting<bool> renderer_debug{linkage, false, "debug", Category::RendererDebug};
670 Setting<bool> renderer_shader_feedback{linkage, false, "shader_feedback", Category::Renderer}; 675 Setting<bool> renderer_shader_feedback{linkage, false, "shader_feedback",
671 Setting<bool> enable_nsight_aftermath{linkage, false, "nsight_aftermath", Category::Renderer}; 676 Category::RendererDebug};
677 Setting<bool> enable_nsight_aftermath{linkage, false, "nsight_aftermath",
678 Category::RendererDebug};
672 Setting<bool> disable_shader_loop_safety_checks{ 679 Setting<bool> disable_shader_loop_safety_checks{
673 linkage, false, "disable_shader_loop_safety_checks", Category::Renderer}; 680 linkage, false, "disable_shader_loop_safety_checks", Category::RendererDebug};
674 SwitchableSetting<int> vulkan_device{linkage, 0, "vulkan_device", Category::Renderer}; 681 SwitchableSetting<int> vulkan_device{linkage, 0, "vulkan_device", Category::Renderer};
675 682
676 ResolutionScalingInfo resolution_info{}; 683 ResolutionScalingInfo resolution_info{};
@@ -697,7 +704,7 @@ struct Values {
697 SwitchableSetting<int, true> aspect_ratio{linkage, 0, 0, 4, "aspect_ratio", Category::Renderer}; 704 SwitchableSetting<int, true> aspect_ratio{linkage, 0, 0, 4, "aspect_ratio", Category::Renderer};
698 SwitchableSetting<AnisotropyMode, true> max_anisotropy{ 705 SwitchableSetting<AnisotropyMode, true> max_anisotropy{
699 linkage, AnisotropyMode::Automatic, AnisotropyMode::Automatic, AnisotropyMode::X16, 706 linkage, AnisotropyMode::Automatic, AnisotropyMode::Automatic, AnisotropyMode::X16,
700 "max_anisotropy", Category::AdvancedGraphics}; 707 "max_anisotropy", Category::RendererAdvanced};
701 SwitchableSetting<bool, false, false> use_speed_limit{linkage, true, "use_speed_limit", 708 SwitchableSetting<bool, false, false> use_speed_limit{linkage, true, "use_speed_limit",
702 Category::Renderer}; 709 Category::Renderer};
703 SwitchableSetting<u16, true> speed_limit{linkage, 100, 0, 710 SwitchableSetting<u16, true> speed_limit{linkage, 100, 0,
@@ -706,7 +713,7 @@ struct Values {
706 Category::Renderer}; 713 Category::Renderer};
707 SwitchableSetting<GPUAccuracy, true, true, true> gpu_accuracy{ 714 SwitchableSetting<GPUAccuracy, true, true, true> gpu_accuracy{
708 linkage, GPUAccuracy::High, GPUAccuracy::Normal, GPUAccuracy::Extreme, 715 linkage, GPUAccuracy::High, GPUAccuracy::Normal, GPUAccuracy::Extreme,
709 "gpu_accuracy", Category::AdvancedGraphics}; 716 "gpu_accuracy", Category::RendererAdvanced};
710 SwitchableSetting<bool> use_asynchronous_gpu_emulation{ 717 SwitchableSetting<bool> use_asynchronous_gpu_emulation{
711 linkage, true, "use_asynchronous_gpu_emulation", Category::Renderer}; 718 linkage, true, "use_asynchronous_gpu_emulation", Category::Renderer};
712 SwitchableSetting<NvdecEmulation> nvdec_emulation{linkage, NvdecEmulation::GPU, 719 SwitchableSetting<NvdecEmulation> nvdec_emulation{linkage, NvdecEmulation::GPU,
@@ -728,21 +735,21 @@ struct Values {
728 SwitchableSetting<bool> use_asynchronous_shaders{linkage, false, "use_asynchronous_shaders", 735 SwitchableSetting<bool> use_asynchronous_shaders{linkage, false, "use_asynchronous_shaders",
729 Category::Renderer}; 736 Category::Renderer};
730 SwitchableSetting<bool, false, true, true> use_fast_gpu_time{linkage, true, "use_fast_gpu_time", 737 SwitchableSetting<bool, false, true, true> use_fast_gpu_time{linkage, true, "use_fast_gpu_time",
731 Category::AdvancedGraphics}; 738 Category::RendererAdvanced};
732 SwitchableSetting<bool, false, true, true> use_vulkan_driver_pipeline_cache{ 739 SwitchableSetting<bool, false, true, true> use_vulkan_driver_pipeline_cache{
733 linkage, true, "use_vulkan_driver_pipeline_cache", Category::AdvancedGraphics}; 740 linkage, true, "use_vulkan_driver_pipeline_cache", Category::RendererAdvanced};
734 SwitchableSetting<bool> enable_compute_pipelines{linkage, false, "enable_compute_pipelines", 741 SwitchableSetting<bool> enable_compute_pipelines{linkage, false, "enable_compute_pipelines",
735 Category::AdvancedGraphics}; 742 Category::RendererAdvanced};
736 SwitchableSetting<AstcRecompression, true> astc_recompression{linkage, 743 SwitchableSetting<AstcRecompression, true> astc_recompression{linkage,
737 AstcRecompression::Uncompressed, 744 AstcRecompression::Uncompressed,
738 AstcRecompression::Uncompressed, 745 AstcRecompression::Uncompressed,
739 AstcRecompression::Bc3, 746 AstcRecompression::Bc3,
740 "astc_recompression", 747 "astc_recompression",
741 Category::AdvancedGraphics}; 748 Category::RendererAdvanced};
742 SwitchableSetting<bool> use_video_framerate{linkage, false, "use_video_framerate", 749 SwitchableSetting<bool> use_video_framerate{linkage, false, "use_video_framerate",
743 Category::AdvancedGraphics}; 750 Category::RendererAdvanced};
744 SwitchableSetting<bool> barrier_feedback_loops{linkage, true, "barrier_feedback_loops", 751 SwitchableSetting<bool> barrier_feedback_loops{linkage, true, "barrier_feedback_loops",
745 Category::AdvancedGraphics}; 752 Category::RendererAdvanced};
746 753
747 SwitchableSetting<u8> bg_red{linkage, 0, "bg_red", Category::Renderer}; 754 SwitchableSetting<u8> bg_red{linkage, 0, "bg_red", Category::Renderer};
748 SwitchableSetting<u8> bg_green{linkage, 0, "bg_green", Category::Renderer}; 755 SwitchableSetting<u8> bg_green{linkage, 0, "bg_green", Category::Renderer};
@@ -855,14 +862,18 @@ struct Values {
855 Setting<std::string> program_args{linkage, std::string(), "program_args", Category::Debugging}; 862 Setting<std::string> program_args{linkage, std::string(), "program_args", Category::Debugging};
856 Setting<bool> dump_exefs{linkage, false, "dump_exefs", Category::Debugging}; 863 Setting<bool> dump_exefs{linkage, false, "dump_exefs", Category::Debugging};
857 Setting<bool> dump_nso{linkage, false, "dump_nso", Category::Debugging}; 864 Setting<bool> dump_nso{linkage, false, "dump_nso", Category::Debugging};
858 Setting<bool, false, false> dump_shaders{linkage, false, "dump_shaders", Category::Debugging}; 865 Setting<bool, false, false> dump_shaders{linkage, false, "dump_shaders",
859 Setting<bool, false, false> dump_macros{linkage, false, "dump_macros", Category::Debugging}; 866 Category::DebuggingGraphics};
867 Setting<bool, false, false> dump_macros{linkage, false, "dump_macros",
868 Category::DebuggingGraphics};
860 Setting<bool> enable_fs_access_log{linkage, false, "enable_fs_access_log", Category::Debugging}; 869 Setting<bool> enable_fs_access_log{linkage, false, "enable_fs_access_log", Category::Debugging};
861 Setting<bool, false, false> reporting_services{linkage, false, "reporting_services", 870 Setting<bool, false, false> reporting_services{linkage, false, "reporting_services",
862 Category::Debugging}; 871 Category::Debugging};
863 Setting<bool> quest_flag{linkage, false, "quest_flag", Category::Debugging}; 872 Setting<bool> quest_flag{linkage, false, "quest_flag", Category::Debugging};
864 Setting<bool> disable_macro_jit{linkage, false, "disable_macro_jit", Category::Debugging}; 873 Setting<bool> disable_macro_jit{linkage, false, "disable_macro_jit",
865 Setting<bool> disable_macro_hle{linkage, false, "disable_macro_hle", Category::Debugging}; 874 Category::DebuggingGraphics};
875 Setting<bool> disable_macro_hle{linkage, false, "disable_macro_hle",
876 Category::DebuggingGraphics};
866 Setting<bool, false, false> extended_logging{linkage, false, "extended_logging", 877 Setting<bool, false, false> extended_logging{linkage, false, "extended_logging",
867 Category::Debugging}; 878 Category::Debugging};
868 Setting<bool> use_debug_asserts{linkage, false, "use_debug_asserts", Category::Debugging}; 879 Setting<bool> use_debug_asserts{linkage, false, "use_debug_asserts", Category::Debugging};