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

Discussion in '3DS - Homebrew Development and Emulators' started by nop90, May 3, 2015.

  1. nop90
    OP

    nop90 GBAtemp Maniac

    Member
    1,430
    2,136
    Jan 11, 2014
    Italy
    Rome
    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.
     

    Attached Files:

  2. AtlanticBit

    AtlanticBit Yeh, fuck this

    Member
    365
    189
    Jan 15, 2015
    Poland
    DEEP IN SPACE
    neat work!
     
    Margen67 likes this.
  3. DarkMatterCore

    DarkMatterCore I like turtles.

    Member
    890
    199
    May 30, 2009
    Venezuela
    Cabimas, Zulia, Venezuela.
    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:
     
  4. jefffisher

    jefffisher GBAtemp Maniac

    Member
    1,438
    273
    Dec 17, 2006
    United States
    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
     
  5. TheGrayShow1467

    TheGrayShow1467 屈折

    Member
    935
    1,204
    Oct 12, 2014
    United States
    Looks promising! Great work!
     
  6. TheGrayShow1467

    TheGrayShow1467 屈折

    Member
    935
    1,204
    Oct 12, 2014
    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
     
  7. mid-kid

    mid-kid GBAtemp spamBOT

    Member
    879
    962
    Aug 2, 2012
    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.
     
    DarkMatterCore likes this.
  8. DarkMatterCore

    DarkMatterCore I like turtles.

    Member
    890
    199
    May 30, 2009
    Venezuela
    Cabimas, Zulia, Venezuela.
    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.
     
    Margen67 likes this.
  9. cracker

    cracker Nyah!

    Member
    3,164
    460
    Aug 24, 2005
    United States
    This is great. I will definitely be using it on my O3DS. :yay:
     
  10. mid-kid

    mid-kid GBAtemp spamBOT

    Member
    879
    962
    Aug 2, 2012
    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.
     
  11. Tieracloud

    Tieracloud Member

    Newcomer
    35
    2
    Apr 26, 2015
    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?
     
  12. jefffisher

    jefffisher GBAtemp Maniac

    Member
    1,438
    273
    Dec 17, 2006
    United States
    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
     
  13. The Real Jdbye

    The Real Jdbye Always Remember 30/07/08

    Member
    GBAtemp Patron
    The Real Jdbye is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    12,289
    5,315
    Mar 17, 2010
    Norway
    Alola
    Nice work, is this more stable than the old Palantine CFW or is it still the same?

    The ability has been there for a while, but until now you needed to replace the launcher.dat to switch to the other emuNAND.
     
    Margen67 likes this.
  14. nop90
    OP

    nop90 GBAtemp Maniac

    Member
    1,430
    2,136
    Jan 11, 2014
    Italy
    Rome
    It's the same.

    I rewrote the boot bin and was trying to fix it, but it's not so easy. Unfortunately I lost all the sources and I don't want to start again.
     
  15. Luckkill4u

    Luckkill4u 4 guys in a car ( ͡° ͜ʖ ͡°)

    Member
    1,001
    530
    Jul 13, 2008
    Canada
    Insomnia
    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.
     
  16. nop90
    OP

    nop90 GBAtemp Maniac

    Member
    1,430
    2,136
    Jan 11, 2014
    Italy
    Rome
    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.
     
    Margen67 likes this.
  17. pikatsu

    pikatsu GBAtemp Advanced Fan

    Member
    744
    128
    Apr 16, 2014
    Argentina
    If you ever change your mind and find free time can you restart fixing the boot bin?
     
    Margen67 likes this.
  18. Tieracloud

    Tieracloud Member

    Newcomer
    35
    2
    Apr 26, 2015
    United States
    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.
     
  19. nop90
    OP

    nop90 GBAtemp Maniac

    Member
    1,430
    2,136
    Jan 11, 2014
    Italy
    Rome
    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.
     
    Margen67 likes this.
  20. pikatsu

    pikatsu GBAtemp Advanced Fan

    Member
    744
    128
    Apr 16, 2014
    Argentina
    Roxas firmlaunch code looks nice. I think you can talk with cearp, roxas and other programmers
     
    Chelsea_Fantasy and Margen67 like this.