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