Header & General Cleanup (#431)

* Header cleanup
This commit is contained in:
coco875 2023-09-20 19:59:55 +02:00 committed by GitHub
parent 7d2fe91598
commit f4fc23bada
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
46 changed files with 177 additions and 256 deletions

View File

@ -5,9 +5,6 @@
#include "defines.h"
#include "common_structs.h"
extern s32 gActiveScreenMode; // D_800DC52C
extern s32 gCCSelection; // D_800DC548
extern s8 gCharacterIdByGPOverallRank[8]; // D_8018D9D0
extern s8 gCharacterGridSelections[4]; // D_8018EDE4
extern s8 gCharacterSelections[4]; // D_800E86A8
@ -16,7 +13,6 @@ extern s8 gControllerPakSelectedTableRow; // D_800E86C0
extern f32 gCourseCompletionPercentByPlayerId[8]; // D_801644D0
extern f32 gCourseCompletionPercentByRank[8]; // D_80162FD8
extern s8 gCourseRecordsMenuSelection; // D_8018EDF8
extern f32 gCourseTimer; // D_800DC598
extern const s16 gCupCourseOrder[NUM_CUPS][NUM_COURSES_PER_CUP]; // D_800F2BB4
extern s8 gCupCourseSelection; // D_8018EE0B
extern char *gCupNames[]; // D_800E7500
@ -24,11 +20,7 @@ extern s8 gCupSelection; // D_8018EE09
extern s16 gCurrentCourseId; // D_800DC5A0
extern s8 gDebugMenuSelection; // D_8018EDEF
extern Gfx *gDisplayListHead; // D_80150298
extern u16 gEnableDebugMode; // D_800DC520
extern s32 gGlobalTimer; // D_800DC54C
extern s8 gGPPointsByCharacterId[8]; // D_8018D9C8
extern s16 gGPCurrentRacePlayerIdByRank[8]; // D_80164360
@ -41,57 +33,34 @@ extern s32 gLapCountByPlayerId[8]; // D_80164390
extern s32 gMenuTimingCounter; // D_8018EE00
extern s32 gMenuSelection; // D_800E86A0
extern s32 gModeSelection; // D_800DC53C
// Indicates the ID of the next title screen demo that will be played
extern s8 gNextDemoId; // D_800E86BC
// Maps course IDs (as defined in the COURSES enum) to an index in a given cup's track order
extern const u8 gPerCupIndexByCourseId[]; // D_800EFD50
extern s32 gPlayerCountSelection1;
extern s32 gPlayerIsThrottleActive[]; // D_801653E0
extern s32 gGPCurrentRaceRankByPlayerId[]; // D_801643B8
//extern u32 gScreenModeSelection; // D_800DC530
extern u32 gSegmentTable[16]; // D_80150258
extern OSMesgQueue gSIEventMesgQueue; // D_8014F0B8
extern u8 gSoundMode; // D_8018EDF2
extern char *gSoundModeNames[NUM_SOUND_MODES]; // D_800E7710
extern s8 gTimeTrialDataCourseIndex; // D_8018EDF7
extern Player gPlayers[8];
extern Player* gPlayerOne;
extern Player* gPlayerTwo;
extern Player* gPlayerThree;
extern Player* gPlayerFour;
extern Player* gPlayerFive;
extern Player* gPlayerSix;
extern Player* gPlayerSeven;
extern Player* gPlayerEight;
extern Player* gPlayerOneCopy;
extern struct_8018CA70_entry D_8018CA70[];
extern Mtx D_80183D60[];
extern struct_D_8018CE10 D_8018CE10[];
//extern struct GfxPool *gGfxPool; // D_8014EF40
extern Vec3f D_80165070[];
extern Vp D_802B8880[];
extern Gfx D_0D0077A0[];
extern s32 gGamestate;
extern u16 gDemoMode;
extern s32 D_800DC540;
extern u16 gIsGamePaused;
extern u16 gMatrixObjectCount;
extern u16 D_80162DD8;
extern s32 D_80162DE0;
extern s32 D_80162DE4;

View File

@ -2,10 +2,12 @@
#include <macros.h>
#include <common_structs.h>
#include <defines.h>
#include "code_800029B0.h"
#include <libc/math.h>
#include "camera.h"
#include "code_800029B0.h"
#include "math_util.h"
#include "memory.h"
#include "racing/memory.h"
#include "waypoints.h"
#include "variables.h"
#include "code_8001F980.h"
@ -13,7 +15,6 @@
#include "code_80057C60.h"
#include "code_80005FD0.h"
#include "main.h"
#include <libc/math.h>
f32 D_800DDB30[] = { 0.4f, 0.6f, 0.275f, 0.3f };
@ -43,7 +44,6 @@ extern f32 D_80164A48[4];
extern f32 D_80164A78[];
extern s8 D_80164A88;
extern s8 D_80164A89;
extern f32 gCameraZoom[4];
void camera_init(f32 posX, f32 posY, f32 posZ, UNUSED s16 rot, u32 arg4, s32 cameraId) {
Player *player = gPlayerOne;

View File

@ -89,8 +89,4 @@ extern Camera *camera2;
extern Camera *camera3;
extern Camera *camera4;
extern Player *gPlayerTwo;
extern Player *gPlayerThree;
extern Player *gPlayerFour;
#endif

View File

@ -7,7 +7,5 @@ void setup_camera_podium_ceremony(void);
void func_802816B8(void);
// guPerspective params
extern f32 D_80150148, D_8015014C, D_80150150;
extern f32 gCameraZoom[];
#endif

View File

@ -1,5 +1,7 @@
#include <ultra64.h>
#include <macros.h>
#include "code_800029B0.h"
#include "types.h"
#include "memory.h"
#include "variables.h"
@ -8,7 +10,6 @@
#include "actor_types.h"
#include "math_util.h"
#include "audio/external.h"
#include "code_800029B0.h"
#include <defines.h>
#include "collision.h"
#include "memory.h"
@ -23,7 +24,6 @@
extern u16 D_800DC5A8;
extern s32 D_800DC510;
extern s32 D_802BA038;
extern s16 D_802BA048;
@ -33,10 +33,6 @@ extern s8 D_8018EDF3;
extern s8 gCupSelection;
extern s32 gScreenModeSelection;
extern s32 D_80150120;
extern Vec3f D_802B91C8;
extern struct ActorSpawnData d_course_moo_moo_farm_tree_spawn[];

View File

@ -1,13 +1,14 @@
#include <ultra64.h>
#include <macros.h>
#include <defines.h>
#include "code_80005FD0.h"
#include "math_util.h"
#include "code_800029B0.h"
#include "memory.h"
#include "racing/memory.h"
#include "waypoints.h"
#include "camera.h"
#include "actors.h"
#include "code_80005FD0.h"
#include "code_8001F980.h"
#include "player_controller.h"
#include "code_80071F00.h"
@ -20,6 +21,9 @@
#include "bomb_kart.h"
#include "courses/all_course_data.h"
#include "common_textures.h"
#include "common_structs.h"
#include "main.h"
extern UnkCommonTextureStruct0 *D_800DC720[];
@ -1409,7 +1413,6 @@ void func_800090F0(s32 playerId, Player *player) {
}
extern f32 D_8016344C;
extern f32 gCourseTimer;
/**
* Helps calculate time since player last touched finishline.
@ -5789,7 +5792,6 @@ extern s16 D_80162FCC;
//extern s32 D_80163598
extern s32 D_8016359C;
//extern TrainStuff D_801635C4;
//extern s32 gScreenModeSelection;
// This is really Vec2s D_80163598[465] but that does not match.
// Likely because this is a shared pointer between courses.

View File

@ -1,9 +1,8 @@
#ifndef CODE_80005FD0_H
#define CODE_80005FD0_H
#include "common_structs.h"
#include "vehicles.h"
#include "waypoints.h"
#include "camera.h"
struct struct_801642D8 {
/* 0x0 */ u16 unk0;
@ -84,7 +83,6 @@ void func_8000EF20(void);
void func_8000F0E0(void);
void func_8000F124(void);
void func_8000F2BC(struct TrackWayPoint*, size_t);
void func_80010218(s32);
f32 func_80010480(s32, u16);
@ -94,7 +92,6 @@ void func_80010DBC(s32);
f32 func_80010F40(f32, f32, f32, s32);
f32 func_80010FA0(f32, f32, f32, s32);
s32 process_path_data(struct TrackWayPoint*, struct TrackWayPoint*);
void func_80011AB8(s32);
void func_80011AE4(s32);
@ -171,7 +168,6 @@ extern s32 D_80163488;
extern s32 D_8016337C;
extern s16 D_80164378[];
extern s32 D_801643E0[];
extern s32 gModeSelection;
extern struct unexpiredActors gUnexpiredActorsList[];
extern s16 D_8016348C;
extern s32 D_801643E0[];
@ -191,8 +187,6 @@ extern s16 D_801646CC;
extern u16 D_80163E2A;
extern Gfx D_0D0076F8[];
extern struct Controller *gControllerThree;
extern Gfx *gDisplayListHead;
extern s32 D_800DDB20;
#endif

View File

@ -91,7 +91,6 @@ extern s32 D_8018D930[];
extern Gfx D_0D008C78[];
extern Gfx D_0D008D58[];
extern u16 gDemoMode;
extern s32 D_800DDB58;
extern void *D_800DDB5C[];
extern Vtx *D_800DDBB4[];

View File

@ -1,9 +1,12 @@
#include <ultra64.h>
#include <macros.h>
#include <PR/gbi.h>
#include "code_80057C60.h"
#include "main.h"
#include "actors.h"
#include "code_800029B0.h"
#include "memory.h"
#include "racing/memory.h"
#include <variables.h>
#include <config.h>
#include <defines.h>
@ -12,7 +15,6 @@
#include "code_80005FD0.h"
#include "code_8001F980.h"
#include "hud_renderer.h"
#include "code_80057C60.h"
#include "code_80071F00.h"
#include "code_80086E70.h"
#include "code_8008C1D0.h"
@ -22,6 +24,7 @@
#include "objects.h"
#include "bomb_kart.h"
// WARNING: this macro is undef'd at the end of this file
#define MAKE_RGB(r,g,b) (((r) << 0x10) | ((g) << 0x08) | (b << 0x00))
@ -915,7 +918,6 @@ void func_80059A88(s32 arg0) {
}
extern s32 D_80165678;
extern s32 gGamestate;
extern s32 gRaceFrameCounter;
void func_80059AC8(void) {
@ -1161,11 +1163,6 @@ void func_8005A380(void) {
extern s8 D_801657F8;
extern struct Controller *gControllerOne;
extern struct Controller *gControllerTwo;
extern struct Controller *gControllerThree;
extern struct Controller *gControllerFour;
void func_8006F824(s32);
void func_8005A3C0(void) {
@ -1791,7 +1788,6 @@ extern f32 D_8018D078[8];
extern f32 D_8018D0C8[8];
extern s32 D_8018D1CC;
extern s32 gGPCurrentRaceRankByPlayerId[];
extern s32 gModeSelection;
void func_8005B7A0(void) {
f32 temp_f0;
@ -2254,7 +2250,6 @@ extern s32 D_8018D3F8;
extern s16 gGPCurrentRaceCharacterIdByRank[8];
extern s16 gGPCurrentRacePlayerIdByRank[8];
extern s32 gGPCurrentRaceRankByPlayerId[8];
extern Player *gPlayerOne;
void func_8005C980(void) {
s32 var_v0;
@ -6595,9 +6590,6 @@ void func_80069BA8(Player *, s8, s16, s8); /* extern */
void func_80069DB8(Player *, s8, s16, s8); /* extern */
void func_8006A01C(Player *, s8, s16, s8); /* extern */
extern s32 gActiveScreenMode;
extern s32 gModeSelection;
void func_8006D474(Player *player, s8 arg1, s8 arg2) {
s16 var_s2;
if ((player->unk_002 & (8 << (arg2 * 4))) == (8 << (arg2 * 4))) {

View File

@ -228,8 +228,6 @@ void func_8006E940(Player*, s8, s8);
extern s8 D_801657B2;
extern s8 D_801657C8;
extern s32 D_8018D22C;
extern s32 gGamestate;
extern u16 gDemoMode;
extern s8 D_8018EDF3;
extern s8 D_80165898;
extern Gfx D_0D0076F8[];
@ -242,7 +240,6 @@ extern s8 D_80165800[2];
extern s8 D_80165801;
extern s8 D_801657B0;
extern u8 gControllerRandom;
extern struct Controller *gControllerOne;
extern s32 D_8018D214;
extern s32 D_8018D2C8[];
extern u8 *D_8018D420;
@ -286,7 +283,6 @@ extern u8 *D_8018D4C8;
extern u16 gPlayerBalloonStatus[8][3]; // D_8018D5F0
extern s16 gPlayerBalloonCount[]; // D_8018D8C0
extern s32 gScreenModeSelection; // D_800DC530
extern struct UnkStruct_800DC5EC *D_800DC5EC;
extern struct UnkStruct_800DC5EC *D_800DC5F0;
@ -309,7 +305,6 @@ extern s8 D_801657E8;
extern s8 D_8018CAE0;
extern s16 gGPCurrentRaceCharacterIdByRank[];
extern s16 D_8018CF98[];
extern Camera *D_8018CF14;
extern Player *D_8018CF1C;

View File

@ -2,6 +2,7 @@
#include <macros.h>
#include <memory.h>
#include <defines.h>
#include "code_8006E9C0.h"
#include "code_80071F00.h"
#include "objects.h"
@ -12,6 +13,7 @@
#include <functions.h>
#include "audio/external.h"
#include "courses/all_course_data.h"
#include "main.h"
void func_8006E9C0(void) {

View File

@ -29,7 +29,6 @@ extern s16 D_800E5520[];
extern s16 D_800E5548[];
extern s32 gCourseOutlineTextures[0x14];
extern s32 gScreenModeSelection;
extern s8 *gTextureLogoMarioKart64;
extern s16 D_80165730;
extern s16 D_80165740;

View File

@ -2,16 +2,19 @@
#include <macros.h>
#include <defines.h>
#include <functions.h>
#include "code_80071F00.h"
#include "main.h"
#include "memory.h"
#include "camera.h"
#include "math_util.h"
#include "math_util_2.h"
#include "hud_renderer.h"
#include "objects.h"
#include "waypoints.h"
#include "variables.h"
#include "code_80005FD0.h"
#include "code_80057C60.h"
#include "code_80071F00.h"
#include "code_80086E70.h"
#include "common_textures.h"
#include "audio/external.h"

View File

@ -373,10 +373,6 @@ s32 osRecvMesg(OSMesgQueue*, OSMesg*, s32);
extern s8 D_8018EDF3;
extern OSMesgQueue gDmaMesgQueue;
extern OSMesg gMainReceivedMesg;
extern OSIoMesg gDmaIoMesg;
// from other_textures.s
extern u8 D_0F0D0E50[]; // gTextureGhosts

View File

@ -2,16 +2,18 @@
#include <macros.h>
#include <common_structs.h>
#include <types.h>
#include "code_80086E70.h"
#include "camera.h"
#include "objects.h"
#include "math_util.h"
#include "math_util_2.h"
#include "memory.h"
#include "code_80071F00.h"
#include "code_80086E70.h"
#include "collision.h"
#include "audio/external.h"
#include "variables.h"
#include "main.h"
void func_80086E70(s32 arg0) {
D_80165C18[arg0].unk_0AE = 1;// * 0xE0)) = 1;

View File

@ -167,13 +167,9 @@ void func_8008C1C0(s32);
// This may be a list of tilemap flags on a per-camera basis
extern s16 D_8018CF68[];
extern s32 gPlayerCountSelection1;
extern f32 D_80183DA8[];
extern f32 D_80183DC8[];
extern f32 gVBlankTimer;
extern Collision D_8018C3B0;
extern Player *gPlayerOne;
extern Player *gPlayerOneCopy;
extern s16 gCurrentCourseId;
extern Vec4s D_80165760;

View File

@ -127,7 +127,6 @@ void func_800CB064(u8);
/* This is where I'd put my static data, if I had any */
extern u16 gDemoMode;
extern f32 D_800E3710[];
extern f32 D_800E3730[];
extern f32 D_800E3750[];

View File

@ -10,8 +10,6 @@ void func_800B0004(void);
/* This is where I'd put my static data, if I had any */
extern s32 gCCSelection; // D_800DC538 in main.c
extern s32 D_800DC540;
extern s16 gCurrentCourseId; // D_800DC5A0
extern s32 gIsMirrorMode; // D_800DC5F4
extern s32 D_800E86A4;

View File

@ -99,7 +99,6 @@ extern s8 sControllerPak2State; // Current state of the Controller Pak
extern const u8 D_800F2E60[];
extern const u8 gGameName[];
extern const u8 gExtCode[];
extern OSMesgQueue gSIEventMesgQueue; // D_8014F0B8
extern u16 D_80162DD6;
extern s32 D_80162DE0;
extern s32 D_80162DFC;

View File

@ -4,7 +4,9 @@
#include <config.h>
#include <stdarg.h>
#include <string.h>
#include "crash_screen.h"
#include "main.h"
#ifdef CRASH_SCREEN_ENHANCEMENT
#include "debug/crash_screen_enhancement.h"
@ -22,9 +24,6 @@ s32 sButtonSequenceIndex;
extern void osSetEventMesg(OSEvent, OSMesgQueue *, OSMesg);
extern s32 osRecvMesg(OSMesgQueue *, OSMesg *, s32);
extern void read_controllers();
extern struct Controller *gControllerOne;
s32 sCounter = 0;

View File

@ -1,10 +1,12 @@
#include <ultra64.h>
#include <macros.h>
#include <common_structs.h>
#include "camera.h"
#include "camera_junk.h"
#include "camera.h"
#include "math_util.h"
#include "ceremony_and_credits.h"
#include "main.h"
void setup_camera_podium_ceremony(void) {
Camera *camera;

View File

@ -20,8 +20,6 @@
#include "podium_ceremony_actors.h"
#include "code_80091750.h"
extern f32 gCameraZoom[];
f32 D_802856B0 = 98.0f;
f32 D_802856B4 = 12.0f;
f32 D_802856B8 = 52.0f;

View File

@ -24,6 +24,7 @@
#include "code_80057C60.h"
#include "actors.h"
#include "render_courses.h"
#include "main.h"
s32 D_802874A0;

View File

@ -11,12 +11,7 @@ void func_80280268(s32 arg0);
void credits_loop(void);
void load_credits(void);
extern Gfx *gDisplayListHead;
extern f32 D_80150148, D_8015014C, D_80150150;
extern f32 gCameraZoom[4];
extern s16 gCreditsCourseId;
extern u16 gMatrixObjectCount;
extern s16 gMatrixEffectCount;
extern u16 gIsInQuitToMenuTransition, gQuitToMenuTransitionCounter;
@ -25,6 +20,4 @@ extern s32 D_802874A0;
extern u16 D_80164714, D_80164716, D_80164718;
extern u16 D_800DC5E4;
extern u16 D_800DC518;
#endif

View File

@ -1,20 +1,22 @@
#include <ultra64.h>
#include <macros.h>
#include "types.h"
#include "variables.h"
#include <defines.h>
#include <config.h>
#include "code_80281780.h"
#include "types.h"
#include "variables.h"
#include "memory.h"
#include "camera.h"
#include "spawn_players.h"
#include "skybox_and_splitscreen.h"
#include "code_8006E9C0.h"
#include "podium_ceremony_actors.h"
#include "code_80281780.h"
#include "code_80005FD0.h"
#include "collision.h"
#include "code_80281C40.h"
#include <code_800029B0.h>
#include "code_800029B0.h"
#include "main.h"
u8 defaultCharacterIds[] = {
1, 2, 3, 4, 5, 6, 7, 0

View File

@ -20,16 +20,12 @@ extern s16 gCurrentCourseId;
extern u16 D_800DC5B4;
extern s32 gIsMirrorMode;
extern s32 gScreenModeSelection;
extern s32 gActiveScreenMode;
extern s32 gModeSelection;
extern u16 D_800DC5BC;
extern u16 D_800DC5C8;
extern struct UnkStruct_800DC5EC *D_800DC5EC;
extern s32 D_80287554;
extern f32 D_801647A4;
extern f32 gCameraZoom[];
extern s32 D_8015F5A0;
@ -38,9 +34,7 @@ extern s32 D_00825800;
extern s32 D_00831DC0;
extern s32 D_00835BA0;
extern struct Controller *gControllerOne;
extern s8 gCharacterSelections[];
extern u16 gEnableDebugMode;
extern u8 defaultCharacterIds[];
extern s8 gGPOverallRanks[8];

View File

@ -1,6 +1,8 @@
#include <ultra64.h>
#include <PR/gu.h>
#include <macros.h>
#include "code_80281C40.h"
#include "main.h"
#include "math_util.h"
#include "skybox_and_splitscreen.h"
@ -8,7 +10,6 @@
#include "code_80057C60.h"
#include "code_80091750.h"
#include "podium_ceremony_actors.h"
#include "code_80281C40.h"
#include "ceremony_and_credits.h"
#include "podium_ceremony_actors.h"
#include "code_8001F980.h"

View File

@ -12,8 +12,4 @@ extern u16 gIsInQuitToMenuTransition;
extern Gfx D_00284F70[];
extern Gfx D_00284EE0[];
extern f32 D_80150148, D_8015014C, D_80150150;
extern f32 gCameraZoom[];
#endif

View File

@ -7,7 +7,6 @@
extern s16 D_800E43A8;
extern Mtx D_0D008E98;
extern Gfx* gDisplayListHead;
// rsp init
UNUSED void gfx_func_80040D00(void) {

View File

@ -2,6 +2,7 @@
#define hud_renderer_H
#include "common_structs.h"
#include "main.h"
void func_80045738(u8*, u8*, s32, s32);
void func_80057114(s32);
@ -455,6 +456,4 @@ extern s8 D_800E566A[];
extern u8 d_course_bowsers_castle_thwomp_tlut[]; // Some type of pallette?
extern Gfx *gDisplayListHead;
#endif

View File

@ -1,3 +1,4 @@
#define STRANGE_MAIN_HEADER_H
#include <ultra64.h>
#include <PR/os.h>
#include <macros.h>
@ -6,7 +7,7 @@
#include "config.h"
#include "profiler.h"
#include "main.h"
#include "memory.h"
#include "racing/memory.h"
#include "menus.h"
#include "segments.h"
#include "segment_symbols.h"
@ -165,6 +166,7 @@ OSMesg gPIMesgBuf[32];
OSMesgQueue gPIMesgQueue;
s32 gGamestate = 0xFFFF;
// D_800DC510 is externed as an s32 in other files. D_800DC514 is only used in main.c, likely a developer mistake.
u16 D_800DC510 = 0;
u16 D_800DC514 = 0;
u16 D_800DC518 = 0;
@ -264,7 +266,7 @@ void create_gfx_task_structure(void) {
gGfxSPTask->task.t.ucode_boot = rspbootTextStart;
gGfxSPTask->task.t.ucode_boot_size = ((u8 *) rspbootTextEnd - (u8 *) rspbootTextStart);
// The split-screen multiplayer racing state uses F3DLX which has a simple subpixel calculation.
// Singleplayer race mode and all other game states use F3DEX.
// Singleplayer race mode and all other game states use F3DEX.
// http://n64devkit.square7.ch/n64man/ucode/gspF3DEX.htm
if (gGamestate != RACING || gPlayerCountSelection1 == 1) {
gGfxSPTask->task.t.ucode = gspF3DEXTextStart;
@ -300,7 +302,7 @@ void init_controllers(void) {
}
}
void update_controller(s32 index) {
void update_controller(s32 index) {
struct Controller *controller = &gControllers[index];
u16 stick;
@ -534,8 +536,8 @@ void setup_game_memory(void) {
}
/**
* @brief
*
* @brief
*
*/
void game_init_clear_framebuffer(void) {
gGamestateNext = 0; // = START_MENU_FROM_QUIT?
@ -825,7 +827,7 @@ void race_logic_loop(void) {
func_800591B4();
func_80093E20();
#if DVDL
display_dvdl();
display_dvdl();
#endif
gDPFullSync(gDisplayListHead++);
gSPEndDisplayList(gDisplayListHead++);
@ -839,7 +841,7 @@ void race_logic_loop(void) {
* State 3) Process race related logic
* State 4) Ending sequence
* State 5) Credits
*
*
* Note that the state doesn't flip-flop at random but is permanent
* until the state changes (ie. Exit menus and start a race).
*/
@ -873,7 +875,7 @@ void game_state_handler(void) {
init_rcp();
func_80094A64(gGfxPool);
#if DVDL
display_dvdl();
display_dvdl();
#endif
break;
case RACING:
@ -995,7 +997,7 @@ void handle_sp_complete(void) {
struct SPTask *curSPTask = gActiveSPTask;
gActiveSPTask = NULL;
if (curSPTask->state == SPTASK_STATE_INTERRUPTED) {
// handle_vblank tried to start an audio task while there was already a
// gfx task running, so it had to interrupt the gfx task. That interruption
@ -1103,9 +1105,9 @@ void func_80002658(void) {
}
/**
* Sets courseId to NULL if
*
*
* Sets courseId to NULL if
*
*
*/
void update_gamestate(void) {
switch (gGamestate) {

View File

@ -62,8 +62,6 @@ struct UnkStruct_8015F584 {
u16 unk2;
};
extern struct UnkStruct_8015F584 D_8014F110[];
void create_thread(OSThread*, OSId, void (*entry)(void *), void*, void*, OSPri);
void main_func(void);
void thread1_idle(void*);
@ -105,8 +103,16 @@ void update_gamestate(void);
void thread5_game_loop(void*);
void thread4_audio(void*);
extern struct GfxPool *gGfxPool;
extern Gfx *gDisplayListHead;
extern struct VblankHandler *gVblankHandler1;
extern struct VblankHandler *gVblankHandler2;
extern struct SPTask *gActiveSPTask;
extern struct SPTask *sCurrentAudioSPTask;
extern struct SPTask* sCurrentDisplaySPTask;
extern struct SPTask* sNextAudioSPTask;
extern struct SPTask* sNextDisplaySPTask;
extern struct Controller gControllers[];
extern struct Controller *gControllerOne;
extern struct Controller *gControllerTwo;
@ -116,9 +122,6 @@ extern struct Controller *gControllerFive;
extern struct Controller *gControllerSix;
extern struct Controller *gControllerSeven;
extern struct Controller *gControllerEight;
extern s32 D_800DC568;
extern s32 D_800DC56C[];
extern Player gPlayers[];
extern Player *gPlayerOne;
@ -132,26 +135,102 @@ extern Player *gPlayerEight;
extern Player *gPlayerOneCopy;
extern Player *gPlayerTwoCopy;
extern UNUSED Player *gPlayerThreeCopy;
extern UNUSED Player *gPlayerFourCopy;
extern u16 D_80152308;
extern s32 D_800FD850[];
extern struct GfxPool gGfxPools[];
extern struct GfxPool *gGfxPool;
extern s32 gModeSelection;
extern u16 *gPhysicalFramebuffers[];
extern OSIoMesg gDmaIoMesg;
extern s32 gfxPool_padding;
extern struct VblankHandler gGameVblankHandler;
extern struct VblankHandler sSoundVblankHandler;
extern OSMesgQueue gDmaMesgQueue, gGameVblankQueue, gGfxVblankQueue, unused_gMsgQueue, gIntrMesgQueue, gSPTaskMesgQueue;
extern OSMesgQueue sSoundMesgQueue;
extern OSMesg sSoundMesgBuf[];
extern OSMesg gDmaMesgBuf[], gGameMesgBuf;
extern OSMesg gGfxMesgBuf[];
extern OSMesg gIntrMesgBuf[], gSPTaskMesgBuf[];
extern OSMesg gMainReceivedMesg;
extern OSMesgQueue gDmaMesgQueue;
extern s32 gGamestateNext;
extern s32 gActiveScreenMode;
extern f32 gVBlankTimer;
extern s32 gScreenModeSelection;
extern OSIoMesg gDmaIoMesg;
extern OSMesgQueue gSIEventMesgQueue;
extern OSMesg gSIEventMesgBuf[];
extern OSContStatus gControllerStatuses[];
extern struct Controller *gControllerFive;
extern OSContPad gControllerPads[];
extern u8 gControllerBits;
extern struct UnkStruct_8015F584 D_8014F110[];
extern u16 gNumActors;
extern u16 gMatrixObjectCount;
extern s32 gTickSpeed;
extern f32 D_80150118;
extern u16 wasSoftReset;
extern u16 D_8015011E;
extern s32 D_80150120;
extern s32 gMenuSelectionFromQuit;
extern f32 gCameraZoom[];
extern f32 D_80150148;
extern f32 D_8015014C;
extern f32 D_80150150;
extern struct D_80150158 gD_80150158[];
extern uintptr_t gSegmentTable[];
extern Gfx *gDisplayListHead;
extern struct SPTask *gGfxSPTask;
extern s32 D_801502A0;
extern s32 D_801502A4;
extern u16 *gPhysicalFramebuffers[];
extern u32 D_801502B4;
extern Mat4 D_801502C0;
extern s32 padding[];
extern u16 D_80152300[];
extern u16 D_80152308;
extern OSThread gIdleThread;
extern ALIGNED8 u8 gIdleThreadStack[];
extern OSThread gVideoThread;
extern ALIGNED8 u8 gVideoThreadStack[];
extern OSThread gGameLoopThread;
extern ALIGNED8 u8 gGameLoopThreadStack[];
extern OSThread gAudioThread;
extern ALIGNED8 u8 gAudioThreadStack[];
extern u8 gGfxSPTaskYieldBuffer[];
extern u32 gGfxSPTaskStack[];
extern OSMesg gPIMesgBuf[];
extern OSMesgQueue gPIMesgQueue;
extern s32 gGamestate;
#ifndef STRANGE_MAIN_HEADER_H
extern s32 D_800DC510;
#endif
extern u16 D_800DC518;
extern u16 gDemoMode;
extern u16 gEnableDebugMode;
extern s32 gGamestateNext;
extern s32 gActiveScreenMode;
extern s32 gScreenModeSelection;
extern s32 gPlayerCountSelection1;
extern s32 gModeSelection;
extern s32 D_800DC540;
extern s32 D_800DC544;
extern s32 gCCSelection;
extern s32 gGlobalTimer;
extern u16 sRenderedFramebuffer;
extern u16 sRenderingFramebuffer;
extern s32 D_800DC568;
extern s32 D_800DC56C[];
extern s16 sNumVBlanks;
extern f32 gVBlankTimer;
extern f32 gCourseTimer;
// end of definition of main.c variables
extern u64 rspbootTextStart[], rspbootTextEnd[];
extern u64 gspF3DEXTextStart[], gspF3DEXTextEnd[];
extern u64 gspF3DLXTextStart[], gspF3DLXTextEnd[];
@ -180,6 +259,4 @@ extern struct UnkStruct_800DC5EC *D_800DC5EC;
extern u16 D_800DC5B0;
extern s32 gPlayerWinningIndex;
extern u16 D_80152300[];
#endif

View File

@ -597,7 +597,6 @@ void func_80041D24(void) {
}
void guOrtho(Mtx *, f32, f32, f32, f32, f32, f32, f32); /* extern */
extern s32 gActiveScreenMode;
extern s8 D_801658FE;
extern Mtx D_80183D60[];

View File

@ -3,22 +3,23 @@
#include <defines.h>
#include <mk64.h>
#include <variables.h>
#include "player_controller.h"
#include "code_800029B0.h"
#include "kart_attributes.h"
#include "memory.h"
#include "racing/memory.h"
#include "math_util.h"
#include "code_8001F980.h"
#include "player_controller.h"
#include "code_8008C1D0.h"
#include "collision.h"
#include "waypoints.h"
#include "audio/external.h"
#include "code_8003DC40.h"
#include "main.h"
extern s8 D_80164A89;
extern s16 D_801633F8;
extern s32 D_8018D168;
extern s32 D_800DC510;
s16 D_800E3810[] = {
1, 2, 3, 4, 5, 6, 7, 0

View File

@ -195,12 +195,4 @@ extern Player *D_801653C0[8];
extern s16 D_801656F0;
extern s32 gRaceFrameCounter;
extern struct Controller *gControllerEight;
extern struct Controller *gControllerFour;
extern struct Controller *gControllerOne;
extern struct Controller *gControllerSeven;
extern struct Controller *gControllerSix;
extern struct Controller *gControllerThree;
extern struct Controller *gControllerTwo;
#endif

View File

@ -1,12 +1,14 @@
#include <ultra64.h>
#include <macros.h>
#include <PR/os.h>
#include "types.h"
#include "code_800029B0.h"
#include <sounds.h>
#include <common_structs.h>
#include <actor_types.h>
#include <defines.h>
#include <PR/gbi.h>
#include <types.h>
#include "code_800029B0.h"
#include "main.h"
#include "math_util.h"
#include "memory.h"
@ -18,10 +20,10 @@
#include "code_80071F00.h"
#include "code_8008C1D0.h"
#include "collision.h"
#include <sounds.h>
#include "audio/external.h"
#include "common_textures.h"
#include "courses/all_course_data.h"
#include "main.h"
// Appears to be textures
// or tluts

View File

@ -124,30 +124,15 @@ extern struct Actor *D_802BA05C;
extern s8 gTLUTRedShell[512]; // tlut 256
extern u16 D_802BA260;
extern s32 gPlayerCountSelection1;
extern Player gPlayers[];
extern u16 gNumActors;
extern u16 D_802BA260; // Box Truck sub-type?
extern Player *gPlayerOne;
extern struct Controller gControllers[];
extern s32 gActiveScreenMode;
extern u16 gNearestWaypointByPlayerId[];
extern Camera *camera1;
extern Gfx *gDisplayListHead;
extern s32 gModeSelection;
extern s16 gCurrentCourseId;
extern f32 gCameraZoom[];
extern u16 isCrossingTriggeredByIndex[];
extern Lights1 D_800DC610[];
extern u16 gMatrixObjectCount;
extern uintptr_t gSegmentTable[];
extern s16 gPlaceItemBoxes;
extern s8 D_0D004C68[];
@ -168,10 +153,6 @@ extern Gfx toads_turnpike_dl_9[];
extern Gfx toads_turnpike_dl_10[];
extern Gfx toads_turnpike_dl_11[];
extern Mat4 D_801502C0;
extern s32 gGamestate;
extern s32 gGamestate;
extern s32 D_80162DF8;
extern Gfx D_0D001750[];

View File

@ -44,6 +44,4 @@ extern f32 D_802B9F68;
extern s16 gPlayerBalloonCount[];
extern u16 gDemoMode;
#endif // ACTORS_EXTENDED_H

View File

@ -5,9 +5,10 @@
#include <common_structs.h>
#include <variables.h>
#include <segments.h>
#include "memory.h"
#include "main.h"
#include "code_800029B0.h"
#include "memory.h"
#include "math_util.h"
s32 sGfxSeekPosition;

View File

@ -90,10 +90,6 @@ void unpack_texture_on(Gfx*, u8*, s8);
void unpack_texture_off(Gfx*, u8*, s8);
u8 *load_course(s32);
// main.c
extern struct D_80150158 gD_80150158[];
extern s32 D_801502A0;
extern u8 _other_texturesSegmentRomStart[];
#endif // MEMORY_H

View File

@ -27,42 +27,23 @@
extern s16 gPlayerBalloonCount[];
extern s16 D_8016348C;
extern s8 gCupCourseSelection;
extern s32 D_800DC544;
extern Player gPlayers[];
extern Player *gPlayerOne;
extern s32 gLapCountByPlayerId[];
extern s32 D_80150120;
extern s32 gModeSelection;
extern s32 gPlayerCountSelection1;
extern u16 D_802BA048;
extern s32 D_800DC510;
extern s32 gMenuSelectionFromQuit;
extern u16 D_800DC5B4;
extern u16 D_800DC5B0;
extern u16 D_800DC5B8;
extern s32 gMenuSelection;
extern s8 D_8018EE08;
extern u16 gDemoMode;
extern f32 D_80150118;
extern u16 D_800DC518;
extern u16 D_8015011E;
extern float gCourseTimer;
extern float gVBlankTimer;
extern s32 gScreenModeSelection;
extern s32 D_8018D2AC;
extern s32 gActiveScreenMode;
extern s16 gCurrentCourseId;
extern u32 D_800DC5AC;
extern u16 gEnableDebugMode;
extern s32 gPlayerWinningIndex;
extern u16 gIsInQuitToMenuTransition, gQuitToMenuTransitionCounter;
extern s32 D_802B91E0;
extern f32 D_80150148;
u16 D_802BA030;
u16 D_802BA032;

View File

@ -3,15 +3,16 @@
#include <common_structs.h>
#include <defines.h>
#include <types.h>
#include <code_800029B0.h>
#include <course.h>
#include "render_courses.h"
#include "code_800029B0.h"
#include "main.h"
#include "actors.h"
#include "math_util.h"
#include "memory.h"
#include "code_80281780.h"
#include "collision.h"
#include "render_courses.h"
#include "skybox_and_splitscreen.h"
#include "courses/all_course_data.h"
#include "courses/all_course_packed.h"
@ -67,8 +68,6 @@ void parse_course_displaylists(uintptr_t addr) {
}
}
extern u16 D_80152300[];
void load_surface_map(uintptr_t addr, struct UnkStruct_800DC5EC *arg1) {
Player *temp_t1 = arg1->player;
Camera *temp_a2 = arg1->camera;

View File

@ -36,14 +36,7 @@ void func_80295D88(void);
void func_802966A0(void);
void func_802969F8(void);
extern Gfx *gDisplayListHead;
extern s16 gCurrentCourseId;
extern s32 gActiveScreenMode;
extern u16 sRenderedFramebuffer;
extern uintptr_t gSegmentTable[];
extern Player gPlayers[];
extern s32 D_8015F59C;
@ -52,7 +45,6 @@ extern s32 D_800DC5E0;
extern s32 D_802B87C4;
extern s32 D_802B87C8;
extern s32 D_802B87CC;
extern s32 gScreenModeSelection;
extern Gfx mario_raceway_dls[];
extern Gfx choco_mountain_dls[];
extern s32 D_802B87BC;
@ -71,13 +63,8 @@ extern Gfx wario_stadium_dls[];
extern Gfx D_090001D0[];
extern u16 D_800DC518;
extern u16 D_8015F58A;
extern u16 D_800DC5BC; /* unable to generate initializer */
extern s32 gGamestate;
extern s32 gModeSelection;
extern u16 gNumActors;
extern s32 gCCSelection;
#endif

View File

@ -1,22 +1,23 @@
#include <ultra64.h>
#include <macros.h>
#include <PR/gbi.h>
#include <main.h>
#include "code_800029B0.h"
#include <types.h>
#include <common_structs.h>
#include <variables.h>
#include <config.h>
#include "skybox_and_splitscreen.h"
#include "code_800029B0.h"
#include <common_structs.h>
#include "memory.h"
#include "camera.h"
#include "common_textures.h"
#include "skybox_and_splitscreen.h"
#include "code_8001F980.h"
#include "code_80057C60.h"
#include "code_80091750.h"
#include "actors.h"
#include "render_courses.h"
#include "math_util.h"
#include "main.h"
Vp D_802B8880[] = {
@ -1291,8 +1292,6 @@ void copy_framebuffer(s32 arg0, s32 arg1, s32 width, s32 height, u16 *source, u1
extern s32 D_800DC5DC;
extern s32 D_800DC5E0;
extern uintptr_t gSegmentTable[];
extern u16 sRenderedFramebuffer;
void func_802A7728(void) {
s16 temp_v0;

View File

@ -52,43 +52,28 @@ void copy_framebuffer(s32, s32, s32, s32, u16*, u16*);
void func_802A7728(void);
void func_802A7940(void);
extern Gfx *gDisplayListHead;
extern struct UnkStruct_800DC5EC *D_800DC5EC;
extern struct UnkStruct_800DC5EC *D_800DC5F0;
extern struct UnkStruct_800DC5EC *D_800DC5F4;
extern struct UnkStruct_800DC5EC *D_800DC5F8;
extern u16 D_800DC5B0;
extern s32 gGamestateNext;
extern u16 gIsInQuitToMenuTransition;
extern u16 gQuitToMenuTransitionCounter;
extern s32 gMenuSelection;
extern s32 D_800E86A4;
extern s32 gMenuSelectionFromQuit;
extern u32 D_801502B4;
extern u16 sRenderingFramebuffer;
extern s32 D_800DC5D0;
extern s32 D_800DC5D4;
extern s32 D_800DC5D8;
extern u16 D_800DC5BC;
extern struct GfxPool *gGfxPool;
extern f32 gCameraZoom[];
extern u16 D_800DC5B4;
extern f32 D_80150148;
extern f32 D_8015014C;
extern f32 D_80150150;
extern u16 D_800DC5C8;
extern u16 D_800DC5B8;
extern struct UnkStruct_800DC5EC D_8015F480[];
extern struct Controller gControllers[];
extern Player gPlayers[];
extern s32 D_800DC5DC;
extern s32 D_800DC5E0;
extern uintptr_t gSegmentTable[];
extern u16 sRenderedFramebuffer;
#endif

View File

@ -1,5 +1,7 @@
#include <global.h>
#include <defines.h>
#include "spawn_players.h"
#include "code_800029B0.h"
#include "kart_attributes.h"
#include "memory.h"
@ -12,10 +14,10 @@
#include "code_80057C60.h"
#include "collision.h"
#include "render_courses.h"
#include "spawn_players.h"
#include "staff_ghosts.h"
#include "code_80005FD0.h"
#include "podium_ceremony_actors.h"
#include "main.h"
// arg4 is height? Or something like that?
void spawn_player(Player *player, s8 playerIndex, f32 startingRow, f32 startingColumn, f32 arg4, f32 arg5, u16 characterId, s16 playerType) {