97F80, A4290, and A48B0 matching, started bss import on engine. (#47)

* stuff

* three whole files

* format

* format and such

* one cleanup
This commit is contained in:
petrie911
2023-12-09 15:53:24 -03:00
committed by GitHub
parent 392305e919
commit c9e58a815d
23 changed files with 1592 additions and 531 deletions
+6 -3
View File
@@ -85,6 +85,7 @@ void func_8001AF40(s32);
void func_8001D1C8(s32, s32);
void func_8001D400(s32);
void func_8001D444(u8, u16, u8, u8);
void func_8001D638(u8);
void func_8001DA90(u8);
void func_8001DBD0(s32);
void func_8001DC6C(u8, u16);
@@ -471,7 +472,9 @@ void func_80094954(Object_8C*);
void func_80094BBC(Object_8C*);
void func_80094D20(f32, f32);
// sf_97F80
// fox_97F80
void func_80098860(Plane *plane, Vec3f *point, Vec3f *normal);
s32 func_800988B4(Vec3f *vec, Plane *plane);
s32 func_800998FC(Vec3f*, Vec3f*, Vec3f*, s32, Vec3f*, f32*);
// fox_A24B0
@@ -488,9 +491,9 @@ void func_800A25DC(void);
Object_2F4 *func_800A3608(s32);
// fox_A4290
s32 func_800A3690(Vec3f*, Vec3f*, s32, Vec3f*);
bool func_800A3690(Vec3f*, Vec3f*, s32, Vec3f*);
// sf_A48A0
// fox_A48A0
void func_800A3CA0(void);
// sf_A4B50
+3 -1
View File
@@ -7,9 +7,11 @@
#define SEGMENTED_TO_VIRTUAL(segment) ((void*)OS_PHYSICAL_TO_K0(gSegments[((uintptr_t)(segment)<<4)>>0x1C]+(((uintptr_t)(segment))&0xFFFFFF)))
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
#define SQ(x) ((x) * (x))
#define SIGN_OF(x) (((x) > 0) ? 1 : ((x) == 0) ? 0 : -1)
#define SQ(x) ((x) * (x))
#define VEC3F_SQ(vec) (SQ((vec).x) + SQ((vec).y) + SQ((vec).z))
#define DOT_XYZ(a, b) ((a).x * (b).x + (a).y * (b).y + (a).z * (b).z)
#define USEC_TO_CYCLES(n) (((u64)(n)*(osClockRate/15625LL))/(1000000LL/15625LL))
#define MSEC_TO_CYCLES(n) (USEC_TO_CYCLES((n) * 1000LL))
+34 -8
View File
@@ -6,6 +6,34 @@
#define UNK_TYPE s32
typedef struct {
Vec3f normal;
f32 dist;
} Plane;
typedef struct {
s16 vtx[3];
s16 unk_06;
Vec3s normal;
s32 dist;
} CollisionPoly;
typedef struct {
Vec3f min;
Vec3f max;
s32 polyCount;
CollisionPoly* polys;
Vec3s* mesh;
} CollisionHeader; // size = 0x24
typedef struct {
Vec3f min;
Vec3f max;
s32 polyCount;
s16 (*polys)[3];
Vec3f* mesh;
} CollisionHeader2; // size = 0x24
typedef void (*TimerAction)(s32*, s32);
typedef struct {
@@ -315,17 +343,15 @@ typedef struct {
/* 0x10 */ Vec3f rot;
} Object; // size = 0x1C
typedef void (*ObjectFunc)(Object*);
typedef struct {
union {
/* 0x00 */ void* drawVoid; // Have the first option be a void type to silence warnings about the wrong type in the initialization of this object.
/* 0x00 */ void (*draw)(Object*); // argument must have object type.
/* 0x00 */ Gfx* drawGfx; //Can be dlist.
/* 0x00 */ union {
ObjectFunc draw;
Gfx* dList;
};
/* 0x00 */ u8 drawType;
union {
/* 0x08 */ void* actionVoid; // Have the first option be a void type to silence warnings about the wrong type in the initialization of this object.
/* 0x08 */ void (*action)(Object*); // argument must have object type. But it can be one of many different types of objects.
};
/* 0x08 */ ObjectFunc 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
+10 -8
View File
@@ -203,6 +203,8 @@ extern s32 D_800D2884[];
extern s32 D_800D2894[];
extern s32 D_800D28A4[];
extern s32 D_800D28B4[];
extern CollisionHeader D_800D2B38[];
extern CollisionHeader2 D_800D2CA0[];
extern u8 D_800D3180[0x1E]; // might be bigger? at least 0x21
extern s32 D_800D4A70;
extern Save gDefaultSave;
@@ -226,7 +228,7 @@ extern s32 D_801613A0;
// fox_52730
extern Vec3f D_801613B0[];
extern Vec3f D_801613E0[2];
extern Vec3f D_801613E0[];
extern s16 D_80161410;
extern Matrix D_80161418[4];
extern Vec3f D_80161518[4];
@@ -276,10 +278,7 @@ extern s32 D_801617B8;
extern s32 D_80161810[];
extern s32 D_80161900[];
extern s32 D_80161910[0x10]; // part of previous or next?
// sf_97F80
extern f32 D_80161950;
extern s32 D_80161910[0x10]; // part of sf_hud or fox_97F80?
// fox_display
extern char D_801619A0[100];
@@ -425,6 +424,7 @@ extern f32 D_80177D08;
extern s32 D_80177D10[];
extern f32 D_80177D20;
extern s32 D_80177D28[];
extern f32 D_80177D38;
extern s32 D_80177D40[];
extern f32 D_80177D50;
extern s32 D_80177D58[];
@@ -453,6 +453,8 @@ extern u32* D_80178298;
extern s32 D_8017829C;
extern s32 D_801782A4;
extern Object_58 *D_801782A8;
extern s32 D_801782AC;
extern s32 D_801782B4;
extern s32 D_801782B8;
extern s32 D_801782BC;
extern s32 D_801782C0;
@@ -543,9 +545,9 @@ extern s32 D_80178570;
extern s32 D_80178574;
extern s32 D_80178578;
// file split -- part of radio? rcp?
extern s32 D_80178580;
extern s32 *D_80178710;
// fox_rcp?
extern u8 D_80178580[];
extern void *D_80178710;
//fox_radio
extern u16** D_80178720;
+32
View File
@@ -13,6 +13,11 @@ gFrameBuffers = 0x8038F800;
gDmaTable = 0x80178A70; //size:0x5A0
D_80178A70 = 0x80178A78; //ignore:true
D_80161A18 = 0x80161A18;//size:0x10
D_801615D0 = 0x801615D0;//size:0xC
D_801615E0 = 0x801615E0;//size:0xC
D_80161578 = 0x80161578;//size:0x30
D_80161AA8 = 0x80161AA8;//size:0x10
D_800CA23C = 0x800CA23C;//size:0x18
D_800CA26C = 0x800CA26C;//size:0x20
@@ -44,6 +49,33 @@ D_800CBDD4 = 0x800CBDD4; //size:0x98
D_800D55D0 = 0x800D55D0; //type:f32
// vec97_0 = 0x80161950; //type:Vec3f size:0xC
// vec97_1 = 0x8016195C; //type:Vec3f size:0xC
// __vtx0_ = 0x80161968; //type:Vec3f size:0xC
// __vtx1_ = 0x80161974; //type:Vec3f size:0xC
// __vtx2_ = 0x80161980; //type:Vec3f size:0xC
// __vtx3_ = 0x8016198C; //type:Vec3f size:0xC
__dx1 = 0x80161950;
__dx2 = 0x80161954;
__dy1 = 0x80161958;
__dy2 = 0x8016195C;
__dz1 = 0x80161960;
__dz2 = 0x80161964;
__vtx0_x = 0x80161968;
__vtx0_y = 0x8016196C;
__vtx0_z = 0x80161970;
__vtx1_x = 0x80161974;
__vtx1_y = 0x80161978;
__vtx1_z = 0x8016197C;
__vtx2_x = 0x80161980;
__vtx2_y = 0x80161984;
__vtx2_z = 0x80161988;
__vtx3_x = 0x8016198C;
__vtx3_y = 0x80161990;
__vtx3_z = 0x80161994;
__pos_x = 0x80161998;//type:f32
__pos_z = 0x8016199C;//type:f32
Save_Checksum = 0x800C2FB0;
Save_Write = 0x800C3084;
Save_Read = 0x800C3194;
+9 -9
View File
@@ -1,14 +1,14 @@
#include "global.h"
#define D_3016CC0 0x03016CC0
#define D_3003CE0 0x03003CE0
#define D_3001C90 0x03001C90
#define D_1024570 0x01024570
#define D_10246D0 0x010246D0
#define D_1024410 0x01024410
#define D_D000000 0x0D000000
#define D_D00B5C0 0x0D00B5C0
#define D_D00B720 0x0D00B720
Vec3f D_801613B0[4];
Vec3f D_801613E0[4];
s16 D_80161410;
Matrix D_80161418[4];
Vec3f D_80161518[4];
Vec3f D_80161548[4];
Vec3f D_80161578[4];
f32 D_801615A8[4];
f32 D_801615B8[4];
s32 D_800CA220 = 0;
u8 D_800CA224[] = { 0, 0, 0, 0 };
File diff suppressed because it is too large Load Diff
+16
View File
@@ -3,6 +3,22 @@
extern void func_80187520(s32, void*);
f32 D_80161A10;
f32 D_80161A14;
s32 D_80161A18[4];
s32 D_80161A28;
u8 D_80161A2C;
u16 D_80161A2E;
u16 D_80161A30;
u16 D_80161A32;
u16 D_80161A34;
u16 D_80161A36;
u8 D_80161A38;
u8 D_80161A39;
f32 D_80161A3C;
f32 D_80161A40;
f32 D_80161A44;
s32 D_800D2860[4] = { 1, 1, 1, 1 };
s32 D_800D2870 = 0;
s32 D_800D2874[] = { 0, 160, 0, 160 };
+129
View File
@@ -0,0 +1,129 @@
#include "global.h"
#include "fox_A4290_colheaders.c"
bool func_800A36FC(Vec3f* arg0, Vec3f* arg1, CollisionHeader2* arg2, Vec3f* arg3);
bool func_800A3A74(Vec3f*, Vec3f** arg1, Vec3f*);
bool func_800A3690(Vec3f* arg0, Vec3f* arg1, s32 arg2, Vec3f* arg3) {
return func_800A36FC(arg0, arg1, SEGMENTED_TO_VIRTUAL(&D_800D2CA0[arg2]), arg3);
}
bool func_800A36FC(Vec3f* arg0, Vec3f* arg1, CollisionHeader2* arg2, Vec3f* arg3) {
Vec3f sp7C;
Plane sp6C;
s32 var_v1;
s32 i;
s32 j;
Vec3f* sp54[3];
Vec3f sp48;
Vec3f sp3C;
s32 sp38 = false;
s32 sp34;
s16(*sp30)[3];
Vec3f* sp2C;
sp7C.x = arg0->x - arg1->x;
sp7C.y = arg0->y - arg1->y;
sp7C.z = arg0->z - arg1->z;
if ((sp7C.x < arg2->min.x) || (sp7C.y < arg2->min.y) || (sp7C.z < arg2->min.z) || (arg2->max.x < sp7C.x) ||
(arg2->max.y < sp7C.y) || (arg2->max.z < sp7C.z)) {
return false;
}
var_v1 = false;
sp34 = arg2->polyCount;
sp30 = SEGMENTED_TO_VIRTUAL(arg2->polys);
sp2C = SEGMENTED_TO_VIRTUAL(arg2->mesh);
for (i = 0; i < sp34; i++, sp30++) {
for (j = 0; j < 3; j++) {
sp54[j] = &sp2C[(*sp30)[j]];
}
var_v1 = func_800A3A74(&sp7C, sp54, &sp48);
if (var_v1) {
break;
}
}
if (var_v1) {
sp3C.x = sp54[0]->x;
sp3C.y = sp54[0]->y;
sp3C.z = sp54[0]->z;
func_80098860(&sp6C, &sp3C, &sp48);
arg3->y = func_800988B4(&sp7C, &sp6C);
if (sp6C.normal.x != 0.0f) {
sp48.x = -sp6C.dist / sp6C.normal.x;
} else {
sp48.x = 0.0f;
}
if (sp6C.normal.y != 0.0f) {
sp48.y = -sp6C.dist / sp6C.normal.y;
} else {
sp48.y = 0.0f;
}
if (sp6C.normal.z != 0.0f) {
sp48.z = -sp6C.dist / sp6C.normal.z;
} else {
sp48.z = 0.0f;
}
arg3->x = Math_Atan2F_XY(sp48.y, sp48.z);
if (sp48.z != 0.0f) {
arg3->z = -Math_Atan2F_XY(__sinf(Math_Atan2F_XY(sp48.y, sp48.z)) * sp48.z, sp48.x);
} else if (arg3->x >= 3.1415927f) {
arg3->z = Math_Atan2F_XY(sp48.y, sp48.x);
} else {
arg3->z = -Math_Atan2F_XY(sp48.y, sp48.x);
}
if ((arg0->y <= arg3->y) || (D_80178234 == 11)) {
sp38 = true;
}
}
return sp38;
}
s32 func_800A3A74(Vec3f* arg0, Vec3f** arg1, Vec3f* arg2) {
s32 pad;
f32 temp1;
s32 var_v1;
f32 temp_fv0;
Vec3f sp44;
Vec3f sp38;
Vec3f sp2C;
f32 sp28;
f32 sp24;
var_v1 = 0;
sp44.x = (*arg1)->x;
sp44.y = (*arg1)->y;
sp44.z = (*arg1)->z;
arg1++;
sp38.x = (*arg1)->x;
sp38.y = (*arg1)->y;
sp38.z = (*arg1)->z;
arg1++;
sp2C.x = (*arg1)->x;
sp2C.y = (*arg1)->y;
sp2C.z = (*arg1)->z;
arg1++;
sp28 = arg0->x;
sp24 = arg0->z;
temp1 = ((sp38.z - sp44.z) * (sp28 - sp38.x)) - ((sp38.x - sp44.x) * (sp24 - sp38.z));
if (temp1 >= 0.0f) {
if (((sp2C.x - sp38.x) * (sp24 - sp2C.z)) <= ((sp2C.z - sp38.z) * (sp28 - sp2C.x))) {
if (((sp44.x - sp2C.x) * (sp24 - sp44.z)) <= ((sp44.z - sp2C.z) * (sp28 - sp44.x))) {
var_v1 = 1;
arg2->x = ((sp38.y - sp44.y) * (sp2C.z - sp38.z)) - ((sp38.z - sp44.z) * (sp2C.y - sp38.y));
arg2->y = ((sp38.z - sp44.z) * (sp2C.x - sp38.x)) - ((sp38.x - sp44.x) * (sp2C.z - sp38.z));
arg2->z = ((sp38.x - sp44.x) * (sp2C.y - sp38.y)) - ((sp38.y - sp44.y) * (sp2C.x - sp38.x));
if ((arg2->x != 0.0f) || (arg2->y != 0.0f) || (arg2->z != 0.0f)) {
temp_fv0 = sqrtf(SQ(arg2->x) + SQ(arg2->y) + SQ(arg2->z));
if (temp_fv0 != 0) {
arg2->x = (arg2->x / temp_fv0) * 127.0f;
arg2->y = (arg2->y / temp_fv0) * 127.0f;
arg2->z = (arg2->z / temp_fv0) * 127.0f;
}
}
}
}
}
return var_v1;
}
+232
View File
@@ -0,0 +1,232 @@
#include "structs.h"
static Vec3f D_800D2920[16] = {
{ 1075.0f, 0.0f, 0.0f }, { 746.0f, 0.0f, -746.0f }, { 202.0f, 361.0f, -202.0f }, { 0.0f, 0.0f, -1075.0f },
{ 291.0f, 558.0f, 0.0f }, { 0.0f, 354.0f, -291.0f }, { 202.0f, 594.0f, 202.0f }, { 772.0f, 0.0f, 622.0f },
{ 0.0f, 473.0f, 291.0f }, { 144.0f, 0.0f, 1075.0f }, { -202.0f, 461.0f, 202.0f }, { -515.0f, 0.0f, 746.0f },
{ -291.0f, 453.0f, 0.0f }, { -372.0f, 390.0f, -281.0f }, { -951.0f, 0.0f, 0.0f }, { -746.0f, 0.0f, -746.0f },
};
static s16 D_800D29E0[22][3] = {
{ 0, 1, 2 }, { 2, 1, 3 }, { 4, 2, 5 }, { 3, 5, 2 }, { 2, 4, 0 }, { 4, 6, 7 },
{ 7, 0, 4 }, { 6, 4, 5 }, { 7, 6, 8 }, { 8, 9, 7 }, { 8, 10, 11 }, { 10, 8, 6 },
{ 11, 9, 8 }, { 12, 10, 6 }, { 6, 13, 12 }, { 14, 12, 13 }, { 10, 12, 14 }, { 14, 11, 10 },
{ 5, 13, 6 }, { 5, 3, 15 }, { 15, 13, 5 }, { 13, 15, 14 },
};
static s16 D_800D2A64[13][3] = {
{ 0, 1, 2 }, { 2, 3, 4 }, { 2, 5, 0 }, { 4, 5, 2 }, { 4, 3, 6 }, { 4, 7, 5 }, { 8, 7, 4 },
{ 4, 6, 8 }, { 7, 8, 9 }, { 0, 7, 9 }, { 5, 7, 0 }, { 9, 10, 0 }, { 10, 1, 0 },
};
static Vec3f D_800D2AB4[11] = {
{ -218.0f, 131.0f, 0.0f }, { -435.0f, 0.0f, 0.0f }, { -336.0f, 0.0f, 218.0f }, { 0.0f, 0.0f, 435.0f },
{ 0.0f, 160.0f, 218.0f }, { -168.0f, 131.0f, 109.0f }, { 336.0f, 0.0f, 218.0f }, { 0.0f, 174.0f, 0.0f },
{ 435.0f, 0.0f, -204.0f }, { 0.0f, 0.0f, -435.0f }, { -318.0f, 0.0f, -218.0f },
};
CollisionHeader D_800D2B38[10] = {
{
{ -1128.0f, -1835.0f, -1202.0f },
{ 997.0f, 139.0f, 1360.0f },
79,
0x0602FA9C,
0x060300C8,
},
{
{ -3006.0f, -2274.0f, -4530.0f },
{ 3015.0f, 3348.0f, 5246.0f },
236,
0x060305DC,
0x0603184C,
},
{
{ -152.0f, -200.0f, -152.0f },
{ 165.0f, 204.0f, 181.0f },
42,
0x06030208,
0x06030550,
},
{
{ -1704.0f, -1006.0f, -4751.0f },
{ 1704.0f, 1030.0f, 4842.0f },
174,
0x06033070,
0x06033E08,
},
{
{ -1308.0f, 0.0f, -1460.0f },
{ 1310.0f, 666.0f, 807.0f },
93,
0x0600F60C,
0x0600FD50,
},
{
{ -951.0f, 0.0f, -1075.0f },
{ 1075.0f, 1014.0f, 1075.0f },
22,
0x0600F3F4,
0x0600F5AC,
},
{
{ -951.0f, 0.0f, -1075.0f },
{ 1075.0f, 384.0f, 1075.0f },
22,
0x0600F1DC,
0x0600F394,
},
{
{ -1554.0f, -2.0f, -1401.0f },
{ 1554.0f, 590.0f, 1401.0f },
262,
0x06010294,
0x0601170C,
},
{
{ -1386.0f, -696.0f, -2274.0f },
{ 1386.0f, 1033.0f, 1833.0f },
316,
0x06007558,
0x06008E08,
},
{
{ -671.0f, 0.0f, -671.0f },
{ 671.0f, 648.0f, 671.0f },
250,
0x06014FEC,
0x06016374,
},
};
CollisionHeader2 D_800D2CA0[19] = {
{
{ -951.0f, 0.0f, -1075.0f },
{ 1075.0f, 594.0f, 1075.0f },
22,
D_800D29E0,
D_800D2920,
},
{
{ -1220.0f, 0.0f, -1315.0f },
{ 1403.0f, 174.0f, 1308.0f },
13,
0x0603F338,
0x0603F388,
},
{
{ -1311.0f, 0.0f, -1120.0f },
{ 1266.0f, 1465.0f, 1266.0f },
36,
0x0603F40C,
0x0603F4E4,
},
{
{ -435.0f, -10.0f, -435.0f },
{ 435.0f, 174.0f, 435.0f },
13,
D_800D2A64,
D_800D2AB4,
},
{
{ -498.0f, -10.0f, -498.0f },
{ 498.0f, 705.0f, 498.0f },
4,
0x0302EEE8,
0x0302EF00,
},
{
{ -1494.0f, -30.0f, -1494.0f },
{ 1494.0f, 2115.0f, 1494.0f },
4,
0x0302EF6C,
0x0302EF84,
},
{
{ -623.0f, -10.0f, -623.0f },
{ 623.0f, 200.0f, 623.0f },
4,
0x0302EFF0,
0x0302F008,
},
{
{ -488.0f, 0.0f, -568.0f },
{ 488.0f, 148.0f, 567.0f },
30,
0x0602CACC,
0x0602CB80,
},
{
{ -900.0f, -110.0f, -1900.0f },
{ 900.0f, 190.0f, 100.0f },
2,
0x06030E74,
0x06030E80,
},
{
{ -900.0f, -100.0f, -1000.0f },
{ 900.0f, 250.0f, 100.0f },
2,
0x06030EB0,
0x06030EBC,
},
{
{ -900.0f, -190.0f, -1900.0f },
{ 900.0f, 100.0f, 100.0f },
2,
0x06030EEC,
0x06030EF8,
},
{
{ -500.0f, -250.0f, -1010.0f },
{ 500.0f, 100.0f, 100.0f },
2,
0x06030F28,
0x06030F34,
},
{
{ -1200.0f, 0.0f, -1800.0f },
{ 0.0f, 900.0f, 1500.0f },
4,
0x06030F64,
0x06030F7C,
},
{
{ -400.0f, 0.0f, -900.0f },
{ 400.0f, 0.0f, 0.0f },
2,
0x06030FC4,
0x06030FD0,
},
{
{ -74.0f, 0.0f, -84.0f },
{ 74.0f, 125.0f, 84.0f },
30,
0x060320B8,
0x0603216C,
},
{
{ -1200.0f, 0.0f, -1315.0f },
{ 1403.0f, 200.0f, 1308.0f },
8,
0x06031FB0,
0x06031FE0,
},
{
{ -600.0f, 0.0f, -657.0f },
{ 701.0f, 100.0f, 654.0f },
8,
0x06031FB0,
0x0603204C,
},
{
{ -2965.0f, -16.0f, -2965.0f },
{ 2965.0f, 544.0f, 2965.0f },
14,
0x0302F044,
0x0302F098,
},
{
{ -814.0f, 0.0f, -691.0f },
{ 814.0f, 752.0f, 691.0f },
28,
0x06032388,
0x06032430,
},
};
+47
View File
@@ -0,0 +1,47 @@
#include "global.h"
void func_800A3CA0(void) {
Matrix_Push(&gGfxMatrix);
Matrix_LookAt(gGfxMatrix, D_80177978, D_80177980, D_80177988, D_801779A0, D_801779B8, D_801779C0, 0.0f, 1.0f, 0.0f,
1);
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -200.0f, 1);
Matrix_RotateY(gGfxMatrix, gChangedInput[D_801778A0].stick_x * 0.017453292f, 1);
Matrix_RotateX(gGfxMatrix, gChangedInput[D_801778A0].stick_y * 0.017453292f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
RCP_SetupDL_23();
Matrix_Pop(&gGfxMatrix);
}
void func_800A3E00(void) {
switch (D_80177868) {
case 0:
if (D_8017783C == 0) {
D_80177868 = 1;
}
break;
case 1:
D_80177868 = 2;
D_80177898 = 7;
D_801779B8 = 0.0f;
D_801779A0 = D_801779B8;
D_80177988 = D_801779A0;
D_80177980 = D_80177988;
D_80177978 = D_80177980;
D_801779C0 = -10.0f;
break;
case 2:
if ((gChangedInput[0].button & START_BUTTON) || (gChangedInput[1].button & START_BUTTON)) {
func_8001D638(0);
D_80177868 = 3;
D_80177898 = 0;
func_800A5844();
D_8017783C = 0;
}
break;
case 3:
if (D_8017783C == 0) {
D_80177854 = 2;
}
break;
}
}
+2
View File
@@ -1,5 +1,7 @@
#include "global.h"
char D_801619A0[100];
char* Graphics_ClearPrintBuffer(char* buf, s32 fill, s32 len) {
s32 i;
char* ptr = buf;
+400 -400
View File
File diff suppressed because it is too large Load Diff
+13 -6
View File
@@ -1,5 +1,12 @@
#include "global.h"
Vec3f D_801615D0;
Vec3f D_801615E0;
s32 D_801615EC;
Matrix D_801615F0;
UnkStruct_D_80161630 D_80161630;
s32 D_80161670[4];
char D_800CF970[] = "$Id: fox_edisplay.c,v 1.196 1997/05/08 08:31:50 morita Exp $";
void func_800596C0(void) {
@@ -937,7 +944,7 @@ void func_8005D654(Object_80* arg0, s32 arg1) {
if (arg1 < 0) {
func_800596C0();
}
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.dList);
RCP_SetupDL_29(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
} else {
if (arg0->obj.id == 8) {
@@ -950,7 +957,7 @@ void func_8005D654(Object_80* arg0, s32 arg1) {
if (arg1 < 0) {
func_800596C0();
}
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.dList);
if (arg0->obj.id == 8) {
RCP_SetupDL_29(D_80178320, D_80178328, D_80178330, D_80178338, D_801783D8, D_801783DC);
}
@@ -967,7 +974,7 @@ void func_8005D8B8(Object_4C* arg0, s32 arg1) {
func_8005D008(&arg0->obj, 0);
arg0->obj.pos.y -= D_8017847C;
if (arg0->unk_1C.drawType == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.dList);
} else if (arg0->unk_1C.draw != NULL) {
arg0->unk_1C.draw(&arg0->obj);
}
@@ -1000,7 +1007,7 @@ void func_8005D954(Object_2F4* arg0) {
func_8005D008(&arg0->obj, arg0->unk_01C.drawType);
}
if (arg0->unk_01C.drawType == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_01C.draw);
gSPDisplayList(gMasterDisp++, arg0->unk_01C.dList);
func_8005F1EC(&arg0->unk_100);
} else {
arg0->unk_01C.draw(&arg0->obj);
@@ -1251,7 +1258,7 @@ void func_8005E7B8(Object_6C* arg0, s32 arg1) {
Matrix_RotateZ(gGfxMatrix, arg0->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
if (arg0->unk_1C.drawType == 0) {
gSPDisplayList(gMasterDisp++, arg0->unk_1C.draw);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.dList);
} else {
arg0->unk_1C.draw(&arg0->obj);
}
@@ -1450,7 +1457,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.draw);
gSPDisplayList(gMasterDisp++, arg0->unk_1C.dList);
}
}
}
+16 -13
View File
@@ -1,5 +1,8 @@
#include "global.h"
s32 D_80161680;
u8 D_80161684;
ObjectInit* D_800CFDA0[] = {
0x060371A4, 0x06026CC4, 0x0602A164, 0x06023F64, 0x060287A4, 0x0602E4F4, 0x06007E74,
0x0601F234, 0x06026714, 0x0C035154, 0x06006AA4, 0x06031000, 0x06006C60, 0x0602E5C8,
@@ -707,23 +710,23 @@ s32 func_8006326C(Vec3f* arg0, Vec3f* arg1, s32 arg2, Object* arg3) {
sp50.x = arg3->pos.x;
sp50.y = arg3->pos.y;
sp50.z = arg3->pos.z;
if ((arg2 == 0xB4) || (arg2 == 0x95) || (arg2 == 0x96) || (arg2 == 0x134) || (arg2 == 0x139) ||
(arg2 == 0x138) || (arg2 == 0x135) || (arg2 == 0x27)) {
if ((arg2 == 180) || (arg2 == 149) || (arg2 == 150) || (arg2 == 308) || (arg2 == 313) || (arg2 == 312) ||
(arg2 == 309) || (arg2 == 39)) {
var_s1 = 0;
if (arg2 == 0x138) {
if (arg2 == 312) {
var_s1 = 9;
}
if (arg2 == 0x27) {
if (arg2 == 39) {
var_s1 = 1;
} else if (arg2 == 0x134) {
} else if (arg2 == 308) {
var_s1 = 4;
} else if (arg2 == 0x135) {
} else if (arg2 == 309) {
var_s1 = 7;
} else if (arg2 == 0x95) {
} else if (arg2 == 149) {
var_s1 = 5;
} else if (arg2 == 0x96) {
} else if (arg2 == 150) {
var_s1 = 6;
} else if (arg2 == 0x139) {
} else if (arg2 == 313) {
var_s1 = 8;
}
if (func_800998FC(&sp5C, &sp50, arg1, var_s1, &sp44, &sp30) > 0) {
@@ -737,14 +740,14 @@ s32 func_8006326C(Vec3f* arg0, Vec3f* arg1, s32 arg2, Object* arg3) {
if (arg2 == 3) {
var_s1 = 3;
}
if (arg2 == 0x8C) {
if (arg2 == 140) {
var_s1 = 4;
}
if (arg2 == 0x8D) {
if (arg2 == 141) {
var_s1 = 6;
}
if (arg2 == 0x75) {
var_s1 = 0xE;
if (arg2 == 117) {
var_s1 = 14;
} else if ((arg2 == 4) || (arg2 == 5)) {
var_s1 = 1;
}
+12 -6
View File
@@ -1,10 +1,16 @@
#include "global.h"
extern f32 D_80177D38;
extern s32 D_801782AC;
extern s32 D_801782B4;
extern s32 D_80178744;
extern s32 D_80178748;
u16** D_80178720;
s32 D_80178724;
s32 D_80178728;
s32 D_8017872C;
f32 D_80178730;
f32 D_80178734;
f32 D_80178738;
f32 D_8017873C;
f32 D_80178740;
s32 D_80178744;
s32 D_80178748;
s32 D_800D4A70 = 0;
@@ -700,7 +706,7 @@ void func_800BB5D0(void) {
}
}
#else
extern s32 D_8017874C;
s32 D_8017874C;
void func_800BB5D0(void);
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_radio/func_800BB5D0.s")
#endif
+3
View File
@@ -2,6 +2,9 @@
#include "fox_rcp_setup.c"
u8 D_80178580[0x190];
void* D_80178710;
void RCP_SetupDL(Gfx** gfxP, s16 i) {
gSPDisplayList((*gfxP)++, &((Gfx*) gSetupDLs)[i * 9]);
}
+1 -1
View File
@@ -242,7 +242,7 @@ void Graphics_InitializeTask(u32 frameCount) {
gGfxMatrix = &sGfxMatrixStack[0];
gCalcMatrix = &sCalcMatrixStack[0];
D_80178710 = &D_80178580;
D_80178710 = &D_80178580[0];
}
void Main_SetVIMode(void) {
-31
View File
@@ -1,31 +0,0 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80097380.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80097558.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80097730.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_800978C4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_800979E8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80097C88.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_8009808C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_800985CC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80098860.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_800988B4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_800988F8.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_8009893C.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80098980.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_80099254.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_97F80/func_800998FC.s")
-7
View File
@@ -1,7 +0,0 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_A4290/func_800A3690.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_A4290/func_800A36FC.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_A4290/func_800A3A74.s")

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