Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
Functions | Variables
old_menu.c File Reference

This file contains code for rendering what appears to be an old menuing system. More...

#include <ultra64.h>
#include <macros.h>
#include "gd_types.h"
#include "old_menu.h"
#include "objects.h"
#include "dynlist_proc.h"
#include "debug_utils.h"
#include "renderer.h"

Functions

void func_8018BCB8 (struct ObjGadget *)
 
void get_objvalue (union ObjVarVal *dst, enum ValPtrType type, void *base, s32 offset)
 
void Unknown8018B7A8 (void *a0)
 
void Proc8018B83C (void *a0)
 
void cat_grp_name_to_buf (struct ObjGroup *group)
 
voidUnknown8018B900 (struct ObjGroup *grp)
 
struct ObjLabelmake_label (struct ObjValPtrs *ptr, char *str, s32 a2, f32 x, f32 y, f32 z)
 
struct ObjGadgetmake_gadget (UNUSED s32 a0, s32 a1)
 
void set_objvalue (union ObjVarVal *src, enum ValPtrType type, void *base, s32 offset)
 
void set_static_gdgt_value (struct ObjValPtrs *vp)
 
void adjust_gadget (struct ObjGadget *gdgt, s32 a1, s32 a2)
 
void reset_gadget (struct ObjGadget *gdgt)
 
void reset_gadgets_in_grp (struct ObjGroup *grp)
 

Variables

static char sMenuStrBuf [0x100]
 
static struct GdVec3f sStaticVec
 
static struct GdVec3f unusedVec
 
static struct ObjGadgetsCurGadgetPtr
 

Detailed Description

This file contains code for rendering what appears to be an old menuing system.

It is hard to tell, as most of the menuing code is stubbed out. It also contains code for creating labels and gadget, which are GdObjs that allow for displaying text and memory values on screen. Those GdObjs are not created in-game, but there are some functions in renderer.c that use them, and those functions may still work if called.

Function Documentation

◆ adjust_gadget()

void adjust_gadget ( struct ObjGadget gdgt,
s32  a1,
s32  a2 
)

◆ cat_grp_name_to_buf()

void cat_grp_name_to_buf ( struct ObjGroup group)

◆ func_8018BCB8()

void func_8018BCB8 ( struct ObjGadget gdgt)

◆ get_objvalue()

void get_objvalue ( union ObjVarVal dst,
enum ValPtrType  type,
void base,
s32  offset 
)

◆ make_gadget()

struct ObjGadget* make_gadget ( UNUSED s32  a0,
s32  a1 
)

◆ make_label()

struct ObjLabel* make_label ( struct ObjValPtrs ptr,
char str,
s32  a2,
f32  x,
f32  y,
f32  z 
)

◆ Proc8018B83C()

void Proc8018B83C ( void a0)

◆ reset_gadget()

void reset_gadget ( struct ObjGadget gdgt)

◆ reset_gadgets_in_grp()

void reset_gadgets_in_grp ( struct ObjGroup grp)

◆ set_objvalue()

void set_objvalue ( union ObjVarVal src,
enum ValPtrType  type,
void base,
s32  offset 
)

◆ set_static_gdgt_value()

void set_static_gdgt_value ( struct ObjValPtrs vp)

◆ Unknown8018B7A8()

void Unknown8018B7A8 ( void a0)

◆ Unknown8018B900()

void* Unknown8018B900 ( struct ObjGroup grp)

Variable Documentation

◆ sCurGadgetPtr

struct ObjGadget* sCurGadgetPtr
static

◆ sMenuStrBuf

char sMenuStrBuf[0x100]
static

◆ sStaticVec

struct GdVec3f sStaticVec
static

◆ unusedVec

struct GdVec3f unusedVec
static