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

This commit is contained in:
icenine451 2024-02-21 09:45:44 -05:00
commit 4e5d6ebb53
34 changed files with 1998 additions and 256 deletions

View file

@ -113,16 +113,27 @@ jobs:
# if it's a feature branch it will not marked as "latest" cooker version
- name: "Set makeLatest (cooker only)"
run: |
if [[ "$BRANCH_NAME" == 'feat/'* ]]; then
if [[ "$BRANCH_NAME" == 'feat/'* || "$BRANCH_NAME" == 'ref/'* ]]; then
echo "MAKE_LATEST=false" >> $GITHUB_ENV
else
echo "MAKE_LATEST=true" >> $GITHUB_ENV
fi
# if the branch is coming from a PR the tag should be manually built
- name: "Generate version tag"
run: |
if [[ "$BRANCH_NAME" == 'ref/'* ]]; then
pr_number=$(echo ${{env.BRANCH_NAME}} | awk -F'/' '{print $3}')
original_branch=$(git ls-remote --heads origin "refs/pull/$pr_number/head" | cut -d'/' -f3)
echo "TAG=PR-$pr_number-$original_branch-${{ env.buildid }}" >> $GITHUB_ENV
else
echo "TAG=${{env.BRANCH_NAME}}-${{ env.buildid }}" >> $GITHUB_ENV
fi
- name: Publish the flatpak in a new cooker release
uses: ncipollo/release-action@v1
with:
tag: "${{env.BRANCH_NAME}}-${{ env.buildid }}"
tag: "${{env.TAG}}"
body: |
# Release Notes (Cooker)
This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.

View file

@ -2,3 +2,4 @@
0209^0212^0000^2359^rd-lunar-dragon-splash.svg
0214^0214^0001^2359^rd-valentines-splash.svg
0317^0317^0000^2359^rd-stpatricks-splash.svg
0429^0505^0000^2359^rd-kodomo-golden.svg

View file

@ -21,6 +21,7 @@ desktop_mode_warning=true
low_space_warning=true
update_check=false
update_repo=RetroDECK
branch=
update_ignore=
cloud_saves=false
multi_user_mode=false

View file

@ -7,31 +7,31 @@ writeconfig 0
#
# CORE SEARCH PATH OPTIONS
#
homepath /var/config/mame
rompath RETRODECKROMSDIR
hashpath /app/share/mame/hash
samplepath /app/share/mame/samples
artpath RETRODECKHOMEDIR/downloaded_media/arcade/screenshots/
ctrlrpath /app/share/mame/ctrlr
inipath /var/config/mame
fontpath /app/bin/
cheatpath /app/share/mame/cheat
crosshairpath /app/share/mame/crosshair
pluginspath /app/share/mame/plugins
languagepath /app/share/mame/language
swpath /app/share/mame/software
homepath /var/data/mame/plugin-data
rompath RETRODECKROMSDIR/mame/;RETRODECKROMSDIR/arcade/;RETRODECKROMSDIR/bbcmicro/
hashpath /var/data/mame/hash
samplepath /var/data/mame/assets/samples
artpath /var/data/mame/assets/artwork
ctrlrpath /var/config/ctrlr
inipath /var/config/mame/ini
fontpath /var/data/mame/assets/fonts
cheatpath /var/data/mame/cheat
crosshairpath /var/data/mame/assets/crosshair
pluginspath /var/data/mame/plugins
languagepath /var/data/mame/assets/language
swpath /var/data/mame/assets/software
#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory /var/config/mame/cfg
nvram_directory /var/config/mame/nvram
nvram_directory RETRODECKSAVESDIR/mame-sa/nvram
input_directory /var/config/mame/inp
state_directory RETRODECKSAVESDIR/mame-sa/states
snapshot_directory RETRODECKHOMEDIR/screenshots
diff_directory /var/config/mame/diff
comment_directory /var/config/mame/comments
share_directory /var/config/mame/share
state_directory RETRODECKSTATESDIR/mame-sa
snapshot_directory RETRODECKHOMEDIR/screenshots/mame-sa
diff_directory RETRODECKSAVESDIR/mame-sa/diff
comment_directory /var/data/mame/assets/comments
share_directory /var/data/mame/assets/share
#
# CORE STATE/PLAYBACK OPTIONS
@ -234,7 +234,7 @@ output auto
keyboardprovider auto
mouseprovider auto
lightgunprovider auto
joystickprovider auto
joystickprovider sdljoy
#
# OSD DEBUGGING OPTIONS
@ -353,7 +353,7 @@ networkprovider auto
#
# BGFX POST-PROCESSING OPTIONS
#
bgfx_path bgfx
bgfx_path /app/share/mame/bgfx
bgfx_backend auto
bgfx_debug 0
bgfx_screen_chains

View file

@ -1,26 +1,26 @@
#
# UI SEARCH PATH OPTIONS
#
historypath history;dats;.
categorypath folders
cabinets_directory cabinets;cabdevs
cpanels_directory cpanel
pcbs_directory pcb
flyers_directory flyers
titles_directory titles
ends_directory ends
marquees_directory marquees;RETRODECKHOMEDIR/downloaded_media/arcade/marquees
artwork_preview_directory "artwork preview;artpreview"
bosses_directory bosses
logos_directory logo
scores_directory scores
versus_directory versus
gameover_directory gameover
howto_directory howto
select_directory select
icons_directory icons
covers_directory covers;RETRODECKHOMEDIR/downloaded_media/arcade/covers
ui_path ui
historypath /var/data/mame/dats
categorypath /var/data/mame/folders
cabinets_directory /var/data/mame/assets/cabinets
cpanels_directory /var/data/mame/assets/cpanel
pcbs_directory /var/data/mame/assets/pcb
flyers_directory /var/data/mame/assets/flyers
titles_directory /var/data/mame/assets/titles
ends_directory /var/data/mame/assets/ends
marquees_directory /var/data/mame/assets/marquees
artwork_preview_directory /var/data/mame/assets/artwork-preview
bosses_directory /var/data/mame/assets/bosses
logos_directory /var/data/mame/assets/logo
scores_directory /var/data/mame/assets/scores
versus_directory /var/data/mame/assets/versus
gameover_directory /var/data/mame/assets/gameover
howto_directory /var/data/mame/assets/howto
select_directory /var/data/mame/assets/select
icons_directory /var/data/mame/assets/icons
covers_directory /var/data/mame/assets/covers
ui_path /var/data/mame/assets/ui
#
# UI MISC OPTIONS
@ -62,7 +62,7 @@ remember_last 0
last_used_filter Available
system_right_panel image
software_right_panel image
system_right_image cover
system_right_image snap
software_right_image snap
enlarge_snaps 1
forced4x3 1

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!-- This is the ES-DE find rules configuration file for Unix -->
<!-- This is the ES-DE find rules configuration file for Linux -->
<ruleList>
<emulator name="OS-SHELL">
<!-- Operating system shell -->
@ -42,10 +42,6 @@
<entry>/usr/lib64/libretro</entry>
<!-- Manjaro repository -->
<entry>/usr/lib/libretro</entry>
<!-- FreeBSD and OpenBSD repository -->
<entry>/usr/local/lib/libretro</entry>
<!-- NetBSD repository -->
<entry>/usr/pkg/lib/libretro</entry>
</rule>
</core>
<emulator name="3DSEN-WINDOWS">
@ -69,6 +65,18 @@
<entry>~/bin/advancemame/advmame</entry>
</rule>
</emulator>
<emulator name="AMIBERRY">
<!-- Commodore Amiga emulator Amiberry -->
<rule type="systempath">
<entry>amiberry</entry>
</rule>
<rule type="staticpath">
<entry>~/Applications/amiberry/amiberry</entry>
<entry>~/.local/share/applications/amiberry/amiberry</entry>
<entry>~/.local/bin/amiberry/amiberry</entry>
<entry>~/bin/amiberry/amiberry</entry>
</rule>
</emulator>
<emulator name="ARES">
<!-- Multi-system emulator ares -->
<rule type="systempath">
@ -318,24 +326,35 @@
<entry>org.flycast.Flycast</entry>
</rule>
<rule type="staticpath">
<entry>~/Applications/flycast*.AppImage</entry>
<entry>~/.local/share/applications/flycast*.AppImage</entry>
<entry>~/.local/bin/flycast*.AppImage</entry>
<entry>~/bin/flycast*.AppImage</entry>
<entry>~/Applications/flycast-x86*.AppImage</entry>
<entry>~/.local/share/applications/flycast-x86*.AppImage</entry>
<entry>~/.local/bin/flycast-x86*.AppImage</entry>
<entry>~/bin/flycast-x86*.AppImage</entry>
<entry>/var/lib/flatpak/exports/bin/org.flycast.Flycast</entry>
<entry>~/.local/share/flatpak/exports/bin/org.flycast.Flycast</entry>
</rule>
</emulator>
<emulator name="FLYCAST-DOJO">
<!-- Sega Dreamcast emulator Flycast Dojo -->
<rule type="systempath">
<entry>flycast-dojo</entry>
</rule>
<rule type="staticpath">
<entry>~/Applications/flycast-dojo*.AppImage</entry>
<entry>~/.local/share/applications/flycast-dojo*.AppImage</entry>
<entry>~/.local/bin/flycast-dojo*.AppImage</entry>
<entry>~/bin/flycast-dojo*.AppImage</entry>
</rule>
</emulator>
<emulator name="FS-UAE">
<!-- Commodore Amiga emulator FS-UAE -->
<rule type="systempath">
<entry>fs-uae</entry>
<entry>fsuae.fs-uae</entry>
<entry>net.fsuae.FS-UAE</entry>
<entry>fs-uae-launcher</entry>
<entry>fsuae.launcher</entry>
</rule>
<rule type="staticpath">
<entry>/var/lib/flatpak/exports/bin/net.fsuae.FS-UAE</entry>
<entry>~/.local/share/flatpak/exports/bin/net.fsuae.FS-UAE</entry>
<entry>/var/lib/flatpak/exports/bin/net.fsuae.FS-UAE|flatpak run --command=fs-uae-launcher net.fsuae.FS-UAE</entry>
<entry>~/.local/share/flatpak/exports/bin/net.fsuae.FS-UAE|flatpak run --command=fs-uae-launcher net.fsuae.FS-UAE</entry>
</rule>
</emulator>
<emulator name="FUSE">
@ -649,6 +668,8 @@
<entry>~/.local/share/applications/punes/punes</entry>
<entry>~/.local/bin/punes/punes</entry>
<entry>~/bin/punes/punes</entry>
<entry>/var/lib/flatpak/exports/bin/io.github.punesemu.puNES</entry>
<entry>~/.local/share/flatpak/exports/bin/io.github.punesemu.puNES</entry>
</rule>
</emulator>
<emulator name="QUASI88">
@ -721,16 +742,22 @@
<emulator name="RYUJINX">
<!-- Nintendo Switch emulator Ryujinx -->
<rule type="systempath">
<entry>Ryujinx.sh</entry>
<entry>Ryujinx.sh</entry> <!-- RetroDECK -->
<entry>Ryujinx</entry>
<entry>Ryujinx.Ava</entry>
<entry>org.ryujinx.Ryujinx</entry>
</rule>
<rule type="staticpath">
<entry>/var/lib/flatpak/exports/bin/org.ryujinx.Ryujinx</entry>
<entry>~/.local/share/flatpak/exports/bin/org.ryujinx.Ryujinx</entry>
<entry>~/Applications/publish/Ryujinx.sh</entry>
<entry>~/.local/share/applications/publish/Ryujinx.sh</entry>
<entry>~/.local/bin/publish/Ryujinx.sh</entry>
<entry>~/bin/publish/Ryujinx.sh</entry>
<entry>~/Applications/publish/Ryujinx</entry>
<entry>~/.local/share/applications/publish/Ryujinx</entry>
<entry>~/.local/bin/publish/Ryujinx</entry>
<entry>~/bin/publish/Ryujinx</entry>
<entry>~/Applications/publish/Ryujinx.Ava</entry>
<entry>~/.local/share/applications/publish/Ryujinx.Ava</entry>
<entry>~/.local/bin/publish/Ryujinx.Ava</entry>
<entry>~/bin/publish/Ryujinx.Ava</entry>
</rule>
</emulator>
<emulator name="SAMEBOY">
@ -868,6 +895,19 @@
<entry>~/.local/share/applications/Supermodel/supermodel</entry>
<entry>~/.local/bin/Supermodel/supermodel</entry>
<entry>~/bin/Supermodel/supermodel</entry>
<entry>/var/lib/flatpak/exports/bin/com.supermodel3.Supermodel</entry>
<entry>~/.local/share/flatpak/exports/bin/com.supermodel3.Supermodel</entry>
</rule>
</emulator>
<emulator name="TIC-80">
<!-- TIC-80 Fantasy Computer (game engine) -->
<rule type="systempath">
<entry>tic80</entry>
<entry>com.tic80.TIC_80</entry>
</rule>
<rule type="staticpath">
<entry>/var/lib/flatpak/exports/bin/com.tic80.TIC_80</entry>
<entry>~/.local/share/flatpak/exports/bin/com.tic80.TIC_80</entry>
</rule>
</emulator>
<emulator name="TRIFORCE">
@ -950,6 +990,10 @@
<entry>Vita3K</entry>
</rule>
<rule type="staticpath">
<entry>~/Applications/Vita3K*.AppImage</entry>
<entry>~/.local/share/applications/Vita3K*.AppImage</entry>
<entry>~/.local/bin/Vita3K*.AppImage</entry>
<entry>~/bin/Vita3K*.AppImage</entry>
<entry>~/Applications/Vita3K/Vita3K</entry>
<entry>~/.local/share/applications/Vita3K/Vita3K</entry>
<entry>~/.local/bin/Vita3K/Vita3K</entry>

View file

@ -145,7 +145,7 @@
<string name="ScraperPasswordScreenScraper" value="" />
<string name="ScraperRegion" value="eu" />
<string name="ScraperUsernameScreenScraper" value="" />
<string name="ScreensaverSlideshowImageDir" value="~/.emulationstation/slideshow/custom_images" />
<string name="ScreensaverSlideshowImageDir" value="/var/config/emulationstation/ES-DE/slideshow/custom_images" />
<string name="ScreensaverType" value="video" />
<string name="StartupSystem" value="" />
<string name="SystemsSorting" value="default" />

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!-- This is the ES-DE game systems configuration file for Unix -->
<!-- This is the ES-DE game systems configuration file for Linux -->
<systemList>
<system>
<name>3do</name>
@ -30,8 +30,8 @@
<fullname>Adventure Game Studio Game Engine</fullname>
<path>%ROMPATH%/ags</path>
<extension>.desktop .sh</extension>
<command label="Native binary">%STARTDIR%=%GAMEDIR% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<platform>ags</platform>
<command label="Shortcut or script">%STARTDIR%=%GAMEDIR% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<platform>pcwindows</platform>
<theme>ags</theme>
</system>
-->
@ -39,9 +39,11 @@
<name>amiga</name>
<fullname>Commodore Amiga</fullname>
<path>%ROMPATH%/amiga</path>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .rp9 .RP9 .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .uae .UAE .7z .7Z .zip .ZIP</extension>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .rp9 .RP9 .uae .UAE .7z .7Z .zip .ZIP</extension>
<command label="PUAE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae_libretro.so %ROM%</command>
<command label="PUAE 2021">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae2021_libretro.so %ROM%</command>
<command label="FS-UAE (Standalone)">%EMULATOR_FS-UAE% %ROM%</command>
<command label="Amiberry (Standalone)">%STARTDIR%=%EMUDIR% %EMULATOR_AMIBERRY% --autoload %ROM%</command>
<platform>amiga</platform>
<theme>amiga</theme>
</system>
@ -49,9 +51,11 @@
<name>amiga1200</name>
<fullname>Commodore Amiga 1200</fullname>
<path>%ROMPATH%/amiga1200</path>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .rp9 .RP9 .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .uae .UAE .7z .7Z .zip .ZIP</extension>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .rp9 .RP9 .uae .UAE .7z .7Z .zip .ZIP</extension>
<command label="PUAE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae_libretro.so %ROM%</command>
<command label="PUAE 2021">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae2021_libretro.so %ROM%</command>
<command label="FS-UAE (Standalone)">%EMULATOR_FS-UAE% %ROM%</command>
<command label="Amiberry (Standalone)">%STARTDIR%=%EMUDIR% %EMULATOR_AMIBERRY% --autoload %ROM%</command>
<platform>amiga</platform>
<theme>amiga1200</theme>
</system>
@ -59,9 +63,11 @@
<name>amiga600</name>
<fullname>Commodore Amiga 600</fullname>
<path>%ROMPATH%/amiga600</path>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .rp9 .RP9 .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .uae .UAE .7z .7Z .zip .ZIP</extension>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .rp9 .RP9 .uae .UAE .7z .7Z .zip .ZIP</extension>
<command label="PUAE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae_libretro.so %ROM%</command>
<command label="PUAE 2021">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae2021_libretro.so %ROM%</command>
<command label="FS-UAE (Standalone)">%EMULATOR_FS-UAE% %ROM%</command>
<command label="Amiberry (Standalone)">%STARTDIR%=%EMUDIR% %EMULATOR_AMIBERRY% --autoload %ROM%</command>
<platform>amiga</platform>
<theme>amiga600</theme>
</system>
@ -69,9 +75,11 @@
<name>amigacd32</name>
<fullname>Commodore Amiga CD32</fullname>
<path>%ROMPATH%/amigacd32</path>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .rp9 .RP9 .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .uae .UAE .7z .7Z .zip .ZIP</extension>
<extension>.adf .ADF .adz .ADZ .ccd .CCD .chd .CHD .cue .CUE .dms .DMS .fdi .FDI .hdf .HDF .hdz .HDZ .ipf .IPF .iso .ISO .lha .LHA .m3u .M3U .mds .MDS .nrg .NRG .rp9 .RP9 .uae .UAE .7z .7Z .zip .ZIP</extension>
<command label="PUAE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae_libretro.so %ROM%</command>
<command label="PUAE 2021">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae2021_libretro.so %ROM%</command>
<command label="FS-UAE (Standalone)">%EMULATOR_FS-UAE% --config:amiga-model=CD32 %ROM%</command>
<command label="Amiberry (Standalone)">%STARTDIR%=%EMUDIR% %EMULATOR_AMIBERRY% --model CD32 --autoload %ROM%</command>
<platform>amigacd32</platform>
<theme>amigacd32</theme>
</system>
@ -104,6 +112,7 @@
<extension>.do .DO .dsk .DSK .nib .NIB .po .PO</extension>
<!-- <command label="LinApple (Standalone)">%EMULATOR_LINAPPLE% -f -b &ndash;&ndash;d1 %ROM%</command> -->
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module apple2 %ROM%</command> -->
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "apple2e -rompath \"%GAMEDIRRAW%;%ROMPATH%/apple2\" -flop1 \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/apple2 apple2e -flop1 %ROM%</command>
<platform>apple2</platform>
<theme>apple2</theme>
@ -114,7 +123,7 @@
<fullname>Apple IIGS</fullname>
<path>%ROMPATH%/apple2gs</path>
<extension>.2mg .2MG .7z .7z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "apple2gs -rompath %GAMEDIR%\;%ROMPATH%/apple2gs -flop3 \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "apple2gs -rompath \"%GAMEDIRRAW%;%ROMPATH%/apple2gs\" -flop3 \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/apple2gs apple2gs -flop3 %ROM%</command>
<platform>apple2gs</platform>
<theme>apple2gs</theme>
@ -135,9 +144,9 @@
<command label="FB Alpha 2012">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/fbalpha2012_libretro.so %ROM%</command>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command>
<!--<command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command>-->
<command label="Kronos">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/kronos_libretro.so %ROM%</command>
<command label="Supermodel (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log -force-feedback %INJECT%=%BASENAME%.commands %ROM%</command>
<command label="Supermodel [Fullscreen] (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log -fullscreen -force-feedback %INJECT%=%BASENAME%.commands %ROM%</command>
<!--<command label="Supermodel (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log %INJECT%=%BASENAME%.commands %ROM%</command>-->
<command label="Shortcut or script">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<platform>arcade</platform>
<theme>arcade</theme>
@ -148,7 +157,7 @@
<fullname>Emerson Arcadia 2001</fullname>
<path>%ROMPATH%/arcadia</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "arcadia -rompath %GAMEDIR%\;%ROMPATH%/arcadia -cart \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "arcadia -rompath \"%GAMEDIRRAW%;%ROMPATH%/arcadia\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/arcadia arcadia -cart %ROM%</command>
<platform>arcadia</platform>
<theme>arcadia</theme>
@ -181,7 +190,7 @@
<fullname>Bally Astrocade</fullname>
<path>%ROMPATH%/astrocde</path>
<extension>.7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "astrocde -rompath \"%GAMEDIRRAW%;%ROMPATH%/astrocde\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/astrocde astrocde -cart %BASENAME%</command>
<platform>astrocde</platform>
<theme>astrocade</theme>
@ -216,6 +225,7 @@
<path>%ROMPATH%/atari7800</path>
<extension>.a78 .A78 .bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="ProSystem">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/prosystem_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "a7800 -rompath \"%GAMEDIRRAW%;%ROMPATH%/atari7800\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/atari7800 a7800 -cart %ROM%</command>
<platform>atari7800</platform>
<theme>atari7800</theme>
@ -289,9 +299,10 @@
<name>atomiswave</name>
<fullname>Sammy Corporation Atomiswave</fullname>
<path>%ROMPATH%/atomiswave</path>
<extension>.bin .BIN .cdi .CDI .cue .CUE .dat .DAT .elf .ELF .gdi .GDI .iso .ISO .lst .LST .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .dat .DAT .elf .ELF .lst .LST .7z .7Z .zip .ZIP</extension>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!-- <command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command> -->
<!-- <command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command> -->
<platform>arcade</platform>
<theme>atomiswave</theme>
</system>
@ -320,15 +331,6 @@
<platform>c64</platform>
<theme>c64</theme>
</system>
<system>
<name>cavestory</name>
<fullname>Cave Story (NXEngine)</fullname>
<path>%ROMPATH%/cavestory</path>
<extension>.exe .EXE .7z .7Z .zip .ZIP</extension>
<command label="NXEngine">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/nxengine_libretro.so %ROM%</command>
<platform>cavestory</platform>
<theme>cavestory</theme>
</system>
<system>
<name>cdimono1</name>
<fullname>Philips CD-i</fullname>
@ -347,6 +349,8 @@
<extension>.ccd .CCD .chd .CHD .cue .CUE .iso .ISO .m3u .M3U .mds .MDS .nrg .NRG .rp9 .RP9 .7z .7Z .zip .ZIP</extension>
<command label="PUAE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae_libretro.so %ROM%</command>
<command label="PUAE 2021">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/puae2021_libretro.so %ROM%</command>
<!-- <command label="FS-UAE (Standalone)">%EMULATOR_FS-UAE% &ndash;&ndashconfig:amiga-model=CDTV %ROM%</command> -->
<!-- <command label="Amiberry (Standalone)">%STARTDIR%=%EMUDIR% %EMULATOR_AMIBERRY% &ndash;&ndashmodel CDTV &ndash;&ndash;autoload %ROM%</command> -->
<platform>cdtv</platform>
<theme>cdtv</theme>
</system>
@ -365,6 +369,8 @@
<path>%ROMPATH%/channelf</path>
<extension>.bin .BIN .chf .CHF .7z .7Z .zip .ZIP</extension>
<command label="FreeChaF">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/freechaf_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "channelf -rompath \"%GAMEDIRRAW%;%ROMPATH%/channelf\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/channelf channelf -cart %ROM%</command>
<platform>channelf</platform>
<theme>channelf</theme>
</system>
@ -401,6 +407,7 @@
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/consolearcade %BASENAME%</command>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!--<command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command>-->
<!--<command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command>-->
<command label="Kronos">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/kronos_libretro.so %ROM%</command>
<!--<command label="Mednafen [Sega Saturn] (Standalone)">%EMULATOR_MEDNAFEN% -force_module ss %ROM%</command>-->
<!--<command label="Play! (Standalone)">%EMULATOR_PLAY!% &ndash;&ndash;disc %ROM%</command>-->
@ -498,11 +505,12 @@
<name>daphne</name>
<fullname>Daphne Arcade LaserDisc Emulator</fullname>
<path>%ROMPATH%/daphne</path>
<extension>.daphne .singe .7z .7Z .zip .ZIP</extension>
<extension>.daphne .dirksimple .ogv .OGV .singe .7z .7Z .zip .ZIP</extension>
<!--<command label="Hypseus [Daphne] (Standalone)">%EMULATOR_HYPSEUS-SINGE% %BASENAME% vldp -framefile %GAMEDIR%/%BASENAME%.txt %INJECT%=%BASENAME%.commands</command>-->
<!--<command label="Hypseus [Singe] (Standalone)">%EMULATOR_HYPSEUS-SINGE% singe vldp -framefile %GAMEDIR%/%BASENAME%.txt -script %GAMEDIR%/%BASENAME%.singe %INJECT%=%BASENAME%.commands</command>-->
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so %ROM%</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/daphne %BASENAME%</command>
<command label="DirkSimple">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/dirksimple_libretro.so %ROM%</command>
<platform>daphne, arcade</platform>
<theme>daphne</theme>
</system>
@ -511,7 +519,7 @@
<name>doom</name>
<fullname>Doom</fullname>
<path>%ROMPATH%/doom</path>
<extension>.doom .DOOM .desktop .iwad .IWAD .pk4 .PK4 .pk3 .PK3 .pwad .PWAD .sh .wad .WAD .ipk3 .IPK3</extension>
<extension>.doom .DOOM .desktop .ipk3 .IPK3 .iwad .IWAD .pk3 .PK3 .pk4 .PK4 .pwad .PWAD .sh .wad .WAD</extension>
<command label="GZDoom (Standalone)">gzdoom.sh %ROM%</command>
<command label="PrBoom">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/prboom_libretro.so %ROM%</command>
<!-- <command label="PrBoom+ (Standalone)">%EMULATOR_PRBOOM-PLUS% -iwad %ROM%</command> -->
@ -550,9 +558,10 @@
<name>dreamcast</name>
<fullname>Sega Dreamcast</fullname>
<path>%ROMPATH%/dreamcast</path>
<extension>.chd .CHD .cdi .CDI .iso .ISO .elf .ELF .cue .CUE .gdi .GDI .lst .LST .dat .DAT .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.cdi .CDI .chd .CHD .cue .CUE .dat .DAT .elf .ELF .gdi .GDI .iso .ISO .lst .LST .m3u .M3U .7z .7Z .zip .ZIP</extension>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!-- <command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command> -->
<!-- <command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command> -->
<!-- <command label="Redream (Standalone)">%EMULATOR_REDREAM% %ROM%</command> -->
<platform>dreamcast</platform>
<theme>dreamcast</theme>
@ -609,6 +618,8 @@
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module nes %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Famicom" %ROM%</command> -->
<!-- <command label="ares FDS (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Famicom Disk System" %ROM%</command> -->
<!-- <command label="3dSen (Wine)">%STARTDIR%=%EMUDIR% %PRECOMMAND_WINE% %EMULATOR_3DSEN-WINDOWS% -id=%INJECT%=%BASENAME%.3dsen</command> -->
<!-- <command label="3dSen (Proton)">%STARTDIR%=%EMUDIR% %PRECOMMAND_PROTON% %EMULATOR_3DSEN-WINDOWS% -id=%INJECT%=%BASENAME%.3dsen</command> -->
<platform>famicom</platform>
<theme>famicom</theme>
</system>
@ -683,9 +694,10 @@
<name>fmtowns</name>
<fullname>Fujitsu FM Towns</fullname>
<path>%ROMPATH%/fmtowns</path>
<extension>.cue .CUE .iso .ISO .7z .7Z .zip .ZIP</extension>
<extension>.cdr .CDR .chd .CHD .cue .CUE .gdi .GDI .iso .ISO</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "fmtownshr -rompath \"%GAMEDIRRAW%;%ROMPATH%/fmtowns\" -cdrom \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/fmtowns fmtowns %BASENAME%</command>
<!--<command label="Tsugaru (Standalone)">%EMULATOR_TSUGARU% %EMUDIR%/roms -HOSTSHORTCUT ESC 0 0 FORCEQUIT -FULLSCREEN -CD %ROM% %INJECT%=%BASENAME%.cfg</command>-->
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/fmtowns fmtowns %BASENAME%</command>
<platform>fmtowns</platform>
<theme>fmtowns</theme>
</system>
@ -707,7 +719,7 @@
<fullname>Bit Corporation Gamate</fullname>
<path>%ROMPATH%/gamate</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "gamate -rompath %GAMEDIR%\;%ROMPATH%/gamate -cart \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "gamate -rompath \"%GAMEDIRRAW%;%ROMPATH%/gamate\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/gamate gamate -cart %ROM%</command>
<platform>gamate</platform>
<theme>gamate</theme>
@ -718,6 +730,7 @@
<fullname>Nintendo Game and Watch</fullname>
<path>%ROMPATH%/gameandwatch</path>
<extension>.mgw .MGW .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so %ROM%</command>
<!-- <command label="MAME Local Artwork (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -artpath %ROMPATH%/gameandwatch/artwork -rompath %GAMEDIR%\;%ROMPATH%/gameandwatch %BASENAME%</command> -->
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/gameandwatch %BASENAME%</command>
<command label="Handheld Electronic (GW)">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gw_libretro.so %ROM%</command>
@ -730,7 +743,7 @@
<fullname>Tiger Electronics Game.com</fullname>
<path>%ROMPATH%/gamecom</path>
<extension>.tgc .TGC .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "gamecom -rompath %GAMEDIR%\;%ROMPATH%/gamecom -cartridge1 \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "gamecom -rompath \"%GAMEDIRRAW%;%ROMPATH%/gamecom\" -cartridge1 \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/gamecom gamecom -cartridge1 %ROM%</command>
<platform>gamecom</platform>
<theme>gamecom</theme>
@ -747,6 +760,7 @@
<command label="SMS Plus GX">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/smsplus_libretro.so %ROM%</command>
<!--<command label="PicoDrive">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/picodrive_libretro.so %ROM%</command> -->
<!--<command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module gg %ROM%</command> -->
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!--<command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Game Gear" %ROM%</command>-->
<platform>gamegear</platform>
<theme>gamegear</theme>
@ -762,6 +776,7 @@
<command label="Gearboy">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gearboy_libretro.so %ROM%</command>
<!-- <command label="Gearboy (Standalone)">%EMULATOR_GEARBOY% %ROM%</command> -->
<command label="TGB Dual">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/tgbdual_libretro.so %ROM%</command>
<command label="DoubleCherryGB">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/DoubleCherryGB_libretro.so %ROM%</command>
<command label="Mesen-S">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen-s_libretro.so %ROM%</command>
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<command label="bsnes">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/bsnes_libretro.so %ROM%</command>
@ -769,6 +784,9 @@
<!-- <command label="mGBA (Standalone)">%EMULATOR_MGBA% -f %ROM%</command> -->
<command label="VBA-M">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/vbam_libretro.so %ROM%</command>
<!-- <command label="VBA-M (Standalone)">%EMULATOR_VBA-M% -f %ROM%</command> -->
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module gb %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Game Boy" %ROM%</command> -->
<!-- <command label="SkyEmu (Standalone)">%EMULATOR_SKYEMU% %ROM%</command> -->
<platform>gb</platform>
<theme>gb</theme>
</system>
@ -783,6 +801,7 @@
<!-- <command label="VBA-M (Standalone)">%EMULATOR_VBA-M% -f %ROM%</command> -->
<command label="VBA Next">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/vba_next_libretro.so %ROM%</command>
<command label="gpSP">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gpsp_libretro.so %ROM%</command>
<!--<command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module gba %ROM%</command> -->
<!--<command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Game Boy Advance" %ROM%</command>-->
<!--<command label="SkyEmu (Standalone)">%EMULATOR_SKYEMU% %ROM%</command>-->
<platform>gba</platform>
@ -799,6 +818,7 @@
<command label="Gearboy">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gearboy_libretro.so %ROM%</command>
<!-- <command label="Gearboy (Standalone)">%EMULATOR_GEARBOY% %ROM%</command> -->
<command label="TGB Dual">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/tgbdual_libretro.so %ROM%</command>
<command label="DoubleCherryGB">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/DoubleCherryGB_libretro.so %ROM%</command>
<command label="Mesen-S">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen-s_libretro.so %ROM%</command>
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<command label="bsnes">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/bsnes_libretro.so %ROM%</command>
@ -806,6 +826,9 @@
<!-- <command label="mGBA (Standalone)">%EMULATOR_MGBA% -f %ROM%</command> -->
<command label="VBA-M">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/vbam_libretro.so %ROM%</command>
<!-- <command label="VBA-M (Standalone)">%EMULATOR_VBA-M% -f %ROM%</command> -->
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module gb %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Game Boy Color" %ROM%</command>-->
<!-- <command label="SkyEmu (Standalone)">%EMULATOR_SKYEMU% %ROM%</command>-->
<platform>gbc</platform>
<theme>gbc</theme>
</system>
@ -842,7 +865,7 @@
<fullname>Hartung Game Master</fullname>
<path>%ROMPATH%/gmaster</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "gmaster -rompath %GAMEDIR%\;%ROMPATH%/gmaster -cart \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "gmaster -rompath \"%GAMEDIRRAW%;%ROMPATH%/gmaster\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/gmaster gmaster -cart %ROM%</command>
<platform>gmaster</platform>
<theme>gmaster</theme>
@ -863,8 +886,10 @@
<name>intellivision</name>
<fullname>Mattel Electronics Intellivision</fullname>
<path>%ROMPATH%/intellivision</path>
<extension>.int .INT .bin .BIN .rom .ROM .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .int .INT .rom .ROM .7z .7Z .zip .ZIP</extension>
<command label="FreeIntv">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/freeintv_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "intv -rompath \"%GAMEDIRRAW%;%ROMPATH%/intellivision\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/intellivision intv -cart %ROM%</command>
<platform>intellivision</platform>
<theme>intellivision</theme>
</system>
@ -877,22 +902,11 @@
<platform>android</platform>
<theme>j2me</theme>
</system>
<!--
<system>
<name>kodi</name>
<fullname>Kodi Home Theatre Software</fullname>
<path>%ROMPATH%/kodi</path>
<extension>.desktop .sh</extension>
<command label="Kodi (Standalone)">%RUNINBACKGROUND% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<platform>pc</platform>
<theme>kodi</theme>
</system>
-->
<system>
<name>laserdisc</name>
<fullname>LaserDisc Games</fullname>
<path>%ROMPATH%/laserdisc</path>
<extension>.daphne .singe .7z .7Z .zip .ZIP</extension>
<extension>.daphne .dirksimple .ogv .OGV .singe .7z .7Z .zip .ZIP</extension>
<!--<command label="Hypseus [Daphne] (Standalone)">%EMULATOR_HYPSEUS-SINGE% %BASENAME% vldp -framefile %GAMEDIR%/%BASENAME%.txt %INJECT%=%BASENAME%.commands</command>-->
<!--<command label="Hypseus [Singe] (Standalone)">%EMULATOR_HYPSEUS-SINGE% singe vldp -framefile %GAMEDIR%/%BASENAME%.txt -script %GAMEDIR%/%BASENAME%.singe %INJECT%=%BASENAME%.commands</command>-->
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so %ROM%</command>
@ -905,6 +919,7 @@
<fullname>LCD Handheld Games</fullname>
<path>%ROMPATH%/lcdgames</path>
<extension>.mgw .MGW .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so %ROM%</command>
<!-- <command label="MAME Local Artwork (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -artpath %ROMPATH%/lcdgames/artwork -rompath %GAMEDIR%\;%ROMPATH%/lcdgames %BASENAME%</command> -->
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/lcdgames %BASENAME%</command>
<command label="Handheld Electronic (GW)">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gw_libretro.so %ROM%</command>
@ -946,9 +961,9 @@
<command label="FB Alpha 2012">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/fbalpha2012_libretro.so %ROM%</command>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!-- <command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command> -->
<!-- <command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command> -->
<command label="Kronos">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/kronos_libretro.so %ROM%</command>
<!-- <command label="Supermodel (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log -force-feedback %INJECT%=%BASENAME%.commands %ROM%</command> -->
<!-- <command label="Supermodel [Fullscreen] (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log -fullscreen -force-feedback %INJECT%=%BASENAME%.commands %ROM%</command> -->
<command label="Shortcut or script">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<platform>arcade</platform>
<theme>mame</theme>
@ -975,6 +990,7 @@
<command label="Gearsystem">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gearsystem_libretro.so %ROM%</command>
<command label="PicoDrive">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/picodrive_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module sms %ROM%</command> -->
<!-- <command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Master System" %ROM%</command> -->
<platform>mastersystem</platform>
<theme>mastersystem</theme>
@ -1024,6 +1040,8 @@
<path>%ROMPATH%/megaduck</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="SameDuck">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/sameduck_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "megaduck -rompath \"%GAMEDIRRAW%;%ROMPATH%/megaduck\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/megaduck megaduck -cart %ROM%</command>
<platform>megaduck</platform>
<theme>megaduck</theme>
</system>
@ -1056,7 +1074,6 @@
<path>%ROMPATH%/model3</path>
<extension>.7z .7Z .zip .ZIP</extension>
<command label="Supermodel (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log -force-feedback %INJECT%=%BASENAME%.commands %ROM%</command>
<command label="Supermodel [Fullscreen] (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_SUPERMODEL% -log-output=%GAMEDIR%/Config/Supermodel.log -fullscreen -force-feedback %INJECT%=%BASENAME%.commands %ROM%</command>
<platform>arcade</platform>
<theme>model3</theme>
</system>
@ -1074,7 +1091,7 @@
<name>moto</name>
<fullname>Thomson MO/TO Series</fullname>
<path>%ROMPATH%/moto</path>
<extension>.fd .FD .sap .SAP .k7 .K7 .m7 .M7 .m5 .M5 .rom .ROM .7z .7Z .zip .ZIP</extension>
<extension>.fd .FD .k7 .K7 .m5 .M5 .m7 .M7 .rom .ROM .sap .SAP .7z .7Z .zip .ZIP</extension>
<command label="Theodore">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/theodore_libretro.so %ROM%</command>
<platform>moto</platform>
<theme>moto</theme>
@ -1146,6 +1163,7 @@
<path>%ROMPATH%/multivision</path>
<extension>.bin .BIN .gg .GG .rom .ROM .sg .SG .sms .SMS .7z .7Z .zip .ZIP</extension>
<command label="Gearsystem">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gearsystem_libretro.so %ROM%</command>
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<platform>sg-1000</platform>
<theme>multivision</theme>
</system>
@ -1182,6 +1200,7 @@
<command label="ParaLLEl N64">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/parallel_n64_libretro.so %ROM%</command>
<command label="Mupen64Plus-Next">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mupen64plus_next_libretro.so %ROM%</command>
<!-- <command label="Rosalie's Mupen GUI (Standalone)">%EMULATOR_ROSALIES-MUPEN-GUI% &ndash;&ndash;nogui -q %ROM%</command> -->
<!--<command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Nintendo 64DD" %ROM%</command>-->
<platform>n64</platform>
<theme>n64dd</theme>
</system>
@ -1189,9 +1208,10 @@
<name>naomi</name>
<fullname>Sega NAOMI</fullname>
<path>%ROMPATH%/naomi</path>
<extension>.cdi .CDI .iso .ISO .elf .ELF .bin .BIN .cue .CUE .gdi .GDI .lst .LST .dat .DAT .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .dat .DAT .elf .ELF .lst .LST .7z .7Z .zip .ZIP</extension>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!-- <command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command> -->
<!--<command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command>-->
<platform>arcade</platform>
<theme>naomi</theme>
</system>
@ -1202,6 +1222,7 @@
<extension>.bin .BIN .dat .DAT .elf .ELF .lst .LST .7z .7Z .zip .ZIP</extension>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!--<command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command>-->
<!--<command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command>-->
<platform>arcade</platform>
<theme>naomi2</theme>
</system>
@ -1212,6 +1233,7 @@
<extension>.bin .BIN .dat .DAT .elf .ELF .lst .LST .7z .7Z .zip .ZIP</extension>
<command label="Flycast">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/flycast_libretro.so %ROM%</command>
<!-- <command label="Flycast (Standalone)">%EMULATOR_FLYCAST% %ROM%</command> -->
<!--<command label="Flycast Dojo (Standalone)">%EMULATOR_FLYCAST-DOJO% %ROM%</command>-->
<platform>arcade</platform>
<theme>naomigd</theme>
</system>
@ -1224,6 +1246,7 @@
<command label="DeSmuME 2015">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/desmume2015_libretro.so %ROM%</command>
<!-- <command label="DeSmuME (Standalone)">%EMULATOR_DESMUME% %ROM%</command> -->
<command label="melonDS">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/melonds_libretro.so %ROM%</command>
<command label="melonDS DS">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/melondsds_libretro.so %ROM%</command>
<command label="melonDS (Standalone)">%EMULATOR_MELONDS% %ROM%</command>
<!--<command label="SkyEmu (Standalone)">%EMULATOR_SKYEMU% %ROM%</command>-->
<platform>nds</platform>
@ -1268,7 +1291,7 @@
<name>nes</name>
<fullname>Nintendo Entertainment System</fullname>
<path>%ROMPATH%/nes</path>
<extension>.fds .FDS .nes .NES .unf .UNF .unif .UNIF .7z .7Z .zip .ZIP</extension>
<extension>.3dsen .3DSEN .fds .FDS .nes .NES .unf .UNF .unif .UNIF .7z .7Z .zip .ZIP</extension>
<command label="Mesen">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen_libretro.so %ROM%</command>
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<command label="Nestopia UE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/nestopia_libretro.so %ROM%</command>
@ -1300,7 +1323,7 @@
<name>ngp</name>
<fullname>SNK Neo Geo Pocket</fullname>
<path>%ROMPATH%/ngp</path>
<extension>.ngp .NGP .ngc .NGC .ngpc .NGPC .npc .NPC .7z .7Z .zip .ZIP</extension>
<extension>.ngc .NGC .ngp .NGP .ngpc .NGPC .npc .NPC .7z .7Z .zip .ZIP</extension>
<command label="Beetle NeoPop">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_ngp_libretro.so %ROM%</command>
<command label="RACE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/race_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module ngp %ROM%</command> -->
@ -1312,7 +1335,7 @@
<name>ngpc</name>
<fullname>SNK Neo Geo Pocket Color</fullname>
<path>%ROMPATH%/ngpc</path>
<extension>.ngp .NGP .ngc .NGC .ngpc .NGPC .npc .NPC .7z .7Z .zip .ZIP</extension>
<extension>.ngc .NGC .ngp .NGP .ngpc .NGPC .npc .NPC .7z .7Z .zip .ZIP</extension>
<command label="Beetle NeoPop">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_ngp_libretro.so %ROM%</command>
<command label="RACE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/race_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module ngp %ROM%</command> -->
@ -1322,10 +1345,12 @@
</system>
<system>
<name>odyssey2</name>
<fullname>Magnavox Odyssey2</fullname>
<fullname>Magnavox Odyssey 2</fullname>
<path>%ROMPATH%/odyssey2</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="O2EM">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/o2em_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "odyssey2 -rompath \"%GAMEDIRRAW%;%ROMPATH%/odyssey2\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/odyssey2 odyssey2 -cart %ROM%</command>
<platform>odyssey2</platform>
<theme>odyssey2</theme>
</system>
@ -1355,7 +1380,7 @@
<name>palm</name>
<fullname>Palm OS</fullname>
<path>%ROMPATH%/palm</path>
<extension>.prc .PRC .pqa .PQA .img .IMG .7z .7Z .zip .ZIP</extension>
<extension>.img .IMG .pqa .PQA .prc .PRC .7z .7Z .zip .ZIP</extension>
<command label="Mu">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mu_libretro.so %ROM%</command>
<platform>palm</platform>
<theme>palm</theme>
@ -1374,7 +1399,7 @@
<name>pc98</name>
<fullname>NEC PC-9800 Series</fullname>
<path>%ROMPATH%/pc98</path>
<extension>.2hd .2HD .88d .88D .98d .98D .d88 .D88 .d98 .D98 .cmd .CMD .dup .DUP .fdd .FDD .fdi .FDI .hdd .HDD .hdi .HDI .hdm .HDM .hdn .HDN .m3u .M3U .nhd .NHD .tfd .TFD .thd .THD . xdf .XDF .7z .7Z .zip .ZIP</extension>
<extension>.2hd .2HD .88d .88D .98d .98D .d88 .D88 .d98 .D98 .cmd .CMD .dup .DUP .fdd .FDD .fdi .FDI .hdd .HDD .hdi .HDI .hdm .HDM .hdn .HDN .m3u .M3U .nhd .NHD .tfd .TFD .thd .THD .xdf .XDF .7z .7Z .zip .ZIP</extension>
<command label="Neko Project II Kai">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/np2kai_libretro.so %ROM%</command>
<command label="Neko Project II">%STARTDIR%=%GAMEDIR% %EMULATOR_RETROARCH% -L %CORE_RETROARCH%/nekop2_libretro.so %ROM%</command>
<platform>pc98</platform>
@ -1388,6 +1413,7 @@
<command label="Beetle PCE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_libretro.so %ROM%</command>
<command label="Beetle PCE FAST">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_fast_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module pce %ROM%</command> -->
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "PC Engine" %ROM%</command> -->
<platform>pcengine</platform>
<theme>pcengine</theme>
@ -1400,6 +1426,7 @@
<command label="Beetle PCE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_libretro.so %ROM%</command>
<command label="Beetle PCE FAST">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_fast_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module pce %ROM%</command> -->
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "PC Engine CD" %ROM%</command> -->
<platform>pcenginecd</platform>
<theme>pcenginecd</theme>
@ -1421,6 +1448,7 @@
<extension>.p8 .P8 .png .PNG</extension>
<command label="PICO-8 (Standalone)">%EMULATOR_PICO-8% -desktop_path ~/retrodeck/screenshots -root_path %GAMEDIR% -run %ROM%</command>
<command label="PICO-8 Splore (Standalone)">%EMULATOR_PICO-8% -desktop_path ~/retrodeck/screenshots -root_path %GAMEDIR% -splore</command>
<command label="Retro8">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/retro8_libretro.so %ROM%</command>
<platform>pico8</platform>
<theme>pico8</theme>
</system>
@ -1447,9 +1475,13 @@
<name>ports</name>
<fullname>Ports</fullname>
<path>%ROMPATH%/ports</path>
<extension>.AppImage .desktop .sh</extension>
<extension>.AppImage .desktop .exe .EXE .game .GAME .phd .PHD .psx .PSX .sh</extension>
<command label="Shortcut or script">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="AppImage">%EMULATOR_OS-SHELL% -c "%ROM%"</command>
<!--<command label="ECWolf (Wolfenstein 3D)">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/ecwolf_libretro.so %ROM%</command>-->
<!--<command label="NXEngine (Cave Story)">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/nxengine_libretro.so %ROM%</command>-->
<!--<command label="OpenLara (Tomb Raider)">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/openlara_libretro.so %ROM%</command>-->
<!--<command label="Super Bros War">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/superbroswar_libretro.so %ROM%</command>-->
<platform>pc, pcwindows</platform>
<theme>ports</theme>
</system>
@ -1457,7 +1489,7 @@
<name>ps2</name>
<fullname>Sony PlayStation 2</fullname>
<path>%ROMPATH%/ps2</path>
<extension>.arcadedef .bin .BIN .chd .CHD .ciso .CISO .cso .CSO .dump .DUMP .elf .ELF .gz .GZ .m3u .M3U .mdf .MDF .img .IMG .iso .ISO .isz .ISZ .ngr .NRG</extension>
<extension>.arcadedef .bin .BIN .chd .CHD .ciso .CISO .cso .CSO .dump .DUMP .elf .ELF .gz .GZ .m3u .M3U .mdf .MDF .img .IMG .iso .ISO .isz .ISZ .ngr .NRG .zso .ZSO</extension>
<command label="PCSX2 (Standalone)">%EMULATOR_PCSX2% -batch %ROM%</command>
<command label="LRPS2">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/pcsx2_libretro.so %ROM%</command>
<command label="PCSX2">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/pcsx2_libretro.so %ROM%</command>
@ -1491,7 +1523,7 @@
<name>psp</name>
<fullname>Sony PlayStation Portable</fullname>
<path>%ROMPATH%/psp</path>
<extension>.elf .ELF .iso .ISO .cso .CSO .prx .PRX .pbp .PBP .7z .7Z .zip .ZIP</extension>
<extension>.chd .CHD .cso .CSO .elf .ELF .iso .ISO .pbp .PBP .prx .PRX .7z .7Z .zip .ZIP</extension>
<command label="PPSSPP (Standalone)">%EMULATOR_PPSSPP% %ROM%</command>
<command label="PPSSPP">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/ppsspp_libretro.so %ROM%</command>
<platform>psp</platform>
@ -1519,6 +1551,7 @@
<command label="PCSX ReARMed">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/pcsx_rearmed_libretro.so %ROM%</command>
<command label="DuckStation (Standalone)">%EMULATOR_DUCKSTATION% -batch %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module psx %ROM%</command> -->
<!--<command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module psx %ROM%</command>-->
<platform>psx</platform>
<theme>psx</theme>
</system>
@ -1528,6 +1561,7 @@
<fullname>Casio PV-1000</fullname>
<path>%ROMPATH%/pv1000</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "pv1000 -rompath \"%GAMEDIRRAW%;%ROMPATH%/pv1000\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/pv1000 pv1000 -cart %ROM%</command>
<platform>pv1000</platform>
<theme>pv1000</theme>
@ -1553,7 +1587,7 @@
<name>samcoupe</name>
<fullname>MGT SAM Coupé</fullname>
<path>%ROMPATH%/samcoupe</path>
<extension>.dsk .DSK .mgt .MGT .sbt .SBT .sad .SAD .7z .7Z .zip .ZIP</extension>
<extension>.dsk .DSK .mgt .MGT .sad .SAD .sbt .SBT .7z .7Z .zip .ZIP</extension>
<command label="SimCoupé (Standalone)">%EMULATOR_SIMCOUPE% %ROM%</command>
<platform>samcoupe</platform>
<theme>samcoupe</theme>
@ -1581,7 +1615,7 @@
<name>saturn</name>
<fullname>Sega Saturn</fullname>
<path>%ROMPATH%/saturn</path>
<extension>.bin .BIN .ccd .CCD .chd .CHD .cue .CUE .iso .ISO .mds .MDS .toc .TOC .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .ccd .CCD .chd .CHD .cue .CUE .iso .ISO .m3u .M3U .mds .MDS .toc .TOC .7z .7Z .zip .ZIP</extension>
<command label="Beetle Saturn">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_saturn_libretro.so %ROM%</command>
<command label="Kronos">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/kronos_libretro.so %ROM%</command>
<command label="YabaSanshiro">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/yabasanshiro_libretro.so %ROM%</command>
@ -1594,7 +1628,7 @@
<name>saturnjp</name>
<fullname>Sega Saturn</fullname>
<path>%ROMPATH%/saturnjp</path>
<extension>.bin .BIN .ccd .CCD .chd .CHD .cue .CUE .iso .ISO .mds .MDS .toc .TOC .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .ccd .CCD .chd .CHD .cue .CUE .iso .ISO .m3u .M3U .mds .MDS .toc .TOC .7z .7Z .zip .ZIP</extension>
<command label="Beetle Saturn">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_saturn_libretro.so %ROM%</command>
<command label="Kronos">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/kronos_libretro.so %ROM%</command>
<command label="YabaSanshiro">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/yabasanshiro_libretro.so %ROM%</command>
@ -1619,7 +1653,7 @@
<fullname>Epoch Super Cassette Vision</fullname>
<path>%ROMPATH%/scv</path>
<extension>.0 .bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "scv -rompath %GAMEDIR%\;%ROMPATH%/scv -cart \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "scv -rompath \"%GAMEDIRRAW%;%ROMPATH%/scv\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/scv scv -cart %ROM%</command>
<platform>scv</platform>
<theme>scv</theme>
@ -1629,7 +1663,7 @@
<name>sega32x</name>
<fullname>Sega Mega Drive 32X</fullname>
<path>%ROMPATH%/sega32x</path>
<extension>.bin .BIN .gen .GEN .smd .SMD .md .MD .32x .32X .cue .CUE .iso .ISO .sms .SMS .68k .68K .7z .7Z .zip .ZIP</extension>
<extension>.32x .32X .68k .68K .bin .BIN .cue .CUE .gen .GEN .iso .ISO .md .MD .smd .SMD .sms .SMS .7z .7Z .zip .ZIP</extension>
<command label="PicoDrive">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/picodrive_libretro.so %ROM%</command>
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Mega 32X" %ROM%</command> -->
<platform>sega32x</platform>
@ -1639,7 +1673,7 @@
<name>sega32xjp</name>
<fullname>Sega Super 32X</fullname>
<path>%ROMPATH%/sega32xjp</path>
<extension>.bin .BIN .gen .GEN .smd .SMD .md .MD .32x .32X .cue .CUE .iso .ISO .sms .SMS .68k .68K .7z .7Z .zip .ZIP</extension>
<extension>.32x .32X .68k .68K .bin .BIN .cue .CUE .gen .GEN .iso .ISO .md .MD .smd .SMD .sms .SMS .7z .7Z .zip .ZIP</extension>
<command label="PicoDrive">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/picodrive_libretro.so %ROM%</command>
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Mega 32X" %ROM%</command> -->
<platform>sega32x</platform>
@ -1649,7 +1683,7 @@
<name>sega32xna</name>
<fullname>Sega Genesis 32X</fullname>
<path>%ROMPATH%/sega32xna</path>
<extension>.bin .BIN .gen .GEN .smd .SMD .md .MD .32x .32X .cue .CUE .iso .ISO .sms .SMS .68k .68K .7z .7Z .zip .ZIP</extension>
<extension>.32x .32X .68k .68K .bin .BIN .cue .CUE .gen .GEN .iso .ISO .md .MD .smd .SMD .sms .SMS .7z .7Z .zip .ZIP</extension>
<command label="PicoDrive">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/picodrive_libretro.so %ROM%</command>
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Mega 32X" %ROM%</command> -->
<platform>sega32x</platform>
@ -1681,6 +1715,7 @@
<!-- <command label="bsnes (Standalone)">%EMULATOR_BSNES% &ndash;&ndash;fullscreen %ROM%</command> -->
<command label="Beetle Supafaust">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_supafaust_libretro.so %ROM%</command>
<command label="Mesen-S">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen-s_libretro.so %ROM%</command>
<!-- <command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module snes %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Super Famicom" %ROM%</command> -->
<platform>snes</platform>
@ -1695,6 +1730,7 @@
<command label="Genesis Plus GX Wide">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/genesis_plus_gx_wide_libretro.so %ROM%</command>
<command label="Gearsystem">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/gearsystem_libretro.so %ROM%</command>
<command label="blueMSX">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/bluemsx_libretro.so %ROM%</command>
<!-- <command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "SG-1000" %ROM%</command> -->
<platform>sg-1000</platform>
<theme>sg-1000</theme>
@ -1705,9 +1741,11 @@
<path>%ROMPATH%/sgb</path>
<extension>.gb .GB .gbc .GBC .sgb .SGB .7z .7Z .zip .ZIP</extension>
<command label="Mesen-S">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen-s_libretro.so %ROM%</command>
<!-- <command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<command label="SameBoy">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/sameboy_libretro.so %ROM%</command>
<command label="mGBA">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mgba_libretro.so %ROM%</command>
<!-- <command label="mGBA (Standalone)">%EMULATOR_MGBA% -f %ROM%</command> -->
<platform>gb</platform>
<platform>sgb</platform>
<theme>sgb</theme>
</system>
<system>
@ -1724,6 +1762,7 @@
<!-- <command label="bsnes (Standalone)">%EMULATOR_BSNES% &ndash;&ndash;fullscreen %ROM%</command> -->
<command label="Beetle Supafaust">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_supafaust_libretro.so %ROM%</command>
<command label="Mesen-S">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen-s_libretro.so %ROM%</command>
<!-- <command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module snes %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Super Famicom" %ROM%</command> -->
<platform>snes</platform>
@ -1743,6 +1782,7 @@
<!-- <command label="bsnes (Standalone)">%EMULATOR_BSNES% &ndash;&ndash;fullscreen %ROM%</command> -->
<command label="Beetle Supafaust">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_supafaust_libretro.so %ROM%</command>
<command label="Mesen-S">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mesen-s_libretro.so %ROM%</command>
<!-- <command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command> -->
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module snes %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Super Famicom" %ROM%</command> -->
<platform>snes</platform>
@ -1763,20 +1803,11 @@
<name>spectravideo</name>
<fullname>Spectravideo</fullname>
<path>%ROMPATH%/spectravideo</path>
<extension>.rom .ROM .ri .RI .mx1 .MX1 .mx2 .MX2 .col .COL .dsk .DSK .cas .CAS .sg .SG .sc .SC .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.cas .CAS .col .COL .dsk .DSK .m3u .M3U .mx1 .MX1 .mx2 .MX2 .ri .RI .rom .ROM .sc .SC .sg .SG .7z .7Z .zip .ZIP</extension>
<command label="blueMSX">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/bluemsx_libretro.so %ROM%</command>
<platform>spectravideo</platform>
<theme>spectravideo</theme>
</system>
<system>
<name>stratagus</name>
<fullname>Stratagus Game Engine</fullname>
<path>%ROMPATH%/stratagus</path>
<extension>.7z .7Z .zip .ZIP</extension>
<command>PLACEHOLDER %ROM%</command>
<platform>stratagus</platform>
<theme>stratagus</theme>
</system>
<system>
<name>stv</name>
<fullname>Sega Titan Video Game System</fullname>
@ -1809,9 +1840,11 @@
<name>supergrafx</name>
<fullname>NEC SuperGrafx</fullname>
<path>%ROMPATH%/supergrafx</path>
<extension>.pce .PCE .sgx .SGX .cue .CUE .ccd .CCD .chd .CHD .7z .7Z .zip .ZIP</extension>
<extension>.ccd .CCD .chd .CHD .cue .CUE .pce .PCE .sgx .SGX .7z .7Z .zip .ZIP</extension>
<command label="Beetle SuperGrafx">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_supergrafx_libretro.so %ROM%</command>
<command label="Beetle PCE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_libretro.so %ROM%</command>
<!--<command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module pce %ROM%</command>-->
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "SuperGrafx" %ROM%</command> -->
<platform>supergrafx</platform>
<theme>supergrafx</theme>
@ -1822,6 +1855,8 @@
<path>%ROMPATH%/supervision</path>
<extension>.bin .BIN .sv .SV .7z .7Z .zip .ZIP</extension>
<command label="Potator">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/potator_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "svision -rompath \"%GAMEDIRRAW%;%ROMPATH%/supervision\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/supervision svision -cart %ROM%</command>
<platform>supervision</platform>
<theme>supervision</theme>
</system>
@ -1831,7 +1866,7 @@
<fullname>Funtech Super A'Can</fullname>
<path>%ROMPATH%/supracan</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "supracan -rompath %GAMEDIR%\;%ROMPATH%/supracan -cart \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "supracan -rompath \"%GAMEDIRRAW%;%ROMPATH%/supracan\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/supracan supracan -cart %ROM%</command>
<platform>supracan</platform>
<theme>supracan</theme>
@ -1879,6 +1914,7 @@
<command label="Beetle PCE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_libretro.so %ROM%</command>
<command label="Beetle PCE FAST">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_fast_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module pce %ROM%</command> -->
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "PC Engine" %ROM%</command> -->
<platform>pcengine</platform>
<theme>tg16</theme>
@ -1891,6 +1927,7 @@
<command label="Beetle PCE">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_libretro.so %ROM%</command>
<command label="Beetle PCE FAST">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_pce_fast_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module pce %ROM%</command> -->
<!--<command label="Mesen (Standalone)">%EMULATOR_MESEN% &ndash;&ndash;fullscreen %ROM%</command>-->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "PC Engine CD" %ROM%</command> -->
<platform>pcenginecd</platform>
<theme>tg-cd</theme>
@ -1908,10 +1945,11 @@
<system>
<name>tic80</name>
<fullname>TIC-80 Game Engine</fullname>
<fullname>TIC-80 Fantasy Computer</fullname>
<path>%ROMPATH%/tic80</path>
<extension>.tic .TIC</extension>
<command label="TIC-80">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/tic80_libretro.so %ROM%</command>
<!--<command label="TIC-80 (Standalone)">%EMULATOR_TIC-80% %ROM% &ndash;&ndash;fullscreen</command>-->
<platform>tic80</platform>
<theme>tic80</theme>
</system>
@ -1919,7 +1957,7 @@
<name>to8</name>
<fullname>Thomson TO8</fullname>
<path>%ROMPATH%/to8</path>
<extension>.fd .FD .sap .SAP .k7 .K7 .m7 .M7 .m5 .M5 .rom .ROM .7z .7Z .zip .ZIP</extension>
<extension>.fd .FD .k7 .K7 .m5 .M5 .m7 .M7 .rom .ROM .sap .SAP .7z .7Z .zip .ZIP</extension>
<command label="Theodore">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/theodore_libretro.so %ROM%</command>
<platform>moto</platform>
<theme>to8</theme>
@ -1969,10 +2007,12 @@
</system>
<system>
<name>vectrex</name>
<fullname>Smith Engineering Vectrex</fullname>
<fullname>GCE Vectrex</fullname>
<path>%ROMPATH%/vectrex</path>
<extension>.bin .BIN .vec .VEC .gam .GAM .vc .VC .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .gam .GAM .vc .VC .vec .VEC .7z .7Z .zip .ZIP</extension>
<command label="vecx">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/vecx_libretro.so %ROM%</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "vectrex -rompath \"%GAMEDIRRAW%;%ROMPATH%/vectrex\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/vectrex vectrex -cart %ROM%</command>
<platform>vectrex</platform>
<theme>vectrex</theme>
</system>
@ -1992,14 +2032,16 @@
<path>%ROMPATH%/videopac</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="O2EM">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/o2em_libretro.so %ROM%</command>
<platform>videopac</platform>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "videopac -rompath \"%GAMEDIRRAW%;%ROMPATH%/videopac\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/videopac videopac -cart %ROM%</command>
<platform>odyssey2</platform>
<theme>videopac</theme>
</system>
<system>
<name>virtualboy</name>
<fullname>Nintendo Virtual Boy</fullname>
<path>%ROMPATH%/virtualboy</path>
<extension>.vb .VB .vboy .VBOY .bin .BIN .7z .7Z .zip .ZIP</extension>
<extension>.bin .BIN .vb .VB .vboy .VBOY .7z .7Z .zip .ZIP</extension>
<command label="Beetle VB">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_vb_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module vb %ROM%</command> -->
<platform>virtualboy</platform>
@ -2011,7 +2053,7 @@
<fullname>Visual Pinball</fullname>
<path>%ROMPATH%/vpinball</path>
<extension>.vpt .VPT .vpx .VPX</extension>
<command label="Visual Pinball (Standalone)">%EMULATOR_VISUAL-PINBALL% -Minimized -Play %ROM%</command>
<command label="Visual Pinball (Standalone)">%EMULATOR_VISUAL-PINBALL% -play %ROM%</command>
<platform>vpinball</platform>
<theme>vpinball</theme>
</system>
@ -2022,7 +2064,7 @@
<fullname>VTech V.Smile</fullname>
<path>%ROMPATH%/vsmile</path>
<extension>.bin .BIN .7z .7Z .zip .ZIP</extension>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "vsmile -rompath %GAMEDIR%\;%ROMPATH%/vsmile -cart \"%ROMRAW%\""</command>
<command label="MAME - Current">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mame_libretro.so "vsmile -rompath \"%GAMEDIRRAW%;%ROMPATH%/vsmile\" -cart \"%ROMRAW%\""</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/vsmile vsmile -cart %ROM%</command>
<platform>vsmile</platform>
<theme>vsmile</theme>
@ -2057,14 +2099,55 @@
<platform>wiiu</platform>
<theme>wiiu</theme>
</system>
<system>
<name>windows</name>
<fullname>Microsoft Windows</fullname>
<path>%ROMPATH%/windows</path>
<extension>.AppImage .desktop .sh</extension>
<command label="Suspend ES-DE">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="Keep ES-DE running">%RUNINBACKGROUND% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="AppImage (Suspend ES-DE)">%EMULATOR_OS-SHELL% -c "%ROM%"</command>
<command label="AppImage (Keep ES-DE running)">%RUNINBACKGROUND% %EMULATOR_OS-SHELL% -c "%ROM%"</command>
<platform>pcwindows</platform>
<theme>windows</theme>
</system>
<system>
<name>windows3x</name>
<fullname>Microsoft Windows 3.x</fullname>
<path>%ROMPATH%/windows3x</path>
<extension>.AppImage .bat .BAT .desktop .dosz .DOSZ .sh .7z .7Z .zip .ZIP</extension>
<command label="DOSBox-X (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_DOSBOX-X% -defaultdir %GAMEDIR% %ROM%</command>
<command label="DOSBox-Pure">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/dosbox_pure_libretro.so %ROM%</command>
<command label="Shortcut or script (Suspend ES-DE)">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="Shortcut or script (Keep ES-DE running)">%RUNINBACKGROUND% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="AppImage (Suspend ES-DE)">%EMULATOR_OS-SHELL% -c "%ROM%"</command>
<command label="AppImage (Keep ES-DE running)">%RUNINBACKGROUND% %EMULATOR_OS-SHELL% -c "%ROM%"</command>
<platform>windows3x</platform>
<theme>windows3x</theme>
</system>
<system>
<name>windows9x</name>
<fullname>Microsoft Windows 9x</fullname>
<path>%ROMPATH%/windows9x</path>
<extension>.AppImage .bat .BAT .desktop .dosz .DOSZ .sh .7z .7Z .zip .ZIP</extension>
<command label="DOSBox-X (Standalone)">%STARTDIR%=%GAMEDIR% %EMULATOR_DOSBOX-X% -defaultdir %GAMEDIR% %ROM%</command>
<command label="DOSBox-Pure">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/dosbox_pure_libretro.so %ROM%</command>
<command label="Shortcut or script (Suspend ES-DE)">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="Shortcut or script (Keep ES-DE running)">%RUNINBACKGROUND% %ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
<command label="AppImage (Suspend ES-DE)">%EMULATOR_OS-SHELL% -c "%ROM%"</command>
<command label="AppImage (Keep ES-DE running)">%RUNINBACKGROUND% %EMULATOR_OS-SHELL% -c "%ROM%"</command>
<platform>pcwindows</platform>
<theme>windows9x</theme>
</system>
<system>
<name>wonderswan</name>
<fullname>Bandai WonderSwan</fullname>
<path>%ROMPATH%/wonderswan</path>
<extension>.ws .WS .pc2 .PC2 .7z .7Z .zip .ZIP</extension>
<extension>.pc2 .PC2 .ws .WS .7z .7Z .zip .ZIP</extension>
<command label="Beetle Cygne">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_wswan_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module wswan %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "WonderSwan" %ROM%</command> -->
<!--<command label="ares [Benesse Pocket Challenge V2] (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "Pocket Challenge V2" %ROM%</command>-->
<platform>wonderswan</platform>
<theme>wonderswan</theme>
</system>
@ -2072,7 +2155,7 @@
<name>wonderswancolor</name>
<fullname>Bandai WonderSwan Color</fullname>
<path>%ROMPATH%/wonderswancolor</path>
<extension>.ws .WS .wsc .WSC .pc2 .PC2 .7z .7Z .zip .ZIP</extension>
<extension>.pc2 .PC2 .ws .WS .wsc .WSC .7z .7Z .zip .ZIP</extension>
<command label="Beetle Cygne">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/mednafen_wswan_libretro.so %ROM%</command>
<!-- <command label="Mednafen (Standalone)">%EMULATOR_MEDNAFEN% -force_module wswan %ROM%</command> -->
<!-- <command label="ares (Standalone)">%EMULATOR_ARES% &ndash;&ndash;fullscreen &ndash;&ndash;system "WonderSwan Color" %ROM%</command> -->
@ -2083,7 +2166,7 @@
<name>x1</name>
<fullname>Sharp X1</fullname>
<path>%ROMPATH%/x1</path>
<extension>.dx1 .DX1 .2d .2D .2hd .2HD .tfd .TFD .d88 .D88 .88d .88D .hdm .HDM .xdf .XDF .dup .DUP .tap .TAP .cmd .CMD .7z .7Z .zip .ZIP</extension>
<extension>.2d .2D .2hd .2HD .88d .88D .cmd .CMD .d88 .D88 .dup .DUP .dx1 .DX1 .hdm .HDM .tap .TAP .tfd .TFD .xdf .XDF .7z .7Z .zip .ZIP</extension>
<command label="x1">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/x1_libretro.so %ROM%</command>
<platform>x1</platform>
<theme>x1</theme>
@ -2092,9 +2175,9 @@
<name>x68000</name>
<fullname>Sharp X68000</fullname>
<path>%ROMPATH%/x68000</path>
<extension>.dim .DIM .img .IMG .d88 .D88 .88d .88D .hdm .HDM .dup .DUP .2hd .2HD .xdf .XDF .hdf .HDF .cmd .CMD .m3u .M3U .7z .7Z .zip .ZIP</extension>
<extension>.2hd .2HD .88d .88D .cmd .CMD .d88 .D88 .dim .DIM .dup .DUP .hdf .HDF .hdm .HDM .img .IMG .m3u .M3U .xdf .XDF .7z .7Z .zip .ZIP</extension>
<command label="PX68k">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/px68k_libretro.so %ROM%</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/x68000 x68000 -flop1 %ROM%</command>
<command label="MAME (Standalone)">%STARTDIR%=~/.mame %EMULATOR_MAME% -rompath %GAMEDIR%\;%ROMPATH%/x68000 x68000 -flop1 %ROM%</command>
<platform>x68000</platform>
<theme>x68000</theme>
</system>
@ -2112,7 +2195,7 @@
<name>xbox360</name>
<fullname>Microsoft Xbox 360</fullname>
<path>%ROMPATH%/xbox360</path>
<extension>. .desktop .iso .ISO .sh .xex .XEX</extension>
<extension>. .desktop .iso .ISO .sh .xex .XEX .zar .ZAR</extension>
<command label="xenia (Wine)">%STARTDIR%=%EMUDIR% %PRECOMMAND_WINE% %EMULATOR_XENIA-WINDOWS% %ROM%</command>
<command label="xenia (Proton)">%STARTDIR%=%EMUDIR% %PRECOMMAND_PROTON% %EMULATOR_XENIA-WINDOWS% %ROM%</command>
<command label="Shortcut or script">%ENABLESHORTCUTS% %EMULATOR_OS-SHELL% %ROM%</command>
@ -2135,7 +2218,7 @@
<name>zx81</name>
<fullname>Sinclair ZX81</fullname>
<path>%ROMPATH%/zx81</path>
<extension>.tzx .TZX .p .P .7z .7Z .zip .ZIP</extension>
<extension>.p .P .tzx .TZX .7z .7Z .zip .ZIP</extension>
<command label="EightyOne">%EMULATOR_RETROARCH% -L %CORE_RETROARCH%/81_libretro.so %ROM%</command>
<platform>zx81</platform>
<theme>zx81</theme>

View file

@ -28,12 +28,12 @@ save_migration() {
fi
# Doing the dir prep as we don't know from which version we came
dir_prep "$media_folder" "/var/config/emulationstation/.emulationstation/downloaded_media"
dir_prep "$themes_folder" "/var/config/emulationstation/.emulationstation/themes"
dir_prep "$media_folder" "/var/config/emulationstation/ES-DE/downloaded_media"
dir_prep "$themes_folder" "/var/config/emulationstation/ES-DE/themes"
mkdir -pv $rdhome/logs #this was added later, maybe safe to remove in a few versions
# Resetting es_settings, now we need it but in the future I should think a better solution, maybe with sed
cp -fv /app/retrodeck/es_settings.xml /var/config/emulationstation/.emulationstation/es_settings.xml
cp -fv /app/retrodeck/es_settings.xml /var/config/emulationstation/ES-DE/es_settings.xml
# 0.4 -> 0.5
# Perform save and state migration if needed

View file

@ -59,6 +59,7 @@ check_for_version_update() {
# configurator_generic_dialog "RetroDECK Online Update" "The update process is now complete!\n\nPlease restart RetroDECK to keep the fun going."
# exit 1
# fi
# TODO: add the logic to check and update the branch from the configuration file
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="OK" --extra-button="Ignore this version" \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Update Available" \

View file

@ -368,6 +368,9 @@ finit() {
echo "Executing finit"
# Placing the default retrodeck.cfg
cp -vf $rd_defaults $rd_conf
# Internal or SD Card?
local finit_dest_choice=$(configurator_destination_choice_dialog "RetroDECK data" "Welcome to the first configuration of RetroDECK.\nThe setup will be quick but please READ CAREFULLY each message in order to avoid misconfigurations.\n\nWhere do you want your RetroDECK data folder to be located?\n\nThis folder will contain all ROMs, BIOSs and scraped data." )
echo "Choice is $finit_dest_choice"
@ -483,9 +486,9 @@ install_retrodeck_starterpack() {
## DOOM section ##
cp /app/retrodeck/extras/doom1.wad "$roms_folder/doom/doom1.wad" # No -f in case the user already has it
mkdir -p "/var/config/emulationstation/.emulationstation/gamelists/doom"
if [[ ! -f "/var/config/emulationstation/.emulationstation/gamelists/doom/gamelist.xml" ]]; then # Don't overwrite an existing gamelist
cp "/app/retrodeck/rd_prepacks/doom/gamelist.xml" "/var/config/emulationstation/.emulationstation/gamelists/doom/gamelist.xml"
mkdir -p "/var/config/emulationstation/ES-DE/gamelists/doom"
if [[ ! -f "/var/config/emulationstation/ES-DE/gamelists/doom/gamelist.xml" ]]; then # Don't overwrite an existing gamelist
cp "/app/retrodeck/rd_prepacks/doom/gamelist.xml" "/var/config/emulationstation/ES-DE/gamelists/doom/gamelist.xml"
fi
mkdir -p "$media_folder/doom"
unzip -oq "/app/retrodeck/rd_prepacks/doom/doom.zip" -d "$media_folder/doom/"
@ -516,8 +519,8 @@ update_splashscreens() {
# This script will purge any existing ES graphics and reload them from RO space into somewhere ES will look for it
# USAGE: update_splashscreens
rm -rf /var/config/emulationstation/.emulationstation/resources/graphics
rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/emulationstation/.emulationstation/resources/graphics/"
rm -rf /var/config/emulationstation/ES-DE/resources/graphics
rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/emulationstation/ES-DE/resources/graphics/"
}
deploy_helper_files() {
@ -559,6 +562,66 @@ easter_eggs() {
cp -f "$new_splash_file" "$current_splash_file" # Deploy assigned splash screen
}
# TODO: this function is not yet used
branch_selector() {
# Fetch branches from GitHub API excluding "main"
branches=$(curl -s https://api.github.com/repos/XargonWan/RetroDECK/branches | grep '"name":' | awk -F '"' '$4 != "main" {print $4}')
# TODO: logging - Fetching branches from GitHub API
# Create an array to store branch names
branch_array=()
# Loop through each branch and add it to the array
while IFS= read -r branch; do
branch_array+=("$branch")
done <<< "$branches"
# TODO: logging - Creating array of branch names
# Display branches in a Zenity list dialog
selected_branch=$(
zenity --list \
--icon-name=net.retrodeck.retrodeck \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Configurator Cooker Branch - Select Branch" \
--column="Branch" --width=1280 --height=800 "${branch_array[@]}"
)
# TODO: logging - Displaying branches in Zenity list dialog
# Display warning message
if [ $selected_branch ]; then
zenity --question --icon-name=net.retrodeck.retrodeck --no-wrap \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Configurator Cooker Branch - Switch Branch" \
--text="Are you sure you want to move to \"$selected_branch\" branch?"
# Output selected branch
echo "Selected branch: $selected_branch" # TODO: logging - Outputting selected branch
set_setting_value "$rd_conf" "branch" "$selected_branch" "retrodeck" "options"
branch="feat/sftp"
# Get the latest release for the specified branch
latest_release=$(curl -s "https://api.github.com/repos/XargonWan/RetroDECK-cooker/releases" | jq ".[] | select(.target_commitish == \"$branch_name\") | .tag_name" | head -n 1)
# TODO: this will fail because the builds coming from the PRs are not published yet, we should fix them
# TODO: form a proper url: $flatpak_file_url
configurator_generic_dialog "RetroDECK Online Update" "The update process may take several minutes.\n\nAfter the update is complete, RetroDECK will close. When you run it again you will be using the latest version."
(
local desired_flatpak_file=$(curl --silent $flatpak_file_url | grep '"browser_download_url":' | sed -E 's/.*"([^"]+)".*/\1/')
mkdir -p "$rdhome/RetroDECK_Updates"
wget -P "$rdhome/RetroDECK_Updates" $desired_flatpak_file
flatpak-spawn --host flatpak remove --noninteractive -y net.retrodeck.retrodeck # Remove current version before installing new one, to avoid duplicates
flatpak-spawn --host flatpak install --user --bundle --noninteractive -y "$rdhome/RetroDECK_Updates/RetroDECK-cooker.flatpak"
rm -rf "$rdhome/RetroDECK_Updates" # Cleanup old bundles to save space
) |
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Updater" \
--text="RetroDECK is updating to the latest \"$selected_branch\" version, please wait."
configurator_generic_dialog "RetroDECK Online Update" "The update process is now complete!\n\nPlease restart RetroDECK to keep the fun going."
exit 1
else
configurator_generic_dialog "No branch selected, exiting."
# TODO: logging
fi
}
quit_retrodeck() {
pkill -f retrodeck
pkill -f emulationstation

View file

@ -25,9 +25,9 @@ zip_compressable_extensions="$emuconfigs/defaults/retrodeck/reference_lists/zip_
easter_egg_checklist="$emuconfigs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg" # A config file listing days and times when special splash screens should show up
input_validation="$emuconfigs/defaults/retrodeck/reference_lists/input_validation.cfg" # A config file listing valid CLI inputs
finit_options_list="$emuconfigs/defaults/retrodeck/reference_lists/finit_options_list.cfg" # A config file listing available optional installs during finit
splashscreen_dir="/var/config/emulationstation/.emulationstation/resources/graphics/extra_splashes" # The default location of extra splash screens
current_splash_file="/var/config/emulationstation/.emulationstation/resources/graphics/splash.svg" # The active splash file that will be shown on boot
default_splash_file="/var/config/emulationstation/.emulationstation/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen
splashscreen_dir="/var/config/emulationstation/ES-DE/resources/graphics/extra_splashes" # The default location of extra splash screens
current_splash_file="/var/config/emulationstation/ES-DE/resources/graphics/splash.svg" # The active splash file that will be shown on boot
default_splash_file="/var/config/emulationstation/ES-DE/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen
multi_user_emulator_config_dirs="$emuconfigs/defaults/retrodeck/reference_lists/multi_user_emulator_config_dirs.cfg" # A list of emulator config folders that can be safely linked/unlinked entirely in multi-user mode
rd_es_themes="/app/share/emulationstation/themes" # The directory where themes packaged with RetroDECK are stored
lockfile="/var/config/retrodeck/.lock" # where the lockfile is located
@ -58,7 +58,7 @@ yuzuconf="/var/config/yuzu/qt-config.ini"
# ES-DE config files
es_settings="/var/config/emulationstation/.emulationstation/es_settings.xml"
es_settings="/var/config/emulationstation/ES-DE/es_settings.xml"
# RetroArch config files

View file

@ -124,7 +124,7 @@ post_update() {
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" "/var/config/retroarch/system/Mupen64plus/hires_texture"
dir_prep "$texture_packs_folder/Duckstation" "/var/config/duckstation/textures"
dir_prep "$rdhome/gamelists" "/var/config/emulationstation/.emulationstation/gamelists"
dir_prep "$rdhome/gamelists" "/var/config/emulationstation/ES-DE/gamelists"
dir_prep "$borders_folder" "/var/config/retroarch/overlays/borders"
rsync -rlD --mkpath "/app/retrodeck/emu-configs/retroarch/borders/" "/var/config/retroarch/overlays/borders/"
@ -172,7 +172,7 @@ post_update() {
dir_prep "$states_folder/psx/duckstation" "/var/config/duckstation/savestates"
rm -rf /var/config/retrodeck/tools
rm -rf /var/config/emulationstation/.emulationstation/gamelists/tools/
rm -rf /var/config/emulationstation/ES-DE/gamelists/tools/
mv "$saves_folder/gc/dolphin/EUR" "$saves_folder/gc/dolphin/EU"
mv "$saves_folder/gc/dolphin/USA" "$saves_folder/gc/dolphin/US"
@ -195,8 +195,8 @@ post_update() {
sed -i '$ a <string name="UserThemeDirectory" value="" />' "$es_settings" # Add new default line to existing file
set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings"
unlink "/var/config/emulationstation/ROMs"
unlink "/var/config/emulationstation/.emulationstation/downloaded_media"
unlink "/var/config/emulationstation/.emulationstation/themes"
unlink "/var/config/emulationstation/ES-DE/downloaded_media"
unlink "/var/config/emulationstation/ES-DE/themes"
set_setting_value "$raconf" "savestate_auto_load" "false" "retroarch"
set_setting_value "$raconf" "savestate_auto_save" "false" "retroarch"
@ -241,8 +241,15 @@ post_update() {
# - Install RetroDECK controller profile in desired location TODO
# - Change section name in retrodeck.cfg for ABXY button swap preset
sed -i 's^nintendo_button_layout^abxy_button_swap^' "$rd_conf" # This is a one-off sed statement as there are no functions for replacing section names
mv -f /var/config/emulationstation/.emulationstation /var/config/emulationstation/ES-DE # in 3.0 .emulationstation was moved into ES-DE
ln -s /var/config/emulationstation/ES-DE /var/config/emulationstation/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b
fi
# if [[ $prev_version -le "090" ]]; then
# # Placeholder for version 0.9.0b
# rm /var/config/emulationstation/.emulationstation # remving the old symlink to .emulationstation as it might be not needed anymore
# fi
# The following commands are run every time.
if [[ -d "/var/data/dolphin-emu/Load/DynamicInputTextures" ]]; then # Refresh installed textures if they have been enabled

View file

@ -40,12 +40,12 @@ prepare_component() {
if [[ "$component" =~ ^(es-de|ES-DE|all)$ ]]; then # For use after ESDE-related folders are moved or a reset
if [[ "$action" == "reset" ]]; then
rm -rf /var/config/emulationstation/
mkdir -p /var/config/emulationstation/.emulationstation/
cp -f /app/retrodeck/es_settings.xml /var/config/emulationstation/.emulationstation/es_settings.xml
mkdir -p /var/config/emulationstation/ES-DE/
cp -f /app/retrodeck/es_settings.xml /var/config/emulationstation/ES-DE/es_settings.xml
set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings"
set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings"
set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings"
dir_prep "$rdhome/gamelists" "/var/config/emulationstation/.emulationstation/gamelists"
dir_prep "$rdhome/gamelists" "/var/config/emulationstation/ES-DE/gamelists"
emulationstation --home /var/config/emulationstation --create-system-dirs
update_splashscreens
fi
@ -53,7 +53,7 @@ prepare_component() {
set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings"
set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings"
set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings"
dir_prep "$rdhome/gamelists" "/var/config/emulationstation/.emulationstation/gamelists"
dir_prep "$rdhome/gamelists" "/var/config/emulationstation/ES-DE/gamelists"
fi
fi
@ -712,11 +712,11 @@ prepare_component() {
mkdir -p $saves_folder/mame-sa
mkdir -p "/var/config/mame"
dir_prep "$saves_folder/mame-sa/hiscore" "/var/config/mame/hiscore"
cp -fvr "$emuconfigs/mame/**" "/var/config/mame"
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/gzdoom/*.ini"
sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/gzdoom/*.ini"
sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/gzdoom/*.ini"
cp -fvr "$emuconfigs/mame/"** "/var/config/mame"
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/*.ini"
sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/*.ini"
sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/*.ini"
sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/*.ini"
fi
if [[ "$component" =~ ^(gzdoom|GZDOOM|all)$ ]]; then

View file

@ -1,6 +1,7 @@
debug = false
config_version = 1
blacklisted_games = []
boilr_tag = "retrodeck"
[steamgrid_db]
enabled = true

View file

@ -6,6 +6,8 @@ import shlex
import shutil
import glob
import sys
import time
import hashlib
import xml.etree.ElementTree as ET
@ -266,8 +268,13 @@ alt_command_list={
"Beetle PCE": "flatpak run --command=retroarch net.retrodeck.retrodeck -L /var/config/retroarch/cores/mednafen_pce_libretro.so"
}
def create_shortcut_new(games,rdhome):
old_games=os.listdir(rdhome+"/sync/")
exit_file="/tmp/retrodeck_steam_sync_exit"
rdhome=""
roms_folder=""
def create_shortcut_new(games):
changes=0
old_games=os.listdir(rdhome+"/.sync/")
for game in games:
try:
@ -275,8 +282,9 @@ def create_shortcut_new(games,rdhome):
old_games[i]=0
except ValueError:
print(game[0]+" is a new game!")
path=rdhome+"/sync/"+game[0]
changes=1
path=rdhome+"/.sync/"+game[0]
print("Go to path: "+path)
if not os.path.exists(path):
os.makedirs(path)
@ -300,7 +308,7 @@ def create_shortcut_new(games,rdhome):
fl.write(' ]\n')
fl.write('}\n')
fl.close()
fl=open(path+"/launch.sh","w")
fl.write("#!/bin/bash\n\n")
fl.write('if test "$(whereis flatpak)" = "flatpak:"\n')
@ -310,43 +318,25 @@ def create_shortcut_new(games,rdhome):
fl.write(game[1]+"\n")
fl.write("fi\n")
fl.close()
st=os.stat(path+"/launch.sh")
os.chmod(path+"/launch.sh", st.st_mode | 0o0111)
print("Start removing")
print(old_games)
for game in old_games:
if game:
shutil.rmtree(rdhome+"/sync/"+game)
os.system("boilr --no-ui")
shutil.rmtree(rdhome+"/.sync/"+game)
changes=1
def addToSteam():
print("Open RetroDECK config file: {}".format(os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/retrodeck/retrodeck.cfg")))
if changes:
os.system("boilr --no-ui")
fl=open(os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/retrodeck/retrodeck.cfg"),"r")
lines=fl.readlines()
for line in lines:
if "rdhome" in line:
rdhome=line[7:-1]
elif "roms_folder" in line:
roms_folder=line[12:-1]
fl.close()
def addToSteam(systems):
games=[]
command_list_default["pico8"]=command_list_default["pico8"].replace("{GAMEDIR}",roms_folder+"/pico8")
alt_command_list["PICO-8 Splore (Standalone)"]=alt_command_list["PICO-8 Splore (Standalone)"].replace("{GAMEDIR}",roms_folder+"/pico8")
if not os.path.exists(rdhome+"/sync/"):
os.makedirs(rdhome+"/sync/")
if not os.path.exists(os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/boilr/sync")):
os.symlink(rdhome+"/sync",os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/boilr/sync"))
for system in os.listdir(rdhome+"/gamelists/"):
for system in systems:
print("Start parsing system: {}".format(system))
f=open(rdhome+"/gamelists/"+system+"/gamelist.xml","r")
f.readline()
parser=ET.XMLParser()
@ -355,7 +345,7 @@ def addToSteam():
parser.feed(b'</root>')
root=parser.close()
f.close()
globalAltEmu=""
for subroot in root:
if subroot.tag=="alternativeEmulator":
@ -367,7 +357,7 @@ def addToSteam():
name=""
favorite=""
altemulator=globalAltEmu
for tag in game:
for tag in game:
if tag.tag=="path":
path=tag.text
elif tag.tag=="name":
@ -376,7 +366,7 @@ def addToSteam():
favorite=tag.text
elif tag.tag=="altemulator":
altemulator=tag.text
if favorite=="true" and altemulator=="":
print("Find favorite game: {}".format(name))
games.append([name,command_list_default[system]+" '"+roms_folder+"/"+system+path[1:]+"'"])
@ -391,10 +381,76 @@ def addToSteam():
else:
games.append([name,alt_command_list[altemulator]+" '"+roms_folder+"/"+system+path[1:]+"'"])
print(alt_command_list[altemulator]+" '"+roms_folder+"/"+system+path[1:]+"'")
create_shortcut_new(games,rdhome)
if not games==[]:
create_shortcut_new(games)
def start_config():
global rdhome
global roms_folder
global command_list_default
global alt_command_list
if os.path.isfile(exit_file):
os.remove(exit_file)
print("Open RetroDECK config file: {}".format(os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/retrodeck/retrodeck.cfg")))
fl=open(os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/retrodeck/retrodeck.cfg"),"r")
lines=fl.readlines()
for line in lines:
if "rdhome" in line:
rdhome=line[7:-1]
elif "roms_folder" in line:
roms_folder=line[12:-1]
fl.close()
command_list_default["pico8"]=command_list_default["pico8"].replace("{GAMEDIR}",roms_folder+"/pico8")
alt_command_list["PICO-8 Splore (Standalone)"]=alt_command_list["PICO-8 Splore (Standalone)"].replace("{GAMEDIR}",roms_folder+"/pico8")
if not os.path.exists(rdhome+"/.sync/"):
os.makedirs(rdhome+"/.sync/")
boilr_path=os.path.expanduser("~/.var/app/net.retrodeck.retrodeck/config/boilr/config.toml")
if os.path.isfile(boilr_path):
with open(boilr_path,"r") as f:
data=f.read()
data=re.sub("\"games_folder.*","games_folder = "+rdhome+"/.sync/\"",data)
with open(boilr_path,"w") as f:
f.write(data)
else:
print("Error! BoilR config not initialized.")
if __name__=="__main__":
addToSteam()
start_config()
new_hash={}
for system in os.listdir(rdhome+"/gamelists/"):
new_hash[system]=hashlib.md5(open(rdhome+"/gamelists/"+system+"/gamelist.xml","rb").read()).hexdigest()
running=True
while running:
time.sleep(30)
systems=[]
for system in os.listdir(rdhome+"/gamelists/"):
if not system in systems:
if system in new_hash.keys():
old_hash=new_hash[system]
new_hash[system]=hashlib.md5(open(rdhome+"/gamelists/"+system+"/gamelist.xml","rb").read()).hexdigest()
if not new_hash[system] == old_hash:
print("System {} changed!".format(system))
systems.append(system)
else:
print("System {} not changed!".format(system))
else:
new_hash[system]=hashlib.md5(open(rdhome+"/gamelists/"+system+"/gamelist.xml","rb").read()).hexdigest()
print("System {} added!".format(system))
systems.append(system)
if os.path.isfile(exit_file):
running=False
os.remove(exit_file)
addToSteam(systems)
print("Finish!")

View file

@ -8,7 +8,7 @@
<developer_name>RetroDECK Team</developer_name>
<url type="homepage">https://retrodeck.net</url>
<url type="bugtracker">https://github.com/XargonWan/RetroDECK/issues</url>
<url type="help">http://discord.gg/Dz3szYsP8g</url>
<url type="help">https://retrodeck.readthedocs.io</url>
<url type="faq">https://github.com/XargonWan/RetroDECK/wiki/FAQs---Frequently-asked-questions</url>
<url type="donation">https://www.patreon.com/RetroDECK</url>
<content_rating type="oars-1.0" />
@ -98,6 +98,7 @@
</ul>
<p>Issues:</p>
<ul>
<li>!!! WARNING !!! Steam Sync is now REPLACING your Standalone BoilR links with RetroDECK's, use it at your own risk!</li>
<li>GZDOOM: the controller for player 2+ is not correctly configured</li>
<li>quit_retrodeck function seems to not working correctly</li>
<li>MAME (Standalone) paths should be fixed</li>

View file

@ -444,24 +444,6 @@ modules:
# External manifests start
- name: boilr
buildsystem: simple
build-options:
append-path: /usr/lib/sdk/rust-stable/bin
env:
# To pick up vendored deps
CARGO_HOME: /run/build/boilr/cargo
RUSTFLAGS: "-L /app/lib/"
build-commands:
- cargo --offline fetch --manifest-path Cargo.toml --verbose
- cargo --offline build --release --verbose --features flatpak
- install -Dm755 ./target/release/boilr -t /app/bin/
sources:
- type: git
url: https://github.com/PhilipK/BoilR
commit: b33d965f227fe971fd590cb022f608521b506ef3
- rd-submodules/boilr/cargo-lock.json
# RetroArch - START
# https://github.com/flathub/org.libretro.RetroArch

Binary file not shown.

After

Width:  |  Height:  |  Size: 440 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 377 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 277 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 447 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 747 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 591 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 129 KiB

View file

@ -20,7 +20,6 @@ Arguments:
--compress-one <file> Compresses target file to a compatible format
--compress-all <format> Compresses all supported games into compatible format. Available formats are \"chd\", \"zip\", \"rvz\" and \"all\".
--reset-component <component> Reset one or more component or emulator configs to the default values
--reset-es-de Reset EmulationStation DE to default settings
--reset-retrodeck Starts the initial RetroDECK installer (backup your data first!)
For flatpak run specific options please run: flatpak run -h
@ -59,7 +58,7 @@ https://retrodeck.net
echo "You are about to reset one or more RetroDECK components or emulators."
echo "Available options are: es-de, retroarch, cemu, citra, dolphin, duckstation, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, xemu, yuzu, vita3k, mame, gzdoom, boilr, all"
read -p "Please enter the component you would like to reset: " component
if [[ "$component" =~ ^(es-de | retroarch | cemu | citra | dolphin | duckstation | melonds | pcsx3 | pico8 | ppsspp | primehack | rpcs3 | xemu | yuzu | vita3k | mame | gzdoom | boilr | all)$ ]]; then
if [[ "$emulator" =~ ^(es-de|retroarch|cemu|citra|dolphin|duckstation|mame|melonds|pcsx2|ppsspp|primehack|rpcs3|xemu|yuzu|all-emulators)$ ]]; then
read -p "You are about to reset $component to default settings. Enter 'y' to continue, 'n' to stop: " response
if [[ $response == [yY] ]]; then
prepare_component "reset" "$component" "cli"
@ -74,18 +73,6 @@ https://retrodeck.net
exit
fi
;;
--reset-es-de*)
echo "You are about to reset ES-DE to default settings. Your scraped media, downloaded themes and gamelists will remain untouched."
read -p "Enter 'y' to continue, 'n' to stop: " response
if [[ $response == [yY] ]]; then
prepare_component "reset" "ES-DE" "cli"
read -p "The process has been completed, press Enter key to start RetroDECK."
shift # Continue launch after previous command is finished
else
read -p "The process has been cancelled, press Enter key to exit."
exit
fi
;;
--reset-retrodeck*)
echo "You are about to reset RetroDECK completely!"
read -p "Enter 'y' to continue, 'n' to stop: " response
@ -197,4 +184,12 @@ fi
# Normal Startup
if [[ $steam_sync == "true" ]]; then
python3 /app/libexec/steam-sync/steam-sync.py &
fi
start_retrodeck
if [[ $steam_sync == "true" ]]; then
touch /tmp/retrodeck_steam_sync_exit
fi

View file

@ -73,6 +73,7 @@ source /app/libexec/global.sh
# - Reset Dolphin
# - Reset Duckstation
# - Reset GZDoom
# - Reset MAME
# - Reset MelonDS
# - Reset PCSX2
# - Reset PPSSPP
@ -1032,7 +1033,7 @@ configurator_reset_dialog() {
fi
;;
"Cemu" | "Citra" | "Dolphin" | "Duckstation" | "MelonDS" | "PCSX2" | "PPSSPP" | "Primehack" | "RPCS3" | "Ryujinx" | "Yuzu" )
"Cemu" | "Citra" | "Dolphin" | "Duckstation" | "MelonDS" | "MAME" | "PCSX2" | "PPSSPP" | "Primehack" | "RPCS3" | "Ryujinx" | "Yuzu" )
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"
configurator_process_complete_dialog "resetting $component_to_reset"
@ -1150,8 +1151,46 @@ configurator_about_retrodeck_dialog() {
}
configurator_add_steam() {
python3 /app/libexec/steam-sync/steam-sync.py
configurator_welcome_dialog
if [[ $(get_setting_value $rd_conf "steam_sync" retrodeck "options") == "true" ]]; then
zenity --question \
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
--text="Steam syncronization is current enabled. Do you want to disable it?\n\nThe already added shortcut will not be removed.\n"
if [ $? == 0 ] # User clicked "Yes"
then
disable_steam_sync
else # User clicked "Cancel"
configurator_welcome_dialog
fi
else
zenity --question \
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
--text="Steam syncronization is current disabled. Do you want to enable it?\n\nAll the games marked as favorites will be syncronized with Steam thanks to BoilR.\nRemember to restart Steam each time to see the changes.\n"
if [ $? == 0 ]
then
enable_steam_sync
else
configurator_welcome_dialog
fi
fi
}
enable_steam_sync() {
set_setting_value $rd_conf "steam_sync" "true" retrodeck "options"
zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="OK" \
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
--text="Steam syncronization enabled, restart RetroDECK to get effect."
configurator_welcome_dialog
}
disable_steam_sync() {
set_setting_value $rd_conf "steam_sync" "false" retrodeck "options"
touch /tmp/retrodeck_steam_sync_exit
configurator_welcome_dialog
}
configurator_version_history_dialog() {
@ -1310,7 +1349,7 @@ configurator_usb_import_dialog() {
if [[ ! -z "$choice" ]]; then
emulationstation --home "$choice" --create-system-dirs
rm -rf "$choice/.emulationstation" # Cleanup unnecessary folder
rm -rf "$choice/ES-DE" # Cleanup unnecessary folder
fi
else
configurator_generic_dialog "RetroDeck Configurator - USB Import" "There were no USB devices found."