Decompilation of The Legend of Zelda: Twilight Princess (GCN, USA)
Go to file
LC ec9b03241d
Z2AudioLib: Migrate declarations out of functions.h to respective files (#96)
Removes the strong dependency on a single header file and moves
declarations to their respective header file.

This allows for making dependencies explicit in cpp files and other
headers, and also makes it much easier to track where everything related
to a particular component is.

This change also creates a few header files that previously didn't
exist, making it much nicer for people implementing things, as they
won't need to create the header file, it'll just be there ready to go.

Ideally functions.h wouldn't even be a thing, as this header adds a lot
of preprocessing overhead due to its size, and will continue to grow
significantly larger over the lifespan of the project, which can also
impact the performance of editors that do dependency lookups and
context-aware syntax highlighting.
2021-01-25 12:57:46 -05:00
.github/workflows doxygen workflow: don't enable-latex (#95) 2021-01-25 11:34:38 -05:00
asm J2DPane.cpp (#91) 2021-01-25 09:57:35 -05:00
docs Doxygen (#84) 2021-01-18 14:00:28 -05:00
include Z2AudioLib: Migrate declarations out of functions.h to respective files (#96) 2021-01-25 12:57:46 -05:00
libs Z2AudioLib: Migrate declarations out of functions.h to respective files (#96) 2021-01-25 12:57:46 -05:00
src Z2AudioLib: Migrate declarations out of functions.h to respective files (#96) 2021-01-25 12:57:46 -05:00
tools Z2AudioLib misc decomp (#75) 2021-01-21 23:16:51 -05:00
.clang-format .clang-format: set standard to c++03 (#93) 2021-01-25 09:55:08 -05:00
.gitignore Doxygen (#84) 2021-01-18 14:00:28 -05:00
Doxyfile Doxygen (#84) 2021-01-18 14:00:28 -05:00
Makefile Fix Merge and set maxerrors to 5 2021-01-21 21:59:24 -07:00
README.md Doxygen (#84) 2021-01-18 14:00:28 -05:00
asmdiff.sh fvb, functionvalue, vector (#77) 2021-01-18 14:27:25 -05:00
diff.py diff.py: robust/autodected path processing for xplatform --source (#85) 2021-01-18 14:38:53 -05:00
diff_settings.py Makefile: DEBUG option (#86) 2021-01-18 14:16:09 -05:00
dolzel2.sha1 ok 2020-08-29 17:54:55 -04:00
ldscript.lcf J2DPane.cpp (#91) 2021-01-25 09:57:35 -05:00
obj_files.mk J2DPane.cpp (#91) 2021-01-25 09:57:35 -05:00

README.md

The Legend of Zelda: Twilight Princess

This repo contains a WIP decompilation of The Legend of Zelda: Twilight Princess (GCN USA).

It builds the following DOL:

main.dol - sha1: 4997D93B9692620C40E90374A0F1DBF0E4889395

And will eventually build all the RELs.

Windows Prerequisites

  1. Download and run the latest release of the Windows devkitpro installer
  2. Run the executable located at devkitPro\msys2\msys2.exe
  3. Update pacman by running the following command: pacman -Syu
  4. Install the necessary dependencies by running the following command: pacman -S python3-pip base-devel gcc vim cmake
  5. Change to the directory of where you cloned this repository and you are ready to build!

Build Instructions

  1. Obtain a clean DOL of TP (GCN USA) and place it at the root of the repo and name it baserom.dol.
  2. Obtain a copy of the MWCC PowerPC compiler (version 2.7 to be exact). See below for a link to our Discord server which has the CodeWarrior compilers pinned in the #tp-decomp channel.
  3. Run make at the root of the repo.

Contributions

All contributions are welcome. This is a group effort, and even small contributions can make a difference. Some tasks also don't require much knowledge to get started.

Most discussions happen on our Discord Server, where you are welcome to ask if you need help getting started, or if you have any questions regarding this project and other decompilation projects.