progress core2 .data section

This commit is contained in:
Banjo Kazooie
2022-11-29 16:54:55 -06:00
parent a7adf1fab1
commit 8badd5bb3e
27 changed files with 665 additions and 590 deletions

View File

@@ -846,6 +846,7 @@ segments:
- [0x1024630, c, code_CECD0] #DONE - [0x1024630, c, code_CECD0] #DONE
- [0x10249F0, c, code_CF090] #DONE - [0x10249F0, c, code_CF090] #DONE
- [0x1024D40, c, code_CF3E0] #DONE - [0x1024D40, c, code_CF3E0] #DONE
- [0x1024F50, c, code_CF5F0] #DONE
- [0x1025140, c, ch/clankerwhipcrack] #DONE - [0x1025140, c, ch/clankerwhipcrack] #DONE
- [0x10253C0, c, ch/code_CFA60] #DONE - [0x10253C0, c, ch/code_CFA60] #DONE
- [0x1025B20, c, ch/clucker] #DONE - [0x1025B20, c, ch/clucker] #DONE
@@ -1034,7 +1035,7 @@ segments:
- [0x103CDF0, .data, code_9D640] - [0x103CDF0, .data, code_9D640]
- [0x103CF30, .data, code_9E370] - [0x103CF30, .data, code_9E370]
- [0x103CFA0, .data, code_A4D00] - [0x103CFA0, .data, code_A4D00]
- [0x103D180, bin, data_E7820] - [0x103D180, bin, data_E7820] # .data, code_A5BC0 (file needs to be broken?)
- [0x103D1D0, .data, code_A5BC0] - [0x103D1D0, .data, code_A5BC0]
- [0x103D200, .data, code_ABC00] - [0x103D200, .data, code_ABC00]
- [0x103E340, .data, code_AC520] - [0x103E340, .data, code_AC520]
@@ -1064,26 +1065,30 @@ segments:
- [0x1041090, bin, data_1041090] # .data, code_CD6E0] - [0x1041090, bin, data_1041090] # .data, code_CD6E0]
- [0x10410C0, .data, code_CECD0] - [0x10410C0, .data, code_CECD0]
- [0x10410D0, .data, code_CF090] - [0x10410D0, .data, code_CF090]
- [0x1041100, bin, data_1041100] # .data, code_CF3E0] - [0x1041100, .data, code_CF3E0]
- [0x10411C0, .data, code_CF3E0] - [0x10411C0, .data, code_CF5F0]
- [0x10411E0, .data, ch/clankerwhipcrack] - [0x10411E0, .data, ch/clankerwhipcrack]
- [0x1041210, .data, ch/code_CFA60] - [0x1041210, .data, ch/code_CFA60]
- [0x1041240, .data, ch/clucker] - [0x1041240, .data, ch/clucker]
- [0x1041270, bin, data_EB910] # .data, code_D0CA0] - [0x1041270, .data, code_D0CA0]
- [0x1041310, .data, code_D2180] - [0x1041310, .data, code_D2180]
- [0x1041460, .data, ch/firefx] - [0x1041460, .data, ch/firefx]
- [0x1041490, .data, ch/drips] - [0x1041490, .data, ch/drips]
- [0x1041520, .data, ch/icecube] - [0x1041520, .data, ch/icecube]
- [0x10415B0, .data, ch/ghost] - [0x10415B0, .data, ch/ghost]
- [0x1041650, .data, ch/flotsam] - [0x1041650, .data, ch/flotsam]
- [0x10416F0, bin, data_EBD90] - [0x10416F0, .data, code_D5D10]
- [0x1041770, .data, code_D5FD0]
- [0x10417F0, .data, code_D6180]
- [0x1041870, .data, code_D6600]
- [0x10418E0, .data, code_D7040] - [0x10418E0, .data, code_D7040]
- [0x1041950, bin, data_EBFF0] - [0x1041950, .data, code_D7D10]
- [0x1041A60, .data, code_D89E0]
- [0x1041AD0, .data, ch/whipcrack] - [0x1041AD0, .data, ch/whipcrack]
- [0x1041B00, .data, code_DA3A0] - [0x1041B00, .data, code_DA3A0]
- [0x1041B80, .data, code_DA760] - [0x1041B80, .data, code_DA760]
- [0x1041BB0, bin, code_EC250] - [0x1041BB0, .data, code_DAAA0]
- [0x1041CB0, bin, code_EC350] #.data, code_DB010] - [0x1041CB0, .data, code_DB010]
- [0x1042790, .data, code_DC4B0] - [0x1042790, .data, code_DC4B0]
- [0x10427C0, ".rodata", animctrl] - [0x10427C0, ".rodata", animctrl]
- [0x10427F0, .rodata, code_AD0] - [0x10427F0, .rodata, code_AD0]

View File

@@ -13,15 +13,16 @@
enum bkprog_e{ enum bkprog_e{
// BKPROG_03_ "1st Note Text"}, -- 0x00 > 3 BKPROG_3_MUSIC_NOTE_TEXT = 0x3,
// BKPROG_04_ "1st Mumbo Token Text"}, -- 0x00 > 4 BKPROG_4_MUMBO_TOKEN_TEXT,
// BKPROG_05_ "1st Egg Text"}, -- 0x00 > 5 BKPROG_5_BLUE_EGG_TEXT,
// BKPROG_06_ "1st Red Feather Text"}, -- 0x00 > 6 BKPROG_6_RED_FEATHER_TEXT,
// BKPROG_07_ "1st Gold Feather Text"}, -- 0x00 > 7 BKPROG_7_GOLD_FEATHER_TEXT,
// BKPROG_08_ "1st Gold Bullion Text"}, -- 0x01 > 1 (flipped, but only for this byte, no idea why) BKPROG_8_GOLD_BULLION_TEXT,
// BKPROG_09_ "1st Orange Text"}, -- 0x01 > 0 (flipped, but only for this byte, no idea why) BKPROG_9_ORANGE_TEXT,
// BKPROG_0A_ "1st Honeycomb Text"}, -- 0x01 > 2 BKPROG_A_HONEYCOMB_TEXT,
// BKPROG_0B_ "1st Empty Honeycomb Text"}, -- 0x01 > 3 BKPROG_B_EMPTY_HONEYCOMB_TEXT,
BKPROG_C_EXTRA_LIFE_TEXT,
// BKPROG_0C_ "1st Extra Life Text"}, // BKPROG_0C_ "1st Extra Life Text"},
// BKPROG_0D_ "1st Beehive Text"}, // BKPROG_0D_ "1st Beehive Text"},
BKPROG_D_BEEHIVE_TEXT = 0xD, BKPROG_D_BEEHIVE_TEXT = 0xD,
@@ -179,9 +180,8 @@ enum bkprog_e{
BKPROG_A8_HAS_DIED, BKPROG_A8_HAS_DIED,
BKPROG_A9_HAS_TOUCHED_RBB_OVEN, BKPROG_A9_HAS_TOUCHED_RBB_OVEN,
BKPROG_AA_HAS_TOUCHED_CCW_BRAMBLE_FIELD, BKPROG_AA_HAS_TOUCHED_CCW_BRAMBLE_FIELD,
// {index=0xAA, type="Prog", level=8, name="1st CCW Bramble Field Text"}, BKPROG_AB_SWIM_OILY_WATER,
// {index=0xAB, type="Prog", level=9, name="Oily Water Surface Text"}, BKPROG_AC_DIVE_OILY_WATER,
// {index=0xAC, type="Prog", level=9, name="Oily Water Underwater Text"},
// {index=0xAD, type="Prog", level=6, name="Cheato: BLUEEGGS Unlocked"}, // {index=0xAD, type="Prog", level=6, name="Cheato: BLUEEGGS Unlocked"},
// {index=0xAE, type="Prog", level=6, name="Cheato: REDFEATHERS Unlocked"}, // {index=0xAE, type="Prog", level=6, name="Cheato: REDFEATHERS Unlocked"},
// {index=0xAF, type="Prog", level=6, name="Cheato: GOLDFEATHERS Unlocked"}, // {index=0xAF, type="Prog", level=6, name="Cheato: GOLDFEATHERS Unlocked"},
@@ -230,7 +230,7 @@ enum bkprog_e{
// {index=0xDA, type="Prog", level=6, name="??FF PATTERN 2^7"}, // {index=0xDA, type="Prog", level=6, name="??FF PATTERN 2^7"},
BKPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE = 0xDC, BKPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE = 0xDC,
// {index=0xDD, type="Prog", level=8, name="1st CCW Icy Water Text"}, BKPROG_DD_HAS_TOUCHED_ICY_WATER,
// {index=0xDF, type="Prog", level=6, name="Remove Puzzle Piece Text"}, // {index=0xDF, type="Prog", level=6, name="Remove Puzzle Piece Text"},
// {index=0xE0, type="Prog", level=6, name="Place All Puzzle Pieces Text"}, // {index=0xE0, type="Prog", level=6, name="Place All Puzzle Pieces Text"},

View File

@@ -33,6 +33,7 @@ typedef struct{
t n[2][3];\ t n[2][3];\
} }
#define KEY_VALUE_PAIR(T1, T2) struct { T1 key; T2 value; }
typedef struct variable_length_array{ typedef struct variable_length_array{
s32 elem_size; s32 elem_size;

View File

@@ -45,9 +45,6 @@ s32 RBB_D_80390DD0[3] = {0xDE, 0xA7, 0x71};
s32 D_80390DDC[4] = {0xFF, 0xFF, 0xFF, 0xFF}; s32 D_80390DDC[4] = {0xFF, 0xFF, 0xFF, 0xFF};
s32 D_80390DEC[4] = {0,0,0,0}; s32 D_80390DEC[4] = {0,0,0,0};
/* .rodata */
/* .bss */ /* .bss */
f32 D_803912A0[3]; f32 D_803912A0[3];

View File

@@ -4,14 +4,6 @@
extern void func_80288F78(Actor*, f32, s32); extern void func_80288F78(Actor*, f32, s32);
typedef struct {
s16 unk0;
//u8 pad2[2];
void (*unk4)(Actor *, s32);
s32 pad8;
s32 padC;
}Struct_SM_0;
/* .code */ /* .code */
void SM_func_803863F0(Actor *this, s32 arg1) { void SM_func_803863F0(Actor *this, s32 arg1) {
func_80288F78(this, 0.20f, 0xF280FA); func_80288F78(this, 0.20f, 0xF280FA);
@@ -27,7 +19,12 @@ void SM_func_80386420(Actor *arg0, s32 arg1) {
} }
/* .data */ /* .data */
Struct_SM_0 D_8038AAC0[2] = { Struct63s D_8038AAC0[] = {
{0x20A, SM_func_803863F0, 0, 0}, {0x20A, SM_func_803863F0},
{0x208, SM_func_80386420, 0, 0}, 0
};
Struct63s D_8038AAD0[] = {
{0x208, SM_func_80386420},
0
}; };

View File

@@ -11,20 +11,6 @@ extern f32 D_80275D24; //aspect
extern f32 D_80275D28; //near extern f32 D_80275D28; //near
extern f32 D_80275D2C; //far extern f32 D_80275D2C; //far
/* .rodata */
extern f64 D_802779F0;
extern f32 D_80277A08;
extern f64 D_80277A30;
extern f32 D_80277A00;
extern f32 D_80277A04;
extern f32 D_80277A0C;
extern f32 D_80277A10;
extern f32 D_80277A14;
extern f32 D_80277A18;
extern f32 D_80277A1C;
extern f32 D_80277A20;
/* .data */ /* .data */
f32 D_80280EA0[3]; f32 D_80280EA0[3];
f32 D_80280EB0[3]; f32 D_80280EB0[3];

View File

@@ -85,12 +85,6 @@ s16 D_80364580[] = {
0 0
}; };
/* .rodata */
extern f32 D_80374CF0;
extern f64 D_80374CF8;
extern f64 D_80374D00;
extern f32 D_80374D08;
/*.bss*/ /*.bss*/
struct { struct {
u8 unk0; u8 unk0;

View File

@@ -11,7 +11,6 @@ ActorInfo D_80367578 = { MARKER_1E9_MUMBO_COST_SIGN, ACTOR_36A_15_MUMBO_TOKEN_SI
ActorInfo D_8036759C = { MARKER_1E9_MUMBO_COST_SIGN, ACTOR_369_20_MUMBO_TOKEN_SIGN, ASSET_304_MODEL_20_MUMBO_TOKEN_SIGN, 0x0, 0x0, func_802D2D00, func_80326224, func_80325888, 0, 0, 0.0f, 0}; ActorInfo D_8036759C = { MARKER_1E9_MUMBO_COST_SIGN, ACTOR_369_20_MUMBO_TOKEN_SIGN, ASSET_304_MODEL_20_MUMBO_TOKEN_SIGN, 0x0, 0x0, func_802D2D00, func_80326224, func_80325888, 0, 0, 0.0f, 0};
ActorInfo D_803675C0 = { MARKER_1E9_MUMBO_COST_SIGN, ACTOR_36C_25_MUMBO_TOKEN_SIGN, ASSET_305_MODEL_25_MUMBO_TOKEN_SIGN, 0x0, 0x0, func_802D2D00, func_80326224, func_80325888, 0, 0, 0.0f, 0}; ActorInfo D_803675C0 = { MARKER_1E9_MUMBO_COST_SIGN, ACTOR_36C_25_MUMBO_TOKEN_SIGN, ASSET_305_MODEL_25_MUMBO_TOKEN_SIGN, 0x0, 0x0, func_802D2D00, func_80326224, func_80325888, 0, 0, 0.0f, 0};
/* .rodata */
void func_802D2D00(Actor *this) { void func_802D2D00(Actor *this) {
if (!this->unk16C_4) { if (!this->unk16C_4) {
if( func_8031FF1C(this->modelCacheIndex - ACTOR_368_5_MUMBO_TOKEN_SIGN + BKPROG_90_PAID_TERMITE_COST) if( func_8031FF1C(this->modelCacheIndex - ACTOR_368_5_MUMBO_TOKEN_SIGN + BKPROG_90_PAID_TERMITE_COST)

View File

@@ -159,8 +159,6 @@ Struct_core2_82000_0 D_8036ABE0[] = {
0 0
}; };
/* .rodata */
/* .bss */ /* .bss */
struct { struct {
void *unk0; void *unk0;

View File

@@ -29,12 +29,6 @@ extern u8 D_8037DCCE[];
/* .data */ /* .data */
enum actor_e D_8036DDD0[] = {0, 0x184, 0x185, 0x186, -1}; enum actor_e D_8036DDD0[] = {0, 0x184, 0x185, 0x186, -1};
/* .rodata */
extern f32 D_80378D40;
extern f32 D_80378D44;
// 3FE66666
// 3F4CCCCD
/* .bss */ /* .bss */
u8 D_80383190; u8 D_80383190;

View File

@@ -2,9 +2,6 @@
#include "functions.h" #include "functions.h"
#include "variables.h" #include "variables.h"
/* .rodata */
extern f32 D_80379170;
/* .code */ /* .code */
f32 func_8034A9D0(f32 arg0[4], f32 arg1) { f32 func_8034A9D0(f32 arg0[4], f32 arg1) {
if (arg0[1] <= arg1) { if (arg0[1] <= arg1) {

View File

@@ -33,13 +33,6 @@ typedef struct {
s32 unk8C; s32 unk8C;
}Struct_core2_C4B0_0; }Struct_core2_C4B0_0;
/* .rodata */
extern f64 D_80374760;
extern f64 D_80374768;
extern f64 D_80374770;
extern f64 D_80374778;
extern f64 D_80374780;
/* .bss */ /* .bss */
f32 D_8037C1F0[2]; f32 D_8037C1F0[2];
f32 D_8037C1F8[2]; f32 D_8037C1F8[2];

View File

@@ -34,17 +34,6 @@ typedef struct {
f32 unk38; f32 unk38;
}Struct_core2_C89C0_0; }Struct_core2_C89C0_0;
/* .rodata */
extern f32 D_80379300;
extern f32 D_80379304;
extern f32 D_80379308;
extern f64 D_80379310;
extern f32 D_80379318;
extern f64 D_80379320;
extern f32 D_80379328;
extern f32 D_8037932C;
extern f32 D_80379330;
/* .bss */ /* .bss */
struct { struct {
void *unk0; //2D_fish_bin void *unk0; //2D_fish_bin

View File

@@ -16,7 +16,6 @@ typedef struct {
/* .bss */ /* .bss */
Struct_Core2_CB610_0 D_803861C0[40]; Struct_Core2_CB610_0 D_803861C0[40];
/* .rodata */
void func_80352830(void){ void func_80352830(void){
s32 i; s32 i;
for(i = 1; i < 40; i++){ for(i = 1; i < 40; i++){

View File

@@ -2,34 +2,68 @@
#include "functions.h" #include "functions.h"
#include "variables.h" #include "variables.h"
typedef struct { typedef KEY_VALUE_PAIR(s16, s16) unkD_80372730;
s16 a;
s16 b; unkD_80372730 D_80372730[] = {
} unkD_80372730; { BKPROG_AB_SWIM_OILY_WATER, 0xBA1},
// Needs to be a struct to match, s16 array doesn't work { BKPROG_AC_DIVE_OILY_WATER, 0xBA2},
extern unkD_80372730 D_80372730[]; { BKPROG_AA_HAS_TOUCHED_CCW_BRAMBLE_FIELD, 0xCE6},
// 0104 1100: 00 AB 0B A1 00 AC 0B A2 00 AA 0C E6 00 0F 0C 85 ........ ........ { BKPROG_F_HAS_TOUCHED_PIRAHANA_WATER, 0xC85},
// 0104 1110: 00 A9 0B A0 00 10 0A 7E 00 14 0C 11 00 0F 0C 85 .......~ ........ { BKPROG_A9_HAS_TOUCHED_RBB_OVEN, 0xBA0},
// 0104 1120: 00 86 0A E1 00 DD 0C E7 00 03 0D 9C 00 04 0D 9D ........ ........ { BKPROG_10_HAS_TOUCHED_SAND_EEL_SAND, 0xA7E},
// 0104 1130: 00 05 0D 9E 00 06 0D 9F 00 07 0D A0 00 08 0B 46 ........ .......F { BKPROG_14_HAS_TOUCHED_FP_ICY_WATER, 0xC11},
// 0104 1140: 00 09 0A 21 00 0A 0D A1 00 0B 0D A2 00 0C 0D A3 ...!.... ........ { BKPROG_F_HAS_TOUCHED_PIRAHANA_WATER, 0xC85},
// 0104 1150: 00 BE 0F A8 00 BF 0F A9 00 C0 0F AA 00 95 0B 50 ........ .......P { BKPROG_86_HAS_TOUCHED_MMM_THORN_HEDGE, 0xAE1},
// 0104 1160: 00 A7 0F 7B FF FF FF FF { BKPROG_DD_HAS_TOUCHED_ICY_WATER, 0xCE7},
{ BKPROG_3_MUSIC_NOTE_TEXT, 0xD9C},
{ BKPROG_4_MUMBO_TOKEN_TEXT, 0xD9D},
{ BKPROG_5_BLUE_EGG_TEXT, 0xD9E},
{ BKPROG_6_RED_FEATHER_TEXT, 0xD9F},
{ BKPROG_7_GOLD_FEATHER_TEXT, 0xDA0},
{ BKPROG_8_GOLD_BULLION_TEXT, 0xB46},
{ BKPROG_9_ORANGE_TEXT, 0xA21},
{ BKPROG_A_HONEYCOMB_TEXT, 0xDA1},
{ BKPROG_B_EMPTY_HONEYCOMB_TEXT, 0xDA2},
{ BKPROG_C_EXTRA_LIFE_TEXT, 0xDA3},
{ BKPROG_BE_CHEATO_BLUEEGGS, 0xFA8},
{ BKPROG_BF_CHEATO_REDFEATHERS, 0xFA9},
{ BKPROG_C0_CHEATO_GOLDFEATHERS, 0xFAA},
{0x95, 0xB50},
{ BKPROG_A7_NEAR_PUZZLE_PODIUM_TEXT, 0xF7B},
{ -1, -1}
};
extern unkD_80372730 D_80372798[]; unkD_80372730 D_80372798[] = {
// 00 9E 0B A3 00 9F 0C E8 ...{.... ........ {0x9E, 0xBA3},
// 0104 1170: 00 A0 10 32 00 A1 10 33 00 A2 10 34 00 A3 10 35 ...2...3 ...4...5 {0x9F, 0xCE8},
// 0104 1180: 00 A4 10 36 00 A5 10 37 00 A6 10 38 00 A7 10 39 ...6...7 ...8...9 {0xA0, 0x1032},
// 0104 1190: 00 A8 10 3A 00 A9 10 3B 00 AA 10 3C 00 AB 10 3D ...:...; ...<...= {0xA1, 0x1033},
// 0104 11A0: 00 AC 0A 88 00 AD 0A E2 00 AE 0C 8B 00 AF 0C 8C ........ ........ {0xA2, 0x1034},
// 0104 11B0: 00 B0 0F BD 00 C2 0E 36 00 C5 0D B6 FF FF FF FF .......6 ........ {0xA3, 0x1035},
{0xA4, 0x1036},
{0xA5, 0x1037},
{0xA6, 0x1038},
{0xA7, 0x1039},
{0xA8, 0x103A},
{0xA9, 0x103B},
{0xAA, 0x103C},
{0xAB, 0x103D},
{0xAC, 0xA88},
{0xAD, 0xAE2},
{0xAE, 0xC8B},
{0xAF, 0xC8C},
{0xB0, 0xFBD},
{0xC2, 0xE36},
{0xC5, 0xDB6},
{ -1, -1}
};
s32 func_80356370(unkD_80372730 *arg0, s32 arg1) { static s32 __findIndex(unkD_80372730 *arg0, s32 arg1) {
s32 phi_v1 = 0; s32 phi_v1 = 0;
while (arg0[phi_v1].a >= 0) { while (arg0[phi_v1].key >= 0) {
if (arg1 == arg0[phi_v1].a) { if (arg1 == arg0[phi_v1].key) {
return phi_v1; return phi_v1;
} }
phi_v1++; phi_v1++;
@@ -37,15 +71,15 @@ s32 func_80356370(unkD_80372730 *arg0, s32 arg1) {
return -1; return -1;
} }
s32 func_803563B8(s32 arg0, s32 arg1) { s32 func_803563B8(enum bkprog_e arg0, s32 arg1) {
s32 temp_v0; s32 index;
if (func_8031FF1C(arg0) != 0) { if (func_8031FF1C(arg0) != 0) {
return 0; return 0;
} else { } else {
temp_v0 = func_80356370(D_80372730, arg0); index = __findIndex(D_80372730, arg0);
if (temp_v0 != -1) { if (index != -1) {
if (func_80311480(D_80372730[temp_v0].b, arg1, 0, 0, 0, 0) != 0) { if (func_80311480(D_80372730[index].value, arg1, 0, 0, 0, 0) != 0) {
func_80320004(arg0, 1); func_80320004(arg0, 1);
} }
return func_8031FF1C(arg0); return func_8031FF1C(arg0);
@@ -63,14 +97,14 @@ void func_8035646C(s32 arg0) {
} }
s32 func_8035648C(s32 arg0, s32 arg1) { s32 func_8035648C(s32 arg0, s32 arg1) {
s32 temp_v0; s32 index;
if (func_803203FC() != 0) { if (func_803203FC() != 0) {
return 0; return 0;
} else { } else {
temp_v0 = func_80356370(D_80372798, arg0); index = __findIndex(D_80372798, arg0);
if (temp_v0 != -1) { if (index != -1) {
if (func_80311480(D_80372798[temp_v0].b, arg1, 0, 0, 0, 0) != 0) { if (func_80311480(D_80372798[index].value, arg1, 0, 0, 0, 0) != 0) {
func_803204E4(arg0, 1); func_803204E4(arg0, 1);
} }
return func_803203FC(arg0); return func_803203FC(arg0);
@@ -90,89 +124,3 @@ void func_80356540(s32 arg0) {
void func_80356560(s32 arg0) { void func_80356560(s32 arg0) {
func_8035648C(arg0, 0xE); func_8035648C(arg0, 0xE);
} }
/* BREAK */
//THIS VALUE
#ifndef CORE2_CODE_CRC2
#define CORE2_CODE_CRC2 0x9E44C2DC
#endif
// bk_boot segment start (skipping entry function)
extern u8 boot_bk_boot_ROM_START[];
// bk_boot segment end
extern u8 boot_bk_boot_ROM_END[];
extern u8 crc_ROM_START[];
// bk_boot segment crc next word
s32 D_803727F0 = 0;
s32 core2_D_803727F4 = CORE2_CODE_CRC2;
s32 D_803727F8 = 0;
s32 D_803727FC = 0;
// bk_boot segment crc values
s32 D_80372800 = 0;
s32 D_80372804 = 0;
// bk_boot segment crc remaining words
s32 D_80372808 = 0;
// init bk_boot crc
void func_80356580(void) {
D_803727FC = (s32) boot_bk_boot_ROM_START;
D_80372800 = 0;
D_80372804 = -1;
D_80372808 = (s32) (boot_bk_boot_ROM_END - boot_bk_boot_ROM_START);
}
// advance bk_boot crc by one word
s32 func_803565BC(void) {
u32 crc1;
u32 crc2;
u8 romBytes[4];
u8 curByte;
if (D_803727FC != 0) {
if (D_80372808 != 0) {
crc1 = D_80372800;
crc2 = D_80372804;
osPiReadIo(D_803727FC, (u32*)romBytes);
curByte = romBytes[0];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
curByte = romBytes[1];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
curByte = romBytes[2];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
curByte = romBytes[3];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
D_80372800 = crc1;
D_80372804 = crc2;
D_803727FC = D_803727FC + 4;
D_80372808 = D_80372808 - 4;
} else {
D_803727FC = 0;
osPiReadIo((u32)crc_ROM_START + 0, &crc1);
if (crc1 != D_80372800)
return 0;
osPiReadIo((u32)crc_ROM_START + 4, &crc2);
if (crc2 != D_80372804)
return 0;
}
}
return 1;
}
void func_80356714(void) {
func_80356580();
}
void func_80356734(void) {
func_803565BC();
if (func_803565BC() == 0) {
func_80295864(0x10);
}
}

87
src/core2/code_CF5F0.c Normal file
View File

@@ -0,0 +1,87 @@
#include <ultra64.h>
#include "functions.h"
#include "variables.h"
//THIS VALUE
#ifndef CORE2_CODE_CRC2
#define CORE2_CODE_CRC2 0x9E44C2DC
#endif
// bk_boot segment start (skipping entry function)
extern u8 boot_bk_boot_ROM_START[];
// bk_boot segment end
extern u8 boot_bk_boot_ROM_END[];
extern u8 crc_ROM_START[];
// bk_boot segment crc next word
s32 D_803727F0 = 0;
s32 core2_D_803727F4 = CORE2_CODE_CRC2;
s32 D_803727F8 = 0;
s32 D_803727FC = 0;
// bk_boot segment crc values
s32 D_80372800 = 0;
s32 D_80372804 = 0;
// bk_boot segment crc remaining words
s32 D_80372808 = 0;
// init bk_boot crc
void func_80356580(void) {
D_803727FC = (s32) boot_bk_boot_ROM_START;
D_80372800 = 0;
D_80372804 = -1;
D_80372808 = (s32) (boot_bk_boot_ROM_END - boot_bk_boot_ROM_START);
}
// advance bk_boot crc by one word
s32 func_803565BC(void) {
u32 crc1;
u32 crc2;
u8 romBytes[4];
u8 curByte;
if (D_803727FC != 0) {
if (D_80372808 != 0) {
crc1 = D_80372800;
crc2 = D_80372804;
osPiReadIo(D_803727FC, (u32*)romBytes);
curByte = romBytes[0];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
curByte = romBytes[1];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
curByte = romBytes[2];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
curByte = romBytes[3];
crc1 += curByte;
crc2 ^= curByte << (crc1 & 0x17);
D_80372800 = crc1;
D_80372804 = crc2;
D_803727FC = D_803727FC + 4;
D_80372808 = D_80372808 - 4;
} else {
D_803727FC = 0;
osPiReadIo((u32)crc_ROM_START + 0, &crc1);
if (crc1 != D_80372800)
return 0;
osPiReadIo((u32)crc_ROM_START + 4, &crc2);
if (crc2 != D_80372804)
return 0;
}
}
return 1;
}
void func_80356714(void) {
func_80356580();
}
void func_80356734(void) {
func_803565BC();
if (func_803565BC() == 0) {
func_80295864(0x10);
}
}

View File

@@ -28,15 +28,13 @@ typedef struct {
}ActorLocal_core2_D0CA0; }ActorLocal_core2_D0CA0;
/* .data */ /* .data */
extern ActorInfo D_803728A0 = { ActorInfo D_803728A0 = {
MARKER_253_SCARAB_BEETLE, ACTOR_380_SCARAB_BEETLE, ASSET_51B_MODEL_SCARAB_BEETLE, MARKER_253_SCARAB_BEETLE, ACTOR_380_SCARAB_BEETLE, ASSET_51B_MODEL_SCARAB_BEETLE,
0, NULL, 0, NULL,
func_80358684, NULL, func_80358344, func_80358684, NULL, func_80358344,
0, 0, 1.0f, 0 0, 0, 1.0f, 0
}; };
extern struct31s D_803728C4;
extern struct43s D_803728EC;
/* .code */ /* .code */
bool func_80357C30(Actor *this) { bool func_80357C30(Actor *this) {
@@ -241,6 +239,12 @@ void func_803584BC(Actor *this) {
void func_80358524(f32 position[3], s32 count, enum asset_e model_id) { void func_80358524(f32 position[3], s32 count, enum asset_e model_id) {
static struct31s D_803728C4 = { {1.0f, 1.0f}, {1.0f, 1.0f}, {0.0f, 0.01f}, {1.2f, 1.2f}, 0.0f, 0.1f};
static struct43s D_803728EC = {
{{-250.0f, 500.0f, -250.0f}, { 350.0f, 760.0f, 350.0f}},
{{ 0.0f, -1200.0f, 0.0f}, { 0.0f, -1200.0f, 0.0f}},
{{ -50.0f, 0.0f, -50.0f}, { 50.0f, 50.0f, 50.0f}}
};
ParticleEmitter *p_ctrl; ParticleEmitter *p_ctrl;
ParticleEmitter *temp_v0; ParticleEmitter *temp_v0;

View File

@@ -33,8 +33,21 @@ typedef struct {
void chskeleton_update(Actor *this); void chskeleton_update(Actor *this);
/* .data */ /* .data */
extern ActorAnimationInfo D_80372D20[]; ActorAnimationInfo D_80372D20[] = {
extern ActorInfo D_80372D78 = { {0, 0.0f},
{0x1E4, 4.0f},
{0x1E4, 0.7f},
{0x1E6, 0.7f},
{0x1E5, 0.9f},
{0x1E7, 0.7f},
{0x1E4, 1.5f},
{0x1E6, 0.5f},
{0x1E4, 1.5f},
{0x1E7, 1.5f},
{0x1E8, 2.2f}
};
ActorInfo D_80372D78 = {
MARKER_218_LIMBO, ACTOR_34E_LIMBO, ASSET_4CC_MODEL_LIMBO, MARKER_218_LIMBO, ACTOR_34E_LIMBO, ASSET_4CC_MODEL_LIMBO,
0x1, D_80372D20, 0x1, D_80372D20,
chskeleton_update, func_80326224, func_80325888, chskeleton_update, func_80326224, func_80325888,
@@ -51,7 +64,7 @@ void func_8035CCA0(ParticleEmitter *pCtrl, Actor *this, enum asset_e model_id) {
} }
void func_8035CD80(ActorMarker *marker, s32 arg1) { void chskeleton_despawn(ActorMarker *marker, s32 arg1) {
Actor *this; Actor *this;
this = marker_getActor(marker); this = marker_getActor(marker);
@@ -64,7 +77,7 @@ void func_8035CD80(ActorMarker *marker, s32 arg1) {
marker_despawn(marker); marker_despawn(marker);
} }
void func_8035CE50(Actor *this) { static void _chskeleton_init(Actor *this) {
ActorLocal_Skeleton *local; ActorLocal_Skeleton *local;
local = (ActorLocal_Skeleton *)&this->local; local = (ActorLocal_Skeleton *)&this->local;
@@ -89,13 +102,13 @@ void func_8035CE50(Actor *this) {
local->unk2C = 1.0f; local->unk2C = 1.0f;
local->unkC_28 = TRUE; local->unkC_28 = TRUE;
local->unk30 = func_802DB4E0; local->unk30 = func_802DB4E0;
local->unk34 = func_8035CD80; local->unk34 = chskeleton_despawn;
} }
void chskeleton_update(Actor *this){ void chskeleton_update(Actor *this){
if(!this->unk16C_4){ if(!this->unk16C_4){
func_8035CE50(this); _chskeleton_init(this);
} }
func_802DB5A0(this); func_802DB5A0(this);
} }

View File

@@ -34,8 +34,21 @@ typedef struct {
void func_8035D058(Actor *this); void func_8035D058(Actor *this);
/* .data */ /* .data */
extern ActorAnimationInfo D_80372DA0[]; ActorAnimationInfo D_80372DA0[] = {
extern ActorInfo D_80372DF8 = { {0, 0.0f},
{0x1D6, 4.0f},
{0x1D6, 0.7f},
{0x1D8, 0.7f},
{0x1D7, 0.9f},
{0x1D9, 0.7f},
{0x1D6, 1.5f},
{0x1D8, 0.5f},
{0x1D6, 1.5f},
{0x1D6, 100000.0f},
{0x1D6, 100000.0f}
};
ActorInfo D_80372DF8 = {
MARKER_21A_SEAMAN_GRUBLIN, ACTOR_350_SEAMAN_GRUBLIN, ASSET_49D_MODEL_SEAMAN_GRUBLIN, MARKER_21A_SEAMAN_GRUBLIN, ACTOR_350_SEAMAN_GRUBLIN, ASSET_49D_MODEL_SEAMAN_GRUBLIN,
0x1, D_80372DA0, 0x1, D_80372DA0,
func_8035D058, func_80326224, func_80325888, func_8035D058, func_80326224, func_80325888,

View File

@@ -31,19 +31,27 @@ typedef struct {
}ActorLocal_core2_D6180; }ActorLocal_core2_D6180;
/* .data */ /* .data */
extern ActorAnimationInfo D_80372E20[]; ActorAnimationInfo D_80372E20[] = {
extern ActorInfo D_80372E78 = { {0x000, 0},
{0x1E9, 4.0f},
{0x1E9, 1.4f},
{0x1E9, 0.8f},
{0x1E9, 0.9f},
{0x1EA, 0.7f},
{0x1E9, 1.5f},
{0x1E9, 0.8f},
{0x1E9, 1.5f},
{0x1EA, 0.4f},
{0x1EB, 0.3f}
};
ActorInfo D_80372E78 = {
MARKER_219_MUMMUM, ACTOR_34F_MUMMUM, ASSET_4C7_MODEL_MUMMUM, MARKER_219_MUMMUM, ACTOR_34F_MUMMUM, ASSET_4C7_MODEL_MUMMUM,
0x1, D_80372E20, 0x1, D_80372E20,
func_8035D3D8, func_80326224, func_80325888, func_8035D3D8, func_80326224, func_80325888,
2500, 0, 1.0f, 0 2500, 0, 1.0f, 0
}; };
/* .rodata */
extern f32 D_80379860;
extern f32 D_80379864;
extern f32 D_80379868;
/* .code */ /* .code */
void func_8035D110(ParticleEmitter *p_emitter, Actor *this, enum asset_e model_id) { void func_8035D110(ParticleEmitter *p_emitter, Actor *this, enum asset_e model_id) {
func_802DABA0(p_emitter, this->position, this->scale, model_id); func_802DABA0(p_emitter, this->position, this->scale, model_id);

View File

@@ -16,8 +16,18 @@ typedef struct {
void func_8035DA1C(Actor *this); void func_8035DA1C(Actor *this);
/* .data */ /* .data */
extern ActorAnimationInfo D_80372EA0[]; ActorAnimationInfo D_80372EA0[] = {
extern ActorInfo D_80372EE0 = { {0, 0.0f},
{0x0B3, 1.8f},
{0x0B3, 0.9f},
{0x0B3, 0.6f},
{0x0B3, 0.4f},
{0x0B3, 0.5f},
{0x0B4, 0.4f},
{0x2C0, 1.5f}
};
ActorInfo D_80372EE0 = {
MARKER_69_CHUMP_FISH, ACTOR_A_CHUMP_FISH, ASSET_36B_CHUMP_FISH, MARKER_69_CHUMP_FISH, ACTOR_A_CHUMP_FISH, ASSET_36B_CHUMP_FISH,
0x2, D_80372EA0, 0x2, D_80372EA0,
func_8035DA1C, func_80326224, func_80325888, func_8035DA1C, func_80326224, func_80325888,

View File

@@ -12,32 +12,34 @@ typedef struct {
}ActorLocal_core2_D7D10; }ActorLocal_core2_D7D10;
/* .data */ /* .data */
extern ActorAnimationInfo D_80372F80[]; ActorAnimationInfo D_80372F80[] = {
{0, 0.0f},
{0x9A, 8000000.0f},
{0x9A, 1.3f},
{0x9B, 0.6f},
{0x9B, 0.75f},
{0x9A, 1.5f},
{0x1ED, 1.0f},
{0x1EE, 2.4f}
};
extern ActorInfo D_80372FC0 = { ActorInfo D_80372FC0 = {
MARKER_96_RIPPER, ACTOR_C7_RIPPER, ASSET_3C9_MODEL_RIPPER, MARKER_96_RIPPER, ACTOR_C7_RIPPER, ASSET_3C9_MODEL_RIPPER,
0x1, D_80372F80, 0x1, D_80372F80,
func_8035F138, func_80326224, func_8035ECA0, func_8035F138, func_80326224, func_8035ECA0,
3500, 0, 1.2f, 0 3500, 0, 1.2f, 0
}; };
extern ActorInfo D_80372FE4 = { ActorInfo D_80372FE4 = {
MARKER_297_GIANT_RIPPER, ACTOR_3C2_GIANT_RIPPER, ASSET_3C9_MODEL_RIPPER, MARKER_297_GIANT_RIPPER, ACTOR_3C2_GIANT_RIPPER, ASSET_3C9_MODEL_RIPPER,
0x1, D_80372F80, 0x1, D_80372F80,
func_8035F138, func_80326224, func_8035ECA0, func_8035F138, func_80326224, func_8035ECA0,
14000, 0, 3.2f, 0 14000, 0, 3.2f, 0
}; };
extern f32 D_80373008[3];
extern s32 D_80373014[3];
extern struct31s D_80373020;
extern struct43s D_80373048;
/* .rodata */
extern f32 D_80379920;
/* .code */ /* .code */
Actor *func_8035ECA0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { Actor *func_8035ECA0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
static f32 D_80373008[3] = {0.0f, 0.0f, 0.0f};
f32 rotation[3]; f32 rotation[3];
Actor *this; Actor *this;
ActorLocal_core2_D7D10 *local; ActorLocal_core2_D7D10 *local;
@@ -65,6 +67,13 @@ bool func_8035ED60(Actor *this) {
} }
void func_8035EDB0(f32 position[3], s32 count, enum asset_e sprite) { void func_8035EDB0(f32 position[3], s32 count, enum asset_e sprite) {
static s32 D_80373014[3] = {0xAA, 0xAA, 0xAA};
static struct31s D_80373020 = {{0.4f, 0.8f}, {1.4f, 2.0f}, {0.0f, 0.01f}, {1.2f, 1.8f}, 0.0f, 0.01};
static struct43s D_80373048 = {
{{-200.0f, -200.0f, -200.0f}, { 200.0f, 200.0f, 200.0f}},
{{ 0.0f, -10.0f, 0.0f}, { 0.0f, -10.0f, 0.0f}},
{{ -50.0f, 0.0f, -50.0f}, { 50.0f, 200.0f, 50.0f}}
};
ParticleEmitter *p_ctrl; ParticleEmitter *p_ctrl;
p_ctrl = partEmitList_pushNew(count); p_ctrl = partEmitList_pushNew(count);

View File

@@ -14,8 +14,19 @@ typedef struct {
void func_80360828(Actor *this); void func_80360828(Actor *this);
/* .data */ /* .data */
extern ActorAnimationInfo D_80373090[]; ActorAnimationInfo D_80373090[] = {
extern ActorInfo D_803730D8 = { {0, 0.0f},
{ 0xAE, 12.0f},
{ 0xAD, 0.3f},
{ 0x9D, 2.0f},
{ 0x9D, 0.4f},
{ 0x9D, 0.35f},
{ 0xAD, 0.2f},
{0x2A9, 0.4f},
{0x2AA, 0.85f},
};
ActorInfo D_803730D8 = {
MARKER_127_BAT, ACTOR_163_BAT, ASSET_3CA_MODEL_BAT, MARKER_127_BAT, ACTOR_163_BAT, ASSET_3CA_MODEL_BAT,
0x1, D_80373090, 0x1, D_80373090,
func_80360828, func_80326224, func_80325888, func_80360828, func_80326224, func_80325888,

View File

@@ -6,7 +6,77 @@ extern void func_80288C7C(VLA**);
extern void func_80288D84(s32, f32, void (*)(s32,s32), s32, s32); extern void func_80288D84(s32, f32, void (*)(s32,s32), s32, s32);
extern void func_80288DCC(s32 , f32, void (*)(s32, s32,s32), s32, s32, s32); extern void func_80288DCC(s32 , f32, void (*)(s32, s32,s32), s32, s32, s32);
extern Struct62s D_803731E0[0x20]; //TODO import from cutscenes/code_0.h
extern Struct63s D_8038D904[];
extern Struct63s D_8038D94C[];
extern Struct63s D_8038D964[];
extern Struct63s D_8038D994[];
extern Struct63s D_8038D9AC[];
extern Struct63s D_8038D9E4[];
extern Struct63s D_8038D9F4[];
extern Struct63s D_8038DA14[];
extern Struct63s D_8038DA2C[];
extern Struct63s D_8038DA44[];
extern Struct63s D_8038DA74[];
extern Struct63s D_8038DA84[];
extern Struct63s D_8038DAAC[];
extern Struct63s D_8038DABC[];
extern Struct63s D_8038DACC[];
extern Struct63s D_8038DB04[];
extern Struct63s D_8038DB1C[];
extern Struct63s D_8038DB34[];
extern Struct63s D_8038DB44[];
extern Struct63s D_8038DB54[];
extern Struct63s D_8038DB8C[];
extern Struct63s D_8038DBDC[];
extern Struct63s D_8038DBF4[];
extern Struct63s D_8038DC0C[];
extern Struct63s D_8038DC2C[];
extern Struct63s D_8038DC4C[];
extern Struct63s D_8038DC3C[];
extern Struct63s D_8038DC64[];
extern Struct63s D_8038DC74[];
// TODO import from SM/code_0.h
extern Struct63s D_8038AAC0[];
extern Struct63s D_8038AAD0[];
/* .data */
Struct62s D_803731E0[0x20] = {
{ 0xAC, D_8038D904},
{ 0x9E, D_8038D904},
{ 0xB8, D_8038D94C},
{ 0xB4, D_8038D964},
{ 0xB2, D_8038D994},
{ 0xB0, D_8038D9AC},
{ 0xB1, D_8038D9E4},
{ 0xBB, D_8038D9F4},
{ 0x8F, D_8038DA14},
{ 0xA5, D_8038DA2C},
{0x2ED, D_8038DA44},
{0x2EF, D_8038DA74},
{0x2EE, D_8038DA84},
{0x2FA, D_8038DAAC},
{0x2F1, D_8038DABC},
{0x2F2, D_8038DACC},
{ 0xC2, D_8038DB04},
{ 0xC3, D_8038DB1C},
{0x2F0, D_8038DB34},
{ 0xA8, D_8038DB44},
{0x2FB, D_8038DB54},
{ 0xA7, D_8038DB8C},
{0x2FC, D_8038DBDC},
{0x2F5, D_8038AAC0},
{0x2F4, D_8038AAD0},
{0x301, D_8038DBF4},
{0x2FE, D_8038DC0C},
{0x302, D_8038DC2C},
{ 0x93, D_8038DC4C},
{ 0x94, D_8038DC3C},
{ 0x8E, D_8038DC64},
{ 0xBC, D_8038DC74}
};
/* .code */ /* .code */
void func_80361A30(f32 arg0[3], s32 arg1){ void func_80361A30(f32 arg0[3], s32 arg1){

View File

@@ -20,318 +20,24 @@ typedef struct{
}struct_core2_DB010; }struct_core2_DB010;
/* .data */ /* .data */
extern ActorInfo D_803732E0= { ActorInfo D_803732E0 = {
0x1F7, 0x1E7, 0, 0x1F7, 0x1E7, 0,
0, NULL, 0, NULL,
func_80363310, func_80363330, func_80325340, func_80363310, func_80363330, func_80325340,
0, 0, 0.0f, 0 0, 0, 0.0f, 0
}; };
extern struct40s D_80373304;
// 000E C370: 3E CC CC CD 3F B3 33 33 00 00 00 00
// 000E C380: 00 00 00 00 00 00 00 00 3C 23 D7 0A 40 80 00 00
// 000E C390: 40 80 00 00 3F 00 00 00 3F 33 33 33 40 80 00 00
// 000E C3A0: 41 70 00 00
extern struct43s D_80373334;
// C3 7A 00 00 44 16 00 00 C3 7A 00 00
// 000E C3B0: 43 AF 00 00 44 70 00 00 43 AF 00 00 00 00 00 00
// 000E C3C0: C4 96 00 00 00 00 00 00 00 00 00 00 C4 96 00 00
// 000E C3D0: 00 00 00 00 C2 70 00 00 C1 F0 00 00 C2 70 00 00
// 000E C3E0: 42 70 00 00 41 F0 00 00 42 70 00 00
extern s32 D_8037337C[3] = {50, 255, 50};
extern struct40s D_80373388;
// 3E 99 99 9A 3C F5 C2 8F
// 000E C400: 3F 00 00 00 3F 00 00 00 00 00 00 00 3C 23 D7 0A
// 000E C410: 3F C0 00 00 40 00 00 00 3D 75 C2 8F 3F 33 33 33
// 000E C420: 40 80 00 00 3F 80 00 00
extern struct42s D_803733B8;
// C0 A0 00 00 42 C8 00 00
// 000E C430: C0 A0 00 00 40 A0 00 00 42 C8 00 00 40 A0 00 00
// 000E C440: C2 70 00 00 00 00 00 00 C2 70 00 00 42 70 00 00
// 000E C450: 40 A0 00 00 42 70 00 00
extern s32 D_803733E8[3] = {0xb4, 0xe6, 0xff};
extern struct40s D_803733F4;
// 3F 80 00 00 3F E6 66 66 40 0C CC CD
// 000E C470: 40 2C CC CD 00 00 00 00 3C 23 D7 0A 3F 4C CC CD
// 000E C480: 3F 99 99 9A 3E D1 EB 85 3F 3A E1 48 40 80 00 00
// 000E C490: 41 70 00 00
extern struct43s D_80373424;
// C3 96 00 00 44 16 00 00 C3 96 00 00
// 000E C4A0: 43 96 00 00 44 7A 00 00 43 96 00 00 00 00 00 00
// 000E C4B0: C4 96 00 00 00 00 00 00 00 00 00 00 C4 C8 00 00
// 000E C4C0: 00 00 00 00 C1 20 00 00 00 00 00 00 C1 20 00 00
// 000E C4D0: 41 20 00 00 00 00 00 00 41 20 00 00
extern struct40s D_8037346C;
// 3E 99 99 9A
// 000E C4E0: 3E CC CC CD 3F 00 00 00 3F 00 00 00 00 00 00 00
// 000E C4F0: 3C 23 D7 0A 3F 4C CC CD 3F 99 99 9A 3F 68 F5 C3
// 000E C500: 3F 7D 70 A4 40 80 00 00 41 90 00 00
extern struct43s D_8037349C;
// C3 48 00 00
// 000E C510: 44 61 00 00 C3 48 00 00 43 48 00 00 44 AF 00 00
// 000E C520: 43 48 00 00 00 00 00 00 C4 E1 00 00 00 00 00 00
// 000E C530: 00 00 00 00 C5 16 00 00 00 00 00 00 C1 20 00 00
// 000E C540: C1 A0 00 00 C1 20 00 00 41 20 00 00 C1 A0 00 00
// 000E C550: 41 20 00 00
extern struct40s D_803734E4;
// 40 4C CC CD 40 59 99 9A 00 00 00 00
// 000E C560: 00 00 00 00 00 00 00 00 3C 23 D7 0A 40 00 00 00
// 000E C570: 40 00 00 00 00 00 00 00 3E 99 99 9A 40 80 00 00
// 000E C580: 41 70 00 00 C4 6D 80 00 44 48 00 00 C3 7A 00 00
// 000E C590: C4 09 80 00 44 AA 00 00 42 48 00 00 C4 2F 00 00
// 000E C5A0: C4 D4 80 00 00 00 00 00 C4 61 00 00 C4 D4 80 00
// 000E C5B0: 00 00 00 00 C2 70 00 00 00 00 00 00 C2 70 00 00
// 000E C5C0: 42 70 00 00 41 F0 00 00 42 70 00 00 40 40 00 00
// 000E C5D0: 40 59 99 9A 00 00 00 00 00 00 00 00 00 00 00 00
// 000E C5E0: 3C 23 D7 0A 40 80 00 00 40 80 00 00 00 00 00 00
// 000E C5F0: 3E 99 99 9A 40 80 00 00 41 70 00 00 C3 E1 00 00
// 000E C600: 44 16 00 00 C2 48 00 00 C3 16 00 00 44 89 80 00
// 000E C610: 42 48 00 00 C4 2F 00 00 C4 D4 80 00 00 00 00 00
// 000E C620: C4 48 00 00 C4 D4 80 00 00 00 00 00 C2 70 00 00
// 000E C630: 00 00 00 00 C2 70 00 00 42 70 00 00 41 F0 00 00
// 000E C640: 42 70 00 00 3F 8C CC CD 3F 8C CC CD 40 89 99 9A
// 000E C650: 40 89 99 9A 00 00 00 00 3D 4C CC CD 3E 99 99 9A
// 000E C660: 3F 00 00 00 3D 75 C2 8F 3E 99 99 9A 40 80 00 00
// 000E C670: 3F 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E C680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E C690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E C6A0: 00 00 00 00 00 00 00 0A 00 00 00 FF 00 00 00 0A
// 000E C6B0: 40 00 00 00 40 00 00 00 40 40 00 00 40 60 00 00
// 000E C6C0: 00 00 00 00 3C 23 D7 0A 40 00 00 00 40 20 00 00
// 000E C6D0: 3D CC CC CD 3E CC CC CD 40 80 00 00 3F 80 00 00
// 000E C6E0: 00 00 00 00 42 20 00 00 00 00 00 00 00 00 00 00
// 000E C6F0: 42 B4 00 00 00 00 00 00 C3 C8 00 00 00 00 00 00
// 000E C700: C3 C8 00 00 43 C8 00 00 00 00 00 00 43 C8 00 00
// 000E C710: 00 00 00 FF 00 00 00 FF 00 00 00 FF 3C 23 D7 0A
// 000E C720: 3C 23 D7 0A 3F C0 00 00 3F CC CC CD 3D 4C CC CD
// 000E C730: 3F 33 33 33 3F 33 33 33 3F A6 66 66 3D CC CC CD
// 000E C740: 3F 4C CC CD 40 80 00 00 41 C8 00 00 3F 33 33 33
// 000E C750: 3F 66 66 66 3E CC CC CD 3F 00 00 00 00 00 00 00
// 000E C760: 3C 23 D7 0A 3F 4C CC CD 3F 80 00 00 3E 19 99 9A
// 000E C770: 3E 99 99 9A 00 00 00 00 3F 80 00 00 C1 20 00 00
// 000E C780: C1 20 00 00 C1 20 00 00 41 20 00 00 41 20 00 00
// 000E C790: 41 20 00 00 00 00 00 00 41 F0 00 00 00 00 00 00
// 000E C7A0: 00 00 00 00 41 F0 00 00 00 00 00 00 3D 4C CC CD
// 000E C7B0: 3D CC CC CD 3D CC CC CD 3E 4C CC CD 00 00 00 00
// 000E C7C0: 3C 23 D7 0A 3F B3 33 33 3F C0 00 00 3C 23 D7 0A
// 000E C7D0: 3F 33 33 33 00 00 00 00 3F 80 00 00 C0 A0 00 00
// 000E C7E0: C0 A0 00 00 C0 A0 00 00 40 A0 00 00 40 A0 00 00
// 000E C7F0: 40 A0 00 00 00 00 00 00 C2 48 00 00 00 00 00 00
// 000E C800: 00 00 00 00 C2 B4 00 00 00 00 00 00 C1 F0 00 00
// 000E C810: 41 F0 00 00 C1 F0 00 00 41 F0 00 00 42 70 00 00
// 000E C820: 41 F0 00 00 00 00 00 FF 00 00 00 FF 00 00 00 00
// 000E C830: 3D CC CC CD 3E 99 99 9A 3F 19 99 9A 3F 33 33 33
// 000E C840: 00 00 00 00 3C 23 D7 0A 3E 99 99 9A 3E CC CC CD
// 000E C850: 3C 23 D7 0A 3E 99 99 9A 40 80 00 00 41 80 00 00
// 000E C860: C4 16 00 00 C4 16 00 00 C4 16 00 00 44 16 00 00
// 000E C870: 44 16 00 00 44 16 00 00 00 00 00 00 41 F0 00 00
// 000E C880: 00 00 00 00 00 00 00 00 41 F0 00 00 00 00 00 00
extern s32 D_80373514;
extern s32 D_8037355C;
extern s32 D_8037358C;
extern s32 D_803735D4;
extern struct42s D_80373604;
extern s32 D_80373634;
extern s32 D_80373640;
extern struct42s D_80373670;
extern s32 D_803736A0[3];
extern struct40s D_803736AC;
extern s32 D_803736DC;
extern struct42s D_8037370C;
extern s32 D_8037373C;
extern s32 D_8037376C;
extern s32 D_803737B4;
extern s32 D_803737C0;
extern struct42s D_803737F0;
extern s32 D_80373820[3] = {130, 155, 40};
extern struct40s D_8037382C;
// 40 53 33 33
// 000E C8A0: 40 53 33 33 40 90 00 00 40 96 66 66 00 00 00 00
// 000E C8B0: 3C 23 D7 0A 3F E6 66 66 40 4C CC CD 3E 9E B8 52
// 000E C8C0: 3F 3A E1 48 40 80 00 00 41 30 00 00
extern struct43s D_8037385C;
// C3 48 00 00
// 000E C8D0: 42 F0 00 00 C3 48 00 00 43 48 00 00 43 02 00 00
// 000E C8E0: 43 48 00 00 00 00 00 00 C2 C8 00 00 00 00 00 00
// 000E C8F0: 00 00 00 00 C2 C8 00 00 00 00 00 00 C1 F0 00 00
// 000E C900: 00 00 00 00 C1 F0 00 00 41 F0 00 00 00 00 00 00
// 000E C910: 41 F0 00 00
extern s32 D_803738A4[3] = {91, 142, 0};
extern struct40s D_803738B0;
// 000E C920: 3E 4C CC CD 3F 66 66 66 3E CC CC CD 3F 66 66 66
// 000E C930: 00 00 00 00 3C 23 D7 0A 3F E6 66 66 40 86 66 66
// 000E C940: 3E 9E B8 52 3F 3A E1 48 40 80 00 00 41 50 00 00
extern struct43s D_803738E0;
// 000E C950: C3 C8 00 00 44 02 00 00 C3 C8 00 00 43 C8 00 00
// 000E C960: 44 3B 80 00 43 C8 00 00 00 00 00 00 C4 96 00 00
// 000E C970: 00 00 00 00 00 00 00 00 C4 C8 00 00 00 00 00 00
// 000E C980: C1 F0 00 00 00 00 00 00 C1 F0 00 00 41 F0 00 00
// 000E C990: 00 00 00 00 41 F0 00 00
extern s32 D_80373928[3] = {0, 255, 0};
extern struct40s D_80373934;
// 3F B3 33 33 3F F3 33 33 40 19 99 9A
// 000E C9B0: 40 39 99 9A 00 00 00 00 40 4C CC CD 41 0C CC CD
// 000E C9C0: 41 13 33 33 3E 9E B8 52 3F 3A E1 48 40 80 00 00
// 000E C9D0: 41 50 00 00
extern struct43s D_80373964;
// C2 70 00 00 42 C8 00 00 C2 70 00 00
// 000E C9E0: 42 70 00 00 43 2A 00 00 42 70 00 00 00 00 00 00
// 000E C9F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CA00: 00 00 00 00 C1 F0 00 00 00 00 00 00 C1 F0 00 00
// 000E CA10: 41 F0 00 00 00 00 00 00 41 F0 00 00
extern s32 D_803739AC[3] = {255, 255, 255};
extern struct40s D_803739B8;
// 3E 4C CC CD 3F 66 66 66
// 000E CA30: 3E 99 99 9A 3E CC CC CD 00 00 00 00 3E 4C CC CD
// 000E CA40: 3F 80 00 00 3F 99 99 9A 3E 9E B8 52 3F 3A E1 48
// 000E CA50: 40 80 00 00 41 50 00 00
extern struct43s D_803739E8;
// C4 16 00 00 00 00 00 00
// 000E CA60: C4 16 00 00 44 16 00 00 00 00 00 00 44 16 00 00
// 000E CA70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CA80: 00 00 00 00 00 00 00 00 00 00 00 00 42 20 00 00
// 000E CA90: 00 00 00 00 00 00 00 00 42 20 00 00 00 00 00 00
extern s32 D_80373A30[3] = {255, 255, 255};
extern struct40s D_80373A3C;
// 3F C0 00 00
// 000E CAB0: 3F CC CC CD 40 20 00 00 40 39 99 9A 00 00 00 00
// 000E CAC0: 3C 23 D7 0A 40 00 00 00 40 20 00 00 3D CC CC CD
// 000E CAD0: 3E CC CC CD 40 80 00 00 3F 80 00 00
extern struct43s D_80373A6C;
// 00 00 00 00
// 000E CAE0: 42 20 00 00 00 00 00 00 00 00 00 00 42 B4 00 00
// 000E CAF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CB00: 00 00 00 00 00 00 00 00 00 00 00 00 C0 A0 00 00
// 000E CB10: 00 00 00 00 C0 A0 00 00 40 A0 00 00 00 00 00 00
// 000E CB20: 40 A0 00 00
extern s32 D_80373AB4[3] = {30, 30, 30};
extern struct40s D_80373AC0;
// 000E CB30: 40 40 00 00 40 59 99 9A 40 79 99 9A 40 83 33 33
// 000E CB40: 00 00 00 00 3C 23 D7 0A 40 00 00 00 40 20 00 00
// 000E CB50: 3E 99 99 9A 3F 00 00 00 40 80 00 00 3F 80 00 00
extern struct43s D_80373AF0;
// 000E CB60: 42 C8 00 00 42 20 00 00 42 C8 00 00 42 C8 00 00
// 000E CB70: 42 B4 00 00 42 C8 00 00 00 00 00 00 00 00 00 00
// 000E CB80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CB90: C0 A0 00 00 00 00 00 00 C0 A0 00 00 40 A0 00 00
// 000E CBA0: 00 00 00 00 40 A0 00 00
extern s32 D_80373B38[3] = {130, 130, 130};
extern struct40s D_80373B44;
// 40 00 00 00 40 19 99 9A 40 79 99 9A
// 000E CBC0: 40 83 33 33 00 00 00 00 3C 23 D7 0A 40 00 00 00
// 000E CBD0: 40 20 00 00 3E 4C CC CD 3F 33 33 33 40 80 00 00
// 000E CBE0: 3F 80 00 00
extern struct43s D_80373B74;
// 42 C8 00 00 42 20 00 00 42 C8 00 00
// 000E CBF0: 42 C8 00 00 42 B4 00 00 42 C8 00 00 00 00 00 00
// 000E CC00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CC10: 00 00 00 00 C0 A0 00 00 00 00 00 00 C0 A0 00 00
// 000E CC20: 40 A0 00 00 00 00 00 00 40 A0 00 00
extern s32 D_80373BBC[3] = {0xff, 0xff, 0xff};
extern struct40s D_80373BC8;
// 3F 00 00 00 3F 19 99 9A
// 000E CC40: 3F C0 00 00 3F F3 33 33 00 00 00 00 3C 23 D7 0A
// 000E CC50: 40 80 00 00 40 90 00 00 3D CC CC CD 3F 4C CC CD
// 000E CC60: 00 00 00 00 3F 80 00 00
extern struct43s D_80373BF8;
// 00 00 00 00 42 20 00 00
// 000E CC70: 00 00 00 00 00 00 00 00 42 B4 00 00 00 00 00 00
// 000E CC80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CC90: 00 00 00 00 00 00 00 00 C0 A0 00 00 00 00 00 00
// 000E CCA0: C0 A0 00 00 40 A0 00 00 00 00 00 00 40 A0 00 00
extern s32 D_80373C40[3] = {160, 170, 170};
extern struct40s D_80373C4C;
// 40 20 00 00
// 000E CCC0: 40 26 66 66 40 60 00 00 40 79 99 9A 00 00 00 00
// 000E CCD0: 3C 23 D7 0A 3E 99 99 9A 3F 00 00 00 3D CC CC CD
// 000E CCE0: 3F 4C CC CD 40 80 00 00 3F 80 00 00
extern struct43s D_80373C7C;
// C2 70 00 00
// 000E CCF0: C2 70 00 00 C2 70 00 00 42 70 00 00 42 70 00 00
// 000E CD00: 42 70 00 00 00 00 00 00 00 00 00 00 00 00 00 00
// 000E CD10: 00 00 00 00 00 00 00 00 00 00 00 00 C2 48 00 00
// 000E CD20: C2 48 00 00 C2 48 00 00 42 48 00 00 42 48 00 00
// 000E CD30: 42 48 00 00
extern s32 D_80373CC4[] = {90, 90, 90};
extern struct40s D_80373CD0;
// 3FC00000 3FCCCCCD 40200000 4039999A
// 00000000 3C23D70A 3E99999A 3F000000
// 3DCCCCCD 3F4CCCCD 40800000 3F800000
extern struct43s D_80373D00 = {
{{-60.0f, -60.0f, -60.0f}, {60.0f, 60.0f, 60.0f}},
{{0.0f, -0.0f, -0.0f}, {-0.0f, -0.0f, -0.0f}},
{{-50.0f, -50.0f, -50.0f}, {50.0f, 50.0f, 50.0f}}
};
extern struct40s D_80373D48 = {
{ {1.8f, 3.5f}, {1.8f, 3.5f}, {0.0f, 0.01f}, {5.0f, 5.0f}, 0.0f, 0.9f},
4.0f,
15.0f
};
extern struct43s D_80373D78 = {
{{-450.0f, 700.0f, -450.0f}, {450.0f, 1100.0f, 450.0f}},
{{ 0.0f, -900.0f, 0.0f}, { 0.0f, -900.0f, 0.0f}},
{{-150.0f, -100.0f, -150.0f}, {150.0f, 5.0f, 150.0f}}
};
/* .code */ /* .code */
void func_80361FA0(f32 arg0[3]) { void func_80361FA0(f32 arg0[3]) {
static struct40s D_80373304 = {{{0.4f, 1.4f}, {0.0f, 0.0f}, {0.0f, 0.01f}, {4.0f, 4.0f}, 0.5f, 0.7f}, 4.0f, 15.0f};
static struct43s D_80373334 = {
{{-250.0f, 600.0f, -250.0f}, { 350.0f, 960.0f, 350.0f}},
{{ 0.0f, -1200.0f, 0.0f}, { 0.0f, -1200.0f, 0.0f}},
{{ -60.0f, -30.0f, -60.0f}, { 60.0f, 30.0f, 60.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU); ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU);
particleEmitter_setModel(pCtrl, 0x441); particleEmitter_setModel(pCtrl, 0x441);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
func_802EFE24(pCtrl, -200.0f, 200.0f, -200.0f, 200.0f, 200.0f, 200.0f); func_802EFE24(pCtrl, -200.0f, 200.0f, -200.0f, 200.0f, 200.0f, 200.0f);
@@ -345,6 +51,13 @@ void func_80361FA0(f32 arg0[3]) {
} }
void func_80362084(f32 position[3]) { void func_80362084(f32 position[3]) {
static s32 D_8037337C[3] = {50, 255, 50};
static struct40s D_80373388 = {{{0.3f, 0.03f}, {0.5f, 0.5f}, {0.0f, 0.01f}, {1.5f, 2.0f}, 0.06f, 0.7f}, 4.0f, 1.0f};
static struct42s D_803733B8 = {
{{ -5.0f, 100.0f, -5.0f}, { 5.0f, 100.0f, 5.0f}},
{{-60.0f, 0.0f, -60.0f}, { 60.0f, 5.0f, 60.0f}}
};
ParticleEmitter *pCtrl; ParticleEmitter *pCtrl;
pCtrl = partEmitList_pushNew(1U); pCtrl = partEmitList_pushNew(1U);
@@ -362,7 +75,16 @@ void func_80362084(f32 position[3]) {
void func_8036215C(f32 arg0[3]) { void func_8036215C(f32 arg0[3]) {
static s32 D_803733E8[3] = {0xb4, 0xe6, 0xff};
static struct40s D_803733F4 = {{{1.0f, 1.8f}, {2.2f, 2.7f}, {0.0f, 0.01f}, {0.8f, 1.2f}, 0.41f, 0.73f}, 4.0f, 15.0f};
static struct43s D_80373424 = {
{{-300.0f, 600.0f, -300.0f}, { 300.0f, 1000.0f, 300.0f}},
{{ 0.0f, -1200.0f, 0.0f}, { 0.0f, -1600.0f, 0.0f}},
{{ -10.0f, 0.0f, -10.0f}, { 10.0f, 0.0f, 10.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU); ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU);
particleEmitter_setSprite(pCtrl, 0x700); particleEmitter_setSprite(pCtrl, 0x700);
particleEmitter_setStartingFrameRange(pCtrl, 3, 4); particleEmitter_setStartingFrameRange(pCtrl, 3, 4);
func_802EFFA8(pCtrl, D_803733E8); func_802EFFA8(pCtrl, D_803733E8);
@@ -373,7 +95,15 @@ void func_8036215C(f32 arg0[3]) {
} }
void func_803621F0(f32 arg0[3]) { void func_803621F0(f32 arg0[3]) {
static struct40s D_8037346C = {{{0.3f, 0.4f}, {0.5f, 0.5f}, {0.0f, 0.01f}, {0.8f, 1.2f}, 0.91f, 0.99f}, 4.0f, 18.0f};
static struct43s D_8037349C = {
{{-200.0f, 900.0f, -200.0f}, { 200.0f, 1400.0f, 200.0f}},
{{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -2400.0f, 0.0f}},
{{ -10.0f, -20.0f, -10.0f}, { 10.0f, -20.0f, 10.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0x12U); ParticleEmitter *pCtrl = partEmitList_pushNew(0x12U);
particleEmitter_setSprite(pCtrl, 0x702); particleEmitter_setSprite(pCtrl, 0x702);
particleEmitter_setStartingFrameRange(pCtrl, 3, 5); particleEmitter_setStartingFrameRange(pCtrl, 3, 5);
func_802EF9E4(pCtrl, 0xD2); func_802EF9E4(pCtrl, 0xD2);
@@ -383,7 +113,15 @@ void func_803621F0(f32 arg0[3]) {
} }
void func_80362274(f32 arg0[3]) { void func_80362274(f32 arg0[3]) {
static struct40s D_803734E4 = {{{3.2f, 3.4f}, {0.0f, 0.0f}, {0.0f, 0.01f}, {2.0f, 2.0f}, 0.0f, 0.3f}, 4.0f, 15.0f};
static struct43s D_80373514 = {
{{-950.0f, 800.0f, -250.0f}, {-550.0f, 1360.0f, 50.0f}},
{{-700.0f, -1700.0f, 0.0f}, {-900.0f, -1700.0f, 0.0f}},
{{ -60.0f, 0.0f, -60.0f}, { 60.0f, 30.0f, 60.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU); ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU);
particleEmitter_setModel(pCtrl, 0x89B); particleEmitter_setModel(pCtrl, 0x89B);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
func_802EFE24(pCtrl, -400.0f, -200.0f, -400.0f, 400.0f, -400.0f, 400.0f); func_802EFE24(pCtrl, -400.0f, -200.0f, -400.0f, 400.0f, -400.0f, 400.0f);
@@ -395,7 +133,15 @@ void func_80362274(f32 arg0[3]) {
} }
void func_8036233C(f32 arg0[3]) { void func_8036233C(f32 arg0[3]) {
static struct40s D_8037355C = {{{3.0f, 3.4f}, {0.0f, 0.0f}, {0.0f, 0.01f}, {4.0f, 4.0f}, 0.0f, 0.3f}, 4.0f, 15.0f};
static struct43s D_8037358C = {
{{-450.0f, 600.0f, -50.0f}, {-150.0f, 1100.0f, 50.0f}},
{{-700.0f, -1700.0f, 0.0f}, {-800.0f, -1700.0f, 0.0f}},
{{ -60.0f, 0.0f, -60.0f}, { 60.0f, 30.0f, 60.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU); ParticleEmitter *pCtrl = partEmitList_pushNew(0xFU);
particleEmitter_setModel(pCtrl, 0x89A); particleEmitter_setModel(pCtrl, 0x89A);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
func_802EFE24(pCtrl, -200.0f, 200.0f, -200.0f, 200.0f, 200.0f, 200.0f); func_802EFE24(pCtrl, -200.0f, 200.0f, -200.0f, 200.0f, 200.0f, 200.0f);
@@ -407,7 +153,14 @@ void func_8036233C(f32 arg0[3]) {
} }
void func_80362404(f32 arg0[3]) { void func_80362404(f32 arg0[3]) {
static struct40s D_803735D4 = {{{1.1f, 1.1f}, {4.3f, 4.3f}, {0.0f, 0.05f}, {0.3f, 0.5f}, 0.06f, 0.3f}, 4.0f, 1.0f};
static struct42s D_80373604 = {
{{0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}},
{{0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1U); ParticleEmitter *pCtrl = partEmitList_pushNew(1U);
particleEmitter_setSprite(pCtrl, 0x6DD); particleEmitter_setSprite(pCtrl, 0x6DD);
particleEmitter_setStartingFrameRange(pCtrl, 2, 2); particleEmitter_setStartingFrameRange(pCtrl, 2, 2);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
@@ -416,7 +169,15 @@ void func_80362404(f32 arg0[3]) {
} }
void func_8036247C(f32 arg0[3]) { void func_8036247C(f32 arg0[3]) {
static s32 D_80373634[3] = {0xA, 0xFF, 0xA};
static struct40s D_80373640 = {{{2.0f, 2.0f}, {3.0f, 3.5f}, {0.0f, 0.01f}, {2.0f, 2.5f}, 0.1f, 0.4}, 4.0f, 1.0f};
static struct42s D_80373670 = {
{{ 0.0f, 40.0f, 0.0f}, { 0.0f, 90.0f, 0.0f}},
{{-400.0f, 0.0f, -400.0f}, { 400.0f, 0.0f, 400.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1U); ParticleEmitter *pCtrl = partEmitList_pushNew(1U);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, 0x70D);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, &D_80373634); func_802EFFA8(pCtrl, &D_80373634);
@@ -427,6 +188,9 @@ void func_8036247C(f32 arg0[3]) {
} }
void func_80362510(Actor *actor) { void func_80362510(Actor *actor) {
static s32 D_803736A0[3] = {0xFF, 0xFF, 0xFF};
static struct40s D_803736AC = {{{0.01f, 0.01f}, {1.5f, 1.6f}, {0.05f, 0.7f}, {0.7f, 1.3f}, 0.1f, 0.8f}, 4.0f, 25.0f};
ParticleEmitter *pCtrl; ParticleEmitter *pCtrl;
f32 sp30[3]; f32 sp30[3];
@@ -451,7 +215,14 @@ void func_80362510(Actor *actor) {
void func_80362680(f32 arg0[3]) { void func_80362680(f32 arg0[3]) {
static struct40s D_803736DC = {{{0.7f, 0.9f}, {0.4f, 0.5}, {0.0f, 0.01f}, {0.8f, 1.0f}, 0.15f, 0.3f}, 0.0f, 1.0f};
static struct42s D_8037370C = {
{{-10.0f, -10.0f, -10.0f}, { 10.0f, 10.0f, 10.0f}},
{{ 0.0f, 30.0f, 0.0f}, { 0.0f, 30.0f, 0.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1U); ParticleEmitter *pCtrl = partEmitList_pushNew(1U);
particleEmitter_setSprite(pCtrl, 0x45A); particleEmitter_setSprite(pCtrl, 0x45A);
particleEmitter_setStartingFrameRange(pCtrl, 2, 2); particleEmitter_setStartingFrameRange(pCtrl, 2, 2);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
@@ -460,6 +231,13 @@ void func_80362680(f32 arg0[3]) {
} }
void func_803626F8(f32 arg0[3]) { void func_803626F8(f32 arg0[3]) {
static struct40s D_8037373C = {{{0.05f, 0.1f}, {0.1f, 0.2f}, {0.0f, 0.01f}, {1.4f, 1.5f}, 0.01f, 0.7f}, 0.0f, 1.0f};
static struct43s D_8037376C = {
{{ -5.0f, -5.0f, -5.0f}, { 5.0f, 5.0f, 5.0f}},
{{ 0.0f, -50.0f, 0.0f}, { 0.0f, -90.0f, 0.0f}},
{{-30.0f, 30.0f, -30.0f}, { 30.0f, 60.0f, 30.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1U); ParticleEmitter *pCtrl = partEmitList_pushNew(1U);
particleEmitter_setSprite(pCtrl, 0x713); particleEmitter_setSprite(pCtrl, 0x713);
@@ -471,6 +249,13 @@ void func_803626F8(f32 arg0[3]) {
void func_80362770(f32 arg0[3]) { void func_80362770(f32 arg0[3]) {
static s32 D_803737B4[3] = {0xFF, 0xFF, 00};
static struct40s D_803737C0 = {{{0.1f, 0.3f}, {0.6f, 0.7f}, {0.0f, 0.01f}, {0.3f, 0.4f}, 0.01f, 0.3f}, 4.0f, 16.0f};
static struct42s D_803737F0 = {
{{-600.0f, -600.0f, -600.0f}, { 600.0f, 600.0f, 600.0f}},
{{ 0.0f, 30.0f, 0.0f}, { 0.0f, 30.0f, 0.0f}},
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0x10U); ParticleEmitter *pCtrl = partEmitList_pushNew(0x10U);
particleEmitter_setSprite(pCtrl, 0x714); particleEmitter_setSprite(pCtrl, 0x714);
@@ -482,7 +267,16 @@ void func_80362770(f32 arg0[3]) {
} }
void func_803627F8(f32 arg0[3]){ void func_803627F8(f32 arg0[3]){
static s32 D_80373820[3] = {130, 155, 40};
static struct40s D_8037382C = {{{3.3f, 3.3f}, {4.5f, 4.7f}, {0.0f, 0.01f}, {1.8f, 3.2f}, 0.31f, 0.73f}, 4.0f, 11.0f};
static struct43s D_8037385C = {
{{-200.0f, 120.0f, -200.0f}, { 200.0f, 130.0f, 200.0f}},
{{ 0.0f, -100.0f, 0.0f}, { 0.0f, -100.0f, 0.0f}},
{{ -30.0f, 0.0f, -30.0f}, { 30.0f, 0.0f, 30.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(11); ParticleEmitter *pCtrl = partEmitList_pushNew(11);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, D_80373820); func_802EFFA8(pCtrl, D_80373820);
@@ -493,7 +287,16 @@ void func_803627F8(f32 arg0[3]){
} }
void func_8036288C(f32 arg0[3]){ void func_8036288C(f32 arg0[3]){
static s32 D_803738A4[3] = {91, 142, 0};
static struct40s D_803738B0 = {{{0.2f, 0.9f}, {0.4f, 0.9f}, {0.0f, 0.01f}, {1.8f, 4.2f}, 0.31f, 0.73f}, 4.0f, 13.0f};
static struct43s D_803738E0 = {
{{-400.0f, 520.0f, -400.0f}, { 400.0f, 750.0f, 400.0f}},
{{ 0.0f, -1200.0f, 0.0f}, { 0.0f, -1600.0f, 0.0f}},
{{ -30.0f, 0.0f, -30.0f}, { 30.0f, 0.0f, 30.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xd); ParticleEmitter *pCtrl = partEmitList_pushNew(0xd);
particleEmitter_setSprite(pCtrl, ASSET_702_SPRITE_UNKNOWN); particleEmitter_setSprite(pCtrl, ASSET_702_SPRITE_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 3, 4); particleEmitter_setStartingFrameRange(pCtrl, 3, 4);
func_802EFFA8(pCtrl, D_803738A4); func_802EFFA8(pCtrl, D_803738A4);
@@ -504,6 +307,13 @@ void func_8036288C(f32 arg0[3]){
} }
void func_80362920(f32 arg0[3]){ void func_80362920(f32 arg0[3]){
static s32 D_80373928[3] = {0, 255, 0};
static struct40s D_80373934 = {{{1.4f, 1.9f}, {2.4f, 2.9f}, {0.0f, 3.2f}, {8.8f, 9.2f}, 0.31f, 0.73f}, 4.0f, 13.0f};
static struct43s D_80373964 = {
{{-60.0f, 100.0f, -60.0f}, { 60.0f, 170.0f, 60.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{-30.0f, 0.0f, -30.0f}, { 30.0f, 0.0f, 30.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xd); ParticleEmitter *pCtrl = partEmitList_pushNew(0xd);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
@@ -515,7 +325,16 @@ void func_80362920(f32 arg0[3]){
} }
void func_803629B4(f32 arg0[3]){ void func_803629B4(f32 arg0[3]){
static s32 D_803739AC[3] = {255, 255, 255};
static struct40s D_803739B8 = {{{0.2f, 0.9f}, {0.3f, 0.4f}, {0.0f, 0.2f}, {1.0f, 1.2f}, 0.31f, 0.73f}, 4.0f, 13.0f};
static struct43s D_803739E8 = {
{{-600.0f, 0.0f, -600.0f}, { 600.0f, 0.0f, 600.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{ 0.0f, 40.0f, 0.0f}, { 0.0f, 40.0f, 0.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xd); ParticleEmitter *pCtrl = partEmitList_pushNew(0xd);
particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW); particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, D_803739AC); func_802EFFA8(pCtrl, D_803739AC);
@@ -526,7 +345,16 @@ void func_803629B4(f32 arg0[3]){
} }
void func_80362A48(f32 arg0[3]){ void func_80362A48(f32 arg0[3]){
static s32 D_80373A30[3] = {255, 255, 255};
static struct40s D_80373A3C = {{{1.5f, 1.6f}, {2.5f, 2.9f}, {0.0f, 0.01f}, {2.0f, 2.5f}, 0.1f, 0.4f}, 4.0f, 1.0f};
static struct43s D_80373A6C = {
{{ 0.0f, 40.0f, 0.0f}, { 0.0f, 90.0f, 0.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{-5.0f, 0.0f, -5.0f}, { 5.0f, 0.0f, 5.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1); ParticleEmitter *pCtrl = partEmitList_pushNew(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, D_80373A30); func_802EFFA8(pCtrl, D_80373A30);
@@ -537,7 +365,16 @@ void func_80362A48(f32 arg0[3]){
} }
void func_80362ADC(f32 arg0[3]){ void func_80362ADC(f32 arg0[3]){
static s32 D_80373AB4[3] = {30, 30, 30};
static struct40s D_80373AC0 = {{{3.0f, 3.4f}, {3.9f, 4.1f}, {0.0f, 0.01f}, {2.0f, 2.5f}, 0.3f, 0.5f}, 4.0f, 1.0f};
static struct43s D_80373AF0 = {
{{100.0f, 40.0f, 100.0f}, {100.0f, 90.0f, 100.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{ -5.0f, 0.0f, -5.0f}, { 5.0f, 0.0f, 5.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1); ParticleEmitter *pCtrl = partEmitList_pushNew(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, D_80373AB4); func_802EFFA8(pCtrl, D_80373AB4);
@@ -548,6 +385,13 @@ void func_80362ADC(f32 arg0[3]){
} }
void func_80362B70(f32 arg0[3]){ void func_80362B70(f32 arg0[3]){
static s32 D_80373B38[3] = {130, 130, 130};
static struct40s D_80373B44 = {{{2.0f, 2.4f}, {3.9f, 4.1f}, {0.0f, 0.01f}, {2.0f, 2.5f}, 0.2f, 0.7f}, 4.0f, 1.0f};
static struct43s D_80373B74 = {
{{100.0f, 40.0f, 100.0f}, {100.0f, 90.0f, 100.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{ -5.0f, 0.0f, -5.0f}, { 5.0f, 0.0f, 5.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1); ParticleEmitter *pCtrl = partEmitList_pushNew(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
@@ -559,7 +403,16 @@ void func_80362B70(f32 arg0[3]){
} }
void func_80362C04(f32 arg0[3]){ void func_80362C04(f32 arg0[3]){
static s32 D_80373BBC[3] = {0xff, 0xff, 0xff};
static struct40s D_80373BC8 = {{{0.5f, 0.6f}, {1.5f, 1.9f}, {0.0f, 0.01f}, {4.0f, 4.5f}, 0.1f, 0.8f,}, 0.0f, 1.0f};
static struct43s D_80373BF8 = {
{{ 0.0f, 40.0f, 0.0f}, { 0.0f, 90.0f, 0.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{-5.0f, 0.0f, -5.0f}, { 5.0f, 0.0f, 5.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1); ParticleEmitter *pCtrl = partEmitList_pushNew(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, D_80373BBC); func_802EFFA8(pCtrl, D_80373BBC);
@@ -570,7 +423,16 @@ void func_80362C04(f32 arg0[3]){
} }
void func_80362C98(f32 arg0[3]){ void func_80362C98(f32 arg0[3]){
static s32 D_80373C40[3] = {160, 170, 170};
static struct40s D_80373C4C = {{{2.5f, 2.6f}, {3.5f, 3.9f}, {0.0f, 0.01f}, {0.3f, 0.5f}, 0.1f, 0.8f}, 4.0f, 1.0f};
static struct43s D_80373C7C = {
{{-60.0f, -60.0f, -60.0f}, { 60.0f, 60.0f, 60.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{-50.0f, -50.0f, -50.0f}, { 50.0f, 50.0f, 50.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1); ParticleEmitter *pCtrl = partEmitList_pushNew(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EFFA8(pCtrl, D_80373C40); func_802EFFA8(pCtrl, D_80373C40);
@@ -581,7 +443,16 @@ void func_80362C98(f32 arg0[3]){
} }
void func_80362D2C(f32 arg0[3]){ void func_80362D2C(f32 arg0[3]){
static s32 D_80373CC4[] = {90, 90, 90};
static struct40s D_80373CD0 = {{{1.5f, 1.6f}, {2.5f, 2.9f}, {0.0f, 0.01f}, {0.3f, 0.5f}, 0.1f, 0.8f}, 4.0f, 1.0f};
static struct43s D_80373D00 = {
{{-60.0f, -60.0f, -60.0f}, {60.0f, 60.0f, 60.0f}},
{{ 0.0f, 0.0f, 0.0f}, { 0.0f, 0.0f, 0.0f}},
{{-50.0f, -50.0f, -50.0f}, {50.0f, 50.0f, 50.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(1); ParticleEmitter *pCtrl = partEmitList_pushNew(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 4, 6); particleEmitter_setStartingFrameRange(pCtrl, 4, 6);
func_802EFFA8(pCtrl, D_80373CC4); func_802EFFA8(pCtrl, D_80373CC4);
@@ -592,6 +463,13 @@ void func_80362D2C(f32 arg0[3]){
} }
void func_80362DC0(f32 arg0[3]){ void func_80362DC0(f32 arg0[3]){
static struct40s D_80373D48 = {{ {1.8f, 3.5f}, {1.8f, 3.5f}, {0.0f, 0.01f}, {5.0f, 5.0f}, 0.0f, 0.9f}, 4.0f, 15.0f };
static struct43s D_80373D78 = {
{{-450.0f, 700.0f, -450.0f}, {450.0f, 1100.0f, 450.0f}},
{{ 0.0f, -900.0f, 0.0f}, { 0.0f, -900.0f, 0.0f}},
{{-150.0f, -100.0f, -150.0f}, {150.0f, 5.0f, 150.0f}}
};
ParticleEmitter *pCtrl = partEmitList_pushNew(0xF); ParticleEmitter *pCtrl = partEmitList_pushNew(0xF);
particleEmitter_setModel(pCtrl, ASSET_47B_MODEL_ROCK); particleEmitter_setModel(pCtrl, ASSET_47B_MODEL_ROCK);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
@@ -731,5 +609,4 @@ void func_80363388(struct_core2_DB010 *arg0, s32 arg1){
// could be any unused value(s) between (0x29 and 0x36) // could be any unused value(s) between (0x29 and 0x36)
break; break;
} }
} }

View File

@@ -1501,10 +1501,9 @@ void cutscenes_func_8038C454(s32 arg0, s32 arg1) {
func_80288D40(arg0, 0.35f, func_803881CC, arg1); func_80288D40(arg0, 0.35f, func_803881CC, arg1);
} }
struct { /* .h */
s16 unk0;
void (*unk4)(s32, s32); Struct63s D_8038D904[] = {
}D_8038D904[] = {
{0x1BE, func_803882D4}, {0x1BE, func_803882D4},
{0x1BF, func_8038837C}, {0x1BF, func_8038837C},
{0x1BD, cutscenes_func_803883AC}, {0x1BD, cutscenes_func_803883AC},
@@ -1513,79 +1512,139 @@ struct {
{0x20B, cutscenes_func_80388660}, {0x20B, cutscenes_func_80388660},
{0x207, func_80388734}, {0x207, func_80388734},
{0x1C5, func_803887A0}, {0x1C5, func_803887A0},
{0x000, NULL}, 0
};
Struct63s D_8038D94C[] = {
{0x1C7, func_80388C40}, {0x1C7, func_80388C40},
{0x1C8, func_80388CE4}, {0x1C8, func_80388CE4},
{0x000, NULL}, 0
};
Struct63s D_8038D964[] = {
{0x2B8, func_80388A6C}, {0x2B8, func_80388A6C},
{0x085, func_80388B58}, {0x085, func_80388B58},
{0x1D0, func_80388814}, {0x1D0, func_80388814},
{0x093, func_80388920}, {0x093, func_80388920},
{0x1D5, func_803889CC}, {0x1D5, func_803889CC},
{0x000, NULL}, 0
};
Struct63s D_8038D994[] = {
{0x1B8, func_80388D30}, {0x1B8, func_80388D30},
{0x1C2, func_80388DE4}, {0x1C2, func_80388DE4},
{0x000, NULL}, 0
};
Struct63s D_8038D9AC[] = {
{0x1F8, func_80388E30}, {0x1F8, func_80388E30},
{0x13A, func_80388EE0}, {0x13A, func_80388EE0},
{0x13B, func_80388F9C}, {0x13B, func_80388F9C},
{0x296, func_803890CC}, {0x296, func_803890CC},
{0x2B2, cutscenes_func_80389204}, {0x2B2, cutscenes_func_80389204},
{0x299, func_8038933C}, {0x299, func_8038933C},
{0x000, NULL}, 0
};
Struct63s D_8038D9E4[] = {
{0x13D, func_80389498}, {0x13D, func_80389498},
{0x000, NULL}, 0
};
Struct63s D_8038D9F4[] = {
{0x1D3, func_803894E8}, {0x1D3, func_803894E8},
{0x1D4, func_803895CC}, {0x1D4, func_803895CC},
{0x1CB, func_80389698}, {0x1CB, func_80389698},
{0x000, NULL}, 0
};
Struct63s D_8038DA14[] = {
{0x079, func_803896C8}, {0x079, func_803896C8},
{0x084, cutscenes_func_80389850}, {0x084, cutscenes_func_80389850},
{0x000, NULL}, 0
};
Struct63s D_8038DA2C[] = {
{0x163, func_80389B84}, {0x163, func_80389B84},
{0x0F9, func_80389C30}, {0x0F9, func_80389C30},
{0x000, NULL}, 0
};
Struct63s D_8038DA44[] = {
{0x200, func_80389D34}, {0x200, func_80389D34},
{0x1FF, func_80389D78}, {0x1FF, func_80389D78},
{0x1FE, func_80389DFC}, {0x1FE, func_80389DFC},
{0x20C, cutscenes_func_80389EA8}, {0x20C, cutscenes_func_80389EA8},
{0x1C1, func_8038A018}, {0x1C1, func_8038A018},
{0x000, NULL}, 0
};
Struct63s D_8038DA74[] = {
{0x1D5, func_80388BCC}, {0x1D5, func_80388BCC},
{0x000, NULL}, 0
};
Struct63s D_8038DA84[] = {
{0x202, cutscenes_func_8038A54C}, {0x202, cutscenes_func_8038A54C},
{0x201, func_8038A5C8}, {0x201, func_8038A5C8},
{0x2B6, func_8038A734}, {0x2B6, func_8038A734},
{0x2B7, func_8038A6D0}, {0x2B7, func_8038A6D0},
{0x000, NULL}, 0
};
Struct63s D_8038DAAC[] = {
{0x202, func_8038A7E8}, {0x202, func_8038A7E8},
{0x000, NULL}, 0
};
Struct63s D_8038DABC[] = {
{0x202, cutscenes_func_8038A864}, {0x202, cutscenes_func_8038A864},
{0x000, NULL}, 0
};
Struct63s D_8038DACC[] = {
{0x200, func_8038A05C}, {0x200, func_8038A05C},
{0x1FF, cutscenes_func_8038A0A0}, {0x1FF, cutscenes_func_8038A0A0},
{0x1FE, func_8038A15C}, {0x1FE, func_8038A15C},
{0x20C, func_8038A254}, {0x20C, func_8038A254},
{0x1C1, cutscenes_func_8038A2F0}, {0x1C1, cutscenes_func_8038A2F0},
{0x210, func_8038A334}, {0x210, func_8038A334},
{0x000, NULL}, 0
};
Struct63s D_8038DB04[] = {
{0x1FA, func_8038A954}, {0x1FA, func_8038A954},
{0x1FB, func_8038A9A0}, {0x1FB, func_8038A9A0},
{0x000, NULL}, 0
};
Struct63s D_8038DB1C[] = {
{0x1FC, func_8038A9D0}, {0x1FC, func_8038A9D0},
{0x1FD, func_8038AA64}, {0x1FD, func_8038AA64},
{0x000, NULL}, 0
};
Struct63s D_8038DB34[] = {
{0x20E, func_8038AAFC}, {0x20E, func_8038AAFC},
{0x000, NULL}, 0
};
Struct63s D_8038DB44[] = {
{0x292, cutscenes_func_8038AB60}, {0x292, cutscenes_func_8038AB60},
{0x000, NULL}, 0
};
Struct63s D_8038DB54[] = {
{0x293, func_8038AC54}, {0x293, func_8038AC54},
{0x29A, func_8038B098}, {0x29A, func_8038B098},
{0x295, func_8038B214}, {0x295, func_8038B214},
{0x29B, func_8038B404}, {0x29B, func_8038B404},
{0x00C, func_8038AF5C}, {0x00C, func_8038AF5C},
{0x2BA, func_8038B5FC}, {0x2BA, func_8038B5FC},
{0x000, NULL}, 0
};
Struct63s D_8038DB8C[] = {
{0x291, func_8038B744}, {0x291, func_8038B744},
{0x294, func_8038B7B4}, {0x294, func_8038B7B4},
{0x2AE, func_8038B8B8}, {0x2AE, func_8038B8B8},
@@ -1595,28 +1654,52 @@ struct {
{0x2B5, func_8038BE30}, {0x2B5, func_8038BE30},
{0x2BB, func_8038BD2C}, {0x2BB, func_8038BD2C},
{0x2BC, func_8038BD9C}, {0x2BC, func_8038BD9C},
{0x000, NULL}, 0
};
Struct63s D_8038DBDC[] = {
{0x297, cutscenes_func_803898C8}, {0x297, cutscenes_func_803898C8},
{0x298, func_80389AD0}, {0x298, func_80389AD0},
{0x000, NULL}, 0
};
Struct63s D_8038DBF4[] = {
{0x29E, func_8038BF5C}, {0x29E, func_8038BF5C},
{0x29F, cutscenes_func_8038C0DC}, {0x29F, cutscenes_func_8038C0DC},
{0x000, NULL}, 0
};
Struct63s D_8038DC0C[] = {
{0x29C, cutscenes_func_8038C16C}, {0x29C, cutscenes_func_8038C16C},
{0x200, func_8038C19C}, {0x200, func_8038C19C},
{0x295, func_8038C200}, {0x295, func_8038C200},
{0x000, NULL}, 0
{0x2B9, func_8038C264},
{0x000, NULL},
{0x08C, func_8038C3BC},
{0x000, NULL},
{0x08F, func_8038C314},
{0x090, func_8038C35C},
{0x000, NULL},
{0x07A, func_8038C404},
{0x000, NULL},
{0x2A0, cutscenes_func_8038C454},
{0x000, NULL},
{0x000, NULL},
}; };
Struct63s D_8038DC2C[] = {
{0x2B9, func_8038C264},
0
};
Struct63s D_8038DC3C[] = {
{0x08C, func_8038C3BC},
0
};
Struct63s D_8038DC4C[] = {
{0x08F, func_8038C314},
{0x090, func_8038C35C},
0
};
Struct63s D_8038DC64[] = {
{0x07A, func_8038C404},
0
};
Struct63s D_8038DC74[] = {
{0x2A0, cutscenes_func_8038C454},
0
};

View File

@@ -50,13 +50,6 @@ f32 D_80394BC0[2] = {1000.0f, 2000.0f};
s32 D_80394BC8[3] = {0xC0, 0xC0, 0xC0}; s32 D_80394BC8[3] = {0xC0, 0xC0, 0xC0};
s32 D_80394BD4[3] = {0xff, 0x80, 0x80}; s32 D_80394BD4[3] = {0xff, 0x80, 0x80};
/* .rodata */
extern f32 D_803952D0; // .rodata : 0.2f
extern f64 D_803952D8; // 4.0
extern f64 D_803952E0;
extern f64 D_803952E8;
/* .code */ /* .code */
void func_80391160(f32 pos[3], u32 count) void func_80391160(f32 pos[3], u32 count)
{ {