Various cosmetic changes.
[wine] / dlls / ttydrv / palette.c
1 /*
2  * TTY palette driver
3  *
4  * Copyright 1999 Patrik Stridvall
5  */
6
7 #include "config.h"
8
9 #include <stdlib.h>
10
11 #include "color.h"
12 #include "debugtools.h"
13 #include "palette.h"
14 #include "winbase.h"
15 #include "ttydrv.h"
16
17 DEFAULT_DEBUG_CHANNEL(ttydrv);
18
19 /**********************************************************************/
20
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;
26
27 static int palette_size = 256;  /* FIXME */
28
29 extern const PALETTEENTRY COLOR_sysPalTemplate[NB_RESERVED_COLORS]; 
30
31 /***********************************************************************
32  *           TTYDRV_PALETTE_Initialize
33  */
34 BOOL TTYDRV_PALETTE_Initialize(void)
35 {
36   int i;
37
38   TRACE("(void)\n");
39
40   COLOR_sysPal = (PALETTEENTRY *) HeapAlloc(GetProcessHeap(), 0, sizeof(PALETTEENTRY) * palette_size);
41   if(COLOR_sysPal == NULL) {
42     WARN("No memory to create system palette!\n");
43     return FALSE;
44   }
45
46   for(i=0; i < palette_size; i++ ) {
47     const PALETTEENTRY *src;
48     PALETTEENTRY *dst = &COLOR_sysPal[i];
49
50     if(i < NB_RESERVED_COLORS/2) {
51       src = &COLOR_sysPalTemplate[i];
52     } else if(i >= palette_size - NB_RESERVED_COLORS/2) {
53       src = &COLOR_sysPalTemplate[NB_RESERVED_COLORS + i - palette_size];
54     } else {
55       PALETTEENTRY pe = { 0, 0, 0, 0 };
56       src = &pe;
57     }
58
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;
69     }    
70   }
71
72   COLOR_gapStart = NB_RESERVED_COLORS/2;
73   COLOR_gapEnd = NB_RESERVED_COLORS/2;
74
75   return TRUE;
76 }
77
78 /***********************************************************************
79  *           TTYDRV_PALETTE_SetMapping
80  */
81 int TTYDRV_PALETTE_SetMapping(
82   PALETTEOBJ *palPtr, UINT uStart, UINT uNum, BOOL mapOnly)
83 {
84   FIXME("(%p, %u, %u, %d): stub\n", palPtr, uStart, uNum, mapOnly);
85
86   return 0;
87 }
88
89 /***********************************************************************
90  *           TTYDRV_PALETTE_UpdateMapping
91  */
92 int TTYDRV_PALETTE_UpdateMapping(PALETTEOBJ *palPtr)
93 {
94   TRACE("(%p)\n", palPtr);
95
96   return 0;
97 }
98
99 /***********************************************************************
100  *           TTYDRV_PALETTE_IsDark
101  */
102 int TTYDRV_PALETTE_IsDark(int pixel)
103 {
104   FIXME("(%d): stub\n", pixel);
105
106   return 0;
107 }