mirror of https://github.com/zeldaret/tp.git
				
				
				
			
		
			
				
	
	
		
			673 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			673 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			C++
		
	
	
	
| //
 | |
| // Generated By: dol2asm
 | |
| // Translation Unit: JUTGamePad
 | |
| //
 | |
| 
 | |
| #include "JSystem/JUtility/JUTGamePad.h"
 | |
| #include "dol2asm.h"
 | |
| #include "dolphin/types.h"
 | |
| 
 | |
| // can't type mPadList correctly because of __sinit
 | |
| // remove this once __sinit is decompiled
 | |
| #define mPadListHack (*(JSUList<JUTGamePad>*)&mPadList)
 | |
| 
 | |
| //
 | |
| // Forward References:
 | |
| //
 | |
| 
 | |
| extern "C" void __ct__10JUTGamePadFQ210JUTGamePad8EPadPort();
 | |
| extern "C" void __dt__10JUTGamePadFv();
 | |
| extern "C" void initList__10JUTGamePadFv();
 | |
| extern "C" void init__10JUTGamePadFv();
 | |
| extern "C" void clear__10JUTGamePadFv();
 | |
| extern "C" void read__10JUTGamePadFv();
 | |
| extern "C" void assign__10JUTGamePadFv();
 | |
| extern "C" void checkResetCallback__10JUTGamePadFx();
 | |
| extern "C" void update__10JUTGamePadFv();
 | |
| extern "C" void checkResetSwitch__10JUTGamePadFv();
 | |
| extern "C" void clearForReset__10JUTGamePadFv();
 | |
| extern "C" void clear__Q210JUTGamePad7CButtonFv();
 | |
| extern "C" void update__Q210JUTGamePad7CButtonFPC9PADStatusUl();
 | |
| extern "C" void clear__Q210JUTGamePad6CStickFv();
 | |
| extern "C" void
 | |
| update__Q210JUTGamePad6CStickFScScQ210JUTGamePad10EStickModeQ210JUTGamePad11EWhichStickUl();
 | |
| extern "C" void getButton__Q210JUTGamePad6CStickFUl();
 | |
| extern "C" void clear__Q210JUTGamePad7CRumbleFv();
 | |
| extern "C" void clear__Q210JUTGamePad7CRumbleFP10JUTGamePad();
 | |
| extern "C" void startMotor__Q210JUTGamePad7CRumbleFi();
 | |
| extern "C" void stopMotor__Q210JUTGamePad7CRumbleFib();
 | |
| extern "C" static void getNumBit__FPUci();
 | |
| extern "C" void update__Q210JUTGamePad7CRumbleFs();
 | |
| extern "C" void triggerPatternedRumble__Q210JUTGamePad7CRumbleFUl();
 | |
| extern "C" void startPatternedRumble__Q210JUTGamePad7CRumbleFPvQ310JUTGamePad7CRumble7ERumbleUl();
 | |
| extern "C" void stopPatternedRumble__Q210JUTGamePad7CRumbleFs();
 | |
| extern "C" void stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv();
 | |
| extern "C" void getGamePad__10JUTGamePadFi();
 | |
| extern "C" void setEnabled__Q210JUTGamePad7CRumbleFUl();
 | |
| extern "C" void setRepeat__Q210JUTGamePad7CButtonFUlUlUl();
 | |
| extern "C" void recalibrate__10JUTGamePadFUl();
 | |
| extern "C" void checkCallback__19JUTGamePadLongPressFiUl();
 | |
| extern "C" void __sinit_JUTGamePad_cpp();
 | |
| extern "C" void func_802E1C54(void* _this);
 | |
| extern "C" void __ct__Q210JUTGamePad6CStickFv();
 | |
| extern "C" void __ct__Q210JUTGamePad7CButtonFv();
 | |
| extern "C" void func_802E1D08(void* _this);
 | |
| extern "C" u8 sChannelMask__Q210JUTGamePad7CRumble[16];
 | |
| extern "C" u8 mPadList__10JUTGamePad[12];
 | |
| extern "C" u8 mPadStatus__10JUTGamePad[48];
 | |
| extern "C" u8 mPadButton__10JUTGamePad[192];
 | |
| extern "C" u8 mPadMStick__10JUTGamePad[64];
 | |
| extern "C" u8 mPadSStick__10JUTGamePad[64];
 | |
| extern "C" u8 sPatternList__19JUTGamePadLongPress[12];
 | |
| extern "C" u32 sStickMode__10JUTGamePad;
 | |
| extern "C" u32 sClampMode__10JUTGamePad;
 | |
| extern "C" f32 sPressPoint__Q210JUTGamePad6CStick;
 | |
| extern "C" f32 sReleasePoint__Q210JUTGamePad6CStick;
 | |
| extern "C" u32 sResetPattern__Q210JUTGamePad13C3ButtonReset;
 | |
| extern "C" u32 sResetMaskPattern__Q210JUTGamePad13C3ButtonReset;
 | |
| extern "C" u8 mPadAssign__10JUTGamePad[4];
 | |
| extern "C" u8 sSuppressPadReset__10JUTGamePad[4];
 | |
| extern "C" u8 sAnalogMode__10JUTGamePad[4];
 | |
| extern "C" u8 sRumbleSupported__10JUTGamePad[4];
 | |
| extern "C" u8 mStatus__Q210JUTGamePad7CRumble[4];
 | |
| extern "C" u8 mEnabled__Q210JUTGamePad7CRumble[4];
 | |
| extern "C" u8 sCallback__Q210JUTGamePad13C3ButtonReset[4];
 | |
| extern "C" u8 sCallbackArg__Q210JUTGamePad13C3ButtonReset[4 + 4 /* padding */];
 | |
| extern "C" u8 sThreshold__Q210JUTGamePad13C3ButtonReset[4];
 | |
| extern "C" u8 sResetOccurredPort__Q210JUTGamePad13C3ButtonReset[4];
 | |
| 
 | |
| //
 | |
| // External References:
 | |
| //
 | |
| 
 | |
| extern "C" void __dl__FPv();
 | |
| extern "C" void __ct__11JKRDisposerFv();
 | |
| extern "C" void __dt__11JKRDisposerFv();
 | |
| extern "C" void __ct__10JSUPtrLinkFPv();
 | |
| extern "C" void __dt__10JSUPtrLinkFv();
 | |
| extern "C" void __ct__10JSUPtrListFb();
 | |
| extern "C" void __dt__10JSUPtrListFv();
 | |
| extern "C" void initiate__10JSUPtrListFv();
 | |
| extern "C" void append__10JSUPtrListFP10JSUPtrLink();
 | |
| extern "C" void remove__10JSUPtrListFP10JSUPtrLink();
 | |
| extern "C" void OSGetResetSwitchState();
 | |
| extern "C" void __register_global_object();
 | |
| extern "C" void __construct_array();
 | |
| extern "C" void _savegpr_22();
 | |
| extern "C" void _savegpr_27();
 | |
| extern "C" void _savegpr_28();
 | |
| extern "C" void _savegpr_29();
 | |
| extern "C" void _restgpr_22();
 | |
| extern "C" void _restgpr_27();
 | |
| extern "C" void _restgpr_28();
 | |
| extern "C" void _restgpr_29();
 | |
| extern "C" void atan2();
 | |
| extern "C" extern u32 __float_nan;
 | |
| 
 | |
| //
 | |
| // Declarations:
 | |
| //
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 803CC5F0-803CC600 029710 0010+00 3/3 0/0 0/0 .data sChannelMask__Q210JUTGamePad7CRumble */
 | |
| SECTION_DATA PADMask JUTGamePad::CRumble::sChannelMask[4] = {
 | |
|     PAD_CHAN0_BIT,
 | |
|     PAD_CHAN1_BIT,
 | |
|     PAD_CHAN2_BIT,
 | |
|     PAD_CHAN3_BIT,
 | |
| };
 | |
| 
 | |
| /* 803CC600-803CC610 029720 0010+00 2/2 0/0 0/0 .data            channel_mask */
 | |
| SECTION_DATA static u32 channel_mask[4] = {0x80000000, 0x40000000, 0x20000000, 0x10000000};
 | |
| 
 | |
| /* 803CC610-803CC620 029730 000C+04 2/2 0/0 0/0 .data            __vt__10JUTGamePad */
 | |
| SECTION_DATA extern void* __vt__10JUTGamePad[3 + 1 /* padding */] = {
 | |
|     (void*)NULL /* RTTI */,
 | |
|     (void*)NULL,
 | |
|     (void*)__dt__10JUTGamePadFv,
 | |
|     /* padding */
 | |
|     NULL,
 | |
| };
 | |
| 
 | |
| /* 804343D8-804343E4 0610F8 000C+00 3/3 0/0 0/0 .bss             @525 */
 | |
| static u8 lit_525[12];
 | |
| 
 | |
| /* 804343E4-804343F0 061104 000C+00 4/6 0/0 0/0 .bss             mPadList__10JUTGamePad */
 | |
| u8 JUTGamePad::mPadList[12];
 | |
| 
 | |
| /* 804514D0-804514D4 0009D0 0004+00 1/1 0/0 0/0 .sbss            None */
 | |
| static bool data_804514D0;
 | |
| 
 | |
| /* 804514D4-804514D8 0009D4 0004+00 3/3 0/0 0/0 .sbss            mPadAssign__10JUTGamePad */
 | |
| u8 JUTGamePad::mPadAssign[4];
 | |
| 
 | |
| /* 802E06DC-802E07B0 2DB01C 00D4+00 0/0 4/4 0/0 .text __ct__10JUTGamePadFQ210JUTGamePad8EPadPort
 | |
|  */
 | |
| #ifdef NONMATCHING
 | |
| // TODO(erin): probably ~easy to do, i just didn't do it yet :)
 | |
| JUTGamePad::JUTGamePad(EPadPort port) : ptr_link(this) {
 | |
|     this->buttons.clear();
 | |
|     this->control_stick.clear();
 | |
|     this->c_stick.clear();
 | |
|     this->rumble.clear();
 | |
| }
 | |
| #else
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm JUTGamePad::JUTGamePad(JUTGamePad::EPadPort param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/__ct__10JUTGamePadFQ210JUTGamePad8EPadPort.s"
 | |
| }
 | |
| #pragma pop
 | |
| #endif
 | |
| 
 | |
| /* 802E07B0-802E085C 2DB0F0 00AC+00 1/0 2/2 0/0 .text            __dt__10JUTGamePadFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm JUTGamePad::~JUTGamePad() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/__dt__10JUTGamePadFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E085C-802E0898 2DB19C 003C+00 1/1 0/0 0/0 .text            initList__10JUTGamePadFv */
 | |
| void JUTGamePad::initList() {
 | |
|     if (/* mIsPadListInitialized */ data_804514D0 == false) {
 | |
|         mPadListHack.initiate();
 | |
|         data_804514D0 = true;
 | |
|     }
 | |
| }
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 804514D8-804514DC 0009D8 0004+00 2/2 0/0 0/0 .sbss            sSuppressPadReset__10JUTGamePad */
 | |
| u8 JUTGamePad::sSuppressPadReset[4];
 | |
| 
 | |
| /* 804514DC-804514E0 0009DC 0004+00 1/1 1/1 0/0 .sbss            sAnalogMode__10JUTGamePad */
 | |
| s32 JUTGamePad::sAnalogMode;
 | |
| 
 | |
| /* 802E0898-802E08D0 2DB1D8 0038+00 0/0 1/1 0/0 .text            init__10JUTGamePadFv */
 | |
| s32 JUTGamePad::init() {
 | |
|     PADSetSpec(5);
 | |
|     sAnalogMode = 3;
 | |
|     PADSetAnalogMode(3);
 | |
| 
 | |
|     return PADInit();
 | |
| }
 | |
| 
 | |
| /* 802E08D0-802E08E4 2DB210 0014+00 1/1 0/0 0/0 .text            clear__10JUTGamePadFv */
 | |
| void JUTGamePad::clear() {
 | |
|     mButtonReset.mReset = false;
 | |
|     field_0xa8 = 1;
 | |
| }
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 804343F0-80434420 061110 0030+00 1/3 1/1 0/0 .bss             mPadStatus__10JUTGamePad */
 | |
| PADStatus JUTGamePad::mPadStatus[4];
 | |
| 
 | |
| /* 80434420-804344E0 061140 00C0+00 1/4 0/0 0/0 .bss             mPadButton__10JUTGamePad */
 | |
| u8 JUTGamePad::mPadButton[192];
 | |
| 
 | |
| /* 804344E0-80434520 061200 0040+00 0/3 0/0 0/0 .bss             mPadMStick__10JUTGamePad */
 | |
| #pragma push
 | |
| #pragma force_active on
 | |
| u8 JUTGamePad::mPadMStick[64];
 | |
| #pragma pop
 | |
| 
 | |
| /* 80434520-80434560 061240 0040+00 0/3 0/0 0/0 .bss             mPadSStick__10JUTGamePad */
 | |
| #pragma push
 | |
| #pragma force_active on
 | |
| u8 JUTGamePad::mPadSStick[64];
 | |
| #pragma pop
 | |
| 
 | |
| /* 804508D8-804508DC 000358 0004+00 1/1 0/0 0/0 .sdata           sStickMode__10JUTGamePad */
 | |
| SECTION_SDATA u32 JUTGamePad::sStickMode = 0x00000001;
 | |
| 
 | |
| /* 804508DC-804508E0 00035C 0004+00 2/2 0/0 0/0 .sdata           sClampMode__10JUTGamePad */
 | |
| SECTION_SDATA u32 JUTGamePad::sClampMode = 0x00000001;
 | |
| 
 | |
| /* 804514E0-804514E4 0009E0 0004+00 1/1 2/2 0/0 .sbss            sRumbleSupported__10JUTGamePad */
 | |
| u32 JUTGamePad::sRumbleSupported;
 | |
| 
 | |
| /* 802E08E4-802E0BBC 2DB224 02D8+00 0/0 2/2 0/0 .text            read__10JUTGamePadFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::read() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/read__10JUTGamePadFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E0BBC-802E0C6C 2DB4FC 00B0+00 1/1 0/0 0/0 .text            assign__10JUTGamePadFv */
 | |
| #if 0
 | |
| // matches if all static variables have their proper type
 | |
| void JUTGamePad::assign() {
 | |
|     s32 iVar3 = 0;
 | |
| 
 | |
|     for (s32 i = 4; i > 0; i--) {
 | |
|         if ((/* mPadStatus */ lbl_804343F0[iVar3].error == 0) &&
 | |
|             (/* *puVar2 */ lbl_804514D4[iVar3] == 0)) {
 | |
|             mPortNum = iVar3;
 | |
|             /* JUTGamePad::mPadAssign[iVar3] */ /* *puVar2 */ lbl_804514D4[iVar3] = 1;
 | |
|             /* JUTGamePad::mPadButton */ lbl_80434420[iVar3].setRepeat(
 | |
|                 this->buttons.field_0x24, this->buttons.field_0x28, this->buttons.field_0x2c);
 | |
|             this->rumble.clear(this);
 | |
| 
 | |
|             return;
 | |
|         }
 | |
| 
 | |
|         iVar3++;
 | |
|     }
 | |
| }
 | |
| #else
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::assign() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/assign__10JUTGamePadFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| #endif
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 804514E4-804514E8 0009E4 0004+00 5/5 0/0 0/0 .sbss            mStatus__Q210JUTGamePad7CRumble */
 | |
| bool JUTGamePad::CRumble::mStatus[4];
 | |
| 
 | |
| /* 804514E8-804514EC 0009E8 0004+00 5/5 0/0 0/0 .sbss            mEnabled__Q210JUTGamePad7CRumble */
 | |
| PADMask JUTGamePad::CRumble::mEnabled;
 | |
| 
 | |
| /* 804514EC-804514F0 0009EC 0004+00 2/2 4/4 0/0 .sbss sCallback__Q210JUTGamePad13C3ButtonReset */
 | |
| callbackFn JUTGamePad::C3ButtonReset::sCallback;
 | |
| 
 | |
| /* 804514F0-804514F8 0009F0 0004+04 2/2 4/4 0/0 .sbss sCallbackArg__Q210JUTGamePad13C3ButtonReset
 | |
|  */
 | |
| void* JUTGamePad::C3ButtonReset::sCallbackArg;
 | |
| 
 | |
| /* 804514F8-80451500 0009F8 0008+00 2/2 0/0 0/0 .sbss sThreshold__Q210JUTGamePad13C3ButtonReset */
 | |
| OSTime JUTGamePad::C3ButtonReset::sThreshold;
 | |
| 
 | |
| /* 80451500-80451504 -00001 0004+00 3/3 6/6 0/0 .sbss            None */
 | |
| /* 80451500 0001+00 data_80451500 None */
 | |
| /* 80451501 0003+00 data_80451501 None */
 | |
| bool struct_80451500;
 | |
| bool struct_80451501;
 | |
| 
 | |
| /* 80451504-80451508 000A04 0004+00 2/2 0/0 0/0 .sbss
 | |
|  * sResetOccurredPort__Q210JUTGamePad13C3ButtonReset            */
 | |
| s32 JUTGamePad::C3ButtonReset::sResetOccurredPort;
 | |
| 
 | |
| /* 802E0C6C-802E0CD8 2DB5AC 006C+00 1/1 1/1 0/0 .text            checkResetCallback__10JUTGamePadFx
 | |
|  */
 | |
| void JUTGamePad::checkResetCallback(OSTime unk) {
 | |
|     if (unk < JUTGamePad::C3ButtonReset::sThreshold)
 | |
|         return;
 | |
| 
 | |
|     struct_80451501 = true;
 | |
|     JUTGamePad::C3ButtonReset::sResetOccurredPort = mPortNum;
 | |
|     if (JUTGamePad::C3ButtonReset::sCallback != NULL) {
 | |
|         JUTGamePad::C3ButtonReset::sCallback(mPortNum, JUTGamePad::C3ButtonReset::sCallbackArg);
 | |
|     }
 | |
| }
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 80434560-8043456C 061280 000C+00 0/1 0/0 0/0 .bss             @1373 */
 | |
| #pragma push
 | |
| #pragma force_active on
 | |
| static u8 lit_1373[12];
 | |
| #pragma pop
 | |
| 
 | |
| /* 8043456C-80434578 06128C 000C+00 1/2 0/0 0/0 .bss             sPatternList__19JUTGamePadLongPress
 | |
|  */
 | |
| u8 JUTGamePadLongPress::sPatternList[12];
 | |
| 
 | |
| /* 804508E0-804508E4 000360 0004+00 1/1 0/0 0/0 .sdata           sPressPoint__Q210JUTGamePad6CStick
 | |
|  */
 | |
| SECTION_SDATA f32 JUTGamePad::CStick::sPressPoint = 0.5f;
 | |
| 
 | |
| /* 804508E4-804508E8 000364 0004+00 1/1 0/0 0/0 .sdata sReleasePoint__Q210JUTGamePad6CStick */
 | |
| SECTION_SDATA f32 JUTGamePad::CStick::sReleasePoint = 0.25f;
 | |
| 
 | |
| /* 804508E8-804508EC 000368 0004+00 1/1 0/0 0/0 .sdata
 | |
|  * sResetPattern__Q210JUTGamePad13C3ButtonReset                 */
 | |
| SECTION_SDATA u32 JUTGamePad::C3ButtonReset::sResetPattern = 0x00001600;
 | |
| 
 | |
| /* 804508EC-804508F0 00036C 0004+00 1/1 0/0 0/0 .sdata
 | |
|  * sResetMaskPattern__Q210JUTGamePad13C3ButtonReset             */
 | |
| SECTION_SDATA u32 JUTGamePad::C3ButtonReset::sResetMaskPattern = 0x0000FFFF;
 | |
| 
 | |
| /* 802E0CD8-802E0FA4 2DB618 02CC+00 2/2 0/0 0/0 .text            update__10JUTGamePadFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::update() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/update__10JUTGamePadFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E0FA4-802E1024 2DB8E4 0080+00 1/1 0/0 0/0 .text            checkResetSwitch__10JUTGamePadFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::checkResetSwitch() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/checkResetSwitch__10JUTGamePadFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1024-802E1050 2DB964 002C+00 0/0 1/1 0/0 .text            clearForReset__10JUTGamePadFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::clearForReset() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/clearForReset__10JUTGamePadFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1050-802E108C 2DB990 003C+00 2/2 0/0 0/0 .text            clear__Q210JUTGamePad7CButtonFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CButton::clear() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/clear__Q210JUTGamePad7CButtonFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 80456018-80456020 004618 0004+04 1/1 0/0 0/0 .sdata2          @1047 */
 | |
| SECTION_SDATA2 static f32 lit_1047[1 + 1 /* padding */] = {
 | |
|     150.0f,
 | |
|     /* padding */
 | |
|     0.0f,
 | |
| };
 | |
| 
 | |
| /* 80456020-80456028 004620 0008+00 2/2 0/0 0/0 .sdata2          @1050 */
 | |
| SECTION_SDATA2 static f64 lit_1050 = 4503601774854144.0 /* cast s32 to float */;
 | |
| 
 | |
| /* 802E108C-802E121C 2DB9CC 0190+00 1/1 0/0 0/0 .text
 | |
|  * update__Q210JUTGamePad7CButtonFPC9PADStatusUl                */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm u32 JUTGamePad::CButton::update(PADStatus const* param_0, u32 param_1) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/update__Q210JUTGamePad7CButtonFPC9PADStatusUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 80456028-80456030 004628 0004+04 2/2 0/0 0/0 .sdata2          @1056 */
 | |
| SECTION_SDATA2 static f32 lit_1056[1 + 1 /* padding */] = {
 | |
|     0.0f,
 | |
|     /* padding */
 | |
|     0.0f,
 | |
| };
 | |
| 
 | |
| /* 802E121C-802E1238 2DBB5C 001C+00 2/2 0/0 0/0 .text            clear__Q210JUTGamePad6CStickFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CStick::clear() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/clear__Q210JUTGamePad6CStickFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* ############################################################################################## */
 | |
| /* 80456030-80456038 004630 0008+00 1/1 0/0 0/0 .sdata2          @1117 */
 | |
| SECTION_SDATA2 static f64 lit_1117 = 0.5;
 | |
| 
 | |
| /* 80456038-80456040 004638 0008+00 1/1 0/0 0/0 .sdata2          @1118 */
 | |
| SECTION_SDATA2 static f64 lit_1118 = 3.0;
 | |
| 
 | |
| /* 80456040-80456048 004640 0008+00 1/1 0/0 0/0 .sdata2          @1119 */
 | |
| SECTION_SDATA2 static u8 lit_1119[8] = {
 | |
|     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | |
| };
 | |
| 
 | |
| /* 80456048-8045604C 004648 0004+00 1/1 0/0 0/0 .sdata2          @1120 */
 | |
| SECTION_SDATA2 static f32 lit_1120 = 1.0f;
 | |
| 
 | |
| /* 8045604C-80456050 00464C 0004+00 1/1 0/0 0/0 .sdata2          @1121 */
 | |
| SECTION_SDATA2 static f32 lit_1121 = 10430.37890625f;
 | |
| 
 | |
| /* 802E1238-802E1500 2DBB78 02C8+00 1/1 0/0 0/0 .text
 | |
|  * update__Q210JUTGamePad6CStickFScScQ210JUTGamePad10EStickModeQ210JUTGamePad11EWhichStickUl */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm u32 JUTGamePad::CStick::update(s8 param_0, s8 param_1, JUTGamePad::EStickMode param_2,
 | |
|                                    JUTGamePad::EWhichStick param_3, u32 param_4) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/func_802E1238.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1500-802E15B4 2DBE40 00B4+00 1/1 0/0 0/0 .text            getButton__Q210JUTGamePad6CStickFUl
 | |
|  */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm u32 JUTGamePad::CStick::getButton(u32 param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/getButton__Q210JUTGamePad6CStickFUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E15B4-802E15D8 2DBEF4 0024+00 1/1 0/0 0/0 .text            clear__Q210JUTGamePad7CRumbleFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::clear() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/clear__Q210JUTGamePad7CRumbleFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E15D8-802E1634 2DBF18 005C+00 2/2 0/0 0/0 .text clear__Q210JUTGamePad7CRumbleFP10JUTGamePad
 | |
|  */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::clear(JUTGamePad* param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/clear__Q210JUTGamePad7CRumbleFP10JUTGamePad.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1634-802E168C 2DBF74 0058+00 1/1 0/0 0/0 .text startMotor__Q210JUTGamePad7CRumbleFi */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::startMotor(int param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/startMotor__Q210JUTGamePad7CRumbleFi.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E168C-802E16F8 2DBFCC 006C+00 4/4 3/3 0/0 .text stopMotor__Q210JUTGamePad7CRumbleFib */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::stopMotor(int param_0, bool param_1) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/stopMotor__Q210JUTGamePad7CRumbleFib.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E16F8-802E1720 2DC038 0028+00 1/1 0/0 0/0 .text            getNumBit__FPUci */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| static asm void getNumBit(u8* param_0, int param_1) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/getNumBit__FPUci.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1720-802E18A4 2DC060 0184+00 1/1 0/0 0/0 .text            update__Q210JUTGamePad7CRumbleFs */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::update(s16 param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/update__Q210JUTGamePad7CRumbleFs.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E18A4-802E18CC 2DC1E4 0028+00 1/1 0/0 0/0 .text
 | |
|  * triggerPatternedRumble__Q210JUTGamePad7CRumbleFUl            */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::triggerPatternedRumble(u32 param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/triggerPatternedRumble__Q210JUTGamePad7CRumbleFUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E18CC-802E1948 2DC20C 007C+00 0/0 2/2 0/0 .text
 | |
|  * startPatternedRumble__Q210JUTGamePad7CRumbleFPvQ310JUTGamePad7CRumble7ERumbleUl */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::startPatternedRumble(void* param_0,
 | |
|                                                    JUTGamePad::CRumble::ERumble param_1,
 | |
|                                                    u32 param_2) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/startPatternedRumble__Q210JUTGamePad7CRumbleFPvQ310JUTGamePad7CRumble7ERumbleUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1948-802E1978 2DC288 0030+00 1/1 3/3 0/0 .text
 | |
|  * stopPatternedRumble__Q210JUTGamePad7CRumbleFs                */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::stopPatternedRumble(s16 param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/stopPatternedRumble__Q210JUTGamePad7CRumbleFs.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1978-802E199C 2DC2B8 0024+00 0/0 1/1 0/0 .text
 | |
|  * stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv     */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::stopPatternedRumbleAtThePeriod() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E199C-802E19D8 2DC2DC 003C+00 1/1 1/1 0/0 .text            getGamePad__10JUTGamePadFi */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm JUTGamePad* JUTGamePad::getGamePad(int param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/getGamePad__10JUTGamePadFi.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E19D8-802E1A7C 2DC318 00A4+00 1/1 1/1 0/0 .text setEnabled__Q210JUTGamePad7CRumbleFUl */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CRumble::setEnabled(u32 param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/setEnabled__Q210JUTGamePad7CRumbleFUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1A7C-802E1A98 2DC3BC 001C+00 1/1 0/0 0/0 .text setRepeat__Q210JUTGamePad7CButtonFUlUlUl */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePad::CButton::setRepeat(u32 param_0, u32 param_1, u32 param_2) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/setRepeat__Q210JUTGamePad7CButtonFUlUlUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1A98-802E1AFC 2DC3D8 0064+00 1/1 0/0 0/0 .text            recalibrate__10JUTGamePadFUl */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm bool JUTGamePad::recalibrate(u32 param_0) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/recalibrate__10JUTGamePadFUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1AFC-802E1B60 2DC43C 0064+00 1/1 0/0 0/0 .text checkCallback__19JUTGamePadLongPressFiUl */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void JUTGamePadLongPress::checkCallback(int param_0, u32 param_1) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/checkCallback__19JUTGamePadLongPressFiUl.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1B60-802E1C54 2DC4A0 00F4+00 0/0 1/0 0/0 .text            __sinit_JUTGamePad_cpp */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm void __sinit_JUTGamePad_cpp() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/__sinit_JUTGamePad_cpp.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| #pragma push
 | |
| #pragma force_active on
 | |
| REGISTER_CTORS(0x802E1B60, __sinit_JUTGamePad_cpp);
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1C54-802E1CA8 2DC594 0054+00 1/1 0/0 0/0 .text __dt__30JSUList<19JUTGamePadLongPress>Fv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| extern "C" asm void func_802E1C54(void* _this) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/func_802E1C54.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1CA8-802E1CD8 2DC5E8 0030+00 1/1 0/0 0/0 .text            __ct__Q210JUTGamePad6CStickFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm JUTGamePad::CStick::CStick() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/__ct__Q210JUTGamePad6CStickFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1CD8-802E1D08 2DC618 0030+00 1/1 0/0 0/0 .text            __ct__Q210JUTGamePad7CButtonFv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| asm JUTGamePad::CButton::CButton() {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/__ct__Q210JUTGamePad7CButtonFv.s"
 | |
| }
 | |
| #pragma pop
 | |
| 
 | |
| /* 802E1D08-802E1D5C 2DC648 0054+00 1/1 0/0 0/0 .text            __dt__21JSUList<10JUTGamePad>Fv */
 | |
| #pragma push
 | |
| #pragma optimization_level 0
 | |
| #pragma optimizewithasm off
 | |
| extern "C" asm void func_802E1D08(void* _this) {
 | |
|     nofralloc
 | |
| #include "asm/JSystem/JUtility/JUTGamePad/func_802E1D08.s"
 | |
| }
 | |
| #pragma pop
 |