diff --git a/README.md b/README.md index f17480f9..cf00d1b5 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# banjo (87.6959%) +# banjo (87.7724%) diff --git a/include/enums.h b/include/enums.h index f1d9ccad..235d137c 100644 --- a/include/enums.h +++ b/include/enums.h @@ -1467,6 +1467,9 @@ enum honeycomb_e enum actor_e { + ACTOR_1_UNKNOWN = 0x1, + ACTOR_2_UNKNOWN, + ACTOR_4_BIGBUTT = 0x4, ACTOR_6_GRUBLIN = 0x6, @@ -1485,6 +1488,7 @@ enum actor_e //ACTOR_13_SINKING_BOBBER ACTOR_14_ORANGE_PROJECTILE = 0x14, + ACTOR_15_UNKNOWN, ACTOR_17_PLAYER_SHADOW = 0x17, @@ -1514,8 +1518,8 @@ enum actor_e ACTOR_40_CLANKER_SAWBLADE_PROPELLOR_4, ACTOR_41_CLANKER_SAWBLADE_PROPELLOR_5, ACTOR_42_CLANKER_SAWBLADE_PROPELLOR_6, - - ACTOR_44_CLANKER_TOKEN_TOOTH_EXTERIOR = 0x44, + ACTOR_43_CLACKER_SCREW, + ACTOR_44_CLANKER_TOKEN_TOOTH_EXTERIOR, ACTOR_45_CLANKER_JIGGY_TOOTH_EXTERIOR, ACTOR_46_JIGGY, ACTOR_47_EMPTY_HONEYCOMB, @@ -1550,6 +1554,21 @@ enum actor_e ACTOR_6D_GV_BANJO_DOOR = 0x6D, + ACTOR_72_UNKNOWN = 0x72, + ACTOR_73_UNKNOWN, + ACTOR_74_UNKNOWN, + ACTOR_75_UNKNOWN, + ACTOR_76_UNKNOWN, + ACTOR_77_UNKNOWN, + ACTOR_78_UNKNOWN, + ACTOR_79_UNKNOWN, + ACTOR_7A_UNKNOWN, + ACTOR_7B_UNKNOWN, + ACTOR_7C_UNKNOWN, + ACTOR_7D_UNKNOWN, + ACTOR_7E_UNKNOWN, + ACTOR_7F_UNKNOWN, + ACTOR_C5_CHIMPY_STUMP = 0xC5, ACTOR_C7_RIPPER = 0xC7, @@ -1561,7 +1580,11 @@ enum actor_e ACTOR_E6_GLOOP = 0xE6, ACTOR_E7_GLOOP_BUBBLE, - + ACTOR_E8_TANKTUP, + ACTOR_E9_TANKTUP_LEG_FL, + ACTOR_EA_TANKTUP_LEG_BL, + ACTOR_EB_TANKTUP_LEG_FR, + ACTOR_EC_TANKTUP_LEG_BR, ACTOR_ED_PINK_EGG_LARGE = 0xED, ACTOR_EE_PINK_EGG_MEDIUM, ACTOR_EF_PINK_EGG_SMALL, @@ -1575,6 +1598,11 @@ enum actor_e ACTOR_101_CLANKER_TOKEN_TOOTH = 0x101, ACTOR_102_CLANKER_JIGGY_TOOTH, + ACTOR_103_UNKNOWN, + ACTOR_104_UNKNOWN, + ACTOR_105_UNKNOWN, + ACTOR_106_UNKNOWN, + ACTOR_107_UNKNOWN, ACTOR_114_CHURCH_DOOR = 0x114, ACTOR_115_BLUBBER, @@ -1610,10 +1638,10 @@ enum actor_e ACTOR_135_GOBI_3, ACTOR_136_YELLOW_FLIBBIT_CONTROLLER, ACTOR_137_FLIBBIT_YELLOW, - - actor_yumblie = 0x139, - - ACTOR_13B_FLOTSAM = 0x13B, + ACTOR_138_VILE_GAME_CTRL, + ACTOR_139_YUMBLIE, + ACTOR_13A_MR_VILE, + ACTOR_13B_FLOTSAM, ACTOR_13E_LIGHTHOUSE_DOOR = 0x13E, ACTOR_13F_GV_SUN_SWITCH, @@ -1626,12 +1654,19 @@ enum actor_e ACTOR_146_GV_KAZOOIE_TARGET, ACTOR_147_ANCIENT_ONE, - ACTOR_14F_DESTROYED_JIGGY = 0x14f, + ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH = 0x14E, + ACTOR_14F_DESTROYED_JIGGY, ACTOR_151_LOCKUP_SLOW = 0x151, ACTOR_152_LOCKUP_MEDIUM, ACTOR_153_LOCKUP_FAST, + ACTOR_158_UNKNOWN = 0x158, + + ACTOR_15A_UNKNOWN = 0x15A, + + ACTOR_15C_UNKNOWN = 0x15C, + ACTOR_15F_XMAS_TREE = 0x15F, ACTOR_160_BOGGY_1, @@ -1657,6 +1692,14 @@ enum actor_e ACTOR_1C6_GRIMLET = 0x1C6, ACTOR_1CC_GRILL_CHOMPA = 0x1CC, + ACTOR_1CD_UNKNOWN, + ACTOR_1CE_UNKNOWN, + ACTOR_1CF_UNKNOWN, + ACTOR_1D0_UNKNOWN, + ACTOR_1D1_UNKNOWN, + ACTOR_1D2_UNKNOWN, + ACTOR_1D3_UNKNOWN, + ACTOR_1D4_UNKNOWN, ACTOR_1DB_GAME_OVER = 0x1DB, @@ -1679,6 +1722,7 @@ enum actor_e ACTOR_1F7_JINXY = 0x1F7, ACTOR_1FA_CROCTUS = 0x1FA, + ACTOR_1FB_BGS_MAZE_SWITCH = 0x1FB, ACTOR_204_MM_WITCH_SWITCH = 0x204, @@ -1717,7 +1761,14 @@ enum actor_e ACTOR_25D_ICE_KEY, ACTOR_25E_SNS_EGG, - ACTOR_281_BOSS_BOOM_BOX_LARGEST = 0x281, + ACTOR_27A_TIPTUP = 0x27A, + ACTOR_27B_CHOIR_TURTLE_YELLOW, + ACTOR_27C_CHOIR_TURTLE_CYAN, + ACTOR_27D_CHOIR_TURTLE_BLUE, + ACTOR_27E_CHOIR_TURTLE_RED, + ACTOR_27F_CHOIR_TURTLE_PINK, + ACTOR_280_CHOIR_TURTLE_PURPLE, + ACTOR_281_BOSS_BOOM_BOX_LARGEST, ACTOR_282_BOSS_BOOM_BOX_LARGE, ACTOR_283_BOSS_BOOM_BOX_MEDIUM, ACTOR_284_BOSS_BOOM_BOX_SMALL, @@ -1755,6 +1806,8 @@ enum actor_e ACTOR_31D_SANDYBUTT_PYRAMID = 0x31D, ACTOR_31E_PALM_TREE, + ACTOR_32B_UNKNOWN = 0x32B, //something with Tanktup + ACTOR_332_TWINKLY_BLUE = 0x332, ACTOR_333_TWINKLY_GREEN, ACTOR_334_TWINKLY_ORANGE, @@ -1790,7 +1843,8 @@ enum actor_e ACTOR_375_GRUBLIN_HOOD = 0x375, - ACTOR_37A_BOTTLES = 0x37a, + ACTOR_379_UNKNOWN = 0x379, + ACTOR_37A_BOTTLES, ACTOR_37D_ICECUBE_A = 0x37d, @@ -2236,6 +2290,9 @@ enum asset_e ASSET_12A_ANIM_GRUMBLIE_IDLE, ASSET_12B_ANIM_TIPTUP_IDLE, ASSET_12C_ANIM_TIPTUP_TAPPING, + ASSET_12D_ANIM_CHOIR_TURTLE_IDLE, + ASSET_12E_ANIM_CHOIR_TURTLE_SING, + ASSET_12F_ANIM_CHOIR_TURTLE_HURT, ASSET_132_ANIM_FLOTSAM_MOVE = 0x132, @@ -2404,7 +2461,7 @@ enum asset_e ASSET_30A_MODEL_CLANKER_JIGGY_TOOTH_EXTERIOR, // Unused // Unused - // 30d BGS Leaf Pad + ASSET_30D_MODEL_LEAFBOAT = 0x30D, // 30e (Wood Pipe?) // Unused // Unused @@ -2507,7 +2564,7 @@ enum asset_e ASSET_370_MODEL_BLUBBER, ASSET_371_MODEL_GRABBA, ASSET_372_MODEL_GLOOP, - // 373 Mr Vile + ASSET_373_MODEL_MR_VILE, ASSET_374_MODEL_BANJO_CROC = 0x374, ASSET_375_MODEL_FLIBBIT_RED, ASSET_376_MODEL_SLAPPA, @@ -2546,6 +2603,7 @@ enum asset_e // 395 Ticker Body // 396 Ticker Eye // 397 BGS Large Alligator Head + ASSET_397_MODEL_BIG_ALLIGATOR = 0x397, // 398 Concert Ant // Unused // Unused @@ -2632,19 +2690,20 @@ enum asset_e ASSET_3EA_MODEL_RED_X, ASSET_3EB_MODEL_RED_QUESTION_MARK, // 3ec Shrapnel - ASSET_3ED_MODEL_BUZZBOMB, - // 3ee BGS Tanktup Head & Shell - // 3ef BGS Tanktup Leg 1 - // 3f0 BGS Tanktup Leg 2 - // 3f1 BGS Tanktup Leg 3 - // 3f2 BGS Tanktup Leg 4 - ASSET_3F3_MODEL_GOBI_SPIT = 0x3F3, + ASSET_3ED_MODEL_BUZZBOMB = 0x3ED, + ASSET_3EE_TANKTUP, + ASSET_3EF_MODEL_TANKTUP_LEG_FL, + ASSET_3F0_MODEL_TANKTUP_LEG_BL, + ASSET_3F1_MODEL_TANKTUP_LEG_FR, + ASSET_3F2_MODEL_TANKTUP_LEG_BR, + ASSET_3F3_MODEL_GOBI_SPIT, // Unused // 3f5 BGS Green Jiggy Switch - ASSET_3F6_MODEL_YUMBLIE = 0x3F6, + ASSET_3F5_BGS_JIGGY_SWITCH = 0x3F5, + ASSET_3F6_MODEL_YUMBLIE, ASSET_3F7_MODEL_GRUMBLIE, - // 3f8 BGS Tip-tup - // 3f9 BGS Choir Turtle + ASSET_3F8_MODEL_TIPTUP, + ASSET_3F9_MODEL_CHOIR_TURTLE, // Unused // Unused // Unused @@ -3533,7 +3592,8 @@ enum asset_e ASSET_88E_MODEL_CLANKER_CHAIN = 0x88e, - ASSET_891_MODEL_CLANKER_TOKEN_TOOTH_OPEN = 0x891, + ASSET_890_MODEL_SCREW = 0x890, + ASSET_891_MODEL_CLANKER_TOKEN_TOOTH_OPEN, ASSET_892_MODEL_CLANKER_TOKEN_TOOTH_CLOSED, ASSET_893_MODEL_CLANKER_JIGGY_TOOTH_OPEN, ASSET_894_MODEL_CLANKER_JIGGY_TOOTH_CLOSED, @@ -3654,8 +3714,8 @@ enum marker_e{ MARKER_48_NAPPER = 0x48, MARKER_49_MOTZHAND, MARKER_4A_CC_KEY, - - MARKER_4C_CLANKER_TOKEN_TOOTH_EXT = 0x4C, + MARKER_4B_CC_SCREW, + MARKER_4C_CLANKER_TOKEN_TOOTH_EXT, MARKER_4D_CLANKER_JIGGY_TOOTH_EXT, MARKER_51_MM_HUT = 0x51, @@ -3677,7 +3737,9 @@ enum marker_e{ MARKER_69_CHUMP_FISH = 0x69, MARKER_6A_GLOOP = 0x6A, - MARKER_6E_PINK_EGG_LARGEST = 0x6E, + MARKER_6C_TANKTUP = 0x6C, + MARKER_6D_TANKTUP_LEG, + MARKER_6E_PINK_EGG_LARGEST, MARKER_95_CHIMPY_STUMP = 0x95, MARKER_96_RIPPER, @@ -3713,19 +3775,22 @@ enum marker_e{ MARKER_C1_FLIBBIT_RED, MARKER_C2_BUZZBOMB, MARKER_C3_GOBI_3, + MARKER_C4_YELLOW_FLIBBIT_CTRL, + MARKER_C5_FLIBBIT_YELLOW, + MARKER_C6_VILE_GAME_CTRL, + MARKER_C7_YUMBLIE, + MARKER_C8_MR_VILE, + MARKER_C9_FLOTSAM, - MARKER_C5_FLIBBIT_YELLOW = 0xC5, - - MARKER_C9_FLOTSAM = 0xC9, - - MARKER_D6_PINK_EGG_LARGE = 0xD6, + MARKER_D5_BGS_MUD_HUT = 0xD5, + MARKER_D6_PINK_EGG_LARGE, MARKER_D7_PINK_EGG_MEDIUM, MARKER_D8_PINK_EGG_SMALL, MARKER_D9_PINK_EGG_SMALLEST, - - MARKER_DB_BURIED_TREASURE = 0xDB, - - MARKER_DD_BLACK_SNIPPET = 0xDD, + MARKER_DA_LEAFBOAT, + MARKER_DB_BURIED_TREASURE, + MARKER_DC_BIG_ALLIGATOR, + MARKER_DD_BLACK_SNIPPET, MARKER_EA_LIGHTHOUSE_DOOR = 0xEA, MARKER_EB_GV_BANJO_DOOR, @@ -3738,15 +3803,15 @@ enum marker_e{ MARKER_F2_HONEYCOMB_SWITCH, MARKER_F3_GV_KAZOOIE_TARGET, MARKER_F4_ANCIENT_ONE, - - MARKER_F6_LOCKUP_MEDIUM = 0xF6, + MARKER_F5_BGS_ELEVATED_WALKWAY_SWITCH, + MARKER_F6_LOCKUP_MEDIUM, MARKER_F7_LOCKUP_FAST, MARKER_F8_GV_KAZOOIE_DOOR, MARKER_F9_JINXY, MARKER_FC_CROCTUS = 0xFC, - - MARKER_FE_MMM_CLOCK_SWITCH = 0xFE, + MARKER_FD_BGS_MAZE_SWITCH, + MARKER_FE_MMM_CLOCK_SWITCH, MARKER_103_MM_WITCH_SWITCH = 0x103, MARKER_104_MMM_WITCH_SWITCH, @@ -3788,7 +3853,14 @@ enum marker_e{ MARKER_192_ENGINE_ROOM_PROPELLOR_2, MARKER_193_ENGINE_ROOM_PROPELLOR_3, - MARKER_1A1_BOSS_BOOM_BOX_LARGEST = 0x1A1, + MARKER_19A_TIPTUP = 0x19A, + MARKER_19B_CHOIR_TURTLE_YELLOW, + MARKER_19C_CHOIR_TURTLE_CYAN, + MARKER_19D_CHOIR_TURTLE_BLUE, + MARKER_19E_CHOIR_TURTLE_RED, + MARKER_19F_CHOIR_TURTLE_PINK, + MARKER_1A0_CHOIR_TURTLE_PURPLE, + MARKER_1A1_BOSS_BOOM_BOX_LARGEST, MARKER_1A2_BOSS_BOOM_BOX_LARGE, MARKER_1A3_BOSS_BOOM_BOX_MEDIUM , MARKER_1A4_BOSS_BOOM_BOX_SMALL, diff --git a/progress/progress_CC.svg b/progress/progress_CC.svg index dc8cafcd..3b092aea 100644 --- a/progress/progress_CC.svg +++ b/progress/progress_CC.svg @@ -1,23 +1,23 @@ - + - + - - + + CC CC - 92.1429% - 92.1429% + 100.0000% + 100.0000% \ No newline at end of file diff --git a/progress/progress_core2.svg b/progress/progress_core2.svg index 97d58d89..1fe2d728 100644 --- a/progress/progress_core2.svg +++ b/progress/progress_core2.svg @@ -17,7 +17,7 @@ core2 - 86.8047% - 86.8047% + 86.8162% + 86.8162% \ No newline at end of file diff --git a/progress/progress_total.svg b/progress/progress_total.svg index 09aae59a..fb7e4279 100644 --- a/progress/progress_total.svg +++ b/progress/progress_total.svg @@ -17,7 +17,7 @@ Banjo-Kazooie (us.v10) - 87.6959% - 87.6959% + 87.7724% + 87.7724% \ No newline at end of file diff --git a/src/BGS/ch/leafboat.c b/src/BGS/ch/leafboat.c index 1a83ad92..f11e3469 100644 --- a/src/BGS/ch/leafboat.c +++ b/src/BGS/ch/leafboat.c @@ -22,7 +22,7 @@ Actor *func_8038FD10(ActorMarker *this, Gfx** gdl, Mtx** mtx, u32 arg3); /* .data section */ u8 D_80390DA0[6] = {0, 0, 0, 1, 1, 1}; -ActorInfo D_80390DA8 = {0xDA, ACTOR_F1_LEAFBOAT, 0x30D, +ActorInfo D_80390DA8 = {MARKER_DA_LEAFBOAT, ACTOR_F1_LEAFBOAT, ASSET_30D_MODEL_LEAFBOAT, 0x01, NULL, func_8038FD9C, func_8038FD9C, func_8038FD10, 0, 0, 0.0f, 0 diff --git a/src/BGS/ch/mrvile.c b/src/BGS/ch/mrvile.c index db8c9883..9161c877 100644 --- a/src/BGS/ch/mrvile.c +++ b/src/BGS/ch/mrvile.c @@ -29,7 +29,7 @@ typedef struct chmrvile_s{ } ActorLocal_MrVile; /* .data */ -ActorInfo D_80390A70 = {0xC8, 0x13A, 0x373, 0x00, NULL, +ActorInfo D_80390A70 = {MARKER_C8_MR_VILE, ACTOR_13A_MR_VILE, ASSET_373_MODEL_MR_VILE, 0x00, NULL, chvile_update, NULL, chvile_draw, 0, 0, 0.0f, 0 }; diff --git a/src/BGS/ch/tanktup.c b/src/BGS/ch/tanktup.c index e49ec929..2a537a99 100644 --- a/src/BGS/ch/tanktup.c +++ b/src/BGS/ch/tanktup.c @@ -14,6 +14,13 @@ extern void func_802C3E10(void(*arg0)(void), ActorMarker *, s32, s32); void func_8038F6A4(Actor *); /* .data */ +enum chtanktup_leg_e { + TANKTUP_LEG_FRONT_LEFT, + TANKTUP_LEG_BACK_LEFT, + TANKTUP_LEG_FRONT_RIGHT, + TANKTUP_LEG_BACK_RIGHT, +}; + ActorAnimationInfo D_80390C20[] = { {0, 0.0f}, {0x101, 7.5f}, @@ -21,16 +28,16 @@ ActorAnimationInfo D_80390C20[] = { {0x107, 1.75f} }; -ActorInfo D_80390C40 = {0x6C, 0xE8, 0x3EE, 0x01, D_80390C20, +ActorInfo D_80390C40 = {MARKER_6C_TANKTUP, ACTOR_E8_TANKTUP, ASSET_3EE_TANKTUP, 0x01, D_80390C20, func_8038F6A4, func_80326224, func_80325888, 0, 0x80, 0.0f, 0 }; /* .code */ -void func_8038F470(ActorMarker *this, s32 arg1, s32 arg2){ +void func_8038F470(ActorMarker *this, s32 arg1, enum chtanktup_leg_e leg_id){ Actor* thisActor; f32 pad; - Actor* sp24; + Actor* leg; f32 sp18[3]; thisActor = marker_getActor(this); @@ -39,14 +46,14 @@ void func_8038F470(ActorMarker *this, s32 arg1, s32 arg2){ sp18[2] = thisActor->position_z; sp18[1] += 50.0f; - sp24 = func_8032813C(arg2 + 0xe9, sp18, (s32)thisActor->yaw); - func_80328B8C(sp24, arg1 + 1, 0, -1); - sp24->unk10_12 = arg2; + leg = func_8032813C(leg_id + ACTOR_E9_TANKTUP_LEG_FL, sp18, (s32)thisActor->yaw); + func_80328B8C(leg, arg1 + 1, 0, -1); + leg->unk10_12 = leg_id; } void func_8038F51C(Actor *this){ Actor * spawnPtr; - spawnPtr = func_80326D68(this->position, 0xe8, -1, 0); + spawnPtr = func_80326D68(this->position, ACTOR_E8_TANKTUP, -1, 0); spawnPtr->tanktup.unk0[this->unk10_12] = 1; spawnPtr->tanktup.unk10 = 1; } @@ -58,7 +65,7 @@ s32 func_8038F570(s16 *arg0){ pos[0] = (f32)arg0[0]; pos[1] = (f32)arg0[1]; pos[2] = (f32)arg0[2]; - spawnPtr = func_80326D68(pos, 0xe8, -1, 0); + spawnPtr = func_80326D68(pos, ACTOR_E8_TANKTUP, -1, 0); return spawnPtr->state == 3; @@ -99,7 +106,7 @@ void func_8038F6A4(Actor *this) { if(!this->initialized){ - temp_v0 = func_80304C38(0x32B, this); + temp_v0 = func_80304C38(ACTOR_32B_UNKNOWN, this); if (temp_v0 == NULL) { local->unk18[0] = 3672.0f; local->unk18[1] = 100.0f; diff --git a/src/BGS/ch/yumblie.c b/src/BGS/ch/yumblie.c index 6bf0c930..dc435d37 100644 --- a/src/BGS/ch/yumblie.c +++ b/src/BGS/ch/yumblie.c @@ -28,7 +28,7 @@ void chyumblie_update(Actor *); Actor *chyumblie_draw(ActorMarker *this, Gfx **gfx, Mtx** mtx, Vtx **vtx); /* .data */ -ActorInfo D_80390A40 = {0xC7, actor_yumblie, 0x3F6, 0x00, NULL, +ActorInfo D_80390A40 = {MARKER_C7_YUMBLIE, ACTOR_139_YUMBLIE, ASSET_3F6_MODEL_YUMBLIE, 0x00, NULL, chyumblie_update, NULL, chyumblie_draw, 0, 0, 0.0f, 0 }; @@ -157,7 +157,7 @@ void chyumblie_update(Actor *this){ } if(s0->game_marker == NULL){ - s0->game_marker = func_80326D68(this->position, 0x138, -1, &sp48)->marker; + s0->game_marker = func_80326D68(this->position, ACTOR_138_VILE_GAME_CTRL, -1, &sp48)->marker; } sp50 = func_80335684(this->unk148); if(this->state == YUMBLIE_STATE_1_UNDER_GROUND){ diff --git a/src/BGS/code_3030.c b/src/BGS/code_3030.c index ca3b55e8..006f2331 100644 --- a/src/BGS/code_3030.c +++ b/src/BGS/code_3030.c @@ -4,7 +4,7 @@ typedef struct{ s32 unk0; - ActorMarker *unk4; //tiptup_marker + ActorMarker *tiptup_marker; //tiptup_marker f32 unk8; s32 unkC; }ActorLocal_BGS_3030; @@ -13,12 +13,12 @@ void func_80389668(Actor *this); Actor *func_80389610(ActorMarker *marker, Gfx **, Mtx **, Vtx**); /* .data */ -ActorInfo D_80390880 = { 0x019B, 0x27B, 0x3F9, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; -ActorInfo D_803908A4 = { 0x019C, 0x27C, 0x3F9, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; -ActorInfo D_803908C8 = { 0x019D, 0x27D, 0x3F9, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; -ActorInfo D_803908EC = { 0x019E, 0x27E, 0x3F9, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; -ActorInfo D_80390910 = { 0x019F, 0x27F, 0x3F9, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; -ActorInfo D_80390934 = { 0x01A0, 0x280, 0x3F9, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; +ActorInfo D_80390880 = { MARKER_19B_CHOIR_TURTLE_YELLOW, ACTOR_27B_CHOIR_TURTLE_YELLOW, ASSET_3F9_MODEL_CHOIR_TURTLE, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; +ActorInfo D_803908A4 = { MARKER_19C_CHOIR_TURTLE_CYAN, ACTOR_27C_CHOIR_TURTLE_CYAN, ASSET_3F9_MODEL_CHOIR_TURTLE, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; +ActorInfo D_803908C8 = { MARKER_19D_CHOIR_TURTLE_BLUE, ACTOR_27D_CHOIR_TURTLE_BLUE, ASSET_3F9_MODEL_CHOIR_TURTLE, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; +ActorInfo D_803908EC = { MARKER_19E_CHOIR_TURTLE_RED, ACTOR_27E_CHOIR_TURTLE_RED, ASSET_3F9_MODEL_CHOIR_TURTLE, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; +ActorInfo D_80390910 = { MARKER_19F_CHOIR_TURTLE_PINK, ACTOR_27F_CHOIR_TURTLE_PINK, ASSET_3F9_MODEL_CHOIR_TURTLE, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; +ActorInfo D_80390934 = { MARKER_1A0_CHOIR_TURTLE_PURPLE, ACTOR_280_CHOIR_TURTLE_PURPLE, ASSET_3F9_MODEL_CHOIR_TURTLE, 0, NULL, func_80389668, NULL, func_80389610, 0, 0, 1.5f, 0}; /* .code */ void func_80389420(ActorMarker *marker) { @@ -33,19 +33,19 @@ void func_80389488(Actor *this, s32 next_state) { local = (ActorLocal_BGS_3030 *)&this->local; if (next_state == 1) { - func_80335924(this->unk148, 0x12D, 0.2f, randf2(2.0f, 2.5f)); + func_80335924(this->unk148, ASSET_12D_ANIM_CHOIR_TURTLE_IDLE, 0.2f, randf2(2.0f, 2.5f)); func_80335A74(this->unk148, randf2(0.0f, 1.0f)); } if (next_state == 2) { - func_80335924(this->unk148, 0x12E, 0.1f, 1.6666666f); + func_80335924(this->unk148, ASSET_12E_ANIM_CHOIR_TURTLE_SING, 0.1f, 1.6666666f); timed_playSfx(0.8333333, SFX_86_TIPTUP_CHORUS_AH, local->unk8, 0x7FFF); } if (next_state == 3) { func_8030E6A4(SFX_86_TIPTUP_CHORUS_AH, local->unk8, 0x7FFF); - func_80335924(this->unk148, 0x12F, 0.1f, 1.75f); + func_80335924(this->unk148, ASSET_12F_ANIM_CHOIR_TURTLE_HURT, 0.1f, 1.75f); func_80335800(this->unk148, 0.9f, func_80389420, (s32)this->marker); - if (local->unk4 != NULL) { - func_80388E94(local->unk4, local->unk0); + if (local->tiptup_marker != NULL) { + func_80388E94(local->tiptup_marker, local->unk0); } } this->state = next_state; @@ -68,7 +68,7 @@ Actor *func_80389610(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { void func_80389668(Actor *this) { ActorLocal_BGS_3030 *local; f32 sp30; - Actor *temp_v0_2; + Actor *tiptup; local = (ActorLocal_BGS_3030 *)&this->local; if (!this->unk16C_4) { @@ -77,7 +77,7 @@ void func_80389668(Actor *this) { marker_setCollisionScripts(this->marker, NULL, func_803895D0, NULL); local->unk0 = 1; local->unkC = 0; - local->unk4 = NULL; + local->tiptup_marker = NULL; local->unk8 = 1.0f; func_80389488(this, 1); if (jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP) && !func_803203FC(2) && !func_803203FC(1)) { @@ -88,14 +88,14 @@ void func_80389668(Actor *this) { local->unkC++; if (local->unkC == 2) { - temp_v0_2 = func_80326D68(this->position, 0x27A, -1, &sp30); - local->unk4 = (temp_v0_2 != NULL) ? temp_v0_2->marker : NULL; - if (local->unk4 != NULL) { - func_80388FFC(local->unk4, &local->unk0, &local->unk8); + tiptup = func_80326D68(this->position, ACTOR_27A_TIPTUP, -1, &sp30); + local->tiptup_marker = (tiptup != NULL) ? tiptup->marker : NULL; + if (local->tiptup_marker != NULL) { + func_80388FFC(local->tiptup_marker, &local->unk0, &local->unk8); } } if (this->state == 1) { - if (local->unk4 != NULL && (func_80388E70(local->unk4) == local->unk0)) { + if (local->tiptup_marker != NULL && (func_80388E70(local->tiptup_marker) == local->unk0)) { func_80389488(this, 2); } } diff --git a/src/BGS/code_3420.c b/src/BGS/code_3420.c index eea26262..68101a60 100644 --- a/src/BGS/code_3420.c +++ b/src/BGS/code_3420.c @@ -36,7 +36,7 @@ void func_8038A068(Actor *this, s32 next_state); void chvilegame_update(Actor *this); /* .data */ -ActorInfo D_80390960 = {0xC6, 0x138, 0, 0, NULL, chvilegame_update, NULL, func_80325340, 0, 0, 0.0f, 0}; +ActorInfo D_80390960 = {MARKER_C6_VILE_GAME_CTRL, ACTOR_138_VILE_GAME_CTRL, 0, 0, NULL, chvilegame_update, NULL, func_80325340, 0, 0, 0.0f, 0}; enum asset_e D_80390984[] = { 0, 0xC66, 0xC68, 0xC6A, 0xC92, 0xC93, 0xC94, 0}; enum asset_e D_803909A4[] = { 0, 0xC67, 0xC69, 0, 0xC95, 0xC96, 0xC97}; enum asset_e D_803909C0[] = { 0, 0xC6E, 0xC6F, 0, 0xC95, 0xC96, 0xC97}; diff --git a/src/BGS/code_9750.c b/src/BGS/code_9750.c index e50bd3df..014a5b64 100644 --- a/src/BGS/code_9750.c +++ b/src/BGS/code_9750.c @@ -16,7 +16,7 @@ ActorAnimationInfo D_80390C70[3] = { {0x103, 0.75f} }; -ActorInfo D_80390C88 = {0x6D, 0xE9, 0x3EF, 0x01, D_80390C70, +ActorInfo D_80390C88 = {MARKER_6D_TANKTUP_LEG, ACTOR_E9_TANKTUP_LEG_FL, ASSET_3EF_MODEL_TANKTUP_LEG_FL, 0x01, D_80390C70, func_8038FBF8, func_80326224, func_80325888, 0, 0x166, 0.0f, 0 }; @@ -28,7 +28,7 @@ ActorAnimationInfo D_80390CB0[3] = { {0x104, 0.75f} }; -ActorInfo D_80390CC8 = {0x6D, 0xEA, 0x3F0, 0x01, D_80390CB0, +ActorInfo D_80390CC8 = {MARKER_6D_TANKTUP_LEG, ACTOR_EA_TANKTUP_LEG_BL, ASSET_3F0_MODEL_TANKTUP_LEG_BL, 0x01, D_80390CB0, func_8038FBF8, func_80326224, func_80325888, 0, 0x166, 0.0f, 0 }; @@ -40,7 +40,7 @@ ActorAnimationInfo D_80390CF0[3] = { {0x105, 0.75f} }; -ActorInfo D_80390D08 = {0x6D, 0xEB, 0x3F1, 0x01, D_80390CF0, +ActorInfo D_80390D08 = {MARKER_6D_TANKTUP_LEG, ACTOR_EB_TANKTUP_LEG_FR, ASSET_3F1_MODEL_TANKTUP_LEG_FR, 0x01, D_80390CF0, func_8038FBF8, func_80326224, func_80325888, 0, 0x166, 0.0f, 0 }; @@ -52,7 +52,7 @@ ActorAnimationInfo D_80390C30[3] = { {0x106, 0.75f} }; -ActorInfo D_80390D48 = {0x6D, 0xEC, 0x3F2, 0x01, D_80390C30, +ActorInfo D_80390D48 = {MARKER_6D_TANKTUP_LEG, ACTOR_EC_TANKTUP_LEG_BR, ASSET_3F2_MODEL_TANKTUP_LEG_BR, 0x01, D_80390C30, func_8038FBF8, func_80326224, func_80325888, 0, 0x166, 0.0f, 0 }; diff --git a/src/BGS/done/ch/bigalligator.c b/src/BGS/done/ch/bigalligator.c index ef22ae2f..e78a6e5e 100644 --- a/src/BGS/done/ch/bigalligator.c +++ b/src/BGS/done/ch/bigalligator.c @@ -9,7 +9,7 @@ void func_8038FCB0(Actor *); /* .data */ -ActorInfo D_80390D70 = {0xDC, ACTOR_F6_BIG_ALLIGATOR, 0x397, 0x01, NULL, +ActorInfo D_80390D70 = {MARKER_DC_BIG_ALLIGATOR, ACTOR_F6_BIG_ALLIGATOR, ASSET_397_MODEL_BIG_ALLIGATOR, 0x01, NULL, func_8038FCB0, func_80326224, func_80325888, 0, 0, 0.0f, 0 }; diff --git a/src/BGS/done/ch/code_2270.c b/src/BGS/done/ch/code_2270.c index 0b06cc3b..8bcc1d33 100644 --- a/src/BGS/done/ch/code_2270.c +++ b/src/BGS/done/ch/code_2270.c @@ -23,7 +23,7 @@ void func_80389080(Actor *this); Actor *func_80325888(ActorMarker *, Gfx **, Mtx **, Vtx **); ActorInfo D_80390830 = { - 0x19A, 0x27A, 0x3F8, + MARKER_19A_TIPTUP, ACTOR_27A_TIPTUP, ASSET_3F8_MODEL_TIPTUP, 0, NULL, func_80389080, NULL, func_80325888, 0, 0, 2.5f, 0 diff --git a/src/BGS/done/ch/code_6730.c b/src/BGS/done/ch/code_6730.c index a3900438..edcc2a39 100644 --- a/src/BGS/done/ch/code_6730.c +++ b/src/BGS/done/ch/code_6730.c @@ -9,7 +9,7 @@ void func_8025A58C(u32, u32); void func_80324E88(f32); -ActorInfo D_80390AB0 = {0xC4, ACTOR_136_YELLOW_FLIBBIT_CONTROLLER, 0x00, 0x00, NULL, +ActorInfo D_80390AB0 = {MARKER_C4_YELLOW_FLIBBIT_CTRL, ACTOR_136_YELLOW_FLIBBIT_CONTROLLER, 0x00, 0x00, NULL, func_8038CEE8, NULL, func_80325340, 0, 0, 0.0f, 0 }; diff --git a/src/BGS/done/ch/code_8A60.c b/src/BGS/done/ch/code_8A60.c index f598462b..638d440f 100644 --- a/src/BGS/done/ch/code_8A60.c +++ b/src/BGS/done/ch/code_8A60.c @@ -18,15 +18,15 @@ ActorAnimationInfo D_80390B90[] = { {0xD5, 0.5f}, {0xD5, 1e+8f} }; -ActorInfo D_80390BD8 = {0xF5, 0x14E, 0x3F5, 1, D_80390B90, func_8038EEA4, func_80326224, func_80325888, 0, 0, 0.0f, 0}; -ActorInfo D_80390BFC = {0xFD, 0x1FB, 0x3F5, 1, D_80390B90, func_8038F06C, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo D_80390BD8 = {MARKER_F5_BGS_ELEVATED_WALKWAY_SWITCH, ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038EEA4, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo D_80390BFC = {MARKER_FD_BGS_MAZE_SWITCH, ACTOR_1FB_BGS_MAZE_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038F06C, func_80326224, func_80325888, 0, 0, 0.0f, 0}; void func_8038EE50(void){ f32 sp24[3]; if(func_80304E24(0x14d, sp24)){ jiggySpawn(JIGGY_20_BGS_ELEVATED_WALKWAY, sp24); - func_802C3F04(func_802C4140, 0x4C, *((u32 *) &sp24[0]), *((u32 *) &sp24[1]), *((u32 *) &sp24[2])); + func_802C3F04(func_802C4140, ACTOR_4C_STEAM, *((u32 *) &sp24[0]), *((u32 *) &sp24[1]), *((u32 *) &sp24[2])); } } @@ -35,7 +35,7 @@ void func_8038EEA4(Actor *this){ if(mapSpecificFlags_get(7)){ mapSpecificFlags_set(7, 0); if(!mapSpecificFlags_get(3) || (item_getCount(0) > 0)){ - func_802D68F0(0x2D); + func_802D68F0(45); } } if(!mapSpecificFlags_get(5)){ @@ -55,7 +55,7 @@ void func_8038EEA4(Actor *this){ } //L8038EFB4 if( this->velocity_x != 0.0f && !mapSpecificFlags_get(3) && func_802BB270()){ mapSpecificFlags_set(3,1); - func_802D68F0(0x2D); + func_802D68F0(45); item_set(ITEM_6_HOURGLASS,1); } //L8038EFB4 } @@ -65,7 +65,7 @@ void func_8038F018(void){ if(func_80304E24(0x1fc, sp24)){ jiggySpawn(JIGGY_25_BGS_MAZE, sp24); - func_802C3F04(func_802C4140, 0x4C, *((u32 *) &sp24[0]), *((u32 *) &sp24[1]), *((u32 *) &sp24[2])); + func_802C3F04(func_802C4140, ACTOR_4C_STEAM, *((u32 *) &sp24[0]), *((u32 *) &sp24[1]), *((u32 *) &sp24[2])); } } @@ -74,7 +74,7 @@ void func_8038F06C(Actor *this){ if(mapSpecificFlags_get(8)){ mapSpecificFlags_set(8, 0); if(!mapSpecificFlags_get(0xC) || (item_getCount(0) > 0)){ - func_802D68F0(0xA); + func_802D68F0(10); } } if(!mapSpecificFlags_get(9)){ @@ -94,7 +94,7 @@ void func_8038F06C(Actor *this){ } //L8038EFB4 if( this->velocity_x != 0.0f && !mapSpecificFlags_get(0xC) && func_802BB270()){ mapSpecificFlags_set(0xC,1); - func_802D68F0(0xA); + func_802D68F0(10); item_set(ITEM_6_HOURGLASS,1); } //L8038EFB4 } diff --git a/src/BGS/done/ch/mudhut.c b/src/BGS/done/ch/mudhut.c index e8f47787..7e4250d7 100644 --- a/src/BGS/done/ch/mudhut.c +++ b/src/BGS/done/ch/mudhut.c @@ -23,7 +23,7 @@ ActorAnimationInfo D_80390B30[4] = { u32 D_80390B50[6] = {0xA, 0xA, 0xB, 0xA, 0xA, 0xC}; -ActorInfo D_80390B68 = {0xD5, ACTOR_C_MUD_HUT, ASSET_7D8_MODEL_MM_HUT_TOP, 0x01, D_80390B30, +ActorInfo D_80390B68 = {MARKER_D5_BGS_MUD_HUT, ACTOR_C_MUD_HUT, ASSET_7D8_MODEL_MM_HUT_TOP, 0x01, D_80390B30, func_8038EB8C, func_80326224, func_8038EAD0, 0, 0, 0.0f, 0 }; diff --git a/src/CC/code_0.c b/src/CC/code_0.c index 62733fbf..6c8d43f9 100644 --- a/src/CC/code_0.c +++ b/src/CC/code_0.c @@ -14,28 +14,11 @@ void func_803864D4(Actor *this); /* .data */ ActorInfo D_80389AA0 = { - 0x4B, 0x43, 0x890, 0, NULL, + MARKER_4B_CC_SCREW, ACTOR_43_CLACKER_SCREW, ASSET_890_MODEL_SCREW, 0, NULL, func_803864D4, func_80326224 , func_80325888, 0, 0, 0.0f, 0 }; -/* .rodata */ -extern f32 D_80389EB0; -extern f32 D_80389EB4; -extern f64 D_80389EB8; -extern f64 D_80389EC0; -extern f64 D_80389EC8; -extern f64 D_80389ED0; -extern f64 D_80389ED8; -extern f64 D_80389EE0; -extern f64 D_80389EE8; -extern f64 D_80389EF0; -// 0000 3AC0: 45B1F800 3D4CCCCD 3FE3333333333333 -// 0000 3AD0: 4056800000000000 4066800000000000 -// 0000 3AE0: 400921FB54524550 3FB999999999999A -// 0000 3AF0: 4056800000000000 4066800000000000 -// 0000 3B00: 400921FB54524550 0000000000000000 - /* .code */ void func_803863F0(Actor *this, s32 next_state){ ActorLocal_CC_0 * local = (ActorLocal_CC_0 *)this->local; @@ -59,9 +42,6 @@ void func_803863F0(Actor *this, s32 next_state){ } -#ifndef NONMATCHING -#pragma GLOBAL_ASM("asm/nonmatchings/CC/code_0/func_803864D4.s") -#else void func_803864D4(Actor *this){ ActorMarker *marker = this->marker;//sp5C; ActorLocal_CC_0 * local = (ActorLocal_CC_0 *)this->local; @@ -100,43 +80,44 @@ void func_803864D4(Actor *this){ func_803863F0(this, 4); } - if(this->state == 2){ - if(1.0 <= local->unk8) + if((this->state == 2) && (1.0 <= local->unk8)){ func_803863F0(this, 3); }//L803866B4 - if(this->state == 4){ - if(1.0 <= local->unk8) + if((this->state == 4) && (1.0 <= local->unk8)){ func_803863F0(this, 1); }//L80386714 if(this->state == 1){ - TUPLE_COPY(this->position, sp4C); + this->position[0] = sp4C[0]; + this->position[1] = sp4C[1]; + this->position[2] = sp4C[2]; } else if(this->state == 2) {//L80386734 - sp2C = local->unk8*(f64)1; + sp2C = local->unk8/1.0; if(local->unkC && 0.6 < sp2C){ - FUNC_8030E8B4(SFX_91_METALLIC_SOUND, 1.0f, 32000, this->position, 100, 6000); + FUNC_8030E8B4(SFX_91_METALLIC_SOUND, 1.0, 32000, this->position, 100, 6000); local->unkC = 0; }//L80386798 - sin_result = sinf(((sp2C*90.0)/180.0)*M_PI); - this->position_x = (sp40[0] - sp4C[0])*sin_result + sp4C[0]; - this->position_y = (sp40[1] - sp4C[1])*sin_result + sp4C[1]; - this->position_z = (sp40[2] - sp4C[2])*sin_result + sp4C[2]; + sin_result = sinf(((sp2C*90.0)/180.0)*BAD_PI); + this->position_x = sp4C[0] + (sp40[0] - sp4C[0])*sin_result; + this->position_y = sp4C[1] + (sp40[1] - sp4C[1])*sin_result; + this->position_z = sp4C[2] + (sp40[2] - sp4C[2])*sin_result; }//L80386818 else if(this->state == 3){ - TUPLE_COPY(this->position, sp40); + this->position[0] = sp40[0]; + this->position[1] = sp40[1]; + this->position[2] = sp40[2]; } else if(this->state == 4){ - sp2C = 1 - local->unk8*(f64)1; + sp2C = 1 - local->unk8/1.0; if(local->unkC && sp2C < 0.1){ local->unkC = 0; }//L8038688C - sin_result = sinf(((sp2C*90.0)/180.0)*M_PI); - this->position_x = (sp40[0] - sp4C[0])*sin_result + sp4C[0]; - this->position_y = (sp40[1] - sp4C[1])*sin_result + sp4C[1]; - this->position_z = (sp40[2] - sp4C[2])*sin_result + sp4C[2]; + sin_result = sinf(((sp2C*90.0)/180.0)*BAD_PI); + this->position_x = sp4C[0] + (sp40[0] - sp4C[0])*sin_result; + this->position_y = sp4C[1] + (sp40[1] - sp4C[1])*sin_result; + this->position_z = sp4C[2] + (sp40[2] - sp4C[2])*sin_result; }//L80386904 } -#endif diff --git a/src/core2/code_45310.c b/src/core2/code_45310.c index 801ffb79..d48743d0 100644 --- a/src/core2/code_45310.c +++ b/src/core2/code_45310.c @@ -35,7 +35,7 @@ extern ActorInfo D_80367130 = { 0, NULL, func_802CCC5C, NULL, func_802CCA7C, 0, 0, 1.0f, 0 -}; +}; /* .code */ diff --git a/src/core2/code_7AF80.c b/src/core2/code_7AF80.c index 4de18dc3..2c6a79bc 100644 --- a/src/core2/code_7AF80.c +++ b/src/core2/code_7AF80.c @@ -104,9 +104,7 @@ s32 pad_80382138; s32 D_8038213C; s32 D_80382140; s32 D_80382144; -s32 D_80382148; -s16 D_80382150[0x48]; -u32 D_803821E0[0x5B]; + /* .code */ @@ -598,15 +596,15 @@ void * func_80303800(f32 volume_p1[3], f32 volume_p2[3], f32 arg2[3], u32 arg3) //Struct66s * #ifndef NONMATCHING -void * func_80303960(f32 volume_p1[3], f32 volume_p2[3], f32 radius, f32 arg3[3], s32 arg4, u32 arg5); +Struct66s * func_80303960(f32 volume_p1[3], f32 volume_p2[3], f32 radius, f32 arg3[3], s32 arg4, u32 flags); #pragma GLOBAL_ASM("asm/nonmatchings/core2/code_7AF80/func_80303960.s") #else -void * func_80303960(f32 volume_p1[3], f32 volume_p2[3], f32 radius, f32 arg3[3], s32 arg4, u32 arg5) { +Struct66s * func_80303960(f32 volume_p1[3], f32 volume_p2[3], f32 radius, f32 arg3[3], s32 arg4, u32 flags) { s32 cube_indx[3]; s32 min[3]; s32 max[3]; - void *temp_v0; - void *var_s5; + Struct66s *temp_v0; + Struct66s *var_s5; var_s5 = NULL; cube_volumeToIndices(min, max, volume_p1, volume_p2, radius + D_80381FA0.unk4); @@ -629,12 +627,12 @@ void * func_80303960(f32 volume_p1[3], f32 volume_p2[3], f32 radius, f32 arg3[3] #endif //Struct66s * -void * func_80303AF0(f32 position[3], f32 radius, f32 arg2[3], u32 arg3) { +Struct66s * func_80303AF0(f32 position[3], f32 radius, f32 arg2[3], u32 arg3) { s32 cube_indx[3]; s32 min[3]; s32 max[3]; - void *temp_v0; - void *var_s5; + Struct66s *temp_v0; + Struct66s *var_s5; var_s5 = NULL; cube_volumeToIndices(min, max, position, position, radius + D_80381FA0.unk4); @@ -712,31 +710,24 @@ void func_80303F6C(s32 indx, s32 arg1){ D_80381FE8[indx] = arg1; } -#ifndef NONMATCHING -Prop *func_80303F7C(ActorMarker *arg0, f32 arg1, s32 arg2, s32 arg3); -#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_7AF80/func_80303F7C.s") -#else ActorProp *func_80303F7C(ActorMarker *arg0, f32 arg1, s32 arg2, s32 arg3) { s32 temp_v1; s32 phi_a0; + static s32 D_80382148; - // phi_a0 = D_80382148; if (arg3 == 0) { func_80303D78(arg0, arg1, arg2); D_80382148 = 0; return 0; } else{ - phi_a0 = D_80382148; - temp_v1 = *(&D_803820B8 + phi_a0); - phi_a0++; + temp_v1 = D_803820B8[D_80382148]; if (temp_v1 != 0) { - D_80382148 = phi_a0; + D_80382148++; } return temp_v1; } } -#endif ActorProp *func_80303FE4(ActorMarker *arg0, f32 arg1, s32 arg2) { func_80303D78(arg0, arg1, arg2); @@ -1040,10 +1031,10 @@ s32 func_80304DB8(NodeProp *arg0) { return arg0->unkC_22; } -s32 func_80304DD0(s32 arg0, s32 *arg1) { +s32 func_80304DD0(enum actor_e actor_id, s32 *arg1) { NodeProp *temp_v0; - temp_v0 = func_803049CC(arg0, 0); + temp_v0 = func_803049CC(actor_id, 0); if (temp_v0 != 0) { arg1[0] = (s32) temp_v0->x; arg1[1] = (s32) temp_v0->y; @@ -1384,11 +1375,11 @@ void func_80305D38(void){ #pragma GLOBAL_ASM("asm/nonmatchings/core2/code_7AF80/func_80305D94.s") // void func_80305D94(void){ // Struct_core2_7AF80_1 * i; -// s32 j; +// u32 j; // s32 k; // if(D_8036A9BC != NULL){ -// for(i = D_8036A9BC; i < D_8036A9BC + D_8036A9B8; i++){ -// free(i->unk8); +// for(j = 0; j < D_8036A9B8; j++){ +// free((D_8036A9BC + j)->unk8); // } // free(D_8036A9BC); // D_8036A9BC = NULL; @@ -1397,7 +1388,7 @@ void func_80305D38(void){ // if(D_8036A9C8 != NULL){ // for(j = 0; j < D_8036A9C4; j++){ -// free(D_8036A9C8[j].unk8); +// free((D_8036A9C8 + j)->unk8); // } // free(D_8036A9C8); // D_8036A9C8 = NULL; @@ -1405,12 +1396,12 @@ void func_80305D38(void){ // } // if(D_8036A9D4 != NULL){ -// for(k = 0; k < (u32)D_8036A9D0; k++){ -// free(D_8036A9D4[k].unk8); +// for(j = 0; j < D_8036A9D0; j++){ +// free((D_8036A9D4 + j)->unk8); // } // free(D_8036A9D4); -// D_8036A9D4 = NULL; // D_8036A9D0 = 0; +// D_8036A9D4 = NULL; // } // } @@ -2176,43 +2167,43 @@ bool func_803082D8(Cube *arg0, s32 *arg1, bool arg2, bool arg3) { // goto loop_7; // } -s32 func_803084F0(s32 arg0){ +enum actor_e func_803084F0(s32 arg0){ s32 var_v1; switch (arg0) { - case 1: var_v1 = 1; break; - case 0x2: var_v1 = 2; break; - case 0x3: var_v1 = 0x15; break; - case 0x4: var_v1 = 0x76; break; - case 0x5: var_v1 = 0x77; break; - case 0x6: var_v1 = 0x78; break; - case 0x7: var_v1 = 0x79; break; - case 0x8: var_v1 = 0x7A; break; - case 0x9: var_v1 = 0x7B; break; - case 0xA: var_v1 = 0x7C; break; - case 0xB: var_v1 = 0x7D; break; - case 0xC: var_v1 = 0x7E; break; - case 0xD: var_v1 = 0x7F; break; - case 0xE: var_v1 = 0x75; break; - case 0xF: var_v1 = 0x74; break; - case 0x10: var_v1 = 0x73; break; - case 0x11: var_v1 = 0x72; break; - case 0x12: var_v1 = 0x103; break; - case 0x13: var_v1 = 0x104; break; - case 0x14: var_v1 = 0x105; break; - case 0x15: var_v1 = 0x106; break; - case 0x16: var_v1 = 0x107; break; - case 0x17: var_v1 = 0x158; break; - case 0x18: var_v1 = 0x15A; break; - case 0x19: var_v1 = 0x15C; break; - case 0x5B: var_v1 = 0x1CD; break; - case 0x5C: var_v1 = 0x1CE; break; - case 0x5D: var_v1 = 0x1CF; break; - case 0x5E: var_v1 = 0x1D0; break; - case 0x5F: var_v1 = 0x1D1; break; - case 0x60: var_v1 = 0x1D2; break; - case 0x61: var_v1 = 0x1D3; break; - case 0x62: var_v1 = 0x1D4; break; - case 0x65: var_v1 = 0x379; break; + case 1: var_v1 = ACTOR_1_UNKNOWN; break; + case 0x2: var_v1 = ACTOR_2_UNKNOWN; break; + case 0x3: var_v1 = ACTOR_15_UNKNOWN; break; + case 0x4: var_v1 = ACTOR_76_UNKNOWN; break; + case 0x5: var_v1 = ACTOR_77_UNKNOWN; break; + case 0x6: var_v1 = ACTOR_78_UNKNOWN; break; + case 0x7: var_v1 = ACTOR_79_UNKNOWN; break; + case 0x8: var_v1 = ACTOR_7A_UNKNOWN; break; + case 0x9: var_v1 = ACTOR_7B_UNKNOWN; break; + case 0xA: var_v1 = ACTOR_7C_UNKNOWN; break; + case 0xB: var_v1 = ACTOR_7D_UNKNOWN; break; + case 0xC: var_v1 = ACTOR_7E_UNKNOWN; break; + case 0xD: var_v1 = ACTOR_7F_UNKNOWN; break; + case 0xE: var_v1 = ACTOR_75_UNKNOWN; break; + case 0xF: var_v1 = ACTOR_74_UNKNOWN; break; + case 0x10: var_v1 = ACTOR_73_UNKNOWN; break; + case 0x11: var_v1 = ACTOR_72_UNKNOWN; break; + case 0x12: var_v1 = ACTOR_103_UNKNOWN; break; + case 0x13: var_v1 = ACTOR_104_UNKNOWN; break; + case 0x14: var_v1 = ACTOR_105_UNKNOWN; break; + case 0x15: var_v1 = ACTOR_106_UNKNOWN; break; + case 0x16: var_v1 = ACTOR_107_UNKNOWN; break; + case 0x17: var_v1 = ACTOR_158_UNKNOWN; break; + case 0x18: var_v1 = ACTOR_15A_UNKNOWN; break; + case 0x19: var_v1 = ACTOR_15C_UNKNOWN; break; + case 0x5B: var_v1 = ACTOR_1CD_UNKNOWN; break; + case 0x5C: var_v1 = ACTOR_1CE_UNKNOWN; break; + case 0x5D: var_v1 = ACTOR_1CF_UNKNOWN; break; + case 0x5E: var_v1 = ACTOR_1D0_UNKNOWN; break; + case 0x5F: var_v1 = ACTOR_1D1_UNKNOWN; break; + case 0x60: var_v1 = ACTOR_1D2_UNKNOWN; break; + case 0x61: var_v1 = ACTOR_1D3_UNKNOWN; break; + case 0x62: var_v1 = ACTOR_1D4_UNKNOWN; break; + case 0x65: var_v1 = ACTOR_379_UNKNOWN; break; default: case 0: var_v1 = 0; } @@ -2305,6 +2296,10 @@ bool func_803088C8(s32 arg0) { return (D_8036ABAC[i] == -1) ? FALSE : TRUE; } +/* .bss */ //must be defined AFTER func_80303F7C for local static alignment +s16 D_80382150[0x48]; + +/* .code */ void func_8030895C(s32 arg0){ D_80382150[D_8036ABD4] = arg0; D_8036ABD4++; @@ -2391,6 +2386,10 @@ void func_80308D2C(Gfx **gfx, Mtx **mtx, Vtx **vtx) { func_8032F464(0); } +/* .bss */ +u32 D_803821E0[0x5B]; + +/* .code */ void func_80308EC8(void){ s32 i; for(i = 0; i < 0x5B; i++){ diff --git a/subyaml/CC.us.v10.yaml b/subyaml/CC.us.v10.yaml index 48bb1e15..5dd649d1 100644 --- a/subyaml/CC.us.v10.yaml +++ b/subyaml/CC.us.v10.yaml @@ -53,7 +53,7 @@ segments: - [0x00003810, .data, code_1F70] - [0x00003840, bin, ch/sawblade] - [0x00003A50, .data, code_3400] - - [0x00003AC0, bin, rodata_0] # - [0x00003AC0, .rodata, code_0] + - [0x00003AC0, .rodata, code_0] - [0x00003B10, .rodata, code_530] - [0x00003B20, .rodata, ch/tooth] - [0x00003B30, .rodata, code_1B90]