From 0142b29f9a01d72c6e2bfec60051dab76201a232 Mon Sep 17 00:00:00 2001 From: Sergio Date: Fri, 25 Mar 2022 10:21:32 +0100 Subject: [PATCH] update --- create_retroarch_chd_playlist.sh | 312 -------------------------- create_retroarch_thumbnails.sh | 298 ------------------------ create_retroarch_thumbnails_all.sh | 33 --- create_rom_pack.sh | 117 ++++++++++ rename_retroarch_arcade_thumbnails.sh | 51 ----- skyscraper.sh | 34 +-- skyscraper_old.sh | 218 ------------------ skyscraper_system.sh | 30 ++- 8 files changed, 153 insertions(+), 940 deletions(-) delete mode 100755 create_retroarch_chd_playlist.sh delete mode 100755 create_retroarch_thumbnails.sh delete mode 100755 create_retroarch_thumbnails_all.sh create mode 100755 create_rom_pack.sh delete mode 100755 rename_retroarch_arcade_thumbnails.sh delete mode 100755 skyscraper_old.sh diff --git a/create_retroarch_chd_playlist.sh b/create_retroarch_chd_playlist.sh deleted file mode 100755 index 0b8de7c..0000000 --- a/create_retroarch_chd_playlist.sh +++ /dev/null @@ -1,312 +0,0 @@ -#!/bin/bash -function help_message() { - echo "$USAGE" - echo - echo "Where [SYSTEMS] are:" - for WORD in $SYSTEMS; do - echo -e "\t$WORD" - done -} - -readonly USAGE=" -USAGE: -$(basename "$0") [SYSTEM] [ROM_FOLDER] [PLAYLISTS_FOLDER]" - -readonly SYSTEMS="pcenginecd 3do 3ds amiga amstradcpc apple2 arcade arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fba fds gameandwatch gamegear gb gba gbc gc genesis intellivision mame-advmame mame-libretro mame-mame4all mastersystem megacd megadrive msx n64 nds neogeo nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes steam ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" - -# check if there are all the parameters -if [ "$#" -ne 3 ]; then - help_message - exit 0 -fi - -# check if the system parameter is valid -if ! echo "$SYSTEMS" | grep -w "$1" >/dev/null; then - printf "%s\n" "You must enter a valid system name." - help_message - exit 0 -fi - -#readonly SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -readonly SYSTEM="$1" -readonly ROM_FOLDER="$2" -readonly PLAYLISTS_FOLDER="$3" -readonly BASE_PATH="/Users/sergio/Roms/roms.retroachievements.2020/" - -if ! test -d "${ROM_FOLDER}"/"${SYSTEM}"; then - echo "${ROM_FOLDER}"/"${SYSTEM}" does not exists - exit 0 -fi - -case $SYSTEM in - -3do) - readonly PLAYLIST_NAME="" - ;; -3ds) - readonly PLAYLIST_NAME="" - ;; -amiga) - readonly PLAYLIST_NAME="" - ;; -amstradcpc) - readonly PLAYLIST_NAME="" - ;; -apple2) - readonly PLAYLIST_NAME="" - ;; -arcade) - readonly PLAYLIST_NAME="FBNeo - Arcade Games" - ;; -arcadia) - readonly PLAYLIST_NAME="" - ;; -astrocde) - readonly PLAYLIST_NAME="" - ;; -atari800) - readonly PLAYLIST_NAME="" - ;; -atari2600) - readonly PLAYLIST_NAME="Atari - 2600" - ;; -atari5200) - readonly PLAYLIST_NAME="" - ;; -atari7800) - readonly PLAYLIST_NAME="Atari - 7800" - ;; -atarijaguar) - readonly PLAYLIST_NAME="" - ;; -atarilynx) - readonly PLAYLIST_NAME="Atari - Lynx" - ;; -atarist) - readonly PLAYLIST_NAME="" - ;; -c16) - readonly PLAYLIST_NAME="" - ;; -c64) - readonly PLAYLIST_NAME="" - ;; -c128) - readonly PLAYLIST_NAME="" - ;; -coco) - readonly PLAYLIST_NAME="" - ;; -coleco) - readonly PLAYLIST_NAME="Coleco - ColecoVision" - ;; -daphne) - readonly PLAYLIST_NAME="" - ;; -dragon32) - readonly PLAYLIST_NAME="" - ;; -dreamcast) - readonly PLAYLIST_NAME="" - ;; -fba) - readonly PLAYLIST_NAME="" - ;; -fds) - readonly PLAYLIST_NAME="" - ;; -gameandwatch) - readonly PLAYLIST_NAME="" - ;; -gamegear) - readonly PLAYLIST_NAME="Sega - Game Gear" - ;; -gb) - readonly PLAYLIST_NAME="Nintendo - Game Boy" - ;; -gba) - readonly PLAYLIST_NAME="Nintendo - Game Boy Advance" - ;; -gbc) - readonly PLAYLIST_NAME="Nintendo - Game Boy Color" - ;; -gc) - readonly PLAYLIST_NAME="" - ;; -genesis) - readonly PLAYLIST_NAME="" - ;; -intellivision) - readonly PLAYLIST_NAME="" - ;; -mame-advmame) - readonly PLAYLIST_NAME="" - ;; -mame-libretro) - readonly PLAYLIST_NAME="" - ;; -mame-mame4all) - readonly PLAYLIST_NAME="" - ;; -mastersystem) - readonly PLAYLIST_NAME="Sega - Master System - Mark III" - ;; -megacd) - readonly PLAYLIST_NAME="Sega - Mega-CD - Sega CD" - ;; -megadrive) - readonly PLAYLIST_NAME="Sega - Mega Drive - Genesis" - ;; -msx) - readonly PLAYLIST_NAME="Microsoft - MSX" - ;; -msx2) - readonly PLAYLIST_NAME="Microsoft - MSX2" - ;; -n64) - readonly PLAYLIST_NAME="Nintendo - Nintendo 64" - ;; -nds) - readonly PLAYLIST_NAME="Nintendo - Nintendo DS" - ;; -neogeo) - readonly PLAYLIST_NAME="" - ;; -nes) - readonly PLAYLIST_NAME="Nintendo - Nintendo Entertainment System" - ;; -ngp) - readonly PLAYLIST_NAME="SNK - Neo Geo Pocket" - ;; -ngpc) - readonly PLAYLIST_NAME="SNK - Neo Geo Pocket Color" - ;; -oric) - readonly PLAYLIST_NAME="" - ;; -pc) - readonly PLAYLIST_NAME="" - ;; -pc88) - readonly PLAYLIST_NAME="" - ;; -pc98) - readonly PLAYLIST_NAME="" - ;; -pcfx) - readonly PLAYLIST_NAME="" - ;; -pcengine) - readonly PLAYLIST_NAME="NEC - PC Engine - TurboGrafx 16" - ;; -pcenginecd) - readonly PLAYLIST_NAME="NEC - PC Engine CD" - ;; -pokemini) - readonly PLAYLIST_NAME="" - ;; -ports) - readonly PLAYLIST_NAME="" - ;; -ps2) - readonly PLAYLIST_NAME="" - ;; -psp) - readonly PLAYLIST_NAME="" - ;; -psx) - readonly PLAYLIST_NAME="Sony - PlayStation" - ;; -saturn) - readonly PLAYLIST_NAME="" - ;; -scummvm) - readonly PLAYLIST_NAME="" - ;; -sega32x) - readonly PLAYLIST_NAME="" - ;; -segacd) - readonly PLAYLIST_NAME="Sega - Mega-CD - Sega CD" - ;; -sg-1000) - readonly PLAYLIST_NAME="Sega - SG-1000" - ;; -snes) - readonly PLAYLIST_NAME="Nintendo - Super Nintendo Entertainment System" - ;; -steam) - readonly PLAYLIST_NAME="" - ;; -ti99) - readonly PLAYLIST_NAME="" - ;; -trs-80) - readonly PLAYLIST_NAME="" - ;; -vectrex) - readonly PLAYLIST_NAME="" - ;; -vic20) - readonly PLAYLIST_NAME="" - ;; -videopac) - readonly PLAYLIST_NAME="" - ;; -virtualboy) - readonly PLAYLIST_NAME="" - ;; -wii) - readonly PLAYLIST_NAME="" - ;; -wonderswan) - readonly PLAYLIST_NAME="Bandai - WonderSwan" - ;; -wonderswancolor) - readonly PLAYLIST_NAME="Bandai - WonderSwan Color" - ;; -x68000) - readonly PLAYLIST_NAME="" - ;; -x1) - readonly PLAYLIST_NAME="" - ;; -zmachine) - readonly PLAYLIST_NAME="" - ;; -zx81) - readonly PLAYLIST_NAME="" - ;; -zxspectrum) - readonly PLAYLIST_NAME="" - ;; - -esac - -if test -f "${PLAYLISTS_FOLDER}"/"${PLAYLIST_NAME}".lpl; then - rm "${PLAYLISTS_FOLDER}"/"${PLAYLIST_NAME}".lpl -fi -touch "${PLAYLISTS_FOLDER}"/"${PLAYLIST_NAME}".lpl - -(echo "{"; -echo " \"version\": \"1.4\","; -echo " \"default_core_path\": \"\","; -echo " \"default_core_name\": \"\","; -echo " \"label_display_mode\": 0,"; -echo " \"right_thumbnail_mode\": 0,"; -echo " \"left_thumbnail_mode\": 0,"; -echo " \"sort_mode\": 0,"; -echo " \"items\": [") >>"${PLAYLISTS_FOLDER}"/"${PLAYLIST_NAME}".lpl -for CHDFILE in "${ROM_FOLDER}"/*.chd; do - GAMENAME="$(basename "$CHDFILE" .chd)" - FOLDER="$(basename "$ROM_FOLDER")" - (echo " {"; - echo " \"path\": \"${BASE_PATH}/${FOLDER}/${GAMENAME}.chd\","; - echo " \"label\": \"${GAMENAME}\","; - echo " \"core_path\": \"DETECT\","; - echo " \"core_name\": \"DETECT\","; - echo " \"db_name\": \"${PLAYLIST_NAME}.lpl\""; - echo " },") >>"${PLAYLISTS_FOLDER}"/"${PLAYLIST_NAME}".lpl -done -(echo " ]"; -echo "}") >>"${PLAYLISTS_FOLDER}"/"${PLAYLIST_NAME}".lpl diff --git a/create_retroarch_thumbnails.sh b/create_retroarch_thumbnails.sh deleted file mode 100755 index 9b6ffb5..0000000 --- a/create_retroarch_thumbnails.sh +++ /dev/null @@ -1,298 +0,0 @@ -#!/bin/bash -function help_message() { - printf "%s\n\n" "$USAGE" - printf "%s" "Where [SYSTEMS] are: " - for WORD in $SYSTEMS; do - printf "%s" "$WORD " - done - printf "\n" -} - -readonly USAGE=" -USAGE: -$(basename "$0") [SYSTEM] [ROM_FOLDER] [THUMBNAILS_FOLDER]" - -readonly SYSTEMS="pcenginecd 3do 3ds amiga amstradcpc apple2 arcade arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fba fds gameandwatch gamegear gb gba gbc gc genesis intellivision mame-advmame mame-libretro mame-mame4all mastersystem megacd megadrive msx n64 nds neogeo nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes steam ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" - -# check if there are all the parameters -if [ "$#" -ne 3 ]; then - help_message - exit 0 -fi - -# check if the system parameter is valid -if ! echo "$SYSTEMS" | grep -w "$1" >/dev/null; then - printf "%s\n" "You must enter a valid system name." - help_message - exit 0 -fi - -if ! test -d "${ROM_FOLDER}"/"${SYSTEM}"; then - echo "${ROM_FOLDER}"/"${SYSTEM}" does not exists - exit 0 -fi - -#readonly SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -readonly SYSTEM="$1" -readonly ROM_FOLDER="$2" -readonly THUMBNAILS_FOLDER="$3" - -case $SYSTEM in - -3do) - readonly PLAYLIST_NAME="" - ;; -3ds) - readonly PLAYLIST_NAME="" - ;; -amiga) - readonly PLAYLIST_NAME="" - ;; -amstradcpc) - readonly PLAYLIST_NAME="" - ;; -apple2) - readonly PLAYLIST_NAME="" - ;; -arcade) - readonly PLAYLIST_NAME="FBNeo - Arcade Games" - ;; -arcadia) - readonly PLAYLIST_NAME="" - ;; -astrocde) - readonly PLAYLIST_NAME="" - ;; -atari800) - readonly PLAYLIST_NAME="" - ;; -atari2600) - readonly PLAYLIST_NAME="Atari - 2600" - ;; -atari5200) - readonly PLAYLIST_NAME="" - ;; -atari7800) - readonly PLAYLIST_NAME="Atari - 7800" - ;; -atarijaguar) - readonly PLAYLIST_NAME="" - ;; -atarilynx) - readonly PLAYLIST_NAME="Atari - Lynx" - ;; -atarist) - readonly PLAYLIST_NAME="" - ;; -c16) - readonly PLAYLIST_NAME="" - ;; -c64) - readonly PLAYLIST_NAME="" - ;; -c128) - readonly PLAYLIST_NAME="" - ;; -coco) - readonly PLAYLIST_NAME="" - ;; -coleco) - readonly PLAYLIST_NAME="Coleco - ColecoVision" - ;; -daphne) - readonly PLAYLIST_NAME="" - ;; -dragon32) - readonly PLAYLIST_NAME="" - ;; -dreamcast) - readonly PLAYLIST_NAME="" - ;; -fba) - readonly PLAYLIST_NAME="" - ;; -fds) - readonly PLAYLIST_NAME="" - ;; -gameandwatch) - readonly PLAYLIST_NAME="" - ;; -gamegear) - readonly PLAYLIST_NAME="Sega - Game Gear" - ;; -gb) - readonly PLAYLIST_NAME="Nintendo - Game Boy" - ;; -gba) - readonly PLAYLIST_NAME="Nintendo - Game Boy Advance" - ;; -gbc) - readonly PLAYLIST_NAME="Nintendo - Game Boy Color" - ;; -gc) - readonly PLAYLIST_NAME="" - ;; -genesis) - readonly PLAYLIST_NAME="" - ;; -intellivision) - readonly PLAYLIST_NAME="" - ;; -mame-advmame) - readonly PLAYLIST_NAME="" - ;; -mame-libretro) - readonly PLAYLIST_NAME="" - ;; -mame-mame4all) - readonly PLAYLIST_NAME="" - ;; -mastersystem) - readonly PLAYLIST_NAME="Sega - Master System - Mark III" - ;; -megacd) - readonly PLAYLIST_NAME="Sega - Mega-CD - Sega CD" - ;; -megadrive) - readonly PLAYLIST_NAME="Sega - Mega Drive - Genesis" - ;; -msx) - readonly PLAYLIST_NAME="Microsoft - MSX" - ;; -msx2) - readonly PLAYLIST_NAME="Microsoft - MSX2" - ;; -n64) - readonly PLAYLIST_NAME="Nintendo - Nintendo 64" - ;; -nds) - readonly PLAYLIST_NAME="Nintendo - Nintendo DS" - ;; -neogeo) - readonly PLAYLIST_NAME="" - ;; -nes) - readonly PLAYLIST_NAME="Nintendo - Nintendo Entertainment System" - ;; -ngp) - readonly PLAYLIST_NAME="SNK - Neo Geo Pocket" - ;; -ngpc) - readonly PLAYLIST_NAME="SNK - Neo Geo Pocket Color" - ;; -oric) - readonly PLAYLIST_NAME="" - ;; -pc) - readonly PLAYLIST_NAME="" - ;; -pc88) - readonly PLAYLIST_NAME="" - ;; -pc98) - readonly PLAYLIST_NAME="" - ;; -pcfx) - readonly PLAYLIST_NAME="" - ;; -pcengine) - readonly PLAYLIST_NAME="NEC - PC Engine - TurboGrafx 16" - ;; -pcenginecd) - readonly PLAYLIST_NAME="NEC - PC Engine CD" - ;; -pokemini) - readonly PLAYLIST_NAME="" - ;; -ports) - readonly PLAYLIST_NAME="" - ;; -ps2) - readonly PLAYLIST_NAME="" - ;; -psp) - readonly PLAYLIST_NAME="" - ;; -psx) - readonly PLAYLIST_NAME="Sony - PlayStation" - ;; -saturn) - readonly PLAYLIST_NAME="" - ;; -scummvm) - readonly PLAYLIST_NAME="" - ;; -sega32x) - readonly PLAYLIST_NAME="" - ;; -segacd) - readonly PLAYLIST_NAME="Sega - Mega-CD - Sega CD" - ;; -sg-1000) - readonly PLAYLIST_NAME="Sega - SG-1000" - ;; -snes) - readonly PLAYLIST_NAME="Nintendo - Super Nintendo Entertainment System" - ;; -steam) - readonly PLAYLIST_NAME="" - ;; -ti99) - readonly PLAYLIST_NAME="" - ;; -trs-80) - readonly PLAYLIST_NAME="" - ;; -vectrex) - readonly PLAYLIST_NAME="" - ;; -vic20) - readonly PLAYLIST_NAME="" - ;; -videopac) - readonly PLAYLIST_NAME="" - ;; -virtualboy) - readonly PLAYLIST_NAME="" - ;; -wii) - readonly PLAYLIST_NAME="" - ;; -wonderswan) - readonly PLAYLIST_NAME="Bandai - WonderSwan" - ;; -wonderswancolor) - readonly PLAYLIST_NAME="Bandai - WonderSwan Color" - ;; -x68000) - readonly PLAYLIST_NAME="" - ;; -x1) - readonly PLAYLIST_NAME="" - ;; -zmachine) - readonly PLAYLIST_NAME="" - ;; -zx81) - readonly PLAYLIST_NAME="" - ;; -zxspectrum) - readonly PLAYLIST_NAME="" - ;; - -esac - -if test -d "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"; then - rm -rdf "${THUMBNAILS_FOLDER:?}"/"${PLAYLIST_NAME:?}" -fi - -mkdir -p "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}" -mkdir -p "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Boxarts -mkdir -p "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Snaps -mkdir -p "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Titles - -cp -v "${ROM_FOLDER}"/"${SYSTEM}"/media/covers/* "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Boxarts -cp -v "${ROM_FOLDER}"/"${SYSTEM}"/media/screenshots/* "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Snaps - -rename s-[\&\*\:\`\<\>\?\\\|]-_- "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Boxarts/* -rename s-[\&\*\:\`\<\>\?\\\|]-_- "${THUMBNAILS_FOLDER}"/"${PLAYLIST_NAME}"/Named_Snaps/* diff --git a/create_retroarch_thumbnails_all.sh b/create_retroarch_thumbnails_all.sh deleted file mode 100755 index 4810f08..0000000 --- a/create_retroarch_thumbnails_all.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -function help_message() { - echo "$USAGE" - echo - echo "Where [SYSTEMS] are:" - for WORD in $SYSTEMS; do - echo -e "\t$WORD" - done -} - -readonly USAGE=" -USAGE: -$(basename "$0") [ROM_FOLDER] [THUMBNAILS_FOLDER]" - -# check if there are all the parameters -if [ "$#" -ne 2 ]; then - help_message - exit 0 -fi - -if ! test -d "${ROM_FOLDER}"/"${SYSTEM}"; then - echo "${ROM_FOLDER}"/"${SYSTEM}" does not exists - exit 0 -fi - -readonly ROM_FOLDER="$1" -readonly THUMBNAILS_FOLDER="$2" -readonly SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -readonly SYSTEMS="pcenginecd 3do 3ds amiga amstradcpc apple2 arcade arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fba fds gameandwatch gamegear gb gba gbc gc genesis intellivision mame-advmame mame-libretro mame-mame4all mastersystem megacd megadrive msx n64 nds neogeo nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes steam ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" - -for SYSTEM in $SYSTEMS; do - "${SCRIPT_DIR}"/create_retroarch_thumbnails.sh "${SYSTEM}" "${ROM_FOLDER}" "${THUMBNAILS_FOLDER}" -done diff --git a/create_rom_pack.sh b/create_rom_pack.sh new file mode 100755 index 0000000..f7d091c --- /dev/null +++ b/create_rom_pack.sh @@ -0,0 +1,117 @@ +#!/bin/bash + +## usage +USAGE="USAGE: +$(basename "$0") source dest system" + +function help_message() { + printf "%s\n" "$USAGE" + printf "%s" "Where system are: " + for WORD in $SYSTEM_LIST; do + printf "%s " "$WORD" + done + printf "\n" +} +readonly USAGE + +readonly SYSTEM_LIST="console handheld computer cd_system arcade" + +## check parameters +if [ "$#" -ne 3 ]; then + help_message + exit 0 +fi + +## check if the systems parameter is valid +if ! echo "$SYSTEM_LIST" | grep -w "$3" >/dev/null; then + printf "%s\n" "You must enter a valid system name." + help_message + exit 0 +fi + +## vars +SOURCE="$( + cd -- "$1" >/dev/null 2>&1 || exit + pwd -P +)" +TARGET="$( + cd -- "$2" >/dev/null 2>&1 || exit + pwd -P +)" +readonly SOURCE +readonly TARGET + +readonly HOMEBREW=/home/sergio/roms/homebrew +readonly TRANSLATIONS=/home/sergio/roms/translations +readonly HACKS=/home/sergio/roms/hacks + +readonly CONSOLE="atari800 atari2600 atari5200 atari7800 coleco fds intellivision mastersystem megadrive n64 nes pcengine sega32x sg-1000 snes" +readonly HANDHELD="atarilynx gamegear gb gba gbc gc ngp ngpc virtualboy wonderswan wonderswancolor" +readonly COMPUTER="amiga amstradcpc apple2 atarist c16 c64 c128 msx x68000 zxspectrum" +readonly CD_SYSTEM="3do atarijaguar dreamcast megacd ngc pcfx pcenginecd ps2 psp psx saturn segacd wii" +readonly ARCADE="arcade" + +case $3 in +console) + SCAN_SYSTEM=$CONSOLE + ;; + +handheld) + SCAN_SYSTEM=$HANDHELD + ;; + +computer) + SCAN_SYSTEM=$COMPUTER + ;; + +cd_system) + SCAN_SYSTEM=$CD_SYSTEM + ;; + +arcade) + SCAN_SYSTEM=$ARCADE + ;; + +*) + SCAN_SYSTEM=$CONSOLE + ;; +esac + +## console systems +for SYSTEM in $SCAN_SYSTEM; do + ## check source + if test -d "${SOURCE}"/"${SYSTEM}"; then + printf "%s\n" "${SYSTEM}" + mkdir -p "${TARGET}"/"${SYSTEM}" + for FILE in "${SOURCE}"/"${SYSTEM}"/*; do + ln -s "${FILE}" "${TARGET}"/"${SYSTEM}"/"$(basename "${FILE}")" + done + fi + + ## check homebrew + if test -d "${HOMEBREW}"/"${SYSTEM}"; then + printf "%s\n" "${SYSTEM}/_homebrew" + mkdir -p "${TARGET}"/"${SYSTEM}"/_homebrew + for FILE in "${HOMEBREW}"/"${SYSTEM}"/*; do + ln -s "${FILE}" "${TARGET}"/"${SYSTEM}"/_homebrew/"$(basename "${FILE}")" + done + fi + + ## check translations + if test -d "${TRANSLATIONS}"/"${SYSTEM}"; then + printf "%s\n" "${SYSTEM}/_translations" + mkdir -p "${TARGET}"/"${SYSTEM}"/_translations + for FILE in "${TRANSLATIONS}"/"${SYSTEM}"/*; do + ln -s "${FILE}" "${TARGET}"/"${SYSTEM}"/_translations/"$(basename "${FILE}")" + done + fi + + ## check hacks + if test -d "${HACKS}"/"${SYSTEM}"; then + printf "%s\n" "${SYSTEM}/_hacks" + mkdir -p "${TARGET}"/"${SYSTEM}"/_hacks + for FILE in "${HACKS}"/"${SYSTEM}"/*; do + ln -s "${FILE}" "${TARGET}"/"${SYSTEM}"/_hacks/"$(basename "${FILE}")" + done + fi +done diff --git a/rename_retroarch_arcade_thumbnails.sh b/rename_retroarch_arcade_thumbnails.sh deleted file mode 100755 index 21bf0cb..0000000 --- a/rename_retroarch_arcade_thumbnails.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash -function help_message() { - echo "$USAGE" -} - -readonly USAGE=" -USAGE: -$(basename "$0") [arcade_playlist] [thumbnail_folder]" - -# check if there are all the parameters -if [ "$#" -ne 2 ]; then - help_message - exit 0 -fi - -readonly ARCADE_PLAYLIST="$1" -readonly THUMBNAIL_FOLDER="$2" -readonly TEMP_FILE="${THUMBNAIL_FOLDER}"/temp - -if ! test -d "${THUMBNAIL_FOLDER}"; then - echo "${THUMBNAIL_FOLDER}" does not exists - exit 0 -fi - -if ! test -f "${ARCADE_PLAYLIST}"; then - echo "${ARCADE_PLAYLIST}" does not exists - exit 0 -fi - -if test -d "${THUMBNAIL_FOLDER}".bak; then - echo deleted "${THUMBNAIL_FOLDER}".bak - rm -rdf "${THUMBNAIL_FOLDER:?}" -fi - -if ! test -d "${THUMBNAIL_FOLDER}".bak; then - #echo created "${THUMBNAIL_FOLDER}".bak - clear -fi - -readonly CURRENT_DIR=$(pwd) -cd "${THUMBNAIL_FOLDER}" || return -rm -v "${TEMP_FILE}" -#grep -e \"label\" -e \"path\" "${ARCADE_PLAYLIST}" | sed s-"$(printf '\r')"-OO-g -# | sed -E 's- \"path\": \"-cp \"-g' | sed -E 's-^ \"label\": -X-g' | sed -E 's-,$-X-g' > "${TEMP_FILE}" -while IFS= read -r line -do - echo "$line" -done < "$input" - -cd "${CURRENT_DIR}" || return -date \ No newline at end of file diff --git a/skyscraper.sh b/skyscraper.sh index 5640a7d..e4d1eb7 100755 --- a/skyscraper.sh +++ b/skyscraper.sh @@ -1,7 +1,7 @@ #!/bin/bash ## usage -readonly USAGE=" +USAGE=" USAGE: $(basename "$0") [BUILD | SCRAP | BOTH] [FRONTEND] [PATH]" @@ -13,6 +13,7 @@ function help_message() { echo -e "\t$WORD" done } +readonly USAGE ## check if there are all the parameters if [ "$#" -ne 3 ]; then @@ -33,23 +34,26 @@ readonly FRONTEND="$2" readonly ROM_DIR="$3" ## colors -readonly COLOR_WHITE=$(tput setaf 7) -readonly COLOR_BACKGROUND_RED=$(tput setab 1) -readonly RESET_COLOR=$(tput sgr0) +COLOR_WHITE=$(tput setaf 7) +COLOR_BACKGROUND_RED=$(tput setab 1) +RESET_COLOR=$(tput sgr0) +readonly COLOR_WHITE +readonly COLOR_BACKGROUND_RED +readonly RESET_COLOR ## artwork.xml -readonly CONSOLE_ART=artwork.xml.cover -readonly ARCADE_ART=artwork.xml.cover +readonly CONSOLE_ART=artwork.xml +readonly ARCADE_ART=artwork.xml ## scrapers readonly CONSOLE_SCRAPERS="screenscraper mobygames thegamesdb" readonly ARCADE_SCRAPERS="screenacraper arcadedb" ## flags -#readonly BUILD_FLAGS_CONSOLE="videos,unattend,forcefilename,relative,nobrackets,skipexistingcovers,skipexistingmarquees,skipexistingscreenshots,skipexistingvideos,skipexistingwheels" -readonly BUILD_FLAGS_CONSOLE="videos,unattend,forcefilename,relative" -#readonly BUILD_FLAGS_ARCADE="videos,unattend,relative,nobrackets,skipexistingcovers,skipexistingmarquees,skipexistingscreenshots,skipexistingvideos,skipexistingwheels" -readonly BUILD_FLAGS_ARCADE="videos,unattend,relative" +readonly BUILD_FLAGS_CONSOLE="videos,unattend,forcefilename,relative,symlink" +readonly BUILD_FLAGS_ARCADE="videos,unattend,relative,symlink" +readonly SCRAP_FLAGS_CONSOLE="videos,unattend,noresize,unpack" +readonly SCRAP_FLAGS_ARCADE="videos,unattend,noresize" ## check if BUID, SCRAP or BOTH if [ "$1" = scrap ] || [ "$1" = SCRAP ]; then @@ -73,15 +77,13 @@ if [ "$1" = both ] || [ "$1" = BOTH ]; then sleep 1 fi -#ALL_SYSTEMS="3do 3ds amiga amstradcpc apple2 arcade arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fba fds gameandwatch gamegear gb gba gbc gc genesis intellivision mame-advmame mame-libretro mame-mame4all mastersystem megacd megadrive msx n64 nds neogeo nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes steam ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" - ## console systems CONSOLE="3do 3ds amiga amstradcpc apple2 arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fds gameandwatch gamegear gb gba gbc gc genesis intellivision mastersystem megacd megadrive msx n64 nds nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" for SYSTEM in $CONSOLE; do if test -d "${ROM_DIR}"/"${SYSTEM}"; then if [ "$SCRAP" = true ]; then for SCRAPER in $CONSOLE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize,unpack -p "${SYSTEM}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM}" + Skyscraper --flags "${SCRAP_FLAGS_CONSOLE}" -p "${SYSTEM}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM}" done fi if [ "$BUILD" = true ]; then @@ -96,7 +98,7 @@ for SYSTEM in $ARCADE; do if test -d "${ROM_DIR}"/"${SYSTEM}"; then if [ "$SCRAP" = true ]; then for SCRAPER in $ARCADE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize -p "$SYSTEM" -s "$SCRAPER" -i "${ROM_DIR}"/"${SYSTEM}" + Skyscraper --flags "${SCRAP_FLAGS_ARCADE}" -p "$SYSTEM" -s "$SCRAPER" -i "${ROM_DIR}"/"${SYSTEM}" done fi if [ "$BUILD" = true ]; then @@ -109,7 +111,7 @@ done if test -d "${ROM_DIR}"/pcenginecd; then if [ "$SCRAP" = true ]; then for SCRAPER in $CONSOLE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize,unpack -p pcengine -s "$SCRAPER" -i "${ROM_DIR}"/pcenginecd + Skyscraper --flags "${SCRAP_FLAGS_CONSOLE}" -p pcengine -s "$SCRAPER" -i "${ROM_DIR}"/pcenginecd done fi if [ "$BUILD" = true ]; then @@ -121,7 +123,7 @@ fi if test -d "${ROM_DIR}"/arcade; then if [ "$SCRAP" = true ]; then for SCRAPER in $ARCADE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize -p fba -s "$SCRAPER" -i "${ROM_DIR}"/arcade + Skyscraper --flags "${SCRAP_FLAGS_ARCADE}" -p fba -s "$SCRAPER" -i "${ROM_DIR}"/arcade done fi if [ "$BUILD" = true ]; then diff --git a/skyscraper_old.sh b/skyscraper_old.sh deleted file mode 100755 index c2c2068..0000000 --- a/skyscraper_old.sh +++ /dev/null @@ -1,218 +0,0 @@ -#!/bin/bash -readonly USAGE=" -USAGE: -$(basename "$0") [BUILD | SCRAP | BOTH] [FRONTEND] [PATH]" - -function help_message() { - echo "$USAGE" - echo - echo "Where [FRONTEND] are:" - for WORD in $FRONTENDS; do - echo -e "\t$WORD" - done -} - -FRONTENDS="emulationstation pegasus" - -# check if there are all the parameters -if [ "$#" -ne 3 ]; then - help_message - exit 0 -fi - -# check if the frontend parameter is valid -if ! echo "$FRONTENDS" | grep -w "$2" >/dev/null; then - printf "%s\n" "You must enter a valid FRONTEND name." - help_message - exit 0 -fi - -# variables -#readonly COLOR_BLACK=$(tput setaf 0) -#readonly COLOR_RED=$(tput setaf 1) -#readonly COLOR_GREEN=$(tput setaf 2) -#readonly COLOR_YELLOW=$(tput setaf 3) -#readonly COLOR_BLUE=$(tput setaf 4) -#readonly COLOR_MAGENTA=$(tput setaf 5) -#readonly COLOR_CYAN=$(tput setaf 6) -readonly COLOR_WHITE=$(tput setaf 7) -#readonly COLOR_BACKGROUND_BLACK=$(tput setab 0) -readonly COLOR_BACKGROUND_RED=$(tput setab 1) -#readonly COLOR_BACKGROUND_GREEN=$(tput setab 2) -#readonly COLOR_BACKGROUND_YELLOW=$(tput setab 3) -#readonly COLOR_BACKGROUND_BLUE=$(tput setab 4) -#readonly COLOR_BACKGROUND_MAGENTA=$(tput setab 5) -#readonly COLOR_BACKGROUND_CYAN=$(tput setab 6) -#readonly COLOR_BACKGROUND_WHITE=$(tput setab 7) -readonly RESET_COLOR=$(tput sgr0) - -#readonly SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -readonly FRONTEND="$2" -readonly ROM_DIR="$3" - -readonly CONSOLE_ART=artwork.xml.example2 -readonly CONSOLECD_ART=artwork.xml.example2 -readonly ARCADE_ART=artwork.xml.example2 - -readonly CONSOLE_SCRAPERS="screenscraper mobygames thegamesdb" -readonly ARCADE_SCRAPERS="screenacraper arcadedb" - -SCRAP=true -BUILD=true - -if [ "$1" = scrap ] || [ "$1" = SCRAP ]; then - BUILD=false - printf "%s\n" "${COLOR_WHITE}${COLOR_BACKGROUND_RED}## SCRAP ONLY ${RESET_COLOR}" - sleep 1 -fi - -if [ "$1" = build ] || [ "$1" = BUILD ]; then - SCRAP=false - printf "%s\n" "${COLOR_WHITE}${COLOR_BACKGROUND_RED}## BUILD ONLY ${RESET_COLOR}" - sleep 1 -fi - -if [ "$1" = both ] || [ "$1" = BOTH ]; then - SCRAP=true - BUILD=true - printf "%s\n" "${COLOR_WHITE}${COLOR_BACKGROUND_RED}## SCRAP and BUILD ${RESET_COLOR}" - sleep 1 -fi - -ALL_SYSTEMS="3do 3ds amiga amstradcpc apple2 arcade arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fba fds gameandwatch gamegear gb gba gbc gc genesis intellivision mame-advmame mame-libretro mame-mame4all mastersystem megacd megadrive msx n64 nds neogeo nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes steam ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" - -## CONSOLE -CONSOLE="atari2600 atarilynx dreamcast fds gamegear gb gba gbc mastersystem megadrive msx nds nes ngp ngpc pcengine psp saturn sega32x snes wonderswan wonderswancolor" -# atari2600 atarilynx fds gamegear gb gba gbc mastersystem megadrive msx nes ngp ngpc pcengine sega32x snes wonderswan wonderswancolor - -for SYSTEM in $CONSOLE; do - if [ "$SCRAP" = true ]; then - for SCRAPER in $CONSOLE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize,unpack -p "${SYSTEM}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" - done - fi - if [ "$BUILD" = true ]; then - Skyscraper --flags videos,unattend,forcefilename,relative,skipexistingvideos -a $CONSOLE_ART -p "$SYSTEM" -f "${FRONTEND}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" - #Skyscraper --flags videos,unattend,relative,skipexistingvideos -a $CONSOLE_ART -p $i - fi -done - -## CONSOLE CD -CONSOLECD="pcengine psx segacd" -# pcengine segacd psx saturn -mv -v "${ROM_DIR}"/pcengine "${ROM_DIR}"/pcengine.cart -mv -v "${ROM_DIR}"/pcenginecd "${ROM_DIR}"/pcengine - -for SYSTEM in $CONSOLECD; do - if [ "$SCRAP" = true ]; then - for SCRAPER in $CONSOLE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize -p "$SYSTEM" -s "$SCRAPER" -i "${ROM_DIR}"/"${SYSTEM_NAME}" - done - fi - if [ "$BUILD" = true ]; then - Skyscraper --flags videos,unattend,forcefilename,relative,skipexistingvideos,nobrackets -a $CONSOLECD_ART -p "$SYSTEM" -f "${FRONTEND}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" - fi -done - -mv -v "${ROM_DIR}"/pcengine "${ROM_DIR}"/pcenginecd -mv -v "${ROM_DIR}"/pcengine.cart "${ROM_DIR}"/pcengine - -## ARCADE -arcade="fba neogeo mame-advmame mame-mame4all" -# fba neogeo mame-advmame mame-mame4all -for SYSTEM in $arcade; do - if [ "$SCRAP" = true ]; then - for SCRAPER in $ARCADE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize -p "$SYSTEM" -s "$SCRAPER" -i "${ROM_DIR}"/"${SYSTEM_NAME}" - done - fi - if [ "$BUILD" = true ]; then - Skyscraper --flags videos,unattend,relative,skipexistingvideos,nobrackets -a $ARCADE_ART -p "$SYSTEM" -f "${FRONTEND}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" - fi -done - -## Available artworks -# artwork.xml.screenshot -# artwork.xml.cover -# artwork.xml.wheel -# artwork.xml.example1 - -## Available platforms: -# 3do -# 3ds -# amiga -# amstradcpc -# apple2 -# arcade -# arcadia -# astrocde -# atari800 -# atari2600 -# atari5200 -# atari7800 -# atarijaguar -# atarilynx -# atarist -# c16 -# c64 -# c128 -# coco -# coleco -# daphne -# dragon32 -# dreamcast -# fba -# fds -# gameandwatch -# gamegear -# gb -# gba -# gbc -# gc -# genesis -# intellivision -# mame-advmame -# mame-libretro -# mame-mame4all -# mastersystem -# megacd -# megadrive -# msx -# n64 -# nds -# neogeo -# nes -# ngp -# ngpc -# oric -# pc -# pc88 -# pc98 -# pcfx -# pcengine -# pokemini -# ports -# ps2 -# psp -# psx -# saturn -# scummvm -# sega32x -# segacd -# sg-1000 -# snes -# steam -# ti99 -# trs-80 -# vectrex -# vic20 -# videopac -# virtualboy -# wii -# wonderswan -# wonderswancolor -# x68000 -# x1 -# zmachine -# zx81 -# zxspectrum diff --git a/skyscraper_system.sh b/skyscraper_system.sh index af428af..4d6fe21 100755 --- a/skyscraper_system.sh +++ b/skyscraper_system.sh @@ -1,5 +1,5 @@ #!/bin/bash -readonly USAGE=" +USAGE=" USAGE: $(basename "$0") [BUILD or SCRAP] [PATH] [SYSTEM]" @@ -11,6 +11,7 @@ function help_message() { done printf "\n" } +readonly USAGE readonly SYSTEMS="3do 3ds amiga amstradcpc apple2 arcade arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fba fds gameandwatch gamegear gb gba gbc gc genesis intellivision mame-advmame mame-libretro mame-mame4all mastersystem megacd megadrive msx n64 nds neogeo nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes steam ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" readonly APP=/usr/local/bin/Skyscraper @@ -29,9 +30,12 @@ if ! echo "$SYSTEMS" | grep -w "$3" >/dev/null; then fi ## colors -readonly COLOR_WHITE=$(tput setaf 7) -readonly COLOR_BACKGROUND_RED=$(tput setab 1) -readonly RESET_COLOR=$(tput sgr0) +COLOR_WHITE=$(tput setaf 7) +COLOR_BACKGROUND_RED=$(tput setab 1) +RESET_COLOR=$(tput sgr0) +readonly COLOR_WHITE +readonly COLOR_BACKGROUND_RED +readonly RESET_COLOR ## variables #readonly SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" @@ -40,16 +44,18 @@ readonly SYSTEM_NAME="$3" readonly FRONTEND="emulationstation" ## artwork -readonly CONSOLE_ART=artwork.xml.cover -readonly ARCADE_ART=artwork.xml.cover +readonly CONSOLE_ART=artwork.xml +readonly ARCADE_ART=artwork.xml ## scrapers readonly CONSOLE_SCRAPERS="screenscraper mobygames thegamesdb" readonly ARCADE_SCRAPERS="screenacraper arcadedb" ## flags -readonly BUILD_FLAGS_CONSOLE="videos,unattend,forcefilename,relative" -readonly BUILD_FLAGS_ARCADE="videos,unattend,relative" +readonly BUILD_FLAGS_CONSOLE="videos,unattend,forcefilename,relative,symlink" +readonly BUILD_FLAGS_ARCADE="videos,unattend,relative,symlink" +readonly SCRAP_FLAGS_CONSOLE="videos,unattend,noresize,unpack" +readonly SCRAP_FLAGS_ARCADE="videos,unattend,noresize" ## systems readonly CONSOLE="3do 3ds amiga amstradcpc apple2 arcadia astrocde atari800 atari2600 atari5200 atari7800 atarijaguar atarilynx atarist c16 c64 c128 coco coleco daphne dragon32 dreamcast fds gameandwatch gamegear gb gba gbc gc genesis intellivision mastersystem megacd megadrive msx n64 nds nes ngp ngpc oric pc pc88 pc98 pcfx pcengine pokemini ports ps2 psp psx saturn scummvm sega32x segacd sg-1000 snes ti99 trs-80 vectrex vic20 videopac virtualboy wii wonderswan wonderswancolor x68000 x1 zmachine zx81 zxspectrum" @@ -73,7 +79,7 @@ fi if echo "${CONSOLE}" | grep -w "${SYSTEM_NAME}" >/dev/null; then if [ "${SCRAP}" = true ]; then for SCRAPER in ${CONSOLE_SCRAPERS}; do - $APP --flags videos,unattend,noresize,unpack -p "${SYSTEM_NAME}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" + $APP --flags "${SCRAP_FLAGS_CONSOLE}" -p "${SYSTEM_NAME}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" done fi if [ "${BUILD}" = true ]; then @@ -86,7 +92,7 @@ fi if echo "${ARCADE}" | grep -w "${SYSTEM_NAME}" >/dev/null; then if [ "${SCRAP}" = true ]; then for SCRAPER in ${ARCADE_SCRAPERS}; do - Skyscraper --flags videos,unattend,noresize -p "${SYSTEM_NAME}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" + Skyscraper --flags "${SCRAP_FLAGS_ARCADE}" -p "${SYSTEM_NAME}" -s "${SCRAPER}" -i "${ROM_DIR}"/"${SYSTEM_NAME}" done fi if [ "${BUILD}" = true ]; then @@ -100,7 +106,7 @@ if [ "${SYSTEM_NAME}" = pcenginecd ]; then if test -d "${ROM_DIR}"/pcenginecd; then if [ "$SCRAP" = true ]; then for SCRAPER in $CONSOLE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize,unpack -p pcengine -s "$SCRAPER" -i "${ROM_DIR}"/pcenginecd + Skyscraper --flags "${SCRAP_FLAGS_CONSOLE}" -p pcengine -s "$SCRAPER" -i "${ROM_DIR}"/pcenginecd done fi if [ "$BUILD" = true ]; then @@ -114,7 +120,7 @@ if [ "${SYSTEM_NAME}" = arcade ]; then if test -d "${ROM_DIR}"/arcade; then if [ "$SCRAP" = true ]; then for SCRAPER in $ARCADE_SCRAPERS; do - Skyscraper --flags videos,unattend,noresize -p fba -s "$SCRAPER" -i "${ROM_DIR}"/arcade + Skyscraper --flags "${SCRAP_FLAGS_ARCADE}" -p fba -s "$SCRAPER" -i "${ROM_DIR}"/arcade done fi if [ "$BUILD" = true ]; then