smealum / ninjhax2.x

source code for 3DS hax 2.x payloads
http://smealum.github.io/3ds/
75 stars 24 forks source link

recovery proof of concept #8

Open dazjo opened 8 years ago

dazjo commented 8 years ago

Since it came up a few times in #3dsdev and other places I got started with porting the built-in updater to the *hax payload itself. Hopefully at the very least this saves someone some time with the more "manual labor" tasks if this ever gets completed.

This currently allows for selecting a target payload version, downloading the payload, and writing it to a file passed through paramblk. This has been tested with hblauncher_loader, though it is designed to also compensate for supermysterychunkhax which has limited savegame space due to a required large sploit file (this could be achieved through OpenSubFile as suggested by yellows8).

Currently the code just enters an infinite loop after completion, the next issue would be updating the currently-running payload with DMA (would this even be feasible?)

This also requires a lot of parameters through paramblk, more than was originally hoped (archive handle because of the need to commit, fs:USER handle because it's required for ControlArchive)

This is an "RFC" I guess, just looking for comments at this stage.

fox8091 commented 8 years ago

How does this work with Cubic Ninja or Ocarina of Time now? As of 11.0, loader strips them of http:c and soc:U.

dazjo commented 8 years ago

Only CN is stripped of those, and CN can't even download its initial payload as a result...

Hardly relates to this.

fox8091 commented 8 years ago

Alright. I was just asking.

dazjo commented 8 years ago

They can't do this for the majority of games, CN didn't actually use http:C in normal gameplay.