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
This commit is contained in:
LagoLunatic 2025-11-28 00:34:18 -05:00 committed by GitHub
parent a089a1d21c
commit 4fb3af91b8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
34 changed files with 250 additions and 365 deletions

View File

@ -530,10 +530,12 @@ handR_ang = .bss:0x000000A6; // type:object size:0x2 scope:global
handX_ang = .bss:0x000000A8; // type:object size:0x2 scope:global
lbl_142_bss_AA = .bss:0x000000AA; // type:object size:0x1 data:byte
@5249 = .bss:0x000000AC; // type:object size:0xC scope:local
init$3146 = .bss:0x000000B8; // type:object size:0x1 scope:local data:byte
@5252 = .bss:0x000000BC; // type:object size:0xC scope:local
@5253 = .bss:0x000000C8; // type:object size:0xC scope:local
mOpPlayerDt$5248 = .bss:0x000000D4; // type:object size:0x24 scope:local
@5255 = .bss:0x000000F8; // type:object size:0xC scope:local
init$3152 = .bss:0x00000104; // type:object size:0x1 scope:local data:byte
@5258 = .bss:0x00000108; // type:object size:0xC scope:local
@5259 = .bss:0x00000114; // type:object size:0xC scope:local
@5260 = .bss:0x00000120; // type:object size:0xC scope:local
@ -550,9 +552,11 @@ mOpPlayerDt$5248 = .bss:0x000000D4; // type:object size:0x24 scope:local
@5271 = .bss:0x000001A4; // type:object size:0xC scope:local
mOpCenterDt$5254 = .bss:0x000001B0; // type:object size:0xB4 scope:local
@5273 = .bss:0x00000264; // type:object size:0xC scope:local
init$3170 = .bss:0x00000270; // type:object size:0x1 scope:local data:byte
@5276 = .bss:0x00000274; // type:object size:0xC scope:local
mOpCenterBodyDt$5272 = .bss:0x00000280; // type:object size:0x18 scope:local
@5278 = .bss:0x00000298; // type:object size:0xC scope:local
init$3175 = .bss:0x000002A4; // type:object size:0x1 scope:local data:byte
@5281 = .bss:0x000002A8; // type:object size:0xC scope:local
@5282 = .bss:0x000002B4; // type:object size:0xC scope:local
@5283 = .bss:0x000002C0; // type:object size:0xC scope:local
@ -569,25 +573,30 @@ mOpCenterBodyDt$5272 = .bss:0x00000280; // type:object size:0x18 scope:local
@5294 = .bss:0x00000344; // type:object size:0xC scope:local
mOpEyeDt$5277 = .bss:0x00000350; // type:object size:0xB4 scope:local
@5296 = .bss:0x00000404; // type:object size:0xC scope:local
init$3193 = .bss:0x00000410; // type:object size:0x1 scope:local data:byte
@5299 = .bss:0x00000414; // type:object size:0xC scope:local
mOpEyeBodyDt$5295 = .bss:0x00000420; // type:object size:0x18 scope:local
@6354 = .bss:0x00000438; // type:object size:0xC scope:local
init$4244 = .bss:0x00000444; // type:object size:0x1 scope:local data:byte
@6357 = .bss:0x00000448; // type:object size:0xC scope:local
@6358 = .bss:0x00000454; // type:object size:0xC scope:local
@6359 = .bss:0x00000460; // type:object size:0xC scope:local
@6360 = .bss:0x0000046C; // type:object size:0xC scope:local
down_center_dt$6353 = .bss:0x00000478; // type:object size:0x3C scope:local
@6362 = .bss:0x000004B4; // type:object size:0xC scope:local
init$4252 = .bss:0x000004C0; // type:object size:0x1 scope:local data:byte
@6365 = .bss:0x000004C4; // type:object size:0xC scope:local
@6366 = .bss:0x000004D0; // type:object size:0xC scope:local
@6367 = .bss:0x000004DC; // type:object size:0xC scope:local
@6368 = .bss:0x000004E8; // type:object size:0xC scope:local
down_eye_dt$6361 = .bss:0x000004F4; // type:object size:0x3C scope:local
@7447 = .bss:0x00000530; // type:object size:0xC scope:local
init$5330 = .bss:0x0000053C; // type:object size:0x1 scope:local data:byte
@7450 = .bss:0x00000540; // type:object size:0xC scope:local
@7451 = .bss:0x0000054C; // type:object size:0xC scope:local
mOp2PlayerDt$7446 = .bss:0x00000558; // type:object size:0x24 scope:local
@7453 = .bss:0x0000057C; // type:object size:0xC scope:local
init$5336 = .bss:0x00000588; // type:object size:0x1 scope:local data:byte
@7456 = .bss:0x0000058C; // type:object size:0xC scope:local
@7457 = .bss:0x00000598; // type:object size:0xC scope:local
@7458 = .bss:0x000005A4; // type:object size:0xC scope:local
@ -596,6 +605,7 @@ mOp2PlayerDt$7446 = .bss:0x00000558; // type:object size:0x24 scope:local
@7461 = .bss:0x000005C8; // type:object size:0xC scope:local
mOp2CenterDt$7452 = .bss:0x000005D4; // type:object size:0x54 scope:local
@7463 = .bss:0x00000628; // type:object size:0xC scope:local
init$5346 = .bss:0x00000634; // type:object size:0x1 scope:local data:byte
@7466 = .bss:0x00000638; // type:object size:0xC scope:local
@7467 = .bss:0x00000644; // type:object size:0xC scope:local
@7468 = .bss:0x00000650; // type:object size:0xC scope:local
@ -604,20 +614,24 @@ mOp2CenterDt$7452 = .bss:0x000005D4; // type:object size:0x54 scope:local
@7471 = .bss:0x00000674; // type:object size:0xC scope:local
mOp2EyeDt$7462 = .bss:0x00000680; // type:object size:0x54 scope:local
@9091 = .bss:0x000006D4; // type:object size:0xC scope:local
init$6933 = .bss:0x000006E0; // type:object size:0x1 scope:local data:byte
@9094 = .bss:0x000006E4; // type:object size:0xC scope:local
mEd2CenterDt$9090 = .bss:0x000006F0; // type:object size:0x18 scope:local
@9096 = .bss:0x00000708; // type:object size:0xC scope:local
init$6938 = .bss:0x00000714; // type:object size:0x1 scope:local data:byte
@9099 = .bss:0x00000718; // type:object size:0xC scope:local
mEd22EyeDt$9095 = .bss:0x00000724; // type:object size:0x18 scope:local
lbl_142_bss_73C = .bss:0x0000073C; // type:object size:0x1 data:byte
init$7517 = .bss:0x0000073C; // type:object size:0x1 scope:local data:byte
mWaitDt$9733 = .bss:0x00000740; // type:object size:0xC scope:local data:4byte
@10210 = .bss:0x0000074C; // type:object size:0xC scope:local
init$8022 = .bss:0x00000758; // type:object size:0x1 scope:local data:byte
@10213 = .bss:0x0000075C; // type:object size:0xC scope:local
@10214 = .bss:0x00000768; // type:object size:0xC scope:local
@10215 = .bss:0x00000774; // type:object size:0xC scope:local
@10216 = .bss:0x00000780; // type:object size:0xC scope:local
head_cc_dt$10209 = .bss:0x0000078C; // type:object size:0x3C scope:local
@10829 = .bss:0x000007C8; // type:object size:0xC scope:local
init$8634 = .bss:0x000007D4; // type:object size:0x1 scope:local data:byte
@10832 = .bss:0x000007D8; // type:object size:0xC scope:local
@10833 = .bss:0x000007E4; // type:object size:0xC scope:local
@10834 = .bss:0x000007F0; // type:object size:0xC scope:local

View File

@ -249,5 +249,5 @@ sInstance__32JASGlobalInstance<11Z2FxLineMgr> = .bss:0x000000D0; // type:object
sInstance__31JASGlobalInstance<10Z2EnvSeMgr> = .bss:0x000000D4; // type:object size:0x4 scope:global
sInstance__32JASGlobalInstance<11Z2SpeechMgr> = .bss:0x000000D8; // type:object size:0x4 scope:global
sInstance__34JASGlobalInstance<13Z2WolfHowlMgr> = .bss:0x000000DC; // type:object size:0x4 scope:global
lbl_289_bss_E0 = .bss:0x000000E0; // type:object size:0x1 data:byte
init$localstatic4$setAttnPos__11daNpcBouS_cFv = .bss:0x000000E0; // type:object size:0x1 data:byte
eyeOffset$localstatic3$setAttnPos__11daNpcBouS_cFv = .bss:0x000000E4; // type:object size:0xC scope:local align:4 data:float

View File

@ -446,5 +446,5 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa
@3974 = .bss:0x00000008; // type:object size:0xC scope:local
l_HIO = .bss:0x00000014; // type:object size:0x4 scope:global data:4byte
@4628 = .bss:0x00000018; // type:object size:0xC scope:local
lbl_378_bss_24 = .bss:0x00000024; // type:object size:0x1 data:byte
init$localstatic4$setAttnPos__15daNpcWrestler_cFv = .bss:0x00000024; // type:object size:0x1 data:byte
eyeOffset$localstatic3$setAttnPos__15daNpcWrestler_cFv = .bss:0x00000028; // type:object size:0xC scope:local align:4 data:float

View File

@ -189,22 +189,22 @@ __vt__14dBgS_ObjGndChk = .data:0x0000040C; // type:object size:0x30 scope:global
__vt__11dBgS_WtrChk = .data:0x0000043C; // type:object size:0x30 scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
...bss.0 = .bss:0x00000008; // type:label scope:local
lit_1109 = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
lit_1107 = .bss:0x0000000C; // type:object size:0x1 scope:local
lit_1105 = .bss:0x00000010; // type:object size:0x1 scope:local
lit_1104 = .bss:0x00000014; // type:object size:0x1 scope:local
lit_1099 = .bss:0x00000018; // type:object size:0x1 scope:local
lit_1097 = .bss:0x0000001C; // type:object size:0x1 scope:local
lit_1095 = .bss:0x00000020; // type:object size:0x1 scope:local
lit_1094 = .bss:0x00000024; // type:object size:0x1 scope:local
lit_1057 = .bss:0x00000028; // type:object size:0x1 scope:local
lit_1055 = .bss:0x0000002C; // type:object size:0x1 scope:local
lit_1053 = .bss:0x00000030; // type:object size:0x1 scope:local
lit_1052 = .bss:0x00000034; // type:object size:0x1 scope:local
lit_1014 = .bss:0x00000038; // type:object size:0x1 scope:local
lit_1012 = .bss:0x0000003C; // type:object size:0x1 scope:local
lit_1010 = .bss:0x00000040; // type:object size:0x1 scope:local
lit_1009 = .bss:0x00000044; // type:object size:0x1 scope:local
@1109 = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@1107 = .bss:0x0000000C; // type:object size:0x1 scope:local
@1105 = .bss:0x00000010; // type:object size:0x1 scope:local
@1104 = .bss:0x00000014; // type:object size:0x1 scope:local
@1099 = .bss:0x00000018; // type:object size:0x1 scope:local
@1097 = .bss:0x0000001C; // type:object size:0x1 scope:local
@1095 = .bss:0x00000020; // type:object size:0x1 scope:local
@1094 = .bss:0x00000024; // type:object size:0x1 scope:local
@1057 = .bss:0x00000028; // type:object size:0x1 scope:local
@1055 = .bss:0x0000002C; // type:object size:0x1 scope:local
@1053 = .bss:0x00000030; // type:object size:0x1 scope:local
@1052 = .bss:0x00000034; // type:object size:0x1 scope:local
@1014 = .bss:0x00000038; // type:object size:0x1 scope:local
@1012 = .bss:0x0000003C; // type:object size:0x1 scope:local
@1010 = .bss:0x00000040; // type:object size:0x1 scope:local
@1009 = .bss:0x00000044; // type:object size:0x1 scope:local
init$2123 = .bss:0x00000045; // type:object size:0x1 scope:local data:byte
init$2180 = .bss:0x00000046; // type:object size:0x1 scope:local data:byte
init$2232 = .bss:0x00000047; // type:object size:0x1 scope:local data:byte

View File

@ -74,4 +74,4 @@ __vt__14mDoHIO_entry_c = .data:0x0000014C; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
@3647 = .bss:0x00000008; // type:object size:0xC scope:local
l_HIO = .bss:0x00000014; // type:object size:0x20 scope:global align:4 data:float
lbl_698_bss_34 = .bss:0x00000034; // type:object size:0x1 data:byte
init$1850 = .bss:0x00000034; // type:object size:0x1 data:byte

View File

@ -68,7 +68,7 @@ sRoot$4500 = .rodata:0x00000104; // type:object size:0xE0 scope:local
@4571 = .rodata:0x00000204; // type:object size:0x4 scope:local align:4 data:float
@4658 = .rodata:0x00000208; // type:object size:0x8 scope:local align:8 data:double
@stringBase0 = .rodata:0x00000210; // type:object size:0x5 scope:local data:string_table
lbl_699_data_0 = .data:0x00000000; // type:object size:0x1 data:byte
@1738 = .data:0x00000000; // type:object size:0x1 data:byte
l_arcName = .data:0x00000004; // type:object size:0x4 scope:global data:4byte
l_daObjZraMark_Method = .data:0x00000008; // type:object size:0x20 scope:global
g_profile_ZRA_MARK = .data:0x00000028; // type:object size:0x30 scope:global
@ -76,4 +76,4 @@ __vt__18daNpcF_ActorMngr_c = .data:0x00000058; // type:object size:0xC scope:glo
__vt__8cM3dGCyl = .data:0x00000064; // type:object size:0xC scope:global
__vt__8cM3dGAab = .data:0x00000070; // type:object size:0xC scope:global
roottype$4501 = .bss:0x00000000; // type:object size:0x4 scope:local
lbl_699_bss_4 = .bss:0x00000004; // type:object size:0x1 data:byte
init$2350 = .bss:0x00000004; // type:object size:0x1 data:byte

View File

@ -37,4 +37,4 @@ l_func$3711 = .data:0x0000005C; // type:object size:0x30 scope:local
action_table$3769 = .data:0x0000008C; // type:object size:0x8 scope:local
l_daTagRiverBack_Method = .data:0x00000094; // type:object size:0x20 scope:global
g_profile_Tag_RiverBack = .data:0x000000B4; // type:object size:0x30 scope:global
lbl_736_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
init$1712 = .bss:0x00000000; // type:object size:0x1 data:byte

View File

@ -2280,7 +2280,7 @@ Z2AudioLib/Z2Audience.cpp:
.rodata start:0x8039C220 end:0x8039C230
.data start:0x803CAC98 end:0x803CACD0
.bss start:0x804341D8 end:0x804341F8
.sbss start:0x80451350 end:0x80451360
.sbss start:0x80451350 end:0x80451358
.sdata2 start:0x80455AA0 end:0x80455B38
Z2AudioLib/Z2SoundObject.cpp:
@ -2300,6 +2300,7 @@ Z2AudioLib/Z2Creature.cpp:
.text start:0x802C03C8 end:0x802C321C
.ctors start:0x80373924 end:0x80373928
.data start:0x803CB230 end:0x803CB8F0
.sbss start:0x80451358 end:0x80451360
.sdata2 start:0x80455BD8 end:0x80455C98
Z2AudioLib/Z2LinkMgr.cpp:

View File

@ -21907,20 +21907,20 @@ init$33110 = .sbss:0x80450FBC; // type:object size:0x1 scope:local align:1 data:
init$33113 = .sbss:0x80450FBD; // type:object size:0x1 scope:local align:1 data:byte
it$36766 = .sbss:0x80450FC0; // type:object size:0x4 scope:local align:4 data:4byte
init$37466 = .sbss:0x80450FC4; // type:object size:0x1 scope:local align:4 data:byte
lbl_80450FC5 = .sbss:0x80450FC5; // type:object size:0x1 data:byte
lbl_80450FC6 = .sbss:0x80450FC6; // type:object size:0x1 data:byte
lbl_80450FC7 = .sbss:0x80450FC7; // type:object size:0x1 data:byte
m_eye_move_flg = .sbss:0x80450FC8; // type:object size:0x1 scope:local align:1 data:byte
init$37209 = .sbss:0x80450FC5; // type:object size:0x1 data:byte
init$37212 = .sbss:0x80450FC6; // type:object size:0x1 data:byte
init$37215 = .sbss:0x80450FC7; // type:object size:0x1 data:byte
m_eye_move_flg__16daAlink_matAnm_c = .sbss:0x80450FC8; // type:object size:0x1 scope:local align:1 data:byte
m_morf_frame__16daAlink_matAnm_c = .sbss:0x80450FC9; // type:object size:0x1 scope:global align:1 data:byte
bgWaitFlg = .sbss:0x80450FCC; // type:object size:0x4 scope:local align:4 data:4byte
struct_80450FD0 = .sbss:0x80450FD0; // type:object size:0x1 scope:local align:1 data:byte
data_80450FD1 = .sbss:0x80450FD1; // type:object size:0x1 scope:local align:1 data:byte
bgWaitFlg$58404 = .sbss:0x80450FCC; // type:object size:0x4 scope:local align:4 data:4byte
init$53406 = .sbss:0x80450FD0; // type:object size:0x1 scope:local align:1 data:byte
init$55897 = .sbss:0x80450FD1; // type:object size:0x1 scope:local align:1 data:byte
mSrchName__8daNpcT_c = .sbss:0x80450FD8; // type:object size:0x2 scope:global align:2 data:2byte
mFindCount__8daNpcT_c = .sbss:0x80450FDC; // type:object size:0x4 scope:global align:4 data:4byte
m_name__23daBaseNpc_moveBgActor_c = .sbss:0x80450FE0; // type:object size:0x4 scope:global align:4 data:4byte
m_dzb_id__23daBaseNpc_moveBgActor_c = .sbss:0x80450FE4; // type:object size:0x4 scope:global align:4 data:4byte
m_set_func__23daBaseNpc_moveBgActor_c = .sbss:0x80450FE8; // type:object size:0x4 scope:global align:4 data:4byte
data_80450FEC = .sbss:0x80450FEC; // type:object size:0x1 scope:local align:4 data:byte
init$7237 = .sbss:0x80450FEC; // type:object size:0x1 scope:local align:4 data:byte
mFindCount__8daNpcF_c = .sbss:0x80450FF0; // type:object size:0x4 scope:global align:4 data:4byte
mSrchActorName__8daNpcF_c = .sbss:0x80450FF4; // type:object size:0x2 scope:global align:2 data:2byte
init$1719 = .sbss:0x80450FF8; // type:object size:0x1 scope:global align:1 data:byte
@ -21934,20 +21934,20 @@ m_dropAngleY__20daPy_boomerangMove_c = .sbss:0x8045101C; // type:object size:0x2
m_eventKeepFlg__20daPy_boomerangMove_c = .sbss:0x8045101E; // type:object size:0x2 scope:global align:2 data:2byte
Stage__22@unnamed@d_camera_cpp@ = .sbss:0x80451020; // type:object size:0x4 scope:global align:4 data:4byte
prev_plat1$8536 = .sbss:0x80451024; // type:object size:0x4 scope:local align:4 data:4byte
data_80451028 = .sbss:0x80451028; // type:object size:0x1 scope:local align:4 data:byte
init$6037 = .sbss:0x80451028; // type:object size:0x1 scope:local align:4 data:byte
prev_plat2$8539 = .sbss:0x8045102C; // type:object size:0x4 scope:local align:4 data:4byte
data_80451030 = .sbss:0x80451030; // type:object size:0x1 scope:local align:4 data:byte
init$6040 = .sbss:0x80451030; // type:object size:0x1 scope:local align:4 data:byte
JumpCushion$9801 = .sbss:0x80451034; // type:object size:0x4 scope:local align:4 data:float
data_80451038 = .sbss:0x80451038; // type:object size:0x1 scope:local align:4 data:byte
data_80451039 = .sbss:0x80451039; // type:object size:0x1 data:byte
init$7253 = .sbss:0x80451038; // type:object size:0x1 scope:local align:4 data:byte
init$7257 = .sbss:0x80451039; // type:object size:0x1 data:byte
LatitudeLimitMax$9807 = .sbss:0x8045103C; // type:object size:0x2 scope:local align:4
data_8045103E = .sbss:0x8045103E; // type:object size:0x1 data:byte
init$11469 = .sbss:0x8045103E; // type:object size:0x1 data:byte
_120$14158 = .sbss:0x80451040; // type:object size:0x2 scope:local align:4 data:2byte
data_80451042 = .sbss:0x80451042; // type:object size:0x1 data:byte
init$11919 = .sbss:0x80451042; // type:object size:0x1 data:byte
_120$14614 = .sbss:0x80451044; // type:object size:0x2 scope:local align:4 data:2byte
data_80451046 = .sbss:0x80451046; // type:object size:0x1 data:byte
init$12264 = .sbss:0x80451046; // type:object size:0x1 data:byte
LatMin$14963 = .sbss:0x80451048; // type:object size:0x2 scope:local align:4 data:2byte
data_8045104A = .sbss:0x8045104A; // type:object size:0x1 data:byte
init$12268 = .sbss:0x8045104A; // type:object size:0x1 data:byte
LatMax$14967 = .sbss:0x8045104C; // type:object size:0x2 scope:local align:4 data:2byte
g_siHIO = .sbss:0x80451050; // type:object size:0x8 scope:global align:4
dShopSystem_sellItemMax = .sbss:0x80451058; // type:object size:0x1 scope:local align:1 data:byte
@ -23641,8 +23641,8 @@ l_arcName = .sdata2:0x80452C90; // type:object size:0x6 scope:local align:4 data
@21680 = .sdata2:0x80452F2C; // type:object size:0x4 scope:local align:4 data:float
@21736 = .sdata2:0x80452F30; // type:object size:0x4 scope:local align:4 data:float
@22146 = .sdata2:0x80452F34; // type:object size:0x4 scope:local align:4 data:float
data_80452F38 = .sdata2:0x80452F38; // type:object size:0x1 scope:local align:1 data:byte
data_80452F39 = .sdata2:0x80452F39; // type:object size:0x1 scope:local align:1 data:byte
data_80452F38$18852 = .sdata2:0x80452F38; // type:object size:0x1 scope:local align:1 data:byte
data_80452F39$18853 = .sdata2:0x80452F39; // type:object size:0x1 scope:local align:1 data:byte
@22608 = .sdata2:0x80452F3C; // type:object size:0x4 scope:local align:4 data:float
@22609 = .sdata2:0x80452F40; // type:object size:0x4 scope:local align:4 data:float
@23155 = .sdata2:0x80452F44; // type:object size:0x4 scope:local align:4 data:float

View File

@ -2216,7 +2216,7 @@ Z2AudioLib/Z2Audience.cpp:
.rodata start:0x80396380 end:0x80396390
.data start:0x803C4DD8 end:0x803C4E10
.bss start:0x8042E318 end:0x8042E338
.sbss start:0x8044B490 end:0x8044B4A0
.sbss start:0x8044B490 end:0x8044B498
.sdata2 start:0x8044FBC0 end:0x8044FC58
Z2AudioLib/Z2SoundObject.cpp:
@ -2236,6 +2236,7 @@ Z2AudioLib/Z2Creature.cpp:
.text start:0x802C2864 end:0x802C56B8
.ctors start:0x80375DC4 end:0x80375DC8
.data start:0x803C5370 end:0x803C5A30
.sbss start:0x8044B498 end:0x8044B4A0
.sdata2 start:0x8044FCF8 end:0x8044FDB8
Z2AudioLib/Z2LinkMgr.cpp:

View File

@ -2215,7 +2215,7 @@ Z2AudioLib/Z2Audience.cpp:
.rodata start:0x8039DF00 end:0x8039DF10
.data start:0x803CCC38 end:0x803CCC70
.bss start:0x80436198 end:0x804361B8
.sbss start:0x80453318 end:0x80453328
.sbss start:0x80453318 end:0x80453320
.sdata2 start:0x80457A78 end:0x80457B10
Z2AudioLib/Z2SoundObject.cpp:
@ -2235,6 +2235,7 @@ Z2AudioLib/Z2Creature.cpp:
.text start:0x802C11C8 end:0x802C401C
.ctors start:0x80374764 end:0x80374768
.data start:0x803CD1D0 end:0x803CD890
.sbss start:0x80453320 end:0x80453328
.sdata2 start:0x80457BB0 end:0x80457C70
Z2AudioLib/Z2LinkMgr.cpp:

View File

@ -1,12 +1,12 @@
_prolog = .text:0x00000000; // type:function size:0x2C scope:global
_epilog = .text:0x00000030; // type:function size:0x2C scope:global
_unresolved = .text:0x00000060; // type:function size:0x20 scope:global
daNpc_P2Create__FPv = .text:0x00000080; // type:function size:0x8 scope:global
daNpc_P2Delete__FPv = .text:0x00000090; // type:function size:0x8 scope:global
daNpc_P2Execute__FPv = .text:0x000000A0; // type:function size:0x8 scope:global
daNpc_P2Draw__FPv = .text:0x000000B0; // type:function size:0x8 scope:global
daNpc_P2IsDelete__FPv = .text:0x000000C0; // type:function size:0x8 scope:global
daNpc_P2Create__FPv = .text:0x00000080; // type:function size:0x8 scope:local
daNpc_P2Delete__FPv = .text:0x00000090; // type:function size:0x8 scope:local
daNpc_P2Execute__FPv = .text:0x000000A0; // type:function size:0x8 scope:local
daNpc_P2Draw__FPv = .text:0x000000B0; // type:function size:0x8 scope:local
daNpc_P2IsDelete__FPv = .text:0x000000C0; // type:function size:0x8 scope:local
_ctors = .ctors:0x00000000; // type:label scope:global
_dtors = .dtors:0x00000000; // type:label scope:global
daNpc_P2MethodTable = .data:0x00000000; // type:object size:0x20 scope:global
daNpc_P2MethodTable = .data:0x00000000; // type:object size:0x20 scope:local
g_profile_NPC_P2 = .data:0x00000020; // type:object size:0x30 scope:global

View File

@ -506,7 +506,7 @@ config.libs = [
Object(MatchingFor(ALL_GCN), "m_Do/m_Do_graphic.cpp"),
Object(MatchingFor(ALL_GCN), "m_Do/m_Do_machine.cpp"),
Object(MatchingFor(ALL_GCN), "m_Do/m_Do_mtx.cpp"),
Object(NonMatching, "m_Do/m_Do_ext.cpp"), # weak func order; unused weak func inlining issues
Object(Equivalent, "m_Do/m_Do_ext.cpp"), # weak func order
Object(MatchingFor(ALL_GCN), "m_Do/m_Do_lib.cpp"),
Object(MatchingFor(ALL_GCN), "m_Do/m_Do_Reset.cpp"),
Object(MatchingFor(ALL_GCN), "m_Do/m_Do_dvd_thread.cpp"),
@ -610,7 +610,7 @@ config.libs = [
Object(MatchingFor(ALL_GCN), "d/d_com_inf_game.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_com_static.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_com_inf_actor.cpp"),
Object(MatchingFor(ALL_GCN, "Shield"), "d/d_bomb.cpp"),
Object(MatchingFor(ALL_GCN, "Shield"), "d/d_bomb.cpp"), # debug weak func order
Object(MatchingFor(ALL_GCN), "d/d_lib.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_save.cpp"),
Object(MatchingFor(ALL_GCN, "Shield", "ShieldD"), "d/d_save_init.cpp"),
@ -692,7 +692,7 @@ config.libs = [
Object(NonMatching, "d/d_camera.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_envse.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_file_select.cpp"),
Object(NonMatching, "d/d_file_sel_warning.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_file_sel_warning.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_file_sel_info.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_bright_check.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_scope.cpp"),
@ -708,7 +708,7 @@ config.libs = [
Object(MatchingFor(ALL_GCN), "d/d_ky_thunder.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_kantera_icon_meter.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_menu_calibration.cpp"),
Object(NonMatching, "d/d_menu_collect.cpp"),
Object(NonMatching, "d/d_menu_collect.cpp"), # weak func order (dMenu_Collect2D_c::draw())
Object(MatchingFor(ALL_GCN), "d/d_menu_dmap.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_menu_dmap_map.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_menu_map_common.cpp"),
@ -724,7 +724,7 @@ config.libs = [
Object(MatchingFor(ALL_GCN), "d/d_menu_save.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_menu_skill.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_menu_window_HIO.cpp"),
Object(Equivalent, "d/d_menu_window.cpp"), # weak func order
Object(Equivalent, "d/d_menu_window.cpp"), # weak func order (dDlst_MENU_CAPTURE_c::draw)
Object(MatchingFor(ALL_GCN), "d/d_meter_HIO.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_meter_button.cpp"),
Object(MatchingFor(ALL_GCN), "d/d_meter_haihai.cpp"),
@ -959,10 +959,10 @@ config.libs = [
Object(MatchingFor(ALL_GCN, "ShieldD"), "JSystem/JAudio2/JASVoiceBank.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASBasicInst.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASDrumSet.cpp"),
Object(Equivalent, "JSystem/JAudio2/JASBasicWaveBank.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASBasicWaveBank.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASSimpleWaveBank.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASWSParser.cpp"),
Object(NonMatching, "JSystem/JAudio2/JASBNKParser.cpp"),
Object(NonMatching, "JSystem/JAudio2/JASBNKParser.cpp"), # missing bss var
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASWaveArcLoader.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASChannel.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JASLfo.cpp"),
@ -1000,7 +1000,7 @@ config.libs = [
Object(MatchingFor(ALL_GCN, "ShieldD"), "JSystem/JAudio2/JAUBankTable.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JAUClusterSound.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JAUInitializer.cpp"),
Object(Equivalent, "JSystem/JAudio2/JAUSectionHeap.cpp"), #weak function order
Object(Equivalent, "JSystem/JAudio2/JAUSectionHeap.cpp"), # weak function order
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JAUSeqCollection.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JAUSeqDataBlockMgr.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/JAudio2/JAUSoundAnimator.cpp"),
@ -1140,7 +1140,7 @@ config.libs = [
Object(MatchingFor(ALL_GCN), "JSystem/J2DGraph/J2DOrthoGraph.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/J2DGraph/J2DTevs.cpp"),
Object(Equivalent, "JSystem/J2DGraph/J2DMaterial.cpp"), # weak func order
Object(NonMatching, "JSystem/J2DGraph/J2DMatBlock.cpp"),
Object(NonMatching, "JSystem/J2DGraph/J2DMatBlock.cpp"), # weak func order (J3DTevBlock)
Object(MatchingFor(ALL_GCN), "JSystem/J2DGraph/J2DMaterialFactory.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/J2DGraph/J2DPrint.cpp"),
Object(MatchingFor(ALL_GCN), "JSystem/J2DGraph/J2DPane.cpp"),
@ -1855,13 +1855,13 @@ config.libs = [
ActorRel(MatchingFor(ALL_GCN), "d_a_myna"),
ActorRel(MatchingFor(ALL_GCN), "d_a_ni"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_aru"),
ActorRel(Equivalent, "d_a_npc_ash"), # weak func order
ActorRel(Equivalent, "d_a_npc_ashB"), # weak func order
ActorRel(Equivalent, "d_a_npc_ash"), # weak func order (sinShort)
ActorRel(Equivalent, "d_a_npc_ashB"), # weak func order (sinShort)
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_bans"),
ActorRel(NonMatching, "d_a_npc_blue_ns"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_bou"),
ActorRel(Equivalent, "d_a_npc_bouS"), # weak func order
ActorRel(Equivalent, "d_a_npc_cdn3"), # weak func order
ActorRel(Equivalent, "d_a_npc_bouS"), # weak func order (sinShort)
ActorRel(Equivalent, "d_a_npc_cdn3"), # weak func order (~csXyz); vtable order
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_chat"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_chin"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_clerka"),

View File

@ -929,6 +929,7 @@ public:
J3DFrameCtrl() { this->init(0); }
void init(s16);
void init(int endFrame) { init((s16)endFrame); }
BOOL checkPass(f32);
void update();
virtual ~J3DFrameCtrl() {}
@ -987,8 +988,7 @@ struct J3DMtxCalcAnimationAdaptorDefault : public J3DMtxCalcAnimationAdaptorBase
J3DTransformInfo transform;
J3DTransformInfo* transform_p;
if (pMtxCalc->getAnmTransform() != NULL) {
u16 jnt_no = J3DMtxCalc::getJoint()->getJntNo();
pMtxCalc->getAnmTransform()->getTransform(jnt_no, &transform);
pMtxCalc->getAnmTransform()->getTransform(J3DMtxCalc::getJoint()->getJntNo(), &transform);
transform_p = &transform;
} else {
transform_p = &J3DMtxCalc::getJoint()->getTransformInfo();

View File

@ -19,12 +19,27 @@ public:
/* 80325D1C */ static void setMtxBuffer(J3DMtxBuffer*);
/* 8000D948 */ virtual ~J3DMtxCalc() {}
/* 80014E90 */ virtual void setAnmTransform(J3DAnmTransform*) {}
/* 80014E9C */ virtual J3DAnmTransform* getAnmTransform() { return NULL; }
/* 80014E8C */ virtual void setAnmTransform(u8, J3DAnmTransform*) {}
/* 80014E94 */ virtual J3DAnmTransform* getAnmTransform(u8) { return NULL; }
/* 80014EA4 */ virtual void setWeight(u8, f32) {}
/* 80014EA8 */ virtual f32 getWeight(u8) const { return 0.0f; }
/* 80014E90 */ virtual void setAnmTransform(J3DAnmTransform*) {
JUT_ASSERT_MSG(127, FALSE, "You cannot use this method");
}
/* 80014E9C */ virtual J3DAnmTransform* getAnmTransform() {
JUT_ASSERT_MSG(131, FALSE, "You cannot use this method");
return NULL;
}
/* 80014E8C */ virtual void setAnmTransform(u8, J3DAnmTransform*) {
JUT_ASSERT_MSG(137, FALSE, "You cannot use this method");
}
/* 80014E94 */ virtual J3DAnmTransform* getAnmTransform(u8) {
JUT_ASSERT_MSG(141, FALSE, "You cannot use this method");
return NULL;
}
/* 80014EA4 */ virtual void setWeight(u8, f32) {
JUT_ASSERT_MSG(147, FALSE, "You cannot use this method");
}
/* 80014EA8 */ virtual f32 getWeight(u8) const {
JUT_ASSERT_MSG(152, FALSE, "You cannot use this method");
return 0.0f;
}
virtual void init(const Vec& param_0, const Mtx&) = 0;
virtual void calc() = 0;
@ -125,7 +140,10 @@ public:
J3DMtxCalcNoAnm() {}
virtual ~J3DMtxCalcNoAnm() {}
virtual void init(const Vec& param_0, const Mtx& param_1) { B::init(param_0, param_1); }
virtual void calc() { A::calcTransform(mJoint->getTransformInfo()); }
virtual void calc() {
J3DTransformInfo& transInfo = getJoint()->getTransformInfo();
A::calcTransform(transInfo);
}
};
/**

View File

@ -1641,7 +1641,7 @@ struct J3DIndTexMtx : public J3DIndTexMtxInfo {
J3DIndTexMtx(J3DIndTexMtxInfo const& info) { *(J3DIndTexMtxInfo*)this = info; }
/* 8000E064 */ ~J3DIndTexMtx() {}
void load(u32 param_1) const {
J3DGDSetIndTexMtx((GXIndTexMtxID)(param_1 + 1), (Mtx3P)field_0x0, field_0x18);
J3DGDSetIndTexMtx((GXIndTexMtxID)(param_1 + GX_ITM_0), (Mtx3P)field_0x0, field_0x18);
}
}; // Size: 0x1C

View File

@ -144,7 +144,7 @@ public:
void onFlag(u32 flag) { mFlags |= flag; }
void offFlag(u32 flag) { mFlags &= ~flag; }
bool checkFlag(u32 flag) const { return (mFlags & flag) != 0; }
bool checkFlag(u32 flag) const { return (mFlags & flag) ? true : false; }
void setMaterial(J3DMaterial* pMaterial) {
J3D_ASSERT_NULLPTR(509, pMaterial != NULL);

View File

@ -4,29 +4,6 @@
#include "JSystem/JAudio2/JASWaveArcLoader.h"
#include "JSystem/JAudio2/JASWaveInfo.h"
/**
* @ingroup jsystem-jaudio
*
*/
class JASWaveHandle {
public:
virtual ~JASWaveHandle() {};
virtual const JASWaveInfo* getWaveInfo() const = 0;
virtual int getWavePtr() const = 0;
};
/**
* @ingroup jsystem-jaudio
*
*/
class JASWaveBank {
public:
/* 80298B88 */ virtual ~JASWaveBank() {};
virtual JASWaveHandle* getWaveHandle(u32) const = 0;
virtual JASWaveArc* getWaveArc(u32) = 0;
virtual u32 getArcCount() const = 0;
};
/**
* @ingroup jsystem-jaudio
*

View File

@ -3,6 +3,8 @@
#include "dolphin/types.h"
class JASWaveArc;
/**
* @ingroup jsystem-jaudio
*
@ -29,4 +31,27 @@ struct JASWaveInfo {
static u32 one;
};
/**
* @ingroup jsystem-jaudio
*
*/
class JASWaveHandle {
public:
virtual ~JASWaveHandle() {}
virtual const JASWaveInfo* getWaveInfo() const = 0;
virtual int getWavePtr() const = 0;
};
/**
* @ingroup jsystem-jaudio
*
*/
class JASWaveBank {
public:
/* 80298B88 */ virtual ~JASWaveBank() {}
virtual JASWaveHandle* getWaveHandle(u32) const = 0;
virtual JASWaveArc* getWaveArc(u32) = 0;
virtual u32 getArcCount() const = 0;
};
#endif /* JASWAVEINFO_H */

View File

@ -127,7 +127,6 @@ protected:
/* 0x5C */ JSUList<JKRDisposer> mDisposerList;
/* 0x68 */ bool mErrorFlag;
/* 0x69 */ bool mInitFlag;
/* 0x6A */ u8 padding_0x6a[2];
public:
static bool initArena(char** memory, u32* size, int maxHeaps);

View File

@ -1,7 +1,10 @@
#ifndef D_A_NPC2
#define D_A_NPC2
#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h"
#include "d/d_bg_s_acch.h"
#include "d/d_bg_s_movebg_actor.h"
#include "d/d_cc_d.h"
#include "d/d_msg_flow.h"
#include "d/d_path.h"

View File

@ -9,6 +9,7 @@
#include "f_op/f_op_actor.h"
#include "f_pc/f_pc_base.h"
#include "m_Do/m_Do_ext.h"
#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h"
class daNpcF_ActorMngr_c {
private:

View File

@ -28,8 +28,12 @@ inline void mDoMtx_multVecSR(const Mtx m, const Vec* src, Vec* dst) {
MTXMultVecSR(m, src, dst);
}
inline void mDoMtx_concat(const Mtx a, const Mtx b, Mtx c) {
PSMTXConcat(a, b, c);
}
inline void cMtx_concat(const Mtx a, const Mtx b, Mtx ab) {
MTXConcat(a, b, ab);
mDoMtx_concat(a, b, ab);
}
inline void cMtx_scale(Mtx m, f32 x, f32 y, f32 z) {
@ -126,10 +130,6 @@ inline void mDoMtx_identity(Mtx m) {
PSMTXIdentity(m);
}
inline void mDoMtx_concat(const Mtx a, const Mtx b, Mtx c) {
PSMTXConcat(a, b, c);
}
inline void mDoMtx_inverse(const Mtx a, Mtx b) {
MTXInverse(a, b);
}

View File

@ -387,7 +387,7 @@ extern J3DNBTScaleInfo const j3dDefaultNBTScaleInfo = {
};
/* 80434C98-80436A60 0619B8 1DC7+01 1/1 0/0 0/0 .bss j3dTexCoordTable */
static u8 j3dTexCoordTable[7623 + 1 /* padding */];
static u8 j3dTexCoordTable[7623];
/* 80324194-8032423C 31EAD4 00A8+00 0/0 1/1 0/0 .text makeTexCoordTable__Fv */
void makeTexCoordTable() {

View File

@ -150,7 +150,7 @@ J3DMaterial* J3DMaterialFactory::createNormalMaterial(J3DMaterial* i_material, i
BOOL ind_flag = (i_flags & 0x1000000) ? TRUE : FALSE;
if (i_material == NULL) {
i_material = new J3DMaterial();
JUT_ASSERT_MSG(269, i_material, "Error : allocate memory.");
J3D_ASSERT_ALLOCMEM(269, i_material);
}
i_material->mColorBlock = J3DMaterial::createColorBlock(color_flag);
i_material->mTexGenBlock = J3DMaterial::createTexGenBlock(texgen_flag);
@ -252,14 +252,14 @@ J3DMaterial* J3DMaterialFactory::createPatchedMaterial(J3DMaterial* i_material,
u32 i_flags) const {
if (i_material == NULL) {
i_material = new J3DPatchedMaterial();
JUT_ASSERT_MSG(430, i_material, "Error : allocate memory.");
J3D_ASSERT_ALLOCMEM(430, i_material);
}
bool bVar1 = i_flags & 0x3000000 ? true : false;
i_material->mColorBlock = J3DMaterial::createColorBlock(0x40000000);
i_material->mTexGenBlock = new J3DTexGenBlockPatched();
JUT_ASSERT_MSG(440, i_material->mTexGenBlock, "Error : allocate memory.");
J3D_ASSERT_ALLOCMEM(440, i_material->mTexGenBlock);
i_material->mTevBlock = new J3DTevBlockPatched();
JUT_ASSERT_MSG(442, i_material->mTevBlock, "Error : allocate memory.");
J3D_ASSERT_ALLOCMEM(442, i_material->mTevBlock);
i_material->mIndBlock = J3DMaterial::createIndBlock(bVar1);
i_material->mPEBlock = J3DMaterial::createPEBlock(0x10000000, getMaterialMode(i_idx));
i_material->mIndex = i_idx;

View File

@ -8,6 +8,13 @@ static void Z2_E_ms_modVol(Z2SoundHandlePool*, u32);
static void Z2_E_mm_modPitch(Z2SoundHandlePool*, u32);
static void Z2_B_zan_modPitch(Z2SoundHandlePool*, u32);
/* ############################################################################################## */
/* 80451358-80451360 -00001 0008+00 0/0 1/1 0/0 .sbss None */
/* 80451358 0001+00 data_80451358 None */
/* 80451359 0007+00 data_80451359 None */
s8 data_80451358;
s8 data_80451359;
/* 80455BD8-80455BDC 0041D8 0004+00 1/1 0/0 0/0 .sdata2 sAreaDefault */
static Z2EnemyArea const sAreaDefault = {true, 700, 1100, 1500};

View File

@ -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();

View File

@ -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;

View File

@ -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");
}

View File

@ -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}};

View File

@ -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

View File

@ -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);
}

View File

@ -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;

View File

@ -402,6 +402,21 @@ void mDoExt_brkAnmRemove(J3DModelData* i_modelData) {
// this needs a lot of work still
static void dummy2() {
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
FORCE_DONT_INLINE;
J3DGXColor gxColor;
J3DColorChan colorChan;
J3DTexCoord texCoord;
@ -1261,7 +1276,6 @@ void mDoExt_McaMorf::calc() {
u16 jntNo = getJoint()->getJntNo();
j3dSys.setCurrentMtxCalc(this);
Mtx sp68;
J3DTransformInfo sp48;
J3DTransformInfo sp28;
J3DTransformInfo* var_r29;
@ -1313,6 +1327,7 @@ void mDoExt_McaMorf::calc() {
JMAEulerToQuat(sp28.mRotation.x, sp28.mRotation.y, sp28.mRotation.z, &sp8);
JMAQuatLerp(var_r27, &sp8, var_f31, var_r27);
Mtx sp68;
mDoMtx_quat(sp68, var_r27);
var_r29->mTranslate.x = var_r29->mTranslate.x * var_f30 + sp28.mTranslate.x * var_f31;
@ -1342,7 +1357,7 @@ void mDoExt_McaMorf::setAnm(J3DAnmTransform* param_0, int param_1, f32 param_2,
mFrameCtrl.init(mpAnm->getFrameMax());
}
} else {
mFrameCtrl.init(param_5);
mFrameCtrl.init((s16)param_5);
}
if (param_0 && param_1 < 0) {
param_1 = param_0->getAttribute();
@ -1623,7 +1638,7 @@ void mDoExt_McaMorfSO::setAnm(J3DAnmTransform* i_anm, int i_attr, f32 i_morf, f3
mFrameCtrl.init(mpAnm->getFrameMax());
}
} else {
mFrameCtrl.init(i_end);
mFrameCtrl.init((s16)i_end);
}
if (i_anm != NULL && i_attr < 0) {
@ -1636,7 +1651,7 @@ void mDoExt_McaMorfSO::setAnm(J3DAnmTransform* i_anm, int i_attr, f32 i_morf, f3
if (i_rate >= 0.0f) {
setFrame(i_start);
} else {
setFrame(mFrameCtrl.getEnd());
setFrame(getEndFrame());
}
setLoopFrame(getFrame());
@ -2015,7 +2030,7 @@ void mDoExt_McaMorf2::setAnm(J3DAnmTransform* param_0, J3DAnmTransform* param_1,
mFrameCtrl.init(mpAnm->getFrameMax());
}
} else {
mFrameCtrl.init(i_end);
mFrameCtrl.init((s16)i_end);
}
if (i_attr < 0) {
@ -2028,7 +2043,7 @@ void mDoExt_McaMorf2::setAnm(J3DAnmTransform* param_0, J3DAnmTransform* param_1,
if (i_speed >= 0.0f) {
setFrame(i_start);
} else {
setFrame(mFrameCtrl.getEnd());
setFrame(getEndFrame());
}
setLoopFrame(getFrame());
@ -2305,7 +2320,7 @@ void mDoExt_3DlineMat0_c::setMaterial() {
dKy_GxFog_set();
GXCallDisplayList(l_matDL, 0x80);
GXLoadPosMtxImm(j3dSys.getViewMtx(), GX_PNMTX0);
GXLoadNrmMtxImm(g_mDoMtx_identity, GX_PNMTX0);
GXLoadNrmMtxImm(cMtx_getIdentity(), GX_PNMTX0);
}
/* 80012774-80012874 00D0B4 0100+00 1/0 0/0 0/0 .text draw__19mDoExt_3DlineMat0_cFv */
@ -2324,13 +2339,12 @@ void mDoExt_3DlineMat0_c::draw() {
GXSetArray(GX_VA_NRM, ((mDoExt_3Dline_c*)((int)var_r28 + field_0x16 * 4))->field_0x10, 3);
GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, var_r26);
for (u16 j = 0; j < (u16)var_r26;) {
for (u16 j = 0; j < (u16)var_r26; j++) {
GXPosition1x16(j);
GXNormal1x16(j);
j++;
GXPosition1x16(j);
GXNormal1x16(j++);
GXPosition1x16(++j);
GXNormal1x16(j);
}
GXEnd();
var_r28++;