default_ini.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  1. // Copyright 2014 Citra Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. namespace DefaultINI {
  6. const char* sdl2_config_file = R"(
  7. [Controls]
  8. # The input devices and parameters for each Switch native input
  9. # It should be in the format of "engine:[engine_name],[param1]:[value1],[param2]:[value2]..."
  10. # Escape characters $0 (for ':'), $1 (for ',') and $2 (for '$') can be used in values
  11. # for button input, the following devices are available:
  12. # - "keyboard" (default) for keyboard input. Required parameters:
  13. # - "code": the code of the key to bind
  14. # - "sdl" for joystick input using SDL. Required parameters:
  15. # - "joystick": the index of the joystick to bind
  16. # - "button"(optional): the index of the button to bind
  17. # - "hat"(optional): the index of the hat to bind as direction buttons
  18. # - "axis"(optional): the index of the axis to bind
  19. # - "direction"(only used for hat): the direction name of the hat to bind. Can be "up", "down", "left" or "right"
  20. # - "threshold"(only used for axis): a float value in (-1.0, 1.0) which the button is
  21. # triggered if the axis value crosses
  22. # - "direction"(only used for axis): "+" means the button is triggered when the axis value
  23. # is greater than the threshold; "-" means the button is triggered when the axis value
  24. # is smaller than the threshold
  25. button_a=
  26. button_b=
  27. button_x=
  28. button_y=
  29. button_lstick=
  30. button_rstick=
  31. button_l=
  32. button_r=
  33. button_zl=
  34. button_zr=
  35. button_plus=
  36. button_minus=
  37. button_dleft=
  38. button_dup=
  39. button_dright=
  40. button_ddown=
  41. button_lstick_left=
  42. button_lstick_up=
  43. button_lstick_right=
  44. button_lstick_down=
  45. button_sl=
  46. button_sr=
  47. button_home=
  48. button_screenshot=
  49. # for analog input, the following devices are available:
  50. # - "analog_from_button" (default) for emulating analog input from direction buttons. Required parameters:
  51. # - "up", "down", "left", "right": sub-devices for each direction.
  52. # Should be in the format as a button input devices using escape characters, for example, "engine$0keyboard$1code$00"
  53. # - "modifier": sub-devices as a modifier.
  54. # - "modifier_scale": a float number representing the applied modifier scale to the analog input.
  55. # Must be in range of 0.0-1.0. Defaults to 0.5
  56. # - "sdl" for joystick input using SDL. Required parameters:
  57. # - "joystick": the index of the joystick to bind
  58. # - "axis_x": the index of the axis to bind as x-axis (default to 0)
  59. # - "axis_y": the index of the axis to bind as y-axis (default to 1)
  60. lstick=
  61. rstick=
  62. # Whether to enable or disable vibration
  63. # 0: Disabled, 1 (default): Enabled
  64. vibration_enabled=
  65. # for motion input, the following devices are available:
  66. # - "motion_emu" (default) for emulating motion input from mouse input. Required parameters:
  67. # - "update_period": update period in milliseconds (default to 100)
  68. # - "sensitivity": the coefficient converting mouse movement to tilting angle (default to 0.01)
  69. # - "cemuhookudp" reads motion input from a udp server that uses cemuhook's udp protocol
  70. motion_device=
  71. # for touch input, the following devices are available:
  72. # - "emu_window" (default) for emulating touch input from mouse input to the emulation window. No parameters required
  73. # - "cemuhookudp" reads touch input from a udp server that uses cemuhook's udp protocol
  74. # - "min_x", "min_y", "max_x", "max_y": defines the udp device's touch screen coordinate system
  75. touch_device=
  76. # Most desktop operating systems do not expose a way to poll the motion state of the controllers
  77. # so as a way around it, cemuhook created a udp client/server protocol to broadcast the data directly
  78. # from a controller device to the client program. Citra has a client that can connect and read
  79. # from any cemuhook compatible motion program.
  80. # IPv4 address of the udp input server (Default "127.0.0.1")
  81. udp_input_address=127.0.0.1
  82. # Port of the udp input server. (Default 26760)
  83. udp_input_port=
  84. # The pad to request data on. Should be between 0 (Pad 1) and 3 (Pad 4). (Default 0)
  85. udp_pad_index=
  86. [Core]
  87. # Whether to use multi-core for CPU emulation
  88. # 0: Disabled, 1 (default): Enabled
  89. use_multi_core=
  90. [Cpu]
  91. # Enable inline page tables optimization (faster guest memory access)
  92. # 0: Disabled, 1 (default): Enabled
  93. cpuopt_page_tables =
  94. # Enable block linking CPU optimization (reduce block dispatcher use during predictable jumps)
  95. # 0: Disabled, 1 (default): Enabled
  96. cpuopt_block_linking =
  97. # Enable return stack buffer CPU optimization (reduce block dispatcher use during predictable returns)
  98. # 0: Disabled, 1 (default): Enabled
  99. cpuopt_return_stack_buffer =
  100. # Enable fast dispatcher CPU optimization (use a two-tiered dispatcher architecture)
  101. # 0: Disabled, 1 (default): Enabled
  102. cpuopt_fast_dispatcher =
  103. # Enable context elimination CPU Optimization (reduce host memory use for guest context)
  104. # 0: Disabled, 1 (default): Enabled
  105. cpuopt_context_elimination =
  106. # Enable constant propagation CPU optimization (basic IR optimization)
  107. # 0: Disabled, 1 (default): Enabled
  108. cpuopt_const_prop =
  109. # Enable miscellaneous CPU optimizations (basic IR optimization)
  110. # 0: Disabled, 1 (default): Enabled
  111. cpuopt_misc_ir =
  112. # Enable reduction of memory misalignment checks (reduce memory fallbacks for misaligned access)
  113. # 0: Disabled, 1 (default): Enabled
  114. cpuopt_reduce_misalign_checks =
  115. [Renderer]
  116. # Which backend API to use.
  117. # 0 (default): OpenGL, 1: Vulkan
  118. backend =
  119. # Enable graphics API debugging mode.
  120. # 0 (default): Disabled, 1: Enabled
  121. debug =
  122. # Which Vulkan physical device to use (defaults to 0)
  123. vulkan_device =
  124. # Whether to use software or hardware rendering.
  125. # 0: Software, 1 (default): Hardware
  126. use_hw_renderer =
  127. # Whether to use the Just-In-Time (JIT) compiler for shader emulation
  128. # 0: Interpreter (slow), 1 (default): JIT (fast)
  129. use_shader_jit =
  130. # Aspect ratio
  131. # 0: Default (16:9), 1: Force 4:3, 2: Force 21:9, 3: Stretch to Window
  132. aspect_ratio =
  133. # Anisotropic filtering
  134. # 0: Default, 1: 2x, 2: 4x, 3: 8x, 4: 16x
  135. max_anisotropy =
  136. # Whether to enable V-Sync (caps the framerate at 60FPS) or not.
  137. # 0 (default): Off, 1: On
  138. use_vsync =
  139. # Whether to use OpenGL assembly shaders or not. NV_gpu_program5 is required.
  140. # 0: Off, 1 (default): On
  141. use_assembly_shaders =
  142. # Whether to allow asynchronous shader building.
  143. # 0 (default): Off, 1: On
  144. use_asynchronous_shaders =
  145. # Turns on the frame limiter, which will limit frames output to the target game speed
  146. # 0: Off, 1: On (default)
  147. use_frame_limit =
  148. # Limits the speed of the game to run no faster than this value as a percentage of target speed
  149. # 1 - 9999: Speed limit as a percentage of target game speed. 100 (default)
  150. frame_limit =
  151. # Whether to use disk based shader cache
  152. # 0 (default): Off, 1 : On
  153. use_disk_shader_cache =
  154. # Which gpu accuracy level to use
  155. # 0 (Normal), 1 (High), 2 (Extreme)
  156. gpu_accuracy =
  157. # Whether to use asynchronous GPU emulation
  158. # 0 : Off (slow), 1 (default): On (fast)
  159. use_asynchronous_gpu_emulation =
  160. # Forces VSync on the display thread. Usually doesn't impact performance, but on some drivers it can
  161. # so only turn this off if you notice a speed difference.
  162. # 0: Off, 1 (default): On
  163. use_vsync =
  164. # The clear color for the renderer. What shows up on the sides of the bottom screen.
  165. # Must be in range of 0.0-1.0. Defaults to 1.0 for all.
  166. bg_red =
  167. bg_blue =
  168. bg_green =
  169. [Layout]
  170. # Layout for the screen inside the render window.
  171. # 0 (default): Default Top Bottom Screen, 1: Single Screen Only, 2: Large Screen Small Screen
  172. layout_option =
  173. # Toggle custom layout (using the settings below) on or off.
  174. # 0 (default): Off, 1: On
  175. custom_layout =
  176. # Screen placement when using Custom layout option
  177. # 0x, 0y is the top left corner of the render window.
  178. custom_top_left =
  179. custom_top_top =
  180. custom_top_right =
  181. custom_top_bottom =
  182. custom_bottom_left =
  183. custom_bottom_top =
  184. custom_bottom_right =
  185. custom_bottom_bottom =
  186. # Swaps the prominent screen with the other screen.
  187. # For example, if Single Screen is chosen, setting this to 1 will display the bottom screen instead of the top screen.
  188. # 0 (default): Top Screen is prominent, 1: Bottom Screen is prominent
  189. swap_screen =
  190. [Audio]
  191. # Which audio output engine to use.
  192. # auto (default): Auto-select, null: No audio output, cubeb: Cubeb audio engine (if available)
  193. output_engine =
  194. # Whether or not to enable the audio-stretching post-processing effect.
  195. # This effect adjusts audio speed to match emulation speed and helps prevent audio stutter,
  196. # at the cost of increasing audio latency.
  197. # 0: No, 1 (default): Yes
  198. enable_audio_stretching =
  199. # Which audio device to use.
  200. # auto (default): Auto-select
  201. output_device =
  202. # Output volume.
  203. # 1.0 (default): 100%, 0.0; mute
  204. volume =
  205. [Data Storage]
  206. # Whether to create a virtual SD card.
  207. # 1 (default): Yes, 0: No
  208. use_virtual_sd =
  209. # Whether or not to enable gamecard emulation
  210. # 1: Yes, 0 (default): No
  211. gamecard_inserted =
  212. # Whether or not the gamecard should be emulated as the current game
  213. # If 'gamecard_inserted' is 0 this setting is irrelevant
  214. # 1: Yes, 0 (default): No
  215. gamecard_current_game =
  216. # Path to an XCI file to use as the gamecard
  217. # If 'gamecard_inserted' is 0 this setting is irrelevant
  218. # If 'gamecard_current_game' is 1 this setting is irrelevant
  219. gamecard_path =
  220. [System]
  221. # Whether the system is docked
  222. # 1: Yes, 0 (default): No
  223. use_docked_mode =
  224. # Allow the use of NFC in games
  225. # 1 (default): Yes, 0 : No
  226. enable_nfc =
  227. # Sets the seed for the RNG generator built into the switch
  228. # rng_seed will be ignored and randomly generated if rng_seed_enabled is false
  229. rng_seed_enabled =
  230. rng_seed =
  231. # Sets the current time (in seconds since 12:00 AM Jan 1, 1970) that will be used by the time service
  232. # This will auto-increment, with the time set being the time the game is started
  233. # This override will only occur if custom_rtc_enabled is true, otherwise the current time is used
  234. custom_rtc_enabled =
  235. custom_rtc =
  236. # Sets the account username, max length is 32 characters
  237. # yuzu (default)
  238. username = yuzu
  239. # Sets the systems language index
  240. # 0: Japanese, 1: English (default), 2: French, 3: German, 4: Italian, 5: Spanish, 6: Chinese,
  241. # 7: Korean, 8: Dutch, 9: Portuguese, 10: Russian, 11: Taiwanese, 12: British English, 13: Canadian French,
  242. # 14: Latin American Spanish, 15: Simplified Chinese, 16: Traditional Chinese
  243. language_index =
  244. # The system region that yuzu will use during emulation
  245. # -1: Auto-select (default), 0: Japan, 1: USA, 2: Europe, 3: Australia, 4: China, 5: Korea, 6: Taiwan
  246. region_value =
  247. # The system time zone that yuzu will use during emulation
  248. # 0: Auto-select (default), 1: Default (system archive value), Others: Index for specified time zone
  249. time_zone_index =
  250. [Miscellaneous]
  251. # A filter which removes logs below a certain logging level.
  252. # Examples: *:Debug Kernel.SVC:Trace Service.*:Critical
  253. log_filter = *:Trace
  254. [Debugging]
  255. # Record frame time data, can be found in the log directory. Boolean value
  256. record_frame_times =
  257. # Port for listening to GDB connections.
  258. use_gdbstub=false
  259. gdbstub_port=24689
  260. # Determines whether or not yuzu will dump the ExeFS of all games it attempts to load while loading them
  261. dump_exefs=false
  262. # Determines whether or not yuzu will dump all NSOs it attempts to load while loading them
  263. dump_nso=false
  264. # Determines whether or not yuzu will report to the game that the emulated console is in Kiosk Mode
  265. # false: Retail/Normal Mode (default), true: Kiosk Mode
  266. quest_flag =
  267. # Enables/Disables the macro JIT compiler
  268. disable_macro_jit=false
  269. [WebService]
  270. # Whether or not to enable telemetry
  271. # 0: No, 1 (default): Yes
  272. enable_telemetry =
  273. # URL for Web API
  274. web_api_url = https://api.yuzu-emu.org
  275. # Username and token for yuzu Web Service
  276. # See https://profile.yuzu-emu.org/ for more info
  277. yuzu_username =
  278. yuzu_token =
  279. [Services]
  280. # The name of the backend to use for BCAT
  281. # If this is set to 'boxcat' boxcat will be used, otherwise a null implementation will be used
  282. bcat_backend =
  283. [AddOns]
  284. # Used to disable add-ons
  285. # List of title IDs of games that will have add-ons disabled (separated by '|'):
  286. title_ids =
  287. # For each title ID, have a key/value pair called `disabled_<title_id>` equal to the names of the add-ons to disable (sep. by '|')
  288. # e.x. disabled_0100000000010000 = Update|DLC <- disables Updates and DLC on Super Mario Odyssey
  289. )";
  290. }