Hacking Patching Out DSI Enhancement for Injects?

ghostbit

Well-Known Member
OP
Newcomer
Joined
Jun 8, 2020
Messages
68
Trophies
0
Age
112
XP
229
Country
United States
So, it's apparently known that current injection tech and loadiine don't support DS games with 'DSi Enhancement', such as Pokemon B/W or Conquest (my particular dilemma). The rom will just hang or freeze.

What I'm wondering is if (as some of the old anti-piracy patches at least partially did) the DSi enhanced segments of the rom could be removed it would then become functional on Wii U in some form.

Perhaps removing the opening security check isn't enough and selective trimming could be the answer?

There was a thread about this in 2016 but only a few things were tried, and I'm hoping the scene has advanced enough since then that a better solution can be found.
 

ghostbit

Well-Known Member
OP
Newcomer
Joined
Jun 8, 2020
Messages
68
Trophies
0
Age
112
XP
229
Country
United States
As far as I know there has been no progress in this regard.
:(
That's unfortunate. No time like the present, though. Is it impossible or has pretty much just nobody looked into it? I'm ignorant of how the dual-mode dsi enhanced games operate, would somehow selectively trimming the 'enhanced' dsi code create a usable inject? Is there perhaps a simpler method that hasn't been tried yet?
 

phacox_cll

Well-Known Member
Member
Joined
Mar 30, 2019
Messages
172
Trophies
0
XP
1,339
Country
Mexico
It hasn't been researched in depth, but it's not like there's a section of ROMs that can simply be trimmed to disable DSi features. Enhancements for DSi are built into the game's programming and everything is assembled into the final binary that we call ROM.
 

nastys

ナースティス
Member
Joined
Aug 5, 2014
Messages
1,730
Trophies
0
Age
26
Location
Earth
XP
1,794
Country
Italy
You could open the ROM executable in Ghidra or IDA Pro, find the code that checks whether it's running on a DSi and add a branching instruction to skip it.
Patching the emulator instead might be possible if we know exactly why it crashes.
 

ghostbit

Well-Known Member
OP
Newcomer
Joined
Jun 8, 2020
Messages
68
Trophies
0
Age
112
XP
229
Country
United States
It hasn't been researched in depth, but it's not like there's a section of ROMs that can simply be trimmed to disable DSi features. Enhancements for DSi are built into the game's programming and everything is assembled into the final binary that we call ROM.
So you'd need the source to do that?

You could open the ROM executable in Ghidra or IDA Pro, find the code that checks whether it's running on a DSi and add a branching instruction to skip it.
To my knowledge, that's what some of these old anti-piracy patches did, though I don't know what else they affected that could still render the inject useless...

For that matter, maybe I was never even able to get my hands on a patch that actually removed the DSi check.

Patching the emulator instead might be possible if we know exactly why it crashes.
In this case, the emulator is the one packaged in with the virtual console - can it be altered to that level... or even at all? Maybe by opening via loadiine or something it can attach some instructions before loading.
 

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
23,207
Trophies
4
Location
Space
XP
13,733
Country
Norway
Most of the dumps marked (DSi Enhanced) actually don't have the DSi section properly dumped (won't work on a CycloDSi in DSi mode), could that be why they don't work?

Edit: Maybe setting offset 0x12 in the header to 00 per https://dsibrew.org/wiki/DSi_Cartridge_Header would work? The DSi has to read some data in the ROM in order to determine whether to enable higher clocks and enhanced wifi support, right?
 
Last edited by The Real Jdbye,
  • Like
Reactions: ghostbit

ghostbit

Well-Known Member
OP
Newcomer
Joined
Jun 8, 2020
Messages
68
Trophies
0
Age
112
XP
229
Country
United States
Most of the dumps marked (DSi Enhanced) actually don't have the DSi section properly dumped (won't work on a CycloDSi in DSi mode), could that be why they don't work?

Edit: Maybe setting offset 0x12 in the header to 00 per https://dsibrew.org/wiki/DSi_Cartridge_Header would work? The DSi has to read some data in the ROM in order to determine whether to enable higher clocks and enhanced wifi support, right?
An interesting idea for sure. If anyone gets positive results from this I hope they report it back here
 

MikaDubbz

Well-Known Member
Member
Joined
Dec 12, 2017
Messages
3,836
Trophies
1
Age
36
XP
7,161
Country
United States
So, it's apparently known that current injection tech and loadiine don't support DS games with 'DSi Enhancement', such as Pokemon B/W or Conquest (my particular dilemma). The rom will just hang or freeze.

What I'm wondering is if (as some of the old anti-piracy patches at least partially did) the DSi enhanced segments of the rom could be removed it would then become functional on Wii U in some form.

Perhaps removing the opening security check isn't enough and selective trimming could be the answer?

There was a thread about this in 2016 but only a few things were tried, and I'm hoping the scene has advanced enough since then that a better solution can be found.

Oh man, if we could get Conquest and the Black and White titles running on the Wii U, I'd be so happy.
 
  • Like
Reactions: ghostbit

ATD555

Member
Newcomer
Joined
Oct 5, 2020
Messages
7
Trophies
0
Age
25
XP
64
Country
Canada
I just ran Pokémon Black Version with a 00 in the 0x12 offset in Desmume and it worked, will have to try it on the Wii U but won't be able to until later.
So I just tried booting the game through the Wii U Virtual Console and it boots into the DS Emulation but the screens are white.
 

driverdis

I am Justice
Member
Joined
Sep 21, 2011
Messages
2,867
Trophies
2
Age
31
Location
1.048596β
XP
2,838
Country
United States
So I just tried booting the game through the Wii U Virtual Console and it boots into the DS Emulation but the screens are white.

did you patch the anti piracy measures from the rom first, I thought a white screen was usually an indication that it failed the check like older flash carts do.
 

ATD555

Member
Newcomer
Joined
Oct 5, 2020
Messages
7
Trophies
0
Age
25
XP
64
Country
Canada
did you patch the anti piracy measures from the rom first, I thought a white screen was usually an indication that it failed the check like older flash carts do.
I did not.... However I found this tutorial on how to patch the game, only thing is the tools and patches linked have been removed. Not sure where to go from here.
 
Last edited by ATD555,
  • Like
Reactions: phacox_cll

Dabu47

Well-Known Member
Newcomer
Joined
Sep 21, 2016
Messages
49
Trophies
0
Age
27
XP
131
Country
France
You can AP patch your NDS roms easily by using this tool
(The AP database contain Pokemon Conquest and Black and Whites titles, I just verified and patched them successfully)
 
Last edited by Dabu47,

dpad_5678

Ape weak on own. Ape strong in unity.
Member
Joined
Nov 19, 2015
Messages
2,219
Trophies
1
XP
2,880
Country
United States
I know that there's a certain address in the ROM's header that tells the device (or emulator) whether the ROM is a NTR (DS) or TWL (DSi-enhanced or DSi-only) title. I'm not sure if the Wii U VC just isn't compatible with DSi titles, or if it actively checks to see if it's a DSi game and refuses to load it. If it does check the ROM's header, I suppose, in theory, changing that byte in the header would allow it to load since it'll just believe it's an NTR title.
 

ATD555

Member
Newcomer
Joined
Oct 5, 2020
Messages
7
Trophies
0
Age
25
XP
64
Country
Canada
You can AP patch your NDS roms easily by using this tool
(The AP database contain Pokemon Conquest and Black and Whites titles, I just verified and patched them successfully)
I didn't have time to test it out last night, were you successful?
 

Dabu47

Well-Known Member
Newcomer
Joined
Sep 21, 2016
Messages
49
Trophies
0
Age
27
XP
131
Country
France
I didn't have time to test it out last night, were you successful?

I've patched both AP protection and the offset 0x012 in the rom header (setting it to 00 for NDS), exported it to VC through Phacox Injector 1.1.4 and it still return as a blank screen on my Wii U. (Rom tested: Pokemon Conquest - USA)

I guess it would have been too simple but anybody can double check: an error in my patching is always possible.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Psionic Roshambo @ Psionic Roshambo:
    Batman joined the Trans Justice League
    +2
  • Sicklyboy @ Sicklyboy:
    based af
    +2
  • Sonic Angel Knight @ Sonic Angel Knight:
    Forget the base, get on the roof.
  • K3Nv2 @ K3Nv2:
    Is that a bat in your buckle or are you just happy to have me
  • Psionic Roshambo @ Psionic Roshambo:
    Wonder "Woman" lol you wonder if they are a woman?
  • Psionic Roshambo @ Psionic Roshambo:
    The Riddler has questions...
  • K3Nv2 @ K3Nv2:
    Played a little of snow day glad I didn't spend $30
  • K3Nv2 @ K3Nv2:
    It's asthetic is okay maybe a good $10 grab
  • Psionic Roshambo @ Psionic Roshambo:
    Lol is it a game about doing cocaine?
  • K3Nv2 @ K3Nv2:
    Probably in pvp
  • Psionic Roshambo @ Psionic Roshambo:
    I tried Balders Gate II on the PS2 a few minutes ago, not bad lol
  • Psionic Roshambo @ Psionic Roshambo:
    My back catalog of games is like that scene at the end of Indiana Jones where the arc of the covenant is being stored in a giant ass warehouse
  • K3Nv2 @ K3Nv2:
    At least I can will my game catalog to family members
    +1
  • K3Nv2 @ K3Nv2:
    It's your problem now bitches
  • Psionic Roshambo @ Psionic Roshambo:
    Put it in your will that in order to receive any money they have to beat certain games, hard games and super shitty games...
  • Psionic Roshambo @ Psionic Roshambo:
    Say 20 bucks per Ninja Gaiden on the NES lol 60 bucks for all 3
  • Psionic Roshambo @ Psionic Roshambo:
    People you like "Beat level 1 of Ms Pacman" lol
  • K3Nv2 @ K3Nv2:
    Hello kitty ds is required
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Beat Celebrity Death Match on the PS1 omg tried it earlier today .... Absolutely trash
  • Psionic Roshambo @ Psionic Roshambo:
    Like -37 out of 10
  • Psionic Roshambo @ Psionic Roshambo:
    One of the worst games I have ever played
  • K3Nv2 @ K3Nv2:
    Make them rank up every cod game out
  • K3Nv2 @ K3Nv2:
    "Now I know why he took his own life"
    K3Nv2 @ K3Nv2: "Now I know why he took his own life"