Mario Kart 64
code_80005FD0.h
Go to the documentation of this file.
1 #ifndef CODE_80005FD0_H
2 #define CODE_80005FD0_H
3 
4 #include "vehicles.h"
5 #include "camera.h"
6 #include "waypoints.h"
7 
9  /* 0x0 */ u16 unk0;
10  /* 0x2 */ s16 ffff;
11  /* 0x4 */ s16 timer; // confirm?
12  /* 0x6 */ s16 laps; // confirm?
13  /* 0x8 */ s32 blank;
14  /* 0xC */ s32 unkC;
15 };
16 
24  // s16 compilerPadding;
27 };
28 
29 typedef struct {
34 } Test;
35 
36 extern Test D_801634F8[];
37 
38 // Something related to CPU item usage
39 typedef struct {
40  /* 0x00 */ s16 unk_00;
41  /* 0x02 */ s16 actorIndex;
42  /* 0x04 */ s16 unk_04;
43  /* 0x06 */ s16 unk_06;
44  /* 0x08 */ s16 unk_08;
45  /* 0x0A */ s16 unk_0A;
46  /* 0x0C */ s16 unk_0C;
47  /* 0x0E */ s16 unk_0E;
48 } D_801642D8_entry; // size = 0x10
49 
51 
52 /* Function Prototypes */
53 void func_80012190(void);
54 void func_8000BA14(u16, f32, f32, s16);
55 void func_80014BDC(void);
56 void func_80014A88(void);
57 void func_80014934(void);
58 void func_800147E0(void);
59 void func_800132F4(void);
61 void func_800100F0(s32);
62 void func_80011E38(s32);
63 void func_800120C8(void);
65 void func_800127E0(void);
69 void set_places(void);
70 void func_80010E6C(s32 pathIndex);
72 void func_800070F4(void);
73 void func_800074D4(void);
75 
76 void func_80008DC0(s32);
78 void func_80008F38(s32);
79 
80 void func_80009000(s32);
81 void func_800090F0(s32, Player*);
83 void func_800097E0(void);
85 
89 void func_8000B95C(s32, u16, s32);
92 
100 
110 
115 void func_8000EE58(s32);
116 void func_8000EEDC(void);
117 void func_8000EF20(void);
118 
119 void func_8000F0E0(void);
120 void func_8000F124(void);
121 void func_8000F2BC(TrackWaypoint*, size_t);
122 void func_8000F2DC(void);
123 
124 void func_80010218(s32);
126 void func_800107C4(s32);
128 void func_80010DBC(s32);
129 void func_80010E6C(s32);
132 
135 s32 func_8001168C(void*, void*, s32);
136 void func_80011A5C(void);
137 void func_80011AB8(s32);
138 void func_80011AE4(s32);
139 
141 void init_course_vehicles(void);
143 void func_80012AC0(void);
144 void func_80012DC0(s32, Player*);
145 
146 void func_80013054(void);
147 void func_800131DC(s32);
148 void func_800133C4(void);
149 void func_80013854(Player*);
154 
157 void func_8001487C(void);
158 void func_800148C4(s32, Player*);
159 void func_8001490C(s32);
160 void func_800149D0(void);
161 void func_80014A18(s32, Player*);
162 void func_80014A60(s32);
163 void func_80014B24(void);
164 void func_80014B6C(s32, Player*);
165 void func_80014BB4(s32);
166 void func_80014C78(void);
167 void func_80014CC0(s32, Player*);
168 void func_80014D08(s32);
169 void func_80014D30(s32, s32);
171 
172 void func_800151A4(Camera*, s32);
173 void func_8001530C(void);
176 void func_80015544(s32, f32, s32, s32);
177 void func_8001577C(Camera*, s32, s32, s32);
178 void func_80015A9C(s32, f32, s32, s16);
179 
180 void func_800162CC(s32, f32, s32, s16);
182 
183 void func_80017720(s32, f32, s32, s16);
184 void func_80017F10(s32, f32, s32, s16);
185 
186 void func_80018718(s32, f32, s32, s16);
187 
188 void func_80019118(s32, f32, s32, s16);
189 void func_8001933C(Camera*, s32, s32, s32);
190 void func_8001968C(void);
191 void func_8001969C(s32, f32, s32, s16);
192 void func_80019760(Camera*, s32, s32, s32);
193 void func_80019890(s32, s32);
194 void func_80019B50(s32, u16);
195 void func_80019C50(s32);
197 void func_80019DE4(void);
198 void func_80019DF4(void);
199 void func_80019E58(void);
200 void func_80019ED0(void);
202 
204 void func_8001A0DC(u16*, Camera*, Player*, s8, s32);
205 void func_8001A124(s32, s32);
207 void func_8001A348(s32, f32, s32);
208 void func_8001A3D8(s32, f32, s32);
209 void func_8001A450(s32, s32, s32);
210 void func_8001A518(s32, s32, s32);
212 void func_8001AB00(void);
213 void func_8001AB74(s32, s16*, s32);
215 void func_8001ABEC(struct struct_801642D8*);
217 
218 void func_8001BE78(void);
219 
220 void func_8001C05C(void);
221 void func_8001C14C(void);
222 void func_8001C3C4(s32);
223 void func_8001C42C(void);
224 
225 /* This is where I'd put my static data, if I had any */
226 // 0 or 1, only 1 when when in extra (mirror) mode
227 extern s16 D_8016347A;
228 
229 // Suspected to be the "width" of each waypoint. See data_0DD0A0_1.s
230 extern f32 D_800DCA4C[];
231 
232 // See bss_80005FD0.s
233 extern Collision D_80162E70;
234 extern s16 D_80162EB0;
235 extern s16 D_80162FCC;
236 extern f32 D_80162FA0[];
237 
238 extern s16 D_80164378[];
239 extern s32 D_801643E0[];
240 extern struct unexpiredActors gUnexpiredActorsList[];
241 extern s32 D_801643E0[];
242 extern s32 D_80164408[];
243 extern s32 D_8016448C;
244 extern f32 D_80164498[];
245 extern f32 D_801645F8[];
246 extern s32 D_80164608[];
247 extern f32 D_80164618[];
248 extern f32 D_80164638[];
249 extern f32 D_80164648[];
250 extern f32 D_80164658[];
251 extern s16 D_80164670[];
252 extern s16 D_80164672;
253 extern s16 D_80164674;
254 extern s16 D_80164676;
255 extern s16 D_80164678[]; // Size 4? Is the three below this fake?
256 extern s16 D_8016467A;
257 extern s16 D_8016467C;
258 extern s16 D_8016467E;
259 extern s16 D_80164680[];
260 extern s16 D_80164682;
261 extern f32 D_80164688[];
262 extern s16 D_801646C0[];
263 extern s16 D_801646CC;
264 extern s16 D_801630FC;
265 extern s16 D_801631C8;
266 extern u16 D_801631E0[8];
267 extern s32 D_80163238;
268 extern s16 D_801632B8[];
269 extern s16 D_801632D0[];
270 extern u16 D_801632E8[];
271 extern s32 D_8016337C;
272 extern u16 D_80163410[]; // One per player?
273 extern s16 D_80163478;
274 extern s32 D_80163488;
275 extern s16 D_8016348C;
276 extern s16 D_801634D8[8];
277 extern s32 D_8016359C;
278 extern u16 D_801637BC[2];
279 extern u16 D_801637BE;
280 extern s32 D_80163DD8[];
281 extern u16 D_80163E2A;
282 
283 extern Gfx D_0D0076F8[];
284 
285 extern s32 D_800DDB20;
286 
287 #endif
void func_80012190(void)
Definition: code_80005FD0.c:5425
void func_8001C14C(void)
void func_8000EEDC(void)
Definition: code_80005FD0.c:3820
s32 D_80164608[]
void func_800149D0(void)
Definition: code_80005FD0.c:6436
D_801642D8_entry D_801642D8[]
void func_80009000(s32)
Definition: code_80005FD0.c:1345
void func_80008F38(s32)
Definition: code_80005FD0.c:1335
s16 func_8000D6D0(Vec3f, s16 *, f32, f32, s16, s16)
s16 D_80164670[]
void func_800097E0(void)
Definition: code_80005FD0.c:1587
s32 D_8016448C
void func_80017720(s32, f32, s32, s16)
Definition: code_80005FD0.c:7488
Collision D_80162E70
Definition: code_80005FD0.c:32
void func_8001ABEC(struct struct_801642D8 *)
Definition: code_80005FD0.c:8801
s16 D_80164680[]
s16 func_8000D2B4(f32, f32, f32, s16, s32)
Definition: code_80005FD0.c:3038
void func_800148C4(s32, Player *)
Definition: code_80005FD0.c:6416
void func_80013F7C(s32, Player *, VehicleStuff *, f32, f32, s32, u32)
s16 D_80162FCC
void func_80015544(s32, f32, s32, s32)
Definition: code_80005FD0.c:6733
void func_8000F2BC(TrackWaypoint *, size_t)
Definition: code_80005FD0.c:3984
s16 func_8000CC88(f32, f32, f32, Player *, s32, s32 *)
Definition: code_80005FD0.c:2863
void func_8000F2DC(void)
Definition: code_80005FD0.c:4002
s32 func_8001A310(s32, s32)
Definition: code_80005FD0.c:8519
void func_8001A0A4(u16 *, Camera *, Player *, s8, s32)
void func_8000F0E0(void)
Definition: code_80005FD0.c:3875
void func_8001A124(s32, s32)
Definition: code_80005FD0.c:8468
f32 D_80164658[]
void func_8001C3C4(s32)
Definition: code_80005FD0.c:9420
s32 D_8016359C
f32 func_800145A8(s16, f32, s16)
Definition: code_80005FD0.c:6331
void func_80014BB4(s32)
Definition: code_80005FD0.c:6474
void func_80014CC0(s32, Player *)
Definition: code_80005FD0.c:6497
void func_80015314(s32, f32, s32)
s16 func_8000CD24(f32, f32, f32, s16, Player *, s32, s32)
void func_8000BBD8(u16, f32, s16)
void func_80014B6C(s32, Player *)
Definition: code_80005FD0.c:6470
void func_8001C05C(void)
Definition: code_80005FD0.c:9317
void func_80017F10(s32, f32, s32, s16)
Definition: code_80005FD0.c:7669
void func_80010DBC(s32)
Definition: code_80005FD0.c:4777
void func_800162CC(s32, f32, s32, s16)
Definition: code_80005FD0.c:7010
void func_8001490C(s32)
Definition: code_80005FD0.c:6420
void func_8000EE58(s32)
Definition: code_80005FD0.c:3807
u16 D_801637BE
void func_800147E0(void)
Definition: code_80005FD0.c:6399
void func_8001487C(void)
Definition: code_80005FD0.c:6409
s16 func_8000D940(Vec3f, s16 *, f32, f32, s16)
void func_80013054(void)
Definition: code_80005FD0.c:5780
s16 D_8016467A
s32 func_8001168C(void *, void *, s32)
f32 D_80164688[]
void func_8001A348(s32, f32, s32)
Definition: code_80005FD0.c:8526
f32 func_80009258(s32, f32, f32)
void func_8000EF20(void)
Definition: code_80005FD0.c:3831
void func_8000BA14(u16, f32, f32, s16)
Definition: code_80005FD0.c:2532
void func_8001530C(void)
Definition: code_80005FD0.c:6668
f32 D_80164618[]
void func_8001A518(s32, s32, s32)
Definition: code_80005FD0.c:8563
s32 func_8000EE10(s32)
Definition: code_80005FD0.c:3799
s16 func_8000C884(f32, f32, f32, s16, s32, u16)
Definition: code_80005FD0.c:2750
void func_8001A0DC(u16 *, Camera *, Player *, s8, s32)
Definition: code_80005FD0.c:8463
void func_80014A60(s32)
Definition: code_80005FD0.c:6447
s32 func_8000EDC8(s32)
Definition: code_80005FD0.c:3791
f32 D_80164648[]
s16 D_80164672
s16 func_8000DBAC(Vec3f, s16 *, f32)
void set_places(void)
Definition: code_80005FD0.c:523
struct unexpiredActors gUnexpiredActorsList[]
void func_800074D4(void)
void func_8001968C(void)
Definition: code_80005FD0.c:8177
void func_800090F0(s32, Player *)
Definition: code_80005FD0.c:1382
s32 D_80163238
void func_800132F4(void)
Definition: code_80005FD0.c:5836
void func_80012780(TrainCarStuff *, s16 *, u16)
Definition: code_80005FD0.c:5556
void func_800133C4(void)
void func_8001A588(u16 *, Camera *, Player *, s8, s32)
s16 D_801632D0[]
u16 D_80163410[]
f32 func_8000B874(f32, f32, u16, s32)
Definition: code_80005FD0.c:2496
void func_80019FB4(s32)
f32 D_800DCA4C[]
s32 func_80006018(f32, f32, f32, f32, f32, f32, f32, f32)
Definition: code_80005FD0.c:389
u16 D_801631E0[8]
s16 D_80164682
s32 func_8000ED80(s32)
Definition: code_80005FD0.c:3783
s16 func_8000C0BC(f32, f32, f32, u16, s32 *)
Definition: code_80005FD0.c:2654
void func_80019118(s32, f32, s32, s16)
Definition: code_80005FD0.c:8091
s32 func_8000ED14(s32, s16)
Definition: code_80005FD0.c:3762
s16 func_8000D24C(f32, f32, f32, s32 *)
Definition: code_80005FD0.c:3030
s32 D_800DDB20
void func_800100F0(s32)
Definition: code_80005FD0.c:4558
void func_80011AB8(s32)
Definition: code_80005FD0.c:5183
s16 D_801631C8
s16 D_8016347A
s16 D_8016467C
s16 func_80005FD0(Vec3f, Vec3f)
Definition: code_80005FD0.c:377
void func_80011AE4(s32)
Definition: code_80005FD0.c:5189
void func_8001BE78(void)
Definition: code_80005FD0.c:9265
void func_80015A9C(s32, f32, s32, s16)
Definition: code_80005FD0.c:6825
f32 func_80010F40(f32, f32, f32, s32)
void func_80016C3C(s32, f32, s32)
f32 func_8000D3B8(s32)
Definition: code_80005FD0.c:3059
s16 D_80163478
f32 func_80013C74(s16, s16)
Definition: code_80005FD0.c:6071
s32 process_path_data(TrackWaypoint *, TrackWaypoint *)
Definition: code_80005FD0.c:5008
void func_80019E58(void)
Definition: code_80005FD0.c:8382
void func_8000F124(void)
s32 func_8000B7E4(s32, u16)
void func_8000B95C(s32, u16, s32)
Definition: code_80005FD0.c:2522
s16 func_80010CB0(s32, s32)
Definition: code_80005FD0.c:4758
f32 func_80010FA0(f32, f32, f32, s32)
s16 D_801632B8[]
void func_800070F4(void)
Definition: code_80005FD0.c:612
void func_80019D2C(Camera *, Player *, s32)
s32 D_801643E0[]
Definition: code_80005FD0.h:241
void func_80009B60(s32)
void func_80012220(VehicleStuff *)
Definition: code_80005FD0.c:5440
s16 D_801646C0[]
void func_80019B50(s32, u16)
Definition: code_80005FD0.c:8284
s16 D_801634D8[8]
s32 D_80163DD8[]
s32 func_8000B820(s32)
Definition: code_80005FD0.c:2488
void func_80019DE4(void)
Definition: code_80005FD0.c:8362
void func_80019ED0(void)
Definition: code_80005FD0.c:8393
void func_80014B24(void)
Definition: code_80005FD0.c:6463
u16 D_80163E2A
void func_800107C4(s32)
Definition: code_80005FD0.c:4703
void func_80008DC0(s32)
Definition: code_80005FD0.c:1301
void func_80014D30(s32, s32)
Definition: code_80005FD0.c:6505
void func_80014C78(void)
Definition: code_80005FD0.c:6490
void func_80018718(s32, f32, s32, s16)
Definition: code_80005FD0.c:7853
void func_80012AC0(void)
Definition: code_80005FD0.c:5657
s16 func_8000C9DC(f32, f32, f32, s16, s32)
Definition: code_80005FD0.c:2791
void func_80019DF4(void)
f32 D_80164638[]
f32 D_80164498[]
u16 D_801637BC[2]
s16 D_8016348C
void func_8001577C(Camera *, s32, s32, s32)
Definition: code_80005FD0.c:6764
void func_80019760(Camera *, s32, s32, s32)
Definition: code_80005FD0.c:8196
void func_800146B8(s32, s32, VehicleStuff *)
f32 D_801645F8[]
Test D_801634F8[]
void func_80014A18(s32, Player *)
Definition: code_80005FD0.c:6443
void func_80011E38(s32)
Definition: code_80005FD0.c:5337
u16 D_801632E8[]
void func_8000CBA4(f32, f32, f32, s16 *)
void func_80010E6C(s32 pathIndex)
Definition: code_80005FD0.c:4788
void func_80013D20(VehicleStuff *)
Definition: code_80005FD0.c:6104
f32 func_80014EE4(f32, s32)
Definition: code_80005FD0.c:6560
s32 D_8016337C
void func_800151A4(Camera *, s32)
Definition: code_80005FD0.c:6637
s32 func_800061DC(Vec3f, f32, s32)
Definition: code_80005FD0.c:428
s32 D_80164408[]
void func_80012A48(TrainCarStuff *, s16)
Definition: code_80005FD0.c:5641
void func_8001A450(s32, s32, s32)
Definition: code_80005FD0.c:8547
void func_80015390(Camera *, Player *, s32)
s16 D_80164678[]
void func_8001ABE0(s32, D_801642D8_entry *)
u16 func_80011014(TrackWaypoint *, TrackWaypoint *, s32, s32)
s16 D_80164674
void func_8001A3D8(s32, f32, s32)
Definition: code_80005FD0.c:8536
void func_80019C50(s32)
Definition: code_80005FD0.c:8317
s32 func_80008E58(s32, s32)
Definition: code_80005FD0.c:1311
s16 func_8000BD94(f32, f32, f32, s32)
Definition: code_80005FD0.c:2621
s16 D_80164676
void func_8001C42C(void)
Definition: code_80005FD0.c:9432
s16 D_801630FC
void func_80014934(void)
Definition: code_80005FD0.c:6424
s16 func_8000D33C(f32, f32, f32, s16, s32)
Definition: code_80005FD0.c:3049
void set_bomb_kart_spawn_positions(void)
Definition: code_80005FD0.c:3364
void func_80013854(Player *)
Definition: code_80005FD0.c:5996
void func_800127E0(void)
Definition: code_80005FD0.c:5576
void func_80012DC0(s32, Player *)
Definition: code_80005FD0.c:5726
s32 func_80007BF8(u16, u16, u16, u16, u16)
Definition: code_80005FD0.c:745
s16 D_8016467E
void func_8000DF8C(s32)
void func_80011A5C(void)
Definition: code_80005FD0.c:5176
void func_800120C8(void)
Definition: code_80005FD0.c:5407
s16 D_80164378[]
void func_80006114(Vec3f, Vec3f, s16)
Definition: code_80005FD0.c:407
Gfx D_0D0076F8[]
Definition: common_textures.inc.c:1292
void func_8001AB74(s32, s16 *, s32)
Definition: code_80005FD0.c:8764
void func_800131DC(s32)
Definition: code_80005FD0.c:5814
f32 D_80162FA0[]
void func_80019890(s32, s32)
Definition: code_80005FD0.c:8219
s16 D_80162EB0
Definition: code_80005FD0.c:33
void func_8001933C(Camera *, s32, s32, s32)
Definition: code_80005FD0.c:8120
s32 D_80163488
void func_80010218(s32)
Definition: code_80005FD0.c:4601
void func_80014A88(void)
Definition: code_80005FD0.c:6451
void func_8001969C(s32, f32, s32, s16)
Definition: code_80005FD0.c:8181
void func_800139E4(f32, f32, s32, s32, VehicleStuff *, TrackWaypoint *)
Definition: code_80005FD0.c:6028
void func_80014BDC(void)
Definition: code_80005FD0.c:6478
void func_80014D08(s32)
Definition: code_80005FD0.c:6501
s16 D_801646CC
void func_8001AB00(void)
Definition: code_80005FD0.c:8752
void func_8000CBF8(f32, f32, f32, s16 *, s32)
void init_course_vehicles(void)
Definition: code_80005FD0.c:5462
f32 func_80010480(s32, u16)
Definition: code_80005FD0.c:4651
void func_8001AC10(s32)
f32 Vec3f[3]
Definition: common_structs.h:6
Definition: camera.h:24
Definition: common_structs.h:110
Definition: code_80005FD0.h:39
s16 actorIndex
Definition: code_80005FD0.h:41
s16 unk_0A
Definition: code_80005FD0.h:45
s16 unk_0E
Definition: code_80005FD0.h:47
s16 unk_00
Definition: code_80005FD0.h:40
s16 unk_0C
Definition: code_80005FD0.h:46
s16 unk_08
Definition: code_80005FD0.h:44
s16 unk_06
Definition: code_80005FD0.h:43
s16 unk_04
Definition: code_80005FD0.h:42
Definition: common_structs.h:247
Definition: code_80005FD0.h:29
f32 unkC
Definition: code_80005FD0.h:33
f32 unk4
Definition: code_80005FD0.h:31
f32 unk0
Definition: code_80005FD0.h:30
f32 unk8
Definition: code_80005FD0.h:32
Definition: waypoints.h:4
Definition: vehicles.h:25
Definition: vehicles.h:62
Definition: code_80005FD0.h:8
u16 unk0
Definition: code_80005FD0.h:9
s16 timer
Definition: code_80005FD0.h:11
s16 laps
Definition: code_80005FD0.h:12
s32 blank
Definition: code_80005FD0.h:13
s32 unkC
Definition: code_80005FD0.h:14
s16 ffff
Definition: code_80005FD0.h:10
Definition: code_80005FD0.h:17
u16 actorIndex
Definition: code_80005FD0.h:22
s32 unk18
Definition: code_80005FD0.h:26
u16 unkC
Definition: code_80005FD0.h:21
s32 unk8
Definition: code_80005FD0.h:20
s16 unk10
Definition: code_80005FD0.h:23
u32 unk14
Definition: code_80005FD0.h:25
s32 unk4
Definition: code_80005FD0.h:19
s32 unk0
Definition: code_80005FD0.h:18
signed int s32
Definition: ultratypes.h:15
unsigned int u32
Definition: ultratypes.h:16
signed char s8
Definition: ultratypes.h:11
signed short int s16
Definition: ultratypes.h:13
float f32
Definition: ultratypes.h:32
unsigned short int u16
Definition: ultratypes.h:14