Commit Graph
87 Commits
Author SHA1 Message Date
052119c7a7 a new tool: splitter (#39)
* splitter: v0.1

* basic demangle stuff

* splitter: v0.2

- add from, to options to select line range in .s to process
- infer referred labels from both loads and stores
- dump our own function labels in addition to externs into functions.h,
  to provide forward declarations for labels that other functions might
  use.
- fix off-by-one which was eating the last instruction of some functions

* splitter: v0.3

merged a bunch of work lepelog did, including:
- demangling support
- better function identification
- automatic FORCEACTIVE

and did a little bit of cleanup

* splitter: improve sda hack and format

* splitter: fix comment_out(), patch GQR references

* splitter: some speed optimizations

* remove debug print

* splitter: forceactive options

* refactor demangler, add support for more operators and more mangling symbols

* array and member (still one non working case)

* fix some operands in demangler

* make parents for funcs_out

* splitter: fix off-by-one in last line of last function in some .s files

Co-authored-by: lepelog <lepelog@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 02:22:57 -05:00
c5b3cbaa08 JKRAssertHeap OK (#47)
* JKRAssertHeap OK

* removed JKRAssertHeap asm files.

Co-authored-by: Julgodis <>
2021-01-02 02:14:43 -05:00
e42d44e6cb M_do_controller_pad split and partially matched (#36)
* m_Do_controller_pad split

* Attempt to match and match mDoCPd_c::recalibrate

* Fix Merge Errors

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 02:02:19 -05:00
69faf591d4 d_kankyo, d_kankyo_*: autosplit (#44)
- d_kankyo
- d_kankyo_rain
- d_kankyo_wether
- d_kankyo_rain

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:54:59 -05:00
915991f431 most daMidna_c (#43)
* most daMidna_c done

* setLinkState ok

* format

* remove asm

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:46:34 -05:00
ee838ccbc6 d_item getcheck improvements (#46)
* more accurate getcheck funcs

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:44:02 -05:00
notyouravandGitHub 22be2e1a6d OSX support (#48) 2021-01-02 01:41:40 -05:00
lepelogandGitHub 0555115de8 A few f_pc files (#26)
* f_pc_base, one non matching

* some of f_pc_manager

* f_pc_node OK

* f_pc_pause partly

* started node_req

* more progress

* most of node req

* delete unused asm

* node req header and param names

* param renaming

* header for manager

* review comment struct names

* fpcM_Management OK

* int -> s32

* merge master

* most of f_pc_create_iter

* f_pc_stdcreate_req OK

* f_pc_fstcreate OK

* f_pc_leaf OK

* f_pc_draw OK

* f_pc_deletor partly

* fix parameter type in f_pc_pause

* review

* review, use cPh enum and fix process_profile_definition struct

* convert f_pc files to C

* matched more functions

* fix global.h

* fix variable types

* format

* mpre Phs enum

* fix merge errors

* fix gamepad stopPatternedRumble

* format

* delete leftover files from merge

* move asm to correct folder

* revert f_pc from C to CPP

* remove C hacks and format

* format

* OK
2020-12-31 15:12:29 -05:00
992cf48c7f Split and decompile parts of JUTGamePad (#33)
* JUTGamePad.o: elaborate classes, split

* JUTGamePad::CButton: decompile functions:
- clear()
- clear(JUTGamePad*)
- setRepeat()

* elaborate PAD* types in new header

* decompile getNumBit()

* elaborate JUTGamePad fields

* move retyped externs from variables.h to JUTGamePad.h

* elaborate JUTGamePadLongPress

* JUTGamePad: decompile functions

- initList()
- init()
- clear()
- assign()
- checkResetCallback()
- checkResetSwitch()
- clearForReset()
- recalibrate()

JUTGamePad: decompile

* JUTGamePad::CStick::clear(): decompile

* JUTGamePad::CRumble: decompile functions

- startMotor()
- stopMotor()
- triggerPatternedRumble()
- startPatternedRumble()
- stopPatternedRumbleAtThePeriod()
- setEnabled()

* JUTGamePadLongPress::checkCallback(): decompile

* nonmatching: JUTGamePad::CRumble::update() and JUTGamePad::getGamePad

* JSUList<T>: allow access to JSUPtrList functions

* functions.h: clear out some func decls that are no longer used

* add notes in JUTGamePad.cpp

* clang-format + add back extern funcs

* fix some more extern labels

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 20:22:18 -05:00
2dddd746a6 split d_attention (#40)
* d_attention.cpp: split

* clang-format + add back in dropped labels

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 18:19:10 -05:00
cba64289a4 JUTXfb: decompile (#38)
* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile

* JUTXfb: split

* JUTXfb: decompile (except for almost-matching ctor)

Elaborates JUTVideo and some related stuff.
Decompiles the following functions:
- JUTXfb::initiate()
- JUTXfb::createManager()
- JUTXfb::common_init()
- JUTXfb::destroyManager()
- JUTXfb::~JUTXfb()
- JUTXfb::JUTXfb(): *almost* matching up to regalloc

* clang-format and extern label modifications

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 18:01:48 -05:00
6a16bef70e d_lib split and partially matched (#30)
* d_lib split and partially matched

* clang-format

* modify some extern labels

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 17:39:36 -05:00
Erin MoonandGitHub 8630c588e9 d_a_alink.cpp: split (#41) 2020-12-29 17:08:25 -05:00
Pheenoh d23b63c7cb add clang-format CI check 2020-12-26 13:18:14 -05:00
Pheenoh 9e442d11ca move asm in TUs to files, add diff.py 2020-12-26 13:03:37 -05:00
Pheenoh 4c504d078d run clang-format 2020-12-26 11:31:49 -05:00
unknown 64a6a97b7b add missing class and clang-format 2020-12-25 21:16:13 -05:00
unknown e066711553 add missing class in d_save and clang-format 2020-12-25 21:11:16 -05:00
e8315cdb81 begin splitting d_a_alink (#34)
* begin splitting d_a_alink

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-25 21:03:10 -05:00
Erin MoonandGitHub 58fc83c4f8 m_Do_Reset: OK (#35)
* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile
2020-12-25 20:59:52 -05:00
TakaRikkaandGitHub 22bda03652 more d_item / d_a_horse_static done (#32)
* more d_item funcs done / add dSv_info_c to gameinfo

* checkWait ok / remove asm
2020-12-14 14:07:29 -05:00
43ac7130b9 diff_settings.py: update for new ppc-enabled diff.py (#31)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:52:46 -05:00
e4ad32409b d_bomb OK (#28)
* Start Z2SceneMgr

* Various Fixes After Merge

* d_bomb OK

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:49:40 -05:00
70cd727038 re_notes.md (#25)
Co-authored-by: notyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:47:39 -05:00
c65c2dbb8f Z2StatusMgr (#24)
* split Z2SeMgr / begin split of Z2SeqMgr

* Z2StatusMgr ok

most of Z2StatusMgr done, rest split

* name some class members

* name some Z2SceneMgr vars

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:43:16 -05:00