fox_52730 decomped, other cleanup (#46)

* objects?

* objects2?

* more stuff

* format

* even more cleanup

* RCP function names

* format

* NO U

* makerom too

* stuff

* last function

* symbols...why

* data

* cleaning

* expert mode

* foxname

* one more name

* forgot something

* one more variable cleanup

* I swear I can stop
This commit is contained in:
petrie911
2023-12-06 21:16:49 -03:00
committed by GitHub
parent 80053694ea
commit 8dbe02a3b4
30 changed files with 4471 additions and 858 deletions
+175 -8
View File
@@ -133,8 +133,6 @@ f32 Math_FAtan2F(f32, f32);
f32 Math_FAsinF(f32);
f32 Math_FAcosF(f32);
void osCreatePiMgr(s32, OSMesgQueue*, OSMesg*, s32);
f32 __sinf(f32);
f32 __cosf(f32);
@@ -142,24 +140,84 @@ s64 __ull_div(s64, s64);
s64 __ll_mul(s64, s64);
s64 __ll_rshift(s64, s64);
// sf_2EFE0
void func_8002E3E0(Object_2F4 *);
void func_8002E548(void);
void func_8002E5E0(Object*);
void func_8002E604(Object*);
void func_8002E628(Object*);
void func_8002E64C(Object*);
void func_8002E670(Object*);
void func_8002E694(Object*);
void func_8002E6B8(Object*);
void func_8002E6DC(Object*);
void func_8002F5F4(void);
void func_800319AC(Object*);
void func_80035448(Object*);
//sf_36930
void func_80035E48(Object_70 *);
void func_8003DA0C(void);
void func_8003DAF0(void);
void func_8003DE68(s32, s32);
void func_8003E1E8(void);
void func_80040450(void);
void func_80040954(void);
void func_80040CDC(void);
void func_80042FAC(Object_408 *);
void func_80040CE4(void);
// sf_43AC0
void func_80042FAC(Object_408 *);
void func_80042FB8(Object*);
void func_80042FC4(Object*);
void func_80042FD0(Object_408 *);
void func_80042FDC(Object*);
void func_80042FE8(Object*);
void func_800444BC(UnkStruct_D_80178280 *);
// sf_496E0
void func_8004F8AC(Object*);
void func_8004FEC0(Object*);
// fox_52730
void func_80053658(UnkStruct_D_80161630 *);
void func_8005465C(s32);
void func_80057814(UnkStruct_D_80178280* arg0);
void func_80057D00(void);
// fox_edata
void func_800594F0(Object_80*);
void func_800595D0(Object_80*);
void func_800596C0(void);
void func_800596B0(Object_2F4*);
// fox_edisplay
void func_8005980C(f32);
void func_80059850(Object_4C*);
void func_800598E8(Object_2F4*);
void func_80059A24(Object_2F4*);
void func_80059AEC(Object_80*);
void func_80059B20(Object_80*);
void func_80059BBC(Object_80*);
void func_80059BF0(Object_2F4*);
void func_80059C34(Object_4C*);
void func_80059C40(Object_4C*);
void func_80059F68(Object_6C*);
void func_80059FDC(Object_6C*);
void func_8005A094(Object_2F4*);
void func_8005B6A4(Object_2F4*);
void func_8005B71C(Object_2F4*);
void func_8005B7CC(Object_2F4*);
void func_8005B848(Object_2F4*);
void func_8005B9A4(Object_2F4*);
void func_8005BA30(Object_2F4*);
void func_8005C5F0(Object_6C*);
void func_8005C900(Object_6C*);
void func_8005C9C0(Object_6C*);
void func_8005CA80(Object_6C*);
void func_8005CB44(Object_6C*);
void func_8005CC9C(Object_6C*);
void func_8005CDA8(Object_6C*);
void func_8005F030(Vec3f*);
void func_8005F0E8(Vec3f*, Vec3f*);
void func_8005F1EC(Vec3f*);
@@ -167,6 +225,10 @@ void func_8005F290(Vec3f*, Vec3f*);
void func_8005F670(Vec3f*);
s32 func_8005F9DC(Vec3f*);
// fox_enmy1
void func_80060714(s32 arg0);
void func_8006089C(u8 arg0);
void func_80060968(void);
void func_80060FBC(Object*, Vec3f*);
s32 func_80060FE4(Vec3f*, f32);
void func_800612B8(ObjectStruct_1C*, u32);
@@ -193,6 +255,8 @@ void func_8006684C(Object_2F4*);
void func_800669A0(Object_2F4*);
void func_80066A80(Object_2F4*);
void func_80066C00(Object_80*);
void func_80066D5C(Object_80*);
void func_80066E8C(Object_4C*);
void func_80066EA8(Object_80*);
void func_80066EF0(Object_6C *);
void func_800671D0(Object_6C *);
@@ -228,11 +292,29 @@ void func_8006A06C(UnkStruct_D_80174750*);
void func_8006A38C(void);
void func_8006A3E8(void);
//sf_6B3B0
void func_8006A96C(Object*);
void func_8006A978(Object*);
void func_8006AA98(Object*);
void func_8006AC08(Object*);
void func_8006AD18(Object*);
void func_8006B094(Object*);
void func_8006B0A0(Object_2F4 *, s32);
void func_8006B74C(Object_2F4 *);
void func_8006B95C(Object*);
void func_8006BB78(Object*);
void func_8006C008(Object*);
void func_8006D350(Object*);
void func_8006EEFC(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32);
void func_80072594(Object*);
void func_80074F90(Object*);
void func_80074FF0(Object*);
void func_800763A4(Object_2F4 *, s32);
void func_8007717C(Object_2F4 *, s32);
void func_800771CC(Object*);
void func_80077218(Object*);
// sf_77E40
void func_80077240(f32 posX, f32 posY, f32 posZ, s32 arg3);
void func_8007729C(void);
void func_80077790(void);
@@ -253,6 +335,7 @@ void func_8007868C(Object_8C* arg0);
void func_8007879C(Object_8C* arg0);
void func_800788B0(Object_8C* arg0);
void func_80078A64(Object_8C* arg0);
void func_8007AA60(Object*);
void func_80078AEC(Object_8C* arg0);
void func_80078B8C(void *unused);
void func_80078BE0(Object_8C* arg0);
@@ -273,26 +356,85 @@ void func_8007A28C(Object_8C* arg0);
void func_8007A3C0(Object_8C* arg0);
void func_8007A568(f32 xPos, f32 yPos, f32 zPos, f32 arg3);
void func_8007A6F0(Vec3f *, u32);
void func_8007A748(Object*);
void func_8007A994(Object*);
void func_8007AB50(Object*);
void func_8007ACE0(f32, f32, f32, f32, f32, f32);
void func_8007AFD0(f32, f32, f32, s32, f32);
void func_8007B040(Object*);
void func_8007B0F4(Object*);
void func_8007B228(f32, f32, f32, f32);
void func_8007B2BC(Object_8C* arg0, f32 xPos, f32 yPos, f32 zPos, f32 arg4, s32 arg5);
void func_8007B344(f32 xPos, f32 yPos, f32 zPos, f32 arg3, s32 arg4);
void func_8007B3B8(Object*);
void func_8007B5C0(Object*);
void func_8007B62C(Object*);
void func_8007B670(Object*);
void func_8007B67C(Object*);
void func_8007B758(Object*);
void func_8007B960(Object*);
void func_8007BC7C(f32, f32, f32, f32);
void func_8007BCE8(Object*);
void func_8007B9DC(Object*);
void func_8007BDE0(Object*);
void func_8007BE54(Object*);
void func_8007BEE8(Object*);
void func_8007BFFC(f32, f32, f32, f32, f32, f32, f32, s32);
void func_8007C120(f32, f32, f32, f32, f32, f32, f32, s32);
void func_8007C250(Object*);
void func_8007C484(f32, f32, f32, f32, f32, f32, f32, s32);
void func_8007C50C(Object*);
void func_8007C8C4(Object*);
void func_8007C9E0(Object*);
void func_8007CAF0(Object*);
void func_8007D074(f32, f32, f32, f32);
void func_8007D0E0(f32, f32, f32, f32);
void func_8007D10C(f32, f32, f32, f32);
void func_8007D2C8(f32, f32, f32, f32);
void func_8007D2F4(Object*);
void func_8007D55C(Object*);
void func_8007D748(Object*);
void func_8007D8A8(Object*);
void func_8007DA58(Object*);
void func_8007DAE4(Object*);
void func_8007DB70(Object*);
void func_8007DED4(Object*);
void func_8007E014(Object*);
void func_8007E258(Object*);
void func_8007E298(Object*);
void func_8007E330(Object*);
void func_8007E3E4(Object*);
void func_8007E45C(Object*);
void func_8007E5CC(Object*);
void func_8007E648(Object*);
void func_8007F04C(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32); // Object_Spawn?
void func_8007F438(Object*);
void func_8007F6B0(Object*);
void func_8007F958(Object*);
void func_8007FBE0(Object*);
void func_8007FE88(Object*);
void func_800802B8(Object*);
void func_800802D8(Object*);
void func_800802F8(Object*);
void func_80080360(Object*);
void func_8008040C(Object*);
void func_8008092C(Object*);
void func_80080ACC(Object*);
void func_80080D04(Object*);
void func_80081C5C(Object*);
void func_80082F78(Object*);
void func_800837EC(Object*);
void func_80083B8C(Object*);
void func_80083FA8(Object*);
void func_80084194(Object_8C*);
// fox_84F70
void func_80084370(s32);
void func_800843FC(s32);
void func_80084488(s32);
void func_80084688(s32, s32);
// fox_hud
void func_80084B94(s32);
void func_800857DC(f32, f32, f32, f32);
void func_80085890(f32, f32, f32, f32);
@@ -317,12 +459,21 @@ void func_8008E51C(s32* , f32);
void func_8008E9EC(f32, f32);
void func_8008EA14(f32, f32);
void func_8008FA84(void);
void func_8008FE78(Object*);
void func_8008FFF0(Object_408*, s32);
bool func_8009092C(Object_2F4*);
void func_800907C4(Object_408*);
s32 func_800915FC(Object_2F4*);
void func_80092D48(Object_2F4 *);
void func_80092D48(Object_2F4 *);
void func_80092EC0(Object*);
void func_80094954(Object_8C*);
void func_80094BBC(Object_8C*);
void func_80094D20(f32, f32);
// sf_97F80
s32 func_800998FC(Vec3f*, Vec3f*, Vec3f*, s32, Vec3f*, f32*);
// fox_A24B0
void func_800A18B0(void);
void func_800A1980(void);
bool func_800A1B6C(void);
@@ -334,25 +485,37 @@ void func_800A24DC(s32);
void func_800A26C0(void);
void func_800A25DC(void);
Object_2F4 *func_800A3608(s32);
// fox_A4290
s32 func_800A3690(Vec3f*, Vec3f*, s32, Vec3f*);
// sf_A48A0
void func_800A3CA0(void);
// sf_A4B50
s32 func_800A3F50(u16);
void func_800A5844(void);
void func_800A5D6C(void);
void func_800A6148(void);
void func_800A6CD0(UnkStruct_D_80178280 *, s32, s32);
void func_800B6F50(f32, f32, f32, f32, f32, f32);
void func_800B73E0(UnkStruct_D_80178280 *);
void func_800B86CC(void);
// fox_radio
s32 func_800BA7BC(u16*, s32);
void func_800BA808(u16*, s32);
void func_800BB5D0(void);
// fox_reset
void Graphics_NMIWipe(void);
void func_800B6F50(f32, f32, f32, f32, f32, f32);
void RCP_SetupDL_36(void);
// sf_versus
void func_800C1ED4(void);
void func_800C20B0(void);
void func_800C2190(void);
// fox_save
s32 Save_Write(void);
s32 Save_Read(void);
@@ -381,6 +544,8 @@ 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_801AA20C(void);
void func_E16C50_801ACBB4(void);
void func_E16C50_801AD688(Object_2F4 *);
void func_E16C50_801AE3AC(Object_2F4 *);
void func_E16C50_801AF9FC(Object_2F4 *);
@@ -414,12 +579,14 @@ 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_801B58AC(Gfx **, f32);
s32 func_E6A810_801B6AEC(f32, f32, f32);
void func_E6A810_801B6E20(f32, f32, f32 *, f32 *, f32 *);
void func_E9F1D0_801888F4(Object_2F4 *, s32);
void func_E9F1D0_8018D16C(Object_408 *);
void func_E9F1D0_80197CC4(Object_408 *);
void func_E9F1D0_801A6164(UnkStruct_D_80178280 *);
void func_EF0260_8018A96C(void);
void func_EF0260_8018AAC4(void);
+78 -39
View File
@@ -123,7 +123,7 @@ typedef struct {
/* 0x20 */ f32 unk_20;
/* 0x24 */ f32 unk_24;
/* 0x28 */ f32 unk_28;
/* 0x2C */ s8 unk_2C;
/* 0x2C */ u8 unk_2C;
/* 0x30 */ f32 unk_30;
/* 0x34 */ f32 unk_34;
/* 0x38 */ f32 unk_38;
@@ -152,9 +152,10 @@ typedef struct {
} UnkStruct_D_80161A68; // size = 0x44?
typedef struct UnkStruct_D_80178280 {
/* 0x000 */ char pad0[0xC];
/* 0x000 */ f32 unk_000;
/* 0x004 */ char pad4[8];
/* 0x00C */ f32 unk_00C;
/* 0x010 */ char pad10[0x24];
/* 0x010 */ char pad10[0x24];
/* 0x034 */ f32 unk_034;
/* 0x038 */ char pad38[8];
/* 0x040 */ Vec3f unk_040;
@@ -162,12 +163,15 @@ typedef struct UnkStruct_D_80178280 {
/* 0x058 */ f32 unk_058;
/* 0x05C */ f32 unk_05C;
/* 0x05C */ f32 unk_060;
/* 0x064 */ char pad064[0x10];
/* 0x064 */ f32 unk_064;
/* 0x068 */ f32 unk_068;
/* 0x06C */ f32 unk_06C;
/* 0x070 */ f32 unk_070;
/* 0x074 */ f32 unk_074;
/* 0x078 */ f32 unk_078;
/* 0x07C */ f32 unk_07C;
/* 0x080 */ f32 unk_080;
/* 0x084 */ char pad84[4];
/* 0x084 */ f32 unk_084;
/* 0x088 */ f32 unk_088;
/* 0x08C */ char pad8C[4];
/* 0x090 */ f32 unk_090;
@@ -186,7 +190,7 @@ typedef struct UnkStruct_D_80178280 {
/* 0x0D8 */ Vec3f unk_0D8;
/* 0x0E4 */ f32 unk_0E4;
/* 0x0E8 */ f32 unk_0E8;
/* 0x0EC */ char padEC[4];
/* 0x0EC */ f32 unk_0EC;
/* 0x0F0 */ f32 unk_0F0;
/* 0x0F4 */ f32 unk_0F4;
/* 0x0F8 */ f32 unk_0F8;
@@ -200,14 +204,33 @@ typedef struct UnkStruct_D_80178280 {
/* 0x11C */ char pad11C[4];
/* 0x120 */ f32 unk_120;
/* 0x124 */ f32 unk_124;
/* 0x128 */ char pad128[0x10];
/* 0x128 */ char pad128[4];
/* 0x12C */ f32 unk_12C;
/* 0x130 */ f32 unk_130;
/* 0x134 */ f32 unk_134;
/* 0x138 */ f32 unk_138;
/* 0x13C */ char pad13C[4];
/* 0x140 */ f32 unk_140;
/* 0x144 */ f32 unk_144;
/* 0x148 */ char pad148[0x54];
/* 0x148 */ char pad148[0xC];
/* 0x154 */ f32 unk_154;
/* 0x158 */ f32 unk_158;
/* 0x15C */ f32 unk_15C;
/* 0x160 */ char pad160[4];
/* 0x164 */ f32 unk_164;
/* 0x168 */ f32 unk_168;
/* 0x16C */ f32 unk_16C;
/* 0x170 */ f32 unk_170;
/* 0x174 */ char pad174[8];
/* 0x17C */ f32 unk_17C;
/* 0x180 */ f32 unk_180;
/* 0x184 */ char pad184[8];
/* 0x18C */ f32 unk_18C;
/* 0x190 */ char pad190[4];
/* 0x194 */ f32 unk_194;
/* 0x198 */ char pad198[4];
/* 0x19C */ s32 unk_19C;
/* 0x1A0 */ char pad1A0[4];
/* 0x1A0 */ s32 unk_1A0;
/* 0x1A4 */ s32 unk_1A4;
/* 0x1A8 */ char pad1A8[0x1C];
/* 0x1C4 */ s32 unk_1C4;
@@ -215,11 +238,12 @@ typedef struct UnkStruct_D_80178280 {
/* 0x1CC */ s32 unk_1CC;
/* 0x1D0 */ s32 unk_1D0;
/* 0x1D4 */ s32 unk_1D4;
/* 0x1D8 */ char pad1D8[0x1C];
/* 0x1D8 */ char pad1D8[0x18];
/* 0x1F0 */ s32 unk_1F0;
/* 0x1F4 */ s32 unk_1F4;
/* 0x1F8 */ s32 unk_1F8;
/* 0x1FC */ s32 unk_1FC;
/* 0x200 */ char pad200[4];
/* 0x200 */ s32 unk_200;
/* 0x204 */ s32 unk_204;
/* 0x208 */ char pad208[8];
/* 0x210 */ s32 unk_210;
@@ -229,16 +253,23 @@ typedef struct UnkStruct_D_80178280 {
/* 0x224 */ s32 unk_224;
/* 0x228 */ s32 unk_228;
/* 0x22C */ s32 unk_22C;
/* 0x230 */ char pad230[8];
/* 0x230 */ char pad230[4];
/* 0x234 */ s32 unk_234;
/* 0x238 */ s32 unk_238;
/* 0x23C */ s32 unk_23C;
/* 0x240 */ char pad240[0x24];
/* 0x240 */ s32 unk_240;
/* 0x244 */ char pad244[4];
/* 0x248 */ f32 unk_248;
/* 0x24C */ f32 unk_24C;
/* 0x250 */ char pad250[0xC];
/* 0x25C */ f32 unk_25C;
/* 0x260 */ char pad260[4];
/* 0x264 */ s32 unk_264;
/* 0x268 */ s32 unk_268;
/* 0x26C */ s32 unk_26C;
/* 0x270 */ char pad270[0xC];
/* 0x27C */ s32 unk_27C;
/* 0x280 */ char pad280[4];
/* 0x280 */ s32 unk_280;
/* 0x284 */ s32 unk_284;
/* 0x288 */ s32 unk_288;
/* 0x28C */ char pad28C[0x28];
@@ -250,15 +281,20 @@ typedef struct UnkStruct_D_80178280 {
/* 0x2D4 */ Vec3f unk_2D4;
/* 0x2E0 */ Vec3f unk_2E0;
/* 0x2EC */ Vec3f unk_2EC;
/* 0x2F8 */ char pad2F8[0x168];
/* 0x460 */ Vec3f unk_460[1];
/* 0x46C */ char pad46C[0x2C];
/* 0x2F8 */ Vec3f jointTable[30];
/* 0x460 */ Vec3f unk_460[2];
/* 0x494 */ char pad478[4];
/* 0x47C */ Vec3f *unk_47C;
/* 0x480 */ Vec3f *unk_480;
/* 0x484 */ char pad484[4];
/* 0x488 */ f32 unk_488;
/* 0x48C */ char pad48C[4];
/* 0x490 */ f32 unk_490;
/* 0x494 */ char pad494[4];
/* 0x498 */ s32 unk_498;
/* 0x49C */ u8 unk_49C; // could be array
/* 0x49C */ u8 unk_49D;
/* 0x49E */ char pad49E[0x3A];
/* 0x49C */ UnkStruct_D_80161630 unk_49C;
/* 0x4D8 */ f32 unk_4D8;
/* 0x4DC */ s32 unk_4DC;
/* 0x4DC */ f32 unk_4DC;
} UnkStruct_D_80178280; // size = 0x4E0 Might be Player
typedef struct {
@@ -280,17 +316,17 @@ typedef struct {
} Object; // size = 0x1C
typedef struct {
/* 0x00 */ void (*unk_00)(Object*);
/* 0x00 */ u8 unk_04;
/* 0x08 */ void (*unk_08)(Object*);
/* 0x0C */ f32* unk_0C;
/* 0x10 */ f32 unk_10;
/* 0x14 */ s16 unk_14;
/* 0x16 */ s16 unk_16;
/* 0x18 */ u8 unk_18;
/* 0x19 */ u8 unk_19;
/* 0x1C */ f32 unk_1C;
/* 0x20 */ u8 unk_20;
/* 0x00 */ void (*draw)(); // argument must have object type. Can be dlist.
/* 0x00 */ u8 drawType;
/* 0x08 */ void (*action)(); // argument must have object type.
/* 0x0C */ f32* unk_0C; // some sort of script?
/* 0x10 */ f32 unk_10; // z coordinate of something
/* 0x14 */ s16 unk_14; // can be -1, 0, 1
/* 0x16 */ s16 unk_16; // can be 0, 1, 2
/* 0x18 */ u8 unk_18; // damage?
/* 0x19 */ u8 unk_19; // can be 0, 1, 2
/* 0x1C */ f32 unk_1C; // y offset of something
/* 0x20 */ u8 unk_20; // increment for something
} ObjectStruct_1C; // size = 0x24
typedef struct {
@@ -455,7 +491,7 @@ typedef struct {
/* 0x046 */ s16 unk_046;
/* 0x048 */ s16 unk_048;
/* 0x04A */ s16 unk_04A;
/* 0x04C */ char pad4C[2];
/* 0x04C */ s16 unk_04C;
/* 0x04E */ s16 unk_04E;
/* 0x050 */ s32 unk_050;
/* 0x054 */ s32 unk_054;
@@ -464,16 +500,18 @@ typedef struct {
/* 0x060 */ s32 unk_060;
/* 0x064 */ s32 unk_064;
/* 0x068 */ s32 unk_068;
/* 0x06C */ char pad6C[4];
/* 0x06C */ s32 unk_06C;
/* 0x070 */ s32 unk_070;
/* 0x074 */ s32 unk_074;
/* 0x078 */ s32 unk_078;
/* 0x07C */ s32 unk_07C;
/* 0x080 */ s32 unk_080;
/* 0x084 */ char pad84[4];
/* 0x088 */ s32 unk_88;
/* 0x08C */ s32 unk_8C;
/* 0x090 */ char pad90[0x20];
/* 0x088 */ s32 unk_088;
/* 0x08C */ s32 unk_08C;
/* 0x090 */ char pad90[8];
/* 0x098 */ s32 unk_098;
/* 0x09C */ char pad9C[0x14];
/* 0x0B0 */ s32 unk_0B0;
/* 0x0B4 */ s16 unk_0B4;
/* 0x0B6 */ s16 unk_0B6;
@@ -485,7 +523,7 @@ typedef struct {
/* 0x0C2 */ u16 unk_0C2;
/* 0x0C4 */ u16 unk_0C4;
/* 0x0C6 */ u16 unk_0C6;
/* 0x0C8 */ char padC8[1]; // could be u16 loaded as u8
/* 0x0C8 */ char padC8[1];
/* 0x0C9 */ u8 unk_0C9;
/* 0x0C9 */ u8 unk_0CA[4];
/* 0x0CE */ s16 unk_0CE;
@@ -526,7 +564,8 @@ typedef struct {
/* 0x164 */ f32 unk_164;
/* 0x168 */ f32 unk_168;
/* 0x16C */ f32 unk_16C;
/* 0x170 */ char pad170[8];
/* 0x170 */ f32 unk_170;
/* 0x174 */ char pad174[4];
/* 0x178 */ f32 unk_178;
/* 0x17C */ f32 unk_17C;
/* 0x180 */ f32 unk_180;
+680 -230
View File
File diff suppressed because it is too large Load Diff
-142
View File
@@ -777,145 +777,3 @@ gMsg_ID_23029 = 0x80185b48;
gMsg_ID_23030 = 0x80185ba0;
gMsg_ID_23031 = 0x80185c00;
gMsg_ID_23032 = 0x80185c68;
// D_8017B2CC = 0x8017B2CC;
// D_8017B730 = 0x8017B730;
// D_8017B7A8 = 0x8017B7A8;
// D_8017B7FC = 0x8017B7FC;
// D_8017B848 = 0x8017B848;
// gMsg_ID_5504 = 0x8017D138;
// D_8017E264 = 0x8017E264;
// D_8017E934 = 0x8017E934;
// D_8017E974 = 0x8017E974;
// D_8017E9AC = 0x8017E9AC;
// D_8017E9FC = 0x8017E9FC;
// D_8017EA34 = 0x8017EA34;
// D_8017EA88 = 0x8017EA88;
// D_8017EACC = 0x8017EACC;
// D_8017EAF0 = 0x8017EAF0;
// D_8017EB14 = 0x8017EB14;
// D_8017EB44 = 0x8017EB44;
// D_8017EB9C = 0x8017EB9C;
// D_8017EBD4 = 0x8017EBD4;
// D_8017EC24 = 0x8017EC24;
// D_8017EC60 = 0x8017EC60;
// D_8017ECAC = 0x8017ECAC;
// D_8017ECF4 = 0x8017ECF4;
// D_8017ED28 = 0x8017ED28;
// D_8017ED50 = 0x8017ED50;
// D_8017ED70 = 0x8017ED70;
// D_8017ED9C = 0x8017ED9C;
// D_8017EDB8 = 0x8017EDB8;
// D_8017EFA0 = 0x8017EFA0;
// D_8017EFF0 = 0x8017EFF0;
// D_8017F048 = 0x8017F048;
// D_8017F090 = 0x8017F090;
// D_8017F0D4 = 0x8017F0D4;
// D_8017F114 = 0x8017F114;
// D_8017F144 = 0x8017F144;
// D_8017F194 = 0x8017F194;
// D_8017F1DC = 0x8017F1DC;
// D_8017F218 = 0x8017F218;
// D_8017F26C = 0x8017F26C;
// D_8017F2A4 = 0x8017F2A4;
// D_8017F2E8 = 0x8017F2E8;
// D_8017F31C = 0x8017F31C;
// D_8017F344 = 0x8017F344;
// D_8017F37C = 0x8017F37C;
// D_8017F3C8 = 0x8017F3C8;
// D_8017F3EC = 0x8017F3EC;
// D_8017F8C8 = 0x8017F8C8;
// D_8017F8F4 = 0x8017F8F4;
// D_8017F920 = 0x8017F920;
// D_80180001 = 0x80180001;
// D_80180E38 = 0x80180E38;
// D_80180E70 = 0x80180E70;
// D_80180EC4 = 0x80180EC4;
// D_80180EF4 = 0x80180EF4;
// D_80180F30 = 0x80180F30;
// D_80180FFC = 0x80180FFC;
// D_8018102C = 0x8018102C;
// D_80181530 = 0x80181530;
// D_8018163C = 0x8018163C;
// D_80181664 = 0x80181664;
// D_80181698 = 0x80181698;
// D_801816C8 = 0x801816C8;
// D_80181C30 = 0x80181C30;
// D_8018236C = 0x8018236C;
// D_801823B0 = 0x801823B0;
// D_80182544 = 0x80182544;
// D_80182940 = 0x80182940;
// D_801829FC = 0x801829FC;
// D_80182F34 = 0x80182F34;
// D_80182F74 = 0x80182F74;
// D_80182FA8 = 0x80182FA8;
// D_80182FF0 = 0x80182FF0;
// D_80183028 = 0x80183028;
// D_80183068 = 0x80183068;
// D_801830B0 = 0x801830B0;
// D_80183110 = 0x80183110;
// D_8018314C = 0x8018314C;
// D_8018318C = 0x8018318C;
// D_801831B4 = 0x801831B4;
// D_801831EC = 0x801831EC;
// D_80183204 = 0x80183204;
// D_80183244 = 0x80183244;
// D_80183280 = 0x80183280;
// D_801832AC = 0x801832AC;
// D_801832E4 = 0x801832E4;
// D_801833F0 = 0x801833F0;
// D_8018341C = 0x8018341C;
// D_80183448 = 0x80183448;
// D_80183488 = 0x80183488;
// D_801834D4 = 0x801834D4;
// D_8018350C = 0x8018350C;
// D_80183558 = 0x80183558;
// D_8018359C = 0x8018359C;
// D_801835D0 = 0x801835D0;
// D_80183630 = 0x80183630;
// D_8018366C = 0x8018366C;
// D_80183690 = 0x80183690;
// D_801836B0 = 0x801836B0;
// D_801836F8 = 0x801836F8;
// D_80183724 = 0x80183724;
// D_80183760 = 0x80183760;
// D_801837B4 = 0x801837B4;
// D_801837F8 = 0x801837F8;
// D_8018380C = 0x8018380C;
// D_80183820 = 0x80183820;
// D_80183834 = 0x80183834;
// D_8018385C = 0x8018385C;
// D_80183898 = 0x80183898;
// D_801838DC = 0x801838DC;
// D_80183900 = 0x80183900;
// D_80183950 = 0x80183950;
// D_8018398C = 0x8018398C;
// D_801839B8 = 0x801839B8;
// D_80183A08 = 0x80183A08;
// D_80183A64 = 0x80183A64;
// D_80183AAC = 0x80183AAC;
// D_80183CA8 = 0x80183CA8;
// D_80183CF0 = 0x80183CF0;
// D_80183D3C = 0x80183D3C;
// D_8018406C = 0x8018406C;
// D_801840A8 = 0x801840A8;
// D_801840EC = 0x801840EC;
// D_801843C8 = 0x801843C8;
// D_80184408 = 0x80184408;
// D_80184424 = 0x80184424;
// D_80184474 = 0x80184474;
// D_801844B0 = 0x801844B0;
// D_801844EC = 0x801844EC;
// D_80184558 = 0x80184558;
// D_801845A8 = 0x801845A8;
// D_801845F8 = 0x801845F8;
// D_80184620 = 0x80184620;
// D_80184644 = 0x80184644;
// D_80184668 = 0x80184668;
// D_801846A0 = 0x801846A0;
// D_801846D8 = 0x801846D8;
// D_801846E8 = 0x801846E8;
// D_801846FC = 0x801846FC;
// D_8018481C = 0x8018481C;
// D_801849B8 = 0x801849B8;
// D_80184A04 = 0x80184A04;
// D_80184A4C = 0x80184A4C;
+14 -5
View File
@@ -13,6 +13,13 @@ gFrameBuffers = 0x8038F800;
gDmaTable = 0x80178A70; //size:0x5A0
D_80178A70 = 0x80178A78; //ignore:true
D_80161AA8 = 0x80161AA8;//size:0x10
D_800CA23C = 0x800CA23C;//size:0x18
D_800CA26C = 0x800CA26C;//size:0x20
D_800CA260 = 0x800CA260;//size:0xC
D_801613E0 = 0x801613E0;//size:0x18
D_800CC124 = 0x800CC124;//type:u8
D_80161B00 = 0x80161B00; //size:0x1900
D_80163400 = 0x80163400; //size:0xBE0
D_80163FE0 = 0x80163FE0; //size:0xB130
@@ -20,9 +27,11 @@ D_8016F110 = 0x8016F110; //size:0x1020
D_80170130 = 0x80170130; //size:0x36B0
D_801737E0 = 0x801737E0; //size:0x870
D_80174050 = 0x80174050; //size:0x700
D_80174750 = 0x80174750;//size:0x12C0
D_80175A10 = 0x80175A10;//size:0xA28
D_80176438 = 0x80176438;//size:0x18
D_80174750 = 0x80174750; //size:0x12C0
D_80175A10 = 0x80175A10; //size:0xA28
D_80176438 = 0x80176438; //size:0x18
gExpertMode = 0x801779F8;
D_800D3180 = 0x800D3180; // size:0x1E
gSetupDLs = 0x800D31B0; // size:0x18C0
@@ -40,8 +49,8 @@ Save_Write = 0x800C3084;
Save_Read = 0x800C3194;
gSaveFile = 0x80178870; //size:0x200
__rspboot_start = 0x80000450;
__rspboot_end = 0x80000520;
__rspboot_start = 0x80000450;//name_end:__rspboot_end
__aspmain_start = 0x80000520;//name_end:__aspmain_end
__f3dex_start = 0x80001410;
gF3dexData = 0x800C3DD0;
+1 -1
View File
@@ -64,7 +64,7 @@ __osLeoResume = 0x8002A99C;
__osPfsGetStatus = 0x8002AC30;
__osSpRawWriteIo = 0x8002E1E0;
__osSpRawReadIo = 0x8002E230;
osCreatePiMgr = 0x800227A0;
osCreatePiManager = 0x800227A0;
ramromMain = 0x8002296C;
osSetThreadPri = 0x80022A80;
osInitialize = 0x80022B60;
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#include "global.h"
#ifdef DATA_IMPORT_PENDING
#ifdef IMPORT_DATA_PENDING
s32 osAiSetNextBuffer(void* bufPtr, u32 size) {
static u8 hdwrBugFlag = FALSE;
char* bptr;
+3 -3
View File
@@ -10,10 +10,10 @@ extern char piThreadStack[];
extern OSThread ramromThread;
extern char ramromThreadStack[];
#ifdef DATA_IMPORT_PENDING
#ifdef IMPORT_DATA_PENDING
OSDevMgr __osPiDevMgr = { 0 };
void osCreatePiMgr(OSPri pri, OSMesgQueue* cmdQ, OSMesg* cmdBuf, s32 cmdMsgCnt) {
void osCreatePiManager(OSPri pri, OSMesgQueue* cmdQ, OSMesg* cmdBuf, s32 cmdMsgCnt) {
u32 savedMask;
OSPri oldPri;
OSPri myPri;
@@ -57,7 +57,7 @@ void osCreatePiMgr(OSPri pri, OSMesgQueue* cmdQ, OSMesg* cmdBuf, s32 cmdMsgCnt)
}
}
#else
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/pimgr/osCreatePiMgr.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/pimgr/osCreatePiManager.s")
#endif
extern OSMesg freeRamromBuf[];
-86
View File
@@ -1,86 +0,0 @@
#include "global.h"
void func_80187520(s32, void*);
void func_8002E3E0(Object_2F4* arg0) {
s32 var_a3 = 0;
if (D_80178234 == 0x13) {
if (D_8015F940 < 0xF00) {
var_a3 = 50;
} else if (D_8015F940 < 0x1680) {
var_a3 = 30;
} else if (D_8015F940 < 0x1E00) {
var_a3 = 20;
} else if (D_8015F940 < 0x2580) {
var_a3 = 10;
}
} else {
if (D_8015F940 < 0xF00) {
var_a3 = 10;
} else if (D_8015F940 < 0x1680) {
var_a3 = 5;
} else if (D_8015F940 < 0x1E00) {
var_a3 = 2;
} else if (D_8015F940 < 0x2580) {
var_a3 = 1;
}
}
if (var_a3 != 0) {
func_80077240(arg0->obj.pos.x, arg0->obj.pos.y, arg0->obj.pos.z, var_a3);
}
D_80161A98 += var_a3;
D_80177850 = 0xF;
}
s32 func_8002E4F8(u16* arg0, s32 arg1) {
if ((D_8017829C == 0) && (D_80178280[0].unk_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)) {
func_80019218(0x4900C02A, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
}
}
}
void func_8002E5E0(void* arg0) {
func_80187520(0x5B, arg0);
}
void func_8002E604(void* arg0) {
func_80187520(0x5C, arg0);
}
void func_8002E628(void* arg0) {
func_80187520(0x5D, arg0);
}
void func_8002E64C(void* arg0) {
func_80187520(0x5E, arg0);
}
void func_8002E670(void* arg0) {
func_80187520(0x5F, arg0);
}
void func_8002E694(void* arg0) {
func_80187520(0x60, arg0);
}
void func_8002E6B8(void* arg0) {
func_80187520(0x61, arg0);
}
void func_8002E6DC(void* arg0) {
func_80187520(0x62, arg0);
}
+1718
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -372,7 +372,7 @@ void func_800A26C0(void) {
for (i = 0; i < 30; i++) {
D_800D3180[i] = 0;
}
D_801779F8 = 0;
gExpertMode = false;
D_80177C74 = gSaveFile.save.data.unk_14;
switch (D_80177C74) {
case 0:
+34 -36
View File
@@ -283,46 +283,44 @@ void Animation_FindBoundingBox(Gfx* dList, s32 len, Vec3f* min, Vec3f* max, s32*
Vtx** vtxList) {
s64* sp44 = SEGMENTED_TO_VIRTUAL(dList);
s64* var_s0;
u32 temp_v1;
for (var_s0 = sp44; (s32) (*var_s0 >> 0x38) != G_ENDDL && var_s0 - sp44 < len; var_s0++) {
temp_v1 = (*var_s0 >> 0x38);
if (temp_v1 != G_TRI1) {
if (temp_v1 != G_VTX) {
if (temp_v1 == G_DL) {
Animation_FindBoundingBox(*var_s0 & 0xFFFFFFFF, (*var_s0 >> 0x20) & 0xFFFF, min, max, vtxFound,
vtxCount, vtxList);
}
} else {
switch ((s32) (*var_s0 >> 0x38)) {
case G_DL:
Animation_FindBoundingBox((Gfx*) (*var_s0 & 0xFFFFFFFF), (*var_s0 >> 0x20) & 0xFFFF, min, max, vtxFound,
vtxCount, vtxList);
break;
case G_VTX:
*vtxList = SEGMENTED_TO_VIRTUAL(*var_s0 & 0xFFFFFFFF);
*vtxCount = (*var_s0 >> 0x30) & 0xF;
}
} else {
if (!*vtxFound) {
*vtxFound = 1;
max->x = min->x = (*vtxList)[*var_s0 & 0xFF].v.ob[0];
max->y = min->y = (*vtxList)[*var_s0 & 0xFF].v.ob[1];
max->z = min->z = (*vtxList)[*var_s0 & 0xFF].v.ob[2];
} else {
min->x = MIN(min->x, (*vtxList)[*var_s0 & 0xFF].v.ob[0]);
min->y = MIN(min->y, (*vtxList)[*var_s0 & 0xFF].v.ob[1]);
min->z = MIN(min->z, (*vtxList)[*var_s0 & 0xFF].v.ob[2]);
max->x = MAX(max->x, (*vtxList)[*var_s0 & 0xFF].v.ob[0]);
max->y = MAX(max->y, (*vtxList)[*var_s0 & 0xFF].v.ob[1]);
max->z = MAX(max->z, (*vtxList)[*var_s0 & 0xFF].v.ob[2]);
}
min->x = MIN(min->x, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[0]);
min->y = MIN(min->y, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[1]);
min->z = MIN(min->z, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[2]);
max->x = MAX(max->x, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[0]);
max->y = MAX(max->y, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[1]);
max->z = MAX(max->z, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[2]);
min->x = MIN(min->x, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[0]);
min->y = MIN(min->y, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[1]);
min->z = MIN(min->z, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[2]);
max->x = MAX(max->x, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[0]);
max->y = MAX(max->y, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[1]);
max->z = MAX(max->z, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[2]);
break;
case G_TRI1:
if (!*vtxFound) {
*vtxFound = 1;
max->x = min->x = (*vtxList)[*var_s0 & 0xFF].v.ob[0];
max->y = min->y = (*vtxList)[*var_s0 & 0xFF].v.ob[1];
max->z = min->z = (*vtxList)[*var_s0 & 0xFF].v.ob[2];
} else {
min->x = MIN(min->x, (*vtxList)[*var_s0 & 0xFF].v.ob[0]);
min->y = MIN(min->y, (*vtxList)[*var_s0 & 0xFF].v.ob[1]);
min->z = MIN(min->z, (*vtxList)[*var_s0 & 0xFF].v.ob[2]);
max->x = MAX(max->x, (*vtxList)[*var_s0 & 0xFF].v.ob[0]);
max->y = MAX(max->y, (*vtxList)[*var_s0 & 0xFF].v.ob[1]);
max->z = MAX(max->z, (*vtxList)[*var_s0 & 0xFF].v.ob[2]);
}
min->x = MIN(min->x, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[0]);
min->y = MIN(min->y, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[1]);
min->z = MIN(min->z, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[2]);
max->x = MAX(max->x, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[0]);
max->y = MAX(max->y, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[1]);
max->z = MAX(max->z, (*vtxList)[(*var_s0 >> 8) & 0xFF].v.ob[2]);
min->x = MIN(min->x, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[0]);
min->y = MIN(min->y, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[1]);
min->z = MIN(min->z, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[2]);
max->x = MAX(max->x, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[0]);
max->y = MAX(max->y, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[1]);
max->z = MAX(max->z, (*vtxList)[(*var_s0 >> 0x10) & 0xFF].v.ob[2]);
break;
}
}
}
+4
View File
@@ -1,5 +1,9 @@
#include "global.h"
#include "fox_edata_1C.c"
f32* D_800CF964[] = { NULL };
void func_800594F0(Object_80* arg0) {
RCP_SetupDL_57(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
Matrix_RotateY(gGfxMatrix, M_PI, 1);
File diff suppressed because it is too large Load Diff
+41 -41
View File
@@ -37,7 +37,7 @@ void func_800598E8(Object_2F4* arg0) {
RCP_SetupDL_29(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
}
void func_800599A4(s32 arg0, Vec3f* arg1, s32* arg2) {
void func_800599A4(s32 arg0, Vec3f* arg1, void* arg2) {
Vec3f sp24;
Vec3f sp18;
@@ -46,7 +46,7 @@ void func_800599A4(s32 arg0, Vec3f* arg1, s32* arg2) {
sp24.y = 0.0f;
sp24.z = 0.0f;
Matrix_MultVec3f(gCalcMatrix, &sp24, &sp18);
D_80163FE0[*arg2].unk_114 = sp18.y;
D_80163FE0[*((s32*) arg2)].unk_114 = sp18.y;
}
}
@@ -67,7 +67,7 @@ void func_80059A24(Object_2F4* arg0) {
Matrix_Translate(gGfxMatrix, 0.f, -temp, 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
Animation_GetFrameData(&D_601E8C4, arg0->unk_0B6, sp30);
Animation_DrawSkeleton(1, &D_601E9D0, sp30, NULL, func_800599A4, &arg0->unk_040, &gIdentityMatrix);
Animation_DrawSkeleton(1, D_601E9D0, sp30, NULL, func_800599A4, &arg0->unk_040, &gIdentityMatrix);
}
void func_80059AEC(Object_80* arg0) {
@@ -509,8 +509,8 @@ void func_8005B388(Object_2F4* arg0) {
((D_80178280[0].unk_1C8 == 7) && (D_80178280[0].unk_1D0 >= 0x64) && (D_80178234 == 0x10) &&
(arg0->unk_040 == 1)) ||
((D_80178234 == 5) && (D_80178280[0].unk_1C8 == 0) && (arg0->unk_0B8 == 5))) {
D_80161630.unk_00 = D_80178280[0].unk_49C;
D_80161630.unk_01 = D_80178280[0].unk_49D;
D_80161630.unk_00 = D_80178280[0].unk_49C.unk_00;
D_80161630.unk_01 = D_80178280[0].unk_49C.unk_01;
} else {
D_80161630.unk_00 = D_80161630.unk_01 = 2;
}
@@ -524,7 +524,7 @@ void func_8005B388(Object_2F4* arg0) {
D_80161630.unk_14 = D_80161630.unk_18 = D_80161630.unk_1C = D_80161630.unk_20 = D_80161630.unk_38 =
D_80161630.unk_24 = 0.0f;
D_80161630.unk_28 = arg0->unk_158;
D_80161630.unk_2C = arg0->unk_88;
D_80161630.unk_2C = arg0->unk_088;
D_80161630.unk_30 = arg0->unk_164;
D_80161630.unk_34 = arg0->unk_160;
if (D_80177C98 == 1) {
@@ -928,16 +928,16 @@ void func_8005D3CC(Object* arg0, f32 arg1, f32 arg2, f32 arg3, s32 arg4) {
void func_8005D654(Object_80* arg0, s32 arg1) {
arg0->obj.pos.y += D_8017847C;
func_8005D008(&arg0->obj, arg0->unk_1C.unk_04);
func_8005D008(&arg0->obj, arg0->unk_1C.drawType);
arg0->obj.pos.y -= D_8017847C;
if (arg0->unk_1C.unk_04 == 0) {
if (arg0->unk_1C.drawType == 0) {
if ((arg0->obj.id == 0x13) || (arg0->obj.id == 0x37) || (arg0->obj.id == 9) || (arg0->obj.id == 0x32)) {
RCP_SetupDL_57(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
if (arg1 < 0) {
func_800596C0();
}
gSPDisplayList(gMasterDisp++, arg0->unk_1C.unk_00);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
RCP_SetupDL_29(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
} else {
if (arg0->obj.id == 8) {
@@ -950,14 +950,14 @@ void func_8005D654(Object_80* arg0, s32 arg1) {
if (arg1 < 0) {
func_800596C0();
}
gSPDisplayList(gMasterDisp++, arg0->unk_1C.unk_00);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
if (arg0->obj.id == 8) {
RCP_SetupDL_29(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
}
}
} else if (arg0->unk_1C.unk_00 != NULL) {
} else if (arg0->unk_1C.draw != NULL) {
func_800597C0(arg1);
arg0->unk_1C.unk_00(&arg0->obj);
arg0->unk_1C.draw(&arg0->obj);
}
}
@@ -966,10 +966,10 @@ void func_8005D8B8(Object_4C* arg0, s32 arg1) {
arg0->obj.pos.y += D_8017847C;
func_8005D008(&arg0->obj, 0);
arg0->obj.pos.y -= D_8017847C;
if (arg0->unk_1C.unk_04 == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_1C.unk_00);
} else if (arg0->unk_1C.unk_00 != NULL) {
arg0->unk_1C.unk_00(&arg0->obj);
if (arg0->unk_1C.drawType == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
} else if (arg0->unk_1C.draw != NULL) {
arg0->unk_1C.draw(&arg0->obj);
}
}
}
@@ -977,7 +977,7 @@ void func_8005D8B8(Object_4C* arg0, s32 arg1) {
void func_8005D954(Object_2F4* arg0) {
Vec3f sp34 = { 0.0f, 0.0f, 0.0f };
if (arg0->unk_01C.unk_00 != NULL) {
if (arg0->unk_01C.draw != NULL) {
switch (arg0->obj.id) {
case 0xC2:
func_8006B74C(arg0);
@@ -991,19 +991,19 @@ void func_8005D954(Object_2F4* arg0) {
} else {
if (arg0->unk_01C.unk_19 != 0) {
arg0->obj.pos.y += D_8017847C;
func_8005D008(&arg0->obj, arg0->unk_01C.unk_04);
func_8005D008(&arg0->obj, arg0->unk_01C.drawType);
arg0->obj.pos.y -= D_8017847C;
} else if ((arg0->obj.id == 0xC8) && (arg0->unk_0B4 != 0x1F)) {
func_8005D3CC(&arg0->obj, arg0->unk_2E8.x, arg0->unk_2E8.y, arg0->unk_2E8.z + arg0->unk_0FC,
arg0->unk_01C.unk_04);
arg0->unk_01C.drawType);
} else {
func_8005D008(&arg0->obj, arg0->unk_01C.unk_04);
func_8005D008(&arg0->obj, arg0->unk_01C.drawType);
}
if (arg0->unk_01C.unk_04 == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_01C.unk_00);
if (arg0->unk_01C.drawType == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_01C.draw);
func_8005F1EC(&arg0->unk_100);
} else {
arg0->unk_01C.unk_00(&arg0->obj);
arg0->unk_01C.draw(&arg0->obj);
func_8005F1EC(&arg0->unk_100);
if (((arg0->obj.id == 0xC6) || ((arg0->obj.id == 0xCB) && (arg0->unk_0B6 > 0))) && (D_80161410 > 0)) {
Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80177E98[arg0->unk_0E4]);
@@ -1030,7 +1030,7 @@ void func_8005DBC0(Object_2F4* arg0) {
f32 var_fv1;
D_801615EC = 0;
if (arg0->unk_01C.unk_04 == 2) {
if (arg0->unk_01C.drawType == 2) {
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, D_80177D20, 1);
Matrix_Translate(gCalcMatrix, arg0->obj.pos.x, arg0->obj.pos.y, arg0->obj.pos.z, 0);
Matrix_Push(&gGfxMatrix);
@@ -1049,7 +1049,7 @@ void func_8005DBC0(Object_2F4* arg0) {
Matrix_RotateY(gCalcMatrix, arg0->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gCalcMatrix, arg0->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gCalcMatrix, arg0->obj.rot.z * M_DTOR, 1);
arg0->unk_01C.unk_00(&arg0->obj);
arg0->unk_01C.draw(&arg0->obj);
D_801615EC = 1;
if ((D_80178280->unk_1C8 == 3) && (arg0->obj.id == 0xC5) && (arg0->unk_0E4 == 0xC8)) {
D_80177E98[0] = D_801615E0;
@@ -1072,12 +1072,12 @@ void func_8005DBC0(Object_2F4* arg0) {
}
if (((D_801615E0.z < var_fv0) && (var_fv1 < D_801615E0.z)) &&
((fabsf(D_801615E0.x) < (fabsf(D_801615E0.z * var_fa1) + var_ft5)) &&
(fabsf(D_801615E0.y) < (fabsf(D_801615E0.z * var_fa1) + var_ft5)) && (arg0->unk_01C.unk_00 != NULL))) {
(fabsf(D_801615E0.y) < (fabsf(D_801615E0.z * var_fa1) + var_ft5)) && (arg0->unk_01C.draw != NULL))) {
Matrix_RotateY(gGfxMatrix, arg0->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, arg0->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, arg0->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
arg0->unk_01C.unk_00(&arg0->obj);
arg0->unk_01C.draw(&arg0->obj);
D_801615EC = 1;
if ((D_80178280->unk_1C8 == 3) &&
(((arg0->obj.id == 0xC5) && ((arg0->unk_0E4 < 4) || (arg0->unk_0E4 == 8) || (arg0->unk_0E4 == 9))) ||
@@ -1121,10 +1121,10 @@ void func_8005E1B8(Object_408* arg0, s32 arg1) {
if (arg0->unk_01C.unk_19 != 0) {
arg0->obj.pos.y += arg0->unk_068 + D_8017847C;
func_8005D1F0(&arg0->obj, arg0->unk_01C.unk_04);
func_8005D1F0(&arg0->obj, arg0->unk_01C.drawType);
arg0->obj.pos.y -= arg0->unk_068 + D_8017847C;
} else {
func_8005D1F0(&arg0->obj, arg0->unk_01C.unk_04);
func_8005D1F0(&arg0->obj, arg0->unk_01C.drawType);
}
Matrix_MultVec3f(&D_801615F0, &sp30, &D_801615D0);
func_8005F290(&arg0->unk_3FC, &D_801615D0);
@@ -1153,13 +1153,13 @@ void func_8005E1B8(Object_408* arg0, s32 arg1) {
if (arg0->obj.id != 0x13C) {
func_8005F670(&arg0->obj.pos);
}
if (arg0->unk_01C.unk_04 != 2) {
if (arg0->unk_01C.drawType != 2) {
Matrix_SetGfxMtx(&gMasterDisp);
}
if (arg1 < 0) {
func_800596C0();
}
arg0->unk_01C.unk_00(&arg0->obj);
arg0->unk_01C.draw(&arg0->obj);
}
}
D_801615D0.y = sp3C;
@@ -1167,7 +1167,7 @@ void func_8005E1B8(Object_408* arg0, s32 arg1) {
arg0->unk_308 = D_801615D0;
func_8005F670(&arg0->obj.pos);
Matrix_SetGfxMtx(&gMasterDisp);
arg0->unk_01C.unk_00(&arg0->obj);
arg0->unk_01C.draw(&arg0->obj);
}
}
#else
@@ -1189,8 +1189,8 @@ void func_8005E454(Object_8C* arg0, s32 arg1) {
} else {
func_8005D008(&arg0->obj, 0);
}
if (arg0->unk_1C.unk_00 != NULL) {
arg0->unk_1C.unk_00(&arg0->obj);
if (arg0->unk_1C.draw != NULL) {
arg0->unk_1C.draw(&arg0->obj);
}
}
@@ -1214,12 +1214,12 @@ void func_8005E538(Object_8C* arg0) {
}
if ((sp40.z < 0.0f) && (var_fv0 < sp40.z) && (fabsf(sp40.x) < (fabsf(sp40.z * 0.5f) + 500.0f)) &&
(fabsf(sp40.y) < (fabsf(sp40.z * 0.5f) + 500.0f))) {
if (arg0->unk_1C.unk_00 != NULL) {
if (arg0->unk_1C.draw != NULL) {
Matrix_RotateY(gGfxMatrix, arg0->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, arg0->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, arg0->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
arg0->unk_1C.unk_00(&arg0->obj);
arg0->unk_1C.draw(&arg0->obj);
}
sp3B = 1;
}
@@ -1245,15 +1245,15 @@ void func_8005E7B8(Object_6C* arg0, s32 arg1) {
var_v0 = 0;
if ((sp38.z < 0.0f) && (sp38.z > -12000.0f) && (fabsf(sp38.x) < (fabsf(sp38.z * 0.5f) + 500.0f)) &&
(fabsf(sp38.y) < (fabsf(sp38.z * 0.5f) + 500.0f))) {
if (arg0->unk_1C.unk_00 != NULL) {
if (arg0->unk_1C.draw != NULL) {
Matrix_RotateY(gGfxMatrix, arg0->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, arg0->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, arg0->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
if (arg0->unk_1C.unk_04 == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_1C.unk_00);
if (arg0->unk_1C.drawType == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
} else {
arg0->unk_1C.unk_00(&arg0->obj);
arg0->unk_1C.draw(&arg0->obj);
}
}
var_v0 = 1;
@@ -1450,7 +1450,7 @@ void func_8005F2F4(Object_58* arg0) {
} else {
Matrix_RotateY(gGfxMatrix, arg0->obj.rot.y * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.unk_00);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
}
}
}
+21 -21
View File
@@ -1634,7 +1634,7 @@ void func_80066254(Object_2F4* arg0) {
var_v0 = D_80163FE0;
for (i = 0, var_v0 = D_80163FE0; i < ARRAY_COUNT(D_80163FE0); i++, var_v0++) {
if ((var_v0->obj.status != 0) && (var_v0->unk_040 != arg0->unk_040) &&
(arg0->unk_8C == var_v0->unk_8C)) {
(arg0->unk_08C == var_v0->unk_08C)) {
return;
}
}
@@ -1954,7 +1954,7 @@ void func_8006753C(Object_2F4* arg0) {
if (arg0->unk_0CE <= 0) {
func_8007A6F0(&arg0->obj.pos, 0x2903A008);
func_8007D2C8(arg0->obj.pos.x, arg0->obj.pos.y, arg0->obj.pos.z, 5.0f);
if (((new_var[0].unk_49C < 2) || (new_var[0].unk_49D < 2)) && (new_var[0].unk_1CC != 1)) {
if (((new_var[0].unk_49C.unk_00 < 2) || (new_var[0].unk_49C.unk_01 < 2)) && (new_var[0].unk_1CC != 1)) {
arg0->unk_044 = 0x17;
} else if (D_80178280[0].unk_264 < 0x80) {
arg0->unk_044 = 0x19;
@@ -2001,15 +2001,15 @@ void func_80067874(Object_2F4* arg0) {
void func_80067A40(void) {
func_80019218(0x09008023, D_80178280[0].unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
if (D_80178280[0].unk_49C < 2) {
if (D_80178280[0].unk_49C.unk_00 < 2) {
D_80177D40[0] = 1050;
D_80178280[0].unk_49C = 2;
D_80178280[0].unk_49C.unk_00 = 2;
}
if (D_80178280[0].unk_49D < 2) {
if (D_80178280[0].unk_49C.unk_01 < 2) {
D_80177D58[0] = 1050;
D_80178280[0].unk_49D = 2;
D_80178280[0].unk_49C.unk_01 = 2;
}
if (D_801779F8 != 0) {
if (gExpertMode) {
D_80177D10[0] = D_80177D28[0] = 10;
} else {
D_80177D10[0] = D_80177D28[0] = 60;
@@ -2060,7 +2060,7 @@ void func_80067BEC(Object_6C* arg0) {
D_80161AA8[arg0->unk_4E] = 2;
}
func_80060F30(D_80178280[arg0->unk_4E].unk_460, 0x49002004, arg0->unk_4E);
if (D_801779F8 != 0) {
if (gExpertMode) {
D_80177D10[arg0->unk_4E] = D_80177D28[arg0->unk_4E] = 10;
} else {
D_80177D10[arg0->unk_4E] = D_80177D28[arg0->unk_4E] = 60;
@@ -2086,7 +2086,7 @@ void func_80067BEC(Object_6C* arg0) {
}
void func_80067F6C(Object_6C* arg0) {
if ((D_801778E8 == 0) && ((D_80178280[0].unk_49D < 2) || (D_80178280[0].unk_49C < 2))) {
if ((D_801778E8 == 0) && ((D_80178280[0].unk_49C.unk_01 < 2) || (D_80178280[0].unk_49C.unk_00 < 2))) {
arg0->obj.id = 337;
func_800612B8(&arg0->unk_1C, arg0->obj.id);
arg0->unk_48 = 2000;
@@ -2597,8 +2597,8 @@ void func_80069AAC(Object_2F4* arg0) {
break;
case 2:
func_800693E8(arg0);
if ((arg0->obj.status != 0) && (arg0->unk_01C.unk_08 != NULL)) {
arg0->unk_01C.unk_08(&arg0->obj);
if ((arg0->obj.status != 0) && (arg0->unk_01C.action != NULL)) {
arg0->unk_01C.action(&arg0->obj);
}
break;
case 3:
@@ -2640,8 +2640,8 @@ void func_80069CBC(Object_408* arg0) {
break;
case 2:
func_80069658(arg0);
if ((arg0->obj.status != 0) && (arg0->unk_01C.unk_08 != NULL)) {
arg0->unk_01C.unk_08(&arg0->obj);
if ((arg0->obj.status != 0) && (arg0->unk_01C.action != NULL)) {
arg0->unk_01C.action(&arg0->obj);
}
break;
case 3:
@@ -2665,8 +2665,8 @@ void func_80069DF4(Object_80* arg0) {
break;
case 2:
func_800696F8(arg0);
if (arg0->unk_1C.unk_08 != NULL) {
arg0->unk_1C.unk_08(&arg0->obj);
if (arg0->unk_1C.action != NULL) {
arg0->unk_1C.action(&arg0->obj);
}
break;
}
@@ -2681,8 +2681,8 @@ void func_80069E88(Object_4C* arg0) {
break;
case 2:
func_80069858(arg0);
if (arg0->unk_1C.unk_08 != NULL) {
arg0->unk_1C.unk_08(&arg0->obj);
if (arg0->unk_1C.action != NULL) {
arg0->unk_1C.action(&arg0->obj);
}
break;
case 3:
@@ -2707,8 +2707,8 @@ void func_80069F30(Object_6C* arg0) {
break;
case 2:
func_80069A10(arg0);
if (arg0->unk_1C.unk_08 != NULL) {
arg0->unk_1C.unk_08(&arg0->obj);
if (arg0->unk_1C.action != NULL) {
arg0->unk_1C.action(&arg0->obj);
}
break;
}
@@ -2725,8 +2725,8 @@ void func_80069FD4(Object_8C* arg0) {
/* fallthrough */
case 2:
func_80069924(arg0);
if ((arg0->obj.status != 0) && (arg0->unk_1C.unk_08 != NULL)) {
arg0->unk_1C.unk_08(&arg0->obj);
if ((arg0->obj.status != 0) && (arg0->unk_1C.action != NULL)) {
arg0->unk_1C.action(&arg0->obj);
}
break;
}
+1 -1
View File
@@ -83,7 +83,7 @@ void func_800BA808(u16* arg0, s32 arg1) {
D_800D4A70 = var_a1;
D_80177D68 = arg1;
if ((D_801779F8 != 0) && ((arg1 == 0) || (arg1 == 5))) {
if (gExpertMode && ((arg1 == 0) || (arg1 == 5))) {
D_80177D68 = 400;
}
+5 -5
View File
@@ -210,11 +210,11 @@ void Graphics_SetTask(void) {
gGfxTask->task.t.ucode_boot = __rspboot_start;
gGfxTask->task.t.ucode_boot_size = (uintptr_t) __rspboot_end - (uintptr_t) __rspboot_start;
gGfxTask->task.t.ucode = __f3dex_start;
gGfxTask->task.t.ucode_size = 0x1000;
gGfxTask->task.t.ucode_size = SP_UCODE_SIZE;
gGfxTask->task.t.ucode_data = (u64*) &gF3dexData;
gGfxTask->task.t.ucode_data_size = 0x800;
gGfxTask->task.t.dram_stack = (u64*) &D_80281000;
gGfxTask->task.t.dram_stack_size = 0x400;
gGfxTask->task.t.ucode_data_size = SP_UCODE_DATA_SIZE;
gGfxTask->task.t.dram_stack = &D_80281000;
gGfxTask->task.t.dram_stack_size = SP_DRAM_STACK_SIZE8;
gGfxTask->task.t.output_buff = (u64*) &D_802A7800;
gGfxTask->task.t.output_buff_size = (u64*) &D_802D7800;
gGfxTask->task.t.data_ptr = (u64*) gGfxPool->masterDL;
@@ -544,7 +544,7 @@ void Idle_ThreadEntry(void* arg0) {
osCreateViManager(OS_PRIORITY_VIMGR);
Main_SetVIMode();
Lib_FillScreen(1);
osCreatePiMgr(OS_PRIORITY_PIMGR, &gPiMgrCmdQueue, sPiMgrCmdBuff, ARRAY_COUNT(sPiMgrCmdBuff));
osCreatePiManager(OS_PRIORITY_PIMGR, &gPiMgrCmdQueue, sPiMgrCmdBuff, ARRAY_COUNT(sPiMgrCmdBuff));
osCreateThread(&gMainThread, THREAD_ID_MAIN, &Main_ThreadEntry, arg0, sMainThreadStack + sizeof(sMainThreadStack),
100);
osStartThread(&gMainThread);
+4 -4
View File
@@ -57,9 +57,9 @@ f32 Math_FAtanF(f32 x) {
}
if (sector > 0) {
return M_PI / 2 - (x / (1.0f + conv));
return M_PI / 2.0f - (x / (1.0f + conv));
} else if (sector < 0) {
return -M_PI / 2 - (x / (1.0f + conv));
return -M_PI / 2.0f - (x / (1.0f + conv));
} else {
return x / (1.0f + conv);
}
@@ -71,9 +71,9 @@ f32 Math_FAtan2F(f32 y, f32 x) {
}
if (x == 0.0f) {
if (y < 0.0f) {
return -M_PI / 2;
return -M_PI / 2.0f;
}
return M_PI / 2;
return M_PI / 2.0f;
}
if (x < 0.0f) {
if (y < 0.0f) {

Some files were not shown because too many files have changed in this diff Show More