Gaming a tool to make converting dsiware from 3ds to dsi easier

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
warnings:
do not edit anything while this is running; its mostly only a poc atm it can have its moments.
the script for the most part is finished but still dont edit anything while its running. thats an obvious nono.
if you mount via ofs dont use the automatic copier. inject 1 title at a time. im unsure why this happens but idk. ofsmount is buggy.
despite my issues it seems that someone else used this successfully with the copy portion (even tho i havent). this is only 1 confirm plz wait for more before you try it unless you know what youre doing and how to unbrick e.e

instructions:
launch gm9 by holding start and selecting it in the chainloader
afterwards goto twln:
press r+a on twln:\title\ or twln:\title\00030004\
select copy to sd:\gm9out\ (sd:\gm9\out\ if youre using the newer build)
shutdown and put your sd card into the pc

get the tmd pack from and extract it to the same directory as everything else
title.tmd files can be downloaded straight from nus ;P

get twtool from:
https://gbatemp.net/threads/release-twltool-dsi-downgrading-save-injection-etc-multitool.393488/
and extract all the files from it with the rest of the stuff (everything is on root. yea. might change in the future)

dump your dsi nand (i wont cover this)
decrypt your dsi nand (also wont cover it)
mount your dsi nand (i could cover this but eh.)
decrypt any ticket from your mounted nand (also wont be covering it)
for above items see: https://gbatemp.net/threads/photo-g...backups-on-real-hardware-and-emulator.476817/

run start.bat and have fun. once its finished any titles that tmd files werent found for will be stored in .\error\
titles that sha-1 didnt match the one contained in the downloaded title.tmd are stored in .\risky\ for manual install.
you can now copy .\title\ to dsi nand

after this you can reencrypt your tickets and nand and restore to dsi

thanks to @Larsenv for the .py files. if it werent for those this project wouldve never been finished.

the project can now copy things to nand without worrying about space restrain. it will now not copy if theres not enough room for it ;P

included within the archive is an encrypt.bat simply change the drive letter to your nand mount and the long string to your console id

just to make things *extra* clear. you dont do this on the 3ds you only dump the folders to sd with 3ds. everything is done on dsi.
 

Attachments

  • start.zip
    436.3 KB · Views: 603
Last edited by MarioMasta64,

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
theres a guide that exists (one i linked) that shows you how to do this. i was too lazy to edit like 48 files tho. so i decided to make this. most of the more needed stuff was made by larsenv (hex editing with python and stuff) i just made some batch stuff.
 

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
seems i forogt a think. i forgot to put the ticket files into their title-id high folders. will update post with this implemented.

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

updated archive with folder tickets:

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

seems i forogt a think. i forgot to put the ticket files into their title-id high folders. will update post with this implemented.

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

updated archive with folder tickets:
i need to put in a create folder thingy
 

Attachments

  • start.zip
    2.9 KB · Views: 269

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
Oh, I meant, which one of 2 vs 3? or any of the two doesn't matter? :)
2 should work. however this was made with 3 in mind (all that was done was parenthesis were added so it should be fine with 2)

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

code change: tickets are now stored in their proper directories

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

just got done injecting these into my nand. gonna test it with no$gba and post results.
 

Attachments

  • start.zip
    2.9 KB · Views: 235
  • Like
Reactions: Ryccardo

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
can some dsiware titles just not be installed onto a dsi?

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

some titles tend to freeze up the emulator if installed.
 

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
okay nvm i just had the wrong firmware files. so yea this works as far as ive tested.

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

btw i forgot to mention. you still have to manually reencrypt the tickets.

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

welp. some dsi titles cant be copied like this. so the whole purpose of this is defeated.

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

if anyone could tell me which things cant be copied maybe i could fix this.
 

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
heres my specific question that i need answered:
if a ticket is invalid and a dsi app is installed. will it boot to "an error has occured" or just not show the title
im asking that not if a ticket doesnt exist. but if its invalid.
say if theres 1 byte too short or if a value was put in a different place.
 
Last edited by MarioMasta64,

Trumpasaurus

Well-Known Member
Member
Joined
Jul 8, 2017
Messages
168
Trophies
0
Age
32
XP
162
Country
United States
heres my specific question that i need answered:
if a ticket is invalid and a dsi app is installed. will it boot to "an error has occured" or just not show the title
im asking that not if a ticket doesnt exist. but if its invalid.
say if theres 1 byte too short or if a value was put in a different place.
If you have CFW, the game will work. You have to check the compatibility list though. Not all games will work. Honestly? It's not worth it to play most DS games on the 3DS via TWLoader. They've made tremendous progress with it, but unfortunately stupid Nintendo designed it so its limited to that NAND. It's so unstable. I ended up buying a R4 from that site that advertises here. Kek. I guess ads work.
 
  • Like
Reactions: MarioMasta64

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
okay one step closer: https://cdn.discordapp.com/attachments/246367059389317120/344267825868701706/image.png
it boots now. no "an error has occured" turns out i forgot to reencrypt the tickets as per my own instructions lol.
however. the injected titles still arent showing up. im working on this now.

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

If you have CFW, the game will work. You have to check the compatibility list though. Not all games will work. Honestly? It's not worth it to play most DS games on the 3DS via TWLoader. They've made tremendous progress with it, but unfortunately stupid Nintendo designed it so its limited to that NAND. It's so unstable. I ended up buying a R4 from that site that advertises here. Kek. I guess ads work.
yea no. thats not what im doing. this is something to transfer dsiware from 3ds to dsi.
 

Trumpasaurus

Well-Known Member
Member
Joined
Jul 8, 2017
Messages
168
Trophies
0
Age
32
XP
162
Country
United States
okay one step closer: https://cdn.discordapp.com/attachments/246367059389317120/344267825868701706/image.png
it boots now. no "an error has occured" turns out i forgot to reencrypt the tickets as per my own instructions lol.
however. the injected titles still arent showing up. im working on this now.

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


yea no. thats not what im doing. this is something to transfer dsiware from 3ds to dsi.

Kudos to you if you can make it work. The file systems are completely different, so it's tough to get them running right unless they sit down and comb out the issues. Otherwise, Nintendo would have just released all DS games on the eshop (aside from the rights-related issues). It would have made them a lot more money.

But it's kind of like XBox One's backwards compatibility program. It's possible to get stuff running, but software engineers just have to get the kinks worked out. And that takes time and time is money.
It still would have been amazing to have all DS games released for 3DS. I wonder how much more money they would have made?
 
  • Like
Reactions: MarioMasta64

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
Kudos to you if you can make it work. The file systems are completely different, so it's tough to get them running right unless they sit down and comb out the issues. Otherwise, Nintendo would have just released all DS games on the eshop (aside from the rights-related issues). It would have made them a lot more money.

But it's kind of like XBox One's backwards compatibility program. It's possible to get stuff running, but software engineers just have to get the kinks worked out. And that takes time and time is money.
It still would have been amazing to have all DS games released for 3DS. I wonder how much more money they would have made?
im pretty sure i found the problem:
upload_2017-8-7_20-7-59.png

being the multiple .app files
 

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
working on making it first delete the .app store for dsiware in nand and then copy the files. that way multiple .app files wont exist.
 

MarioMasta64

hi. i make batch stuff and portable shiz
OP
Member
Joined
Dec 21, 2016
Messages
2,297
Trophies
0
Age
26
Website
github.com
XP
2,096
Country
United States
the .app files were corrupt:
progress is being made and fast:
upload_2017-8-7_21-57-44.png

now i just need to figure out how much space is free so i can know how much i can copy

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

because if too much is copied "an error has occured" happens. this shouldnt be too hard tho. i might add in a selection thing too.

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

heres an updated archive if you wish to test it out. (id reccomend against using it to install the files to nand after its done as xcopy ignores filesize limits) also if you would like to inject your tickets heres a script to make encrypting faster:
Code:
@echo off
cls
Color 0A
title encrypt tickets

cd ticket
for /D %%A IN ("*") DO (
  cd %%A
    for /F %%B IN ('dir /b *.tik') DO (
      :: change to your console id
      ..\..\twltool syscrypt --consoleid <console id> --in %%B --out <drive letter of dsi nand mount>:\ticket\%%A\%%B --encrypt
    )
  )
  cd ..
)
cd ..
pause

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

place this file as <any name>.bat in the same folder as everything else

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

also thank you @Robz8 for sitting with me and helping me find out the things i was doing wrong and the things i was doing right. if it werent for you answering my questions this wouldve taken weeks and i wouldve probably given up.
 

Attachments

  • start.zip
    3.6 KB · Views: 275

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    rvtr @ rvtr: Spam bots again.