A work-in-progress decompilation of Kirby 64: The Crystal Shards, brought to you.
Go to file
2021-01-16 22:25:14 -05:00
.github/workflows Made build yamls use make setup 2021-01-16 21:28:10 -05:00
actors Made kirby model const; some ovl1_3 animation decomp 2020-08-04 03:11:08 -04:00
asm bank to OK, bank 7 builds now 2021-01-16 19:59:24 -05:00
assets reverted bank3 for now 2021-01-16 21:24:13 -05:00
data broken build system, but Banks 0-2 geos are fully transient AND matchinggaa! 2021-01-16 00:07:01 -05:00
f3dex2@3c8876815c f3dex2 incorporated 2020-09-29 20:39:39 -04:00
include Fixed most compiler warnings in geo blocks 2021-01-16 22:25:14 -05:00
libreultra@25ecd32823 some decomp work; CI should pass now 2021-01-05 12:08:31 -05:00
src decompiled bank 0 index 1 geo 2021-01-14 21:47:52 -05:00
tools Fixed most compiler warnings in geo blocks 2021-01-16 22:25:14 -05:00
ucode f3dex2 incorporated 2020-09-29 20:39:39 -04:00
.gitignore Small makefile optimizations, wrote replacement for extract_assets.py in C with openmp for speedup 2021-01-16 21:28:10 -05:00
.gitmodules fixed submodule 2020-10-09 11:04:06 -04:00
assets.json split almost all assets 2020-08-14 18:38:53 -04:00
context_gen_header.h fixed ovl10_1 header issues 2021-01-09 00:56:04 -05:00
diff_settings.py updated diff.py 2020-10-09 11:02:32 -04:00
diff.py updated diff.py 2020-10-09 11:02:32 -04:00
extract_assets.py I kill your compile speeds; bank 7 transient geos are done 2021-01-16 20:12:04 -05:00
first-diff.py preparing for massive symbol-replacement undertaking 2020-08-12 16:36:44 -04:00
kirby.us.ld bank to OK, bank 7 builds now 2021-01-16 19:59:24 -05:00
kirby.us.sha1 added files 2020-05-23 06:09:52 -04:00
libultra_unused.txt More matching in libultra 2020-12-23 02:03:31 -05:00
macros.inc ovl19 data cleanup 2020-08-16 18:18:22 -04:00
Makefile Fixed duplicate make tools in make setup 2021-01-16 21:40:58 -05:00
README.md updated readme 2021-01-16 20:14:39 -05:00
rename_sym.sh function renamings 2020-10-06 18:30:40 -04:00
undefined_syms.txt decompiled bank 0 index 1 geo 2021-01-14 21:47:52 -05:00

Kirby 64: The Crystal Shards

This repository contains a work-in-progress decompilation effort for Kirby 64.

You will need an original copy of the ROM to proceed.

Installing

  • First, get Linux, or Windows Subsystem for Linux if you use Windows
  • Next, clone the repo by running sudo apt install git && git clone https://github.com/farisawan-2000/kirby64 --recursive
  • Get the GitPython submodule by doing pip3 install gitpython
  • Now just follow the instructions for SM64 decomp here, but before you go, keep reading.
  • Once dependencies are installed, run make setup to get assets extracted, then make to build!

Contributing

  • Pull requests are welcome! Everything is fair game to work on, including tons of 1-line and stub functions in src/ that make for an easy PR! ;)

TODO (Required)

  • Disassemble every asset that's extracted, or convert them into images and build them
  • Work on ASM shiftability and struct documentation (Asset shiftability is done!)

TODO (Necessary)

  • Actually decompile the code
  • Clean up undefined_syms.txt

TODO (non-essential)

  • Convert C code to C++ when the time comes (For this, we need knowledge on how cfront on IRIX works)