Homebrew ARM9Loader -- Technical Details and Discussion

RednaxelaNnamtra

Well-Known Member
Member
Joined
Dec 8, 2011
Messages
1,208
Trophies
1
XP
3,342
Country
Germany
Works great this version. Splash screen works great with rei mod. I noticed on debug text it says splash not found. So is there a pre cfw launch splash too. What name should it be if there is.
It was a feature the original bootctr had, I think mostly for the delay, but like I said, I have a feature planed, which makes it a bit more usefull.

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

Works great this version. Splash screen works great with rei mod. I noticed on debug text it says splash not found. So is there a pre cfw launch splash too. What name should it be if there is.
You could add reinands splash to bootctr9s config, but I will add some more configurations, especially for the debug output.
 
  • Like
Reactions: Columbo2811

SirByte

Well-Known Member
Member
Joined
Dec 30, 2012
Messages
524
Trophies
1
XP
1,059
Country
Canada
CFG_SYSPROT9 is used to protect the bootloader on all versions, but it also protects the OTP after v2.1.0

If we can assume that the bootloader on early 3DS models is the same as on one of the last o3DS XL, at what point is it set what CFG_SYSPROT9 protects? I thought that was done in hardware. If I look at 3DBrew, there are only 2 bits relevant. Bit 0 protects the bootloader, and bit 1 "is used by NATIVE_FIRM to make sure console-unique TWL AES-keys are only set at hard-boot." That's where my confusion comes from. So the bootloader itself must set b0 before passing control to A9L.
 

Mrrraou

Well-Known Member
Member
Joined
Oct 17, 2015
Messages
1,873
Trophies
0
XP
2,374
Country
France
If we can assume that the bootloader on early 3DS models is the same as on one of the last o3DS XL, at what point is it set what CFG_SYSPROT9 protects? I thought that was done in hardware. If I look at 3DBrew, there are only 2 bits relevant. Bit 0 protects the bootloader, and bit 1 "is used by NATIVE_FIRM to make sure console-unique TWL AES-keys are only set at hard-boot." That's where my confusion comes from. So the bootloader itself must set b0 before passing control to A9L.
The bootROM was never changed (it's the same on N3DS too), and locks itself by writing to CFG_SYSPROT9. If one of these bits is set to 1, then it can't be put back to 0 anymore.
A9L locks OTP, too. You can't dump your OTP from A9LH.
 

Teoz Benny

Well-Known Member
Newcomer
Joined
Jan 9, 2016
Messages
94
Trophies
0
XP
98
Country
To use this bootloader do I have to recompile arm9loaderhax? Sorry if its a silly question

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

Just I downloaded the bootloader above and in the zip is arm9loaderhax.bin and says put it on root of my sd, but my arm9loaderhax.bin is there at the moment and the new one wont contain my otp right?

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

So much changes each day lol i havent been on for a day or 2 and just saw the bootloader and it would be handy so hence my question
 

Mrrraou

Well-Known Member
Member
Joined
Oct 17, 2015
Messages
1,873
Trophies
0
XP
2,374
Country
France
To use this bootloader do I have to recompile arm9loaderhax? Sorry if its a silly question

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

Just I downloaded the bootloader above and in the zip is arm9loaderhax.bin and says put it on root of my sd, but my arm9loaderhax.bin is there at the moment and the new one wont contain my otp right?

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

So much changes each day lol i havent been on for a day or 2 and just saw the bootloader and it would be handy so hence my question
um... arm9loaderhax.bin on your SD card doesn't contain your OTP... it has nothing to do with your OTP...
 

Sachi

Well-Known Member
Member
Joined
Jan 13, 2016
Messages
248
Trophies
0
XP
210
Country
United States
Maybe I will add a generell disable function, but I will try to add a feature, which allows you to select the payload you want to run, while showing the splashscreen. this should work in this way:
While booting it will wait for an input some s/ms(it will be configurable) and if you press a button it will load the splash of the selected application and reset the counter. If you press an other key, with payload configuration, it will change the shown splash screen and again reset the timer. This should allow people to easy correct a wrong pressed button.
I will make it configurable too, so nobody will be forced to use this feature. But first I will clean up the source code a bit more and will try to let the source be more in sync with the normal bootctr source, so maybe fixes to bootctr will be added faster to bootctr9.
I would suggest resetting the timer at the very end of the splash screen by default unless the button is held at the end the splash screen too. For example, if I accidentally boot Decrypt9 when trying to boot default, with your method, there would leave no option to change the boot path the emuNand. With an additional check at the end of the splash screen, if I accidentally hit the Decrypt9 key, I could simply let go of the key during the splash screen. If instead I wanted the boot sysNand, letting go of the Decrypt9 key would not immediately send you to the emuNand path before being able to input the sysNand key since the timer only double checks the input at the end of the splas screen.
 

LombaxTheGreat

Member
Newcomer
Joined
Jan 18, 2016
Messages
10
Trophies
0
Age
27
XP
83
Country
United States
Ok so i have a question(might be stupid). I used tiny format to format my emunand and now my nands are linked again :( Am i able to just format the sysnand and take out my sd card to unlink them?
Just tiny format emuNAND a second time. I had the same issue when downgrading for my OTP and that is what I did.
 

FenrirWolf

Well-Known Member
Member
Joined
Nov 19, 2008
Messages
4,347
Trophies
1
Location
Sandy, UT
XP
615
Country
United States
My nands were linked again too but I did the downgrade anyway and it didn't really matter. Once the process was done I flashed everything back to normal anyway.
 

Lumince

Well-Known Member
Member
Joined
Aug 15, 2015
Messages
2,343
Trophies
1
XP
3,750
Country
United States
Just tiny format emuNAND a second time. I had the same issue when downgrading for my OTP and that is what I did.
Sooooooo im trying to install tinyformat.cia and its acting like i dont have sigs patched?
My nands were linked again too but I did the downgrade anyway and it didn't really matter. Once the process was done I flashed everything back to normal anyway.
So if i downgrade my emunand while its linked to my sysnand it wont brick?
 

FenrirWolf

Well-Known Member
Member
Joined
Nov 19, 2008
Messages
4,347
Trophies
1
Location
Sandy, UT
XP
615
Country
United States
I think you can just run tinyformat from the homebrew launcher.

You will need to get some form of CIA installation on the emunand afterwards though. I had to inject FBI into the H&S app.
 

LombaxTheGreat

Member
Newcomer
Joined
Jan 18, 2016
Messages
10
Trophies
0
Age
27
XP
83
Country
United States
I said screw it and ran mini pasta and installed it and then moved to emunand xD.
I have FBI injected in H&S on sys and emuNAND so I just installed the CIAs. H&S is pointless. It's like the T&S of apple, I just click accept and don't read it.

My nands were linked again too but I did the downgrade anyway and it didn't really matter. Once the process was done I flashed everything back to normal anyway.
That's a bold move my fellow enthusiast. I had to run tinyformat so many times to make sure things were not linked. It's nice that you got away with linked nands though.
 
Last edited by LombaxTheGreat,

Lumince

Well-Known Member
Member
Joined
Aug 15, 2015
Messages
2,343
Trophies
1
XP
3,750
Country
United States
I ran fbi in the HBL and it fails to install... im in emunand and my nands are now unlinked so i must have done something wrong.
 

FenrirWolf

Well-Known Member
Member
Joined
Nov 19, 2008
Messages
4,347
Trophies
1
Location
Sandy, UT
XP
615
Country
United States
That's a bold move my fellow enthusiast. I had to run tinyformat so many times to make sure things were not linked. It's nice that you got away with linked nands though.

By the time you actually get around to doing the downgrade, emunand gets bricked and then you unbrick the emunand backup and flash it to sysnand. So there's never a time where you can actively boot the console with mismatched firmware versions.
 

Teoz Benny

Well-Known Member
Newcomer
Joined
Jan 9, 2016
Messages
94
Trophies
0
XP
98
Country
Im a bit confused with this bootloader :o. Ive put the files on root of my sd and it bòots the bootloader but it just exits and restarts after about 5 seconds witj lots of text flashing so fast i cant see the end of it? Same if I hold R

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

I would like it so i have the normal aureinand button options and this bootloader say on the A button. Like L boots sysnand with sig check. R normal sysnand and no button my emunand and then A button for this bootloader.
 

Aroth

Well-Known Member
Member
Joined
Apr 14, 2015
Messages
2,066
Trophies
0
Age
37
XP
891
Country
United States
ok I managed to get it working on my O3DS, but at this point I am thoroughly confused by the multiple forks/builds of the arm9loader stuff floating around. I coulda swore someone mentioned somehwere that we can load decrypt9 through this already but I sure as hell can't find it. Someone else was talking about versions with the screen being initialized and allowing splash screens?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: @OctoAori20, Cool. Same here.