mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
Fix building for other versions (#551)
* Fix spelling mistakes and format * lights * formatting * Small documenting * Small documenting * Fix hud_main_time_trial for JP, and start trying to match it. * Match v80 again * documenting * Match all versions and do some cleanup of some parts of existing matches. * Format * Update score * Fix some warnings * Start work on func_80008438 * Further work on func_80008438, still HEAVILY WIP
This commit is contained in:
@@ -9,7 +9,7 @@ As of May 5, 2025, this is our current score:
|
||||
|
||||
    Decomp progress: 84.89%
|
||||
|
||||
    Documentation progress: 54.49%
|
||||
    Documentation progress: 54.50%
|
||||
<!-- README_SCORE_SUMMARY_END -->
|
||||
|
||||
---
|
||||
@@ -133,9 +133,9 @@ As of May 5, 2025, this is our current score:
|
||||
We are racing in Spacedust Alley. (Lap 1/3)
|
||||
========================================================
|
||||
ADVENTURE TWO (Cleanup & Documentation)
|
||||
------------------- 54.49% Complete --------------------
|
||||
# Documented functions: 1154
|
||||
# Undocumented remaining: 500
|
||||
------------------- 54.50% Complete --------------------
|
||||
# Documented functions: 1155
|
||||
# Undocumented remaining: 499
|
||||
--------------------- Game Status ----------------------
|
||||
Balloons: 26/47, Keys: 3/4, Trophies: 2/5
|
||||
T.T. Amulets: 2/4, Wizpig Amulets: 2/4
|
||||
|
||||
@@ -83,6 +83,7 @@ typedef enum World {
|
||||
|
||||
typedef enum RaceType {
|
||||
RACETYPE_DEFAULT = 0,
|
||||
RACETYPE_UNK1 = 1,
|
||||
RACETYPE_HORSESHOE_GULCH = 3,
|
||||
RACETYPE_HUBWORLD = 5,
|
||||
RACETYPE_CUTSCENE_1 = 6, // Not sure what the difference between these two are.
|
||||
|
||||
+2
-2
@@ -74,7 +74,7 @@ void music_jingle_voicelimit_set(u8 voiceLimit);
|
||||
void music_fade(s32 time);
|
||||
void music_volume_reset(void);
|
||||
void sound_update_queue(u8 updateRate);
|
||||
void sound_play_delayed(u16 soundId, SoundHandle *soundMask, f32 delayTime);
|
||||
void sound_play_delayed(u16 soundId, SoundHandle *handlePtr, f32 delayTime);
|
||||
void sound_clear_delayed(void);
|
||||
u16 music_channel_get_mask(void);
|
||||
void music_dynamic_set(u16 channelMask);
|
||||
@@ -118,7 +118,7 @@ void music_sequence_stop(ALCSPlayer *seqPlayer);
|
||||
void sound_reverb_set(u8 setting);
|
||||
void alSeqFileNew(ALSeqFile *file, u8 *base);
|
||||
void func_80063A90(ALCSPlayer *seqp, u8 channel);
|
||||
void sound_volume_set_relative(u16 soundID, SoundHandle soundState, u8 volume);
|
||||
void sound_volume_set_relative(u16 soundID, SoundHandle soundHandle, u8 volume);
|
||||
void music_sequence_init(ALCSPlayer *seqp, void *sequence, u8 *seqID, ALCSeq *seq);
|
||||
void sound_play(u16 soundID, SoundHandle* handlePtr);
|
||||
f32 music_animation_fraction(void);
|
||||
|
||||
+343
-11
@@ -40,7 +40,7 @@ u8 gFreeMasks;
|
||||
SoundMask **gSoundMaskHeapFree;
|
||||
unk80119C58 D_80119C58[7];
|
||||
unk8011A6D8 D_8011A6D8[7]; // Reverb stuff
|
||||
s8 gAudioLinesOff;
|
||||
u8 gAudioLinesOff;
|
||||
s32 D_8011AC1C;
|
||||
|
||||
#define SOUND_MASK_HEAP_COUNT 40
|
||||
@@ -140,12 +140,334 @@ void audioline_reset(void) {
|
||||
}
|
||||
}
|
||||
|
||||
gAudioLinesOff = 0;
|
||||
gAudioLinesOff = FALSE;
|
||||
}
|
||||
|
||||
// audioline_ambient
|
||||
// Official Name: amPlayAudioMap
|
||||
#ifdef NON_EQUIVALENT
|
||||
void func_80008438(Object **objRacers, s32 numRacers, s32 updateRate) {
|
||||
s32 sp260;
|
||||
s32 sp254;
|
||||
s32 sp250;
|
||||
s32 sp24C;
|
||||
s32 sp248;
|
||||
s32 sp244;
|
||||
f32 sp22C;
|
||||
f32 sp228;
|
||||
f32 sp224;
|
||||
s32 sp1A8;
|
||||
s32 sp12C;
|
||||
s32 numActivePlayers; //numActivePlayers
|
||||
ObjectSegment *spAC;
|
||||
f32 spA8;
|
||||
f32 sp98;
|
||||
f32 sp90;
|
||||
unk80119C58 *sp88;
|
||||
f32 *sp70;
|
||||
ObjectSegment *temp_s3;
|
||||
ObjectSegment *var_s3;
|
||||
ObjectSegment *var_s3_2;
|
||||
f32 *var_s4_2;
|
||||
f32 temp_f0;
|
||||
f32 temp_f0_2;
|
||||
f32 temp_f0_3;
|
||||
f32 temp_f0_4;
|
||||
f32 temp_f0_5;
|
||||
f32 temp_f12;
|
||||
f32 temp_f16_3;
|
||||
f32 temp_f20;
|
||||
f32 temp_f20_2;
|
||||
f32 temp_f20_3;
|
||||
f32 temp_f22;
|
||||
f32 temp_f22_2;
|
||||
f32 temp_f22_3;
|
||||
f32 temp_f2;
|
||||
f32 temp_f4;
|
||||
f32 var_f24;
|
||||
s32 *temp_v1_3;
|
||||
s32 *var_s0;
|
||||
s32 *var_s0_2;
|
||||
s32 *var_s1;
|
||||
s32 *var_s1_2;
|
||||
s32 *var_v0_5;
|
||||
s32 *var_v0_6;
|
||||
s32 temp_a0;
|
||||
s32 temp_a0_2;
|
||||
s32 temp_f16;
|
||||
s32 temp_f16_2;
|
||||
s32 temp_f8;
|
||||
s32 temp_v1;
|
||||
s32 temp_v1_2;
|
||||
s32 var_a0;
|
||||
s32 var_a0_2;
|
||||
s32 var_a2;
|
||||
s32 var_at;
|
||||
s32 var_fp;
|
||||
s32 var_fp_2;
|
||||
s32 var_s2;
|
||||
s32 var_s2_2;
|
||||
s32 i;
|
||||
s32 var_s5;
|
||||
s32 var_s6;
|
||||
s32 var_v0;
|
||||
s32 var_v0_4;
|
||||
s32 var_v1;
|
||||
s8 var_v1_2;
|
||||
unk80119C58 *var_v0_3;
|
||||
SoundMask *temp_s1;
|
||||
s32 *spB8;
|
||||
|
||||
sp24C = 0;
|
||||
numActivePlayers = set_active_viewports_and_max(get_viewport_count());
|
||||
spAC = get_cutscene_camera_segment();
|
||||
sp260 = 0;
|
||||
if (gUsedMasks > 0) {
|
||||
i = 0;
|
||||
do {
|
||||
temp_s1 = gSoundMaskHeapUsed[i];
|
||||
sp254 = 0;
|
||||
if (temp_s1->unk11 & 2) {
|
||||
if (numActivePlayers == 1) {
|
||||
temp_f20 = temp_s1->pos.x - spAC->trans.x_position;
|
||||
temp_f0 = temp_s1->pos.y - spAC->trans.y_position;
|
||||
temp_f22 = temp_s1->pos.z - spAC->trans.z_position;
|
||||
temp_f16 = sqrtf((temp_f20 * temp_f20) + (temp_f0 * temp_f0) + (temp_f22 * temp_f22));
|
||||
if ((temp_f16 < temp_s1->distance) && ((temp_s1->unk12 == 0))) {
|
||||
if (temp_s1->soundPtr == NULL && (temp_s1->unk22 == 0 || !(temp_s1->unk11 & 4))) {
|
||||
func_80001F14(temp_s1->soundId, &temp_s1->soundPtr);
|
||||
temp_s1->unk22 = 1;
|
||||
}
|
||||
if (temp_s1->soundPtr != NULL) {
|
||||
spA8 = temp_s1->pitch / 100.0f;
|
||||
sndp_set_param(temp_s1->soundPtr, AL_SNDP_VOL_EVT, temp_s1->volume << 8);
|
||||
sndp_set_param(temp_s1->soundPtr, AL_SNDP_PITCH_EVT, *((u32 *) &spA8));
|
||||
var_a2 = func_800090C0(temp_f20, temp_f22, spAC->trans.rotation.x);
|
||||
if (numActivePlayers != 1) {
|
||||
var_a2 = 0x40;
|
||||
}
|
||||
sndp_set_param(temp_s1->soundPtr, AL_SNDP_PAN_EVT, var_a2);
|
||||
audioline_reverb(temp_s1->soundPtr, temp_s1->pos.x, temp_s1->pos.y, temp_s1->pos.z);
|
||||
sndp_set_priority(temp_s1->soundPtr, temp_s1->unk21);
|
||||
}
|
||||
temp_s1->unk12 = 1;
|
||||
} else if (temp_s1->distance < temp_f16 && temp_s1->unk12 != 0) {
|
||||
temp_s1->unk12 = 0;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
var_fp = 0;
|
||||
if (numActivePlayers > 0) {
|
||||
var_s3 = spAC;
|
||||
do {
|
||||
temp_f20 = temp_s1->pos.x - var_s3->trans.x_position;
|
||||
temp_f0 = temp_s1->pos.y - var_s3->trans.y_position;
|
||||
temp_f22 = temp_s1->pos.z - var_s3->trans.z_position;
|
||||
temp_f16 = sqrtf((temp_f20 * temp_f20) + (temp_f0 * temp_f0) + (temp_f22 * temp_f22));
|
||||
if (temp_f16 < temp_s1->distance) {
|
||||
if (temp_s1->unk20 == 0) {
|
||||
var_v0 = ((1.0f - ((f32) temp_f16 / (f32) temp_s1->distance)) * temp_s1->volume);
|
||||
} else {
|
||||
temp_f0_3 = (temp_s1->distance - temp_f16) / (f32) temp_s1->distance;
|
||||
var_v0 = (temp_f0_3 * temp_f0_3 * temp_s1->volume);
|
||||
}
|
||||
if (sp254 < var_v0) {
|
||||
sp254 = var_v0;
|
||||
sp250 = func_800090C0(temp_f20, temp_f22, var_s3->trans.rotation.x);
|
||||
}
|
||||
}
|
||||
var_fp++;
|
||||
var_s3++;
|
||||
} while (var_fp != numActivePlayers);
|
||||
}
|
||||
if (sp254 < temp_s1->unk10) {
|
||||
var_fp = 0;
|
||||
var_f24 = 999999.0f;
|
||||
if (numActivePlayers > 0) {
|
||||
var_s3 = spAC;
|
||||
do {
|
||||
temp_f20 = temp_s1->pos.x - var_s3->trans.x_position;
|
||||
temp_f0 = temp_s1->pos.y - var_s3->trans.y_position;
|
||||
temp_f22 = temp_s1->pos.z - var_s3->trans.z_position;
|
||||
temp_f16 = sqrtf((temp_f20 * temp_f20) + (temp_f0 * temp_f0) + (temp_f22 * temp_f22));
|
||||
if (temp_f16 < var_f24) {
|
||||
sp250 = func_800090C0(temp_f20, temp_f22, var_s3->trans.rotation.x);
|
||||
var_f24 = temp_f16;
|
||||
}
|
||||
var_fp++;
|
||||
var_s3++;
|
||||
} while (var_fp != numActivePlayers);
|
||||
}
|
||||
sp254 = temp_s1->unk10;
|
||||
}
|
||||
if (sp254 > 10) {
|
||||
if ((temp_s1->soundPtr == NULL) && ((temp_s1->unk22 == 0) || !(temp_s1->unk11 & 4))) {
|
||||
func_80001F14(temp_s1->soundId, &temp_s1->soundPtr);
|
||||
temp_s1->unk22 = 1;
|
||||
}
|
||||
if (temp_s1->soundPtr != NULL) {
|
||||
sp98 = temp_s1->pitch / 100.0f;
|
||||
sndp_set_param(temp_s1->soundPtr, AL_SNDP_VOL_EVT, sp254 << 8);
|
||||
sndp_set_param(temp_s1->soundPtr, AL_SNDP_PITCH_EVT, *((u32 *) &sp98));
|
||||
if (numActivePlayers != 1) {
|
||||
sp250 = 0x40;
|
||||
}
|
||||
sndp_set_param(temp_s1->soundPtr, AL_SNDP_PAN_EVT, sp250);
|
||||
sndp_set_priority(temp_s1->soundPtr, temp_s1->unk21);
|
||||
audioline_reverb(temp_s1->soundPtr, temp_s1->pos.x, temp_s1->pos.y, temp_s1->pos.z);
|
||||
}
|
||||
} else {
|
||||
if (temp_s1->soundPtr != NULL) {
|
||||
sndp_stop(temp_s1->soundPtr);
|
||||
} else {
|
||||
temp_s1->unk22 = 1;
|
||||
}
|
||||
}
|
||||
if ((temp_s1->unk11 & 4) && temp_s1->unk22 && temp_s1->soundPtr == NULL) {
|
||||
func_8000A2E8(sp260);
|
||||
}
|
||||
}
|
||||
sp260++;
|
||||
i++;
|
||||
} while (sp260 < gUsedMasks);
|
||||
sp260 = 0;
|
||||
}
|
||||
var_v0_3 = D_80119C58;
|
||||
do {
|
||||
sp88 = var_v0_3;
|
||||
if (var_v0_3->soundID != 0) {
|
||||
sp88 = var_v0_3;
|
||||
if (func_800099EC(var_v0_3->unk0_02/*unksp263*/) != 0) {
|
||||
sp254 = 0;
|
||||
i = 0;
|
||||
if (numActivePlayers > 0) {
|
||||
sp70 = sp88->unk4_floats;
|
||||
do {
|
||||
var_s4_2 = sp70;
|
||||
var_v1 = sp88->unk170;
|
||||
var_s5 = 0;
|
||||
var_s2 = 0;
|
||||
var_s6 = var_v1;
|
||||
if (sp88->unk17C > 0) {
|
||||
var_s0 = &sp1A8;
|
||||
var_s1 = &sp12C;
|
||||
temp_s3 = &spAC[i];
|
||||
do {
|
||||
*var_s0 = audioline_distance(temp_s3->trans.x_position, temp_s3->trans.y_position, temp_s3->trans.z_position, var_s4_2, &sp22C, &sp228, &sp224);
|
||||
temp_v1 = *var_s0;
|
||||
*var_s1 = func_800090C0(sp22C - temp_s3->trans.x_position, sp224 - temp_s3->trans.z_position, temp_s3->trans.rotation.x);
|
||||
var_s4_2 += 0xC;
|
||||
if (temp_v1 < var_s6) {
|
||||
var_s6 = temp_v1;
|
||||
}
|
||||
var_s2 += 1;
|
||||
var_s0 += 4;
|
||||
var_s1 += 4;
|
||||
var_s5 += temp_v1;
|
||||
} while (var_s2 < var_v0_3->unk17C);
|
||||
var_v1 = sp88->unk170;
|
||||
}
|
||||
temp_f2 = (f32) var_v1;
|
||||
temp_f12 = (f32) sp88->unk174;
|
||||
if (sp88->unk17D == 0) {
|
||||
var_v0_4 = (s32) ((1.0f - ((f32) var_s6 / temp_f2)) * temp_f12);
|
||||
} else {
|
||||
temp_f0_5 = (f32) (var_v1 - var_s6) / temp_f2;
|
||||
var_v0_4 = (s32) (temp_f0_5 * temp_f0_5 * temp_f12);
|
||||
}
|
||||
if (var_v0_4 >= sp254) {
|
||||
sp254 = var_v0_4;
|
||||
var_v1_2 = sp88->unk17C;
|
||||
var_a0 = 0;
|
||||
if (var_v1_2 == 1) {
|
||||
sp250 = sp12C;
|
||||
} else {
|
||||
var_s2_2 = 0;
|
||||
sp250 = 0;
|
||||
if (var_v1_2 > 0) {
|
||||
var_s0_2 = &sp1A8;
|
||||
var_v0_5 = &spB8[0];
|
||||
do {
|
||||
var_s2_2 += 1;
|
||||
temp_v1_2 = var_s5 - *var_s0_2;
|
||||
*var_v0_5 = temp_v1_2;
|
||||
var_s0_2 += 4;
|
||||
var_v0_5 += 4;
|
||||
var_a0 += temp_v1_2;
|
||||
} while (var_s2_2 < var_v0_3->unk17C);
|
||||
var_v1_2 = sp88->unk17C;
|
||||
}
|
||||
var_s1_2 = &sp12C;
|
||||
if (var_v1_2 > 0) {
|
||||
var_v0_6 = &spB8[0];
|
||||
var_a0_2 = sp250;
|
||||
temp_v1_3 = &var_v0_6[var_v0_3->unk17C];
|
||||
do {
|
||||
temp_f16_3 = (f32) *var_v0_6;
|
||||
var_v0_6 += 4;
|
||||
temp_f4 = (f32) *var_s1_2;
|
||||
var_s1_2 += 4;
|
||||
var_a0_2 = (s32) ((f32) var_a0_2 + ((temp_f16_3 / (f32) var_a0) * temp_f4));
|
||||
} while ((u32) var_v0_6 < (u32) temp_v1_3);
|
||||
sp250 = var_a0_2;
|
||||
}
|
||||
}
|
||||
if (var_s6 < 400) {
|
||||
sp250 = (((sp250 - 64) * (var_s6 / 400.0f)) + 64.0f);
|
||||
}
|
||||
}
|
||||
i++;
|
||||
} while (i != numActivePlayers);
|
||||
}
|
||||
if (sp88->unk0_02 == 0) {
|
||||
if (sp254 < sp88->unk175) {
|
||||
sp254 = sp88->unk175;
|
||||
}
|
||||
if (sp254 > 10) {
|
||||
sp90 = sp88->unk176 / 100.0f;
|
||||
if (sp88->soundPtr == NULL) {
|
||||
func_80001F14(sp88->soundID, &sp88->soundPtr);
|
||||
}
|
||||
if (sp88->soundPtr != NULL) {
|
||||
sndp_set_param(sp88->soundPtr, AL_SNDP_VOL_EVT, sp254 << 8);
|
||||
sndp_set_param(sp88->soundPtr, AL_SNDP_PITCH_EVT, *((u32 *) &sp90));
|
||||
if (numActivePlayers != 1) {
|
||||
sp250 = 0x40;
|
||||
}
|
||||
sndp_set_param(sp88->soundPtr, AL_SNDP_PAN_EVT, (u32) sp250);
|
||||
sndp_set_priority(sp88->soundPtr, sp88->unk17E);
|
||||
}
|
||||
} else {
|
||||
if (sp88->soundPtr != NULL) {
|
||||
sndp_stop(sp88->soundPtr);
|
||||
}
|
||||
}
|
||||
} else if (sp88->unk0_02 == 1 && sp24C < sp254) {
|
||||
sp24C = sp254;
|
||||
sp248 = sp250;
|
||||
sp244 = sp88->soundID;
|
||||
}
|
||||
}
|
||||
}
|
||||
sp260++;
|
||||
var_v0_3 = &sp88[1];
|
||||
} while (sp260 != 7);
|
||||
if (sp24C > 10 && gAudioLinesOff == FALSE) {
|
||||
if (sp244 != music_jingle_current()) {
|
||||
music_jingle_play_safe(var_v0_3->unk0_02/*unksp247*/);
|
||||
}
|
||||
music_jingle_volume_set(var_v0_3->unk0_05/*unksp24F*/);
|
||||
music_jingle_pan_set(var_v0_3->unk0_03/*unksp24B*/);
|
||||
} else {
|
||||
music_jingle_stop();
|
||||
}
|
||||
if (numRacers != 0) {
|
||||
func_80006FC8(objRacers, numRacers, spAC, spB8[0]/*unkspB3*/, updateRate);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/audio_spatial/func_80008438.s")
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Official Name: amCalcSfxStereo
|
||||
@@ -236,21 +558,28 @@ s32 audioline_distance(f32 inX, f32 inY, f32 inZ, f32 coords[6], f32 *outX, f32
|
||||
|
||||
/**
|
||||
* Play Sound at position
|
||||
* Official Name: amSndPlayXYZ
|
||||
*/
|
||||
void play_sound_at_position(u16 soundId, f32 x, f32 y, f32 z, u8 arg4, SoundMask **soundMask) {
|
||||
func_8000974C(D_80119C40[soundId].soundBite, x, y, z, arg4, D_80119C40[soundId].unk3, D_80119C40[soundId].volume,
|
||||
D_80119C40[soundId].distance, 0, D_80119C40[soundId].pitch, D_80119C40[soundId].unk8, soundMask);
|
||||
}
|
||||
|
||||
/**
|
||||
* Official Name: amSndPlayDirectXYZ
|
||||
*/
|
||||
void func_800095E8(u16 soundId, f32 x, f32 y, f32 z, u8 arg4, u8 arg5, f32 pitch, SoundMask **soundMask) {
|
||||
func_8000974C(soundId, x, y, z, arg4, 100, arg5, 15000, 0, pitch, 0x3F, soundMask);
|
||||
}
|
||||
|
||||
// I think this function is used to update the world position of any sound associated with the given soundmask.
|
||||
void update_spatial_audio_position(SoundMask *arg0, f32 x, f32 y, f32 z) {
|
||||
arg0->pos.x = x;
|
||||
arg0->pos.y = y;
|
||||
arg0->pos.z = z;
|
||||
/**
|
||||
* I think this function is used to update the world position of any sound associated with the given soundmask.
|
||||
* Official Name: amSndSetXYZ
|
||||
*/
|
||||
void update_spatial_audio_position(SoundMask *soundMask, f32 x, f32 y, f32 z) {
|
||||
soundMask->pos.x = x;
|
||||
soundMask->pos.y = y;
|
||||
soundMask->pos.z = z;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -266,6 +595,9 @@ void func_800096F8(SoundMask *soundMask) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Official Name: amCreateAudioPoint
|
||||
*/
|
||||
void func_8000974C(u16 soundBite, f32 x, f32 y, f32 z, u8 arg4, u8 arg5, u8 volume, u16 distance, u8 arg8, u8 pitch,
|
||||
u8 argA, SoundMask **soundMask) {
|
||||
SoundMask *newMask;
|
||||
@@ -393,7 +725,7 @@ s32 func_80009AB4(u8 arg0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
void audioline_reverb(s32 *soundState, f32 x, f32 y, f32 z) {
|
||||
void audioline_reverb(SoundHandle soundHandle, f32 x, f32 y, f32 z) {
|
||||
s32 i;
|
||||
s32 j;
|
||||
unk8011A6D8 *temp;
|
||||
@@ -437,8 +769,8 @@ void audioline_reverb(s32 *soundState, f32 x, f32 y, f32 z) {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (soundState != NULL) {
|
||||
sndp_set_param((s32) soundState, AL_SNDP_FX_EVT, (u32) volume);
|
||||
if (soundHandle != NULL) {
|
||||
sndp_set_param((SoundHandle) (s32) soundHandle, AL_SNDP_FX_EVT, (u32) volume);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -483,7 +815,7 @@ u8 func_80009D6C(unk8011A6D8 *arg0, f32 arg1, f32 arg2, f32 arg3) {
|
||||
dz = z2 - z1;
|
||||
length = sqrtf((dx * dx) + (dy * dy) + (dz * dz));
|
||||
|
||||
if (arg1 >= x1 && arg1 <= x2 || arg1 >= x2 && arg1 <= x1) {
|
||||
if ((arg1 >= x1 && arg1 <= x2) || (arg1 >= x2 && arg1 <= x1)) {
|
||||
if (dx != 0.0f) {
|
||||
f12 = (arg1 - x1) / dx;
|
||||
} else if (dy != 0.0f) {
|
||||
|
||||
+5
-2
@@ -19,6 +19,9 @@ typedef struct floatXYZVals {
|
||||
/* Size: 0x180 / 384 bytes */
|
||||
typedef struct unk80119C58 {
|
||||
/* 0x000 */ u8 unk0_02;
|
||||
/* 0x000 */ u8 unk0_03;
|
||||
/* 0x000 */ u8 unk0_04;
|
||||
/* 0x000 */ u8 unk0_05;
|
||||
/* 0x004 */ f32 unk4_floats[30 * 3]; // Should be a Vec3f, but that just doesn't match
|
||||
/* 0x16C */ s32 soundID;
|
||||
/* 0x170 */ s32 unk170;
|
||||
@@ -55,11 +58,11 @@ void audioline_ambient_create(u8 arg0, u16 soundId, f32 x, f32 y, f32 z, u8 arg5
|
||||
s32 func_800099EC(u8 arg0);
|
||||
void debug_render_line(Gfx **dList, Vertex **verts, Triangle **tris, f32 coords[6], u8 red, u8 green, u8 blue);
|
||||
void func_80006BFC(Object *obj, ObjectSegment *segment, Object *obj2, s32 updateRate);
|
||||
void update_spatial_audio_position(SoundMask *arg0, f32 x, f32 y, f32 z);
|
||||
void update_spatial_audio_position(SoundMask *soundMask, f32 x, f32 y, f32 z);
|
||||
s32 func_80009AB4(u8 arg0);
|
||||
void audioline_init(void);
|
||||
void audioline_reverb_create(f32, f32, f32, u8, u8, u8);
|
||||
void audioline_reverb(s32 *soundState, f32 x, f32 y, f32 z);
|
||||
void audioline_reverb(SoundHandle soundHandle, f32 x, f32 y, f32 z);
|
||||
|
||||
s32 audioline_distance(f32 inX, f32 inY, f32 inZ, f32 coords[6], f32 *outX, f32 *outY, f32 *outZ);
|
||||
void audioline_reset(void);
|
||||
|
||||
+10
-10
@@ -116,23 +116,23 @@ extern void alEvtqPostEvent(ALEventQueue *evtq, ALEvent *evt, ALMicroTime delta)
|
||||
|
||||
void sndp_set_global_volume(u32 volume);
|
||||
s32 sndp_get_global_volume(void);
|
||||
void sndp_set_active_sound_limit(s32 numChannels);
|
||||
void sndp_set_active_sound_limit(s32 numSounds);
|
||||
void sndp_init_player(audioMgrConfig *c);
|
||||
ALMicroTime sndp_voice_handler(void *node);
|
||||
void sndp_end(ALSoundState *state);
|
||||
u16 sndp_get_state_counts(u16 *numFree, u16 *numAllocated);
|
||||
void sndp_set_priority(ALSoundState *sndp, u8 priority);
|
||||
ALSoundState *sndp_play(ALBank *bnk, s16 sndIndx, SoundHandle *soundMask);
|
||||
ALSoundState *sndp_play(ALBank *bnk, s16 sndIndx, SoundHandle *handlePtr);
|
||||
void sndp_stop_all_looped(void);
|
||||
void sndp_set_param(SoundHandle soundMask, s16 type, u32 volume);
|
||||
u16 sndp_get_group_volume(u8 channel);
|
||||
void sndp_set_group_volume(u8 channel, u16 volume);
|
||||
void sndp_apply_pitch_slide(ALSoundState *voiceState);
|
||||
void sndp_stop_with_flags(u8 event);
|
||||
void sndp_stop(SoundHandle soundMask);
|
||||
ALSoundState *sndp_allocate(UNUSED ALBank *arg0, ALSound *arg1);
|
||||
void sndp_set_param(SoundHandle soundMask, s16 type, u32 paramValue);
|
||||
u16 sndp_get_group_volume(u8 groupID);
|
||||
void sndp_set_group_volume(u8 groupID, u16 volume);
|
||||
void sndp_apply_pitch_slide(ALSoundState *soundState);
|
||||
void sndp_stop_with_flags(u8 flags);
|
||||
void sndp_stop(SoundHandle state);
|
||||
ALSoundState *sndp_allocate(UNUSED ALBank *arg0, ALSound *sound);
|
||||
void sndp_deallocate(ALSoundState *);
|
||||
ALSoundState *sndp_play_with_priority(ALBank *bnk, s16 sndIndx, u8 priority, SoundHandle *soundMask);
|
||||
ALSoundState *sndp_play_with_priority(ALBank *bank, s16 sndIndx, u8 priority, SoundHandle *handlePtr);
|
||||
void sndp_handle_event(SoundPlayer *sndp, ALSndpEvent *event);
|
||||
|
||||
#endif
|
||||
|
||||
+190
-177
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -435,7 +435,7 @@ void hud_treasure(Object_Racer *racer);
|
||||
void minimap_marker_pos(f32 x, f32 z, f32 angleSin, f32 angleCos, f32 modelAspectRatio);
|
||||
void hud_timer_render(s32 x, s32 y, s32 minutes, s32 seconds, s32 hundredths, s32 smallFont);
|
||||
void hud_draw_model(ObjectModel *objModel);
|
||||
void hud_element_render(Gfx **dList, MatrixS **mtx, Vertex **vtxList, HudElement *arg3);
|
||||
void hud_element_render(Gfx **dList, MatrixS **mtx, Vertex **vtxList, HudElement *hud);
|
||||
void hud_main_time_trial(s32, Object*, s32);
|
||||
void hud_race_finish_multiplayer(Object_Racer *racer, s32 updateRate);
|
||||
void func_800A1E48(Object*, s32 updateRate);
|
||||
|
||||
+2
-3
@@ -47,7 +47,6 @@ void free_lights(void) {
|
||||
/**
|
||||
* Official Name: setupLights
|
||||
*/
|
||||
|
||||
void setup_lights(s32 count) {
|
||||
s32 i;
|
||||
u8 *buffer;
|
||||
@@ -227,9 +226,9 @@ UNUSED void enable_object_light(ObjectLight *light) {
|
||||
UNUSED void toggle_object_light(ObjectLight *light) {
|
||||
if (light->enabled == TRUE) {
|
||||
light->enabled = FALSE;
|
||||
return;
|
||||
} else {
|
||||
light->enabled = TRUE;
|
||||
}
|
||||
light->enabled = TRUE;
|
||||
}
|
||||
|
||||
UNUSED void func_80032248(ObjectLight *light, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6) {
|
||||
|
||||
+1
-1
@@ -98,7 +98,7 @@ void func_80032BAC(ObjectLight *light);
|
||||
s32 get_light_count(void);
|
||||
f32 light_distance_calc(ObjectLight *light);
|
||||
f32 light_direction_calc(ObjectLight *light);
|
||||
ObjectLight *func_80031CAC(Object *light, LevelObjectEntry_RgbaLight *lightEntry);
|
||||
ObjectLight *func_80031CAC(Object *obj, LevelObjectEntry_RgbaLight *lightEntry);
|
||||
ObjectLight *add_object_light(Object *obj, ObjectHeader24 *arg1);
|
||||
void func_80032424(ObjectLight *light, s32 updateRate);
|
||||
|
||||
|
||||
+4
-4
@@ -50,7 +50,7 @@ s32 D_800DC714 = 0; // Currently unknown, might be a different type.
|
||||
Object *gGhostObjStaff = NULL;
|
||||
s8 D_800DC71C = 0;
|
||||
s32 gObjectTexAnim = FALSE;
|
||||
s16 gTimeTrialTime = 0x2A30;
|
||||
s16 gTimeTrialTime = 10800;
|
||||
s16 gTimeTrialVehicle = -1;
|
||||
s16 gTimeTrialCharacter = 0;
|
||||
u8 gHasGhostToSave = FALSE;
|
||||
@@ -59,7 +59,7 @@ u8 gBeatStaffGhost = FALSE;
|
||||
s8 D_800DC73C = 0;
|
||||
s8 D_800DC740 = 0;
|
||||
s8 gSwapLeadPlayer = FALSE;
|
||||
s8 D_800DC748 = 0;
|
||||
s8 D_800DC748 = FALSE;
|
||||
s32 D_800DC74C[2] = { 0, 0 }; // Have a feeling these are both the same array.
|
||||
s32 D_800DC754[2] = { 0, 0 };
|
||||
Object *gShieldEffectObject = NULL;
|
||||
@@ -700,7 +700,7 @@ void clear_object_pointers(void) {
|
||||
void free_all_objects(void) {
|
||||
s32 i, len;
|
||||
timetrial_free_staff_ghost();
|
||||
D_800DC748 = 0;
|
||||
D_800DC748 = FALSE;
|
||||
if (D_800DC71C) {
|
||||
rumble_init(TRUE);
|
||||
}
|
||||
@@ -2333,7 +2333,7 @@ void obj_update(s32 updateRate) {
|
||||
for (i = 0; i < gNumRacers; i++) {
|
||||
update_player_racer((*gRacers)[i], updateRate);
|
||||
}
|
||||
if (get_current_level_race_type() == 0) {
|
||||
if (get_current_level_race_type() == RACETYPE_DEFAULT) {
|
||||
for (i = 0; i < gNumRacers; i++) {
|
||||
racer = &gRacersByPosition[i]->unk64->racer;
|
||||
if (racer->playerIndex != -1) {
|
||||
|
||||
+10
-10
@@ -3056,7 +3056,7 @@ void func_8004F7F4(s32 updateRate, f32 updateRateF, Object *racerObj, Object_Rac
|
||||
update_car_velocity_offground(racerObj, racer, updateRate, updateRateF);
|
||||
}
|
||||
if (racer->unk1C != 0) {
|
||||
sndp_stop((s32) racer->unk1C); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk1C); // type cast required to match
|
||||
racer->unk1C = 0;
|
||||
}
|
||||
if (racer->buoyancy != 0.0f && racer->vehicleIDPrev != VEHICLE_BUBBLER) {
|
||||
@@ -3519,23 +3519,23 @@ void func_80050A28(Object *obj, Object_Racer *racer, s32 updateRate, f32 updateR
|
||||
sound_play_spatial(SOUND_CAR_SLIDE, obj->segment.trans.x_position, obj->segment.trans.y_position,
|
||||
obj->segment.trans.z_position, &racer->unk10);
|
||||
} else {
|
||||
audioline_reverb((s32) racer->unk10, obj->segment.trans.x_position, obj->segment.trans.y_position,
|
||||
audioline_reverb((SoundHandle) (s32) racer->unk10, obj->segment.trans.x_position, obj->segment.trans.y_position,
|
||||
obj->segment.trans.z_position);
|
||||
}
|
||||
if (racer->unk14) {
|
||||
sndp_stop((s32) racer->unk14); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk14); // type cast required to match
|
||||
}
|
||||
} else {
|
||||
if (racer->unk10) {
|
||||
sndp_stop((s32) racer->unk10); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk10); // type cast required to match
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (racer->unk10) {
|
||||
sndp_stop((s32) racer->unk10); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk10); // type cast required to match
|
||||
}
|
||||
if (racer->unk14) {
|
||||
sndp_stop((s32) racer->unk14); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk14); // type cast required to match
|
||||
}
|
||||
}
|
||||
// Velocity of steering input
|
||||
@@ -3714,7 +3714,7 @@ void func_80050A28(Object *obj, Object_Racer *racer, s32 updateRate, f32 updateR
|
||||
sound_play(surfaceType, &racer->unk18);
|
||||
}
|
||||
if (racer->unk18 != 0 && (surfaceType == SOUND_NONE || racer->velocity > -2.0)) {
|
||||
sndp_stop((s32) racer->unk18); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk18); // type cast required to match
|
||||
}
|
||||
// Apply a bobbing effect when on grass and sand.
|
||||
if (racer->velocity < -2.0 && sp68 >= 4) {
|
||||
@@ -4170,13 +4170,13 @@ void update_car_velocity_offground(Object *obj, Object_Racer *racer, s32 updateR
|
||||
racer->x_rotation_vel += (angle >> 3); //!@Delta
|
||||
}
|
||||
if (racer->unk18) {
|
||||
sndp_stop((s32) racer->unk18); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk18); // type cast required to match
|
||||
}
|
||||
if (racer->unk10) {
|
||||
sndp_stop((s32) racer->unk10); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk10); // type cast required to match
|
||||
}
|
||||
if (racer->unk14) {
|
||||
sndp_stop((s32) racer->unk14); // type cast required to match
|
||||
sndp_stop((SoundHandle) (s32) racer->unk14); // type cast required to match
|
||||
}
|
||||
if (racer->unk1FE == 1 || racer->unk1FE == 3) {
|
||||
racer->unk1E8 = racer->steerAngle;
|
||||
|
||||
+9
-10
@@ -11,9 +11,9 @@
|
||||
|
||||
s16 gGfxTaskMesgNums[16] = { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
|
||||
u8 sBGPrimColourrR = 0;
|
||||
u8 sBGPrimColourrG = 0;
|
||||
u8 sBGPrimColourrB = 0;
|
||||
u8 sBGPrimColourR = 0;
|
||||
u8 sBGPrimColourG = 0;
|
||||
u8 sBGPrimColourB = 0;
|
||||
s32 sBackgroundFillColour = GPACK_RGBA5551(0, 0, 0, 1) | (GPACK_RGBA5551(0, 0, 0, 1) << 16);
|
||||
|
||||
u32 gTexBGShiftX = 64;
|
||||
@@ -386,9 +386,9 @@ UNUSED void gfxtask_run_rdp(void *bufPtr, s32 bufSize, UNUSED s32 unused) {
|
||||
* Official name: rcpSetScreenColour
|
||||
*/
|
||||
void bgdraw_primcolour(u8 red, u8 green, u8 blue) {
|
||||
sBGPrimColourrR = red;
|
||||
sBGPrimColourrG = green;
|
||||
sBGPrimColourrB = blue;
|
||||
sBGPrimColourR = red;
|
||||
sBGPrimColourG = green;
|
||||
sBGPrimColourB = blue;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -445,7 +445,7 @@ void bgdraw_render(Gfx **dList, MatrixS **mtx, s32 drawBG) {
|
||||
// fillmode.
|
||||
if (copy_viewport_background_size_to_coords(0, &x1, &y1, &x2, &y2)) {
|
||||
gDPSetCycleType((*dList)++, G_CYC_1CYCLE);
|
||||
gDPSetPrimColor((*dList)++, 0, 0, sBGPrimColourrR, sBGPrimColourrG, sBGPrimColourrB, 255);
|
||||
gDPSetPrimColor((*dList)++, 0, 0, sBGPrimColourR, sBGPrimColourG, sBGPrimColourB, 255);
|
||||
gDPSetCombineMode((*dList)++, G_CC_PRIMITIVE, G_CC_PRIMITIVE);
|
||||
gDPSetRenderMode((*dList)++, G_RM_OPA_SURF, G_RM_OPA_SURF2);
|
||||
gDPFillRectangle((*dList)++, x1, y1, x2, y2);
|
||||
@@ -458,9 +458,8 @@ void bgdraw_render(Gfx **dList, MatrixS **mtx, s32 drawBG) {
|
||||
} else if (gBGDrawFunc.ptr != NULL) {
|
||||
gBGDrawFunc.function(dList, mtx);
|
||||
} else {
|
||||
gDPSetFillColor((*dList)++,
|
||||
(GPACK_RGBA5551(sBGPrimColourrR, sBGPrimColourrG, sBGPrimColourrB, 1) << 16) |
|
||||
GPACK_RGBA5551(sBGPrimColourrR, sBGPrimColourrG, sBGPrimColourrB, 1));
|
||||
gDPSetFillColor((*dList)++, (GPACK_RGBA5551(sBGPrimColourR, sBGPrimColourG, sBGPrimColourB, 1) << 16) |
|
||||
GPACK_RGBA5551(sBGPrimColourR, sBGPrimColourG, sBGPrimColourB, 1));
|
||||
gDPFillRectangle((*dList)++, 0, 0, w - 1, h - 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,9 +43,6 @@ typedef struct DKR_OSTask {
|
||||
|
||||
extern s16 gGfxTaskMesgNums[16];
|
||||
|
||||
extern u8 sBGPrimColourrR;
|
||||
extern u8 sBGPrimColourrG;
|
||||
extern u8 sBGPrimColourrB;
|
||||
extern s32 sBackgroundFillColour;
|
||||
|
||||
extern TextureHeader *gTexBGTex1;
|
||||
|
||||
+1
-1
@@ -216,7 +216,7 @@ void func_800B9C18(s32);
|
||||
void func_800BA8E4(Gfx**, MatrixS**, s32);
|
||||
void func_8002DE30(Object*);
|
||||
void shadow_generate(Object*, s32);
|
||||
void func_8002E904(LevelModelSegment *, s32, s32 bool);
|
||||
void func_8002E904(LevelModelSegment *, s32, s32 arg2);
|
||||
void func_8002EEEC(s32 arg0);
|
||||
void func_8002F2AC(void);
|
||||
void func_8002F440(void);
|
||||
|
||||
+13
-19
@@ -2101,7 +2101,7 @@ Object_64 *func_800BE654(s32 arg0, f32 arg1, f32 arg2) {
|
||||
|
||||
var_t0 = 0x80;
|
||||
object = NULL;
|
||||
if ((D_800E3040 != NULL) && (arg0 >= 0) && (arg0 < gNumberOfLevelSegments)) {
|
||||
if (D_800E3040 != NULL && arg0 >= 0 && arg0 < gNumberOfLevelSegments) {
|
||||
object = mempool_alloc_safe((D_80129FC8.unk20 >> 1) + 0xE, COLOUR_TAG_CYAN);
|
||||
object->effect_box.unk0 = D_800E30D8[arg0].unk6;
|
||||
object->effect_box.unk2 = 0;
|
||||
@@ -2120,20 +2120,14 @@ Object_64 *func_800BE654(s32 arg0, f32 arg1, f32 arg2) {
|
||||
} else {
|
||||
var_t4 = D_80129FC8.unk0 + 1;
|
||||
}
|
||||
// clang-format off
|
||||
arg1 -= D_800E30D8[arg0].unk4;
|
||||
if (arg1 < 0.0f) {
|
||||
arg1 = 0.0f;
|
||||
// clang-format off
|
||||
} else if (arg1 >= D_8012A0A0) { \
|
||||
arg1 = D_8012A0A0 - 1;
|
||||
// clang-format on
|
||||
}
|
||||
if (arg1 < 0.0f) { arg1 = 0.0f; }
|
||||
else if (arg1 >= D_8012A0A0) { arg1 = D_8012A0A0 - 1; }
|
||||
arg2 -= D_800E30D8[arg0].unk8;
|
||||
if (arg2 < 0.0f) {
|
||||
arg2 = 0.0f;
|
||||
} else if (D_8012A0A4 <= arg2) {
|
||||
arg2 = D_8012A0A4 - 1;
|
||||
}
|
||||
if (arg2 < 0.0f) { arg2 = 0.0f; }
|
||||
else if (arg2 >= D_8012A0A4) { arg2 = D_8012A0A4 - 1; }
|
||||
// clang-format on
|
||||
spC4 = arg1 / var_f22;
|
||||
spC0 = arg2 / var_f20;
|
||||
object->effect_box.unk8 = spC4;
|
||||
@@ -2151,12 +2145,12 @@ Object_64 *func_800BE654(s32 arg0, f32 arg1, f32 arg2) {
|
||||
var_v0 -= D_80129FC8.unk4;
|
||||
}
|
||||
|
||||
var_t1 = 0;
|
||||
if ((arg2 != var_f20) && (arg1 < (((var_f20 - arg2) / var_f20) * var_f22))) {
|
||||
var_t1 = 1;
|
||||
var_t1 = FALSE;
|
||||
if (arg2 != var_f20 && arg1 < (((var_f20 - arg2) / var_f20) * var_f22)) {
|
||||
var_t1 = TRUE;
|
||||
}
|
||||
|
||||
if (var_t1 != 0) {
|
||||
if (var_t1 != FALSE) {
|
||||
sp80[0] = (var_v0 * D_80129FC8.unk4) + var_a0;
|
||||
|
||||
if ((var_v0 + 1) >= D_80129FC8.unk4) {
|
||||
@@ -2225,7 +2219,7 @@ Object_64 *func_800BE654(s32 arg0, f32 arg1, f32 arg2) {
|
||||
temp_f = (D_800E3040[sp68[0]] + D_800E3040[sp68[1]]) * sp50[0];
|
||||
var_f12 = (D_800E3040[sp68[2]] + D_800E3040[sp68[3]]) * sp50[1];
|
||||
var_f0 = (D_800E3040[sp68[4]] + D_800E3040[sp68[5]]) * sp50[2];
|
||||
if (var_t1 != 0) {
|
||||
if (var_t1 != FALSE) {
|
||||
var_f2 = (temp_f - var_f0) * var_f20;
|
||||
var_f14 = (temp_f - var_f12) * var_f22;
|
||||
} else {
|
||||
@@ -2239,7 +2233,7 @@ Object_64 *func_800BE654(s32 arg0, f32 arg1, f32 arg2) {
|
||||
var_f12 = var_f18 / var_f0;
|
||||
var_v0_2 = -(s32) (((var_f2 * arg1) + (var_f14 * arg2) - ((spE4 * var_f2) + (temp_f * var_f12))) * 16.0f /
|
||||
var_f12);
|
||||
if ((var_v0_2 >= var_t0) || (var_v0_2 < -var_t0)) {
|
||||
if (var_v0_2 >= var_t0 || var_v0_2 < -var_t0) {
|
||||
var_v1 = 0;
|
||||
do {
|
||||
var_t0 += var_t0;
|
||||
|
||||
@@ -2398,9 +2398,9 @@ gRumbleEnable = 0x800DFE30;
|
||||
|
||||
// rcp.c .data
|
||||
gGfxTaskMesgNums = 0x800DFE40;
|
||||
sBGPrimColourrR = 0x800DFE60;
|
||||
sBGPrimColourrG = 0x800DFE64;
|
||||
sBGPrimColourrB = 0x800DFE68;
|
||||
sBGPrimColourR = 0x800DFE60;
|
||||
sBGPrimColourG = 0x800DFE64;
|
||||
sBGPrimColourB = 0x800DFE68;
|
||||
sBackgroundFillColour = 0x800DFE6C;
|
||||
gTexBGShiftX = 0x800DFE70;
|
||||
gTexBGTex1 = 0x800DFE74;
|
||||
@@ -2758,6 +2758,15 @@ gHudLapColours = 0x800E423C;
|
||||
gHudIndicatorTimer = 0x800E4248;
|
||||
gHudMinimapColours = 0x800E424C;
|
||||
gHudColour = 0x800E42C4;
|
||||
gHudTimeTrialJp_Ghost = 0x800E42C8;
|
||||
gHudTimeTrialJp_Save = 0x800E42D4;
|
||||
gHudTimeTrialJp_Impossible = 0x800E42DC;
|
||||
gHudTimeTrialJp_FullBlank = 0x800E42E8;
|
||||
gHudTimeTrialJp_FullPak = 0x800E42EC;
|
||||
gHudTimeTrialJp_Full = 0x800E42F4;
|
||||
gHudTimeTrialJp_DamagedBlank = 0x800E42FC;
|
||||
gHudTimeTrialJp_DamagedPak = 0x800E4300;
|
||||
gHudTimeTrialJp_Defective = 0x800E4308;
|
||||
sRecordVel = 0x800E4314;
|
||||
D_800E283C = 0x800E4318;
|
||||
|
||||
|
||||
@@ -2257,9 +2257,9 @@ gN64FontCodes = 0x800DE4D4;
|
||||
sControllerPaksPresent = 0x800DE518;
|
||||
gRumbleKillTimer = 0x800DE51C;
|
||||
gGfxTaskMesgNums = 0x800DE520;
|
||||
sBGPrimColourrR = 0x800DE540;
|
||||
sBGPrimColourrG = 0x800DE544;
|
||||
sBGPrimColourrB = 0x800DE548;
|
||||
sBGPrimColourR = 0x800DE540;
|
||||
sBGPrimColourG = 0x800DE544;
|
||||
sBGPrimColourB = 0x800DE548;
|
||||
sBackgroundFillColour = 0x800DE54C;
|
||||
gTexBGShiftX = 0x800DE550;
|
||||
gTexBGTex1 = 0x800DE554;
|
||||
|
||||
@@ -2185,9 +2185,9 @@ sControllerPaksPresent = 0x800DEA88;
|
||||
gRumbleKillTimer = 0x800DEA8C;
|
||||
gRumbleEnable = 0x800DEA90; // has a diff from v1 - NEW DATA SYMBOL
|
||||
gGfxTaskMesgNums = 0x800DEAA0;
|
||||
sBGPrimColourrR = 0x800DEAC0;
|
||||
sBGPrimColourrG = 0x800DEAC4;
|
||||
sBGPrimColourrB = 0x800DEAC8;
|
||||
sBGPrimColourR = 0x800DEAC0;
|
||||
sBGPrimColourG = 0x800DEAC4;
|
||||
sBGPrimColourB = 0x800DEAC8;
|
||||
sBackgroundFillColour = 0x800DEACC;
|
||||
gTexBGShiftX = 0x800DEAD0;
|
||||
gTexBGTex1 = 0x800DEAD4;
|
||||
|
||||
@@ -2392,9 +2392,9 @@ gRumbleKillTimer = 0x800DE48C;
|
||||
|
||||
// rcp.c .data
|
||||
gGfxTaskMesgNums = 0x800DE490;
|
||||
sBGPrimColourrR = 0x800DE4B0;
|
||||
sBGPrimColourrG = 0x800DE4B4;
|
||||
sBGPrimColourrB = 0x800DE4B8;
|
||||
sBGPrimColourR = 0x800DE4B0;
|
||||
sBGPrimColourG = 0x800DE4B4;
|
||||
sBGPrimColourB = 0x800DE4B8;
|
||||
sBackgroundFillColour = 0x800DE4BC;
|
||||
gTexBGShiftX = 0x800DE4C0;
|
||||
gTexBGTex1 = 0x800DE4C4;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user