Work on c_damagereaction and f_ap_game debug (#3033)

This commit is contained in:
hatal175
2026-01-12 05:22:57 +02:00
committed by GitHub
parent decb0c5437
commit db8ae465ac
14 changed files with 119 additions and 97 deletions
+2 -2
View File
@@ -28137,9 +28137,9 @@ data_80450C9C = .sbss:0x8053A8EC; // type:object size:0x1
data_80450C9D = .sbss:0x8053A8ED; // type:object size:0x1
data_80450C9E = .sbss:0x8053A8EE; // type:object size:0x1
cDmr_FishingWether = .sbss:0x8053A8EF; // type:object size:0x1
data_80450CA0 = .sbss:0x8053A8F0; // type:object size:0x4
data_80450CA0 = .sbss:0x8053A8F0; // type:object size:0x1 scope:global align:1 data:byte
JPTracePCB4 = .sbss:0x8053A8F4; // type:object size:0x4 scope:global align:4
lbl_8053A8F8 = .sbss:0x8053A8F8; // type:object size:0x1 data:byte
DMC_initialized = .sbss:0x8053A8F8; // type:object size:0x1 data:byte
cDyl_Initialized = .sbss:0x8053A8FC; // type:object size:0x4 scope:global align:4 data:4byte
cDyl_DVD = .sbss:0x8053A900; // type:object size:0x4 scope:global align:4 data:4byte
g_fopAc_type = .sbss:0x8053A908; // type:object size:0x4 scope:global align:4 data:4byte
+2 -2
View File
@@ -27687,9 +27687,9 @@ data_80450C9C = .sbss:0x805208F4; // type:object size:0x1
data_80450C9D = .sbss:0x805208F5; // type:object size:0x1
data_80450C9E = .sbss:0x805208F6; // type:object size:0x1
cDmr_FishingWether = .sbss:0x805208F7; // type:object size:0x1
data_80450CA0 = .sbss:0x805208F8; // type:object size:0x4
data_80450CA0 = .sbss:0x805208F8; // type:object size:0x1 scope:global align:1 data:byte
JPTracePCB4 = .sbss:0x805208FC; // type:object size:0x4 scope:global align:4
lbl_80520900 = .sbss:0x80520900; // type:object size:0x1 data:byte
DMC_initialized = .sbss:0x80520900; // type:object size:0x1 data:byte
cDyl_Initialized = .sbss:0x80520904; // type:object size:0x4 scope:global align:4 data:4byte
cDyl_DVD = .sbss:0x80520908; // type:object size:0x4 scope:global align:4 data:4byte
g_fopAc_type = .sbss:0x80520910; // type:object size:0x4 scope:global align:4 data:4byte
+1 -1
View File
@@ -27695,7 +27695,7 @@ lbl_8051E776 = .sbss:0x8051E776; // type:object size:0x1
lbl_8051E777 = .sbss:0x8051E777; // type:object size:0x1
lbl_8051E778 = .sbss:0x8051E778; // type:object size:0x4
JPTracePCB4 = .sbss:0x8051E77C; // type:object size:0x4 scope:global align:4
lbl_8051E780 = .sbss:0x8051E780; // type:object size:0x1 data:byte
DMC_initialized = .sbss:0x8051E780; // type:object size:0x1 data:byte
cDyl_Initialized = .sbss:0x8051E784; // type:object size:0x4 scope:global align:4 data:4byte
cDyl_DVD = .sbss:0x8051E788; // type:object size:0x4 scope:global align:4 data:4byte
g_fopAc_type = .sbss:0x8051E790; // type:object size:0x4 scope:global align:4 data:4byte
+1 -1
View File
@@ -27580,7 +27580,7 @@ lbl_805210B6 = .sbss:0x805210B6; // type:object size:0x1
lbl_805210B7 = .sbss:0x805210B7; // type:object size:0x1
lbl_805210B8 = .sbss:0x805210B8; // type:object size:0x4
JPTracePCB4 = .sbss:0x805210BC; // type:object size:0x4 scope:global align:4
lbl_805210C0 = .sbss:0x805210C0; // type:object size:0x1 data:byte
DMC_initialized = .sbss:0x805210C0; // type:object size:0x1 data:byte
cDyl_Initialized = .sbss:0x805210C4; // type:object size:0x4 scope:global align:4 data:4byte
cDyl_DVD = .sbss:0x805210C8; // type:object size:0x4 scope:global align:4 data:4byte
g_fopAc_type = .sbss:0x805210D0; // type:object size:0x4 scope:global align:4 data:4byte
+1 -1
View File
@@ -25247,7 +25247,7 @@ lbl_80508ABE = .sbss:0x80508ABE; // type:object size:0x1 hash:0x7329269E
lbl_80508ABF = .sbss:0x80508ABF; // type:object size:0x1 hash:0x7329269F
lbl_80508AC0 = .sbss:0x80508AC0; // type:object size:0x1 hash:0x73292690
JPTracePCB4 = .sbss:0x80508AC4; // type:object size:0x4 scope:global data:4byte hash:0xB2DC52FB
lbl_80508AC8 = .sbss:0x80508AC8; // type:object size:0x1 data:byte hash:0xBABF0DBC
DMC_initialized = .sbss:0x80508AC8; // type:object size:0x1 data:byte hash:0xBABF0DBC
cDyl_Initialized = .sbss:0x80508ACC; // type:object size:0x4 scope:global data:4byte hash:0x4F14A2E4
cDyl_DVD = .sbss:0x80508AD0; // type:object size:0x4 scope:global data:4byte hash:0x12A4A3DE
g_fopAc_type = .sbss:0x80508AD8; // type:object size:0x4 scope:global data:4byte hash:0x79729021
+5 -5
View File
@@ -131,14 +131,14 @@ m_Do/m_Do_MemCardRWmng.cpp:
m_Do/m_Do_machine_exception.cpp:
.text start:0x8002EEA0 end:0x8002F3A0
.data start:0x80664C90 end:0x80664E98
.sbss start:0x8074C450 end:0x8074C464
.sbss start:0x8074C450 end:0x8074C458
c/c_damagereaction.cpp:
.text start:0x8002F3A0 end:0x8002FAF0
.ctors start:0x8062F7E4 end:0x8062F7E8
.data start:0x80664E98 end:0x80664F00
.sdata start:0x8073F688 end:0x8073F698
.sbss start:0x8074C464 end:0x8074C46C
.sbss start:0x8074C458 end:0x8074C468
.sdata2 start:0x8074D908 end:0x8074D920
.bss start:0x807762A0 end:0x807762B0
@@ -146,15 +146,15 @@ c/c_dylink.cpp:
.text start:0x8002FAF0 end:0x80030690
.rodata start:0x8062FA70 end:0x806311D0
.data start:0x80664F00 end:0x80667F90
.sdata start:0x8073F698 end:0x8073F6EC
.sbss start:0x8074C46C end:0x8074C47C
.sdata start:0x8073F698 end:0x8073F6E8
.sbss start:0x8074C468 end:0x8074C47C
.bss start:0x807762B0 end:0x80776F20
f_ap/f_ap_game.cpp:
.text start:0x80030690 end:0x80034CB0
.ctors start:0x8062F7E8 end:0x8062F7EC
.data start:0x80667F90 end:0x80669130
.sdata start:0x8073F6EC end:0x8073F850
.sdata start:0x8073F6E8 end:0x8073F850
.sbss start:0x8074C47C end:0x8074C4A0
.sdata2 start:0x8074D920 end:0x8074D950
.bss start:0x80776F20 end:0x8077EF68
+7 -7
View File
@@ -57083,10 +57083,10 @@ __RTTI__19JPAParticleCallBack = .sdata:0x8073F690; // type:object size:0x8 scope
@114992 = .sdata:0x8073F6D0; // type:object size:0x7 scope:local data:string hash:0xAC9322E3
@115063 = .sdata:0x8073F6D8; // type:object size:0x5 scope:local data:string hash:0xAC938265
@115212 = .sdata:0x8073F6E0; // type:object size:0x2 scope:local data:string hash:0xAC938A01
lbl_8073F6E8 = .sdata:0x8073F6E8; // type:object size:0x1 data:byte hash:0xC4F99235 dhash:0x36EB3D35
mCaptureMagnification__11fapGm_HIO_c = .sdata:0x8073F6E8; // type:object size:0x1 data:byte hash:0xC4F99235 dhash:0x36EB3D35
mCaptureScreenDivH__11fapGm_HIO_c = .sdata:0x8073F6E9; // type:object size:0x1 data:byte hash:0xDA67CD23 dhash:0x36F37423
mCaptureScreenDivV__11fapGm_HIO_c = .sdata:0x8073F6EA; // type:object size:0x1 data:byte hash:0x3EAABB7D dhash:0x36F3743D
lbl_8073F6EB = .sdata:0x8073F6EB; // type:object size:0x1 data:byte hash:0x2C072CEE dhash:0x37B0404E
mPackArchiveMode__11fapGm_HIO_c = .sdata:0x8073F6EB; // type:object size:0x1 data:byte hash:0x2C072CEE dhash:0x37B0404E
@114738 = .sdata:0x8073F6EC; // type:object size:0x4 scope:local data:string hash:0xAC931B2D
@114739 = .sdata:0x8073F6F0; // type:object size:0x4 scope:local data:string hash:0xAC931B2C
@114740 = .sdata:0x8073F6F4; // type:object size:0x4 scope:local data:string hash:0xAC931A82
@@ -64236,14 +64236,14 @@ data_80450C9C = .sbss:0x8074C45C; // type:object size:0x1 hash:0x7329269B
data_80450C9D = .sbss:0x8074C45D; // type:object size:0x1 hash:0x7329269D
data_80450C9E = .sbss:0x8074C45E; // type:object size:0x1 hash:0x7329269E
cDmr_FishingWether = .sbss:0x8074C45F; // type:object size:0x1 hash:0x7329269F
data_80450CA0 = .sbss:0x8074C460; // type:object size:0x4 hash:0x73292690
data_80450CA0 = .sbss:0x8074C460; // type:object size:0x1 scope:global align:1 data:byte hash:0x73292690
JPTracePCB4 = .sbss:0x8074C464; // type:object size:0x4 scope:global hash:0xB2DC52FB
lbl_8074C468 = .sbss:0x8074C468; // type:object size:0x1 data:byte hash:0xBABF0DBC
DMC_initialized = .sbss:0x8074C468; // type:object size:0x1 data:byte hash:0xBABF0DBC
cDyl_Initialized = .sbss:0x8074C46C; // type:object size:0x4 scope:global data:4byte hash:0x4F14A2E4
cDyl_DVD = .sbss:0x8074C470; // type:object size:0x4 scope:global data:4byte hash:0x12A4A3DE
lbl_8074C478 = .sbss:0x8074C478; // type:object size:0x1 data:byte hash:0x212A8642 dhash:0x9C6E1C22
m_CpuTimerOn__11fapGm_HIO_c = .sbss:0x8074C478; // type:object size:0x1 data:byte hash:0x212A8642 dhash:0x9C6E1C22
m_CpuTimerOff__11fapGm_HIO_c = .sbss:0x8074C479; // type:object size:0x1 data:byte hash:0x911301CA dhash:0x705BB8AA
lbl_8074C47A = .sbss:0x8074C47A; // type:object size:0x1 data:byte hash:0xDE8007C6 dhash:0x7D1A2EE6
m_CpuTimerStart__11fapGm_HIO_c = .sbss:0x8074C47A; // type:object size:0x1 data:byte hash:0xDE8007C6 dhash:0x7D1A2EE6
m_CpuTimerTick__11fapGm_HIO_c = .sbss:0x8074C47C; // type:object size:0x4 scope:global data:4byte hash:0x1D284173 dhash:0x706361F3
mCaptureScreen__11fapGm_HIO_c = .sbss:0x8074C480; // type:object size:0x4 scope:global data:4byte hash:0x440BFED0 dhash:0x751F8370
mCaptureScreenBuffer__11fapGm_HIO_c = .sbss:0x8074C484; // type:object size:0x4 scope:global data:4byte hash:0xE27FC690 dhash:0xB288F970
@@ -64254,7 +64254,7 @@ mCaptureScreenLinePf__11fapGm_HIO_c = .sbss:0x8074C48E; // type:object size:0x2
mCaptureScreenLineNum__11fapGm_HIO_c = .sbss:0x8074C490; // type:object size:0x2 scope:global data:2byte hash:0xCC174908 dhash:0x39E708E8
mCaptureScreenNumH__11fapGm_HIO_c = .sbss:0x8074C492; // type:object size:0x1 data:byte hash:0x56EDE2EE dhash:0x36F65A0E
mCaptureScreenNumV__11fapGm_HIO_c = .sbss:0x8074C493; // type:object size:0x1 data:byte hash:0xDA2ADA30 dhash:0x36F65A10
lbl_8074C494 = .sbss:0x8074C494; // type:object size:0x1 data:byte hash:0xA9B59EC0 dhash:0xA12DE4E0
mParticle254Fix__11fapGm_HIO_c = .sbss:0x8074C494; // type:object size:0x1 data:byte hash:0xA9B59EC0 dhash:0xA12DE4E0
mPriorityMaximum__19print_error_check_c = .sbss:0x8074C498; // type:object size:0x1 data:byte hash:0xE0AE7E09 dhash:0x4F24BEA1
mPrintDisable__19print_error_check_c = .sbss:0x8074C499; // type:object size:0x1 data:byte hash:0xC93122F6 dhash:0x62D5041E
mThresholdEnable__19print_error_check_c = .sbss:0x8074C49A; // type:object size:0x1 data:byte hash:0xB66ED925 dhash:0x722717CD
+12 -9
View File
@@ -130,19 +130,16 @@ struct TVec3<s16> {
}
};
inline void setTVec3f(const f32* vec_a, f32* vec_b) {
inline void setTVec3f(const __REGISTER f32* vec_a, __REGISTER f32* vec_b) {
#ifdef __MWERKS__
const __REGISTER f32* v_a = vec_a;
__REGISTER f32* v_b = vec_b;
__REGISTER f32 a_x;
__REGISTER f32 b_x;
asm {
psq_l a_x, 0(v_a), 0, 0
lfs b_x, 8(v_a)
psq_st a_x, 0(v_b), 0, 0
stfs b_x, 8(v_b)
psq_l a_x, 0(vec_a), 0, 0
lfs b_x, 8(vec_a)
psq_st a_x, 0(vec_b), 0, 0
stfs b_x, 8(vec_b)
};
#endif
}
@@ -247,7 +244,7 @@ struct TVec3<f32> : public Vec {
return *this;
}
inline TVec3<f32> operator+(const TVec3<f32>& b) {
inline TVec3<f32> operator+(const TVec3<f32>& b) const {
TVec3<f32> a = *this;
a += b;
return a;
@@ -289,6 +286,11 @@ struct TVec3<f32> : public Vec {
}
void scale(__REGISTER f32 sc) {
#if DEBUG
x *= sc;
y *= sc;
z *= sc;
#else
#ifdef __MWERKS__
__REGISTER f32 z;
__REGISTER f32 x_y;
@@ -303,6 +305,7 @@ struct TVec3<f32> : public Vec {
ps_muls0 zres, z, sc
psq_st zres, 8(dst), 1, 0
};
#endif
#endif
}
+7 -3
View File
@@ -66,9 +66,13 @@ public:
void setNExtensionName(u16 length) { mNExtensionName = length; }
void setStatus(s32 status) { mStatus = status; }
virtual ~JORFile() {}
virtual int open(const char* path, u32 flags, const char* extMask, const char* defaultExt, const char*, const char* fileSuffix);
virtual int open(u32 flags, const char* extMask, const char* defaultExt, const char*, const char* fileSuffix);
virtual ~JORFile() {
close();
}
virtual int open(const char* path, u32 flags, const char* extMask, const char* defaultExt, const char* param_4, const char* fileSuffix);
virtual int open(u32 flags, const char* extMask, const char* defaultExt, const char* param_4, const char* fileSuffix) {
return open(NULL, flags, extMask, defaultExt, param_4, fileSuffix);
}
virtual void close();
virtual s32 readData(void* buffer, s32 length);
virtual s32 writeData(const void* buffer, s32 length);
+4 -3
View File
@@ -197,14 +197,15 @@ namespace JMathInlineVEC {
#ifdef __MWERKS__
__REGISTER f32 axy;
__REGISTER f32 bxy;
__REGISTER f32 sumab;
__REGISTER f32 az;
__REGISTER f32 sumz;
__REGISTER f32 bz;
__REGISTER f32 sumz;
asm {
psq_l axy, 0(a), 0, 0
psq_l bxy, 0(b), 0, 0
ps_add bxy, axy, bxy
psq_st bxy, 0(ab), 0, 0
ps_add sumab, axy, bxy
psq_st sumab, 0(ab), 0, 0
psq_l az, 8(a), 1, 0
psq_l bz, 8(b), 1, 0
ps_add sumz, az, bz
+7 -3
View File
@@ -55,9 +55,13 @@ public:
}
void* getDisplayingXfb() const {
if (mDisplayingXfbIndex >= 0)
return mBuffer[mDisplayingXfbIndex];
return NULL;
void* xfb;
if (mDisplayingXfbIndex >= 0) {
xfb = mBuffer[mDisplayingXfbIndex];
} else {
xfb = NULL;
}
return xfb;
}
void setDisplayingXfbIndex(s16 index) { mDisplayingXfbIndex = index; }
+5 -1
View File
@@ -20,7 +20,7 @@ public:
virtual void listenPropertyEvent(const JORPropertyEvent*);
virtual void genMessage(JORMContext*);
#endif
virtual ~fapGm_HIO_c();
virtual ~fapGm_HIO_c() {}
static void startCpuTimer();
static void stopCpuTimer(const char*);
@@ -71,9 +71,13 @@ public:
static u8 mParticle254Fix;
static u8 mCaptureMagnification;
static u8 mCaptureScreenDivH;
static u8 mCaptureScreenDivV;
static u8 mPackArchiveMode;
/* 0x04 */ s8 field_0x04;
/* 0x05 */ u8 field_0x03[3];
/* 0x08 */ JUtility::TColor mColor;
+11 -4
View File
@@ -2,6 +2,7 @@
#include "d/actor/d_a_player.h"
#include "d/d_com_inf_game.h"
#include "f_op/f_op_actor_mng.h"
#include "d/d_s_play.h"
u8 cDmr_SkipInfo;
u8 data_80450C99;
@@ -13,21 +14,27 @@ u8 data_80450C9D;
u8 data_80450C9E;
u8 cDmr_FishingWether;
#if DEBUG
void debug_actor_create() {
fopAc_ac_c* player = dComIfGp_getPlayer(0);
}
#endif
void JPTraceParticleCallBack4::execute(JPABaseEmitter* param_0, JPABaseParticle* param_1) {
u32 age = param_1->getAge();
if (age != 0) {
Vec* user_work = (Vec*)param_0->getUserWork();
JGeometry::TVec3<f32> vec1, vec2, vec3;
f32 fVar1 = (25.0f - age) / 25.0f;
f32 fVar1 = ((25.0f + nREG_F(18)) - age) / (25.0f + nREG_F(18));
if (fVar1 < 0.0f) {
fVar1 = 0.0f;
}
vec1 = user_work[age];
vec1.scale(0.3f * fVar1);
vec1.scale((0.3f + nREG_F(16)) * fVar1);
vec2 = user_work[0];
vec2.scale(0.5f * fVar1);
vec2.scale((0.5f + nREG_F(17)) * fVar1);
param_1->getOffsetPosition(vec3);
param_1->getOffsetPosition(&vec3);
vec3.add(vec1 + vec2);
param_1->setOffsetPosition(vec3);
}
+54 -55
View File
@@ -61,10 +61,10 @@ fapGm_HIO_c::fapGm_HIO_c() {
}
#if DEBUG
static u8 data_8073f6e8 = 1;
static u8 data_8073f6e9 = 1;
static u8 data_8073f6ea = 1;
static u8 data_8073f6eb = 1;
u8 fapGm_HIO_c::mCaptureMagnification = 1;
u8 fapGm_HIO_c::mCaptureScreenDivH = 1;
u8 fapGm_HIO_c::mCaptureScreenDivV = 1;
u8 fapGm_HIO_c::mPackArchiveMode = 1;
CaptureScreen* fapGm_HIO_c::mCaptureScreen;
void* fapGm_HIO_c::mCaptureScreenBuffer;
@@ -83,7 +83,7 @@ u8 fapGm_HIO_c::mParticle254Fix;
void fapGm_HIO_c::genMessage(JORMContext* mctx) {
mctx->genButton("警告消去", 0x4000020, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genButton("BMPキャプチャー", 0x4000003, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genSlider("BMPキャプチャー倍率", &data_8073f6e8, 1, 8, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genSlider("BMPキャプチャー倍率", &mCaptureMagnification, 1, 8, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genButton("スナップショット", 0x4000002, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genButton("CPU時間", 0x4000007, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genCheckBox("ホストIO使用", &mUsingHostIO, 1, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
@@ -92,7 +92,7 @@ void fapGm_HIO_c::genMessage(JORMContext* mctx) {
mctx->genCheckBox("2D表示", &mDisplay2D, 1, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genCheckBox("パーティクル表示", &mDisplayParticle, 1, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genCheckBox("パーティクル254固定", &mParticle254Fix, 1, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genCheckBox("パックアーカイブモード", &data_8073f6eb, 1, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genCheckBox("パックアーカイブモード", &mPackArchiveMode, 1, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genLabel("−−−−−−−【プリント】−−−−−−−", 0x4000001, 0, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
mctx->genSlider("", &mColor.r, 0, 0xFF, 0x4000010, NULL, 0xFFFF, 0xFFFF, 0x200, 0x18);
@@ -205,10 +205,10 @@ int dumpTagObject(void* i_object, void*) {
fopAc_ac_c* a_actor = (fopAc_ac_c*)i_object;
const char* actorname = dStage_getName(profname, -1);
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Fixed_e, fapGm_dataMem::TagType_Object_e, 0, profname_str, a_actor, NULL, *actorname == 0 ? NULL : actorname, NULL);
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Variable_e, fapGm_dataMem::TagType_Object_e, 0, profname_str, a_actor, NULL, *actorname == 0 ? NULL : actorname, NULL);
if (a_actor->heap != NULL) {
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Fixed_e, fapGm_dataMem::TagType_Object_e, 0, profname_str, a_actor->heap, NULL, actorname, NULL);
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Variable_e, fapGm_dataMem::TagType_Object_e, 0, profname_str, a_actor->heap, NULL, actorname, NULL);
}
u32 other_heap_size = 0;
@@ -221,10 +221,10 @@ int dumpTagObject(void* i_object, void*) {
}
if (other_heap_size != 0) {
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Fixed_e, fapGm_dataMem::TagType_Object_e, 6, profname_str, NULL, other_heap_size, NULL, NULL);
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Variable_e, fapGm_dataMem::TagType_Object_e, 6, profname_str, NULL, other_heap_size, NULL, NULL);
}
} else {
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Fixed_e, fapGm_dataMem::TagType_Object_e, 0, profname_str, i_object, NULL, NULL, NULL);
fapGm_dataMem::printfTag(fapGm_dataMem::TagAtt_Variable_e, fapGm_dataMem::TagType_Object_e, 0, profname_str, i_object, NULL, NULL, NULL);
}
return 1;
@@ -410,77 +410,77 @@ int fapGm_dataMem::findParentHeap(void* i_object) {
void fapGm_dataMem::dumpTag() {
*mCsv = 0;
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Root_e, NULL, JKRHeap::getRootHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_System_e, NULL, JKRGetSystemHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Zelda_e, NULL, mDoExt_getZeldaHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Archive_e, NULL, mDoExt_getArchiveHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_J2D_e, NULL, mDoExt_getJ2dHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Root_e, NULL, JKRHeap::getRootHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_System_e, NULL, JKRGetSystemHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Zelda_e, NULL, mDoExt_getZeldaHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Archive_e, NULL, mDoExt_getArchiveHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_J2D_e, NULL, mDoExt_getJ2dHeap(), 0, NULL, NULL);
#if PLATFORM_WII || PLATFORM_SHIELD
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Dynamic_e, NULL, DynamicModuleControlBase::getHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Dynamic_e, NULL, DynamicModuleControlBase::getHeap(), 0, NULL, NULL);
#endif
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Game_e, NULL, mDoExt_getGameHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Command_e, NULL, mDoExt_getCommandHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_ARAM_e, NULL, NULL, 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Audio_e, 0, "オーディオ", g_mDoAud_audioHeap, 0x169000, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Particle_e, 0, "パーティクルアーカイブ", g_dComIfG_gameInfo.play.getParticle()->getResHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Particle_e, 0, "パーティクル(常駐)", g_dComIfG_gameInfo.play.getParticle()->getHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Particle_e, 0, "パーティクル(ステージ)", g_dComIfG_gameInfo.play.getParticle()->getSceneHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_System_e, HeapType_System_e, "グラフィックFIFO", NULL, 0xA0000, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Game_e, NULL, mDoExt_getGameHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Command_e, NULL, mDoExt_getCommandHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_ARAM_e, NULL, NULL, 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Audio_e, 0, "オーディオ", g_mDoAud_audioHeap, 0x169000, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Particle_e, 0, "パーティクルアーカイブ", g_dComIfG_gameInfo.play.getParticle()->getResHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_Particle_e, 0, "パーティクル(常駐)", g_dComIfG_gameInfo.play.getParticle()->getHeap(), 0, NULL, NULL);
printfTag(TagAtt_Variable_e, TagType_Particle_e, 0, "パーティクル(ステージ)", g_dComIfG_gameInfo.play.getParticle()->getSceneHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, HeapType_System_e, "グラフィックFIFO", NULL, 0xA0000, 0, NULL);
#if PLATFORM_WII || PLATFORM_SHIELD
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "グラフィック関係バッファ", mDoGph_gInf_c::getHeap(), 0, NULL, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "グラフィック関係バッファ", mDoGph_gInf_c::getHeap(), 0, NULL, NULL);
#endif
if (mDoGph_gInf_c::getBloom()->getBuffer() != NULL) {
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "飽和加算用バッファ", mDoGph_gInf_c::getBloom()->getBuffer(), NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "飽和加算用バッファ", mDoGph_gInf_c::getBloom()->getBuffer(), NULL, 0, NULL);
}
if (dComIfGp_getSimpleModel() != NULL) {
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "シンプルモデルバッファ", dComIfGp_getSimpleModel(), NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "シンプルモデルバッファ", dComIfGp_getSimpleModel(), NULL, 0, NULL);
}
if (dMdl_mng_c::m_myObj != NULL) {
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "節約モデルバッファ", dMdl_mng_c::m_myObj, NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "節約モデルバッファ", dMdl_mng_c::m_myObj, NULL, 0, NULL);
}
if (daGrass_c::getGrass() != NULL) {
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "草バッファ", daGrass_c::getGrass(), NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "草バッファ", daGrass_c::getGrass(), NULL, 0, NULL);
}
if (daGrass_c::getFlower() != NULL) {
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "花バッファ", daGrass_c::getFlower(), NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "花バッファ", daGrass_c::getFlower(), NULL, 0, NULL);
}
if (dTres_c::getTypeGroupData() != NULL) {
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "常駐宝箱バッファ", (char*)dTres_c::getTypeGroupData() - 16, NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "常駐宝箱バッファ", (char*)dTres_c::getTypeGroupData() - 16, NULL, 0, NULL);
}
if (dComIfGp_getAttention()->getHeap() != NULL) {
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "注目処理用バッファ", dComIfGp_getAttention()->getHeap(), NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "注目処理用バッファ", dComIfGp_getAttention()->getHeap(), NULL, 0, NULL);
}
printfTag(TagAtt_Variable_e, TagType_2D_e, 0, "2D転送用", dComIfGp_getExpHeap2D(), JKRGetMemBlockSize(NULL, dComIfGp_getExpHeap2D()) + JKRGetMemBlockSize(NULL, dComIfGp_getMsgExpHeap()), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Message_e, 0, "メッセージデータ(常駐)", ((JKRAramArchive*)dComIfGp_getMsgDtArchive())->mBlock, NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Message_e, 0, "メッセージデータ(ステージ)", ((JKRAramArchive*)dComIfGp_getMsgDtArchive(1))->mBlock, NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, 0, "メーター関係", ((JKRAramArchive*)dComIfGp_getMain2DArchive())->mBlock, NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_System_e, 0, "アイテム出現テーブル", dComIfGp_getItemTable(), NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Message_e, HeapType_Zelda_e, "キャッシュフォントバッファ", NULL, JKRGetMemBlockSize(NULL, ((JKRAramArchive*)dComIfGp_getRubyArchive())->mBlock) + 0x1C328, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Audio_e, HeapType_ARAM_e, "オーディオ", NULL, 0xB00000, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Player_e, HeapType_ARAM_e, "リンクアニメーション", NULL, ((JKRAramArchive*)dComIfGp_getAnmArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "フィールドマップレイアウト", NULL, ((JKRAramArchive*)dComIfGp_getFmapResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "フィールドマップデータ", NULL, ((JKRAramArchive*)dComIfGp_getFieldMapArchive2())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "ダンジョンマップレイアウト", NULL, ((JKRAramArchive*)dComIfGp_getDmapResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "コレクト&セーブ&オプション", NULL, ((JKRAramArchive*)dComIfGp_getCollectResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "リングアイテム選択", NULL, ((JKRAramArchive*)dComIfGp_getRingResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "アイテムアイコン", NULL, ((JKRAramArchive*)dComIfGp_getItemIconArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "アイテム説明画面", NULL, ((JKRAramArchive*)dComIfGp_getDemoMsgArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_2D_e, HeapType_ARAM_e, "強調ボタン表示", NULL, ((JKRAramArchive*)dComIfGp_getMeterButtonArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Message_e, HeapType_ARAM_e, "フキダシ共通2Dデータ", NULL, ((JKRAramArchive*)dComIfGp_getMsgCommonArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Message_e, HeapType_ARAM_e, "キャッシュフォント", NULL, mDoExt_getAraCacheSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, 0, "2D転送用", dComIfGp_getExpHeap2D(), JKRGetMemBlockSize(NULL, dComIfGp_getExpHeap2D()) + JKRGetMemBlockSize(NULL, dComIfGp_getMsgExpHeap()), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Message_e, 0, "メッセージデータ(常駐)", ((JKRAramArchive*)dComIfGp_getMsgDtArchive())->mBlock, NULL, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Message_e, 0, "メッセージデータ(ステージ)", ((JKRAramArchive*)dComIfGp_getMsgDtArchive(1))->mBlock, NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, 0, "メーター関係", ((JKRAramArchive*)dComIfGp_getMain2DArchive())->mBlock, NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_System_e, 0, "アイテム出現テーブル", dComIfGp_getItemTable(), NULL, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Message_e, HeapType_Zelda_e, "キャッシュフォントバッファ", NULL, JKRGetMemBlockSize(NULL, ((JKRAramArchive*)dComIfGp_getRubyArchive())->mBlock) + 0x1C328, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Audio_e, HeapType_ARAM_e, "オーディオ", NULL, 0xB00000, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Player_e, HeapType_ARAM_e, "リンクアニメーション", NULL, ((JKRAramArchive*)dComIfGp_getAnmArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "フィールドマップレイアウト", NULL, ((JKRAramArchive*)dComIfGp_getFmapResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "フィールドマップデータ", NULL, ((JKRAramArchive*)dComIfGp_getFieldMapArchive2())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "ダンジョンマップレイアウト", NULL, ((JKRAramArchive*)dComIfGp_getDmapResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "コレクト&セーブ&オプション", NULL, ((JKRAramArchive*)dComIfGp_getCollectResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "リングアイテム選択", NULL, ((JKRAramArchive*)dComIfGp_getRingResArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "アイテムアイコン", NULL, ((JKRAramArchive*)dComIfGp_getItemIconArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "アイテム説明画面", NULL, ((JKRAramArchive*)dComIfGp_getDemoMsgArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_2D_e, HeapType_ARAM_e, "強調ボタン表示", NULL, ((JKRAramArchive*)dComIfGp_getMeterButtonArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Message_e, HeapType_ARAM_e, "フキダシ共通2Dデータ", NULL, ((JKRAramArchive*)dComIfGp_getMsgCommonArchive())->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Message_e, HeapType_ARAM_e, "キャッシュフォント", NULL, mDoExt_getAraCacheSize(), 0, NULL);
for (int i = 0; i < 6; i++) {
char label[64];
sprintf(label, "メッセージ(%d)枠ほか", i);
printfTag(TagAtt_Variable_e, TagType_Message_e, HeapType_ARAM_e, label, NULL, ((JKRAramArchive*)dComIfGp_getMsgArchive(i))->mBlock->getSize(), 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Message_e, HeapType_ARAM_e, label, NULL, ((JKRAramArchive*)dComIfGp_getMsgArchive(i))->mBlock->getSize(), 0, NULL);
}
g_dComIfG_gameInfo.mResControl.dumpTag();
@@ -494,8 +494,8 @@ void fapGm_dataMem::dumpTag() {
}
if (var_r28 != NULL) {
printfTag(TagAtt_Fixed_e, TagType_Stage_e, 0, "ステージメモリーブロック", dStage_roomControl_c::getMemoryBlockHeap(0), var_r28, 0, NULL);
printfTag(TagAtt_Fixed_e, TagType_Heap_e, HeapType_Stage_e, NULL, NULL, var_r28, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Stage_e, 0, "ステージメモリーブロック", dStage_roomControl_c::getMemoryBlockHeap(0), var_r28, 0, NULL);
printfTag(TagAtt_Variable_e, TagType_Heap_e, HeapType_Stage_e, NULL, NULL, var_r28, 0, NULL);
}
DynamicModuleControlBase::dumpTag();
@@ -696,6 +696,7 @@ void fapGm_HIO_c::startCpuTimer() {
}
if (m_CpuTimerOff) {
int stackDummy;
JUT_ASSERT(1302, !m_CpuTimerStart)
m_CpuTimerStart = TRUE;
m_CpuTimerTick = OSGetTick();
@@ -754,5 +755,3 @@ void fapGm_Create() {
#endif
g_HIO.field_0x04 = mDoHIO_CREATE_CHILD("ゲームシステム", &g_HIO);
}
fapGm_HIO_c::~fapGm_HIO_c() {}