This commit is contained in:
Banjo Kazooie
2022-09-30 11:02:01 -05:00
parent 87b779d712
commit 54dee725cf
6 changed files with 27 additions and 28 deletions

View File

@@ -4,6 +4,8 @@
extern void func_80252CC4(f32[3], f32[3], f32, f32[3]);
extern f32 func_802EC920(BKVertexList *arg0);
extern void func_803334B0(f32 position[3], f32 rotation[3], f32 scale, f32[3], f32);
void func_80333918(void);
void func_8033393C(void);
@@ -222,12 +224,6 @@ s32 func_80333C78(s32 arg0){
return func_8034AF98(arg0, 0);
}
#ifndef NONMATCHING
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_AC520/func_80333D48.s")
#else
extern void func_803334B0(f32 position[3], f32 rotation[3], f32 scale, f32[3], f32);
extern f32 func_802EC920(BKVertexList *arg0);
void func_80333D48(BKVertexList *arg0, f32 position[3], f32 rotation[3], f32 scale, s32 arg4, BKVertexList *arg5) {
Vtx *i_ptr;
Vtx *end_ptr;
@@ -248,8 +244,8 @@ void func_80333D48(BKVertexList *arg0, f32 position[3], f32 rotation[3], f32 sca
for(i_ptr = i_ptr; i_ptr < end_ptr; i_ptr++, ref_ptr++){
sp68[0] = sp68[1] = sp68[2] = 0.0f;
sp74[0] = ref_ptr->v.ob[0];\
sp74[1] = ref_ptr->v.ob[1];\
sp74[0] = ref_ptr->v.ob[0];
sp74[1] = ref_ptr->v.ob[1];
sp74[2] = ref_ptr->v.ob[2];
for(struct_ptr_ptr = &D_80383570.unk4[0]; struct_ptr_ptr < D_80383570.unk44;struct_ptr_ptr++){
@@ -269,9 +265,9 @@ void func_80333D48(BKVertexList *arg0, f32 position[3], f32 rotation[3], f32 sca
}
}
i_ptr->v.cn[0] = (s8)((ref_ptr->v.cn[0]*sp68[0])/256.0);
i_ptr->v.cn[1] = (s8)((ref_ptr->v.cn[1]*sp68[1])/256.0);
i_ptr->v.cn[2] = (s8)((ref_ptr->v.cn[2]*sp68[2])/256.0);
//each of these lines needs to consume an extra t reg
i_ptr->v.cn[0] = (s8)((ref_ptr->v.cn[0]*sp68[0])/256.0) & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF;
i_ptr->v.cn[1] = (s8)((ref_ptr->v.cn[1]*sp68[1])/256.0) & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF;
i_ptr->v.cn[2] = (s8)((ref_ptr->v.cn[2]*sp68[2])/256.0) & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF & 0xFF;
}
}
#endif
}

View File

@@ -35,12 +35,14 @@ void func_8033CE14(s32 gamenum){
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_B5E00/func_8033CE40.s")
#else
void func_8033CE40(void) {
s32 sp48[4];
s32 var_s0;
s32 var_s0_2;
s32 i;
s32 var_s0;
s32 sp48[4];
for(i = 0; i < 4; i++){
D_80383F04 = -1;
sp48[3] = 0;
for(i = 0; i < 3; i++){
D_80383F00[i] = -1;
sp48[i] = 0;
}
@@ -55,11 +57,12 @@ void func_8033CE40(void) {
D_80383F04 = var_s0;
}
}
sp48[D_80383F04] = 1;
for(i = 0; i < 3; i++){
for(var_s0_2 = 0; (var_s0_2 < 4) && (D_80383F00[i] == -1); var_s0_2++){
if (sp48[var_s0_2] == 0) {
sp48[var_s0_2] = 1;
D_80383F00[i] = var_s0_2;
for(var_s0 = 0; (var_s0 < 4) && (D_80383F00[i] == -1); var_s0++){
if (sp48[var_s0] == 0) {
sp48[var_s0] = 1;
D_80383F00[i] = var_s0;
}
}
}