Tutorial  Updated

Photo guide to installing DSiWare backups on real hardware and emulator

First, some USEFUL NOTES

Tickets are not actually required by the DSi launcher (this was unknown at the time the above procedure was written), you may skip the related steps

While still incomplete, @MarioMasta64 is working on automating this process for Windows+Python users:
http://gbatemp.net/threads/a-tool-to-make-converting-dsiware-from-3ds-to-dsi-easier.479996/

If you are using an emunand (through Hiya, for example), consider using DSi Title Manager instead; there's no reason it couldn't work on sysnand with minor changes but... it doesn't do that, yet or ever




Steal Acquire some decrypted DSiware apps. You can use Funkeycia, 3DSeStuff, etc the 3DS eShop to legally download them, rip them to cia, then use ctrtool to extract the cia into "contents" = .app (the very newest versions of ctrtool decrypt them during this extraction); alternatively you can use Godmode9 to directly copy the appropriate .app under twln:/title/00030004/* to the SD.
There's also a no-intro catalogue but no romset I know of, officer...

Backup your console's NAND, CID, and ConsoleID using well documented methods (hardmod if you have some DSiware that can be copied to SD, or fwTool+safety mod if you have an usable DSiware exploit - Team Twiizer's original sudokuhax is not suitable #clobberedkeyslots, while fourswordshax and the leaked ugopwn use minitwlpayload).
If you're using NO$GBA with a nand you didn't dump yourself, you can find the CID and the byteswapped ConsoleID by looking at the end of the dump with a hex editor.
1 NOCASHNAND.PNG
(Adding this block is also how you convert a raw backup for use with NO$GBA, just in case you didn't read the manual)

Use TwlTool to decrypt the nand.
2 nand decrypt.PNG

Mount the 1st partition of the decrypted image with OSFMount (Linux equivalent: losetup + mount; Mac equivalent, hdiutil + mount I guess?).
3 osfmount.PNG 4 osfmount.PNG

Pick (any?) ticket from the NAND, preferably from the regular DSiware category = 00030004, and decrypt it with TwlTool. This will be a base for the edited tickets we will make.
5 ticket crypto.PNG

Open the folder with our dumped title. You will find a "content" folder, possibly a "data" folder, and a .ctx file if it came from a 3DS.
Delete it, then go to the content folder.
Remove the "cmd" folder, and the 3DS-format TMD.
6 source.PNG 7 source content.PNG

Search the TMD pack for the full TitleID of the DSiware; copy the TMD to the content folder, renaming it to "title.tmd".
Open title.tmd in a hex editor.
8 tmd.PNG

Find offset 1E7; rename the .app file (better known as .srl or .nds) so that the last 2 digits are the ones written at 1E7.
Find offset 208; delete everything from there to the end of the file. (A small number of tmds are already trimmed).
Save the file.
9 tmd edit.PNG

Open the ticket we decrypted earlier in a hex editor.
Find offset 1DC and replace the next 8 bytes with the TitleID of the app we're installing;
Save the file with a name equal to the TitleID-low of the app.
10 ticket edit.PNG 11 ticket save.PNG

Use TwlTool to encrypt the ticket, and put it into the NAND.
12 ticket crypto.PNG

Copy the title's (content & data) folder to the NAND.
13 app copy.PNG

Unmount the NAND and re-encrypt it.
14 unmount.PNG 15 nand crypt.PNG

If you're using NO$GBA, you will have to re-add the footer since it will have been removed by TwlTool's NAND features.
16 nand footer.PNG

Enjoy your DSiWarez, and if you liked it, BUY THE ORIGINAL... oh wait, they closed the DSi shop
17.PNG 18.PNG
 
Last edited by Ryccardo,

Firexploit

Well-Known Member
Newcomer
Joined
Nov 7, 2018
Messages
77
Trophies
0
Location
NintendoSDK
XP
1,121
Country
Germany
Sadly the dsi transfer tool will be also installed as a system application (00030015) by the dsi shop

--------------------- MERGED ---------------------------

But the dsi shop have redownload section. Maybe if someone have save data of the dsi shop which has the redownload information inside, it could possible to inject the save date into my dsi shop and I could try to redownload from there
 

Ryccardo

Penguin accelerator
OP
Member
Joined
Feb 13, 2015
Messages
7,691
Trophies
1
Age
28
Location
Imola
XP
6,913
Country
Italy
As said at the beginning, you don't actually need a ticket just to add applications :)

No way you can fool the shop - your purchase history is server-side, you would need to completely spoof your DSi's identity (probably possible with emunand running a backup of the desired console and a hypothetically modded shop app, but nobody did it yet)
 

Firexploit

Well-Known Member
Newcomer
Joined
Nov 7, 2018
Messages
77
Trophies
0
Location
NintendoSDK
XP
1,121
Country
Germany
I just managed to create my own valid dsi ware tickets! :yaynds:
First I used a regular dsi ware ticket (00030004) from an other dsi as base, then I decrypted it with the other dsi console id, and after that I re encrypted it with the console id from my dsi. System title tickets will not work for regular dsi ware.

Now I just need to copy the tickets into my system memory. Is there any tool which allow nand write access without hardmod?
I wanted to use the tickets, to be able to copy dsiware to sd in data management from system settings and install games to sysnand.
Anyway thank you @Ryccardo and @banjo2 for taking your time to help me.
 

Ryccardo

Penguin accelerator
OP
Member
Joined
Feb 13, 2015
Messages
7,691
Trophies
1
Age
28
Location
Imola
XP
6,913
Country
Italy
Now I just need to copy the tickets into my system memory. Is there any tool which allow nand write access without hardmod?
No(t yet and probably not anytime soon), there are not-well-tested versions of fwtool with restore support, but it's gross overkill for editing files, maybe godmode9i is the best candidate for such a feature
 

3EGaming

Active Member
Newcomer
Joined
Jul 26, 2018
Messages
30
Trophies
0
Website
3egaming.github.io
XP
299
Country
United Kingdom
Yes! i finally got four swords on my dsi. if anyone was trying to use the unofficial 32bit twltool, it doesn't work on decrypting tickets, so just use 64 bit pc.
EDIT:
by the way, if you need a public.sav I've found a way to get one without a 3ds. copy the 00000000.app to you sd card, then using TWiLight menu(https://github.com/DS-Homebrew/TWiLightMenu/releases), attempt to launch it, it will fail but leave 00000000.pub file. rename it to public.sav and you have the save.
 
Last edited by 3EGaming,

Koen22

Member
Newcomer
Joined
Apr 7, 2019
Messages
12
Trophies
0
Age
19
XP
96
Country
Netherlands
Hello, this guide has been very helpful!
In the last I got this all to work but with installing it from my SD card using TWLnf, just having the title.tmd and the .app file. But that was like half a year ago. Recently I became interested again but i can’t seem to install the games anymore, I’ve tried my method and this guide, I’ve even tried reflagging my nand with the DSiWare installed to them. My nand does seem to have the games installed, I checked in melonDS emulator, but on my DSi they’re not showing om my homescreen (launcher).

Does anyone might have a suggestion/solution for me? Thanks in advance!


EDIT: I figured it out! No help needed anymore :)
 
Last edited by Koen22,

Arisotura

rise of melonism
Member
Joined
Dec 5, 2009
Messages
839
Trophies
1
Age
30
Location
center of the Sun
Website
kuribo64.net
XP
2,498
Country
France
well, it would have been nice if you told us how you 'figured it out', 'cause I'm trying to code a DSiware import function into melonDS and I'm running into the same sort of issue -- I'm following this guide and the imported DSiware just does not show up in the menu.
 
  • Like
Reactions: Valery0p

Valery0p

Well-Known Member
Member
Joined
Jan 16, 2017
Messages
560
Trophies
0
XP
1,646
Country
Italy
well, it would have been nice if you told us how you 'figured it out', 'cause I'm trying to code a DSiware import function into melonDS and I'm running into the same sort of issue -- I'm following this guide and the imported DSiware just does not show up in the menu.
Maybe this can be useful
https://github.com/JeffRuLz/TMFH
Also there's this recent thread and they said it worked on melonDs
https://gbatemp.net/threads/dsiware...-you-with-adding-dsiware-to-your-nand.580469/
 

Arisotura

rise of melonism
Member
Joined
Dec 5, 2009
Messages
839
Trophies
1
Age
30
Location
center of the Sun
Website
kuribo64.net
XP
2,498
Country
France
well, thanks!

turns out the DSi menu does check titles' regions. I tried importing a title from the same region as my NAND, and it atleast shows up (it failed to launch, but there are prolly some tidbits to sort out in the import process, like save files and such).

it's weird, though. I mean, when you insert a cart from the wrong region, it does show up, but fails to launch, and melonDS has a very simple hack in place that allows launching carts from any region. I figured it would work the same for installed titles, guess not.

edit- I was wrong about that bit too, guess I'm a tad confused about all the possible failure modes of the DSi launcher :P
 
Last edited by Arisotura,
  • Like
Reactions: Valery0p

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Yes you did originally say grilled