/* smalliff.h */ #define MAXWIDTH 376 /* max non-HIRES width */ #define MAXHEIGHT 242 /* max non-interlaced height */ #define MAXCOLORS 32 /* max # colors supported */ #define MakeID(a,b,c,d) ((a)<<24L | (b)<<16L | (c)<<8 | (d)) #define ID_FORM MakeID('F','O','R','M') #define ID_ILBM MakeID('I','L','B','M') #define ID_BMHD MakeID('B','M','H','D') #define ID_CAMG MakeID('C','A','M','G') #define ID_CMAP MakeID('C','M','A','P') #define ID_BODY MakeID('B','O','D','Y') #define cmpByteRun1 1 typedef LONG ID; #define WordAlign(a) (((a)+1)&(~1L)) typedef struct {ID ckID; LONG ckSize;} ChunkHeader; typedef struct { short w,h,x,y; char nPlanes,masking,compression,pad1; short transparentColor; char xAspect, yAspect; short pageWidth,pageHeight; } BitMapHeader; typedef struct { BitMapHeader bmhd; /* Obtained from a BHMD chunk */ unsigned short colortable[MAXCOLORS]; /* Obtained from CMAP chunk */ unsigned char colorcount; /* Number of colors read in from CMAP */ unsigned char *rawsource; /* This is obtained from a BODY chunk */ unsigned long rawsourcesize; /* And the number of bytes read */ unsigned long viewmodes; /* Obtained from CAMG chunk */ } PicInfoStruct;