mirror of https://github.com/zeldaret/tp.git
Fix various issues in TUs marked `Equivalent` (#2286)
This commit is contained in:
parent
36daa25884
commit
2189777abf
|
@ -21720,8 +21720,11 @@ struct_80450C86 = .sbss:0x80450C86; // type:object size:0x1 scope:global align:1
|
||||||
struct_80450C87 = .sbss:0x80450C87; // type:object size:0x1 scope:global align:1
|
struct_80450C87 = .sbss:0x80450C87; // type:object size:0x1 scope:global align:1
|
||||||
mDoDvdErr_initialized = .sbss:0x80450C88; // type:object size:0x1 scope:global align:1 data:byte
|
mDoDvdErr_initialized = .sbss:0x80450C88; // type:object size:0x1 scope:global align:1 data:byte
|
||||||
sConsole = .sbss:0x80450C90; // type:object size:0x4 scope:local align:4 data:4byte
|
sConsole = .sbss:0x80450C90; // type:object size:0x4 scope:local align:4 data:4byte
|
||||||
struct_80450C98 = .sbss:0x80450C98; // type:object size:0x4 scope:global align:4
|
cDmr_SkipInfo = .sbss:0x80450C98; // type:object size:0x1 scope:global align:1
|
||||||
cDmr_SkipInfo = .sbss:0x80450C9C; // type:object size:0x1 scope:global align:1
|
data_80450C99 = .sbss:0x80450C99; // type:object size:0x1 scope:global align:1
|
||||||
|
data_80450C9A = .sbss:0x80450C9A; // type:object size:0x1 scope:global align:1
|
||||||
|
data_80450C9B = .sbss:0x80450C9B; // type:object size:0x1 scope:global align:1
|
||||||
|
data_80450C9C = .sbss:0x80450C9C; // type:object size:0x1 scope:global align:1
|
||||||
data_80450C9D = .sbss:0x80450C9D; // type:object size:0x1
|
data_80450C9D = .sbss:0x80450C9D; // type:object size:0x1
|
||||||
data_80450C9E = .sbss:0x80450C9E; // type:object size:0x1
|
data_80450C9E = .sbss:0x80450C9E; // type:object size:0x1
|
||||||
data_80450C9F = .sbss:0x80450C9F; // type:object size:0x1
|
data_80450C9F = .sbss:0x80450C9F; // type:object size:0x1
|
||||||
|
|
56
configure.py
56
configure.py
|
@ -344,7 +344,7 @@ config.libs = [
|
||||||
Object(NonMatching, "m_Do/m_Do_printf.cpp"),
|
Object(NonMatching, "m_Do/m_Do_printf.cpp"),
|
||||||
Object(Matching, "m_Do/m_Do_audio.cpp"),
|
Object(Matching, "m_Do/m_Do_audio.cpp"),
|
||||||
Object(Matching, "m_Do/m_Do_controller_pad.cpp"),
|
Object(Matching, "m_Do/m_Do_controller_pad.cpp"),
|
||||||
Object(Equivalent, "m_Do/m_Do_graphic.cpp"),
|
Object(Equivalent, "m_Do/m_Do_graphic.cpp"), # weak func order
|
||||||
Object(NonMatching, "m_Do/m_Do_machine.cpp"),
|
Object(NonMatching, "m_Do/m_Do_machine.cpp"),
|
||||||
Object(Matching, "m_Do/m_Do_mtx.cpp"),
|
Object(Matching, "m_Do/m_Do_mtx.cpp"),
|
||||||
Object(NonMatching, "m_Do/m_Do_ext.cpp"),
|
Object(NonMatching, "m_Do/m_Do_ext.cpp"),
|
||||||
|
@ -498,7 +498,7 @@ config.libs = [
|
||||||
Object(Matching, "d/d_bg_w_base.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
Object(Matching, "d/d_bg_w_base.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
||||||
Object(NonMatching, "d/d_bg_w_kcol.cpp"),
|
Object(NonMatching, "d/d_bg_w_kcol.cpp"),
|
||||||
Object(Matching, "d/d_bg_w_sv.cpp"),
|
Object(Matching, "d/d_bg_w_sv.cpp"),
|
||||||
Object(Equivalent, "d/d_cc_d.cpp"),
|
Object(Equivalent, "d/d_cc_d.cpp"), # weak func order
|
||||||
Object(Matching, "d/d_cc_mass_s.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
Object(Matching, "d/d_cc_mass_s.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
||||||
Object(NonMatching, "d/d_cc_s.cpp"),
|
Object(NonMatching, "d/d_cc_s.cpp"),
|
||||||
Object(Matching, "d/d_cc_uty.cpp"),
|
Object(Matching, "d/d_cc_uty.cpp"),
|
||||||
|
@ -528,7 +528,7 @@ config.libs = [
|
||||||
Object(Matching, "d/d_file_sel_info.cpp"),
|
Object(Matching, "d/d_file_sel_info.cpp"),
|
||||||
Object(Matching, "d/d_bright_check.cpp"),
|
Object(Matching, "d/d_bright_check.cpp"),
|
||||||
Object(NonMatching, "d/d_scope.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
Object(NonMatching, "d/d_scope.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
||||||
Object(Equivalent, "d/d_select_cursor.cpp"),
|
Object(Matching, "d/d_select_cursor.cpp"),
|
||||||
Object(Matching, "d/d_select_icon.cpp"),
|
Object(Matching, "d/d_select_icon.cpp"),
|
||||||
Object(Matching, "d/d_shop_camera.cpp"),
|
Object(Matching, "d/d_shop_camera.cpp"),
|
||||||
Object(Matching, "d/d_shop_item_ctrl.cpp"),
|
Object(Matching, "d/d_shop_item_ctrl.cpp"),
|
||||||
|
@ -553,7 +553,7 @@ config.libs = [
|
||||||
Object(NonMatching, "d/d_menu_letter.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
Object(NonMatching, "d/d_menu_letter.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
||||||
Object(Matching, "d/d_menu_option.cpp"),
|
Object(Matching, "d/d_menu_option.cpp"),
|
||||||
Object(Matching, "d/d_menu_ring.cpp"),
|
Object(Matching, "d/d_menu_ring.cpp"),
|
||||||
Object(Equivalent, "d/d_menu_save.cpp"),
|
Object(Equivalent, "d/d_menu_save.cpp"), # missing 0x30 bytes of padding between vtables, likely some abstract base class vtable that gets stripped out
|
||||||
Object(Matching, "d/d_menu_skill.cpp"),
|
Object(Matching, "d/d_menu_skill.cpp"),
|
||||||
Object(Matching, "d/d_menu_window_HIO.cpp"),
|
Object(Matching, "d/d_menu_window_HIO.cpp"),
|
||||||
Object(NonMatching, "d/d_menu_window.cpp"),
|
Object(NonMatching, "d/d_menu_window.cpp"),
|
||||||
|
@ -668,7 +668,7 @@ config.libs = [
|
||||||
JSystemLib(
|
JSystemLib(
|
||||||
"JFramework",
|
"JFramework",
|
||||||
[
|
[
|
||||||
Object(Equivalent, "JSystem/JFramework/JFWSystem.cpp"),
|
Object(Equivalent, "JSystem/JFramework/JFWSystem.cpp"), # regalloc
|
||||||
Object(Matching, "JSystem/JFramework/JFWDisplay.cpp"),
|
Object(Matching, "JSystem/JFramework/JFWDisplay.cpp"),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
@ -693,7 +693,7 @@ config.libs = [
|
||||||
Object(Matching, "JSystem/JParticle/JPAKeyBlock.cpp"),
|
Object(Matching, "JSystem/JParticle/JPAKeyBlock.cpp"),
|
||||||
Object(Matching, "JSystem/JParticle/JPATexture.cpp"),
|
Object(Matching, "JSystem/JParticle/JPATexture.cpp"),
|
||||||
Object(Matching, "JSystem/JParticle/JPAResourceLoader.cpp"),
|
Object(Matching, "JSystem/JParticle/JPAResourceLoader.cpp"),
|
||||||
Object(Equivalent, "JSystem/JParticle/JPAEmitterManager.cpp"),
|
Object(Equivalent, "JSystem/JParticle/JPAEmitterManager.cpp", extra_cflags=['-pragma "nosyminline off"']), # weak func order
|
||||||
Object(Matching, "JSystem/JParticle/JPAEmitter.cpp"),
|
Object(Matching, "JSystem/JParticle/JPAEmitter.cpp"),
|
||||||
Object(NonMatching, "JSystem/JParticle/JPAParticle.cpp"),
|
Object(NonMatching, "JSystem/JParticle/JPAParticle.cpp"),
|
||||||
Object(Matching, "JSystem/JParticle/JPAMath.cpp"),
|
Object(Matching, "JSystem/JParticle/JPAMath.cpp"),
|
||||||
|
@ -927,7 +927,7 @@ config.libs = [
|
||||||
[
|
[
|
||||||
Object(NonMatching, "JSystem/JGadget/binary.cpp"),
|
Object(NonMatching, "JSystem/JGadget/binary.cpp"),
|
||||||
Object(NonMatching, "JSystem/JGadget/linklist.cpp"),
|
Object(NonMatching, "JSystem/JGadget/linklist.cpp"),
|
||||||
Object(Equivalent, "JSystem/JGadget/std-vector.cpp"), # just weak order
|
Object(Equivalent, "JSystem/JGadget/std-vector.cpp", extra_cflags=['-pragma "nosyminline off"']), # just weak order
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
JSystemLib(
|
JSystemLib(
|
||||||
|
@ -947,7 +947,7 @@ config.libs = [
|
||||||
Object(Matching, "JSystem/JUtility/JUTDirectPrint.cpp"),
|
Object(Matching, "JSystem/JUtility/JUTDirectPrint.cpp"),
|
||||||
Object(Matching, "JSystem/JUtility/JUTAssert.cpp"),
|
Object(Matching, "JSystem/JUtility/JUTAssert.cpp"),
|
||||||
Object(Matching, "JSystem/JUtility/JUTVideo.cpp"),
|
Object(Matching, "JSystem/JUtility/JUTVideo.cpp"),
|
||||||
Object(Equivalent, "JSystem/JUtility/JUTXfb.cpp"),
|
Object(Matching, "JSystem/JUtility/JUTXfb.cpp"),
|
||||||
Object(Matching, "JSystem/JUtility/JUTFader.cpp"),
|
Object(Matching, "JSystem/JUtility/JUTFader.cpp"),
|
||||||
Object(Matching, "JSystem/JUtility/JUTProcBar.cpp", extra_cflags=['-pragma "nosyminline off"']),
|
Object(Matching, "JSystem/JUtility/JUTProcBar.cpp", extra_cflags=['-pragma "nosyminline off"']),
|
||||||
Object(Matching, "JSystem/JUtility/JUTConsole.cpp"),
|
Object(Matching, "JSystem/JUtility/JUTConsole.cpp"),
|
||||||
|
@ -1005,7 +1005,7 @@ config.libs = [
|
||||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DModelData.cpp", extra_cflags=['-pragma "nosyminline off"']),
|
Object(Matching, "JSystem/J3DGraphAnimator/J3DModelData.cpp", extra_cflags=['-pragma "nosyminline off"']),
|
||||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp"),
|
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp"),
|
||||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DModel.cpp"),
|
Object(Matching, "JSystem/J3DGraphAnimator/J3DModel.cpp"),
|
||||||
Object(Equivalent, "JSystem/J3DGraphAnimator/J3DAnimation.cpp"),
|
Object(Matching, "JSystem/J3DGraphAnimator/J3DAnimation.cpp", extra_cflags=['-pragma "nosyminline off"']),
|
||||||
Object(Matching, "JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp"),
|
Object(Matching, "JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp"),
|
||||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DSkinDeform.cpp"),
|
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DSkinDeform.cpp"),
|
||||||
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DCluster.cpp"),
|
Object(NonMatching, "JSystem/J3DGraphAnimator/J3DCluster.cpp"),
|
||||||
|
@ -1417,8 +1417,8 @@ config.libs = [
|
||||||
ActorRel(Matching, "d_a_disappear"),
|
ActorRel(Matching, "d_a_disappear"),
|
||||||
ActorRel(NonMatching, "d_a_mg_rod"),
|
ActorRel(NonMatching, "d_a_mg_rod"),
|
||||||
ActorRel(NonMatching, "d_a_midna"),
|
ActorRel(NonMatching, "d_a_midna"),
|
||||||
ActorRel(Equivalent, "d_a_nbomb"),
|
ActorRel(Equivalent, "d_a_nbomb"), # weak func order
|
||||||
ActorRel(Equivalent, "d_a_obj_life_container"), # vtable ordering
|
ActorRel(Matching, "d_a_obj_life_container"),
|
||||||
ActorRel(NonMatching, "d_a_obj_yousei"),
|
ActorRel(NonMatching, "d_a_obj_yousei"),
|
||||||
ActorRel(NonMatching, "d_a_spinner"),
|
ActorRel(NonMatching, "d_a_spinner"),
|
||||||
ActorRel(Matching, "d_a_suspend"),
|
ActorRel(Matching, "d_a_suspend"),
|
||||||
|
@ -1518,8 +1518,8 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_b_oh"),
|
ActorRel(NonMatching, "d_a_b_oh"),
|
||||||
ActorRel(Matching, "d_a_b_oh2"),
|
ActorRel(Matching, "d_a_b_oh2"),
|
||||||
ActorRel(NonMatching, "d_a_b_tn"),
|
ActorRel(NonMatching, "d_a_b_tn"),
|
||||||
ActorRel(Equivalent, "d_a_b_yo"),
|
ActorRel(Equivalent, "d_a_b_yo"), # weak func order
|
||||||
ActorRel(Equivalent, "d_a_b_yo_ice"),
|
ActorRel(Equivalent, "d_a_b_yo_ice"), # weak func order
|
||||||
ActorRel(Matching, "d_a_b_zant"),
|
ActorRel(Matching, "d_a_b_zant"),
|
||||||
ActorRel(Matching, "d_a_b_zant_magic"),
|
ActorRel(Matching, "d_a_b_zant_magic"),
|
||||||
ActorRel(Matching, "d_a_b_zant_mobile"),
|
ActorRel(Matching, "d_a_b_zant_mobile"),
|
||||||
|
@ -1530,14 +1530,14 @@ config.libs = [
|
||||||
ActorRel(Matching, "d_a_coach_fire"),
|
ActorRel(Matching, "d_a_coach_fire"),
|
||||||
ActorRel(NonMatching, "d_a_cow"),
|
ActorRel(NonMatching, "d_a_cow"),
|
||||||
ActorRel(NonMatching, "d_a_cstatue"),
|
ActorRel(NonMatching, "d_a_cstatue"),
|
||||||
ActorRel(Equivalent, "d_a_do"),
|
ActorRel(Equivalent, "d_a_do"), # Z2SoundObjSimple dtor
|
||||||
ActorRel(Matching, "d_a_door_boss"),
|
ActorRel(Matching, "d_a_door_boss"),
|
||||||
ActorRel(Matching, "d_a_door_bossL5"),
|
ActorRel(Matching, "d_a_door_bossL5"),
|
||||||
ActorRel(Equivalent, "d_a_door_mbossL1"),
|
ActorRel(Matching, "d_a_door_mbossL1"),
|
||||||
ActorRel(Matching, "d_a_door_push"),
|
ActorRel(Matching, "d_a_door_push"),
|
||||||
ActorRel(NonMatching, "d_a_e_ai"),
|
ActorRel(NonMatching, "d_a_e_ai"),
|
||||||
ActorRel(Matching, "d_a_e_arrow"),
|
ActorRel(Matching, "d_a_e_arrow"),
|
||||||
ActorRel(Equivalent, "d_a_e_ba"),
|
ActorRel(Equivalent, "d_a_e_ba"), # weak func order
|
||||||
ActorRel(NonMatching, "d_a_e_bee"),
|
ActorRel(NonMatching, "d_a_e_bee"),
|
||||||
ActorRel(NonMatching, "d_a_e_bg"),
|
ActorRel(NonMatching, "d_a_e_bg"),
|
||||||
ActorRel(NonMatching, "d_a_e_bi"),
|
ActorRel(NonMatching, "d_a_e_bi"),
|
||||||
|
@ -1556,7 +1556,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_e_fb"),
|
ActorRel(NonMatching, "d_a_e_fb"),
|
||||||
ActorRel(NonMatching, "d_a_e_fk"),
|
ActorRel(NonMatching, "d_a_e_fk"),
|
||||||
ActorRel(NonMatching, "d_a_e_fs"),
|
ActorRel(NonMatching, "d_a_e_fs"),
|
||||||
ActorRel(Equivalent, "d_a_e_fz"),
|
ActorRel(Equivalent, "d_a_e_fz"), # weak func order
|
||||||
ActorRel(NonMatching, "d_a_e_gb"),
|
ActorRel(NonMatching, "d_a_e_gb"),
|
||||||
ActorRel(NonMatching, "d_a_e_ge"),
|
ActorRel(NonMatching, "d_a_e_ge"),
|
||||||
ActorRel(NonMatching, "d_a_e_gi"),
|
ActorRel(NonMatching, "d_a_e_gi"),
|
||||||
|
@ -1617,7 +1617,7 @@ config.libs = [
|
||||||
ActorRel(Matching, "d_a_e_yd_leaf"),
|
ActorRel(Matching, "d_a_e_yd_leaf"),
|
||||||
ActorRel(NonMatching, "d_a_e_yg"),
|
ActorRel(NonMatching, "d_a_e_yg"),
|
||||||
ActorRel(NonMatching, "d_a_e_yh"),
|
ActorRel(NonMatching, "d_a_e_yh"),
|
||||||
ActorRel(Equivalent, "d_a_e_yk"),
|
ActorRel(Equivalent, "d_a_e_yk"), # weak func order
|
||||||
ActorRel(NonMatching, "d_a_e_ym"),
|
ActorRel(NonMatching, "d_a_e_ym"),
|
||||||
ActorRel(Matching, "d_a_e_ym_tag"),
|
ActorRel(Matching, "d_a_e_ym_tag"),
|
||||||
ActorRel(NonMatching, "d_a_e_ymb"),
|
ActorRel(NonMatching, "d_a_e_ymb"),
|
||||||
|
@ -1728,7 +1728,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_npc_shaman"),
|
ActorRel(NonMatching, "d_a_npc_shaman"),
|
||||||
ActorRel(NonMatching, "d_a_npc_shoe"),
|
ActorRel(NonMatching, "d_a_npc_shoe"),
|
||||||
ActorRel(NonMatching, "d_a_npc_shop0"),
|
ActorRel(NonMatching, "d_a_npc_shop0"),
|
||||||
ActorRel(Equivalent, "d_a_npc_shop_maro"),
|
ActorRel(Equivalent, "d_a_npc_shop_maro"), # daNpcT_c base functions missing
|
||||||
ActorRel(NonMatching, "d_a_npc_sola"),
|
ActorRel(NonMatching, "d_a_npc_sola"),
|
||||||
ActorRel(NonMatching, "d_a_npc_soldierA"),
|
ActorRel(NonMatching, "d_a_npc_soldierA"),
|
||||||
ActorRel(NonMatching, "d_a_npc_soldierB"),
|
ActorRel(NonMatching, "d_a_npc_soldierB"),
|
||||||
|
@ -1783,7 +1783,7 @@ config.libs = [
|
||||||
ActorRel(Matching, "d_a_obj_bsGate"),
|
ActorRel(Matching, "d_a_obj_bsGate"),
|
||||||
ActorRel(Matching, "d_a_obj_bubblePilar"),
|
ActorRel(Matching, "d_a_obj_bubblePilar"),
|
||||||
ActorRel(Matching, "d_a_obj_catdoor"),
|
ActorRel(Matching, "d_a_obj_catdoor"),
|
||||||
ActorRel(Equivalent, "d_a_obj_cb"),
|
ActorRel(Matching, "d_a_obj_cb"),
|
||||||
ActorRel(NonMatching, "d_a_obj_cblock"),
|
ActorRel(NonMatching, "d_a_obj_cblock"),
|
||||||
ActorRel(Matching, "d_a_obj_cdoor"),
|
ActorRel(Matching, "d_a_obj_cdoor"),
|
||||||
ActorRel(Matching, "d_a_obj_chandelier"),
|
ActorRel(Matching, "d_a_obj_chandelier"),
|
||||||
|
@ -1798,7 +1798,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_obj_crvlh_up"),
|
ActorRel(NonMatching, "d_a_obj_crvlh_up"),
|
||||||
ActorRel(Matching, "d_a_obj_crvsteel"),
|
ActorRel(Matching, "d_a_obj_crvsteel"),
|
||||||
ActorRel(Matching, "d_a_obj_crystal"),
|
ActorRel(Matching, "d_a_obj_crystal"),
|
||||||
ActorRel(Equivalent, "d_a_obj_cwall"),
|
ActorRel(Equivalent, "d_a_obj_cwall"), # weak func order
|
||||||
ActorRel(Matching, "d_a_obj_damCps"),
|
ActorRel(Matching, "d_a_obj_damCps"),
|
||||||
ActorRel(Matching, "d_a_obj_dan"),
|
ActorRel(Matching, "d_a_obj_dan"),
|
||||||
ActorRel(Matching, "d_a_obj_digholl"),
|
ActorRel(Matching, "d_a_obj_digholl"),
|
||||||
|
@ -1830,7 +1830,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_obj_gomikabe"),
|
ActorRel(NonMatching, "d_a_obj_gomikabe"),
|
||||||
ActorRel(NonMatching, "d_a_obj_gra2"),
|
ActorRel(NonMatching, "d_a_obj_gra2"),
|
||||||
ActorRel(Matching, "d_a_obj_graWall"),
|
ActorRel(Matching, "d_a_obj_graWall"),
|
||||||
ActorRel(Equivalent, "d_a_obj_gra_rock"),
|
ActorRel(Matching, "d_a_obj_gra_rock"),
|
||||||
ActorRel(Matching, "d_a_obj_grave_stone"),
|
ActorRel(Matching, "d_a_obj_grave_stone"),
|
||||||
ActorRel(Matching, "d_a_obj_groundwater"),
|
ActorRel(Matching, "d_a_obj_groundwater"),
|
||||||
ActorRel(NonMatching, "d_a_obj_grz_rock"),
|
ActorRel(NonMatching, "d_a_obj_grz_rock"),
|
||||||
|
@ -1985,7 +1985,7 @@ config.libs = [
|
||||||
ActorRel(Matching, "d_a_obj_sekizo"),
|
ActorRel(Matching, "d_a_obj_sekizo"),
|
||||||
ActorRel(NonMatching, "d_a_obj_sekizoa"),
|
ActorRel(NonMatching, "d_a_obj_sekizoa"),
|
||||||
ActorRel(Matching, "d_a_obj_shield"),
|
ActorRel(Matching, "d_a_obj_shield"),
|
||||||
ActorRel(Equivalent, "d_a_obj_sm_door"),
|
ActorRel(Equivalent, "d_a_obj_sm_door"), # vtable order
|
||||||
ActorRel(NonMatching, "d_a_obj_smallkey"),
|
ActorRel(NonMatching, "d_a_obj_smallkey"),
|
||||||
ActorRel(NonMatching, "d_a_obj_smgdoor"),
|
ActorRel(NonMatching, "d_a_obj_smgdoor"),
|
||||||
ActorRel(Matching, "d_a_obj_smoke"),
|
ActorRel(Matching, "d_a_obj_smoke"),
|
||||||
|
@ -1998,7 +1998,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_obj_ss_drink"),
|
ActorRel(NonMatching, "d_a_obj_ss_drink"),
|
||||||
ActorRel(Matching, "d_a_obj_ss_item"),
|
ActorRel(Matching, "d_a_obj_ss_item"),
|
||||||
ActorRel(NonMatching, "d_a_obj_stairBlock"),
|
ActorRel(NonMatching, "d_a_obj_stairBlock"),
|
||||||
ActorRel(Equivalent, "d_a_obj_stone"),
|
ActorRel(Matching, "d_a_obj_stone"),
|
||||||
ActorRel(NonMatching, "d_a_obj_stopper"),
|
ActorRel(NonMatching, "d_a_obj_stopper"),
|
||||||
ActorRel(NonMatching, "d_a_obj_stopper2"),
|
ActorRel(NonMatching, "d_a_obj_stopper2"),
|
||||||
ActorRel(Matching, "d_a_obj_suisya"),
|
ActorRel(Matching, "d_a_obj_suisya"),
|
||||||
|
@ -2008,12 +2008,12 @@ config.libs = [
|
||||||
ActorRel(Matching, "d_a_obj_swBallC"),
|
ActorRel(Matching, "d_a_obj_swBallC"),
|
||||||
ActorRel(NonMatching, "d_a_obj_swLight"),
|
ActorRel(NonMatching, "d_a_obj_swLight"),
|
||||||
ActorRel(NonMatching, "d_a_obj_swchain"),
|
ActorRel(NonMatching, "d_a_obj_swchain"),
|
||||||
ActorRel(Equivalent, "d_a_obj_swhang"),
|
ActorRel(Equivalent, "d_a_obj_swhang"), # vtable order
|
||||||
ActorRel(NonMatching, "d_a_obj_sword"),
|
ActorRel(NonMatching, "d_a_obj_sword"),
|
||||||
ActorRel(NonMatching, "d_a_obj_swpush2"),
|
ActorRel(NonMatching, "d_a_obj_swpush2"),
|
||||||
ActorRel(Matching, "d_a_obj_swspinner"),
|
ActorRel(Matching, "d_a_obj_swspinner"),
|
||||||
ActorRel(Matching, "d_a_obj_swturn"),
|
ActorRel(Matching, "d_a_obj_swturn"),
|
||||||
ActorRel(Equivalent, "d_a_obj_syRock"),
|
ActorRel(Equivalent, "d_a_obj_syRock"), # weak func order
|
||||||
ActorRel(NonMatching, "d_a_obj_szbridge"),
|
ActorRel(NonMatching, "d_a_obj_szbridge"),
|
||||||
ActorRel(NonMatching, "d_a_obj_taFence"),
|
ActorRel(NonMatching, "d_a_obj_taFence"),
|
||||||
ActorRel(Matching, "d_a_obj_table"),
|
ActorRel(Matching, "d_a_obj_table"),
|
||||||
|
@ -2045,7 +2045,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_obj_warp_kbrg"),
|
ActorRel(NonMatching, "d_a_obj_warp_kbrg"),
|
||||||
ActorRel(NonMatching, "d_a_obj_warp_obrg"),
|
ActorRel(NonMatching, "d_a_obj_warp_obrg"),
|
||||||
ActorRel(NonMatching, "d_a_obj_waterGate"),
|
ActorRel(NonMatching, "d_a_obj_waterGate"),
|
||||||
ActorRel(Equivalent, "d_a_obj_waterPillar"),
|
ActorRel(Equivalent, "d_a_obj_waterPillar"), # vtable order
|
||||||
ActorRel(Matching, "d_a_obj_waterfall"),
|
ActorRel(Matching, "d_a_obj_waterfall"),
|
||||||
ActorRel(NonMatching, "d_a_obj_wchain"),
|
ActorRel(NonMatching, "d_a_obj_wchain"),
|
||||||
ActorRel(Matching, "d_a_obj_wdStick"),
|
ActorRel(Matching, "d_a_obj_wdStick"),
|
||||||
|
@ -2064,7 +2064,7 @@ config.libs = [
|
||||||
ActorRel(NonMatching, "d_a_obj_zdoor"),
|
ActorRel(NonMatching, "d_a_obj_zdoor"),
|
||||||
ActorRel(NonMatching, "d_a_obj_zrTurara"),
|
ActorRel(NonMatching, "d_a_obj_zrTurara"),
|
||||||
ActorRel(Matching, "d_a_obj_zrTuraraRock"),
|
ActorRel(Matching, "d_a_obj_zrTuraraRock"),
|
||||||
ActorRel(Equivalent, "d_a_obj_zraMark"),
|
ActorRel(Equivalent, "d_a_obj_zraMark"), # weak func order
|
||||||
ActorRel(Matching, "d_a_obj_zra_freeze"),
|
ActorRel(Matching, "d_a_obj_zra_freeze"),
|
||||||
ActorRel(NonMatching, "d_a_obj_zra_rock"),
|
ActorRel(NonMatching, "d_a_obj_zra_rock"),
|
||||||
ActorRel(NonMatching, "d_a_passer_mng"),
|
ActorRel(NonMatching, "d_a_passer_mng"),
|
||||||
|
|
|
@ -187,6 +187,7 @@ public:
|
||||||
}
|
}
|
||||||
J2DIndTexCoordScale& operator=(const J2DIndTexCoordScaleInfo& info) {
|
J2DIndTexCoordScale& operator=(const J2DIndTexCoordScaleInfo& info) {
|
||||||
mInfo = info;
|
mInfo = info;
|
||||||
|
return *this;
|
||||||
}
|
}
|
||||||
/* 802EA0CC */ void load(u8);
|
/* 802EA0CC */ void load(u8);
|
||||||
|
|
||||||
|
|
|
@ -70,6 +70,11 @@ inline T cLib_maxLimit(T val, T max) {
|
||||||
return (T)ret;
|
return (T)ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <typename T>
|
||||||
|
T cLib_getRndValue(T min, T range) {
|
||||||
|
return (T)(min + cM_rndF((f32)range));
|
||||||
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T cLib_calcTimer(T* value) {
|
T cLib_calcTimer(T* value) {
|
||||||
if (*(T*)value != 0) {
|
if (*(T*)value != 0) {
|
||||||
|
@ -78,11 +83,6 @@ T cLib_calcTimer(T* value) {
|
||||||
return *value;
|
return *value;
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
|
||||||
T cLib_getRndValue(T min, T range) {
|
|
||||||
return (T)(min + cM_rndF((f32)range));
|
|
||||||
}
|
|
||||||
|
|
||||||
void MtxInit(void);
|
void MtxInit(void);
|
||||||
void MtxTrans(f32, f32, f32, u8);
|
void MtxTrans(f32, f32, f32, u8);
|
||||||
void MtxScale(f32, f32, f32, u8);
|
void MtxScale(f32, f32, f32, u8);
|
||||||
|
|
|
@ -46,8 +46,8 @@ public:
|
||||||
/* 804CE19C */ int draw();
|
/* 804CE19C */ int draw();
|
||||||
/* 804CE214 */ int _delete();
|
/* 804CE214 */ int _delete();
|
||||||
|
|
||||||
/* 804CE1F0 */ virtual void setListStart();
|
|
||||||
/* 804CCFD8 */ virtual int __CreateHeap();
|
/* 804CCFD8 */ virtual int __CreateHeap();
|
||||||
|
/* 804CE1F0 */ virtual void setListStart();
|
||||||
|
|
||||||
bool chkStatus(u8 i_status) { return mStatus == i_status; }
|
bool chkStatus(u8 i_status) { return mStatus == i_status; }
|
||||||
void setStatus(u8 i_status) { mStatus = i_status; }
|
void setStatus(u8 i_status) { mStatus = i_status; }
|
||||||
|
|
|
@ -107,8 +107,8 @@ public:
|
||||||
/* 80D23904 */ int draw();
|
/* 80D23904 */ int draw();
|
||||||
/* 80D23A0C */ int _delete();
|
/* 80D23A0C */ int _delete();
|
||||||
|
|
||||||
/* 80D23B24 */ virtual ~daObjVolcBall_c() {}
|
|
||||||
/* 80D22DDC */ virtual BOOL eventStart();
|
/* 80D22DDC */ virtual BOOL eventStart();
|
||||||
|
/* 80D23B24 */ virtual ~daObjVolcBall_c() {}
|
||||||
|
|
||||||
u8 getSwBit() { return fopAcM_GetParamBit(this, 0, 8); }
|
u8 getSwBit() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||||
u8 getSwBit2() { return fopAcM_GetParamBit(this, 8, 8); }
|
u8 getSwBit2() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||||
|
|
|
@ -328,11 +328,11 @@ private:
|
||||||
/* 0x0132 */ u8 mNoYesWakuEndAlpha[2];
|
/* 0x0132 */ u8 mNoYesWakuEndAlpha[2];
|
||||||
/* 0x0134 */ u8 mNoYesWakuAnmTimer[2];
|
/* 0x0134 */ u8 mNoYesWakuAnmTimer[2];
|
||||||
/* 0x0138 */ CPaneMgr* mpNoYesTxt[2];
|
/* 0x0138 */ CPaneMgr* mpNoYesTxt[2];
|
||||||
/* 0x0140 */ J2DAnmColorKey* mpFileWakuAnm;
|
/* 0x0140 */ J2DAnmColor* mpFileWakuAnm;
|
||||||
/* 0x0144 */ int mFileWakuAnmFrame;
|
/* 0x0144 */ int mFileWakuAnmFrame;
|
||||||
/* 0x0148 */ J2DAnmTextureSRTKey* mpFileWakuRotAnm;
|
/* 0x0148 */ J2DAnmTextureSRTKey* mpFileWakuRotAnm;
|
||||||
/* 0x014C */ int mFileWakuRotAnmFrame;
|
/* 0x014C */ int mFileWakuRotAnmFrame;
|
||||||
/* 0x0150 */ J2DAnmColorKey* field_0x150;
|
/* 0x0150 */ J2DAnmColor* field_0x150;
|
||||||
/* 0x0154 */ int field_0x154;
|
/* 0x0154 */ int field_0x154;
|
||||||
/* 0x0158 */ J2DAnmTextureSRTKey* field_0x158;
|
/* 0x0158 */ J2DAnmTextureSRTKey* field_0x158;
|
||||||
/* 0x015C */ int field_0x15c;
|
/* 0x015C */ int field_0x15c;
|
||||||
|
|
|
@ -18,7 +18,7 @@ public:
|
||||||
/* 80195A3C */ void animation();
|
/* 80195A3C */ void animation();
|
||||||
/* 80195B40 */ void setAlpha(u8);
|
/* 80195B40 */ void setAlpha(u8);
|
||||||
/* 80195B70 */ void setPos(J2DPane*, f32, f32);
|
/* 80195B70 */ void setPos(J2DPane*, f32, f32);
|
||||||
virtual ~dSelect_icon_c() {}
|
virtual ~dSelect_icon_c(); // must be declared but not defined to match?
|
||||||
|
|
||||||
void drawSelf() {
|
void drawSelf() {
|
||||||
field_0x4.draw();
|
field_0x4.draw();
|
||||||
|
|
|
@ -13,7 +13,7 @@ void GXSetDispCopyDst(u16 arg0, u16 arg1);
|
||||||
void GXSetTexCopyDst(u16 width, u16 height, GXTexFmt format, GXBool useMIPmap);
|
void GXSetTexCopyDst(u16 width, u16 height, GXTexFmt format, GXBool useMIPmap);
|
||||||
void GXSetDispCopyFrame2Field(GXCopyMode mode);
|
void GXSetDispCopyFrame2Field(GXCopyMode mode);
|
||||||
void GXSetCopyClamp(GXFBClamp clamp);
|
void GXSetCopyClamp(GXFBClamp clamp);
|
||||||
u16 GXGetNumXfbLines(const u16 efbHeight, f32 yScale);
|
u16 GXGetNumXfbLines(u16 efbHeight, f32 yScale);
|
||||||
f32 GXGetYScaleFactor(u16 efb_height, u16 xfb_height);
|
f32 GXGetYScaleFactor(u16 efb_height, u16 xfb_height);
|
||||||
u32 GXSetDispCopyYScale(f32 y_scale);
|
u32 GXSetDispCopyYScale(f32 y_scale);
|
||||||
void GXSetCopyClear(GXColor color, u32 clear_z);
|
void GXSetCopyClear(GXColor color, u32 clear_z);
|
||||||
|
|
|
@ -55,7 +55,6 @@ void JUTXfb::common_init(int bufNum) {
|
||||||
|
|
||||||
/* 802E5260-802E5308 2DFBA0 00A8+00 1/1 0/0 0/0 .text
|
/* 802E5260-802E5308 2DFBA0 00A8+00 1/1 0/0 0/0 .text
|
||||||
* __ct__6JUTXfbFPC16_GXRenderModeObjP7JKRHeapQ26JUTXfb10EXfbNumber */
|
* __ct__6JUTXfbFPC16_GXRenderModeObjP7JKRHeapQ26JUTXfb10EXfbNumber */
|
||||||
// NONMATCHING - regswap, equivalent
|
|
||||||
JUTXfb::JUTXfb(GXRenderModeObj const* pObj, JKRHeap* pHeap, JUTXfb::EXfbNumber xfbNum) {
|
JUTXfb::JUTXfb(GXRenderModeObj const* pObj, JKRHeap* pHeap, JUTXfb::EXfbNumber xfbNum) {
|
||||||
common_init(xfbNum);
|
common_init(xfbNum);
|
||||||
|
|
||||||
|
@ -63,7 +62,7 @@ JUTXfb::JUTXfb(GXRenderModeObj const* pObj, JKRHeap* pHeap, JUTXfb::EXfbNumber x
|
||||||
initiate(pObj->fb_width, pObj->xfb_height, pHeap, xfbNum);
|
initiate(pObj->fb_width, pObj->xfb_height, pHeap, xfbNum);
|
||||||
} else {
|
} else {
|
||||||
u16 fb_width = JUTVideo::getManager()->getRenderMode()->fb_width;
|
u16 fb_width = JUTVideo::getManager()->getRenderMode()->fb_width;
|
||||||
u16 efb_height = JUTVideo::getManager()->getRenderMode()->efb_height;
|
u16 efb_height = (u32)JUTVideo::getManager()->getRenderMode()->efb_height;
|
||||||
u16 xfb_height = JUTVideo::getManager()->getRenderMode()->xfb_height;
|
u16 xfb_height = JUTVideo::getManager()->getRenderMode()->xfb_height;
|
||||||
f32 scale_factor = GXGetYScaleFactor(efb_height, xfb_height);
|
f32 scale_factor = GXGetYScaleFactor(efb_height, xfb_height);
|
||||||
u16 xfb_lines = GXGetNumXfbLines(efb_height, scale_factor);
|
u16 xfb_lines = GXGetNumXfbLines(efb_height, scale_factor);
|
||||||
|
|
|
@ -10,11 +10,13 @@
|
||||||
|
|
||||||
/* ############################################################################################## */
|
/* ############################################################################################## */
|
||||||
/* 80450C98-80450C9C -00001 0004+00 0/0 0/0 50/50 .sbss None */
|
/* 80450C98-80450C9C -00001 0004+00 0/0 0/0 50/50 .sbss None */
|
||||||
extern u8 struct_80450C98[4];
|
u8 cDmr_SkipInfo;
|
||||||
u8 struct_80450C98[4];
|
u8 data_80450C99;
|
||||||
|
u8 data_80450C9A;
|
||||||
|
u8 data_80450C9B;
|
||||||
|
|
||||||
/* 80450C9C-80450CA0 -00001 0004+00 0/0 0/0 6/6 .sbss None */
|
/* 80450C9C-80450CA0 -00001 0004+00 0/0 0/0 6/6 .sbss None */
|
||||||
u8 cDmr_SkipInfo;
|
u8 data_80450C9C;
|
||||||
u8 data_80450C9D;
|
u8 data_80450C9D;
|
||||||
u8 data_80450C9E;
|
u8 data_80450C9E;
|
||||||
u8 data_80450C9F;
|
u8 data_80450C9F;
|
||||||
|
|
|
@ -1014,7 +1014,7 @@ void daB_YO_c::executeOpening() {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 14:
|
case 15:
|
||||||
cam_pos.set(51.0f, 207.0f, -2082.0f);
|
cam_pos.set(51.0f, 207.0f, -2082.0f);
|
||||||
cLib_chasePos(&mCamCenter, cam_pos, mCamCenterSpeed);
|
cLib_chasePos(&mCamCenter, cam_pos, mCamCenterSpeed);
|
||||||
cam_pos.set(51.0f, 207.0f, -1562.0f);
|
cam_pos.set(51.0f, 207.0f, -1562.0f);
|
||||||
|
|
|
@ -558,7 +558,7 @@ static void do_walk(do_class* i_this) {
|
||||||
i_this->mTailWagTarget = 1000.0f;
|
i_this->mTailWagTarget = 1000.0f;
|
||||||
|
|
||||||
switch (i_this->mMode) {
|
switch (i_this->mMode) {
|
||||||
case 11:
|
case -1:
|
||||||
i_this->mTargetPos = i_this->home.pos;
|
i_this->mTargetPos = i_this->home.pos;
|
||||||
if (i_this->speedF >= l_HIO.mRunSpeed) {
|
if (i_this->speedF >= l_HIO.mRunSpeed) {
|
||||||
i_this->mAnmSpeed = 4.0f;
|
i_this->mAnmSpeed = 4.0f;
|
||||||
|
@ -571,7 +571,7 @@ static void do_walk(do_class* i_this) {
|
||||||
i_this->mMode = 3;
|
i_this->mMode = 3;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case -1:
|
case 0:
|
||||||
if (i_this->field_0x5f4 == 8) {
|
if (i_this->field_0x5f4 == 8) {
|
||||||
anm_init(i_this, ANM_SIT, 5.0f, 0, 1.0f);
|
anm_init(i_this, ANM_SIT, 5.0f, 0, 1.0f);
|
||||||
} else {
|
} else {
|
||||||
|
@ -581,13 +581,13 @@ static void do_walk(do_class* i_this) {
|
||||||
i_this->mMode++;
|
i_this->mMode++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0:
|
case 1:
|
||||||
if (i_this->mpMorf->isStop()) {
|
if (i_this->mpMorf->isStop()) {
|
||||||
i_this->mMode++;
|
i_this->mMode++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 1:
|
case 2:
|
||||||
local_5c.x = 0.0f;
|
local_5c.x = 0.0f;
|
||||||
local_5c.y = 20.0f;
|
local_5c.y = 20.0f;
|
||||||
|
|
||||||
|
@ -611,7 +611,7 @@ static void do_walk(do_class* i_this) {
|
||||||
anm_init(i_this, ANM_WALK, 5.0f, 2, i_this->mAnmSpeed);
|
anm_init(i_this, ANM_WALK, 5.0f, 2, i_this->mAnmSpeed);
|
||||||
i_this->mMode++;
|
i_this->mMode++;
|
||||||
|
|
||||||
case 2:
|
case 3:
|
||||||
local_5c = i_this->mTargetPos - i_this->current.pos;
|
local_5c = i_this->mTargetPos - i_this->current.pos;
|
||||||
|
|
||||||
cLib_addCalcAngleS2(&i_this->current.angle.y, (s16)cM_atan2s(local_5c.x, local_5c.z), 0x10,
|
cLib_addCalcAngleS2(&i_this->current.angle.y, (s16)cM_atan2s(local_5c.x, local_5c.z), 0x10,
|
||||||
|
@ -633,7 +633,7 @@ static void do_walk(do_class* i_this) {
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:
|
case 4:
|
||||||
cLib_addCalc0(&i_this->speedF, 1.0f, 1.0f);
|
cLib_addCalc0(&i_this->speedF, 1.0f, 1.0f);
|
||||||
|
|
||||||
if (i_this->mTimer[0] == 0) {
|
if (i_this->mTimer[0] == 0) {
|
||||||
|
@ -642,7 +642,7 @@ static void do_walk(do_class* i_this) {
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 9:
|
case 10:
|
||||||
cLib_addCalc0(&i_this->speedF, 1.0f, 1.0f);
|
cLib_addCalc0(&i_this->speedF, 1.0f, 1.0f);
|
||||||
cLib_addCalcAngleS2(&i_this->current.angle.y, i_this->mTargetAngleY, 4, 0x400);
|
cLib_addCalcAngleS2(&i_this->current.angle.y, i_this->mTargetAngleY, 4, 0x400);
|
||||||
|
|
||||||
|
@ -664,7 +664,7 @@ static void do_walk(do_class* i_this) {
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 10:
|
case 11:
|
||||||
i_this->field_0x616 = 1;
|
i_this->field_0x616 = 1;
|
||||||
i_this->mTailWagTarget = 3000.0f;
|
i_this->mTailWagTarget = 3000.0f;
|
||||||
if (i_this->mTimer[0] == 0) {
|
if (i_this->mTimer[0] == 0) {
|
||||||
|
|
|
@ -254,10 +254,10 @@ char* daMBdoorL1_c::getArcName() {
|
||||||
case 5:
|
case 5:
|
||||||
case 11:
|
case 11:
|
||||||
return "L5MBdoor";
|
return "L5MBdoor";
|
||||||
|
case 8:
|
||||||
|
return "L8MBdoor";
|
||||||
case 7:
|
case 7:
|
||||||
case 10:
|
case 10:
|
||||||
return "L8MBdoor";
|
|
||||||
case 8:
|
|
||||||
return "L7MBdoor";
|
return "L7MBdoor";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -714,7 +714,7 @@ void daMBdoorL1_c::demoProc() {
|
||||||
case 20:
|
case 20:
|
||||||
openInitKnob(3);
|
openInitKnob(3);
|
||||||
break;
|
break;
|
||||||
case 21:
|
case 22:
|
||||||
if (field_0x5df == 0) {
|
if (field_0x5df == 0) {
|
||||||
shape_angle.y += 0x7fff;
|
shape_angle.y += 0x7fff;
|
||||||
}
|
}
|
||||||
|
@ -736,7 +736,7 @@ void daMBdoorL1_c::demoProc() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 22:
|
case 21:
|
||||||
if (field_0x5df == 0) {
|
if (field_0x5df == 0) {
|
||||||
shape_angle.y += 0x7fff;
|
shape_angle.y += 0x7fff;
|
||||||
}
|
}
|
||||||
|
@ -960,7 +960,6 @@ void daMBdoorL1_c::demoProc() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 80674AF4-80674DA4 002334 02B0+00 1/1 0/0 0/0 .text openInit__12daMBdoorL1_cFv */
|
/* 80674AF4-80674DA4 002334 02B0+00 1/1 0/0 0/0 .text openInit__12daMBdoorL1_cFv */
|
||||||
// NONMATCHING regalloc
|
|
||||||
int daMBdoorL1_c::openInit() {
|
int daMBdoorL1_c::openInit() {
|
||||||
static u16 const l_eff_id[2] = {0x8295, 0x8296};
|
static u16 const l_eff_id[2] = {0x8295, 0x8296};
|
||||||
static u16 const l_eff_id_lv3[5] = {0x8762, 0x8763, 0x8764, 0x8765, 0x8766};
|
static u16 const l_eff_id_lv3[5] = {0x8762, 0x8763, 0x8764, 0x8765, 0x8766};
|
||||||
|
@ -1551,7 +1550,6 @@ int daMBdoorL1_c::checkMBossRoom() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 806769D0-80676AB4 004210 00E4+00 1/1 0/0 0/0 .text checkStopClose__12daMBdoorL1_cFv */
|
/* 806769D0-80676AB4 004210 00E4+00 1/1 0/0 0/0 .text checkStopClose__12daMBdoorL1_cFv */
|
||||||
// NONMATCHING regalloc
|
|
||||||
int daMBdoorL1_c::checkStopClose() {
|
int daMBdoorL1_c::checkStopClose() {
|
||||||
u8 FRoomNo = door_param2_c::getFRoomNo(this);
|
u8 FRoomNo = door_param2_c::getFRoomNo(this);
|
||||||
door_param2_c::getFRoomNo(this);
|
door_param2_c::getFRoomNo(this);
|
||||||
|
|
|
@ -29,9 +29,8 @@ static void ride_call_back(dBgW* param_0, fopAc_ac_c* i_this, fopAc_ac_c* param_
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 80BC4BB4-80BC51B8 000174 0604+00 1/1 0/0 0/0 .text action__FP12obj_cb_class */
|
/* 80BC4BB4-80BC51B8 000174 0604+00 1/1 0/0 0/0 .text action__FP12obj_cb_class */
|
||||||
// NONMATCHING - i_this regalloc. Assigning i_this to a variable with a conversion
|
|
||||||
// fixes the regalloc but the assignment is in wrong place
|
|
||||||
static void action(obj_cb_class* i_this) {
|
static void action(obj_cb_class* i_this) {
|
||||||
|
fopAc_ac_c* a_this = i_this;
|
||||||
cXyz local_60;
|
cXyz local_60;
|
||||||
int local_78 = 0;
|
int local_78 = 0;
|
||||||
switch(i_this->field_0x596) {
|
switch(i_this->field_0x596) {
|
||||||
|
@ -113,7 +112,7 @@ static void action(obj_cb_class* i_this) {
|
||||||
// !@bug field_0x594 is never initialized
|
// !@bug field_0x594 is never initialized
|
||||||
i_this->field_0x594++;
|
i_this->field_0x594++;
|
||||||
if (i_this->field_0x594 > 150) {
|
if (i_this->field_0x594 > 150) {
|
||||||
fopAcM_delete(i_this);
|
fopAcM_delete(a_this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cLib_addCalc0(&i_this->field_0x5a8, 1.0f, 5.0f);
|
cLib_addCalc0(&i_this->field_0x5a8, 1.0f, 5.0f);
|
||||||
|
|
|
@ -7,6 +7,12 @@
|
||||||
#include "d/actor/d_a_npc.h"
|
#include "d/actor/d_a_npc.h"
|
||||||
#include "d/d_bg_w.h"
|
#include "d/d_bg_w.h"
|
||||||
|
|
||||||
|
static void dummy() {
|
||||||
|
// fakematch to fix weak function order
|
||||||
|
cLib_calcTimer<u8>(0);
|
||||||
|
cLib_calcTimer<s16>(0);
|
||||||
|
}
|
||||||
|
|
||||||
/* 80C123BC-80C12400 000000 0044+00 3/3 0/0 0/0 .rodata mCcDCyl__14daObjGraRock_c */
|
/* 80C123BC-80C12400 000000 0044+00 3/3 0/0 0/0 .rodata mCcDCyl__14daObjGraRock_c */
|
||||||
dCcD_SrcCyl const daObjGraRock_c::mCcDCyl = {
|
dCcD_SrcCyl const daObjGraRock_c::mCcDCyl = {
|
||||||
{
|
{
|
||||||
|
|
|
@ -317,7 +317,7 @@ void daObjStone_c::mode_proc_call() {
|
||||||
&daObjStone_c::modeDrop,
|
&daObjStone_c::modeDrop,
|
||||||
&daObjStone_c::modeCarry,
|
&daObjStone_c::modeCarry,
|
||||||
&daObjStone_c::modePutWait,
|
&daObjStone_c::modePutWait,
|
||||||
&daObjStone_c::modeWait,
|
&daObjStone_c::modeWalk,
|
||||||
&daObjStone_c::modeBreak,
|
&daObjStone_c::modeBreak,
|
||||||
&daObjStone_c::modeYogan,
|
&daObjStone_c::modeYogan,
|
||||||
};
|
};
|
||||||
|
|
|
@ -358,8 +358,9 @@ void dMenu_save_c::screenSet() {
|
||||||
mSelIcon = new dSelect_cursor_c(0, 1.0f, NULL);
|
mSelIcon = new dSelect_cursor_c(0, 1.0f, NULL);
|
||||||
mSelIcon->setParam(0.96f, 0.94f, 0.03f, 0.7f, 0.7f);
|
mSelIcon->setParam(0.96f, 0.94f, 0.03f, 0.7f, 0.7f);
|
||||||
|
|
||||||
Vec* pos = &mpSelData[mSelectedFile]->getGlobalVtxCenter(false, 0);
|
Vec pos;
|
||||||
mSelIcon->setPos(pos->x, pos->y, mpSelData[mSelectedFile]->getPanePtr(), true);
|
pos = mpSelData[mSelectedFile]->getGlobalVtxCenter(false, 0);
|
||||||
|
mSelIcon->setPos(pos.x, pos.y, mpSelData[mSelectedFile]->getPanePtr(), true);
|
||||||
mSelIcon->setAlphaRate(0.0f);
|
mSelIcon->setAlphaRate(0.0f);
|
||||||
|
|
||||||
J2DPane* pane = mSaveSel.Scr->search('Nm_02');
|
J2DPane* pane = mSaveSel.Scr->search('Nm_02');
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
// Translation Unit: d/d_select_cursor
|
// Translation Unit: d/d_select_cursor
|
||||||
//
|
//
|
||||||
|
|
||||||
|
#define NO_INLINE_DLSTBASE_DRAW
|
||||||
|
|
||||||
#include "d/d_select_cursor.h"
|
#include "d/d_select_cursor.h"
|
||||||
#include "JSystem/J2DGraph/J2DGrafContext.h"
|
#include "JSystem/J2DGraph/J2DGrafContext.h"
|
||||||
#include "d/d_com_inf_game.h"
|
#include "d/d_com_inf_game.h"
|
||||||
|
@ -57,7 +59,7 @@ dSelect_cursor_c::dSelect_cursor_c(u8 param_0, f32 param_1, JKRArchive* param_2)
|
||||||
"",
|
"",
|
||||||
};
|
};
|
||||||
|
|
||||||
static char* btk2_name[4 + 12 /* padding */] = {
|
static char* btk2_name[4] = {
|
||||||
"",
|
"",
|
||||||
"zelda_store_select_icon_02.btk",
|
"zelda_store_select_icon_02.btk",
|
||||||
"",
|
"",
|
||||||
|
@ -206,6 +208,13 @@ dSelect_cursor_c::dSelect_cursor_c(u8 param_0, f32 param_1, JKRArchive* param_2)
|
||||||
mPositionX = 0.0f;
|
mPositionX = 0.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void dummy() {
|
||||||
|
// Need 0x30 bytes of padding with no symbol between btk2_name$3688 and dSelect_cursor_c::__vtable
|
||||||
|
// This is likely caused by the vtables of abstract base classes getting put there and then stripped out.
|
||||||
|
// Not sure which abstract base classes could go there though.
|
||||||
|
static u8 padding_fakematch[0x30] = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* 801949EC-80194C30 18F32C 0244+00 1/0 0/0 0/0 .text __dt__16dSelect_cursor_cFv */
|
/* 801949EC-80194C30 18F32C 0244+00 1/0 0/0 0/0 .text __dt__16dSelect_cursor_cFv */
|
||||||
dSelect_cursor_c::~dSelect_cursor_c() {
|
dSelect_cursor_c::~dSelect_cursor_c() {
|
||||||
|
@ -254,7 +263,6 @@ dSelect_cursor_c::~dSelect_cursor_c() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 80194C30-80194CC0 18F570 0090+00 1/0 0/0 0/0 .text draw__16dSelect_cursor_cFv */
|
/* 80194C30-80194CC0 18F570 0090+00 1/0 0/0 0/0 .text draw__16dSelect_cursor_cFv */
|
||||||
// NONMATCHING
|
|
||||||
void dSelect_cursor_c::draw() {
|
void dSelect_cursor_c::draw() {
|
||||||
mpPaneMgr->getAlphaRate();
|
mpPaneMgr->getAlphaRate();
|
||||||
update();
|
update();
|
||||||
|
|
|
@ -353,7 +353,7 @@ static u32 __GXGetNumXfbLines(u32 height, u32 scale) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 8035CCDC-8035CD6C 35761C 0090+00 0/0 2/2 0/0 .text GXGetNumXfbLines */
|
/* 8035CCDC-8035CD6C 35761C 0090+00 0/0 2/2 0/0 .text GXGetNumXfbLines */
|
||||||
u16 GXGetNumXfbLines(const u16 efbHeight, f32 yScale) {
|
u16 GXGetNumXfbLines(u16 efbHeight, f32 yScale) {
|
||||||
u32 scale = (u32)(256.0f / yScale) & 0x1FF;
|
u32 scale = (u32)(256.0f / yScale) & 0x1FF;
|
||||||
|
|
||||||
return __GXGetNumXfbLines(efbHeight, scale);
|
return __GXGetNumXfbLines(efbHeight, scale);
|
||||||
|
@ -650,4 +650,4 @@ void GXClearBoundingBox(void) {
|
||||||
GXWGFifo.u8 = GX_LOAD_BP_REG;
|
GXWGFifo.u8 = GX_LOAD_BP_REG;
|
||||||
GXWGFifo.u32 = 0x560003FF;
|
GXWGFifo.u32 = 0x560003FF;
|
||||||
set_x2(GX_FALSE);
|
set_x2(GX_FALSE);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue