#ifndef _CAMMY_PHOTO_H #define _CAMMY_PHOTO_H #include #include #define CAMMY_PHOTO_TILES_WIDTH 16 #define CAMMY_PHOTO_TILES_HEIGHT 14 #define CAMMY_PHOTO_WIDTH \ (CAMMY_TILE_WIDTH * CAMMY_PHOTO_TILES_WIDTH) #define CAMMY_PHOTO_HEIGHT \ (CAMMY_TILE_HEIGHT * CAMMY_PHOTO_TILES_HEIGHT) #define CAMMY_PHOTO_THUMB_TILES_WIDTH 4 #define CAMMY_PHOTO_THUMB_TILES_HEIGHT 4 #define CAMMY_PHOTO_INFO_SIZE 256 #pragma pack(1) #pragma pack(push) typedef struct _cammy_photo { cammy_tile tiles[CAMMY_PHOTO_TILES_HEIGHT] [CAMMY_PHOTO_TILES_WIDTH]; cammy_tile thumb[CAMMY_PHOTO_THUMB_TILES_HEIGHT] [CAMMY_PHOTO_THUMB_TILES_WIDTH]; uint8_t info[CAMMY_PHOTO_INFO_SIZE]; } cammy_photo; #pragma pack(pop) void cammy_photo_export(cammy_photo *src, uint8_t *dest, int stride); void cammy_photo_import(cammy_photo *dest, uint8_t *src, int stride); void cammy_photo_dither(uint8_t *dest, uint8_t *src, int width, int height, int stride); #endif /* _CAMMY_PHOTO_H */