papermario
Decompilation of Paper Mario
 
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Loading...
Searching...
No Matches
state_title_screen.c File Reference

Data Structures

struct  TitleDataStruct
 
struct  TitleMenuDataStruct
 

Macros

#define TITLE_WIDTH   200
 
#define TITLE_HEIGHT   112
 
#define TITLE_TILE_HEIGHT   2
 
#define TITLE_POS_LEFT   ((SCREEN_WIDTH - TITLE_WIDTH) / 2)
 
#define TITLE_POS_TOP   15
 
#define FILENAME_ERROR   "ERROR\xf7\xf7\xf7"
 
#define TITLE_NUM_TILES   (TITLE_HEIGHT / TITLE_TILE_HEIGHT)
 
#define TITLE_TILE_PIXELS   (TITLE_WIDTH * TITLE_TILE_HEIGHT)
 
#define TITLE_LOGO_YOFFSET   -100
 
#define TITLE_START_TIME   480
 
#define COPYRIGHT_WIDTH   144
 
#define VAR_1   32
 
#define VAR_2   676
 
#define RECT_SIZE   0x40
 
#define YL_BASE   764
 
#define YH_BASE   828
 
#define COPYRIGHT_TEX_CHUNKS   2
 
#define COPYRIGHT_IMG(k, i)   &TitleScreen_ImgList_Copyright[16 * i]
 
#define LTT_LRT   15
 

Enumerations

enum  TitleScreenStates {
  TITLE_STATE_INIT = 0x00000000 , TITLE_STATE_APPEAR = 0x00000001 , TITLE_STATE_HOLD = 0x00000002 , TITLE_STATE_UNUSED = 0x00000003 ,
  TITLE_STATE_BEGIN_DISMISS = 0x00000004 , TITLE_STATE_DISMISS = 0x00000005 , TITLE_STATE_EXIT = 0x00000006
}
 
enum  { NEXT_STATE_DEMO = 10 , NEXT_STATE_INTRO = 9 , NEXT_STATE_FILE_SELECT = 5 , NEXT_STATE_NONE = 0 }
 
enum  TitleMenuVisibilityStates { TITLEMENU_STATE_FADE_IN , TITLEMENU_STATE_FADE_OUT }
 

Functions

void appendGfx_title_screen (void)
 
void draw_title_screen_NOP (void)
 
void title_screen_draw_images (f32, f32)
 
void title_screen_draw_logo (f32)
 
void title_screen_draw_menu (void)
 
void title_screen_draw_copyright (f32)
 
void state_init_title_screen (void)
 
void state_step_title_screen (void)
 
void state_drawUI_title_screen (void)
 

Variables

s16 TitleScreenNextState = NEXT_STATE_NONE
 
SaveMetadata gSaveSlotMetadata [4]
 
u8 gSaveSlotHasData [4] = { TRUE, TRUE, TRUE, TRUE }
 
s32 TitleMenu_Alpha = 0
 
s32 TitleMenu_Visibility = TITLEMENU_STATE_FADE_IN
 
s32 TitleMenu_BlinkCounter = 0
 
s32 PlayIntroNext = FALSE
 
Lights1 D_80077A38 = gdSPDefLights1(255, 255, 255, 0, 0, 0, 0, 0, 0)
 
Gfx TitleSetupGfx []
 
BSS s16 TitleScreen_AppearDelay
 
BSS TitleDataStructTitleScreen_ImgList
 
BSS s32 * TitleScreen_ImgList_Logo
 
BSS u8(* TitleScreen_ImgList_Copyright )[144]
 
BSS s32 * TitleScreen_ImgList_PressStart
 
BSS s32 * TitleScreen_ImgList_CopyrightPalette
 
BSS s16 TitleScreen_TimeLeft
 

Data Structure Documentation

◆ TitleDataStruct

struct TitleDataStruct
Data Fields
s32 copyright
s32 copyrightPalette
s32 logo
s32 pressStart

◆ TitleMenuDataStruct

struct TitleMenuDataStruct
Data Fields
IMG_BIN * languages
IMG_BIN * startGame

Macro Definition Documentation

◆ COPYRIGHT_IMG

#define COPYRIGHT_IMG ( k,
i )   &TitleScreen_ImgList_Copyright[16 * i]

◆ COPYRIGHT_TEX_CHUNKS

#define COPYRIGHT_TEX_CHUNKS   2

◆ COPYRIGHT_WIDTH

#define COPYRIGHT_WIDTH   144

◆ FILENAME_ERROR

#define FILENAME_ERROR   "ERROR\xf7\xf7\xf7"

◆ LTT_LRT

#define LTT_LRT   15

◆ RECT_SIZE

#define RECT_SIZE   0x40

◆ TITLE_HEIGHT

#define TITLE_HEIGHT   112

◆ TITLE_LOGO_YOFFSET

#define TITLE_LOGO_YOFFSET   -100

Referenced by title_screen_draw_logo().

◆ TITLE_NUM_TILES

#define TITLE_NUM_TILES   (TITLE_HEIGHT / TITLE_TILE_HEIGHT)

Referenced by title_screen_draw_logo().

◆ TITLE_POS_LEFT

#define TITLE_POS_LEFT   ((SCREEN_WIDTH - TITLE_WIDTH) / 2)

Referenced by title_screen_draw_logo().

◆ TITLE_POS_TOP

#define TITLE_POS_TOP   15

Referenced by title_screen_draw_logo().

◆ TITLE_START_TIME

#define TITLE_START_TIME   480

Referenced by state_init_title_screen().

◆ TITLE_TILE_HEIGHT

#define TITLE_TILE_HEIGHT   2

Referenced by title_screen_draw_logo().

◆ TITLE_TILE_PIXELS

#define TITLE_TILE_PIXELS   (TITLE_WIDTH * TITLE_TILE_HEIGHT)

Referenced by title_screen_draw_logo().

◆ TITLE_WIDTH

#define TITLE_WIDTH   200

Referenced by title_screen_draw_logo().

◆ VAR_1

#define VAR_1   32

Referenced by title_screen_draw_menu().

◆ VAR_2

#define VAR_2   676

Referenced by title_screen_draw_menu().

◆ YH_BASE

#define YH_BASE   828

◆ YL_BASE

#define YL_BASE   764

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
NEXT_STATE_DEMO 
NEXT_STATE_INTRO 
NEXT_STATE_FILE_SELECT 
NEXT_STATE_NONE 

◆ TitleMenuVisibilityStates

Enumerator
TITLEMENU_STATE_FADE_IN 
TITLEMENU_STATE_FADE_OUT 

◆ TitleScreenStates

Enumerator
TITLE_STATE_INIT 
TITLE_STATE_APPEAR 
TITLE_STATE_HOLD 
TITLE_STATE_UNUSED 
TITLE_STATE_BEGIN_DISMISS 
TITLE_STATE_DISMISS 
TITLE_STATE_EXIT 

Function Documentation

◆ appendGfx_title_screen()

void appendGfx_title_screen ( void )

Referenced by state_init_title_screen().

◆ draw_title_screen_NOP()

void draw_title_screen_NOP ( void )

◆ state_drawUI_title_screen()

void state_drawUI_title_screen ( void )

◆ state_init_title_screen()

void state_init_title_screen ( void )

◆ state_step_title_screen()

void state_step_title_screen ( void )

◆ title_screen_draw_copyright()

void title_screen_draw_copyright ( f32 moveAlpha)

◆ title_screen_draw_images()

void title_screen_draw_images ( f32 logoMoveAlpha,
f32 copyrightMoveAlpha )

Referenced by appendGfx_title_screen().

◆ title_screen_draw_logo()

void title_screen_draw_logo ( f32 moveAlpha)

◆ title_screen_draw_menu()

void title_screen_draw_menu ( void )

Variable Documentation

◆ D_80077A38

Lights1 D_80077A38 = gdSPDefLights1(255, 255, 255, 0, 0, 0, 0, 0, 0)

Referenced by appendGfx_title_screen().

◆ gSaveSlotHasData

◆ gSaveSlotMetadata

SaveMetadata gSaveSlotMetadata[4]
Initial value:
= {
{ .filename = { "ERROR\xf7\xf7\xf7" } },
{ .filename = { "ERROR\xf7\xf7\xf7" } },
{ .filename = { "ERROR\xf7\xf7\xf7" } },
{ .filename = { "ERROR\xf7\xf7\xf7" } },
}

Referenced by filemenu_draw_contents_file_info(), filemenu_draw_contents_file_title(), filemenu_init(), filemenu_main_handle_input(), filemenu_yesno_handle_input(), fio_deserialize_state(), and fio_serialize_state().

◆ PlayIntroNext

s32 PlayIntroNext = FALSE

Referenced by state_step_title_screen().

◆ TitleMenu_Alpha

s32 TitleMenu_Alpha = 0

◆ TitleMenu_BlinkCounter

s32 TitleMenu_BlinkCounter = 0

◆ TitleMenu_Visibility

s32 TitleMenu_Visibility = TITLEMENU_STATE_FADE_IN

◆ TitleScreen_AppearDelay

BSS s16 TitleScreen_AppearDelay

Referenced by state_step_title_screen().

◆ TitleScreen_ImgList

BSS TitleDataStruct* TitleScreen_ImgList

Referenced by state_init_title_screen().

◆ TitleScreen_ImgList_Copyright

BSS u8(* TitleScreen_ImgList_Copyright)[144]

◆ TitleScreen_ImgList_CopyrightPalette

BSS s32* TitleScreen_ImgList_CopyrightPalette

◆ TitleScreen_ImgList_Logo

BSS s32* TitleScreen_ImgList_Logo

◆ TitleScreen_ImgList_PressStart

BSS s32* TitleScreen_ImgList_PressStart

◆ TitleScreen_TimeLeft

BSS s16 TitleScreen_TimeLeft

◆ TitleScreenNextState

s16 TitleScreenNextState = NEXT_STATE_NONE

Referenced by state_step_title_screen().

◆ TitleSetupGfx

Gfx TitleSetupGfx[]
Initial value:
= {
gsDPPipeSync(),
gsDPSetCycleType(G_CYC_1CYCLE),
gsDPSetRenderMode(G_RM_CLD_SURF, G_RM_CLD_SURF2),
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
gsDPSetTextureFilter(G_TF_POINT),
gsSPTexture(-1, -1, 0, G_TX_RENDERTILE, G_ON),
gsDPSetTexturePersp(G_TP_NONE),
gsDPSetColorDither(G_CD_DISABLE),
gsDPSetAlphaDither(G_AD_DISABLE),
gsDPSetTextureLOD(G_TL_TILE),
gsDPSetTextureLUT(G_TT_NONE),
gsDPSetTextureDetail(G_TD_CLAMP),
gsDPSetTextureConvert(G_TC_FILT),
gsDPSetCombineKey(G_CK_NONE),
gsDPSetAlphaCompare(G_AC_NONE),
gsDPNoOp(),
gsDPSetScissor(G_SC_NON_INTERLACE, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT),
gsSPEndDisplayList(),
}
#define SCREEN_WIDTH
Definition macros.h:116
#define SCREEN_HEIGHT
Definition macros.h:117

Referenced by title_screen_draw_copyright(), title_screen_draw_logo(), and title_screen_draw_menu().