Mirai's Miscellaneous Misadventures

M2 / game.h

#ifndef MIRAI_GAME
#define MIRAI_GAME

// types
struct mirai_game;
struct mirai_keys { unsigned char left:1, right:1; };
struct mirai_image { int width, height; unsigned short int *colors; };
struct mirai_engine
{
	void *data;
	void (*stamp)(void *data, int x, int y, struct mirai_image *image);
};

// constants
extern int mirai_game_size;
extern int mirai_width;
extern int mirai_height;

// functions
void mirai_start(struct mirai_game *game, struct mirai_engine *engine);
void mirai_step(struct mirai_game *game, struct mirai_keys keys);

#endif