enable -nofade
[btb/d2x.git] / include / pcx.h
1 /* $Id: pcx.h,v 1.3 2002-08-26 06:41:53 btb Exp $ */
2 /*
3 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
4 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
5 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
6 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
7 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
8 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
9 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
10 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
11 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
12 COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
13 */
14 /*
15  *
16  * Routines to read/write pcx images.
17  *
18  * Old Log:
19  * Revision 1.4  1995/01/21  17:07:34  john
20  * Added out of memory error.
21  *
22  * Revision 1.3  1994/11/29  02:53:10  john
23  * Added error messages; made call be more similiar to iff.
24  *
25  * Revision 1.2  1994/11/28  20:03:48  john
26  * Added PCX functions.
27  *
28  * Revision 1.1  1994/11/28  19:57:45  john
29  * Initial revision
30  *
31  *
32  */
33
34
35 #ifndef _PCX_H
36 #define _PCX_H
37
38 #define PCX_ERROR_NONE          0
39 #define PCX_ERROR_OPENING       1
40 #define PCX_ERROR_NO_HEADER     2
41 #define PCX_ERROR_WRONG_VERSION 3
42 #define PCX_ERROR_READING       4
43 #define PCX_ERROR_NO_PALETTE    5
44 #define PCX_ERROR_WRITING       6
45 #define PCX_ERROR_MEMORY        7
46
47 // Reads filename into bitmap bmp, and fills in palette.  If bmp->bm_data==NULL,
48 // then bmp->bm_data is allocated and the w,h are filled.
49 // If palette==NULL the palette isn't read in.  Returns error code.
50
51 extern int pcx_get_dimensions( char *filename, int *width, int *height);
52
53 extern int pcx_read_bitmap( char * filename, grs_bitmap * bmp, int bitmap_type, ubyte * palette );
54
55 // Writes the bitmap bmp to filename, using palette. Returns error code.
56
57 extern int pcx_write_bitmap( char * filename, grs_bitmap * bmp, ubyte * palette );
58
59 extern char *pcx_errormsg(int error_number);
60
61 #ifdef MACINTOSH
62 extern int pcx_read_bitmap_palette( char *filename, ubyte *palette);
63 #endif
64
65 int pcx_read_fullscr(char * filename, ubyte * palette);
66
67 #endif