core2/code_34790.c done

This commit is contained in:
Banjo Kazooie
2022-12-13 11:48:19 -06:00
parent 8535d7cbd1
commit 13abf1953d
6 changed files with 21 additions and 24 deletions

View File

@@ -2,9 +2,11 @@
#include "functions.h"
#include "variables.h"
extern Actor *func_80328230(enum actor_e, f32[3], f32[3]);
extern void func_802BEA4C(f32[3], f32[3], f32, f32[3]);
extern void func_802BEBE8(f32[3], f32[3], f32, f32[3]);
extern void func_802BEAAC(f32[3], f32[3], f32, f32[3], f32[3], f32[3], f32[3]);
extern NodeProp *cubeList_findNodePropByActorId(enum actor_e, s32[3]);
extern BKCollisionTri *func_80320B98(f32[3], f32[3], f32[3], s32);
f32 func_802BB938(f32[3], f32[3]);
f32 func_802BBD48(void);
@@ -38,7 +40,7 @@ f32 D_8037D918[3];
/* .code */
bool func_802BB720(s32 arg0, f32 arg1[3], f32 arg2[3], s32 *arg3) {
f32 temp_f6;
s16 *temp_v0;
NodeProp *temp_v0;
if (arg0 == 0x65) {
arg0 = 0x1A;
@@ -55,7 +57,7 @@ bool func_802BB720(s32 arg0, f32 arg1[3], f32 arg2[3], s32 *arg3) {
if ((arg0 >= 0x5B) && (arg0 < 0x63)) {
arg0 -= 0x40;
}
temp_v0 = cubeList_findNodePropByActorId(D_803657E0[arg0], 0);
temp_v0 = cubeList_findNodePropByActorId(D_803657E0[arg0], NULL);
if (temp_v0 != NULL) {
nodeprop_getPosition(temp_v0, arg1);
*arg3 = func_80304DB8(temp_v0);
@@ -212,7 +214,7 @@ f32 func_802BBEA4(f32 arg0[3], f32 arg1[3], f32 arg2, s32 arg3, s32 arg4) {
ml_vec3f_copy(sp4C, sp58[D_8037D8D0.unk30]);
sp38 = func_80320B98(arg0, sp4C, sp3C, arg4);
if (sp38 != NULL) {
phi_f2 = ml_vec3f_distance(arg0, &sp4C);
phi_f2 = ml_vec3f_distance(arg0, sp4C);
D_8037D8D0.unk0[D_8037D8D0.unk30] = sp38->flags;
} else {
phi_f2 = arg2;
@@ -329,16 +331,12 @@ Actor *func_802BC2A0(f32 position[3], f32 rotation[3]){
return func_80328230(0x66, position, rotation);
}
#ifndef NONMATCHING
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_34790/func_802BC2CC.s")
#else
void func_802BC2CC(s32 arg0) {
f32 *sp24;
f32 *sp20;
f32 *sp24 = D_8037D908;\
f32 *sp20 = D_8037D918;
s32 sp1C;
sp24 = &D_8037D908;
sp20 = &D_8037D918;
if (func_803203FC(0xE) != 0) {
func_80347A14(0);
}
@@ -356,7 +354,7 @@ void func_802BC2CC(s32 arg0) {
func_8024CD88(D_8037D908);
func_8024CE18(D_8037D918);
func_8024CFD4();
__spawnQueue_add_2((GenMethod_2)func_802BC2A0, D_8037D908, D_8037D918);
__spawnQueue_add_2((GenMethod_2)func_802BC2A0, reinterpret_cast(s32, sp24), reinterpret_cast(s32, sp20));
if (D_8037D8C0 == 2) {
func_802BE720();
if (sp1C != 0x63) {
@@ -365,7 +363,6 @@ void func_802BC2CC(s32 arg0) {
}
}
}
#endif
bool func_802BC428(void){
return D_8037D8C6;

View File

@@ -4,7 +4,7 @@
extern void func_80355C60(f32[3], f32);
void func_80348044(Gfx **gfx, BKSprite* sprite, s32 frame, s32 tmem, s32 rtile, s32 arg5, s32 arg6, s32 cms, s32 cmt, s32 *width, s32 *height, s32 *argB, s32 *argC, s32 *argD, s32 *argE, s32 *argF);
void func_80348044(Gfx **gfx, BKSprite* sprite, s32 frame, s32 tmem, s32 rtile, s32 arg5, s32 arg6, s32 cms, s32 cmt, s32 *width, s32 *height, s32 *argB, s32 *argC, s32 *argD, s32 *argE, s32 *textureCount);
#define rare_gDPLoadMultiBlock(pkt, timg, tmem, rtile, fmt, siz, width, height, \
uls, ult, \
@@ -123,7 +123,7 @@ void func_80347FC0(Gfx **gfx, BKSprite *sprite, s32 frame, s32 tmem, s32 rtile,
);
}
void func_80348044(Gfx **gfx, BKSprite* sprite, s32 frame, s32 tmem, s32 rtile, s32 arg5, s32 arg6, s32 cms, s32 cmt, s32 *width, s32 *height, s32 *argB, s32 *argC, s32 *argD, s32 *argE, s32 *argF) {
void func_80348044(Gfx **gfx, BKSprite* sprite, s32 frame, s32 tmem, s32 rtile, s32 arg5, s32 arg6, s32 cms, s32 cmt, s32 *width, s32 *height, s32 *argB, s32 *argC, s32 *argD, s32 *argE, s32 *textureCount) {
BKSpriteFrame *sprite_frame;
s32 palette_addr;
BKSpriteTextureBlock *var_v1;
@@ -138,11 +138,11 @@ void func_80348044(Gfx **gfx, BKSprite* sprite, s32 frame, s32 tmem, s32 rtile,
sprite_frame = spriteGetFramePtr(sprite, frame);
*argB = (s32) sprite_frame->w;
*argC = (s32) sprite_frame->h;
if (*argF == -1) {
*argF = (s32) sprite_frame->chunkCnt;
if (*textureCount == -1) {
*textureCount = (s32) sprite_frame->chunkCnt;
}
(*argF)--;
chunk_count = (*argF);
(*textureCount)--;
chunk_count = (*textureCount);
if (sprite->type & SPRITE_TYPE_CI4) {
for(palette_addr = (s32)(sprite_frame + 1); palette_addr % 8; palette_addr++);
gDPSetTextureLUT((*gfx)++, G_TT_RGBA16);