Files
threeSD/dist/threeSDumper.gm9
T

117 lines
3.4 KiB
Plaintext

# Copyright 2019 threeSD Project
# Licensed under GPLv2 or any later version
# Refer to the license.txt file included.
# GM9 Script for dumping necessary files automatically.
set PREVIEW_MODE "threeSD Dumper\nby zhaowenlan1779"
set OUT "0:/threeSD"
if not find $[OUT] NULL
mkdir $[OUT]
end
if not ask "Execute threeSD Dumper?"
goto Exit
end
set PREVIEW_MODE "threeSD Dumper\nby zhaowenlan1779\n \nWorking..."
cp -w -n "1:/private/movable.sed" $[OUT]/movable.sed
if find "M:/boot9.bin" NULL
cp -w -n "M:/boot9.bin" $[OUT]/boot9.bin
elif find "0:/3DS/boot9.bin" NULL
cp -w -n "0:/3DS/boot9.bin" $[OUT]/boot9.bin
else
echo "ERROR: \nboot9.bin not found. \nIf you use fastboot3ds, hold HOME while booting, \nand go to Miscellaneous... > Dump bootroms & OTP. \nWhen finished, simply execute this script again."
goto Exit
end
if not find $[OUT]/firm NULL
mkdir $[OUT]/firm
end
if chk $[ONTYPE] "N3DS"
if not find $[OUT]/firm/new NULL
mkdir $[OUT]/firm/new
end
cp -w -n "1:/title/00040138/20000003/content" $[OUT]/firm/new
rm $[OUT]/firm/new/cmd
find $[OUT]/firm/new/*.app APP
decrypt $[APP]
else
if not find $[OUT]/firm/old NULL
mkdir $[OUT]/firm/old
end
cp -w -n "1:/title/00040138/00000003/content" $[OUT]/firm/old
rm $[OUT]/firm/old/cmd
find $[OUT]/firm/old/*.app APP
decrypt $[APP]
end
if chk $[ONTYPE] "N3DS"
cp -w -n "S:/sector0x96.bin" $[OUT]/sector0x96.bin
end
if not find $[OUT]/sysarchives NULL
mkdir $[OUT]/sysarchives
end
if not find $[OUT]/sysarchives/0004009b NULL
mkdir $[OUT]/sysarchives/0004009b
end
# Mii Data
find 1:/title/0004009b/00010202/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/0004009b/00010202.app
decrypt $[OUT]/sysarchives/0004009b/00010202.app
# Region Manifest
find 1:/title/0004009b/00010402/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/0004009b/00010402.app
decrypt $[OUT]/sysarchives/0004009b/00010402.app
# Shared Font (JPN/EUR/USA)
find 1:/title/0004009b/00014002/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/0004009b/00014002.app
decrypt $[OUT]/sysarchives/0004009b/00014002.app
# Shared Font (CHN)
find 1:/title/0004009b/00014102/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/0004009b/00014102.app
decrypt $[OUT]/sysarchives/0004009b/00014102.app
# Shared Font (KOR)
find 1:/title/0004009b/00014202/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/0004009b/00014202.app
decrypt $[OUT]/sysarchives/0004009b/00014202.app
# Shared Font (TWN)
find 1:/title/0004009b/00014302/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/0004009b/00014302.app
decrypt $[OUT]/sysarchives/0004009b/00014302.app
if not find $[OUT]/sysarchives/000400db NULL
mkdir $[OUT]/sysarchives/000400db
end
# NG Bad word list
find 1:/title/000400db/00010302/content/*.app APP
cp -w -n $[APP] $[OUT]/sysarchives/000400db/00010302.app
decrypt $[OUT]/sysarchives/000400db/00010302.app
# Config savegame
cp -w -n 1:/data/$[SYSID0]/sysdata/00010017/00000000 $[OUT]/config.sav
# seeddb.bin
sdump -o -s -w seeddb.bin
if not find 0:/gm9/out/seeddb.bin NULL
echo "WARNING: \nseeddb.bin couldn't be built. \nThis may be because your system \ndoes not have any seeds. \nOtherwise, imported games may fail \nto run if they use seed encryption."
else
cp -w -n "0:/gm9/out/seeddb.bin" $[OUT]/seeddb.bin
rm "0:/gm9/out/seeddb.bin"
end
set PREVIEW_MODE "threeSD Dumper\nby zhaowenlan1779\n \nSuccess!"
echo "Successfully dumped necessary\nfiles for threeSD."
@Exit