Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hypseus Singe Integration #1017

Open
wants to merge 18 commits into
base: dev
Choose a base branch
from
155 changes: 155 additions & 0 deletions functions/EmuScripts/emuDeckHypseusSinge.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
#!/bin/bash
#variables
HypseusSinge_emuName="Hypseus Singe"
HypseusSinge_emuType="$emuDeckEmuTypeAppImage"
HypseusSinge_emuPath="$HOME/Applications/hypseus-singe/Hypseus_Singe-x86_64.AppImage"
# HypseusSinge_configFile="$HOME/.config/"

#Install
HypseusSinge_install() {
echo "Begin Hypseus Singe Install"
local showProgress="$1"

if installEmuBI "$HypseusSinge_emuName" "$(getReleaseURLGH "DirtBagXon/hypseus-singe" ".tar.gz")" "" "tar.gz" "$showProgress"; then
tar -xf "$HOME/Applications/hypseus-singe*.tar.gz" -C "$HOME/Applications/" && rm -rf "$HOME/Applications/hypseus-singe*.tar.gz"
else
return 1
fi
}

#ApplyInitialSettings
HypseusSinge_init() {
setMSG "Initializing $HypseusSinge_emuName settings."

if [ ! -e "$HypseusSinge_configFile" ]; then
mv -f "$HypseusSinge_configFile" "$HypseusSinge_configFile.bak"
fi

if ! "$HypseusSinge_emuPath" -testconfig; then # try to generate the config file. if it fails, insert one as a fallback.
#fallback
configEmuAI "$HypseusSinge_emuName" "config" "$HOME/.config/PCSX2" "$EMUDECKGIT/configs/HypseusSinge/.config/PCSX2" "true"
fi

HypseusSinge_setEmulationFolder
HypseusSinge_setupStorage
HypseusSinge_setupSaves
HypseusSinge_setupControllers
HypseusSinge_setCustomizations
HypseusSinge_setRetroAchievements

}

#update
HypseusSinge_update(){
echo "Begin HypseusSinge update"

configEmuAI "HypseusSinge" "config" "$HOME/.config/HypseusSinge" "$EMUDECKGIT/configs/HypseusSinge"

HypseusSinge_setEmulationFolder
HypseusSinge_setupStorage
HypseusSinge_setupSaves #?
HypseusSinge_finalize
}



#ConfigurePaths
HypseusSinge_setEmulationFolder(){
setMSG "Setting $HypseusSinge_emuName Emulation Folder"

#create laserdisc folder if missing - new folder
if [ ! -e "${romsPath}/laserdisc/" ]; then
mkdir -p $romsPath/laserdisc/
fi

#Setup symlink for bios
mkdir -p "${biosPath}/hypseus-singe/"
mkdir -p "$HOME/Applications/hypseus-singe/roms/"
ln -sn "$HOME/Applications/hypseus-singe/roms/" "${biosPath}/hypseus-singe/bios"
}

#SetupSaves
HypseusSinge_setupSaves(){
echo "NYI"
}


#SetupStorage
HypseusSinge_setupStorage(){

#Populate empty file for ES-DE
fileDir="${romsPath}/laserdisc/*.daphne"
for file in $fileDir; {
if [ ! -e "$file/$file" ]; then
touch "$file/$file";
fi
}

}


#WipeSettings
HypseusSinge_wipe(){
echo "Begin HypseusSinge delete config directories"
rm -rf "$HOME/.config/HypseusSinge"
}


#Uninstall
HypseusSinge_uninstall(){
echo "Begin HypseusSinge uninstall"
rm -rf "$HOME/Applications/hypseus-singe"
}

#Migrate
HypseusSinge_migrate(){
echo "NYI"
}


#setABXYstyle
HypseusSinge_setABXYstyle(){
echo "NYI"
}

#WideScreenOn
HypseusSinge_wideScreenOn(){
echo "NYI"
}

#WideScreenOff
HypseusSinge_wideScreenOff(){
echo "NYI"
}

#BezelOn
HypseusSinge_bezelOn(){
echo "NYI"
}

#BezelOff
HypseusSinge_bezelOff(){
echo "NYI"
}

#finalExec - Extra stuff
HypseusSinge_finalize(){
echo "Begin HypseusSinge finalize"
}

HypseusSinge_IsInstalled(){
if [ -e "$HypseusSinge_emuPath/HypseusSinge" ]; then
echo "true"
else
echo "false"
fi
}

HypseusSinge_resetConfig(){
HypseusSinge_init &>/dev/null && echo "true" || echo "false"
}


HypseusSinge_setResolution(){
echo "NYI"
}
1 change: 1 addition & 0 deletions functions/all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ source "$EMUDECKGIT"/functions/EmuScripts/emuDeckBigPEmu.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckares.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckFlycast.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckSupermodel.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckHypseusSinge.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckModel2.sh

#remoteplayclientscripts
Expand Down
5 changes: 5 additions & 0 deletions functions/helperFunctions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -296,6 +296,7 @@ function createUpdateSettingsFile(){
defaultSettingsList+=("doSetupMGBA=true")
defaultSettingsList+=("doSetupFlycast=true")
defaultSettingsList+=("doSetupSupermodel=true")
defaultSettingsList+=("doSetupHypseusSinge=true")
defaultSettingsList+=("doInstallSRM=true")
defaultSettingsList+=("doInstallESDE=true")
defaultSettingsList+=("doInstallPegasus=false")
Expand All @@ -320,6 +321,7 @@ function createUpdateSettingsFile(){
defaultSettingsList+=("doInstallMGBA=false")
defaultSettingsList+=("doInstallFlycast=true")
defaultSettingsList+=("doInstallSupermodel=true")
defaultSettingsList+=("doInstallHypseusSinge=true")
defaultSettingsList+=("doInstallCHD=true")
defaultSettingsList+=("doInstallPowertools=false")
defaultSettingsList+=("doInstallGyro=false")
Expand Down Expand Up @@ -784,6 +786,7 @@ getEmuRepo() {
"dolphin") repo="shiiion/dolphin" ;;
"duckstation") repo="stenzek/duckstation" ;;
"flycast") repo="flyinghead/flycast" ;;
"HypseusSinge") repo="DirtBagXon/hypseus-singe" ;;
"MAME") repo="mamedev/mame" ;;
"melonDS") repo="melonDS-emu/melonDS" ;;
"mgba") repo="mgba-emu/mgba" ;;
Expand Down Expand Up @@ -945,6 +948,7 @@ function jsonToBashVars(){
setSetting doInstallSupermodel "$(jq .installEmus.supermodel.status $json)"
setSetting doInstallModel2 "$(jq .installEmus.model2.status $json)"
setSetting doInstallBigPEmu "$(jq .installEmus.bigpemu.status $json)"
setSetting doInstallHypseusSinge "$(jq .installEmus.hypseussinge.status $json)"


#Setup Emus
Expand Down Expand Up @@ -974,6 +978,7 @@ function jsonToBashVars(){
setSetting doSetupSupermodel "$(jq .overwriteConfigEmus.supermodel.status $json)"
setSetting doSetupModel2 "$(jq .overwriteConfigEmus.model2.status $json)"
setSetting doSetupBigPEmu "$(jq .overwriteConfigEmus.bigpemu.status $json)"
setSetting doSetupHypseusSinge "$(jq .overwriteConfigEmus.hypseussinge.status $json)"

#Frontends
setSetting doSetupSRM "$(jq .overwriteConfigEmus.srm.status $json)"
Expand Down
2 changes: 2 additions & 0 deletions installCLI.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ setDefaults(){
setSetting doSetupRMG false
setSetting doSetupScummVM true
setSetting doSetupSupermodel true
setSetting doSetupHypseusSinge true
setSetting doSetupVita3K true
setSetting doSetupBigPEmu true
setSetting doSetupESDE true
Expand All @@ -85,6 +86,7 @@ setDefaults(){
setSetting doInstallScummVM true
setSetting doInstallBigPEmu true
setSetting doInstallSupermodel true
setSetting doInstallHypseusSinge true
setSetting doInstallGyro false
setSetting doInstallVita3K true
setSetting doInstallSRM true
Expand Down
2 changes: 2 additions & 0 deletions settings.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ doSetupMGBA=true
doSetupBigPEmu=true
doSetupFlycast=true
doSetupSupermodel=true
doSetupHypseusSinge=true
doSetupModel2=true

#Install all systems by default
Expand Down Expand Up @@ -60,6 +61,7 @@ doInstallPowertools=false
doInstallGyro=false
doInstallHomeBrewGames=false
doInstallModel2=false
doInstallHypseusSinge=false

installString='Installing'

Expand Down
8 changes: 8 additions & 0 deletions setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,10 @@ if [ $doInstallSupermodel == "true" ]; then
echo "Supermodel_install"
Supermodel_install
fi
if [ $doInstallHypseusSinge == "true" ]; then
echo "HypseusSinge_install"
HypseusSinge_install
fi
#Xenia - We need to install Xenia after creating the Roms folders!
if [ "$doInstallXenia" == "true" ]; then
echo "Xenia_install"
Expand Down Expand Up @@ -387,6 +391,10 @@ if [ "$doSetupSupermodel" == "true" ]; then
echo "Supermodel_init"
Supermodel_init
fi
if [ "$doSetupHypseusSinge" == "true" ]; then
echo "HypseusSinge_init"
HypseusSinge_init
fi
if [ "$doSetupModel2" == "true" ]; then
echo "model2_init"
Model2_init
Expand Down
43 changes: 26 additions & 17 deletions uninstall.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ doUninstallDolphin=true
doUninstallDuck=true
doUninstallESDE=true
doUninstallFlycast=true
doUninstallHypseusSinge=true
doUninstallMame=true
doUninstallmelonDS=true
doUninstallMGBA=true
Expand Down Expand Up @@ -156,23 +157,24 @@ fi
6 "Dolphin" \
7 "Duckstation" \
8 "Flycast" \
9 "Mame" \
10 "melonDS" \
11 "mGBA" \
12 "Model2" \
13 "PCSX2" \
14 "PPSSPP" \
15 "PrimeHack" \
16 "RetroArch"\
17 "RMG" \
18 "RPCS3" \
19 "Ryujinx" \
20 "ScummVM" \
21 "Supermodel" \
22 "Vita3K" \
23 "Xemu" \
24 "Xenia" \
25 "Yuzu" )
9 "Hypseu Singe" \
10 "Mame" \
11 "melonDS" \
12 "mGBA" \
13 "Model2" \
14 "PCSX2" \
15 "PPSSPP" \
16 "PrimeHack" \
17 "RetroArch"\
18 "RMG" \
19 "RPCS3" \
20 "Ryujinx" \
21 "ScummVM" \
22 "Supermodel" \
23 "Vita3K" \
24 "Xemu" \
25 "Xenia" \
26 "Yuzu" )

ans=$?

Expand Down Expand Up @@ -202,6 +204,9 @@ fi
if [[ "$emusToUninstall" == *"Flycast"* ]]; then
doUninstallFlycast=false
fi
if [[ "$emusToUninstall" == *"Hypseus Singe"* ]]; then
doUninstallHypseusSinge=false
fi
if [[ "$emusToUninstall" == *"Mame"* ]]; then
doUninstallMame=false
fi
Expand Down Expand Up @@ -299,6 +304,10 @@ fi
flatpak uninstall org.flycast.Flycast -y
rm -rf $HOME/.var/app/org.flycast.Flycast &> /dev/null
fi
if [[ "$doUninstallHypseusSinge" == true ]]; then
rm -rf $HOME/Applications/hypseus-singe &> /dev/null
rm -rf $HOME/.hypseus &> /dev/null
fi
if [[ "$doUninstallMame" == true ]]; then
flatpak uninstall org.mamedev.MAME -y
# MAME creates both of these folders but only uses ~/.mame
Expand Down
Loading