Matching decompilation project for Klonoa 2: Lunatea's Veil NTSC (SLUS_201.51
).
Information relevant to reverse engineering and decompiling the game was retrieved from the following sources:
- Debug symbols from the Klonoa 2 executable from Demo Disc 2.3, extracted using ccc. This includes information about functions, structs, classes, local/global variables, and filenames.
- The C# assembly (
Assembly-CSharp.dll
) from the Steam release of Klonoa Phantasy Reverie Series. This includes information about functions and structs that were not present in the demo version of the game.
The ee-gcc 2.9-991111-01
compiler (available on decomp.me) seems to produce matching code most of the time, though it is not 100% certain if this was the compiler used to compile the game.
Support the series by purchasing & playing Klonoa Phantasy Reverie Series! :D
This repository does not contain any game assets, thus a legal copy of the game is required for this decompilation to work. Do not request for these files to be provided.
NOTE: This project is in VERY early stages and may fail to build.
- Setup environment:
- Set the
SCESDK
environment variable to the root of the official PS2 SDK (usually/usr/local/sce
). Download links to the SDK will not be provided in this repository.
- Set the
- Clone this repository:
git clone https://github.com/entriphy/kl2_lv_decomp.git cd kl2_lv_decomp
- Build the ELF file:
cmake -Bbuild cd build make
- The resulting ELF file will be named
kl2_lv_decomp.elf
. You can launch it with PCSX2 using the following command:pcsx2 -elf kl2_lv_decomp.elf <disc_image_file>
(todo)
Decompilation Progress Sheet (old)
- kl2_pine: Memory editor/visualizer for Klonoa 2 using PINE
- BinarySerializer.Klonoa: Serializes various file formats from Klonoa 2 (in addition to other Klonoa games)
- klonoa2-tools: KLDATA unpacker and model extractor
- spimdisasm: MIPS disassembler
- m2c: MIPS decompiler
- ghidra-emotionengine-reloaded: Ghidra extension for Playstation 2 executables