Match the last 2 data files (#574)

* Match the last 2 data files

Signed-off-by: Taggerung <tyler.taggerung@email.com>

* Update one of the file names based on comments

Signed-off-by: Taggerung <tyler.taggerung@email.com>

* Fix bad path in onomatopoeia asset file

Signed-off-by: Taggerung <tyler.taggerung@email.com>

---------

Signed-off-by: Taggerung <tyler.taggerung@email.com>
Co-authored-by: Taggerung <tyler.taggerung@email.com>
This commit is contained in:
Tyler McGavran 2024-02-28 10:11:38 -05:00 committed by GitHub
parent 4fdbb41589
commit 1aa6824d33
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
25 changed files with 2018 additions and 1432 deletions

View File

@ -15,6 +15,7 @@ $(ONOMATOPOEIA_DIR)/gTextureBalloon2.png
ONOMATOPOEIA_EXPORT_SENTINEL := $(ONOMATOPOEIA_DIR)/.export
$(BUILD_DIR)/$(DATA_DIR)/other_textures.o: $(ONOMATOPOEIA_PNG:%.png=%.mio0)
$(BUILD_DIR)/src/data/some_data.o: $(ONOMATOPOEIA_PALETTE:%.png=%.inc.c)
$(ONOMATOPOEIA_PNG:%.png=%.mio0): %.mio0 : %.bin
$(MIO0TOOL) -c $< $@

View File

@ -306,8 +306,10 @@ extern Gfx d_course_koopa_troopa_beach_dl_AB88[];
extern Gfx d_course_koopa_troopa_beach_dl_AC10[];
extern Gfx d_course_koopa_troopa_beach_dl_AC68[];
extern Gfx d_course_koopa_troopa_beach_dl_AD40[];
extern TrackWaypoint d_course_koopa_troopa_beach_unknown_waypoints[];
extern TrackWaypoint d_course_koopa_troopa_beach_track_waypoints[];
extern TrackWaypoint d_course_koopa_troopa_beach_unknown_waypoints0[];
extern TrackWaypoint d_course_koopa_troopa_beach_unknown_waypoints1[];
extern TrackWaypoint d_course_koopa_troopa_beach_track_waypoints0[];
extern TrackWaypoint d_course_koopa_troopa_beach_track_waypoints1[];
extern u8 d_course_koopa_troopa_beach_crab_tlut[];
extern u8 d_course_koopa_troopa_beach_crab_frames[][4096];
extern u32 d_course_koopa_troopa_beach_unk_data1[];

View File

@ -134,7 +134,13 @@ extern Gfx d_course_yoshi_valley_dl_D1E8[];
extern Gfx d_course_yoshi_valley_dl_D3D0[];
extern Gfx d_course_yoshi_valley_dl_D540[];
extern TrackWaypoint d_course_yoshi_valley_unknown_waypoints0[];
extern TrackWaypoint d_course_yoshi_valley_unknown_waypoints1[];
extern TrackWaypoint d_course_yoshi_valley_unknown_waypoints2[];
extern TrackWaypoint d_course_yoshi_valley_unknown_waypoints3[];
extern TrackWaypoint d_course_yoshi_valley_track_waypoints0[];
extern TrackWaypoint d_course_yoshi_valley_track_waypoints1[];
extern TrackWaypoint d_course_yoshi_valley_track_waypoints2[];
extern TrackWaypoint d_course_yoshi_valley_track_waypoints3[];
extern Lights1 d_course_yoshi_valley_unknown_light1;
extern Lights1 d_course_yoshi_valley_unknown_light2;
extern Lights1 d_course_yoshi_valley_unknown_light3;

View File

@ -78,6 +78,8 @@
#include "src/common_textures.h"
#include "src/data/data_800E45C0.h"
#include "src/data/data_800E8700.h"
#include "src/data/some_data.h"
#include "src/data/path_spawn_data.h"
#include "src/data/trig_tables.h"
#include "src/data_segment2.h"
#include "src/effects.h"

View File

@ -1,339 +0,0 @@
# Mario Kart 64 (U) disassembly and split file
# generated by n64split v0.4a - N64 ROM splitter
.include "macros.inc"
.section .data
#glabel D_800DC710
#.word D_802D2B80
#glabel D_800DC714
#.word D_802DAB80, 0x00000000, 0x00000000
glabel D_800DC720
.word D_0D008F28, D_0D008F80, D_0D008FB8, D_0D009058
.word D_0D0090B8, D_0D0090F8, D_0D009158, D_0D009188
.word D_0D0091E8, D_0D009210, D_0D009238, D_0D009260
.word D_0D009280, D_0D0092C8, D_0D009310, D_0D008F18
.word D_0D008F18, D_0D008F18, D_0D0093C0, D_0D008F18
.word D_0D008F18, 0x00000000
glabel nullPath
.word 0x80000000, 0x00000000
# segmented address of up to four course paths per course
glabel gCoursePathTable
.word d_course_mario_raceway_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_choco_mountain_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_bowsers_castle_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_banshee_boardwalk_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_yoshi_valley_unknown_waypoints0, d_course_yoshi_valley_unknown_waypoints1, d_course_yoshi_valley_unknown_waypoints2, d_course_yoshi_valley_unknown_waypoints3
.word d_course_frappe_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_koopa_troopa_beach_unknown_waypoints0, nullPath, nullPath, nullPath
.word d_course_royal_raceway_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_luigi_raceway_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_moo_moo_farm_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_toads_turnpike_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_kalimari_desert_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_sherbet_land_uknown_waypoints, nullPath, nullPath, nullPath
.word d_course_rainbow_road_unknown_waypoints, nullPath, nullPath, nullPath
.word d_course_wario_stadium_unknown_waypoints, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word d_course_dks_jungle_parkway_unknown_waypoints, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word ending_sequence, ending_sequence2, ending_sequence3, ending_sequence4
glabel D_800DC8D0
.word d_course_mario_raceway_track_waypoints, nullPath, nullPath, nullPath
.word d_course_choco_mountain_track_waypoints, nullPath, nullPath, nullPath
.word d_course_bowsers_castle_track_waypoints, nullPath, nullPath, nullPath
.word d_course_banshee_boardwalk_track_waypoints, nullPath, nullPath, nullPath
.word d_course_yoshi_valley_track_waypoints0, d_course_yoshi_valley_track_waypoints1, d_course_yoshi_valley_track_waypoints2, d_course_yoshi_valley_track_waypoints3
.word d_course_frappe_track_waypoints, nullPath, nullPath, nullPath
.word d_course_koopa_troopa_beach_track_waypoints0, d_course_koopa_troopa_beach_track_waypoints1, nullPath, nullPath
.word d_course_royal_raceway_track_waypoints, nullPath, nullPath, nullPath
.word d_course_luigi_raceway_track_waypoints, nullPath, nullPath, nullPath
.word d_course_moo_moo_farm_track_waypoints, nullPath, nullPath, nullPath
.word d_course_toads_turnpike_track_waypoints, nullPath, nullPath, nullPath
.word d_course_kalimari_desert_track_waypoints, nullPath, nullPath, nullPath
.word d_course_sherbet_land_track_waypoints, nullPath, nullPath, nullPath
.word d_course_rainbow_road_track_waypoints, nullPath, nullPath, nullPath
.word d_course_wario_staduim_track_waypoints, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word d_course_dks_jungle_parkway_track_waypoints, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
.word nullPath, nullPath, nullPath, nullPath
glabel D_800DCA20
.hword 0x0030, 0x0035, 0x0035, 0x0035, 0x0035, 0x0035, 0x0035, 0x0035
.hword 0x0030, 0x0030, 0x0028, 0x0035, 0x0035, 0x0026, 0x0035, 0x0035
.hword 0x0035, 0x0035, 0x0035, 0x0028, 0x0035, 0x0000
glabel D_800DCA4C
.float 50.0, 35.0, 35.0, 40.0
.float 35.0, 50.0, 50.0, 50.0
.float 50.0, 50.0, 50.0, 50.0
.float 50.0, 50.0, 50.0, -1.0
.float -1.0, -1.0, 40.0, -1.0
.float 40.0
glabel D_800DCAA0
.float 0.3, 0.3, 0.2, 0.4
.float 0.0, 0.3, 0.5, 0.4
.float 0.7, 0.5, 0.5, 0.3
.float 0.3, 0.4, 0.6, 0.1
.float 0.5, 0.5, 0.1, 0.5
.float 0.5
glabel D_800DCAF4
.hword 0x0014, 0x0005, 0x000a, 0x000f, 0x0014, 0x0019, 0x001e, 0x0023
.hword 0x001e, 0x0019, 0x0032, 0x004b, 0x0064, 0x007d, 0x0096, 0x00af
.hword 0x0028, 0x001e, 0x003c, 0x005a, 0x0078, 0x0096, 0x00b4, 0x00d2
.hword 0x0032, 0x0028, 0x0050, 0x0078, 0x00a0, 0x00c8, 0x00f0, 0x0118
glabel D_800DCB34
.hword 0x0014, 0x0005, 0x000a, 0x000f, 0x0014, 0x0019, 0x001e, 0x0023
.hword 0x001e, 0x0019, 0x002d, 0x0041, 0x005a, 0x0073, 0x008c, 0x00a5
.hword 0x0028, 0x0003, 0x0006, 0x0010, 0x002e, 0x0031, 0x003b, 0x0059
.hword 0x0032, 0x001e, 0x003c, 0x003f, 0x0049, 0x004e, 0x006c, 0x008a
.hword 0x000a, 0x0005, 0x000a, 0x000f, 0x0014, 0x0019, 0x001e, 0x0023
.hword 0x000a, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005
.hword 0x000a, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005
.hword 0x000a, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005
glabel D_800DCBB4
.word D_800DCB34, D_800DCAF4, D_800DCAF4, D_800DCAF4
.word D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4
.word D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4
.word D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4
.word D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4
.word D_800DCAF4
.macro Entry800DCC08 h0, h1, f2, f3, f4, f5, f6
.hword \h0, \h1
.float \f2, \f3, \f4, \f5, \f6
.endm
glabel D_800DCC08
# Mario Raceway Bomb Kart spawns
Entry800DCC08 0x0028, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0109, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x011d, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01a4, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Choco Mountain Bomb Kart spawns
Entry800DCC08 0x008c, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00a5, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x014a, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0226, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0253, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Bowser Castle Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0104, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01b3, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Banshee Boardwalk Bomb Kart spawns
Entry800DCC08 0x006e, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00be, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01db, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0262, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Yoshi Valley Bomb Kart spawns
Entry800DCC08 0x0000, 0x0000, 0.8333333, -1533.0, -682.0, -103.0, 0.0
Entry800DCC08 0x000a, 0x0000, 0.8333333, -1565.0, -619.0, -109.0, 0.0
Entry800DCC08 0x0014, 0x0000, 0.8333333, -1529.0, -579.0, -109.0, 0.0
Entry800DCC08 0x001e, 0x0000, 0.8333333, -1588.0, -534.0, -106.0, 0.0
Entry800DCC08 0x0028, 0x0000, 0.8333333, -1598.0, -207.0, -105.0, 0.0
Entry800DCC08 0x0032, 0x0000, 0.8333333, -1646.0, -147.0, -93.0, 0.0
Entry800DCC08 0x003c, 0x0000, 0.8333333, -2532.0, -445.0, -90.0, 0.0
# Frappe Snowland Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0122, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x015e, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Koopa Troopa Beach Bomb Kart spawns
Entry800DCC08 0x003c, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0078, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0118, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01b3, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Royal Raceway Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0128, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0190, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x02ea, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Luigi Raceway Bomb Kart spawns
Entry800DCC08 0x0032, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0131, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01b8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0203, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Moo Moo Farm Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008c, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00e1, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x013c, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01b2, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Toads Turnpike Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Kalamari Desert Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008a, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0118, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0194, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x01fe, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Sherbet Land Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Rainbow Road Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Wario Stadium Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Block Fort Bomb Kart spawns
Entry800DCC08 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
# Skyscraper Bomb Kart spawns
Entry800DCC08 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
# Double Deck Bomb Kart spawns
Entry800DCC08 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
# DK Jungle Bomb Kart spawns
Entry800DCC08 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00be, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0
# Big Donut Bomb Kart spawns
Entry800DCC08 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
# Award Ceremony Bomb Kart spawns
Entry800DCC08 0x0003, 0x0005, 1.250000, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
Entry800DCC08 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0
glabel D_800DD9D0
.hword 0x0258, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02bc, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x030c, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02ee, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02b2, 0x02a8, 0x02b2, 0x0320, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02ee, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02bc, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x03e8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02da, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x0230, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x03e8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x02bc, 0x0001, 0x0001, 0x0001, 0x0226, 0x0000, 0x0000, 0x0000
.hword 0x02bc, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x076c, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x0640, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x0370, 0x0001, 0x0001, 0x0001, 0x01f4, 0x0000, 0x0000, 0x0000
.hword 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000
.hword 0x01f4, 0x01f4, 0x01f4, 0x01f4, 0x0001, 0x0000, 0x0000, 0x0000
glabel D_800DDB20
.word 0x00000000
glabel D_800DDB24
.word 0x00000001

View File

@ -1,919 +0,0 @@
.include "macros.inc"
.section .data
glabel D_800E49C0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E4AC0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E4BC0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E4CC0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E4DC0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E4EC0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0x60
glabel D_800E4FD0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E50D0
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E51D0
vertex 9, 0, 9, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, 0, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, 0, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, 9, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E5210 # probably compiler generated
vertex 9, 0, 0, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -9, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -9, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel gBalloonVertexPlane1 # compiler gen
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel gBalloonVertexPlane2 # compiler gen
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
vertex -9, 9, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel D_800E52D0 # TODO: RGBA16 palette for CRASH/POOMP
.word 0x00000001, 0x00030041, 0x00430047, 0x0049004b
.word 0x0089008d, 0x008f0091, 0x01b101ef, 0x01f101f7
.word 0x0237023f, 0x027d027f, 0x08410843, 0x08450885
.word 0x08870889, 0x088d088f, 0x08cb08cd, 0x09ef0a2d
.word 0x0a351083, 0x108510c3, 0x10c510c9, 0x10cb1109
.word 0x110b1273, 0x12bb12bd, 0x18c118c3, 0x18c71901
.word 0x19031907, 0x1909190b, 0x19911a2d, 0x1a6b1a71
.word 0x21012107, 0x21092145, 0x21472189, 0x22672269
.word 0x22a722f7, 0x22f927bf, 0x29432945, 0x294b2985
.word 0x29d32aa5, 0x2aed2aef, 0x2b332fbf, 0x31813183
.word 0x318d31cb, 0x32a532e5, 0x337537bf, 0x39c139cf
.word 0x3a093ae3, 0x3b233b2b, 0x3baf3bb1, 0x3fbf4211
.word 0x431f4361, 0x436743a7, 0x43b147bf, 0x4a534b5f
.word 0x4beb4bed, 0x4fbf5295, 0x535d539d, 0x53e357bf
.word 0x5ad75b9b, 0x5b9d5c21, 0x5c275c69, 0x5fbf6319
.word 0x63d9641f, 0x67bf6b5b, 0x6c176c1d, 0x6c5d6c65
.word 0x6ca36ca5, 0x6fbf739d, 0x74137453, 0x77bf77ff
.word 0x7bdf7c53, 0x7c9b7ce1, 0x7fbf7fff, 0x8421848f
.word 0x849184d5, 0x87ff8c63, 0x8c8d8ccf, 0x8d1d8d5d
.word 0x8fff94a5, 0x94cb9513, 0x97ff9cc9, 0x9ce79d0b
.word 0x9d599d99, 0x9fffa507, 0xa529a549, 0xa54fa5d5
.word 0xa7ffad45, 0xad6bad8b, 0xadd5afff, 0xb585b5ad
.word 0xb611b7ff, 0xbdc9bdef, 0xbe11be51, 0xbfffc605
.word 0xc631c64d, 0xc7ffce45, 0xce8dcfff, 0xd689d6b5
.word 0xd6c9d7ff, 0xdec5dec9, 0xdfffe705, 0xe707e739
.word 0xe7ffe801, 0xe803e845, 0xef05ef7b, 0xf045f085
.word 0xf087f089, 0xf0c9f0cb, 0xf10bf10d, 0xf14ff151
.word 0xf191f193, 0xf1d5f1d7, 0xf217f219, 0xf25bf29d
.word 0xf7bdfa9f, 0xfadffae1, 0xfb23fb25, 0xfb65fb67
.word 0xfba7fba9, 0xfbebfbed, 0xfc2ffc71, 0xfc73fcb3
.word 0xfcb5fd01, 0xfd41fd81, 0xfdc1fe01, 0xfe41fe81
.word 0xfec1ffff, 0x00000000, 0x00000000, 0x00000000
glabel gCourseOutlineTextures # passed as a0 to func_8006ED94
.word gTextureCourseOutlineMarioRaceway, gTextureCourseOutlineChocoMountain, gTextureCourseOutlineBowsersCastle, gTextureCourseOutlineBansheeBoardwalk
.word gTextureCourseOutlineYoshiValley, gTextureCourseOutlineFrappeSnowland, gTextureCourseOutlineKoopaTroopaBeach, gTextureCourseOutlineRoyalRaceway
.word gTextureCourseOutlineLuigiRaceway, gTextureCourseOutlineMooMooFarm, gTextureCourseOutlineToadsTurnpike, gTextureCourseOutlineKalimariDesert
.word gTextureCourseOutlineSherbetLand, gTextureCourseOutlineRainbowRoad, gTextureCourseOutlineWarioStadium, gTextureCourseOutlineBlockFort
.word gTextureCourseOutlineSkyscraper, gTextureCourseOutlineDoubleDeck, gTextureCourseOutlineDksJungleParkway, gTextureCourseOutlineBigDonut
glabel D_800E5520 # passed as a2, a3 to func_8006ED94
.hword 0x0800, 0x0800, 0x0800, 0x0800, 0x0800, 0x0800
.hword 0x0800, 0x0800, 0x0c00, 0x0800, 0x1000, 0x0c00
.hword 0x0800, 0x0c00, 0x0800, 0x0800, 0x0800, 0x0800
.hword 0x0800, 0x0800
glabel D_800E5548
.hword 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040
.hword 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040
.hword 0x0040, 0x0060, 0x0040, 0x0040, 0x0080, 0x0040, 0x0040, 0x0060
.hword 0x0040, 0x0040, 0x0040, 0x0060, 0x0040, 0x0040, 0x0040, 0x0040
.hword 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040, 0x0040
.hword 0x0000, 0x0000, 0x0000, 0x0000
glabel D_800E55A0
.hword 0x0000, 0x0080, 0x0100, 0x0080, 0x0000, 0xff80, 0xfe00, 0xff80
glabel D_800E55B0
.hword 0xf800, 0x0800, 0xf800, 0x0800, 0xf800, 0x0800, 0xf800, 0x0800
.hword 0xf800, 0x0800, 0xf800, 0x0800, 0xf800, 0x0800, 0xf800, 0x0800
glabel D_800E55D0
.byte 0x64, 0x64, 0x64
.byte 0x96, 0x96, 0x73
.byte 0xc8, 0xc8, 0x82
.byte 0xff, 0xff, 0x96
.byte 0xc8, 0xc8, 0x82
.byte 0x96, 0x96, 0x73
.byte 0x00, 0x00, 0x00
.byte 0x01, 0x02, 0x03
.byte 0x02, 0x01, 0x00
.byte 0x04, 0x05, 0x06
.byte 0x05, 0x04, 0x00
.byte 0x07, 0x08, 0x09
.byte 0x08, 0x07, 0x00
.byte 0x00
glabel D_800E55F8
.byte 0x00, 0x00
.byte 0x00, 0xff, 0x00
.byte 0x00, 0x00, 0xed
.byte 0x00, 0x00, 0x00
.byte 0xd7, 0x00, 0x00
.byte 0x00, 0xbf, 0x00
.byte 0x00, 0x00, 0xa2
.byte 0x00, 0x00, 0x00
.byte 0x82, 0x00, 0x00
.byte 0x00, 0x61, 0x00
.byte 0x00, 0x00, 0x3a
glabel D_800E5618
.word 0x000000ff, 0x000000d7, 0x000000a2, 0x00000061
glabel D_800E5628
.byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
.byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
.byte 0xff, 0x27, 0x33, 0x32, 0xff, 0x37, 0xff, 0x26, 0x29, 0x2a, 0x31, 0x2e
.byte 0x25
glabel D_800E5655
.byte 0x2b
.byte 0x24
.byte 0x2d
.word 0x00010203, 0x04050607, 0x08092c36, 0x3c2f3d28
.byte 0x30
.byte 0x0a
glabel D_800E566A
.byte 0x0b
.byte 0x0c
.byte 0x0d
.byte 0x0e
.byte 0x0f
.byte 0x10
glabel D_800E5670
.byte 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20
.byte 0x21, 0x22, 0x23, 0x39, 0xff, 0x3a, 0x3b, 0x34, 0x38, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10
.byte 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20
.byte 0x21, 0x22, 0x23, 0xff, 0xff, 0xff, 0x35, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
.word 0xffffffff, 0xffffffff
glabel gFireBreathsSpawns
.hword 0x0889, 0x0075, 0xf90a
.hword 0x0889, 0x0075, 0xf9d0
.hword 0x07c1, 0x0075, 0xf90a
.hword 0x07c1, 0x0075, 0xf9d0
# Referenced in code_80071F00/func_80076884, but that function is unused
glabel D_800E5740
.hword 0x0662, 0x0014, 0xfb52, 0x06db, 0x0014, 0xfb57, 0x067d, 0x0014
.hword 0xfb86, 0x06e2, 0x0014, 0xfaff, 0x06cd, 0x0014, 0xfb93, 0x06fb
.hword 0x0014, 0xfb4b, 0x067d, 0x0014, 0xfb1e, 0x062f, 0x0014, 0xfb39
.hword 0x0656, 0x0014, 0xfb00, 0x06f5, 0x0014, 0xfad3, 0x064b, 0x0014
.hword 0xfb72, 0x06fe, 0x0014, 0xfb7d, 0x0715, 0x0014, 0xfb1b, 0x066f
.hword 0x0014, 0xfac7, 0x0662, 0x0014, 0xfb52, 0x0000
# Referenced in code_80071F00/func_80076884, but that function is unused
glabel D_800E579C
.hword 0xff96, 0xffce, 0xfcca, 0xffa7, 0xffce, 0xfd1d, 0xff6e, 0xffce
.hword 0xfd5b, 0xff96, 0xffce, 0xfc65, 0xff4b, 0xffce, 0xfcdb, 0xff59
.hword 0xffce, 0xfc7f, 0x0065, 0xffce, 0xfc77, 0x00ab, 0xffce, 0xfcd7
.hword 0x0060, 0xffce, 0xfcbd, 0x0064, 0xffce, 0xfd03, 0x006d, 0xffce
.hword 0xfd52, 0x00b8, 0xffce, 0xfd33, 0x00ab, 0xffce, 0xfc65, 0xff96
.hword 0xffce, 0xfcca, 0xffa7, 0xffce, 0xfd1d, 0x0000
# Referenced in code_80071F00/func_80076884, but that function is unused
glabel D_800E57F8
.hword 0x06e8, 0xffce, 0x0023, 0x07e3, 0xffcf, 0xffd4, 0x084d, 0xffce
.hword 0x006e, 0x07e3, 0xffcd, 0x00e0, 0x0638, 0xffca, 0x02ae, 0x0603
.hword 0xffce, 0x00af, 0x01f7, 0xffcc, 0x01c8, 0x0266, 0xffcc, 0x0179
.hword 0x070e, 0xffd0, 0xff6e, 0x070e, 0xffcf, 0xffd3, 0x070e, 0xffce
.hword 0x0087, 0x07ea, 0xffd0, 0xff6a, 0x07ea, 0xffce, 0x003c, 0x082c
.hword 0xffcf, 0xffb9, 0x023f, 0xffca, 0x02bb, 0x0000
glabel gThomwpSpawns50CC
.hword 0x03b6, 0xf92a, 0x0001, 0x0000, 0x0352, 0xf95c, 0x0002, 0x0000
.hword 0x04b0, 0xf5ba, 0x0003, 0x0000, 0x04b0, 0xf592, 0x0003, 0x0001
.hword 0x091a, 0xf5b0, 0x0004, 0x0000, 0x0596, 0xf92f, 0x0006, 0x0000
.hword 0x082a, 0xf9f2, 0x0005, 0x0000, 0x073a, 0xf9f2, 0x0005, 0x0001
glabel gThwompSpawns100CCExtra
.hword 0x0320, 0xf92a, 0x0001, 0x0000, 0x044c, 0xf92a, 0x0001, 0x0001
.hword 0x02bc, 0xf95c, 0x0002, 0x0000, 0x04b0, 0xf8f8, 0x0002, 0x0001
.hword 0x04b0, 0xf5ba, 0x0003, 0x0000, 0x04b0, 0xf592, 0x0003, 0x0001
.hword 0x091a, 0xf5bf, 0x0004, 0x0000, 0x091a, 0xf597, 0x0004, 0x0001
.hword 0x0596, 0xf92f, 0x0006, 0x0000, 0x082a, 0xf9f2, 0x0005, 0x0000
.hword 0x073a, 0xf9f2, 0x0005, 0x0001
glabel gThomwpSpawns150CC
.hword 0x0320, 0xf92a, 0x0001, 0x0000, 0x044c, 0xf92a, 0x0001, 0x0001
.hword 0x02bc, 0xf95c, 0x0002, 0x0000, 0x04b0, 0xf8f8, 0x0002, 0x0001
.hword 0x04b0, 0xf5ba, 0x0003, 0x0000, 0x04b0, 0xf592, 0x0003, 0x0001
.hword 0x091a, 0xf5c9, 0x0004, 0x0000, 0x091a, 0xf5ab, 0x0004, 0x0001
.hword 0x091a, 0xf58d, 0x0004, 0x0002, 0x0596, 0xf92f, 0x0006, 0x0000
.hword 0x082a, 0xf9f2, 0x0005, 0x0000, 0x073a, 0xf9f2, 0x0005, 0x0001
# Something related to the Thwomps
glabel D_800E594C
.float -8.0, 8.0
.float 8.0, 8.0
.float 0.0, 0.0
.float 8.0, -8.0
.float -8.0, -8.0
# Appears to be unused
glabel D_800E5974
.word 0x80000000, 0x00000000
# Something related to the Thwomps
glabel D_800E597C
.hword 0x0000, 0x0000, 0x4000, 0x8000, 0x8000, 0xc000
# Seems to be related to the Boos in Banshee Boardwalk
glabel D_800E5988
.hword 0x0016, 0x0005, 0x0011, 0x0032, 0x0028, 0x0005, 0x000d, 0x0014
.hword 0x0028, 0x0000, 0x0011, 0x0000, 0x0028, 0x0014, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0xffe2, 0x0028, 0xffec, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0xffe2, 0x0028, 0x0014, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0x001e, 0x0028, 0xffec, 0x000a, 0x0032
.hword 0x0028, 0x0000, 0x0011, 0x001e, 0x0028, 0x0014, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0xffe2, 0x0028, 0xffec, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0xffe2, 0x0028, 0x0014, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0xffe2, 0x0028, 0xffec, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0x0014, 0x0028, 0x0005, 0x000a, 0x001e
.hword 0x0028, 0x0005, 0x0011, 0x0028, 0x0028, 0x0005, 0x0011, 0x0032
.hword 0x0028, 0x0005, 0x0011, 0x0032, 0x0028, 0x0000
# Seems to be related to the Boos in Banshee Boardwalk
glabel D_800E5A44
.hword 0x0017, 0x0000, 0x0011, 0xffce, 0x0028, 0x0014, 0x000d, 0xffd8
.hword 0x0028, 0x0000, 0x0011, 0xffec, 0x0028, 0xffec, 0x000a, 0x0000
.hword 0x0028, 0x0000, 0x0011, 0x001e, 0x0028, 0x0014, 0x000a, 0x0028
.hword 0x0028, 0x0000, 0x0011, 0x0032, 0x0028, 0xffec, 0x000a, 0x0032
.hword 0x0028, 0x0000, 0x0011, 0x001e, 0x0028, 0xffec, 0x000a, 0x0014
.hword 0x0028, 0x0000, 0x0011, 0x0000, 0x0028, 0xfff6, 0x000a, 0x0014
.hword 0x0028, 0x0000, 0x0011, 0x0028, 0x0028, 0x000a, 0x000a, 0x0032
.hword 0x0028, 0x0000, 0x0011, 0x0046, 0x0028, 0xfff6, 0x0017, 0x0032
.hword 0x0028, 0x0000, 0x000f, 0x0028, 0x0028, 0x000a, 0x000d, 0x001e
.hword 0x0028, 0x0000, 0x0011, 0x000a, 0x0028, 0xfff6, 0x000d, 0x001e
.hword 0x0028, 0x0000, 0x0011, 0x0028, 0x0028, 0x000a, 0x000d, 0x0032
.hword 0x0028, 0x0000, 0x000d, 0x0046, 0x0028, 0x0000, 0x0011, 0xffce
.hword 0x0028, 0x0000
# Seems to be related to the Boos in Banshee Boardwalk
glabel D_800E5B08
.hword 0x0018, 0xfff1, 0x000a, 0x0000, 0x0014, 0xfff6, 0x000a, 0xfff6
.hword 0x0014, 0x0000, 0x000a, 0xfff1, 0x0014, 0x000a, 0x000a, 0xfff6
.hword 0x0014, 0x000f, 0x000a, 0x0000, 0x0014, 0x000a, 0x000a, 0x000a
.hword 0x0014, 0x0000, 0x000a, 0x000f, 0x0014, 0xfff6, 0x000a, 0x000a
.hword 0x0014, 0xfff1, 0x000a, 0x0000, 0x0014, 0xfff6, 0x000a, 0xfff6
.hword 0x0014, 0x0000, 0x000a, 0xfff1, 0x0014, 0x000a, 0x000a, 0xfff6
.hword 0x0014, 0x000f, 0x000a, 0x0000, 0x0014, 0x000a, 0x000a, 0x000a
.hword 0x0014, 0x0000, 0x000a, 0x000f, 0x0014, 0xfff6, 0x000a, 0x000a
.hword 0x0014, 0xfff1, 0x000a, 0x0000, 0x0014, 0xfff6, 0x000a, 0xfff6
.hword 0x0014, 0x0000, 0x000a, 0xfff1, 0x0014, 0x000a, 0x000a, 0xfff6
.hword 0x0014, 0x000f, 0x000a, 0x0000, 0x0014, 0x000a, 0x000a, 0x000a
.hword 0x0014, 0x0000, 0x000a, 0x000f, 0x0014, 0xfff6, 0x000a, 0x000a
.hword 0x0014, 0xfff1, 0x000a, 0x0000, 0x0014, 0x0000
# Seems to be related to the Boos in Banshee Boardwalk
glabel D_800E5BD4
.hword 0x0016, 0x0005, 0x0011, 0x0032, 0x001e, 0x0005, 0x000d, 0x0014
.hword 0x001e, 0x0000, 0x0011, 0x0000, 0x001e, 0x0014, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0xffe2, 0x001e, 0xffec, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0xffe2, 0x001e, 0x0014, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0x001e, 0x001e, 0xffec, 0x000a, 0x0032
.hword 0x001e, 0x0000, 0x0011, 0x001e, 0x001e, 0x0014, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0xffe2, 0x001e, 0xffec, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0xffe2, 0x001e, 0x0014, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0xffe2, 0x001e, 0xffec, 0x000a, 0x0000
.hword 0x001e, 0x0000, 0x0011, 0x0014, 0x001e, 0x0005, 0x000a, 0x001e
.hword 0x001e, 0x0005, 0x0011, 0x0028, 0x001e, 0x0005, 0x0011, 0x0032
.hword 0x001e, 0x0005, 0x0011, 0x0032, 0x001e, 0x0000
# Seems to be related to the Boos in Banshee Boardwalk
glabel D_800E5C90
.hword 0x0017, 0x0000, 0x0011, 0xffce, 0x0019, 0x0014, 0x000d, 0xffd8
.hword 0x0019, 0x0000, 0x0011, 0xffec, 0x0019, 0xffec, 0x000a, 0x0000
.hword 0x0019, 0x0000, 0x0011, 0x001e, 0x0019, 0x0014, 0x000a, 0x0028
.hword 0x0019, 0x0000, 0x0011, 0x0032, 0x0019, 0xffec, 0x000a, 0x0032
.hword 0x0019, 0x0000, 0x0011, 0x001e, 0x0019, 0xffec, 0x000a, 0x0014
.hword 0x0019, 0x0000, 0x0011, 0x0000, 0x0019, 0xfff6, 0x000a, 0x0014
.hword 0x0019, 0x0000, 0x0011, 0x0028, 0x0019, 0x000a, 0x000a, 0x0032
.hword 0x0019, 0x0000, 0x0011, 0x0046, 0x0019, 0xfff6, 0x0017, 0x0032
.hword 0x0019, 0x0000, 0x000f, 0x0028, 0x0019, 0x000a, 0x000d, 0x001e
.hword 0x0019, 0x0000, 0x0011, 0x000a, 0x0019, 0xfff6, 0x000d, 0x001e
.hword 0x0019, 0x0000, 0x0011, 0x0028, 0x0019, 0x000a, 0x000d, 0x0032
.hword 0x0019, 0x0000, 0x000d, 0x0046, 0x0019, 0x0000, 0x0011, 0xffce
.hword 0x0019, 0x0000
glabel D_800E5D54
.hword 0x0004, 0x0000, 0x0010, 0x0000, 0x0032, 0x0000, 0x0010, 0x0002
.hword 0x0000, 0x0000, 0x0010, 0x0004, 0x0000, 0x0000, 0x0010, 0x0006
.hword 0x0000, 0x0000, 0x0004, 0x0000, 0x0000, 0x0000, 0x000a, 0x0000
.hword 0x0000, 0x0000, 0x000a, 0x0000, 0x0000, 0x0000, 0x000a, 0x0000
.hword 0x0000, 0x0000, 0x000a, 0x0000
glabel D_800E5D9C
.word D_800E5988, D_800E5A44, D_800E5B08, D_800E5BD4
.word D_800E5C90
glabel D_800E5DB0
.word D_800E5988
glabel D_800E5DB4
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
# Spawn data for the flag poles in Yoshi Valley
# YVFlagPoleSpawn
glabel D_800E5DF4
.hword 0xfc7a, 0x0046, 0xfa82, 0x3800
.hword 0xfc4c, 0x0046, 0xfa03, 0x3800
.hword 0xf786, 0x0000, 0x02d3, 0x0400
.hword 0xf76f, 0x0000, 0x02f9, 0x0400
glabel gHedgehogSpawns
.hword 0xf96d, 0xffb0, 0xffa8, 0x0009
.hword 0xf99c, 0xffa3, 0xff6d, 0x0009
.hword 0xf9a4, 0xffaa, 0xff94, 0x0009
.hword 0xf974, 0xffbb, 0xffe2, 0x0009
.hword 0xfb35, 0xffe5, 0xfc23, 0x001a
.hword 0xfb13, 0xffd7, 0xfc90, 0x001a
.hword 0xfac2, 0xffc4, 0xfcc2, 0x001a
.hword 0xfa6b, 0xffb2, 0xfcaf, 0x001a
.hword 0xfa2c, 0xffa2, 0xfcfa, 0x001a
.hword 0xfa53, 0xffa9, 0xfcf0, 0x001a
.hword 0xfa30, 0xffa7, 0xfcac, 0x001a
.hword 0xfaeb, 0xffd1, 0xfc78, 0x001a
.hword 0xf5e5, 0xffc8, 0xfefd, 0x001c
.hword 0xf643, 0xffa2, 0xfe3a, 0x001c
.hword 0xf653, 0xfffd, 0xffc7, 0x001c
glabel gHedgehogPatrolPoints
.hword 0xf98e, 0xffaa, 0xff8e
.hword 0xf983, 0xffa3, 0xff69
.hword 0xf97e, 0xffb5, 0xffc6
.hword 0xf98d, 0xffb9, 0xffe6
.hword 0xfb56, 0xffe7, 0xfc19
.hword 0xfb43, 0xffe0, 0xfca0
.hword 0xfb1f, 0xffd9, 0xfc61
.hword 0xfabd, 0xffc5, 0xfc9e
.hword 0xfa6d, 0xffb5, 0xfc85
.hword 0xfa1b, 0xffa1, 0xfcd7
.hword 0xfa48, 0xffa8, 0xfcca
.hword 0xf9ff, 0xffa4, 0xfcaa
.hword 0xf5c0, 0xffd1, 0xff0f
.hword 0xf637, 0xffa7, 0xfe73
.hword 0xf615, 0xfffd, 0xffbe
# This is entirely fake, really there should be a `.balign 4` here
glabel D_800E5EE6
.hword 0x0000
glabel gSnowmanSpawns
.hword 0x02b9, 0x0000, 0xf96c, 0x0003, 0x0052, 0x0000, 0xf73b, 0x0005
.hword 0x001b, 0x0005, 0xf7ed, 0x0005, 0xfd70, 0x0000, 0xf939, 0x0005
.hword 0xfa27, 0x0000, 0xffad, 0x0008, 0xf995, 0x0000, 0xffe7, 0x0008
.hword 0xf9f5, 0x0000, 0xffec, 0x0008, 0xfa5b, 0x0000, 0xfff6, 0x0008
.hword 0xfa22, 0x0000, 0x003d, 0x0008, 0xfa6b, 0x0000, 0x004f, 0x0008
.hword 0xf9ce, 0x0000, 0x0047, 0x0008, 0xfa41, 0x0000, 0x009d, 0x0008
.hword 0xf9fd, 0x0000, 0x00af, 0x0008, 0xfa34, 0x0000, 0x012f, 0x0008
.hword 0xfa5e, 0x0000, 0x0166, 0x0008, 0xfa1a, 0x0000, 0x01aa, 0x0008
.hword 0xfd67, 0x0000, 0x033e, 0x000a, 0xfd43, 0x0003, 0x0355, 0x000a
.hword 0xfda6, 0x0000, 0x03a1, 0x000a
glabel gCrabSpawns
.hword 0xf8ef, 0xf97e, 0x0271, 0x0252, 0xf8c4, 0xf9ac, 0x02f5, 0x02e4
.hword 0xfa3a, 0xfa53, 0x0732, 0x0729, 0xfa76, 0xfa51, 0x07af, 0x07aa
.hword 0xfa40, 0xfa77, 0x0840, 0x0834, 0xfa93, 0xfac9, 0x0868, 0x0858
.hword 0x00da, 0x0045, 0x02b5, 0x02b8, 0x00eb, 0x0018, 0x0210, 0x01f5
.hword 0x010c, 0x0065, 0x0196, 0x018a, 0x00df, 0x0056, 0x013e, 0x0134
# Appears to be unused, may have been a different set of crabs at some point?
glabel D_800E5FD0
.hword 0x017e, 0x012f, 0x0462, 0x0491, 0x008f, 0x011a, 0x042e, 0x03df
.hword 0x0154, 0x00d7, 0x0363, 0x03a7, 0x007b, 0x00ba, 0x035a, 0x0337
.hword 0x00e1, 0x0056, 0x02c0, 0x02e9, 0x008f, 0x0056, 0x0232, 0x0245
.hword 0x0190, 0x044c, 0x01f4, 0x03e8, 0x015e, 0x0384, 0x012c, 0x0320
.hword 0x0000, 0x0000, 0x0032, 0x0032, 0x0064, 0x0064, 0xffce, 0x0032
.hword 0xff9c, 0x0064, 0x0032, 0xffce, 0x0064, 0xff6a, 0xffce, 0xff9c
.hword 0xff9c, 0x0000
# Something related to seagulls in Koopa Troopa Beach, not sure of its exact nature
glabel D_800E6034
.hword 0x0016, 0x0032, 0x00aa, 0x01f4, 0x0028, 0x0032, 0x0082, 0x00c8
.hword 0x0028, 0x0000, 0x00aa, 0x0000, 0x0028, 0x00c8, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xfed4, 0x0028, 0xff38, 0x0032, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xfed4, 0x0028, 0x00c8, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0xff38, 0x0064, 0x01f4
.hword 0x0028, 0x0000, 0x00fa, 0x012c, 0x0028, 0x00c8, 0x0032, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xfed4, 0x0028, 0xff38, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xfed4, 0x0028, 0x00c8, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xfed4, 0x0028, 0xff38, 0x00fa, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x00c8, 0x0028, 0x0032, 0x0064, 0x012c
.hword 0x0028, 0x0032, 0x00aa, 0x0190, 0x0028, 0x0032, 0x00aa, 0x01f4
.hword 0x0028, 0x0032, 0x00aa, 0x01f4, 0x0028, 0x0000
# Something related to seagulls in Koopa Troopa Beach, not sure of its exact nature
glabel D_800E60F0
.hword 0x0017, 0x0000, 0x00aa, 0xfe0c, 0x0028, 0x00c8, 0x0082, 0xfe70
.hword 0x0028, 0x0000, 0x00aa, 0xff38, 0x0028, 0xff38, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0x00c8, 0x0064, 0x0190
.hword 0x0028, 0x0000, 0x00aa, 0x01f4, 0x0028, 0xff38, 0x0064, 0x01f4
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0xff38, 0x0064, 0x00c8
.hword 0x0028, 0x0000, 0x00aa, 0x0000, 0x0028, 0xff9c, 0x0064, 0x00c8
.hword 0x0028, 0x0000, 0x00aa, 0x0190, 0x0028, 0x0064, 0x0064, 0x01f4
.hword 0x0028, 0x0000, 0x00aa, 0x02bc, 0x0028, 0xff9c, 0x00e6, 0x01f4
.hword 0x0028, 0x0000, 0x0096, 0x0190, 0x0028, 0x0064, 0x0082, 0x012c
.hword 0x0028, 0x0000, 0x00aa, 0x0064, 0x0028, 0xff9c, 0x0082, 0x012c
.hword 0x0028, 0x0000, 0x00aa, 0x0190, 0x0028, 0x0064, 0x0082, 0x01f4
.hword 0x0028, 0x0000, 0x0082, 0x02bc, 0x0028, 0x0000, 0x00aa, 0xfe0c
.hword 0x0028, 0x0000
# Something related to seagulls in Koopa Troopa Beach, not sure of its exact nature
glabel D_800E61B4
.hword 0x0018, 0xff6a, 0x0064, 0x0000, 0x0014, 0xff96, 0x0096, 0xff96
.hword 0x0014, 0x0000, 0x0050, 0xff6a, 0x0014, 0x006a, 0x0096, 0xff96
.hword 0x0014, 0x0096, 0x0064, 0x0000, 0x0014, 0x006a, 0x0096, 0x006a
.hword 0x0014, 0x0000, 0x0064, 0x0096, 0x0014, 0xff96, 0x0064, 0x006a
.hword 0x0014, 0xff6a, 0x0082, 0x0000, 0x0014, 0xff96, 0x0050, 0xff96
.hword 0x0014, 0x0000, 0x0064, 0xff6a, 0x0014, 0x006a, 0x008c, 0xff96
.hword 0x0014, 0x0096, 0x0064, 0x0000, 0x0014, 0x006a, 0x0064, 0x006a
.hword 0x0014, 0x0000, 0x0096, 0x0096, 0x0014, 0xff96, 0x0050, 0x006a
.hword 0x0014, 0xff6a, 0x0064, 0x0000, 0x0014, 0xff96, 0x0096, 0xff96
.hword 0x0014, 0x0000, 0x0064, 0xff6a, 0x0014, 0x006a, 0x0078, 0xff96
.hword 0x0014, 0x0096, 0x0064, 0x0000, 0x0014, 0x006a, 0x0028, 0x006a
.hword 0x0014, 0x0000, 0x0064, 0x0096, 0x0014, 0xff96, 0x0064, 0x006a
.hword 0x0014, 0xff6a, 0x0064, 0x0000, 0x0014, 0x0000
# Something related to seagulls in Koopa Troopa Beach, not sure of its exact nature
glabel D_800E6280
.hword 0x0016, 0xffce, 0x00aa, 0xfe0c, 0x0028, 0xffce, 0x0082, 0xff38
.hword 0x0028, 0x0000, 0x00aa, 0x0000, 0x0028, 0xff38, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0x00c8, 0x0032, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0xff38, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xfed4, 0x0028, 0x00c8, 0x0064, 0xfe0c
.hword 0x0028, 0x0000, 0x00fa, 0xfed4, 0x0028, 0xff38, 0x0032, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0x00c8, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0xff38, 0x0064, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0x012c, 0x0028, 0x00c8, 0x00fa, 0x0000
.hword 0x0028, 0x0000, 0x00aa, 0xff38, 0x0028, 0xffce, 0x0064, 0xfed4
.hword 0x0028, 0xffce, 0x00aa, 0xfe70, 0x0028, 0xffce, 0x00aa, 0xfe0c
.hword 0x0028, 0xffce, 0x00aa, 0xfe0c, 0x0028, 0x0000
glabel D_800E633C
.word D_800E6034, D_800E60F0, D_800E61B4, D_800E6280
# Might be Cheep Cheep related?
glabel D_800E634C
.hword 0xf37e, 0x0013, 0xfe22
.hword 0xf37b, 0x0013, 0xfe31
.hword 0xf380, 0x0013, 0xfe14
.balign 4
glabel gMoleSpawns
.hword 0x0303, 0x0014, 0xf81a
.hword 0x0327, 0x000f, 0xf7f1
.hword 0x034f, 0x0012, 0xf808
.hword 0x0391, 0x000e, 0xf7fa
.hword 0x03ab, 0x0015, 0xf833
.hword 0x03ad, 0x0011, 0xf818
.hword 0x03e2, 0x0011, 0xf836
.hword 0x035f, 0x0016, 0xf826
.hword 0x05dc, 0x0002, 0x0474
.hword 0x05e6, 0x000f, 0x041a
.hword 0x0649, 0x0015, 0x03a7
.hword 0x0509, 0x0003, 0x04f5
.hword 0x05bc, 0x0016, 0x0416
.hword 0x0564, 0x000c, 0x0482
.hword 0x0511, 0x0013, 0x0492
.hword 0x0635, 0x000b, 0x03ec
.hword 0x0586, 0x0003, 0x04a1
.hword 0x057d, 0x0004, 0x04e6
.hword 0x05b7, 0x0008, 0x045e
.hword 0x02bd, 0x0002, 0x04ff
.hword 0x032b, 0x0008, 0x04fe
.hword 0x0317, 0x0010, 0x04cd
.hword 0x036c, 0x000f, 0x04f2
.hword 0x03d8, 0x0017, 0x04e0
.hword 0x037b, 0x0014, 0x04da
.hword 0x0398, 0x000f, 0x0518
.hword 0x0337, 0x0006, 0x052f
.hword 0x02cd, 0x0008, 0x04d7
.hword 0x02b7, 0x0013, 0x0498
.hword 0x0274, 0x0008, 0x04a7
.hword 0x02d4, 0x0004, 0x053b
# This is entirely fake, there should be a `.balign 4` here
glabel D_800E641A
.hword 0x0000
# Referenced by D_800E6724, which is unused
glabel D_800E641C
.hword 0x0016, 0x0014, 0x0000, 0x00c8, 0x0050, 0x0014, 0x0000, 0x0050
.hword 0x0050, 0x0000, 0x0000, 0x0000, 0x0050, 0x0050, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xff88, 0x0050, 0xffb0, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xff88, 0x0050, 0x0050, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0x0078, 0x0050, 0xffb0, 0x0000, 0x00c8
.hword 0x0050, 0x0000, 0x0000, 0x0078, 0x0050, 0x0050, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xff88, 0x0050, 0xffb0, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xff88, 0x0050, 0x0050, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xff88, 0x0050, 0xffb0, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0x0050, 0x0050, 0x0014, 0x0000, 0x0078
.hword 0x0050, 0x0014, 0x0000, 0x00a0, 0x0050, 0x0014, 0x0000, 0x00c8
.hword 0x0050, 0x0014, 0x0000, 0x00c8, 0x0050, 0x0000
# Referenced by D_800E6724, which is unused
glabel D_800E64D8
.hword 0x0017, 0x0000, 0x0000, 0xffce, 0x0050, 0x0014, 0x0000, 0xffd8
.hword 0x0050, 0x0000, 0x0000, 0xffec, 0x0050, 0xffec, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0x001e, 0x0050, 0x0014, 0x0000, 0x0028
.hword 0x0050, 0x0000, 0x0000, 0x0032, 0x0050, 0xffec, 0x0000, 0x0032
.hword 0x0050, 0x0000, 0x0000, 0x001e, 0x0050, 0xffec, 0x0000, 0x0014
.hword 0x0050, 0x0000, 0x0000, 0x0000, 0x0050, 0xfff6, 0x0000, 0x0014
.hword 0x0050, 0x0000, 0x0000, 0x0028, 0x0050, 0x000a, 0x0000, 0x0032
.hword 0x0050, 0x0000, 0x0000, 0x0046, 0x0050, 0xfff6, 0x0000, 0x0032
.hword 0x0050, 0x0000, 0x0000, 0x0028, 0x0050, 0x000a, 0x0000, 0x001e
.hword 0x0050, 0x0000, 0x0000, 0x000a, 0x0050, 0xfff6, 0x0000, 0x001e
.hword 0x0050, 0x0000, 0x0000, 0x0028, 0x0050, 0x000a, 0x0000, 0x0032
.hword 0x0050, 0x0000, 0x0000, 0x0046, 0x0050, 0x0000, 0x0000, 0xffce
.hword 0x0050, 0x0000
# Something related to the penguins in Sherbet Land, not sure of its exact nature
glabel D_800E659C
.hword 0x0018, 0xffec, 0x0000, 0x0000, 0x0050, 0xfff2, 0x0000, 0xfff2
.hword 0x0050, 0x0000, 0x0000, 0xffec, 0x0050, 0x000e, 0x0000, 0xfff2
.hword 0x0050, 0x0014, 0x0000, 0x0000, 0x0050, 0x000e, 0x0000, 0x000e
.hword 0x0050, 0x0000, 0x0000, 0x0014, 0x0050, 0xfff2, 0x0000, 0x000e
.hword 0x0050, 0xffec, 0x0000, 0x0000, 0x0050, 0xfff2, 0x0000, 0xfff2
.hword 0x0050, 0x0000, 0x0000, 0xffec, 0x0050, 0x000e, 0x0000, 0xfff2
.hword 0x0050, 0x0014, 0x0000, 0x0000, 0x0050, 0x000e, 0x0000, 0x000e
.hword 0x0050, 0x0000, 0x0000, 0x0014, 0x0050, 0xfff2, 0x0000, 0x000e
.hword 0x0050, 0xffec, 0x0000, 0x0000, 0x0050, 0xfff2, 0x0000, 0xfff2
.hword 0x0050, 0x0000, 0x0000, 0xffec, 0x0050, 0x000e, 0x0000, 0xfff2
.hword 0x0050, 0x0014, 0x0000, 0x0000, 0x0050, 0x000e, 0x0000, 0x000e
.hword 0x0050, 0x0000, 0x0000, 0x0014, 0x0050, 0xfff2, 0x0000, 0x000e
.hword 0x0050, 0xffec, 0x0000, 0x0000, 0x0050, 0x0000
# Something related to the penguins in Sherbet Land, not sure of its exact nature
glabel D_800E6668
.hword 0x0016, 0x0005, 0x0000, 0x0032, 0x0050, 0x0005, 0x0000, 0x0014
.hword 0x0050, 0x0000, 0x0000, 0x0000, 0x0050, 0x0014, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xffe2, 0x0050, 0xffec, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xffe2, 0x0050, 0x0014, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0x001e, 0x0050, 0xffec, 0x0000, 0x0032
.hword 0x0050, 0x0000, 0x0000, 0x001e, 0x0050, 0x0014, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xffe2, 0x0050, 0xffec, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xffe2, 0x0050, 0x0014, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0xffe2, 0x0050, 0xffec, 0x0000, 0x0000
.hword 0x0050, 0x0000, 0x0000, 0x0014, 0x0050, 0x0005, 0x0000, 0x001e
.hword 0x0050, 0x0005, 0x0000, 0x0028, 0x0050, 0x0005, 0x0000, 0x0032
.hword 0x0050, 0x0005, 0x0000, 0x0032, 0x0050, 0x0000
# Appears to be unused
glabel D_800E6724
.word D_800E641C, D_800E64D8
glabel D_800E672C
.word D_800E659C, D_800E6668
# These should be floats, really
# I believe they're the positions of the static neon signs in rainbow road
glabel D_800E6734
.float 1443.0, 1044.0, -5478.0
.float 1678.0, 1012.0, -4840.0
.float -3924.0, 921.0, 2566.0
.float -3311.0, 790.0, 3524.0
.float -1284.0, 1341.0, 4527.0
.float 2268.0, 1041.0, 4456.0
.float 2820.0, 1109.0, 1985.0
glabel gTorchSpawns
.hword 0xfda6, 0xffa0, 0x0068
.hword 0xfd1f, 0xffa1, 0x0136
.hword 0xfcb0, 0xffa6, 0x021d
.hword 0xfca3, 0xffb0, 0x0302
.hword 0xfd43, 0xffc4, 0x03b0
.hword 0xfe52, 0xffd8, 0x039c
.hword 0xff25, 0xffed, 0x0320
.hword 0xffca, 0xfff8, 0x0270
glabel D_800E67B8
.hword 0x000d, 0x0096, 0x00cc, 0xfe0c, 0x0014, 0x0064, 0x0068, 0xfed4
.hword 0x0014, 0x0032, 0x0036, 0xff9c, 0x0028, 0x0004, 0x000b, 0xfff2
.hword 0x0028, 0x0004, 0x0010, 0xfff6, 0x001e, 0x0004, 0x000e, 0xfff8
.hword 0x001e, 0x0004, 0x0010, 0xfffa, 0x001e, 0x0004, 0x000e, 0xfffc
.hword 0x0032, 0x0004, 0x0010, 0xfffe, 0x0032, 0x0004, 0x000e, 0x0000
.hword 0x0032, 0xfff6, 0x0010, 0x000a, 0x0028, 0xffce, 0x002c, 0x0064
.hword 0x0000, 0xfc19, 0x03eb, 0x01f4, 0x0000, 0xfc19, 0x03eb, 0x01f4
.hword 0x0000, 0xfc19, 0x03eb, 0x01f4, 0x0000, 0x0000
# Appears to be related to Lakitu waving the checkered flag
glabel D_800E6834
.hword 0x0014, 0x0014, 0x0012, 0x001e, 0x0028, 0x0000, 0x0012, 0x0014
.hword 0x0028, 0xffec, 0x0012, 0x000a, 0x0028, 0x0000, 0x0012, 0x0000
.hword 0x0028, 0x0014, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0xffe2
.hword 0x0028, 0xffec, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0xffe2
.hword 0x0028, 0x0014, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0x001e
.hword 0x0028, 0xffec, 0x000b, 0x0032, 0x0028, 0x0000, 0x0012, 0x001e
.hword 0x0028, 0x0014, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0xffe2
.hword 0x0028, 0xffec, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0xffe2
.hword 0x0028, 0x0014, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0xffe2
.hword 0x0028, 0xffec, 0x000b, 0x0000, 0x0028, 0x0000, 0x0012, 0x001e
.hword 0x0028, 0x0014, 0x0012, 0x001e, 0x0028, 0x0000, 0x000c, 0x001e
.hword 0x0018, 0x0078, 0x000a, 0x0014, 0x0013, 0x0050, 0x000a, 0x000a
.hword 0x000e, 0x0032, 0x000a, 0x0005, 0x000d, 0x0014, 0x001e, 0x0000
.hword 0x000d, 0x000a, 0x001e, 0x0000, 0x000d, 0x0000, 0x001e, 0x0000
.hword 0x000e, 0xfffb, 0x000a, 0x0000, 0x0010, 0xfff6, 0x000a, 0x0000
.hword 0x001d, 0xffce, 0x000a, 0x0000, 0x0036, 0xff9c, 0x000a, 0x0000
.hword 0x0068, 0xff38, 0x0000, 0x0000, 0x00cc, 0xfe0c, 0x0000, 0x0000
.hword 0x00cc, 0xfe0c, 0x0000, 0x0000
# Appears to be related to Lakitu Second Lap animation
glabel D_800E694C
.hword 0x000b, 0x0032, 0x0014, 0x0050, 0x000a, 0x0014, 0x0013, 0x0028
.hword 0x000a, 0x0000, 0x0012, 0x001e, 0x000a, 0xfff8, 0x0011, 0x0014
.hword 0x001e, 0xfff4, 0x0010, 0x000a, 0x001e, 0x0000, 0x000f, 0x0000
.hword 0x001e, 0x000c, 0x000f, 0x000a, 0x000a, 0x0008, 0x0010, 0x0014
.hword 0x000a, 0x0000, 0x0011, 0x001e, 0x000a, 0xffec, 0x0012, 0x0028
.hword 0x000a, 0xffc4, 0x0013, 0x0064, 0x000a, 0xffc4, 0x0013, 0x0064
.hword 0x000a, 0x0000
# Appears to be related to Lakitu Reverse animation
glabel D_800E69B0
.hword 0x0007, 0x001e, 0x000e, 0x0032, 0x0028, 0x000a, 0x0010, 0x0014
.hword 0x0028, 0x0005, 0x0011, 0x000a, 0x003c, 0x0002, 0x0012, 0x0000
.hword 0x003c, 0x0000, 0x0012, 0x0000, 0x003c, 0x0000, 0x0012, 0x0000
.hword 0x0000, 0x0000, 0x0012, 0x0000, 0x0000, 0x0000, 0x0012, 0x0000
.hword 0x0000, 0x0000
# Might be related to Lakitu doing the countdown?
glabel D_800E69F4
.hword 0x0007, 0x0000, 0x0012, 0xfffb, 0x0014, 0x0000, 0x0012, 0xfff6
.hword 0x0014, 0x0000, 0x0012, 0x0005, 0x0010, 0xfff6, 0x0017, 0x000a
.hword 0x000a, 0xfff1, 0x0017, 0x0014, 0x000a, 0xffec, 0x001c, 0x001e
.hword 0x0000, 0xffe2, 0x0026, 0x00c8, 0x0000, 0xffe2, 0x0026, 0x00c8
.hword 0x0000, 0x0000
glabel D_800E6A38
.hword 0x04fa, 0xfff6, 0x0096, 0x0000, 0x4718, 0x003c, 0x007d, 0x0000
.hword 0x5550, 0x0046, 0x0096, 0x0000, 0x954c, 0x002d, 0x004b, 0x0000
.hword 0xae2e, 0x0028, 0x004b, 0x0000, 0x0e38, 0x001e, 0x0032, 0x0001
.hword 0xa384, 0x0032, 0x0064, 0x0001, 0xd548, 0x001e, 0x0032, 0x0001
.hword 0x31c4, 0x0032, 0x0064, 0x0002, 0x7ff8, 0x0037, 0x0064, 0x0002
.hword 0xaaa0, 0x004b, 0x0096, 0x0002, 0xb8d8, 0xfff9, 0x0064, 0x0002
.hword 0xee2a, 0x003c, 0x0050, 0x0002, 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6AA8
.hword 0x00b6, 0x0050, 0x0041, 0x0000, 0x4718, 0x003c, 0x0064, 0x0000
.hword 0x18e2, 0x0032, 0x004b, 0x0000, 0x7ff8, 0x0037, 0x0064, 0x0000
.hword 0x9ff6, 0x002d, 0x0032, 0x0000, 0xc710, 0x0046, 0x003c, 0x0000
.hword 0x0aaa, 0x001e, 0x0064, 0x0001, 0x5c6c, 0x0046, 0x0046, 0x0001
.hword 0x31c4, 0x0028, 0x0050, 0x0002, 0xf1b8, 0x0028, 0x004b, 0x0002
.hword 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6B00
.hword 0x1554, 0x001e, 0x00c8, 0x0000, 0xce2c, 0x001e, 0x00c8, 0x0000
.hword 0xa384, 0x001e, 0x00c8, 0x0001, 0x070c, 0x001e, 0x00c8, 0x0001
.hword 0x4718, 0x001e, 0x00c8, 0x0002, 0x8714, 0x001e, 0x00c8, 0x0003
.hword 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6B38
.hword 0x60b0, 0x003c, 0x007d, 0x0000, 0xb8d8, 0x0037, 0x0064, 0x0000
.hword 0xd548, 0x000a, 0x0082, 0x0000, 0xf1b8, 0x0023, 0x0064, 0x0000
.hword 0x04fa, 0x0046, 0x0096, 0x0001, 0x4718, 0x003c, 0x007d, 0x0001
.hword 0x954c, 0x002d, 0x004b, 0x0001, 0x0e38, 0x001e, 0x0032, 0x0002
.hword 0x8880, 0x0046, 0x0096, 0x0002, 0x31c4, 0x0032, 0x0064, 0x0003
.hword 0x5056, 0x0028, 0x004b, 0x0003, 0x7ff8, 0x0037, 0x0064, 0x0003
.hword 0xaaa0, 0x004b, 0x0096, 0x0003, 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6BA8
.hword 0x4718, 0x003c, 0x007d, 0x0000, 0x5550, 0x0046, 0x0096, 0x0000
.hword 0x954c, 0x002d, 0x004b, 0x0000, 0xf546, 0x0028, 0x004b, 0x0000
.hword 0x0e38, 0x001e, 0x0032, 0x0001, 0x0222, 0x0032, 0x0064, 0x0002
.hword 0x1ffe, 0x0028, 0x004b, 0x0002, 0x31c4, 0x0032, 0x0064, 0x0002
.hword 0x7ff8, 0x0037, 0x0064, 0x0002, 0xaaa0, 0x004b, 0x0096, 0x0002
.hword 0xb8d8, 0x0037, 0x0064, 0x0002, 0xdff2, 0x001e, 0x0032, 0x0002
.hword 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6C10
.hword 0x1ffe, 0x0028, 0x004b, 0x0000, 0x60b0, 0x003c, 0x007d, 0x0000
.hword 0xb8d8, 0x0037, 0x0064, 0x0000, 0x4718, 0x003c, 0x007d, 0x0001
.hword 0x954c, 0x002d, 0x004b, 0x0001, 0xf546, 0x0028, 0x004b, 0x0001
.hword 0x0e38, 0x001e, 0x0032, 0x0002, 0xa384, 0x0032, 0x0064, 0x0002
.hword 0xddd0, 0x0046, 0x0096, 0x0002, 0x0222, 0x0032, 0x0064, 0x0003
.hword 0x31c4, 0x0032, 0x0064, 0x0003, 0x7ff8, 0x0037, 0x0064, 0x0003
.hword 0xaaa0, 0x004b, 0x0096, 0x0003, 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6C80
.hword 0x0222, 0x0032, 0x000a, 0x0000, 0x04fa, 0x0046, 0x000f, 0x0000
.hword 0x093e, 0x000a, 0x0014, 0x0000, 0x0e38, 0x001e, 0x000f, 0x0000
.hword 0x11c6, 0x0028, 0x0014, 0x0000, 0x1554, 0xfff6, 0x000f, 0x0000
.hword 0x1ddc, 0x000a, 0x0011, 0x0000, 0x1ffe, 0x0030, 0x0019, 0x0000
.hword 0x271a, 0x0046, 0x0014, 0x0000, 0x27d0, 0xfff1, 0x0016, 0x0000
.hword 0x2c14, 0x0014, 0x000f, 0x0000, 0x31c4, 0x0032, 0x0016, 0x0000
.hword 0x327a, 0x0000, 0x000a, 0x0000, 0x3a4c, 0x000f, 0x0016, 0x0000
.hword 0x3ffc, 0x002d, 0x0011, 0x0000, 0x40b2, 0xffdd, 0x0016, 0x0000
.hword 0x4440, 0x0037, 0x0014, 0x0000, 0x4718, 0x003c, 0x000c, 0x0000
.hword 0x4718, 0x0050, 0x000c, 0x0000, 0x4aa6, 0xfff6, 0x000f, 0x0000
.hword 0x5056, 0x0028, 0x000a, 0x0000, 0x5550, 0x0046, 0x000f, 0x0000
.hword 0x60b0, 0x003c, 0x0016, 0x0000, 0x6388, 0xffdd, 0x0019, 0x0000
.hword 0x64f4, 0x0023, 0x0011, 0x0000, 0x6aa4, 0x004b, 0x0014, 0x0000
.hword 0x7054, 0x002d, 0x0019, 0x0000, 0x7498, 0x0014, 0x0012, 0x0000
.hword 0x7bb4, 0xfff1, 0x001b, 0x0000, 0x7ff8, 0x0037, 0x000a, 0x0000
.hword 0x8386, 0x0041, 0x0014, 0x0000, 0x8880, 0x0046, 0x000f, 0x0000
.hword 0x954c, 0x002d, 0x0011, 0x0000, 0x98da, 0x003c, 0x000f, 0x0000
.hword 0x9dd4, 0x0000, 0x000a, 0x0000, 0xa384, 0x0046, 0x000f, 0x0000
.hword 0xa43a, 0x0032, 0x0017, 0x0000, 0xaaa0, 0x004b, 0x000f, 0x0000
.hword 0xae2e, 0x0028, 0x0011, 0x0000, 0xb1bc, 0x0023, 0x0014, 0x0000
.hword 0xb8d8, 0xfff1, 0x000a, 0x0000, 0xbc66, 0xffe2, 0x000f, 0x0000
.hword 0xc710, 0x001e, 0x000c, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000
glabel D_800E6DE0
.hword 0x0222, 0x0050, 0x000a, 0x0000, 0x04fa, 0x0064, 0x000f, 0x0000
.hword 0x093e, 0x005a, 0x0014, 0x0000, 0x0e38, 0x003c, 0x000f, 0x0000
.hword 0x11c6, 0x0046, 0x0014, 0x0000, 0x1554, 0x0078, 0x000f, 0x0000
.hword 0x1c70, 0x001e, 0x0011, 0x0000, 0x1ffe, 0x0046, 0x0011, 0x0000
.hword 0x271a, 0x0064, 0x0014, 0x0000, 0x2c14, 0x0032, 0x000f, 0x0000
.hword 0x31c4, 0x0050, 0x000a, 0x0000, 0x3996, 0x0019, 0x000c, 0x0000
.hword 0x3a4c, 0x0037, 0x0016, 0x0000, 0x3bb8, 0x0019, 0x000c, 0x0000
.hword 0x3ffc, 0x004b, 0x0011, 0x0000, 0x4440, 0x0055, 0x0014, 0x0000
.hword 0x4718, 0x005a, 0x000c, 0x0000, 0x4aa6, 0x003c, 0x000f, 0x0000
.hword 0x5056, 0x0046, 0x000a, 0x0000, 0x5550, 0x0064, 0x000f, 0x0000
.hword 0x60b0, 0x005a, 0x0016, 0x0000, 0x64f4, 0x0041, 0x0014, 0x0000
.hword 0x6aa4, 0x0069, 0x0014, 0x0000, 0x7054, 0x004b, 0x0014, 0x0000
.hword 0x71c0, 0x0078, 0x0012, 0x0000, 0x7498, 0x003c, 0x0012, 0x0000
.hword 0x7ff8, 0x0055, 0x000a, 0x0000, 0x8714, 0x0073, 0x000a, 0x0000
.hword 0x8880, 0x0064, 0x000f, 0x0000, 0x954c, 0x004b, 0x0011, 0x0000
.hword 0x98da, 0x003c, 0x000f, 0x0000, 0x9dd4, 0x0032, 0x000a, 0x0000
.hword 0xa384, 0x0050, 0x000a, 0x0000, 0xa43a, 0x006e, 0x000a, 0x0000
.hword 0xaaa0, 0x0069, 0x000f, 0x0000, 0xae2e, 0x0046, 0x0011, 0x0000
.hword 0xb1bc, 0x0041, 0x0014, 0x0000, 0xb8d8, 0x0055, 0x000a, 0x0000
.hword 0xbc66, 0x003c, 0x000f, 0x0000, 0xc710, 0x0064, 0x000a, 0x0000
.hword 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
glabel D_800E6F30
.byte 0xc8, 0x01, 0x00
.byte 0x00, 0x70, 0x01
.byte 0x10, 0x79, 0x51
.byte 0x00, 0x59, 0x70
.byte 0x70, 0x55, 0x00
.byte 0x7a, 0x7e, 0x00
.byte 0x77, 0x2c, 0x24
.byte 0x30, 0x14, 0x58
glabel D_800E6F48
.byte 0xdc, 0x00, 0x00
.byte 0x00, 0x8c, 0x06
.byte 0x00, 0x00, 0x51
.byte 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00
# code_80071F00 end?

View File

@ -1,6 +1,7 @@
#ifndef OBJECTS_H
#define OBJECTS_H
#include "spline.h"
#include "common_structs.h"
#define OBJECT_LIST_SIZE 0x226
@ -34,8 +35,8 @@ typedef struct
/* 0x70 */ Gfx *model;
/* 0x74 */ Vtx *vertex;
/* 0x78 */ s8 unk_078[0x04];
/* 0x7C */ Vec4s *unk_07C;
/* 0x80 */ Vec4s *unk_080; // unk_080[][4]?
/* 0x7C */ SplineControlPoint *controlPoints;
/* 0x80 */ SplineData *spline;
/* 0x84 */ s16 unk_084[0xA];
/* 0x98 */ u16 timer;
/* 0x9A */ u16 unk_09A;
@ -283,6 +284,13 @@ extern Vec3s gHedgehogPatrolPoints[];
*/
extern s32 indexObjectList2[];
// This struct is used by a lot of different objects
// Stars, clouds, exahust smoke (I think?)
typedef struct {
Vec3su pos;
u16 id;
} StarSpawn;
#define NUM_BOOS 0xA
#define NUM_FIRE_BREATHS 4

101
include/spline.h Normal file
View File

@ -0,0 +1,101 @@
#ifndef SPLINE_H
#define SPLINE_H
#include "common_structs.h"
/*
These are some very good videos about splines/Bezier curves in general
The Beauty of Bezier Curves
https://www.youtube.com/watch?v=aVwxzDHniEw
The Continuity of Splines
https://www.youtube.com/watch?v=jvPPXbo87ds
*/
/*
This stuff is all about the b-splines used objects like Lakitu and the Boos on Banshee Boardwalk
For splines used during the award ceremony and credits, see src/ending/ceremony_and_credits.h
*/
typedef struct {
/* 0x0 */ Vec3s pos;
// Don't really know what to call this member.
// It somehow controls the speed of travel along a segment of the spline but I don't really get how it works
/* 0x6 */ s16 velocity;
} SplineControlPoint; // size = 0x8
// WARNING!!!
// You really, really shouldn't use this type for actual spline data. This is intended as a generic SplineData
// type. I would use a union, but that would cause significant ugliness elsewhere in the codebase
typedef struct {
// This name is a little misleading
// The control point arrays have more control points in them than this number indicates. Not sure why though.
s16 numControlPoints;
// This has to be an array for this to work, so just make it size 1
SplineControlPoint controlPoints[1];
} SplineData;
// All other SplineDataXX types are for use as data only. The size of the array in them matters a lot.
// But object structs should never have members with these types, just use the plain SplineData type
// Ghosts in BansheeBoardwalk x 2
// Seagulls in KoopaTroopaBeach x 2
// Penguins in Sherbet Land x 1
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[23];
} SplineData23;
// Ghosts in BansheeBoardwalk x 2
// Seagulls in KoopaTroopaBeach x 1
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[24];
} SplineData24;
// Ghosts in BansheeBoardwalk x 1
// Seagulls in KoopaTroopaBeach x 1
// Penguins in Sherbet Land x 1
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[25];
} SplineData25;
// Data of this type is unreferenced or only referenced in an unused function
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[4];
} SplineDataUnused4;
// Lakitu Countdown
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[15];
} SplineData15;
// Lakitu Checkered Flag
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[21];
} SplineData21;
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[13];
} SplineDataUnused13;
// Lakitu Second/Final Lap
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[12];
} SplineData12;
// Lakitu Reverse
typedef struct {
s16 numControlPoints;
SplineControlPoint controlPoints[8];
} SplineData8;
#endif

View File

@ -1,6 +1,8 @@
#ifndef WAYPOINTS_H
#define WAYPOINTS_H
#include "common_structs.h"
typedef struct {
/* 0x00 */ s16 posX;
/* 0x02 */ s16 posY;

View File

@ -209,7 +209,7 @@ SECTIONS
BUILD_DIR/src/profiler.o(.data);
BUILD_DIR/src/crash_screen.o(.data);
BUILD_DIR/src/staff_ghosts.o(.data);
BUILD_DIR/data/data_0DD0A0_1.o(.data);
BUILD_DIR/src/data/path_spawn_data.o(.data);
BUILD_DIR/src/camera.o(.data);
BUILD_DIR/src/render_player.o(.data);
BUILD_DIR/src/kart_dma.o(.data);
@ -219,7 +219,7 @@ SECTIONS
BUILD_DIR/src/code_80071F00.o(.data);
BUILD_DIR/src/data/data_800E45C0.o(.data);
BUILD_DIR/src/code_80057C60.o(.data);
BUILD_DIR/data/data_code_80071F00_2.o(.data);
BUILD_DIR/src/data/some_data.o(.data);
BUILD_DIR/src/effects.o(.data);
BUILD_DIR/src/code_80091440.o(.data);
BUILD_DIR/src/code_80091750.jp.o(.data);

View File

@ -29,6 +29,7 @@
#include "ending/podium_ceremony_actors.h"
#include "spawn_players.h"
#include "sounds.h"
#include "data/path_spawn_data.h"
s32 unk_code_80005FD0_pad[24];
Collision D_80162E70;

View File

@ -250,26 +250,6 @@ void func_8001C42C(void);
/* This is where I'd put my static data, if I had any */
extern UnkCommonTextureStruct0 *D_800DC720[];
// Suspected to be the "width" of each waypoint. See data_0DD0A0_1.s
extern f32 D_800DCA4C[];
extern s16 D_800DCA20[];
struct _struct_D_800DD9D0_0x10 {
/* 0x00 */ u16 unk0;
/* 0x02 */ u16 unk2;
/* 0x04 */ u16 unk4;
/* 0x06 */ u16 unk6;
/* 0x08 */ u16 unk8;
/* 0x0A */ char padA[6];
}; // size 0x10
extern uintptr_t gCoursePathTable[20][4];
extern uintptr_t D_800DC8D0[20][4];
// An array of 21 items. The final element is for podium ceremony.
extern struct _struct_D_800DD9D0_0x10 D_800DD9D0[];
extern Collision D_80162E70;
extern s16 D_80162EB0; // Possibly a float.
extern s16 D_80162EB2; // possibly [3]
@ -405,8 +385,6 @@ extern u32 D_801646C8;
extern u16 D_801646CC;
extern UnkStruct_46D0 D_801646D0[];
extern f32 D_800DCAA0[];
// See bss_80005FD0.s
extern f32 gCourseCompletionPercentByRank[NUM_PLAYERS];
@ -417,6 +395,4 @@ extern u16 D_80163E2A;
extern Gfx D_0D0076F8[];
extern s32 D_800DDB20;
#endif

View File

@ -34,6 +34,7 @@
#include "spawn_players.h"
#include "sounds.h"
#include "code_80071F00.h"
#include "data/some_data.h"
//! @warning this macro is undef'd at the end of this file

View File

@ -246,33 +246,12 @@ void func_8006E940(Player*, s8, s8);
void func_80075CA8(void);
void func_80085214();
// data/data_code_80071F00_2.s
extern Vtx gBalloonVertexPlane1[];
extern Vtx gBalloonVertexPlane2[];
extern s16 D_800E4730[];
extern u8 **D_800E4770[];
extern u8 **D_800E47A0[];
extern s32 D_800E47DC[];
extern s32 D_800E480C[];
extern u8 D_800E52D0[];
extern u8 D_800E55D0[14][3];
extern u16 D_800E55A0[];
extern u16 D_800E55B0[16];
extern u16 D_800E67B8[][4];
extern u16 D_800E6834[][4];
extern u16 D_800E694C[];
extern u16 D_800E69B0[][4];
extern u16 D_800E69F4[][4];
extern u8 D_800E6F30[][3];
extern u8 D_800E6F48[][3];
extern f32 D_801652A0[];
extern s32 D_80165590;

View File

@ -32,6 +32,7 @@
#include "src/ending/ceremony_and_credits.h"
#include "menus.h"
#include "data/other_textures.h"
#include "data/some_data.h"
//! @todo unused?
f32 D_800E43B0[] = {
@ -3000,7 +3001,7 @@ void update_obj_laikitu_countdown(s32 objectIndex, s32 arg1) {
break;
case 3:
set_object_flag_unk_054_true(objectIndex, 0x00000010);
func_80086F10(objectIndex, 1, D_800E67B8);
func_80086F10(objectIndex, 1, &D_800E67B8);
func_80072488(objectIndex);
break;
case 4:
@ -3075,7 +3076,7 @@ void init_obj_laikitu_red_flag(s32 objectIndex, s32 playerIndex) {
temp_v0->pos[1] = 5000.0f;
temp_v0->pos[0] = 5000.0f;
temp_v0->sizeScaling = 0.15f;
func_80086F10(objectIndex, 2, D_800E6834);
func_80086F10(objectIndex, 2, &D_800E6834);
set_object_flag_unk_054_false(objectIndex, 0x00000010);
func_80072488(objectIndex);
}
@ -3420,7 +3421,7 @@ void func_8007A3F0(s32 objectIndex, s32 arg1) {
gObjectList[objectIndex].pos[0] = var;
gObjectList[objectIndex].sizeScaling = 0.15f;
set_object_flag_unk_054_false(objectIndex, 0x00000010);
func_80086F10(objectIndex, 6, D_800E69B0);
func_80086F10(objectIndex, 6, &D_800E69B0);
gObjectList[objectIndex].unk_0D6 = 0;
func_80072488(objectIndex);
func_800C8F80((u8)arg1, 0x0100FA28);
@ -3450,7 +3451,7 @@ void update_obj_laikitu_reverse(s32 objectIndex, s32 playerId) {
switch (gObjectList[objectIndex].unk_0D6) { /* switch 1; irregular */
case 1: /* switch 1 */
if ((gObjectList[objectIndex].state >= 3) && (!(sp2C->effects & 0x400000))) {
func_80086F10(objectIndex, 6, D_800E69F4);
func_80086F10(objectIndex, 6, &D_800E69F4);
gObjectList[objectIndex].unk_0D6 = 2;
gObjectList[objectIndex].unk_04C = 0x00000050;
func_800C9018((u8) playerId, SOUND_ARG_LOAD(0x01, 0x00, 0xFA, 0x28));
@ -4328,7 +4329,7 @@ void func_8007C7B4(s32 someIndex, s32 arg1) {
s16 temp_s1_2;
s16 temp_s4;
s16 temp_s5;
s16 *something;
SplineData *something;
for (temp_a0 = 0; temp_a0 < 5; temp_a0++) {
objectIndex = indexObjectList3[someIndex + temp_a0];
@ -4339,7 +4340,7 @@ void func_8007C7B4(s32 someIndex, s32 arg1) {
temp_s5 = random_int(0x0050U) - 0x28;
random_int(0x1000U);
something = D_800E5D9C[temp_a0];
gObjectList[objectIndex].unk_080 = (Vec4s *) something;
gObjectList[objectIndex].spline = something;
gObjectList[objectIndex].origin_pos[0] = (f32) temp_s1_2;
gObjectList[objectIndex].origin_pos[1] = (f32) temp_s4;
gObjectList[objectIndex].origin_pos[2] = (f32) temp_s5;
@ -4562,7 +4563,7 @@ void func_8007D070(void) {
gObjectList[objectIndex].origin_pos[0] = D_8018CF1C->pos[0] + (sins(temp_t2) * temp_s2);
gObjectList[objectIndex].origin_pos[1] = temp_t5;
gObjectList[objectIndex].origin_pos[2] = D_8018CF1C->pos[2] + (coss(temp_t2) * temp_s2);
gObjectList[objectIndex].unk_080 = (Vec4s *) D_800E5D54;
gObjectList[objectIndex].spline = &D_800E5D54;
}
}
}
@ -5988,8 +5989,8 @@ void func_80080DE4(s32 arg0) {
}
#ifdef NON_MATCHING
extern f32 D_800E594C[5][2];
extern s16 D_800E597C[6];
extern f32 D_800E594C[][2];
extern u16 D_800E597C[6];
void func_80080E8C(s32 objectIndex1, s32 objectIndex2, s32 arg2) {
u16 anAngle;
@ -6508,7 +6509,7 @@ void func_8008241C(s32 objectIndex, s32 arg1) {
set_obj_direction_angle(objectIndex, 0U, 0U, 0U);
gObjectList[objectIndex].unk_034 = 1.0f;
func_80086EF0(objectIndex);
gObjectList[objectIndex].unk_080 = (Vec4s *) D_800E633C[arg1 % 4];
gObjectList[objectIndex].spline = D_800E633C[arg1 % 4];
set_object_flag_unk_054_true(objectIndex, 0x00000800);
func_80072488(objectIndex);
}
@ -7129,7 +7130,7 @@ void func_80084430(s32 objectIndex, UNUSED s32 arg1) {
set_obj_direction_angle(objectIndex, 0U, 0U, 0U);
temp_s0->unk_0DD = 1;
func_80086EF0(objectIndex);
temp_s0->unk_080 = (Vec4s *) *D_800E672C;
temp_s0->spline = D_800E672C[0];
set_object_flag_unk_054_true(objectIndex, 0x04000800);
temp_s0->type = func_80004EAC(d_course_sherbet_land_unk_data11, 0);
func_80072488(objectIndex);

View File

@ -4,13 +4,7 @@
#include "code_80004740.h"
#include "common_structs.h"
#include "camera.h"
// This struct is used by a lot of different objects
// Stars, clouds, exahust smoke (I think?)
typedef struct {
Vec3su pos;
u16 id;
} StarSpawn;
#include "objects.h"
/** @cond */
@ -395,20 +389,6 @@ extern s8 D_8018D198[];
extern s8 D_8018D1A8[];
extern s8 D_8018D1B8[];
// This is either 3 Vec3s as separate variables or an array of s16's or an array of vec3s.
// The other entries appear to be unused.
// data/data_code_80071F00_2.s
extern Vec3s D_800E634C[3]; // static?
extern Vtx D_800E4470[];
extern Vtx D_800E44B0[];
extern u8 *D_800E4570[];
// The exact type here is a little unknown, but s16* works for now
extern s16 *D_800E5D54[];
extern s16 *D_800E5D9C[5];
extern s8 D_800E5DB4[];
extern s16 *D_800E633C[];
extern s16 *D_800E672C[2];
/** @endcond */
#endif

View File

@ -31,10 +31,10 @@ void func_80086EF0(s32 objectIndex) {
func_80086E70(objectIndex);
}
void func_80086F10(s32 objectIndex, s32 arg1, Vec4s arg2[]) {
void func_80086F10(s32 objectIndex, s32 arg1, SplineData *spline) {
func_80086E70(objectIndex);
gObjectList[objectIndex].unk_0DE = arg1;
gObjectList[objectIndex].unk_080 = arg2;
gObjectList[objectIndex].spline = spline;
}
void func_80086F60(s32 objectIndex) {
@ -409,18 +409,18 @@ UNUSED void func_800880DC(void) {
}
void func_800880E4(s32 objectIndex) {
Vec4s *phi_v0;
SplineControlPoint *phi_v0;
s32 someIndex;
phi_v0 = gObjectList[objectIndex].unk_07C;
phi_v0 = gObjectList[objectIndex].controlPoints;
for (someIndex = 0; someIndex < 2; someIndex++, phi_v0++) {
D_80165760[someIndex] = (*phi_v0)[0];
D_80165770[someIndex] = (*phi_v0)[1];
D_80165780[someIndex] = (*phi_v0)[2];
D_80165760[someIndex] = phi_v0->pos[0];
D_80165770[someIndex] = phi_v0->pos[1];
D_80165780[someIndex] = phi_v0->pos[2];
}
}
void func_80088150(s32 arg0) {
gObjectList[arg0].unk_07C++;
gObjectList[arg0].controlPoints++;
}
void func_80088178(s32 objectIndex, s32 arg1) {
@ -439,18 +439,20 @@ void func_80088178(s32 objectIndex, s32 arg1) {
// if the code is too ugly for you, then go fix it without tampering with the register allocations
void func_80088228(s32 objectIndex) {
s16 *temp_v1;
Objects *temp_v0;
temp_v0 = &gObjectList[objectIndex];
temp_v1 = temp_v0->unk_080[0];
temp_v1 = &temp_v0->unk_080[0][1];
(&gObjectList[objectIndex])->unk_084[9] = 0;
(&gObjectList[objectIndex])->unk_07C = (s16 (*)[4]) temp_v1;
(&gObjectList[objectIndex])->unk_084[8] = temp_v1[-1];
(&gObjectList[objectIndex])->unk_028[0] = temp_v1[0];
(&gObjectList[objectIndex])->unk_028[1] = temp_v1[1];
temp_v0->unk_028[2] = temp_v1[2];
func_80086FD4(objectIndex);
Objects *temp_v0;
temp_v0 = &gObjectList[objectIndex];
temp_v0->unk_084[9] = 0;
temp_v0->controlPoints = temp_v0->spline->controlPoints;
/*
This is INCREDIBLY stupid. This should really be
temp_v0->unk_084[8] = temp_v0->spline->numControlPoints;
but for some unholy reason that doesn't match
*/
temp_v0->unk_084[8] = *((s16*)temp_v0->controlPoints - 1);
temp_v0->unk_028[0] = temp_v0->controlPoints[0].pos[0];
temp_v0->unk_028[1] = temp_v0->controlPoints[0].pos[1];
temp_v0->unk_028[2] = temp_v0->controlPoints[0].pos[2];
func_80086FD4(objectIndex);
}
@ -1435,12 +1437,12 @@ s32 func_8008A8B0(s16 arg0, s16 arg1) {
}
void func_8008A920(s32 objectIndex) {
Vec4s *temp_v0;
SplineControlPoint *temp_v0;
temp_v0 = gObjectList[objectIndex].unk_07C;
gObjectList[objectIndex].velocity[0] = (f32) (temp_v0[1][0] - temp_v0[0][0]) / (f32) temp_v0[0][3];
gObjectList[objectIndex].velocity[1] = (f32) (temp_v0[1][1] - temp_v0[0][1]) / (f32) temp_v0[0][3];
gObjectList[objectIndex].velocity[2] = (f32) (temp_v0[1][2] - temp_v0[0][2]) / (f32) temp_v0[0][3];
temp_v0 = gObjectList[objectIndex].controlPoints;
gObjectList[objectIndex].velocity[0] = (f32) (temp_v0[1].pos[0] - temp_v0[0].pos[0]) / (f32) temp_v0[0].velocity;
gObjectList[objectIndex].velocity[1] = (f32) (temp_v0[1].pos[1] - temp_v0[0].pos[1]) / (f32) temp_v0[0].velocity;
gObjectList[objectIndex].velocity[2] = (f32) (temp_v0[1].pos[2] - temp_v0[0].pos[2]) / (f32) temp_v0[0].velocity;
}
void func_8008A9B8(s32 objectIndex) {
@ -1448,27 +1450,28 @@ void func_8008A9B8(s32 objectIndex) {
Objects *temp_v0;
temp_v0 = &gObjectList[objectIndex];
temp_v0->unk_07C++;
temp_v0->unk_09A = (s16) (0x2710 / (s16) (*temp_v0->unk_07C)[3]);
temp_v0->controlPoints++;
temp_v0->unk_09A = (s16) (10000 / (s16) (temp_v0->controlPoints[0].velocity));
temp_v0->timer = 0;
func_8008A920(objectIndex);
}
void func_8008AA3C(s32 objectIndex) {
s16* temp_v1;
Objects* temp_v0;
Objects *temp_v0;
temp_v0 = &gObjectList[objectIndex];
temp_v1 = temp_v0->unk_080[0];
temp_v1 = &temp_v0->unk_080[0][1];
(&gObjectList[objectIndex])->unk_07C = (s16 (*)[4]) temp_v1;
(&gObjectList[objectIndex])->unk_084[9] = 0;
(&gObjectList[objectIndex])->timer = 0;
(&gObjectList[objectIndex])->unk_084[8] = temp_v1[-1];
(&gObjectList[objectIndex])->unk_028[0] = (f32) temp_v1[0];
(&gObjectList[objectIndex])->unk_028[1] = (f32) temp_v1[1];
(&gObjectList[objectIndex])->unk_028[2] = (f32) temp_v1[2];
(&gObjectList[objectIndex])->unk_09A = (s16) (0x2710 / (s16) temp_v1[3]);
temp_v0->controlPoints = temp_v0->spline->controlPoints;
temp_v0->unk_084[9] = 0;
temp_v0->timer = 0;
/*
This is INCREDIBLY stupid. This should really be
temp_v0->unk_084[8] = temp_v0->spline->numControlPoints;
but for some unholy reason that doesn't match
*/
temp_v0->unk_084[8] = *((s16*)temp_v0->controlPoints - 1);
temp_v0->unk_028[0] = temp_v0->controlPoints[0].pos[0];
temp_v0->unk_028[1] = temp_v0->controlPoints[0].pos[1];
temp_v0->unk_028[2] = temp_v0->controlPoints[0].pos[2];
temp_v0->unk_09A = (s16) (10000 / temp_v0->controlPoints[0].velocity);
func_8008A920(objectIndex);
func_80086FD4(objectIndex);
}
@ -1540,6 +1543,7 @@ UNUSED void func_8008ACD8(void) {
}
// Evaluate the Bernstein polynomials for a B-spline at `arg1` (which is `t`)
void func_8008ACE0(f32 arg0[], f32 arg1) {
arg0[0] = (f32) ((f64) ((f32) (1.0 - arg1) * (f32) (1.0 - arg1) * (f32) (1.0 - arg1)) / 6.0);
arg0[1] = (f32) ((((f64) (arg1 * arg1 * arg1) * 0.5) - arg1 * arg1) + 0.6666666666666666);
@ -1555,6 +1559,7 @@ UNUSED void func_8008ADC8(void) {
}
// Evaluate the Bernstein polynomials for the derivative of a B-spline at `arg1` (which is `t`)
void func_8008ADD0(f32 arg0[], f32 arg1) {
arg0[0] = (f32) (1.0 - arg1) * -0.5 * (f32) (1.0 - arg1);
arg0[1] = arg1 * arg1 * 1.5 - 2.0 * arg1;
@ -1570,6 +1575,7 @@ UNUSED void func_8008AE94(void) {
}
// D_80183DC8 is where the spline's derivative polynomial calculations are stored
void func_8008AE9C(s32 objectIndex) {
Objects *temp_v0;
@ -1600,6 +1606,7 @@ UNUSED void func_8008B030(void) {
}
// D_80183DA8 is where the spline's polynomial calculations are stored
void func_8008B038(s32 objectIndex) {
Objects *temp_v0;
@ -1632,13 +1639,13 @@ UNUSED void func_8008B1CC(void) {
void func_8008B1D4(s32 objectIndex) {
s32 someIndex;
Vec4s *test;
SplineControlPoint *test;
test = gObjectList[objectIndex].unk_07C;
test = gObjectList[objectIndex].controlPoints;
for (someIndex = 0; someIndex < 4; someIndex++) {
D_80165760[someIndex] = (*test)[0];
D_80165770[someIndex] = (*test)[1];
D_80165780[someIndex] = (*test)[2];
D_80165760[someIndex] = test->pos[0];
D_80165770[someIndex] = test->pos[1];
D_80165780[someIndex] = test->pos[2];
test++;
}
}
@ -1648,13 +1655,13 @@ void func_8008B284(s32 objectIndex) {
s32 sp0;
s32 temp_a1;
s32 temp_a2;
Vec4s *test;
SplineControlPoint *test;
test = gObjectList[objectIndex].unk_07C;
test = gObjectList[objectIndex].controlPoints;
temp_a1 = gObjectList[objectIndex].unk_084[9];
temp_a2 = (u16) gObjectList[objectIndex].unk_084[8];
if ((temp_a2 - 4) >= temp_a1) {
sp0 = 0x00002710;
sp0 = 10000;
} else if ((temp_a1 + 3) == temp_a2) {
sp0 = 2;
} else if ((temp_a1 + 2) == temp_a2) {
@ -1663,12 +1670,12 @@ void func_8008B284(s32 objectIndex) {
sp0 = 0;
}
for (someIndex = 0; someIndex < 4; someIndex++) {
D_80165760[someIndex] = (*test)[0];
D_80165770[someIndex] = (*test)[1];
D_80165780[someIndex] = (*test)[2];
D_80165760[someIndex] = test->pos[0];
D_80165770[someIndex] = test->pos[1];
D_80165780[someIndex] = test->pos[2];
if (sp0 == someIndex) {
// Huh???????? This makes no sense
test = (Vec4s *) &gObjectList[objectIndex].unk_080[0][1];
// Reset back to start of the spline path
test = gObjectList[objectIndex].spline->controlPoints;
} else {
test++;
}
@ -1676,24 +1683,28 @@ void func_8008B284(s32 objectIndex) {
}
void func_8008B3E4(s32 objectIndex) {
UNUSED Vec4s *test;
Objects *temp_v0;
SplineData *spline;
if (is_obj_index_flag_unk_054_inactive(objectIndex, 8) != 0) {
temp_v0 = &gObjectList[objectIndex];
temp_v0->unk_084[9] = 0;
temp_v0->timer = 0;
temp_v0->unk_07C = (Vec4s *) &gObjectList[objectIndex].unk_080[0][1];
// Huh????????? Negative array indexing is a near certain sign
// that something has gone wrong on our end.
temp_v0->unk_084[8] = temp_v0->unk_07C[0][-1];
temp_v0->controlPoints = temp_v0->spline->controlPoints;
/*
This is INCREDIBLY stupid. This should really be
temp_v0->unk_084[8] = temp_v0->spline->numControlPoints;
but for some unholy reason that doesn't match
*/
temp_v0->unk_084[8] = *(((s16*)temp_v0->controlPoints) - 1);
set_object_flag_unk_054_true(objectIndex, 8);
}
}
void func_8008B44C(s32 objectIndex) {
gObjectList[objectIndex].timer = 0;
gObjectList[objectIndex].unk_07C++;
gObjectList[objectIndex].controlPoints++;
}
void func_8008B478(s32 objectIndex, s32 arg1) {
@ -1709,14 +1720,20 @@ void func_8008B478(s32 objectIndex, s32 arg1) {
func_8008B1D4(objectIndex);
}
// I think the game treats each spline as being having a lenght of 10000
// This is getting the percent along the spline we want to reach,
// which is then treated as the `t` value given to the curve calculations
sp34 = ((f32)gObjectList[objectIndex].timer / 10000.0);
// Calculate the curve at `t`
func_8008B17C(objectIndex, sp34);
if (is_obj_index_flag_unk_054_active(objectIndex, 0x800) != 0) {
// Calculate the curve's derivative at `t`
func_8008AFE0(objectIndex, sp34);
}
var_f6 = gObjectList[objectIndex].unk_07C[0][3];
temp = gObjectList[objectIndex].unk_07C[0][7];
// These values somehow control how fast we travel along the curve
var_f6 = gObjectList[objectIndex].controlPoints[0].velocity;
temp = gObjectList[objectIndex].controlPoints[1].velocity;
gObjectList[objectIndex].unk_09A = 10000.0 / (((temp - var_f6) * sp34) + var_f6);
gObjectList[objectIndex].timer += gObjectList[objectIndex].unk_09A;
@ -1816,17 +1833,17 @@ void set_obj_velocity(s32 objectIndex, f32 arg1, f32 arg2, f32 arg3) {
gObjectList[objectIndex].velocity[2] = arg3;
}
void func_8008B928(s32 objectIndex, s16 arg1, s16 arg2, s16 arg3, s16 arg4[][4]) {
void func_8008B928(s32 objectIndex, s16 arg1, s16 arg2, s16 arg3, SplineData *spline) {
Objects *temp_s0;
temp_s0 = &gObjectList[objectIndex];
temp_s0->origin_pos[0] = (f32) arg1;
temp_s0->origin_pos[1] = (f32) arg2;
temp_s0->unk_080 = arg4;
temp_s0->spline = spline;
temp_s0->origin_pos[2] = (f32) arg3;
temp_s0->velocity[0] = (f32) (arg4[1][1] - arg4[0][1]);
temp_s0->velocity[1] = (f32) (arg4[1][2] - arg4[0][2]);
temp_s0->velocity[2] = (f32) (arg4[1][3] - arg4[0][3]);
temp_s0->velocity[0] = (f32) (spline->controlPoints[1].pos[0] - spline->controlPoints[0].pos[0]);
temp_s0->velocity[1] = (f32) (spline->controlPoints[1].pos[1] - spline->controlPoints[0].pos[1]);
temp_s0->velocity[2] = (f32) (spline->controlPoints[1].pos[2] - spline->controlPoints[0].pos[2]);
temp_s0->direction_angle[1] = get_y_direction_angle(objectIndex);
temp_s0->velocity[2] = func_800416D8(temp_s0->velocity[2], temp_s0->velocity[0], -temp_s0->direction_angle[1]);
temp_s0->direction_angle[0] = get_x_direction_angle(objectIndex);

View File

@ -3,11 +3,12 @@
#include "common_structs.h"
#include "camera.h"
#include "objects.h"
void func_80086E70(s32);
void func_80086EAC(s32, s32, s16);
void func_80086EF0(s32);
void func_80086F10(s32, s32, Vec4s[]);
void func_80086F10(s32, s32, SplineData*);
void func_80086F60(s32);
s32 func_80086FA4(s32);
void func_80086FD4(s32);
@ -149,7 +150,7 @@ void func_8008B844(s32);
void set_obj_direction_angle(s32, u16, u16, u16);
void set_obj_orientation(s32, u16, u16, u16);
void set_obj_velocity(s32, f32, f32, f32);
void func_8008B928(s32, s16, s16, s16, s16[][4]);
void func_8008B928(s32, s16, s16, s16, SplineData*);
void func_8008BA40(s32, s16, u16);
void func_8008BAB4(s32, s16, u16);
void func_8008BB28(s32, s16, u16);

377
src/data/path_spawn_data.c Normal file
View File

@ -0,0 +1,377 @@
#include "data/path_spawn_data.h"
#include "courses/all_course_data.h"
#include "ending/ceremony_data.inc.h"
UnkCommonTextureStruct0 *D_800DC720[] = {
D_0D008F28, D_0D008F80, D_0D008FB8, D_0D009058,
D_0D0090B8, D_0D0090F8, D_0D009158, D_0D009188,
D_0D0091E8, D_0D009210, D_0D009238, D_0D009260,
D_0D009280, D_0D0092C8, D_0D009310, D_0D008F18,
D_0D008F18, D_0D008F18, D_0D0093C0, D_0D008F18,
D_0D008F18, NULL,
};
TrackWaypoint nullPath = { 0x8000, 0x0000, 0x0000, 0x0000 };
TrackWaypoint *gCoursePathTable[][4] = {
{ d_course_mario_raceway_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_choco_mountain_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_bowsers_castle_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_banshee_boardwalk_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_yoshi_valley_unknown_waypoints0, d_course_yoshi_valley_unknown_waypoints1, d_course_yoshi_valley_unknown_waypoints2, d_course_yoshi_valley_unknown_waypoints3 },
{ d_course_frappe_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_koopa_troopa_beach_unknown_waypoints0, &nullPath, &nullPath, &nullPath },
{ d_course_royal_raceway_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_luigi_raceway_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_moo_moo_farm_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_toads_turnpike_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_kalimari_desert_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_sherbet_land_uknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_rainbow_road_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_wario_stadium_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ d_course_dks_jungle_parkway_unknown_waypoints, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ ending_sequence, ending_sequence2, ending_sequence3, ending_sequence4 },
};
TrackWaypoint *D_800DC8D0[][4] = {
{ d_course_mario_raceway_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_choco_mountain_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_bowsers_castle_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_banshee_boardwalk_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_yoshi_valley_track_waypoints0, d_course_yoshi_valley_track_waypoints1, d_course_yoshi_valley_track_waypoints2, d_course_yoshi_valley_track_waypoints3 },
{ d_course_frappe_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_koopa_troopa_beach_track_waypoints0, d_course_koopa_troopa_beach_track_waypoints1, &nullPath, &nullPath },
{ d_course_royal_raceway_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_luigi_raceway_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_moo_moo_farm_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_toads_turnpike_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_kalimari_desert_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_sherbet_land_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_rainbow_road_track_waypoints, &nullPath, &nullPath, &nullPath },
{ d_course_wario_staduim_track_waypoints, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ d_course_dks_jungle_parkway_track_waypoints, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
{ &nullPath, &nullPath, &nullPath, &nullPath },
};
s16 D_800DCA20[] = {
0x0030, 0x0035, 0x0035, 0x0035, 0x0035, 0x0035, 0x0035, 0x0035,
0x0030, 0x0030, 0x0028, 0x0035, 0x0035, 0x0026, 0x0035, 0x0035,
0x0035, 0x0035, 0x0035, 0x0028, 0x0035, 0x0000,
};
f32 D_800DCA4C[] = {
50.0, 35.0, 35.0, 40.0,
35.0, 50.0, 50.0, 50.0,
50.0, 50.0, 50.0, 50.0,
50.0, 50.0, 50.0, -1.0,
-1.0, -1.0, 40.0, -1.0,
40.0,
};
f32 D_800DCAA0[] = {
0.3, 0.3, 0.2, 0.4,
0.0, 0.3, 0.5, 0.4,
0.7, 0.5, 0.5, 0.3,
0.3, 0.4, 0.6, 0.1,
0.5, 0.5, 0.1, 0.5,
0.5,
};
// I think the types for D_800DCAF4, D_800DCB34, and D_800DCBB4 are all
// wrong in some way based on their usage in func_800088D8
// But I cannot be bothered to figure it out
s16 D_800DCAF4[] = {
0x0014, 0x0005, 0x000a, 0x000f, 0x0014, 0x0019, 0x001e, 0x0023,
0x001e, 0x0019, 0x0032, 0x004b, 0x0064, 0x007d, 0x0096, 0x00af,
0x0028, 0x001e, 0x003c, 0x005a, 0x0078, 0x0096, 0x00b4, 0x00d2,
0x0032, 0x0028, 0x0050, 0x0078, 0x00a0, 0x00c8, 0x00f0, 0x0118,
};
s16 D_800DCB34[] = {
0x0014, 0x0005, 0x000a, 0x000f, 0x0014, 0x0019, 0x001e, 0x0023,
0x001e, 0x0019, 0x002d, 0x0041, 0x005a, 0x0073, 0x008c, 0x00a5,
0x0028, 0x0003, 0x0006, 0x0010, 0x002e, 0x0031, 0x003b, 0x0059,
0x0032, 0x001e, 0x003c, 0x003f, 0x0049, 0x004e, 0x006c, 0x008a,
0x000a, 0x0005, 0x000a, 0x000f, 0x0014, 0x0019, 0x001e, 0x0023,
0x000a, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x000a, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x000a, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
};
s16 *D_800DCBB4[] = {
D_800DCB34, D_800DCAF4, D_800DCAF4, D_800DCAF4,
D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4,
D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4,
D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4,
D_800DCAF4, D_800DCAF4, D_800DCAF4, D_800DCAF4,
D_800DCAF4,
};
BombKartSpawn D_800DCC08[][NUM_BOMB_KARTS_MAX] = {
{
// Mario Raceway Bomb Kart spawns
{ 0x0028, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0109, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x011d, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01a4, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Choco Mountain Bomb Kart spawns
{ 0x008c, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00a5, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x014a, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0226, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0253, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Bowser Castle Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0104, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01b3, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Banshee Boardwalk Bomb Kart spawns
{ 0x006e, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00be, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01db, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0262, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Yoshi Valley Bomb Kart spawns
{ 0x0000, 0x0000, 0.8333333, -1533.0, -682.0, -103.0, 0.0 },
{ 0x000a, 0x0000, 0.8333333, -1565.0, -619.0, -109.0, 0.0 },
{ 0x0014, 0x0000, 0.8333333, -1529.0, -579.0, -109.0, 0.0 },
{ 0x001e, 0x0000, 0.8333333, -1588.0, -534.0, -106.0, 0.0 },
{ 0x0028, 0x0000, 0.8333333, -1598.0, -207.0, -105.0, 0.0 },
{ 0x0032, 0x0000, 0.8333333, -1646.0, -147.0, -93.0, 0.0 },
{ 0x003c, 0x0000, 0.8333333, -2532.0, -445.0, -90.0, 0.0 },
},
{
// Frappe Snowland Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0122, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x015e, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Koopa Troopa Beach Bomb Kart spawns
{ 0x003c, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0078, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0118, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01b3, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Royal Raceway Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0128, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0190, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x02ea, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Luigi Raceway Bomb Kart spawns
{ 0x0032, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0131, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01b8, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0203, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Moo Moo Farm Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x008c, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00e1, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x013c, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01b2, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Toads Turnpike Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Kalamari Desert Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x008a, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0118, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0194, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x01fe, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Sherbet Land Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Rainbow Road Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Wario Stadium Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00c8, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Block Fort Bomb Kart spawns
{ 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
},
{
// Skyscraper Bomb Kart spawns
{ 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
},
{
// Double Deck Bomb Kart spawns
{ 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
},
{
// DK Jungle Bomb Kart spawns
{ 0x0032, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0096, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00be, 0x0001, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x00fa, 0x0003, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
{ 0x0000, 0x0000, 0.8333333, 0.0, 0.0, 0.0, 0.0 },
},
{
// Big Donut Bomb Kart spawns
{ 0x0014, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
},
{
// Award Ceremony Bomb Kart spawns
{ 0x0003, 0x0005, 1.250000, 0.0, 0.0, 0.0, 0.0 },
{ 0x0028, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x003c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0050, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0064, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x0078, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
{ 0x008c, 0x0000, 1.0, 0.0, 0.0, 0.0, 0.0 },
},
};
struct _struct_D_800DD9D0_0x10 D_800DD9D0[] = {
{ 0x0258, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02bc, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x030c, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02ee, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02b2, 0x02a8, 0x02b2, 0x0320, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02ee, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02bc, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x03e8, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02da, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x0230, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x03e8, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x02bc, 0x0001, 0x0001, 0x0001, 0x0226, { 0x0000, 0x0000, 0x0000}},
{ 0x02bc, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x076c, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x0640, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x0370, 0x0001, 0x0001, 0x0001, 0x01f4, { 0x0000, 0x0000, 0x0000}},
{ 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, { 0x0000, 0x0000, 0x0000}},
{ 0x01f4, 0x01f4, 0x01f4, 0x01f4, 0x0001, { 0x0000, 0x0000, 0x0000}},
};
s32 D_800DDB20 = 0x00000000;
s32 D_800DDB24 = 0x00000001;

View File

@ -0,0 +1,33 @@
#ifndef PATH_SPAWN_DATA_H
#define PATH_SPAWN_DATA_H
#include "waypoints.h"
#include "common_structs.h"
#include "common_textures.h"
#include "include/bomb_kart.h"
struct _struct_D_800DD9D0_0x10 {
/* 0x00 */ u16 unk0;
/* 0x02 */ u16 unk2;
/* 0x04 */ u16 unk4;
/* 0x06 */ u16 unk6;
/* 0x08 */ u16 unk8;
/* 0x0A */ char padA[6];
}; // size 0x10
extern UnkCommonTextureStruct0 *D_800DC720[];
extern TrackWaypoint nullPath;
extern TrackWaypoint *gCoursePathTable[][4];
extern TrackWaypoint *D_800DC8D0[][4];
extern s16 D_800DCA20[];
extern f32 D_800DCA4C[];
extern f32 D_800DCAA0[];
extern s16 D_800DCAF4[];
extern s16 D_800DCB34[];
extern s16 *D_800DCBB4[];
extern BombKartSpawn D_800DCC08[][NUM_BOMB_KARTS_MAX];
extern struct _struct_D_800DD9D0_0x10 D_800DD9D0[];
extern s32 D_800DDB20;
extern s32 D_800DDB24;
#endif

1277
src/data/some_data.c Normal file

File diff suppressed because it is too large Load Diff

90
src/data/some_data.h Normal file
View File

@ -0,0 +1,90 @@
#ifndef SOME_DATA_H
#define SOME_DATA_H
#include "PR/gbi.h"
#include "spline.h"
#include "data/other_textures.h"
#include "objects.h"
extern Vtx D_800E49C0[];
extern Vtx D_800E4AC0[];
extern Vtx D_800E4BC0[];
extern Vtx D_800E4CC0[];
extern Vtx D_800E4DC0[];
extern Vtx D_800E4EC0[];
extern Vtx D_800E4FD0[];
extern Vtx D_800E50D0[];
extern Vtx D_800E51D0[];
extern Vtx D_800E5210[];
extern Vtx gBalloonVertexPlane1[];
extern Vtx gBalloonVertexPlane2[];
extern u8 D_800E52D0[];
extern u8 *gCourseOutlineTextures[];
extern s16 D_800E5520[];
extern s16 D_800E5548[];
extern u16 D_800E55A0[];
extern u16 D_800E55B0[];
extern u8 D_800E55D0[][3];
extern s32 D_800E55F8[];
extern s32 D_800E5618[];
extern s8 D_800E5628[];
extern Vec3s gFireBreathsSpawns[];
extern s16 D_800E5740[];
extern s16 D_800E579C[];
extern s16 D_800E57F8[];
extern ThwompSpawn gThomwpSpawns50CC[];
extern ThwompSpawn gThwompSpawns100CCExtra[];
extern ThwompSpawn gThomwpSpawns150CC[];
extern f32 D_800E594C[][2];
extern u64 D_800E5974;
extern u16 D_800E597C[];
extern SplineData23 D_800E5988;
extern SplineData24 D_800E5A44;
extern SplineData25 D_800E5B08;
extern SplineData23 D_800E5BD4;
extern SplineData24 D_800E5C90;
extern SplineDataUnused4 D_800E5D54;
extern SplineDataUnused4 D_800E5D78;
extern SplineData *D_800E5D9C[];
extern SplineData *D_800E5DB0;
extern s8 D_800E5DB4[];
extern YVFlagPoleSpawn D_800E5DF4[];
extern HegdehogSpawn gHedgehogSpawns[];
extern Vec3s gHedgehogPatrolPoints[];
extern SnowmanSpawn gSnowmanSpawns[];
extern CrabSpawn gCrabSpawns[];
extern s16 D_800E5FD0[];
extern SplineData23 D_800E6034;
extern SplineData24 D_800E60F0;
extern SplineData25 D_800E61B4;
extern SplineData23 D_800E6280;
extern SplineData *D_800E633C[];
extern Vec3s D_800E634C[];
extern Vec3s gMoleSpawns[];
extern SplineData23 D_800E641C;
extern SplineData24 D_800E64D8;
extern SplineData25 D_800E659C;
extern SplineData23 D_800E6668;
extern SplineData *D_800E6724[];
extern SplineData *D_800E672C[];
extern Vec3f D_800E6734[];
// This should really be `extern Vec3s gTorchSpawns[];`
extern s16 gTorchSpawns[];
extern SplineData15 D_800E67B8;
extern SplineData21 D_800E6834;
extern SplineDataUnused13 D_800E68E0;
extern SplineData12 D_800E694C;
extern SplineData8 D_800E69B0;
extern SplineData8 D_800E69F4;
extern StarSpawn D_800E6A38[];
extern StarSpawn D_800E6AA8[];
extern StarSpawn D_800E6B00[];
extern StarSpawn D_800E6B38[];
extern StarSpawn D_800E6BA8[];
extern StarSpawn D_800E6C10[];
extern StarSpawn D_800E6C80[];
extern StarSpawn D_800E6DE0[];
extern u8 D_800E6F30[][3];
extern u8 D_800E6F48[][3];
#endif

View File

@ -33,6 +33,7 @@
#include "src/data/data_800E45C0.h"
#include "courses/all_course_data.h"
#include <vehicles.h>
#include "data/some_data.h"
void func_800431B0(Vec3f pos, Vec3su orientation, f32 scale, Vtx *vtx) {
rsp_set_matrix_transformation(pos, orientation, scale);
@ -4466,7 +4467,7 @@ void debug_print_number(s32 *x, s32 *y, s32 number, u32 numDigits)
debug_wrap_text(x, y);
n = number;
if (n < 0) {
func_800573E4(*x, *y, *D_800E5655);
func_800573E4(*x, *y, D_800E5628[0x2D]);
debug_wrap_text(x, y);
n = -number;
}
@ -4553,25 +4554,25 @@ UNUSED void func_80057814(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
UNUSED void func_80057858(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
debug_print_string(&arg0, &arg1, arg2);
debug_print_number(&arg0, &arg1, arg3, 16);
func_800573E4(arg0, arg1, D_800E5670[0]);
func_800573E4(arg0, arg1, D_800E5628[0x48]);
}
UNUSED void func_800578B0(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
debug_print_string(&arg0, &arg1, arg2);
func_8005762C(&arg0, &arg1, arg3, 16);
func_800573E4(arg0, arg1, D_800E5670[0]);
func_800573E4(arg0, arg1, D_800E5628[0x48]);
}
UNUSED void func_80057908(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
debug_print_string(&arg0, &arg1, arg2);
debug_print_number(&arg0, &arg1, arg3, 2);
func_800573E4(arg0, arg1, D_800E566A[0]);
func_800573E4(arg0, arg1, D_800E5628[0x42]);
}
UNUSED void func_80057960(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
debug_print_string(&arg0, &arg1, arg2);
func_8005762C(&arg0, &arg1, arg3, 2);
func_800573E4(arg0, arg1, D_800E566A[0]);
func_800573E4(arg0, arg1, D_800E5628[0x42]);
}
UNUSED void func_800579B8(s32 arg0, s32 arg1, char *arg2) {
@ -4598,7 +4599,7 @@ UNUSED void func_80057AA8(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
load_debug_font();
debug_print_string(&arg0, &arg1, arg2);
debug_print_number(&arg0, &arg1, arg3, 16);
func_800573E4(arg0, arg1, D_800E5670[0]);
func_800573E4(arg0, arg1, D_800E5628[0x48]);
func_80057778();
}
@ -4606,7 +4607,7 @@ UNUSED void func_80057B14(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
load_debug_font();
debug_print_string(&arg0, &arg1, arg2);
func_8005762C(&arg0, &arg1, arg3, 16);
func_800573E4(arg0, arg1, D_800E5670[0]);
func_800573E4(arg0, arg1, D_800E5628[0x48]);
func_80057778();
}
@ -4614,7 +4615,7 @@ UNUSED void func_80057B80(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
load_debug_font();
debug_print_string(&arg0, &arg1, arg2);
debug_print_number(&arg0, &arg1, arg3, 2);
func_800573E4(arg0, arg1, D_800E566A[0]);
func_800573E4(arg0, arg1, D_800E5628[0x42]);
func_80057778();
}
@ -4622,6 +4623,6 @@ UNUSED void func_80057BEC(s32 arg0, s32 arg1, char *arg2, u32 arg3) {
load_debug_font();
debug_print_string(&arg0, &arg1, arg2);
func_8005762C(&arg0, &arg1, arg3, 2);
func_800573E4(arg0, arg1, D_800E566A[0]);
func_800573E4(arg0, arg1, D_800E5628[0x42]);
func_80057778();
}

View File

@ -458,14 +458,6 @@ extern Lights1 D_800E4668;
extern Lights1 D_800E4680;
extern Lights1 D_800E4698;
extern u8 D_800E52D0[];
extern s32 D_800E55F8[];
extern s32 D_800E5618[4];// = { 0x000000FF, 0x000000D7, 0x000000A2, 0x00000061 };
extern s8 D_800E5628[];
extern s8 D_800E5655[0x15]; //[0x15] = { 0x2B, 0x24, 0x2D, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0x2C, 0x36, 0x3C, 0x2F, 0x3D, 0x28, 0x30, 0x0A, };
extern s8 D_800E5670[];
extern s8 D_800E566A[];
extern u8 d_course_bowsers_castle_thwomp_tlut[]; // Some type of pallette?
#endif

View File

@ -3141,9 +3141,6 @@ Variable Name | Memory Address
[D_800E55F8](@ref D_800E55F8) | 0x800E55F8
[D_800E5618](@ref D_800E5618) | 0x800E5618
[D_800E5628](@ref D_800E5628) | 0x800E5628
[D_800E5655](@ref D_800E5655) | 0x800E5655
[D_800E566A](@ref D_800E566A) | 0x800E566A
[D_800E5670](@ref D_800E5670) | 0x800E5670
[gFireBreathsSpawns](@ref gFireBreathsSpawns) | 0x800E5728
[D_800E5740](@ref D_800E5740) | 0x800E5740
[D_800E579C](@ref D_800E579C) | 0x800E579C
@ -3152,7 +3149,6 @@ Variable Name | Memory Address
[gThwompSpawns100CCExtra](@ref gThwompSpawns100CCExtra) | 0x800E5894
[gThomwpSpawns150CC](@ref gThomwpSpawns150CC) | 0x800E58EC
[D_800E594C](@ref D_800E594C) | 0x800E594C
[D_800E5974](@ref D_800E5974) | 0x800E5974
[D_800E597C](@ref D_800E597C) | 0x800E597C
[D_800E5988](@ref D_800E5988) | 0x800E5988
[D_800E5A44](@ref D_800E5A44) | 0x800E5A44
@ -3160,13 +3156,13 @@ Variable Name | Memory Address
[D_800E5BD4](@ref D_800E5BD4) | 0x800E5BD4
[D_800E5C90](@ref D_800E5C90) | 0x800E5C90
[D_800E5D54](@ref D_800E5D54) | 0x800E5D54
[D_800E5D78](@ref D_800E5D78) | 0x800E5D78
[D_800E5D9C](@ref D_800E5D9C) | 0x800E5D9C
[D_800E5DB0](@ref D_800E5DB0) | 0x800E5DB0
[D_800E5DB4](@ref D_800E5DB4) | 0x800E5DB4
[D_800E5DF4](@ref D_800E5DF4) | 0x800E5DF4
[gHedgehogSpawns](@ref gHedgehogSpawns) | 0x800E5E14
[gHedgehogPatrolPoints](@ref gHedgehogPatrolPoints) | 0x800E5E8C
[D_800E5EE6](@ref D_800E5EE6) | 0x800E5EE6
[gSnowmanSpawns](@ref gSnowmanSpawns) | 0x800E5EE8
[gCrabSpawns](@ref gCrabSpawns) | 0x800E5F80
[D_800E5FD0](@ref D_800E5FD0) | 0x800E5FD0
@ -3177,7 +3173,6 @@ Variable Name | Memory Address
[D_800E633C](@ref D_800E633C) | 0x800E633C
[D_800E634C](@ref D_800E634C) | 0x800E634C
[gMoleSpawns](@ref gMoleSpawns) | 0x800E6360
[D_800E641A](@ref D_800E641A) | 0x800E641A
[D_800E641C](@ref D_800E641C) | 0x800E641C
[D_800E64D8](@ref D_800E64D8) | 0x800E64D8
[D_800E659C](@ref D_800E659C) | 0x800E659C
@ -3188,6 +3183,7 @@ Variable Name | Memory Address
[gTorchSpawns](@ref gTorchSpawns) | 0x800E6788
[D_800E67B8](@ref D_800E67B8) | 0x800E67B8
[D_800E6834](@ref D_800E6834) | 0x800E6834
[D_800E68E0](@ref D_800E68E0) | 0x800E68E0
[D_800E694C](@ref D_800E694C) | 0x800E694C
[D_800E69B0](@ref D_800E69B0) | 0x800E69B0
[D_800E69F4](@ref D_800E69F4) | 0x800E69F4