From 38265bf3df6ee4df65e259a71ae20c1b0d90fc73 Mon Sep 17 00:00:00 2001 From: Griffin Date: Wed, 21 Feb 2024 16:12:41 +0000 Subject: [PATCH 01/16] srm parser --- .../emudeck/laserdisc-hypseus_singe.json | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json diff --git a/configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json b/configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json new file mode 100644 index 000000000..4add5c084 --- /dev/null +++ b/configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json @@ -0,0 +1,62 @@ +{ + "parserType": "Glob", + "configTitle": "LaserDisk - Hypseus Singe", + "steamCategory": "${LaserDisk / SINGE}", + "executableModifier": "\"${exePath}\"", + "romDirectory": "${romsdirglobal}/laserdisc", + "steamDirectory": "${steamdirglobal}", + "startInDirectory": "", + "titleModifier": "${fuzzyTitle}", + "executableArgs": "vblank_mode=0 %command% -f -g \"${filePath}\"", + "onlineImageQueries": "${${fuzzyTitle}}", + "imagePool": "${fuzzyTitle}", + "imageProviders": ["SteamGridDB"], + "defaultImage": "", + "defaultTallImage": "", + "defaultHeroImage": "", + "defaultLogoImage": "", + "defaultIcon": "/home/deck/.config/EmuDeck/backend/configs/steam-rom-manager/userData/img/default/icon.png", + "localImages": "", + "localTallImages": "", + "localHeroImages": "", + "localLogoImages": "", + "localIcons": "", + "disabled": false, + "userAccounts": { + "specifiedAccounts": "", + "skipWithMissingDataDir": true, + "useCredentials": true + }, + "parserInputs": { + "glob": "**/${title}@(.daphne|.DAPHNE|.dirksimple|.DIRKSIMPLE|.ogv|.OGV|.singe|.SINGE|.7z|.7Z|.zip|.ZIP)" + }, + "titleFromVariable": { + "limitToGroups": "", + "caseInsensitiveVariables": false, + "skipFileIfVariableWasNotFound": false, + "tryToMatchTitle": false + }, + "fuzzyMatch": { + "replaceDiacritics": true, + "removeCharacters": true, + "removeBrackets": true + }, + "executable": { + "path": "${retroarchpath}", + "shortcutPassthrough": false, + "appendArgsToExecutable": true + }, + "parserId": "164785092749272607", + "version": 10, + "imageProviderAPIs": { + "SteamGridDB": { + "nsfw": false, + "humor": false, + "imageMotionTypes": ["static"], + "styles": [], + "stylesHero": [], + "stylesLogo": [], + "stylesIcon": [] + } + } +} From 9d55356e2a3caece05267e7f989328e112443bff Mon Sep 17 00:00:00 2001 From: Griffin Date: Wed, 21 Feb 2024 16:17:33 +0000 Subject: [PATCH 02/16] start uninstall --- functions/EmuScripts/emuDeckHypseusSinge.sh | 344 ++++++++++++++++++++ uninstall.sh | 39 ++- 2 files changed, 366 insertions(+), 17 deletions(-) create mode 100644 functions/EmuScripts/emuDeckHypseusSinge.sh diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh new file mode 100644 index 000000000..d9a105fc4 --- /dev/null +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -0,0 +1,344 @@ +#!/bin/bash +#variables +HypseusSinge_emuName="Hypseus Singe" +HypseusSinge_emuType="$emuDeckEmuTypeAppImage" +HypseusSinge_emuPath="$HOME/Applications/pcsx2-Qt.AppImage" +HypseusSinge_configFile="$HOME/.config/PCSX2/inis/PCSX2.ini" + +#cleanupOlderThings +HypseusSinge_cleanup() { + echo "NYI" +} + +#Install +HypseusSinge_install() { + echo "Begin PCSX2-QT Install" + local showProgress="$1" + + #if installEmuAI "${HypseusSinge_emuName}" "https://github.com/PCSX2/pcsx2/releases/download/v1.7.4749/pcsx2-v1.7.4749-linux-appimage-x64-Qt.AppImage" "pcsx2-Qt" "$showProgress"; then # pcsx2-Qt.AppImage - filename capitalization matters for ES-DE to find it + if installEmuAI "${HypseusSinge_emuName}" "$(getReleaseURLGH "PCSX2/pcsx2" "Qt.AppImage")" "pcsx2-Qt" "$showProgress"; then # pcsx2-Qt.AppImage - filename capitalization matters for ES-DE to find it + rm -rf $HOME/.local/share/applications/pcsx2-Qt.desktop &>/dev/null # delete old shortcut + else + return 1 + fi +} +#Fix for autoupdate +Pcsx2_install(){ + HypseusSinge_install +} + +#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() { + setMSG "Updating $HypseusSinge_emuName settings." + configEmuAI "$HypseusSinge_emuName" "config" "$HOME/.config/PCSX2" "$EMUDECKGIT/configs/HypseusSinge/.config/PCSX2" + HypseusSinge_setEmulationFolder + HypseusSinge_setupStorage + HypseusSinge_setupSaves + HypseusSinge_setupControllers + + +} + +#ConfigurePaths +HypseusSinge_setEmulationFolder() { + setMSG "Setting $HypseusSinge_emuName Emulation Folder" + + iniFieldUpdate "$HypseusSinge_configFile" "UI" "ConfirmShutdown" "false" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Bios" "${biosPath}" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Snapshots" "${storagePath}/pcsx2/snaps" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Savestates" "${savesPath}/pcsx2/states" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "MemoryCards" "${savesPath}/pcsx2/saves" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Cache" "${storagePath}/pcsx2/cache" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Covers" "${storagePath}/pcsx2/covers" + iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Textures" "${storagePath}/pcsx2/textures" + + iniFieldUpdate "$HypseusSinge_configFile" "GameList" "RecursivePaths" "${romsPath}/ps2" + +} + +#SetupSaves +HypseusSinge_setupSaves() { + #link fp and ap saves / states? + moveSaveFolder pcsx2 saves "$HOME/.var/app/net.pcsx2.PCSX2/config/PCSX2/memcards" + moveSaveFolder pcsx2 states "$HOME/.var/app/net.pcsx2.PCSX2/config/PCSX2/sstates" +} + +HypseusSinge_setupControllers() { + new_pad1_section=" +Type = DualShock2 +InvertL = 0 +InvertR = 0 +Deadzone = 0.000000 +AxisScale = 1.330000 +TriggerDeadzone = 0 +TriggerScale = 1 +LargeMotorScale = 1.000000 +SmallMotorScale = 1.000000 +ButtonDeadzone = 0 +PressureModifier = 0.300000 +Up = SDL-0/DPadUp +Right = SDL-0/DPadRight +Down = SDL-0/DPadDown +Left = SDL-0/DPadLeft +Triangle = SDL-0/Y +Circle = SDL-0/B +Cross = SDL-0/A +Square = SDL-0/X +Select = SDL-0/Back +Start = SDL-0/Start +L1 = SDL-0/LeftShoulder +L2 = SDL-0/+LeftTrigger +R1 = SDL-0/RightShoulder +R2 = SDL-0/+RightTrigger +L3 = SDL-0/LeftStick +R3 = SDL-0/RightStick +LUp = SDL-0/-LeftY +LRight = SDL-0/+LeftX +LDown = SDL-0/+LeftY +LLeft = SDL-0/-LeftX +RUp = SDL-0/-RightY +RRight = SDL-0/+RightX +RDown = SDL-0/+RightY +RLeft = SDL-0/-RightX +SmallMotor = SDL-0/SmallMotor +LargeMotor = SDL-0/LargeMotor +Analog = Keyboard/F6 +Pressure = Keyboard/S" + + new_pad2_section="Type = DualShock2 +Deadzone = 0.000000 +AxisScale = 1.330000 +LargeMotorScale = 1.000000 +SmallMotorScale = 1.000000 +PressureModifier = 0.300000 +Up = SDL-1/DPadUp +Right = SDL-1/DPadRight +Down = SDL-1/DPadDown +Left = SDL-1/DPadLeft +Triangle = SDL-1/Y +Circle = SDL-1/B +Cross = SDL-1/A +Square = SDL-1/X +Select = SDL-1/Back +Start = SDL-1/Start +L1 = SDL-1/LeftShoulder +L2 = SDL-1/+LeftTrigger +R1 = SDL-1/RightShoulder +R2 = SDL-1/+RightTrigger +L3 = SDL-1/LeftStick +R3 = SDL-1/RightStick +Analog = SDL-1/Guide +LUp = SDL-1/-LeftY +LRight = SDL-1/+LeftX +LDown = SDL-1/+LeftY +LLeft = SDL-1/-LeftX +RUp = SDL-1/-RightY +RRight = SDL-1/+RightX +RDown = SDL-1/+RightY +RLeft = SDL-1/-RightX +LargeMotor = SDL-1/LargeMotor +SmallMotor = SDL-1/SmallMotor" + + new_hotkey_section="CycleAspectRatio = SDL-0/Start & SDL-0/DPadRight +CycleAspectRatio = Keyboard/F6 +CycleInterlaceMode = Keyboard/F5 +CycleMipmapMode = Keyboard/Insert +DecreaseUpscalemultiplier=SDL-0/Start & SDL-0/DPadDown +GSDumpMultiFrame = Keyboard/Control & Keyboard/Shift & Keyboard/F8 +GSDumpSingleFrame = Keyboard/Shift & Keyboard/F8 +HoldTurbo = Keyboard/Period +IncreaseUpscalemultiplier=SDL-0/Start & SDL-0/DPadUp +InputRecToggleMode = Keyboard/Shift & Keyboard/R +LoadStateFromSlot = Keyboard/F3 +LoadStateFromSlot = SDL-0/Back & SDL-0/LeftShoulder +NextSaveStateSlot = Keyboard/F2 +NextSaveStateSlot = SDL-0/Start & SDL-0/RightShoulder +OpenPauseMenu = Keyboard/Escape +OpenPauseMenu = SDL-0/Start & SDL-0/LeftStick +PreviousSaveStateSlot = Keyboard/Shift & Keyboard/F2 +PreviousSaveStateSlot = SDL-0/Start & SDL-0/LeftShoulder +ResetVM = SDL-0/Back & SDL-0/B +SaveStateToSlot = Keyboard/F1 +SaveStateToSlot = SDL-0/Back & SDL-0/RightShoulder +Screenshot = Keyboard/F8 +ShutdownVM = SDL-0/Back & SDL-0/Start +ToggleFrameLimit = Keyboard/F4 +ToggleFrameLimit = SDL-0/Start & SDL-0/DPadRight +ToggleFullscreen = Keyboard/Alt & Keyboard/Return +ToggleFullscreen = SDL-0/Back & SDL-0/RightStick +TogglePause = Keyboard/Space +TogglePause = SDL-0/Back & SDL-0/A +ToggleSlowMotion = Keyboard/Shift & Keyboard/Backtab +ToggleSlowMotion = SDL-0/Back & SDL-0/+LeftTrigger +ToggleSoftwareRendering = Keyboard/F9 +ToggleSoftwareRendering = SDL-0/Start & SDL-0/DPadLeft +ToggleTurbo = Keyboard/Tab +ToggleTurbo = SDL-0/Back & SDL-0/+RightTrigger +ZoomIn = Keyboard/Control & Keyboard/Plus +ZoomOut = Keyboard/Control & Keyboard/Minus" + + + iniSectionUpdate "${HypseusSinge_configFile}" "Hotkeys" "${new_hotkey_section}" + + iniSectionUpdate "${HypseusSinge_configFile}" "Pad1" "${new_pad1_section}" + + iniSectionUpdate "${HypseusSinge_configFile}" "Pad2" "${new_pad2_section}" + +} + +#SetupStorage +HypseusSinge_setupStorage() { + echo "Begin PCSX2-QT storage config" + mkdir -p "${storagePath}/pcsx2/snaps" + mkdir -p "${storagePath}/pcsx2/cache" + mkdir -p "${storagePath}/pcsx2/textures" + mkdir -p "${storagePath}/pcsx2/covers" +} + +#WipeSettings +HypseusSinge_wipe() { + setMSG "Wiping $HypseusSinge_emuName settings." + rm -rf "$HOME/.config/PCSX2" + # prob not cause roms are here +} + +#Uninstall +HypseusSinge_uninstall() { + setMSG "Uninstalling $HypseusSinge_emuName." + rm -rf "$HypseusSinge_emuPath" + HypseusSinge_wipe +} + +#setABXYstyle +HypseusSinge_setABXYstyle() { + echo "NYI" +} + +#Migrate +HypseusSinge_migrate() { + echo "NYI" +} + +#WideScreenOn +HypseusSinge_wideScreenOn() { + iniFieldUpdate "$HypseusSinge_configFile" "EmuCore" "EnableWideScreenPatches" "True" + iniFieldUpdate "$HypseusSinge_configFile" "EmuCore/GS" "AspectRatio" "16:9" +} + +#WideScreenOff +HypseusSinge_wideScreenOff() { + iniFieldUpdate "$HypseusSinge_configFile" "EmuCore" "EnableWideScreenPatches" "false" + iniFieldUpdate "$HypseusSinge_configFile" "EmuCore/GS" "AspectRatio" "Auto 4:3/3:2" +} + +#BezelOn +HypseusSinge_bezelOn() { + echo "NYI" +} + +#BezelOff +HypseusSinge_bezelOff() { + echo "NYI" +} + +#finalExec - Extra stuff +HypseusSinge_finalize() { + echo "NYI" +} + +HypseusSinge_IsInstalled() { + if [ -e "$HypseusSinge_emuPath" ]; then + echo "true" + else + echo "false" + fi +} + +HypseusSinge_resetConfig() { + HypseusSinge_init &>/dev/null && echo "true" || echo "false" +} + +HypseusSinge_addSteamInputProfile() { + echo "NYI" +} + +HypseusSinge_retroAchievementsOn() { + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Enabled" "True" +} +HypseusSinge_retroAchievementsOff() { + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Enabled" "False" +} + +HypseusSinge_retroAchievementsHardCoreOn() { + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "ChallengeMode" "True" + +} +HypseusSinge_retroAchievementsHardCoreOff() { + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "ChallengeMode" "False" +} + +HypseusSinge_retroAchievementsSetLogin() { + rau=$(cat "$HOME/.config/EmuDeck/.rau") + rat=$(cat "$HOME/.config/EmuDeck/.rat") + echo "Evaluate RetroAchievements Login." + if [ ${#rat} -lt 1 ]; then + echo "--No token." + elif [ ${#rau} -lt 1 ]; then + echo "--No username." + else + echo "Valid Retroachievements Username and Password length" + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Username" "$rau" + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Token" "$rat" + iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "LoginTimestamp" "$(date +%s)" + HypseusSinge_retroAchievementsOn + fi +} + +HypseusSinge_setRetroAchievements(){ + HypseusSinge_retroAchievementsSetLogin + if [ "$achievementsHardcore" == "true" ]; then + HypseusSinge_retroAchievementsHardCoreOn + else + HypseusSinge_retroAchievementsHardCoreOff + fi +} + +HypseusSinge_setCustomizations(){ + echo "NYI" +} + + +HypseusSinge_setResolution(){ + + case $pcsx2Resolution in + "720P") multiplier=2;; + "1080P") multiplier=3;; + "1440P") multiplier=4;; + "4K") multiplier=6;; + *) echo "Error"; return 1;; + esac + + RetroArch_setConfigOverride "upscale_multiplier" $multiplier "$HypseusSinge_configFile" +} \ No newline at end of file diff --git a/uninstall.sh b/uninstall.sh index 50a010fa1..4ff2f4885 100755 --- a/uninstall.sh +++ b/uninstall.sh @@ -11,6 +11,7 @@ doUninstallDolphin=true doUninstallDuck=true doUninstallESDE=true doUninstallFlycast=true +doUninstallHypseusSinge=true doUninstallMame=true doUninstallmelonDS=true doUninstallMGBA=true @@ -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=$? @@ -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 From 5455e2820a50ccf09e5fee80daf843991f278ac6 Mon Sep 17 00:00:00 2001 From: Griffin Date: Wed, 21 Feb 2024 16:20:45 +0000 Subject: [PATCH 03/16] add setup --- setup.sh | 8 ++++++++ uninstall.sh | 3 +++ 2 files changed, 11 insertions(+) diff --git a/setup.sh b/setup.sh index 7cc2ff31b..7b05a1f30 100644 --- a/setup.sh +++ b/setup.sh @@ -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" @@ -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 diff --git a/uninstall.sh b/uninstall.sh index 4ff2f4885..fd1283fe7 100755 --- a/uninstall.sh +++ b/uninstall.sh @@ -304,6 +304,9 @@ fi flatpak uninstall org.flycast.Flycast -y rm -rf $HOME/.var/app/org.flycast.Flycast &> /dev/null fi + if [[ "$doUninstallHypseusSinge" == true ]]; then + echo "NYI" + fi if [[ "$doUninstallMame" == true ]]; then flatpak uninstall org.mamedev.MAME -y # MAME creates both of these folders but only uses ~/.mame From 56c86ded305e6279ddaa162c0f9702e0dba4aebf Mon Sep 17 00:00:00 2001 From: Griffin Date: Wed, 21 Feb 2024 16:26:14 +0000 Subject: [PATCH 04/16] add settings --- settings.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/settings.sh b/settings.sh index 4eb9da0d8..59b748130 100644 --- a/settings.sh +++ b/settings.sh @@ -28,6 +28,7 @@ doSetupMGBA=true doSetupBigPEmu=true doSetupFlycast=true doSetupSupermodel=true +doSetupHypseusSinge=true doSetupModel2=true #Install all systems by default @@ -60,6 +61,7 @@ doInstallPowertools=false doInstallGyro=false doInstallHomeBrewGames=false doInstallModel2=false +doInstallHypseusSinge=false installString='Installing' From eb9c9058e9aceca9f109cee13dff34cc56591584 Mon Sep 17 00:00:00 2001 From: Griffin Date: Wed, 21 Feb 2024 16:30:33 +0000 Subject: [PATCH 05/16] add cliinstall --- installCLI.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/installCLI.sh b/installCLI.sh index f482c78cc..81622b990 100755 --- a/installCLI.sh +++ b/installCLI.sh @@ -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 @@ -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 From 97ab76b635cace8aaf374dd784456d0ef1d4ab7d Mon Sep 17 00:00:00 2001 From: Griffin Date: Wed, 21 Feb 2024 16:38:31 +0000 Subject: [PATCH 06/16] add helperfunctions.sh --- functions/all.sh | 1 + functions/helperFunctions.sh | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/functions/all.sh b/functions/all.sh index 604f4acfd..a0fe2b98b 100644 --- a/functions/all.sh +++ b/functions/all.sh @@ -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 diff --git a/functions/helperFunctions.sh b/functions/helperFunctions.sh index 6cd59498f..746ad7002 100644 --- a/functions/helperFunctions.sh +++ b/functions/helperFunctions.sh @@ -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") @@ -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") @@ -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" ;; @@ -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 @@ -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)" From 4c1d8b6fb2e7e6ec64d47ba9a15d4e424cb96b0f Mon Sep 17 00:00:00 2001 From: Griffin Date: Thu, 22 Feb 2024 09:33:20 +0000 Subject: [PATCH 07/16] install start --- functions/EmuScripts/emuDeckHypseusSinge.sh | 320 ++++---------------- 1 file changed, 64 insertions(+), 256 deletions(-) diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index d9a105fc4..a67f48b26 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -2,7 +2,7 @@ #variables HypseusSinge_emuName="Hypseus Singe" HypseusSinge_emuType="$emuDeckEmuTypeAppImage" -HypseusSinge_emuPath="$HOME/Applications/pcsx2-Qt.AppImage" +HypseusSinge_emuPath="$HOME/Applications/hypseus-singe/Hypseus_Singe-x86_64.AppImage" HypseusSinge_configFile="$HOME/.config/PCSX2/inis/PCSX2.ini" #cleanupOlderThings @@ -12,19 +12,14 @@ HypseusSinge_cleanup() { #Install HypseusSinge_install() { - echo "Begin PCSX2-QT Install" + echo "Begin Hypseus Singe Install" local showProgress="$1" - #if installEmuAI "${HypseusSinge_emuName}" "https://github.com/PCSX2/pcsx2/releases/download/v1.7.4749/pcsx2-v1.7.4749-linux-appimage-x64-Qt.AppImage" "pcsx2-Qt" "$showProgress"; then # pcsx2-Qt.AppImage - filename capitalization matters for ES-DE to find it - if installEmuAI "${HypseusSinge_emuName}" "$(getReleaseURLGH "PCSX2/pcsx2" "Qt.AppImage")" "pcsx2-Qt" "$showProgress"; then # pcsx2-Qt.AppImage - filename capitalization matters for ES-DE to find it - rm -rf $HOME/.local/share/applications/pcsx2-Qt.desktop &>/dev/null # delete old shortcut - else - return 1 - fi -} -#Fix for autoupdate -Pcsx2_install(){ - HypseusSinge_install + 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 @@ -50,295 +45,108 @@ HypseusSinge_init() { } #update -HypseusSinge_update() { - setMSG "Updating $HypseusSinge_emuName settings." - configEmuAI "$HypseusSinge_emuName" "config" "$HOME/.config/PCSX2" "$EMUDECKGIT/configs/HypseusSinge/.config/PCSX2" - HypseusSinge_setEmulationFolder - HypseusSinge_setupStorage - HypseusSinge_setupSaves - HypseusSinge_setupControllers +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" - iniFieldUpdate "$HypseusSinge_configFile" "UI" "ConfirmShutdown" "false" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Bios" "${biosPath}" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Snapshots" "${storagePath}/pcsx2/snaps" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Savestates" "${savesPath}/pcsx2/states" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "MemoryCards" "${savesPath}/pcsx2/saves" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Cache" "${storagePath}/pcsx2/cache" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Covers" "${storagePath}/pcsx2/covers" - iniFieldUpdate "$HypseusSinge_configFile" "Folders" "Textures" "${storagePath}/pcsx2/textures" - iniFieldUpdate "$HypseusSinge_configFile" "GameList" "RecursivePaths" "${romsPath}/ps2" +#ConfigurePaths +HypseusSinge_setEmulationFolder(){ + echo "Begin HypseusSinge Path Config" + local prefpath_directoryOpt='pref-path: ' + local newprefpath_directoryOpt="$prefpath_directoryOpt""$storagePath/HypseusSinge/" + changeLine "$prefpath_directoryOpt" "$newprefpath_directoryOpt" "$HypseusSinge_configFile" } #SetupSaves -HypseusSinge_setupSaves() { - #link fp and ap saves / states? - moveSaveFolder pcsx2 saves "$HOME/.var/app/net.pcsx2.PCSX2/config/PCSX2/memcards" - moveSaveFolder pcsx2 states "$HOME/.var/app/net.pcsx2.PCSX2/config/PCSX2/sstates" +HypseusSinge_setupSaves(){ + echo "Begin HypseusSinge save link" + linkToSaveFolder HypseusSinge saves "$storagePath/HypseusSinge/ux0/user/00/savedata" } -HypseusSinge_setupControllers() { - new_pad1_section=" -Type = DualShock2 -InvertL = 0 -InvertR = 0 -Deadzone = 0.000000 -AxisScale = 1.330000 -TriggerDeadzone = 0 -TriggerScale = 1 -LargeMotorScale = 1.000000 -SmallMotorScale = 1.000000 -ButtonDeadzone = 0 -PressureModifier = 0.300000 -Up = SDL-0/DPadUp -Right = SDL-0/DPadRight -Down = SDL-0/DPadDown -Left = SDL-0/DPadLeft -Triangle = SDL-0/Y -Circle = SDL-0/B -Cross = SDL-0/A -Square = SDL-0/X -Select = SDL-0/Back -Start = SDL-0/Start -L1 = SDL-0/LeftShoulder -L2 = SDL-0/+LeftTrigger -R1 = SDL-0/RightShoulder -R2 = SDL-0/+RightTrigger -L3 = SDL-0/LeftStick -R3 = SDL-0/RightStick -LUp = SDL-0/-LeftY -LRight = SDL-0/+LeftX -LDown = SDL-0/+LeftY -LLeft = SDL-0/-LeftX -RUp = SDL-0/-RightY -RRight = SDL-0/+RightX -RDown = SDL-0/+RightY -RLeft = SDL-0/-RightX -SmallMotor = SDL-0/SmallMotor -LargeMotor = SDL-0/LargeMotor -Analog = Keyboard/F6 -Pressure = Keyboard/S" - - new_pad2_section="Type = DualShock2 -Deadzone = 0.000000 -AxisScale = 1.330000 -LargeMotorScale = 1.000000 -SmallMotorScale = 1.000000 -PressureModifier = 0.300000 -Up = SDL-1/DPadUp -Right = SDL-1/DPadRight -Down = SDL-1/DPadDown -Left = SDL-1/DPadLeft -Triangle = SDL-1/Y -Circle = SDL-1/B -Cross = SDL-1/A -Square = SDL-1/X -Select = SDL-1/Back -Start = SDL-1/Start -L1 = SDL-1/LeftShoulder -L2 = SDL-1/+LeftTrigger -R1 = SDL-1/RightShoulder -R2 = SDL-1/+RightTrigger -L3 = SDL-1/LeftStick -R3 = SDL-1/RightStick -Analog = SDL-1/Guide -LUp = SDL-1/-LeftY -LRight = SDL-1/+LeftX -LDown = SDL-1/+LeftY -LLeft = SDL-1/-LeftX -RUp = SDL-1/-RightY -RRight = SDL-1/+RightX -RDown = SDL-1/+RightY -RLeft = SDL-1/-RightX -LargeMotor = SDL-1/LargeMotor -SmallMotor = SDL-1/SmallMotor" - - new_hotkey_section="CycleAspectRatio = SDL-0/Start & SDL-0/DPadRight -CycleAspectRatio = Keyboard/F6 -CycleInterlaceMode = Keyboard/F5 -CycleMipmapMode = Keyboard/Insert -DecreaseUpscalemultiplier=SDL-0/Start & SDL-0/DPadDown -GSDumpMultiFrame = Keyboard/Control & Keyboard/Shift & Keyboard/F8 -GSDumpSingleFrame = Keyboard/Shift & Keyboard/F8 -HoldTurbo = Keyboard/Period -IncreaseUpscalemultiplier=SDL-0/Start & SDL-0/DPadUp -InputRecToggleMode = Keyboard/Shift & Keyboard/R -LoadStateFromSlot = Keyboard/F3 -LoadStateFromSlot = SDL-0/Back & SDL-0/LeftShoulder -NextSaveStateSlot = Keyboard/F2 -NextSaveStateSlot = SDL-0/Start & SDL-0/RightShoulder -OpenPauseMenu = Keyboard/Escape -OpenPauseMenu = SDL-0/Start & SDL-0/LeftStick -PreviousSaveStateSlot = Keyboard/Shift & Keyboard/F2 -PreviousSaveStateSlot = SDL-0/Start & SDL-0/LeftShoulder -ResetVM = SDL-0/Back & SDL-0/B -SaveStateToSlot = Keyboard/F1 -SaveStateToSlot = SDL-0/Back & SDL-0/RightShoulder -Screenshot = Keyboard/F8 -ShutdownVM = SDL-0/Back & SDL-0/Start -ToggleFrameLimit = Keyboard/F4 -ToggleFrameLimit = SDL-0/Start & SDL-0/DPadRight -ToggleFullscreen = Keyboard/Alt & Keyboard/Return -ToggleFullscreen = SDL-0/Back & SDL-0/RightStick -TogglePause = Keyboard/Space -TogglePause = SDL-0/Back & SDL-0/A -ToggleSlowMotion = Keyboard/Shift & Keyboard/Backtab -ToggleSlowMotion = SDL-0/Back & SDL-0/+LeftTrigger -ToggleSoftwareRendering = Keyboard/F9 -ToggleSoftwareRendering = SDL-0/Start & SDL-0/DPadLeft -ToggleTurbo = Keyboard/Tab -ToggleTurbo = SDL-0/Back & SDL-0/+RightTrigger -ZoomIn = Keyboard/Control & Keyboard/Plus -ZoomOut = Keyboard/Control & Keyboard/Minus" - - - iniSectionUpdate "${HypseusSinge_configFile}" "Hotkeys" "${new_hotkey_section}" - - iniSectionUpdate "${HypseusSinge_configFile}" "Pad1" "${new_pad1_section}" - - iniSectionUpdate "${HypseusSinge_configFile}" "Pad2" "${new_pad2_section}" - -} #SetupStorage -HypseusSinge_setupStorage() { - echo "Begin PCSX2-QT storage config" - mkdir -p "${storagePath}/pcsx2/snaps" - mkdir -p "${storagePath}/pcsx2/cache" - mkdir -p "${storagePath}/pcsx2/textures" - mkdir -p "${storagePath}/pcsx2/covers" +HypseusSinge_setupStorage(){ + echo "Begin HypseusSinge storage config" + + mkdir -p "$storagePath/HypseusSinge/ux0/app" + unlink "$romsPath/psvita/InstalledGames" + ln -s "$storagePath/HypseusSinge/ux0/app" "$romsPath/psvita/InstalledGames" + } + #WipeSettings -HypseusSinge_wipe() { - setMSG "Wiping $HypseusSinge_emuName settings." - rm -rf "$HOME/.config/PCSX2" - # prob not cause roms are here +HypseusSinge_wipe(){ + echo "Begin HypseusSinge delete config directories" + rm -rf "$HOME/.config/HypseusSinge" } + #Uninstall -HypseusSinge_uninstall() { - setMSG "Uninstalling $HypseusSinge_emuName." - rm -rf "$HypseusSinge_emuPath" - HypseusSinge_wipe +HypseusSinge_uninstall(){ + echo "Begin HypseusSinge uninstall" + rm -rf "$HypseusSinge_emuPath" } -#setABXYstyle -HypseusSinge_setABXYstyle() { - echo "NYI" +#Migrate +HypseusSinge_migrate(){ +echo "NYI" } -#Migrate -HypseusSinge_migrate() { - echo "NYI" + +#setABXYstyle +HypseusSinge_setABXYstyle(){ +echo "NYI" } #WideScreenOn -HypseusSinge_wideScreenOn() { - iniFieldUpdate "$HypseusSinge_configFile" "EmuCore" "EnableWideScreenPatches" "True" - iniFieldUpdate "$HypseusSinge_configFile" "EmuCore/GS" "AspectRatio" "16:9" +HypseusSinge_wideScreenOn(){ +echo "NYI" } #WideScreenOff -HypseusSinge_wideScreenOff() { - iniFieldUpdate "$HypseusSinge_configFile" "EmuCore" "EnableWideScreenPatches" "false" - iniFieldUpdate "$HypseusSinge_configFile" "EmuCore/GS" "AspectRatio" "Auto 4:3/3:2" +HypseusSinge_wideScreenOff(){ +echo "NYI" } #BezelOn -HypseusSinge_bezelOn() { - echo "NYI" +HypseusSinge_bezelOn(){ +echo "NYI" } #BezelOff -HypseusSinge_bezelOff() { - echo "NYI" +HypseusSinge_bezelOff(){ +echo "NYI" } #finalExec - Extra stuff -HypseusSinge_finalize() { - echo "NYI" +HypseusSinge_finalize(){ + echo "Begin HypseusSinge finalize" } -HypseusSinge_IsInstalled() { - if [ -e "$HypseusSinge_emuPath" ]; then - echo "true" - else - echo "false" - fi -} - -HypseusSinge_resetConfig() { - HypseusSinge_init &>/dev/null && echo "true" || echo "false" -} - -HypseusSinge_addSteamInputProfile() { - echo "NYI" +HypseusSinge_IsInstalled(){ + if [ -e "$HypseusSinge_emuPath/HypseusSinge" ]; then + echo "true" + else + echo "false" + fi } -HypseusSinge_retroAchievementsOn() { - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Enabled" "True" -} -HypseusSinge_retroAchievementsOff() { - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Enabled" "False" -} - -HypseusSinge_retroAchievementsHardCoreOn() { - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "ChallengeMode" "True" - -} -HypseusSinge_retroAchievementsHardCoreOff() { - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "ChallengeMode" "False" -} - -HypseusSinge_retroAchievementsSetLogin() { - rau=$(cat "$HOME/.config/EmuDeck/.rau") - rat=$(cat "$HOME/.config/EmuDeck/.rat") - echo "Evaluate RetroAchievements Login." - if [ ${#rat} -lt 1 ]; then - echo "--No token." - elif [ ${#rau} -lt 1 ]; then - echo "--No username." - else - echo "Valid Retroachievements Username and Password length" - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Username" "$rau" - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "Token" "$rat" - iniFieldUpdate "$HypseusSinge_configFile" "Achievements" "LoginTimestamp" "$(date +%s)" - HypseusSinge_retroAchievementsOn - fi -} - -HypseusSinge_setRetroAchievements(){ - HypseusSinge_retroAchievementsSetLogin - if [ "$achievementsHardcore" == "true" ]; then - HypseusSinge_retroAchievementsHardCoreOn - else - HypseusSinge_retroAchievementsHardCoreOff - fi -} - -HypseusSinge_setCustomizations(){ - echo "NYI" +HypseusSinge_resetConfig(){ + HypseusSinge_init &>/dev/null && echo "true" || echo "false" } HypseusSinge_setResolution(){ - - case $pcsx2Resolution in - "720P") multiplier=2;; - "1080P") multiplier=3;; - "1440P") multiplier=4;; - "4K") multiplier=6;; - *) echo "Error"; return 1;; - esac - - RetroArch_setConfigOverride "upscale_multiplier" $multiplier "$HypseusSinge_configFile" + echo "NYI" } \ No newline at end of file From 178daf9f04cf50eaeed3c35cb53ab36625095026 Mon Sep 17 00:00:00 2001 From: Griffin Date: Thu, 22 Feb 2024 09:45:02 +0000 Subject: [PATCH 08/16] sh launcher --- functions/EmuScripts/emuDeckHypseusSinge.sh | 8 ++------ tools/launchers/hypseus-singe.sh | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 tools/launchers/hypseus-singe.sh diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index a67f48b26..bcaa448d2 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -60,11 +60,7 @@ HypseusSinge_update(){ #ConfigurePaths HypseusSinge_setEmulationFolder(){ - echo "Begin HypseusSinge Path Config" - - local prefpath_directoryOpt='pref-path: ' - local newprefpath_directoryOpt="$prefpath_directoryOpt""$storagePath/HypseusSinge/" - changeLine "$prefpath_directoryOpt" "$newprefpath_directoryOpt" "$HypseusSinge_configFile" + echo "NYI" } #SetupSaves @@ -95,7 +91,7 @@ HypseusSinge_wipe(){ #Uninstall HypseusSinge_uninstall(){ echo "Begin HypseusSinge uninstall" - rm -rf "$HypseusSinge_emuPath" + rm -rf "$HOME/Applications/hypseus-singe" } #Migrate diff --git a/tools/launchers/hypseus-singe.sh b/tools/launchers/hypseus-singe.sh new file mode 100644 index 000000000..763409dec --- /dev/null +++ b/tools/launchers/hypseus-singe.sh @@ -0,0 +1,14 @@ +#!/bin/bash +source $HOME/.config/EmuDeck/backend/functions/all.sh +emulatorInit "HypseusSinge" +emuName="Hypseus Singe" #parameterize me +emufolder="$HOME/Applications/hypseus-singe" # has to be applications for ES-DE to find it + +#find full path to emu executable +exe=$(find $emufolder -iname "${emuName}*.AppImage" | sort -n | cut -d' ' -f 2- | tail -n 1 2>/dev/null) +chmod +x $exe +#run the executable with the params. +#Fix first ' +param="${@}" +param=$(echo "$param" | sed "s|'|\"|g") +eval "${exe} ${param}" From 1701037b021f2e1470a32e7d96f9f8c5705ea44e Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 22:56:12 +0000 Subject: [PATCH 09/16] begin config updates --- functions/EmuScripts/emuDeckHypseusSinge.sh | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index bcaa448d2..9b74b059d 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -3,12 +3,7 @@ HypseusSinge_emuName="Hypseus Singe" HypseusSinge_emuType="$emuDeckEmuTypeAppImage" HypseusSinge_emuPath="$HOME/Applications/hypseus-singe/Hypseus_Singe-x86_64.AppImage" -HypseusSinge_configFile="$HOME/.config/PCSX2/inis/PCSX2.ini" - -#cleanupOlderThings -HypseusSinge_cleanup() { - echo "NYI" -} +# HypseusSinge_configFile="$HOME/.config/" #Install HypseusSinge_install() { @@ -60,7 +55,17 @@ HypseusSinge_update(){ #ConfigurePaths HypseusSinge_setEmulationFolder(){ - echo "NYI" + 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 From 6a2de5f985142b354b14b4a474b5cfdd0e43e561 Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 23:18:23 +0000 Subject: [PATCH 10/16] add file fixing --- functions/EmuScripts/emuDeckHypseusSinge.sh | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index 9b74b059d..dc0118011 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -70,18 +70,19 @@ HypseusSinge_setEmulationFolder(){ #SetupSaves HypseusSinge_setupSaves(){ - echo "Begin HypseusSinge save link" - linkToSaveFolder HypseusSinge saves "$storagePath/HypseusSinge/ux0/user/00/savedata" + echo "NYI" } #SetupStorage HypseusSinge_setupStorage(){ - echo "Begin HypseusSinge storage config" - mkdir -p "$storagePath/HypseusSinge/ux0/app" - unlink "$romsPath/psvita/InstalledGames" - ln -s "$storagePath/HypseusSinge/ux0/app" "$romsPath/psvita/InstalledGames" + #Populate empty file for ES-DE + for file in "${romsPath}/laserdisc/*.daphne"; { + if [ -e "$file/$file" ]; then + touch "$file/$file"; + fi + } } From 743652fd2f828afa5acfe492c4190b3781f01abe Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 23:27:49 +0000 Subject: [PATCH 11/16] syntax error: --- functions/EmuScripts/emuDeckHypseusSinge.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index dc0118011..ac7f25afd 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -58,7 +58,7 @@ HypseusSinge_setEmulationFolder(){ setMSG "Setting $HypseusSinge_emuName Emulation Folder" #create laserdisc folder if missing - new folder - if [ -e "${romsPath}/laserdisc/" ]then; + if [ -e "${romsPath}/laserdisc/" ]; then mkdir -p $romsPath/laserdisc/ fi From 69c797b62b02a995c9aca58ef00df21517f60b1f Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 23:35:47 +0000 Subject: [PATCH 12/16] just remove the srm parser --- .../emudeck/laserdisc-hypseus_singe.json | 62 ------------------- 1 file changed, 62 deletions(-) delete mode 100644 configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json diff --git a/configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json b/configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json deleted file mode 100644 index 4add5c084..000000000 --- a/configs/steam-rom-manager/userData/parsers/emudeck/laserdisc-hypseus_singe.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "parserType": "Glob", - "configTitle": "LaserDisk - Hypseus Singe", - "steamCategory": "${LaserDisk / SINGE}", - "executableModifier": "\"${exePath}\"", - "romDirectory": "${romsdirglobal}/laserdisc", - "steamDirectory": "${steamdirglobal}", - "startInDirectory": "", - "titleModifier": "${fuzzyTitle}", - "executableArgs": "vblank_mode=0 %command% -f -g \"${filePath}\"", - "onlineImageQueries": "${${fuzzyTitle}}", - "imagePool": "${fuzzyTitle}", - "imageProviders": ["SteamGridDB"], - "defaultImage": "", - "defaultTallImage": "", - "defaultHeroImage": "", - "defaultLogoImage": "", - "defaultIcon": "/home/deck/.config/EmuDeck/backend/configs/steam-rom-manager/userData/img/default/icon.png", - "localImages": "", - "localTallImages": "", - "localHeroImages": "", - "localLogoImages": "", - "localIcons": "", - "disabled": false, - "userAccounts": { - "specifiedAccounts": "", - "skipWithMissingDataDir": true, - "useCredentials": true - }, - "parserInputs": { - "glob": "**/${title}@(.daphne|.DAPHNE|.dirksimple|.DIRKSIMPLE|.ogv|.OGV|.singe|.SINGE|.7z|.7Z|.zip|.ZIP)" - }, - "titleFromVariable": { - "limitToGroups": "", - "caseInsensitiveVariables": false, - "skipFileIfVariableWasNotFound": false, - "tryToMatchTitle": false - }, - "fuzzyMatch": { - "replaceDiacritics": true, - "removeCharacters": true, - "removeBrackets": true - }, - "executable": { - "path": "${retroarchpath}", - "shortcutPassthrough": false, - "appendArgsToExecutable": true - }, - "parserId": "164785092749272607", - "version": 10, - "imageProviderAPIs": { - "SteamGridDB": { - "nsfw": false, - "humor": false, - "imageMotionTypes": ["static"], - "styles": [], - "stylesHero": [], - "stylesLogo": [], - "stylesIcon": [] - } - } -} From d537f4b32b12e2cf339d4f2d062b3ca704ef4ed1 Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 23:39:21 +0000 Subject: [PATCH 13/16] remove singe launcher --- tools/launchers/hypseus-singe.sh | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 tools/launchers/hypseus-singe.sh diff --git a/tools/launchers/hypseus-singe.sh b/tools/launchers/hypseus-singe.sh deleted file mode 100644 index 763409dec..000000000 --- a/tools/launchers/hypseus-singe.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash -source $HOME/.config/EmuDeck/backend/functions/all.sh -emulatorInit "HypseusSinge" -emuName="Hypseus Singe" #parameterize me -emufolder="$HOME/Applications/hypseus-singe" # has to be applications for ES-DE to find it - -#find full path to emu executable -exe=$(find $emufolder -iname "${emuName}*.AppImage" | sort -n | cut -d' ' -f 2- | tail -n 1 2>/dev/null) -chmod +x $exe -#run the executable with the params. -#Fix first ' -param="${@}" -param=$(echo "$param" | sed "s|'|\"|g") -eval "${exe} ${param}" From 34c6697911edaec3a3e655dd2ccedb8f21301926 Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 23:42:38 +0000 Subject: [PATCH 14/16] impliment uninstall --- uninstall.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/uninstall.sh b/uninstall.sh index fd1283fe7..498a7330d 100755 --- a/uninstall.sh +++ b/uninstall.sh @@ -305,7 +305,8 @@ fi rm -rf $HOME/.var/app/org.flycast.Flycast &> /dev/null fi if [[ "$doUninstallHypseusSinge" == true ]]; then - echo "NYI" + 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 From cf34759aca1b2c4cfa0c525c8946aa48288ff10d Mon Sep 17 00:00:00 2001 From: Griffin Date: Fri, 23 Feb 2024 23:46:37 +0000 Subject: [PATCH 15/16] shellcheck fix --- functions/EmuScripts/emuDeckHypseusSinge.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index ac7f25afd..ed08fe2ba 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -78,7 +78,8 @@ HypseusSinge_setupSaves(){ HypseusSinge_setupStorage(){ #Populate empty file for ES-DE - for file in "${romsPath}/laserdisc/*.daphne"; { + fileDir="${romsPath}/laserdisc/*.daphne" + for file in $fileDir; { if [ -e "$file/$file" ]; then touch "$file/$file"; fi From 832e9eca1977eaf6561c0af216cea994ff1f169e Mon Sep 17 00:00:00 2001 From: Griffin Date: Sun, 25 Feb 2024 23:21:46 +0000 Subject: [PATCH 16/16] missing bangs --- functions/EmuScripts/emuDeckHypseusSinge.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/functions/EmuScripts/emuDeckHypseusSinge.sh b/functions/EmuScripts/emuDeckHypseusSinge.sh index ed08fe2ba..91b7ba5a2 100644 --- a/functions/EmuScripts/emuDeckHypseusSinge.sh +++ b/functions/EmuScripts/emuDeckHypseusSinge.sh @@ -21,7 +21,7 @@ HypseusSinge_install() { HypseusSinge_init() { setMSG "Initializing $HypseusSinge_emuName settings." - if [ -e "$HypseusSinge_configFile" ]; then + if [ ! -e "$HypseusSinge_configFile" ]; then mv -f "$HypseusSinge_configFile" "$HypseusSinge_configFile.bak" fi @@ -58,7 +58,7 @@ HypseusSinge_setEmulationFolder(){ setMSG "Setting $HypseusSinge_emuName Emulation Folder" #create laserdisc folder if missing - new folder - if [ -e "${romsPath}/laserdisc/" ]; then + if [ ! -e "${romsPath}/laserdisc/" ]; then mkdir -p $romsPath/laserdisc/ fi @@ -80,7 +80,7 @@ HypseusSinge_setupStorage(){ #Populate empty file for ES-DE fileDir="${romsPath}/laserdisc/*.daphne" for file in $fileDir; { - if [ -e "$file/$file" ]; then + if [ ! -e "$file/$file" ]; then touch "$file/$file"; fi }