User Tools

Site Tools


decomp:tutorial

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
decomp:tutorial [2022/10/20 22:32] – created fruityloopsdecomp:tutorial [2023/02/13 02:45] (current) fruityloops
Line 2: Line 2:
  
 ==== Prerequisites ==== ==== Prerequisites ====
-  * Linux setup ((untested on Windows/WSL)) +  * Linux setup/Windows setup with CMake and GNU make 
-  * ARM C/C++ Compiler, 4.1 [Build 894/1049] +  * ARM C/C++ Compiler, 4.1 [Build 894]
-  * devkitARM+
   * Python 3.10   * Python 3.10
   * CMake >= 3.24   * CMake >= 3.24
Line 11: Line 10:
 ==== Setup ==== ==== Setup ====
 Clone https://github.com/fruityloops1/RedPepper recursively, and place code.bin in the root of the repository. Clone https://github.com/fruityloops1/RedPepper recursively, and place code.bin in the root of the repository.
 +
 +Set these environment variables:
 +
 +ARMCC_PATH: path where ARMCC has been installed
  
 ==== Tools ==== ==== Tools ====
 Here the most important scripts in the 'Tools' folder will be explained. Here the most important scripts in the 'Tools' folder will be explained.
-== build.py ==+=== build.py ===
 <code>python Tools/build.py [clean/verbose]</code> <code>python Tools/build.py [clean/verbose]</code>
 Sets up CMake if needed, and builds the project. Sets up CMake if needed, and builds the project.
Line 21: Line 24:
  
 Building with the 'verbose' flag will echo the compiler/linker commands. Building with the 'verbose' flag will echo the compiler/linker commands.
-== check.py ==+=== check.py ===
 <code>python Tools/check.py [dir]</code> <code>python Tools/check.py [dir]</code>
 Automatically checks all functions mentioned in files in the 'Symbols' folder, and updates their status if needed. Automatically checks all functions mentioned in files in the 'Symbols' folder, and updates their status if needed.
Line 28: Line 31:
   * <code>check.py</code>   * <code>check.py</code>
   * <code>check.py al/LiveActor</code>   * <code>check.py al/LiveActor</code>
-== diff.py ==+=== diff.py ===
 <code>python Tools/diff.py <symbol></code> <code>python Tools/diff.py <symbol></code>
 Runs the asm-differ for the specified function. Runs the asm-differ for the specified function.
Line 35: Line 38:
   * <code>diff.py _ZN2al13isEqualStringEPKcS1_</code>   * <code>diff.py _ZN2al13isEqualStringEPKcS1_</code>
   * <code>diff.py _ZN2al14NerveStateCtrl10startStateEPKNS_5NerveE</code>   * <code>diff.py _ZN2al14NerveStateCtrl10startStateEPKNS_5NerveE</code>
-== progress.py == +=== progress.py === 
-Shows decompilation progress (of functions) and automatically removes functions from the Unnamed.sym file if they have been moved to another .sym file by the user.+Shows decompilation progress (of functions)automatically removes functions from the Unnamed.sym file if they have been moved to another .sym file by the user, and updates the decompilation percentages/the graph for README.md.
decomp/tutorial.1666305131.txt.gz · Last modified: 2022/10/20 22:32 by fruityloops