[GUIDE] How to compile IOSUHAX

Discussion in 'Wii U - Hacking & Backup Loaders' started by punderino, May 10, 2016.

  1. punderino
    OP

    punderino aka Big-Dick Swinger

    Member
    896
    488
    Jan 5, 2016
    United States
    Kansas City, Missouri
    THIS WILL NOT FULFILL YOUR IOSU NEEDS (yet)

    None of my knowledge would be good or even complete without Datalogger! If you thank me, please thank him as well!

    Section - 1
    Setup Build Environment
    Whenever you want to do anything like this, compiling iosuhax, or anything Wii U homebrew related, you're going to need devkitPro set up on your computer. Because this guide is mainly on building IOSUHAX I will only go through this briefly. If you want to learn how to set this up, click on the links below for your operating system.
    Windows -
    Mac -
    Linux -
    Once you have devkitPro set up in your environment, you need to download a compiled version of armips and add it to your PATH, for your environment variables, you will need this done for python2.7 as well. For my pastebin. You're gonna want to go to the website, and add /u/ and then my name on gbatemp. It'd be something like punderino after /u/. Just saying.


    Section - 2
    Setup for Compiling
    Go to the github page and download iosuhax. This will be your build directory once extracted.
    https://github.com/smealum/iosuhax
    By reading the readme of this github it explains some of the things that need to be done in order to be ready to build this. He states these three bullet points, and we will go through then now.

    • decrypt your ancast image, prepend the raw signature header stuff to it and place it in ./bin/fw.img.full.bin
    • open up ./scripts/anpack.py, add your ancast keys in there
    • make
    First off it wants us to have an ancast image. In normal speak, this is the Wii U's fw.img. This is where IOSU is sorta stored. To get this file, we're going to need to download a program with a copy of NUSDownloader for the Wii U. I recommend using UWizard.
    https://gbatemp.net/threads/uwizard-all-in-one-wii-u-pc-program.386508/
    Use this thread to set the program up. Once you have it all setup you're going to want to download OSv10 v15702(5.5.0-5.5.1), on the Github, smealum says it should only be compatible with 5.5.x, so until we have a method of NAND backup and restore, we will not touch this with any other firmware. Once we have our OSv10 downloaded, we're going to want to go into the code folder, and find fw.img. Drag this into the iosuhax folder that we downloaded off of Github earlier.

    Section - 3
    The "Dirty Work"
    This is where it gets difficult, so I'm going to try and explain this to the best of my ability. For this, we're going to need a good Hex Editor. I recommend using HxD, it's a free program, and gets the job done.
    https://mh-nexus.de/en/hxd/
    Once downloaded, we're going to want to drag our fw.img into the empty window of HxD. You will see a bunch of spaced out pairs of numbers and letters.
    [​IMG]
    What I have selected here is the beginning to 0x200, we're going to want to CUT this. Do not delete it, cut it. We're going to need it later. Once it's cut, it will be removed from the fw.img. Save this now. Once you've saved our fw.img without the first 0x200, make a new file in HxD, on the top row there is a blank page on the left, click to to start the new file. Paste in what you just had cut out of the fw.img. Save it as "Header.bin". Once that's done we can now close our HxD entirely.
    http://gnuwin32.sourceforge.net/packages/openssl.htm You'll need to install this.
    We're want to run this command in CMD in our work directory "openssl enc -d -aes-128-cbc -nopad -K key -iv iv -in fw.img -out fw.d.img"
    We'll also want to replace the iv and key with the starbucks ancast key and iv. I've heard you can get these in the pastebin described above at the end of section one. While we're at it, go ahead and open up the scripts folder, in there is a file called ancast.py, open it up with a GOOD editor, such as Notepad++, once you've done that go down to line 162, and replace line 162 to 166 with what's on the only pastebin from the user Punderino.

    https://notepad-plus-plus.org/
    Once you do this, you will have a file named fw.d.img. Go back into our hex editor and copy everything from the Header.bin and put it on the top of fw.d.img. Once you have that, save fw.d.img.
    Make a folder named bin inside of iosuhax. Copy your fw.d.img inside of there, once it's in there, rename it to "fw.img.full.bin". Once you've done this open up the Makefile with Notepad++ as well. In there you will see it say python2 twice, replace python2 with just python and then save and close this. Once we've done all of this, we're ready to build.


    Section - 4
    Building IOSUHAX
    Once we're done preparing all of our files, we're ready to build and troubleshoot. Bring up a command prompt (CMD) in the iosuhax, and run the command "make". Once you've done this, it will go through and attempt to compile everything for you. If you get an error code, please respond with it in the replys to this thread. I will be addressing each of them here.

    Anything regarding 0x814000:
    Go into my pastebin, and there's a link to download a zip file called sections. Replace the contents of that with what comes with IOSUHAX. You should be good to build after this.

    Anything else, please reply to the thread explaining your issue.


    If Anything Was Not Understood, Tell Me How I Can Improve It And I Will <3
     
    Last edited by punderino, May 10, 2016
    iAqua, Coc4tm, Munomario777 and 15 others like this.
  2. pwsincd

    pwsincd Garage Flower

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

    Our Patreon
    3,366
    1,740
    Dec 4, 2011
    Manchester UK
    dude you need to make this post light theme friendly...
     
  3. CeeDee

    CeeDee hm?~

    Member
    3,836
    5,432
    May 4, 2014
    United States
    somewhere
    People still use light theme? /s
     
  4. pwsincd

    pwsincd Garage Flower

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

    Our Patreon
    3,366
    1,740
    Dec 4, 2011
    Manchester UK
    always have ,, easier to read for my dodgy eyesight... i have tried the dark side.. i even have forum with a dark theme lol
     
    KiiWii likes this.
  5. Duckling

    Duckling Sorry for being dumb ;(

    Member
    471
    97
    Mar 17, 2016
    Laos
    I just realized that you could change it lol
     
  6. CeeDee

    CeeDee hm?~

    Member
    3,836
    5,432
    May 4, 2014
    United States
    somewhere
    /s means /sarcasm. I'm a dirty light theme peasant too and always have been.
     
    gudenau likes this.
  7. FlappyFalco

    FlappyFalco Smile, No Matter How Bad it Gets~

    Member
    232
    132
    Oct 11, 2015
    Ireland
    The deepest recesses of my mind
    So I'm guessing this is real, yeah? /s
     
  8. Irastris

    Irastris Just another fag with a suggestive avatar

    Member
    1,005
    570
    May 3, 2015
    United States
    Light theme user here as well, I was trying to figure what the hell was going on in OP's post until I switched themes.
     
  9. Undi

    Undi The guy under your bed

    Member
    183
    29
    Feb 22, 2014
    Belgium
    What can we do with that ?
     
    SlimPortable and ArturDat3DS like this.
  10. punderino
    OP

    punderino aka Big-Dick Swinger

    Member
    896
    488
    Jan 5, 2016
    United States
    Kansas City, Missouri
    I DIDNT REALIZE THE WHITE TEXT, IM LITERALLY SCREAMING OF LAUGHTER

    — Posts automatically merged - Please don't double post! —

    All fixed now <3
     
  11. Kohmei

    Kohmei GBAtemp Advanced Fan

    Member
    772
    463
    Feb 17, 2013
    United States
    The same thing you can do with a key without being shown which door it opens
     
    7Robins likes this.
  12. FlappyFalco

    FlappyFalco Smile, No Matter How Bad it Gets~

    Member
    232
    132
    Oct 11, 2015
    Ireland
    The deepest recesses of my mind
    My bad, didn't see the white text, was wondering why Step 4 was blank and thought the whole thing was a joke.




    Also;


    IOSU EXPLOIT /=/ SMEALUM's IOSUHAX TOOLS
     
    Last edited by FlappyFalco, May 10, 2016
  13. punderino
    OP

    punderino aka Big-Dick Swinger

    Member
    896
    488
    Jan 5, 2016
    United States
    Kansas City, Missouri
    Giant disclaimer at the top's point. xDD, with this, if we had a lot more hardmod knowledge, could we maybe use it. From what I understand we need an IOSU exploit, and then use the firmware image this creates as a replacement for the stock one. With that it just puts more commands into IOSU for us to use.
     
    FlappyFalco likes this.
  14. TSSableye

    TSSableye GBAtemp Regular

    Member
    101
    10
    Jan 4, 2016
    United States
  15. TSSableye

    TSSableye GBAtemp Regular

    Member
    101
    10
    Jan 4, 2016
    United States
    On that note, no idea either.
     
  16. punderino
    OP

    punderino aka Big-Dick Swinger

    Member
    896
    488
    Jan 5, 2016
    United States
    Kansas City, Missouri
    This is a bunch of hacks for IOSU, once we have access, we'll be using this to do a lot of our work. Go on the Github and check the features.
     
  17. Kohmei

    Kohmei GBAtemp Advanced Fan

    Member
    772
    463
    Feb 17, 2013
    United States
    The thread contains instructions to modify your consoles fw.bin with signature checks patched out, among other things. There is no known way to install it without an IOSU exploit
     
  18. TSSableye

    TSSableye GBAtemp Regular

    Member
    101
    10
    Jan 4, 2016
    United States
    Oh mai...should I be hyped (σ ͜ʖσ)
     
  19. Kohmei

    Kohmei GBAtemp Advanced Fan

    Member
    772
    463
    Feb 17, 2013
    United States
    In short, no.

    I've been thinking lately about the strategic value of releasing iosuhax without the necessary exploit(s) to run any of it, and have reached the rather disappointing conclusion that it is more of an insurance policy than it is an actual contribution to the development of IOSU tools. Someone looking to profit financially from CFW (a la Gateway) would have most of their "product" publicly available because of this move, meaning if they were trying to sell the exploit with the necessary CFW procedures, the exploit would almost immediately become public, and combined with these tools, would make their product irrelevant. This would also allow unsigned titles to be installed directly to the system menu (loadiine would be irrelevant) so any dev who happens to be anti-piracy (just about all of them) would be even less inclined to release an IOSU exploit as the tools for unabashed piracy have already been made available. It seems like a stalemate to insure no one releases anything because there's either no incentive or counter-incentives for all parties
     
    Last edited by Kohmei, May 10, 2016
    Kafluke, Masterwin and Juggalo Debo like this.
  20. jimmyleen

    jimmyleen GBAtemp Maniac

    Member
    1,161
    198
    Feb 28, 2016
    iosuhax is pretty barebones, it's mainly just the following:
    • software nand dumping (bunch of ways to do this, dumps slc, slccmpt and mlc, either raw or filetree or something in between)
    • redNAND (redirection of nand read/writes to SD card instead of actual NAND chips)
    • remote shell for development and experimentation (cf wupserver and wupclient, it's super useful)
    • some basic ARM debugging stuff (guru meditation screen)