From 15ed73a6eb72be19fbc5e6efc3a83683ef7a0ad0 Mon Sep 17 00:00:00 2001 From: lat9nq <22451773+lat9nq@users.noreply.github.com> Date: Thu, 15 Jul 2021 20:48:16 -0400 Subject: [PATCH] yuzu_cmd: Add missing or update current settings 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. --- src/yuzu_cmd/config.cpp | 24 +++++++++- src/yuzu_cmd/default_ini.h | 92 ++++++++++++++++++++++++++++++++++++-- 2 files changed, 112 insertions(+), 4 deletions(-) diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp index 23ada3f92c..b18056baf3 100644 --- a/src/yuzu_cmd/config.cpp +++ b/src/yuzu_cmd/config.cpp @@ -292,6 +292,8 @@ void Config::ReadValues() { ReadSetting("ControlsGeneral", Settings::values.motion_device); + ReadSetting("ControlsGeneral", Settings::values.touch_device); + ReadSetting("ControlsGeneral", Settings::values.keyboard_enabled); ReadSetting("ControlsGeneral", Settings::values.debug_pad_enabled); @@ -414,11 +416,31 @@ void Config::ReadValues() { } ReadSetting("System", Settings::values.language_index); + ReadSetting("System", Settings::values.region_index); ReadSetting("System", Settings::values.time_zone_index); + ReadSetting("System", Settings::values.sound_index); // Core ReadSetting("Core", Settings::values.use_multi_core); + // Cpu + ReadSetting("Cpu", Settings::values.cpu_accuracy); + ReadSetting("Cpu", Settings::values.cpu_debug_mode); + ReadSetting("Cpu", Settings::values.cpuopt_page_tables); + ReadSetting("Cpu", Settings::values.cpuopt_block_linking); + ReadSetting("Cpu", Settings::values.cpuopt_return_stack_buffer); + ReadSetting("Cpu", Settings::values.cpuopt_fast_dispatcher); + ReadSetting("Cpu", Settings::values.cpuopt_context_elimination); + ReadSetting("Cpu", Settings::values.cpuopt_const_prop); + ReadSetting("Cpu", Settings::values.cpuopt_misc_ir); + ReadSetting("Cpu", Settings::values.cpuopt_reduce_misalign_checks); + ReadSetting("Cpu", Settings::values.cpuopt_fastmem); + ReadSetting("Cpu", Settings::values.cpuopt_unsafe_unfuse_fma); + ReadSetting("Cpu", Settings::values.cpuopt_unsafe_reduce_fp_error); + ReadSetting("Cpu", Settings::values.cpuopt_unsafe_ignore_standard_fpcr); + ReadSetting("Cpu", Settings::values.cpuopt_unsafe_inaccurate_nan); + ReadSetting("Cpu", Settings::values.cpuopt_unsafe_fastmem_check); + // Renderer ReadSetting("Renderer", Settings::values.renderer_backend); ReadSetting("Renderer", Settings::values.renderer_debug); @@ -438,6 +460,7 @@ void Config::ReadValues() { ReadSetting("Renderer", Settings::values.use_nvdec_emulation); ReadSetting("Renderer", Settings::values.accelerate_astc); ReadSetting("Renderer", Settings::values.use_fast_gpu_time); + ReadSetting("Renderer", Settings::values.use_caches_gc); ReadSetting("Renderer", Settings::values.bg_red); ReadSetting("Renderer", Settings::values.bg_green); @@ -458,7 +481,6 @@ void Config::ReadValues() { // Debugging Settings::values.record_frame_times = sdl2_config->GetBoolean("Debugging", "record_frame_times", false); - ReadSetting("Debugging", Settings::values.program_args); ReadSetting("Debugging", Settings::values.dump_exefs); ReadSetting("Debugging", Settings::values.dump_nso); ReadSetting("Debugging", Settings::values.enable_fs_access_log); diff --git a/src/yuzu_cmd/default_ini.h b/src/yuzu_cmd/default_ini.h index edee297958..b362f10b43 100644 --- a/src/yuzu_cmd/default_ini.h +++ b/src/yuzu_cmd/default_ini.h @@ -65,6 +65,13 @@ button_screenshot= lstick= rstick= +# To use the debug_pad, prepend `debug_pad_` before each button setting above. +# i.e. debug_pad_button_a= + +# Enable debug pad inputs to the guest +# 0 (default): Disabled, 1: Enabled +debug_pad_enabled = + # Whether to enable or disable vibration # 0: Disabled, 1 (default): Enabled vibration_enabled= @@ -73,6 +80,10 @@ vibration_enabled= # 0 (default): Disabled, 1: Enabled enable_accurate_vibrations= +# Enables controller motion inputs +# 0: Disabled, 1 (default): Enabled +motion_enabled = + # for motion input, the following devices are available: # - "motion_emu" (default) for emulating motion input from mouse input. Required parameters: # - "update_period": update period in milliseconds (default to 100) @@ -98,12 +109,48 @@ use_touch_from_button= #touch_from_button_maps_0_bind_1=bar # etc. +# List of Cemuhook UDP servers, delimited by ','. +# Default: 127.0.0.1:26760 +# Example: 127.0.0.1:26760,123.4.5.67:26761 +udp_input_servers = + +# Enable controlling an axis via a mouse input. +# 0 (default): Off, 1: On +mouse_panning = + +# Set mouse sensitivity. +# Default: 1.0 +mouse_panning_sensitivity = + +# Emulate an analog control stick from keyboard inputs. +# 0 (default): Disabled, 1: Enabled +emulate_analog_keyboard = + +# Enable mouse inputs to the guest +# 0 (default): Disabled, 1: Enabled +mouse_enabled = + +# Enable keyboard inputs to the guest +# 0 (default): Disabled, 1: Enabled +keyboard_enabled = + [Core] # Whether to use multi-core for CPU emulation # 0: Disabled, 1 (default): Enabled use_multi_core= [Cpu] +# Adjusts various optimizations. +# Auto-select mode enables choice unsafe optimizations. +# Accurate enables only safe optimizations. +# Unsafe allows any unsafe optimizations. +# 0 (default): Auto-select, 1: Accurate, 2: Enable unsafe optimizations +cpu_accuracy = + +# Allow disabling safe optimizations. +# 0 (default): Disabled, 1: Enabled +cpu_debug_mode = + # Enable inline page tables optimization (faster guest memory access) # 0: Disabled, 1 (default): Enabled cpuopt_page_tables = @@ -140,6 +187,31 @@ cpuopt_reduce_misalign_checks = # 0: Disabled, 1 (default): Enabled cpuopt_fastmem = +# Enable unfuse FMA (improve performance on CPUs without FMA) +# Only enabled if cpu_accuracy is set to Unsafe. Automatically chosen with cpu_accuracy = Auto-select. +# 0: Disabled, 1 (default): Enabled +cpuopt_unsafe_unfuse_fma = + +# Enable faster FRSQRTE and FRECPE +# Only enabled if cpu_accuracy is set to Unsafe. +# 0: Disabled, 1 (default): Enabled +cpuopt_unsafe_reduce_fp_error = + +# Enable faster ASIMD instructions (32 bits only) +# Only enabled if cpu_accuracy is set to Unsafe. Automatically chosen with cpu_accuracy = Auto-select. +# 0: Disabled, 1 (default): Enabled +cpuopt_unsafe_ignore_standard_fpcr = + +# Enable inaccurate NaN handling +# Only enabled if cpu_accuracy is set to Unsafe. Automatically chosen with cpu_accuracy = Auto-select. +# 0: Disabled, 1 (default): Enabled +cpuopt_unsafe_inaccurate_nan = + +# Disable address space checks (64 bits only) +# Only enabled if cpu_accuracy is set to Unsafe. Automatically chosen with cpu_accuracy = Auto-select. +# 0: Disabled, 1 (default): Enabled +cpuopt_unsafe_fastmem_check = + [Renderer] # Which backend API to use. # 0 (default): OpenGL, 1: Vulkan @@ -189,17 +261,21 @@ use_frame_limit = frame_limit = # Whether to use disk based shader cache -# 0 (default): Off, 1 : On +# 0: Off, 1 (default): On use_disk_shader_cache = # Which gpu accuracy level to use -# 0 (Normal), 1 (High), 2 (Extreme) +# 0: Normal, 1 (default): High, 2: Extreme (Very slow) gpu_accuracy = # Whether to use asynchronous GPU emulation # 0 : Off (slow), 1 (default): On (fast) use_asynchronous_gpu_emulation = +# Inform the guest that GPU operations completed more quickly than they did. +# 0: Off, 1 (default): On +use_fast_gpu_time = + # Whether to use garbage collection or not for GPU caches. # 0 (default): Off, 1: On use_caches_gc = @@ -275,17 +351,25 @@ language_index = # The system region that yuzu will use during emulation # -1: Auto-select (default), 0: Japan, 1: USA, 2: Europe, 3: Australia, 4: China, 5: Korea, 6: Taiwan -region_value = +region_index = # The system time zone that yuzu will use during emulation # 0: Auto-select (default), 1: Default (system archive value), Others: Index for specified time zone time_zone_index = +# Sets the sound output mode. +# 0: Mono, 1 (default): Stereo, 2: Surround +sound_index = + [Miscellaneous] # A filter which removes logs below a certain logging level. # Examples: *:Debug Kernel.SVC:Trace Service.*:Critical log_filter = *:Trace +# Use developer keys +# 0 (default): Disabled, 1: Enabled +use_dev_keys = + [Debugging] # Record frame time data, can be found in the log directory. Boolean value record_frame_times = @@ -295,6 +379,8 @@ dump_exefs=false dump_nso=false # Determines whether or not yuzu will save the filesystem access log. enable_fs_access_log=false +# Enables verbose reporting services +reporting_services = # Determines whether or not yuzu will report to the game that the emulated console is in Kiosk Mode # false: Retail/Normal Mode (default), true: Kiosk Mode quest_flag =