Advanced Strategic Command
palette.h
Go to the documentation of this file.
1 
5 // $Id: palette.h,v 1.10 2007-07-08 15:25:21 mbickel Exp $
6 //
7 // $Log: not supported by cvs2svn $
8 // Revision 1.9 2007/04/13 16:15:54 mbickel
9 // Merged ASC2 branch
10 //
11 // Revision 1.7.2.1 2004/10/11 18:14:04 mbickel
12 // Converted units to use new graphic system
13 // Wrote new blitter
14 //
15 // Revision 1.7 2001/11/05 21:10:42 mbickel
16 // Updated palette code
17 //
18 // Revision 1.6 2001/09/20 15:36:09 mbickel
19 // New object displaying mode
20 //
21 // Revision 1.5 2001/01/28 20:42:14 mbickel
22 // Introduced a new string class, ASCString, which should replace all
23 // char* and std::string in the long term
24 // Split loadbi3.cpp into 3 different files (graphicselector, graphicset)
25 //
26 // Revision 1.4 2001/01/28 14:04:15 mbickel
27 // Some restructuring, documentation and cleanup
28 // The resource network functions are now it their own files, the dashboard
29 // as well
30 // Updated the TODO list
31 //
32 // Revision 1.3 1999/12/28 21:03:15 mbickel
33 // Continued Linux port
34 // Added KDevelop project files
35 //
36 // Revision 1.2 1999/11/16 03:42:20 tmwilson
37 // Added CVS keywords to most of the files.
38 // Started porting the code to Linux (ifdef'ing the DOS specific stuff)
39 // Wrote replacement routines for kbhit/getch for Linux
40 // Cleaned up parts of the code that gcc barfed on (char vs unsigned char)
41 // Added autoconf/automake capabilities
42 // Added files used by 'automake --gnu'
43 //
44 //
45 /*
46  This file is part of Advanced Strategic Command; http://www.asc-hq.de
47  Copyright (C) 1994-2010 Martin Bickel and Marc Schellenberger
48 
49  This program is free software; you can redistribute it and/or modify
50  it under the terms of the GNU General Public License as published by
51  the Free Software Foundation; either version 2 of the License, or
52  (at your option) any later version.
53 
54  This program is distributed in the hope that it will be useful,
55  but WITHOUT ANY WARRANTY; without even the implied warranty of
56  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
57  GNU General Public License for more details.
58 
59  You should have received a copy of the GNU General Public License
60  along with this program; see the file COPYING. If not, write to the
61  Free Software Foundation, Inc., 59 Temple Place, Suite 330,
62  Boston, MA 02111-1307 USA
63 */
64 
65 #ifndef palette_h_included
66  #define palette_h_included
67 
68 #include <SDL_stdinc.h>
69 
70 #pragma pack(1)
71 
72 typedef Uint8 tmixbuf[256][256];
73 typedef tmixbuf* pmixbuf;
74 typedef Uint8 tpixelxlattable[256];
76 typedef Uint8 dacpalette256[256][3];
77 typedef Uint8 dacpalettefst[256][4];
78 
79 
80  struct txlattables {
82  union {
83  struct {
92  }a;
94  };
95  };
96 
97  extern txlattables xlattables;
98 
99 /*
100 extern tpixelxlattable nochange;
101 extern tpixelxlattable dark1;
102 extern tpixelxlattable dark2;
103 extern tpixelxlattable light;
104 */
105 
106 // tables storing the color that results when two palette colors are mixed
107 extern tmixbuf *colormixbuf;
108 extern Uint8* colormixbufchar;
109 
110 
111 extern dacpalette256 pal;
112 
113 extern bool asc_paletteloaded;
115 // extern tpixelxlattable bi2asc_color_translation_table;
116 
117 #pragma pack()
118 
119 #endif
tpixelxlattable light
Definition: palette.h:88
Uint8 * colormixbufchar
Definition: palette.cpp:39
tpixelxlattable dark1
Definition: palette.h:85
txlattables xlattables
Definition: palette.cpp:37
Uint8 tpixelxlattable[256]
Definition: palette.h:74
tmixbuf * pmixbuf
Definition: palette.h:73
tpixelxlattable light3
Definition: palette.h:90
tpixelxlattable xl[8]
Definition: palette.h:93
tpixelxlattable nochange
Definition: palette.h:81
bool asc_paletteloaded
Definition: palette.cpp:42
tmixbuf * colormixbuf
Definition: palette.cpp:38
tpixelxlattable * ppixelxlattable
Definition: palette.h:75
tpixelxlattable light4
Definition: palette.h:91
tpixelxlattable dark05
Definition: palette.h:84
Uint8 tmixbuf[256][256]
Definition: palette.h:72
tpixelxlattable light2
Definition: palette.h:89
Uint8 dacpalettefst[256][4]
Definition: palette.h:77
ppixelxlattable xlatpictgraytable
Definition: palette.cpp:35
Uint8 dacpalette256[256][3]
Definition: palette.h:76
tpixelxlattable dark2
Definition: palette.h:86
dacpalette256 pal
Definition: palette.cpp:33
struct txlattables::@19::@21 a
tpixelxlattable dark3
Definition: palette.h:87