From bd680b31643696028f34418c9c629054577e9d00 Mon Sep 17 00:00:00 2001 From: Christopher Roy Bratusek Date: Sat, 6 Jul 2013 18:25:11 +0200 Subject: [PATCH] add support for new super mario bros. 4 --- ChangeLog | 4 ++ GAMEIDS | 1 + README | 3 +- patches/05-04.arc | Bin 0 -> 6112 bytes patchimage.sh | 4 ++ script.d/common.sh | 10 ++--- script.d/nsmbw4.sh | 100 +++++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 115 insertions(+), 7 deletions(-) create mode 100644 patches/05-04.arc create mode 100644 script.d/nsmbw4.sh diff --git a/ChangeLog b/ChangeLog index 8850fc8..4e516b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +v2.3: +- add support for New Super Mario Bros. 4 +- fixed building JPN version of NewerHoliday + v2.2: - change ID for Koopa Country to SMN?10 - fix handling .rar files for riivolution patches diff --git a/GAMEIDS b/GAMEIDS index 536c1c8..b1738b8 100644 --- a/GAMEIDS +++ b/GAMEIDS @@ -10,3 +10,4 @@ SMN?07 Newer Holiday Special SMN?08 Epic Super Bowser World SMN?09 ? SMN?10 Koopa Country +SMN?11 New Super Mario Bros. 4 diff --git a/README b/README index 1ff6d10..733628f 100644 --- a/README +++ b/README @@ -20,7 +20,8 @@ Supported Games * Newer Summer Sun (riivolution) [SMN?06] * Newer Holiday Special (riivolution) [SMN?07] * Epic Super Bower World (riivolution) [SMN?08] -* Koopa Country (riivolution) [SMN?09] +* Koopa Country (riivolution) [SMN?10] +* New Super Mario Bros. 4 (riivolution) [SMN?11] * The Legend of Zelda: Parallel Worlds (ips) Default Searchpaths: diff --git a/patches/05-04.arc b/patches/05-04.arc new file mode 100644 index 0000000000000000000000000000000000000000..9d2e2380692e3de3f1b5f9dcd20164e914067c7a GIT binary patch literal 6112 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" + exit 1 + fi + fi + +} + +detect_game_version () { + + + if [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_232911 ]]; then + VERSION=EURv1 + REG_LETTER=P + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2010-01-05_152101 ]]; then + VERSION=EURv2 + REG_LETTER=P + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_232303 ]]; then + VERSION=USAv1 + REG_LETTER=E + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2010-01-05_143554 ]]; then + VERSION=USAv2 + REG_LETTER=E + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_231655 ]]; then + VERSION=JPNv1 + REG_LETTER=J + elif [[ ! ${VERSION} ]]; then + echo -e "please specify your games version using --version={EURv1,EURv2,USAv1,USAv2,JPNv1}" + exit 1 + fi + + GAMEID=SMN${REG_LETTER}11 + +} + +place_files () { + + case ${VERSION} in + EURv* ) + cp "${RIIVOLUTION_DIR}"/openingTitle.arc ${WORKDIR}/files/EU/Layout/openingTitle/ + ;; + + USAv* ) + cp "${RIIVOLUTION_DIR}"/openingTitle.arc ${WORKDIR}/files/US/Layout/openingTitle/ + ;; + + JPNv* ) + cp "${RIIVOLUTION_DIR}"/openingTitle.arc ${WORKDIR}/files/JP/Layout/openingTitle/ + ;; + esac + + cp "${RIIVOLUTION_DIR}"/*.brstm ${WORKDIR}/files/Sound/stream/ + cp "${RIIVOLUTION_DIR}"/0*.arc ${WORKDIR}/files/Stage/ + cp "${RIIVOLUTION_DIR}"/*.brsar ${WORKDIR}/files/Sound/ + cp "${RIIVOLUTION_DIR}"/bgA*.arc ${WORKDIR}/files/Object/ + # fix + cp patches/05-04.arc ${WORKDIR}/files/Stage/ + + +} + +dolpatch () { + + ${WIT} dolpatch ${DOL} xml="patches/NSMBW_AP.xml" -q + +}