diff --git a/create-sd-media-launcher-macos.sh b/create-sd-media-launcher-macos.sh index 2cdaaa7..a71378b 100644 --- a/create-sd-media-launcher-macos.sh +++ b/create-sd-media-launcher-macos.sh @@ -1,24 +1,30 @@ -set -e +#!/bin/bash -my_swiss_ver=r714 +set -e +set -u + +my_swiss_ver=r927 my_wwhack_ver=v1.1.1 my_gcmm_ver=1.4f -my_gbi_ver=20191107 +#my_gbi_ver=20191107 +my_gbi_ver=latest +my_sd_name=GC_HMBRW pushd ~/Downloads >/dev/null echo '' - echo 'Creating ~/Downloads/GCBOOT' - rm -rf ./GCBOOT - mkdir -p ./GCBOOT/MCBackup + echo "Creating ~/Downloads/${my_sd_name}" + rm -rf ./"${my_sd_name}" + mkdir -p ./"${my_sd_name}"/MCBACKUP/ echo '' echo 'Download and extract Swiss (Zip)...' rm -rf swiss* - curl -fL https://github.com/solderjs/swiss-gc/releases/download/0.4r714/swiss_r714.zip -o swiss_r714.zip - unzip -q swiss_r714.zip + curl -fL https://github.com/coolaj86/swiss-gc/releases/download/v0.5${my_swiss_ver}/swiss_${my_swiss_ver}.zip \ + -o swiss_${my_swiss_ver}.zip + unzip -q swiss_${my_swiss_ver}.zip # Copy swiss as an auto-boot for SD Launcher (does nothing otherwise) - rsync -avP swiss_${my_swiss_ver}/DOL/swiss_${my_swiss_ver}-compressed.dol ./GCBOOT/ - rsync -avP swiss_${my_swiss_ver}/DOL/swiss_${my_swiss_ver}-compressed.dol ./GCBOOT/autoexec.dol + rsync -avP swiss_${my_swiss_ver}/DOL/swiss_${my_swiss_ver}-compressed.dol ./"${my_sd_name}"/ + rsync -avP swiss_${my_swiss_ver}/DOL/swiss_${my_swiss_ver}-compressed.dol ./"${my_sd_name}"/autoexec.dol echo '' echo 'Download and extract GCMM ...' @@ -26,7 +32,7 @@ pushd ~/Downloads >/dev/null curl -fsSL https://github.com/suloku/gcmm/releases/download/${my_gcmm_ver}/gcmm_${my_gcmm_ver}.zip -o gcmm_${my_gcmm_ver}.zip unzip -q gcmm_${my_gcmm_ver}.zip # Copy GCMM as a bootable dol (which will be launched from Swiss) - rsync -avP gcmm_${my_gcmm_ver}/gamecube/gcmm_14f.dol ./GCBOOT/ + rsync -avP gcmm_${my_gcmm_ver}/gamecube/gcmm_*.dol ./"${my_sd_name}"/ echo '' echo 'Download and extract Wind Waker hacked game save' @@ -38,26 +44,26 @@ pushd ~/Downloads >/dev/null unzip -q ../WWHack-GC-${my_wwhack_ver}.zip popd >/dev/null # Copy the hacked save file - rsync -avP WWHack-GC-${my_wwhack_ver}/gzle.gci ./GCBOOT/MCBackup/ + rsync -avP WWHack-GC-${my_wwhack_ver}/gzle.gci ./"${my_sd_name}"/MCBACKUP/ # Copy Swiss over as the bootable launcher - rsync -avP swiss_${my_swiss_ver}/GCI/boot.gci ./GCBOOT/MCBackup/ + rsync -avP swiss_${my_swiss_ver}/GCI/boot.gci ./"${my_sd_name}"/MCBACKUP/ echo '' echo 'Download and extract Game Boy Interface' rm -rf gbi* - curl -fL https://github.com/solderjs/Game-Boy-Interface/releases/download/gbi-${my_gbi_ver}/gbi-${my_gbi_ver}.zip -o gbi-${my_gbi_ver}.zip + curl -fL https://files.extremscorner.org/gamecube/apps/gbi/latest -o gbi-${my_gbi_ver}.zip mkdir -p gbi-${my_gbi_ver} pushd gbi-${my_gbi_ver} >/dev/null unzip -q ../gbi-${my_gbi_ver}.zip popd >/dev/null # Copy Game Boy Interface as bootable from swiss - rsync -avP gbi-${my_gbi_ver}/gbi.dol ./GCBOOT/ - echo -- '--zoom=2.875' > ./GCBOOT/gbi.cli + rsync -avP gbi-${my_gbi_ver}/gbi.dol ./"${my_sd_name}"/ + echo -- '--zoom=2.875' > ./"${my_sd_name}"/gbi.cli # OR you could boot directly to any dol software that has been converted to gci format - # rsync -avP gbi-${my_gbi_ver}/MCBACKUP/gbi.gci ./GCBOOT/MCBackup/boot.gci + rsync -avP gbi-${my_gbi_ver}/MCBACKUP/gbi.gci ./"${my_sd_name}"/MCBACKUP/ popd >/dev/null sleep 1 @@ -66,10 +72,11 @@ diskutil list echo "!!! BE CAREFUL !!!" read -p "Which WHOLE DISK should be ERASED AND FORMATTED? (ex: /dev/disk8): " my_disk diskutil unmountDisk $my_disk -sudo newfs_msdos -F 16 -v GCBOOT $my_disk +#sudo newfs_msdos -F 16 -v "${my_sd_name}" $my_disk +sudo newfs_msdos -F 32 -v "${my_sd_name}" $my_disk diskutil mount $my_disk -rsync -av ~/Downloads/GCBOOT/ /Volumes/GCBOOT/ +rsync -av ~/Downloads/"${my_sd_name}"/ /Volumes/"${my_sd_name}"/ diskutil unmount $my_disk echo ''