If you're using Windows, you'll need cygwin and notepad++. Instructions are in the file.
It's a batch script which will sort your ROMs by genre then series. You can let it filter out all but one region for each ROM (or not).
Currently only the first 27 release numbers are supported.
It's not entirely without bugs. Need For Speed, for example, I can't find where it drops the file at.
Post a patch in the thread if you want to share changes. If they're consistent and aren't broken, and don't conflict with what I've done and haven't shared yet, I'll merge them.
To run, type the following into a terminal with the locale set to UTF-8 (ULTRA Important):
The above is very long
Filetrip link
It's a batch script which will sort your ROMs by genre then series. You can let it filter out all but one region for each ROM (or not).
Currently only the first 27 release numbers are supported.
It's not entirely without bugs. Need For Speed, for example, I can't find where it drops the file at.
Post a patch in the thread if you want to share changes. If they're consistent and aren't broken, and don't conflict with what I've done and haven't shared yet, I'll merge them.
To run, type the following into a terminal with the locale set to UTF-8 (ULTRA Important):
Code:
chmod +x organize_ds.sh
./organize_ds.sh
Code:
#!/bin/bash
# License: This tool may not be used to organize pirated roms, or roms you do
# not own a physical cartridge for. For all other uses, it is released under
# the following modified BSD license:
# Copyright (c) 2016, Michael Johnson-Moore
# All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions, the following disclaimer, and all other
# lines between "License" and "End License" written without quote
# characters (").
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions, the following disclaimer, and all other
# lines between "License" and "End License" written without quote
# characters (") in the documentation and/or other materials provided with
# the distribution.
# * Neither the name of the software nor the
# names of its contributors may be used to endorse or promote products
# derived from this software without specific prior written permission.
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL MICHAEL JOHNSON-MOORE BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# End License
# Place in the to_organize folder any roms you wish organized, and ensure the filenames start with the correct
# 4 digit release number according to http://www.ds-scene.net/?s=releases
# Modify the following to control the script:
# Regions will be picked in this order.
# U = North America usually, occassionaly USA
# E = Europe
# 日Jj = Japan
# 한Kk = Korea
# A = All regions
# 日 will use Japanese ligographs. J will use phonetic Latin characters. j will use the American name. A will always use the American name.
# 한 will use Korean ligographs. K will use Korean phonetic Latin characters. k will use the American name. A will always use the American name.
# Will stop looping when A is hit.
export preference=(U E j k A)
# 0 = latest version, 1 = original version, else all versions
export version=2
# Download available patches from romhacking.net, and patch roms if possible? (Requires untrimmed rom)
# Will also create a NoSSL patched version if needed
# 0 = true, 1 = false
# Does not currently do anything.
export patch_roms=0
# Do not modify past this point
export PWD=`pwd`
mkdir -p to_organize
# movebyreleasenumber nameToDisplayOnError releaseNumber fileName
function movebyreleasenumber {
pushd $PWD > /dev/null
files=`find ./to_organize -name $2'*.nds'`
popd > /dev/null
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
count=0
for fil in $files; do
count=$((count + 1))
done
IFS=$SAVEIFS
if [ $count -eq 0 ]; then
# Rom not present, go to the next one
return 1
elif [ $count -gt 1 ]; then
# Multiple roms are present, ask user which to selected
echo "Multiple ROMs detected for $1 ($2). Which would you like to use?"
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
select option in $files; do
files=$option
break
done
IFS=$SAVEIFS
fi
mkdir -p "`dirname \"$3\"`" &&
cp "$files" "$3" && return 0
return 1
}
# versionselector nameToDisplayOnError originalReleaseNumber finalReleaseNumber fileName* finalVersionNumber [secondReleaseNumber] [thirdReleaseNumber] [fourthReleaseNumber] [fifthReleaseNumber] [sixthReleaseNumber] [seventhReleaseNumber] [eighthReleaseNumber]
# Release numbers in [] are optional in case the game has more than 2 versions. They will only be included if all versions are copied.
# * without extension
function versionselector {
case $version in
0) movebyreleasenumber "$1" $2 "$4.nds"
return $?;;
1) movebyreleasenumber "$1" $3 "$4.nds"
return $?;;
*) movebyreleasenumber "$1" $3 "$4 "'(v1).nds'
RET=$?
movebyreleasenumber "$1" $2 "$4 "'(v'"$5"').nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
if expr "$6" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $6 "$4 "'(v2).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
if expr "$7" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $7 "$4 "'(v3).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
if expr "$8" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $8 "$4 "'(v4).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
if expr "$9" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $9 "$4 "'(v5).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
if expr "$10" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $10 "$4 "'(v6).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
if expr "$11" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $11 "$4 "'(v7).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
if expr "$12" : '-\?[0-9]\+$' >/dev/null ; then
movebyreleasenumber "$1" $12 "$4 "'(v8).nds'
RET2=$?
if [ $RET -gt $RET2 ]; then RET=$RET2; fi
fi
return $RET;;
esac
}
GAME_NAME="Electroplankton"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "エレクトロプランクトン" 0001 "./シミュレーション/音楽/エレクトロプランクトン.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Erekutoropurankuton" 0001 "./Shimyurēshon/Ongaku/Erekutoropurankuton.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0001 "./Simulation/Music/Electroplankton.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo 'Using Japanese ROM for $GAME_NAME (with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0262 "./Simulation/Music/Electroplankton.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0492 "./Simulation/Music/Electroplankton.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0001 "./Simulation/Music/Electroplankton (J).nds"
movebyreleasenumber "$GAME_NAME" 0262 "./Simulation/Music/Electroplankton (U).nds"
movebyreleasenumber "$GAME_NAME" 0492 "./Simulation/Music/Electroplankton (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Need For Speed: Underground 2"
for code in "${preference[@]}"; do
case $code in
U) movebyreleasenumber $GAME_NAME 0002 "./Simulation/Sports/Racing/Need For Speed/08 Underground 2.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber $GAME_NAME 0041 "./Simulation/Sports/Racing/Need For Speed/08 Underground 2.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber $GAME_NAME 0002 "./Simulation/Sports/Racing/Need For Speed/08 Underground 2 (U).nds"
movebyreleasenumber $GAME_NAME 0041 "./Simulation/Sports/Racing/Need For Speed/08 Underground 2 (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Yoshi: Touch & Go"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "キャッチ!タッチ!ヨッシー!" 0015 "./マリオと仲間たち/ヨッシー/キャッチ!タッチ!ヨッシー!.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Kyatchi! Tatchi! Yosshī!" 0015 "./Mario to nakama-tachi/Yosshī/Kyatchi! Tatchi! Yosshī!.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0015 "./Mario & Friends/Yoshi/Touch & Go.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0003 "./Mario & Friends/Yoshi/Touch & Go.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0013 "./Mario & Friends/Yoshi/Touch & Go.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0003 "./Mario & Friends/Yoshi/Touch & Go (U).nds"
movebyreleasenumber "$GAME_NAME" 0013 "./Mario & Friends/Yoshi/Touch & Go (E).nds"
movebyreleasenumber "$GAME_NAME" 0015 "./Mario & Friends/Yoshi/Touch & Go (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Feel the Magic: XY/XX"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "きみのためなら死ねる" 0078 "./シミュレーション/年代測定/きみのためなら死ねる.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Kimi no Tame nara Shineru" 0078 "./Shimyurēshon/Nendai sokutei/Kimi no Tame nara Shineru.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0078 "./Simulation/Dating/Feel the Magic/XY-XX.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0004 "./Simulation/Dating/Feel the Magic/XY-XX.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0021 "./Simulation/Dating/Feel the Magic/Project Rub.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0004 "./Simulation/Dating/Feel the Magic/XY-XX (U).nds"
movebyreleasenumber "$GAME_NAME" 0021 "./Simulation/Dating/Feel the Magic/Project Rub.nds"
movebyreleasenumber "$GAME_NAME" 0078 "./Simulation/Dating/Feel the Magic/XY-XX (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="WarioWare: Touched"
for code in "${preference[@]}"; do
case $code in
日) versionselector "さわる メイドインワリオ" 0077 5496 "./マリオと仲間たち/ワリオ/さわる メイドインワリオ" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) versionselector "Sawaru Made in Wario" 0077 5496 "./Mario to nakama-tachi/Wario/Sawaru Made in Wario" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) versionselector "$GAME_NAME" 0077 5496 "./Mario & Friends/Wario/WarioWare - Touched!" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0005 "./Mario & Friends/Wario/WarioWare - Touched!.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0018 "./Mario & Friends/Wario/WarioWare - Touched!.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0005 "./Mario & Friends/Wario/WarioWare - Touched! (U).nds"
movebyreleasenumber "$GAME_NAME" 0018 "./Mario & Friends/Wario/WarioWare - Touched! (E).nds"
versionselector "$GAME_NAME" 0077 5496 "./Mario & Friends/Wario/WarioWare - Touched! (J)" 2
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Polarium"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "直感ヒトフデ" 0020 "./パズル/直感ヒトフデ/1 直感ヒトフデ.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Chokkan hitofude" 0020 "./Pazuru/Chokkan hitofude/1 Chokkan hitofude.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0020 "./Puzzle/Polarium/1 Polarium.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0006 "./Puzzle/Polarium/1 Polarium.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0031 "./Puzzle/Polarium/1 Polarium.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0006 "./Puzzle/Polarium/1 Polarium (U).nds"
movebyreleasenumber "$GAME_NAME" 0020 "./Puzzle/Polarium/1 Polarium (J).nds"
movebyreleasenumber "$GAME_NAME" 0031 "./Puzzle/Polarium/1 Polarium (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Puyo Pop Fever"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "ぷよぷよフィーバー" 0007 "./パズル/ぷよぷよ/5 ぷよぷよフィーバー.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Chokkan hitofude" 0007 "./Pazuru/Chokkan hitofude/1 Chokkan hitofude.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0007 "./Puzzle/Puyo Pop/1 Puyo Pop Fever.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0072 "./Puzzle/Puyo Pop/1 Puyo Pop Fever.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0508 "./Puzzle/Puyo Pop/1 Puyo Pop Fever.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0007 "./Puzzle/Puyo Pop/1 Puyo Pop Fever (J).nds"
movebyreleasenumber "$GAME_NAME" 0072 "./Puzzle/Puyo Pop/1 Puyo Pop Fever (U).nds"
movebyreleasenumber "$GAME_NAME" 0508 "./Puzzle/Puyo Pop/1 Puyo Pop Fever (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Pac-Pix"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "ぷよぷよフィーバー" 0194 "./アーケード/パックマン/パックピクス.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Pakkupikusu" 0194 "./Ākēdo/Pakkuman/Pakkupikusu.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0194 "./Arcade/Pac-man/Pac-Pix.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
한) movebyreleasenumber "팟쿠삐쿠스" 1697 "./아케이드/팩맨/팟쿠삐쿠스.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
K) movebyreleasenumber "paskuppikuseu" 1697 "./Akeideu/Paegmaen/Paskuppikuseu.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
k) movebyreleasenumber "$GAME_NAME" 1697 "./Arcade/Pac-man/Pac-Pix.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0008 "./Arcade/Pac-man/Pac-Pix.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0014 "./Arcade/Pac-man/Pac-Pix.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0008 "./Arcade/Pac-man/Pac-Pix (U).nds"
movebyreleasenumber "$GAME_NAME" 0014 "./Arcade/Pac-man/Pac-Pix (E).nds"
movebyreleasenumber "$GAME_NAME" 0194 "./Arcade/Pac-man/Pac-Pix (J).nds"
movebyreleasenumber "$GAME_NAME" 1697 "./Arcade/Pac-man/Pac-Pix (K).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Space Invaders Revolution"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "スペースインベーダーDS" 0009 "./アーケード/スペースインベーダーズ/スペースインベーダーDS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Supēsuinbēdāde DS" 0009 "./Ākēdo/Supēsuinbēdāzu/Supēsuinbēdāde DS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0009 "./Arcade/Space Invaders/Space Invaders Revolution.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0087 "./Arcade/Space Invaders/Space Invaders Revolution.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0354 "./Arcade/Space Invaders/Space Invaders Revolution.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0009 "./Arcade/Space Invaders/Space Invaders Revolution (J).nds"
movebyreleasenumber "$GAME_NAME" 0087 "./Arcade/Space Invaders/Space Invaders Revolution (U).nds"
movebyreleasenumber "$GAME_NAME" 0354 "./Arcade/Space Invaders/Space Invaders Revolution (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Tounou Ni Aseka Game Series Vol. 1: Cool 104 Joker & Setline"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "$GAME_NAME" 0010 "./カジノ/ポーカー/Cool 104 Joker & Setline.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "$GAME_NAME" 0010 "./Kajino/Pōkā/Cool 104 Joker & Setline.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0010 "./Casino/Poker/Cool 104 Joker & Setline.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0010 "./Casino/Poker/Cool 104 Joker & Setline (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Guru Guru Nagetto"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "ぐる ぐる なげっと" 0011 "./アクション/ぐる ぐる なげっと.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "$GAME_NAME" 0011 "./Akushon/Guru Guru Nagetto.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0011 "./Action/Guru Guru Nagetto.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0011 "./Action/Guru Guru Nagetto (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Asphalt: Urban GT"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "アスファルト:アーバンGT" 0309 "./シミュレーション/スポーツの/レーシング/アスファルト/アーバンGT.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Asufaruto: Āban GT" 0309 "./Shimyurēshon/Supōtsu no/Rēshingu/Asufaruto/Āban GT.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0309 "./Simulation/Sports/Racing/Asphalt/01 Urban GT.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0012 "./Simulation/Sports/Racing/Asphalt/01 Urban GT.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0055 "./Simulation/Sports/Racing/Asphalt/01 Urban GT.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0012 "./Simulation/Sports/Racing/Asphalt/01 Urban GT (U).nds"
movebyreleasenumber "$GAME_NAME" 0055 "./Simulation/Sports/Racing/Asphalt/01 Urban GT (E).nds"
movebyreleasenumber "$GAME_NAME" 0309 "./Simulation/Sports/Racing/Asphalt/01 Urban GT (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Meteos"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "メテオス" 0016 "./パズル/メテオス.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Meteosu" 0016 "./Pazuru/Meteosu.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0016 "./Puzzle/Meteos.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0060 "./Puzzle/Meteos.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0103 "./Puzzle/Meteos.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0016 "./Puzzle/Meteos (J).nds"
movebyreleasenumber "$GAME_NAME" 0060 "./Puzzle/Meteos (U).nds"
movebyreleasenumber "$GAME_NAME" 0103 "./Puzzle/Meteos (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Ridge Racer DS"
for code in "${preference[@]}"; do
case $code in
U) movebyreleasenumber "$GAME_NAME" 0017 "./Simulation/Sports/Racing/Ridge Racer/07 Ridge Racer DS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0017 "./Simulation/Sports/Racing/Ridge Racer/07 Ridge Racer DS (U).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Mr. Driller: Drill Spirits"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "ドリルスピリッツ" 0009 "./アーケード/ミスタードリラー/ドリルスピリッツ.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Supēsuinbēdāde DS" 0009 "./Ākēdo/Misutādorirā/Dorirusupirittsu.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0027 "./Arcade/Mr. Driller/07 Drill Spirits.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0019 "./Arcade/Mr. Driller/07 Drill Spirits.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0048 "./Arcade/Mr. Driller/07 Drill Spirits.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0019 "./Arcade/Mr. Driller/07 Drill Spirits (U).nds"
movebyreleasenumber "$GAME_NAME" 0027 "./Arcade/Mr. Driller/07 Drill Spirits (J).nds"
movebyreleasenumber "$GAME_NAME" 0048 "./Arcade/Mr. Driller/07 Drill Spirits (E).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Super Mario 64 DS"
for code in "${preference[@]}"; do
case $code in
日) versionselector "スーパーマリオ64DS" 0025 1217 "./マリオと仲間たち/スーパーマリオ/スーパーマリオ64DS" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) versionselector "Sūpā Mario Rokujūyon Dī Esu" 0025 1217 "./Mario to nakama-tachi/Sūpāmario/Sūpā Mario Rokujūyon Dī Esu" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) versionselector "$GAME_NAME" 0025 1217 "./Mario & Friends/Super Mario/Super Mario 64 DS" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
한) movebyreleasenumber "팟쿠삐쿠스" 1296 "./마리오와 친구들/슈퍼 마리오/슈퍼 마리오 64 DS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
K) movebyreleasenumber "paskuppikuseu" 1296 "./Malio wa Chingudeul/Syupeo Malio/Syupeo Malio 64 DS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
k) movebyreleasenumber "$GAME_NAME" 1296 "./Mario & Friends/Super Mario/Super Mario 64 DS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) versionselector "$GAME_NAME" 0037 0056 "./Mario & Friends/Super Mario/Super Mario 64 DS" 2
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0022 "./Mario & Friends/Super Mario/Super Mario 64 DS.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0022 "./Mario & Friends/Super Mario/Super Mario 64 DS (E).nds"
versionselector "$GAME_NAME" 0025 1217 "./Mario & Friends/Super Mario/Super Mario 64 DS (J)" 2
versionselector "$GAME_NAME" 0037 0056 "./Mario & Friends/Super Mario/Super Mario 64 DS (U)" 2
movebyreleasenumber "$GAME_NAME" 1296 "./Mario & Friends/Super Mario/Super Mario 64 DS (K).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Star Wars: Episode III: Revenge of the Sith"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "スター・ウォーズ:エピソードIII:シスの復讐" 0161 "./映画、テレビ、コミック/スターウォーズ/03 シスの復讐.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Sutā u~ōzu: Episōdo III: Shisunofukushū" 0161 "./Eiga, terebi, komikku/Sutāu~ōzu/03 Shisunofukushū.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0161 "./Movies, TV, and Comics/Star Wars/03 Revenge of the Sith.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0076 "./Movies, TV, and Comics/Star Wars/03 Revenge of the Sith.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0023 "./Movies, TV, and Comics/Star Wars/03 Revenge of the Sith.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0023 "./Movies, TV, and Comics/Star Wars/03 Revenge of the Sith (E).nds"
movebyreleasenumber "$GAME_NAME" 0076 "./Movies, TV, and Comics/Star Wars/03 Revenge of the Sith (U).nds"
movebyreleasenumber "$GAME_NAME" 0161 "./Movies, TV, and Comics/Star Wars/03 Revenge of the Sith (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Robots"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "ロボット" 0312 "./映画、テレビ、コミック/ロボット.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "Robotto" 0312 "./Eiga, terebi, komikku/Robotto.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0312 "./Movies, TV, and Comics/Robots.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0059 "./Movies, TV, and Comics/Robots.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0024 "./Movies, TV, and Comics/Robots.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0024 "./Movies, TV, and Comics/Robots (E).nds"
movebyreleasenumber "$GAME_NAME" 0059 "./Movies, TV, and Comics/Robots (U).nds"
movebyreleasenumber "$GAME_NAME" 0312 "./Movies, TV, and Comics/Robots (J).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
GAME_NAME="Pokémon Dash"
for code in "${preference[@]}"; do
case $code in
日) movebyreleasenumber "ポケモンダッシュ" 0057 "./ポケットモンスター/ポケモンダッシュ.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
J) movebyreleasenumber "PokemondasshuE" 0057 "./Pokettomonsutā/Pokemondasshu.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
j) movebyreleasenumber "$GAME_NAME" 0057 "./Pokémon/Pokémon Dash.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
한) movebyreleasenumber "포켓몬 대시" 0991 "./포켓 몬스터/포켓몬 대시.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with ligographs)'
fi
break;;
K) movebyreleasenumber "Pokesmon Daesi" 0991 "./Pokes Monseuteo/Pokesmon Daesi.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME
fi
break;;
k) movebyreleasenumber "$GAME_NAME" 0991 "./Pokémon/Pokémon Dash.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using Japanese ROM for $GAME_NAME '(with American Name)'
fi
break;;
U) movebyreleasenumber "$GAME_NAME" 0026 "./Pokémon/Pokémon Dash.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using American ROM for $GAME_NAME
fi
break;;
E) movebyreleasenumber "$GAME_NAME" 0119 "./Pokémon/Pokémon Dash.nds"
if [ $? != 0 ]; then
continue
fi
if [ $code != ${preference[0]} ]; then
echo Using European ROM for $GAME_NAME
fi
break;;
A) movebyreleasenumber "$GAME_NAME" 0026 "./Pokémon/Pokémon Dash (U).nds"
movebyreleasenumber "$GAME_NAME" 0057 "./Pokémon/Pokémon Dash (J).nds"
movebyreleasenumber "$GAME_NAME" 0119 "./Pokémon/Pokémon Dash (E).nds"
movebyreleasenumber "$GAME_NAME" 0991 "./Pokémon/Pokémon Dash (K).nds"
if [ $code != ${preference[0]} ]; then
echo Using All region ROMs for $GAME_NAME
fi
break;;
esac
done
Filetrip link