splat update

This commit is contained in:
Banjo Kazooie
2022-09-23 22:03:49 -05:00
parent d8927db33b
commit fb02779b92
34 changed files with 165 additions and 6457 deletions

View File

@@ -61,7 +61,7 @@ void chyumblie_set_state(Actor* this, enum chyumblie_state_e next_state){
if(next_state == 2){
this->yaw = randf2(0.0f, 360.0f);
s0->unk4 = func_8038B160(this);
func_8038AC54(s0->game_marker, this->marker, this->position, s0->unk4);
chvilegame_new_piece(s0->game_marker, this->marker, this->position, s0->unk4);
func_80335924(this->unk148, (s0->unk4)? ASSET_128_ANIM_GRUMBLIE_APPEAR : ASSET_125_ANIM_YUMBLIE_APPEAR, 0.0f, 1.5f);
func_80335A8C(this->unk148, 2);
}

View File

@@ -217,9 +217,9 @@ bool func_8038C718(Actor *this, f32 arg1){
f32 tmp;
this->position[0] += this->velocity[0];
this->position_y += (this->velocity_y += D_80392DB8);
this->position_y += (this->velocity_y += -3.2);
this->position_z += this->velocity_z;
tmp = D_80392DC0 < animctrl_getAnimTimer(this->animctrl) + this->unk1C[0] ? D_80392DC8 : animctrl_getAnimTimer(this->animctrl) + this->unk1C[0];
tmp = 0.9999 < animctrl_getAnimTimer(this->animctrl) + this->unk1C[0] ? 0.999999 : animctrl_getAnimTimer(this->animctrl) + this->unk1C[0];
animctrl_setAnimTimer(this->animctrl, tmp);
if(arg1 == 0.0f)

90
src/core1/code_34B70.c Normal file
View File

@@ -0,0 +1,90 @@
#include <ultra64.h>
#include "functions.h"
#include "variables.h"
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80272590.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_8027275C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80272790.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802727E8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_8027285C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80272898.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802728B0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80272B6C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80272D00.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80272F78.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80273198.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802731F0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802731F8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80273484.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80273490.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802734A4.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802734B8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802734C0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802734C8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80273504.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274148.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274170.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802741C8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802745B0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802745BC.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274618.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274A80.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274A8C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274AA0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274AB4.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274ABC.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274AC4.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274B34.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274D98.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274DFC.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274E24.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274E6C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274E7C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80274EB8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802754A8.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_8027552C.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_80275578.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_34B70/func_802755A0.s")

View File

@@ -20,8 +20,8 @@ void func_80247224(void);
#define CORE1_8C50_EVENT_CONT_TIMER 13
/* .extern */
extern u64 D_80272590[]; // ucode
extern u64 D_802731F0[];
extern void (*func_80272590)(void);
extern void (*func_802731F0)(void);
extern u64 D_80274620[];
extern u64 D_80278E80[]; //ucode_data
@@ -120,7 +120,7 @@ void func_80246744(OSMesg arg0){
void func_80246794(Struct_Core1_8C50_s * arg0){
func_80255D0C(&D_80275910.t.ucode_boot, &D_80275910.t.ucode_boot_size);
D_80275910.t.ucode = D_80272590;
D_80275910.t.ucode = &func_80272590;
D_80275910.t.ucode_data = D_80278E80;
D_80275910.t.data_ptr = (void*) arg0->unk8;
D_80275910.t.data_size = (arg0->unkC - arg0->unk8) >> 3 << 3;
@@ -134,7 +134,7 @@ void func_80246794(Struct_Core1_8C50_s * arg0){
void func_80246844(Struct_Core1_8C50_s * arg0){
func_80255D0C(&D_80275950.t.ucode_boot, &D_80275950.t.ucode_boot_size);
D_80275950.t.ucode = D_802731F0;
D_80275950.t.ucode = &func_802731F0;
D_80275950.t.ucode_data = D_80279130;
D_80275950.t.data_ptr = (void*) arg0->unk8;
D_80275950.t.data_size = (arg0->unkC - arg0->unk8) >> 3 << 3;

View File

@@ -5,9 +5,9 @@
#pragma GLOBAL_ASM("asm/nonmatchings/core1/exceptasm/func_8026A2E0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/exceptasm/func_8026A2F0.s")
// #pragma GLOBAL_ASM("asm/nonmatchings/core1/exceptasm/func_8026A2F0.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/exceptasm/func_8026A300.s")
// #pragma GLOBAL_ASM("asm/nonmatchings/core1/exceptasm/func_8026A300.s")
#pragma GLOBAL_ASM("asm/nonmatchings/core1/exceptasm/func_8026A824.s")

View File

@@ -12,7 +12,9 @@ typedef struct
/* 0xC */ unsigned int inst4;
} __osExceptionVector;
// extern __osExceptionVector __osExceptionPreamble;
extern __osExceptionVector D_8026A2E0;
// extern __osExceptionVector D_8026A2E0;
extern void (*func_8026A2E0)(void);
OSTime osClockRate = OS_CLOCK_RATE;
s32 osViClock = VI_NTSC_CLOCK;
@@ -36,10 +38,10 @@ void __osInitialize_common()
{
; //todo: magic contant
}
*(__osExceptionVector *)UT_VEC = D_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)XUT_VEC = D_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)ECC_VEC = D_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)E_VEC = D_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)UT_VEC = *(__osExceptionVector *)&func_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)XUT_VEC = *(__osExceptionVector *)&func_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)ECC_VEC = *(__osExceptionVector *)&func_8026A2E0; //__osExceptionPreamble;
*(__osExceptionVector *)E_VEC = *(__osExceptionVector *)&func_8026A2E0; //__osExceptionPreamble;
osWritebackDCache((void *)UT_VEC, E_VEC - UT_VEC + sizeof(__osExceptionVector));
osInvalICache((void *)UT_VEC, E_VEC - UT_VEC + sizeof(__osExceptionVector));
osMapTLBRdb();

View File

@@ -185,7 +185,7 @@ void func_802C4768(s32 gamenum){
break;
}//L802C4858
strcat(D_8037DD48, ": TIME ");
strcat(D_8037DD48, func_80311C64(itemscore_timeScores_getTotal()));
strcat(D_8037DD48, gcpausemenu_TimeToA(itemscore_timeScores_getTotal()));
strcat(D_8037DD48, ",");
strcat(D_8037DD48, "");

View File

@@ -5,8 +5,7 @@
extern void func_802BE720(void);
extern f32 func_8033A244(f32);
extern void func_8033A280(f32);
extern u8 D_80329904[];
extern void func_80329904(ActorMarker *, s32, f32 *);
typedef struct chjiggy_s{
u32 unk0;
@@ -129,7 +128,7 @@ void func_802C7DC0(Actor *this){
if(this->marker->unk14_21){
for(i = 0; i < 4; i++){
if(randf() < 0.015){
func_8033E73C(this->marker, i + 5, &D_80329904);
func_8033E73C(this->marker, i + 5, func_80329904);
func_8033E3F0(8, 1);
}
}

View File

@@ -81,7 +81,7 @@ struct41FB0s D_80366460[] = {
{0x0009, ACTOR_47_EMPTY_HONEYCOMB, 1, SFX_3E9_UNKNOWN, 1, 16000, 0.0f, 0.0f, 200.0f, 0.0f, 300.0f, 0.0f, 0.6f, 0.0f},
/*YUM YUM EGG*/ {0x0001, ACTOR_52_BLUE_EGG, 1, SFX_21_EGG_BOUNCE_1, 1, 16000, 0.0f, 350.0f, 500.0f, 500.0f, 0.0f, 350.0f, 0.6f, 0.0f},
/*YUM YUM FEATHER*/ {0x0001, ACTOR_129_RED_FEATHER, 1, SFX_21_EGG_BOUNCE_1, 1, 16000, 0.0f, 350.0f, 500.0f, 500.0f, 0.0f, 350.0f, 0.6f, 0.0f},
{0x0005, ACTOR_46_JIGGY, 1, 0, 0, 0, 0.0f, 0.0f, 100.0f, 0.0f, 0.0f, 0.0f, 0.75f, 0.0f},
/*0x10*/{0x0005, ACTOR_46_JIGGY, 1, 0, 0, 0, 0.0f, 0.0f, 100.0f, 0.0f, 0.0f, 0.0f, 0.75f, 0.0f},
{0x0005, 0x06A, 1, 0, 0, 0, 0.0f, 0.0f, 200.0f, 0.0f, 0.0f, 0.0f, 0.6f, 0.0f},
{0x0009, ACTOR_46_JIGGY, 1, SFX_3E9_UNKNOWN, 1, 16000, 0.0f, 0.0f, 650.0f, 0.0f, 950.0f, 0.0f, 0.6f, 0.0f},
{0x0001, ACTOR_51_MUSIC_NOTE, 1, SFX_21_EGG_BOUNCE_1, 1, 16000, 125.0f, 25.0f, 725.0f, 125.0f, 125.0f, 25.0f, 0.6f, 0.0f},

View File

@@ -48,7 +48,6 @@ typedef struct {
}Actorlocal_Core2_9E370;
/* .data */
extern s32 D_803255FC;
extern ActorArray *D_8036E560; //actorArrayPtr
extern s32 D_8036E564;
extern s32 D_8036E568;
@@ -972,7 +971,7 @@ Actor *actor_new(s32 (* position)[3], s32 yaw, ActorInfo* actorInfo, u32 flags){
}
if(flags & 0x100){
D_80383390->unk130 = &D_803255FC;
D_80383390->unk130 = func_803255FC;
}
if(flags & 0x200){

View File

@@ -2183,7 +2183,7 @@ void func_8038BB8C(ActorMarker *marker, ActorMarker *other_marker) {
this = marker_getActor(marker);
local = (ActorLocal_fight_180 *)&this->local;
if (local->unk0 == 1) {
func_8030E878(SFX_EA_GRUNTY_LAUGH_1, randf2(D_80392440, D_80392444), 32000, this->position, D_80392448, D_8039244C);
func_8030E878(SFX_EA_GRUNTY_LAUGH_1, randf2(0.95f, 1.05f), 32000, this->position, 5000.0f, 12000.0f);
if (local->unk10 == 0) {
if (func_80311480(randi2(0, 5) + 0x10ED, 0, NULL, NULL, NULL, NULL)) {
local->unk10++;