home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d8xx
/
d835
/
mandelsquare.lha
/
MandelSquare
/
MandelSquare-1.06.lha
/
MandelSquareDefs.h
< prev
next >
Wrap
C/C++ Source or Header
|
1992-10-13
|
3KB
|
101 lines
/*
** MandelSquare - AmigaDOS 2.0/3.0 Mandelbrot set explorer
**
** MandelSquareDefs.h, Local symbol definitions
**
** Copyright © 1991-1992 by Olaf `Olsen' Barthel
** All Rights Reserved
*/
/* A bunch of IFF header IDs. */
#define ID_ANIM MAKE_ID('A','N','I','M')
#define ID_ILBM MAKE_ID('I','L','B','M')
#define ID_BODY MAKE_ID('B','O','D','Y')
#define ID_CAMG MAKE_ID('C','A','M','G')
#define ID_CMAP MAKE_ID('C','M','A','P')
#define ID_BMHD MAKE_ID('B','M','H','D')
#define ID_CRNG MAKE_ID('C','R','N','G')
#define ID_ANHD MAKE_ID('A','N','H','D')
#define ID_DLTA MAKE_ID('D','L','T','A')
#define ID_MAND MAKE_ID('M','A','N','D')
/* A custom chunk `MandelSquare' saves which each
* picture, it contains the coordinates, screen
* width and the number iterations set when the
* picture was saved.
*/
typedef struct
{
double MinReal,
MinImaginary;
double RealWidth,
ImaginaryHeight;
LONG Iterations;
} MandelHeader;
typedef struct
{
UWORD w,h; /* raster width & height in pixels */
WORD x,y; /* position for this image */
UBYTE nPlanes; /* # source bitplanes */
UBYTE masking; /* masking technique */
UBYTE compression; /* compression algoithm */
UBYTE pad1; /* UNUSED. For consistency, put 0 here.*/
UWORD transparentColor; /* transparent "color number" */
UBYTE xAspect,yAspect; /* aspect ratio, a rational number x/y */
WORD pageWidth,pageHeight; /* source "page" size in pixels */
} BitMapHeader;
typedef struct
{
UBYTE operation; /* =5 for RIFF style */
UBYTE mask;
UWORD w,h;
WORD x,y;
ULONG abstime; /* for timing w.r.t. start of anim file in jiffies (notused)*/
ULONG reltime; /* for timing w.r.t. last frame in jiffies */
UBYTE interleave; /* =0 for XORing to two frames back, =1 for last frame
(not used yet) */
UBYTE pad0;
ULONG bits;
UBYTE pad[16];
} AnimationHeader;
typedef struct
{
UBYTE red,
green,
blue;
} ColorRegister;
typedef struct
{
WORD pad1; /* reserved for future use; store 0 here */
WORD rate; /* 60/sec=16384, 30/sec=8192, 1/sec=16384/60=273 */
WORD flags; /* bit0 set = active, bit 1 set = reverse */
UBYTE low, /* lower and upper color registers selected */
high;
} CRange;
/* Colour cycling range flags. */
#define RNG_ACTIVE (1 << 0)
#define RNG_REVERSE (1 << 1)
/* Global library pointers. */
extern struct ExecBase *SysBase;
extern struct Library *IFFParseBase;
/* Fixes for SAS/C 6.0. */
#ifdef WBenchMsg
#undef WBenchMsg
#endif /* WBenchMsg */
#define WBenchMsg _WBenchMsg