3 Commits

Author SHA1 Message Date
Alessevan 905ceeb4b3 Started decompiling ActorHeart (#41)
* feat: change symbols for ActorHeart

* feat: begin ActorHeart decompilation

* feat: continue decompilation (some changes should be refactored)

* improvements

* fix build issues

* feat: improve matching code

* fix: remove back nitro/math

* feat: load s8 as u8

* refactor: remove shady variadic function

* feat: better function, reg order issue

* refactor: switch EC, F0 and F4 to a single VecFx32 variable and improve vfunc_20

* feat: improvements in vfunc_v20

* docs: add what should be written in comments

* feat: match with temporary unknown actor structure

* style: remove unnecessary curly brackets in switch cases

* style: move external functions to the top

* docs: mark unmatched functions as non-matching

* refactor: use FLOAT_TO_Q20 instead of raw hex values

* style: remove unnecessary cast

* refactor: use macros to manipulate flags

* refactor: better floating values

* refactor: use hex values over bin values

* feat: use ROUND_Q20 to increase matching

* refactor: use Cylinder::Init instead of assigning each variable

* refactor: change mangled names

---------

Co-authored-by: Yanis002 <35189056+Yanis002@users.noreply.github.com>
2026-05-29 19:02:57 +02:00
Yanis a12d3af472 Actor_c4 improvements (#45)
* fixed Actor_c4 hierarchy and create default derived classes for all actors

* forgot public + fixed actorrupee ctor
2026-04-12 04:54:05 +02:00
Yanis c537818320 Delink all actors and all map objects (#42)
* fix jp config

* disambiguate required relocs and misc fixes

* fix wrong relocs

* generate delinks

* generate configure.py entries

* dsd format and rename symbols

* fix some ambiguated relocs

* disambiguate some relocs

* "disambiguate" some relocs

* identify & fix vtables 1

* identify & fix vtables 2

* identify & fix vtables 3

* remove fake symbols

* fix warnings

* minor symbols name fixes

* change func prefix

* find and name actor ctors

* detect and give names to dtors based on D0

* add .init delinks for actors

* ActorType -> ActorProfile

* getinstance - getprofile

* add rupee .init

* mapobjecttype -> mapobjectprofile

* mapobjecttype -> mapobjectprofile 2

* rename profile bss symbols

* delink .bss

* dsd format

* delink .ctor and rename (.p)sinit symbols

* dsd format

* create source files

* fix build issues

* add jp only actors

* fix match issues for eur

* fix match issues for jp

* fix some sinit symbol names

* class changes, thumb/arm changes

* add missing newlines

* add arm on dtors

* fix regressions

* fix warnings

* (jp) sync some symbols with eur

* fix build issues
2026-04-11 16:18:06 +02:00