46 lines
1.6 KiB
C
46 lines
1.6 KiB
C
|
|
#define FLITYPE 0xAF11
|
|
#define FLCTYPE 0xAF12
|
|
|
|
#define COLOR_256 4
|
|
#define DELTA_FLC 7
|
|
#define COLOR_64 11
|
|
#define DELTA_FLI 12
|
|
#define BLACK 13
|
|
#define BYTE_RUN 15
|
|
#define LITERAL 16
|
|
#define PSTAMP 18
|
|
|
|
/* Structure of flic file header. Fields with + before the comment are FLC only. */
|
|
struct FLI_HEADER {
|
|
long size; /* size of entire file */
|
|
unsigned short int type; /* 0xAF12 = FLC, 0xAF11 = FLI */
|
|
short int frames; /* number of frames in flic */
|
|
short int width; /* screen width in pixels */
|
|
short int height; /* sceen height in pixels */
|
|
short int depth; /* bits per pixel (always 8) */
|
|
unsigned short int flags; /* set to 0x0003 */
|
|
long speed; /* time delay between frames, FLI: 1/70thsec, FLC: msec */
|
|
short int reserved0; /* set to 0 */
|
|
long created; /*+ MS-DOS formatted date and time of creation */
|
|
long creator; /*+ Animator Pro serial number */
|
|
long updated; /*+ date of last update */
|
|
long updater; /*+ Serial number of updating program */
|
|
short int aspectx; /*+ ratio of screen used to create flic */
|
|
short int aspecty; /*+ */
|
|
char reserved1[38]; /*+ 38 bytes set to 0 */
|
|
long oframe1; /*+ file offset of first frame */
|
|
long oframe2; /*+ file offset of second frame */
|
|
char reserved2[40]; /* 40 bytes set to 0 */
|
|
};
|
|
|
|
#define FLI_HEADERLEN ( sizeof( struct FLI_HEADER ) )
|
|
|
|
struct FLI_CHUNK_HEADER {
|
|
long size; /* size of chunk */
|
|
short unsigned int type; /* chunk type */
|
|
short unsigned int chunks; /* number of subchunks */
|
|
char reserved[8]; /* set to 0 */
|
|
};
|
|
|
|
#define FLI_CHUNK_HEADERLEN ( sizeof( struct FLI_CHUNK_HEADER ) ) |