mirror of
https://github.com/n64decomp/mk64
synced 2026-07-30 15:53:22 -04:00
Various cleanup (#410)
This commit is contained in:
+13
-144
@@ -564,29 +564,9 @@ void update_obj_kiwano_fruit(struct KiwanoFruit *fruit) {
|
||||
}
|
||||
}
|
||||
|
||||
void update_obj_paddle_wheel(struct PaddleWheelBoat *boat) {
|
||||
boat->wheelRot += 0x38E;
|
||||
}
|
||||
#include "actors/boat.inc.c"
|
||||
|
||||
// wheels
|
||||
void update_obj_train_engine(struct TrainCar *arg0) {
|
||||
arg0->wheelRot -= 0x666;
|
||||
|
||||
if (arg0->unk_08 != 0.0f) {
|
||||
arg0->unk_08 = 0.0f;
|
||||
func_800C9D80(arg0->pos, arg0->velocity, 0x51018000);
|
||||
}
|
||||
}
|
||||
|
||||
// wheels
|
||||
void update_obj_train_car1(struct TrainCar *tender) {
|
||||
tender->wheelRot -= 0x4FA;
|
||||
}
|
||||
|
||||
// wheels
|
||||
void update_obj_train_car2(struct TrainCar *arg0) {
|
||||
arg0->wheelRot -= 0x666;
|
||||
}
|
||||
#include "actors/train.inc.c"
|
||||
|
||||
void update_obj_piranha_plant(struct PiranhaPlant *arg0) {
|
||||
if ((arg0->flags & 0x800) == 0) {
|
||||
@@ -1981,121 +1961,10 @@ void place_palm_trees(struct ActorSpawnData *spawnData) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_8029CF0C(struct ActorSpawnData *spawnData, struct FallingRock *rock) {
|
||||
s32 segment = SEGMENT_NUMBER2(spawnData);
|
||||
s32 offset = SEGMENT_OFFSET(spawnData);
|
||||
struct ActorSpawnData *temp_v0 = (struct ActorSpawnData *) VIRTUAL_TO_PHYSICAL2(gSegmentTable[segment] + offset);
|
||||
Vec3s sp24 = {60, 120, 180};
|
||||
temp_v0 += rock->unk_06;
|
||||
rock->respawnTimer = sp24[rock->unk_06]; // * 2
|
||||
rock->pos[0] = (f32) temp_v0->pos[0] * gCourseDirection;
|
||||
rock->pos[1] = (f32) temp_v0->pos[1] + 10.0f;
|
||||
rock->pos[2] = (f32) temp_v0->pos[2];
|
||||
vec3f_set(rock->velocity, 0, 0, 0);
|
||||
vec3s_set(rock->rot, 0, 0, 0);
|
||||
}
|
||||
#include "actors/falling_rocks.inc.c"
|
||||
|
||||
void place_falling_rocks(struct ActorSpawnData *spawnData) {
|
||||
s32 addr = SEGMENT_NUMBER2(spawnData);
|
||||
s32 offset = SEGMENT_OFFSET(spawnData);
|
||||
// Casting this to prevent warning does not work.
|
||||
struct ActorSpawnData *temp_s0 = (struct ActorSpawnData *) VIRTUAL_TO_PHYSICAL2(gSegmentTable[addr] + offset);
|
||||
struct FallingRock *temp_v1;
|
||||
Vec3f startingPos;
|
||||
Vec3f startingVelocity;
|
||||
Vec3s startingRot;
|
||||
s16 temp;
|
||||
|
||||
while (temp_s0->pos[0] != -0x8000) {
|
||||
startingPos[0] = temp_s0->pos[0] * gCourseDirection;
|
||||
startingPos[1] = temp_s0->pos[1] + 10.0f;
|
||||
startingPos[2] = temp_s0->pos[2];
|
||||
vec3f_set(startingVelocity, 0, 0, 0);
|
||||
vec3s_set(startingRot, 0, 0, 0);
|
||||
temp = addActorToEmptySlot(startingPos, startingRot, startingVelocity, ACTOR_FALLING_ROCK);
|
||||
temp_v1 = (struct FallingRock *) &gActorList[temp];
|
||||
|
||||
temp_v1->unk_06 = temp_s0->someId;
|
||||
func_802AAAAC((Collision *) &temp_v1->unk30);
|
||||
temp_s0++;
|
||||
}
|
||||
}
|
||||
|
||||
void update_obj_falling_rocks(struct FallingRock *rock) {
|
||||
Vec3f unkVec;
|
||||
f32 pad0;
|
||||
f32 pad1;
|
||||
|
||||
if (rock->respawnTimer != 0) {
|
||||
rock->respawnTimer -= 1;
|
||||
return;
|
||||
}
|
||||
if (rock->pos[1] < D_8015F8E4) {
|
||||
func_8029CF0C(d_course_choco_mountain_falling_rock_spawns, rock);
|
||||
}
|
||||
rock->rot[0] += (s16) ((rock->velocity[2] * 5461.0f) / 20.0f);
|
||||
rock->rot[2] += (s16) ((rock->velocity[0] * 5461.0f) / 20.0f);
|
||||
rock->velocity[1] -= 0.1;
|
||||
if (rock->velocity[1] < (-2.0f)) {
|
||||
rock->velocity[1] = -2.0f;
|
||||
}
|
||||
rock->pos[0] += rock->velocity[0];
|
||||
rock->pos[1] += rock->velocity[1];
|
||||
rock->pos[2] += rock->velocity[2];
|
||||
pad1 = rock->velocity[1];
|
||||
func_802ADDC8(&rock->unk30, 10.0f, rock->pos[0], rock->pos[1], rock->pos[2]);
|
||||
pad0 = rock->unk30.unk3C[2];
|
||||
if (pad0 < 0.0f) {
|
||||
unkVec[0] = -rock->unk30.unk60[0];
|
||||
unkVec[1] = -rock->unk30.unk60[1];
|
||||
unkVec[2] = -rock->unk30.unk60[2];
|
||||
rock->pos[0] += unkVec[0] * rock->unk30.unk3C[2];
|
||||
rock->pos[1] += unkVec[1] * rock->unk30.unk3C[2];
|
||||
rock->pos[2] += unkVec[2] * rock->unk30.unk3C[2];
|
||||
func_802AC114(unkVec, pad0, rock->velocity, 2.0f);
|
||||
rock->velocity[1] = -1.2f * pad1;
|
||||
func_800C98B8(rock->pos, rock->velocity, 0x1900800FU);
|
||||
}
|
||||
pad0 = rock->unk30.unk3C[0];
|
||||
if (pad0 < 0.0f) {
|
||||
unkVec[1] = -rock->unk30.unk48[1];
|
||||
if (unkVec[1] == 0.0f) {
|
||||
rock->velocity[1] *= -1.2f;
|
||||
return;
|
||||
}
|
||||
else {
|
||||
unkVec[0] = -rock->unk30.unk48[0];
|
||||
unkVec[2] = -rock->unk30.unk48[2];
|
||||
rock->pos[0] += unkVec[0] * rock->unk30.unk3C[0];
|
||||
rock->pos[1] += unkVec[1] * rock->unk30.unk3C[0];
|
||||
rock->pos[2] += unkVec[2] * rock->unk30.unk3C[0];
|
||||
func_802AC114(unkVec, pad0, rock->velocity, 2.0f);
|
||||
rock->velocity[1] = -1.2f * pad1;
|
||||
func_800C98B8(rock->pos, rock->velocity, 0x1900800FU);
|
||||
}
|
||||
}
|
||||
pad0 = rock->unk30.unk3C[1];
|
||||
if (pad0 < 0.0f) {
|
||||
unkVec[1] = -rock->unk30.unk54[1];
|
||||
if (unkVec[1] == 0.0f) {
|
||||
rock->velocity[1] *= -1.2f;
|
||||
}
|
||||
else {
|
||||
unkVec[0] = -rock->unk30.unk54[0];
|
||||
unkVec[2] = -rock->unk30.unk54[2];
|
||||
rock->pos[0] += unkVec[0] * rock->unk30.unk3C[1];
|
||||
rock->pos[1] += unkVec[1] * rock->unk30.unk3C[1];
|
||||
rock->pos[2] += unkVec[2] * rock->unk30.unk3C[1];
|
||||
pad1 = rock->velocity[1];
|
||||
func_802AC114(unkVec, pad0, rock->velocity, 2.0f);
|
||||
rock->velocity[1] = -1.2f * pad1;
|
||||
func_800C98B8(rock->pos, rock->velocity, 0x1900800FU);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// This function may be better named "init_trees_cacti_shrubs"
|
||||
void place_segment_06(struct ActorSpawnData *arg0) {
|
||||
// Trees, cacti, shrubs, etc.
|
||||
void spawn_foliage(struct ActorSpawnData *arg0) {
|
||||
UNUSED s32 pad[4];
|
||||
Vec3f position;
|
||||
Vec3f velocity;
|
||||
@@ -2269,7 +2138,7 @@ void place_course_actors(void) {
|
||||
gNumPermanentActors = 0;
|
||||
switch (gCurrentCourseId) {
|
||||
case COURSE_MARIO_RACEWAY:
|
||||
place_segment_06(d_course_mario_raceway_tree_spawns);
|
||||
spawn_foliage(d_course_mario_raceway_tree_spawns);
|
||||
place_piranha_plants(d_course_mario_raceway_piranha_plant_spawns);
|
||||
place_all_item_boxes(d_course_mario_raceway_item_box_spawns);
|
||||
vec3f_set(position, 150.0f, 40.0f, -1300.0f);
|
||||
@@ -2285,21 +2154,21 @@ void place_course_actors(void) {
|
||||
place_falling_rocks(d_course_choco_mountain_falling_rock_spawns);
|
||||
break;
|
||||
case COURSE_BOWSER_CASTLE:
|
||||
place_segment_06(d_course_bowsers_castle_tree_spawn);
|
||||
spawn_foliage(d_course_bowsers_castle_tree_spawn);
|
||||
place_all_item_boxes(d_course_bowsers_castle_item_box_spawns);
|
||||
break;
|
||||
case COURSE_BANSHEE_BOARDWALK:
|
||||
place_all_item_boxes(d_course_banshee_boardwalk_item_box_spawns);
|
||||
break;
|
||||
case COURSE_YOSHI_VALLEY:
|
||||
place_segment_06(d_course_yoshi_valley_tree_spawn);
|
||||
spawn_foliage(d_course_yoshi_valley_tree_spawn);
|
||||
place_all_item_boxes(d_course_yoshi_valley_item_box_spawns);
|
||||
vec3f_set(position, -2300.0f, 0.0f, 634.0f);
|
||||
position[0] *= gCourseDirection;
|
||||
addActorToEmptySlot(position, rotation, velocity, ACTOR_YOSHI_VALLEY_EGG);
|
||||
break;
|
||||
case COURSE_FRAPPE_SNOWLAND:
|
||||
place_segment_06(d_course_frappe_snowland_tree_spawns);
|
||||
spawn_foliage(d_course_frappe_snowland_tree_spawns);
|
||||
place_all_item_boxes(d_course_frappe_snowland_item_box_spawns);
|
||||
break;
|
||||
case COURSE_KOOPA_BEACH:
|
||||
@@ -2308,17 +2177,17 @@ void place_course_actors(void) {
|
||||
place_palm_trees(d_course_koopa_troopa_beach_tree_spawn);
|
||||
break;
|
||||
case COURSE_ROYAL_RACEWAY:
|
||||
place_segment_06(d_course_royal_raceway_tree_spawn);
|
||||
spawn_foliage(d_course_royal_raceway_tree_spawn);
|
||||
place_all_item_boxes(d_course_royal_raceway_item_box_spawns);
|
||||
place_piranha_plants(d_course_royal_raceway_piranha_plant_spawn);
|
||||
break;
|
||||
case COURSE_LUIGI_RACEWAY:
|
||||
place_segment_06(d_course_luigi_raceway_tree_spawn);
|
||||
spawn_foliage(d_course_luigi_raceway_tree_spawn);
|
||||
place_all_item_boxes(d_course_luigi_raceway_item_box_spawns);
|
||||
break;
|
||||
case COURSE_MOO_MOO_FARM:
|
||||
if (gPlayerCountSelection1 != 4) {
|
||||
place_segment_06(d_course_moo_moo_farm_tree_spawn);
|
||||
spawn_foliage(d_course_moo_moo_farm_tree_spawn);
|
||||
}
|
||||
place_all_item_boxes(d_course_moo_moo_farm_item_box_spawns);
|
||||
break;
|
||||
@@ -2326,7 +2195,7 @@ void place_course_actors(void) {
|
||||
place_all_item_boxes(d_course_toads_turnpike_item_box_spawns);
|
||||
break;
|
||||
case COURSE_KALAMARI_DESERT:
|
||||
place_segment_06(d_course_kalimari_desert_cactus_spawn);
|
||||
spawn_foliage(d_course_kalimari_desert_cactus_spawn);
|
||||
place_all_item_boxes(d_course_kalimari_desert_item_box_spawns);
|
||||
vec3f_set(position, -1680.0f, 2.0f, 35.0f);
|
||||
position[0] *= gCourseDirection;
|
||||
|
||||
+1
-1
@@ -72,7 +72,7 @@ void place_palm_trees(struct ActorSpawnData*);
|
||||
void func_8029CF0C(struct ActorSpawnData*, struct FallingRock*);
|
||||
void place_falling_rocks(struct ActorSpawnData*);
|
||||
void update_obj_falling_rocks(struct FallingRock*);
|
||||
void place_segment_06(struct ActorSpawnData*);
|
||||
void spawn_foliage(struct ActorSpawnData*);
|
||||
void place_all_item_boxes(struct ActorSpawnData*);
|
||||
void init_kiwano_fruit(void);
|
||||
void destroy_all_actors(void);
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
void update_obj_paddle_wheel(struct PaddleWheelBoat *boat) {
|
||||
boat->wheelRot += 0x38E;
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
void func_8029CF0C(struct ActorSpawnData *spawnData, struct FallingRock *rock) {
|
||||
s32 segment = SEGMENT_NUMBER2(spawnData);
|
||||
s32 offset = SEGMENT_OFFSET(spawnData);
|
||||
struct ActorSpawnData *temp_v0 = (struct ActorSpawnData *) VIRTUAL_TO_PHYSICAL2(gSegmentTable[segment] + offset);
|
||||
Vec3s sp24 = {60, 120, 180};
|
||||
temp_v0 += rock->unk_06;
|
||||
rock->respawnTimer = sp24[rock->unk_06]; // * 2
|
||||
rock->pos[0] = (f32) temp_v0->pos[0] * gCourseDirection;
|
||||
rock->pos[1] = (f32) temp_v0->pos[1] + 10.0f;
|
||||
rock->pos[2] = (f32) temp_v0->pos[2];
|
||||
vec3f_set(rock->velocity, 0, 0, 0);
|
||||
vec3s_set(rock->rot, 0, 0, 0);
|
||||
}
|
||||
|
||||
void place_falling_rocks(struct ActorSpawnData *spawnData) {
|
||||
s32 addr = SEGMENT_NUMBER2(spawnData);
|
||||
s32 offset = SEGMENT_OFFSET(spawnData);
|
||||
// Casting this to prevent warning does not work.
|
||||
struct ActorSpawnData *temp_s0 = (struct ActorSpawnData *) VIRTUAL_TO_PHYSICAL2(gSegmentTable[addr] + offset);
|
||||
struct FallingRock *temp_v1;
|
||||
Vec3f startingPos;
|
||||
Vec3f startingVelocity;
|
||||
Vec3s startingRot;
|
||||
s16 temp;
|
||||
|
||||
while (temp_s0->pos[0] != -0x8000) {
|
||||
startingPos[0] = temp_s0->pos[0] * gCourseDirection;
|
||||
startingPos[1] = temp_s0->pos[1] + 10.0f;
|
||||
startingPos[2] = temp_s0->pos[2];
|
||||
vec3f_set(startingVelocity, 0, 0, 0);
|
||||
vec3s_set(startingRot, 0, 0, 0);
|
||||
temp = addActorToEmptySlot(startingPos, startingRot, startingVelocity, ACTOR_FALLING_ROCK);
|
||||
temp_v1 = (struct FallingRock *) &gActorList[temp];
|
||||
|
||||
temp_v1->unk_06 = temp_s0->someId;
|
||||
func_802AAAAC((Collision *) &temp_v1->unk30);
|
||||
temp_s0++;
|
||||
}
|
||||
}
|
||||
|
||||
void update_obj_falling_rocks(struct FallingRock *rock) {
|
||||
Vec3f unkVec;
|
||||
f32 pad0;
|
||||
f32 pad1;
|
||||
|
||||
if (rock->respawnTimer != 0) {
|
||||
rock->respawnTimer -= 1;
|
||||
return;
|
||||
}
|
||||
if (rock->pos[1] < D_8015F8E4) {
|
||||
func_8029CF0C(d_course_choco_mountain_falling_rock_spawns, rock);
|
||||
}
|
||||
rock->rot[0] += (s16) ((rock->velocity[2] * 5461.0f) / 20.0f);
|
||||
rock->rot[2] += (s16) ((rock->velocity[0] * 5461.0f) / 20.0f);
|
||||
rock->velocity[1] -= 0.1;
|
||||
if (rock->velocity[1] < (-2.0f)) {
|
||||
rock->velocity[1] = -2.0f;
|
||||
}
|
||||
rock->pos[0] += rock->velocity[0];
|
||||
rock->pos[1] += rock->velocity[1];
|
||||
rock->pos[2] += rock->velocity[2];
|
||||
pad1 = rock->velocity[1];
|
||||
func_802ADDC8(&rock->unk30, 10.0f, rock->pos[0], rock->pos[1], rock->pos[2]);
|
||||
pad0 = rock->unk30.unk3C[2];
|
||||
if (pad0 < 0.0f) {
|
||||
unkVec[0] = -rock->unk30.unk60[0];
|
||||
unkVec[1] = -rock->unk30.unk60[1];
|
||||
unkVec[2] = -rock->unk30.unk60[2];
|
||||
rock->pos[0] += unkVec[0] * rock->unk30.unk3C[2];
|
||||
rock->pos[1] += unkVec[1] * rock->unk30.unk3C[2];
|
||||
rock->pos[2] += unkVec[2] * rock->unk30.unk3C[2];
|
||||
func_802AC114(unkVec, pad0, rock->velocity, 2.0f);
|
||||
rock->velocity[1] = -1.2f * pad1;
|
||||
func_800C98B8(rock->pos, rock->velocity, 0x1900800FU);
|
||||
}
|
||||
pad0 = rock->unk30.unk3C[0];
|
||||
if (pad0 < 0.0f) {
|
||||
unkVec[1] = -rock->unk30.unk48[1];
|
||||
if (unkVec[1] == 0.0f) {
|
||||
rock->velocity[1] *= -1.2f;
|
||||
return;
|
||||
}
|
||||
else {
|
||||
unkVec[0] = -rock->unk30.unk48[0];
|
||||
unkVec[2] = -rock->unk30.unk48[2];
|
||||
rock->pos[0] += unkVec[0] * rock->unk30.unk3C[0];
|
||||
rock->pos[1] += unkVec[1] * rock->unk30.unk3C[0];
|
||||
rock->pos[2] += unkVec[2] * rock->unk30.unk3C[0];
|
||||
func_802AC114(unkVec, pad0, rock->velocity, 2.0f);
|
||||
rock->velocity[1] = -1.2f * pad1;
|
||||
func_800C98B8(rock->pos, rock->velocity, 0x1900800FU);
|
||||
}
|
||||
}
|
||||
pad0 = rock->unk30.unk3C[1];
|
||||
if (pad0 < 0.0f) {
|
||||
unkVec[1] = -rock->unk30.unk54[1];
|
||||
if (unkVec[1] == 0.0f) {
|
||||
rock->velocity[1] *= -1.2f;
|
||||
}
|
||||
else {
|
||||
unkVec[0] = -rock->unk30.unk54[0];
|
||||
unkVec[2] = -rock->unk30.unk54[2];
|
||||
rock->pos[0] += unkVec[0] * rock->unk30.unk3C[1];
|
||||
rock->pos[1] += unkVec[1] * rock->unk30.unk3C[1];
|
||||
rock->pos[2] += unkVec[2] * rock->unk30.unk3C[1];
|
||||
pad1 = rock->velocity[1];
|
||||
func_802AC114(unkVec, pad0, rock->velocity, 2.0f);
|
||||
rock->velocity[1] = -1.2f * pad1;
|
||||
func_800C98B8(rock->pos, rock->velocity, 0x1900800FU);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
// wheels
|
||||
void update_obj_train_engine(struct TrainCar *arg0) {
|
||||
arg0->wheelRot -= 0x666;
|
||||
|
||||
if (arg0->unk_08 != 0.0f) {
|
||||
arg0->unk_08 = 0.0f;
|
||||
func_800C9D80(arg0->pos, arg0->velocity, 0x51018000);
|
||||
}
|
||||
}
|
||||
|
||||
// wheels
|
||||
void update_obj_train_car1(struct TrainCar *tender) {
|
||||
tender->wheelRot -= 0x4FA;
|
||||
}
|
||||
|
||||
// wheels
|
||||
void update_obj_train_car2(struct TrainCar *arg0) {
|
||||
arg0->wheelRot -= 0x666;
|
||||
}
|
||||
@@ -10,6 +10,12 @@
|
||||
#include <sounds.h>
|
||||
#include "port_eu.h"
|
||||
|
||||
/** bss
|
||||
s8 D_8018EF10;
|
||||
|
||||
*/
|
||||
|
||||
|
||||
// Requires void in the argument list to match properly.
|
||||
void func_800C13F0(void) {
|
||||
}
|
||||
|
||||
@@ -352,7 +352,7 @@ void func_80282C40(struct struct_80283430 *arg0, struct struct_80282C40 *arg1, s
|
||||
|
||||
j++;
|
||||
goto dummy_label_888430;
|
||||
while(1) {
|
||||
while(TRUE) {
|
||||
do {
|
||||
|
||||
dummy_label_888430: ;
|
||||
|
||||
+2
-2
@@ -305,7 +305,7 @@ void func_80003040(void) {
|
||||
switch (gCurrentCourseId) {
|
||||
case COURSE_MARIO_RACEWAY:
|
||||
dma_textures(D_0F04F45C, 0x35B, 0x800);
|
||||
place_segment_06(d_course_mario_raceway_tree_spawns);
|
||||
spawn_foliage(d_course_mario_raceway_tree_spawns);
|
||||
break;
|
||||
case COURSE_BOWSER_CASTLE:
|
||||
find_vtx_and_set_colours(0x7001350, 0x32, 0, 0, 0);
|
||||
@@ -331,7 +331,7 @@ void func_80003040(void) {
|
||||
dma_textures(D_0F0532F8, 0x400, 0x800);
|
||||
dma_textures(D_0F05363C, 0x400, 0x800);
|
||||
dma_textures(D_0F053950, 0x400, 0x800);
|
||||
place_segment_06(d_course_moo_moo_farm_tree_spawn);
|
||||
spawn_foliage(d_course_moo_moo_farm_tree_spawn);
|
||||
break;
|
||||
case COURSE_SHERBET_LAND:
|
||||
find_vtx_and_set_colours(0x7001EB8, -0x4C, 0xFF, 0xFF, 0xFF);
|
||||
|
||||
@@ -20,6 +20,11 @@
|
||||
#include "bomb_kart.h"
|
||||
#include "courses/all_course_data.h"
|
||||
|
||||
|
||||
//Collision D_80162E70;
|
||||
//s16 D_80162EB0; LIkely a float.
|
||||
|
||||
|
||||
// Strings, presented by google translate!
|
||||
// Note that these are EUC-JP encoded, see:
|
||||
// https://en.wikipedia.org/wiki/Extended_Unix_Code#EUC-JP
|
||||
@@ -5789,6 +5794,7 @@ void func_800122D8(void) {
|
||||
//generated by m2c commit 8267401fa4ef7a38942dcca43353cc1bcc6efabc
|
||||
extern s16 D_80162EB0;
|
||||
|
||||
// arg1 struct tbd
|
||||
void func_80012780(TrainCarStuff *trainCar, void *arg1, s16 arg2) {
|
||||
trainCar->position[0] = (f32) arg1->unk0;
|
||||
trainCar->position[1] = (f32) D_80162EB0;
|
||||
|
||||
+1
-1
@@ -5121,7 +5121,7 @@ s32 func_8009A374(MkAnimation *arg0) {
|
||||
while (D_8018DEE0[var_a1].visible != 0) {
|
||||
var_a1++;
|
||||
if (var_a1 >= 0x10) {
|
||||
while(1){}
|
||||
while(TRUE);
|
||||
}
|
||||
}
|
||||
temp_v1 = &D_8018DEE0[var_a1];
|
||||
|
||||
+7
-1
@@ -505,7 +505,13 @@ void setup_game_memory(void) {
|
||||
init_seg_8028DF00();
|
||||
gHeapEndPtr = SEG_8028DF00;
|
||||
set_segment_base_addr(0, (void *) SEG_START);
|
||||
initialize_memory_pool((uintptr_t) &D_801978D0, (uintptr_t) 0x80242F00);
|
||||
// Memory pool size of 0xAB630
|
||||
// todo: is it possible to shift this value?
|
||||
#ifdef AVOID_UB
|
||||
initialize_memory_pool((uintptr_t) &_mainSegNoloadEnd, (uintptr_t) (&_mainSegNoloadEnd[0] + 0xAB630));
|
||||
#else
|
||||
initialize_memory_pool((uintptr_t) &_mainSegNoloadEnd, (uintptr_t) 0x80242F00);
|
||||
#endif
|
||||
func_80000BEC();
|
||||
osInvalDCache((void *) SEG_802BA370, 0x5810);
|
||||
osPiStartDma(&gDmaIoMesg, 0, 0, (uintptr_t) &_data_802BA370SegmentRomStart, (void *) SEG_802BA370, 0x5810, &gDmaMesgQueue);
|
||||
|
||||
+1
-1
@@ -974,7 +974,7 @@ void displaylist_unpack(uintptr_t *data, uintptr_t finalDisplaylistOffset, u32 a
|
||||
sGfxSeekPosition = 0;
|
||||
sPackedSeekPosition = 0;
|
||||
|
||||
while(1) {
|
||||
while(TRUE) {
|
||||
|
||||
// Seek to the next byte
|
||||
opcode = packed_dl[sPackedSeekPosition++];
|
||||
|
||||
@@ -61,6 +61,8 @@ s32 __osSpSetPc(void *);
|
||||
s32 __osSpDeviceBusy(void);
|
||||
s32 __osSiDeviceBusy(void);
|
||||
s32 __osSpRawStartDma(u32 dir, void *sp_ptr, void *dram_ptr, size_t size);
|
||||
void __osSetHWIntrRoutine(OSHWIntr interrupt, s32 (*handler)(void));
|
||||
s32 __osLeoInterrupt();
|
||||
void __osViInit(void);
|
||||
OSViContext *__osViGetCurrentContext(void);
|
||||
OSViContext *__osViGetCurrentContext2(void);
|
||||
|
||||
@@ -11,8 +11,7 @@ typedef struct {
|
||||
u32 instr03;
|
||||
} exceptionPreamble;
|
||||
|
||||
extern u32 D_80194040; // maybe initialized?
|
||||
extern s32 __osLeoInterrupt;
|
||||
u32 D_80194040;
|
||||
|
||||
u64 osClockRate = 62500000;
|
||||
u32 D_800EA5E8 = 0;
|
||||
|
||||
Reference in New Issue
Block a user