Start reiNand on Boot

Discussion in '3DS - Tutorials' started by gudenau, Oct 11, 2015.

?

Good first tutorial?

  1. Yes

    4 vote(s)
    20.0%
  2. No

    3 vote(s)
    15.0%
  3. Turnip

    13 vote(s)
    65.0%
  1. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    First a quick video:


    If you would like to do this then read on!
    Keep in mind that this is not to stable at this time.
    Requirements:

    Basic steps:

    1. Update ctrulib
    2. Compile reiNand
    3. Compile homemenuhax
    4. Download and modify "otherapp"
    5. Setup homemenuhax/reiNand
    6. Install homemenuhax
    7. Profit
    Step 1: Updating ctrulib/install armips
    These projects use a newer version of ctrulib than devkitPro installs for you, this is to be expected since it is rapidly developing. First we need to go here and clone the repo. Then open a Command Prompt or Terminal window and cd into "libctru" and run "make -s install". Then copy armips to "(DEVKITARM dir)\bin\".
    Screenshot

    Step 2:
    Compiling reiNand

    First go here and clone the repo, if you are using git make sure to use the flag --recursive; and if you are downloading the zip make sure you download all of the referenced repos. Then you will need to download the firmware.bin file and place it in the data folder. You will then have to edit "source/main.c" and add "#define BOOT_EMU" to the top of the source file. Then run "set PATH=%PATH%;(DEVKITARM dir)\bin && make -s", on my Windows PC this would be "set PATH=%PATH%;D:\devkitPro\devkitARM\bin && make -s".

    firmware.bin should have a SHA-1 of 6843141D4962A57BD8510BDE905D915CDC0E0022
    Screenshots

    Step 3: Compile homemenuhax
    Clone the homemenuhax repo here. Then open "Makefile" and change line 181 to read "py -3 payload.py $< $@ 0x4652 0x100000 $(TARGETOVERWRITE_MEMCHUNKADR) $(HEAPBUF_OBJADDR)", this is needed since python3 does not work on Windows. Then open a terminal in the root of the repo and run "make -s LOADSDPAYLOAD=1 ENABLE_LOADROPBIN=1 ENABLE_HBLAUNCHER=1 MENUROP_PATH=menurop_prebuilt USE_PADCHECK=0x0", this may take a while.
    Screenshots

    That built the exploit files needed to run the installer, but it did not build the installer. So execute "cd themehax_installer" and then "make -s".
    Screenshot

    Step 4: Downloading and modifying "otherapp"
    Now we need to modify the otherapp payload to load somthing other than "boot.3dsx" so we can keep the homebrew menu. To do this go here and find "Otherapp payloads", select your version and download the file. Now open it in HxD and search for "/boot.3dsx", for me it is at offset 0x00008958; now replace the text "boot" by clicking on the "b" and type "nand". Save the file and rename the payload to "themehaxinstaller_otherapp_payload.bin".
    Screenshots

    Step 5: Setup reiNand and homemenuhax
    Now we need to get the 3DS'es SD card and copy the needed files to it. From the ReiNand repo we need to copy "out/rei/" and "out/reiNand.dat" to the root of the SD card, then you need to copy "out/3ds/ReiNand/ReiNand.3dsx" to the root of the SD card and rename it to nand.3dsx. From the homemenuhax repo you need to copy "themepayload/", "themehax_installer/themehax_installer.3dsx" and "themehax_installer/themehax_installer.smdh" to "/themehax_installer" on the SD card. Last but not least you will need to copy "themehaxinstaller_otherapp_payload.bin" to the root of the SD card.
    Screenshot

    Step 6: Install homemenuhax
    The last real step is to install homemenuhax, launch the installer from the homebrew launcher and press the A button; wait for it to install. Then press A B Start, it should kick you back to the launcher. Then if you reboot the 3DS by pressing start then A, you should boot into reiNand!

    Step 7: Other stuff
    I am not responsible for any unwanted effects from following this tutorial, if you ever want to remove homemenuhax take your SD card out, then boot your 3Ds; then select any theme from the theme menu. If you want you can remove the "themehax_installer" files on your SD card, just make sure you leave "rei/" and "nand.3dsx". Returing from a GBA/DS/DSi title should kick you back into reiNand! (I only tested GBA) If you want to boot into the normal NAND; press a button while booting the 3DS.

    I hope you enjoy your cold-boot custom firmware!
     
    Last edited by gudenau, Oct 17, 2015
    BeefBaby, ravihpa, d0k3 and 1 other person like this.
  2. tatundria

    tatundria GBAtemp Regular

    Member
    281
    29
    Feb 24, 2009
    Argentina
    Hi, can you PPM the compiled version to me please?
     
  3. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    Getting errors building reiNand? I frogot something.
     
  4. Kawaii

    Kawaii GBAtemp Regular

    Member
    283
    122
    Apr 30, 2015
    New Zealand
    Not near you
    keep getting error compiling. =( very frustating
     
  5. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    I frogot somthing, I will fix it later.
     
  6. Ericjwg

    Ericjwg GBAtemp Psycho!

    Member
    3,075
    814
    Jul 2, 2015
    Canada
    just use cakes........
    rei stop updating for awhile.....:unsure:
     
  7. d0k3

    d0k3 3DS Homebrew Legend

    Member
    2,643
    2,656
    Dec 3, 2004
    Gambia, The
    Nice work!

    For the reasons why there is no compiled version, see here. That being said, it is okay to post compiled binaries for everything mentioned here but the complete ReiNAND CFW.

    @gudenaurock, is there an advantage in compiling HomeMenuHax v1.3 yourself vs. just using v1.2 which comes with the homebrew starter pack?

    ... and a recommendation. With the setup you got, @AlbertoSONICs Quick Reboot is a good install on EmuNAND. It allows you to quickly get back to the CTR Boot Manager or to boot to SysNAND.
     
    Last edited by d0k3, Oct 11, 2015
  8. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    I do not think 1.2 allows you to use a custom payload. The quick reboot app shluld put you back into reiNand.
     
  9. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    Fixed a derp, should be good to go now!
     
  10. Kawaii

    Kawaii GBAtemp Regular

    Member
    283
    122
    Apr 30, 2015
    New Zealand
    Not near you
    [​IMG]

    getting this error
     
  11. m45t3r

    m45t3r GBAtemp Regular

    Member
    243
    181
    Jul 17, 2007
    Brazil
    v1.2 does not support custom payloads, and v1.3 supports changing autobooting options.
     
  12. 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,326
    5,335
    Mar 17, 2010
    Norway
    Alola
    As a tutorial I think this is a bit too complicated since it involves downloading and compiling github repos. It is simpler to use precompiled versions and use CtrBootManager to load HBL/CFW. If compiled ReiNAND versions can't be provided then rxTools is a better option anyway.
     
    Last edited by The Real Jdbye, Oct 12, 2015
  13. ChrisN8

    ChrisN8 GBAtemp Fan

    Member
    324
    89
    May 13, 2015
    France
    No need that much stuff, i've made a guide. It works with ReiNAND too.
     
  14. KJ1

    KJ1 Old Member

    Member
    GBAtemp Patron
    KJ1 is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    1,014
    136
    Nov 2, 2014
    India
    Um.... Can we boot into Gateway Emunand directly too?
     
  15. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    What are the hashes for emuCode.s and armips.exe? I have a SHA-256 of FDAFAC713F3CBD2E6703D3C4847C722884C61CC08EBCB60A142B2801B52AD27F and C3DC39FDE4CA0F6B0DB3E9943B453CF8176D2F2DDCDDA0702EA57173FBC9A61F.
     
  16. Kawaii

    Kawaii GBAtemp Regular

    Member
    283
    122
    Apr 30, 2015
    New Zealand
    Not near you
    all works now. my armips.exe was the problem. i got it from other post
     
  17. FONZD

    FONZD GBAtemp Regular

    Member
    219
    275
    Jan 27, 2015
    France
    just a little thing:

    make -s LOADSDPAYLOAD=1 USE_PADCHECK=0x200 ENABLE_LOADROPBIN=1 ENABLE_HBLAUNCHER=1 LOADSDCFG_PADCHECK=1 MENUROP_PATH=menurop_prebuilt

    will be better in order to use the new PADCHECK
     
  18. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    I know about that, since I did not see much user of that I opted that.
     
  19. gudenau
    OP

    gudenau Largely ignored

    Member
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    3,286
    1,252
    Jul 7, 2010
    United States
    /dev/random
    Made a couple small tweaks.