Loading...
Searching...
No Matches
hud.c File Reference
#include "hud.h"
#include "render.h"

Macros

#define BG3_ATTR   0x3800 /* palette 6 + priority high (isolated from border) */
 
#define FIELD_LEFT   0
 
#define FIELD_WIDTH   14
 
#define HUD_ATTR   0x0400 /* palette 1: white text */
 
#define HUD_ATTR_GREEN   0x0C00 /* palette 3: green text */
 
#define HUD_ATTR_ORANGE   0x1400 /* palette 5: orange text */
 
#define HUD_ATTR_PURPLE   0x1000 /* palette 4: purple text */
 
#define HUD_ATTR_RED   0x0800 /* palette 2: magenta text */
 
#define HUD_COL   16
 
#define HUD_RIGHT   (HUD_COL + 4) /* col 20: right edge of 5-char labels */
 
#define POS_LEVEL_L   (7 * 32 + HUD_COL) /* LEVEL label */
 
#define POS_LEVEL_V   (8 * 32 + HUD_RIGHT - 3 + 1) /* 3 digits right-aligned */
 
#define POS_LINES_L   (11 * 32 + HUD_COL) /* LINES label */
 
#define POS_LINES_V   (12 * 32 + HUD_RIGHT - 4 + 1) /* 4 digits right-aligned */
 
#define POS_NEXT_L   (15 * 32 + HUD_COL) /* NEXT label */
 
#define POS_SCORE_L   (3 * 32 + HUD_COL) /* SCORE label */
 
#define POS_SCORE_V   (4 * 32 + HUD_RIGHT - 6 + 1) /* 6 digits right-aligned */
 

Functions

void hudClearMessage (void)
 
void hudInit (void)
 
void hudShowMessage (const char *str)
 
void hudUpdateLevel (u16 level)
 
void hudUpdateLines (u16 lines)
 
void hudUpdateScore (u16 score)
 
static void writenum_bg2 (u16 num, u8 len, u16 pos)
 
static void writestring_bg2_attr (const char *st, u16 pos, u16 attr)
 

Variables

u16 bg3_msgrow []
 
const char str_level []
 
const char str_lines []
 
const char str_next []
 
const char str_score []
 
u16 tilemap_bg2 []
 

Macro Definition Documentation

◆ BG3_ATTR

#define BG3_ATTR   0x3800 /* palette 6 + priority high (isolated from border) */

◆ FIELD_LEFT

#define FIELD_LEFT   0

◆ FIELD_WIDTH

#define FIELD_WIDTH   14

◆ HUD_ATTR

#define HUD_ATTR   0x0400 /* palette 1: white text */

◆ HUD_ATTR_GREEN

#define HUD_ATTR_GREEN   0x0C00 /* palette 3: green text */

◆ HUD_ATTR_ORANGE

#define HUD_ATTR_ORANGE   0x1400 /* palette 5: orange text */

◆ HUD_ATTR_PURPLE

#define HUD_ATTR_PURPLE   0x1000 /* palette 4: purple text */

◆ HUD_ATTR_RED

#define HUD_ATTR_RED   0x0800 /* palette 2: magenta text */

◆ HUD_COL

#define HUD_COL   16

◆ HUD_RIGHT

#define HUD_RIGHT   (HUD_COL + 4) /* col 20: right edge of 5-char labels */

◆ POS_LEVEL_L

#define POS_LEVEL_L   (7 * 32 + HUD_COL) /* LEVEL label */

◆ POS_LEVEL_V

#define POS_LEVEL_V   (8 * 32 + HUD_RIGHT - 3 + 1) /* 3 digits right-aligned */

◆ POS_LINES_L

#define POS_LINES_L   (11 * 32 + HUD_COL) /* LINES label */

◆ POS_LINES_V

#define POS_LINES_V   (12 * 32 + HUD_RIGHT - 4 + 1) /* 4 digits right-aligned */

◆ POS_NEXT_L

#define POS_NEXT_L   (15 * 32 + HUD_COL) /* NEXT label */

◆ POS_SCORE_L

#define POS_SCORE_L   (3 * 32 + HUD_COL) /* SCORE label */

◆ POS_SCORE_V

#define POS_SCORE_V   (4 * 32 + HUD_RIGHT - 6 + 1) /* 6 digits right-aligned */

Function Documentation

◆ hudClearMessage()

void hudClearMessage ( void  )

◆ hudInit()

void hudInit ( void  )

◆ hudShowMessage()

void hudShowMessage ( const char *  str)

◆ hudUpdateLevel()

void hudUpdateLevel ( u16  level)

◆ hudUpdateLines()

void hudUpdateLines ( u16  lines)

◆ hudUpdateScore()

void hudUpdateScore ( u16  score)

◆ writenum_bg2()

static void writenum_bg2 ( u16  num,
u8  len,
u16  pos 
)
static

◆ writestring_bg2_attr()

static void writestring_bg2_attr ( const char *  st,
u16  pos,
u16  attr 
)
static

Variable Documentation

◆ bg3_msgrow

u16 bg3_msgrow[]
extern

◆ str_level

const char str_level[]
extern

◆ str_lines

const char str_lines[]
extern

◆ str_next

const char str_next[]
extern

◆ str_score

const char str_score[]
extern

◆ tilemap_bg2

u16 tilemap_bg2[]
extern