home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dream 44
/
Amiga_Dream_44.iso
/
Linux
/
Apps
/
xanim.tgz
/
xanim
/
xanim27064
/
xa_rle.h
< prev
next >
Wrap
C/C++ Source or Header
|
1997-01-26
|
2KB
|
68 lines
/*
* xa_rle.h
*
* Copyright (C) 1993,1994,1995,1996,1997 by Mark Podlipec.
* All rights reserved.
*
* This software may be freely copied, modified and redistributed without
* fee for non-commerical purposes provided that this copyright notice is
* preserved intact on all copies and modified copies.
*
* There is no warranty or other guarantee of fitness of this software.
* It is provided solely "as is". The author(s) disclaim(s) all
* responsibility and liability with respect to this software's usage
* or its effect upon hardware or computer systems.
*
*/
#include "xanim.h"
#define RLE_MAGIC 0xcc52
typedef struct RLE_FRAME_STRUCT
{
xaULONG time;
XA_ACTION *act;
struct RLE_FRAME_STRUCT *next;
} RLE_FRAME;
typedef struct RLE_HDR_STRUCT
{
xaULONG magic;
xaULONG xpos;
xaULONG ypos;
xaULONG xsize;
xaULONG ysize;
xaULONG flags; /* misc flags */
xaULONG chan_num; /* number of channels */
xaULONG pbits; /* pixel bits */
xaULONG cmap_num; /* number of channels with cmaps */
xaULONG cbits; /* Log2 of cmap length */
xaULONG csize; /* size of cmap */
} RLE_HDR;
/* RLE flags definitions */
/* TBD */
#define RLEH_CLEARFIRST 0x1 /* clear framebuffer flag */
#define RLEH_NO_BACKGROUND 0x2 /* if set, no bg color supplied */
#define RLEH_ALPHA 0x4 /* if set, alpha channel (-1) present */
#define RLEH_COMMENT 0x8 /* if set, comments present */
#define RLE_RED 0 /* Red channel traditionally here. */
#define RLE_GREEN 1 /* Green channel traditionally here. */
#define RLE_BLUE 2 /* Blue channel traditionally here. */
#define RLE_ALPHA -1 /* Alpha channel here. */
#define RLE_OPCODE(x) ((x) & 0x3f)
#define RLE_LONGP(x) ((x) & 0x40)
#define RLE_SkipLinesOp 0x01
#define RLE_SetColorOp 0x02
#define RLE_SkipPixelsOp 0x03
#define RLE_ByteDataOp 0x05
#define RLE_RunDataOp 0x06
#define RLE_EOFOp 0x07