Fix bss ordering in code_7AF80
This commit is contained in:
@@ -117,9 +117,6 @@ struct {
|
|||||||
s32 unk44;
|
s32 unk44;
|
||||||
} D_80381FA0;
|
} D_80381FA0;
|
||||||
|
|
||||||
|
|
||||||
u8 D_80381FE8[0x50];
|
|
||||||
|
|
||||||
/* .code */
|
/* .code */
|
||||||
void func_80301F10(Cube *cube, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
void func_80301F10(Cube *cube, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||||
func_80308F0C(cube);
|
func_80308F0C(cube);
|
||||||
@@ -252,6 +249,7 @@ void func_80301F50(Gfx **gfx, Mtx **mtx, Vtx **vtx, s32 arg3[3], s32 arg4[3], s3
|
|||||||
sp44 -= D_80381FA0.stride[0];
|
sp44 -= D_80381FA0.stride[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
u8 D_80381FE8[0x50];
|
||||||
|
|
||||||
void func_80302634(Gfx **gfx, Mtx **mtx, Vtx **vtx, s32 arg3[3], s32 arg4[3], s32 arg5[3]) {
|
void func_80302634(Gfx **gfx, Mtx **mtx, Vtx **vtx, s32 arg3[3], s32 arg4[3], s32 arg5[3]) {
|
||||||
s32 sp54;
|
s32 sp54;
|
||||||
@@ -541,6 +539,7 @@ Cube *func_8030364C(void){
|
|||||||
return D_80381FA0.unk40;
|
return D_80381FA0.unk40;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
s32 D_803820A8[3];
|
||||||
Cube *func_80303658(void){
|
Cube *func_80303658(void){
|
||||||
return D_80381FA0.unk3C;
|
return D_80381FA0.unk3C;
|
||||||
}
|
}
|
||||||
@@ -637,6 +636,11 @@ BKCollisionTri * func_80303960(f32 volume_p1[3], f32 volume_p2[3], f32 radius, f
|
|||||||
return var_s5;
|
return var_s5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
s32 D_803820B8[0x20]; //ActorProp *, (maybe Prop *)
|
||||||
|
u8 pad_80382138[4];
|
||||||
|
s32 D_8038213C;
|
||||||
|
|
||||||
|
extern Cube *D_80382144;
|
||||||
//BKCollisionTri *
|
//BKCollisionTri *
|
||||||
BKCollisionTri * func_80303AF0(f32 position[3], f32 radius, f32 arg2[3], u32 arg3) {
|
BKCollisionTri * func_80303AF0(f32 position[3], f32 radius, f32 arg2[3], u32 arg3) {
|
||||||
s32 cube_indx[3];
|
s32 cube_indx[3];
|
||||||
@@ -664,7 +668,6 @@ BKCollisionTri * func_80303AF0(f32 position[3], f32 radius, f32 arg2[3], u32 arg
|
|||||||
return var_s5;
|
return var_s5;
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 D_803820B8[0x20]; //ActorProp *, (maybe Prop *)
|
|
||||||
void func_80303C54(Cube *cube, ActorMarker *marker, f32 arg2, s32 arg3, s32 *arg4, s32 *arg5) {
|
void func_80303C54(Cube *cube, ActorMarker *marker, f32 arg2, s32 arg3, s32 *arg4, s32 *arg5) {
|
||||||
ActorProp *phi_s0;
|
ActorProp *phi_s0;
|
||||||
|
|
||||||
@@ -676,7 +679,7 @@ void func_80303C54(Cube *cube, ActorMarker *marker, f32 arg2, s32 arg3, s32 *arg
|
|||||||
phi_s0 = func_803322F0(cube, marker, arg2, arg3, arg4);
|
phi_s0 = func_803322F0(cube, marker, arg2, arg3, arg4);
|
||||||
if (phi_s0 != NULL) {
|
if (phi_s0 != NULL) {
|
||||||
if (phi_s0->unk8_0 && phi_s0->marker->unk58 != NULL) {
|
if (phi_s0->unk8_0 && phi_s0->marker->unk58 != NULL) {
|
||||||
if (phi_s0->marker->unk58(phi_s0->marker, marker) == 0) {
|
if (phi_s0->marker->unk58(phi_s0->marker, marker) == 0) {
|
||||||
phi_s0 = NULL;
|
phi_s0 = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -688,7 +691,10 @@ void func_80303C54(Cube *cube, ActorMarker *marker, f32 arg2, s32 arg3, s32 *arg
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 D_8038213C;
|
Cube *D_80382144;
|
||||||
|
s32 D_80382148;
|
||||||
|
s16 D_80382150[0x48];
|
||||||
|
u32 D_803821E0[0x5B];
|
||||||
void func_80303D78(ActorMarker *arg0, f32 arg1, UNK_TYPE(s32) arg2) {
|
void func_80303D78(ActorMarker *arg0, f32 arg1, UNK_TYPE(s32) arg2) {
|
||||||
s32 sp6C[3];
|
s32 sp6C[3];
|
||||||
s32 sp60[3];
|
s32 sp60[3];
|
||||||
@@ -727,17 +733,19 @@ void func_80303F6C(s32 indx, s32 arg1){
|
|||||||
ActorProp *func_80303F7C(ActorMarker *arg0, f32 arg1, s32 arg2, s32 arg3) {
|
ActorProp *func_80303F7C(ActorMarker *arg0, f32 arg1, s32 arg2, s32 arg3) {
|
||||||
s32 temp_v1;
|
s32 temp_v1;
|
||||||
s32 phi_a0;
|
s32 phi_a0;
|
||||||
static s32 D_80382148;
|
// This matches without a pointer by using a function static, but
|
||||||
|
// triggers tricky bss reordering.
|
||||||
|
s32* D_80382148_ptr = &D_80382148;
|
||||||
|
|
||||||
if (arg3 == 0) {
|
if (arg3 == 0) {
|
||||||
func_80303D78(arg0, arg1, arg2);
|
func_80303D78(arg0, arg1, arg2);
|
||||||
D_80382148 = 0;
|
*D_80382148_ptr = 0;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
temp_v1 = D_803820B8[D_80382148];
|
temp_v1 = D_803820B8[*D_80382148_ptr];
|
||||||
if (temp_v1 != 0) {
|
if (temp_v1 != 0) {
|
||||||
D_80382148++;
|
(*D_80382148_ptr)++;
|
||||||
}
|
}
|
||||||
return temp_v1;
|
return temp_v1;
|
||||||
}
|
}
|
||||||
@@ -2042,10 +2050,8 @@ u32 func_80307EA8(s32 arg0, s32 arg1[3], s32 *arg2, s32 *arg3) {
|
|||||||
u32 var_s4;
|
u32 var_s4;
|
||||||
NodeProp *temp_a0;
|
NodeProp *temp_a0;
|
||||||
Cube *temp_v0;
|
Cube *temp_v0;
|
||||||
static s32 D_803820A8[3];
|
|
||||||
static s32 D_803820B4;
|
static s32 D_803820B4;
|
||||||
|
|
||||||
|
|
||||||
var_s4 = 0;
|
var_s4 = 0;
|
||||||
if (arg0 == 0) {
|
if (arg0 == 0) {
|
||||||
D_803820A8[0] = (s32) D_80381FA0.min[0];
|
D_803820A8[0] = (s32) D_80381FA0.min[0];
|
||||||
@@ -2154,11 +2160,9 @@ bool func_803082D8(Cube *arg0, s32 *arg1, bool arg2, bool arg3) {
|
|||||||
return var_a0;
|
return var_a0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Cube *D_80382144;
|
|
||||||
s32 func_803083B0(s32 arg0) {
|
s32 func_803083B0(s32 arg0) {
|
||||||
s32 var_v0;
|
s32 var_v0;
|
||||||
Cube *var_s0;
|
Cube *var_s0;
|
||||||
static u8 a;
|
|
||||||
static s32 D_80382140;
|
static s32 D_80382140;
|
||||||
|
|
||||||
if (arg0 == -1) {
|
if (arg0 == -1) {
|
||||||
@@ -2323,9 +2327,6 @@ bool func_803088C8(s32 arg0) {
|
|||||||
return (D_8036ABAC[i] == -1) ? FALSE : TRUE;
|
return (D_8036ABAC[i] == -1) ? FALSE : TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* .bss */ //must be defined AFTER func_80303F7C for local static alignment
|
|
||||||
s16 D_80382150[0x48];
|
|
||||||
|
|
||||||
/* .code */
|
/* .code */
|
||||||
void func_8030895C(s32 arg0){
|
void func_8030895C(s32 arg0){
|
||||||
D_80382150[D_8036ABD4] = arg0;
|
D_80382150[D_8036ABD4] = arg0;
|
||||||
@@ -2416,9 +2417,6 @@ void func_80308D2C(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
|||||||
func_8032F464(0);
|
func_8032F464(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* .bss */
|
|
||||||
u32 D_803821E0[0x5B];
|
|
||||||
|
|
||||||
/* .code */
|
/* .code */
|
||||||
void func_80308EC8(void){
|
void func_80308EC8(void){
|
||||||
s32 i;
|
s32 i;
|
||||||
|
Reference in New Issue
Block a user