diff --git a/docs/index.html b/docs/index.html
index eaf0043b..3b90e942 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -60,7 +60,7 @@
-
RetroDECK is a polished and beginner-friendly environment for playing your retro games on Steam Deck and Linux Desktop, available with just one click from the Discover app or wherever you get your flatpaks.
+
RetroDECK is a in development but polished and beginner-friendly flatpak application for playing your retro games on the Steam Deck and the Linux Desktop. Available with just one click away in Discover or wherever you get your flatpaks.
diff --git a/incconfigs/Citra/qt-config.ini b/incconfigs/Citra/qt-config.ini
new file mode 100644
index 00000000..6f8f4e29
--- /dev/null
+++ b/incconfigs/Citra/qt-config.ini
@@ -0,0 +1,570 @@
+[Audio]
+audio_emulation=0
+audio_emulation\default=true
+enable_audio_stretching=true
+enable_audio_stretching\default=true
+input_device=auto
+input_device\default=true
+input_type=0
+input_type\default=true
+mic_input_device=Default
+mic_input_device\default=true
+mic_input_type=0
+mic_input_type\default=true
+output_device=auto
+output_device\default=true
+output_engine=auto
+output_engine\default=true
+output_type=0
+output_type\default=true
+volume=1
+volume\default=true
+
+[Camera]
+camera_inner_config=
+camera_inner_config\default=true
+camera_inner_flip=0
+camera_inner_flip\default=true
+camera_inner_name=blank
+camera_inner_name\default=true
+camera_outer_left_config=
+camera_outer_left_config\default=true
+camera_outer_left_flip=0
+camera_outer_left_flip\default=true
+camera_outer_left_name=blank
+camera_outer_left_name\default=true
+camera_outer_right_config=
+camera_outer_right_config\default=true
+camera_outer_right_flip=0
+camera_outer_right_flip\default=true
+camera_outer_right_name=blank
+camera_outer_right_name\default=true
+
+[Controls]
+profile=0
+profile\default=true
+profiles\1\button_a="button:0,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_a\default=false
+profiles\1\button_b="button:1,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_b\default=false
+profiles\1\button_debug="code:79,engine:keyboard"
+profiles\1\button_debug\default=true
+profiles\1\button_down="direction:down,engine:sdl,guid:030079f6de280000ff11000001000000,hat:0,port:0"
+profiles\1\button_down\default=false
+profiles\1\button_gpio14="code:80,engine:keyboard"
+profiles\1\button_gpio14\default=true
+profiles\1\button_home="code:66,engine:keyboard"
+profiles\1\button_home\default=true
+profiles\1\button_l="axis:2,direction:+,engine:sdl,guid:030079f6de280000ff11000001000000,port:0,threshold:0.5"
+profiles\1\button_l\default=false
+profiles\1\button_left="direction:left,engine:sdl,guid:030079f6de280000ff11000001000000,hat:0,port:0"
+profiles\1\button_left\default=false
+profiles\1\button_power="code:86,engine:keyboard"
+profiles\1\button_power\default=true
+profiles\1\button_r="axis:5,direction:+,engine:sdl,guid:030079f6de280000ff11000001000000,port:0,threshold:0.5"
+profiles\1\button_r\default=false
+profiles\1\button_right="direction:right,engine:sdl,guid:030079f6de280000ff11000001000000,hat:0,port:0"
+profiles\1\button_right\default=false
+profiles\1\button_select="button:6,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_select\default=false
+profiles\1\button_start="button:7,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_start\default=false
+profiles\1\button_up="direction:up,engine:sdl,guid:030079f6de280000ff11000001000000,hat:0,port:0"
+profiles\1\button_up\default=false
+profiles\1\button_x="button:2,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_x\default=false
+profiles\1\button_y="button:3,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_y\default=false
+profiles\1\button_zl="button:4,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_zl\default=false
+profiles\1\button_zr="button:5,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\button_zr\default=false
+profiles\1\c_stick="axis_x:3,axis_y:4,deadzone:0.100000,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\c_stick\default=false
+profiles\1\circle_pad="axis_x:0,axis_y:1,deadzone:0.100000,engine:sdl,guid:030079f6de280000ff11000001000000,port:0"
+profiles\1\circle_pad\default=false
+profiles\1\motion_device=engine:cemuhookudp
+profiles\1\motion_device\default=false
+profiles\1\name=default
+profiles\1\name\default=true
+profiles\1\touch_device=engine:emu_window
+profiles\1\touch_device\default=true
+profiles\1\touch_from_button_map=0
+profiles\1\touch_from_button_map\default=true
+profiles\1\udp_input_address=127.0.0.1
+profiles\1\udp_input_address\default=true
+profiles\1\udp_input_port=26760
+profiles\1\udp_input_port\default=true
+profiles\1\udp_pad_index=0
+profiles\1\udp_pad_index\default=true
+profiles\1\use_touch_from_button=false
+profiles\1\use_touch_from_button\default=true
+profiles\size=1
+touch_from_button_maps\1\entries\size=0
+touch_from_button_maps\1\name=default
+touch_from_button_maps\1\name\default=true
+touch_from_button_maps\size=1
+
+[Core]
+cpu_clock_percentage=100
+cpu_clock_percentage\default=true
+use_cpu_jit=true
+use_cpu_jit\default=true
+
+[Data%20Storage]
+nand_directory=/run/media/mmcblk0p1/retrodeck/saves/n3ds/citra/nand/
+nand_directory\default=false
+sdmc_directory=/run/media/mmcblk0p1/retrodeck/saves/n3ds/citra/sdmc/
+sdmc_directory\default=false
+use_custom_storage=true
+use_custom_storage\default=false
+use_virtual_sd=true
+use_virtual_sd\default=true
+
+[Debugging]
+LLE\AC=false
+LLE\AC\default=true
+LLE\ACT=false
+LLE\ACT\default=true
+LLE\AM=false
+LLE\AM\default=true
+LLE\BOSS=false
+LLE\BOSS\default=true
+LLE\CAM=false
+LLE\CAM\default=true
+LLE\CDC=false
+LLE\CDC\default=true
+LLE\CECD=false
+LLE\CECD\default=true
+LLE\CFG=false
+LLE\CFG\default=true
+LLE\CSND=false
+LLE\CSND\default=true
+LLE\DLP=false
+LLE\DLP\default=true
+LLE\DSP=false
+LLE\DSP\default=true
+LLE\ERR=false
+LLE\ERR\default=true
+LLE\FRD=false
+LLE\FRD\default=true
+LLE\FS=false
+LLE\FS\default=true
+LLE\GPIO=false
+LLE\GPIO\default=true
+LLE\GSP=false
+LLE\GSP\default=true
+LLE\HID=false
+LLE\HID\default=true
+LLE\HTTP=false
+LLE\HTTP\default=true
+LLE\I2C=false
+LLE\I2C\default=true
+LLE\IR=false
+LLE\IR\default=true
+LLE\LDR=false
+LLE\LDR\default=true
+LLE\MCU=false
+LLE\MCU\default=true
+LLE\MIC=false
+LLE\MIC\default=true
+LLE\MP=false
+LLE\MP\default=true
+LLE\MVD=false
+LLE\MVD\default=true
+LLE\NDM=false
+LLE\NDM\default=true
+LLE\NEWS=false
+LLE\NEWS\default=true
+LLE\NFC=false
+LLE\NFC\default=true
+LLE\NIM=false
+LLE\NIM\default=true
+LLE\NS=false
+LLE\NS\default=true
+LLE\NWM=false
+LLE\NWM\default=true
+LLE\PDN=false
+LLE\PDN\default=true
+LLE\PLGLDR=false
+LLE\PLGLDR\default=true
+LLE\PM=false
+LLE\PM\default=true
+LLE\PS=false
+LLE\PS\default=true
+LLE\PTM=false
+LLE\PTM\default=true
+LLE\PXI=false
+LLE\PXI\default=true
+LLE\QTM=false
+LLE\QTM\default=true
+LLE\SOC=false
+LLE\SOC\default=true
+LLE\SPI=false
+LLE\SPI\default=true
+LLE\SSL=false
+LLE\SSL\default=true
+gdbstub_port=24689
+gdbstub_port\default=true
+record_frame_times=false
+renderer_debug=false
+renderer_debug\default=true
+use_gdbstub=false
+use_gdbstub\default=true
+
+[Layout]
+anaglyph_shader_name=dubois (builtin)
+anaglyph_shader_name\default=true
+custom_bottom_bottom=480
+custom_bottom_bottom\default=true
+custom_bottom_left=40
+custom_bottom_left\default=true
+custom_bottom_right=360
+custom_bottom_right\default=true
+custom_bottom_top=240
+custom_bottom_top\default=true
+custom_layout=false
+custom_layout\default=true
+custom_second_layer_opacity=100
+custom_second_layer_opacity\default=true
+custom_top_bottom=240
+custom_top_bottom\default=true
+custom_top_left=0
+custom_top_left\default=true
+custom_top_right=400
+custom_top_right\default=true
+custom_top_top=0
+custom_top_top\default=true
+factor_3d=0
+factor_3d\default=true
+filter_mode=true
+filter_mode\default=true
+large_screen_proportion=4
+large_screen_proportion\default=true
+layout_option=4
+layout_option\default=false
+mono_render_option=0
+mono_render_option\default=true
+pp_shader_name=none (builtin)
+pp_shader_name\default=true
+render_3d=0
+render_3d\default=true
+swap_screen=true
+swap_screen\default=false
+upright_screen=false
+upright_screen\default=true
+
+[Miscellaneous]
+log_filter=*:Info
+log_filter\default=true
+
+[Renderer]
+async_presentation=true
+async_presentation\default=true
+async_shader_compilation=false
+async_shader_compilation\default=true
+bg_blue=0
+bg_blue\default=true
+bg_green=0
+bg_green\default=true
+bg_red=0
+bg_red\default=true
+frame_limit=100
+frame_limit\default=true
+frame_limit_alternate=500
+graphics_api=1
+graphics_api\default=true
+physical_device=0
+physical_device\default=true
+resolution_factor=2
+resolution_factor\default=false
+shaders_accurate_mul=true
+shaders_accurate_mul\default=true
+spirv_shader_gen=true
+spirv_shader_gen\default=true
+texture_filter=0
+texture_filter\default=true
+texture_filter_name=Linear (Default)
+texture_filter_name\default=false
+use_disk_shader_cache=true
+use_disk_shader_cache\default=true
+use_hw_renderer=true
+use_hw_renderer\default=true
+use_hw_shader=true
+use_hw_shader\default=true
+use_shader_jit=true
+use_shader_jit\default=true
+use_vsync_new=true
+use_vsync_new\default=true
+
+[System]
+allow_plugin_loader=true
+allow_plugin_loader\default=true
+init_clock=0
+init_clock\default=true
+init_time=@Variant(\0\0\0\x84\0\0\0\0\x38m5\xbd)
+init_time\default=true
+init_time_offset=@Variant(\0\0\0\x81\0\0\0\0\0\0\0\0)
+init_time_offset\default=true
+is_new_3ds=true
+is_new_3ds\default=true
+plugin_loader=false
+plugin_loader\default=true
+region_value=-1
+region_value\default=true
+
+[UI]
+GameList\hideNoIcon=false
+GameList\hideNoIcon\default=true
+GameList\iconSize=2
+GameList\iconSize\default=true
+GameList\row1=2
+GameList\row1\default=true
+GameList\row2=0
+GameList\row2\default=true
+GameList\show_compat_column=true
+GameList\show_compat_column\default=true
+GameList\show_region_column=true
+GameList\show_region_column\default=true
+GameList\show_size_column=true
+GameList\show_size_column\default=true
+GameList\show_type_column=true
+GameList\show_type_column\default=true
+GameList\singleLineMode=false
+GameList\singleLineMode\default=true
+Multiplayer\game_id=0
+Multiplayer\game_id\default=true
+Multiplayer\host_type=0
+Multiplayer\host_type\default=true
+Multiplayer\ip=
+Multiplayer\ip\default=true
+Multiplayer\ip_ban_list\size=0
+Multiplayer\max_player=8
+Multiplayer\max_player\default=true
+Multiplayer\nickname=
+Multiplayer\nickname\default=true
+Multiplayer\port=24872
+Multiplayer\port\default=true
+Multiplayer\room_description=
+Multiplayer\room_description\default=true
+Multiplayer\room_name=
+Multiplayer\room_name\default=true
+Multiplayer\room_nickname=
+Multiplayer\room_nickname\default=true
+Multiplayer\room_port=24872
+Multiplayer\room_port\default=true
+Multiplayer\username_ban_list\size=0
+Paths\gamedirs\1\deep_scan=false
+Paths\gamedirs\1\deep_scan\default=true
+Paths\gamedirs\1\expanded=true
+Paths\gamedirs\1\expanded\default=true
+Paths\gamedirs\1\path=INSTALLED
+Paths\gamedirs\2\deep_scan=false
+Paths\gamedirs\2\deep_scan\default=true
+Paths\gamedirs\2\expanded=true
+Paths\gamedirs\2\expanded\default=true
+Paths\gamedirs\2\path=SYSTEM
+Paths\gamedirs\3\deep_scan=false
+Paths\gamedirs\3\deep_scan\default=true
+Paths\gamedirs\3\expanded=true
+Paths\gamedirs\3\expanded\default=true
+Paths\gamedirs\3\path=/run/media/mmcblk0p1/retrodeck/roms/n3ds
+Paths\gamedirs\size=3
+Paths\language=en
+Paths\language\default=false
+Paths\moviePlaybackPath=
+Paths\movieRecordPath=
+Paths\recentFiles="/run/media/mmcblk0p1/retrodeck/roms/n3ds/Legend of Zelda, The - A Link Between Worlds (USA) (En,Fr,Es).3ds", "/run/media/mmcblk0p1/retrodeck/roms/n3ds/Kirby's Extra Epic Yarn (USA) (En,Fr,Es) Decrypted.3ds",
+Paths\romsPath=
+Paths\screenshotPath=/run/media/mmcblk0p1/retrodeck/screenshots
+Paths\screenshotPath\default=false
+Paths\symbolsPath=
+Paths\videoDumpingPath=
+Shortcuts\Main%20Window\Advance%20Frame\Context=1
+Shortcuts\Main%20Window\Advance%20Frame\Context\default=false
+Shortcuts\Main%20Window\Advance%20Frame\KeySeq=
+Shortcuts\Main%20Window\Advance%20Frame\KeySeq\default=true
+Shortcuts\Main%20Window\Capture%20Screenshot\Context=3
+Shortcuts\Main%20Window\Capture%20Screenshot\Context\default=true
+Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq=Ctrl+X
+Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq\default=false
+Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context=1
+Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true
+Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=Ctrl+P
+Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=false
+Shortcuts\Main%20Window\Decrease%203D%20Factor\Context=1
+Shortcuts\Main%20Window\Decrease%203D%20Factor\Context\default=false
+Shortcuts\Main%20Window\Decrease%203D%20Factor\KeySeq=
+Shortcuts\Main%20Window\Decrease%203D%20Factor\KeySeq\default=false
+Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context=2
+Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context\default=true
+Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq=Ctrl+2
+Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq\default=false
+Shortcuts\Main%20Window\Exit%20Citra\Context=1
+Shortcuts\Main%20Window\Exit%20Citra\Context\default=true
+Shortcuts\Main%20Window\Exit%20Citra\KeySeq=Ctrl+Q
+Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=true
+Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1
+Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true
+Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=Ctrl+O
+Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=false
+Shortcuts\Main%20Window\Fullscreen\Context=1
+Shortcuts\Main%20Window\Fullscreen\Context\default=true
+Shortcuts\Main%20Window\Fullscreen\KeySeq=Ctrl+Return
+Shortcuts\Main%20Window\Fullscreen\KeySeq\default=false
+Shortcuts\Main%20Window\Increase%203D%20Factor\Context=1
+Shortcuts\Main%20Window\Increase%203D%20Factor\Context\default=false
+Shortcuts\Main%20Window\Increase%203D%20Factor\KeySeq=
+Shortcuts\Main%20Window\Increase%203D%20Factor\KeySeq\default=false
+Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context=2
+Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context\default=true
+Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq=Ctrl+1
+Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq\default=false
+Shortcuts\Main%20Window\Load%20Amiibo\Context=3
+Shortcuts\Main%20Window\Load%20Amiibo\Context\default=true
+Shortcuts\Main%20Window\Load%20Amiibo\KeySeq=Alt+M
+Shortcuts\Main%20Window\Load%20Amiibo\KeySeq\default=false
+Shortcuts\Main%20Window\Load%20File\Context=1
+Shortcuts\Main%20Window\Load%20File\Context\default=false
+Shortcuts\Main%20Window\Load%20File\KeySeq=
+Shortcuts\Main%20Window\Load%20File\KeySeq\default=false
+Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\Context=1
+Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\Context\default=true
+Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\KeySeq=Ctrl+A
+Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\KeySeq\default=false
+Shortcuts\Main%20Window\Mute%20Audio\Context=1
+Shortcuts\Main%20Window\Mute%20Audio\Context\default=true
+Shortcuts\Main%20Window\Mute%20Audio\KeySeq=
+Shortcuts\Main%20Window\Mute%20Audio\KeySeq\default=false
+Shortcuts\Main%20Window\Remove%20Amiibo\Context=2
+Shortcuts\Main%20Window\Remove%20Amiibo\Context\default=true
+Shortcuts\Main%20Window\Remove%20Amiibo\KeySeq=Alt+N
+Shortcuts\Main%20Window\Remove%20Amiibo\KeySeq\default=false
+Shortcuts\Main%20Window\Restart%20Emulation\Context=1
+Shortcuts\Main%20Window\Restart%20Emulation\Context\default=true
+Shortcuts\Main%20Window\Restart%20Emulation\KeySeq=Ctrl+R
+Shortcuts\Main%20Window\Restart%20Emulation\KeySeq\default=false
+Shortcuts\Main%20Window\Rotate%20Screens%20Upright\Context=1
+Shortcuts\Main%20Window\Rotate%20Screens%20Upright\Context\default=true
+Shortcuts\Main%20Window\Rotate%20Screens%20Upright\KeySeq=
+Shortcuts\Main%20Window\Rotate%20Screens%20Upright\KeySeq\default=false
+Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\Context=1
+Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\Context\default=true
+Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\KeySeq=Ctrl+S
+Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\KeySeq\default=false
+Shortcuts\Main%20Window\Stop%20Emulation\Context=1
+Shortcuts\Main%20Window\Stop%20Emulation\Context\default=true
+Shortcuts\Main%20Window\Stop%20Emulation\KeySeq=
+Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=false
+Shortcuts\Main%20Window\Swap%20Screens\Context=1
+Shortcuts\Main%20Window\Swap%20Screens\Context\default=true
+Shortcuts\Main%20Window\Swap%20Screens\KeySeq=Ctrl+Tab
+Shortcuts\Main%20Window\Swap%20Screens\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%203D\Context=1
+Shortcuts\Main%20Window\Toggle%203D\Context\default=false
+Shortcuts\Main%20Window\Toggle%203D\KeySeq=
+Shortcuts\Main%20Window\Toggle%203D\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Custom%20Textures\Context=2
+Shortcuts\Main%20Window\Toggle%20Custom%20Textures\Context\default=true
+Shortcuts\Main%20Window\Toggle%20Custom%20Textures\KeySeq=F7
+Shortcuts\Main%20Window\Toggle%20Custom%20Textures\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context=1
+Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context\default=true
+Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq=
+Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context=1
+Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context\default=false
+Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq=
+Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\Context=1
+Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\Context\default=true
+Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq=
+Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context=1
+Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context\default=true
+Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq=Ctrl+L
+Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1
+Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=false
+Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq=Ctrl+S
+Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq\default=false
+Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\Context=1
+Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\Context\default=false
+Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\KeySeq=
+Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\KeySeq\default=false
+UILayout\gameListHeaderState=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\x1\0\0\0\x5\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\n\0\0\0\0\x5\x1\x1\0\x1\0\0\0\0\0\0\0\0\0\0\0\0\x64\xff\xff\xff\xff\0\0\0\x81\0\0\0\0\0\0\0\x5\0\0\x2\x80\0\0\0\x1\0\0\0\0\0\0\0\x64\0\0\0\x1\0\0\0\0\0\0\0\x64\0\0\0\x1\0\0\0\0\0\0\0\x64\0\0\0\x1\0\0\0\0\0\0\x6T\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0\x64\0\0\0\0)
+UILayout\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\xd6\0\0\0\xb4\0\0\x4*\0\0\x2\x43\0\0\0\xd6\0\0\0\xb4\0\0\x4*\0\0\x2\x43\0\0\0\0\0\0\0\0\x5\0\0\0\0\xd6\0\0\0\xb4\0\0\x4*\0\0\x2\x43)
+UILayout\geometryRenderWindow=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x4\xfd\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31)
+UILayout\microProfileDialogGeometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\x1\0\0\0\x19\0\0\x3\xe8\0\0\x2p\0\0\0\x1\0\0\0\x19\0\0\x3\xe8\0\0\x2p\0\0\0\0\0\0\0\0\x5\0\0\0\0\x1\0\0\0\x19\0\0\x3\xe8\0\0\x2p)
+UILayout\microProfileDialogVisible=false
+UILayout\microProfileDialogVisible\default=true
+UILayout\state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\0\0\0\0\0\0\0\0\0\xfc\x2\0\0\0\x1\xfb\0\0\0\x1c\0W\0\x61\0i\0t\0T\0r\0\x65\0\x65\0W\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\0\0\0\x1\0\0\0\0\0\0\0\0\xfc\x2\0\0\0\b\xfb\0\0\0\x18\0\x41\0R\0M\0R\0\x65\0g\0i\0s\0t\0\x65\0r\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0h\0\xff\xff\xff\xfb\0\0\0 \0G\0r\0\x61\0p\0h\0i\0\x63\0s\0\x44\0\x65\0\x62\0u\0g\0g\0\x65\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\"\0P\0i\0\x63\0\x61\0 \0\x43\0o\0m\0m\0\x61\0n\0\x64\0 \0L\0i\0s\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x87\0\xff\xff\xff\xfb\0\0\0*\0P\0i\0\x63\0\x61\0\x42\0r\0\x65\0\x61\0k\0P\0o\0i\0n\0t\0s\0W\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x87\0\xff\xff\xff\xfb\0\0\0 \0P\0i\0\x63\0\x61\0V\0\x65\0r\0t\0\x65\0x\0S\0h\0\x61\0\x64\0\x65\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xa9\0\xff\xff\xff\xfb\0\0\0\x12\0\x43\0i\0T\0r\0\x61\0\x63\0i\0n\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x41\0\xff\xff\xff\xfb\0\0\0.\0L\0L\0\x45\0S\0\x65\0r\0v\0i\0\x63\0\x65\0M\0o\0\x64\0u\0l\0\x65\0s\0W\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x16\0I\0P\0\x43\0R\0\x65\0\x63\0o\0r\0\x64\0\x65\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xc2\0\xff\xff\xff\0\0\x5\0\0\0\x3 \0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\0)
+Updater\check_for_update_on_start=true
+Updater\check_for_update_on_start\default=true
+Updater\update_on_close=false
+Updater\update_on_close\default=true
+calloutFlags=1
+calloutFlags\default=false
+confirmClose=false
+confirmClose\default=false
+displayTitleBars=true
+displayTitleBars\default=true
+enable_discord_presence=true
+enable_discord_presence\default=true
+firstStart=false
+firstStart\default=false
+fullscreen=true
+fullscreen\default=false
+hideInactiveMouse=false
+hideInactiveMouse\default=true
+pauseWhenInBackground=false
+pauseWhenInBackground\default=true
+saveStateWarning=true
+saveStateWarning\default=true
+screenshot_resolution_factor=0
+screenshot_resolution_factor\default=true
+showConsole=false
+showConsole\default=true
+showFilterBar=true
+showFilterBar\default=true
+showStatusBar=true
+showStatusBar\default=true
+singleWindowMode=true
+singleWindowMode\default=true
+theme=colorful_dark
+theme\default=false
+
+[Utility]
+async_custom_loading=true
+async_custom_loading\default=true
+custom_textures=false
+custom_textures\default=true
+dump_textures=false
+dump_textures\default=true
+preload_textures=false
+preload_textures\default=true
+
+[VideoDumping]
+audio_bitrate=64000
+audio_bitrate\default=true
+audio_encoder=libvorbis
+audio_encoder\default=true
+audio_encoder_options=
+audio_encoder_options\default=true
+format_options=
+output_format=webm
+output_format\default=true
+video_bitrate=2500000
+video_bitrate\default=true
+video_encoder=libvpx-vp9
+video_encoder\default=true
+video_encoder_options="quality:realtime,speed:6,tile-columns:4,frame-parallel:1,threads:8,row-mt:1"
+video_encoder_options\default=true
+
+[WebService]
+citra_token=
+citra_username=
+enable_telemetry=false
+enable_telemetry\default=true
+web_api_url=https://api.citra-emu.org
+web_api_url\default=true
diff --git a/incconfigs/Dolphin/DSUClient.ini b/incconfigs/Dolphin/DSUClient.ini
new file mode 100644
index 00000000..48353009
--- /dev/null
+++ b/incconfigs/Dolphin/DSUClient.ini
@@ -0,0 +1,3 @@
+[Server]
+Enabled = True
+Entries = steamdeckgyro:127.0.0.1:26760;
diff --git a/incconfigs/Dolphin/Debugger.ini b/incconfigs/Dolphin/Debugger.ini
new file mode 100644
index 00000000..e69de29b
diff --git a/incconfigs/Dolphin/Dolphin.ini b/incconfigs/Dolphin/Dolphin.ini
new file mode 100644
index 00000000..e1f8baae
--- /dev/null
+++ b/incconfigs/Dolphin/Dolphin.ini
@@ -0,0 +1,68 @@
+[Analytics]
+PermissionAsked = True
+ID = 484fe530fe216f646a77dcfe88a243fa
+[Core]
+GFXBackend = Vulkan
+AutoDiscChange = True
+SelectedLanguage = 0
+SerialPort1 = 255
+SkipIPL = True
+SlotA = 8
+SlotB = 255
+WiimoteContinuousScanning = False
+WiimoteControllerInterface = False
+WiimoteEnableSpeaker = False
+SIDevice0 = 6
+SIDevice1 = 0
+SIDevice2 = 0
+SIDevice3 = 0
+AudioStretch = False
+AudioStretchMaxLatency = 80
+DPL2Decoder = False
+DPL2Quality = 2
+DSPHLE = True
+WiiSDCardAllowWrites = True
+WiiSDCardEnableFolderSync = False
+CPUThread = True
+MMU = False
+EnableCheats = False
+[Display]
+Fullscreen = True
+DisableScreenSaver = True
+KeepWindowOnTop = False
+[GBA]
+BIOS = /home/laz/retrodeck/bios
+Rom1 =
+Rom2 =
+Rom3 =
+Rom4 =
+SavesInRomPath = False
+SavesPath = /home/laz/retrodeck/saves/gba
+Threads = True
+[General]
+ISOPath0 = /home/laz/retrodeck/roms/wii
+ISOPath1 = /home/laz/retrodeck/roms/gc
+ISOPaths = 3
+WiiSDCardPath = /home/laz/retrodeck/saves/wii/dolphin/sd.raw
+WirelessMac = 00:17:ab:83:9b:d4
+HotkeysRequireFocus = True
+RecursiveISOPaths = True
+ISOPath2 = /run/media/deck/ef5f6e53-c673-40ed-9c38-e7a3a31fbc32/retrodeck/roms/wii
+[NetPlay]
+TraversalChoice = direct
+[BluetoothPassthrough]
+Enabled = False
+[DSP]
+DSPThread = True
+Backend = Pulse
+EnableJIT = False
+[Interface]
+ConfirmStop = False
+CursorVisibility = 0
+OnScreenDisplayMessages = True
+PauseOnFocusLost = True
+ShowActiveTitle = True
+UseBuiltinTitleDatabase = True
+UsePanicHandlers = True
+LanguageCode = en
+ThemeName = Clean
diff --git a/incconfigs/Dolphin/FreeLook.ini b/incconfigs/Dolphin/FreeLook.ini
new file mode 100644
index 00000000..e69de29b
diff --git a/incconfigs/Dolphin/FreeLookController.ini b/incconfigs/Dolphin/FreeLookController.ini
new file mode 100644
index 00000000..0a03c416
--- /dev/null
+++ b/incconfigs/Dolphin/FreeLookController.ini
@@ -0,0 +1,22 @@
+[FreeLook1]
+Device = XInput2/0/Virtual core pointer
+Move/Up = @(Shift+E)
+Move/Down = @(Shift+Q)
+Move/Left = @(Shift+A)
+Move/Right = @(Shift+D)
+Move/Forward = @(Shift+W)
+Move/Backward = @(Shift+S)
+Speed/Decrease = @(Shift+`1`)
+Speed/Increase = @(Shift+`2`)
+Speed/Reset = @(Shift+F)
+Other/Reset View = @(Shift+R)
+Field of View/Increase X = @(Shift+`Axis Z+`)
+Field of View/Decrease X = @(Shift+`Axis Z-`)
+Field of View/Increase Y = @(Shift+`Axis Z+`)
+Field of View/Decrease Y = @(Shift+`Axis Z-`)
+Incremental Rotation/Pitch Up = if(`Click 3`,`RelativeMouse Y-` * 0.10, 0)
+Incremental Rotation/Pitch Down = if(`Click 3`,`RelativeMouse Y+` * 0.10, 0)
+Incremental Rotation/Roll Left = if(`Click 2`,`RelativeMouse X-` * 0.10, 0)
+Incremental Rotation/Roll Right = if(`Click 2`,`RelativeMouse X+` * 0.10, 0)
+Incremental Rotation/Yaw Left = if(`Click 3`,`RelativeMouse X-` * 0.10, 0)
+Incremental Rotation/Yaw Right = if(`Click 3`,`RelativeMouse X+` * 0.10, 0)
diff --git a/incconfigs/Dolphin/GBA.ini b/incconfigs/Dolphin/GBA.ini
new file mode 100644
index 00000000..f8002127
--- /dev/null
+++ b/incconfigs/Dolphin/GBA.ini
@@ -0,0 +1,44 @@
+[GBA1]
+Device = evdev/0/Microsoft X-Box 360 pad 0
+Buttons/B = EAST
+Buttons/A = SOUTH
+Buttons/Z = TR
+Buttons/SELECT = SELECT
+Buttons/START = START
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+[GBA2]
+Device = evdev/0/Microsoft X-Box 360 pad 1
+Buttons/B = EAST
+Buttons/A = SOUTH
+Buttons/Z = TR
+Buttons/SELECT = SELECT
+Buttons/START = START
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+[GBA3]
+Device = evdev/0/Microsoft X-Box 360 pad 2
+Buttons/B = EAST
+Buttons/A = SOUTH
+Buttons/Z = TR
+Buttons/SELECT = SELECT
+Buttons/START = START
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+[GBA4]
+Device = evdev/0/Microsoft X-Box 360 pad 3
+Buttons/B = EAST
+Buttons/A = SOUTH
+Buttons/Z = TR
+Buttons/SELECT = SELECT
+Buttons/START = START
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
diff --git a/incconfigs/Dolphin/GCKeyNew.ini b/incconfigs/Dolphin/GCKeyNew.ini
new file mode 100644
index 00000000..dcdb8ce3
--- /dev/null
+++ b/incconfigs/Dolphin/GCKeyNew.ini
@@ -0,0 +1,93 @@
+[GCKeyboard1]
+Device = XInput2/0/Virtual core pointer
+Keys/HOME = Home
+Keys/END = End
+Keys/PGUP = Prior
+Keys/PGDN = Next
+Keys/SCR LK = Scroll_Lock
+Keys/A = A
+Keys/B = B
+Keys/C = C
+Keys/D = D
+Keys/E = E
+Keys/F = F
+Keys/G = G
+Keys/H = H
+Keys/I = I
+Keys/J = J
+Keys/K = K
+Keys/L = L
+Keys/M = M
+Keys/N = N
+Keys/O = O
+Keys/P = P
+Keys/Q = Q
+Keys/R = R
+Keys/S = S
+Keys/T = T
+Keys/U = U
+Keys/V = V
+Keys/W = W
+Keys/X = X
+Keys/Y = Y
+Keys/Z = Z
+Keys/1 = `1`
+Keys/2 = `2`
+Keys/3 = `3`
+Keys/4 = `4`
+Keys/5 = `5`
+Keys/6 = `6`
+Keys/7 = `7`
+Keys/8 = `8`
+Keys/9 = `9`
+Keys/0 = `0`
+Keys/- = minus
+Keys/` = grave
+Keys/PRT SC = Print
+Keys/' = apostrophe
+Keys/[ = bracketleft
+Keys/EQUALS = equal
+Keys/* = KP_Multiply
+Keys/] = bracketright
+Keys/, = comma
+Keys/. = period
+Keys// = slash
+Keys/\ = backslash
+Keys/F1 = F1
+Keys/F2 = F2
+Keys/F3 = F3
+Keys/F4 = F4
+Keys/F5 = F5
+Keys/F6 = F6
+Keys/F7 = F7
+Keys/F8 = F8
+Keys/F9 = F9
+Keys/F10 = F10
+Keys/F11 = F11
+Keys/F12 = F12
+Keys/ESC = Escape
+Keys/INSERT = Insert
+Keys/DELETE = Delete
+Keys/; = semicolon
+Keys/BACKSPACE = BackSpace
+Keys/TAB = Tab
+Keys/CAPS LOCK = Caps_Lock
+Keys/L SHIFT = Shift_L
+Keys/R SHIFT = Shift_R
+Keys/L CTRL = Control_L
+Keys/R ALT = Alt_R
+Keys/L WIN = Super_L
+Keys/SPACE = space
+Keys/R WIN = Super_R
+Keys/MENU = Menu
+Keys/LEFT = Left
+Keys/DOWN = Down
+Keys/UP = Up
+Keys/RIGHT = Right
+Keys/ENTER = Return
+[GCKeyboard2]
+Device = XInput2/0/Virtual core pointer
+[GCKeyboard3]
+Device = XInput2/0/Virtual core pointer
+[GCKeyboard4]
+Device = XInput2/0/Virtual core pointer
diff --git a/incconfigs/Dolphin/GCPadNew.ini b/incconfigs/Dolphin/GCPadNew.ini
new file mode 100644
index 00000000..97dabd06
--- /dev/null
+++ b/incconfigs/Dolphin/GCPadNew.ini
@@ -0,0 +1,124 @@
+[GCPad1]
+Device = evdev/0/Microsoft X-Box 360 pad 0
+Buttons/A = SOUTH
+Buttons/B = EAST
+Buttons/X = NORTH
+Buttons/Y = WEST
+Buttons/Z = TR | TL
+Buttons/Start = START
+Main Stick/Up = `Axis 1-`
+Main Stick/Down = `Axis 1+`
+Main Stick/Left = `Axis 0-`
+Main Stick/Right = `Axis 0+`
+Main Stick/Modifier = THUMBL
+Main Stick/Modifier/Range = 50.0
+Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+C-Stick/Up = `Axis 4-`
+C-Stick/Down = `Axis 4+`
+C-Stick/Left = `Axis 3-`
+C-Stick/Right = `Axis 3+`
+C-Stick/Modifier = THUMBR
+C-Stick/Modifier/Range = 50.0
+C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+Triggers/L = `Full Axis 2+`
+Triggers/R = `Full Axis 5+`
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Triggers/L-Analog = `Full Axis 2+`
+Triggers/R-Analog = `Full Axis 5+`
+Rumble/Motor = Strong
+[GCPad2]
+Device = evdev/0/Microsoft X-Box 360 pad 1
+Buttons/A = SOUTH
+Buttons/B = EAST
+Buttons/X = NORTH
+Buttons/Y = WEST
+Buttons/Z = TR | TL
+Buttons/Start = START
+Main Stick/Up = `Axis 1-`
+Main Stick/Down = `Axis 1+`
+Main Stick/Left = `Axis 0-`
+Main Stick/Right = `Axis 0+`
+Main Stick/Modifier = THUMBL
+Main Stick/Modifier/Range = 50.0
+Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+C-Stick/Up = `Axis 4-`
+C-Stick/Down = `Axis 4+`
+C-Stick/Left = `Axis 3-`
+C-Stick/Right = `Axis 3+`
+C-Stick/Modifier = THUMBR
+C-Stick/Modifier/Range = 50.0
+C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+Triggers/L = `Full Axis 2+`
+Triggers/R = `Full Axis 5+`
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Triggers/L-Analog = `Full Axis 2+`
+Triggers/R-Analog = `Full Axis 5+`
+Rumble/Motor = Strong
+[GCPad3]
+Device = evdev/0/Microsoft X-Box 360 pad 2
+Buttons/A = SOUTH
+Buttons/B = EAST
+Buttons/X = NORTH
+Buttons/Y = WEST
+Buttons/Z = TR | TL
+Buttons/Start = START
+Main Stick/Up = `Axis 1-`
+Main Stick/Down = `Axis 1+`
+Main Stick/Left = `Axis 0-`
+Main Stick/Right = `Axis 0+`
+Main Stick/Modifier = THUMBL
+Main Stick/Modifier/Range = 50.0
+Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+C-Stick/Up = `Axis 4-`
+C-Stick/Down = `Axis 4+`
+C-Stick/Left = `Axis 3-`
+C-Stick/Right = `Axis 3+`
+C-Stick/Modifier = THUMBR
+C-Stick/Modifier/Range = 50.0
+C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+Triggers/L = `Full Axis 2+`
+Triggers/R = `Full Axis 5+`
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Triggers/L-Analog = `Full Axis 2+`
+Triggers/R-Analog = `Full Axis 5+`
+Rumble/Motor = Strong
+[GCPad4]
+Device = evdev/0/Microsoft X-Box 360 pad 3
+Buttons/A = SOUTH
+Buttons/B = EAST
+Buttons/X = NORTH
+Buttons/Y = WEST
+Buttons/Z = TR | TL
+Buttons/Start = START
+Main Stick/Up = `Axis 1-`
+Main Stick/Down = `Axis 1+`
+Main Stick/Left = `Axis 0-`
+Main Stick/Right = `Axis 0+`
+Main Stick/Modifier = THUMBL
+Main Stick/Modifier/Range = 50.0
+Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+C-Stick/Up = `Axis 4-`
+C-Stick/Down = `Axis 4+`
+C-Stick/Left = `Axis 3-`
+C-Stick/Right = `Axis 3+`
+C-Stick/Modifier = THUMBR
+C-Stick/Modifier/Range = 50.0
+C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42
+Triggers/L = `Full Axis 2+`
+Triggers/R = `Full Axis 5+`
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Triggers/L-Analog = `Full Axis 2+`
+Triggers/R-Analog = `Full Axis 5+`
+Rumble/Motor = Strong
diff --git a/incconfigs/Dolphin/GFX.ini b/incconfigs/Dolphin/GFX.ini
new file mode 100644
index 00000000..1eb1c8ff
--- /dev/null
+++ b/incconfigs/Dolphin/GFX.ini
@@ -0,0 +1,38 @@
+[Enhancements]
+ArbitraryMipmapDetection = True
+DisableCopyFilter = True
+ForceTrueColor = True
+PostProcessingShader = (off)
+[Hacks]
+BBoxEnable = False
+DeferEFBCopies = True
+EFBEmulateFormatChanges = False
+EFBScaledCopy = True
+EFBToTextureEnable = True
+SkipDuplicateXFBs = True
+XFBToTextureEnable = True
+EFBAccessEnable = True
+ImmediateXFBEnable = False
+[Settings]
+BackendMultithreading = True
+DumpBaseTextures = True
+DumpMipTextures = True
+FastDepthCalc = True
+InternalResolution = 2
+SaveTextureCacheToState = True
+ShowFPS = False
+AspectRatio = 0
+SWDrawEnd = 100000
+SWDrawStart = 0
+wideScreenHack = False
+ShaderCompilationMode = 2
+WaitForShadersBeforeStarting = True
+MSAA = 0x00000001
+SSAA = False
+CacheHiresTextures = True
+HiresTextures = False
+EnableGPUTextureDecoding = True
+ShowSpeedColors = True
+EnableMods = False
+[Hardware]
+VSync = True
diff --git a/incconfigs/Dolphin/Hotkeys.ini b/incconfigs/Dolphin/Hotkeys.ini
new file mode 100644
index 00000000..b70a917e
--- /dev/null
+++ b/incconfigs/Dolphin/Hotkeys.ini
@@ -0,0 +1,29 @@
+[Hotkeys]
+Device = XInput2/0/Virtual core pointer
+General/Change Disc = @(Ctrl+D)
+General/Toggle Pause = @(Ctrl+P)
+General/Reset = @(Ctrl+R)
+General/Take Screenshot = @(Ctrl+X)
+General/Exit = @(Ctrl+Q)
+Emulation Speed/Decrease Emulation Speed = @(Ctrl+`2`)
+Emulation Speed/Increase Emulation Speed = `Click 3` + `F3` + `F5`
+Emulation Speed/Disable Emulation Speed Limit = @(Ctrl+`0`)
+Movie/Start Recording = @(Ctrl+V)
+Graphics Toggles/Toggle Aspect Ratio = @(Ctrl+W)
+Freelook/Freelook Toggle = @(Alt+Y)
+Internal Resolution/Increase IR = @(Ctrl+U)
+Internal Resolution/Decrease IR = @(Ctrl+Y)
+Save State/Save to Selected Slot = @(Ctrl+S)
+Load State/Load from Selected Slot = @(Ctrl+A)
+Other State Hotkeys/Undo Load State = @(Ctrl+`8`)
+Other State Hotkeys/Undo Save State = @(Ctrl+`9`)
+Other State Hotkeys/Increase Selected State Slot = @(Ctrl+K)
+Other State Hotkeys/Decrease Selected State Slot = @(Ctrl+J)
+General/Toggle Fullscreen = @(Ctrl+Return)
+General/Control NetPlay Golf Mode = @(Alt+H)
+Wii/Press Sync Button = @(Alt+W)
+Wii/Connect Wii Remote 1 = @(Alt+W+`1`)
+Wii/Connect Wii Remote 2 = @(Alt+W+`2`)
+Wii/Connect Wii Remote 3 = @(Alt+W+`3`)
+Wii/Connect Wii Remote 4 = @(Alt+W+`4`)
+Wii/Connect Balance Board = @(Alt+W+`5`)
diff --git a/incconfigs/Dolphin/Logger.ini b/incconfigs/Dolphin/Logger.ini
new file mode 100644
index 00000000..9021eeae
--- /dev/null
+++ b/incconfigs/Dolphin/Logger.ini
@@ -0,0 +1,58 @@
+[Logs]
+ActionReplay = False
+AI = False
+Audio = False
+BOOT = False
+CI = False
+COMMON = False
+CONSOLE = False
+CORE = False
+CP = False
+DIO = False
+DSP = False
+DSPHLE = False
+DSPLLE = False
+DSPMails = False
+DVD = False
+EXI = False
+FileMon = False
+FRAMEDUMP = False
+GDB_STUB = False
+GP = False
+HLE = False
+Host GPU = False
+HSP = False
+IOS = False
+IOS_DI = False
+IOS_ES = False
+IOS_FS = False
+IOS_NET = False
+IOS_SD = False
+IOS_SSL = False
+IOS_STM = False
+IOS_USB = False
+IOS_WC24 = False
+IOS_WFS = False
+IOS_WIIMOTE = False
+JIT = False
+MASTER = False
+MemCard Manager = False
+MI = False
+NETPLAY = False
+OSREPORT = False
+OSREPORT_HLE = False
+PE = False
+PI = False
+PowerPC = False
+SI = False
+SP1 = False
+SYMBOLS = False
+VI = False
+Video = False
+WII_IPC = False
+Wiimote = False
+[Options]
+Verbosity = 1
+WriteToConsole = True
+WriteToFile = False
+WriteToWindow = True
diff --git a/incconfigs/Dolphin/Qt.ini b/incconfigs/Dolphin/Qt.ini
new file mode 100644
index 00000000..3188a9f0
--- /dev/null
+++ b/incconfigs/Dolphin/Qt.ini
@@ -0,0 +1,91 @@
+[breakpointwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[cheatsmanager]
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[codewidget]
+boxsplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x4\0\0\0\x85\0\0\0\x85\0\0\0\x85\0\0\0\x85\x1\xff\xff\xff\xff\x1\0\0\0\x2\0)
+codesplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\x82\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x1\0)
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[gridview]
+scale=1
+
+[jitwidget]
+asmsplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0W\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x1\0)
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+tablesplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0W\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x2\0)
+
+[logconfigwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[logging]
+font=0
+wraplines=false
+
+[logwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[mainwindow]
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf)
+state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\0\xfc\x2\0\0\0\x1\xfc\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x2\0\0\0\n\xfb\0\0\0\x6\0l\0o\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x87\0\xff\xff\xff\xfb\0\0\0\x12\0l\0o\0g\0\x63\0o\0n\0\x66\0i\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xb8\0\xff\xff\xff\xfb\0\0\0\b\0\x63\0o\0\x64\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xfd\0\xff\xff\xff\xfb\0\0\0\x12\0r\0\x65\0g\0i\0s\0t\0\x65\0r\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0]\0\xff\xff\xff\xfb\0\0\0\xe\0t\0h\0r\0\x65\0\x61\0\x64\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\f\0\xff\xff\xff\xfb\0\0\0\n\0w\0\x61\0t\0\x63\0h\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x84\0\xff\xff\xff\xfb\0\0\0\x16\0\x62\0r\0\x65\0\x61\0k\0p\0o\0i\0n\0t\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x84\0\xff\xff\xff\xfb\0\0\0\f\0m\0\x65\0m\0o\0r\0y\0\0\0\0\0\xff\xff\xff\xff\0\0\0]\0\xff\xff\xff\xfb\0\0\0\xe\0n\0\x65\0t\0w\0o\0r\0k\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x11\0\xff\xff\xff\xfb\0\0\0\x12\0j\0i\0t\0w\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xc3\0\xff\xff\xff\0\0\x3 \0\0\x2\x4\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\0\0\0\xe\0t\0o\0o\0l\0\x62\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)
+
+[memorywidget]
+addrspace_auxiliary=false
+addrspace_effective=true
+addrspace_physical=false
+bplog=true
+bpread=false
+bpreadwrite=true
+bpwrite=false
+display_type=1
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+inputcombo=1
+searchascii=true
+searchhex=false
+splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\xff\xff\xff\xff\xff\xff\xff\xff\x1\xff\xff\xff\xff\x1\0\0\0\x1\0)
+typeascii=false
+typefloat=false
+typeu16=false
+typeu32=false
+typeu8=true
+
+[netplaydialog]
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf)
+splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xa5\0\0\0\xd7\x1\xff\xff\xff\xff\x1\0\0\0\x1\0)
+
+[networkwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[registerwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[renderwidget]
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\x2\x7f\0\0\x1\xdf)
+
+[tableheader]
+state=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\x2\x1\0\0\0\0\0\0\0\0\0\0\0\xe(?\0\0\0\b\0\0\0\f\0\0\0\x64\0\0\0\r\0\0\0\x64\0\0\0\x3\0\0\0\x64\0\0\0\x5\0\0\0\x46\0\0\0\v\0\0\0\x64\0\0\0\t\0\0\0\x64\0\0\0\n\0\0\0\x64\0\0\0\b\0\0\0\x64\0\0\x3\x13\0\0\0\xe\x1\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x64\0\0\0&\0\0\0\x84\0\0\0\0\0\0\0\xe\0\0\0&\0\0\0\x1\0\0\0\x2\0\0\0\x66\0\0\0\x1\0\0\0\x2\0\0\x1\x6\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x1\x6\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0&\0\0\0\x1\0\0\0\x2\0\0\0U\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0\0\0\0\0\0)
+
+[threadwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
+
+[toolbar]
+visible=false
+
+[userstyle]
+enabled=false
+name=
+
+[watchwidget]
+floating=false
+geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d\0\0\0\0\0\0\0\0\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
diff --git a/incconfigs/Dolphin/WiimoteNew.ini b/incconfigs/Dolphin/WiimoteNew.ini
new file mode 100644
index 00000000..752d6c87
--- /dev/null
+++ b/incconfigs/Dolphin/WiimoteNew.ini
@@ -0,0 +1,349 @@
+[Wiimote1]
+Device = evdev/0/Microsoft X-Box 360 pad 0
+Source = 1
+Buttons/A = `SOUTH` | `Click 1` | `XInput2/0/Virtual core pointer:Click 1`
+Buttons/B = EAST
+Buttons/1 = WEST
+Buttons/2 = NORTH
+Buttons/- = SELECT
+Buttons/+ = START
+Buttons/Home = THUMBR
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Rumble/Motor = Strong
+Shake/X = TL
+Shake/Y = TL
+Shake/Z = TL
+Extension = Nunchuk
+Nunchuk/Stick/Up = `Axis 1-`
+Nunchuk/Stick/Down = `Axis 1+`
+Nunchuk/Stick/Left = `Axis 0-`
+Nunchuk/Stick/Right = `Axis 0+`
+Nunchuk/Buttons/C = TR
+Nunchuk/Buttons/Z = `Full Axis 5+` | `Full Axis 2+`
+Nunchuk/Shake/X = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Y = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Z = `TL`&`Full Axis 2+`
+Hotkeys/Sideways Toggle = `XInput2/0/Virtual core pointer:Alt`&`XInput2/0/Virtual core pointer:X`
+Hotkeys/Upright Toggle = `XInput2/0/Virtual core pointer:Alt_L`&`XInput2/0/Virtual core pointer:Z`
+Classic/Buttons/A = EAST
+Classic/Buttons/B = SOUTH
+Classic/Buttons/X = WEST
+Classic/Buttons/Y = NORTH
+Classic/Buttons/ZL = TL
+Classic/Buttons/ZR = TR
+Classic/Buttons/- = SELECT
+Classic/Buttons/+ = START
+Classic/Left Stick/Up = `Axis 1-`
+Classic/Left Stick/Down = `Axis 1+`
+Classic/Left Stick/Left = `Axis 0-`
+Classic/Left Stick/Right = `Axis 0+`
+Classic/Left Stick/Modifier/Range = 50.0
+Classic/Left Stick/Calibration = 100.00 101.96 107.63 112.05 110.67 111.78 105.49 101.89 100.00 101.96 108.24 112.08 112.34 109.50 107.04 101.96 100.00 101.96 106.95 114.00 115.73 117.91 108.24 101.96 100.00 101.96 108.24 106.97 109.81 109.07 108.24 101.96
+Classic/Right Stick/Up = `Axis 4-`
+Classic/Right Stick/Down = `Axis 4+`
+Classic/Right Stick/Left = `Axis 3-`
+Classic/Right Stick/Right = `Axis 3+`
+Classic/Right Stick/Modifier/Range = 50.0
+Classic/Right Stick/Calibration = 100.00 101.96 107.60 112.29 113.04 111.78 108.24 101.96 100.00 101.96 108.24 109.67 111.62 109.71 104.61 101.96 100.00 101.96 108.12 116.15 116.97 117.85 107.67 101.96 100.00 101.96 108.24 107.11 107.45 110.21 108.24 101.96
+Classic/Triggers/L = `Full Axis 2+`
+Classic/Triggers/R = `Full Axis 5+`
+Classic/Triggers/L-Analog = `Full Axis 2+`
+Classic/Triggers/R-Analog = `Full Axis 5+`
+IR/Vertical Offset = 12.0
+IR/Total Yaw = 19.0
+IR/Total Pitch = 22.0
+IR/Up = `XInput2/0/Virtual core pointer:Cursor Y-`
+IR/Down = `XInput2/0/Virtual core pointer:Cursor Y+`
+IR/Left = `XInput2/0/Virtual core pointer:Cursor X-`
+IR/Right = `XInput2/0/Virtual core pointer:Cursor X+`
+IR/Hide = THUMBL
+IR/Calibration = 100.00 101.96 108.24 112.67 116.44 114.62 108.11 101.96 100.00 101.96 108.11 113.10 115.81 113.90 108.24 101.96 100.00 101.96 108.24 114.93 115.13 115.19 108.24 101.96 100.00 101.96 108.13 112.88 112.20 110.97 108.24 101.96
+Tilt/Modifier/Range = 50.0
+IMUAccelerometer/Up = `Accel Up`
+IMUAccelerometer/Down = `Accel Down`
+IMUAccelerometer/Left = `Accel Left`
+IMUAccelerometer/Right = `Accel Right`
+IMUAccelerometer/Forward = `Accel Forward`
+IMUAccelerometer/Backward = `Accel Backward`
+IMUGyroscope/Pitch Up = `Gyro Pitch Up`
+IMUGyroscope/Pitch Down = `Gyro Pitch Down`
+IMUGyroscope/Roll Left = `Gyro Roll Left`
+IMUGyroscope/Roll Right = `Gyro Roll Right`
+IMUGyroscope/Yaw Left = `Gyro Yaw Left`
+IMUGyroscope/Yaw Right = `Gyro Yaw Right`
+IMUIR/Enabled = False
+Nunchuk/Stick/Modifier/Range = 50.0
+Nunchuk/Tilt/Modifier/Range = 50.0
+Guitar/Stick/Modifier/Range = 50.0
+Drums/Stick/Modifier/Range = 50.0
+Turntable/Stick/Modifier/Range = 50.0
+uDraw/Stylus/Modifier/Range = 50.0
+Drawsome/Stylus/Modifier/Range = 50.0
+[Wiimote2]
+Device = evdev/1/Valve Software Steam Deck Controller
+Source = 0
+BButtons/A = `SOUTH` | `Click 1` | `XInput2/1/Virtual core pointer:Click 1`
+Buttons/B = EAST
+Buttons/1 = WEST
+Buttons/2 = NORTH
+Buttons/- = SELECT
+Buttons/+ = START
+Buttons/Home = THUMBR
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Rumble/Motor = Strong
+Shake/X = TL
+Shake/Y = TL
+Shake/Z = TL
+Extension = Nunchuk
+Nunchuk/Stick/Up = `Axis 1-`
+Nunchuk/Stick/Down = `Axis 1+`
+Nunchuk/Stick/Left = `Axis 0-`
+Nunchuk/Stick/Right = `Axis 0+`
+Nunchuk/Buttons/C = TR
+Nunchuk/Buttons/Z = `Full Axis 5+` | `Full Axis 2+`
+Nunchuk/Shake/X = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Y = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Z = `TL`&`Full Axis 2+`
+Hotkeys/Sideways Toggle = `XInput2/1/Virtual core pointer:Alt`&`XInput2/1/Virtual core pointer:X`
+Hotkeys/Upright Toggle = `XInput2/1/Virtual core pointer:Alt_L`&`XInput2/1/Virtual core pointer:Z`
+Classic/Buttons/A = EAST
+Classic/Buttons/B = SOUTH
+Classic/Buttons/X = WEST
+Classic/Buttons/Y = NORTH
+Classic/Buttons/ZL = TL
+Classic/Buttons/ZR = TR
+Classic/Buttons/- = SELECT
+Classic/Buttons/+ = START
+Classic/Left Stick/Up = `Axis 1-`
+Classic/Left Stick/Down = `Axis 1+`
+Classic/Left Stick/Left = `Axis 0-`
+Classic/Left Stick/Right = `Axis 0+`
+Classic/Left Stick/Modifier/Range = 50.0
+Classic/Left Stick/Calibration = 100.00 101.96 107.63 112.05 110.67 111.78 105.49 101.89 100.00 101.96 108.24 112.08 112.34 109.50 107.04 101.96 100.00 101.96 106.95 114.00 115.73 117.91 108.24 101.96 100.00 101.96 108.24 106.97 109.81 109.07 108.24 101.96
+Classic/Right Stick/Up = `Axis 4-`
+Classic/Right Stick/Down = `Axis 4+`
+Classic/Right Stick/Left = `Axis 3-`
+Classic/Right Stick/Right = `Axis 3+`
+Classic/Right Stick/Modifier/Range = 50.0
+Classic/Right Stick/Calibration = 100.00 101.96 107.60 112.29 113.04 111.78 108.24 101.96 100.00 101.96 108.24 109.67 111.62 109.71 104.61 101.96 100.00 101.96 108.12 116.15 116.97 117.85 107.67 101.96 100.00 101.96 108.24 107.11 107.45 110.21 108.24 101.96
+Classic/Triggers/L = `Full Axis 2+`
+Classic/Triggers/R = `Full Axis 5+`
+Classic/Triggers/L-Analog = `Full Axis 2+`
+Classic/Triggers/R-Analog = `Full Axis 5+`
+IR/Vertical Offset = 12.0
+IR/Total Yaw = 19.0
+IR/Total Pitch = 22.0
+IR/Up = `XInput2/1/Virtual core pointer:Cursor Y-`
+IR/Down = `XInput2/1/Virtual core pointer:Cursor Y+`
+IR/Left = `XInput2/1/Virtual core pointer:Cursor X-`
+IR/Right = `XInput2/1/Virtual core pointer:Cursor X+`
+IR/Hide = THUMBL
+IR/Calibration = 100.00 101.96 108.24 112.67 116.44 114.62 108.11 101.96 100.00 101.96 108.11 113.10 115.81 113.90 108.24 101.96 100.00 101.96 108.24 114.93 115.13 115.19 108.24 101.96 100.00 101.96 108.13 112.88 112.20 110.97 108.24 101.96
+Tilt/Modifier/Range = 50.0
+IMUAccelerometer/Up = `Accel Up`
+IMUAccelerometer/Down = `Accel Down`
+IMUAccelerometer/Left = `Accel Left`
+IMUAccelerometer/Right = `Accel Right`
+IMUAccelerometer/Forward = `Accel Forward`
+IMUAccelerometer/Backward = `Accel Backward`
+IMUGyroscope/Pitch Up = `Gyro Pitch Up`
+IMUGyroscope/Pitch Down = `Gyro Pitch Down`
+IMUGyroscope/Roll Left = `Gyro Roll Left`
+IMUGyroscope/Roll Right = `Gyro Roll Right`
+IMUGyroscope/Yaw Left = `Gyro Yaw Left`
+IMUGyroscope/Yaw Right = `Gyro Yaw Right`
+IMUIR/Enabled = False
+Nunchuk/Stick/Modifier/Range = 50.0
+Nunchuk/Tilt/Modifier/Range = 50.0
+Guitar/Stick/Modifier/Range = 50.0
+Drums/Stick/Modifier/Range = 50.0
+Turntable/Stick/Modifier/Range = 50.0
+uDraw/Stylus/Modifier/Range = 50.0
+Drawsome/Stylus/Modifier/Range = 50.0
+[Wiimote3]
+Device = evdev/0/Microsoft X-Box 360 pad 2
+Source = 0
+Buttons/A = `SOUTH` | `Click 1` | `XInput2/2/Virtual core pointer:Click 1`
+Buttons/B = EAST
+Buttons/1 = WEST
+Buttons/2 = NORTH
+Buttons/- = SELECT
+Buttons/+ = START
+Buttons/Home = THUMBR
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Rumble/Motor = Strong
+Shake/X = TL
+Shake/Y = TL
+Shake/Z = TL
+Extension = Nunchuk
+Nunchuk/Stick/Up = `Axis 1-`
+Nunchuk/Stick/Down = `Axis 1+`
+Nunchuk/Stick/Left = `Axis 0-`
+Nunchuk/Stick/Right = `Axis 0+`
+Nunchuk/Buttons/C = TR
+Nunchuk/Buttons/Z = `Full Axis 5+` | `Full Axis 2+`
+Nunchuk/Shake/X = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Y = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Z = `TL`&`Full Axis 2+`
+Hotkeys/Sideways Toggle = `XInput2/2/Virtual core pointer:Alt`&`XInput2/2/Virtual core pointer:X`
+Hotkeys/Upright Toggle = `XInput2/2/Virtual core pointer:Alt_L`&`XInput2/2/Virtual core pointer:Z`
+Classic/Buttons/A = EAST
+Classic/Buttons/B = SOUTH
+Classic/Buttons/X = WEST
+Classic/Buttons/Y = NORTH
+Classic/Buttons/ZL = TL
+Classic/Buttons/ZR = TR
+Classic/Buttons/- = SELECT
+Classic/Buttons/+ = START
+Classic/Left Stick/Up = `Axis 1-`
+Classic/Left Stick/Down = `Axis 1+`
+Classic/Left Stick/Left = `Axis 0-`
+Classic/Left Stick/Right = `Axis 0+`
+Classic/Left Stick/Modifier/Range = 50.0
+Classic/Left Stick/Calibration = 100.00 101.96 107.63 112.05 110.67 111.78 105.49 101.89 100.00 101.96 108.24 112.08 112.34 109.50 107.04 101.96 100.00 101.96 106.95 114.00 115.73 117.91 108.24 101.96 100.00 101.96 108.24 106.97 109.81 109.07 108.24 101.96
+Classic/Right Stick/Up = `Axis 4-`
+Classic/Right Stick/Down = `Axis 4+`
+Classic/Right Stick/Left = `Axis 3-`
+Classic/Right Stick/Right = `Axis 3+`
+Classic/Right Stick/Modifier/Range = 50.0
+Classic/Right Stick/Calibration = 100.00 101.96 107.60 112.29 113.04 111.78 108.24 101.96 100.00 101.96 108.24 109.67 111.62 109.71 104.61 101.96 100.00 101.96 108.12 116.15 116.97 117.85 107.67 101.96 100.00 101.96 108.24 107.11 107.45 110.21 108.24 101.96
+Classic/Triggers/L = `Full Axis 2+`
+Classic/Triggers/R = `Full Axis 5+`
+Classic/Triggers/L-Analog = `Full Axis 2+`
+Classic/Triggers/R-Analog = `Full Axis 5+`
+IR/Vertical Offset = 12.0
+IR/Total Yaw = 19.0
+IR/Total Pitch = 22.0
+IR/Up = `XInput2/2/Virtual core pointer:Cursor Y-`
+IR/Down = `XInput2/2/Virtual core pointer:Cursor Y+`
+IR/Left = `XInput2/2/Virtual core pointer:Cursor X-`
+IR/Right = `XInput2/2/Virtual core pointer:Cursor X+`
+IR/Hide = THUMBL
+IR/Calibration = 100.00 101.96 108.24 112.67 116.44 114.62 108.11 101.96 100.00 101.96 108.11 113.10 115.81 113.90 108.24 101.96 100.00 101.96 108.24 114.93 115.13 115.19 108.24 101.96 100.00 101.96 108.13 112.88 112.20 110.97 108.24 101.96
+Tilt/Modifier/Range = 50.0
+IMUAccelerometer/Up = `Accel Up`
+IMUAccelerometer/Down = `Accel Down`
+IMUAccelerometer/Left = `Accel Left`
+IMUAccelerometer/Right = `Accel Right`
+IMUAccelerometer/Forward = `Accel Forward`
+IMUAccelerometer/Backward = `Accel Backward`
+IMUGyroscope/Pitch Up = `Gyro Pitch Up`
+IMUGyroscope/Pitch Down = `Gyro Pitch Down`
+IMUGyroscope/Roll Left = `Gyro Roll Left`
+IMUGyroscope/Roll Right = `Gyro Roll Right`
+IMUGyroscope/Yaw Left = `Gyro Yaw Left`
+IMUGyroscope/Yaw Right = `Gyro Yaw Right`
+IMUIR/Enabled = False
+Nunchuk/Stick/Modifier/Range = 50.0
+Nunchuk/Tilt/Modifier/Range = 50.0
+Guitar/Stick/Modifier/Range = 50.0
+Drums/Stick/Modifier/Range = 50.0
+Turntable/Stick/Modifier/Range = 50.0
+uDraw/Stylus/Modifier/Range = 50.0
+Drawsome/Stylus/Modifier/Range = 50.0
+[Wiimote4]
+Device = evdev/0/Microsoft X-Box 360 pad 4
+Source = 0
+Buttons/A = `SOUTH` | `Click 1` | `XInput2/3/Virtual core pointer:Click 1`
+Buttons/B = EAST
+Buttons/1 = WEST
+Buttons/2 = NORTH
+Buttons/- = SELECT
+Buttons/+ = START
+Buttons/Home = THUMBR
+D-Pad/Up = `Axis 7-`
+D-Pad/Down = `Axis 7+`
+D-Pad/Left = `Axis 6-`
+D-Pad/Right = `Axis 6+`
+Rumble/Motor = Strong
+Shake/X = TL
+Shake/Y = TL
+Shake/Z = TL
+Extension = Nunchuk
+Nunchuk/Stick/Up = `Axis 1-`
+Nunchuk/Stick/Down = `Axis 1+`
+Nunchuk/Stick/Left = `Axis 0-`
+Nunchuk/Stick/Right = `Axis 0+`
+Nunchuk/Buttons/C = TR
+Nunchuk/Buttons/Z = `Full Axis 5+` | `Full Axis 2+`
+Nunchuk/Shake/X = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Y = `TL`&`Full Axis 2+`
+Nunchuk/Shake/Z = `TL`&`Full Axis 2+`
+Hotkeys/Sideways Toggle = `XInput2/3/Virtual core pointer:Alt`&`XInput2/2/Virtual core pointer:X`
+Hotkeys/Upright Toggle = `XInput2/3/Virtual core pointer:Alt_L`&`XInput2/2/Virtual core pointer:Z`
+Classic/Buttons/A = EAST
+Classic/Buttons/B = SOUTH
+Classic/Buttons/X = WEST
+Classic/Buttons/Y = NORTH
+Classic/Buttons/ZL = TL
+Classic/Buttons/ZR = TR
+Classic/Buttons/- = SELECT
+Classic/Buttons/+ = START
+Classic/Left Stick/Up = `Axis 1-`
+Classic/Left Stick/Down = `Axis 1+`
+Classic/Left Stick/Left = `Axis 0-`
+Classic/Left Stick/Right = `Axis 0+`
+Classic/Left Stick/Modifier/Range = 50.0
+Classic/Left Stick/Calibration = 100.00 101.96 107.63 112.05 110.67 111.78 105.49 101.89 100.00 101.96 108.24 112.08 112.34 109.50 107.04 101.96 100.00 101.96 106.95 114.00 115.73 117.91 108.24 101.96 100.00 101.96 108.24 106.97 109.81 109.07 108.24 101.96
+Classic/Right Stick/Up = `Axis 4-`
+Classic/Right Stick/Down = `Axis 4+`
+Classic/Right Stick/Left = `Axis 3-`
+Classic/Right Stick/Right = `Axis 3+`
+Classic/Right Stick/Modifier/Range = 50.0
+Classic/Right Stick/Calibration = 100.00 101.96 107.60 112.29 113.04 111.78 108.24 101.96 100.00 101.96 108.24 109.67 111.62 109.71 104.61 101.96 100.00 101.96 108.12 116.15 116.97 117.85 107.67 101.96 100.00 101.96 108.24 107.11 107.45 110.21 108.24 101.96
+Classic/Triggers/L = `Full Axis 2+`
+Classic/Triggers/R = `Full Axis 5+`
+Classic/Triggers/L-Analog = `Full Axis 2+`
+Classic/Triggers/R-Analog = `Full Axis 5+`
+IR/Vertical Offset = 12.0
+IR/Total Yaw = 19.0
+IR/Total Pitch = 22.0
+IR/Up = `XInput2/3/Virtual core pointer:Cursor Y-`
+IR/Down = `XInput2/3/Virtual core pointer:Cursor Y+`
+IR/Left = `XInput2/3/Virtual core pointer:Cursor X-`
+IR/Right = `XInput2/3/Virtual core pointer:Cursor X+`
+IR/Hide = THUMBL
+IR/Calibration = 100.00 101.96 108.24 112.67 116.44 114.62 108.11 101.96 100.00 101.96 108.11 113.10 115.81 113.90 108.24 101.96 100.00 101.96 108.24 114.93 115.13 115.19 108.24 101.96 100.00 101.96 108.13 112.88 112.20 110.97 108.24 101.96
+Tilt/Modifier/Range = 50.0
+IMUAccelerometer/Up = `Accel Up`
+IMUAccelerometer/Down = `Accel Down`
+IMUAccelerometer/Left = `Accel Left`
+IMUAccelerometer/Right = `Accel Right`
+IMUAccelerometer/Forward = `Accel Forward`
+IMUAccelerometer/Backward = `Accel Backward`
+IMUGyroscope/Pitch Up = `Gyro Pitch Up`
+IMUGyroscope/Pitch Down = `Gyro Pitch Down`
+IMUGyroscope/Roll Left = `Gyro Roll Left`
+IMUGyroscope/Roll Right = `Gyro Roll Right`
+IMUGyroscope/Yaw Left = `Gyro Yaw Left`
+IMUGyroscope/Yaw Right = `Gyro Yaw Right`
+IMUIR/Enabled = False
+Nunchuk/Stick/Modifier/Range = 50.0
+Nunchuk/Tilt/Modifier/Range = 50.0
+Guitar/Stick/Modifier/Range = 50.0
+Drums/Stick/Modifier/Range = 50.0
+Turntable/Stick/Modifier/Range = 50.0
+uDraw/Stylus/Modifier/Range = 50.0
+Drawsome/Stylus/Modifier/Range = 50.0
+[BalanceBoard]
+Device = XInput2/0/Virtual core pointer
+Source = 0
+Tilt/Modifier/Range = 50.0
+Nunchuk/Stick/Modifier/Range = 50.0
+Nunchuk/Tilt/Modifier/Range = 50.0
+Classic/Left Stick/Modifier/Range = 50.0
+Classic/Right Stick/Modifier/Range = 50.0
+Guitar/Stick/Modifier/Range = 50.0
+Drums/Stick/Modifier/Range = 50.0
+Turntable/Stick/Modifier/Range = 50.0
+uDraw/Stylus/Modifier/Range = 50.0
+Drawsome/Stylus/Modifier/Range = 50.0
diff --git a/incconfigs/Duckstation/settings.ini b/incconfigs/Duckstation/settings.ini
new file mode 100644
index 00000000..00a53dd3
--- /dev/null
+++ b/incconfigs/Duckstation/settings.ini
@@ -0,0 +1,371 @@
+[Main]
+SettingsVersion = 3
+EmulationSpeed = 1.000000
+FastForwardSpeed = 0.000000
+TurboSpeed = 0.000000
+SyncToHostRefreshRate = false
+IncreaseTimerResolution = true
+InhibitScreensaver = true
+StartPaused = false
+StartFullscreen = false
+PauseOnFocusLoss = true
+PauseOnMenu = true
+SaveStateOnExit = false
+ConfirmPowerOff = false
+LoadDevicesFromSaveStates = true
+ApplyGameSettings = true
+AutoLoadCheats = true
+DisableAllEnhancements = false
+RewindEnable = false
+RewindFrequency = 10.000000
+RewindSaveSlots = 10
+RunaheadFrameCount = 0.000000
+ControllerBackend = SDL
+ControllerEnhancedMode = false
+EnableDiscordPresence = false
+
+
+[Console]
+Region = Auto
+Enable8MBRAM = false
+
+
+[CPU]
+ExecutionMode = Recompiler
+OverclockNumerator = 1
+OverclockDenominator = 1
+OverclockEnable = false
+RecompilerMemoryExceptions = false
+RecompilerBlockLinking = true
+ICache = false
+FastmemMode = true
+
+
+[GPU]
+Renderer = Vulkan
+Adapter = AMD RADV VANGOGH
+ResolutionScale = 3
+Multisamples = 1
+UseDebugDevice = false
+UseSoftwareRendererForReadbacks = false
+UseSoftwareRendererForReadbacks = false
+PerSampleShading = false
+UseThread = true
+ThreadedPresentation = true
+TrueColor = true
+ScaledDithering = true
+TextureFilter = Nearest
+DownsampleMode = Disabled
+DisableInterlacing = true
+ForceNTSCTimings = false
+WidescreenHack = false
+ChromaSmoothing24Bit = false
+PGXPEnable = false
+PGXPCulling = true
+PGXPTextureCorrection = true
+PGXPVertexCache = false
+PGXPCPU = false
+PGXPPreserveProjFP = false
+PGXPTolerance = -1.000000
+PGXPDepthBuffer = false
+PGXPDepthClearThreshold = 300.000000
+
+
+[Display]
+CropMode = Overscan
+ActiveStartOffset = 0
+ActiveEndOffset = 0
+LineStartOffset = 0
+LineEndOffset = 0
+AspectRatio = Auto (Game Native)
+CustomAspectRatioNumerator = 4
+Force4_3For24Bit = false
+LinearFiltering = true
+IntegerScaling = false
+Stretch = false
+PostProcessing = false
+ShowOSDMessages = true
+ShowFPS = false
+ShowVPS = false
+ShowSpeed = false
+ShowResolution = false
+ShowCPU = false
+ShowGPU = false
+ShowStatusIndicators = true
+ShowInputs = false
+ShowEnhancements = false
+Fullscreen = false
+VSync = true
+DisplayAllFrames = false
+PostProcessChain =
+MaxFPS = 0.000000
+InternalResolutionScreenshots = false
+
+
+[CDROM]
+ReadaheadSectors = 8
+RegionCheck = false
+LoadImageToRAM = false
+LoadImagePatches = false
+MuteCDAudio = false
+ReadSpeedup = 1
+SeekSpeedup = 1
+
+
+[Audio]
+Backend = Cubeb
+OutputVolume = 100
+FastForwardVolume = 100
+BufferSize = 2048
+Resampling = true
+OutputMuted = 0
+Sync = true
+DumpOnBoot = false
+
+
+[BIOS]
+SearchDirectory = /run/media/mmcblk0p1/retrodeck/bios
+PathNTSCU =
+PathNTSCJ =
+PathPAL =
+PatchTTYEnable = false
+PatchFastBoot = false
+
+
+[MemoryCards]
+Card1Type = PerGameTitle
+Card2Type = None
+UsePlaylistTitle = true
+Card1Path = /run/media/mmcblk0p1/retrodeck/saves/psx/duckstation/memcards/shared_card_1.mcd
+Card2Path = /run/media/mmcblk0p1/retrodeck/saves/psx/duckstation/memcards/shared_card_2.mcd
+Directory = /run/media/mmcblk0p1/retrodeck/saves/psx/duckstation/memcards
+
+
+[ControllerPorts]
+ControllerSettingsMigrated = true
+MultitapMode = Disabled
+PointerXScale = 8
+PointerYScale = 8
+PointerXInvert = false
+PointerYInvert = false
+
+
+[Logging]
+LogLevel = Info
+LogFilter =
+LogToConsole = true
+LogToDebug = false
+LogToWindow = false
+LogToFile = false
+
+
+[Debug]
+ShowVRAM = false
+DumpCPUToVRAMCopies = false
+DumpVRAMToCPUCopies = false
+ShowGPUState = false
+ShowCDROMState = false
+ShowSPUState = false
+ShowTimersState = false
+ShowMDECState = false
+ShowDMAState = false
+
+
+[TextureReplacements]
+EnableVRAMWriteReplacements = false
+PreloadTextures = false
+DumpVRAMWrites = false
+DumpVRAMWriteForceAlphaChannel = true
+DumpVRAMWriteWidthThreshold = 128
+DumpVRAMWriteHeightThreshold = 128
+
+
+[Hacks]
+DMAMaxSliceTicks = 1000
+DMAHaltTicks = 100
+GPUFIFOSize = 16
+GPUMaxRunAhead = 128
+
+
+[Cheevos]
+Enabled = false
+TestMode = false
+UnofficialTestMode = false
+UseFirstDiscFromPlaylist = true
+RichPresence = true
+ChallengeMode = false
+Leaderboards = true
+Notifications = true
+SoundEffects = true
+PrimedIndicators = true
+Username =
+Token =
+LoginTimestamp =
+
+
+[UI]
+MainWindowGeometry = AdnQywADAAAAAAhwAAABXwAAC48AAAQKAAAIcAAAAXwAAAuPAAAECgAAAAAAAAAACgAAAAhwAAABfAAAC48AAAQK
+MainWindowState = AAAA/wAAAAD9AAAAAAAAAyAAAAI9AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAHQAbwBvAGwAQgBhAHIBAAAAAP////8AAAAAAAAAAA==
+
+
+[GameList]
+RecursivePaths = /run/media/mmcblk0p1/retrodeck/roms/psx
+
+
+[InputSources]
+SDL = true
+SDLControllerEnhancedMode = false
+XInput = false
+RawInput = false
+
+
+[Pad1]
+Type = AnalogController
+Up = SDL-0/DPadUp
+Right = SDL-0/DPadRight
+Down = SDL-0/DPadDown
+Left = SDL-0/DPadLeft
+Triangle = SDL-0/Y
+Circle = SDL-0/B
+Cross = SDL-0/A
+Square = SDL-0/X
+Select = SDL-0/Back
+Start = SDL-0/Start
+L1 = SDL-0/LeftShoulder
+R1 = SDL-0/RightShoulder
+L2 = SDL-0/+LeftTrigger
+R2 = SDL-0/+RightTrigger
+Analog = Keyboard/F6
+L3 = SDL-0/LeftStick
+R3 = SDL-0/RightStick
+LLeft = SDL-0/-LeftX
+LRight = SDL-0/+LeftX
+LDown = SDL-0/+LeftY
+LUp = SDL-0/-LeftY
+RLeft = SDL-0/-RightX
+RRight = SDL-0/+RightX
+RDown = SDL-0/+RightY
+RUp = SDL-0/-RightY
+SmallMotor = SDL-0/SmallMotor
+LargeMotor = SDL-0/LargeMotor
+
+
+[Pad2]
+Type = AnalogController
+Up = SDL-1/DPadUp
+Right = SDL-1/DPadRight
+Down = SDL-1/DPadDown
+Left = SDL-1/DPadLeft
+Triangle = SDL-1/Y
+Circle = SDL-1/B
+Cross = SDL-1/A
+Square = SDL-1/X
+Select = SDL-1/Back
+Start = SDL-1/Start
+Analog = SDL-1/Guide
+L1 = SDL-1/LeftShoulder
+R1 = SDL-1/RightShoulder
+L2 = SDL-1/+LeftTrigger
+R2 = SDL-1/+RightTrigger
+L3 = SDL-1/LeftStick
+R3 = SDL-1/RightStick
+LLeft = SDL-1/-LeftX
+LRight = SDL-1/+LeftX
+LDown = SDL-1/+LeftY
+LUp = SDL-1/-LeftY
+RLeft = SDL-1/-RightX
+RRight = SDL-1/+RightX
+RDown = SDL-1/+RightY
+RUp = SDL-1/-RightY
+SmallMotor = SDL-1/SmallMotor
+LargeMotor = SDL-1/LargeMotor
+
+
+[Pad3]
+Type = AnalogController
+Up = SDL-2/DPadUp
+Right = SDL-2/DPadRight
+Down = SDL-2/DPadDown
+Left = SDL-2/DPadLeft
+Triangle = SDL-2/Y
+Circle = SDL-2/B
+Cross = SDL-2/A
+Square = SDL-2/X
+Select = SDL-2/Back
+Start = SDL-2/Start
+Analog = SDL-2/Guide
+L1 = SDL-2/LeftShoulder
+R1 = SDL-2/RightShoulder
+L2 = SDL-2/+LeftTrigger
+R2 = SDL-2/+RightTrigger
+L3 = SDL-2/LeftStick
+R3 = SDL-2/RightStick
+LLeft = SDL-2/-LeftX
+LRight = SDL-2/+LeftX
+LDown = SDL-2/+LeftY
+LUp = SDL-2/-LeftY
+RLeft = SDL-2/-RightX
+RRight = SDL-2/+RightX
+RDown = SDL-2/+RightY
+RUp = SDL-2/-RightY
+SmallMotor = SDL-2/SmallMotor
+LargeMotor = SDL-2/LargeMotor
+
+
+[Pad4]
+Type = AnalogController
+Up = SDL-3/DPadUp
+Right = SDL-3/DPadRight
+Down = SDL-3/DPadDown
+Left = SDL-3/DPadLeft
+Triangle = SDL-3/Y
+Circle = SDL-3/B
+Cross = SDL-3/A
+Square = SDL-3/X
+Select = SDL-3/Back
+Start = SDL-3/Start
+Analog = SDL-3/Guide
+L1 = SDL-3/LeftShoulder
+R1 = SDL-3/RightShoulder
+L2 = SDL-3/+LeftTrigger
+R2 = SDL-3/+RightTrigger
+L3 = SDL-3/LeftStick
+R3 = SDL-3/RightStick
+LLeft = SDL-3/-LeftX
+LRight = SDL-3/+LeftX
+LDown = SDL-3/+LeftY
+LUp = SDL-3/-LeftY
+RLeft = SDL-3/-RightX
+RRight = SDL-3/+RightX
+RDown = SDL-3/+RightY
+RUp = SDL-3/-RightY
+SmallMotor = SDL-3/SmallMotor
+LargeMotor = SDL-3/LargeMotor
+
+
+[Pad5]
+Type = None
+
+
+[Pad6]
+Type = None
+
+
+[Pad7]
+Type = None
+
+
+[Pad8]
+Type = None
+
+
+[Hotkeys]
+FastForward = Keyboard/Tab
+TogglePause = Keyboard/Space
+Screenshot = Keyboard/F10
+ToggleFullscreen = Keyboard/F11
+OpenPauseMenu = Keyboard/Escape
+LoadSelectedSaveState = Keyboard/F1
+SaveSelectedSaveState = Keyboard/F2
+SelectPreviousSaveStateSlot = Keyboard/F3
+SelectNextSaveStateSlot = Keyboard/F4
diff --git a/incconfigs/PCSX2/GS.ini b/incconfigs/PCSX2/GS.ini
new file mode 100644
index 00000000..59ad1298
--- /dev/null
+++ b/incconfigs/PCSX2/GS.ini
@@ -0,0 +1,96 @@
+CaptureHeight = 480
+CaptureWidth = 640
+DisableDualSourceBlend = 0
+DisableFramebufferFetch = 0
+DumpReplaceableMipmaps = 0
+DumpReplaceableTextures = 0
+DumpTexturesWithFMVActive = 0
+HWDisableReadbacks = 0
+IntegerScaling = 0
+LoadTextureReplacements = 0
+LoadTextureReplacementsAsync = 1
+MaxAnisotropy = 0
+NTSC_Saturation = 1
+OsdScale = 250
+OsdShowCPU = 0
+OsdShowFPS = 0
+OsdShowGPU = 0
+OsdShowGSStats = 0
+OsdShowIndicators = 1
+OsdShowMessages = 1
+OsdShowResolution = 0
+OsdShowSpeed = 0
+OverrideGeometryShaders = -1
+OverrideTextureBarriers = -1
+PrecacheTextureReplacements = 0
+Renderer = 14
+ShadeBoost = 0
+ShadeBoost_Brightness = 50
+ShadeBoost_Contrast = 50
+ShadeBoost_Saturation = 50
+TVShader = 0
+ThreadedPresentation = 0
+UseBlitSwapChain = 0
+UseDebugDevice = 0
+UserHacks = 1
+UserHacks_AutoFlush = 0
+UserHacks_CPU_FB_Conversion = 0
+UserHacks_DisableDepthSupport = 0
+UserHacks_DisablePartialInvalidation = 1
+UserHacks_Disable_Safe_Features = 0
+UserHacks_HalfPixelOffset = 1
+UserHacks_Half_Bottom_Override = 1
+UserHacks_SkipDraw = 0
+UserHacks_SkipDraw_Offset = 0
+UserHacks_TCOffsetX = 0
+UserHacks_TCOffsetY = 0
+UserHacks_TextureInsideRt = 0
+UserHacks_TriFilter = 0
+UserHacks_WildHack = 0
+UserHacks_align_sprite_X = 1
+UserHacks_merge_pp_sprite = 0
+UserHacks_round_sprite_offset = 2
+aa1 = 1
+accurate_blending_unit = 1
+accurate_date = 1
+autoflush_sw = 1
+capture_enabled = 0
+capture_out_dir = /tmp/GS_Capture
+capture_threads = 4
+conservative_framebuffer = 1
+crc_hack_level = 4
+disable_hw_gl_draw = 0
+disable_shader_cache = 0
+dithering_ps2 = 2
+dump = 0
+extrathreads = 2
+extrathreads_height = 4
+filter = 2
+fxaa = 0
+interlace = 7
+linear_present = 1
+mipmap = 1
+mipmap_hw = -1
+override_GL_ARB_clear_texture = -1
+override_GL_ARB_direct_state_access = -1
+override_GL_ARB_gpu_shader5 = -1
+override_GL_ARB_shader_image_load_store = -1
+override_GL_ARB_sparse_texture = -1
+override_GL_ARB_sparse_texture2 = -1
+override_GL_ARB_texture_barrier = -1
+override_geometry_shader = -1
+paltex = 0
+png_compression_level = 1
+preload_frame_with_gs_data = 0
+save = 0
+savef = 0
+savel = 5000
+saven = 0
+savet = 0
+savez = 0
+shaderfx = 0
+shaderfx_conf = shaders/GS_FX_Settings.ini
+shaderfx_glsl = shaders/GS.fx
+texture_preloading = 0
+upscale_multiplier = 2
+wrap_gs_mem = 0
diff --git a/incconfigs/Ryujinx/Config.json b/incconfigs/Ryujinx/Config.json
new file mode 100644
index 00000000..12ab1e86
--- /dev/null
+++ b/incconfigs/Ryujinx/Config.json
@@ -0,0 +1,352 @@
+{
+ "version": 49,
+ "enable_file_log": true,
+ "backend_threading": "Auto",
+ "res_scale": 1,
+ "res_scale_custom": 1,
+ "max_anisotropy": -1,
+ "aspect_ratio": "Fixed16x9",
+ "anti_aliasing": "None",
+ "scaling_filter": "Bilinear",
+ "scaling_filter_level": 80,
+ "graphics_shaders_dump_path": "",
+ "logging_enable_debug": false,
+ "logging_enable_stub": true,
+ "logging_enable_info": true,
+ "logging_enable_warn": true,
+ "logging_enable_error": true,
+ "logging_enable_trace": false,
+ "logging_enable_guest": true,
+ "logging_enable_fs_access_log": false,
+ "logging_filtered_classes": [],
+ "logging_graphics_debug_level": "None",
+ "system_language": "AmericanEnglish",
+ "system_region": "USA",
+ "system_time_zone": "UTC",
+ "system_time_offset": 0,
+ "docked_mode": true,
+ "enable_discord_integration": true,
+ "check_updates_on_start": false,
+ "show_confirm_exit": true,
+ "hide_cursor": 1,
+ "enable_vsync": true,
+ "enable_shader_cache": true,
+ "enable_texture_recompression": false,
+ "enable_macro_hle": true,
+ "enable_color_space_passthrough": false,
+ "enable_ptc": true,
+ "enable_internet_access": false,
+ "enable_fs_integrity_checks": true,
+ "fs_global_access_log_mode": 0,
+ "audio_backend": "SDL2",
+ "audio_volume": 1,
+ "memory_manager_mode": "HostMappedUnsafe",
+ "expand_ram": false,
+ "ignore_missing_services": false,
+ "gui_columns": {
+ "fav_column": true,
+ "icon_column": true,
+ "app_column": true,
+ "dev_column": true,
+ "version_column": true,
+ "time_played_column": true,
+ "last_played_column": true,
+ "file_ext_column": true,
+ "file_size_column": true,
+ "path_column": true
+ },
+ "column_sort": {
+ "sort_column_id": 0,
+ "sort_ascending": false
+ },
+ "game_dirs": [],
+ "shown_file_types": {
+ "nsp": true,
+ "pfs0": true,
+ "xci": true,
+ "nca": true,
+ "nro": true,
+ "nso": true
+ },
+ "window_startup": {
+ "window_size_width": 1280,
+ "window_size_height": 760,
+ "window_position_x": 0,
+ "window_position_y": 0,
+ "window_maximized": false
+ },
+ "language_code": "en_US",
+ "enable_custom_theme": false,
+ "custom_theme_path": "",
+ "base_style": "Dark",
+ "game_list_view_mode": 0,
+ "show_names": true,
+ "grid_size": 2,
+ "application_sort": 0,
+ "is_ascending_order": true,
+ "start_fullscreen": false,
+ "show_console": true,
+ "enable_keyboard": false,
+ "enable_mouse": false,
+ "hotkeys": {
+ "toggle_vsync": "",
+ "screenshot": "",
+ "show_ui": "ESC",
+ "pause": "",
+ "toggle_mute": "",
+ "res_scale_up": "Unbound",
+ "res_scale_down": "Unbound",
+ "volume_up": "Unbound",
+ "volume_down": "Unbound"
+ },
+ "keyboard_config": [],
+ "controller_config": [],
+ "input_config": [
+ {
+ "left_joycon_stick": {
+ "joystick": "Left",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "LeftStick"
+ },
+ "right_joycon_stick": {
+ "joystick": "Right",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "RightStick"
+ },
+ "deadzone_left": 0,
+ "deadzone_right": 0,
+ "range_left": 1.2,
+ "range_right": 1,
+ "trigger_threshold": 0,
+ "motion": {
+ "slot": 0,
+ "alt_slot": 0,
+ "mirror_input": false,
+ "dsu_server_host": "127.0.0.1",
+ "dsu_server_port": 26760,
+ "motion_backend": "CemuHook",
+ "sensitivity": 100,
+ "gyro_deadzone": 1,
+ "enable_motion": true
+ },
+ "rumble": {
+ "strong_rumble": 2.1,
+ "weak_rumble": 1,
+ "enable_rumble": true
+ },
+ "left_joycon": {
+ "button_minus": "Minus",
+ "button_l": "LeftShoulder",
+ "button_zl": "LeftTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "dpad_up": "DpadUp",
+ "dpad_down": "DpadDown",
+ "dpad_left": "DpadLeft",
+ "dpad_right": "DpadRight"
+ },
+ "right_joycon": {
+ "button_plus": "Plus",
+ "button_r": "RightShoulder",
+ "button_zr": "RightTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "button_x": "X",
+ "button_b": "B",
+ "button_y": "Y",
+ "button_a": "A"
+ },
+ "version": 1,
+ "backend": "GamepadSDL2",
+ "id": "0-00000003-28de-0000-ff11-000001000000",
+ "controller_type": "JoyconPair",
+ "player_index": "Player1"
+ },
+ {
+ "left_joycon_stick": {
+ "joystick": "Left",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "LeftStick"
+ },
+ "right_joycon_stick": {
+ "joystick": "Right",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "RightStick"
+ },
+ "deadzone_left": 0,
+ "deadzone_right": 0,
+ "range_left": 1.2,
+ "range_right": 1,
+ "trigger_threshold": 0,
+ "motion": {
+ "motion_backend": "GamepadDriver",
+ "sensitivity": 100,
+ "gyro_deadzone": 1,
+ "enable_motion": false
+ },
+ "rumble": {
+ "strong_rumble": 1,
+ "weak_rumble": 1,
+ "enable_rumble": true
+ },
+ "left_joycon": {
+ "button_minus": "Minus",
+ "button_l": "LeftShoulder",
+ "button_zl": "LeftTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "dpad_up": "DpadUp",
+ "dpad_down": "DpadDown",
+ "dpad_left": "DpadLeft",
+ "dpad_right": "DpadRight"
+ },
+ "right_joycon": {
+ "button_plus": "Plus",
+ "button_r": "RightShoulder",
+ "button_zr": "RightTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "button_x": "X",
+ "button_b": "B",
+ "button_y": "Y",
+ "button_a": "A"
+ },
+ "version": 1,
+ "backend": "GamepadSDL2",
+ "id": "1-00000003-28de-0000-ff11-000001000000",
+ "controller_type": "ProController",
+ "player_index": "Player2"
+ },
+ {
+ "left_joycon_stick": {
+ "joystick": "Left",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "LeftStick"
+ },
+ "right_joycon_stick": {
+ "joystick": "Right",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "RightStick"
+ },
+ "deadzone_left": 0,
+ "deadzone_right": 0,
+ "range_left": 1.2,
+ "range_right": 1,
+ "trigger_threshold": 0,
+ "motion": {
+ "motion_backend": "GamepadDriver",
+ "sensitivity": 100,
+ "gyro_deadzone": 1,
+ "enable_motion": false
+ },
+ "rumble": {
+ "strong_rumble": 1,
+ "weak_rumble": 1,
+ "enable_rumble": true
+ },
+ "left_joycon": {
+ "button_minus": "Minus",
+ "button_l": "LeftShoulder",
+ "button_zl": "LeftTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "dpad_up": "DpadUp",
+ "dpad_down": "DpadDown",
+ "dpad_left": "DpadLeft",
+ "dpad_right": "DpadRight"
+ },
+ "right_joycon": {
+ "button_plus": "Plus",
+ "button_r": "RightShoulder",
+ "button_zr": "RightTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "button_x": "X",
+ "button_b": "B",
+ "button_y": "Y",
+ "button_a": "A"
+ },
+ "version": 1,
+ "backend": "GamepadSDL2",
+ "id": "2-00000003-28de-0000-ff11-000001000000",
+ "controller_type": "ProController",
+ "player_index": "Player3"
+ },
+ {
+ "left_joycon_stick": {
+ "joystick": "Left",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "LeftStick"
+ },
+ "right_joycon_stick": {
+ "joystick": "Right",
+ "invert_stick_x": false,
+ "invert_stick_y": false,
+ "rotate90_cw": false,
+ "stick_button": "RightStick"
+ },
+ "deadzone_left": 0,
+ "deadzone_right": 0,
+ "range_left": 1.2,
+ "range_right": 1,
+ "trigger_threshold": 0,
+ "motion": {
+ "motion_backend": "GamepadDriver",
+ "sensitivity": 100,
+ "gyro_deadzone": 1,
+ "enable_motion": false
+ },
+ "rumble": {
+ "strong_rumble": 1,
+ "weak_rumble": 1,
+ "enable_rumble": true
+ },
+ "left_joycon": {
+ "button_minus": "Minus",
+ "button_l": "LeftShoulder",
+ "button_zl": "LeftTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "dpad_up": "DpadUp",
+ "dpad_down": "DpadDown",
+ "dpad_left": "DpadLeft",
+ "dpad_right": "DpadRight"
+ },
+ "right_joycon": {
+ "button_plus": "Plus",
+ "button_r": "RightShoulder",
+ "button_zr": "RightTrigger",
+ "button_sl": "Unbound",
+ "button_sr": "Unbound",
+ "button_x": "X",
+ "button_b": "B",
+ "button_y": "Y",
+ "button_a": "A"
+ },
+ "version": 1,
+ "backend": "GamepadSDL2",
+ "id": "3-00000003-28de-0000-ff11-000001000000",
+ "controller_type": "ProController",
+ "player_index": "Player4"
+ }
+ ],
+ "graphics_backend": "Vulkan",
+ "preferred_gpu": "0x1002_0x163F",
+ "multiplayer_mode": 0,
+ "multiplayer_lan_interface_id": "0",
+ "use_hypervisor": true
+}