PE_LoadImage: removed version parameter, set last error correctly.
[wine/gsoc_dplay.git] / graphics / ttydrv / palette.c
bloba8d4339d48778d310cd9ae69601d636b7ebb7a5e
1 /*
2 * TTY palette driver
4 * Copyright 1999 Patrik Stridvall
5 */
7 #include <stdlib.h>
9 #include "color.h"
10 #include "debugtools.h"
11 #include "palette.h"
12 #include "winbase.h"
13 #include "ttydrv.h"
15 DEFAULT_DEBUG_CHANNEL(ttydrv)
17 /**********************************************************************/
19 extern DeviceCaps TTYDRV_DC_DevCaps;
21 extern PALETTEENTRY *COLOR_sysPal;
22 extern int COLOR_gapStart;
23 extern int COLOR_gapEnd;
24 extern int COLOR_gapFilled;
25 extern int COLOR_max;
27 extern const PALETTEENTRY COLOR_sysPalTemplate[NB_RESERVED_COLORS];
29 /***********************************************************************
30 * TTYDRV_PALETTE_Initialize
32 BOOL TTYDRV_PALETTE_Initialize(void)
34 int i;
36 TRACE("(void)\n");
38 TTYDRV_DC_DevCaps.sizePalette = 256;
40 COLOR_sysPal = (PALETTEENTRY *) HeapAlloc(GetProcessHeap(), 0, sizeof(PALETTEENTRY) * TTYDRV_DC_DevCaps.sizePalette);
41 if(COLOR_sysPal == NULL) {
42 WARN("No memory to create system palette!");
43 return FALSE;
46 for(i=0; i < TTYDRV_DC_DevCaps.sizePalette; i++ ) {
47 const PALETTEENTRY *src;
48 PALETTEENTRY *dst = &COLOR_sysPal[i];
50 if(i < NB_RESERVED_COLORS/2) {
51 src = &COLOR_sysPalTemplate[i];
52 } else if(i >= TTYDRV_DC_DevCaps.sizePalette - NB_RESERVED_COLORS/2) {
53 src = &COLOR_sysPalTemplate[NB_RESERVED_COLORS + i - TTYDRV_DC_DevCaps.sizePalette];
54 } else {
55 PALETTEENTRY pe = { 0, 0, 0, 0 };
56 src = &pe;
59 if((src->peRed + src->peGreen + src->peBlue) <= 0xB0) {
60 dst->peRed = 0;
61 dst->peGreen = 0;
62 dst->peBlue = 0;
63 dst->peFlags = PC_SYS_USED;
64 } else {
65 dst->peRed = 255;
66 dst->peGreen= 255;
67 dst->peBlue = 255;
68 dst->peFlags = PC_SYS_USED;
72 COLOR_gapStart = NB_RESERVED_COLORS/2;
73 COLOR_gapEnd = NB_RESERVED_COLORS/2;
75 return TRUE;
78 /***********************************************************************
79 * TTYDRV_PALETTE_Finalize
82 void TTYDRV_PALETTE_Finalize(void)
84 TRACE("(void)\n");
87 /***********************************************************************
88 * TTYDRV_PALETTE_SetMapping
90 int TTYDRV_PALETTE_SetMapping(
91 PALETTEOBJ *palPtr, UINT uStart, UINT uNum, BOOL mapOnly)
93 FIXME("(%p, %u, %u, %d): stub\n", palPtr, uStart, uNum, mapOnly);
95 return 0;
98 /***********************************************************************
99 * TTYDRV_PALETTE_UpdateMapping
101 int TTYDRV_PALETTE_UpdateMapping(PALETTEOBJ *palPtr)
103 TRACE("(%p)\n", palPtr);
105 return 0;
108 /***********************************************************************
109 * TTYDRV_PALETTE_IsDark
111 int TTYDRV_PALETTE_IsDark(int pixel)
113 FIXME("(%d): stub\n", pixel);
115 return 0;