Homebrew Official [Release] GodMode9 - All Access File Browser for the 3DS

  • Thread starter d0k3
  • Start date
  • Views 305,339
  • Replies 1,143
  • Likes 105

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Hey, I signed up for gbatemp so I could post about finding a bug on GodMode9 v1.5.0. I tried signing up at GitHub to file an issue there, but my account got instant banned for trying to use a disposable e-mail. Whoops, lol.

I was following the guide.3ds instructions to do a fresh install of Luma3DS v9.0, boot9strap v1.3, etc. on a New 3DS (original). Using the latest GodMode9 under emuNAND, all the .3ds files converted and built into .cia format causes the file sizes to double to the nearest 256 MB size.

After some 12 hours of conversion and then hopping over to FBI v2.4.14, none of the .cia batch files would install. I originally thought the problem was due to needing to update my title keys (I’m still fuzzing about this subject) after using TIKDevil, freeshop, Decrypt9WIP, but this problem still persisted.

The problem was recreate-able on a second, older CFWed N3DSXL that I own when it was updated to the latest GodMode9/Luma 3DS/boot9strap. When I reinstalled GodMode9 v1.4.3, CIA test building several .3ds files went back to outputting the correct trim sized .cia files that are installable on FBI.

Not to wish that there is a bug in your program because GodMode9 is damn mighty awesome and perfect in pretty much every conceivable aspect at this point user-friendly and programming wise, but I do hope I get my name added in your shout out. :D
Ugh, what does 2018 bring? It's bugs, bugs and more bugs. The problem should be fixed here, testing is appreciated:
https://f.secretalgorithm.com/10I4BJ/godmode9-v1.5.0-3-g0dd72ceb-20180101214052.zip

@d0k3 @SirNapkin1334 was asking me to make my mod autoboot into itself if no payload is found so i did this
works perfectly and has no build errors or warnings
ive gone and tested it entirely and it doesnt cause any problems
do you think its somewhat worthy of being in GodMode9?
Code:
         if (IsBootableFirm(firm_in_mem, FIRM_MAX_SIZE)) BootFirm(firm_in_mem, "sdmc:/bootonce.firm");
         for (u32 i = 0; i < sizeof(bootfirm_paths) / sizeof(char*); i++) {
             BootFirmHandler(bootfirm_paths[i], false, (BOOTFIRM_TEMPS >> i) & 0x1);
        if (bootloader) {//Megumin is the best girl!
            godmode9 = true;//~Eix
        }
https://github.com/eiiiiix/EixMode9...20#diff-4cade01509e33489192816bc32e95712R1951
I'll look into it.
 
Joined
Jan 1, 2018
Messages
7,292
Trophies
2
XP
5,942
Country
United States
Ugh, what does 2018 bring? It's bugs, bugs and more bugs. The problem should be fixed here, testing is appreciated:
https://f.secretalgorithm.com/10I4BJ/godmode9-v1.5.0-3-g0dd72ceb-20180101214052.zip

From 3DS to CIA to game play, tested on N3DSXL with 3D Roads of Anger II and Iron Swimmer. :yay:

Okay, bug is fixed, get your release from the usual place:
https://github.com/d0k3/GodMode9/releases

Same as above process but with this release, tested on the 2nd N3DS with Star Vulpes 4³ IIID. :yaynds:
 

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
Yes, @d0k3, I can confirm newest release/commit builds CIA's correctly. (Tested on N2DSXL) Also, perhaps you should get a GM9 discord server. That'd be pretty cool. PabloMK7 has one for CTGP-7.
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Yes, @d0k3, I can confirm newest release/commit builds CIA's correctly. (Tested on N2DSXL) Also, perhaps you should get a GM9 discord server. That'd be pretty cool. PabloMK7 has one for CTGP-7.
A channel reserved for GodMode9 discussion? Not a bad idea. I chose IRC though.

You can join in at #GodMode9 on freenode. If you don't have a dedicated IRC client, use the webchat at http://webchat.freenode.net/
 
  • Like
Reactions: SirNapkin1334

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
Okay, @d0k3, I've got a big suggestion. It's got two parts. First is, allow people to browse through their partitions while an operation is happening. If, say, you're making a NAND backup, we should be allowed to look through the directories while it's working away. Perhaps we could even be able to view files in the Text/Hexediter, but not necessarily edit, all while the process is happening on the bottom screen. Or, make it not as obvious by allowing you to have an operation in one pane, and be able to browse in another. And the other idea is: operation caching. This would be more complicated to implement, but would be very useful. Basically, using the browse function from earlier, be able to add an operation to happen after the current one finishes. Or, tie everything together with an operations menu, which you can open from anywhere with a key combo, perhaps R + SELECT. This displays all active and future/cached operations, and starting an operation would add it to the list. Perhaps with a bit of working, you could allow us to rearrange operations, or at least rearrange operations that haven't started yet. This would be an amazing addition, which would definitely make GodMode9 much better, in my opinion. If the caching/menu is too complicated, at the very least allow us to do the first thing I mentioned, browsing while an operation is working away. Don't forget to remove the option to eject an SD card! Also, in this case, operation also means script, or basically anything else that involves a progress bar, be it moving a file or dumping something.
 

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
@d0k3 Actually, I also have another idea. You should merge SafeB9SInstaller into GM9. Then, you could simply boot GM9 via an exploit of your choice, and install it. It would also allow easy updating of Boot9Strap, you would simply boot GM9, go to HOME -> More... -> Install/Update B9S, then it would go to a screen similar to SafeB9SInstaller and install B9S from the /boot9strap/ folder. It would eliminate the need for an extra app, making GM9 even more the Ultimate 3DS tool. You could set the option to have it automatically prompt to install Boot9Strap if Sighax/B9S/GM9 Bootloader is not detected. Just an idea.
 

windows_server_2003

Well-Known Member
Newcomer
Joined
Jul 13, 2017
Messages
84
Trophies
0
Age
44
XP
379
Country
Japan
Okay, @d0k3, I've got a big suggestion. It's got two parts. First is, allow people to browse through their partitions while an operation is happening. If, say, you're making a NAND backup, we should be allowed to look through the directories while it's working away. Perhaps we could even be able to view files in the Text/Hexediter, but not necessarily edit, all while the process is happening on the bottom screen. Or, make it not as obvious by allowing you to have an operation in one pane, and be able to browse in another. And the other idea is: operation caching. This would be more complicated to implement, but would be very useful. Basically, using the browse function from earlier, be able to add an operation to happen after the current one finishes. Or, tie everything together with an operations menu, which you can open from anywhere with a key combo, perhaps R + SELECT. This displays all active and future/cached operations, and starting an operation would add it to the list. Perhaps with a bit of working, you could allow us to rearrange operations, or at least rearrange operations that haven't started yet. This would be an amazing addition, which would definitely make GodMode9 much better, in my opinion. If the caching/menu is too complicated, at the very least allow us to do the first thing I mentioned, browsing while an operation is working away. Don't forget to remove the option to eject an SD card! Also, in this case, operation also means script, or basically anything else that involves a progress bar, be it moving a file or dumping something.
I agree it's great, but difficult to add.
Multi thread(file operations/browsing dirs) is more complicated than you think.
It means do each operations in very small time again and again like this :

Browsing = wait input and change cursor position and if A pressed, enter the dir and....
| Copying | Browsing | Copying | Browsing | Copying |............
0   0.01    0.02   0.03   0.04   0.05.........


@d0k3 Actually, I also have another idea. You should merge SafeB9SInstaller into GM9. Then, you could simply boot GM9 via an exploit of your choice, and install it. It would also allow easy updating of Boot9Strap, you would simply boot GM9, go to HOME -> More... -> Install/Update B9S, then it would go to a screen similar to SafeB9SInstaller and install B9S from the /boot9strap/ folder. It would eliminate the need for an extra app, making GM9 even more the Ultimate 3DS tool. You could set the option to have it automatically prompt to install Boot9Strap if Sighax/B9S/GM9 Bootloader is not detected. Just an idea.
The script feature is for that. You can just select "scripts..." and select a script to overwrite f0 and f1 with /boot9strap/boot9strap.firm. The red unlock sequence is the warning.
And HOME menu shortcut feature is nice - Move scripts in /gm9/scripts/shortcuts/ to the root of the HOME.
 
Last edited by windows_server_2003,

Wolfvak

nyaa~
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,386
Country
Uruguay
Okay, @d0k3, I've got a big suggestion. It's got two parts. First is, allow people to browse through their partitions while an operation is happening. If, say, you're making a NAND backup, we should be allowed to look through the directories while it's working away. Perhaps we could even be able to view files in the Text/Hexediter, but not necessarily edit, all while the process is happening on the bottom screen. Or, make it not as obvious by allowing you to have an operation in one pane, and be able to browse in another. And the other idea is: operation caching. This would be more complicated to implement, but would be very useful. Basically, using the browse function from earlier, be able to add an operation to happen after the current one finishes. Or, tie everything together with an operations menu, which you can open from anywhere with a key combo, perhaps R + SELECT. This displays all active and future/cached operations, and starting an operation would add it to the list. Perhaps with a bit of working, you could allow us to rearrange operations, or at least rearrange operations that haven't started yet. This would be an amazing addition, which would definitely make GodMode9 much better, in my opinion. If the caching/menu is too complicated, at the very least allow us to do the first thing I mentioned, browsing while an operation is working away. Don't forget to remove the option to eject an SD card! Also, in this case, operation also means script, or basically anything else that involves a progress bar, be it moving a file or dumping something.
This is not doable simply due to how GM9 works, it's not a multithreaded/multitasked operating system, it barely counts as a nanokernel as it is right now.

@d0k3 Actually, I also have another idea. You should merge SafeB9SInstaller into GM9. Then, you could simply boot GM9 via an exploit of your choice, and install it. It would also allow easy updating of Boot9Strap, you would simply boot GM9, go to HOME -> More... -> Install/Update B9S, then it would go to a screen similar to SafeB9SInstaller and install B9S from the /boot9strap/ folder. It would eliminate the need for an extra app, making GM9 even more the Ultimate 3DS tool. You could set the option to have it automatically prompt to install Boot9Strap if Sighax/B9S/GM9 Bootloader is not detected. Just an idea.

First, I think SB9SI has been deprecated in favor of OFI.

Second, GM9 can't boot from older entrypoints unlike OFI, and having the same functionality in both GM9 and OFI seems a bit redundant and sounds like maintenance hell in the case a bug is found in either of them.
 

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
This is not doable simply due to how GM9 works, it's not a multithreaded/multitasked operating system, it barely counts as a nanokernel as it is right now.



First, I think SB9SI has been deprecated in favor of OFI.

Second, GM9 can't boot from older entrypoints unlike OFI, and having the same functionality in both GM9 and OFI seems a bit redundant and sounds like maintenance hell in the case a bug is found in either of them.
Please tell me what OFI is again?
 

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
I see. So, it basically does the exact same but it also supports FastBoot. I hope it'll support installing GM9 to a firm partition.
About Sighax...all it involves is installing a specially signed hax firm to firm0/1? I thought B9S booted earlier than that?

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

Can arm11 payloads use wireless? Will we ever see an FTP client implemented into GodMode9?
 

Wolfvak

nyaa~
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,386
Country
Uruguay
I see. So, it basically does the exact same but it also supports FastBoot. I hope it'll support installing GM9 to a firm partition.
About Sighax...all it involves is installing a specially signed hax firm to firm0/1? I thought B9S booted earlier than that?

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

Can arm11 payloads use wireless? Will we ever see an FTP client implemented into GodMode9?
Well, yes and no. All it takes is that special signature, but not all FIRMs must be designed to boot from FIRM partition (OFI itself is a great example). The only reason B9S and FB3DS are the only ones "supported" right now is because they're the only ones which are designed to boot from the BootROM, have the capability to boot other FIRMs, we're written by well known developers *and* have some sort of unique identifier.

In the case of B9S, you can check for the NDMA/DAbort sections, and in the case of FB3DS, you can verify the signature (all FB3DS releases are signed with a private key only the devs have).

Devs are encouraged to add their own, if they fullfil the requirements.

As for the wireless thing from ARM11, it's theoretically possible but we don't know how yet.
And no, I doubt it's possible to integrate any networking to GM9, at least in it's current, non-preemptive state.
 

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
Well, yes and no. All it takes is that special signature, but not all FIRMs must be designed to boot from FIRM partition (OFI itself is a great example). The only reason B9S and FB3DS are the only ones "supported" right now is because they're the only ones which are designed to boot from the BootROM, have the capability to boot other FIRMs, we're written by well known developers *and* have some sort of unique identifier.

In the case of B9S, you can check for the NDMA/DAbort sections, and in the case of FB3DS, you can verify the signature (all FB3DS releases are signed with a private key only the devs have).

Devs are encouraged to add their own, if they fullfil the requirements.

As for the wireless thing from ARM11, it's theoretically possible but we don't know how yet.
And no, I doubt it's possible to integrate any networking to GM9, at least in it's current, non-preemptive state.
I see.
That's too bad, because an FTP client in GM9 would be awesome, as well as the ability to connect to other 3DS systems and view their files.
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Does anyone know why I can't unmount my SD card? R+A works but not R+B

That's pretty weird... some malfunction in your buttons maybe (maybe they get detected twice?). You can try one thing that's normally not recommended. Simply pull the SD card out. Don't do any writing operations before that (and also not while you're taking the SD out, of course). What happens if you try that?
 
Last edited by d0k3,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Sicklyboy @ Sicklyboy:
    maaaaan that's so awesome but I also don't want to fork over a hundo for it
  • Veho @ Veho:
    The fuuuuu---
  • Veho @ Veho:
    I thought it was an actual xBox at that price.
  • Sicklyboy @ Sicklyboy:
    I wanna grab a 360 Slim and a 360 E one of these days. Missed the boat of getting them at their lowest though, once they were discontinued. Could've got them for cheap back when I was a broke 20 something working at Target, but then again, I was a broke 20 something working at Target
  • Veho @ Veho:
    Being broke is no fun.
  • K3Nv2 @ K3Nv2:
    @Sicklyboy, $150 isn't that bad for a jtag slim on ebay
  • Veho @ Veho:
    I only wish it was actually playable.
  • Veho @ Veho:
    There's a guy on the Tube of You that makes playable mechanical arcade games out of Lego. This could work on the same principle.
  • Veho @ Veho:
    Just a couple of guys taking their manatee out for some fresh air, why you have to molest them?
  • Veho @ Veho:
    Stupid Chinese shop switched their shipping company and this one is slooooooow.
  • LeoTCK @ LeoTCK:
    STOP BUYING CHINESE CRAP THEN
  • LeoTCK @ LeoTCK:
    SUPPORT LOCAL PRODUCTS, MAKE REVOLUTION
  • LeoTCK @ LeoTCK:
    THEY KEEP REMOVING LOCAL SHIt AND REPLACING WItH INFERIOR CHINESE CRAP
  • LeoTCK @ LeoTCK:
    THATS WHY MY PARTNER CANT GET A GOOTWEAR HIS SIZE ANYMORE
  • LeoTCK @ LeoTCK:
    HE HAS BIG FOOT AND BIG DUCK
  • LeoTCK @ LeoTCK:
    d*ck i mean*
  • LeoTCK @ LeoTCK:
    lol
  • Veho @ Veho:
    Mkay.
  • Veho @ Veho:
    I just ordered another package from China just to spite you.
  • SylverReZ @ SylverReZ:
    Leo could not withstand communism.
  • SylverReZ @ SylverReZ:
    Its OUR products to begin with lol.
    SylverReZ @ SylverReZ: Its OUR products to begin with lol.