/*! \file palette.h \brief The color palette and various color translation tables */ // $Id: palette.h,v 1.7 2001/11/05 21:10:42 mbickel Exp $ // // $Log: palette.h,v $ // Revision 1.7 2001/11/05 21:10:42 mbickel // Updated palette code // // Revision 1.6 2001/09/20 15:36:09 mbickel // New object displaying mode // // Revision 1.5 2001/01/28 20:42:14 mbickel // Introduced a new string class, ASCString, which should replace all // char* and std::string in the long term // Split loadbi3.cpp into 3 different files (graphicselector, graphicset) // // Revision 1.4 2001/01/28 14:04:15 mbickel // Some restructuring, documentation and cleanup // The resource network functions are now it their own files, the dashboard // as well // Updated the TODO list // // Revision 1.3 1999/12/28 21:03:15 mbickel // Continued Linux port // Added KDevelop project files // // Revision 1.2 1999/11/16 03:42:20 tmwilson // Added CVS keywords to most of the files. // Started porting the code to Linux (ifdef'ing the DOS specific stuff) // Wrote replacement routines for kbhit/getch for Linux // Cleaned up parts of the code that gcc barfed on (char vs unsigned char) // Added autoconf/automake capabilities // Added files used by 'automake --gnu' // // /* This file is part of Advanced Strategic Command; http://www.asc-hq.de Copyright (C) 1994-1999 Martin Bickel and Marc Schellenberger This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef palette_h_included #define palette_h_included #pragma pack(1) typedef char tmixbuf[256][256]; typedef tmixbuf* pmixbuf; typedef char tpixelxlattable[256]; typedef tpixelxlattable* ppixelxlattable; typedef char dacpalette256[256][3]; typedef char dacpalettefst[256][4]; struct txlattables { tpixelxlattable nochange; union { struct { tpixelxlattable dark05; tpixelxlattable dark1; tpixelxlattable dark2; tpixelxlattable dark3; tpixelxlattable light; tpixelxlattable light2; tpixelxlattable light3; tpixelxlattable light4; }a; tpixelxlattable xl[8]; }; }; extern txlattables xlattables; /* extern tpixelxlattable nochange; extern tpixelxlattable dark1; extern tpixelxlattable dark2; extern tpixelxlattable light; */ extern tmixbuf *colormixbuf; extern dacpalette256 pal; extern bool asc_paletteloaded; extern ppixelxlattable xlatpictgraytable; extern tpixelxlattable bi2asc_color_translation_table; #pragma pack() #endif