latest version
This commit is contained in:
parent
d496b47208
commit
e77c0d43e9
2 changed files with 195 additions and 35 deletions
BIN
pandash
BIN
pandash
Binary file not shown.
230
src/main.cpp
230
src/main.cpp
|
@ -51,18 +51,37 @@ void ppsspp()
|
|||
pandoryExec("/tmp/pandory/bin/PPSSPPGold --fullscreen");
|
||||
}
|
||||
|
||||
void mountThumbnails()
|
||||
{
|
||||
// only remount if the squashfs/.pandorythumbs isn't there
|
||||
if (!Fs::exists("/tmp/pandory/share/retroarch/thumbnails/lost+found")) {
|
||||
system("mount -o bind /mnt/Pandory/.user/.config/retroarch/thumbnails/ /tmp/pandory/share/retroarch/thumbnails");
|
||||
|
||||
// Support both types of thumbnail pack, look in .fs and the main folder. prefer the sqxz.
|
||||
system("mount -o loop,ro /mnt/Pandory/.pandorythumbs /tmp/pandory/share/retroarch/thumbnails");
|
||||
system("mount -o loop,ro /mnt/Pandory/.fs/.pandorythumbs /tmp/pandory/share/retroarch/thumbnails");
|
||||
|
||||
system("mount -o loop,ro /mnt/Pandory/pandorythumbs.sqxz /tmp/pandory/share/retroarch/thumbnails");
|
||||
system("mount -o loop,ro /mnt/Pandory/.fs/pandorythumbs.sqxz /tmp/pandory/share/retroarch/thumbnails");
|
||||
|
||||
system("mount -o bind /tmp/pandory/share/retroarch/thumbnails/Arcade '/tmp/pandory/share/retroarch/thumbnails/FBNeo - Arcade Games'");
|
||||
system("mount -o bind /tmp/pandory/share/retroarch/thumbnails/Arcade '/tmp/pandory/share/retroarch/thumbnails/MAME'");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void retroarch()
|
||||
{
|
||||
// if mode == retroarch
|
||||
shuffleMusic();
|
||||
|
||||
// TODO: just complain instead if at 60hz. autopatch retroarch.cfg for 50/60hz
|
||||
system("busybox ash /tmp/pandory/bin/checkfreq.sh");
|
||||
//system("busybox ash /tmp/pandory/bin/checkfreq.sh");
|
||||
|
||||
mountThumbnails();
|
||||
|
||||
pandoryExec("mount -o remount,rw /mnt"); // fix 1.2.1 being a dick
|
||||
|
||||
system("mount -o bind /mnt/Pandory/.user/.config/retroarch/thumbnails/ /tmp/pandory/share/retroarch/thumbnails");
|
||||
system("mount -o loop,ro /mnt/Pandory/.pandorythumbs /tmp/pandory/share/retroarch/thumbnails");
|
||||
system("mount -o bind /tmp/pandory/share/retroarch/thumbnails/Arcade '/tmp/pandory/share/retroarch/thumbnails/FBNeo - Arcade Games'");
|
||||
system("mount -o bind /tmp/pandory/share/retroarch/thumbnails/Arcade '/tmp/pandory/share/retroarch/thumbnails/MAME'");
|
||||
pandoryExec("/tmp/pandory/bin/retroarch -c /mnt/Pandory/.user/.config/retroarch/retroarch.cfg");
|
||||
}
|
||||
|
||||
|
@ -119,16 +138,14 @@ void hatari()
|
|||
|
||||
void vanillaTD()
|
||||
{
|
||||
system("cd \"/mnt/Pandory/.roms/Vanilla Conquer/TD/\" && ./vanillatd");
|
||||
system("launchconquer.sh cnctd");
|
||||
}
|
||||
|
||||
void vanillaRA()
|
||||
{
|
||||
system("cd \"/mnt/Pandory/.roms/Vanilla Conquer/RA/\" && ./vanillara");
|
||||
system("launchconquer.sh cncra");
|
||||
}
|
||||
|
||||
|
||||
|
||||
void loadKernelModule(const std::string &module)
|
||||
{
|
||||
std::string modulePath = "/tmp/pandory/lib/modules/";
|
||||
|
@ -159,15 +176,77 @@ void enableNetwork()
|
|||
|
||||
loadKernelModule("squashfs");
|
||||
|
||||
|
||||
// wait for interfaces and bring them up
|
||||
system("sleep 5");
|
||||
system("ifup lo");
|
||||
system("ifconfig eth0 up");
|
||||
|
||||
//dhcp
|
||||
system("busybox udhcpc -s /tmp/pandory/etc/udhcpc.script &");
|
||||
system("busybox udhcpc -q -s /tmp/pandory/etc/udhcpc.script &");
|
||||
// return; // exit test for 1.2.1 firmware
|
||||
|
||||
//system("cp -f /tmp/pandory/bin/busybox /tmp/busybox; nohup /tmp/busybox telnetd -p 4444 -l /bin/sh >/dev/null &");
|
||||
// system("cd /mnt/Pandory/.webserver && php -S 0.0.0.0:80 &");
|
||||
//system("dropbear -r /mnt/Pandory/.user/.config/dropbear/dropbear_rsa_host_key -E -p 0.0.0.0:22 &");
|
||||
return;
|
||||
}
|
||||
|
||||
system("cd /mnt/Pandory/.webserver && php -S 0.0.0.0:80 &");
|
||||
system("dropbear -r /mnt/Pandory/.user/.config/dropbear/dropbear_rsa_host_key -E -p 0.0.0.0:22 &");
|
||||
void ocp()
|
||||
{
|
||||
pandoryExec("cd \"/mnt/Pandory/.roms/Media - Music\"; ocp-sdl2");
|
||||
return;
|
||||
}
|
||||
|
||||
void flycast()
|
||||
{
|
||||
pandoryExec("flycast");
|
||||
return;
|
||||
}
|
||||
|
||||
void bindMountFile(const std::string &src, const std::string &dest)
|
||||
{
|
||||
pandoryExec("touch '" + dest +"'");
|
||||
pandoryExec("mount -o bind '"+ src +"' '"+dest+"'");
|
||||
}
|
||||
|
||||
void copyKickstarts()
|
||||
{
|
||||
// bind mount r/w copies from memory
|
||||
/* -1483a091 */ bindMountFile("/tmp/bios/kick33180.A500", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v1.2 r33.180 (1986)(Commodore)(A500-A1000-A2000).rom");
|
||||
/* @c4f0f55f */ bindMountFile("/tmp/bios/kick34005.A500", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV).rom");
|
||||
/* -c3bdb240 */ bindMountFile("/tmp/bios/kick37175.A500", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v2.04 rev 37.175 (1991)(Commodore)(A500+).rom");
|
||||
/* @43b0df7b */ bindMountFile("/tmp/bios/kick37350.A600", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v2.05 rev 37.350 (1992)(Commodore)(A600HD)[!].rom");
|
||||
/* -6c9b07d2 */ bindMountFile("/tmp/bios/kick39106.A1200", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v3.0 rev 39.106 (1992)(Commodore)(A1200)[!].rom");
|
||||
/* -fc24ae0d */ bindMountFile("/tmp/bios/kick40063.A600", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v3.1 rev 40.63 (1993)(Commodore)(A500-A600-A2000)[!].rom");
|
||||
/* @1483a091 */ bindMountFile("/tmp/bios/kick40068.A1200", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v3.1 rev 40.68 (1993)(Commodore)(A1200)[!].rom");
|
||||
/* -d6bae334 */ bindMountFile("/tmp/bios/kick40068.A4000", "/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v3.1 rev 40.68 (1993)(Commodore)(A4000).rom");
|
||||
|
||||
|
||||
// and go overboard on the whdboot ones
|
||||
bindMountFile("/tmp/bios/kick33180.A500", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick33180.A500");
|
||||
bindMountFile("/tmp/bios/kick33180.A500.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick33180.A500.RTB");
|
||||
bindMountFile("/tmp/bios/kick33192.A500.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick33192.A500.RTB");
|
||||
bindMountFile("/tmp/bios/kick34005.A500", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick34005.A500");
|
||||
bindMountFile("/tmp/bios/kick34005.A500.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick34005.A500.RTB");
|
||||
bindMountFile("/tmp/bios/kick37175.A500", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick37175.A500");
|
||||
bindMountFile("/tmp/bios/kick37350.A600", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick37350.A600");
|
||||
bindMountFile("/tmp/bios/kick39106.A1200", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick39106.A1200");
|
||||
bindMountFile("/tmp/bios/kick40063.A600", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40063.A600");
|
||||
bindMountFile("/tmp/bios/kick40063.A600.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40063.A600.RTB");
|
||||
bindMountFile("/tmp/bios/kick40068.A1200", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40068.A1200");
|
||||
bindMountFile("/tmp/bios/kick40068.A1200.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40068.A1200.RTB");
|
||||
bindMountFile("/tmp/bios/kick40068.A4000", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40068.A4000");
|
||||
bindMountFile("/tmp/bios/kick40068.A4000.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40068.A4000.RTB");
|
||||
|
||||
// ..and to the whdload boot folder
|
||||
//bindMountFile("/tmp/bios/kick34005.A500", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick34005.A500");
|
||||
//bindMountFile("/tmp/bios/kick37350.A600", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick37350.A600");
|
||||
//bindMountFile("/tmp/bios/kick40068.A1200", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40068.A1200");
|
||||
|
||||
// ..and the rtb files, because whdload. the a600 one doesn't exist.
|
||||
//bindMountFile("/tmp/bios/kick34005.A500.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick34005.A500.RTB");
|
||||
//bindMountFile("/tmp/bios/kick40068.A1200.RTB", "/mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/kick40068.A1200.RTB");
|
||||
}
|
||||
|
||||
void prepareBios()
|
||||
|
@ -177,26 +256,20 @@ void prepareBios()
|
|||
chdir("/tmp/bios/");
|
||||
|
||||
// Symlink all the nand-kickstarts to /tmp/bios/
|
||||
system("find /usr/share/amiberry/kickstarts/ -type f -exec ash -c 'ln -sfv {} $(basename {})' \\;");
|
||||
//system("find /usr/share/amiberry/kickstarts/ -type f -exec ash -c 'ln -sfv {} $(basename {})' \\;");
|
||||
// Copy instead
|
||||
pandoryExec("cp -n /usr/share/amiberry/kickstarts/* /tmp/bios/");
|
||||
|
||||
// Symlink all the libre amiberry-fallback-kickstarts to /tmp/bios/
|
||||
system("find /mnt/Pandory/.user/.config/amiberry/kickstarts/ -type f -exec ash -c 'ln -sfv {} $(basename {})' \\;");
|
||||
//system("find /mnt/Pandory/.user/.config/amiberry/kickstarts/ -type f -exec ash -c 'ln -sfv {} $(basename {})' \\;");
|
||||
|
||||
// Rsync the preferred kickstarts to their correct names in the amiberry kickstart folder
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick34005.A500 '/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV).rom'");
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick37350.A600 '/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v2.05 rev 37.350 (1992)(Commodore)(A600HD)[!].rom'");
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick40068.A1200 '/mnt/Pandory/.user/.config/amiberry/kickstarts/Kickstart v3.1 rev 40.68 (1993)(Commodore)(A1200)[!].rom'");
|
||||
|
||||
// ..and to the whdload boot folder
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick34005.A500 /mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/");
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick37350.A600 /mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/");
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick40068.A1200 /mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/");
|
||||
|
||||
// ..and the rtb files, because whdload. the a600 one doesn't exist.
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick34005.A500.RTB /mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/");
|
||||
system("rsync -av --size-only /usr/share/amiberry/kickstarts/kick40068.A1200.RTB /mnt/Pandory/.user/.config/amiberry/whdboot/save-data/Kickstarts/");
|
||||
// Symlink everything in retroarch/system to /tmp/bios, but in a cooler way than above
|
||||
system("for i in /mnt/Pandory/.user/.config/retroarch/system/*; do ln -fs \"$i\" $(basename \"$i\"); done;");
|
||||
|
||||
copyKickstarts();
|
||||
}
|
||||
|
||||
|
||||
void parseAmiberryCommandLine(std::string const &name, std::string const &mode)
|
||||
{
|
||||
std::string cmd = "ps -oargs | grep -v grep | grep amiberry | grep \""+name+"\" && touch /tmp/pandory_mode_" + mode;
|
||||
|
@ -208,6 +281,37 @@ void clearCaches()
|
|||
pandoryExec("busybox sysctl vm.drop_caches=3");
|
||||
}
|
||||
|
||||
void magiterm()
|
||||
{
|
||||
pandoryExec("MagiTerm");
|
||||
}
|
||||
|
||||
void atari800()
|
||||
{
|
||||
pandoryExec("atari800.sh");
|
||||
}
|
||||
|
||||
void crispydoom()
|
||||
{
|
||||
pandoryExec("cd /mnt/Pandory/.roms/Crispy; crispy-setup");
|
||||
}
|
||||
|
||||
void eduke32()
|
||||
{
|
||||
pandoryExec("cd /mnt/Pandory/.roms/EDuke32; eduke32");
|
||||
}
|
||||
|
||||
|
||||
// vice stuff
|
||||
void x64() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - 64' ; /tmp/pandory/bin/vice.sh x64"); }
|
||||
void x128() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - 128'; /tmp/pandory/bin/vice.sh x128"); }
|
||||
void xpet() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - PET'; /tmp/pandory/bin/vice.sh xpet"); }
|
||||
void xvic() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - VIC-20'; /tmp/pandory/bin/vice.sh xvic"); }
|
||||
void xplus4() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - PLUS4'; /tmp/pandory/bin/vice.sh xplus4"); }
|
||||
void xcbm2() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - CBM-II'; /tmp/pandory/bin/vice.sh xcbm2"); }
|
||||
void xcbm5x0() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - CBM-II'; /tmp/pandory/bin/vice.sh xcbm5x0"); }
|
||||
void vsid() { pandoryExec("cd '/mnt/Pandory/.roms/Commodore - SID Music'; /tmp/pandory/bin/vice.sh vsid"); }
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
// init pandory libraries and paths
|
||||
|
@ -217,6 +321,13 @@ int main(int argc, char *argv[])
|
|||
// empty caches
|
||||
clearCaches();
|
||||
|
||||
pandoryExec("mount -o remount,rw /mnt"); // fix 1.2.1 being a dick
|
||||
|
||||
// restore configs if one has been fiddled with by the menu
|
||||
pandoryExec("rsync -av --size-only /tmp/pandory/share/launchers/ /mnt/Pandory/");
|
||||
|
||||
// this is an extra bonus for people who manage to get their a500 connected up (they get an atari emulator)
|
||||
pandoryExec("ip addr | grep global && ( ([ ! -e /mnt/Pandory/.user/.net ] && panwarn \"You have activated an easter-egg.\n\nA new emulator is available in the Pandory folder.\" \" Returning to Pandory \"); touch /mnt/Pandory/.user/.net; rsync -av --size-only /tmp/pandory/share/launchers_net/ /mnt/Pandory/)");
|
||||
|
||||
CommandLineArguments args = CommandLineArguments(argc, argv);
|
||||
std::string mode = args.getArgument(1);
|
||||
|
@ -247,12 +358,10 @@ int main(int argc, char *argv[])
|
|||
return 0;
|
||||
}
|
||||
|
||||
|
||||
freezeProcess("manhattan");
|
||||
freezeProcess("skyline");
|
||||
freezeProcess("amiberry");
|
||||
|
||||
|
||||
if (!Fs::exists("/tmp/pandory_original_amiberry")) {
|
||||
pandoryExec("mkdir /tmp/dbus/");
|
||||
pandoryExec("mount -o bind /mnt/Pandory/.user /root");
|
||||
|
@ -260,10 +369,11 @@ int main(int argc, char *argv[])
|
|||
pandoryExec("mount -o bind /tmp/pandory/bin/amiberry-proxy.sh /usr/bin/amiberry");
|
||||
pandoryExec("mount -o bind /tmp/pandory/share/terminfo/ /usr/share/terminfo/");
|
||||
|
||||
|
||||
// fork network in the background
|
||||
pandoryExec("pandash network &");
|
||||
|
||||
// prepare bios in the background -> do it sync instead of async
|
||||
// prepare bios -> do it sync instead of async
|
||||
pandoryExec("pandash bios");
|
||||
|
||||
// rsync /etc/ to /tmp/etc/ and bind mount it back so it's writable
|
||||
|
@ -276,7 +386,7 @@ int main(int argc, char *argv[])
|
|||
pandoryExec("cp -fv /mnt/Pandory/.user/.config/dropbear/shadow /etc/shadow");
|
||||
pandoryExec("cp -fv /mnt/Pandory/.user/.config/dropbear/passwd /etc/passwd");
|
||||
}
|
||||
|
||||
|
||||
system("rm -f /tmp/pandory_mode_*");
|
||||
|
||||
parseAmiberryCommandLine("Start AMiNIMiga", "aminimiga");
|
||||
|
@ -285,16 +395,34 @@ int main(int argc, char *argv[])
|
|||
|
||||
parseAmiberryCommandLine("Start PPSSPP (PSP)", "ppsspp");
|
||||
parseAmiberryCommandLine("Start Darkplaces (Quake)", "darkplaces");
|
||||
parseAmiberryCommandLine("Start Hatari (Atari)", "hatari");
|
||||
parseAmiberryCommandLine("Start Crispy (DOOM - Heretic - Hexen)", "crispydoom");
|
||||
parseAmiberryCommandLine("Start EDuke32 (Duke3D)", "eduke32");
|
||||
|
||||
parseAmiberryCommandLine("Start Hatari (Atari ST)", "hatari");
|
||||
parseAmiberryCommandLine("Start Amiberry 5 (Amiga)", "amiberry5");
|
||||
parseAmiberryCommandLine("Start OpenBor (Beat-em-ups)", "openbor");
|
||||
parseAmiberryCommandLine("Start Terminal (Linux)", "terminal");
|
||||
parseAmiberryCommandLine("Start ScummVM (Adventure Games)", "scummvm");
|
||||
parseAmiberryCommandLine("Start Zesarux (Spectrum)", "spectrum");
|
||||
parseAmiberryCommandLine("Start Flycast (Dreamcast)", "flycast");
|
||||
parseAmiberryCommandLine("Start OpenCubic (MOD-Player)", "ocp");
|
||||
parseAmiberryCommandLine("Start Atari800 (Atari 8-Bit)", "atari800");
|
||||
|
||||
parseAmiberryCommandLine("Start MagiTerm (BBS Client)", "magiterm");
|
||||
|
||||
parseAmiberryCommandLine("Start DOSBox Staging (IBM PC)", "dosbox");
|
||||
parseAmiberryCommandLine("Start Tiberian Dawn (C&C)", "vanillatd");
|
||||
parseAmiberryCommandLine("Start Red Alert (C&C)", "vanillara");
|
||||
parseAmiberryCommandLine("Start VanillaConquer (C&C1 Tiberian Dawn)", "vanillatd");
|
||||
parseAmiberryCommandLine("Start VanillaConquer (C&C2 Red Alert)", "vanillara");
|
||||
|
||||
parseAmiberryCommandLine("Start VICE (C64)", "x64");
|
||||
parseAmiberryCommandLine("Start VICE (C128)", "x128");
|
||||
parseAmiberryCommandLine("Start VICE (PET)", "xpet");
|
||||
parseAmiberryCommandLine("Start VICE (VIC-20)", "xvic");
|
||||
parseAmiberryCommandLine("Start VICE (PLUS4)", "xplus4");
|
||||
parseAmiberryCommandLine("Start VICE (CBM II B)", "xcbm2");
|
||||
parseAmiberryCommandLine("Start VICE (CBM II P)", "xcbm5x0");
|
||||
parseAmiberryCommandLine("Start VICE (SID Player)", "vsid");
|
||||
|
||||
|
||||
// free up memory
|
||||
forceKill("amiberry");
|
||||
|
@ -311,17 +439,29 @@ int main(int argc, char *argv[])
|
|||
darkplaces();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_spectrum")) {
|
||||
spectrum();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_dosbox")) {
|
||||
} else if (Fs::exists("/tmp/pandory_mode_ocp")) {
|
||||
ocp();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_atari800")) {
|
||||
atari800();
|
||||
}
|
||||
else if (Fs::exists("/tmp/pandory_mode_magiterm")) {
|
||||
magiterm();
|
||||
}
|
||||
else if (Fs::exists("/tmp/pandory_mode_dosbox")) {
|
||||
dosbox();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_hatari")) {
|
||||
hatari();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_amiberry5")) {
|
||||
// make sure the usb has the most recent files written
|
||||
pandoryExec("sync");
|
||||
// start amiberry with no arguments
|
||||
amiberry5("", "");
|
||||
} else if (Fs::exists("/tmp/pandory_mode_scummvm")) {
|
||||
scummvm();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_openbor")) {
|
||||
openbor();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_flycast")) {
|
||||
flycast();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_vanillatd")) {
|
||||
vanillaTD();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_vanillara")) {
|
||||
|
@ -337,6 +477,26 @@ int main(int argc, char *argv[])
|
|||
} else if (Fs::exists("/tmp/pandory_mode_upgrade")) {
|
||||
//pandoryExec("echo 'echo Upgrade to the full Pandory500 to add many emulators and new features to your A500 Mini. https://go.teampandory.com/a500 && sleep 10 && exit' > /tmp/pandoryshell");
|
||||
pandoryExec("mpv.sh /tmp/pandory/etc/pandory.mp4");
|
||||
} else if (Fs::exists("/tmp/pandory_mode_x64")) {
|
||||
x64();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_x128")) {
|
||||
x128();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_xpet")) {
|
||||
xpet();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_xvic")) {
|
||||
xvic();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_xplus4")) {
|
||||
xplus4();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_xcbm2")) {
|
||||
xcbm2();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_xcbm5x0")) {
|
||||
xcbm5x0();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_vsid")) {
|
||||
vsid();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_crispydoom")) {
|
||||
crispydoom();
|
||||
} else if (Fs::exists("/tmp/pandory_mode_eduke32")) {
|
||||
eduke32();
|
||||
} else {
|
||||
retroarch();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue