Merge remote-tracking branch 'upstream/cooker-0.8.0b' into cooker-0.8.0b-icenine451

This commit is contained in:
icenine451 2024-03-11 08:40:09 -04:00
commit 3b17ad55d9
29 changed files with 4235 additions and 386 deletions

1
.gitignore vendored
View file

@ -21,6 +21,7 @@ rd-submodules/es-de/patches-tmp*
.local/ .local/
buildid buildid
*.bak *.bak
incconfigs/
# Python # # Python #
########## ##########

View file

@ -19,6 +19,8 @@ mkdir -vp ${$BUILD_DIR}/"$FOLDER"
flatpak-builder --user --force-clean \ flatpak-builder --user --force-clean \
--install-deps-from=flathub \ --install-deps-from=flathub \
--install-deps-from=flathub-beta \ --install-deps-from=flathub-beta \
--keep-build-dirs \
--rebuild-on-sdk-change \
--repo="${BUILD_DIR}/.local" \ --repo="${BUILD_DIR}/.local" \
--disable-download \ --disable-download \
"${BUILD_DIR}/${FOLDER}" \ "${BUILD_DIR}/${FOLDER}" \

View file

@ -23,7 +23,7 @@ fi
sudo cp -vfr "retrodeck.sh" "$app/bin/" sudo cp -vfr "retrodeck.sh" "$app/bin/"
sudo cp -vfr "functions/"** "$app/libexec/" sudo cp -vfr "functions/"** "$app/libexec/"
sudo cp -vfr "tools" "$app/tools" sudo cp -vfr "tools" "$app"
sudo cp -vfr "emu-configs/"** "$app/retrodeck/emu-configs/" sudo cp -vfr "emu-configs/"** "$app/retrodeck/emu-configs/"
sudo cp -vfr "es-configs/es_find_rules.xml" "$app/share/es-de/resources/systems/linux/" sudo cp -vfr "es-configs/es_find_rules.xml" "$app/share/es-de/resources/systems/linux/"
sudo cp -vfr "es-configs/es_systems.xml" "$app/share/es-de/resources/systems/linux/" sudo cp -vfr "es-configs/es_systems.xml" "$app/share/es-de/resources/systems/linux/"

View file

@ -101,7 +101,7 @@
<Account> <Account>
<PersistentId>2147483649</PersistentId> <PersistentId>2147483649</PersistentId>
<OnlineEnabled>false</OnlineEnabled> <OnlineEnabled>false</OnlineEnabled>
<ActiveService>0</ActiveService> <ActiveService>1</ActiveService>
</Account> </Account>
<Debug> <Debug>
<CrashDumpUnix>1</CrashDumpUnix> <CrashDumpUnix>1</CrashDumpUnix>

View file

@ -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=RETRODECKHOMEDIR/saves/n3ds/citra/nand/
nand_directory\default=false
sdmc_directory=RETRODECKHOMEDIR/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=RETRODECKHOMEDIR/roms/n3ds
Paths\gamedirs\size=3
Paths\language=en
Paths\language\default=false
Paths\moviePlaybackPath=
Paths\movieRecordPath=
Paths\recentFiles=@Invalid()
Paths\romsPath=
Paths\screenshotPath=RETRODECKHOMEDIR/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=RetroDECK
enable_telemetry=false
enable_telemetry\default=false
web_api_url=https://api.citra-emu.org
web_api_url\default=true

View file

@ -0,0 +1,535 @@
[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=@Variant(\0\0\0\x87?\x80\0\0)
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="code:65,engine:keyboard"
profiles\1\button_a\default=true
profiles\1\button_b="code:83,engine:keyboard"
profiles\1\button_b\default=true
profiles\1\button_debug="code:79,engine:keyboard"
profiles\1\button_debug\default=true
profiles\1\button_down="code:71,engine:keyboard"
profiles\1\button_down\default=true
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="code:81,engine:keyboard"
profiles\1\button_l\default=true
profiles\1\button_left="code:70,engine:keyboard"
profiles\1\button_left\default=true
profiles\1\button_r="code:87,engine:keyboard"
profiles\1\button_r\default=true
profiles\1\button_right="code:72,engine:keyboard"
profiles\1\button_right\default=true
profiles\1\button_select="code:78,engine:keyboard"
profiles\1\button_select\default=true
profiles\1\button_start="code:77,engine:keyboard"
profiles\1\button_start\default=true
profiles\1\button_up="code:84,engine:keyboard"
profiles\1\button_up\default=true
profiles\1\button_x="code:90,engine:keyboard"
profiles\1\button_x\default=true
profiles\1\button_y="code:88,engine:keyboard"
profiles\1\button_y\default=true
profiles\1\button_zl="code:49,engine:keyboard"
profiles\1\button_zl\default=true
profiles\1\button_zr="code:50,engine:keyboard"
profiles\1\button_zr\default=true
profiles\1\c_stick="down:code$075$1engine$0keyboard,engine:analog_from_button,left:code$074$1engine$0keyboard,modifier:code$068$1engine$0keyboard,modifier_scale:0.500000,right:code$076$1engine$0keyboard,up:code$073$1engine$0keyboard"
profiles\1\c_stick\default=true
profiles\1\circle_pad="down:code$016777237$1engine$0keyboard,engine:analog_from_button,left:code$016777234$1engine$0keyboard,modifier:code$068$1engine$0keyboard,modifier_scale:0.500000,right:code$016777236$1engine$0keyboard,up:code$016777235$1engine$0keyboard"
profiles\1\circle_pad\default=true
profiles\1\motion_device="engine:motion_emu,update_period:100,sensitivity:0.01,tilt_clamp:90.0"
profiles\1\motion_device\default=true
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=
nand_directory\default=true
sdmc_directory=
sdmc_directory\default=true
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
layout_option=0
pp_shader_name=none (builtin)
pp_shader_name\default=true
render_3d=0
render_3d\default=true
swap_screen=false
swap_screen\default=true
upright_screen=false
upright_screen\default=true
[Miscellaneous]
log_filter=*:Info
log_filter\default=true
[Renderer]
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
graphics_api=1
graphics_api\default=true
resolution_factor=1
resolution_factor\default=true
shaders_accurate_mul=true
shaders_accurate_mul\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=946681277
init_time\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\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=
Paths\gamedirs\size=3
Paths\language=en
Paths\language\default=false
Paths\moviePlaybackPath=
Paths\movieRecordPath=
Paths\recentFiles=@Invalid()
Paths\romsPath=
Paths\screenshotPath=RETRODECKHOMEDIR/screenshots
Paths\symbolsPath=
Paths\videoDumpingPath=
Shortcuts\Main%20Window\Advance%20Frame\Context=2
Shortcuts\Main%20Window\Advance%20Frame\Context\default=true
Shortcuts\Main%20Window\Advance%20Frame\KeySeq=\\
Shortcuts\Main%20Window\Advance%20Frame\KeySeq\default=true
Shortcuts\Main%20Window\Capture%20Screenshot\Context=2
Shortcuts\Main%20Window\Capture%20Screenshot\Context\default=true
Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq=Ctrl+P
Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context=1
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=F4
Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=true
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=-
Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq\default=true
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=
Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=true
Shortcuts\Main%20Window\Fullscreen\Context=1
Shortcuts\Main%20Window\Fullscreen\Context\default=true
Shortcuts\Main%20Window\Fullscreen\KeySeq=F11
Shortcuts\Main%20Window\Fullscreen\KeySeq\default=true
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=+
Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq\default=true
Shortcuts\Main%20Window\Load%20Amiibo\Context=2
Shortcuts\Main%20Window\Load%20Amiibo\Context\default=true
Shortcuts\Main%20Window\Load%20Amiibo\KeySeq=F2
Shortcuts\Main%20Window\Load%20Amiibo\KeySeq\default=true
Shortcuts\Main%20Window\Load%20File\Context=1
Shortcuts\Main%20Window\Load%20File\Context\default=true
Shortcuts\Main%20Window\Load%20File\KeySeq=Ctrl+O
Shortcuts\Main%20Window\Load%20File\KeySeq\default=true
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+V
Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\KeySeq\default=true
Shortcuts\Main%20Window\Remove%20Amiibo\Context=2
Shortcuts\Main%20Window\Remove%20Amiibo\Context\default=true
Shortcuts\Main%20Window\Remove%20Amiibo\KeySeq=F3
Shortcuts\Main%20Window\Remove%20Amiibo\KeySeq\default=true
Shortcuts\Main%20Window\Restart%20Emulation\Context=1
Shortcuts\Main%20Window\Restart%20Emulation\Context\default=true
Shortcuts\Main%20Window\Restart%20Emulation\KeySeq=F6
Shortcuts\Main%20Window\Restart%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Rotate%20Screens%20Upright\Context=1
Shortcuts\Main%20Window\Rotate%20Screens%20Upright\Context\default=true
Shortcuts\Main%20Window\Rotate%20Screens%20Upright\KeySeq=F8
Shortcuts\Main%20Window\Rotate%20Screens%20Upright\KeySeq\default=true
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+C
Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\KeySeq\default=true
Shortcuts\Main%20Window\Stop%20Emulation\Context=1
Shortcuts\Main%20Window\Stop%20Emulation\Context\default=true
Shortcuts\Main%20Window\Stop%20Emulation\KeySeq=F5
Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Swap%20Screens\Context=1
Shortcuts\Main%20Window\Swap%20Screens\Context\default=true
Shortcuts\Main%20Window\Swap%20Screens\KeySeq=F9
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=Ctrl+Z
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=Ctrl+F
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context=1
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context\default=true
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq=Ctrl+A
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq\default=true
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=F10
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=true
Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq=Ctrl+S
Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\Context=2
Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\Context\default=true
Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\KeySeq=Ctrl+D
Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\KeySeq\default=true
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\x4\x33\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\0\x87\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0\x64)
UILayout\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x1\r\0\0\0\xbb\0\0\x5?\0\0\x2\xb6\0\0\x1\r\0\0\0\xd8\0\0\x5?\0\0\x2\xb6\0\0\0\0\0\0\0\0\x6M\0\0\x1\r\0\0\0\xd8\0\0\x5?\0\0\x2\xb6)
UILayout\geometryRenderWindow=@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\x6M\0\0\0\0\0\0\0\0\0\0\0\x63\0\0\0\x1d)
UILayout\microProfileDialogGeometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x3\xe7\0\0\x2W\0\0\0\0\0\0\0\0\0\0\x3\xe7\0\0\x2W\0\0\0\0\0\0\0\0\x6M\0\0\0\0\0\0\0\0\0\0\x3\xe7\0\0\x2W)
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\0y\x1\0\0\x3\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\0\x85\x1\0\0\x3\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\0y\x1\0\0\x3\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\xad\x1\0\0\x3\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\xad\x1\0\0\x3\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\xde\x1\0\0\x3\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\0P\x1\0\0\x3\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\0y\x1\0\0\x3\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\xef\x1\0\0\x3\0\0\x4\x33\0\0\x1\xa2\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=true
confirmClose\default=true
displayTitleBars=true
displayTitleBars\default=true
enable_discord_presence=true
enable_discord_presence\default=true
firstStart=false
firstStart\default=false
fullscreen=false
fullscreen\default=true
hideInactiveMouse=false
hideInactiveMouse\default=true
pauseWhenInBackground=false
pauseWhenInBackground\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=default
theme\default=true
[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=false
web_api_url=https://api.citra-emu.org
web_api_url\default=true

View file

@ -0,0 +1,7 @@
config_file_format^yuzu
change^ask_to_exit^confirmClose^true^UI^$yuzuconf^$emuconfigs/yuzu/qt-config.ini
change^ask_to_exit^confirmClose\default^true^UI^$yuzuconf^$emuconfigs/yuzu/qt-config.ini
change^abxy_button_swap^player_0_button_a^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:0,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini
change^abxy_button_swap^player_0_button_b^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:1,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini
change^abxy_button_swap^player_0_button_x^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:2,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini
change^abxy_button_swap^player_0_button_y^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:3,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini

View file

@ -8,3 +8,5 @@ primehack
rpcs3 rpcs3
Ryujinx Ryujinx
xemu xemu
yuzu
citra-emu

View file

@ -13,3 +13,5 @@ psx_ra^Sony Playstation (RetroArch Core)
retroarch^RetroArch (Multi-emulator Frontend) retroarch^RetroArch (Multi-emulator Frontend)
ryujinx^Ryujinx (Nintendo Switch Standalone Emulator) ryujinx^Ryujinx (Nintendo Switch Standalone Emulator)
snes^Nintendo Super Nintendo snes^Nintendo Super Nintendo
yuzu^Yuzu (Nintendo Switch Standalone Emulator, via Ponzu)
citra^Citra (Nintendo Switch Standalone Emulator, via Ponzu)

View file

@ -28,6 +28,8 @@ multi_user_mode=false
ask_default_user=true ask_default_user=true
default_user= default_user=
developer_options=false developer_options=false
kiroi_ponzu=false
akai_ponzu=false
[cheevos] [cheevos]
duckstation=false duckstation=false
@ -69,6 +71,7 @@ gba=false
gbc=false gbc=false
n64=false n64=false
snes=false snes=false
citra=false
[quick_resume] [quick_resume]
retroarch=true retroarch=true
@ -78,3 +81,4 @@ dolphin=false
duckstation=false duckstation=false
pcsx2=false pcsx2=false
primehack=false primehack=false
citra=false

File diff suppressed because it is too large Load diff

Binary file not shown.

Binary file not shown.

View file

@ -1,4 +1,4 @@
# This file was generated by GZDoom g4.11.3-m on 2023-11-25 14:33:14 # This file was generated by GZDoom g4.11.3-m on 2024-03-10 09:34:01
# These are the directories to automatically search for IWADs. # These are the directories to automatically search for IWADs.
# Each directory should be on a separate line, preceded by Path= # Each directory should be on a separate line, preceded by Path=
[IWADSearch.Directories] [IWADSearch.Directories]
@ -6,9 +6,7 @@ Path=.
Path=$DOOMWADDIR Path=$DOOMWADDIR
Path=$HOME Path=$HOME
Path=$PROGDIR Path=$PROGDIR
Path=/var/config/gzdoom Path=/home/jay/retrodeck/roms/doom
Path=/var/data/gzdoom
Path=RETRODECKROMSDIR/doom
Path=/app/share/games/doom/ Path=/app/share/games/doom/
# These are the directories to search for wads added with the -file # These are the directories to search for wads added with the -file
@ -18,8 +16,7 @@ Path=/app/share/games/doom/
Path=$PROGDIR Path=$PROGDIR
Path=$DOOMWADDIR Path=$DOOMWADDIR
Path=/var/config/gzdoom Path=/var/config/gzdoom
Path=/var/data/gzdoom Path=/home/jay/retrodeck/roms/doom
Path=RETRODECKROMSDIR/doom
Path=/app/share/games/doom/ Path=/app/share/games/doom/
# These are the directories to search for soundfonts that let listed in the menu. # These are the directories to search for soundfonts that let listed in the menu.
@ -27,7 +24,10 @@ Path=/app/share/games/doom/
[SoundfontSearch.Directories] [SoundfontSearch.Directories]
Path=$PROGDIR/soundfonts Path=$PROGDIR/soundfonts
Path=$PROGDIR/fm_banks Path=$PROGDIR/fm_banks
Path=/var/data/gzdoom/audio
Path=/var/data/gzdoom Path=/var/data/gzdoom
Path=/app/share/games/doom/soundfonts
Path=/app/share/games/doom/fm_banks
# Files to automatically execute when running the corresponding game. # Files to automatically execute when running the corresponding game.
# Each file should be on its own line, preceded by Path= # Each file should be on its own line, preceded by Path=
@ -203,7 +203,7 @@ fluid_chorus_voices=3
fluid_gain=0.5 fluid_gain=0.5
fluid_interp=1 fluid_interp=1
fluid_lib= fluid_lib=
fluid_patchset=gzdoom fluid_patchset=/app/share/games/doom/soundfonts/gzdoom.sf2
fluid_reverb=false fluid_reverb=false
fluid_reverb_damping=0.23 fluid_reverb_damping=0.23
fluid_reverb_level=0.57 fluid_reverb_level=0.57
@ -265,7 +265,7 @@ gl_texture_hqresizemult=1
gl_usecolorblending=true gl_usecolorblending=true
gme_stereodepth=0 gme_stereodepth=0
gus_memsize=0 gus_memsize=0
gus_patchdir= gus_patchdir=/data/gzdoom/midi
i_discordrpc=false i_discordrpc=false
i_pauseinbackground=true i_pauseinbackground=true
i_soundinbackground=false i_soundinbackground=false
@ -343,7 +343,7 @@ r_skipmats=false
r_sprite_distance_cull=0 r_sprite_distance_cull=0
r_spriteadjust=2 r_spriteadjust=2
r_ticstability=true r_ticstability=true
save_dir=RETRODECKSAVESDIR/doom/gzdoom save_dir=RETRODECKHOMEDIR/saves/doom/gzdoom
save_formatted=false save_formatted=false
saveloadconfirmation=true saveloadconfirmation=true
savestatistics=0 savestatistics=0
@ -374,7 +374,7 @@ strictdecorate=false
telezoom=true telezoom=true
timidity_channel_pressure=false timidity_channel_pressure=false
timidity_chorus=0 timidity_chorus=0
timidity_config=gzdoom timidity_config=/app/share/games/doom/soundfonts/gzdoom.sf2
timidity_drum_effect=false timidity_drum_effect=false
timidity_drum_power=1 timidity_drum_power=1
timidity_key_adjust=0 timidity_key_adjust=0
@ -430,11 +430,11 @@ vr_ipd=0.062
vr_mode=0 vr_mode=0
vr_screendist=0.8 vr_screendist=0.8
vr_swap_eyes=false vr_swap_eyes=false
wildmidi_config= wildmidi_config=/app/share/games/doom/soundfonts/gzdoom.sf2
wildmidi_enhanced_resampling=true wildmidi_enhanced_resampling=true
wildmidi_reverb=false wildmidi_reverb=false
win_h=640 win_h=640
win_maximized=false win_maximized=true
win_w=1024 win_w=1024
win_x=-1 win_x=-1
win_y=-1 win_y=-1
@ -466,8 +466,8 @@ vr_enable_quadbuffered=
[Doom.Player] [Doom.Player]
autoaim=35 autoaim=35
classicflight=false classicflight=false
color=a0 0f 80 color=40 cf 00
colorset=-1 colorset=0
fov=90 fov=90
fviewbob=true fviewbob=true
gender=other gender=other
@ -804,15 +804,22 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
LShoulder=weapprev
RShoulder=weapnext
LTrigger=+altattack
RTrigger=+attack
Pad_A=+use
Pad_Y=+jump
W=+forward W=+forward
E=+use E=+use
A=+moveleft A=+moveleft
@ -823,36 +830,22 @@ I=di_toggleinfrared
P=di_showupgrades_bind P=di_showupgrades_bind
F=di_useitem_bind F=di_useitem_bind
M=di_modscreen M=di_modscreen
R=+reload
C=+crouch C=+crouch
,=di_prevSong ,=di_prevSong
.=di_skipSong .=di_skipSong
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[Doom.DoubleBindings] [Doom.DoubleBindings]
@ -1177,6 +1170,7 @@ sv_smartaim=0
0=slot 0 0=slot 0
-=sizedown -=sizedown
Equals=sizeup Equals=sizeup
Backspace=use ArtiTomeOfPower
Tab=togglemap Tab=togglemap
W=+forward W=+forward
E=+use E=+use
@ -1190,8 +1184,9 @@ D=+moveright
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=+showscores
CapsLock=toggle cl_run C=crouch
Space=+jump Space=+jump
CapsLock=toggle cl_run
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
F3=menu_load F3=menu_load
@ -1202,9 +1197,8 @@ F7=menu_endgame
F8=togglemessages F8=togglemessages
F9=quickload F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -1215,55 +1209,37 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
W=+forward LShoulder=weapprev
E=+use RShoulder=weapnext
A=+moveleft LTrigger=+altattack
S=+back RTrigger=+attack
D=+moveright Pad_A=+use
Q=di_taunttoggle Pad_Y=+jump
I=di_toggleinfrared Q=+zoom
P=di_showupgrades_bind R=+reload
F=di_useitem_bind
M=di_modscreen
C=+crouch C=+crouch
,=di_prevSong
.=di_skipSong
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[Heretic.DoubleBindings] [Heretic.DoubleBindings]
@ -1580,12 +1556,12 @@ sv_smartaim=0
2=slot 2 2=slot 2
3=slot 3 3=slot 3
4=slot 4 4=slot 4
5=slot 5 5=use ArtiInvulnerability2
6=slot 6 6=use ArtiPork
7=slot 7 7=use ArtiTeleportOther
8=slot 8 8=use ArtiTeleport
9=slot 9 9=use ArtiBlastRadius
0=slot 0 0=useflechette
-=sizedown -=sizedown
Equals=sizeup Equals=sizeup
Tab=togglemap Tab=togglemap
@ -1600,8 +1576,7 @@ S=+back
D=+moveright D=+moveright
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=use ArtiHealth
CapsLock=toggle cl_run
Space=+jump Space=+jump
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
@ -1615,7 +1590,7 @@ F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -1626,15 +1601,22 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
LShoulder=weapprev
RShoulder=weapnext
LTrigger=+altattack
RTrigger=+attack
Pad_A=+use
Pad_Y=+jump
W=+forward W=+forward
E=+use E=+use
A=+moveleft A=+moveleft
@ -1645,36 +1627,22 @@ I=di_toggleinfrared
P=di_showupgrades_bind P=di_showupgrades_bind
F=di_useitem_bind F=di_useitem_bind
M=di_modscreen M=di_modscreen
R=+reload
C=+crouch C=+crouch
,=di_prevSong ,=di_prevSong
.=di_skipSong .=di_skipSong
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[Hexen.DoubleBindings] [Hexen.DoubleBindings]
@ -1997,7 +1965,9 @@ sv_smartaim=0
0=slot 0 0=slot 0
-=sizedown -=sizedown
Equals=sizeup Equals=sizeup
Backspace=invdrop
Tab=togglemap Tab=togglemap
Q=+zoom
W=+forward W=+forward
E=+use E=+use
T=messagemode T=messagemode
@ -2007,11 +1977,15 @@ Enter=invuse
A=+moveleft A=+moveleft
S=+back S=+back
D=+moveright D=+moveright
K=showpop 2
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=+showscores
CapsLock=toggle cl_run Z=showpop 3
X=crouch
C=+crouch
Space=+jump Space=+jump
CapsLock=toggle cl_run
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
F3=menu_load F3=menu_load
@ -2022,9 +1996,8 @@ F7=menu_endgame
F8=togglemessages F8=togglemessages
F9=quickload F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -2035,55 +2008,35 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
W=+forward LShoulder=weapprev
E=+use RShoulder=weapnext
A=+moveleft LTrigger=+altattack
S=+back RTrigger=+attack
D=+moveright Pad_A=+use
Q=di_taunttoggle Pad_Y=+jump
I=di_toggleinfrared R=+reload
P=di_showupgrades_bind
F=di_useitem_bind
M=di_modscreen
C=+crouch
,=di_prevSong
.=di_skipSong
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[Strife.DoubleBindings] [Strife.DoubleBindings]
@ -2419,8 +2372,9 @@ D=+moveright
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=+showscores
CapsLock=toggle cl_run X=crouch
Space=+jump Space=+jump
CapsLock=toggle cl_run
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
F3=menu_load F3=menu_load
@ -2431,9 +2385,8 @@ F7=menu_endgame
F8=togglemessages F8=togglemessages
F9=quickload F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -2444,55 +2397,26 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
W=+forward LThumb=crouch
E=+use LShoulder=weapprev
A=+moveleft RShoulder=weapnext
S=+back LTrigger=+altattack
D=+moveright RTrigger=+attack
Q=di_taunttoggle Pad_A=+use
I=di_toggleinfrared Pad_Y=+jump
P=di_showupgrades_bind Q=+zoom
F=di_useitem_bind R=+reload
M=di_modscreen
C=+crouch C=+crouch
,=di_prevSong
.=di_skipSong
UpArrow=+forward
LeftArrow=+back
RightArrow=+moveright
DownArrow=+moveleft
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use
Joy5=+zoom
Joy6=+attack
[Chex.DoubleBindings] [Chex.DoubleBindings]
@ -2831,8 +2755,9 @@ D=+moveright
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=+showscores
CapsLock=toggle cl_run X=crouch
Space=+jump Space=+jump
CapsLock=toggle cl_run
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
F3=menu_load F3=menu_load
@ -2843,9 +2768,8 @@ F7=menu_endgame
F8=togglemessages F8=togglemessages
F9=quickload F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -2856,55 +2780,38 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
W=+forward
E=+use
A=+moveleft
S=+back
D=+moveright
Q=di_taunttoggle
I=di_toggleinfrared
P=di_showupgrades_bind
F=di_useitem_bind
M=di_modscreen
C=+crouch C=+crouch
,=di_prevSong LShoulder=weapprev
.=di_skipSong RShoulder=weapnext
LTrigger=+altattack
RTrigger=+attack
Pad_A=+use
Pad_Y=+jump
Q=+zoom
R=+reload
C=+crouch
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[Harmony.DoubleBindings] [Harmony.DoubleBindings]
@ -3243,8 +3150,9 @@ D=+moveright
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=+showscores
CapsLock=toggle cl_run X=crouch
Space=+jump Space=+jump
CapsLock=toggle cl_run
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
F3=menu_load F3=menu_load
@ -3255,9 +3163,8 @@ F7=menu_endgame
F8=togglemessages F8=togglemessages
F9=quickload F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -3268,55 +3175,38 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
W=+forward
E=+use
A=+moveleft
S=+back
D=+moveright
Q=di_taunttoggle
I=di_toggleinfrared
P=di_showupgrades_bind
F=di_useitem_bind
M=di_modscreen
C=+crouch C=+crouch
,=di_prevSong LShoulder=weapprev
.=di_skipSong RShoulder=weapnext
LTrigger=+altattack
RTrigger=+attack
Pad_A=+use
Pad_Y=+jump
Q=+zoom
R=+reload
C=+crouch
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[WoolBall.DoubleBindings] [WoolBall.DoubleBindings]
@ -3664,8 +3554,9 @@ D=+moveright
`=toggleconsole `=toggleconsole
Shift=+speed Shift=+speed
\=+showscores \=+showscores
CapsLock=toggle cl_run X=crouch
Space=+jump Space=+jump
CapsLock=toggle cl_run
F1=menu_help F1=menu_help
F2=menu_save F2=menu_save
F3=menu_load F3=menu_load
@ -3676,9 +3567,8 @@ F7=menu_endgame
F8=togglemessages F8=togglemessages
F9=quickload F9=quickload
F10=menu_quit F10=menu_quit
Scroll=+showscores
F11=bumpgamma F11=bumpgamma
F12=spynext F12=screenshot
SysRq=screenshot SysRq=screenshot
Pause=pause Pause=pause
Home=land Home=land
@ -3689,55 +3579,38 @@ Ins=+movedown
Del=+lookdown Del=+lookdown
Mouse1=+attack Mouse1=+attack
Mouse2=+altattack Mouse2=+altattack
MWheelUp=weapnext MWheelUp=weapprev
MWheelDown=weapprev MWheelDown=weapnext
MWheelRight=invnext MWheelRight=invnext
MWheelLeft=invprev MWheelLeft=invprev
DPadUp=togglemap
DPadDown=invuse DPadDown=invuse
DPadLeft=invprev DPadLeft=invprev
DPadRight=invnext DPadRight=invnext
Pad_Start=pause Pad_Start=pause
Pad_Back=menu_main Pad_Back=menu_main
W=+forward
E=+use
A=+moveleft
S=+back
D=+moveright
Q=di_taunttoggle
I=di_toggleinfrared
P=di_showupgrades_bind
F=di_useitem_bind
M=di_modscreen
C=+crouch C=+crouch
,=di_prevSong LShoulder=weapprev
.=di_skipSong RShoulder=weapnext
LTrigger=+altattack
RTrigger=+attack
Pad_A=+use
Pad_Y=+jump
Q=+zoom
R=+reload
C=+crouch
UpArrow=+forward UpArrow=+forward
LeftArrow=+back LeftArrow=+moveleft
RightArrow=+moveright RightArrow=+moveright
DownArrow=+moveleft DownArrow=+back
Joy10=toggle cl_run
Joy11=turn180
Joy2=+jump
Joy7=togglemap
POV1Up=+moveup
POV1Right=weapnext
POV1Down=+movedown
POV1Left=weapprev
Axis1Plus=+moveright
Axis1Minus=+moveleft
Axis2Plus=+back
Axis2Minus=+forward
Axis4Plus=+right
Axis4Minus=+left
Axis5Plus=+lookdown
Axis5Minus=+lookup
Axis3Plus=+reload
Axis6Plus=+altattack
Joy3=+crouch
Joy8=menu_options
Joy1=+use Joy1=+use
Joy5=+zoom Joy3=+reload
Joy6=+attack Joy4=+jump
Joy5=weapprev
Joy6=weapnext
Joy8=menu_main
Joy10=toggle cl_run
Joy11=crouch
[Square.DoubleBindings] [Square.DoubleBindings]
@ -4202,4 +4075,3 @@ Axis3deadzone=0.450001
Axis4deadzone=0.25 Axis4deadzone=0.25
Axis4map=1 Axis4map=1
Axis5deadzone=0.100001 Axis5deadzone=0.100001

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -170,6 +170,7 @@
<entry>org.citra_emu.citra</entry> <entry>org.citra_emu.citra</entry>
</rule> </rule>
<rule type="staticpath"> <rule type="staticpath">
<entry>/var/data/ponzu/Citra/bin/citra-qt</entry> <!-- RetroDECK, ponzu -->
<entry>~/Applications/citra-qt*.AppImage</entry> <entry>~/Applications/citra-qt*.AppImage</entry>
<entry>~/.local/share/applications/citra-qt*.AppImage</entry> <entry>~/.local/share/applications/citra-qt*.AppImage</entry>
<entry>~/.local/bin/citra-qt*.AppImage</entry> <entry>~/.local/bin/citra-qt*.AppImage</entry>
@ -1049,6 +1050,22 @@
<entry>~/bin/xroar/xroar</entry> <entry>~/bin/xroar/xroar</entry>
</rule> </rule>
</emulator> </emulator>
<emulator name="YUZU">
<!-- Nintendo Switch emulator Yuzu -->
<rule type="systempath">
<entry>yuzu</entry>
<entry>org.yuzu_emu.yuzu</entry>
</rule>
<rule type="staticpath">
<entry>/var/data/ponzu/Yuzu/bin/yuzu</entry> <!-- RetroDECK, ponzu -->
<entry>~/Applications/yuzu*.AppImage</entry>
<entry>~/.local/share/applications/yuzu*.AppImage</entry>
<entry>~/.local/bin/yuzu*.AppImage</entry>
<entry>~/bin/yuzu*.AppImage</entry>
<entry>/var/lib/flatpak/exports/bin/org.yuzu_emu.yuzu</entry>
<entry>~/.local/share/flatpak/exports/bin/org.yuzu_emu.yuzu</entry>
</rule>
</emulator>
<emulator name="ZESARUX"> <emulator name="ZESARUX">
<!-- Sinclair ZX Spectrum emulator ZEsarUX --> <!-- Sinclair ZX Spectrum emulator ZEsarUX -->
<rule type="systempath"> <rule type="systempath">

View file

@ -1172,9 +1172,9 @@
<fullname>Nintendo 3DS</fullname> <fullname>Nintendo 3DS</fullname>
<path>%ROMPATH%/n3ds</path> <path>%ROMPATH%/n3ds</path>
<extension>.3ds .3DS .3dsx .3DSX .app .APP .axf .AXF .cci .CCI .cxi .CXI .elf .ELF .7z .7Z .zip .ZIP</extension> <extension>.3ds .3DS .3dsx .3DSX .app .APP .axf .AXF .cci .CCI .cxi .CXI .elf .ELF .7z .7Z .zip .ZIP</extension>
<!-- <command label="Citra (Standalone)">%EMULATOR_CITRA% %ROM%</command> -->
<command label="Citra">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/citra_libretro.so %ROM%</command> <command label="Citra">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/citra_libretro.so %ROM%</command>
<command label="Citra 2018">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/citra2018_libretro.so %ROM%</command> <command label="Citra 2018">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/citra2018_libretro.so %ROM%</command>
<command label="Citra (via Ponzu)">%EMULATOR_CITRA% %ROM%</command>
<platform>n3ds</platform> <platform>n3ds</platform>
<theme>n3ds</theme> <theme>n3ds</theme>
</system> </system>
@ -1878,6 +1878,7 @@
<path>%ROMPATH%/switch</path> <path>%ROMPATH%/switch</path>
<extension>.nca .NCA .nro .NRO .nso .NSO .nsp .NSP .xci .XCI</extension> <extension>.nca .NCA .nro .NRO .nso .NSO .nsp .NSP .xci .XCI</extension>
<command label="Ryujinx (Standalone)">%EMULATOR_RYUJINX% %ROM%</command> <command label="Ryujinx (Standalone)">%EMULATOR_RYUJINX% %ROM%</command>
<command label="Yuzu (via Ponzu)">%INJECT%=%BASENAME%.esprefix %EMULATOR_YUZU% -f -g %ROM%</command>
<platform>switch</platform> <platform>switch</platform>
<theme>switch</theme> <theme>switch</theme>
</system> </system>

View file

@ -657,6 +657,98 @@ manage_ryujinx_keys() {
fi fi
} }
ponzu() {
# This function is used to extract some specific appimages
# Check if any of the specified files exist
# If RetroDECK is reset Ponzu must re-cooked
log d "Checking for Ponzu"
local tmp_folder="/tmp/extracted"
local ponzu_files=("$rdhome"/ponzu/Citra*.AppImage "$rdhome"/ponzu/citra*.AppImage "$rdhome"/ponzu/Yuzu*.AppImage "$rdhome"/ponzu/yuzu*.AppImage)
local data_dir
local appimage
local executable
# Loop through all ponzu files
for ponzu_file in "${ponzu_files[@]}"; do
# Check if the current ponzu file exists
if [ -f "$ponzu_file" ]; then
if [[ "$ponzu_file" == *itra* ]]; then
log i "Found akai ponzu! Elaborating it"
data_dir="/var/data/ponzu/Citra"
local message="Akai ponzu is served, enjoy"
elif [[ "$ponzu_file" == *uzu* ]]; then
log i "Found kiroi ponzu! Elaborating it"
data_dir="/var/data/ponzu/Yuzu"
local message="Kiroi ponzu is served, enjoy"
else
log e "AppImage not recognized, not a ponzu ingredient!"
exit 1
fi
appimage="$ponzu_file"
chmod +x "$ponzu_file"
create_dir "$data_dir"
log d "Moving AppImage in \"$data_dir\""
mv "$appimage" "$data_dir"
cd "$data_dir"
local filename=$(basename "$ponzu_file")
log d "Setting appimage=$data_dir/$filename"
appimage="$data_dir/$filename"
log d "Extracting AppImage"
"$appimage" --appimage-extract
create_dir "$tmp_folder"
log d "Cleaning up"
cp -r squashfs-root/* "$tmp_folder"
rm -rf *
if [[ "$ponzu_file" == *itra* ]]; then
mv "$tmp_folder/usr/"** .
executable="$data_dir/bin/citra-qt"
log d "Making $executable executable"
chmod +x "$executable"
prepare_component "reset" "yuzu"
set_setting_value $rd_conf "akai_ponzu" "true" retrodeck "options"
elif [[ "$ponzu_file" == *uzu* ]]; then
mv "$tmp_folder/usr/"** .
executable="$data_dir/bin/yuzu"
log d "Making $executable executable"
chmod +x "$executable"
prepare_component "reset" "citra"
set_setting_value $rd_conf "kiroi_ponzu" "true" retrodeck "options"
fi
cd -
log i "$message"
rm -rf "$tmp_folder"
fi
done
rm -rf "$rdhome/ponzu"
}
ponzu_remove(){
# Call me with yuzu or citra and I will remove them
if [[ "$1" == "citra" ]]; then
if [[ $(configurator_generic_question_dialog "Ponzu - Remove Citra" "Do you really want to remove Citra binaries?\n\nYour games and saves will not be deleted.") == "true" ]]; then
log i "Ponzu: removing Citra"
rm -rf "/var/data/ponzu/Citra"
set_setting_value $rd_conf "akai_ponzu" "false" retrodeck "options"
configurator_generic_dialog "Ponzu - Remove Citra" "Done, Citra is now removed from RetroDECK"
fi
elif [[ "$1" == "yuzu" ]]; then
if [[ $(configurator_generic_question_dialog "Ponzu - Remove Yuzu" "Do you really want to remove Yuzu binaries?\n\nYour games and saves will not be deleted.") == "true" ]]; then
log i "Ponzu: removing Yuzu"
rm -rf "/var/data/ponzu/Yuzu"
set_setting_value $rd_conf "kiroi_ponzu" "false" retrodeck "options"
configurator_generic_dialog "Ponzu - Remove Yuzu" "Done, Yuzu is now removed from RetroDECK"
fi
else
log e "Ponzu: \"$1\" is not a vaild choice for removal, quitting"
fi
configurator_retrodeck_tools_dialog
}
# TODO: this function is not yet used # TODO: this function is not yet used
branch_selector() { branch_selector() {
log d "Fetch branches from GitHub API excluding \"main\"" log d "Fetch branches from GitHub API excluding \"main\""
@ -726,6 +818,7 @@ quit_retrodeck() {
start_retrodeck() { start_retrodeck() {
easter_eggs # Check if today has a surprise splashscreen and load it if so easter_eggs # Check if today has a surprise splashscreen and load it if so
ponzu
log i "Starting RetroDECK v$version" log i "Starting RetroDECK v$version"
es-de --home /var/config/ es-de --home /var/config/
} }

View file

@ -59,6 +59,8 @@ duckstationconf="/var/config/duckstation/settings.ini"
melondsconf="/var/config/melonDS/melonDS.ini" melondsconf="/var/config/melonDS/melonDS.ini"
ryujinxconf="/var/config/Ryujinx/Config.json" ryujinxconf="/var/config/Ryujinx/Config.json"
xemuconf="/var/config/xemu/xemu.toml" xemuconf="/var/config/xemu/xemu.toml"
yuzuconf="/var/config/yuzu/qt-config.ini"
citraconf="/var/config/citra-emu/qt-config.ini"
# ES-DE config files # ES-DE config files

View file

@ -12,7 +12,7 @@ set_setting_value() {
case $4 in case $4 in
"retrodeck" | "melonds" | "libretro_scummvm" ) "retrodeck" | "melonds" | "yuzu" | "citra" | "libretro_scummvm" )
if [[ -z $current_section_name ]]; then if [[ -z $current_section_name ]]; then
sed -i 's^\^'"$setting_name_to_change"'=.*^'"$setting_name_to_change"'='"$setting_value_to_change"'^' "$1" sed -i 's^\^'"$setting_name_to_change"'=.*^'"$setting_name_to_change"'='"$setting_value_to_change"'^' "$1"
else else
@ -107,7 +107,7 @@ get_setting_value() {
case $3 in case $3 in
"retrodeck" | "melonds" ) # For files with this syntax - setting_name=setting_value "retrodeck" | "melonds" | "yuzu" ) # For files with this syntax - setting_name=setting_value
if [[ -z $current_section_name ]]; then if [[ -z $current_section_name ]]; then
echo $(grep -o -P "(?<=^$current_setting_name=).*" "$1") echo $(grep -o -P "(?<=^$current_setting_name=).*" "$1")
else else

View file

@ -171,6 +171,51 @@ prepare_component() {
fi fi
fi fi
if [[ "$component" =~ ^(citra|citra-emu|Citra|all)$ ]]; then
if [[ "$action" == "reset" ]]; then # Run reset-only commands
log i "------------------------"
log i "Prepearing CITRA"
log i "------------------------"
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/citra-emu"
cp -fv $emuconfigs/citra/qt-config.ini "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "nand_directory" "$saves_folder/n3ds/citra/nand/" "citra" "Data%20Storage"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "sdmc_directory" "$saves_folder/n3ds/citra/sdmc/" "citra" "Data%20Storage"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "Paths\gamedirs\3\path" "$roms_folder/n3ds" "citra" "UI"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "Paths\screenshotPath" "$screenshots_folder" "citra" "UI"
dir_prep "$multi_user_data_folder/$SteamAppUser/config/citra-emu" "/var/config/citra-emu"
else # Single-user actions
create_dir -d /var/config/citra-emu/
cp -f $emuconfigs/citra/qt-config.ini /var/config/citra-emu/qt-config.ini
set_setting_value "$citraconf" "nand_directory" "$saves_folder/n3ds/citra/nand/" "citra" "Data%20Storage"
set_setting_value "$citraconf" "sdmc_directory" "$saves_folder/n3ds/citra/sdmc/" "citra" "Data%20Storage"
set_setting_value "$citraconf" "Paths\gamedirs\3\path" "$roms_folder/n3ds" "citra" "UI"
set_setting_value "$citraconf" "Paths\screenshotPath" "$screenshots_folder" "citra" "UI"
fi
# Shared actions
create_dir "$saves_folder/n3ds/citra/nand/"
create_dir "$saves_folder/n3ds/citra/sdmc/"
dir_prep "$bios_folder/citra/sysdata" "/var/data/citra-emu/sysdata"
dir_prep "$logs_folder/citra" "/var/data/citra-emu/log"
dir_prep "$mods_folder/Citra" "/var/data/citra-emu/load/mods"
dir_prep "$texture_packs_folder/Citra" "/var/data/citra-emu/load/textures"
# Reset default preset settings
set_setting_value "$rd_conf" "citra" "$(get_setting_value "$rd_defaults" "citra" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
set_setting_value "$rd_conf" "citra" "$(get_setting_value "$rd_defaults" "citra" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
fi
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
dir_prep "$rdhome/bios/citra/sysdata" "/var/data/citra-emu/sysdata"
dir_prep "$rdhome/logs/citra" "/var/data/citra-emu/log"
dir_prep "$mods_folder/Citra" "/var/data/citra-emu/load/mods"
dir_prep "$texture_packs_folder/Citra" "/var/data/citra-emu/load/textures"
set_setting_value "$citraconf" "nand_directory" "$saves_folder/n3ds/citra/nand/" "citra" "Data%20Storage"
set_setting_value "$citraconf" "sdmc_directory" "$saves_folder/n3ds/citra/sdmc/" "citra" "Data%20Storage"
set_setting_value "$citraconf" "Paths\gamedirs\3\path" "$roms_folder/n3ds" "citra" "UI"
set_setting_value "$citraconf" "Paths\screenshotPath" "$screenshots_folder" "citra" "UI"
fi
fi
if [[ "$component" =~ ^(cemu|Cemu|all)$ ]]; then if [[ "$component" =~ ^(cemu|Cemu|all)$ ]]; then
if [[ "$action" == "reset" ]]; then # Run reset-only commands if [[ "$action" == "reset" ]]; then # Run reset-only commands
log i "----------------------" log i "----------------------"
@ -537,6 +582,60 @@ prepare_component() {
fi fi
fi fi
if [[ "$component" =~ ^(yuzu|Yuzu|all)$ ]]; then
if [[ "$action" == "reset" ]]; then # Run reset-only commands
log i "----------------------"
log i "Prepearing YUZU"
log i "----------------------"
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/yuzu"
cp -fvr "$emuconfigs/yuzu/"* "$multi_user_data_folder/$SteamAppUser/config/yuzu/"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI"
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI"
dir_prep "$multi_user_data_folder/$SteamAppUser/config/yuzu" "/var/config/yuzu"
else # Single-user actions
create_dir -d /var/config/yuzu/
cp -fvr "$emuconfigs/yuzu/"* /var/config/yuzu/
set_setting_value "$yuzuconf" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage"
set_setting_value "$yuzuconf" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage"
set_setting_value "$yuzuconf" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI"
set_setting_value "$yuzuconf" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI"
fi
# Shared actions
dir_prep "$saves_folder/switch/yuzu/nand" "/var/data/yuzu/nand"
dir_prep "$saves_folder/switch/yuzu/sdmc" "/var/data/yuzu/sdmc"
dir_prep "$bios_folder/switch/keys" "/var/data/yuzu/keys"
dir_prep "$bios_folder/switch/firmware" "/var/data/yuzu/nand/system/Contents/registered"
dir_prep "$logs_folder/yuzu" "/var/data/yuzu/log"
dir_prep "$screenshots_folder" "/var/data/yuzu/screenshots"
dir_prep "$mods_folder/Yuzu" "/var/data/yuzu/load"
create_dir "$rdhome/customs/yuzu"
# removing dead symlinks as they were present in a past version
if [ -d $bios_folder/switch ]; then
find $bios_folder/switch -xtype l -exec rm {} \;
fi
# Reset default preset settings
set_setting_value "$rd_conf" "yuzu" "$(get_setting_value "$rd_defaults" "yuzu" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
set_setting_value "$rd_conf" "yuzu" "$(get_setting_value "$rd_defaults" "yuzu" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
fi
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
dir_prep "$bios_folder/switch/keys" "/var/data/yuzu/keys"
dir_prep "$bios_folder/switch/firmware" "/var/data/yuzu/nand/system/Contents/registered"
dir_prep "$saves_folder/switch/yuzu/nand" "/var/data/yuzu/nand"
dir_prep "$saves_folder/switch/yuzu/sdmc" "/var/data/yuzu/sdmc"
dir_prep "$logs_folder/yuzu" "/var/data/yuzu/log"
dir_prep "$screenshots_folder" "/var/data/yuzu/screenshots"
dir_prep "$mods_folder/Yuzu" "/var/data/yuzu/load"
set_setting_value "$yuzuconf" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage"
set_setting_value "$yuzuconf" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage"
set_setting_value "$yuzuconf" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI"
set_setting_value "$yuzuconf" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI"
fi
fi
if [[ "$component" =~ ^(xemu|XEMU|all)$ ]]; then if [[ "$component" =~ ^(xemu|XEMU|all)$ ]]; then
if [[ "$action" == "reset" ]]; then # Run reset-only commands if [[ "$action" == "reset" ]]; then # Run reset-only commands
log i "------------------------" log i "------------------------"
@ -678,9 +777,8 @@ prepare_component() {
log i "----------------------" log i "----------------------"
create_dir "/var/config/gzdoom" create_dir "/var/config/gzdoom"
create_dir -d "/var/data/gzdoom" create_dir "/data/gzdoom/audio/midi"
cp -fvr "$emuconfigs/gzdoom/gzdoom.ini" "/var/config/gzdoom" cp -fvr "$emuconfigs/gzdoom/gzdoom.ini" "/var/config/gzdoom"
cp -fvr "$emuconfigs/gzdoom/"*".pk3" "/var/data/gzdoom"
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON
sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON

View file

@ -129,7 +129,8 @@ command_list_default={
"x68000": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/px68k_libretro.so", "x68000": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/px68k_libretro.so",
"zx81": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/81_libretro.so", "zx81": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/81_libretro.so",
"zxspectrum": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/fuse_libretro.so", "zxspectrum": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/fuse_libretro.so",
"n3ds": "flatpak run --command=citra net.retrodeck.retrodeck", "switch": "flatpak run --command=/var/data/ponzu/Yuzu/bin/yuzu net.retrodeck.retrodeck -f -g",
"n3ds": "flatpak run --command=/var/data/ponzu/Citra/bin/citra-qt net.retrodeck.retrodeck",
"ps2": "flatpak run --command=pcsx2-qt net.retrodeck.retrodeck -batch", "ps2": "flatpak run --command=pcsx2-qt net.retrodeck.retrodeck -batch",
"wiiu": "flatpak run --command=Cemu-wrapper net.retrodeck.retrodeck -g", "wiiu": "flatpak run --command=Cemu-wrapper net.retrodeck.retrodeck -g",
"gc": "flatpak run --command=dolphin-emu-wrapper net.retrodeck.retrodeck -b -e", "gc": "flatpak run --command=dolphin-emu-wrapper net.retrodeck.retrodeck -b -e",
@ -169,6 +170,8 @@ alt_command_list={
"Beetle Saturn": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/mednafen_saturn_libretro.so", "Beetle Saturn": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/mednafen_saturn_libretro.so",
"Snes 9x - Current": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/snes9x_libretro.so", "Snes 9x - Current": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/snes9x_libretro.so",
"Beetle SuperGrafx": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/mednafen_supergrafx_libretro.so", "Beetle SuperGrafx": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/mednafen_supergrafx_libretro.so",
"Yuzu (Standalone)": "flatpak run --command=yuzu net.retrodeck.retrodeck -f -g",
"Citra (Standalone)": "flatpak run --command=citra net.retrodeck.retrodeck",
"PCSX2 (Standalone)": "flatpak run --command=pcsx2-qt net.retrodeck.retrodeck -batch", "PCSX2 (Standalone)": "flatpak run --command=pcsx2-qt net.retrodeck.retrodeck -batch",
"Dolphin (Standalone)": "flatpak run --command=dolphin-emu-wrapper net.retrodeck.retrodeck -b -e", "Dolphin (Standalone)": "flatpak run --command=dolphin-emu-wrapper net.retrodeck.retrodeck -b -e",
"RPCS3 Directory (Standalone)": "flatpak run --command=pcsx3 net.retrodeck.retrodeck --no-gui", "RPCS3 Directory (Standalone)": "flatpak run --command=pcsx3 net.retrodeck.retrodeck --no-gui",

View file

@ -1,4 +1,34 @@
Vita3K Vita3K
Fix the bindings and make sure everything works
MAME MAME
Double check all the inputs and hotkeys for Player 1 to 4
GZDoom GZDoom
Solarus
Fix the config.
Feel if the bindings are right when everything is done and all works as excpected.
Primehack
See what bindings works best
Dolphin
Look into Rotational controls while holding two buttons + right joystick.
RetroArch
User complained about Touchscreen
Make sure the config is SDL
ALL
Test all inputs after everything is done
Question:
Does the X/Y A/B switcher needs to be updated?

View file

@ -1,3 +0,0 @@
DONE :)
- Xargon

View file

@ -75,8 +75,9 @@
<p>Changes:</p> <p>Changes:</p>
<ul> <ul>
<li>ES-DE: updated to 3.0</li> <li>ES-DE: updated to 3.0</li>
<li>CITRA-SA: Removed, the libretro core is now the default emulator</li> <li>PONZU: added</li>
<li>YUZU: Removed, Ryujinx is now the default emulator</li> <li>CITRA-SA: Removed, the libretro core is now the default emulator, they will available trough Ponzu</li>
<li>YUZU: Removed, Ryujinx is now the default emulator, they will available trough Ponzu</li>
<li>Added new system: RYUJINX</li> <li>Added new system: RYUJINX</li>
<li>Added new system: SOLARUS</li> <li>Added new system: SOLARUS</li>
<li>Added new engine: GZDOOM</li> <li>Added new engine: GZDOOM</li>
@ -119,15 +120,11 @@
</ul> </ul>
<p>Issues:</p> <p>Issues:</p>
<ul> <ul>
<li>Vita3K firmware downloader is failing. Workaround: run the downloader twice</li>
<li>GZDOOM: the controller for player 2+ is not correctly configured</li>
<li>quit_retrodeck function seems to not working correctly</li> <li>quit_retrodeck function seems to not working correctly</li>
</ul> </ul>
<p>Missing:</p> <p>Missing:</p>
<ul> <ul>
<li>GZDOOM: hotkeys</li>
<li>SOLARUS: hotkeys</li> <li>SOLARUS: hotkeys</li>
<li>A proper reset script for the new emulators, now it's just a draft (only Vita3K is done)</li>
</ul> </ul>
</description> </description>
</release> </release>

View file

@ -27,6 +27,7 @@ source /app/libexec/global.sh
# - Open Emulator (Behind one-time power user warning dialog) # - Open Emulator (Behind one-time power user warning dialog)
# - RetroArch # - RetroArch
# - Cemu # - Cemu
# - Citra
# - Dolphin # - Dolphin
# - Duckstation # - Duckstation
# - MAME # - MAME
@ -38,6 +39,7 @@ source /app/libexec/global.sh
# - Ryujinx # - Ryujinx
# - Vita3K # - Vita3K
# - XEMU # - XEMU
# - Yuzu
# - Tools # - Tools
# - Tool: Move Folders # - Tool: Move Folders
# - Move all of RetroDECK # - Move all of RetroDECK
@ -70,6 +72,7 @@ source /app/libexec/global.sh
# - Reset Specific Emulator # - Reset Specific Emulator
# - Reset RetroArch # - Reset RetroArch
# - Reset Cemu # - Reset Cemu
# - Reset Citra
# - Reset Dolphin # - Reset Dolphin
# - Reset Duckstation # - Reset Duckstation
# - Reset GZDoom # - Reset GZDoom
@ -82,6 +85,7 @@ source /app/libexec/global.sh
# - Reset Ryujinx # - Reset Ryujinx
# - Reset Vita3k # - Reset Vita3k
# - Reset XEMU # - Reset XEMU
# - Reset Yuzu
# - Reset All Emulators # - Reset All Emulators
# - Reset EmulationStation DE # - Reset EmulationStation DE
# - Reset RetroDECK # - Reset RetroDECK
@ -425,25 +429,38 @@ configurator_power_user_warning_dialog() {
} }
configurator_open_emulator_dialog() { configurator_open_emulator_dialog() {
local emulator_list=(
"RetroArch" "Open the multi-emulator frontend RetroArch"
"Cemu" "Open the Wii U emulator CEMU"
"Dolphin" "Open the Wii & GC emulator Dolphin"
"Duckstation" "Open the PSX emulator Duckstation"
"MAME" "Open the Multiple Arcade Machine Emulator emulator MAME"
"MelonDS" "Open the NDS emulator MelonDS"
"PCSX2" "Open the PS2 emulator PSXC2"
"PPSSPP" "Open the PSP emulator PPSSPP"
"Primehack" "Open the Metroid Prime emulator Primehack"
"RPCS3" "Open the PS3 emulator RPCS3"
"Ryujinx" "Open the Switch emulator Ryujinx"
"Vita3K" "Open the PSVita emulator Vita3K"
"XEMU" "Open the Xbox emulator XEMU"
)
# Check if any ponzu is true before adding Yuzu or Citra to the list
if [[ $(get_setting_value "$rd_conf" "kiroi_ponzu" "retrodeck" "options") == "true" ]]; then
emulator_list+=("Yuzu" "Open the Switch emulator Yuzu")
fi
if [[ $(get_setting_value "$rd_conf" "akai_ponzu" "retrodeck" "options") == "true" ]]; then
emulator_list+=("Citra" "Open the 3DS emulator Citra")
fi
emulator=$(zenity --list \ emulator=$(zenity --list \
--title "RetroDECK Configurator Utility - Open Emulator" --cancel-label="Back" \ --title "RetroDECK Configurator Utility - Open Emulator" --cancel-label="Back" \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
--text="Which emulator do you want to launch?" \ --text="Which emulator do you want to launch?" \
--hide-header \ --hide-header \
--column="Emulator" --column="Action" \ --column="Emulator" --column="Action" \
"RetroArch" "Open the multi-emulator frontend RetroArch" \ "${emulator_list[@]}")
"Cemu" "Open the Wii U emulator CEMU" \
"Dolphin" "Open the Wii & GC emulator Dolphin" \
"Duckstation" "Open the PSX emulator Duckstation" \
"MAME" "Open the Multiple Arcade Machine Emulator emulator MAME" \
"MelonDS" "Open the NDS emulator MelonDS" \
"PCSX2" "Open the PS2 emulator PSXC2" \
"PPSSPP" "Open the PSP emulator PPSSPP" \
"Primehack" "Open the Metroid Prime emulator Primehack" \
"RPCS3" "Open the PS3 emulator RPCS3" \
"Ryujinx" "Open the Switch emulator Ryujinx" \
"Vita3K" "Open the PSVita emulator Vita3K" \
"XEMU" "Open the Xbox emulator XEMU" )
case $emulator in case $emulator in
@ -457,6 +474,11 @@ configurator_open_emulator_dialog() {
Cemu-wrapper Cemu-wrapper
;; ;;
"Citra" )
log i "Configurator: \"$emulator\""
/var/data/ponzu/Citra/bin/citra-qt
;;
"Dolphin" ) "Dolphin" )
log i "Configurator: \"$emulator\"" log i "Configurator: \"$emulator\""
dolphin-emu dolphin-emu
@ -512,6 +534,11 @@ configurator_open_emulator_dialog() {
xemu xemu
;; ;;
"Yuzu" )
log i "Configurator: \"$emulator\""
/var/data/ponzu/Yuzu/bin/yuzu
;;
"" ) # No selection made or Back button clicked "" ) # No selection made or Back button clicked
log i "Configurator: going back" log i "Configurator: going back"
configurator_welcome_dialog configurator_welcome_dialog
@ -523,15 +550,27 @@ configurator_open_emulator_dialog() {
} }
configurator_retrodeck_tools_dialog() { configurator_retrodeck_tools_dialog() {
local choices=(
"Tool: Move Folders" "Move RetroDECK folders between internal/SD card or to a custom location"
"Tool: Compress Games" "Compress games for systems that support it"
"Install: RetroDECK SD Controller Profile" "Install the custom RetroDECK controller layout for the Steam Deck"
"Install: PS3 Firmware" "Download and install PS3 firmware for use with the RPCS3 emulator"
"Install: PS Vita Firmware" "Download and install PS Vita firmware for use with the Vita3K emulator"
"RetroDECK: Change Update Setting" "Enable or disable online checks for new versions of RetroDECK"
)
if [[ $(get_setting_value "$rd_conf" "kiroi_ponzu" "retrodeck" "options") == "true" ]]; then
choices+=("Ponzu - Remove Yuzu" "Run Ponzu to remove Yuzu from RetroDECK. Configurations and saves will be mantained.")
fi
if [[ $(get_setting_value "$rd_conf" "akai_ponzu" "retrodeck" "options") == "true" ]]; then
choices+=("Ponzu - Remove Citra" "Run Ponzu to remove Citra from RetroDECK. Configurations and saves will be mantained.")
fi
choice=$(zenity --list --title="RetroDECK Configurator Utility - RetroDECK: Tools" --cancel-label="Back" \ choice=$(zenity --list --title="RetroDECK Configurator Utility - RetroDECK: Tools" --cancel-label="Back" \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
--column="Choice" --column="Action" \ --column="Choice" --column="Action" \
"Tool: Move Folders" "Move RetroDECK folders between internal/SD card or to a custom location" \ "${choices[@]}")
"Tool: Compress Games" "Compress games for systems that support it" \
"Install: RetroDECK SD Controller Profile" "Install the custom RetroDECK controller layout for the Steam Deck" \
"Install: PS3 Firmware" "Download and install PS3 firmware for use with the RPCS3 emulator" \
"Install: PS Vita Firmware" "Download and install PS Vita firmware for use with the Vita3K emulator" \
"RetroDECK: Change Update Setting" "Enable or disable online checks for new versions of RetroDECK" )
case $choice in case $choice in
@ -598,6 +637,14 @@ configurator_retrodeck_tools_dialog() {
configurator_online_update_setting_dialog configurator_online_update_setting_dialog
;; ;;
"Ponzu - Remove Yuzu" )
ponzu_remove "yuzu"
;;
"Ponzu - Remove Citra" )
ponzu_remove "citra"
;;
"" ) # No selection made or Back button clicked "" ) # No selection made or Back button clicked
log i "Configurator: going back" log i "Configurator: going back"
configurator_welcome_dialog configurator_welcome_dialog
@ -1032,13 +1079,43 @@ configurator_check_multifile_game_structure() {
} }
configurator_reset_dialog() { configurator_reset_dialog() {
local choices=(
"Reset Specific Emulator" "Reset only one specific emulator or engine to default settings"
"Reset RetroDECK Component" "Reset a single component, components are parts of RetroDECK that are not emulators"
"Reset All Emulators and Components" "Reset all emulators and components to default settings"
"Reset RetroDECK" "Reset RetroDECK to default settings"
)
choice=$(zenity --list --title="RetroDECK Configurator Utility - RetroDECK: Reset" --cancel-label="Back" \ choice=$(zenity --list --title="RetroDECK Configurator Utility - RetroDECK: Reset" --cancel-label="Back" \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
--column="Choice" --column="Action" \ --column="Choice" --column="Action" \
"Reset Specific Emulator" "Reset only one specific emulator or engine to default settings" \ "${choices[@]}")
"Reset RetroDECK Component" "Reset a single component, components are parts of RetroDECK that are not emulators" \
"Reset All Emulators and Components" "Reset all emulators and components to default settings" \ local emulator_list=(
"Reset RetroDECK" "Reset RetroDECK to default settings" ) "RetroArch" "Reset the multi-emulator frontend RetroArch to default settings"
"Cemu" "Reset the Wii U emulator Cemu to default settings"
"Dolphin" "Reset the Wii/GameCube emulator Dolphin to default settings"
"Duckstation" "Reset the PSX emulator Duckstation to default settings"
"GZDoom" "Reset the GZDoom Doom engine to default settings"
"MAME" "Reset the Multiple Arcade Machine Emulator (MAME) to default settings"
"MelonDS" "Reset the NDS emulator MelonDS to default settings"
"PCSX2" "Reset the PS2 emulator PCSX2 to default settings"
"PPSSPP" "Reset the PSP emulator PPSSPP to default settings"
"Primehack" "Reset the Metroid Prime emulator Primehack to default settings"
"RPCS3" "Reset the PS3 emulator RPCS3 to default settings"
"Ryujinx" "Reset the Switch emulator Ryujinx to default settings"
"Vita3k" "Reset the PS Vita emulator Vita3k to default settings"
"XEMU" "Reset the XBOX emulator XEMU to default settings"
)
# Check if any ponzu is true before adding Yuzu or Citra to the list
if [[ $(get_setting_value "$rd_conf" "kiroi_ponzu" "retrodeck" "options") == "true" ]]; then
emulator_list+=("Yuzu" "Reset the Switch emulator Yuzu")
fi
if [[ $(get_setting_value "$rd_conf" "akai_ponzu" "retrodeck" "options") == "true" ]]; then
emulator_list+=("Citra" "Reset the 3DS emulator Citra")
fi
case $choice in case $choice in
@ -1049,22 +1126,7 @@ configurator_reset_dialog() {
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
--text="Which emulator or engine do you want to reset to default?" \ --text="Which emulator or engine do you want to reset to default?" \
--column="Emulator" --column="Action" \ --column="Emulator" --column="Action" \
"RetroArch" "Reset the multi-emulator frontend RetroArch to default settings" \ "${emulator_list[@]}")
"Cemu" "Reset the Wii U emulator Cemu to default settings" \
"Dolphin" "Reset the Wii/GameCube emulator Dolphin to default settings" \
"Duckstation" "Reset the PSX emulator Duckstation to default settings" \
"GZDoom" "Reset the GZDoom Doom engine to default settings" \
"MAME" "Reset the Multiple Arcade Machine Emulator (MAME) to default settings" \
"MelonDS" "Reset the NDS emulator MelonDS to default settings" \
"PCSX2" "Reset the PS2 emulator PCSX2 to default settings" \
"PPSSPP" "Reset the PSP emulator PPSSPP to default settings" \
"Primehack" "Reset the Metroid Prime emulator Primehack to default settings" \
"RPCS3" "Reset the PS3 emulator RPCS3 to default settings" \
"Ryujinx" "Reset the Switch emulator Ryujinx to default settings" \
"Vita3k" "Reset the PS Vita emulator Vita3k to default settings" \
"XEMU" "Reset the XBOX emulator XEMU to default settings" )
# "Ryujinx" "Reset the Switch emulator Ryujinx to default settings" \
case $component_to_reset in case $component_to_reset in
@ -1083,7 +1145,7 @@ configurator_reset_dialog() {
fi fi
;; ;;
"Cemu" | "Dolphin" | "Duckstation" | "MelonDS" | "MAME" | "PCSX2" | "PPSSPP" | "Primehack" | "RPCS3" | "Ryujinx" ) "Cemu" | "Citra" | "Dolphin" | "Duckstation" | "MelonDS" | "MAME" | "PCSX2" | "PPSSPP" | "Primehack" | "RPCS3" | "Ryujinx" )
if [[ $(configurator_reset_confirmation_dialog "$component_to_reset" "Are you sure you want to reset the $component_to_reset emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then if [[ $(configurator_reset_confirmation_dialog "$component_to_reset" "Are you sure you want to reset the $component_to_reset emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then
prepare_component "reset" "$component_to_reset" "configurator" prepare_component "reset" "$component_to_reset" "configurator"
configurator_process_complete_dialog "resetting $component_to_reset" configurator_process_complete_dialog "resetting $component_to_reset"