Removing iQue support from NDS games

  • Thread starter Thread starter SDA
  • Start date Start date
  • Views Views 1,301
  • Replies Replies 2

SDA

Zero Regrets
Member
Joined
Feb 19, 2020
Messages
2,034
Reaction score
2,160
Trophies
2
Age
21
Location
Parete, Italy
XP
4,996
Country
Italy
Yep, I would like to create patches that make iQue releases of Nintendo DS games (released in China) playable on emulators and real hardware, not iQue. Unless someone did it already before...

I'd like to know how to do it.
 
IIRC the only difference betweeen iQue DS consoles is having a larger firmware chip which includes a Chinese character set.

Maybe they're already playable if you provide that firmware.
 
They were made playable on various systems. Don't know if they got put into that patch collection project that was doing the rounds.

From the patches_cm.cpp of the woodrpg source code (should be GPL2, have linked it up before but might as well have it here too).
Code:
void CDsPatcher::PatchiDS(void)
{
  switch(GameCode())
  {
    case 0x434e5341: //"x005 - Zhigan Yi Bi (China) (iDS)"
      PatchMem(KArm7,0x02380360,0x027ffe1f);
      break;
    case 0x43575a41: //"x019 - Momo Waliou Zhizao (China) (iDS)"
      PatchMem(KArm7,0x02380358,0x027ffe1f);
      break;
    case 0x43363341: //"x020 - Rentian GouGou (China) (Demo) (Kiosk) (iDS)"
      PatchMem(KArm7,0x02380394,0x027ffe1f);
      break;
    case 0x43495941: //"x022 - Momo Yaoxi - Yun Zhong Manbu (China) (iDS)"
      NeedUncompressed();
      PatchMem(KArm9,0x0201ff38,0x027ffe1f);
      break;
    case 0x434d5341: //"x075 - Shenyou Maliou DS (China) (iDS)"
      NeedUncompressed();
      PatchMem(KArm9,0x0201aebc,0x027ffe1f);
      break;
    case 0x43443241: //"x142 - New Chaoji Maliou Xiongdi (China) (iDS)"
      PatchMem(KArm7,0x02380394,0x027ffe1f);
      break;
  }
}

They are memory patches I think and seemingly for the ARM7 (guess that is where the detection lands) but should not be too hard to port that to a cheat ( https://doc.kodewerx.org/hacking_nds.html ) or find where it lands in the ARM7 (which tend not to even be compressed) or just hardpatch the cheat with dsatm if being super lazy.
Search of http://www.advanscene.com/ (click advanced search, select nds, select region and put China in the search) says

nds.png
x176 Zhigan Yi Bi (Demo)(In-game)(iQue)ChinaNone9 Mbit
nds.png
x098 New Super Mario Bros. (iQue)

[TD]China[/TD]
[TD]Eeprom - 64 kbit[/TD]
[TD]256 Mbit[/TD]

[TR]
[TD]
ndsp.png
[/TD]
[TD]x098 [/TD]
[TD]New Super Mario Bros. (iQue)[/TD]
[TD]China[/TD]
[TD]Eeprom - 64 kbit[/TD]
[TD]256 Mbit[/TD]
[/TR]
[TR]
[TD]
nds.png
[/TD]
[TD]x046 [/TD]
[TD]Shenyou Maliou DS (iQue)[/TD]
[TD]China[/TD]
[TD]Eeprom - 64 kbit[/TD]
[TD]128 Mbit[/TD]
[/TR]
[TR]
[TD]
nds.png
[/TD]
[TD]x020 [/TD]
[TD]Momo Yaoxi - Yun Zhong Manbu (iQue)[/TD]
[TD]China[/TD]
[TD]Eeprom - 64 kbit[/TD]
[TD]128 Mbit[/TD]
[/TR]
[TR]
[TD]
nds.png
[/TD]
[TD]x018 [/TD]
[TD]Rentian Gougou (Demo)(iQue)[/TD]
[TD]China[/TD]
[TD]TBC[/TD]
[TD]256 Mbit[/TD]
[/TR]
[TR]
[TD]
nds.png
[/TD]
[TD]x017 [/TD]
[TD]Momo Waliou Zhizao (iQue)[/TD]
[TD]China[/TD]
[TD]Eeprom - 64 kbit[/TD]
[TD]256 Mbit[/TD]
[/TR]
[TR]
[TD]
nds.png
[/TD]
[TD]x005 [/TD]
[TD]Zhigan Yi Bi (iQue)[/TD]
[TD]China[/TD]
[TD]Eeprom - 64 kbit[/TD]
[TD]64 Mbit[/TD]
[/TR]

Numbers appear to be different but that is often the case. The probably pointless redump of NSMB should work fine with the patch and vice versa.
The NFO for the Zhigan Yi Bi Demo
http://www.advanscene.com/html/Releases/showdsnfo.php?id=7410
Sounds like it came from some download play station or equivalent (size would indicate that as well) and you have the full thing there too. Outside chance the existing patch will work, otherwise might be time to find out what the patches change. Something that small I would wager as being a check that is nerfed and I rarely see flag numbers that high (could be a header return I guess).
 

Attachments

Site & Scene News

Popular threads in this forum