maug
Quick and dirty C mini-augmentation library.
Loading...
Searching...
No Matches
RETROFLAT_STATE Struct Reference

Global singleton containing state for the current platform. More...

#include <retroflt.h>

Collaboration diagram for RETROFLAT_STATE:

Data Fields

size_t sz
 
size_t offset_pal
 
size_t offset_tex_pal
 
void * loop_data
 
MERROR_RETVAL retval
 
uint8_t retroflat_flags
 Global Flags indicating current system status.
 
char config_path [RETROFLAT_PATH_MAX+1]
 
char assets_path [RETROFLAT_ASSETS_PATH_MAX+1]
 
struct RETROFLAT_BITMAP buffer
 Off-screen buffer bitmap.
 
struct RETROFLAT_BITMAPvdp_buffer
 A buffer assembled and passed to the RetroFlat VDP API for it to modify, or NULL if no VDP is loaded.
 
void * vdp_exe
 A handle for the loaded RetroFlat VDP API module.
 
void * vdp_data
 Pointer to data defined by the RetroFlat VDP API for its use.
 
char vdp_args [RETROFLAT_VDP_ARGS_SZ_MAX]
 CLI args passed with -vdp to the RetroFlat VDP API.
 
uint8_t vdp_flags
 Flags set by the RetroFlat VDP API.
 
struct RETROFLAT_VIEWPORT viewport
 
size_t screen_v_w
 The screen width as seen by our program, before scaling.
 
size_t screen_v_h
 The screen height as seen by our program, before scaling.
 
size_t screen_w
 The screen width as seen by the system, after scaling.
 
size_t screen_h
 The screen height as seen by the system, after scaling.
 
size_t screen_colors
 The number of colors the screen is capable of displaying.
 
retroflat_ms_t heartbeat_next
 
uint16_t heartbeat_len
 Number of ms to stay on current value of RETROFLAT_STATE::heartbeat_frame before incrementing. Modify with retroflat_heartbeat_set().
 
uint8_t heartbeat_frame
 Simple iteration loop that can be used to time e.g. perpetual sprite animations. Modify parameters with retroflat_heartbeat_set().
 
uint8_t heartbeat_max
 When RETROFLAT_STATE::heartbeat_frame reaches this value, it will reset to 0.
 
retroflat_proc_resize_t on_resize
 
void * on_resize_data
 
RETROFLAT_COLOR_DEF palette [RETROFLAT_COLORS_SZ]
 Index of available colors, initialized on platform init.
 
retroflat_loop_iter loop_iter
 
retroflat_loop_iter frame_iter
 
struct RETROFLAT_PLATFORM platform
 
struct RETROFLAT_SOUND sound
 

Related Symbols

(Note that these are not member symbols.)

#define retroflat_heartbeat_set(len, max)
 Set parameters for the RETROFLAT_STATE::heartbeat_frame.
 
#define retroflat_heartbeat()
 Get current value of RETROFLAT_STATE::heartbeat_frame.
 
#define retroflat_heartbeat_update()
 Check and update RETROFLAT_STATE::heartbeat_frame. This should be called in the API HAL on every iteration of the main loop (this is done automatically in the generic main loop).
 

Detailed Description

Global singleton containing state for the current platform.

The first few members are size and offset info that the VDP can use to work with STATE structs from different kinds of binaries without crashing.

Field Documentation

◆ screen_v_h

size_t RETROFLAT_STATE::screen_v_h

The screen height as seen by our program, before scaling.

This is the scale of the buffer, which the platform-specific code should then scale to match screen_v_w on blit.

◆ screen_v_w

size_t RETROFLAT_STATE::screen_v_w

The screen width as seen by our program, before scaling.

This is the scale of the buffer, which the platform-specific code should then scale to match screen_v_h on blit.


The documentation for this struct was generated from the following file: