Homebrew [Release] TRICK - Frontend for 4.X CFW with customizable boot options

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,984
Country
Italy
Here is another (and probably the last) mod of mine on the Palantine CFW.

The name TRICK is how my 6 years old calls the CFW, and since she was the one that asked me to put a Hello Kitty image on the screen during boot, I called this work with the name she likes.

In the attached file you can find an alternate launcher.dat file you can use to run the CFW. The full source code is also included.

Features:
- Splash image on top screen (to enjoy your kids).
- Autoboot of default option (Press L or R to stop countdown and enter menu)
- From menu you can select to boot Emunand, Sysnand (like PBT-CFW) or second emunand. You can also enter the options configuration screen or go back to home menu without running the CFW

Configurable Options:
- you can select from 4 available images for the top screen. Included in the source there are the tools to make your own custom image
- you can select to automatically boot (after a small delay) in you preferred mode, or to disable auto boot at startup and show the menu
- you can select the delay form 0 to 7 seconds (with 0 seconds, it's like the old style CFW, but if you run it with L or R key pressed, you enter in the menu)
- you can enable or disable the second emunand boot option
- for experienced users, if the second emunand is enabled, you can configure the starting sector on SD of the second NAND image. If you are one of the few persons that has multiple emunands, you can easily change the value on the fly to boot your third or fourth emunand (much easier than swapping the launcher.dat)

Installation:

Copy the content of the file attached on the SD (but the source folder). If you want to mantain your old CFW you can rename the old launcher.dat in MsetForBoss.dat and use it with changing the boot option in the DS profile hack (ask in the forum if you don't know how yo do this).

This launcher.dat dosn't use the arm9_code.bin.

You can use the original boot.bin from palantine release, or the modified one included, but you have to put it in the TRICK folder. You can't use the PBT-CFW version.

If you use the original boot.bin the arm11_code.bin has to be in the root folder, if you use the boot.bin file included, it load a renamed version of the same file from the TRICK folder (also included).

The background images are in the TRICK folders and are BGR raw bitmap images (they are loaded directly in the framebuffers). You can't rename them, but you can substitute them with your favourite images. To make your background, create a 400x240 image, save it in your preferred format and drag the file on the makebgr.bat you can find in the source/resources subfolder. The conversion is made with the convert.exe tool of the imagemagik package, you need to have it in your path or you can download and put the portable 16bit version (for windows users) in the resource folder.

The emunand setup and the dev menu installation are the same of Palantine CFW. I was working on some mods, but now are lost.

The framework and the libraries utilized as base for the launcher.dat are fron Xerpi (https://bitbucket.org/xerpi), I used it because the code is very clean, but also because my 3DS and my laptop (with all my source code) where stolen from my car last week, so I decided to make it again from scratch this week end and release it. I lost a lot of work so starting from a good base was a big help.

Every feedback is welcome.

Enjoy.

PS: I din't test the dev menu installation. let me know if something doesn't work.
 

Attachments

  • TRICK.zip
    1.2 MB · Views: 2,057

DarkMatterCore

I like turtles.
Developer
Joined
May 30, 2009
Messages
1,288
Trophies
0
Age
27
Location
Madrid, Spain
Website
github.com
XP
2,497
Country
Spain
This is *sick*. Gonna test it right away.

EDIT: Works perfectly fine with both the first and second RedNANDs, and in PBT Mode. And the customizable sector number idea is just great, though I guess you could also assign more buttons for additional NANDs. These are the values my 3ds-multinand tool works with when setting the third/fourth RedNAND:

Third RedNAND: 00400001.
Fourth RedNAND: 00600001.

Even so, this is great. I'll most certainly mess around with this a lot. :lol:
 

pastaconsumer

Well-Known Member
Member
Joined
Oct 12, 2014
Messages
970
Trophies
1
XP
2,306
Country
United States
I've run into a few problems (that I'm sure are probably my fault).
  1. My 9.7 NOT CFW EmuNAND doesn't load
  2. My 4.5 CFW EmuNAND doesn't load
  3. My badass splash picture doesn't show up
  4. SysNAND without sign check doesn't load
halp pls
 

mid-kid

GBAtemp spamBOT
Member
Joined
Aug 2, 2012
Messages
879
Trophies
0
Age
24
XP
1,152
Country
Holy shit, this is awesome.
Screw switching between 3 different files, now.

EDIT:
Code:
suicide:
    svc 0x09
    b suicide
Hehe.

EDIT2:

This frontend loads the boot.bin (which is probably modified to change the path of code.bin) in memory, modifies the file in memory, to apply whatever changes you specified in the GUI, and jumps there.
Which is a neat TRICK right there.

EDIT3: Just noticed the pun.
 
  • Like
Reactions: DarkMatterCore

DarkMatterCore

I like turtles.
Developer
Joined
May 30, 2009
Messages
1,288
Trophies
0
Age
27
Location
Madrid, Spain
Website
github.com
XP
2,497
Country
Spain
I've run into a few problems (that I'm sure are probably my fault).
  1. My 9.7 NOT CFW EmuNAND doesn't load
  2. My 4.5 CFW EmuNAND doesn't load
  3. My badass splash picture doesn't show up
  4. SysNAND without sign check doesn't load
halp pls

Only 4.X **RedNANDs** are going to load. If you write your 4.X NAND dump to the SD card as an EmuNAND, it won't boot up. This has been stated a few times already, but the difference is the order in which the data gets written to the SD card.

You can quickly convert an EmuNAND to a RedNAND using my 3DS Multi EmuNAND Tool:

Code:
If you're using an SD card with a single 4.X EmuNAND (also valid if you're using two EmuNANDs with the same SD card and the first one is the 4.X one):
 
3ds-multinand -old -1 -o 4.X_EmuNAND.bin
3ds-multinand -old -1 -cfw 4.X_EmuNAND.bin
 
 
If you're using two EmuNANDs and the second one is the 4.X one:
 
3ds-multinand -old -2 -o 4.X_EmuNAND.bin
3ds-multinand -old -2 -cfw 4.X_EmuNAND.bin

Hope that helps.
 
  • Like
Reactions: Margen67

mid-kid

GBAtemp spamBOT
Member
Joined
Aug 2, 2012
Messages
879
Trophies
0
Age
24
XP
1,152
Country
this is real nice, if only one of the options was roxas firmware so one could be 4.5 and one could be 9.7

Uhm. You can either use 2 separate SD cards, or I've already had a dual emuNAND setup for (a linked) CFW (so I can extract saves, install legit CIAs, and change the theme) and rxMode for a long while. Just reinstall MSET or use the browser for rxMode.
 

Tieracloud

Active Member
Newcomer
Joined
Apr 26, 2015
Messages
35
Trophies
0
Age
55
XP
91
Country
United States
I use the dual boot cfw/emunand steps before this came out. I am able to boot both palatine cfw and mt emunand by using the rop installer and changing the launcher. So for this 2nd emunand for this tool am I able to use the menu to switch between cfw and gateway without using the ds flashcard to install a different rop?
 

jefffisher

Well-Known Member
Member
Joined
Dec 17, 2006
Messages
1,622
Trophies
0
XP
1,667
Country
United States
Uhm. You can either use 2 separate SD cards, or I've already had a dual emuNAND setup for (a linked) CFW (so I can extract saves, install legit CIAs, and change the theme) and rxMode for a long while. Just reinstall MSET or use the browser for rxMode.
yeah but this is the first time i've seen the ability to have two separate emunands on one sd card nobody wants to carry around an extra sd card if it can be avoided
 

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
22,130
Trophies
3
Location
Space
XP
11,473
Country
Norway
Nice work, is this more stable than the old Palantine CFW or is it still the same?

yeah but this is the first time i've seen the ability to have two separate emunands on one sd card nobody wants to carry around an extra sd card if it can be avoided

The ability has been there for a while, but until now you needed to replace the launcher.dat to switch to the other emuNAND.
 
  • Like
Reactions: Margen67

Luckkill4u

4 guys in a car ( ͡° ͜ʖ ͡°)
Member
Joined
Jul 13, 2008
Messages
1,027
Trophies
0
Age
29
Location
Insomnia
Website
www.gbatemp.net
XP
1,064
Country
Canada
Well I can't get this to work on my o3DS 4.2fw. Palantine CFW works perfectly but the TRICK CFW launcher.dat won't boot on DS Profile exploit. It just brings me back to sysnand homescreen and reboots.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,984
Country
Italy
Well I can't get this to work on my o3DS 4.2fw. Palantine CFW works perfectly but the TRICK CFW launcher.dat won't boot on DS Profile exploit. It just brings me back to sysnand homescreen and reboots.

Probably you're using the wrong loader.

I'm using the one without encryption because I don't use gateway (and I'll never do because i can't forgive them for intentionally releasing bricking code) .

If you want to use the one with the GW encryption, rename the launcher_GW.dat file in the package in launcher.dat and put it in your SD root.
 
  • Like
Reactions: Margen67

Tieracloud

Active Member
Newcomer
Joined
Apr 26, 2015
Messages
35
Trophies
0
Age
55
XP
91
Country
United States
Probably you're using the wrong loader.

I'm using the one without encryption because I don't use gateway (and I'll never do because i can't forgive them for intentionally releasing bricking code) .

If you want to use the one with the GW encryption, rename the launcher_GW.dat file in the package in launcher.dat and put it in your SD root.

So is the 2nd emunand can it be GW, MT or even RX tools? Or is it on a multiemunand that all has to be cfw 4.5? Still don't get what is the difference between this and the dual emunand setup tutorial.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
2,984
Country
Italy
So is the 2nd emunand can it be GW, MT or even RX tools? Or is it on a multiemunand that all has to be cfw 4.5? Still don't get what is the difference between this and the dual emunand setup tutorial.

No difference with dual emunand or PBT-CFW. It's only a front end that can avoid swapping files on SD.

If you ever change your mind and find free time can you restart fixing the boot bin?

I already started to write a commented version of the boot.bin decompilation, and probably I will release it so someone else can try to fix the code.

But probably it's woth to follow a different way, like using the newer firmlaunch code (that you can find on Roxas github) instead of the old one used in the CFW or in the fist version of GW code. It should be easy to insert it in this launcher.

Everything is already out there, we miss only good coders (I'm not a good coder as you can understand reading my code :P and have very few time)

At the moment I don't have anymore a 3DS for coding and my child don't want I use theirs too often :cry:.

Maybe if I find a used 3DSXL with 4.x Fw at good price, I could buy it and play a little more with this CFW. My idea was to add an option to setup the emunand from the 3DS, like the GW SW does, with the option to select between GW and CFW emunand format, emunand extraction and injection, second emunand setup, partition resizing without loosing SD content. Nothing difficoult to do with low level SD libs you can find in rxTools source code.
 
  • Like
Reactions: Margen67

pikatsu

Well-Known Member
Member
Joined
Apr 16, 2014
Messages
834
Trophies
0
Age
37
XP
1,063
Country
Argentina
No difference with dual emunand or PBT-CFW. It's only a front end that can avoid swapping files on SD.



I already started to write a commented version of the boot.bin decompilation, and probably I will release it so someone else can try to fix the code.

But probably it's woth to follow a different way, like using the newer firmlaunch code (that you can find on Roxas github) instead of the old one used in the CFW or in the fist version of GW code. It should be easy to insert it in this launcher.

Everything is already out there, we miss only good coders (I'm not a good coder as you can understand reading my code :P and have very few time)

At the moment I don't have anymore a 3DS for coding and my child don't want I use theirs too often :cry:.

Maybe if I find a used 3DSXL with 4.x Fw at good price, I could buy it and play a little more with this CFW. My idea was to add an option to setup the emunand from the 3DS, like the GW SW does, with the option to select between GW and CFW emunand format, emunand extraction and injection, second emunand setup, partition resizing without loosing SD content. Nothing difficoult to do with low level SD libs you can find in rxTools source code.

Roxas firmlaunch code looks nice. I think you can talk with cearp, roxas and other programmers
 
General chit-chat
Help Users
    C @ CommanderCool: Any good places mirroring Sea of Harkinian lately besides their shitty discord?