Skip to content

Commit 9c65c2d

Browse files
committed
B4DS: Play music in *Yummy Yummy Cooking Jam* with 16MB+ RAM expansion inserted
1 parent 547dae6 commit 9c65c2d

File tree

2 files changed

+15
-6
lines changed

2 files changed

+15
-6
lines changed

retail/bootloader/source/arm7/dsi2ds_patches.c

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28383,7 +28383,7 @@ void patchDSiModeToDSMode(cardengineArm9* ce9, const tNDSHeader* ndsHeader) {
2838328383
}
2838428384

2838528385
// Yummy Yummy Cooking Jam (USA)
28386-
// Music is disabled
28386+
// Requires Slot-2 RAM expansion up to 16MB or more (Standard Memory Expansion Pak is not enough) for music playback
2838728387
else if (strcmp(romTid, "KYUE") == 0) {
2838828388
useSharedFont = twlFontFound;
2838928389
*(u32*)0x0200508C = 0xE1A00000; // nop
@@ -28395,7 +28395,11 @@ void patchDSiModeToDSMode(cardengineArm9* ce9, const tNDSHeader* ndsHeader) {
2839528395
*(u32*)0x020271F4 = *(u32*)0x02004FC0;
2839628396
}
2839728397
patchUserSettingsReadDSiWare(0x02028360);
28398-
*(u32*)0x020639A4 = 0xE12FFF1E; // bx lr
28398+
if (largeS2RAM) {
28399+
*(u32*)0x0205E524 = (s2FlashcardId == ezFlash) ? 0xE3A00408 : 0xE3A00409; // mov r0, (s2FlashcardId == ezFlash) ? #0x08000000 : #0x09000000
28400+
} else {
28401+
*(u32*)0x020639A4 = 0xE12FFF1E; // bx lr (Disable music)
28402+
}
2839928403
setBL(0x02069A78, (u32)dsiSaveOpen);
2840028404
setBL(0x02069AB4, (u32)dsiSaveRead);
2840128405
setBL(0x02069ACC, (u32)dsiSaveRead);
@@ -28416,7 +28420,7 @@ void patchDSiModeToDSMode(cardengineArm9* ce9, const tNDSHeader* ndsHeader) {
2841628420
}
2841728421

2841828422
// Yummy Yummy Cooking Jam (Europe, Australia)
28419-
// Music is disabled
28423+
// Requires Slot-2 RAM expansion up to 16MB or more (Standard Memory Expansion Pak is not enough) for music playback
2842028424
else if (strcmp(romTid, "KYUV") == 0) {
2842128425
useSharedFont = twlFontFound;
2842228426
*(u32*)0x0200148C = 0xE1A00000; // nop
@@ -28428,7 +28432,11 @@ void patchDSiModeToDSMode(cardengineArm9* ce9, const tNDSHeader* ndsHeader) {
2842828432
*(u32*)0x020235C8 = *(u32*)0x020013C0;
2842928433
}
2843028434
patchUserSettingsReadDSiWare(0x02024734);
28431-
*(u32*)0x0205FD48 = 0xE12FFF1E; // bx lr
28435+
if (largeS2RAM) {
28436+
*(u32*)0x0205A8C8 = (s2FlashcardId == ezFlash) ? 0xE3A00408 : 0xE3A00409; // mov r0, (s2FlashcardId == ezFlash) ? #0x08000000 : #0x09000000
28437+
} else {
28438+
*(u32*)0x0205FD48 = 0xE12FFF1E; // bx lr (Disable music)
28439+
}
2843228440
setBL(0x02065E1C, (u32)dsiSaveOpen);
2843328441
setBL(0x02065E58, (u32)dsiSaveRead);
2843428442
setBL(0x02065E70, (u32)dsiSaveRead);

retail/bootloader/source/arm7/main.arm7.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -702,8 +702,9 @@ static bool isROMLoadableInRAM(const tDSiHeader* dsiHeader, const tNDSHeader* nd
702702
|| (strncmp(romTid, "KXC", 3) == 0 && s2FlashcardId != 0x5A45) // Castle Conqueror: Heroes 2
703703
|| (strncmp(romTid, "KQ9", 3) == 0 && s2FlashcardId != 0x5A45) // The Legend of Zelda: Four Swords: Anniversary Edition
704704
|| (strncmp(romTid, "KEV", 3) == 0 && s2FlashcardId != 0x5A45) // Space Invaders Extreme Z
705-
|| (strncmp(romTid, "K97", 3) == 0 && s2FlashcardId != 0x5A45) // Sutanoberuzu: Kono Hareta Sora no Shita de
706-
|| (strncmp(romTid, "K98", 3) == 0 && s2FlashcardId != 0x5A45) // Sutanoberuzu: Shirogane no Torikago
705+
|| (strncmp(romTid, "K97", 3) == 0 && s2FlashcardId != 0x5A45) // Star Novels: Kono Haretasora no Shitade
706+
|| (strncmp(romTid, "K98", 3) == 0 && s2FlashcardId != 0x5A45) // Star Novels: Shirogane no Torikago
707+
|| (strncmp(romTid, "KYU", 3) == 0 && s2FlashcardId != 0x5A45) // Yummy Yummy Cooking Jam
707708
|| (strncmp(romTid, "UOR", 3) != 0
708709
&& strncmp(romTid, "KPP", 3) != 0 // Pop Island
709710
&& strncmp(romTid, "KPF", 3) != 0) // Pop Island: Paperfield

0 commit comments

Comments
 (0)