mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-02-03 00:33:55 +03:00
fox_hud & fox_me Decompiled (#95)
* func_80092D48 * func_800927A0 * TempComp.bin.mio0 git ignored * func_800924E0 * func_80094D20 * func_80096A74 * func_80095604 * all functions done * symbols for segmented addresses * move symbols to c file for now * failed attempt to import data * fix * Import data * move data below * ready for BSS attempt * fix warnings * ordering * symbols for some segmented addresses * rename to fox_hud * clear mess * . * . * space * . * func_i2_80187530 * func_i2_8018756C * func_i2_80187650 * func_i2_801877C4 * func_i2_8018795C * func_i2_80187B08 * func_i2_80187C68 * bss again (#98) * func_i2_80187D08 * func_i2_80187D98 * func_i2_80187FF8 * func_i2_801881A8 * func_i2_80188228 * func_i2_80188298 * ARRAY_COUNT * func_i2_80188344 * func_i2_80188B84 * func_i2_80188C2C * func_i2_80188E8C * func_i2_80188F2C * func_i2_80188CAC * func_i2_80189114 * func_i2_8018B7C4 * func_i2_8018C77C * func_i2_8018C8F4 * func_i2_8018CA10 * func_i2_8018CB50 * func_i2_8018BACC co-authored-by: @inspectredc * func_i2_8018CCF8 * func_i2_8018CB50 * func_i2_8018CD8C co-authored-by: @inspectredc & @petrie911 * func_i2_8018D9EC * func_i2_8018DA6C * func_i2_8018DAEC * func_i2_8018DB6C * func_i2_8018DBEC * func_i2_8018DCE4 * func_i2_8018DE14 * func_i2_8018DF08 co-authored-by @inspectredc & @petrie911 * func_i2_8018E084 * func_i2_8018ED9C * func_i2_80188088 * func_i2_801892F0 * func_i2_8018978C co-authored-by @KiritoDv & inspectredc * fox_me DATA IMPORTED * resolve conflicts * func_i6_80197B30 * func_i6_80197CC4 * func_i6_80197F84 * func_i6_80198244 * merge and solve bss * func_i6_801983E4 * PR review --------- Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>
This commit is contained in:
parent
b8af624d0b
commit
cc970381c8
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,3 +17,4 @@ tools/mio0
|
|||||||
tools/ido-recomp
|
tools/ido-recomp
|
||||||
.venv/
|
.venv/
|
||||||
m2cfiles/
|
m2cfiles/
|
||||||
|
TempComp.bin.mio0
|
@ -39,6 +39,7 @@ void func_8001CA24(u8);
|
|||||||
void func_8001CB80(u8, u8);
|
void func_8001CB80(u8, u8);
|
||||||
void func_8001CCDC(u8, Vec3f *);
|
void func_8001CCDC(u8, Vec3f *);
|
||||||
void func_8001CE28(u8, Vec3f *);
|
void func_8001CE28(u8, Vec3f *);
|
||||||
|
void func_8001D034(Vec3f*, s32, u8);
|
||||||
void func_8001D10C(Vec3f*, u32);
|
void func_8001D10C(Vec3f*, u32);
|
||||||
void func_8001D15C(u8);
|
void func_8001D15C(u8);
|
||||||
void func_8001D1C8(u8, s32);
|
void func_8001D1C8(u8, s32);
|
||||||
@ -302,6 +303,8 @@ void func_8006BB78(Actor*);
|
|||||||
void func_8006C008(Actor*);
|
void func_8006C008(Actor*);
|
||||||
void func_8006D350(Object_80*);
|
void func_8006D350(Object_80*);
|
||||||
void func_8006EEFC(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32);
|
void func_8006EEFC(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32);
|
||||||
|
void func_8006EFA0(s32 unk0E4, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f32 arg5, f32 arg6, f32 xRot, f32 yRot,
|
||||||
|
f32 zRot);
|
||||||
void func_8006F0D8(f32 xPos, f32 yPos, f32 zPos, f32 arg3);
|
void func_8006F0D8(f32 xPos, f32 yPos, f32 zPos, f32 arg3);
|
||||||
void func_80072594(Actor*);
|
void func_80072594(Actor*);
|
||||||
s32 func_80074F90(Object_80*);
|
s32 func_80074F90(Object_80*);
|
||||||
@ -492,6 +495,9 @@ void func_80092D48(Actor *);
|
|||||||
void func_80092EC0(Actor* actor);
|
void func_80092EC0(Actor* actor);
|
||||||
void func_80093164(Actor*);
|
void func_80093164(Actor*);
|
||||||
void func_800935E8(Player*);
|
void func_800935E8(Player*);
|
||||||
|
void func_800953A0(Actor*, s32);
|
||||||
|
void func_8009546C(Actor*, s32);
|
||||||
|
void func_80095538(Actor*, s32);
|
||||||
void func_80095604(Player*);
|
void func_80095604(Player*);
|
||||||
void func_80094954(Effect*);
|
void func_80094954(Effect*);
|
||||||
void func_80094BBC(Effect*);
|
void func_80094BBC(Effect*);
|
||||||
|
@ -3,14 +3,18 @@
|
|||||||
|
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
|
||||||
typedef struct UnkStruct_func_80095350 {
|
typedef struct {
|
||||||
/* 0x00 */ s8 unk0;
|
/* 0x00 */ u8* unk_00;
|
||||||
/* 0x01 */ char pad_1[0x1];
|
/* 0x04 */ s32 width;
|
||||||
/* 0x02 */ s16 unk2;
|
/* 0x08 */ s32 height;
|
||||||
/* 0x04 */ char pad_4[0xB2];
|
/* 0x0C */ u8* unk_0C;
|
||||||
/* 0xB6 */ s16 unkB6;
|
/* 0x10 */ s32 unk_10;
|
||||||
} UnkStruct_func_80095350;
|
/* 0x14 */ s32 unk_14;
|
||||||
|
} UnkStruct_D_800D1AEC;
|
||||||
|
|
||||||
|
void func_80084930(f32, f32, s32);
|
||||||
|
void func_80086444(void);
|
||||||
|
void func_80087788(void);
|
||||||
void func_80084E78(Gfx** gfxP, void* arg1, void* arg2, u32 arg3, u32 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8,
|
void func_80084E78(Gfx** gfxP, void* arg1, void* arg2, u32 arg3, u32 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8,
|
||||||
f32 arg9, f32 argA);
|
f32 arg9, f32 argA);
|
||||||
void func_80085944(void);
|
void func_80085944(void);
|
||||||
@ -36,44 +40,4 @@ void func_8008E5E8(void);
|
|||||||
s32 func_80090E8C(Actor*);
|
s32 func_80090E8C(Actor*);
|
||||||
s32 func_800910C0(Actor*);
|
s32 func_800910C0(Actor*);
|
||||||
|
|
||||||
// Weird addresses, assets maybe?
|
|
||||||
extern u16 D_1000E80[];
|
|
||||||
extern u16 D_1002280[];
|
|
||||||
extern u16 D_10030D0[];
|
|
||||||
extern s32 D_1011280[];
|
|
||||||
extern s32 D_10116A0[];
|
|
||||||
extern s32 D_10116B0[];
|
|
||||||
extern s32 D_1011730[];
|
|
||||||
extern s32 D_1011AC0[];
|
|
||||||
extern s32 D_1011B90[];
|
|
||||||
extern s32 D_1011BB0[];
|
|
||||||
extern s32 D_1011C80[];
|
|
||||||
extern s32 D_1011CA0[];
|
|
||||||
extern s32 D_1011D70[];
|
|
||||||
extern s32 D_1011D90[];
|
|
||||||
extern s32 D_1011E60[];
|
|
||||||
extern s32 D_1013580[];
|
|
||||||
extern s32 D_1013700[];
|
|
||||||
extern Gfx D_20031B0[];
|
|
||||||
extern Gfx D_2010A30[];
|
|
||||||
extern u16 D_3000B20[];
|
|
||||||
extern u8 D_30013E0[];
|
|
||||||
|
|
||||||
extern s32 D_80161690;
|
|
||||||
extern s32 D_80161718;
|
|
||||||
extern s32 D_8016171C;
|
|
||||||
extern s32 D_801617E8[];
|
|
||||||
extern s32 D_801617FC;
|
|
||||||
extern s32 gHitCount;
|
|
||||||
extern s32 D_80177838;
|
|
||||||
extern s32 D_80177854;
|
|
||||||
extern s32 gTeamShields[];
|
|
||||||
extern s32 D_801778BC;
|
|
||||||
extern s32 gVersusMode;
|
|
||||||
extern s32 D_80177B50[];
|
|
||||||
extern s32 D_80177B70[];
|
|
||||||
extern s32 D_80177E7C;
|
|
||||||
extern LevelId gCurrentLevel;
|
|
||||||
extern s32 D_80178750;
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
// extern f32 D_i3_801C4188; Currently externed in relevant files for bss ordering
|
// extern f32 D_i3_801C4188; Currently externed in relevant files for bss ordering
|
||||||
|
|
||||||
|
void func_i3_801BE034(Actor*, Player*);
|
||||||
|
|
||||||
void func_i3_8018DA58(Actor*);
|
void func_i3_8018DA58(Actor*);
|
||||||
void func_i3_8019E5F0(Actor*);
|
void func_i3_8019E5F0(Actor*);
|
||||||
void func_i3_801A8BE8(Actor*);
|
void func_i3_801A8BE8(Actor*);
|
||||||
@ -94,7 +96,6 @@ void func_i3_801AACF8(Player*);
|
|||||||
void func_i3_801ABA40(PlayerShot*);
|
void func_i3_801ABA40(PlayerShot*);
|
||||||
void func_i3_801AC274(Player*);
|
void func_i3_801AC274(Player*);
|
||||||
void func_i3_801AC8A8(f32, f32, f32, f32, s32);
|
void func_i3_801AC8A8(f32, f32, f32, f32, s32);
|
||||||
void func_i3_801AC8A8(f32, f32, f32, f32, s32);
|
|
||||||
void func_i3_801AC918(Effect*);
|
void func_i3_801AC918(Effect*);
|
||||||
void func_i3_801ACBB4(void);
|
void func_i3_801ACBB4(void);
|
||||||
void func_i3_801ACE50(Player*);
|
void func_i3_801ACE50(Player*);
|
||||||
@ -140,6 +141,7 @@ void func_i3_801BC9A0(Actor*);
|
|||||||
void func_i3_801BD264(Actor*);
|
void func_i3_801BD264(Actor*);
|
||||||
void func_i3_801BD54C(Actor*);
|
void func_i3_801BD54C(Actor*);
|
||||||
void func_i3_801BDE6C(Actor*);
|
void func_i3_801BDE6C(Actor*);
|
||||||
|
void func_i3_801BDF14(void);
|
||||||
void func_i3_801BE1FC(Object_80*);
|
void func_i3_801BE1FC(Object_80*);
|
||||||
void func_i3_801BE3F8(Actor*);
|
void func_i3_801BE3F8(Actor*);
|
||||||
void func_i3_801BEB1C(Actor*);
|
void func_i3_801BEB1C(Actor*);
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#ifndef SF64_MATH_H
|
#ifndef SF64_MATH_H
|
||||||
#define SF64_MATH_H
|
#define SF64_MATH_H
|
||||||
|
|
||||||
#include "PR/ultratypes.h"
|
#include "libultra/ultra64.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/* 0x0 */ f32 x;
|
/* 0x0 */ f32 x;
|
||||||
|
@ -206,7 +206,9 @@ typedef struct {
|
|||||||
/* 0x01C */ ObjectInfo info;
|
/* 0x01C */ ObjectInfo info;
|
||||||
/* 0x040 */ s32 index;
|
/* 0x040 */ s32 index;
|
||||||
/* 0x044 */ s16 unk_044;
|
/* 0x044 */ s16 unk_044;
|
||||||
/* 0x046 */ char unk_46[6];
|
/* 0x046 */ s16 unk_046;
|
||||||
|
/* 0x048 */ s16 unk_048;
|
||||||
|
/* 0x04A */ s16 unk_04A;
|
||||||
/* 0x04C */ s16 unk_04C;
|
/* 0x04C */ s16 unk_04C;
|
||||||
/* 0x04E */ s16 actionState;
|
/* 0x04E */ s16 actionState;
|
||||||
/* 0x050 */ s16 timer_050;
|
/* 0x050 */ s16 timer_050;
|
||||||
|
@ -212,7 +212,7 @@ typedef struct Player {
|
|||||||
/* 0x1CC */ PlayerForm form;
|
/* 0x1CC */ PlayerForm form;
|
||||||
/* 0x1D0 */ s32 unk_1D0;
|
/* 0x1D0 */ s32 unk_1D0;
|
||||||
/* 0x1D4 */ s32 unk_1D4;
|
/* 0x1D4 */ s32 unk_1D4;
|
||||||
/* 0x1D8 */ char pad1D8[4];
|
/* 0x1D8 */ s32 unk_1D8;
|
||||||
/* 0x1DC */ s32 unk_1DC;
|
/* 0x1DC */ s32 unk_1DC;
|
||||||
/* 0x1E0 */ s32 timer_1E0;
|
/* 0x1E0 */ s32 timer_1E0;
|
||||||
/* 0x1E4 */ s32 timer_1E4;
|
/* 0x1E4 */ s32 timer_1E4;
|
||||||
@ -224,7 +224,7 @@ typedef struct Player {
|
|||||||
/* 0x1FC */ s32 timer_1FC;
|
/* 0x1FC */ s32 timer_1FC;
|
||||||
/* 0x200 */ s32 unk_200;
|
/* 0x200 */ s32 unk_200;
|
||||||
/* 0x204 */ s32 unk_204;
|
/* 0x204 */ s32 unk_204;
|
||||||
/* 0x208 */ char pad208[4];
|
/* 0x208 */ s32 unk_208;
|
||||||
/* 0x20C */ s32 unk_20C;
|
/* 0x20C */ s32 unk_20C;
|
||||||
/* 0x210 */ s32 timer_210;
|
/* 0x210 */ s32 timer_210;
|
||||||
/* 0x214 */ s32 timer_214;
|
/* 0x214 */ s32 timer_214;
|
||||||
|
@ -209,7 +209,7 @@ extern f32 D_800CFFC4[];
|
|||||||
|
|
||||||
// fox_effect
|
// fox_effect
|
||||||
|
|
||||||
// sf_hud
|
// fox_hud
|
||||||
extern s16 D_800D1970;
|
extern s16 D_800D1970;
|
||||||
extern f32 D_800D19AC[];
|
extern f32 D_800D19AC[];
|
||||||
extern f32 D_800D19E0[];
|
extern f32 D_800D19E0[];
|
||||||
@ -308,38 +308,15 @@ extern u8 D_80161684;
|
|||||||
// fox_6B3B0
|
// fox_6B3B0
|
||||||
extern s32 D_80161690;
|
extern s32 D_80161690;
|
||||||
|
|
||||||
// sf_hud?
|
// fox_hud
|
||||||
extern f32 D_801616A0;
|
|
||||||
extern f32 D_801616BC;
|
|
||||||
extern f32 D_801616C0;
|
|
||||||
extern f32 D_801616C4;
|
|
||||||
extern f32 D_801616C8;
|
|
||||||
extern s32 D_80161704;
|
extern s32 D_80161704;
|
||||||
extern s32 D_80161708;
|
extern s32 D_80161708;
|
||||||
extern s32 D_8016170C;
|
extern s32 D_8016170C;
|
||||||
extern s32 gTotalHits; // gTotalGameScore
|
extern s32 gTotalHits; // 0x80161714 gTotalGameScore
|
||||||
extern f32 D_80161720;
|
extern f32 D_80161720[3];
|
||||||
extern f32 D_80161724;
|
|
||||||
extern f32 D_80161728;
|
|
||||||
extern s32 D_8016172C;
|
extern s32 D_8016172C;
|
||||||
extern s32 D_80161730;
|
extern s32 D_80161730;
|
||||||
extern s32 gShowBossHealth;
|
extern s32 gShowBossHealth; // 0x80161734
|
||||||
extern s32 D_80161788;
|
|
||||||
extern s32 D_8016178C;
|
|
||||||
extern s32 D_80161790;
|
|
||||||
extern s32 D_80161794;
|
|
||||||
extern s32 D_80161798;
|
|
||||||
extern f32 D_8016179C;
|
|
||||||
extern f32 D_801617A0;
|
|
||||||
extern f32 D_801617A4;
|
|
||||||
extern f32 D_801617A8;
|
|
||||||
extern f32 D_801617AC;
|
|
||||||
extern s32 D_801617B0;
|
|
||||||
extern s32 gMedalStatus;
|
|
||||||
extern s32 gMedalFlashTimer;
|
|
||||||
extern s32 D_80161810[];
|
|
||||||
extern s32 D_80161900[];
|
|
||||||
extern s32 D_80161910[0x10]; // could be in fox_97F80
|
|
||||||
|
|
||||||
// fox_game
|
// fox_game
|
||||||
extern f32 D_80161A10;
|
extern f32 D_80161A10;
|
||||||
|
@ -360,11 +360,13 @@ func_800A3608 = 0x800A3608;
|
|||||||
|
|
||||||
|
|
||||||
// sf_hud
|
// sf_hud
|
||||||
|
D_801616A0 = 0x801616A0; //type:s32 size:0xC
|
||||||
|
D_801616B0 = 0x801616B0; //type:s32 size:0xC
|
||||||
gTotalHits = 0x80161714;
|
gTotalHits = 0x80161714;
|
||||||
gShowBossHealth = 0x80161734;
|
gShowBossHealth = 0x80161734;
|
||||||
gMedalStatus = 0x801617B4;
|
gMedalStatus = 0x801617B4;
|
||||||
gMedalFlashTimer = 0x801617B8;
|
gMedalFlashTimer = 0x801617B8;
|
||||||
|
D_800D1AEC = 0x800D1AEC; //type:s32 size:0x1B0
|
||||||
|
|
||||||
// fox_play
|
// fox_play
|
||||||
D_80161A50 = 0x80161A50;
|
D_80161A50 = 0x80161A50;
|
||||||
|
@ -353,6 +353,9 @@ D_5000300 = 0x05000300;
|
|||||||
D_5000380 = 0x05000380;
|
D_5000380 = 0x05000380;
|
||||||
D_5000400 = 0x05000400;
|
D_5000400 = 0x05000400;
|
||||||
D_5000480 = 0x05000480;
|
D_5000480 = 0x05000480;
|
||||||
|
D_500A5F0 = 0x0500A5F0;
|
||||||
|
D_500A6E0 = 0x0500A6E0;
|
||||||
|
D_500A7D0 = 0x0500A7D0;
|
||||||
|
|
||||||
D_6000E00 = 0x06000E00;
|
D_6000E00 = 0x06000E00;
|
||||||
D_6001360 = 0x06001360;
|
D_6001360 = 0x06001360;
|
||||||
@ -772,6 +775,32 @@ D_D000000 = 0x0D000000;
|
|||||||
D_D00B5C0 = 0x0D00B5C0;
|
D_D00B5C0 = 0x0D00B5C0;
|
||||||
D_D00B720 = 0x0D00B720;
|
D_D00B720 = 0x0D00B720;
|
||||||
|
|
||||||
|
// fox_title, to be ordered later
|
||||||
|
D_602F8E0 = 0x0602F8E0;
|
||||||
|
D_60305C0 = 0x060305C0;
|
||||||
|
D_6031DB8 = 0x06031DB8;
|
||||||
|
D_6031120 = 0x06031120;
|
||||||
|
D_6035024 = 0x06035024;
|
||||||
|
D_60338DC = 0x060338DC;
|
||||||
|
D_603531C = 0x0603531C;
|
||||||
|
D_6036278 = 0x06036278;
|
||||||
|
D_602FBAC = 0x0602FBAC;
|
||||||
|
D_603088C = 0x0603088C;
|
||||||
|
D_6032084 = 0x06032084;
|
||||||
|
D_60313AC = 0x060313AC;
|
||||||
|
|
||||||
|
D_602F8E0 = 0x0602F8E0;
|
||||||
|
D_60305C0 = 0x060305C0;
|
||||||
|
D_6031DB8 = 0x06031DB8;
|
||||||
|
D_6031120 = 0x06031120;
|
||||||
|
D_60338DC = 0x060338DC;
|
||||||
|
D_6035024 = 0x06035024;
|
||||||
|
D_603531C = 0x0603531C;
|
||||||
|
D_6036278 = 0x06036278;
|
||||||
|
|
||||||
|
D_6036290 = 0x06036290;
|
||||||
|
D_6036B30 = 0x06036B30;
|
||||||
|
|
||||||
// fox_map, to be ordered later
|
// fox_map, to be ordered later
|
||||||
D_6001C80 = 0x06001C80;
|
D_6001C80 = 0x06001C80;
|
||||||
D_6002160 = 0x06002160;
|
D_6002160 = 0x06002160;
|
||||||
@ -832,6 +861,24 @@ D_9005380 = 0x09005380;
|
|||||||
D_90075A0 = 0x090075A0;
|
D_90075A0 = 0x090075A0;
|
||||||
D_9004230 = 0x09004230;
|
D_9004230 = 0x09004230;
|
||||||
|
|
||||||
|
// fox_hud, to be ordered later
|
||||||
|
D_101C170 = 0x0101C170;
|
||||||
|
D_101C000 = 0x0101C000;
|
||||||
|
D_101BE90 = 0x0101BE90;
|
||||||
|
D_101BD20 = 0x0101BD20;
|
||||||
|
D_101BBB0 = 0x0101BBB0;
|
||||||
|
D_101BA40 = 0x0101BA40;
|
||||||
|
D_101B8D0 = 0x0101B8D0;
|
||||||
|
D_101B760 = 0x0101B760;
|
||||||
|
D_101B5F0 = 0x0101B5F0;
|
||||||
|
D_101B480 = 0x0101B480;
|
||||||
|
D_101B310 = 0x0101B310;
|
||||||
|
D_101B1A0 = 0x0101B1A0;
|
||||||
|
D_3000000 = 0x03000000;
|
||||||
|
D_3000080 = 0x03000080;
|
||||||
|
D_6001B80 = 0x06001B80;
|
||||||
|
D_60020D0 = 0x060020D0;
|
||||||
|
|
||||||
D_C001880 = 0x0C001880;
|
D_C001880 = 0x0C001880;
|
||||||
D_C037FCC = 0x0C037FCC;
|
D_C037FCC = 0x0C037FCC;
|
||||||
D_C0380C0 = 0x0C0380C0;
|
D_C0380C0 = 0x0C0380C0;
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "prevent_bss_reordering.h"
|
||||||
|
|
||||||
f32 __dx1;
|
f32 __dx1;
|
||||||
f32 __dx2;
|
f32 __dx2;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -4123,9 +4123,9 @@ void func_800B0F50(Player* playerx) {
|
|||||||
}
|
}
|
||||||
gHitCount = gSavedHitCount = D_80177CA4;
|
gHitCount = gSavedHitCount = D_80177CA4;
|
||||||
}
|
}
|
||||||
D_80161720 = 0.0f;
|
D_80161720[0] = 0.0f;
|
||||||
D_80161724 = 0.0f;
|
D_80161720[1] = 0.0f;
|
||||||
D_80161728 = 0.0f;
|
D_80161720[2] = 0.0f;
|
||||||
D_8016172C = gHitCount;
|
D_8016172C = gHitCount;
|
||||||
D_80161730 = 0;
|
D_80161730 = 0;
|
||||||
D_80161684 = D_80161A50;
|
D_80161684 = D_80161A50;
|
||||||
@ -4328,9 +4328,9 @@ void func_800B0F50(Player* playerx) {
|
|||||||
gBombCount[gPlayerNum] = 3;
|
gBombCount[gPlayerNum] = 3;
|
||||||
D_80177B8C = 1;
|
D_80177B8C = 1;
|
||||||
if (gCamCount == (gPlayerNum + 1)) {
|
if (gCamCount == (gPlayerNum + 1)) {
|
||||||
D_80161720 = 0.0f;
|
D_80161720[0] = 0.0f;
|
||||||
D_80161724 = 0.0f;
|
D_80161720[1] = 0.0f;
|
||||||
D_80161728 = 0.0f;
|
D_80161720[2] = 0.0f;
|
||||||
D_8016172C = 0;
|
D_8016172C = 0;
|
||||||
gHitCount = 0;
|
gHitCount = 0;
|
||||||
D_80177824 = 0;
|
D_80177824 = 0;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,5 @@
|
|||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "prevent_bss_reordering.h"
|
||||||
|
|
||||||
typedef void (*BossSOfunc)(Boss*);
|
typedef void (*BossSOfunc)(Boss*);
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#include "common.h"
|
#include "global.h"
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i4/fox_ka/func_i4_801927E0.s")
|
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i4/fox_ka/func_i4_801927E0.s")
|
||||||
|
|
||||||
|
@ -1,22 +1,331 @@
|
|||||||
#include "common.h"
|
#include "global.h"
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197B30.s")
|
extern Gfx D_6014A40[];
|
||||||
|
extern u16* D_60342A0[];
|
||||||
|
extern u16* D_6034304[];
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197C64.s")
|
void func_i6_80197F18(Boss*);
|
||||||
|
void func_i6_80198244(Boss*);
|
||||||
|
void func_i6_80198ABC(Boss*);
|
||||||
|
void func_i6_80199D64(Boss*);
|
||||||
|
void func_i6_8019AA08(Boss*);
|
||||||
|
void func_i6_8019AEC0(Boss*);
|
||||||
|
s32 func_i6_8019B528(Boss*);
|
||||||
|
s32 func_i6_8019B5CC(Boss*);
|
||||||
|
void func_i6_8019B6E8(Boss*);
|
||||||
|
void func_i6_8019BC14(Boss*);
|
||||||
|
void func_i6_8019C194(Boss*, f32, f32);
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197CB8.s")
|
void func_i6_80197B30(Actor* actor, s32 timer) {
|
||||||
|
Actor_Initialize(actor);
|
||||||
|
actor->obj.status = 2;
|
||||||
|
actor->obj.id = 0xC3;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197CC4.s")
|
actor->obj.pos.x = gPlayer->pos.x;
|
||||||
|
actor->obj.pos.y = gPlayer->pos.y;
|
||||||
|
actor->obj.pos.z = gPlayer->pos.z;
|
||||||
|
|
||||||
|
actor->fwork[0] = gPlayer->unk_0D0;
|
||||||
|
|
||||||
|
actor->vel.x = gPlayer->vel.x;
|
||||||
|
actor->vel.y = gPlayer->vel.y;
|
||||||
|
actor->vel.z = gPlayer->vel.z;
|
||||||
|
|
||||||
|
actor->obj.rot.x = gPlayer->unk_4D8 + (gPlayer->unk_120 + gPlayer->unk_0E4);
|
||||||
|
actor->obj.rot.y = gPlayer->unk_0E8 + gPlayer->unk_114 + 180.0f;
|
||||||
|
actor->obj.rot.z = gPlayer->unk_0EC;
|
||||||
|
|
||||||
|
actor->unk_0B8 = 5;
|
||||||
|
actor->timer_04C = timer;
|
||||||
|
actor->iwork[11] = 1;
|
||||||
|
|
||||||
|
Object_SetInfo(&actor->info, actor->obj.id);
|
||||||
|
Audio_PlaySfx(0x3100000CU, &actor->sfxPos, 4U, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_i6_80197C64(Effect* effect) {
|
||||||
|
RCP_SetupDL_21();
|
||||||
|
gSPDisplayList(gMasterDisp++, D_6014A40);
|
||||||
|
RCP_SetupDL(&gMasterDisp, 0x40);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_i6_80197CB8(Object_80* obj80) {
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_i6_80197CC4(Boss* boss) {
|
||||||
|
boss->fwork[9] = 0.0f;
|
||||||
|
boss->swork[33] = 5500;
|
||||||
|
boss->timer_050 = 10;
|
||||||
|
boss->timer_058 = 0;
|
||||||
|
D_80177A10[8] = 0;
|
||||||
|
|
||||||
|
if (boss->index == 0) {
|
||||||
|
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_60342A0);
|
||||||
|
boss->health = 150;
|
||||||
|
boss->swork[28] = 5;
|
||||||
|
boss->fwork[43] = 3.5f;
|
||||||
|
boss->fwork[45] = 40.0f;
|
||||||
|
|
||||||
|
if (gPlayer->state_1C8 == PLAYERSTATE_1C8_9) {
|
||||||
|
boss->obj.pos.z = -28900.0f;
|
||||||
|
gObjects58->obj.pos.z = -30000.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
boss->unk_078.y = 0.0f;
|
||||||
|
func_i6_8019AEC0(boss);
|
||||||
|
} else {
|
||||||
|
boss->fwork[34] = 2.8f;
|
||||||
|
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6034304);
|
||||||
|
|
||||||
|
boss->health = 100;
|
||||||
|
boss->swork[28] = 0;
|
||||||
|
boss->swork[25] = 1;
|
||||||
|
boss->fwork[45] = 35.0f;
|
||||||
|
|
||||||
|
if (boss->index == 1) {
|
||||||
|
boss->unk_078.y = 15.0f;
|
||||||
|
} else {
|
||||||
|
boss->unk_078.y = 345.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
boss->vel.x = __sinf(boss->unk_078.y * M_DTOR);
|
||||||
|
boss->vel.x = (boss->fwork[45] * boss->vel.x) * 0.2f;
|
||||||
|
boss->vel.z = __cosf(boss->unk_078.y * M_DTOR);
|
||||||
|
boss->vel.z = (boss->fwork[45] * boss->vel.z) * 0.2f;
|
||||||
|
|
||||||
|
func_i6_80198244(boss);
|
||||||
|
boss->timer_056 = 0xFA;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gLevelMode == LEVELMODE_ON_RAILS) {
|
||||||
|
if (gPlayer->state_1C8 == PLAYERSTATE_1C8_3) {
|
||||||
|
gPlayer->state_1C8 = PLAYERSTATE_1C8_9;
|
||||||
|
gPlayer->unk_1D0 = 0;
|
||||||
|
func_800182F4(0x103200FF);
|
||||||
|
func_800182F4(0x113200FF);
|
||||||
|
}
|
||||||
|
Object_Kill(&boss->obj, &boss->sfxPos);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// figure out arg0 type
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197F18.s")
|
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197F18.s")
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80197F84.s")
|
void func_i6_80197F84(Boss* boss) {
|
||||||
|
f32 var_fv1;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80198238.s")
|
Math_SmoothStepToF(&boss->obj.pos.y, 0.0f, 0.5f, 15.0f, 0.1f);
|
||||||
|
Math_SmoothStepToF(&boss->vel.y, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||||
|
Math_SmoothStepToF(&boss->vel.z, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||||
|
Math_SmoothStepToF(&boss->vel.x, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||||
|
Math_SmoothStepToAngle(&boss->unk_078.x, 0.0f, 0.1f, 4.0f, 0.1f);
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80198244.s")
|
if (func_i6_8019B5CC(boss) != 0) {
|
||||||
|
Math_SmoothStepToF(&boss->obj.pos.y, 1000.0f, 0.1f, 30.0f, 0.1f);
|
||||||
|
} else {
|
||||||
|
Math_SmoothStepToF(&boss->obj.pos.y, 0.0f, 0.1f, 10.0f, 0.1f);
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_801983E4.s")
|
func_i6_8019B6E8(boss);
|
||||||
|
if (boss->timer_052 == 0) {
|
||||||
|
func_i6_8019BC14(boss);
|
||||||
|
}
|
||||||
|
|
||||||
|
Math_SmoothStepToAngle(
|
||||||
|
&boss->unk_078.y,
|
||||||
|
Math_RadToDeg(Math_Atan2F(boss->fwork[18] - boss->obj.pos.x, boss->fwork[20] - boss->obj.pos.z)), 0.1f, 8.0f,
|
||||||
|
0.1f);
|
||||||
|
|
||||||
|
if (boss->timer_050 == 0) {
|
||||||
|
func_i6_80198244(boss);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (boss->swork[22] == 1) {
|
||||||
|
if (boss->vel.x >= 0) {
|
||||||
|
var_fv1 = boss->vel.x;
|
||||||
|
} else {
|
||||||
|
var_fv1 = -boss->vel.x;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (var_fv1 <= 1.0f) {
|
||||||
|
if (boss->vel.z >= 0) {
|
||||||
|
var_fv1 = boss->vel.z;
|
||||||
|
} else {
|
||||||
|
var_fv1 = -boss->vel.z;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (((var_fv1 <= 1.0f) && (fabsf(boss->fwork[18] - boss->obj.pos.x) <= 400.0f)) &&
|
||||||
|
(fabsf(boss->fwork[20] - boss->obj.pos.z) <= 1400.0f)) {
|
||||||
|
if ((Rand_ZeroOne() < 0.2f) && (boss->unk_078.x == 0.0f)) {
|
||||||
|
func_i6_8019AA08(boss);
|
||||||
|
}
|
||||||
|
if (Rand_ZeroOne() < 0.2f) {
|
||||||
|
func_i6_80198244(boss);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (func_i6_8019B528(boss) != 0) {
|
||||||
|
func_i6_80198ABC(boss);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_i6_80198238(s32 arg0) {
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_i6_80198244(Boss* boss) {
|
||||||
|
f32 var_fv0;
|
||||||
|
|
||||||
|
boss->swork[20] = 3;
|
||||||
|
boss->swork[21] = 1;
|
||||||
|
boss->timer_056 = (Rand_ZeroOne() * 500.0f) + 100.0f;
|
||||||
|
boss->fwork[11] = __sinf(boss->unk_078.y * M_DTOR) * boss->fwork[0x2D];
|
||||||
|
boss->fwork[13] = __cosf(boss->unk_078.y * M_DTOR) * boss->fwork[0x2D];
|
||||||
|
|
||||||
|
if (boss->vel.x >= 0) {
|
||||||
|
var_fv0 = boss->vel.x;
|
||||||
|
} else {
|
||||||
|
var_fv0 = -boss->vel.x;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (var_fv0 < 5.0f) {
|
||||||
|
Math_SmoothStepToF(&boss->vel.x, boss->fwork[11], 0.1f, 5.0f, 0.1f);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (boss->vel.z >= 0) {
|
||||||
|
var_fv0 = boss->vel.z;
|
||||||
|
} else {
|
||||||
|
var_fv0 = -boss->vel.z;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (var_fv0 < 5.0f) {
|
||||||
|
Math_SmoothStepToF(&boss->vel.z, boss->fwork[13], 0.1f, 5.0f, 0.1f);
|
||||||
|
}
|
||||||
|
|
||||||
|
boss->fwork[10] = 181.0f;
|
||||||
|
boss->fwork[34] = 2.8f;
|
||||||
|
Audio_PlaySfx(0x2902306CU, &boss->sfxPos, 4U, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_i6_801983E4(Boss* boss) {
|
||||||
|
f32 var_fv1;
|
||||||
|
f32 sp38;
|
||||||
|
f32 sp34;
|
||||||
|
|
||||||
|
func_i6_8019B6E8(boss);
|
||||||
|
|
||||||
|
if (boss->timer_052 == 0) {
|
||||||
|
func_i6_8019BC14(boss);
|
||||||
|
}
|
||||||
|
|
||||||
|
Math_SmoothStepToAngle(&boss->unk_078.z, 0.0f, 0.1f, 2.0f, 0.1f);
|
||||||
|
Math_SmoothStepToAngle(&boss->unk_078.x, 0.0f, 0.1f, 2.0f, 0.1f);
|
||||||
|
Math_SmoothStepToF(&boss->vel.x, boss->fwork[11], 0.1f, 0.5f, 0.1f);
|
||||||
|
Math_SmoothStepToF(&boss->vel.z, boss->fwork[13], 0.1f, 0.5f, 0.1f);
|
||||||
|
Math_SmoothStepToF(&boss->vel.y, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||||
|
|
||||||
|
if (boss->obj.pos.x <= boss->fwork[18]) {
|
||||||
|
sp38 = boss->fwork[18] - boss->obj.pos.x;
|
||||||
|
} else {
|
||||||
|
sp38 = -(boss->fwork[18] - boss->obj.pos.x);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (boss->obj.pos.z <= boss->fwork[20]) {
|
||||||
|
sp34 = boss->fwork[20] - boss->obj.pos.z;
|
||||||
|
} else {
|
||||||
|
sp34 = -(boss->fwork[20] - boss->obj.pos.z);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (boss->unk_078.x != 0.0f) {
|
||||||
|
Math_SmoothStepToAngle(&boss->unk_078.x, boss->fwork[10], 0.1f, 6.0f, 0.1f);
|
||||||
|
if (boss->unk_078.x < 200.0f) {
|
||||||
|
boss->swork[21] = 1;
|
||||||
|
boss->unk_078.y -= 180.0f;
|
||||||
|
boss->unk_078.z -= 180.0f;
|
||||||
|
boss->fwork[10] = 0.0f;
|
||||||
|
boss->unk_078.x = 0.0f;
|
||||||
|
|
||||||
|
if (boss->unk_078.y < 0.0f) {
|
||||||
|
boss->unk_078.y = boss->unk_078.y + 360.0f;
|
||||||
|
}
|
||||||
|
if (boss->unk_078.z < 0.0f) {
|
||||||
|
boss->unk_078.z = boss->unk_078.z + 360.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
boss->fwork[11] = __sinf(boss->unk_078.y * M_DTOR) * boss->fwork[45];
|
||||||
|
boss->fwork[13] = __cosf(boss->unk_078.y * M_DTOR) * boss->fwork[45];
|
||||||
|
boss->fwork[34] = 2.8f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func_i6_8019C194(boss, sp34, sp38);
|
||||||
|
|
||||||
|
if (boss->swork[0x16] == 1) {
|
||||||
|
var_fv1 = gPlayer->unk_114 - 180.0f;
|
||||||
|
if (var_fv1 < 0.0f) {
|
||||||
|
var_fv1 += 360.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
var_fv1 = boss->unk_078.y - var_fv1;
|
||||||
|
if (var_fv1 < 0.0f) {
|
||||||
|
var_fv1 += 360.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((sp34 <= 1300.0f) && (sp38 <= 800.0f) && (var_fv1 < 260.0f) && (var_fv1 > 100.0f) &&
|
||||||
|
(boss->unk_078.x == 0.0f) && (boss->fwork[34] <= 2.0f)) {
|
||||||
|
if (Rand_ZeroOne() < 0.2f) {
|
||||||
|
func_i6_8019AA08(boss);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((sp34 < 3400.0f) || (sp38 < 2400.0f)) {
|
||||||
|
if (((var_fv1 >= 60.0f) && (var_fv1 <= 100.0f)) || ((var_fv1 <= 300.0f) && (var_fv1 >= 260.0f))) {
|
||||||
|
if (Rand_ZeroOne() < 0.3f) {
|
||||||
|
if (Rand_ZeroOne() < 0.4f) {
|
||||||
|
func_i6_80197F18(boss);
|
||||||
|
} else {
|
||||||
|
func_i6_80199D64(boss);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (((var_fv1 > 300.0f) || (var_fv1 < 60.0f)) && (boss->unk_078.x == 0.0f)) {
|
||||||
|
if (Rand_ZeroOne() < 0.3f) {
|
||||||
|
if (Rand_ZeroOne() < 0.4f) {
|
||||||
|
func_i6_80197F18(boss);
|
||||||
|
} else {
|
||||||
|
func_i6_80199D64(boss);
|
||||||
|
}
|
||||||
|
} else if (gPlayer->state_1C8 != PLAYERSTATE_1C8_5) {
|
||||||
|
Math_SmoothStepToAngle(&boss->unk_078.x, 181.0f, 0.1f, 6.0f, 0.1f);
|
||||||
|
boss->swork[21] = 3;
|
||||||
|
boss->fwork[11] = __sinf(boss->unk_078.y * M_DTOR) * (boss->fwork[45] + 10.0f);
|
||||||
|
boss->fwork[13] = __cosf(boss->unk_078.y * M_DTOR) * (boss->fwork[45] + 10.0f);
|
||||||
|
boss->fwork[34] = 2.8f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (func_i6_8019B5CC(boss) != 0) {
|
||||||
|
Math_SmoothStepToF(&boss->obj.pos.y, 1000.0f, 0.1f, 30.0f, 0.1f);
|
||||||
|
} else {
|
||||||
|
Math_SmoothStepToF(&boss->obj.pos.y, 0.0f, 0.1f, 5.0f, 0.1f);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (boss->timer_056 == 0) {
|
||||||
|
if (Rand_ZeroOne() <= 0.7f) {
|
||||||
|
func_i6_80199D64(boss);
|
||||||
|
} else {
|
||||||
|
func_i6_80197F18(boss);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (func_i6_8019B528(boss) != 0) {
|
||||||
|
func_i6_80198ABC(boss);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80198ABC.s")
|
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i6/fox_sy/func_i6_80198ABC.s")
|
||||||
|
|
||||||
|
@ -11,15 +11,18 @@ extern AnimationHeader D_602F8E0;
|
|||||||
extern AnimationHeader D_60305C0;
|
extern AnimationHeader D_60305C0;
|
||||||
extern AnimationHeader D_6031DB8;
|
extern AnimationHeader D_6031DB8;
|
||||||
extern AnimationHeader D_6031120;
|
extern AnimationHeader D_6031120;
|
||||||
extern AnimationHeader D_60338DC;
|
|
||||||
extern AnimationHeader D_6035024;
|
extern AnimationHeader D_6035024;
|
||||||
|
extern AnimationHeader D_60338DC;
|
||||||
extern AnimationHeader D_603531C;
|
extern AnimationHeader D_603531C;
|
||||||
extern AnimationHeader D_6036278;
|
extern AnimationHeader D_6036278;
|
||||||
|
|
||||||
extern SkelAnime D_602FBAC[];
|
extern SkelAnime D_602FBAC[];
|
||||||
extern SkelAnime D_603088C[];
|
extern SkelAnime D_603088C[];
|
||||||
extern SkelAnime D_60313AC[];
|
|
||||||
extern SkelAnime D_6032084[];
|
extern SkelAnime D_6032084[];
|
||||||
|
extern SkelAnime D_60313AC[];
|
||||||
|
|
||||||
|
extern Gfx D_6036290[];
|
||||||
|
extern Gfx D_6036B30[];
|
||||||
|
|
||||||
f32 D_menu_801B7BB0;
|
f32 D_menu_801B7BB0;
|
||||||
f32 D_menu_801B7BB4;
|
f32 D_menu_801B7BB4;
|
||||||
@ -157,14 +160,14 @@ f32 D_menu_801B9084;
|
|||||||
|
|
||||||
//! TODO: Symbols for segmented addresses
|
//! TODO: Symbols for segmented addresses
|
||||||
Animation D_menu_801ADA00[4] = {
|
Animation D_menu_801ADA00[4] = {
|
||||||
{ (AnimationHeader*) 0x0602F8E0, (AnimationHeader*) 0x06035024, (SkelAnime*) 0x0602FBAC },
|
{ &D_602F8E0, &D_6035024, D_602FBAC },
|
||||||
{ (AnimationHeader*) 0x060305C0, (AnimationHeader*) 0x060338DC, (SkelAnime*) 0x0603088C },
|
{ &D_60305C0, &D_60338DC, D_603088C },
|
||||||
{ (AnimationHeader*) 0x06031DB8, (AnimationHeader*) 0x0603531C, (SkelAnime*) 0x06032084 },
|
{ &D_6031DB8, &D_603531C, D_6032084 },
|
||||||
{ (AnimationHeader*) 0x06031120, (AnimationHeader*) 0x06036278, (SkelAnime*) 0x060313AC },
|
{ &D_6031120, &D_6036278, D_60313AC },
|
||||||
};
|
};
|
||||||
|
|
||||||
u16* D_menu_801ADA30[5] = {
|
u16* D_menu_801ADA30[5] = {
|
||||||
(u16*) 0x8017A150, (u16*) 0x8017A190, (u16*) 0x8017A1CC, (u16*) 0x8017A210, (u16*) 0x8017A260,
|
gMsg_ID_10, gMsg_ID_20, gMsg_ID_30, gMsg_ID_40, gMsg_ID_50,
|
||||||
};
|
};
|
||||||
|
|
||||||
void func_menu_801875E0(void) {
|
void func_menu_801875E0(void) {
|
||||||
@ -2953,8 +2956,8 @@ void func_menu_8018FD08(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static Gfx* D_menu_801AE48C[12] = {
|
static Gfx* D_menu_801AE48C[12] = {
|
||||||
(Gfx*) 0x06036290, (Gfx*) 0x06036290, (Gfx*) 0x06036290, (Gfx*) 0x06036290, (Gfx*) 0x06036B30, (Gfx*) 0x06036290,
|
D_6036290, D_6036290, D_6036290, D_6036290, D_6036B30, D_6036290,
|
||||||
(Gfx*) 0x06036290, (Gfx*) 0x06036290, (Gfx*) 0x06036290, (Gfx*) 0x06036290, (Gfx*) 0x06036B30, (Gfx*) 0x06036290,
|
D_6036290, D_6036290, D_6036290, D_6036290, D_6036B30, D_6036290,
|
||||||
};
|
};
|
||||||
|
|
||||||
static f32 D_menu_801AE4BC[12] = {
|
static f32 D_menu_801AE4BC[12] = {
|
||||||
|
@ -185,7 +185,7 @@
|
|||||||
- [0x77E40, c, fox_effect]
|
- [0x77E40, c, fox_effect]
|
||||||
- [0x84F70, c, fox_fade]
|
- [0x84F70, c, fox_fade]
|
||||||
- [0x852F0, c, fox_852F0]
|
- [0x852F0, c, fox_852F0]
|
||||||
- [0x85530, c, sf_hud]
|
- [0x85530, c, fox_hud]
|
||||||
- [0x97F80, c, fox_97F80]
|
- [0x97F80, c, fox_97F80]
|
||||||
- [0x9A580, c, fox_std_lib]
|
- [0x9A580, c, fox_std_lib]
|
||||||
- [0xA24B0, c, fox_game]
|
- [0xA24B0, c, fox_game]
|
||||||
@ -276,7 +276,7 @@
|
|||||||
- [0xD09A0, .data, fox_enmy]
|
- [0xD09A0, .data, fox_enmy]
|
||||||
- [0xD0B80, .data, fox_enmy2]
|
- [0xD0B80, .data, fox_enmy2]
|
||||||
- [0xD20E0, .data, fox_effect]
|
- [0xD20E0, .data, fox_effect]
|
||||||
- [0xD2570, data, sf_hud]
|
- [0xD2570, .data, fox_hud]
|
||||||
- [0xD31D0, .data, fox_std_lib]
|
- [0xD31D0, .data, fox_std_lib]
|
||||||
- [0xD3460, .data, fox_game]
|
- [0xD3460, .data, fox_game]
|
||||||
- [0xD3520, .data, fox_A4290]
|
- [0xD3520, .data, fox_A4290]
|
||||||
@ -301,7 +301,7 @@
|
|||||||
- [0xD7650, .rodata, fox_enmy2]
|
- [0xD7650, .rodata, fox_enmy2]
|
||||||
- [0xD7E30, .rodata, fox_effect]
|
- [0xD7E30, .rodata, fox_effect]
|
||||||
- [0xD82F0, .rodata, fox_fade]
|
- [0xD82F0, .rodata, fox_fade]
|
||||||
- [0xD8320, .rodata, sf_hud]
|
- [0xD8320, .rodata, fox_hud]
|
||||||
- [0xD8DE0, .rodata, fox_97F80]
|
- [0xD8DE0, .rodata, fox_97F80]
|
||||||
- [0xD8DF0, .rodata, fox_std_lib]
|
- [0xD8DF0, .rodata, fox_std_lib]
|
||||||
- [0xD8E50, .rodata, fox_game]
|
- [0xD8E50, .rodata, fox_game]
|
||||||
@ -364,7 +364,7 @@
|
|||||||
- { start: 0xDE480, type: .bss, vram: 0x801615D0, name: fox_edisplay }
|
- { start: 0xDE480, type: .bss, vram: 0x801615D0, name: fox_edisplay }
|
||||||
- { start: 0xDE480, type: .bss, vram: 0x80161670, name: fox_enmy }
|
- { start: 0xDE480, type: .bss, vram: 0x80161670, name: fox_enmy }
|
||||||
- { start: 0xDE480, type: .bss, vram: 0x80161690, name: fox_enmy2 }
|
- { start: 0xDE480, type: .bss, vram: 0x80161690, name: fox_enmy2 }
|
||||||
- { start: 0xDE480, type: bss, vram: 0x801616A0, name: sf_hud }
|
- { start: 0xDE480, type: .bss, vram: 0x801616A0, name: fox_hud }
|
||||||
- { start: 0xDE480, type: .bss, vram: 0x80161950, name: fox_97F80 }
|
- { start: 0xDE480, type: .bss, vram: 0x80161950, name: fox_97F80 }
|
||||||
- { start: 0xDE480, type: .bss, vram: 0x801619A0, name: fox_std_lib }
|
- { start: 0xDE480, type: .bss, vram: 0x801619A0, name: fox_std_lib }
|
||||||
- { start: 0xDE480, type: .bss, vram: 0x80161A10, name: fox_game }
|
- { start: 0xDE480, type: .bss, vram: 0x80161A10, name: fox_game }
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
- [0xE08410, c, fox_me]
|
- [0xE08410, c, fox_me]
|
||||||
- [0xE0FF10, c, fox_sx]
|
- [0xE0FF10, c, fox_sx]
|
||||||
- [0xE16300, .data, fox_i2]
|
- [0xE16300, .data, fox_i2]
|
||||||
- [0xE16310, data, fox_me]
|
- [0xE16310, .data, fox_me]
|
||||||
- [0xE16520, .data, fox_sx]
|
- [0xE16520, .data, fox_sx]
|
||||||
- [0xE16670, .rodata, fox_me]
|
- [0xE16670, .rodata, fox_me]
|
||||||
- [0xE16930, .rodata, fox_sx]
|
- [0xE16930, .rodata, fox_sx]
|
||||||
|
Loading…
Reference in New Issue
Block a user