Hacking Patching Out DSI Enhancement for Injects?

ghostbit

Well-Known Member
OP
Newcomer
Joined
Jun 8, 2020
Messages
68
Trophies
0
Age
113
XP
239
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
113
XP
239
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,353
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

Well-Known Member
Member
Joined
Aug 5, 2014
Messages
1,732
Trophies
1
Age
26
Location
Earth
XP
1,826
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
113
XP
239
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,668
Trophies
5
Location
Space
XP
14,541
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
113
XP
239
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,898
Trophies
2
Age
37
XP
7,622
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
26
XP
74
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
32
Location
1.048596β
XP
2,848
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
26
XP
74
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,890
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
26
XP
74
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
  • Xdqwerty @ Xdqwerty:
    Im downloading playnite
  • MucharSol @ MucharSol:
    guys how would I know if the screen ribbons for my N3DSXL are damaged
  • K3Nv2 @ K3Nv2:
    Just upchucked my dinner and passed out for two hours I thought my therapy days of seeing psi and bigonya kiss were over
    +1
  • BigOnYa @ BigOnYa:
    I bet its morning sickness...ancientboi gonna be so happy to be a daddy.
    +1
  • K3Nv2 @ K3Nv2:
    And you a grandfather
    +1
  • K3Nv2 @ K3Nv2:
    I forgot I owned a 7950 gpu I bet it can still do decent switch emulation
    +1
  • Xdqwerty @ Xdqwerty:
    @K3Nv2, No device I have can run switch games
  • K3Nv2 @ K3Nv2:
    I keep forgetting
  • Xdqwerty @ Xdqwerty:
    I dont have any switch game-running device bc im stupid
  • Xdqwerty @ Xdqwerty:
    im so jealous of y'all
  • Xdqwerty @ Xdqwerty:
    good night
    +1
  • K3Nv2 @ K3Nv2:
    @BigOnYa, is a 3.5 chest freezer big enough to store a wife in
  • BigOnYa @ BigOnYa:
    Depends, if just married- yes, if been married for years- no
  • K3Nv2 @ K3Nv2:
    https://www.walmart.com/ip/835682709 kind of want it for the extra space and 115 is a good deal
    +1
  • BigOnYa @ BigOnYa:
    Yea not bad, they are nice to have. I use mine alot. We buy Costco portions of meat, then brake down to small portions n freeze.
  • K3Nv2 @ K3Nv2:
    Doesn't even look big enough to store a pizza in though
  • BigOnYa @ BigOnYa:
    20.60 x 22.20 x 33.50 Inches, size of a dishwasher, or newlywed wife.
  • K3Nv2 @ K3Nv2:
    Maybe if you live in Africa and buy her for two pigs
    +1
  • K3Nv2 @ K3Nv2:
    I got ancientboi for a calf that way
  • BigOnYa @ BigOnYa:
    Good deal. His SS will pay for that calf in no time.
  • K3Nv2 @ K3Nv2:
    His last SS idea didn't pan out we won
  • BigOnYa @ BigOnYa:
    I still can't play Switch games on my tablet. I was hoping the CPU fairy would of snuck in my house overnight and upgraded me, but nope.
  • K3Nv2 @ K3Nv2:
    Turns out Vizio got sued by Nintendo over that
    K3Nv2 @ K3Nv2: Turns out Vizio got sued by Nintendo over that