Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
Functions | Variables
game.c File Reference
#include <ultra64.h>
#include "sm64.h"
#include "main.h"
#include "memory.h"
#include "save_file.h"
#include "seq_ids.h"
#include "sound_init.h"
#include "display.h"
#include "engine/level_script.h"
#include "profiler.h"
#include "print.h"
#include "segment2.h"
#include "main_entry.h"
#include "audio/external.h"
#include <prevent_bss_reordering.h>
#include "game.h"

Functions

static void record_demo (void)
 
void adjust_analog_stick (struct Controller *controller)
 
void run_demo_inputs (void)
 
void read_controller_inputs (void)
 
void init_controllers (void)
 
void setup_game_memory (void)
 
void thread5_game_loop (UNUSED void *arg)
 

Variables

struct Controller gControllers [3]
 
OSContStatus gControllerStatuses [4]
 
OSContPad gControllerPads [4]
 
OSMesgQueue gGameVblankQueue
 
OSMesgQueue D_80339CB8
 
OSMesg D_80339CD0
 
OSMesg D_80339CD4
 
struct VblankHandler gGameVblankHandler
 
u32 gFrameBuffers [3]
 
u32 zBufferPtr
 
voidD_80339CF0
 
voidD_80339CF4
 
struct SPTaskgGfxSPTask
 
GfxgDisplayListHead
 
u8gGfxPoolEnd
 
struct GfxPoolgGfxPool
 
u8 gControllerBits
 
s8 gEepromProbe
 
struct MarioAnimation D_80339D10
 
struct MarioAnimation gDemo
 
UNUSED s8 filler80339D30 [0x80339DC0 - 0x80339D30]
 
void(* D_8032C6A0 )(void) = NULL
 
struct ControllergPlayer1Controller = &gControllers[0]
 
struct ControllergPlayer2Controller = &gControllers[1]
 
struct ControllergPlayer3Controller = &gControllers[2]
 
struct DemoInputgCurrDemoInput = NULL
 
u16 gDemoInputListID = 0
 
struct DemoInput gRecordedDemoInput = { 0 }
 

Function Documentation

◆ adjust_analog_stick()

void adjust_analog_stick ( struct Controller controller)

◆ init_controllers()

void init_controllers ( void  )

◆ read_controller_inputs()

void read_controller_inputs ( void  )

◆ record_demo()

static void record_demo ( void  )
static

◆ run_demo_inputs()

void run_demo_inputs ( void  )

◆ setup_game_memory()

void setup_game_memory ( void  )

◆ thread5_game_loop()

void thread5_game_loop ( UNUSED void arg)

Variable Documentation

◆ D_8032C6A0

void(* D_8032C6A0) (void) = NULL

◆ D_80339CB8

OSMesgQueue D_80339CB8

◆ D_80339CD0

OSMesg D_80339CD0

◆ D_80339CD4

OSMesg D_80339CD4

◆ D_80339CF0

void* D_80339CF0

◆ D_80339CF4

void* D_80339CF4

◆ D_80339D10

struct MarioAnimation D_80339D10

◆ filler80339D30

UNUSED s8 filler80339D30[0x80339DC0 - 0x80339D30]

◆ gControllerBits

u8 gControllerBits

◆ gControllerPads

OSContPad gControllerPads[4]

◆ gControllers

struct Controller gControllers[3]

◆ gControllerStatuses

OSContStatus gControllerStatuses[4]

◆ gCurrDemoInput

struct DemoInput* gCurrDemoInput = NULL

◆ gDemo

◆ gDemoInputListID

u16 gDemoInputListID = 0

◆ gDisplayListHead

Gfx* gDisplayListHead

◆ gEepromProbe

s8 gEepromProbe

◆ gFrameBuffers

u32 gFrameBuffers[3]

◆ gGameVblankHandler

struct VblankHandler gGameVblankHandler

◆ gGameVblankQueue

OSMesgQueue gGameVblankQueue

◆ gGfxPool

struct GfxPool* gGfxPool

◆ gGfxPoolEnd

u8* gGfxPoolEnd

◆ gGfxSPTask

struct SPTask* gGfxSPTask

◆ gPlayer1Controller

struct Controller* gPlayer1Controller = &gControllers[0]

◆ gPlayer2Controller

struct Controller* gPlayer2Controller = &gControllers[1]

◆ gPlayer3Controller

struct Controller* gPlayer3Controller = &gControllers[2]

◆ gRecordedDemoInput

struct DemoInput gRecordedDemoInput = { 0 }

◆ zBufferPtr

u32 zBufferPtr