Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
Macros | Functions | Variables
geo_layout.h File Reference
#include "game/memory.h"

Go to the source code of this file.

Macros

#define GEO_CMD_FLAGS_RESET   0
 
#define GEO_CMD_FLAGS_SET   1
 
#define GEO_CMD_FLAGS_CLEAR   2
 
#define cur_geo_cmd_u8(offset)   (gGeoLayoutCommand[offset])
 
#define cur_geo_cmd_s16(offset)   (*(s16 *) &gGeoLayoutCommand[offset])
 
#define cur_geo_cmd_s32(offset)   (*(s32 *) &gGeoLayoutCommand[offset])
 
#define cur_geo_cmd_u32(offset)   (*(u32 *) &gGeoLayoutCommand[offset])
 

Functions

void geo_layout_cmd_branch_and_link (void)
 
void geo_layout_cmd_end (void)
 
void geo_layout_cmd_branch (void)
 
void geo_layout_cmd_return (void)
 
void geo_layout_cmd_open_node (void)
 
void geo_layout_cmd_close_node (void)
 
void geo_layout_cmd_assign_as_view (void)
 
void geo_layout_cmd_update_node_flags (void)
 
void geo_layout_cmd_node_root (void)
 
void geo_layout_cmd_node_ortho_projection (void)
 
void geo_layout_cmd_node_perspective (void)
 
void geo_layout_cmd_node_start (void)
 
void geo_layout_cmd_nop3 (void)
 
void geo_layout_cmd_node_master_list (void)
 
void geo_layout_cmd_node_level_of_detail (void)
 
void geo_layout_cmd_node_switch_case (void)
 
void geo_layout_cmd_node_camera (void)
 
void geo_layout_cmd_node_translation_rotation (void)
 
void geo_layout_cmd_node_translation (void)
 
void geo_layout_cmd_node_rotation (void)
 
void geo_layout_cmd_node_scale (void)
 
void geo_layout_cmd_nop2 (void)
 
void geo_layout_cmd_node_animated_part (void)
 
void geo_layout_cmd_node_billboard (void)
 
void geo_layout_cmd_node_display_list (void)
 
void geo_layout_cmd_node_shadow (void)
 
void geo_layout_cmd_node_object_parent (void)
 
void geo_layout_cmd_node_generated (void)
 
void geo_layout_cmd_node_background (void)
 
void geo_layout_cmd_nop (void)
 
void geo_layout_cmd_copy_view (void)
 
void geo_layout_cmd_node_held_obj (void)
 
void geo_layout_cmd_node_culling_radius (void)
 
struct GraphNodeprocess_geo_layout (struct AllocOnlyPool *a0, void *segptr)
 

Variables

struct AllocOnlyPoolgGraphNodePool
 
struct GraphNodegCurRootGraphNode
 
UNUSED s32 D_8038BCA8
 
struct GraphNode ** gGeoViews
 
u16 gGeoNumViews
 
u32 gGeoLayoutStack []
 
struct GraphNodegCurGraphNodeList []
 
s16 gCurGraphNodeIndex
 
s16 gGeoLayoutStackIndex
 
UNUSED s16 D_8038BD7C
 
s16 gGeoLayoutReturnIndex
 
u8gGeoLayoutCommand
 
struct GraphNode gObjParentGraphNode
 
struct AllocOnlyPoolD_8038BCA0
 
struct GraphNodeD_8038BCA4
 
s16 D_8038BD78
 
struct GraphNodeD_8038BCF8 []
 

Macro Definition Documentation

◆ cur_geo_cmd_s16

#define cur_geo_cmd_s16 (   offset)    (*(s16 *) &gGeoLayoutCommand[offset])

◆ cur_geo_cmd_s32

#define cur_geo_cmd_s32 (   offset)    (*(s32 *) &gGeoLayoutCommand[offset])

◆ cur_geo_cmd_u32

#define cur_geo_cmd_u32 (   offset)    (*(u32 *) &gGeoLayoutCommand[offset])

◆ cur_geo_cmd_u8

#define cur_geo_cmd_u8 (   offset)    (gGeoLayoutCommand[offset])

◆ GEO_CMD_FLAGS_CLEAR

#define GEO_CMD_FLAGS_CLEAR   2

◆ GEO_CMD_FLAGS_RESET

#define GEO_CMD_FLAGS_RESET   0

◆ GEO_CMD_FLAGS_SET

#define GEO_CMD_FLAGS_SET   1

Function Documentation

◆ geo_layout_cmd_assign_as_view()

void geo_layout_cmd_assign_as_view ( void  )

◆ geo_layout_cmd_branch()

void geo_layout_cmd_branch ( void  )

◆ geo_layout_cmd_branch_and_link()

void geo_layout_cmd_branch_and_link ( void  )

◆ geo_layout_cmd_close_node()

void geo_layout_cmd_close_node ( void  )

◆ geo_layout_cmd_copy_view()

void geo_layout_cmd_copy_view ( void  )

◆ geo_layout_cmd_end()

void geo_layout_cmd_end ( void  )

◆ geo_layout_cmd_node_animated_part()

void geo_layout_cmd_node_animated_part ( void  )

◆ geo_layout_cmd_node_background()

void geo_layout_cmd_node_background ( void  )

◆ geo_layout_cmd_node_billboard()

void geo_layout_cmd_node_billboard ( void  )

◆ geo_layout_cmd_node_camera()

void geo_layout_cmd_node_camera ( void  )

◆ geo_layout_cmd_node_culling_radius()

void geo_layout_cmd_node_culling_radius ( void  )

◆ geo_layout_cmd_node_display_list()

void geo_layout_cmd_node_display_list ( void  )

◆ geo_layout_cmd_node_generated()

void geo_layout_cmd_node_generated ( void  )

◆ geo_layout_cmd_node_held_obj()

void geo_layout_cmd_node_held_obj ( void  )

◆ geo_layout_cmd_node_level_of_detail()

void geo_layout_cmd_node_level_of_detail ( void  )

◆ geo_layout_cmd_node_master_list()

void geo_layout_cmd_node_master_list ( void  )

◆ geo_layout_cmd_node_object_parent()

void geo_layout_cmd_node_object_parent ( void  )

◆ geo_layout_cmd_node_ortho_projection()

void geo_layout_cmd_node_ortho_projection ( void  )

◆ geo_layout_cmd_node_perspective()

void geo_layout_cmd_node_perspective ( void  )

◆ geo_layout_cmd_node_root()

void geo_layout_cmd_node_root ( void  )

◆ geo_layout_cmd_node_rotation()

void geo_layout_cmd_node_rotation ( void  )

◆ geo_layout_cmd_node_scale()

void geo_layout_cmd_node_scale ( void  )

◆ geo_layout_cmd_node_shadow()

void geo_layout_cmd_node_shadow ( void  )

◆ geo_layout_cmd_node_start()

void geo_layout_cmd_node_start ( void  )

◆ geo_layout_cmd_node_switch_case()

void geo_layout_cmd_node_switch_case ( void  )

◆ geo_layout_cmd_node_translation()

void geo_layout_cmd_node_translation ( void  )

◆ geo_layout_cmd_node_translation_rotation()

void geo_layout_cmd_node_translation_rotation ( void  )

◆ geo_layout_cmd_nop()

void geo_layout_cmd_nop ( void  )

◆ geo_layout_cmd_nop2()

void geo_layout_cmd_nop2 ( void  )

◆ geo_layout_cmd_nop3()

void geo_layout_cmd_nop3 ( void  )

◆ geo_layout_cmd_open_node()

void geo_layout_cmd_open_node ( void  )

◆ geo_layout_cmd_return()

void geo_layout_cmd_return ( void  )

◆ geo_layout_cmd_update_node_flags()

void geo_layout_cmd_update_node_flags ( void  )

◆ process_geo_layout()

struct GraphNode* process_geo_layout ( struct AllocOnlyPool a0,
void segptr 
)

Variable Documentation

◆ D_8038BCA0

struct AllocOnlyPool* D_8038BCA0

◆ D_8038BCA4

struct GraphNode* D_8038BCA4

◆ D_8038BCA8

UNUSED s32 D_8038BCA8

◆ D_8038BCF8

struct GraphNode* D_8038BCF8[]

◆ D_8038BD78

s16 D_8038BD78

◆ D_8038BD7C

UNUSED s16 D_8038BD7C

◆ gCurGraphNodeIndex

s16 gCurGraphNodeIndex

◆ gCurGraphNodeList

struct GraphNode* gCurGraphNodeList[]

◆ gCurRootGraphNode

struct GraphNode* gCurRootGraphNode

◆ gGeoLayoutCommand

u8* gGeoLayoutCommand

◆ gGeoLayoutReturnIndex

s16 gGeoLayoutReturnIndex

◆ gGeoLayoutStack

u32 gGeoLayoutStack[]

◆ gGeoLayoutStackIndex

s16 gGeoLayoutStackIndex

◆ gGeoNumViews

u16 gGeoNumViews

◆ gGeoViews

struct GraphNode** gGeoViews

◆ gGraphNodePool

struct AllocOnlyPool* gGraphNodePool

◆ gObjParentGraphNode

struct GraphNode gObjParentGraphNode