Merge branch 'Rainchus:main' into main
This commit is contained in:
commit
ae57b017e5
20 changed files with 2346 additions and 1571 deletions
|
|
@ -76,7 +76,7 @@ void fn_8000F038(s16, s32, s32);
|
|||
s16 fn_800204D0(s32);
|
||||
void fn_80021228(s16, s32);
|
||||
void fn_80022420(s16, s32);
|
||||
void fn_80023828(s16, s32);
|
||||
void Hu3DModelLightInfoSet(s16, s32);
|
||||
extern s16 lbl_1_bss_6;
|
||||
extern temp2 lbl_1_bss_8;
|
||||
extern f32 lbl_1_rodata_48;
|
||||
|
|
@ -103,7 +103,7 @@ void fn_1_2100(void) {
|
|||
fn_80021228(temp_r3_3, 1);
|
||||
fn_80021228(temp_r3_3, 0x40000001);
|
||||
fn_80022420(temp_r3_3, 1);
|
||||
fn_80023828(temp_r3_3, 1);
|
||||
Hu3DModelLightInfoSet(temp_r3_3, 1);
|
||||
lbl_1_bss_6 = fn_8000E0F8(4);
|
||||
fn_80008364(0x740008, 0x10000000, 2);
|
||||
temp_r3 = fn_8000DD24();
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ static void SubchrMain()
|
|||
int ext_character[4];
|
||||
int i, cursor_pos;
|
||||
for(i=0; i<4; i++) {
|
||||
character[i] = gPlayerConfig[i].character;
|
||||
character[i] = GWPlayerCfg[i].character;
|
||||
ext_character[i] = 0;
|
||||
cur_direction[i] = 0;
|
||||
}
|
||||
|
|
@ -90,13 +90,13 @@ static void SubchrMain()
|
|||
if(GetBtns() & 0x1000) {
|
||||
for(i=0; i<4; i++) {
|
||||
if(ext_character[i] != 0) {
|
||||
gPlayerConfig[i]. character = ext_character[i]+7;
|
||||
GWPlayerCfg[i].character = ext_character[i]+7;
|
||||
}
|
||||
}
|
||||
fn_80032A58(30);
|
||||
HuAudFadeOut(30);
|
||||
WipeCreate(2, 0, -1);
|
||||
HuPrcSleep(wipeData.duration+1.0f);
|
||||
fn_80035A0C();
|
||||
MGSeqKillAll();
|
||||
omOvlGotoEx(OVL_M433, 1, 0, 0);
|
||||
do {
|
||||
HuPrcVSleep();
|
||||
|
|
@ -145,10 +145,10 @@ static void SubchrMain()
|
|||
cursor_pos = 0;
|
||||
}
|
||||
if(GetBtns() & 0x200) {
|
||||
fn_80032A58(30);
|
||||
HuAudFadeOut(30);
|
||||
WipeCreate(2, 0, -1);
|
||||
HuPrcSleep(wipeData.duration+1.0f);
|
||||
fn_80035A0C();
|
||||
MGSeqKillAll();
|
||||
omOvlReturnEx(1, 1);
|
||||
do {
|
||||
HuPrcVSleep();
|
||||
|
|
|
|||
|
|
@ -1,150 +1,72 @@
|
|||
#include "common.h"
|
||||
#include "REL/executor.h"
|
||||
#include "include/REL/w10Dll.h"
|
||||
|
||||
s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame);
|
||||
//BSS
|
||||
s16 lbl_1_bss_22[11];
|
||||
s16 lbl_1_bss_20;
|
||||
s16 lbl_1_bss_1E;
|
||||
s16 lbl_1_bss_1C;
|
||||
Process* lbl_1_bss_18;
|
||||
s16 lbl_1_bss_10[4];
|
||||
s16 lbl_1_bss_E;
|
||||
s16 lbl_1_bss_C;
|
||||
void* lbl_1_bss_8;
|
||||
s32 lbl_1_bss_4_pad;
|
||||
BoardStateSubStruct* lbl_1_bss_0;
|
||||
|
||||
typedef struct unkw10Dll {
|
||||
char unk0[0x0C];
|
||||
Vec3f unk0C;
|
||||
Vec3f unk18;
|
||||
s32 unk24;
|
||||
} unkw10Dll; //sizeof 0x28
|
||||
//DATA
|
||||
unkw10Dll lbl_1_data_0[1] = {
|
||||
3300.0f, 100.0f, -900.0f,
|
||||
0.0f, 0.0f, 0.0f,
|
||||
1.0f, 1.0f, 1.0f,
|
||||
0x007B0003
|
||||
};
|
||||
|
||||
typedef struct w10DllUnk01 {
|
||||
u8 unk0;
|
||||
f32 unk4;
|
||||
f32 unk8;
|
||||
f32 unkC;
|
||||
f32 unk10;
|
||||
} w10DllUnk01; //sizeof ?
|
||||
|
||||
typedef struct w10DllUnk02 {
|
||||
char unk00[0x5C];
|
||||
w10DllUnk01* unk5C;
|
||||
} w10DllUnk02; //sizeof ?
|
||||
s16 lbl_1_data_28 = -1;
|
||||
s16 lbl_1_data_2A = -1;
|
||||
s16 lbl_1_data_2C = -1;
|
||||
s16 lbl_1_data_2E = -1;
|
||||
s16 lbl_1_data_30 = -1;
|
||||
s16 lbl_1_data_32 = -1;
|
||||
|
||||
//this belongs to m456Dll
|
||||
w10DllUnk02** fn_8002FAC0(Process*, s32);
|
||||
void fn_8003FD10(s16, f32, f32);
|
||||
extern s16 lbl_1_bss_20;
|
||||
extern f32 lbl_1_rodata_5C;
|
||||
extern f32 lbl_1_rodata_60;
|
||||
s16 fn_8003F958(s32, s32, s32);
|
||||
void fn_8003FBEC(s16);
|
||||
void fn_8008853C(s32);
|
||||
extern s32 lbl_801A52E8;
|
||||
void fn_800B42B4(s32);
|
||||
void fn_80082AAC(s32);
|
||||
void fn_800B4264(s32, s32, s32);
|
||||
void fn_1_1FB0(void);
|
||||
void fn_1_1E3C(s32, s32, s32);
|
||||
void fn_8007500C(s32);
|
||||
void fn_1_BA0(s32);
|
||||
void fn_8006F0D4(s32, f32);
|
||||
f32 fn_8006F128(s32);
|
||||
f64 fmod(f32, f64);
|
||||
void fn_1_C20(void);
|
||||
void fn_8006F61C(s16, s32);
|
||||
void fn_800B42BC(s16);
|
||||
void fn_80023828(s32, s32);
|
||||
s32 fn_8006DBD4(s16);
|
||||
void fn_8005B150(void*, void*);
|
||||
void fn_1_6D8(void);
|
||||
void fn_1_E0(void);
|
||||
void fn_8006F2E8(s32, Vec3f*);
|
||||
void HuWinMesSet(s16, s32);
|
||||
void fn_1_1D68(void);
|
||||
void fn_1_1DEC(void);
|
||||
void fn_1_AEC(void);
|
||||
void fn_80042848(s16);
|
||||
void fn_80045BF4(s16, s32);
|
||||
void fn_80045D7C(s16, s32, s32, s32, s32);
|
||||
void fn_80045E84(s16, s32);
|
||||
void fn_80046F04(s32, f32*, ...);
|
||||
void fn_8005D10C(void*, void*);
|
||||
s16 fn_8006D9A4(s32, void*, s32);
|
||||
void fn_8006DB90(s16);
|
||||
void fn_8006DDE8(s16, f32);
|
||||
void fn_8006E2B8(s16, s32, s32);
|
||||
void fn_8006E878(s16, f32);
|
||||
void fn_8006F158(s16, void*);
|
||||
void fn_8006F1A8(s16, f32, f32, f32);
|
||||
s32 fn_8006F220(s16 arg0, Vec3f* arg1);
|
||||
void fn_8006F50C(s16, s32);
|
||||
void fn_80073FF4(void*);
|
||||
void fn_80073FFC(void*);
|
||||
void fn_80074004(void*);
|
||||
s32 fn_800745F0(s32, s32);
|
||||
void fn_800772EC(s32);
|
||||
void fn_80077A3C(void);
|
||||
void fn_80077AAC(s16);
|
||||
void fn_8007A83C(s16);
|
||||
void fn_80083EDC(s16);
|
||||
void fn_800A4F6C(s16);
|
||||
void fn_800B3FD8(void*);
|
||||
void fn_800B4274(s32, s32);
|
||||
void fn_1_1AAC(void);
|
||||
void fn_1_8C0(void);
|
||||
void fn_1_904(void);
|
||||
void fn_1_908(void);
|
||||
s32 fn_1_90C(void);
|
||||
void fn_1_91C(void);
|
||||
void Hu3D2Dto3D(Vec3f*, s32, Vec3f*);
|
||||
void fn_8005D5C0(Vec3f*);
|
||||
void fn_8006F338(s16, f32, f32, f32);
|
||||
s32 fn_8005B6A8(void);
|
||||
void fn_8006EFBC(s16, Mtx);
|
||||
void fn_8006F270(s16, f32, f32, f32);
|
||||
void fn_8003FB08(s16);
|
||||
extern Vec3f lbl_1_data_80[];
|
||||
extern f32 lbl_1_rodata_38;
|
||||
extern f32 lbl_1_rodata_3C;
|
||||
extern f32 lbl_1_rodata_40;
|
||||
extern Process* lbl_1_bss_18;
|
||||
extern s16 lbl_1_bss_1C;
|
||||
extern s16 lbl_1_bss_1E;
|
||||
extern s32 lbl_1_data_78; //no idea on the type of this
|
||||
extern f64 lbl_1_rodata_28;
|
||||
extern f32 lbl_1_rodata_30;
|
||||
extern f32 lbl_1_rodata_34;
|
||||
extern BoardStateSubStruct* lbl_1_bss_0;
|
||||
extern s16 lbl_1_bss_10[12]; //could be incorrect size
|
||||
extern void* lbl_1_bss_8; //unknown type
|
||||
extern s16 lbl_1_bss_C;
|
||||
extern s16 lbl_1_bss_E;
|
||||
extern unkw10Dll lbl_1_data_0[1];
|
||||
extern s16 lbl_1_bss_22[11];
|
||||
extern s32 lbl_1_data_2A8[11];
|
||||
extern s16 lbl_1_data_28;
|
||||
extern s16 lbl_1_data_2A;
|
||||
extern s16 lbl_1_data_2C;
|
||||
extern s16 lbl_1_data_2E;
|
||||
extern s16 lbl_1_data_30;
|
||||
extern s16 lbl_1_data_32;
|
||||
extern s32 lbl_1_data_54; //unknown type
|
||||
extern s32 lbl_1_data_5C; //unknown type
|
||||
extern s32 lbl_1_data_64; //unknown type
|
||||
extern s32 lbl_1_data_6C; //unknown type
|
||||
extern f32 lbl_1_rodata_10;
|
||||
extern f32 lbl_1_rodata_14;
|
||||
extern f32 lbl_1_rodata_18;
|
||||
extern f32 lbl_1_rodata_1C;
|
||||
extern BoardState lbl_8018FCF8;
|
||||
//unused?
|
||||
s32 lbl_1_data_34[] = {
|
||||
0x005F0000, 0x001A0000,
|
||||
0x006D0000, 0x008A0000,
|
||||
0x00850000, 0x00110000,
|
||||
0x000D0000, 0x00810000,
|
||||
};
|
||||
|
||||
/*
|
||||
void fn_1_0(void) {
|
||||
fn_8005B150(&fn_1_E0, &fn_1_6D8);
|
||||
}
|
||||
*/
|
||||
s32 lbl_1_data_54[2] = {
|
||||
0x007B0012,
|
||||
-1
|
||||
};
|
||||
|
||||
s32 lbl_1_data_5C[2] = {
|
||||
0x00020009,
|
||||
-1
|
||||
};
|
||||
|
||||
s32 lbl_1_data_64[2] = {
|
||||
0x00020018,
|
||||
-1
|
||||
};
|
||||
|
||||
s32 lbl_1_data_6C[2] = {
|
||||
0x0002000E,
|
||||
-1,
|
||||
};
|
||||
|
||||
//RODATA
|
||||
//HACK: Force 0.5 and 3.0 double constants to appear in REL
|
||||
const double _half = 0.5;
|
||||
const double _three = 3.0;
|
||||
|
||||
// function is probably global. only inlined in rels?
|
||||
/*
|
||||
inline s32 get_current_board(void) {
|
||||
return lbl_8018FCF8.unk08 & 0x1F;
|
||||
return GWSystem.unk08 & 0x1F;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_E0(void) {
|
||||
f32 sp10;
|
||||
f32 spC;
|
||||
|
|
@ -156,7 +78,7 @@ void fn_1_E0(void) {
|
|||
s32 temp2;
|
||||
|
||||
temp2 = get_current_board();
|
||||
lbl_1_bss_0 = &lbl_8018FCF8.unk10;
|
||||
lbl_1_bss_0 = &GWSystem.unk10;
|
||||
lbl_1_bss_0->unk0 = 0;
|
||||
lbl_1_bss_0->unk4 = 0;
|
||||
lbl_1_bss_0->unk6 = 0;
|
||||
|
|
@ -168,25 +90,25 @@ void fn_1_E0(void) {
|
|||
temp = fn_800745F0(0, 1);
|
||||
fn_800B4274(temp, 1);
|
||||
lbl_1_data_28 = fn_8006D9A4(0x7B0001, NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_28, lbl_1_rodata_10);
|
||||
fn_8006F1A8(lbl_1_data_28, lbl_1_rodata_14, lbl_1_rodata_14, lbl_1_rodata_14);
|
||||
fn_8006DDE8(lbl_1_data_28, -1.0f);
|
||||
fn_8006F1A8(lbl_1_data_28, 0.0f, 0.0f, 0.0f);
|
||||
fn_8006E2B8(lbl_1_data_28, 0, 0x40000001);
|
||||
fn_8006E878(lbl_1_data_28, lbl_1_rodata_18);
|
||||
fn_8006E878(lbl_1_data_28, 1.0f);
|
||||
lbl_1_data_2A = fn_8006D9A4(0x7B0002, NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_2A, lbl_1_rodata_10);
|
||||
fn_8006F1A8(lbl_1_data_2A, lbl_1_rodata_14, lbl_1_rodata_14, lbl_1_rodata_14);
|
||||
fn_8006DDE8(lbl_1_data_2A, -1.0f);
|
||||
fn_8006F1A8(lbl_1_data_2A, 0.0f, 0.0f, 0.0f);
|
||||
fn_8006E2B8(lbl_1_data_2A, 0, 0x40000001);
|
||||
lbl_1_data_2C = fn_8006D9A4(0x7B0011, &lbl_1_data_54, 0);
|
||||
fn_8006F1A8(lbl_1_data_2C, lbl_1_rodata_14, lbl_1_rodata_14, lbl_1_rodata_14);
|
||||
lbl_1_data_2C = fn_8006D9A4(0x7B0011, lbl_1_data_54, 0);
|
||||
fn_8006F1A8(lbl_1_data_2C, 0.0f, 0.0f, 0.0f);
|
||||
fn_8006E2B8(lbl_1_data_2C, 1, 0x40000001);
|
||||
lbl_1_data_2E = fn_8006D9A4(0x20005, &lbl_1_data_5C, 0);
|
||||
lbl_1_data_2E = fn_8006D9A4(0x20005, lbl_1_data_5C, 0);
|
||||
fn_8006E2B8(lbl_1_data_2E, 1, 0x40000001);
|
||||
lbl_1_data_32 = fn_8006D9A4(0x20012, &lbl_1_data_64, 0);
|
||||
lbl_1_data_32 = fn_8006D9A4(0x20012, lbl_1_data_64, 0);
|
||||
fn_8006E2B8(lbl_1_data_32, 1, 0x40000001);
|
||||
lbl_1_data_30 = fn_8006D9A4(0x2000D, &lbl_1_data_6C, 0);
|
||||
lbl_1_data_30 = fn_8006D9A4(0x2000D, lbl_1_data_6C, 0);
|
||||
fn_8006E2B8(lbl_1_data_30, 1, 0x40000001);
|
||||
fn_8005D10C(&fn_1_8C0, &fn_1_904);
|
||||
for (i = 0; i < 1; i++) {
|
||||
for (i = 0; i < ARRAY_COUNT(lbl_1_data_0); i++) {
|
||||
temp_r30 = &lbl_1_data_0[i];
|
||||
if (temp_r30->unk24 != -1) {
|
||||
lbl_1_bss_8 = NULL;
|
||||
|
|
@ -210,16 +132,14 @@ void fn_1_E0(void) {
|
|||
fn_800A4F6C(lbl_1_data_32);
|
||||
fn_80077AAC(lbl_1_data_2E);
|
||||
fn_8007A83C(lbl_1_data_30);
|
||||
fn_80046F04(1, &spC, 0x2E003A);
|
||||
lbl_1_bss_E = HuWinCreate(lbl_1_rodata_1C, lbl_1_rodata_20, spC, sp10, 1);
|
||||
HuWinMesMaxSizeGet(1, &spC, 0x2E003A);
|
||||
lbl_1_bss_E = HuWinCreate(-10000.0f, 390.0f, spC, sp10, 1);
|
||||
HuWinMesSet(lbl_1_bss_E, 0x2E003A);
|
||||
fn_80045E84(lbl_1_bss_E, 0);
|
||||
fn_80045BF4(lbl_1_bss_E, 1);
|
||||
fn_80045D7C(lbl_1_bss_E, 7, 0, 0, 0);
|
||||
HuWinMesSpeedSet(lbl_1_bss_E, 0);
|
||||
HuWinPriSet(lbl_1_bss_E, 1);
|
||||
HuWinMesPalSet(lbl_1_bss_E, 7, 0, 0, 0);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_6D8(void) {
|
||||
s32 i;
|
||||
for (i = 0; i < 1; i++) {
|
||||
|
|
@ -254,50 +174,34 @@ void fn_1_6D8(void) {
|
|||
}
|
||||
fn_8006DB90(lbl_1_bss_0->unk8);
|
||||
fn_1_1DEC();
|
||||
fn_80042848(lbl_1_bss_E);
|
||||
HuWinKill(lbl_1_bss_E);
|
||||
fn_80077A3C();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_8C0(void) {
|
||||
s32 temp = fn_8006DBD4(lbl_1_data_28);
|
||||
fn_80023828(temp, 1);
|
||||
Hu3DModelLightInfoSet(temp, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_904(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_908(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
s32 fn_1_90C(void) {
|
||||
return 0;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_914(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_918(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_91C(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
s32 fn_1_920(s32 arg0, f32 arg8, f32 arg9) {
|
||||
s32 var_r31;
|
||||
f32 var_f29;
|
||||
|
|
@ -305,34 +209,34 @@ s32 fn_1_920(s32 arg0, f32 arg8, f32 arg9) {
|
|||
|
||||
var_r31 = 0;
|
||||
var_f31 = fn_8006F128(arg0);
|
||||
arg8 = fmod(arg8, lbl_1_rodata_28);
|
||||
if (var_f31 < lbl_1_rodata_14) {
|
||||
var_f31 += lbl_1_rodata_30;
|
||||
arg8 = fmod(arg8, 360.0);
|
||||
if (var_f31 < 0.0f) {
|
||||
var_f31 += 360.0f;
|
||||
}
|
||||
if (arg8 < lbl_1_rodata_14) {
|
||||
arg8 += lbl_1_rodata_30;
|
||||
if (arg8 < 0.0f) {
|
||||
arg8 += 360.0f;
|
||||
}
|
||||
if (var_f31 != arg8) {
|
||||
var_f29 = arg8 - var_f31;
|
||||
if (var_f29 < lbl_1_rodata_14) {
|
||||
var_f29 += lbl_1_rodata_30;
|
||||
if (var_f29 < 0.0f) {
|
||||
var_f29 += 360.0f;
|
||||
}
|
||||
if (var_f29 < lbl_1_rodata_34) {
|
||||
if (var_f29 < 180.0f) {
|
||||
if (var_f29 > arg9) {
|
||||
var_f31 = var_f31 + arg9;
|
||||
} else {
|
||||
var_f31 = arg8;
|
||||
}
|
||||
} else if ((lbl_1_rodata_30 - var_f29) > arg9) {
|
||||
} else if ((360.0f - var_f29) > arg9) {
|
||||
var_f31 = var_f31 - arg9;
|
||||
} else {
|
||||
var_f31 = arg8;
|
||||
}
|
||||
if (var_f31 < lbl_1_rodata_14) {
|
||||
var_f31 += lbl_1_rodata_30;
|
||||
if (var_f31 < 0.0f) {
|
||||
var_f31 += 360.0f;
|
||||
}
|
||||
if (var_f31 >= lbl_1_rodata_30) {
|
||||
var_f31 -= lbl_1_rodata_30;
|
||||
if (var_f31 >= 360.0f) {
|
||||
var_f31 -= 360.0f;
|
||||
}
|
||||
fn_8006F0D4(arg0, var_f31);
|
||||
} else {
|
||||
|
|
@ -340,407 +244,3 @@ s32 fn_1_920(s32 arg0, f32 arg8, f32 arg9) {
|
|||
}
|
||||
return var_r31;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_AEC(void) {
|
||||
lbl_1_bss_1C = 0;
|
||||
lbl_1_bss_1E = fn_8006D9A4(0x7B000F, &lbl_1_data_78, 0);
|
||||
fn_8006E2B8(lbl_1_bss_1E, 1, 0x40000001);
|
||||
fn_800B42BC(lbl_1_bss_1E);
|
||||
fn_8006F61C(lbl_1_bss_1E, 6);
|
||||
lbl_1_bss_18 = HuPrcCreate(fn_1_C20, 0x1FFF, 0x1800, 0);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_BA0(s32 arg0) {
|
||||
s32 var_r31;
|
||||
|
||||
switch (lbl_1_bss_1C) {
|
||||
case 0:
|
||||
var_r31 = 5;
|
||||
break;
|
||||
case 1:
|
||||
var_r31 = 6;
|
||||
break;
|
||||
}
|
||||
BoardMessCreate(var_r31, arg0, -1);
|
||||
BoardMessWait();
|
||||
BoardMessKill();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_C10(void) {
|
||||
HuPrcEnd();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_C20(void) {
|
||||
Mtx sp20;
|
||||
Vec3f sp14;
|
||||
Vec3f sp8;
|
||||
|
||||
while (1) {
|
||||
if (fn_8005B6A8() != 0) {
|
||||
fn_8006DB90(lbl_1_bss_1E);
|
||||
fn_800B42BC(-1);
|
||||
HuPrcEnd();
|
||||
}
|
||||
Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14);
|
||||
fn_8006F158(lbl_1_bss_1E, &sp14);
|
||||
fn_8005D5C0(&sp8);
|
||||
PSMTXRotRad(sp20, 'y', lbl_1_rodata_38);
|
||||
fn_8006EFBC(lbl_1_bss_1E, sp20);
|
||||
fn_8006F270(lbl_1_bss_1E, sp8.x, lbl_1_rodata_3C, lbl_1_rodata_3C);
|
||||
fn_8006F338(lbl_1_bss_1E, lbl_1_rodata_40, lbl_1_rodata_40, lbl_1_rodata_40);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_D2C(void) {
|
||||
fn_1_BA0(0x2E0001);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_D54(void) {
|
||||
fn_1_BA0(0x2E0002);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_D7C(void) {
|
||||
fn_1_BA0(0x2E0003);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_DA4(void) {
|
||||
fn_1_BA0(0x2E0004);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_DCC(void) {
|
||||
fn_1_BA0(0x2E0005);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_DF4(void) {
|
||||
fn_1_BA0(0x2E0006);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_E1C(void) {
|
||||
fn_1_BA0(0x2E0007);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_E44(void) {
|
||||
fn_1_BA0(0x2E0008);
|
||||
fn_1_BA0(0x2E0009);
|
||||
fn_8007500C(0);
|
||||
fn_8006F50C(lbl_1_data_2C, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_E94(void) {
|
||||
fn_1_BA0(0x2E000A);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_EBC(void) {
|
||||
fn_1_BA0(0x2E000B);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_EE4(void) {
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_EE8(void) {
|
||||
fn_1_1E3C(0, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E000C);
|
||||
fn_1_BA0(0x2E000D);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_F30(void) {
|
||||
fn_1_1E3C(1, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E000E);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_F6C(void) {
|
||||
fn_1_1E3C(2, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E000F);
|
||||
fn_1_1FB0();
|
||||
fn_800B4264(0, 0x50, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_FB8(void) {
|
||||
fn_1_1E3C(3, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0010);
|
||||
fn_1_1FB0();
|
||||
fn_1_BA0(0x2E0011);
|
||||
fn_800B4264(-0x50, 0, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1010(void) {
|
||||
fn_1_1E3C(4, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0012);
|
||||
fn_1_1FB0();
|
||||
fn_800B4264(0, 0x50, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_105C(void) {
|
||||
fn_1_1E3C(5, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0013);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1098(void) {
|
||||
fn_1_BA0(0x2E0014);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_10C0(void) {
|
||||
fn_1_BA0(0x2E0015);
|
||||
fn_800B4264(-0x50, 0, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_10F8(void) {
|
||||
fn_1_1E3C(6, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0016);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1134(void) {
|
||||
fn_1_1E3C(7, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0017);
|
||||
fn_1_1FB0();
|
||||
fn_80082AAC(1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1178(void) {
|
||||
fn_1_BA0(0x2E0018);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_11A0(void) {
|
||||
s32 temp;
|
||||
|
||||
fn_1_BA0(0x2E0019);
|
||||
temp = fn_800745F0(0, 1);
|
||||
fn_800B4274(temp, 0);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_11EC(void) {
|
||||
s32 temp;
|
||||
|
||||
fn_1_BA0(0x2E001A);
|
||||
temp = fn_800745F0(0, 1);
|
||||
fn_800B4274(temp, 0);
|
||||
fn_800B42B4(0);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1240(void) {
|
||||
fn_1_BA0(0x2E001B);
|
||||
fn_800B4264(0x50, 0, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1278(void) {
|
||||
fn_1_BA0(0x2E001C);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_12A0(void) {
|
||||
fn_1_BA0(0x2E001D);
|
||||
fn_80062B74(2, 1);
|
||||
fn_800B42B4(1);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_12DC(void) {
|
||||
fn_1_BA0(0x2E001E);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1304(void) {
|
||||
fn_1_BA0(0x2E001F);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_132C(void) {
|
||||
fn_1_BA0(0x2E0020);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1354(void) {
|
||||
fn_1_BA0(0x2E0021);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_137C(void) {
|
||||
fn_1_BA0(0x2E0022);
|
||||
}
|
||||
*/
|
||||
|
||||
// fn_1_13A4
|
||||
|
||||
/*
|
||||
void fn_1_176C(void) {
|
||||
fn_1_C10(1);
|
||||
fn_1_BA0(0x2E0024);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_179C(void) {
|
||||
fn_1_BA0(0x2E0025);
|
||||
gPlayerData[1].flags.unk0 = 2;
|
||||
gPlayerData[3].flags.unk0 = 2;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_17F4(void) {
|
||||
fn_1_BA0(0x2E0026);
|
||||
gPlayerData[0].flags.unk0 = 2;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1834(void) {
|
||||
fn_1_BA0(0x2E0027);
|
||||
gPlayerData[0].flags.unk0 = 1;
|
||||
gPlayerData[1].flags.unk0 = 1;
|
||||
gPlayerData[2].flags.unk0 = 1;
|
||||
gPlayerData[3].flags.unk0 = 2;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_18BC(void) {
|
||||
fn_1_BA0(0x2E0028);
|
||||
fn_1_BA0(0x2E0029);
|
||||
lbl_801A52E8 = 0;
|
||||
fn_8008853C(0);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1908(void) {
|
||||
fn_1_BA0(0x2E002D);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1930(void) {
|
||||
fn_1_BA0(0x2E002F);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1958(void) {
|
||||
fn_1_BA0(0x2E0031);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1980(void) {
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
// fn_1_1984
|
||||
|
||||
// fn_1_1AAC
|
||||
|
||||
/*
|
||||
void fn_1_1D68(void) {
|
||||
s32 temp_r4;
|
||||
s32 temp_r5;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 11; i++) {
|
||||
lbl_1_bss_22[i] = fn_8003F958(lbl_1_data_2A8[i], 0, 0);
|
||||
fn_8003FBEC(lbl_1_bss_22[i]);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void fn_1_1DEC(void) {
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 11; i++) {
|
||||
fn_8003FB08(lbl_1_bss_22[i]);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
// fn_1_1E3C
|
||||
|
||||
/*
|
||||
void fn_1_1FB0(void) {
|
||||
f32 var_f31;
|
||||
f32 var_f30;
|
||||
u32 i;
|
||||
|
||||
var_f31 = lbl_1_rodata_60;
|
||||
var_f30 = lbl_1_rodata_60;
|
||||
for (i = 0; i < 15; i++) {
|
||||
var_f31 -= lbl_1_rodata_5C;
|
||||
var_f30 -= lbl_1_rodata_5C;
|
||||
fn_8003FD10(lbl_1_bss_20, var_f31, var_f30);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
fn_8003FBEC(lbl_1_bss_20);
|
||||
}
|
||||
*/
|
||||
62
src/REL/w10Dll/w10Dll2.c
Normal file
62
src/REL/w10Dll/w10Dll2.c
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
#include "REL/w10Dll.h"
|
||||
|
||||
s32 lbl_1_data_78[2] = {
|
||||
0x007B0010,
|
||||
-1
|
||||
};
|
||||
|
||||
Vec3f lbl_1_data_80[2] = {
|
||||
{70.0f, 355.0f, 200.f},
|
||||
{70.0f, 175.0f, 200.f},
|
||||
};
|
||||
|
||||
void fn_1_AEC(void) {
|
||||
lbl_1_bss_1C = 0;
|
||||
lbl_1_bss_1E = fn_8006D9A4(0x7B000F, &lbl_1_data_78, 0);
|
||||
fn_8006E2B8(lbl_1_bss_1E, 1, 0x40000001);
|
||||
fn_800B42BC(lbl_1_bss_1E);
|
||||
fn_8006F61C(lbl_1_bss_1E, 6);
|
||||
lbl_1_bss_18 = HuPrcCreate(fn_1_C20, 0x1FFF, 0x1800, 0);
|
||||
}
|
||||
|
||||
void fn_1_BA0(s32 arg0) {
|
||||
s32 var_r31;
|
||||
|
||||
switch (lbl_1_bss_1C) {
|
||||
case 0:
|
||||
var_r31 = 5;
|
||||
break;
|
||||
case 1:
|
||||
var_r31 = 6;
|
||||
break;
|
||||
}
|
||||
BoardMessCreate(var_r31, arg0, -1);
|
||||
BoardMessWait();
|
||||
BoardMessKill();
|
||||
}
|
||||
|
||||
void fn_1_C10(s16 arg0) {
|
||||
lbl_1_bss_1C = arg0;
|
||||
}
|
||||
|
||||
void fn_1_C20(void) {
|
||||
Mtx sp20;
|
||||
Vec3f sp14;
|
||||
Vec3f sp8;
|
||||
|
||||
while (1) {
|
||||
if (fn_8005B6A8() != 0) {
|
||||
fn_8006DB90(lbl_1_bss_1E);
|
||||
fn_800B42BC(-1);
|
||||
HuPrcEnd();
|
||||
}
|
||||
Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14);
|
||||
fn_8006F158(lbl_1_bss_1E, &sp14);
|
||||
fn_8005D5C0(&sp8);
|
||||
PSMTXRotRad(sp20, 'y', 0.2617994f);
|
||||
fn_8006EFBC(lbl_1_bss_1E, sp20);
|
||||
fn_8006F270(lbl_1_bss_1E, sp8.x, 0.0f, 0.0f);
|
||||
fn_8006F338(lbl_1_bss_1E, 0.2f, 0.2f, 0.2f);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
238
src/REL/w10Dll/w10Dll3.c
Normal file
238
src/REL/w10Dll/w10Dll3.c
Normal file
|
|
@ -0,0 +1,238 @@
|
|||
#include "include/REL/w10Dll.h"
|
||||
|
||||
void fn_1_D2C(void) {
|
||||
fn_1_BA0(0x2E0001);
|
||||
}
|
||||
|
||||
void fn_1_D54(void) {
|
||||
fn_1_BA0(0x2E0002);
|
||||
}
|
||||
|
||||
void fn_1_D7C(void) {
|
||||
fn_1_BA0(0x2E0003);
|
||||
}
|
||||
|
||||
void fn_1_DA4(void) {
|
||||
fn_1_BA0(0x2E0004);
|
||||
}
|
||||
|
||||
void fn_1_DCC(void) {
|
||||
fn_1_BA0(0x2E0005);
|
||||
}
|
||||
|
||||
void fn_1_DF4(void) {
|
||||
fn_1_BA0(0x2E0006);
|
||||
}
|
||||
|
||||
void fn_1_E1C(void) {
|
||||
fn_1_BA0(0x2E0007);
|
||||
}
|
||||
|
||||
void fn_1_E44(void) {
|
||||
fn_1_BA0(0x2E0008);
|
||||
fn_1_BA0(0x2E0009);
|
||||
fn_8007500C(0);
|
||||
fn_8006F50C(lbl_1_data_2C, 1);
|
||||
}
|
||||
|
||||
void fn_1_E94(void) {
|
||||
fn_1_BA0(0x2E000A);
|
||||
}
|
||||
|
||||
void fn_1_EBC(void) {
|
||||
fn_1_BA0(0x2E000B);
|
||||
}
|
||||
|
||||
void fn_1_EE4(void) {
|
||||
|
||||
}
|
||||
|
||||
void fn_1_EE8(void) {
|
||||
fn_1_1E3C(0, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E000C);
|
||||
fn_1_BA0(0x2E000D);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
|
||||
void fn_1_F30(void) {
|
||||
fn_1_1E3C(1, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E000E);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
|
||||
void fn_1_F6C(void) {
|
||||
fn_1_1E3C(2, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E000F);
|
||||
fn_1_1FB0();
|
||||
fn_800B4264(0, 0x50, 1);
|
||||
}
|
||||
|
||||
void fn_1_FB8(void) {
|
||||
fn_1_1E3C(3, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0010);
|
||||
fn_1_1FB0();
|
||||
fn_1_BA0(0x2E0011);
|
||||
fn_800B4264(-0x50, 0, 1);
|
||||
}
|
||||
|
||||
void fn_1_1010(void) {
|
||||
fn_1_1E3C(4, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0012);
|
||||
fn_1_1FB0();
|
||||
fn_800B4264(0, 0x50, 1);
|
||||
}
|
||||
|
||||
void fn_1_105C(void) {
|
||||
fn_1_1E3C(5, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0013);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
|
||||
void fn_1_1098(void) {
|
||||
fn_1_BA0(0x2E0014);
|
||||
}
|
||||
|
||||
void fn_1_10C0(void) {
|
||||
fn_1_BA0(0x2E0015);
|
||||
fn_800B4264(-0x50, 0, 1);
|
||||
}
|
||||
|
||||
void fn_1_10F8(void) {
|
||||
fn_1_1E3C(6, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0016);
|
||||
fn_1_1FB0();
|
||||
}
|
||||
|
||||
void fn_1_1134(void) {
|
||||
fn_1_1E3C(7, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0017);
|
||||
fn_1_1FB0();
|
||||
fn_80082AAC(1);
|
||||
}
|
||||
|
||||
void fn_1_1178(void) {
|
||||
fn_1_BA0(0x2E0018);
|
||||
}
|
||||
|
||||
void fn_1_11A0(void) {
|
||||
s32 temp;
|
||||
|
||||
fn_1_BA0(0x2E0019);
|
||||
temp = fn_800745F0(0, 1);
|
||||
fn_800B4274(temp, 0);
|
||||
}
|
||||
|
||||
void fn_1_11EC(void) {
|
||||
s32 temp;
|
||||
|
||||
fn_1_BA0(0x2E001A);
|
||||
temp = fn_800745F0(0, 1);
|
||||
fn_800B4274(temp, 0);
|
||||
fn_800B42B4(0);
|
||||
}
|
||||
|
||||
void fn_1_1240(void) {
|
||||
fn_1_BA0(0x2E001B);
|
||||
fn_800B4264(0x50, 0, 1);
|
||||
}
|
||||
|
||||
void fn_1_1278(void) {
|
||||
fn_1_BA0(0x2E001C);
|
||||
}
|
||||
|
||||
void fn_1_12A0(void) {
|
||||
fn_1_BA0(0x2E001D);
|
||||
fn_80062B74(2, 1);
|
||||
fn_800B42B4(1);
|
||||
}
|
||||
|
||||
void fn_1_12DC(void) {
|
||||
fn_1_BA0(0x2E001E);
|
||||
}
|
||||
|
||||
void fn_1_1304(void) {
|
||||
fn_1_BA0(0x2E001F);
|
||||
}
|
||||
|
||||
void fn_1_132C(void) {
|
||||
fn_1_BA0(0x2E0020);
|
||||
}
|
||||
|
||||
void fn_1_1354(void) {
|
||||
fn_1_BA0(0x2E0021);
|
||||
}
|
||||
|
||||
void fn_1_137C(void) {
|
||||
fn_1_BA0(0x2E0022);
|
||||
}
|
||||
|
||||
void fn_1_13A4(void) {
|
||||
s32 i;
|
||||
Vec3f sp14;
|
||||
Vec3f sp8;
|
||||
s32 temp_r3_2;
|
||||
|
||||
fn_1_BA0(0x2E0023);
|
||||
for (i = 0; i < 4; i++) {
|
||||
GWPlayer[i].flags.unk0 = 1;
|
||||
}
|
||||
fn_800A4C88();
|
||||
fn_800884F4(0);
|
||||
fn_1_C10(0);
|
||||
fn_1_BA0(0x2E002B);
|
||||
sp8.x = -33.0f;
|
||||
sp8.y = sp8.z = 0.0f;
|
||||
temp_r3_2 = fn_800745F0(0, 0x80000);
|
||||
fn_80074210(0, temp_r3_2, &sp14);
|
||||
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||
fn_8005E0C0();
|
||||
fn_1_BA0(0x2E002C);
|
||||
fn_8007A360(temp_r3_2);
|
||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||
fn_8005E0C0();
|
||||
temp_r3_2 = fn_800745F0(0, 0x10000000);
|
||||
fn_80074210(0, temp_r3_2, &sp14);
|
||||
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||
fn_8005E0C0();
|
||||
fn_1_BA0(0x2E002E);
|
||||
fn_8007F894();
|
||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||
fn_8005E0C0();
|
||||
temp_r3_2 = fn_800745F0(0, 0x08000000);
|
||||
fn_80074210(0, temp_r3_2, &sp14);
|
||||
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||
fn_8005E0C0();
|
||||
fn_1_BA0(0x2E0030);
|
||||
fn_800A6B10();
|
||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||
fn_8005E0C0();
|
||||
fn_1_BA0(0x2E0032);
|
||||
fn_80083F84();
|
||||
fn_8005D8E8();
|
||||
fn_8005E0C0();
|
||||
fn_1_BA0(0x2E0033);
|
||||
fn_1_BA0(0x2E0034);
|
||||
fn_1_1E3C(8, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0035);
|
||||
fn_1_1FB0();
|
||||
fn_1_1E3C(9, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0036);
|
||||
fn_1_1FB0();
|
||||
fn_1_1E3C(0xA, 0x122, 0x8C);
|
||||
fn_1_BA0(0x2E0037);
|
||||
fn_1_1FB0();
|
||||
fn_1_BA0(0x2E0038);
|
||||
fn_1_BA0(0x2E0039);
|
||||
if (lbl_1_bss_C == 0) {
|
||||
lbl_1_bss_C = 1;
|
||||
fn_80070EE8(0, 0x1F3);
|
||||
fn_8005B5FC();
|
||||
}
|
||||
fn_800B3FD8(NULL);
|
||||
while (1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
259
src/REL/w10Dll/w10Dll4.c
Normal file
259
src/REL/w10Dll/w10Dll4.c
Normal file
|
|
@ -0,0 +1,259 @@
|
|||
#include "REL/w10Dll.h"
|
||||
|
||||
char lbl_1_data_98[] = "@@@@@@@@@@@@@@ Tutorial Exit @@@@@@@@@@@@@@\n\000";
|
||||
|
||||
w10DllUnk03 lbl_1_data_C6[11] = {
|
||||
1, -1, -1,
|
||||
2, -1, -1,
|
||||
4, -1, -1,
|
||||
5, -1, -1,
|
||||
5, -1, -1,
|
||||
4, -1, -1,
|
||||
1, -1, -1,
|
||||
3, -1, -1,
|
||||
2, -1, -1,
|
||||
4, -1, -1,
|
||||
5, 6, -1,
|
||||
};
|
||||
|
||||
w10DllUnk04 lbl_1_data_108[42] = {
|
||||
{0x0000, 0000, fn_1_D2C},
|
||||
{0x0001, 0000, fn_1_D54},
|
||||
{0x0002, 0000, fn_1_D7C},
|
||||
{0x0003, 0000, fn_1_DA4},
|
||||
{0x0003, 0000, fn_1_DCC},
|
||||
{0x0003, 0000, fn_1_DF4},
|
||||
{0x0003, 0000, fn_1_E1C},
|
||||
{0x0004, 0000, fn_1_E44},
|
||||
{0x0005, 0000, fn_1_E94},
|
||||
{0x0006, 0000, fn_1_EBC},
|
||||
{0x0007, 0000, fn_1_EE4},
|
||||
{0x000A, 0000, fn_1_EE8},
|
||||
{0x000B, 0000, fn_1_F30},
|
||||
{0x0010, 0000, fn_1_F6C},
|
||||
{0x0011, 0000, fn_1_FB8},
|
||||
{0x000C, 0000, fn_1_1010},
|
||||
{0x000D, 0000, fn_1_105C},
|
||||
{0x000E, 0000, fn_1_1098},
|
||||
{0x000E, 0000, fn_1_10C0},
|
||||
{0x000F, 0000, fn_1_10F8},
|
||||
{0x0012, 0000, fn_1_1134},
|
||||
{0x0014, 0000, fn_1_1178},
|
||||
{0x0015, 0000, fn_1_11A0},
|
||||
{0x0016, 0000, fn_1_11EC},
|
||||
{0x0005, 0000, fn_1_1240},
|
||||
{0x0017, 0000, fn_1_1278},
|
||||
{0x0007, 0000, fn_1_12A0},
|
||||
{0x0005, 0000, fn_1_12DC},
|
||||
{0x0017, 0000, fn_1_1304},
|
||||
{0x0018, 0000, fn_1_132C},
|
||||
{0x0019, 0000, fn_1_1354},
|
||||
{0x0008, 0000, fn_1_137C},
|
||||
{0x0009, 0000, fn_1_13A4},
|
||||
{0x001A, 0000, fn_1_176C},
|
||||
{0x001B, 0000, fn_1_179C},
|
||||
{0x001B, 0000, fn_1_17F4},
|
||||
{0x001B, 0000, fn_1_1834},
|
||||
{0x001B, 0000, fn_1_18BC},
|
||||
{0x001C, 0000, fn_1_1908},
|
||||
{0x001C, 0000, fn_1_1930},
|
||||
{0x001C, 0000, fn_1_1958},
|
||||
{-1, 0, 0},
|
||||
};
|
||||
|
||||
char lbl_1_data_258[] = "Tutorial Hook P0:%d P1:%d P2:%d P3:%d SCEN:%d CUE:%d PRM:%d DICE:%d MSG:%d\n";
|
||||
|
||||
s32 lbl_1_data_2A8[11] = {
|
||||
0x007B0004,
|
||||
0x007B0005,
|
||||
0x007B0006,
|
||||
0x007B0007,
|
||||
0x007B0008,
|
||||
0x007B0009,
|
||||
0x007B000A,
|
||||
0x007B000B,
|
||||
0x007B000C,
|
||||
0x007B000D,
|
||||
0x007B000E
|
||||
};
|
||||
|
||||
void fn_1_176C(void) {
|
||||
fn_1_C10(1);
|
||||
fn_1_BA0(0x2E0024);
|
||||
}
|
||||
|
||||
void fn_1_179C(void) {
|
||||
fn_1_BA0(0x2E0025);
|
||||
GWPlayer[1].flags.unk0 = 2;
|
||||
GWPlayer[3].flags.unk0 = 2;
|
||||
}
|
||||
|
||||
void fn_1_17F4(void) {
|
||||
fn_1_BA0(0x2E0026);
|
||||
GWPlayer[0].flags.unk0 = 2;
|
||||
}
|
||||
|
||||
void fn_1_1834(void) {
|
||||
fn_1_BA0(0x2E0027);
|
||||
GWPlayer[0].flags.unk0 = 1;
|
||||
GWPlayer[1].flags.unk0 = 1;
|
||||
GWPlayer[2].flags.unk0 = 1;
|
||||
GWPlayer[3].flags.unk0 = 2;
|
||||
}
|
||||
|
||||
void fn_1_18BC(void) {
|
||||
fn_1_BA0(0x2E0028);
|
||||
fn_1_BA0(0x2E0029);
|
||||
lbl_801A52E8 = 0;
|
||||
fn_8008853C(0);
|
||||
}
|
||||
|
||||
void fn_1_1908(void) {
|
||||
fn_1_BA0(0x2E002D);
|
||||
}
|
||||
|
||||
void fn_1_1930(void) {
|
||||
fn_1_BA0(0x2E002F);
|
||||
}
|
||||
|
||||
void fn_1_1958(void) {
|
||||
fn_1_BA0(0x2E0031);
|
||||
}
|
||||
|
||||
void fn_1_1980(void) {
|
||||
|
||||
}
|
||||
|
||||
void fn_1_1984(void) {
|
||||
s32 contPortIndex;
|
||||
s32 i;
|
||||
|
||||
if (lbl_1_bss_C == 0) {
|
||||
if (WipeStatGet() != 0) {
|
||||
HuWinDispOff(lbl_1_bss_E);
|
||||
return;
|
||||
}
|
||||
HuWinDispOn(lbl_1_bss_E);
|
||||
if (fn_8005B6A8() != 0) {
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < ARRAY_COUNT(GWPlayer); i++) {
|
||||
contPortIndex = GWPlayer[i].controllerPort;
|
||||
if (contPortIndex == -1) {
|
||||
continue;
|
||||
}
|
||||
if (HuPadStatGet(contPortIndex) == 0 && HuPadBtnDown[contPortIndex] & 0x1000) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (i != 4) {
|
||||
lbl_1_bss_C = 1;
|
||||
OSReport(lbl_1_data_98);
|
||||
fn_80070EE8(0, 0x1F3);
|
||||
fn_8005B5FC();
|
||||
fn_800B3FD8(NULL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int fn_1_1AAC(s16 arg0, s32 arg1) {
|
||||
s32 i;
|
||||
if (arg0 == 0x1E) {
|
||||
if (lbl_1_bss_C == 0) {
|
||||
if (WipeStatGet() != 0) {
|
||||
HuWinDispOff(lbl_1_bss_E);
|
||||
} else {
|
||||
HuWinDispOn(lbl_1_bss_E);
|
||||
if (fn_8005B6A8() == 0) {
|
||||
s32 contPortIndex;
|
||||
for (i = 0; i < ARRAY_COUNT(GWPlayer); i++) {
|
||||
contPortIndex = GWPlayer[i].controllerPort;
|
||||
if (contPortIndex == -1) {
|
||||
continue;
|
||||
}
|
||||
if (HuPadStatGet(contPortIndex) == 0 && HuPadBtnDown[contPortIndex] & 0x1000) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (i != 4) {
|
||||
lbl_1_bss_C = 1;
|
||||
OSReport(lbl_1_data_98);
|
||||
fn_80070EE8(0, 0x1F3);
|
||||
fn_8005B5FC();
|
||||
fn_800B3FD8(NULL);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (arg0 != 0x1D) {
|
||||
OSReport(lbl_1_data_258,
|
||||
(GWPlayer[0].characterID >> 5) & 1, (GWPlayer[1].characterID >> 5) & 1,
|
||||
(GWPlayer[2].characterID >> 5) & 1, (GWPlayer[3].characterID >> 5) & 1,
|
||||
lbl_1_bss_0->unk0, arg0, arg1, lbl_1_bss_0->unk4, lbl_1_bss_0->unk6);
|
||||
if (lbl_1_data_108[lbl_1_bss_0->unk0].unk0 != -1) {
|
||||
if (arg0 == 5) {
|
||||
fn_8008831C(&lbl_1_data_C6[lbl_1_bss_0->unk4++]);
|
||||
}
|
||||
if (arg0 == lbl_1_data_108[lbl_1_bss_0->unk0].unk0) {
|
||||
void (*temp_r3_3)() = lbl_1_data_108[lbl_1_bss_0->unk0++].unk4;
|
||||
temp_r3_3();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1D68(void) {
|
||||
s32 temp_r4;
|
||||
s32 temp_r5;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 11; i++) {
|
||||
lbl_1_bss_22[i] = espEntry(lbl_1_data_2A8[i], 0, 0);
|
||||
espDispOff(lbl_1_bss_22[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1DEC(void) {
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 11; i++) {
|
||||
espKill(lbl_1_bss_22[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1E3C(s16 arg0, s16 arg1, s16 arg2) {
|
||||
f32 var_f31;
|
||||
f32 var_f30;
|
||||
u32 i;
|
||||
|
||||
lbl_1_bss_20 = lbl_1_bss_22[arg0];
|
||||
espPosSet(lbl_1_bss_20, arg1, arg2);
|
||||
var_f31 = 0.0f;
|
||||
var_f30 = 0.0f;
|
||||
espDispOn(lbl_1_bss_20);
|
||||
for (i = 0; i < 15; i++) {
|
||||
var_f31 += 0.06666667f;
|
||||
var_f30 += 0.06666667f;
|
||||
espScaleSet(lbl_1_bss_20, var_f31, var_f30);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
espScaleSet(lbl_1_bss_20, 1.0f, 1.0f);
|
||||
}
|
||||
|
||||
void fn_1_1FB0(void) {
|
||||
f32 var_f31;
|
||||
f32 var_f30;
|
||||
u32 i;
|
||||
|
||||
var_f31 = 1.0f;
|
||||
var_f30 = 1.0f;
|
||||
for (i = 0; i < 15; i++) {
|
||||
var_f31 -= 0.06666667f;
|
||||
var_f30 -= 0.06666667f;
|
||||
espScaleSet(lbl_1_bss_20, var_f31, var_f30);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
espDispOff(lbl_1_bss_20);
|
||||
}
|
||||
23
src/REL/w10Dll/w10Dll_init.c
Normal file
23
src/REL/w10Dll/w10Dll_init.c
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
#include "include/REL/w10Dll.h"
|
||||
|
||||
void fn_1_0(void) {
|
||||
fn_8005B150(&fn_1_E0, &fn_1_6D8);
|
||||
}
|
||||
|
||||
int _prolog(void) {
|
||||
const VoidFunc* ctors = _ctors;
|
||||
while (*ctors != 0) {
|
||||
(**ctors)();
|
||||
ctors++;
|
||||
}
|
||||
fn_8005B150(&fn_1_E0, &fn_1_6D8);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _epilog(void) {
|
||||
const VoidFunc* dtors = _dtors;
|
||||
while (*dtors != 0) {
|
||||
(**dtors)();
|
||||
dtors++;
|
||||
}
|
||||
}
|
||||
40
src/game/frand.c
Normal file
40
src/game/frand.c
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
#include "common.h"
|
||||
|
||||
static u32 frand_seed;
|
||||
|
||||
static inline u32 frandom(void)
|
||||
{
|
||||
u32 rand = frand_seed;
|
||||
s32 rand2, rand3;
|
||||
|
||||
if (rand == 0) {
|
||||
rand = rand8();
|
||||
rand = rand ^ (s64)OSGetTime();
|
||||
rand ^= 0xD826BC89;
|
||||
}
|
||||
|
||||
rand2 = rand / (u32)0x1F31D;
|
||||
rand3 = rand - (rand2 * 0x1F31D);
|
||||
rand = rand2 * 0xB14;
|
||||
rand = rand - rand3 * 0x41A7;
|
||||
return rand;
|
||||
}
|
||||
|
||||
u32 frand(void) {
|
||||
return frand_seed = frandom();
|
||||
}
|
||||
|
||||
f32 frandf(void) {
|
||||
u32 value = frand();
|
||||
f32 ret;
|
||||
value &= 0x7FFFFFFF;
|
||||
ret = (f32)value/2147483648;
|
||||
return ret;
|
||||
}
|
||||
|
||||
u32 frandmod(u32 arg0) {
|
||||
u32 ret;
|
||||
frand_seed = frandom();
|
||||
ret = (frand_seed & 0x7FFFFFFF)%arg0;
|
||||
return ret;
|
||||
}
|
||||
53
src/game/messdata.c
Normal file
53
src/game/messdata.c
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
#include "common.h"
|
||||
|
||||
static void *MessData_MesDataGet(void *messdata, u32 id)
|
||||
{
|
||||
s32 i;
|
||||
s32 max_bank;
|
||||
u16 *banks;
|
||||
u16 bank;
|
||||
s32 *data;
|
||||
bank = id >> 16;
|
||||
data = messdata;
|
||||
max_bank = *data;
|
||||
data++;
|
||||
banks = (u16 *)(((u8 *)messdata)+(*data));
|
||||
for(i=max_bank; i != 0; i--, banks += 2) {
|
||||
if(*banks == bank) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(i == 0) {
|
||||
return NULL;
|
||||
} else {
|
||||
data += banks[1];
|
||||
return (((u8 *)messdata)+(*data));
|
||||
}
|
||||
}
|
||||
|
||||
static void *_MessData_MesPtrGet(void *messbank, u32 id)
|
||||
{
|
||||
u16 index;
|
||||
s32 max_index;
|
||||
s32 *data;
|
||||
|
||||
index = id & 0xFFFF;
|
||||
data = messbank;
|
||||
max_index = *data;
|
||||
data++;
|
||||
if(max_index <= index) {
|
||||
return NULL;
|
||||
} else {
|
||||
data = data+index;
|
||||
return (((u8 *)messbank)+(*data));
|
||||
}
|
||||
}
|
||||
|
||||
void *MessData_MesPtrGet(void *messdata, u32 id)
|
||||
{
|
||||
void *bank = MessData_MesDataGet(messdata, id);
|
||||
if(bank) {
|
||||
return _MessData_MesPtrGet(bank, id);
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -71,14 +71,14 @@ static void omWatchOverlayProc(void)
|
|||
OSReport("objman>Init esp\n");
|
||||
espInit();
|
||||
OSReport("objman>Call objectsetup\n");
|
||||
fn_800338EC(omnextovl);
|
||||
HuAudVoiceInit(omnextovl);
|
||||
HuAudDllSndGrpSet(omnextovl);
|
||||
omcurovl = omnextovl;
|
||||
omovlevtno = omnextovlevtno;
|
||||
omovlstat = omnextovlstat;
|
||||
omnextovl = OVL_INVALID;
|
||||
if(_CheckFlag(0x1000C)) {
|
||||
fn_8003F3AC();
|
||||
MGSeqPracticeStart();
|
||||
}
|
||||
omSysPauseEnable(TRUE);
|
||||
omcurdll = omDLLStart(omcurovl, 0);
|
||||
|
|
@ -136,7 +136,7 @@ void omOvlReturnEx(s16 level, s16 arg2)
|
|||
void omOvlKill(s16 arg)
|
||||
{
|
||||
fn_8004D6F4(-1);
|
||||
fn_80035A0C();
|
||||
MGSeqKillAll();
|
||||
Hu3DAllKill();
|
||||
HuWinAllKill();
|
||||
HuSprClose();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue