Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,5 @@ __pycache__/
/out
/.vscode
build.ninja
objdiff.json
.ninja_*
18 changes: 14 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,25 @@
# Decomp Training

This repository builds a DOL with CodeWarrior for the purpose of loading it into analysis software. It is intended to be compiled with minimal runtime, and is not intended to play back on console.
Welcome to decomp!

This series of (currently WIP) example files is designed to teach you the basics of decompilation for the Gamecube and Wii. It is recommended to read [this](https://wiki.decomp.dev/en/resources/decomp-intro) accompanying article on the wiki before getting started.

To get started, follow the [build](#building) steps and download [objdiff](https://github.com/encounter/objdiff). After building, set the active project in objdiff by selecting your project directory in File -> Project -> Project directory. All lessons are contained in [src/training_template](src/training_template). Avoid looking at files in `src/training_answers` to prevent accidentally getting spoiled on the solutions.

## Technical information

This repository builds a DOL with CodeWarrior for the purpose of loading it into analysis software. It is intended to be compiled with minimal runtime, and is not intended to play back on console. The build script is fairly simple for now, but more features could be added in the future to support things like relocatables or splitting the executable with dtk to demonstrate linking behavior.

## Planned content:

see [here](https://github.com/thefoxcam/decomp-training/wiki)

## Dependencies

- ninja 1.3
- Python 3.6
- [dtk](https://github.com/encounter/decomp-toolkit)
- CodeWarrior v3.0a5.2

Extract dtk to `build`, and extract CodeWarrior to `build/compiler`.
The configure script will pull all other dependencies.

## Building

Expand Down
Loading