summaryrefslogtreecommitdiff
path: root/src/d
diff options
context:
space:
mode:
authorLagoLunatic <LagoLunatic@users.noreply.github.com>2025-11-28 00:34:18 -0500
committerGitHub <noreply@github.com>2025-11-27 21:34:18 -0800
commit4fb3af91b8aff0b9042affa4d430aa3375199973 (patch)
tree2b93dea8856e149b5145a2dcc9965df38081e5f7 /src/d
parenta089a1d21c641cab569facace79ec646132a6d34 (diff)
Various small matches (#2879)
* Misc debug matches * Fix JASBasicWaveBank weak func order * Remove more dol2asm stuff, fix missing includes * Some data fixes * Update comments * d_file_sel_warning is already OK * Fix Z2 splits * Fix movebox namespace * Fix inlining issue in m_Do_ext * Fix Z2 splits for P and J
Diffstat (limited to 'src/d')
-rw-r--r--src/d/actor/d_a_alink_whistle.inc10
-rw-r--r--src/d/actor/d_a_horse.cpp5
-rw-r--r--src/d/actor/d_a_npc4.cpp258
-rw-r--r--src/d/actor/d_a_obj_magne_arm.cpp5
-rw-r--r--src/d/actor/d_a_obj_movebox.cpp6
-rw-r--r--src/d/actor/d_a_obj_stairBlock.cpp5
-rw-r--r--src/d/d_msg_object.cpp27
7 files changed, 70 insertions, 246 deletions
diff --git a/src/d/actor/d_a_alink_whistle.inc b/src/d/actor/d_a_alink_whistle.inc
index 111ae5b610..78d17bfbb8 100644
--- a/src/d/actor/d_a_alink_whistle.inc
+++ b/src/d/actor/d_a_alink_whistle.inc
@@ -28,12 +28,6 @@ static fopAc_ac_c* daAlink_searchHawk(fopAc_ac_c* i_actor, void* i_data) {
return NULL;
}
-/* 80453020-80453024 001620 0004+00 1/1 0/0 0/0 .sdata2 grassWhistleIdx$33097 */
-static const u16 grassWhistleIdx[2] = {
- 3,
- 3,
-};
-
/* 80111784-8011181C 10C0C4 0098+00 1/1 0/0 0/0 .text setGrassWhistleModel__9daAlink_cFi
*/
void daAlink_c::setGrassWhistleModel(int modelType) {
@@ -41,6 +35,10 @@ void daAlink_c::setGrassWhistleModel(int modelType) {
"J_Tobi",
"J_Umak",
};
+ static const u16 grassWhistleIdx[2] = {
+ 3,
+ 3,
+ };
JKRHeap* prev_heap = setItemHeap();
diff --git a/src/d/actor/d_a_horse.cpp b/src/d/actor/d_a_horse.cpp
index e60d571f64..f52779fbb9 100644
--- a/src/d/actor/d_a_horse.cpp
+++ b/src/d/actor/d_a_horse.cpp
@@ -16,6 +16,7 @@
#include "m_Do/m_Do_controller_pad.h"
#include "SSystem/SComponent/c_math.h"
#include "Z2AudioLib/Z2Instances.h"
+#include "JSystem/JAudio2/JAUSectionHeap.h"
#include <cmath.h>
#define ANM_HS_BACK_WALK 6
@@ -1686,7 +1687,7 @@ void daHorse_c::setMoveAnime(f32 i_morf) {
}
/* 8083BF48-8083CA80 004108 0B38+00 6/6 0/0 0/0 .text checkHorseNoMove__9daHorse_cFi */
-// NONMATCHING - some float regalloc, equivalent
+// NONMATCHING - instruction order, some float regalloc, equivalent
int daHorse_c::checkHorseNoMove(int param_0) {
cXyz sp50;
cXyz sp44;
@@ -4703,3 +4704,5 @@ extern actor_process_profile_definition g_profile_HORSE = {
};
AUDIO_INSTANCES;
+template<>
+JAUSectionHeap* JASGlobalInstance<JAUSectionHeap>::sInstance;
diff --git a/src/d/actor/d_a_npc4.cpp b/src/d/actor/d_a_npc4.cpp
index 49fb5cdbc5..0a0a3307a3 100644
--- a/src/d/actor/d_a_npc4.cpp
+++ b/src/d/actor/d_a_npc4.cpp
@@ -1,5 +1,7 @@
#include "d/actor/d_a_npc4.h"
+#include "d/actor/d_a_npc2.h"
#include "d/actor/d_a_npc_tk.h"
+#include "d/d_debug_viewer.h"
#include "d/d_msg_object.h"
#include "d/actor/d_a_tag_evtarea.h"
#include "dol2asm.h"
@@ -2290,221 +2292,41 @@ dCcD_SrcGObjInf const daNpcF_c::mCcDObjInfo = {
{0}
};
-/* 80392720-80392725 01ED80 0005+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392720 = ".bck";
-#pragma pop
-
-/* 80392725-8039272A 01ED85 0005+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392725 = ".btp";
-#pragma pop
-
-/* 8039272A-8039272F 01ED8A 0005+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039272A = ".btk";
-#pragma pop
-
-/* 8039272F-8039274A 01ED8F 001B+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039272F = "%.3ff,\t// 注目オフセット\n";
-#pragma pop
-
-/* 8039274A-8039275B 01EDAA 0011+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039274A = "%.3ff,\t// 重力\n";
-#pragma pop
-
-/* 8039275B-80392770 01EDBB 0015+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039275B = "%.3ff,\t// スケ−ル\n";
-#pragma pop
-
-/* 80392770-8039278B 01EDD0 001B+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392770 = "%.3ff,\t// リアル影サイズ\n";
-#pragma pop
-
-/* 8039278B-8039279C 01EDEB 0011+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039278B = "%.3ff,\t// 体重\n";
-#pragma pop
-
-/* 8039279C-803927AD 01EDFC 0011+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039279C = "%.3ff,\t// 高さ\n";
-#pragma pop
-
-/* 803927AD-803927C0 01EE0D 0013+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803927AD = "%.3ff,\t// ひざ丈\n";
-#pragma pop
-
-/* 803927C0-803927CF 01EE20 000F+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803927C0 = "%.3ff,\t// 幅\n";
-#pragma pop
-
-/* 803927CF-803927E8 01EE2F 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803927CF = "%.3ff,\t// 腰のX角上限\n";
-#pragma pop
-
-/* 803927E8-80392801 01EE48 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803927E8 = "%.3ff,\t// 腰のX角下限\n";
-#pragma pop
-
-/* 80392801-8039281A 01EE61 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392801 = "%.3ff,\t// 腰のY角上限\n";
-#pragma pop
-
-/* 8039281A-80392833 01EE7A 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039281A = "%.3ff,\t// 腰のY角下限\n";
-#pragma pop
-
-/* 80392833-8039284C 01EE93 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392833 = "%.3ff,\t// 頭のX角上限\n";
-#pragma pop
-
-/* 8039284C-80392865 01EEAC 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039284C = "%.3ff,\t// 頭のX角下限\n";
-#pragma pop
-
-/* 80392865-8039287E 01EEC5 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392865 = "%.3ff,\t// 頭のY角上限\n";
-#pragma pop
-
-/* 8039287E-80392897 01EEDE 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039287E = "%.3ff,\t// 頭のY角下限\n";
-#pragma pop
-
-/* 80392897-803928B0 01EEF7 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392897 = "%.3ff,\t// 首の回転比率\n";
-#pragma pop
-
-/* 803928B0-803928C9 01EF10 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803928B0 = "%.3ff,\t// 補間フレ−ム\n";
-#pragma pop
-
-/* 803928C9-803928DE 01EF29 0015+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803928C9 = "%d, \t// 会話距離\n";
-#pragma pop
-
-/* 803928DE-803928F3 01EF3E 0015+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803928DE = "%d, \t// 会話角度\n";
-#pragma pop
-
-/* 803928F3-80392908 01EF53 0015+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803928F3 = "%d, \t// 注目距離\n";
-#pragma pop
-
-/* 80392908-8039291D 01EF68 0015+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392908 = "%d, \t// 注目角度\n";
-#pragma pop
-
-/* 8039291D-8039292E 01EF7D 0011+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039291D = "%.3ff,\t// 視界\n";
-#pragma pop
-
-/* 8039292E-80392945 01EF8E 0017+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039292E = "%.3ff,\t// サ−チ距離\n";
-#pragma pop
-
-/* 80392945-8039295C 01EFA5 0017+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392945 = "%.3ff,\t// サ−チ高さ\n";
-#pragma pop
-
-/* 8039295C-80392973 01EFBC 0017+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8039295C = "%.3ff,\t// サ−チ低さ\n";
-#pragma pop
-
-/* 80392973-80392988 01EFD3 0015+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392973 = "%d, \t// 注目時間\n";
-#pragma pop
-
-/* 80392988-803929A1 01EFE8 0019+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80392988 = "%d, \t// ダメ−ジ期間\n";
-#pragma pop
-
-/* 803929A1-803929B2 01F001 0011+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-// MWCC ignores mapping of some japanese characters using the
-// byte 0x5C (ASCII '\'). This is why this string is hex-encoded.
-SECTION_DEAD static char const* const stringBase_803929A1 =
- "\x25\x64\x2C\x20\x20\x20\x09\x2F\x2F\x20\x20\x95\x5C\x8F\xEE\x0A";
-#pragma pop
-
-/* 803929B2-803929C3 01F012 0011+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803929B2 = "%d, \t// 動作\n";
-#pragma pop
-
-/* 803929C3-803929DA 01F023 0017+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803929C3 = "%d, \t// 注視モ−ド\n";
-#pragma pop
-
-/* 803929DA-803929F7 01F03A 001D+00 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803929DA = "%d, \t// デバグモ−ドON\n";
-#pragma pop
-
-/* 803929F7-80392A18 01F057 001B+06 0/0 0/0 0/0 .rodata None */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803929F7 = "%d, \t// デバグ情報ON\n";
-#pragma pop
+static void dummyStrings() {
+ DEAD_STRING(".bck");
+ DEAD_STRING(".btp");
+ DEAD_STRING(".btk");
+ DEAD_STRING("%.3ff,\t// 注目オフセット\n");
+ DEAD_STRING("%.3ff,\t// 重力\n");
+ DEAD_STRING("%.3ff,\t// スケ−ル\n");
+ DEAD_STRING("%.3ff,\t// リアル影サイズ\n");
+ DEAD_STRING("%.3ff,\t// 体重\n");
+ DEAD_STRING("%.3ff,\t// 高さ\n");
+ DEAD_STRING("%.3ff,\t// ひざ丈\n");
+ DEAD_STRING("%.3ff,\t// 幅\n");
+ DEAD_STRING("%.3ff,\t// 腰のX角上限\n");
+ DEAD_STRING("%.3ff,\t// 腰のX角下限\n");
+ DEAD_STRING("%.3ff,\t// 腰のY角上限\n");
+ DEAD_STRING("%.3ff,\t// 腰のY角下限\n");
+ DEAD_STRING("%.3ff,\t// 頭のX角上限\n");
+ DEAD_STRING("%.3ff,\t// 頭のX角下限\n");
+ DEAD_STRING("%.3ff,\t// 頭のY角上限\n");
+ DEAD_STRING("%.3ff,\t// 頭のY角下限\n");
+ DEAD_STRING("%.3ff,\t// 首の回転比率\n");
+ DEAD_STRING("%.3ff,\t// 補間フレ−ム\n");
+ DEAD_STRING("%d, \t// 会話距離\n");
+ DEAD_STRING("%d, \t// 会話角度\n");
+ DEAD_STRING("%d, \t// 注目距離\n");
+ DEAD_STRING("%d, \t// 注目角度\n");
+ DEAD_STRING("%.3ff,\t// 視界\n");
+ DEAD_STRING("%.3ff,\t// サ−チ距離\n");
+ DEAD_STRING("%.3ff,\t// サ−チ高さ\n");
+ DEAD_STRING("%.3ff,\t// サ−チ低さ\n");
+ DEAD_STRING("%d, \t// 注目時間\n");
+ DEAD_STRING("%d, \t// ダメ−ジ期間\n");
+ DEAD_STRING("%d, \t// 表情\n");
+ DEAD_STRING("%d, \t// 動作\n");
+ DEAD_STRING("%d, \t// 注視モ−ド\n");
+ DEAD_STRING("%d, \t// デバグモ−ドON\n");
+ DEAD_STRING("%d, \t// デバグ情報ON\n");
+}
diff --git a/src/d/actor/d_a_obj_magne_arm.cpp b/src/d/actor/d_a_obj_magne_arm.cpp
index 686b725836..7e3c542dea 100644
--- a/src/d/actor/d_a_obj_magne_arm.cpp
+++ b/src/d/actor/d_a_obj_magne_arm.cpp
@@ -163,8 +163,9 @@ void rideCallBack(dBgW* param_0, fopAc_ac_c* i_this, fopAc_ac_c* i_rideActor) {
/* 805929A0-805929A4 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */
static char* l_arcName = "D_Marm";
-/* 80592977-8059297E 00012F 0007+00 0/0 0/0 0/0 .rodata None */
-SECTION_DEAD static char const* const stringBase_80592977 = "D_MN54";
+static void dummyStrings() {
+ DEAD_STRING("D_MN54");
+}
/* 805929A4-805929BC 000024 0018+00 1/1 0/0 0/0 .data l_cull_box */
static Vec l_cull_box[2] = {{-500.0f, -3000.0f, -500.0f}, {500.0f, 3000.0f, 2500.0f}};
diff --git a/src/d/actor/d_a_obj_movebox.cpp b/src/d/actor/d_a_obj_movebox.cpp
index a25fdbd5ca..7f15c1265d 100644
--- a/src/d/actor/d_a_obj_movebox.cpp
+++ b/src/d/actor/d_a_obj_movebox.cpp
@@ -1279,6 +1279,7 @@ int daObjMovebox::Act_c::Mthd_Delete() {
return rt;
}
+namespace daObjMovebox {
namespace {
/* 80480920-80480AD4 002F20 01B4+00 1/0 0/0 0/0 .text
* Mthd_Create__Q212daObjMovebox29@unnamed@d_a_obj_movebox_cpp@FPv */
@@ -1317,7 +1318,8 @@ static actor_method_class Mthd_Table = {
(process_method_func)Mthd_Execute, (process_method_func)Mthd_IsDelete,
(process_method_func)Mthd_Draw,
};
-} // namespace
+}; // namespace
+}; // namespace daObjMovebox
/* 8048178C-804817BC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Movebox */
extern actor_process_profile_definition g_profile_Obj_Movebox = {
@@ -1331,7 +1333,7 @@ extern actor_process_profile_definition g_profile_Obj_Movebox = {
0, // mParameters
&g_fopAc_Method.base, // sub_method
17, // mPriority
- &Mthd_Table, // sub_method
+ &daObjMovebox::Mthd_Table, // sub_method
0x00040504, // mStatus
fopAc_ACTOR_e, // mActorType
fopAc_CULLBOX_CUSTOM_e, // cullType
diff --git a/src/d/actor/d_a_obj_stairBlock.cpp b/src/d/actor/d_a_obj_stairBlock.cpp
index 07b938edf5..e3125be585 100644
--- a/src/d/actor/d_a_obj_stairBlock.cpp
+++ b/src/d/actor/d_a_obj_stairBlock.cpp
@@ -62,9 +62,8 @@ int daStairBlock_c::CreateHeap() {
return 0;
}
- J3DAnmTransform* bck = (J3DAnmTransform*)dComIfG_getObjectRes("StaBlock", l_bckIdx[i]);
- s32 res = mBckAnm[i].init(bck, 1, 0, 1.0f, 0, -1, false);
- JUT_ASSERT_MSG(290, res == 1, "res == 1");
+ s32 res = mBckAnm[i].init((J3DAnmTransform*)dComIfG_getObjectRes("StaBlock", l_bckIdx[i]), 1, 0, 1.0f, 0, -1, false);
+ JUT_ASSERT(290, res == 1);
mBckAnm[i].setEndFrame(mBckAnm[i].getEndFrame() - 1.0f);
}
diff --git a/src/d/d_msg_object.cpp b/src/d/d_msg_object.cpp
index 547eb68a1d..5bf59fdd7c 100644
--- a/src/d/d_msg_object.cpp
+++ b/src/d/d_msg_object.cpp
@@ -415,20 +415,19 @@ int dMsgObject_c::_create(msg_class* param_1) {
return 4;
}
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80399660 = "zel_00.bmg";
-SECTION_DEAD static char const* const stringBase_8039966B = "zel_01.bmg";
-SECTION_DEAD static char const* const stringBase_80399676 = "zel_02.bmg";
-SECTION_DEAD static char const* const stringBase_80399681 = "zel_03.bmg";
-SECTION_DEAD static char const* const stringBase_8039968C = "zel_04.bmg";
-SECTION_DEAD static char const* const stringBase_80399697 = "zel_05.bmg";
-SECTION_DEAD static char const* const stringBase_803996A2 = "zel_06.bmg";
-SECTION_DEAD static char const* const stringBase_803996AD = "zel_07.bmg";
-SECTION_DEAD static char const* const stringBase_803996B8 = "zel_08.bmg";
-SECTION_DEAD static char const* const stringBase_803996C3 = "zel_99.bmg";
-SECTION_DEAD static char const* const stringBase_803996CE = "";
-#pragma pop
+static void dummyStrings() {
+ DEAD_STRING("zel_00.bmg");
+ DEAD_STRING("zel_01.bmg");
+ DEAD_STRING("zel_02.bmg");
+ DEAD_STRING("zel_03.bmg");
+ DEAD_STRING("zel_04.bmg");
+ DEAD_STRING("zel_05.bmg");
+ DEAD_STRING("zel_06.bmg");
+ DEAD_STRING("zel_07.bmg");
+ DEAD_STRING("zel_08.bmg");
+ DEAD_STRING("zel_99.bmg");
+ DEAD_STRING("");
+}
/* 8043028C-8043069C 05CFAC 0410+00 7/7 51/51 0/0 .bss g_MsgObject_HIO_c */
dMsgObject_HIO_c g_MsgObject_HIO_c;