koopthekoopa / wii-ipl

Wii Menu (4.3) Decompilation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Decomp logo

Wii Menu Decompilation

This is a Work In Progress decompilation of the Wii Menu.

Supported versions (currently):

  • 4.3 (USA)

Dependencies

TODO: Building from Mac OS.

The following dependencies are required to build the decompilation:

  • Git (optional)
  • Python 3
  • GCC
  • Wine (Not for Windows users)

Below is how to install the dependencies that is depending on your OS

Windows

If you have MSYS2 then you will need to type in in the terminal:

pacman -S git make mingw-w64-x86_64-gcc mingw-w64-x86_64-python mingw-w64-i686-gcc mingw-w64-i686-python

For people using WSL should follow the Linux section.

If you do not have either MSYS2 or WSL then make sure that GCC and Make are in PATH environment variable.
You will also need to install Python 3 yourself here (make sure that python.exe is in your PATH variable).

Linux

For linux users, you will need to type this in:

sudo apt install build-essential git python3

If you have not got Wine installed, You will need to follow this guide.

Building the Decompilation

This will not compile a working Wii Menu yet!

  • If you have git, clone the decompilation repository by inputting this to your terminal:
    git clone https://github.com/koopthekoopa/wii-ipl.git
    
    • Otherwise download the repository by clicking on Code then Download ZIP then extract the .zip contents
  • You will need to prepare for compiling. To do that you need to type in
    python3 prepare.py
    
  • (OPTIONAL for now) You will need to extract contents from your Wii Menu WAD.
  • (OPTIONAL for now) Find the extracted contents of you WAD file and find 00000008.app
  • (OPTIONAL for now) Copy that said file to the decompilation directory and rename it to:
    • base.43U.app (For Wii Menu 4.3U)
    • Check to make sure the file matches with the SHA-1 Sums!
  • You are now ready to go! To build you need to type in make VERSION=<wii menu version> (for example: make VERSION=43U for 4.3U)
    • Version 4.3U is the default version.

Sums

File SHA-1
ipl.43J.app (Version 4.3J) c94c8e671854d56fa2abd4c4c886e6c62a2c7f0e
ipl.43U.app (Version 4.3U) 26116613f624061ba99c8d1a299aaa6efa85670d
ipl.43E.app (Version 4.3E) 2ebea6ed22473857ed64b12daa71ae2d1ed61708

Credits

decomp-toolkit - A tool that can do a lot and will make decompiling GameCube/Wii games easier and better. Seriously thanks to the people who worked on this.
objdiff - Used to check whenever if the compiled object is matching or not.
Ghidra - Used to load executables and output a rough decompilaton of a function.
WiiBrew - A website that contains dozens of documentation about the Wii.
Gamecube/Wii Decompilation Discord - Contains helpful resources for decompiling.

About

Wii Menu (4.3) Decompilation

License:MIT License


Languages

Language:Assembly 96.7%Language:C 2.3%Language:C++ 0.4%Language:Makefile 0.4%Language:Python 0.1%