Tutorial  Updated

Installing Sudokuhax on 3DS 4.x-9.2

So yeah... Title says it all. Ever heard of the DSi exploit named Sudokuhax? You want it? Okay! Here's some info:

  • DSiWare does NOT have access to game card, slot 1.
  • DSi Homebrew Channel ONLY supports a maximum SD card size of 2GBs, because of libnds? (If anyone want's to fix that problem, go ahead).
  • Does not support DLDI patching (sucks, right? Can't even run moonshell or a lot of legacy homebrew with that -_-)
  • You need a NDS mode flash card, so ROP Multiloader can be installed. (New method, doesn't have this requirement :D)
  • DSiWare already installed on the console (it must be at least 4MB's in size!) UNLESS you use the NEW method.
  • Ninjhax or Spiderhax (browser, O3DS) is currently required for the NEW method. The old method, requires a NDS flashcard or other method of installing the ROP chain for MSET.
NOTE - QUOTES ON FREEZING:

It works on my 32gb fat32 32k cluster. I used the modified boot.nds from zoogie link.

Yes cluster size is the issue with hbMenu. If it's anything beyond 8192K on 16+ GB size SD cards (not sure if this counts for anything smaller) then hbMenu won't start anything. You just get that white screen. But the problem was I had screen buffer bugs with GBA games when I had my 32GB SD card formatted to 8192k cluster size.

The ROM

1.) Google "DSiWare SDATs" - click on the link with the domain "hcs64".
2.) Scroll down to the bottom and select "page 3" - you'll see a post by "CaitSith2", posted on "March 27, 2015".
3.) Click on "nomodcrypt" and download the archive.

I can't post a direct link to the files, as it isn't allowed here. Sorry.

PC Utility

1.) Search that ISO site for "Play DSiWare in your 3DS!".
2.) Click on the link and go to page 6, post 59.
3.) Download "DSiWare_Injector.zip".

Good! That's the PC utilities downloaded.

Edit: For those of you who can't find the post, I uploaded the injector to my dropbox. Here it is: https://dl.dropbox.com/s/8pjwmgyiwg5bil4/DSiWare_Injector.zip

DSi Homebrew Channel (Mileage may vary)

1.) Download this: http://filetrip.net/nds-downloads/applications/download-dsi-homebrew-channel-1-0-f25356.html

OR Download this modified version, by @zoogie : http://gbatemp.net/attachments/boot-zip.18916/

OR the latest release (also credits to Zoogie): http://gbatemp.net/attachments/boot-zip.21417/

You don't need a 2gb card. just use nds_hb_menu.
Freshly compiled build attached for your homebrewing pleasure. :P

That's pretty much all you need :P Okay, now for the messing about.

***New Method: 4.x-9.2*** (Concept by Zoogie)

1.) Download a copy of Decrypt9, from either of the two links:
OR try @zoogie 's tool:

Here's a version of TWL_PADGEN that includes a browser-launchable decrypt9 -- no cubic ninja needed.
Use gateway firmware for nand dumping and reinjection and such.
Press select to create xorpad.

http://gbatemp.net/attachments/twln_padgen_spider_launcher-zip.21674/

2.) Place the file in their respective places (Launcher.dat, goes at the root of the 3DS SD card. "Decrypt9", goes in the "3ds" directory, if you're using Ninjhax).
3.) Launch the payload.
4.) Select "Decrypt Nand Partitions" then press "x", to backup.
5.) Once finished, shutdown the console.
6.) Rename "SUDOKU-Electronic_Arts_Inc..nds" to "00000002.app".
7.) Rename "dsiware.sav" to "public.sav" (this file is located in "DSiWare_Injector".
8.) Remove the 3DS's SD card and insert it into your computer. Navigate to SD:/Decrypt9 and open "TWLN.bin" with a piece of software such as WinImage.
9.) In WinImage, go to "\title\00030005\42383841\content" and inject the "new" 00000002.app. You can inject the new file by clicking on "Image" then "Inject".
10.) Go to "\title\00030005\42383841" and create the directory "data" (Image -> Create Folder).
11.) Open the "data" directory and inject the "public.sav" file.
12.) Go to File -> Save.
13.) Remove all files from "SD:/Decrypt9", EXCEPT FOR TWLN.bin!
14.) Eject the SD card and put it back into the 3DS.
15.) Re-launch D9, then click "Decypt Nand Partitions" then press the restore button (y).
16.) Accept the confirmation (if any) and wait for it to finish.
17.) Reboot the console, then go to System Settings -> Internet -> Nintendo DS Connections.
18.) Sudoku should load. Press start and Sudokuhax should load. It'll show an error about boot.nds
19.) Power down the console, eject the SD card and put it into your computer.
20.) Transfer the DSiHomebrew channel (boot.nds), to the root of your SD card.
21.) Reinsert the SD card into the console and relaunch Sudokuhax.


***BELOW INSTRUCTIONS ARE 4.x ONLY!***

3DS Injection Tools

1.) Download ROP Multiloader here: http://filetrip.net/3ds-downloads/homebrew/download-ropmultiloader-1-1-f32981.html

Getting your DSiWare Title ID's

1.) Go to system settings ---> Data Management ---> DSiWare.
2.) Copy the DSiWare that you want to be "Sudokuhaxed" to the SD card (make sure no other DSiWare is on your SD! It'll make things easier).
3.) Shutdown the 3DS.
4.) Remove the SD card and insert it into your computer.
5.) Go to "SD:\Nintendo 3DS\<ID1>\<ID2>\Nintendo DSiWare" - you'll see a title with a name similar to this: 4B344856 (This is just an example).
6.) Make sure it's at least 4MB's in size.
7.) Note down the name of the file (don't bother about the file extension - you don't need this).
That's the ID's sorted! Great! :vul2:

Sorting out the stuff

1.) Extract "SUDOKU-Electronic_Arts_Inc..nds" from "decrypted_titles_nomodcrypt.7z" (requires 7Zip or any other archive handler that supports the .7z file extension).
2.) Extract "DSiWare_Injector.zip".
3.) Copy/Move "SUDOKU-Electronic_Arts_Inc..nds" into the "DSiWare_Injector" directory so that it is with it's pals "dsiware_InjectTitleIDinMset.py" and "MsetForBoss.dat".
4.) Rename "SUDOKU-Electronic_Arts_Inc..nds" to "dsiware.nds".
5.) Open "dsiware_InjectTitleIDinMset.py" with a text editor, so that the title ID can be changed.
6.) Change this:
title_ID="xxxxxxxx" # 8 characters or die.

to this:

title_ID="<THE TITLE ID THAT YOU SHOULD'VE NOTED DOWN EARLIER!" # 8 characters or die.

7.) Save the changes and run "dsiware_InjectTitleIDinMset.py" (You must have Python installed!).
8.) Copy "dsiware.nds", "dsiware.sav" and "MsetForBoss.dat" to the root of your 3DS's SD card, (NOT THE NDS FLASH CARD!).
9.) Extract the DSiHomebrew channel and copy "boot.nds" to the root of your 3DS's SD card, just like the previous step.
10.) Extract "235679-ropMultiloader 1.1.zip" and copy "rop_multiloader.nds" to your flashcards SD card (NOT 3DS's!)

You're almost done!

11.) Eject all SD cards and put them back where they belong (don't ask stupid questions. You know where to put it, hehe.)

Installation onto the console


1.) Launch ROP multiloader from your flashcard and install the MsetForBoss exploit.
2.) Go to system settings ---> Profile ---> Nintendo DS profile - you'll see a magical menu, hehe.
3.) Select the option to inject the DSiWare. Wait for it to finish and shutdown the console.
4.) Turn the console back on and launch the DSiWare that you had injected Sudoku into.
5.) The exploit will load after the start menu.

You're done! I've only found this useful for installing the profile exploit, on the go without the need of carrying a flashcard with me. This lets you play NDS games and you could just re-install the exploit with Sudokuhax. Just copy any ROP installer to your 3DS's SD card and rename it to boot.nds.

Would be great if Moonshell2 could be ported to work with this :) Or even better - have a DLDI patch that lets you use more homebrew (nothing is impossible), though I doubt someone would be willing enough to make this happen -_-.

Any errors in this tutorial? Let me know and I'll correct them.

DISCLAIMER: If you break your console, I am not responsible for that. You do these sort of stupid things at your OWN risk. ALWAYS HAVE A BACKUP! Don't come crying to this forum if you've bricked your 3DS and don't have a backup of your NAND - it's just plain sense to have backed up your console, you're an idiot if you don't have one.

Special thanks to a certain user on this forum, for helping me out with the details. He prefers not to be mentioned as he'd rather not receive nooby PM's.

Credits/Info

I do NOT take credit for anything other than taking the time to write this tutorial. All files/tools mentioned in this thread belong to their respective owners - you already know where to go if you want to thank them.

Video evidence



 
Last edited by WhoAmI?,

GhostLatte

GBAtemp's Official Van Master™
Member
GBAtemp Patron
Joined
Mar 26, 2015
Messages
3,651
Trophies
3
Age
24
XP
11,206
Country
United States
I did the same with Face Training (A DSi exclusive) in the hope that as it was only made for the DSi it would also work as DSiWare, but no luck. It's probably because it will try to load data from the DS card instead of TWL NAND.

I tried with System Flaw (A DSi exclusive) and I got the same error :/
 
  • Like
Reactions: Margen67

duffmmann

Well-Known Member
Member
Joined
Mar 11, 2009
Messages
3,966
Trophies
2
XP
2,306
Country
United States
So what exactly can we do through Sudokuhax that we can't already do through pasta cfw? I Understand it allows you to use .nds homebrew, but the only homebrew I really care about are emulators and ninjahax/pasta cfw already have emulators. Is there something I'm missing? Can you play your DS backups with sudokuhax or something like that?
 
  • Like
Reactions: Margen67

zoogie

playing around in the end of life
Developer
Joined
Nov 30, 2014
Messages
8,560
Trophies
2
XP
15,000
Country
Micronesia, Federated States of
Cart games expect their saves to be in the eeprom format. That's why they can't work when launched as dsiware without some serious changes.

That's probably only the tip of the iceberg.
 
  • Like
Reactions: Margen67

GhostLatte

GBAtemp's Official Van Master™
Member
GBAtemp Patron
Joined
Mar 26, 2015
Messages
3,651
Trophies
3
Age
24
XP
11,206
Country
United States
Cart games expect their saves to be in the eeprom format. That's why they can't work when launched as dsiware without some serious changes.

That's probably only the tip of the iceberg.

There weren't really any good DSi Enhanced games.
 

GhostLatte

GBAtemp's Official Van Master™
Member
GBAtemp Patron
Joined
Mar 26, 2015
Messages
3,651
Trophies
3
Age
24
XP
11,206
Country
United States
Very debatable there (for another topic), but the underlying issue is that it's difficult to get DS(i) cart games to run from the SD when launched from TWL FIRM.

Do you think that it would possible in the future?
 
  • Like
Reactions: Margen67

WhoAmI?

PASTA's dirty animal
OP
Member
Joined
Mar 15, 2015
Messages
1,276
Trophies
0
Location
Poké Ball
Website
lavanoid.github.io
XP
1,279
Country
WhoAmI?, were you able to dump the Sudoku CIA from your decrypted NAND?


Nope. Apache Thunder said DSiWare is stored in TWL, which rxTools doesn't decrypt :/ I suppose I could generate xorpads for my NAND but I barely have any space left on my SD card xD (less than 300MB).

I don't have a copy of Sudokuhax, just a crappy game that I injected it in to. Hhmmm... I'm thinking of backing up/decrypting my 9.2 NAND, again, then downgrade to 4.x, install Sudokuhax, then update to 9.x via CIA's then inject my data in my 9.x backup into the new NAND.

I don't like how downgrading messes up my notifications and stuff, which is why I haven't tried it. That's also why I would just inject my decrypted 9.x data into my new NAND - as then it should fix my notifications.. I dunno.

I tried installing SaveDataFilter via PASTA and FBI, the other day - it wouldn't install for whatever reason...
 

V3NUS_M1NER

Well-Known Member
Member
Joined
Nov 27, 2014
Messages
391
Trophies
0
Age
24
XP
373
Country
United States
I found out how to build DSiWare CIAs (for pastaCFW/PBT CFW users)!

This works for Sudoku too! Simple. Download that "DSiWare SDATs" package mentioned on post 1.

The process is actually quite simple. Get make_cia. I'm sure it's easy to find so I won't find it for you. Then use this command:

Code:
make_cia --srl=NameOfYourGame.nds

It looks to create a valid DSiWare CIA. (obviously the ticket will not be valid and it won't work outside of CFW). But for those using PastaCFW. You basically have easy way of making any DSiWare you want!

I can't fully test this though as I can't yet boot PastaCFW. But the result was a valid icon and title for Sudoku on my Home Menu. But I'm sure since DSiWare works with PastaCFW anyways, this will too. The main difference with this and the primary method of getting it installed is that this one will only boot when using CFW with sig checks patched.

Note many of the game names in the sdat package probably have filenames that won't get along with make_cia so rename them to command line friendly names before attempting to build CIAs out of them.

Note that this probably will not work for DSi Enhanced titles dumped from cartridges or DS games. Obviously those won't work as they won't be proper DSi titles. DS stuff still needs to be booted from a DS flashcart.

Note that even if Sudoku is installed this way, you must still find a way of injecting the save. I don't know of a way to do that on 9.x sysnand.

EDIT:

Ok it let me build a CIA from Pokemon Black 2 (which is a DSi Enhanced game). That's interesting. I'll never be able to install because of the large size of the game, but that is indeed interesting. :P

How can I compile this?

Is there an already compiled version of this?
 

Bkool999

Well-Known Member
Member
Joined
Oct 3, 2014
Messages
288
Trophies
0
Age
27
XP
387
Country
United States
Literally just got off of Linux.

Guess I can dual boot

Just in case you have 32-bit linux, here's the one I complied using 32-bit.

EDIT: This may not work. I'm not really sure if I did something wrong with the commands after I compiled it or if was a compiling issue. Just a fair warning.
 

Attachments

  • make_cia.zip
    88.7 KB · Views: 186

Shadowtrance

Well-Known Member
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
So i spent tonight "trying" to err make/convert the DSi injector from the old 4.x launcher.dat (msetforboss.dat) to Decrypt9 style (launcher.dat / .bin files) to hopefully work on 9.x/ninjhax/n3ds.

EVENTUALLY i got it together and able to compile by taking bits n pieces from the old source and taking it to the Decrypt9 source i was using as a base.

It boots from ninjhax through Brahma, sadly the launcher.dat just gives me a grey top screen / white bottom screen and sits there forever doing nothing. :(

And that's about as far as i get, booting it on ninjhax. Inject / dump don't wanna work. :(

And seeing as I'm not smart enough when it comes to programming i thought I'd put it on github and hopefully someone smarter with programming can fix it (fingers crossed). :)

https://github.com/Shadowtrance/DSi_Injector I'm sure it needs a lot of cleaning up / some files removed or whatever, hopefully someone can get it working though.

dIUosoq.jpg
 

GhostLatte

GBAtemp's Official Van Master™
Member
GBAtemp Patron
Joined
Mar 26, 2015
Messages
3,651
Trophies
3
Age
24
XP
11,206
Country
United States
So i spent tonight "trying" to err make/convert the DSi injector from the old 4.x launcher.dat (msetforboss.dat) to Decrypt9 style (launcher.dat / .bin files) to hopefully work on 9.x/ninjhax/n3ds.

EVENTUALLY i got it together and able to compile by taking bits n pieces from the old source and taking it to the Decrypt9 source i was using as a base.

It boots from ninjhax through Brahma, sadly the launcher.dat just gives me a grey top screen / white bottom screen and sits there forever doing nothing. :(

And that's about as far as i get, booting it on ninjhax. Inject / dump don't wanna work. :(

And seeing as I'm not smart enough when it comes to programming i thought I'd put it on github and hopefully someone smarter with programming can fix it (fingers crossed). :)

https://github.com/Shadowtrance/DSi_Injector I'm sure it needs a lot of cleaning up / some files removed or whatever, hopefully someone can get it working though.

dIUosoq.jpg
How can I test this out?
 
  • Like
Reactions: Margen67

WhoAmI?

PASTA's dirty animal
OP
Member
Joined
Mar 15, 2015
Messages
1,276
Trophies
0
Location
Poké Ball
Website
lavanoid.github.io
XP
1,279
Country
So i spent tonight "trying" to err make/convert the DSi injector from the old 4.x launcher.dat (msetforboss.dat) to Decrypt9 style (launcher.dat / .bin files) to hopefully work on 9.x/ninjhax/n3ds.

EVENTUALLY i got it together and able to compile by taking bits n pieces from the old source and taking it to the Decrypt9 source i was using as a base.

It boots from ninjhax through Brahma, sadly the launcher.dat just gives me a grey top screen / white bottom screen and sits there forever doing nothing. :(

And that's about as far as i get, booting it on ninjhax. Inject / dump don't wanna work. :(

And seeing as I'm not smart enough when it comes to programming i thought I'd put it on github and hopefully someone smarter with programming can fix it (fingers crossed). :)

https://github.com/Shadowtrance/DSi_Injector I'm sure it needs a lot of cleaning up / some files removed or whatever, hopefully someone can get it working though.

dIUosoq.jpg


Wow, nice work! Hopefully someone can improve this so it'll get working :D Cheers! :grog:
 
  • Like
Reactions: Margen67

Shadowtrance

Well-Known Member
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
How can I test this out?

Umm compile it and get/compile Brahma and run the .bin file from that. But not much point as it isn't working anyway. :(
Wow, nice work! Hopefully someone can improve this so it'll get working :D Cheers! :grog:

Yeah would be good if someone can fix it cause atm it does nothing but run and give errors when selecting either option so something really isn't right somewhere in the source. haha I tried though. :(

And I'm sadly not experienced enough in programming to fix it myself. :( Should have paid more attention in school! lol
 

WhoAmI?

PASTA's dirty animal
OP
Member
Joined
Mar 15, 2015
Messages
1,276
Trophies
0
Location
Poké Ball
Website
lavanoid.github.io
XP
1,279
Country
Umm compile it and get/compile Brahma and run the .bin file from that. But not much point as it isn't working anyway. :(


Yeah would be good if someone can fix it cause atm it does nothing but run and give errors when selecting either option so something really isn't right somewhere in the source. haha I tried though. :(

And I'm sadly not experienced enough in programming to fix it myself. :( Should have paid more attention in school! lol


Haha xD I didn't even get taught this stuff in school - we were always taught BS about spreadsheets and all that jazz xD
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • ZeroT21 @ ZeroT21:
    it's kinda fun watching it happen tho
  • K3Nv2 @ K3Nv2:
    It needs fixing for other things but your pc I can fix
  • ZeroT21 @ ZeroT21:
    over 300+ virus/trojians/worms after scanning, what did I do to deserve this attention lol
  • ZeroT21 @ ZeroT21:
    tho I find it funny when i receive other people's pc/laptops in this state
  • ZeroT21 @ ZeroT21:
    i wont be upgrading unless I cant run the games i want anymore
  • K3Nv2 @ K3Nv2:
    Spill water on it good excuse
  • ZeroT21 @ ZeroT21:
    @K3Nv2 that's like a valid option if someone else is paying for ya
  • K3Nv2 @ K3Nv2:
    Daddy's wallet
  • K3Nv2 @ K3Nv2:
    Ngl hogwarts legacy has good pooping music
  • OctoAori20 @ OctoAori20:
    That's uh-
  • OctoAori20 @ OctoAori20:
    That's certainly a Dairy Queen sign lmao
  • K3Nv2 @ K3Nv2:
    You should see his help wanted signs
  • OctoAori20 @ OctoAori20:
    Ugh, so many sweat-dipwads in Sploon 3 Anarchy mode tonight
  • OctoAori20 @ OctoAori20:
    I didn't know this was "Make Octo never finish Fresh Season 2024 Catalog in Splatoon 3" month, good god
  • Veho @ Veho:
    What's the point of "confirming" games you know will get released. Like Nintendo "confirming" a Zelda sequel. "We can't be sure Nintendo is working on a new Zelda game, or if a new Zelda game will ever be released, until they officially confirm it."
    +1
  • Veho @ Veho:
    "There is literally no way to know if they will ever release a new Zelda game, it's wild speculation until they officially confirm it."
    +1
  • K3Nv2 @ K3Nv2:
    Black ops was the lesser shitter line in cock a poopoo tbf just a way to let people know it hasn't died or going a different route I guess
  • K3Nv2 @ K3Nv2:
    $70 DLC per 6 months is what it turned into
  • Psionic Roshambo @ Psionic Roshambo:
    She saw the sign and it opened up her mind lol
    +1
  • BigOnYa @ BigOnYa:
    All that she wants, is another storefront.
  • K3Nv2 @ K3Nv2:
    The homeless live in the compactors at Walmart
    K3Nv2 @ K3Nv2: The homeless live in the compactors at Walmart