mirror of https://github.com/zeldaret/tp.git
d_a_demo00 OK (#2817)
* Misc small matches * Add J3DFrameCtrl::EMode_NULL enum * Improve weak bss fakematch and remove a functionvalue fakematch * demo00 OK
This commit is contained in:
parent
4ab97e8f26
commit
bd2def28db
|
|
@ -36,7 +36,7 @@
|
|||
"build/**/*.lcf": true,
|
||||
"build/**/*.preplf": true,
|
||||
"build/**/*.d": true,
|
||||
"build/**/*.s": true,
|
||||
// "build/**/*.s": true,
|
||||
"build/**/*.map": true,
|
||||
"build/**/*.cpp": true,
|
||||
"build/**/*.ctx": true,
|
||||
|
|
|
|||
|
|
@ -163,9 +163,13 @@ __vt__19daBoomerang_sight_c = .data:0x000001E4; // type:object size:0x10 scope:g
|
|||
@1010 = .bss:0x00000038; // type:object size:0x1 scope:local
|
||||
@1009 = .bss:0x0000003C; // type:object size:0x1 scope:local
|
||||
l_HIO = .bss:0x00000040; // type:object size:0x1 scope:global
|
||||
init$2449 = .bss:0x00000041; // type:object size:0x1 scope:local align:1
|
||||
effDirection$5075 = .bss:0x00000044; // type:object size:0xC scope:local
|
||||
init$2452 = .bss:0x00000050; // type:object size:0x1 scope:local align:1
|
||||
effScale0$5078 = .bss:0x00000054; // type:object size:0xC scope:local
|
||||
init$2455 = .bss:0x00000060; // type:object size:0x1 scope:local align:1
|
||||
effScaleSand$5081 = .bss:0x00000064; // type:object size:0xC scope:local
|
||||
init$2458 = .bss:0x00000070; // type:object size:0x1 scope:local align:1
|
||||
effScaleGrass$5084 = .bss:0x00000074; // type:object size:0xC scope:local
|
||||
sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x00000080; // type:object size:0x4 scope:global
|
||||
sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x00000084; // type:object size:0x4 scope:global
|
||||
|
|
|
|||
|
|
@ -322,32 +322,44 @@ l_frontFootOffset = .bss:0x00000054; // type:object size:0xC scope:global align:
|
|||
@4180 = .bss:0x00000060; // type:object size:0xC scope:local
|
||||
l_backFootOffset = .bss:0x0000006C; // type:object size:0xC scope:global align:4 data:float
|
||||
@7279 = .bss:0x00000078; // type:object size:0xC scope:local
|
||||
init$4891 = .bss:0x00000084; // type:object size:0x1 scope:local align:1
|
||||
localEyePos$7278 = .bss:0x00000088; // type:object size:0xC scope:local
|
||||
@7469 = .bss:0x00000094; // type:object size:0xC scope:local
|
||||
runScale$7468 = .bss:0x000000A4; // type:object size:0xC scope:local
|
||||
@7473 = .bss:0x000000B0; // type:object size:0xC scope:local
|
||||
landScale$7472 = .bss:0x000000C0; // type:object size:0xC scope:local
|
||||
@7477 = .bss:0x000000CC; // type:object size:0xC scope:local
|
||||
init$5083 = .bss:0x000000D8; // type:object size:0x1 scope:local align:1
|
||||
grassRunScale$7476 = .bss:0x000000DC; // type:object size:0xC scope:local
|
||||
@7481 = .bss:0x000000E8; // type:object size:0xC scope:local
|
||||
init$5091 = .bss:0x000000F4; // type:object size:0x1 scope:local align:1
|
||||
waterDirection$7480 = .bss:0x000000F8; // type:object size:0xC scope:local
|
||||
@8516 = .bss:0x00000104; // type:object size:0xC scope:local
|
||||
init$6089 = .bss:0x00000110; // type:object size:0x1 scope:local align:1
|
||||
reinLeftStart$8515 = .bss:0x00000114; // type:object size:0xC scope:local
|
||||
@8520 = .bss:0x00000120; // type:object size:0xC scope:local
|
||||
init$6093 = .bss:0x0000012C; // type:object size:0x1 scope:local align:1
|
||||
reinRightStart$8519 = .bss:0x00000130; // type:object size:0xC scope:local
|
||||
@8524 = .bss:0x0000013C; // type:object size:0xC scope:local
|
||||
init$6097 = .bss:0x00000148; // type:object size:0x1 scope:local align:1
|
||||
localNeckLeft$8523 = .bss:0x0000014C; // type:object size:0xC scope:local
|
||||
@8528 = .bss:0x00000158; // type:object size:0xC scope:local
|
||||
init$6101 = .bss:0x00000164; // type:object size:0x1 scope:local align:1
|
||||
localNeckRight$8527 = .bss:0x00000168; // type:object size:0xC scope:local
|
||||
@8753 = .bss:0x00000174; // type:object size:0xC scope:local
|
||||
init$6311 = .bss:0x00000180; // type:object size:0x1 scope:local align:1
|
||||
saddleLeft$8752 = .bss:0x00000184; // type:object size:0xC scope:local
|
||||
@8757 = .bss:0x00000190; // type:object size:0xC scope:local
|
||||
init$6315 = .bss:0x0000019C; // type:object size:0x1 scope:local align:1
|
||||
saddleRight$8756 = .bss:0x000001A0; // type:object size:0xC scope:local
|
||||
@8813 = .bss:0x000001AC; // type:object size:0xC scope:local
|
||||
init$6374 = .bss:0x000001B8; // type:object size:0x1 scope:local align:1
|
||||
localCenterPos$8812 = .bss:0x000001BC; // type:object size:0xC scope:local
|
||||
@8817 = .bss:0x000001C8; // type:object size:0xC scope:local
|
||||
init$6378 = .bss:0x000001D4; // type:object size:0x1 scope:local align:1
|
||||
localFrontPos$8816 = .bss:0x000001D8; // type:object size:0xC scope:local
|
||||
@8821 = .bss:0x000001E4; // type:object size:0xC scope:local
|
||||
init$6382 = .bss:0x000001F0; // type:object size:0x1 scope:local align:1
|
||||
localBackPos$8820 = .bss:0x000001F4; // type:object size:0xC scope:local
|
||||
sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x00000200; // type:object size:0x4 scope:global
|
||||
sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x00000204; // type:object size:0x4 scope:global
|
||||
|
|
|
|||
|
|
@ -1614,7 +1614,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_arrow"),
|
||||
ActorRel(NonMatching, "d_a_boomerang"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_crod"),
|
||||
ActorRel(NonMatching, "d_a_demo00"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_demo00"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_disappear"),
|
||||
ActorRel(NonMatching, "d_a_mg_rod"),
|
||||
ActorRel(Equivalent, "d_a_midna"), # weak func order
|
||||
|
|
|
|||
|
|
@ -919,11 +919,12 @@ public:
|
|||
class J3DFrameCtrl {
|
||||
public:
|
||||
enum Attribute_e {
|
||||
EMode_NONE,
|
||||
EMode_RESET,
|
||||
EMode_LOOP,
|
||||
EMode_REVERSE,
|
||||
EMode_LOOP_REVERSE,
|
||||
/* -1 */ EMode_NULL = -1,
|
||||
/* 0x0 */ EMode_NONE,
|
||||
/* 0x1 */ EMode_RESET,
|
||||
/* 0x2 */ EMode_LOOP,
|
||||
/* 0x3 */ EMode_REVERSE,
|
||||
/* 0x4 */ EMode_LOOP_REVERSE,
|
||||
};
|
||||
|
||||
J3DFrameCtrl() { this->init(0); }
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@ public:
|
|||
|
||||
static J3DMtxCalc* mCurrentMtxCalc;
|
||||
|
||||
u8 getKind() { return mKind & 15; }
|
||||
u8 getKind() const { return mKind & 15; }
|
||||
|
||||
private:
|
||||
friend struct J3DJointFactory;
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ public:
|
|||
|
||||
class TFunctionValueAttribute_refer : public JGadget::TVector_pointer<TFunctionValue*> {
|
||||
public:
|
||||
inline TFunctionValueAttribute_refer();
|
||||
TFunctionValueAttribute_refer() : JGadget::TVector_pointer<TFunctionValue*>(JGadget::TAllocator<void*>()) {}
|
||||
~TFunctionValueAttribute_refer() {}
|
||||
|
||||
/* 802816E8 */ void refer_initialize();
|
||||
|
|
|
|||
|
|
@ -7,13 +7,10 @@
|
|||
|
||||
struct demo_s1_ke_s {
|
||||
public:
|
||||
/* 804A4420 */ ~demo_s1_ke_s();
|
||||
/* 804A86B4 */ demo_s1_ke_s();
|
||||
|
||||
/* 0x000 */ cXyz field_0x0[16];
|
||||
/* 0x0C0 */ cXyz field_0xc0[16];
|
||||
/* 0x180 */ cXyz field_0x180;
|
||||
};
|
||||
}; // Size: 0x18C
|
||||
|
||||
class daDemo00_resID_c {
|
||||
public:
|
||||
|
|
@ -28,20 +25,12 @@ public:
|
|||
/* 0x18 */ u32 field_0x18;
|
||||
/* 0x1C */ u32 field_0x1c;
|
||||
/* 0x20 */ u32 field_0x20;
|
||||
};
|
||||
|
||||
class daDemo00_model_c {
|
||||
public:
|
||||
/* 804A4338 */ void reset();
|
||||
|
||||
/* 0x00 */ daDemo00_resID_c field_0x0;
|
||||
/* 0x24 */ daDemo00_resID_c mID;
|
||||
};
|
||||
}; // Size: 0x24
|
||||
|
||||
struct daDemo00_bgc_c {
|
||||
/* 0x00 */ dBgS_GndChk mGndChk;
|
||||
/* 0x54 */ f32 field_0x54;
|
||||
};
|
||||
}; // Size: 0x58
|
||||
|
||||
struct daDemo00_shadow_c {
|
||||
/* 0x00 */ u32 field_0x0;
|
||||
|
|
@ -49,7 +38,25 @@ struct daDemo00_shadow_c {
|
|||
/* 0x10 */ cXyz field_0x10;
|
||||
/* 0x1C */ f32 field_0x1c;
|
||||
/* 0x20 */ f32 field_0x20;
|
||||
};
|
||||
}; // Size: 0x24
|
||||
|
||||
class daDemo00_model_c {
|
||||
public:
|
||||
/* 804A4338 */ void reset();
|
||||
|
||||
/* 0x00 */ daDemo00_resID_c mID;
|
||||
/* 0x24 */ mDoExt_McaMorfSO* mpModelMorf;
|
||||
/* 0x28 */ J3DModel* field_0x5d4;
|
||||
/* 0x2C */ mDoExt_invisibleModel* field_0x5d8;
|
||||
/* 0x30 */ mDoExt_bpkAnm* mpBpkAnm;
|
||||
/* 0x34 */ mDoExt_btpAnm* mpBtpAnm;
|
||||
/* 0x38 */ mDoExt_btkAnm* mpBtkAnm;
|
||||
/* 0x3C */ mDoExt_brkAnm* mpBrkAnm;
|
||||
/* 0x40 */ daDemo00_shadow_c* mShadow;
|
||||
/* 0x44 */ J3DDeformData* mDeformData;
|
||||
/* 0x48 */ mDoExt_blkAnm* mpBlkAnm;
|
||||
/* 0x4C */ daDemo00_bgc_c* mBgc;
|
||||
}; // Size: 0x50
|
||||
|
||||
/**
|
||||
* @ingroup actors-unsorted
|
||||
|
|
@ -73,34 +80,20 @@ public:
|
|||
/* 804A6F94 */ int draw();
|
||||
/* 804A7BA8 */ int execute();
|
||||
|
||||
int create() {
|
||||
dKy_tevstr_init(&tevStr, dComIfGp_roomControl_getStayNo(), 0xFF);
|
||||
tevStr.field_0x384 = 1;
|
||||
mSound.init(&eyePos, NULL, 10, 1);
|
||||
setAction(&daDemo00_c::actStandby);
|
||||
mModel.field_0x0.reset();
|
||||
field_0x6a0 = -1;
|
||||
return 4;
|
||||
}
|
||||
int create();
|
||||
|
||||
void setAction(actionFunc action) { field_0x57c = action; }
|
||||
void action(dDemo_actor_c* actor) { (this->*field_0x57c)(actor); }
|
||||
|
||||
/* 0x0568 */ cXyz field_0x568;
|
||||
/* 0x0574 */ csXyz field_0x574;
|
||||
#ifdef DEBUG
|
||||
cXyz debug_field_0x570;
|
||||
csXyz debug_field_0x57c;
|
||||
#endif
|
||||
/* 0x057C */ actionFunc field_0x57c;
|
||||
/* 0x0584 */ daDemo00_model_c mModel;
|
||||
/* 0x05D0 */ mDoExt_McaMorfSO* mpModelMorf;
|
||||
/* 0x05D4 */ J3DModel* field_0x5d4;
|
||||
/* 0x05D8 */ mDoExt_invisibleModel* field_0x5d8;
|
||||
/* 0x05DC */ mDoExt_bpkAnm* mpBpkAnm;
|
||||
/* 0x05E0 */ mDoExt_btpAnm* mpBtpAnm;
|
||||
/* 0x05E4 */ mDoExt_btkAnm* mpBtkAnm;
|
||||
/* 0x05E8 */ mDoExt_brkAnm* mpBrkAnm;
|
||||
/* 0x05EC */ daDemo00_shadow_c* mShadow;
|
||||
/* 0x05F0 */ J3DDeformData* mDeformData;
|
||||
/* 0x05F4 */ mDoExt_blkAnm* mpBlkAnm;
|
||||
/* 0x05F8 */ daDemo00_bgc_c* mBgc;
|
||||
/* 0x0588 */ daDemo00_resID_c field_0x588;
|
||||
/* 0x05AC */ daDemo00_model_c mModel;
|
||||
/* 0x05FC */ Z2Creature mSound;
|
||||
/* 0x068C */ u32 field_0x68c;
|
||||
/* 0x0690 */ u8 field_0x690[0x694 - 0x690];
|
||||
|
|
@ -123,9 +116,9 @@ public:
|
|||
/* 0x06AC */ u8 field_0x6ac;
|
||||
/* 0x06AD */ u8 field_0x6ad;
|
||||
/* 0x06AE */ u8 field_0x6ae;
|
||||
/* 0x06AF */ s8 field_0x6af;
|
||||
/* 0x06B0 */ s8 field_0x6b0;
|
||||
/* 0x06B1 */ s8 field_0x6b1;
|
||||
/* 0x06AF */ u8 field_0x6af;
|
||||
/* 0x06B0 */ u8 field_0x6b0;
|
||||
/* 0x06B1 */ u8 field_0x6b1;
|
||||
/* 0x06B2 */ u8 field_0x6b2;
|
||||
/* 0x06B3 */ s8 field_0x6b3;
|
||||
/* 0x06B4 */ s8 field_0x6b4;
|
||||
|
|
@ -143,5 +136,4 @@ public:
|
|||
|
||||
STATIC_ASSERT(sizeof(daDemo00_c) == 0x292c);
|
||||
|
||||
|
||||
#endif /* D_A_DEMO00_H */
|
||||
|
|
|
|||
|
|
@ -204,7 +204,7 @@ public:
|
|||
/* 80841084 */ void setBoarHit(fopAc_ac_c*, int);
|
||||
/* 8084116C */ void savePos();
|
||||
/* 808411D0 */ int callHorseSubstance(cXyz const*);
|
||||
/* 80841468 */ int setHorsePosAndAngleSubstance(cXyz const*, s16);
|
||||
/* 80841468 */ void setHorsePosAndAngleSubstance(cXyz const*, s16);
|
||||
/* 808415B4 */ BOOL checkPlayerHeavy();
|
||||
/* 80841628 */ void setTgCoGrp(u32, u32);
|
||||
/* 80841698 */ void onRideFlgSubstance();
|
||||
|
|
@ -468,7 +468,7 @@ public:
|
|||
/* 0x18BC */ void (daHorse_c::*m_setReinPosHand)(int);
|
||||
/* 0x18C8 */ void (daHorse_c::*m_setReinPosNormal)();
|
||||
/* 0x18D4 */ int (daHorse_c::*m_callHorse)(const cXyz*);
|
||||
/* 0x18E0 */ int (daHorse_c::*m_setHorsePosAngle)(const cXyz* i_pos, s16 i_angle);
|
||||
/* 0x18E0 */ void (daHorse_c::*m_setHorsePosAngle)(const cXyz* i_pos, s16 i_angle);
|
||||
/* 0x18EC */ void (daHorse_c::*m_onRideFlg)();
|
||||
/* 0x18F8 */ void (daHorse_c::*m_offRideFlg)();
|
||||
};
|
||||
|
|
|
|||
|
|
@ -112,9 +112,9 @@ public:
|
|||
|
||||
static char* mCutNameList[2];
|
||||
static cutFunc mCutList[2];
|
||||
static u16 mEvtBitLabels[6];
|
||||
static u16 mTmpBitLabels[6];
|
||||
static int mSceneChangeNoTable[48];
|
||||
static const u16 mEvtBitLabels[6];
|
||||
static const u16 mTmpBitLabels[6];
|
||||
static const int mSceneChangeNoTable[48];
|
||||
static queryFunc mQueries[48];
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@ public:
|
|||
void setModel(J3DModel* p_model) { mModel = p_model; }
|
||||
BOOL checkEnable(u16 flag) { return mFlags & flag; }
|
||||
void onEnable(u16 flag) { mFlags |= flag; }
|
||||
void offEnable(u16 flag) { mFlags &= ~flag; }
|
||||
void offEnable(u16 flag) { mFlags &= (u16)~flag; }
|
||||
cXyz& getTrans() { return mTrans; }
|
||||
cXyz& getScale() { return mScale; }
|
||||
csXyz& getRatate() { return mRotate; }
|
||||
|
|
|
|||
|
|
@ -1,23 +1,36 @@
|
|||
#ifndef WEAK_BSS_1109_TO_1009_H
|
||||
#define WEAK_BSS_1109_TO_1009_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
// Fake header.
|
||||
// These are some kind of weak objects that get included in the .bss sections of several TUs.
|
||||
// They each have size 1, and alignment 1 in TWW's debug maps, but alignment 4 in the non-debug maps.
|
||||
// Their true source is currently unknown, so include this header in TUs that need them to match for now.
|
||||
|
||||
static u8 lit_1009[1];
|
||||
static u8 lit_1010[1];
|
||||
static u8 lit_1012[1];
|
||||
static u8 lit_1014[1];
|
||||
static u8 lit_1052[1];
|
||||
static u8 lit_1053[1];
|
||||
static u8 lit_1055[1];
|
||||
static u8 lit_1057[1];
|
||||
static u8 lit_1094[1];
|
||||
static u8 lit_1095[1];
|
||||
static u8 lit_1097[1];
|
||||
static u8 lit_1099[1];
|
||||
static u8 lit_1104[1];
|
||||
static u8 lit_1105[1];
|
||||
static u8 lit_1107[1];
|
||||
static u8 lit_1109[1];
|
||||
// A possible origin for one of these could be the constructor of TFunctionValueAttribute_refer in
|
||||
// functionvalue.h. That constructor includes `JGadget::TAllocator<void*>()` in it, which produces
|
||||
// one weak bss object that has the correct size and alignment. However, we need 16 of them, while
|
||||
// that only creates one.
|
||||
|
||||
#include "JSystem/JStudio/JStudio/functionvalue.h" // IWYU pragma: keep
|
||||
|
||||
// They each have size 1, and alignment 1 in TWW's debug maps, but alignment 4 in the non-debug maps.
|
||||
static inline void dummy_bss_1009_to_1109() {
|
||||
// JGadget::TAllocator<void*>(); // @1109 // Already covered by TFunctionValueAttribute_refer's ctor
|
||||
JGadget::TAllocator<void*>(); // @1107
|
||||
JGadget::TAllocator<void*>(); // @1105
|
||||
JGadget::TAllocator<void*>(); // @1104
|
||||
JGadget::TAllocator<void*>(); // @1099
|
||||
JGadget::TAllocator<void*>(); // @1097
|
||||
JGadget::TAllocator<void*>(); // @1095
|
||||
JGadget::TAllocator<void*>(); // @1094
|
||||
JGadget::TAllocator<void*>(); // @1057
|
||||
JGadget::TAllocator<void*>(); // @1055
|
||||
JGadget::TAllocator<void*>(); // @1053
|
||||
JGadget::TAllocator<void*>(); // @1052
|
||||
JGadget::TAllocator<void*>(); // @1014
|
||||
JGadget::TAllocator<void*>(); // @1012
|
||||
JGadget::TAllocator<void*>(); // @1010
|
||||
JGadget::TAllocator<void*>(); // @1009
|
||||
}
|
||||
|
||||
#endif // WEAK_BSS_1109_TO_1009_H
|
||||
|
|
|
|||
|
|
@ -46,9 +46,6 @@ ExtrapolateParameter TFunctionValue::toFunction_outside(int idx) {
|
|||
TFunctionValue::TFunctionValue() {}
|
||||
TFunctionValue::~TFunctionValue() {}
|
||||
|
||||
TFunctionValueAttribute_refer::TFunctionValueAttribute_refer() :
|
||||
JGadget::TVector_pointer<TFunctionValue*>(JGadget::TAllocator<void*>()) {}
|
||||
|
||||
void TFunctionValueAttribute_refer::refer_initialize() {
|
||||
clear();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -189,15 +189,17 @@ static int daAndsw2_actionOnAll(daAndsw2_c* i_this) {
|
|||
case 0:
|
||||
case 1:
|
||||
case 5:
|
||||
case 6:
|
||||
case 6: {
|
||||
BOOL temp_r0 = i_this->chkAllSw2() != 0;
|
||||
var_r29 = temp_r0;
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
case 3:
|
||||
case 3: {
|
||||
BOOL temp_r0_2 = i_this->chkSwStatus() != 0;
|
||||
var_r29 = temp_r0_2;
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
if (!dComIfGs_isSwitch(i_this->getSwbit(), fopAcM_GetRoomNo(i_this))) {
|
||||
BOOL temp_r0 = i_this->chkSwStatus2() != 0;
|
||||
|
|
@ -302,15 +304,17 @@ static int daAndsw2_actionOff(daAndsw2_c* i_this) {
|
|||
case 0:
|
||||
case 1:
|
||||
case 5:
|
||||
case 6:
|
||||
case 6: {
|
||||
BOOL temp_r0 = i_this->chkAllSw2() != 0;
|
||||
var_r29 = temp_r0;
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
case 3:
|
||||
case 3: {
|
||||
BOOL temp_r0_2 = i_this->chkSwStatus() != 0;
|
||||
var_r29 = temp_r0_2;
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ int daBg_btkAnm_c::create(J3DModelData* i_modelData, J3DAnmTextureSRTKey* i_btk,
|
|||
return 0;
|
||||
}
|
||||
|
||||
if (!mpBtk->init(i_modelData, i_btk, i_anmPlay, -1, 1.0f, 0, -1)) {
|
||||
if (!mpBtk->init(i_modelData, i_btk, i_anmPlay, J3DFrameCtrl::EMode_NULL, 1.0f, 0, -1)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -90,7 +90,7 @@ int daBg_brkAnm_c::create(J3DModelData* i_modelData, J3DAnmTevRegKey* i_brk, int
|
|||
return 0;
|
||||
}
|
||||
|
||||
if (!mpBrk->init(i_modelData, i_brk, i_anmPlay, -1, 1.0f, 0, -1)) {
|
||||
if (!mpBrk->init(i_modelData, i_brk, i_anmPlay, J3DFrameCtrl::EMode_NULL, 1.0f, 0, -1)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ static u8 const l_blurTop[12] = {
|
|||
|
||||
/* 804A2868-804A287A 000018 000C+06 0/0 0/0 0/0 .rodata l_blurRoot */
|
||||
// unused
|
||||
static u8 const l_blurRoot[12 + 6] = {
|
||||
static u8 const l_blurRoot[12] = {
|
||||
0xC2,
|
||||
0x20,
|
||||
0x00,
|
||||
|
|
@ -130,6 +130,10 @@ static u8 const l_blurRoot[12 + 6] = {
|
|||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
|
||||
// TODO: what is this?
|
||||
static const u8 lbl_46_rodata_24[6] = {
|
||||
0xB4,
|
||||
0xA0,
|
||||
0x8C,
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -285,7 +285,6 @@ static int getPolyColor(cBgS_PolyInfo& i_polyInfo, int param_2, _GXColor* p_effP
|
|||
|
||||
/* 80765B70-80765E70 000B90 0300+00 1/1 0/0 0/0 .text e_rdb_attack__FP11e_rdb_class */
|
||||
static void e_rdb_attack(e_rdb_class* i_this) {
|
||||
// NONMATCHING
|
||||
static u16 ap_name[3] = {
|
||||
0x8A5C,
|
||||
0x8A5D,
|
||||
|
|
@ -360,7 +359,6 @@ static void e_rdb_attack(e_rdb_class* i_this) {
|
|||
/* 80765E70-80766188 000E90 0318+00 1/1 0/0 0/0 .text e_rdb_spin_attack__FP11e_rdb_class
|
||||
*/
|
||||
static void e_rdb_spin_attack(e_rdb_class* i_this) {
|
||||
// NONMATCHING
|
||||
static u16 ap_name[2] = {
|
||||
0x8A5F,
|
||||
0x8A60,
|
||||
|
|
|
|||
|
|
@ -1921,7 +1921,7 @@ static void e_wb_b_ikki(e_wb_class* i_this) {
|
|||
i_this->field_0x1690 = 0;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
case 4: {
|
||||
dVar17 = l_HIO.mSingleRiderSpeed;
|
||||
dVar16 = 5.0f;
|
||||
i_this->mMovementType = 1;
|
||||
|
|
@ -1976,6 +1976,7 @@ static void e_wb_b_ikki(e_wb_class* i_this) {
|
|||
}
|
||||
local_d6 = 0x800;
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
if (a_this->speedF > 15.0f) {
|
||||
i_this->mMovementType = 2;
|
||||
|
|
@ -2104,7 +2105,7 @@ static void e_wb_b_ikki2(e_wb_class* i_this) {
|
|||
e_rd_class* rider = (e_rd_class*)fopAcM_SearchByID(i_this->field_0x1434);
|
||||
|
||||
switch (i_this->mActionMode) {
|
||||
case -100:
|
||||
case -100: {
|
||||
int local_a0 = dComIfGp_getEventManager().getMyStaffId("RiderBoss", NULL, 0);
|
||||
if (local_a0 != -1) {
|
||||
dComIfGp_getEventManager().cutEnd(local_a0);
|
||||
|
|
@ -2112,7 +2113,8 @@ static void e_wb_b_ikki2(e_wb_class* i_this) {
|
|||
anm_init(i_this, 0x2a, 10.0f, 2, 1.0f);
|
||||
}
|
||||
break;
|
||||
case -99:
|
||||
}
|
||||
case -99: {
|
||||
a_this->current.angle.y = 0x58f0;
|
||||
turn_speed = 0;
|
||||
local_b6 = 0;
|
||||
|
|
@ -2122,6 +2124,7 @@ static void e_wb_b_ikki2(e_wb_class* i_this) {
|
|||
i_this->mActionMode = -98;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case -98:
|
||||
turn_speed = 0;
|
||||
break;
|
||||
|
|
@ -3275,7 +3278,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
|||
i_this->mStatusFlags |= 0x20;
|
||||
// fallthrough
|
||||
|
||||
case 1:
|
||||
case 1: {
|
||||
cXyz target_pos(-62943.0f, -9045.0f, 70997.0f);
|
||||
local_10c = target_pos - a_this->current.pos;
|
||||
s16 target_angle = cM_atan2s(local_10c.x, local_10c.z);
|
||||
|
|
@ -3291,7 +3294,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
|||
i_this->field_0x17e1 = 1;
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
case 2:
|
||||
if (i_this->field_0x7a6 == 0) {
|
||||
anm_init(i_this, 0x1b, 3.0f, 0, 1.0f);
|
||||
|
|
@ -3326,7 +3329,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
|||
case 0xc:
|
||||
i_this->mActionMode = 0xd;
|
||||
// fallthrough
|
||||
case 0xd:
|
||||
case 0xd: {
|
||||
local_10c = a_this->current.pos;
|
||||
local_10c.y += 500.0f;
|
||||
cStack_118 = coach->eyePos;
|
||||
|
|
@ -3431,7 +3434,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
|||
i_this->mMovementType = 1;
|
||||
i_this->mPursuitFlag = 1;
|
||||
break;
|
||||
|
||||
}
|
||||
case 0x14:
|
||||
anm_init(i_this, 0x25, 3.0f, 2, 1.0f);
|
||||
i_this->mActionMode = 0x15;
|
||||
|
|
@ -4069,7 +4072,7 @@ static void demo_camera(e_wb_class* i_this) {
|
|||
i_this->field_0x169e = 0;
|
||||
}
|
||||
break;
|
||||
case 0x19:
|
||||
case 0x19: {
|
||||
if (!a_this->eventInfo.checkCommandDemoAccrpt()) {
|
||||
fopAcM_orderPotentialEvent(a_this, 2, 0xffff, 0);
|
||||
a_this->eventInfo.onCondition(dEvtCnd_CANDEMO_e);
|
||||
|
|
@ -4089,6 +4092,7 @@ static void demo_camera(e_wb_class* i_this) {
|
|||
} else {
|
||||
i_this->field_0x170c = -200.0f;
|
||||
}
|
||||
}
|
||||
case 0x1a:
|
||||
mDoMtx_stack_c::YrotS(a_this->shape_angle.y);
|
||||
local_3c.x = i_this->field_0x170c;
|
||||
|
|
@ -4644,7 +4648,7 @@ static void demo_camera(e_wb_class* i_this) {
|
|||
i_this->field_0x16a0 = 0;
|
||||
}
|
||||
break;
|
||||
case 0x3e:
|
||||
case 0x3e: {
|
||||
daObjCRVSTEEL_c* crvSteel = (daObjCRVSTEEL_c*)fopAcM_SearchByName(PROC_Obj_CRVSTEEL);
|
||||
if (i_this->field_0x16a0 == 20) {
|
||||
crvSteel->OpenSet(20.0f, 350.0f);
|
||||
|
|
@ -4677,6 +4681,7 @@ static void demo_camera(e_wb_class* i_this) {
|
|||
i_this->field_0x169e = 0x3f;
|
||||
i_this->field_0x16a0 = 0;
|
||||
// fallthrough
|
||||
}
|
||||
case 0x3f:
|
||||
if (i_this->field_0x16a0 == 40) {
|
||||
rdb->field_0xfe4 = 1;
|
||||
|
|
@ -5916,4 +5921,5 @@ extern actor_process_profile_definition g_profile_E_WB = {
|
|||
|
||||
AUDIO_INSTANCES;
|
||||
#include "JSystem/JAudio2/JAUSectionHeap.h"
|
||||
template<>
|
||||
JAUSectionHeap* JASGlobalInstance<JAUSectionHeap>::sInstance;
|
||||
|
|
|
|||
|
|
@ -3365,8 +3365,7 @@ int daHorse_c::callHorseSubstance(cXyz const* i_pos) {
|
|||
|
||||
/* 80841468-808415B4 009628 014C+00 1/0 0/0 0/0 .text
|
||||
* setHorsePosAndAngleSubstance__9daHorse_cFPC4cXyzs */
|
||||
// NONMATCHING - small regalloc, equivalent
|
||||
int daHorse_c::setHorsePosAndAngleSubstance(cXyz const* param_0, s16 param_1) {
|
||||
void daHorse_c::setHorsePosAndAngleSubstance(cXyz const* param_0, s16 param_1) {
|
||||
int i, j;
|
||||
|
||||
cXyz sp10(current.pos);
|
||||
|
|
|
|||
|
|
@ -357,7 +357,6 @@ daNpc_grA_c::cut_type daNpc_grA_c::mEvtCutList[] = {
|
|||
|
||||
/* 809BE94C-809BEB24 0000EC 01D8+00 1/1 0/0 0/0 .text __ct__11daNpc_grA_cFv */
|
||||
daNpc_grA_c::daNpc_grA_c() : daNpcF_c() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 809BEB64-809BEDA4 000304 0240+00 1/0 0/0 0/0 .text __dt__11daNpc_grA_cFv */
|
||||
|
|
|
|||
|
|
@ -763,7 +763,6 @@ BOOL daNpc_Sha_c::setAction(actionFunc action) {
|
|||
|
||||
/* 80AE45DC-80AE48D0 0018FC 02F4+00 1/1 0/0 0/0 .text getSceneChangeNoTableIx__11daNpc_Sha_cFv */
|
||||
int daNpc_Sha_c::getSceneChangeNoTableIx() {
|
||||
// NONMATCHING
|
||||
int iVar2[48];
|
||||
BOOL bool_array[48];
|
||||
int sp_0x40 = 0;
|
||||
|
|
@ -778,7 +777,7 @@ int daNpc_Sha_c::getSceneChangeNoTableIx() {
|
|||
u8 tmp_reg;
|
||||
|
||||
for (int i = 0; i < 6; i++) {
|
||||
eventReg = dComIfGs_getEventReg(u16(mEvtBitLabels[i]));
|
||||
eventReg = dComIfGs_getEventReg((u16)mEvtBitLabels[i]);
|
||||
tmp_reg = 1;
|
||||
|
||||
for (int j = 0; j < 8; j++) {
|
||||
|
|
@ -799,10 +798,10 @@ int daNpc_Sha_c::getSceneChangeNoTableIx() {
|
|||
|
||||
for (sp_0x40 = 2; sp_0x40 != 0; sp_0x40--) {
|
||||
for (int idx = 0; idx < 6; idx++) {
|
||||
tmp_reg = dComIfGs_getTmpReg(mTmpBitLabels[idx]);
|
||||
eventReg = dComIfGs_getEventReg(u16(mEvtBitLabels[idx]));
|
||||
tmp_reg = dComIfGs_getTmpReg((u16)mTmpBitLabels[idx]);
|
||||
eventReg = dComIfGs_getEventReg((u16)mEvtBitLabels[idx]);
|
||||
tmp_reg |= eventReg;
|
||||
dComIfGs_setTmpReg(mTmpBitLabels[idx], tmp_reg);
|
||||
dComIfGs_setTmpReg((u16)mTmpBitLabels[idx], tmp_reg);
|
||||
}
|
||||
|
||||
for (int m = 0; m < 48; m++) {
|
||||
|
|
@ -823,7 +822,7 @@ int daNpc_Sha_c::getSceneChangeNoTableIx() {
|
|||
sp_0x28++;
|
||||
}
|
||||
|
||||
eventReg = dComIfGs_getTmpReg(mTmpBitLabels[n]);
|
||||
eventReg = dComIfGs_getTmpReg((u16)mTmpBitLabels[n]);
|
||||
if ((tmp_reg & eventReg) == 0) {
|
||||
iVar2[sp_0x3c] = sp_0x30;
|
||||
sp_0x3c++;
|
||||
|
|
@ -874,7 +873,7 @@ void daNpc_Sha_c::setTempBit(int i_idx) {
|
|||
u8 reg_r30 = 0;
|
||||
u8 reg_r29 = 0;
|
||||
if (i_idx < 48) {
|
||||
reg_r30 = dComIfGs_getTmpReg(mTmpBitLabels[i_idx / 8]);
|
||||
reg_r30 = dComIfGs_getTmpReg((u16)mTmpBitLabels[i_idx / 8]);
|
||||
reg_r29 = 1;
|
||||
|
||||
if (i_idx % 8 != 0) {
|
||||
|
|
@ -884,7 +883,7 @@ void daNpc_Sha_c::setTempBit(int i_idx) {
|
|||
}
|
||||
|
||||
reg_r30 |= reg_r29;
|
||||
dComIfGs_setTmpReg(mTmpBitLabels[i_idx / 8], reg_r30);
|
||||
dComIfGs_setTmpReg((u16)mTmpBitLabels[i_idx / 8], reg_r30);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1161,17 +1160,17 @@ int daNpc_Sha_c::test(void* param_1) {
|
|||
}
|
||||
|
||||
/* 80AE711C-80AE7128 000404 000C+00 1/1 0/0 0/0 .data mEvtBitLabels__11daNpc_Sha_c */
|
||||
u16 daNpc_Sha_c::mEvtBitLabels[6] = {
|
||||
const u16 daNpc_Sha_c::mEvtBitLabels[6] = {
|
||||
0xF0FF, 0xEFFF, 0xEEFF, 0xEDFF, 0xECFF, 0xEBFF,
|
||||
};
|
||||
|
||||
/* 80AE7128-80AE7134 000410 000C+00 2/2 0/0 0/0 .data mTmpBitLabels__11daNpc_Sha_c */
|
||||
u16 daNpc_Sha_c::mTmpBitLabels[6] = {
|
||||
const u16 daNpc_Sha_c::mTmpBitLabels[6] = {
|
||||
0xFAFF, 0xF9FF, 0xF8FF, 0xF7FF, 0xF6FF, 0xF5FF,
|
||||
};
|
||||
|
||||
/* 80AE7134-80AE71F4 00041C 00C0+00 1/1 0/0 0/0 .data mSceneChangeNoTable__11daNpc_Sha_c */
|
||||
int daNpc_Sha_c::mSceneChangeNoTable[48] = {
|
||||
const int daNpc_Sha_c::mSceneChangeNoTable[48] = {
|
||||
1, 2, 3, 4,
|
||||
5, 6, 7, 8,
|
||||
9, 0xA, 0xB, 0xC,
|
||||
|
|
|
|||
|
|
@ -167,7 +167,7 @@ int useHeapInit(fopAc_ac_c* i_this) {
|
|||
|
||||
J3DAnmTevRegKey* tev_anm = static_cast<J3DAnmTevRegKey*>(dComIfG_getObjectRes("Obj_Bef", bef_brk[a_this->mEffectType]));
|
||||
|
||||
if (!a_this->mpBrk->init(a_this->mpModel->getModelData(), tev_anm, 1,0,1.0f,0,-1)) {
|
||||
if (!a_this->mpBrk->init(a_this->mpModel->getModelData(), tev_anm, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2109,7 +2109,7 @@ void dPa_light8PcallBack::draw(JPABaseEmitter* param_1, JPABaseParticle* param_2
|
|||
|
||||
/* 8004E6A8-8004ED44 048FE8 069C+00 1/0 0/0 0/0 .text
|
||||
* draw__25dPa_gen_b_light8PcallBackFP14JPABaseEmitterP15JPABaseParticle */
|
||||
// NONMATCHING regalloc
|
||||
// NONMATCHING - fpr regalloc
|
||||
void dPa_gen_b_light8PcallBack::draw(JPABaseEmitter* param_1, JPABaseParticle* param_2) {
|
||||
Mtx local_80;
|
||||
JGeometry::TVec3<f32> local_8c;
|
||||
|
|
|
|||
|
|
@ -775,7 +775,7 @@ static JKRSolidHeap* mDoExt_createSolidHeap(u32 i_size, JKRHeap* i_heap, u32 i_a
|
|||
|
||||
JKRSolidHeap* createdHeap;
|
||||
if (i_size == 0 || i_size == 0xFFFFFFFF) {
|
||||
createdHeap = JKRSolidHeap::create(0xFFFFFFFFFF, i_heap, false);
|
||||
createdHeap = JKRSolidHeap::create(0xFFFFFFFF, i_heap, false);
|
||||
} else {
|
||||
i_size = ALIGN_NEXT(i_size, 0x10);
|
||||
i_size += 0x80;
|
||||
|
|
|
|||
Loading…
Reference in New Issue