Mario Kart 64
Loading...
Searching...
No Matches
skybox_and_splitscreen.c File Reference
#include <ultra64.h>
#include <macros.h>
#include <PR/gbi.h>
#include <types.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 "render_player.h"
#include "code_80057C60.h"
#include "code_80091750.h"
#include "actors.h"
#include "render_courses.h"
#include "math_util.h"
#include "main.h"
#include "menus.h"
Include dependency graph for skybox_and_splitscreen.c:

Data Structures

struct  Skybox
 

Functions

void func_802A3730 (struct UnkStruct_800DC5EC *arg0)
 
UNUSED void func_802A38AC (void)
 
void func_802A38B4 (void)
 
void func_802A39E0 (struct UnkStruct_800DC5EC *arg0)
 
void init_z_buffer (void)
 
void init_rdp (void)
 
UNUSED void func_802A40A4 (void)
 
UNUSED void func_802A40AC (void)
 
UNUSED void func_802A40B4 (void)
 
UNUSED void func_802A40BC (void)
 
UNUSED void func_802A40C4 (void)
 
UNUSED void func_802A40CC (void)
 
UNUSED void func_802A40D4 (void)
 
UNUSED void func_802A40DC (void)
 
UNUSED s32 set_viewport2 (void)
 
void set_viewport (void)
 
void select_framebuffer (void)
 
void func_802A4300 (void)
 
void func_802A450C (Vtx *skybox)
 
void func_802A487C (Vtx *arg0, UNUSED struct UnkStruct_800DC5EC *arg1, UNUSED s32 arg2, UNUSED s32 arg3, UNUSED f32 *arg4)
 
void func_802A4A0C (Vtx *vtx, struct UnkStruct_800DC5EC *arg1, UNUSED s32 arg2, UNUSED s32 arg3, UNUSED f32 *arg4)
 
void func_802A4D18 (void)
 
void func_802A4EF4 (void)
 
void func_802A5004 (void)
 
void func_802A50EC (void)
 
void func_802A51D4 (void)
 
void func_802A52BC (void)
 
void func_802A53A4 (void)
 
void func_802A54A8 (void)
 
void func_802A5590 (void)
 
void func_802A5678 (void)
 
void func_802A5760 (void)
 
void func_802A59A4 (void)
 
void func_802A5CB4 (void)
 
void func_802A5FAC (void)
 
void func_802A62A4 (void)
 
void func_802A65B8 (void)
 
void func_802A68CC (void)
 
void func_802A6BB0 (void)
 
void func_802A6E94 (void)
 
void func_802A7178 (void)
 
void func_802A74BC (void)
 
void copy_framebuffer (s32 arg0, s32 arg1, s32 width, s32 height, u16 *source, u16 *target)
 
void func_802A7728 (void)
 
void func_802A7940 (void)
 

Variables

Vp D_802B8880 []
 
Vtx D_802B8890 []
 
Vtx D_802B8910 []
 
Vtx D_802B8990 []
 
Vtx D_802B8A10 []
 
s32 D_802B8A90 []
 
struct Skybox sSkyColors [21]
 
struct Skybox D_802B8BCC [21]
 

Function Documentation

◆ copy_framebuffer()

void copy_framebuffer ( s32 arg0,
s32 arg1,
s32 width,
s32 height,
u16 * source,
u16 * target )
Here is the caller graph for this function:

◆ func_802A3730()

void func_802A3730 ( struct UnkStruct_800DC5EC * arg0)
Here is the caller graph for this function:

◆ func_802A38AC()

UNUSED void func_802A38AC ( void )

◆ func_802A38B4()

void func_802A38B4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A39E0()

void func_802A39E0 ( struct UnkStruct_800DC5EC * arg0)
Here is the caller graph for this function:

◆ func_802A40A4()

UNUSED void func_802A40A4 ( void )

◆ func_802A40AC()

UNUSED void func_802A40AC ( void )

◆ func_802A40B4()

UNUSED void func_802A40B4 ( void )

◆ func_802A40BC()

UNUSED void func_802A40BC ( void )

◆ func_802A40C4()

UNUSED void func_802A40C4 ( void )

◆ func_802A40CC()

UNUSED void func_802A40CC ( void )

◆ func_802A40D4()

UNUSED void func_802A40D4 ( void )

◆ func_802A40DC()

UNUSED void func_802A40DC ( void )

◆ func_802A4300()

void func_802A4300 ( void )
Here is the caller graph for this function:

◆ func_802A450C()

void func_802A450C ( Vtx * skybox)
Here is the caller graph for this function:

◆ func_802A487C()

void func_802A487C ( Vtx * arg0,
UNUSED struct UnkStruct_800DC5EC * arg1,
UNUSED s32 arg2,
UNUSED s32 arg3,
UNUSED f32 * arg4 )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A4A0C()

void func_802A4A0C ( Vtx * vtx,
struct UnkStruct_800DC5EC * arg1,
UNUSED s32 arg2,
UNUSED s32 arg3,
UNUSED f32 * arg4 )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A4D18()

void func_802A4D18 ( void )
Here is the caller graph for this function:

◆ func_802A4EF4()

void func_802A4EF4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A5004()

void func_802A5004 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A50EC()

void func_802A50EC ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A51D4()

void func_802A51D4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A52BC()

void func_802A52BC ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A53A4()

void func_802A53A4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A54A8()

void func_802A54A8 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A5590()

void func_802A5590 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A5678()

void func_802A5678 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A5760()

void func_802A5760 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A59A4()

void func_802A59A4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A5CB4()

void func_802A5CB4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A5FAC()

void func_802A5FAC ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A62A4()

void func_802A62A4 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A65B8()

void func_802A65B8 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A68CC()

void func_802A68CC ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A6BB0()

void func_802A6BB0 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A6E94()

void func_802A6E94 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A7178()

void func_802A7178 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A74BC()

void func_802A74BC ( void )
Here is the caller graph for this function:

◆ func_802A7728()

void func_802A7728 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ func_802A7940()

void func_802A7940 ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ init_rdp()

void init_rdp ( void )

Sets the initial RDP (Reality Display Processor) rendering settings.

Here is the caller graph for this function:

◆ init_z_buffer()

void init_z_buffer ( void )

Initialize the z-buffer for the current frame.

Here is the caller graph for this function:

◆ select_framebuffer()

void select_framebuffer ( void )

Tells the RDP which of the three framebuffers it shall draw to.

Here is the caller graph for this function:

◆ set_viewport()

void set_viewport ( void )
Here is the caller graph for this function:

◆ set_viewport2()

UNUSED s32 set_viewport2 ( void )

Variable Documentation

◆ D_802B8880

Vp D_802B8880[]
Initial value:
= {
{{{640, 480, 511, 0}, {640, 480, 511, 0}}},
}

◆ D_802B8890

Vtx D_802B8890[]
Initial value:
= {
{{{ SCREEN_WIDTH, SCREEN_HEIGHT, -1 }, 0, { 0, 0 }, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1 }, 0, { 0, 0 }, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, 120, -1 }, 0, { 0, 0 }, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, SCREEN_HEIGHT, -1 }, 0, { 0, 0 }, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1 }, 0, { 0, 0 }, { 0x00, 0xDC, 0x00, 0xFF }}},
{{{ SCREEN_WIDTH, 0, -1 }, 0, { 0, 0 }, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 0, -1 }, 0, { 0, 0 }, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 120, -1 }, 0, { 0, 0 }, { 0x00, 0xDC, 0x00, 0xFF }}},
}
#define SCREEN_WIDTH
Definition config.h:10
#define SCREEN_HEIGHT
Definition config.h:11

◆ D_802B8910

Vtx D_802B8910[]
Initial value:
= {
{{{ SCREEN_WIDTH, SCREEN_HEIGHT, -1 }, 0, { 0, 0 }, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1 }, 0, { 0, 0 }, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, 120, -1 }, 0, { 0, 0 }, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, SCREEN_HEIGHT, -1 }, 0, { 0, 0 }, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1 }, 0, { 0, 0 }, { 0x00, 0xDC, 0x00, 0xFF }}},
{{{ SCREEN_WIDTH, 0, -1 }, 0, { 0, 0 }, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 0, -1 }, 0, { 0, 0 }, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 120, -1 }, 0, { 0, 0 }, { 0x00, 0xDC, 0x00, 0xFF }}},
}

◆ D_802B8990

Vtx D_802B8990[]
Initial value:
= {
{{{ SCREEN_WIDTH, SCREEN_HEIGHT, -1}, 0, { 0, 0 }, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1}, 0, { 0, 0 }, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, 120, -1}, 0, { 0, 0 }, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, SCREEN_HEIGHT, -1}, 0, { 0, 0 }, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1}, 0, { 0, 0 }, { 0x00, 0xDC, 0x00, 0xFF }}},
{{{ SCREEN_WIDTH, 0, -1}, 0, { 0, 0 }, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 0, -1}, 0, { 0, 0 }, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 120, -1}, 0, { 0, 0 }, { 0x00, 0xDC, 0x00, 0xFF }}},
}

◆ D_802B8A10

Vtx D_802B8A10[]
Initial value:
= {
{{{ SCREEN_WIDTH, SCREEN_HEIGHT, -1}, 0, { 0, 0}, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1}, 0, { 0, 0}, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, 120, -1}, 0, { 0, 0}, { 0x1E, 0x1E, 0xFF, 0xFF }}},
{{{ 0, SCREEN_HEIGHT, -1}, 0, { 0, 0}, { 0xC8, 0xC8, 0xFF, 0xFF }}},
{{{ SCREEN_WIDTH, 120, -1}, 0, { 0, 0}, { 0x00, 0xDC, 0x00, 0xFF }}},
{{{ SCREEN_WIDTH, 0, -1}, 0, { 0, 0}, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 0, -1}, 0, { 0, 0}, { 0x78, 0xFF, 0x78, 0xFF }}},
{{{ 0, 120, -1}, 0, { 0, 0}, { 0x00, 0xDC, 0x00, 0xFF }}},
}

◆ D_802B8A90

s32 D_802B8A90[]
Initial value:
= {
0xe7000000, 0x00000000, 0xb900031d, 0x0f0a4000,
0xba001402, 0x00300000, 0xf7000000, 0x00000000,
0xf64fc3bc, 0x00000000, 0xe7000000, 0x00000000,
0xba001402, 0x00000000, 0xb8000000, 0x00000000,
}

◆ D_802B8BCC

struct Skybox D_802B8BCC[21]
Initial value:
= {
{0, 0, 0, 0, 0, 0},
{255, 255, 255, 255, 255, 255},
{0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0},
{95, 40, 15, 0, 0, 0},
{0, 99, 164, 0, 0, 0},
{48, 1688, 54136, 0, 0, 0},
{255, 224, 240, 0, 0, 0},
{216, 7144, 32248, 0, 0, 0},
{255, 184, 99, 0, 0, 0},
{209, 65, 23, 0, 0, 0},
{255, 192, 0, 0, 0, 0},
{216, 7144, 32248, 128, 4280, 6136},
{0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0},
{216, 7144, 32248, 0, 0, 0},
{0, 0, 0, 0, 0, 0},
{255, 224, 240, 0, 0, 0},
{22, 145, 22, 0, 0, 0},
{0, 0, 0, 0, 0, 0},
{255, 224, 240, 0, 0, 0},
}

◆ sSkyColors

struct Skybox sSkyColors[21]
Initial value:
= {
{128, 4280, 6136, 216, 7144, 32248},
{255, 255, 255, 255, 255, 255},
{48, 1544, 49528, 0, 0, 0},
{0, 0, 0, 0, 0, 0},
{113, 70, 255, 255, 184, 99},
{28, 11, 90, 0, 99, 164},
{48, 1688, 54136, 216, 7144, 32248},
{238, 144, 255, 255, 224, 240},
{128, 4280, 6136, 216, 7144, 32248},
{0, 18, 255, 197, 211, 255},
{0, 2, 94, 209, 65, 23},
{195, 231, 255, 255, 0xc0, 0},
{128, 4280, 6136, 216, 7144, 32248},
{0, 0, 0, 0, 0, 0},
{20, 30, 56, 40, 60, 110},
{128, 4280, 6136, 216, 7144, 32248},
{0, 0, 0, 0, 0, 0},
{113, 70, 255, 255, 184, 99},
{255, 174, 0, 255, 229, 124},
{0, 0, 0, 0, 0, 0},
{238, 144, 255, 255, 224, 240},
}