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>
This commit is contained in:
Erin Moon
2020-12-29 20:22:18 -05:00
committed by GitHub
co-authored by Pheenoh
parent 2dddd746a6
commit 992cf48c7f
26 changed files with 1644 additions and 1555 deletions
+26 -2
View File
@@ -375,6 +375,30 @@ extern u8 lbl_804342E8; // JKernel::decompMutex (static?)
extern u8 lbl_804508B8; // JKRAram::sSZSBufferSize
extern u8 lbl_803CC128; // JKRAram::sMessageBuffer
//// JUTGamePad:
// func_802E06DC
extern u8 lbl_803CC610;
// func_802E08E4
extern u8 lbl_804343D8;
extern u8 lbl_804508DC;
extern u8 lbl_804508D8;
// func_802E0CD8
extern u8 lbl_804508E8;
extern u8 lbl_804508EC;
extern u8 lbl_8043456C;
// func_802E108C
extern u8 lbl_80456020;
extern u8 lbl_80456018;
// func_802E1238
extern u8 lbl_80456030;
extern u8 lbl_80456038;
extern u8 lbl_80456040;
extern u8 lbl_80456048;
extern u8 lbl_8045604C;
// func_802E1500
extern u8 lbl_804508E4;
extern u8 lbl_804508E0;
extern double lbl_803DD2F0;
extern f32 lbl_80451180;
@@ -402,8 +426,8 @@ extern char lbl_80374198[16];
// func_8001574C
extern bool lbl_80451501;
extern void* lbl_804514EC; // JUTGamePad::C3ButtonReset::sCallback
extern u32 lbl_804514F0; // JUTGamePad::C3ButtonReset::sCallbackArg
extern void (*lbl_804514EC)(int, void*); // JUTGamePad::C3ButtonReset::sCallback
extern void* lbl_804514F0; // JUTGamePad::C3ButtonReset::sCallbackArg
extern u32 lbl_803ECF00;
// additional symbols needed for d_alink.cpp