-
Notifications
You must be signed in to change notification settings - Fork 3
/
fliplay.hpp
51 lines (46 loc) · 1.68 KB
/
fliplay.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// Fli2gif
// Copyright (c) 1996, Jeff Lawson
// All rights reserved.
// See LICENSE for distribution information.
/******************************************/
/*** Custom data types and structures ***/
/******************************************/
#ifndef __MYTYPES__
typedef int BOOL;
typedef unsigned char UBYTE;
typedef unsigned short UWORD;
typedef unsigned long ULONG;
#define __MYTYPES__
#endif
#ifndef __PIXELTYPE__
typedef unsigned char PixelType;
#define __PIXELTYPE__
#endif
#ifndef __PALETTEENTRY__
typedef struct {
unsigned char red, green, blue;
} PaletteEntry;
#define __PALETTEENTRY__
#endif
#ifndef HUGETYPE
#if !defined(_Windows) && (defined(__MSDOS__) || defined(_DOS))
#define HUGETYPE huge
#else
#define HUGETYPE
#endif
#endif
/*************************************/
/*** External data and variables ***/
/*************************************/
extern UWORD flipalettechanged; // true if the palette needs updating
extern UWORD flitotalframes; // number of frames in this FLIC
extern UWORD flicurframe; // current frame (1 based; 0 = haven't started)
extern UWORD fliwidth, fliheight; // dimensions of current FLIC
extern ULONG flispeed; // playback speed in 1/1000'ths of a sec.
extern PixelType HUGETYPE *fliscreenptr; // pointer to screen buffer
extern PaletteEntry *flipaletteptr; // pointer to 256 color palette
/**************************************/
/*** External function prototypes ***/
/**************************************/
extern int fli_init(PixelType HUGETYPE *scr_buffer, PaletteEntry *palette_ptr, FILE *handle);
extern int fli_nextframe(void);