d0k3 / GodMode9

GodMode9 Explorer - A full access file browser for the Nintendo 3DS console :godmode:
GNU General Public License v3.0
2.12k stars 191 forks source link

[FEATURE REQUEST] Tool to create cia fowarders for NDS ROMs #646

Closed linusrg1 closed 3 years ago

linusrg1 commented 3 years ago

Got a great idea on how to improve GodMode9? That's always appreciated. Please make sure you add all the required info here. A tool that allowes nds roms to be turned into cias. Describe the feature you'd like Add a clear and concise description of what you want to happen. It would allow you to turn nds games into installable cias so you could run them from the 3ds home menu. As I know some people would like the convenience of doing this. Over having to run twilight menu++. If possible, the script could also have the ability to connect to the internet to grab the latest ndsbootstrap to inject into the frontend cia for the nds file. Describe alternatives you've considered Add a clear and concise description of any alternative solutions or features you've considered. I forget the name of it, but there is a javascript program that allows you to do just this, but I thought it would be convenient to be able to do it straight from your 3ds, for things like nds cart dumps.

d0k3 commented 3 years ago

While this is a good idea, I have thought about it in the past (also for GBA and other consoles via emulation) and I gave up on the idea. Forwarders are pretty complicated stuff and there's lots you can do wrong.

Take note: (1) NDS cart dumps (which I'm assuming you refer to) are different from DSiWare .nds files, which can already be turned into CIAs and/or directly installed to the system. (2) GM9 has no wifi access, so there will be no included updater or anything like that.

I'd be willing to take a second look at this thing if you do the legwork. That means, find out which is the best tool to create NDS forwarders, and what has to done on 3DS side to make those forwarders work (NDS bootstrap?) and write your findings here.

Just know that I can't guarantee this will actually lead somewhere (it may still be too complex). Keeping this open, waiting for a reply @linusrg1.

linusrg1 commented 3 years ago

This one here has always been really good. https://gbatemp.net/threads/nds-forwarder-cias-for-your-home-menu.426174/ As for the 3ds side all that need to be done is to install the generated CIA. Which GM9 can now do obviously. Im not sure how easy it would be to convert a jar to a gm9 script. I also couldnt find where robz linked to the source code, so if thats needed you may have to ask him.

I am no good with coding, so cant help there. And sry for the late reply.

d0k3 commented 3 years ago

Okay, I checked it out. A few of the biggest problems with this:

  1. DS images usually have some kind of AP protection and need an IPS patch to fix that. Twilight fixes this by, you guessed it, providing hundreds of AP fix IPS patches.
  2. DS images come with only a small icon. No nice banner, no 3DS sized icon. Not even the game title is included in full. Software like the one you showed me solve this by allowing the user to customize stuff.
  3. You may already know, but ndsbootstrap is basically a hack and still has issues with certain games. There's a reason DS titles were never available in the 3DS eShop.
  4. We already got TWiLightMenu which does everything better than GM9 ever could. It even allows to boot right into your last game.

In short: creating DS forwarders is out of scope for GM9. It would be a pretty big separate project. As much as I'd like to see something like this in GM9, I have to decline this feature request.