1 /* $Id: pcx.h,v 1.3 2002-08-26 06:41:53 btb Exp $ */
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.
16 * Routines to read/write pcx images.
19 * Revision 1.4 1995/01/21 17:07:34 john
20 * Added out of memory error.
22 * Revision 1.3 1994/11/29 02:53:10 john
23 * Added error messages; made call be more similiar to iff.
25 * Revision 1.2 1994/11/28 20:03:48 john
26 * Added PCX functions.
28 * Revision 1.1 1994/11/28 19:57:45 john
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
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.
51 extern int pcx_get_dimensions( char *filename, int *width, int *height);
53 extern int pcx_read_bitmap( char * filename, grs_bitmap * bmp, int bitmap_type, ubyte * palette );
55 // Writes the bitmap bmp to filename, using palette. Returns error code.
57 extern int pcx_write_bitmap( char * filename, grs_bitmap * bmp, ubyte * palette );
59 extern char *pcx_errormsg(int error_number);
62 extern int pcx_read_bitmap_palette( char *filename, ubyte *palette);
65 int pcx_read_fullscr(char * filename, ubyte * palette);