fox_360 and fox_bg decompiled, two more matches, some names. (#62)

* it begins

* stuff

* remove extra

* matched

* forgot one

* small things

* more matches

* filenames
This commit is contained in:
petrie911
2023-12-27 14:14:13 -06:00
committed by GitHub
parent d7d9e472c3
commit c69978c5eb
25 changed files with 6511 additions and 857 deletions
+49 -39
View File
@@ -89,9 +89,7 @@ void RdRam_CheckIPL3(void);
void Mio0_Decompress(void* header, u8* dst);
s32 vsprintf(char* dst, const char* fmt, va_list args);
// sf_2EFE0
// fox_360
void func_8002E3E0(Object_2F4*);
void func_8002E548(void);
void func_8002E5E0(Object_408*);
@@ -103,17 +101,19 @@ void func_8002E694(Object_2F4*);
void func_8002E6B8(Object_2F4*);
void func_8002E6DC(Object_2F4*);
void func_8002E700(Player *);
void func_8002EE64(Object_2F4 *);
void func_8002EE64(Object_2F4 * obj2F4);
void func_8002F180(void);
void func_8002F5F4(void);
void func_800319AC(Object_2F4*);
void func_80035448(Object_2F4*);
void func_8002F5F4(u16* msg, s32 character);
void func_800319AC(Object_2F4* this);
void func_80035448(Object_2F4* obj2F4);
//sf_36930
//sf_beam
void PlayerShot_Initialize(PlayerShot *);
void func_800365E4(f32, f32, f32, f32, f32, f32, f32, f32, f32, s32, s32);
void func_8003D9B8(void);
void func_8003DA0C(void);
// fox_bg
void func_8003DAF0(void);
void func_8003DE68(s32, s32);
void func_8003E1E8(void);
@@ -121,6 +121,7 @@ void func_80040450(void);
void func_80040954(void);
void func_80040CDC(void);
void func_80040CE4(void);
void func_80042D38(void);
// fox_43AC0
void func_80042FAC(Object_408 *);
@@ -129,6 +130,8 @@ void func_80042FC4(Object_408*);
void func_80042FD0(Object_408 *);
void func_80042FDC(Object_408*);
void func_80042FE8(Object_408*);
// fox_43E80
void func_80043468(Player* );
void func_800444BC(Player *);
void func_80047504(Player *);
@@ -536,6 +539,7 @@ void func_DF4260_8018753C(Object_80*);
void func_DF4260_801878D8(Object_408 *);
void func_DF4260_8018B0B4(Object_2F4 *);
void func_DF4260_8018BE7C(Object_408 *);
void func_DF4260_8018ED78(Object_408*);
void func_DF4260_801924A8(Object_80* );
void func_DF4260_8019250C(Object_2F4 *);
void func_DF4260_80192CB0(Object_2F4 *);
@@ -543,48 +547,39 @@ void func_DF4260_80192EA4(Object_2F4 *);
void func_DF4260_801933B4(Object_2F4 *);
void func_DF4260_801935CC(Object_408 *);
void func_DF4260_80198310(Object_408 *);
void func_DF4260_80198594(Object_408 *);
void func_DF4260_801988E0(void);
void func_DF4260_8018ED78(Object_408*);
void func_E9F1D0_80189214(void);
void func_E9F1D0_8018BDD8(void);
void func_E9F1D0_8018C390(Player*);
void func_DF4260_80198C50(void);
void func_DF4260_8019949C(void);
void func_E16C50_8019E8B8(f32, f32, f32, f32);
void func_E9F1D0_801A5AD4(Player*);
void func_E9F1D0_801A5FC0(Player*);
void func_E16C50_801AA8E8(Player*);
void func_E16C50_801AACF8(Player*);
void func_E16C50_801AC274(Player*);
void func_E16C50_801ACE50(Player*);
void func_E6A810_801ACFBC(ObjectInit*);
void func_E6A810_801AD080(void);
void func_E16C50_801AD328(Player*);
void func_E16C50_801BEC80(Player*);
void func_E08400_80187B08(Object_2F4 *);
void func_E08400_80188A40(Object_408 *);
void func_E08400_8018CCF8(Object_2F4 *);
void func_E16C50_80191DB0(Object_2F4*);
void func_E16C50_8018ED78(Player*);
void func_E16C50_80187754(Object_408 *);
void func_E16C50_8018ED78(Player*);
void func_E16C50_801900FC(Vec3f*, Vec3f*, f32, f32, f32, s32, f32, s32, s32);
void func_E16C50_80190430(Object_2F4 *);
void func_E16C50_80190F08(Object_2F4 *);
void func_E16C50_801915A4(Object_2F4 *);
void func_E16C50_80191BB8(Object_2F4 *);
void func_E16C50_80191DB0(Object_2F4*);
void func_E16C50_801932AC(Object_408 *);
void func_E16C50_8019B1F0(Object_2F4 *);
void func_E16C50_8019B810(Object_2F4 *);
void func_E16C50_8019C200(Object_2F4 *);
void func_E16C50_8019D060(Object_2F4 *);
void func_E16C50_8019E8B8(f32, f32, f32, f32);
void func_E16C50_8019E9F4(f32, f32, f32, f32, f32, f32, f32, s32);
void func_E16C50_801A9824(void);
void func_E16C50_801AA20C(void);
void func_E16C50_801AA8E8(Player*);
void func_E16C50_801AACF8(Player*);
void func_E16C50_801AC274(Player*);
void func_E16C50_801AC8A8(f32, f32, f32, f32, s32);
void func_E16C50_801ACBB4(void);
void func_E16C50_801ACE50(Player*);
void func_E16C50_801AD328(Player*);
void func_E16C50_801AD688(Object_2F4 *);
void func_E16C50_801AE3AC(Object_2F4 *);
void func_E16C50_801AF9FC(Object_2F4 *);
@@ -594,18 +589,23 @@ void func_E16C50_801B6E54(Object_2F4 *);
void func_E16C50_801B7AF0(Object_2F4 *);
void func_E16C50_801BA57C(Object_2F4 *);
void func_E16C50_801BB26C(Object_2F4 *);
void func_E16C50_801BEC80(Player*);
void func_E51970_80193CA4(Object_408 *);
void func_E51970_80198594(Object_408 *);
void func_E51970_8019EA68(Object_58**);
void func_E51970_80198930(Object_58**);
void func_E51970_80187960(Object_2F4*);
void func_E51970_8018BA2C(Object_58**);
void func_E51970_8018C158(Object_2F4*);
void func_E51970_80191ED8(Object_58**);
void func_E51970_80192264(void);
void func_E51970_80193CA4(Object_408 *);
void func_E51970_80198594(Object_2F4*);
void func_E51970_80198930(Object_58**);
void func_E51970_80199900(Object_2F4 *, s32);
void func_E51970_80199C60(Object_2F4*);
void func_E51970_8019AB8C(Object_2F4*);
void func_E51970_8019EA68(Object_58**);
void func_E6A810_80188F30(void);
void func_E6A810_80199920(void);
void func_E6A810_801B5110(f32, f32, f32);
void func_E6A810_8018769C(Object_2F4 *);
void func_E6A810_80188F30(void);
void func_E6A810_80189B80(Object_2F4 *);
void func_E6A810_8018ADC4(Object_2F4 *);
void func_E6A810_8018B720(Object_2F4 *);
@@ -618,6 +618,7 @@ void func_E6A810_8018EFF0(Object_4C *);
void func_E6A810_8018F0D8(Object_80 *);
void func_E6A810_8018FA48(Object_408 *);
void func_E6A810_801990DC(Object_408 *);
void func_E6A810_80199920(void);
void func_E6A810_80199F8C(Object_2F4 *);
void func_E6A810_801A3E70(Object_2F4 *);
void func_E6A810_801A4660(Object_2F4 *);
@@ -626,18 +627,27 @@ void func_E6A810_801A5E2C(Object_2F4 *);
void func_E6A810_801A6134(Object_2F4 *);
void func_E6A810_801A65E0(Object_80 *);
void func_E6A810_801A7D98(Object_2F4 *);
void func_E6A810_801ACFBC(ObjectInit*);
void func_E6A810_801AD080(void);
void func_E6A810_801B5110(f32, f32, f32);
void func_E6A810_801B58AC(Gfx **, f32);
s32 func_E6A810_801B6AEC(f32, f32, f32);
void func_E6A810_801B6E20(f32, f32, f32 *, f32 *, f32 *);
s32 func_E6A810_801B6AEC(f32, f32, f32);
void func_E6A810_801B6E20(f32, f32, f32 *, f32 *, f32 *);
void func_E9F1D0_80196968(Object_58**);
void func_E9F1D0_801878A8(Object_58**);
void func_E9F1D0_801961AC(Object_58**);
void func_E9F1D0_801A4CB0(Object_2F4*);
void func_E9F1D0_801A3BD4(Object_2F4*);
void func_E9F1D0_801888F4(Object_2F4 *);
void func_E9F1D0_80189214(void);
void func_E9F1D0_8018BDD8(void);
void func_E9F1D0_8018C390(Player*);
void func_E9F1D0_8018D16C(Object_408 *);
void func_E9F1D0_801961AC(Object_58**);
void func_E9F1D0_80196314(Object_2F4*);
void func_E9F1D0_80196968(Object_58**);
void func_E9F1D0_80197CC4(Object_408 *);
void func_E9F1D0_801A3BD4(Object_2F4*);
void func_E9F1D0_801A4CB0(Object_2F4*);
void func_E9F1D0_801A5AD4(Player*);
void func_E9F1D0_801A5FC0(Player*);
void func_E9F1D0_801A6164(Player *);
void func_EF0260_8018A96C(void);
+1 -3
View File
@@ -11,8 +11,6 @@
#define RGBA16_RED(color16) (((color16) >> 0xB) & 0x1F)
#define RGBA16_GRN(color16) (((color16) >> 6) & 0x1F)
#define RGBA16_BLU(color16) (((color16) >> 1) & 0x1F)
// unclear what the right macro for this is
// #define RGBA16_PACK(r, g, b, a) (((u16) ((r) * 0x800) & 0xF800) | ((u16) ((g) * 0x40) & 0x7C0) | ((u16) ((b) * 2) & 0x3E) | ((a) & 1))
// used for convenience while decopming. You should find/replace them with the full macros before PRing
#define GDL(dl) gSPDisplayList(gMasterDisp++, dl) // 06000000 dl
@@ -111,7 +109,7 @@ void Graphics_DisplayLargeNumber(s32 xPos, s32 yPos, s32 number);
void Graphics_DisplaySmallText(s32 xPos, s32 yPos, f32 xScale, f32 yScale, char *text);
s32 Graphics_GetSmallTextWidth(char *text);
void func_800A1540(s32 arg0, s32 arg1, s32 arg2, s32 arg3);
void func_800A1558(f32 weight, u16 size, void *src1, void *src2, void *dst);
void Texture_BlendRGBA16(f32 weight, u16 size, u16 *src1, u16 *src2, u16 *dst);
void RCP_SetupDL(Gfx** gfxP, s16 i);
void RCP_SetFog(Gfx** gfxP, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far);
+1
View File
@@ -85,6 +85,7 @@ typedef enum LevelId {
/* 18 */ LEVEL_SECTOR_Z,
/* 19 */ LEVEL_VENOM_2,
/* 20 */ LEVEL_VERSUS,
/* 77 */ LEVEL_WARP_ZONE = 77,
} LevelId;
typedef enum {
+4 -4
View File
@@ -48,8 +48,8 @@ typedef enum {
RCID_ANDROSS_RED_OPEN,
RCID_JAMES = 60,
RCID_JAMES_OPEN,
RCID_PEPPER = 70,
RCID_PEPPER_OPEN,
RCID_GEN_PEPPER = 70,
RCID_GEN_PEPPER_OPEN,
RCID_BOSS_CORNERIA = 80,
RCID_BOSS_CORNERIA_OPEN,
RCID_ROB64 = 90,
@@ -94,8 +94,8 @@ typedef enum {
RCID_ANDREW_2_OPEN,
RCID_ROB64_TITLE = 300,
RCID_ROB64_TITLE_OPEN,
RCID_PEPPER_TITLE = 310,
RCID_PEPPER_TITLE_OPEN,
RCID_GEN_PEPPER_TITLE = 310,
RCID_GEN_PEPPER_TITLE_OPEN,
RCID_TRAINING = 350,
RCID_TRAINING_OPEN,
RCID_FOX_EXPERT = 400,
+131 -38
View File
@@ -100,7 +100,6 @@ extern Lightsn* gLight;
extern FrameBuffer *gFrameBuffer;
extern u16* gTextureRender;
// some sort of struct?
extern u8 D_80137E78;
extern u32 gFrameCounter;
extern u8 gStartNMI;
@@ -130,13 +129,22 @@ extern OSMesg D_80156608[4];
extern OSMesg D_80156618[1];
extern OSMesg D_8015661C[1];
// fox_360
extern s32 D_800C9B4C;
// sf_beam
extern u16 D_800C9C3C[16];
// sf_43E80
extern Vec3f D_800C9F2C;
// fox_display
extern s32 D_800CA220;
extern f32 D_800CA230;
extern Object_2F4* D_800CA234;
extern s32 D_Timer_800CA238;
// fox_edata
extern f32 D_800CBE70[];
extern f32 D_800CBE8C[];
extern f32 D_800CBEA8[];
@@ -160,6 +168,8 @@ extern f32 D_800CC070[];
extern f32 D_800CC0D4[];
extern f32 D_800CC0F0[];
extern ObjectInfo D_800CC124[];
// fox_edisplay
extern f32 D_800CF9B0[];
extern Gfx* D_800CFA54[];
extern Gfx* D_800CFAC4[];
@@ -181,17 +191,23 @@ extern f32* D_800CF964[];
extern f32 D_800CFCA0[];
extern f32 D_800CFCCC[];
extern Gfx D_800CFD80[];
// fox_enmy
extern ObjectInit* D_800CFDA0[];
extern s32 D_800CFDF4[];
extern f32 D_800CFE5C[];
extern Vec3f D_800CFEC4[6];
extern Vec3f D_800CFF0C[6];
extern u32 D_800CFF54[9];
// fox_6B3B0
extern s32 D_800CFF80[4];
extern s32 D_800CFF90;
extern s16 D_800CFF94[];
extern u8 D_800CFFB4[];
extern f32 D_800CFFC4[];
// sf_77E40
extern Gfx* D_800D14E0[][2];
extern Gfx* D_800D14FC[];
extern Vec3f D_800D1528;
@@ -200,6 +216,8 @@ extern s32 D_800D173C[];
extern Gfx* D_800D178C[6];
extern s32 D_800D18F0[]; //[6][4]?
extern s32 D_800D1950[];
// sf_hud
extern s16 D_800D1970;
extern f32 D_800D19AC[];
extern f32 D_800D19E0[];
@@ -212,6 +230,8 @@ extern s32 D_800D2180[];
extern s32 D_800D2190[];
extern f32 D_800D21A0;
extern f32 D_800D21A4;
// fox_game
extern s32 D_800D2860[];
extern s32 D_800D2870;
extern s32 D_800D2874[];
@@ -219,18 +239,30 @@ extern s32 D_800D2884[];
extern s32 D_800D2894[];
extern s32 D_800D28A4[];
extern s32 sOverlaySetups[];
// fox_A4290
extern CollisionHeader D_800D2B38[];
extern CollisionHeader2 D_800D2CA0[];
// fox_play
extern u8 D_800D2F68;
extern u8 D_800D3180[30];
extern s32 D_800D31A0[4]; // could belong to fox_rcp or fox_play
extern s32 sCurrentMsgPri;
// unknown, could be fox_rcp, fox_play, or a data-only file.
extern s32 D_800D31A0[4];
// fox_radio
extern s32 gCurrentMsgPri;
// fox_save
extern Save gDefaultSave;
// sf_2EFE0
// fox_360
extern s32 D_8015F900;
extern s32 D_8015F904;
extern s16 D_8015F908;
extern s32 D_8015F90C;
extern s32 D_8015F910;
extern f32 D_8015F914;
extern f32 D_8015F918;
extern f32 D_8015F91C;
@@ -243,10 +275,10 @@ extern s32 D_8015F93C;
extern s32 D_8015F940;
extern f32 D_8015F944;
// sf_36930
extern s16 D_8015F908;
extern s32 D_8015F910;
// sf_beam
extern Vec3f D_8015F950;
// fox_bg
extern f32 D_8015F960;
extern u8 D_8015F964;
extern f32 D_8015F968;
@@ -630,7 +662,7 @@ extern f32 D_80178370; // Vec3f?
extern f32 D_80178374;
extern f32 D_80178378;
extern s32 D_8017837C;
extern s32 D_80178380[4]; // player alphas
extern u32 D_80178380[4]; // player alphas
extern s32 D_80178390[4]; // player reds
extern s32 D_801783A0[4]; // player greens
extern s32 D_801783B0[4]; // player alphas
@@ -894,9 +926,9 @@ extern Gfx D_102ED50[];
extern Gfx D_102F5E0[];
extern Gfx D_102FE80[];
extern u16 D_102FF08[];
extern Gfx D_1031630[];
extern Gfx D_1032780[];
// ast_8A68C0, ast_8AE0A0
extern Gfx D_2000000[];
extern Gfx D_2000890[];
@@ -956,18 +988,23 @@ extern Gfx D_300FB80[];
extern Gfx D_3010A90[];
extern Gfx D_3011470[];
extern Gfx D_3011720[];
extern Gfx D_3011E40[];
extern Gfx D_3012ED0[];
extern Gfx D_30131F0[];
extern Gfx D_3013580[];
extern Gfx D_3013780[];
extern Gfx D_30146B0[];
extern Gfx D_3014BF0[];
extern Gfx D_3015120[];
extern Gfx D_30155E0[];
extern Gfx D_3015740[];
extern AnimationHeader D_3015AF4;
extern AnimationHeader D_3015C28;
extern Gfx D_3015D80[];
extern AnimationHeader D_30163C4;
extern Limb* D_3016610[];
extern Gfx D_3016660[];
extern Gfx D_30160A0[];
extern Gfx D_3016B00[];
extern Gfx D_3016B30[];
extern Gfx D_3016CC0[];
@@ -976,17 +1013,23 @@ extern Gfx D_30174E0[];
extern Gfx D_3017600[];
extern Gfx D_3017600[];
extern Gfx D_30183D0[];
extern Gfx D_3018800[];
extern Gfx D_30194E0[];
extern Gfx D_301B080[];
extern Gfx D_301B6E0[];
extern AnimationHeader D_301C3A8;
extern Limb* D_301C614[];
extern AnimationHeader D_301CFEC;
extern Limb* D_301D258[];
extern AnimationHeader D_301D888;
extern Limb* D_301DB94[];
extern AnimationHeader D_301E19C;
extern Limb* D_301E3E8[];
extern Gfx D_301E570[];
extern Gfx D_301F140[];
extern Gfx D_301FD20[];
extern Gfx D_302D240[];
extern Gfx D_302D4D0[];
extern EnvSettings D_302DD70[];
extern EnvSettings D_302DDB4[];
extern EnvSettings D_302DDF8[];
@@ -994,18 +1037,6 @@ extern ObjectInit D_302DE3C[];
extern ObjectInit D_302E0E4[];
extern ObjectInit D_302E170[];
extern ObjectInit D_302E378[];
extern f32 D_302ED4C[];
extern f32 D_302ED98[];
extern f32 D_302EDB4[];
extern f32 D_302EE00[];
extern f32 D_302EE64[];
extern f32 D_302EE80[];
extern f32 D_302EE9C[];
extern AnimationHeader D_30163C4;
extern AnimationHeader D_301C3A8;
extern AnimationHeader D_301CFEC;
extern AnimationHeader D_301D888;
extern AnimationHeader D_301E19C;
extern Vec3f D_302E56C[];
extern Vec3f D_302E65C[];
extern Vec3f D_302E74C[];
@@ -1014,6 +1045,14 @@ extern Vec3f D_302E95C[];
extern Vec3f D_302EA4C[];
extern Vec3f D_302EB3C[];
extern Vec3f D_302EC20[];
extern f32 D_302ED4C[];
extern f32 D_302ED98[];
extern f32 D_302EDB4[];
extern f32 D_302EE00[];
extern f32 D_302EE64[];
extern f32 D_302EE80[];
extern f32 D_302EE9C[];
// ast_918430, ast_922730
extern AnimationHeader D_4000080;
@@ -1024,6 +1063,7 @@ extern Gfx D_40018A0[];
extern Gfx D_4003BD0[];
extern AnimationHeader D_40057AC;
extern Limb* D_40058B8[];
extern Gfx D_40068F0[];
extern Gfx D_4007870[];
extern Gfx D_4007AF0[];
extern AnimationHeader D_400A30C;
@@ -1056,31 +1096,21 @@ extern u8 D_500A7D0[];
extern Gfx D_500B600[];
/* ast_961CE0, ast_9A1460, ast_9D2FD0, ast_A1D0F0, ast_A4FBB0,
* ast_A58F60, ast_A8B470, ast_AB4000, ast_ACF960, ast_AE60A0,
* ast_A58F60, ast_A8B470, ast_AB4000, ast_ACF960, ast_AE60A0*,
* ast_B0AA00, ast_B1CA50, ast_B2CA50, ast_B612E0, ast_B84560,
* ast_BB11D0, ast_BC23D0, ast_BFC510, ast_C48F40, ast_DDC010
*/
extern u16 D_6005710[];
extern u16 D_600CBD8[];
extern u16 D_600D990[];
extern u16 D_6010198[];
extern u16 D_601E1E8[];
extern u16 D_6020F60[];
extern u16 D_60229A4[];
extern u16 D_6028A60[];
extern u16 D_602ACC0[];
extern u16 D_602C2CC[];
extern u16 D_603158C[];
extern u16 D_603EB38[];
extern u16 D_6000000[];
extern Gfx D_60005B0[];
extern u16 D_6000900[];
extern Gfx D_6000A80[];
extern u16 D_6000B60[];
extern Gfx D_6000E00[];
extern Gfx D_6000E10[];
extern Gfx D_6001360[];
extern Gfx D_6001530[];
extern u16 D_6001820[];
extern Gfx D_6001840[];
extern Gfx D_6001950[];
extern Gfx D_6001A60[];
extern u16 D_6001A80[];
@@ -1091,21 +1121,30 @@ extern u8 D_60020D0[];
extern Gfx D_60023B0[];
extern Gfx D_6002990[];
extern u16 D_60029A0[];
extern Gfx D_6002E60[];
extern Gfx D_6002F80[];
extern Gfx D_6003000[];
extern Gfx D_60030F0[];
extern Gfx D_60034D0[];
extern Gfx D_6003610[];
extern Gfx D_60036A0[];
extern Gfx D_6003760[];
extern u16 D_60038C0[];
extern Gfx D_60038E0[];
extern u16 D_60038F8[];
extern Gfx D_6004170[];
extern Gfx D_6004330[];
extern Vtx D_6004500[];
extern Gfx D_6004570[];
extern Gfx D_60046F0[];
extern u16 D_60047E0[];
extern Gfx D_6004FE0[];
extern Gfx D_6005360[];
extern u16 D_6005700[];
extern u16 D_6005710[];
extern Gfx D_6005780[];
extern Gfx D_6005880[];
extern Gfx D_60059F0[];
extern Gfx D_6006140[];
extern Gfx D_6006310[];
extern u16* D_600631C[];
@@ -1120,10 +1159,12 @@ extern f32 D_60065B0[];
extern f32 D_60065FC[];
extern f32 D_6006648[];
extern f32 D_6006694[];
extern Gfx D_60066D0[];
extern f32 D_60066E0_f32[];
extern Gfx D_60066E0_Gfx[];
extern Gfx D_60066F0[];
extern f32 D_600672C[];
extern u16 D_6006750[];
extern f32 D_6006778[];
extern f32 D_60067C4[];
extern f32 D_6006808[];
@@ -1144,8 +1185,11 @@ extern f32 D_6006A04[];
extern f32 D_6006A20[];
extern f32 D_6006A3C[];
extern Gfx D_6006A80[];
extern Gfx D_6006BE0[];
extern f32 D_6006BF0[];
extern f32 D_6006C44[];
extern AnimationHeader D_6006D64;
extern Limb *D_6006E50[];
extern u16 D_6006EA0[];
extern Gfx D_6006F50[];
extern Gfx D_6007410[];
@@ -1156,9 +1200,12 @@ extern Gfx D_6007CF0[];
extern Gfx D_6007D80[];
extern Gfx D_6007D90[];
extern Gfx D_6008370[];
extern Gfx D_6008770[];
extern Gfx D_6008830[];
extern Gfx D_6008970[];
extern Gfx D_6008AA0[];
extern f32 D_600924C[];
extern Gfx D_6009250[];
extern f32 D_60092E8[];
extern f32 D_6009388[];
extern Gfx D_60097E0[];
@@ -1170,21 +1217,34 @@ extern Vtx D_6009ED0[];
extern Gfx D_6009F90[];
extern Gfx D_600A220[];
extern Gfx D_600A420[];
extern Gfx D_600A810[];
extern Gfx D_600AB10[];
extern u16 D_600AB68[];
extern Gfx D_600AF40[];
extern Gfx D_600B0E0[];
extern Gfx D_600B4B0[];
extern Gfx D_600B8B0[];
extern Gfx D_600BAF0[];
extern u16 D_600BEA0[];
extern Gfx D_600BF80[];
extern Gfx D_600C130[];
extern AnimationHeader D_600C200;
extern Limb *D_600C2AC[];
extern u16 D_600C6A0[];
extern Gfx D_600C740[];
extern Vtx D_600C780[];
extern Gfx D_600CAA0[];
extern u16 D_600CBD8[];
extern Gfx D_600D190[];
extern u16 D_600D5C0[];
extern Gfx D_600D730[];
extern u16 D_600D990[];
extern Gfx D_600D9F0[];
extern Gfx D_600DA10[];
extern Gfx D_600DBC0[];
extern u8 D_600DDC0[];
extern Gfx D_600DDF0[];
extern Gfx D_600E050[];
extern Gfx D_600E0C0[];
extern u8 D_600E360[];
extern AnimationHeader D_600E5EC;
@@ -1193,11 +1253,14 @@ extern u8 D_600E980[];
extern Gfx D_600EC90[];
extern Gfx D_600EE10[];
extern Gfx D_600EEF0[];
extern Gfx D_600EFF0[];
extern Gfx D_600F160[];
extern Gfx D_600F1D0[];
extern Gfx D_600F2F0[];
extern Gfx D_600F3D0[];
extern Gfx D_600F4C0[];
extern Gfx D_600F560[];
extern Gfx D_600F670[];
extern Gfx D_600F6C0[];
extern Gfx D_600F6C0[];
extern Gfx D_600F8A0[];
@@ -1212,8 +1275,10 @@ extern f32 D_600FFC0[];
extern f32 D_600FFE0[];
extern ObjectInit* D_6010088[];
extern u8 D_6010090[];
extern u16 D_6010198[];
extern Gfx D_60102C0[];
extern u8 D_60106B0[];
extern Gfx D_6010700[];
extern Gfx D_6010960[];
extern Gfx D_6010A50[];
extern u16 D_6010C20[];
@@ -1236,6 +1301,7 @@ extern u8 D_60123F0[];
extern Gfx D_6012C00[];
extern Gfx D_60132B0[];
extern u8 D_6013470[];
extern Gfx D_6013480[];
extern Gfx D_60137B0[];
extern AnimationHeader D_6013820;
extern Limb* D_601390C[];
@@ -1270,6 +1336,7 @@ extern Gfx D_6018C00[]; // possible collision
extern Gfx D_6018D40[];
extern Gfx D_6018E80[];
extern u16 D_6018F30[];
extern Gfx D_6019220[];
extern Gfx D_6019730[];
extern u16 D_6019E50[];
extern Gfx D_601A120[];
@@ -1277,6 +1344,7 @@ extern Gfx D_601A7A0[];
extern Gfx D_601A7D0[];
extern Gfx D_601AD70[];
extern Gfx D_601AE40[];
extern Gfx D_601AFF0[];
extern Gfx D_601B0D0[];
extern u16* D_601B1E4[];
extern u16 D_601B4B0[];
@@ -1288,8 +1356,10 @@ extern Gfx D_601B560[];
extern f32 D_601B584[];
extern f32 D_601B5F4[];
extern Gfx D_601B610[];
extern Gfx D_601B640[];
extern f32 D_601B644[];
extern f32 D_601B678[];
extern u16 D_601B6C0[];
extern f32 D_601B6C4[];
extern f32 D_601B710[];
extern f32 D_601B75C[];
@@ -1299,7 +1369,9 @@ extern f32 D_601B830[];
extern f32 D_601B868[];
extern f32 D_601B8A0[];
extern f32 D_601B8D8[];
extern Gfx D_601BB40[];
extern Gfx D_601BEC0[];
extern Gfx D_601C080[];
extern Gfx D_601C6A0[];
extern Gfx D_601C7C0[];
extern u16 D_601C8E0[];
@@ -1310,8 +1382,11 @@ extern u8 D_601D750[];
extern u16 D_601D800[];
extern u16 D_601DB50[];
extern Gfx D_601DE60[];
extern Gfx D_601E150[];
extern u16 D_601E1E8[];
extern AnimationHeader D_601E8C4;
extern Limb* D_601E9D0[];
extern Gfx D_601EAA0[];
extern Gfx D_601F1D0[];
extern Gfx D_601F500[];
extern Gfx D_601F5A0[];
@@ -1325,6 +1400,7 @@ extern Gfx D_6020A30[];
extern Gfx D_6020B40[];
extern u16* D_6020DD0[];
extern Gfx D_6020E60[];
extern u16 D_6020F60[];
extern u16 D_6020FB0[];
extern u16 D_6021ED0[];
extern AnimationHeader D_602201C;
@@ -1334,6 +1410,7 @@ extern Gfx D_6022450[];
extern Gfx D_6022530[];
extern u16 D_6022760[];
extern Gfx D_6022920[];
extern u16 D_60229A4[];
extern Gfx D_60231C0[];
extern Gfx D_60238F0[];
extern Gfx D_6023AC0[];
@@ -1353,13 +1430,18 @@ extern u16 D_6027340[];
extern Limb* D_602742C[];
extern Gfx D_6027900[];
extern u16* D_6027F50[];
extern u16 D_6028260[];
extern f32 D_6028454[];
extern u16* D_60289FC[];
extern u16 D_6028A60[];
extern AnimationHeader D_6029528;
extern Limb* D_6029674[];
extern Gfx D_6029890[];
extern Gfx D_602A720[];
extern u16* D_602AAC0[];
extern Gfx D_602AC40[];
extern u16 D_602AC50[];
extern u16 D_602ACC0[];
extern ObjectInit* D_602B148[];
extern Gfx D_602B4C0[];
extern f32 D_602B9EC[];
@@ -1371,19 +1453,23 @@ extern f32 D_602BC58[];
extern f32 D_602BE3C[];
extern f32 D_602BE58[];
extern f32 D_602BFC4[];
extern Gfx D_602C030[];
extern f32 D_602C044[];
extern Gfx D_602C088[];
extern f32 D_602C1D4[];
extern f32 D_602C218[];
extern f32 D_602C234[];
extern f32 D_602C250[];
extern f32 D_602C294[];
extern f32 D_602C2B0[];
extern u16 D_602C2CC[];
extern Gfx D_602D5F0[];
extern Gfx D_602DA20[];
extern Gfx D_602DAE0[];
extern Gfx D_602DB80[];
extern Gfx D_602DC20[];
extern Gfx D_602DCA0[];
extern u16 D_602DCB8[];
extern Gfx D_602E080[];
extern Gfx D_602E380[];
extern Gfx D_602E570[];
@@ -1404,6 +1490,7 @@ extern Gfx D_602F7C0[];
extern f32 D_602FA50[];
extern Gfx D_6030500[];
extern Gfx D_6030630[];
extern Gfx D_60306D0[];
extern u16* D_60308B8[];
extern f32 D_6030B10[];
extern ObjectInit D_6030B14[];
@@ -1432,6 +1519,7 @@ extern f32 D_6031500[];
extern f32 D_6031538[];
extern f32 D_6031554[];
extern f32 D_6031570[];
extern u16 D_603158C[];
extern u16* D_60320D0[];
extern Gfx D_60320E0[];
extern f32 D_6032328[];
@@ -1542,6 +1630,7 @@ extern f32 D_603EA08[];
extern f32 D_603EA74[];
extern f32 D_603EAE0[];
extern f32 D_603EB0C[];
extern u16 D_603EB38[];
extern Gfx D_6041070[];
extern u16 D_60447A0[];
extern u16 D_6047550[];
@@ -1553,6 +1642,7 @@ extern Gfx D_7000000[];
extern u8 D_7000F10[];
extern u8 D_7001030[];
extern u8 D_7001270[];
extern Gfx D_7001540[];
extern u8 D_7001DF0[];
extern u8 D_7002110[];
extern u8 D_7003650[];
@@ -1616,9 +1706,9 @@ extern Gfx D_8015DF0[];
// ast_9F4880, ast_AE60A0, ast_CDDCA0
extern Gfx D_9002CF0[];
extern Gfx D_9003330[];
extern Gfx D_9003890[];
extern Gfx D_9003DF0[];
extern u16 D_9003330[];
extern u16 D_9003890[];
extern u16 D_9003DF0[];
extern Gfx D_9003F50[];
extern Gfx D_9005C80[];
extern Gfx D_900D180[];
@@ -1648,6 +1738,7 @@ extern f32 D_C038BA4[];
extern f32 D_C038BD8[];
extern f32 D_C038DC0[];
extern f32 D_C038F24[];
extern Gfx D_C039208[];
// ast_955270
extern Gfx D_D000000[];
@@ -1697,6 +1788,8 @@ extern u16 D_F00B580[];
extern u16 D_F00C4A0[];
extern u16 D_F00D3C0[];
extern u16 D_F00E2E0[];
extern Gfx D_F00F200[];
extern Gfx D_F0103D0[];
extern Gfx D_F014180[];
extern Gfx D_F014310[];
+7 -3
View File
@@ -47,9 +47,9 @@ Graphics_DisplayLargeNumber = 0x800A100C;
Graphics_DisplaySmallText = 0x800A1200;
Graphics_GetSmallTextWidth = 0x800A13EC;
func_800A1540 = 0x800A1540;
func_800A1558 = 0x800A1558;
Texture_BlendRGBA16 = 0x800A1558;
// sf_36930
// sf_beam
PlayerShot_Initialize = 0x80035E48;
// fox_rcp
@@ -120,7 +120,7 @@ D_8017873C = 0x8017873C;
D_80178740 = 0x80178740;
D_80178744 = 0x80178744;
D_80178748 = 0x80178748;
sCurrentMsgPri = 0x800D4A70;
gCurrentMsgPri = 0x800D4A70;
func_800BA760 = 0x800BA760;
func_800BA7BC = 0x800BA7BC;
@@ -142,6 +142,10 @@ Message_DisplayText = 0x800C2AF0;
Message_DisplayScrollingText = 0x800C2D3C;
Message_IsPrintingChar = 0x800C2F30;
// fox_bg
D_800C9CC4 = 0x800C9CC4;
D_800C9CF8 = 0x800C9CF8;
// fox_save
gDefaultSave = 0x800D4D10;
gSaveFile = 0x80178870; //size:0x200
-367
View File
@@ -1,367 +0,0 @@
#include "libultra/ultra64.h"
// clang-format off
u8 gTextCharTextures[][104] = {
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x0F, 0x22, 0xF0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x0F, 0x22, 0xF0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00,
0x00, 0x0F, 0x11, 0xF0, 0x00, 0x0F, 0x44, 0xF0,
0x00, 0x0F, 0x11, 0xF0, 0x00, 0x0F, 0x44, 0xF0,
0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x0F, 0x88, 0xF0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x0F, 0x88, 0xF0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x35, 0x90, 0x00, 0x00, 0x00, 0x00,
0x00, 0x03, 0x35, 0x99, 0x00, 0x00, 0x00, 0x00,
0x00, 0xAA, 0xAF, 0xAA, 0xA0, 0x00, 0x00, 0x00,
0x00, 0x06, 0x65, 0xCC, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x65, 0xC0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xAE, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x4B, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x22, 0x29, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5B, 0x11, 0x1B, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xBE, 0xEE, 0xE1, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xB7, 0x77, 0x7B, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00,
0x00, 0xFB, 0xBB, 0x88, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x04, 0x4C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xB5, 0x55, 0x1D, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD1, 0x13, 0x36, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x10, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x14, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x50, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC4, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x50, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x14, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE0, 0x10, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0xDB, 0xBB, 0x9C, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xBC, 0xCC, 0xC3, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF1, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF3, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x31, 0x0F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF8, 0x9B, 0x87, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x27, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0xB4, 0x44, 0x43, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xAF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x70, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0x70, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x70, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x36, 0xE6, 0x61, 0x00, 0x00, 0x00, 0x00,
0x00, 0x30, 0xA0, 0x05, 0x00, 0x00, 0x00, 0x00,
0x00, 0x30, 0x92, 0x05, 0x00, 0x00, 0x00, 0x00,
0x00, 0x70, 0x81, 0x25, 0x00, 0x00, 0x00, 0x00,
0x00, 0x25, 0xD5, 0x52, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00,
0x00, 0x78, 0x00, 0x87, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x00, 0xA5, 0x00, 0x00, 0x00, 0x00,
0x00, 0x52, 0xCC, 0x25, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x44, 0xA5, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5C, 0x22, 0xC5, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD4, 0x22, 0x4D, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC1, 0x33, 0x1C, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xB2, 0x22, 0x32, 0x00, 0x00, 0x00, 0x00,
0x00, 0x90, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00,
0x00, 0x81, 0x01, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x85, 0xCF, 0xC0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x88, 0x32, 0x0C, 0x00, 0x00, 0x00, 0x00,
0x00, 0x84, 0x74, 0x4C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC2, 0x10, 0x0C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE8, 0x10, 0x4C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xA6, 0xFE, 0xA6, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x88, 0x82, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x0F, 0x77, 0x52, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF8, 0x88, 0x27, 0x00, 0x00, 0x00, 0x00,
0x00, 0x7C, 0x44, 0x46, 0x00, 0x00, 0x00, 0x00,
0x00, 0x78, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x78, 0x00, 0x27, 0x00, 0x00, 0x00, 0x00,
0x00, 0x0F, 0x77, 0x52, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x25, 0x7B, 0xA1, 0x00, 0x00, 0x00, 0x00,
0x00, 0x32, 0x40, 0x92, 0x00, 0x00, 0x00, 0x00,
0x00, 0x30, 0x40, 0x92, 0x00, 0x00, 0x00, 0x00,
0x00, 0x21, 0x51, 0x82, 0x00, 0x00, 0x00, 0x00,
0x00, 0x30, 0x40, 0x82, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE5, 0x55, 0xD2, 0x00, 0x00, 0x00, 0x00,
0x00, 0x90, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
0x00, 0x09, 0x99, 0x10, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x12, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD4, 0xAC, 0x90, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD8, 0x61, 0x48, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD1, 0x70, 0x48, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD0, 0x61, 0x48, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD0, 0x60, 0x58, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF2, 0x22, 0x69, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xA5, 0xFF, 0xB4, 0x00, 0x00, 0x00, 0x00,
0x00, 0x7A, 0x00, 0x4F, 0x00, 0x00, 0x00, 0x00,
0x00, 0x78, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0x7A, 0x00, 0x47, 0x00, 0x00, 0x00, 0x00,
0x00, 0x3C, 0x66, 0x25, 0x00, 0x00, 0x00, 0x00,
0x00, 0x29, 0x11, 0x14, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE3, 0x33, 0x94, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD2, 0x00, 0x85, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC3, 0x10, 0x84, 0x00, 0x00, 0x00, 0x00,
0x00, 0x4A, 0x09, 0x14, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5A, 0x08, 0x47, 0x00, 0x00, 0x00, 0x00,
0x00, 0x05, 0xF7, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF8, 0x88, 0x9E, 0x00, 0x00, 0x00, 0x00,
0x00, 0x52, 0x00, 0xB4, 0x00, 0x00, 0x00, 0x00,
0x00, 0x50, 0x3A, 0x14, 0x00, 0x00, 0x00, 0x00,
0x00, 0x50, 0xB2, 0x54, 0x00, 0x00, 0x00, 0x00,
0x00, 0x1E, 0x54, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0xA9, 0x89, 0x8E, 0x00, 0x00, 0x00, 0x00,
0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
0x00, 0x04, 0x44, 0x40, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0x23, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x44, 0x45, 0x64, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x88, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x8B, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0xAE, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x82, 0x44, 0x28, 0x00, 0x00, 0x00, 0x00,
0x00, 0xA4, 0x04, 0x0A, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x04, 0x0A, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x04, 0x82, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x8C, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x28, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x82, 0x05, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x8C, 0xFF, 0xDC, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x55, 0xDD, 0xF5, 0x00, 0x00, 0x00, 0x00,
0x00, 0x48, 0x02, 0x21, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x20, 0x30, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC2, 0x45, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE4, 0x99, 0xB4, 0x00, 0x00, 0x00, 0x00,
0x00, 0xA8, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x00,
0x00, 0xA2, 0x22, 0x2F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD0, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x00,
0x00, 0x0D, 0xDD, 0xF0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x17, 0xFF, 0xF1, 0x00, 0x00, 0x00, 0x00,
0x00, 0x60, 0x88, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0x68, 0x00, 0x16, 0x00, 0x00, 0x00, 0x00,
0x00, 0x60, 0x01, 0x46, 0x00, 0x00, 0x00, 0x00,
0x00, 0x06, 0x67, 0x24, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x10, 0x06, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x10, 0x06, 0x00, 0x00, 0x00, 0x00,
0x00, 0x21, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00,
0x00, 0x07, 0x66, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
},
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x88, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0xA8, 0x90, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x8B, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x8F, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0xDC, 0xE0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x9C, 0xA0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x98, 0xA0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x8B, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x8F, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0xEC, 0xD0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x08, 0x8C, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
}
};
// clang-format on
File diff suppressed because it is too large Load Diff
+2298
View File
File diff suppressed because it is too large Load Diff
+38
View File
@@ -0,0 +1,38 @@
#include "global.h"
void func_800846F0(FrameBuffer* arg0) {
s32 i;
s32 j;
u16* var_v0;
s32 sp60[5];
s32 sp4C[5];
s32 sp38[5];
for (i = 0; i < gFrameCounter % SCREEN_HEIGHT; i++) {
var_v0 = SCREEN_WIDTH * i + arg0->data;
for (j = 0; j < gFrameCounter % SCREEN_WIDTH; j++, var_v0++) {
sp60[1] = RGBA16_RED(var_v0[0]);
sp4C[1] = RGBA16_GRN(var_v0[0]);
sp38[1] = RGBA16_BLU(var_v0[0]);
sp60[2] = RGBA16_RED(var_v0[1]);
sp4C[2] = RGBA16_GRN(var_v0[1]);
sp38[2] = RGBA16_BLU(var_v0[1]);
sp60[3] = RGBA16_RED(var_v0[SCREEN_WIDTH]);
sp4C[3] = RGBA16_GRN(var_v0[SCREEN_WIDTH]);
sp38[3] = RGBA16_BLU(var_v0[SCREEN_WIDTH]);
sp60[4] = RGBA16_RED(var_v0[SCREEN_WIDTH + 1]);
sp4C[4] = RGBA16_GRN(var_v0[SCREEN_WIDTH + 1]);
sp38[4] = RGBA16_BLU(var_v0[SCREEN_WIDTH + 1]);
sp60[0] = (sp60[1] + sp60[2] + sp60[3] + sp60[4]) / 4;
sp4C[0] = (sp4C[1] + sp4C[2] + sp4C[3] + sp4C[4]) / 4;
sp38[0] = (sp38[1] + sp38[2] + sp38[3] + sp38[4]) / 4;
var_v0[0] = (sp60[0] << 0xB) | (sp4C[0] << 0x6) | (sp38[0] << 0x1);
}
}
osWritebackDCacheAll();
}
+1125
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2469,7 +2469,7 @@ void func_800690D0(s32 index, s32 objId) {
func_E6A810_8018B720(&gObjects2F4[index]);
break;
case OBJ_408_319:
func_E51970_80198594(&gObjects408[index]);
func_DF4260_80198594(&gObjects408[index]);
break;
}
}
+1 -1
View File
@@ -4044,7 +4044,7 @@ void func_80074FF0(Object_2F4* obj2F4) {
if (obj2F4->unk_150 > 0.001f) {
Matrix_Scale(gGfxMatrix, obj2F4->unk_150, obj2F4->unk_150, obj2F4->unk_150, 1);
Matrix_SetGfxMtx(&gMasterDisp);
func_800A1558(obj2F4->unk_154, 0xB0, D_9003890, D_9003DF0, D_9003330);
Texture_BlendRGBA16(obj2F4->unk_154, 16 * 11, D_9003890, D_9003DF0, D_9003330);
gSPDisplayList(gMasterDisp++, D_9002CF0);
}
break;
+5 -5
View File
@@ -5501,7 +5501,7 @@ void func_800B56BC(Player* player) {
var_fv1 = 0;
}
Math_SmoothStepToF(&player->unk_030, var_fv1 * 1.6f, 0.1f, 3.0f, 0.05f);
if (gLevelType == 1) {
if (gLevelType == LEVELTYPE_SPACE) {
Math_SmoothStepToF(&player->unk_02C, var_fv0 * 0.8f, 0.1f, 3.0f, 0.05f);
} else if (player->pos.y < (D_80177940 + 50.0f)) {
Math_SmoothStepToF(&player->unk_02C, var_fv0 * 0.3f, 0.1f, 3.0f, 0.05f);
@@ -5890,8 +5890,8 @@ void func_800B7184(Player* player, s32 arg1) {
void func_800B71E4(Player* player) {
switch (player->state_1C8) {
case 3:
switch (gLevelMode) { /* switch 1; irregular */
case 0: /* switch 1 */
switch (gLevelMode) {
case LEVELMODE_ON_RAILS:
if (player->form == FORM_ARWING) {
if (player->unk_238 == 0) {
func_800B56BC(player);
@@ -5904,10 +5904,10 @@ void func_800B71E4(Player* player) {
func_E16C50_801AA8E8(player);
}
break;
case 1: /* switch 1 */
case LEVELMODE_ALL_RANGE:
func_800B7184(player, 0);
break;
case 2: /* switch 1 */
case LEVELMODE_UNK_2:
func_E9F1D0_801A5FC0(player);
break;
}
+11 -11
View File
@@ -12,7 +12,7 @@ f32 D_80178740;
s32 D_80178744;
s32 D_80178748;
s32 sCurrentMsgPri = 0;
s32 gCurrentMsgPri = 0;
void func_800BA760(void) {
RCP_SetupDL_36();
@@ -22,16 +22,16 @@ void func_800BA760(void) {
}
s32 func_800BA7BC(u16* msg, s32 priority) {
if (priority == sCurrentMsgPri) {
if (priority == gCurrentMsgPri) {
return 0;
}
if (priority < sCurrentMsgPri) {
if (priority < gCurrentMsgPri) {
return 1;
}
if (sCurrentMsgPri < priority) {
sCurrentMsgPri = priority;
if (gCurrentMsgPri < priority) {
gCurrentMsgPri = priority;
return 2;
}
}
@@ -78,7 +78,7 @@ void func_800BA808(u16* msg, s32 character) {
return;
}
sCurrentMsgPri = priority;
gCurrentMsgPri = priority;
D_80177D68 = character;
if (gExpertMode && ((character == RCID_FOX) || (character == RCID_FOX_RED))) {
@@ -347,10 +347,10 @@ void func_800BAAE8(void) {
case RCID_BILL_OPEN:
sp44 = D_D002ED0;
break;
case RCID_PEPPER:
case RCID_GEN_PEPPER:
sp44 = D_D007A70;
break;
case RCID_PEPPER_OPEN:
case RCID_GEN_PEPPER_OPEN:
sp44 = D_D008990;
break;
case RCID_ROB64_TITLE:
@@ -359,10 +359,10 @@ void func_800BAAE8(void) {
case RCID_ROB64_TITLE_OPEN:
sp44 = D_E00F020;
break;
case RCID_PEPPER_TITLE:
case RCID_GEN_PEPPER_TITLE:
sp44 = D_E00FF40;
break;
case RCID_PEPPER_TITLE_OPEN:
case RCID_GEN_PEPPER_TITLE_OPEN:
sp44 = D_E010E60;
break;
case RCID_TRAINING:
@@ -636,7 +636,7 @@ void func_800BB5D0(void) {
D_80177D38 -= 0.25f;
if (D_80177D38 == 0) {
D_80178300 = 0;
sCurrentMsgPri = 0;
gCurrentMsgPri = 0;
gRadioState = 0;
}
D_801782A4 = 2;
+42 -32
View File
@@ -1183,36 +1183,46 @@ s32 Graphics_GetSmallTextWidth(char* text) {
void func_800A1540(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
}
#ifdef NON_MATCHING
// It's something like this.
// void func_800A1558(f32 weight, u16 size, u16 *src1, u16 *src2, u16 *dst) {
// f32 r1;
// f32 g1;
// f32 b1;
// s32 a1;
// f32 r2;
// f32 g2;
// f32 b2;
// s32 a2;
// s32 i;
// 20 kinds of fake. Try to improve it here: https://decomp.me/scratch/NMQZB
void Texture_BlendRGBA16(f32 weight, u16 size, u16* src1, u16* src2, u16* dst) {
s32 i;
u16* var_a1 = SEGMENTED_TO_VIRTUAL(src1);
u16* var_a2 = SEGMENTED_TO_VIRTUAL(src2);
u16* var_a3 = SEGMENTED_TO_VIRTUAL(dst);
u16 temp1;
u16 temp2;
u16 temp3;
f32 r1;
f32 g1;
f32 b1;
s32 a1;
f32 r2;
f32 g2;
f32 b2;
s32 a2;
f32 red;
f32 grn;
f32 blu;
g2 = RGBA16_GRN(temp2); // mega fake
// src1 = SEGMENTED_TO_VIRTUAL(src1);
// src2 = SEGMENTED_TO_VIRTUAL(src2);
// dst = SEGMENTED_TO_VIRTUAL(dst);
// for(i = 0; i < size; i++) {
// r1 = RGBA16_RED(src1[i]);
// g1 = RGBA16_GRN(src1[i]);
// b1 = RGBA16_BLU(src1[i]);
// a1 = src1[i] & 1;
// r2 = RGBA16_RED(src2[i]);
// g2 = RGBA16_GRN(src2[i]);
// b2 = RGBA16_BLU(src2[i]);
// a2 = src2[i] & 1;
// dst[i] = RGBA16_PACK((r1 - r2) * weight / 100.0f + r2, (g1 - g2) * weight / 100.0f + g2, (b1 - b2) * weight /
// 100.0f + b2, a1 | a2);
// }
// }
#else
void func_800A1558(f32 weight, u16 size, void* src1, void* src2, void* dst);
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_std_lib/func_800A1558.s")
#endif
for (i = 0; i < size; i++) {
temp1 = var_a1[i];
r1 = RGBA16_RED(temp1);
g1 = RGBA16_GRN(temp1);
b1 = RGBA16_BLU(temp1);
temp1 = temp1 & 1; // fake?
if (1) {} // fake?
temp2 = var_a2[i];
r2 = RGBA16_RED(temp2);
g2 = RGBA16_GRN(temp2);
b2 = RGBA16_BLU(temp2);
a2 = temp2 & 1;
red = (r2 - r1) * weight / 100.0f + r1;
grn = (g2 - g1) * weight / 100.0f + g1;
blu = (b2 - b1) * weight / 100.0f + b1;
var_a3[i] = ((u16) (red * 2048.0f) & 0xF800) | ((u16) (grn * 64.0f) & 0x7C0) | ((u16) (blu * 2.0f) & 0x3E) |
(temp1 | a2 & 1);
}
}
-153
View File
@@ -1,153 +0,0 @@
#include "global.h"
void func_80187520(s32, void*);
void func_8002E3E0(Object_2F4* obj2F4) {
s32 hits = 0;
if (gCurrentLevel == LEVEL_VENOM_2) {
if (D_8015F940 < 0xF00) {
hits = 50;
} else if (D_8015F940 < 0x1680) {
hits = 30;
} else if (D_8015F940 < 0x1E00) {
hits = 20;
} else if (D_8015F940 < 0x2580) {
hits = 10;
}
} else {
if (D_8015F940 < 0xF00) {
hits = 10;
} else if (D_8015F940 < 0x1680) {
hits = 5;
} else if (D_8015F940 < 0x1E00) {
hits = 2;
} else if (D_8015F940 < 0x2580) {
hits = 1;
}
}
if (hits != 0) {
func_80077240(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, hits);
}
gHitCount += hits;
D_80177850 = 15;
}
s32 func_8002E4F8(u16* arg0, s32 arg1) {
if ((gRadioState == 0) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_0)) {
func_800BA808(arg0, arg1);
return true;
} else {
return false;
}
}
void func_8002E548(void) {
if (D_8015F93C != 0) {
s32 sp24 = D_8015F930[1];
func_8008E51C(D_8015F930, D_8015F944);
if ((D_8015F930[0] == 0) && (sp24 != D_8015F930[1]) && (D_8015F930[1] < 15)) {
Audio_PlaySfx(0x4900C02A, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
}
}
}
void func_8002E5E0(Object_408* obj408) {
func_80187520(0x5B, obj408);
}
void func_8002E604(Object_408* obj408) {
func_80187520(0x5C, obj408);
}
void func_8002E628(Object_408* obj408) {
func_80187520(0x5D, obj408);
}
void func_8002E64C(Object_408* obj408) {
func_80187520(0x5E, obj408);
}
void func_8002E670(Object_2F4* obj408) {
func_80187520(0x5F, obj408);
}
void func_8002E694(Object_2F4* obj408) {
func_80187520(0x60, obj408);
}
void func_8002E6B8(Object_2F4* obj408) {
func_80187520(0x61, obj408);
}
void func_8002E6DC(Object_2F4* obj408) {
func_80187520(0x62, obj408);
}
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002E700.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002ED60.s")
void func_8002EE34(void) {
D_8015F904 = gRadioState = gObjects2F4[1].unk_054 = gObjects2F4[2].unk_054 = gObjects2F4[3].unk_054 = 0;
}
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002EE64.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002F180.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002F3E0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002F5F4.s")
void func_8002F64C(void) {
if ((D_80177CD0[0] + D_80177CD0[1] + D_80177CD0[2] + D_80177CD0[3]) == 0) {
gRadioState = 0;
}
func_8002F5F4();
}
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002F69C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002FB4C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002FC00.s")
s32 func_8002FE74(void) {
switch (gCurrentLevel) {
case LEVEL_FORTUNA:
return D_8015F928 == (D_800C9B4C + 0x960);
case LEVEL_BOLSE:
return gObjects408[2].unk_0D0 == 4;
case LEVEL_KATINA:
return gObjects408[1].unk_0A6 == 2;
}
return 0;
}
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002FEF0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8003010C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_800301F4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8003049C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8003088C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_80031858.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_80031900.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_800319AC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_80034E64.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_80035098.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_800352E0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_80035448.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/D_800D4E10.s")
+39 -38
View File
@@ -1,75 +1,76 @@
#include "common.h"
#include "global.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80035D30.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80035D30.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80035DEC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80035DEC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/PlayerShot_Initialize.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/PlayerShot_Initialize.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80035E78.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80035E78.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80036318.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036318.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80036528.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036528.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_800365E4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_800365E4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_800366CC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_800366CC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80036770.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036770.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80036874.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036874.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80036F88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036F88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80037438.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80037438.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80037698.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80037698.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003774C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003774C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80037CF4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80037CF4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80038140.s")
void func_80038140(PlayerShot* shot);
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80038140.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80038F34.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80038F34.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80039210.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80039210.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80039A50.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80039A50.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003AF88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003AF88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003AFD8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003AFD8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003B00C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003B00C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003B55C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003B55C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003BA80.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BA80.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003BAA0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BAA0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003BACC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BACC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003BB4C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BB4C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003BEF4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BEF4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003C008.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003C008.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003C3D8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003C3D8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003C4D0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003C4D0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003CC08.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003CC08.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003CF90.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003CF90.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003D54C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003D54C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003D854.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003D854.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003D9B8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003D9B8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_8003DA0C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003DA0C.s")
+1111 -7
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -1316,11 +1316,11 @@ void func_8007BC7C(f32 posX, f32 posY, f32 posZ, f32 arg3) {
}
void func_8007BCE8(Object_8C* arg0) {
if (gPlayer->state_1C8 == 7) {
if (gPlayer->state_1C8 == PLAYERSTATE_1C8_7) {
arg0->obj.rot.x = (gPlayer->unk_05C * 180.0f) / M_PI;
arg0->obj.rot.y = (-gPlayer->unk_058 * 180.0f) / M_PI;
}
if (gPlayer->state_1C8 == 6) {
if (gPlayer->state_1C8 == PLAYERSTATE_1C8_6) {
arg0->unk_46 = 2;
arg0->unk_54.y -= 0.13f;
}
@@ -1529,7 +1529,7 @@ void func_8007C6FC(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 arg4) {
if (Rand_ZeroOne() < 0.5f) {
arg0->unk_48 = -arg0->unk_48;
}
if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->state_1C8 != 6)) {
if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->state_1C8 != PLAYERSTATE_1C8_6)) {
arg0->unk_4A = 180;
} else {
arg0->unk_4A = 255;
@@ -1564,7 +1564,7 @@ void func_8007C8C4(Object_8C* arg0) {
s32 var_v0;
var_v0 = 0;
if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->state_1C8 != 6)) {
if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->state_1C8 != PLAYERSTATE_1C8_6)) {
var_v0 = 3;
}
if (!(arg0->timer_50 & var_v0) && (gLevelType == LEVELTYPE_PLANET)) {
-135
View File
@@ -1,135 +0,0 @@
#include "global.h"
#ifdef NON_MATCHING
// pretty sure this is equivalent, but it's almost certainly not implemented this way. Raw m2c included for those who
// want to try.
void func_800846F0(FrameBuffer* arg0) {
s32 sp70;
s32 sp6C;
s32 sp68;
s32 sp64;
s32 sp60;
s32 sp5C;
s32 sp58;
s32 sp54;
s32 sp50;
s32 sp4C;
s32 sp48;
s32 sp44;
s32 sp40;
s32 sp3C;
s32 sp38;
s32 sp30;
s32 sp2C;
s32 sp28;
s32 sp24;
s32 sp20;
s32 temp_t3;
s32 temp_t3_2;
s32 temp_t4;
s32 temp_t4_2;
s32 temp_t5_2;
s32 temp_t6;
s32 temp_t6_2;
s32 temp_t7;
s32 temp_t7_2;
s32 temp_t7_3;
s32 temp_t8;
s32 temp_t9;
s32 temp_t9_2;
s32 var_t2;
u16* var_v0;
u16 temp_t5;
u32 var_a0;
u32 var_t0;
u32 var_t1;
u32 var_v1;
s32 i;
s32 j;
for (i = 0; i < gFrameCounter % 240U; i++) {
for (j = 0; j < gFrameCounter % 320U; j++) {
sp64 = RGBA16_RED(arg0->array[i][j]);
sp50 = RGBA16_GRN(arg0->array[i][j]);
sp3C = RGBA16_BLU(arg0->array[i][j]);
sp68 = RGBA16_RED(arg0->array[i][j + 1]);
sp54 = RGBA16_GRN(arg0->array[i][j + 1]);
sp40 = RGBA16_BLU(arg0->array[i][j + 1]);
sp6C = RGBA16_RED(arg0->array[i + 1][j]);
sp58 = RGBA16_GRN(arg0->array[i + 1][j]);
sp44 = RGBA16_BLU(arg0->array[i + 1][j]);
sp70 = RGBA16_RED(arg0->array[i + 1][j + 1]);
sp5C = RGBA16_GRN(arg0->array[i + 1][j + 1]);
sp48 = RGBA16_BLU(arg0->array[i + 1][j + 1]);
sp60 = (sp64 + sp68 + sp6C + sp70) / 4;
sp4C = (sp50 + sp54 + sp58 + sp5C) / 4;
sp38 = (sp3C + sp40 + sp44 + sp48) / 4;
arg0->array[i][j] = RGBA16_PACK(sp60, sp4C, sp38, 0);
}
}
// var_t1 = 0;
// var_t0 = (u32) gFrameCounter % 240U;
// if (var_t0 != 0) {
// var_a0 = (u32) gFrameCounter % 320U;
// var_t2 = 0;
// do {
// var_v0 = (var_t2 * 2) + arg0;
// var_v1 = 0;
// if (var_a0 != 0) {
// do {
// temp_t5 = *var_v0;
// var_v1 += 1;
// var_v0 += 2;
// temp_t3 = ((s32) temp_t5 >> 0xB) & 0x1F;
// sp64 = temp_t3;
// temp_t4 = ((s32) var_v0->unk-2 >> 6) & 0x1F;
// sp50 = temp_t4;
// temp_t9 = ((s32) var_v0->unk-2 >> 1) & 0x1F;
// sp3C = temp_t9;
// temp_t7 = ((s32) var_v0->unk0 >> 0xB) & 0x1F;
// sp68 = temp_t7;
// temp_t6 = ((s32) var_v0->unk0 >> 6) & 0x1F;
// sp54 = temp_t6;
// temp_t5_2 = ((s32) var_v0->unk0 >> 1) & 0x1F;
// sp40 = temp_t5_2;
// sp20 = temp_t3;
// temp_t3_2 = ((s32) var_v0->unk27E >> 0xB) & 0x1F;
// sp6C = temp_t3_2;
// sp24 = temp_t4;
// temp_t4_2 = ((s32) var_v0->unk27E >> 6) & 0x1F;
// sp58 = temp_t4_2;
// sp28 = temp_t9;
// temp_t9_2 = ((s32) var_v0->unk27E >> 1) & 0x1F;
// sp44 = temp_t9_2;
// sp2C = temp_t7;
// temp_t7_2 = ((s32) var_v0->unk280 >> 0xB) & 0x1F;
// sp70 = temp_t7_2;
// sp30 = temp_t6;
// temp_t6_2 = ((s32) var_v0->unk280 >> 6) & 0x1F;
// sp5C = temp_t6_2;
// sp48 = ((s32) var_v0->unk280 >> 1) & 0x1F;
// sp60 = (s32) (temp_t7_2 + sp20 + temp_t7 + temp_t3_2) / 4;
// temp_t8 = (s32) (temp_t6_2 + sp24 + sp30 + temp_t4_2) / 4;
// sp4C = temp_t8;
// temp_t7_3 = (s32) (sp48 + sp28 + temp_t5_2 + temp_t9_2) / 4;
// sp38 = temp_t7_3;
// var_v0->unk-2 = (u16) ((temp_t7_3 * 2) | (sp60 << 0xB) | (temp_t8 << 6));
// var_a0 = (u32) gFrameCounter % 320U;
// } while (var_v1 < var_a0);
// var_t0 = (u32) gFrameCounter % 240U;
// }
// var_t1 += 1;
// var_t2 += 0x140;
// } while (var_t1 < var_t0);
// }
osWritebackDCacheAll();
}
#else
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_852F0/func_800846F0.s")
#endif
+76
View File
@@ -0,0 +1,76 @@
#include "global.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80035D30.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80035DEC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/PlayerShot_Initialize.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80035E78.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036318.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036528.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_800365E4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_800366CC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036770.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036874.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80036F88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80037438.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80037698.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003774C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80037CF4.s")
void func_80038140(PlayerShot* shot);
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80038140.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80038F34.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80039210.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_80039A50.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003AF88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003AFD8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003B00C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003B55C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BA80.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BAA0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BACC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BB4C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003BEF4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003C008.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003C3D8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003C4D0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003CC08.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003CF90.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003D54C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003D854.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003D9B8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_beam/func_8003DA0C.s")
+2 -2
View File
@@ -880,7 +880,7 @@ void func_EBFBE0_8018994C(void) {
gRadioState = 0;
D_80178300 = 0;
sCurrentMsgPri = 0;
gCurrentMsgPri = 0;
break;
case 100:
@@ -982,7 +982,7 @@ void func_EBFBE0_8018994C(void) {
}
if (D_EBFBE0_801B82B8 == 838) {
func_EBFBE0_801919C4(D_EBFBE0_801ADA30, RCID_PEPPER_TITLE);
func_EBFBE0_801919C4(D_EBFBE0_801ADA30, RCID_GEN_PEPPER_TITLE);
}
if (D_EBFBE0_801B82A8 == 1) {
+46 -1
View File
@@ -44,6 +44,50 @@ def convert_names(filepath):
file.write(file_text)
return
code_to_text = {'CLF':'(C<)', 'CUP':'(C^)', 'CRT':'(C>)', 'CDN':'(Cv)', 'AUP':'^', 'ALF':'<', 'ADN':'v', 'ART':'>', 'EXM':'!', 'QST':'?', 'DSH':'-', 'CMA':',', 'PRD':'.', 'APS':"'", 'LPR':'(', 'RPR':')', 'CLN':':', 'PIP':'|'}
def parse_line(line):
codes = [x.strip() for x in line.split(',')]
text = ''
for i, code in enumerate(codes):
if code.startswith(('NP', 'PRI')) or code == '':
continue
elif 'SP' in code:
if(text and text[-1] != ' '):
text += ' '
elif 'NWL' in code:
if text:
text += '\n// '
elif code.startswith('_'):
text += code.strip('_')
else:
text += code_to_text[code]
return text
def add_comments(filepath):
with open(filepath, 'r') as file:
file_lines = file.readlines()
found_text = False
start_line = 0
for i, line in enumerate(file_lines):
if not found_text:
found_text = line.startswith('u16 gMsg_ID_')
out_text = '// '
start_line = i
elif 'END' in line:
if out_text.endswith('\n// '):
out_text = out_text[:-4]
file_lines[start_line] = out_text + '\n' + file_lines[start_line]
print(file_lines[start_line])
found_text = False
else:
out_text += parse_line(line)
with open(filepath, 'w') as file:
file.writelines(file_lines)
return
parser = argparse.ArgumentParser(description='Convert StarFox 64 dialog characters')
parser.add_argument('infile', help="SF64 text file to convert")
@@ -51,4 +95,5 @@ if __name__ == '__main__':
args = parser.parse_args()
# convert_file(args.infile)
convert_names(args.infile)
# convert_names(args.infile)
add_comments(args.infile)
+13 -13
View File
@@ -170,9 +170,9 @@
- [0x2EF40, hasm, ../libultra/rmon/rmonrcp]
# Game engine
- [0x2EFE0, c, sf_2EFE0]
- [0x36930, c, sf_36930]
- [0x3E6F0, c, sf_3E6F0]
- [0x2EFE0, c, fox_360]
- [0x36930, c, sf_beam]
- [0x3E6F0, c, fox_bg]
- [0x43AC0, c, fox_43AC0]
- [0x43E80, c, sf_43E80]
- [0x496C0, c, sf_496C0]
@@ -184,7 +184,7 @@
- [0x6B3B0, c, fox_enmy2]
- [0x77E40, c, sf_77E40]
- [0x84F70, c, fox_fade]
- [0x852F0, c, sf_852F0]
- [0x852F0, c, fox_852F0]
- [0x85530, c, sf_hud]
- [0x97F80, c, fox_97F80]
- [0x9A580, c, fox_std_lib]
@@ -264,9 +264,9 @@
# DATA - game engine
- [0xCA690, data, sf_2EFE0]
- [0xCA7C0, data, sf_36930]
- [0xCA830, data, sf_3E6F0]
- [0xCA690, .data, fox_360]
- [0xCA7C0, data, sf_beam]
- [0xCA830, data, fox_bg]
- [0xCAA90, .data, fox_43AC0]
- [0xCAB00, data, sf_43E80]
- [0xCAB60, data, sf_496C0]
@@ -289,9 +289,9 @@
- [0xD5910, .data, fox_save]
# RODATA - game engine
- [0xD5A10, .rodata, sf_2EFE0]
- [0xD5CF0, .rodata, sf_36930]
- [0xD5F90, .rodata, sf_3E6F0]
- [0xD5A10, .rodata, fox_360]
- [0xD5CF0, .rodata, sf_beam]
- [0xD5F90, .rodata, fox_bg]
- [0xD61D0, .rodata, fox_43AC0]
- [0xD61F0, .rodata, sf_43E80]
- [0xD6350, .rodata, sf_496C0]
@@ -358,9 +358,9 @@
- { start: 0xDE480, type: bss, vram: 0x8015F480, name: ../libultra/rmon/rmonmain }
# Game engine bss
- { start: 0xDE480, type: bss, vram: 0x8015F900, name: sf_2EFE0 }
- { start: 0xDE480, type: bss, vram: 0x8015F950, name: sf_36930 }
- { start: 0xDE480, type: bss, vram: 0x8015F960, name: sf_3E6F0 }
- { start: 0xDE480, type: .bss, vram: 0x8015F900, name: fox_360 }
- { start: 0xDE480, type: bss, vram: 0x8015F950, name: sf_beam }
- { start: 0xDE480, type: bss, vram: 0x8015F960, name: fox_bg }
- { start: 0xDE480, type: .bss, vram: 0x801613A0, name: fox_43AC0 }
- { start: 0xDE480, type: .bss, vram: 0x801613B0, name: fox_display }
- { start: 0xDE480, type: .bss, vram: 0x801615D0, name: fox_edisplay }