mirror of
https://github.com/n64decomp/mk64
synced 2026-08-09 10:32:13 -04:00
Refresh 1
This commit is contained in:
@@ -4476,6 +4476,16 @@ typedef union {
|
||||
_SHIFTL(sB, 0, 8)) \
|
||||
}}
|
||||
|
||||
// Current spot for custom raw gDPHalf1 commands
|
||||
// that mk64 seems to use
|
||||
|
||||
#define gDPHalf1(pkt, data) \
|
||||
{ \
|
||||
Gfx *_g = pkt; \
|
||||
_g->words.w0 = _SHIFTL(G_RDPHALF_1, 24, 8); \
|
||||
_g->words.w1 = data; \
|
||||
}
|
||||
|
||||
#define gDPNoParam(pkt, cmd) \
|
||||
{ \
|
||||
Gfx *_g = (Gfx *)(pkt); \
|
||||
|
||||
@@ -11,6 +11,8 @@ void guPerspectiveF(float mf[4][4], u16 *perspNorm, float fovy, float aspect,
|
||||
float near, float far, float scale);
|
||||
void guPerspective(Mtx *m, u16 *perspNorm, float fovy, float aspect, float near,
|
||||
float far, float scale);
|
||||
void guFrustum(Mtx *m, float left, float right, float bottom, float top,
|
||||
float near, float far, float scale);
|
||||
void guOrtho(Mtx *m, float left, float right, float bottom, float top,
|
||||
float near, float far, float scale);
|
||||
void guTranslate(Mtx *m, float x, float y, float z);
|
||||
@@ -22,6 +24,18 @@ void guMtxIdentF(float mf[4][4]);
|
||||
void guMtxL2F(float mf[4][4], Mtx *m);
|
||||
void guNormalize(float *, float *, float *);
|
||||
|
||||
|
||||
void guLookAt(Mtx *,
|
||||
f32,
|
||||
f32,
|
||||
f32,
|
||||
f32,
|
||||
f32,
|
||||
f32,
|
||||
f32,
|
||||
f32,
|
||||
f32);
|
||||
|
||||
/* Used only in Fast3DEX2 */
|
||||
void guLookAtReflect (Mtx *m, LookAt *l, float xEye, float yEye, float zEye,
|
||||
float xAt, float yAt, float zAt,
|
||||
|
||||
@@ -0,0 +1,258 @@
|
||||
#ifndef _COMMON_STRUCTS_H_
|
||||
#define _COMMON_STRUCTS_H_
|
||||
|
||||
#include "ultra64.h"
|
||||
|
||||
typedef struct {
|
||||
f32 x, y, z;
|
||||
} Vec3f;
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ COURSE_MARIO_RACEWAY = 0,
|
||||
/* 0x01 */ COURSE_CHOCO_MOUNTAIN,
|
||||
/* 0x02 */ COURSE_BOWSER_CASTLE,
|
||||
/* 0x03 */ COURSE_BANSHEE_BOARDWALK,
|
||||
/* 0x04 */ COURSE_YOSHI_VALLEY,
|
||||
/* 0x05 */ COURSE_FRAPPE_SNOWLAND,
|
||||
/* 0x06 */ COURSE_KOOPA_BEACH,
|
||||
/* 0x07 */ COURSE_ROYAL_RACEWAY,
|
||||
/* 0x08 */ COURSE_LUIGI_RACEWAY,
|
||||
/* 0x09 */ COURSE_MOO_MOO_FARM,
|
||||
/* 0x0A */ COURSE_TOADS_TURNPIKE,
|
||||
/* 0x0B */ COURSE_KALAMARI_DESERT,
|
||||
/* 0x0C */ COURSE_SHERBET_LAND,
|
||||
/* 0x0D */ COURSE_RAINBOW_ROAD,
|
||||
/* 0x0E */ COURSE_WARIO_STADIUM,
|
||||
/* 0x0F */ COURSE_BLOCK_FORT,
|
||||
/* 0x10 */ COURSE_SKYSCRAPER,
|
||||
/* 0x11 */ COURSE_DOUBLE_DECK,
|
||||
/* 0x12 */ COURSE_DK_JUNGLE,
|
||||
/* 0x13 */ COURSE_BIG_DONUT,
|
||||
/* 0x14 */ COURSE_AWARD_CEREMONY,
|
||||
/* 0x15 */ NUM_COURSES
|
||||
} COURSES;
|
||||
|
||||
typedef struct {
|
||||
/* 0x0000 */ u16 unk_000;
|
||||
/* 0x0002 */ s16 unk_002;
|
||||
/* 0x0004 */ char unk_004[0x2];
|
||||
/* 0x0006 */ s16 unk_006;
|
||||
/* 0x0008 */ s16 unk_008;
|
||||
/* 0x000A */ char unk_00A[0x2];
|
||||
/* 0x000C */ s32 unk_00C;
|
||||
/* 0x0010 */ char unk_010[0x4];
|
||||
/* 0x0014 */ f32 unk_014;
|
||||
/* 0x0018 */ f32 unk_018;
|
||||
/* 0x001C */ f32 unk_01C;
|
||||
/* 0x0020 */ f32 unk_020;
|
||||
/* 0x0024 */ f32 unk_024;
|
||||
/* 0x0028 */ f32 unk_028;
|
||||
/* 0x002C */ s16 unk_02C;
|
||||
/* 0x002E */ s16 unk_02E;
|
||||
/* 0x0030 */ s16 unk_030;
|
||||
/* 0x0032 */ char unk_032[0x2];
|
||||
/* 0x0034 */ f32 unk_034;
|
||||
/* 0x0038 */ f32 unk_038;
|
||||
/* 0x003C */ f32 unk_03C;
|
||||
/* 0x0040 */ char unk_040[0x2];
|
||||
/* 0x0042 */ s16 unk_042;
|
||||
/* 0x0044 */ s16 unk_044;
|
||||
/* 0x0046 */ s16 unk_046;
|
||||
/* 0x0048 */ char unk_048[0x10];
|
||||
/* 0x0058 */ f32 unk_058;
|
||||
/* 0x005C */ f32 unk_05C;
|
||||
/* 0x0060 */ f32 unk_060;
|
||||
/* 0x0064 */ f32 unk_064;
|
||||
/* 0x0068 */ f32 unk_068;
|
||||
/* 0x006C */ f32 unk_06C;
|
||||
/* 0x0070 */ f32 unk_070;
|
||||
/* 0x0074 */ f32 unk_074;
|
||||
/* 0x0078 */ s16 unk_078;
|
||||
/* 0x007A */ s16 unk_07A;
|
||||
/* 0x007C */ s32 unk_07C;
|
||||
/* 0x0080 */ f32 unk_080;
|
||||
/* 0x0084 */ f32 unk_084;
|
||||
/* 0x0088 */ f32 unk_088;
|
||||
/* 0x008C */ f32 unk_08C;
|
||||
/* 0x0090 */ f32 unk_090;
|
||||
/* 0x0094 */ f32 unk_094;
|
||||
/* 0x0098 */ f32 unk_098;
|
||||
/* 0x009C */ f32 unk_09C;
|
||||
/* 0x00A0 */ f32 unk_0A0;
|
||||
/* 0x00A4 */ f32 unk_0A4;
|
||||
/* 0x00A8 */ s16 unk_0A8;
|
||||
/* 0x00AA */ s16 unk_0AA;
|
||||
/* 0x00AC */ s16 unk_0AC;
|
||||
/* 0x00AE */ s16 unk_0AE;
|
||||
/* 0x00B0 */ s16 unk_0B0;
|
||||
/* 0x00B2 */ s16 unk_0B2;
|
||||
/* 0x00B4 */ s16 unk_0B4;
|
||||
/* 0x00B6 */ s16 unk_0B6;
|
||||
/* 0x00B8 */ f32 unk_0B8;
|
||||
/* 0x00BC */ s32 unk_0BC;
|
||||
/* 0x00C0 */ s16 unk_0C0;
|
||||
/* 0x00C2 */ s16 unk_0C2;
|
||||
/* 0x00C4 */ s16 unk_0C4;
|
||||
/* 0x00C6 */ s16 unk_0C6;
|
||||
/* 0x00C8 */ s16 unk_0C8;
|
||||
/* 0x00CA */ s16 unk_0CA;
|
||||
/* 0x00CC */ char unk_0CC[0x10];
|
||||
/* 0x00DC */ s16 unk_0DC;
|
||||
/* 0x00DE */ s16 unk_0DE;
|
||||
/* 0x00E0 */ s16 unk_0E0;
|
||||
/* 0x00E2 */ s16 unk_0E2;
|
||||
/* 0x00E4 */ f32 unk_0E4;
|
||||
/* 0x00E8 */ f32 unk_0E8;
|
||||
/* 0x00EC */ f32 unk_0EC;
|
||||
/* 0x00F0 */ f32 unk_0F0;
|
||||
/* 0x00F4 */ f32 unk_0F4;
|
||||
/* 0x00F8 */ char unk_0F8[0x2];
|
||||
/* 0x00FA */ s16 unk_0FA;
|
||||
/* 0x00FC */ f32 unk_0FC;
|
||||
/* 0x0100 */ f32 unk_100;
|
||||
/* 0x0104 */ f32 unk_104;
|
||||
/* 0x0108 */ f32 unk_108;
|
||||
/* 0x010C */ s16 unk_10C;
|
||||
/* 0x010E */ char unk_10E[0x2];
|
||||
/* 0x0110 */ s16 unk_110;
|
||||
/* 0x0112 */ s16 unk_112;
|
||||
/* 0x0114 */ s16 unk_114;
|
||||
/* 0x0116 */ s16 unk_116;
|
||||
/* 0x0118 */ s16 unk_118;
|
||||
/* 0x011A */ s16 unk_11A;
|
||||
/* 0x011C */ f32 unk_11C;
|
||||
/* 0x0120 */ f32 unk_120;
|
||||
/* 0x0124 */ f32 unk_124;
|
||||
/* 0x0128 */ f32 unk_128;
|
||||
/* 0x012C */ f32 unk_12C;
|
||||
/* 0x0130 */ f32 unk_130;
|
||||
/* 0x0134 */ f32 unk_134;
|
||||
/* 0x0138 */ f32 unk_138;
|
||||
/* 0x013C */ f32 unk_13C;
|
||||
/* 0x0140 */ f32 unk_140;
|
||||
/* 0x0144 */ f32 unk_144;
|
||||
/* 0x0148 */ f32 unk_148;
|
||||
/* 0x014C */ char unk_14C[0x4];
|
||||
/* 0x0150 */ f32 unk_150[9];
|
||||
/* 0x0174 */ f32 unk_174[9];
|
||||
/* 0x0198 */ f32 unk_198;
|
||||
/* 0x019C */ f32 unk_19C;
|
||||
/* 0x01A0 */ f32 unk_1A0;
|
||||
/* 0x01A4 */ s8 unk_1A4;
|
||||
/* 0x01A5 */ s8 unk_1A5;
|
||||
/* 0x01A6 */ s16 unk_1A6;
|
||||
/* 0x01A8 */ f32 unk_1A8;
|
||||
/* 0x01AC */ s32 unk_1AC;
|
||||
/* 0x01B0 */ f32 unk_1B0;
|
||||
/* 0x01B4 */ f32 unk_1B4;
|
||||
/* 0x01B8 */ f32 unk_1B8;
|
||||
/* 0x01BC */ s8 unk_1BC;
|
||||
/* 0x01BD */ s8 unk_1BD;
|
||||
/* 0x01BE */ s16 unk_1BE;
|
||||
/* 0x01C0 */ f32 unk_1C0;
|
||||
/* 0x01C4 */ s32 unk_1C4;
|
||||
/* 0x01C8 */ f32 unk_1C8;
|
||||
/* 0x01CC */ f32 unk_1CC;
|
||||
/* 0x01D0 */ f32 unk_1D0;
|
||||
/* 0x01D4 */ s8 unk_1D4;
|
||||
/* 0x01D5 */ s8 unk_1D5;
|
||||
/* 0x01D6 */ s16 unk_1D6;
|
||||
/* 0x01D8 */ f32 unk_1D8;
|
||||
/* 0x01DC */ s32 unk_1DC;
|
||||
/* 0x01E0 */ f32 unk_1E0;
|
||||
/* 0x01E4 */ f32 unk_1E4;
|
||||
/* 0x01E8 */ f32 unk_1E8;
|
||||
/* 0x01EC */ s8 unk_1EC;
|
||||
/* 0x01ED */ s8 unk_1ED;
|
||||
/* 0x01EE */ s16 unk_1EE;
|
||||
/* 0x01F0 */ f32 unk_1F0;
|
||||
/* 0x01F4 */ s32 unk_1F4;
|
||||
/* 0x01F8 */ f32 unk_1F8;
|
||||
/* 0x01FC */ f32 unk_1FC;
|
||||
/* 0x0200 */ s32 unk_200;
|
||||
/* 0x0204 */ s16 unk_204;
|
||||
/* 0x0206 */ s16 unk_206;
|
||||
/* 0x0208 */ f32 unk_208;
|
||||
/* 0x020C */ f32 unk_20C;
|
||||
/* 0x0210 */ f32 unk_210;
|
||||
/* 0x0214 */ f32 unk_214;
|
||||
/* 0x0218 */ f32 unk_218;
|
||||
/* 0x021C */ f32 unk_21C;
|
||||
/* 0x0220 */ s16 unk_220;
|
||||
/* 0x0224 */ f32 unk_224;
|
||||
/* 0x0228 */ s16 unk_228;
|
||||
/* 0x022A */ s16 unk_22A;
|
||||
/* 0x022C */ f32 unk_22C;
|
||||
/* 0x0230 */ f32 unk_230;
|
||||
/* 0x0234 */ s16 unk_234;
|
||||
/* 0x0236 */ s16 unk_236;
|
||||
/* 0x0238 */ s16 unk_238;
|
||||
/* 0x023A */ s16 unk_23A;
|
||||
/* 0x023C */ f32 unk_23C;
|
||||
/* 0x0240 */ s32 unk_240;
|
||||
/* 0x0244 */ u16 unk_244[4];
|
||||
/* 0x0244 */ u16 unk_24C[4];
|
||||
/* 0x0254 */ u16 unk_254;
|
||||
/* 0x0256 */ s16 unk_256;
|
||||
/* 0x0258 */ char unk_258[0xB40];
|
||||
/* 0x0D98 */ s16 unk_D98;
|
||||
/* 0x0D9A */ s16 unk_D9A;
|
||||
/* 0x0D9C */ f32 unk_D9C;
|
||||
/* 0x0DA0 */ f32 unk_DA0;
|
||||
/* 0x0DA4 */ s16 unk_DA4;
|
||||
/* 0x0DA6 */ s16 unk_DA6;
|
||||
/* 0x0DA8 */ f32 unk_DA8;
|
||||
/* 0x0DAC */ f32 unk_DAC;
|
||||
/* 0x0DB0 */ f32 unk_DB0;
|
||||
/* 0x0DB4 */ s16 unk_DB4;
|
||||
/* 0x0DB6 */ s16 unk_DB6;
|
||||
/* 0x0DB8 */ f32 unk_DB8;
|
||||
/* 0x0DBC */ f32 unk_DBC;
|
||||
/* 0x0DC0 */ f32 unk_DC0;
|
||||
/* 0x0DC4 */ f32 unk_DC4;
|
||||
/* 0x0DC8 */ f32 unk_DC8;
|
||||
/* 0x0DCC */ s16 unk_DCC;
|
||||
/* 0x0DCE */ s16 unk_DCE;
|
||||
/* 0x0DD0 */ s16 unk_DD0;
|
||||
/* 0x0DD2 */ s16 unk_DD2;
|
||||
/* 0x0DD4 */ s16 unk_DD4;
|
||||
} Player; // size = 0xDD8
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char unk_00[0x1D];
|
||||
/* 0x1D */ s8 unk_1D;
|
||||
/* 0x1E */ s8 unk_1E;
|
||||
} struct_D_802874D8;
|
||||
|
||||
typedef struct {
|
||||
s16 unk_00;
|
||||
char unk_02[0xE];
|
||||
s16 unk_10;
|
||||
char unk_12[0xE];
|
||||
s16 unk_20;
|
||||
char unk_22[0xE];
|
||||
s16 unk_30;
|
||||
char unk_32[0xE]; // guessed
|
||||
} struct_D_801650D0;
|
||||
|
||||
typedef struct {
|
||||
char unk_00[0x4];
|
||||
f32 unk_04;
|
||||
char unk_08[0x4];
|
||||
f32 unk_0C;
|
||||
char unk_10[0x10];
|
||||
} struct_D_8018CE10; // size = 0x20
|
||||
|
||||
typedef struct {
|
||||
char unk_00[0x920];
|
||||
} struct_D_802DFB80; // size = 0x920
|
||||
|
||||
typedef struct {
|
||||
char unk_00[0x1000];
|
||||
} struct_D_802BFB80;
|
||||
|
||||
typedef struct {
|
||||
f32* unk_00[5];
|
||||
} struct_D_800E261C;
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,31 @@
|
||||
#ifndef _FUNCTIONS_H_
|
||||
#define _FUNCTIONS_H_
|
||||
|
||||
#include "common_structs.h"
|
||||
|
||||
s32 random_int(s32);
|
||||
void mio0decode(u8* arg0, u8* arg1);
|
||||
|
||||
void func_8000F2DC(void);
|
||||
void func_8000F628(void);
|
||||
void func_8000EEDC(void);
|
||||
f32 func_802AE1C0(f32 arg0, f32 arg1, f32 arg2);
|
||||
void func_802B6540(f32* arg0, f32 arg1, f32 arg2, f32 arg3, s16 arg4);
|
||||
void func_80295BF8(s32 arg0);
|
||||
void func_8005D6C0(Player* player);
|
||||
void func_8006B87C(Player* player, s32 arg1);
|
||||
void func_8006B7E4(Player* player, s32 arg1);
|
||||
void func_8002D268(Player* player, s32 arg1, s8 arg2, s8 arg3);
|
||||
void func_8002934C(Player* player, s32 arg1, s8 arg2, s8 arg3);
|
||||
void func_80027A20(Player* player, s8 arg1, s8 arg2, s32 arg3);
|
||||
void func_80027040(Player* player, s8 arg1, s8 arg2, s8 arg3, s32 arg4);
|
||||
void func_800267AC(Player* player, s8 arg1, s8 arg2);
|
||||
void func_8005D290(void);
|
||||
// TODO: should rot, arg4, and arg5 be rotx, roty, and rotz?
|
||||
void func_8001C4D0(f32 x, f32 y, f32 z, s16 rot, s16 arg4, s32 arg5);
|
||||
void func_8003DB5C(void);
|
||||
void func_8003D080(void);
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,8 @@
|
||||
#ifndef _GLOBAL_H_
|
||||
#define _GLOBAL_H_
|
||||
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "macros.h"
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,68 @@
|
||||
struct D_800E2400 {
|
||||
float *D_800E2360;
|
||||
};
|
||||
struct D_800E2404 {
|
||||
float *D_800E2380; float *D_800E23A0; float *D_800E23C0;
|
||||
};
|
||||
struct D_800E2410 {
|
||||
float *D_800E23E0;
|
||||
};
|
||||
struct D_800E24B4 {
|
||||
float *D_800E2414;
|
||||
};
|
||||
struct D_800E24B8 {
|
||||
float *D_800E2434; float *D_800E2454; float *D_800E2474;
|
||||
};
|
||||
struct D_800E24C4 {
|
||||
float *D_800E2494;
|
||||
};
|
||||
struct D_800E2568 {
|
||||
float *D_800E24C8;
|
||||
};
|
||||
struct D_800E256C {
|
||||
float *D_800E24E8; float *D_800E2508; float *D_800E2528;
|
||||
};
|
||||
struct D_800E2578 {
|
||||
float *D_800E2548;
|
||||
};
|
||||
struct D_800E261C {
|
||||
float *D_800E257C;
|
||||
};
|
||||
struct D_800E2620 {
|
||||
float *D_800E259C; float *D_800E25BC; float *D_800E25DC;
|
||||
};
|
||||
struct D_800E262C {
|
||||
float *D_800E25FC;
|
||||
};
|
||||
struct D_800E2A90 {
|
||||
float *D_800E28B0; float *D_800E270C; float *D_800E2748; float *D_800E2784;
|
||||
float *D_800E27C0; float *D_800E27FC; float *D_800E2838; float *D_800E2874;
|
||||
};
|
||||
struct D_800E2AB0 {
|
||||
float *D_800E26D0; float *D_800E270C; float *D_800E2748; float *D_800E2784;
|
||||
float *D_800E27C0; float *D_800E27FC; float *D_800E2838; float *D_800E2874;
|
||||
};
|
||||
struct D_800E2E90 {
|
||||
float *D_800E2CB0; float *D_800E2CEC; float *D_800E2D28; float *D_800E2D64;
|
||||
float *D_800E2DA0; float *D_800E2DDC; float *D_800E2E18; float *D_800E2E54;
|
||||
};
|
||||
struct D_800E2EB0 {
|
||||
float *D_800E2AD0; float *D_800E2B0C; float *D_800E2B48; float *D_800E2B84;
|
||||
float *D_800E2BC0; float *D_800E2BFC; float *D_800E2C38; float *D_800E2C74;
|
||||
};
|
||||
struct gKartAccelerationTables {
|
||||
float *gKartAccelerationMario; float *gKartAccelerationLuigi; float *gKartAccelerationYoshi; float *gKartAccelerationToad;
|
||||
float *gKartAccelerationDK; float *gKartAccelerationWario; float *gKartAccelerationPeach; float *gKartAccelerationBowser;
|
||||
};
|
||||
struct D_800E3210 {
|
||||
float *D_800E3030; float *D_800E306C; float *D_800E30A8; float *D_800E30E4;
|
||||
float *D_800E3120; float *D_800E315C; float *D_800E3198; float *D_800E31D4;
|
||||
};
|
||||
struct D_800E3410 {
|
||||
float *D_800E3230; float *D_800E326C; float *D_800E32A8; float *D_800E32E4;
|
||||
float *D_800E3320; float *D_800E335C; float *D_800E3398; float *D_800E33D4;
|
||||
};
|
||||
struct D_800E3610 {
|
||||
float *D_800E3430; float *D_800E346C; float *D_800E34A8; float *D_800E34E4;
|
||||
float *D_800E3520; float *D_800E355C; float *D_800E3598; float *D_800E35D4;
|
||||
};
|
||||
@@ -61,4 +61,7 @@
|
||||
// another way of converting virtual to physical
|
||||
#define VIRTUAL_TO_PHYSICAL2(addr) ((u8 *)(addr) - 0x80000000U)
|
||||
|
||||
// aligns an address to the next 16 bytes
|
||||
#define ALIGN16(x) (((x) + 0xF) & -0x10)
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
#ifndef SEGMENT_SYMBOLS_H
|
||||
#define SEGMENT_SYMBOLS_H
|
||||
|
||||
extern u8 _code_80280000SegmentStart[];
|
||||
extern u8 _code_80280000SegmentRomStart[];
|
||||
extern u8 _code_80280000SegmentRomEnd[];
|
||||
|
||||
extern u8 _code_8028DF00SegmentStart[];
|
||||
extern u8 _code_8028DF00SegmentRomStart[];
|
||||
extern u8 _code_8028DF00SegmentRomEnd[];
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,8 @@
|
||||
#ifndef SEGMENTS_H
|
||||
#define SEGMENTS_H
|
||||
|
||||
#define SEG_MAIN 0x80000400
|
||||
#define SEG_80280000 0x80280000
|
||||
#define SEG_8028DF00 0x8028DF00
|
||||
|
||||
#endif
|
||||
+4
-1
@@ -29,8 +29,11 @@ struct VblankHandler
|
||||
struct Controller {
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
s16 unk4;
|
||||
u16 unk4; // button held?
|
||||
u16 buttonPressed;
|
||||
u16 unk8;
|
||||
u16 padA; // never used?
|
||||
u32 pad; // never used?
|
||||
};
|
||||
|
||||
struct UnkStruct_800DC5EC {
|
||||
|
||||
@@ -0,0 +1,98 @@
|
||||
#ifndef _VARIABLES_H_
|
||||
#define _VARIABLES_H_
|
||||
|
||||
#include "global.h"
|
||||
|
||||
extern s8 gCourseSelection;
|
||||
extern s16 gCurrentCourseId;
|
||||
extern s32 gModeSelection;
|
||||
extern s32 gPlayerCountSelection1;
|
||||
extern f32 gKartFrictionTable[];
|
||||
extern f32 gKartBoundingBoxTable[];
|
||||
extern f32 gKartGravityTable[];
|
||||
extern f32 gPlayer1PosX;
|
||||
extern f32 gPlayer1PosY;
|
||||
extern s32 gPlayer1PosZ;
|
||||
extern s16 gPlayer1Rotation;
|
||||
|
||||
extern struct_D_802874D8 D_802874D8;
|
||||
extern s16 D_801650D0[4][8];
|
||||
extern s16 D_80165110[4][8];
|
||||
extern s16 D_80165150[4][8];
|
||||
extern s16 D_80165190[4][8];
|
||||
extern s16 D_801651D0[4][8];
|
||||
extern struct_D_8018CE10 D_8018CE10[];
|
||||
extern struct_D_802DFB80 D_802DFB80[][8];
|
||||
extern struct_D_802BFB80 D_802BFB80[][8];
|
||||
extern s32 D_800DC52C;
|
||||
extern s32 gModeSelection;
|
||||
extern s32 D_800DC50C;
|
||||
extern s16 D_80165578;
|
||||
extern s16 D_8016557A;
|
||||
extern s16 D_8016557C;
|
||||
extern s16 D_8016557E;
|
||||
extern s16 D_80165574;
|
||||
extern s16 D_80165576;
|
||||
extern s16 D_80165570;
|
||||
extern s16 D_80165572;
|
||||
extern s16 D_80165580;
|
||||
extern s16 D_80165582;
|
||||
extern s8 D_800E86A8[4];
|
||||
extern s8 D_8018D9D0[4];
|
||||
extern s16 D_80165270[8];
|
||||
extern Player* D_800DC4DC;
|
||||
extern Player* D_800DC4E0;
|
||||
extern Player* D_800DC4E4;
|
||||
extern Player* D_800DC4E8;
|
||||
extern Player* D_800DC4EC;
|
||||
extern Player* D_800DC4F0;
|
||||
extern Player* D_800DC4F4;
|
||||
extern Player* D_800DC4F8;
|
||||
extern Player* D_800DC4FC;
|
||||
extern u16 D_800DC51C;
|
||||
extern s8 D_8018EDEF;
|
||||
extern s32 D_80164A28;
|
||||
extern s32 D_801643B8[];
|
||||
extern s16 D_8016556E;
|
||||
extern s32 D_80162DE0;
|
||||
extern s32 D_80162DE4;
|
||||
extern s32 D_80162DE8;
|
||||
extern u16 D_8015F890;
|
||||
extern u16 D_80162DD4;
|
||||
extern u16 D_80162DD6;
|
||||
extern u16 D_80162DD8;
|
||||
extern s16* D_80164550;
|
||||
extern f32 D_80165210[];
|
||||
extern f32 D_80165230[];
|
||||
extern struct_D_800E261C D_800E261C;
|
||||
extern s32 D_800DC548;
|
||||
extern f32 D_80164510[];
|
||||
extern s32 D_80165420[];
|
||||
extern s32 D_80165440[];
|
||||
extern s32 D_80165460[];
|
||||
extern s32 D_80165480[];
|
||||
extern s32 D_801654E0[];
|
||||
extern s32 D_80165500[];
|
||||
extern s32 D_80165520[];
|
||||
extern s32 D_80165540[];
|
||||
extern s32 D_8018D900;
|
||||
extern s32 D_801652E0[];
|
||||
extern s32 D_801652C0[];
|
||||
extern s16 D_80165020[];
|
||||
extern Vec3f D_80165070[];
|
||||
extern f32 D_80165280[];
|
||||
extern f32 D_801652A0[];
|
||||
extern s32 D_801653E0[];
|
||||
extern s32 D_80165400[];
|
||||
extern s32 D_801654A0[];
|
||||
extern s32 D_801654C0[];
|
||||
extern s16 D_80165300[];
|
||||
extern s32 D_800DDB40;
|
||||
extern s32 D_800DDB44;
|
||||
extern s32 D_800DDB48;
|
||||
extern s32 D_800DDB4C;
|
||||
extern s32 D_8016524C;
|
||||
extern Player D_800F7768;
|
||||
extern Player D_800F8540;
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user