[Tutorial] How to Sync & Compile various A9LH Forks(payload_stage1.bin + payload_stage2.bin)

Discussion in '3DS - Tutorials' started by fr3quency, Mar 28, 2016.

  1. fr3quency
    OP

    fr3quency GBAtemp Advanced Fan

    Member
    780
    332
    Jan 11, 2016
    Greece
    Wherever my imagination decides.
    1) Would you want to get the latest version of your favourite A9LH fork? No? Well, I would. xD
    2) You need payload_stage1.bin and payload_stage2.bin for an A9LH fork but cannot find it? No? Well, you might need them in the near future. :P
    3) You are a new user but want to do all this stuff yourself? No? :<

    Anyway, in this guide I'll try to explain how to compile various A9LH forks. Some of this stuff are copypasta'd from my other guide on how to compile (Au)ReiNand CFW, but you don't have to worry as I exclusively explain on how to compile ONLY A9LH(payload_stage1.bin & payload_stage2.bin which you will need if you ever want to change A9LH fork)




    Things that you will need to do before clicking on one of the various A9LH forks:
    1. Download Git for your operating system from here: https://git-scm.com/downloads (When you install it, just click on "Next" to everything it says).

    2. Install devkitPro from here: https://sourceforge.net/projects/devkitpro/

    3. Download MinGW from here: https://sourceforge.net/projects/mingw/ When installation is over, it will show you a window and ask you which package to install. Choose "mingw32-base", wait for the installation to finish and close the window.

    4. You will have to edit your PATH. Don't freak out, it's easy:
      Right click on your Computer icon > Properties > Advanced system settings > Environment Variables... > System variables > FIND "Path" > Edit.
      If you did it right, you should be looking at this window:
      [​IMG]

      Now add the locations that are inside the red rectangle.

    5. Open File Explorer and navigate into "C:\"

    6. Create a new folder and name it however you like. I named mine "SOURCES" to stand out of the rest of the folders. Open this folder.
      !!!!!!!!!! TIP: Don't add spaces in the folder's name. Eg: if you want the folder to be named "3DS Sources" then you will have to name it "3DS_Sources" (the difference is that I have added an underscore instead of space) !!!!!!!!!!






    Various A9LH forks:


    Aurora Wright's A9LH fork

    Aurora Wright's NON-SCREEN-INIT A9LH fork

    dark_samus3 A9LH fork

    delebile's original A9LH



    Now you might be wondering "what am I suppsoed to do with the payload_stage1.bin and payload_stage2.bin files". Go here to find out how to use them: http://gbatemp.net/threads/safea9lhinstaller.419577/




    !!!!!!!!!! TIP: You cannot sync ALL of the arm9loaderhax repos because they all have the same name. If you want to have 2 or more arm9loaderhax gits, then you will need to create another folder(eg Aurora_No_Screen_Init) and sync the desired repo there. !!!!!!!!!!



    Credits go to @delebile for the original A9LH, @dark_samus3, @Aurora Wright, @capito27 as most of this stuff is stolen from his guide on how to compile rxTools and everyone else I have forgotten! (Make a post or PM me if you want credits)
     
    Last edited by fr3quency, Mar 28, 2016
  2. jimmyleen

    jimmyleen GBAtemp Maniac

    Member
    1,148
    193
    Feb 28, 2016
    I have a dumb question. Do you happen to know if Fix94's A9LH can be compiled the same way as the other three versions of the A9LH?
     
    SirBeethoven likes this.
  3. fr3quency
    OP

    fr3quency GBAtemp Advanced Fan

    Member
    780
    332
    Jan 11, 2016
    Greece
    Wherever my imagination decides.
    it's the same as delebile's one. You need some files which I believe can be downloaded from the OTP guide.
     
  4. jimmyleen

    jimmyleen GBAtemp Maniac

    Member
    1,148
    193
    Feb 28, 2016
    Oh okay
     
  5. Madridi

    Madridi Card Collector

    Member
    2,891
    795
    May 9, 2008
    Qatar
    Doha
    @fr3quency

    Am I missing something here? All of the forks require input files like delibile's fork according to the readme
     
  6. fr3quency
    OP

    fr3quency GBAtemp Advanced Fan

    Member
    780
    332
    Jan 11, 2016
    Greece
    Wherever my imagination decides.
    Nope, if you sync Aurora's a9lh(both screen-init and no-screen-init), you will see that you won't have to input any files (like you need with delebile's). Try to sync Aurora's a9lh and then immediately type "make". I did it 4-5 days ago when she updated her no-screen-init version(up to 31 commits if I recall correctly). You will get an "out" folder that contains the 2 stage-payloads. I have personally tried it on those 3 ones (there was another a9lh fork but I don't recall the name. Fix96? Or something like that. xD it also requires to input some files, but both Aurora's and dark-samus's forks don't require such a thing - which is fking awesome imho)

    Sent from my Nexus 5
     
    Last edited by fr3quency, Apr 24, 2016
  7. Madridi

    Madridi Card Collector

    Member
    2,891
    795
    May 9, 2008
    Qatar
    Doha
    So I assume it's not installing everything? Cause if it is, you would have to at least give your OTP as an input..

    Also, if that's really case, then they should remove the input requirement from their readme files (I know, they are all identical, but still, not accurate)
     
  8. fr3quency
    OP

    fr3quency GBAtemp Advanced Fan

    Member
    780
    332
    Jan 11, 2016
    Greece
    Wherever my imagination decides.
    What do you mean? Indeed, you needed your OTP to compile a9lh, but that's in the past. With SafeA9LH you need the OTP only for the installation. I'm not really sure myself what's going on, but not requiring to input files is enough for me to make this a9lh(the one that doesn't require input files) my main one. Plus Aurora updates her fork so I'm really happy. Delebile made a huge update as well so I'm on standby to see what will happen with Aurora's fork. I haven't found the time to ask her.

    Sent from my Nexus 5
     
  9. Madridi

    Madridi Card Collector

    Member
    2,891
    795
    May 9, 2008
    Qatar
    Doha
    I'm just trying to understand at what point do whatever fork generate "unique" files? One of Delebile's input files is the OTP, which is used to generate unique installation files. If the other forks are not using any input files (including the OTP) then at what point are they becoming unique to that specific console?

    I don't know how SafeA9LH works, but for delebile's fork, the generated file is in itself an installer with all the unique files
     
  10. astronautlevel

    astronautlevel Saber of Red

    Member
    3,713
    3,796
    Jan 26, 2016
    United States
    That Nightly Siteā„¢
    Aurora wright's fork of a9lh is meant to be used with safea9lh.

    The payloads generated by aurora's fork are generic and not console specific. Safea9lhinstaller (which is a generic .3dsx file) then can take these payloads, along with your OTP, and install a9lh.

    The main reason this system is used (and is convenient) is that safea9lhinstaller doesn't require you to use your OTP when upgrading a9lh - all you need is the two compiled payload files. Your OTP is only needed for the initial install.
     
    fr3quency and Madridi like this.
  11. Madridi

    Madridi Card Collector

    Member
    2,891
    795
    May 9, 2008
    Qatar
    Doha
    Ah ok that makes a lot of sense, thanks for the explanation.
    I don't suppose Delebile's fork can generate the same without the input?
     
  12. kristiansja

    kristiansja Advanced Member

    Newcomer
    62
    26
    Apr 30, 2016
    Norway
    what is the differences in the different forks?
     
  13. Tomato Hentai

    Tomato Hentai snart

    Member
    3,633
    5,651
    Oct 30, 2014
    Canada
    actually north korea. please send help
    I believe each fork should have information on what it does in it's readme.
     
  14. kristiansja

    kristiansja Advanced Member

    Newcomer
    62
    26
    Apr 30, 2016
    Norway
    i checked them, there werent much, could you tell an idiot what screen-init is?
     
  15. Tomato Hentai

    Tomato Hentai snart

    Member
    3,633
    5,651
    Oct 30, 2014
    Canada
    actually north korea. please send help
    IIRC screen-init initiates the screen brightness when you turn on the console.
     
    kristiansja likes this.