]> git.pld-linux.org Git - packages/fbterm.git/blob - fbterm-256_colors.patch
- updated for 1.3
[packages/fbterm.git] / fbterm-256_colors.patch
1 diff -Nru fbterm-1.2/src/fbshell.cpp fbterm-1.2.new/src/fbshell.cpp
2 --- fbterm-1.2/src/fbshell.cpp  2008-10-12 11:50:02.000000000 +0200
3 +++ fbterm-1.2.new/src/fbshell.cpp      2008-12-16 15:05:03.000000000 +0100
4 @@ -32,22 +32,270 @@
5  #define screen (Screen::instance())
6  
7  static const Color defaultPalette[NR_COLORS] = {
8 -       { 0,    0,              0 },
9 -       { 0,    0,              0xaa },
10 -       { 0,    0xaa,   0 },
11 -       { 0,    0x55,   0xaa },
12 -       { 0xaa, 0,              0 },
13 -       { 0xaa, 0,              0xaa },
14 -       { 0xaa, 0xaa,   0 },
15 -       { 0xaa, 0xaa,   0xaa },
16 -       { 0x55, 0x55,   0x55 },
17 -       { 0x55, 0x55,   0xff },
18 -       { 0x55, 0xff,   0x55 },
19 -       { 0x55, 0xff,   0xff },
20 -       { 0xff, 0x55,   0x55 },
21 -       { 0xff, 0x55,   0xff },
22 -       { 0xff, 0xff,   0x55 },
23 -       { 0xff, 0xff,   0xff },
24 +       {0x00, 0x00, 0x00}, /* 0 */
25 +       {0xaa, 0x00, 0x00}, /* 1 */
26 +       {0x00, 0xaa, 0x00}, /* 2 */
27 +       {0xaa, 0x55, 0x00}, /* 3 */
28 +       {0x00, 0x00, 0xaa}, /* 4 */
29 +       {0xaa, 0x00, 0xaa}, /* 5 */
30 +       {0x00, 0xaa, 0xaa}, /* 6 */
31 +       {0xaa, 0xaa, 0xaa}, /* 7 */
32 +       {0x55, 0x55, 0x55}, /* 8 */
33 +       {0xff, 0x55, 0x55}, /* 9 */
34 +       {0x55, 0xff, 0x55}, /* 10 */
35 +       {0xff, 0xff, 0x55}, /* 11 */
36 +       {0x55, 0x55, 0xff}, /* 12 */
37 +       {0xff, 0x55, 0xff}, /* 13 */
38 +       {0x55, 0xff, 0xff}, /* 14 */
39 +       {0xff, 0xff, 0xff}, /* 15 */
40 +
41 +       {0x00, 0x00, 0x00}, /* 16 */
42 +       {0x00, 0x00, 0x5f}, /* 17 */
43 +       {0x00, 0x00, 0x87}, /* 18 */
44 +       {0x00, 0x00, 0xaf}, /* 19 */
45 +       {0x00, 0x00, 0xd7}, /* 20 */
46 +       {0x00, 0x00, 0xff}, /* 21 */
47 +       {0x00, 0x5f, 0x00}, /* 22 */
48 +       {0x00, 0x5f, 0x5f}, /* 23 */
49 +       {0x00, 0x5f, 0x87}, /* 24 */
50 +       {0x00, 0x5f, 0xaf}, /* 25 */
51 +       {0x00, 0x5f, 0xd7}, /* 26 */
52 +       {0x00, 0x5f, 0xff}, /* 27 */
53 +       {0x00, 0x87, 0x00}, /* 28 */
54 +       {0x00, 0x87, 0x5f}, /* 29 */
55 +       {0x00, 0x87, 0x87}, /* 30 */
56 +       {0x00, 0x87, 0xaf}, /* 31 */
57 +       {0x00, 0x87, 0xd7}, /* 32 */
58 +       {0x00, 0x87, 0xff}, /* 33 */
59 +       {0x00, 0xaf, 0x00}, /* 34 */
60 +       {0x00, 0xaf, 0x5f}, /* 35 */
61 +       {0x00, 0xaf, 0x87}, /* 36 */
62 +       {0x00, 0xaf, 0xaf}, /* 37 */
63 +       {0x00, 0xaf, 0xd7}, /* 38 */
64 +       {0x00, 0xaf, 0xff}, /* 39 */
65 +       {0x00, 0xd7, 0x00}, /* 40 */
66 +       {0x00, 0xd7, 0x5f}, /* 41 */
67 +       {0x00, 0xd7, 0x87}, /* 42 */
68 +       {0x00, 0xd7, 0xaf}, /* 43 */
69 +       {0x00, 0xd7, 0xd7}, /* 44 */
70 +       {0x00, 0xd7, 0xff}, /* 45 */
71 +       {0x00, 0xff, 0x00}, /* 46 */
72 +       {0x00, 0xff, 0x5f}, /* 47 */
73 +       {0x00, 0xff, 0x87}, /* 48 */
74 +       {0x00, 0xff, 0xaf}, /* 49 */
75 +       {0x00, 0xff, 0xd7}, /* 50 */
76 +       {0x00, 0xff, 0xff}, /* 51 */
77 +
78 +       {0x5f, 0x00, 0x00}, /* 52 */
79 +       {0x5f, 0x00, 0x5f}, /* 53 */
80 +       {0x5f, 0x00, 0x87}, /* 54 */
81 +       {0x5f, 0x00, 0xaf}, /* 55 */
82 +       {0x5f, 0x00, 0xd7}, /* 56 */
83 +       {0x5f, 0x00, 0xff}, /* 57 */
84 +       {0x5f, 0x5f, 0x00}, /* 58 */
85 +       {0x5f, 0x5f, 0x5f}, /* 59 */
86 +       {0x5f, 0x5f, 0x87}, /* 60 */
87 +       {0x5f, 0x5f, 0xaf}, /* 61 */
88 +       {0x5f, 0x5f, 0xd7}, /* 62 */
89 +       {0x5f, 0x5f, 0xff}, /* 63 */
90 +       {0x5f, 0x87, 0x00}, /* 64 */
91 +       {0x5f, 0x87, 0x5f}, /* 65 */
92 +       {0x5f, 0x87, 0x87}, /* 66 */
93 +       {0x5f, 0x87, 0xaf}, /* 67 */
94 +       {0x5f, 0x87, 0xd7}, /* 68 */
95 +       {0x5f, 0x87, 0xff}, /* 69 */
96 +       {0x5f, 0xaf, 0x00}, /* 70 */
97 +       {0x5f, 0xaf, 0x5f}, /* 71 */
98 +       {0x5f, 0xaf, 0x87}, /* 72 */
99 +       {0x5f, 0xaf, 0xaf}, /* 73 */
100 +       {0x5f, 0xaf, 0xd7}, /* 74 */
101 +       {0x5f, 0xaf, 0xff}, /* 75 */
102 +       {0x5f, 0xd7, 0x00}, /* 76 */
103 +       {0x5f, 0xd7, 0x5f}, /* 77 */
104 +       {0x5f, 0xd7, 0x87}, /* 78 */
105 +       {0x5f, 0xd7, 0xaf}, /* 79 */
106 +       {0x5f, 0xd7, 0xd7}, /* 80 */
107 +       {0x5f, 0xd7, 0xff}, /* 81 */
108 +       {0x5f, 0xff, 0x00}, /* 82 */
109 +       {0x5f, 0xff, 0x5f}, /* 83 */
110 +       {0x5f, 0xff, 0x87}, /* 84 */
111 +       {0x5f, 0xff, 0xaf}, /* 85 */
112 +       {0x5f, 0xff, 0xd7}, /* 86 */
113 +       {0x5f, 0xff, 0xff}, /* 87 */
114 +
115 +       {0x87, 0x00, 0x00}, /* 88 */
116 +       {0x87, 0x00, 0x5f}, /* 89 */
117 +       {0x87, 0x00, 0x87}, /* 90 */
118 +       {0x87, 0x00, 0xaf}, /* 91 */
119 +       {0x87, 0x00, 0xd7}, /* 92 */
120 +       {0x87, 0x00, 0xff}, /* 93 */
121 +       {0x87, 0x5f, 0x00}, /* 94 */
122 +       {0x87, 0x5f, 0x5f}, /* 95 */
123 +       {0x87, 0x5f, 0x87}, /* 96 */
124 +       {0x87, 0x5f, 0xaf}, /* 97 */
125 +       {0x87, 0x5f, 0xd7}, /* 98 */
126 +       {0x87, 0x5f, 0xff}, /* 99 */
127 +       {0x87, 0x87, 0x00}, /* 100 */
128 +       {0x87, 0x87, 0x5f}, /* 101 */
129 +       {0x87, 0x87, 0x87}, /* 102 */
130 +       {0x87, 0x87, 0xaf}, /* 103 */
131 +       {0x87, 0x87, 0xd7}, /* 104 */
132 +       {0x87, 0x87, 0xff}, /* 105 */
133 +       {0x87, 0xaf, 0x00}, /* 106 */
134 +       {0x87, 0xaf, 0x5f}, /* 107 */
135 +       {0x87, 0xaf, 0x87}, /* 108 */
136 +       {0x87, 0xaf, 0xaf}, /* 109 */
137 +       {0x87, 0xaf, 0xd7}, /* 110 */
138 +       {0x87, 0xaf, 0xff}, /* 111 */
139 +       {0x87, 0xd7, 0x00}, /* 112 */
140 +       {0x87, 0xd7, 0x5f}, /* 113 */
141 +       {0x87, 0xd7, 0x87}, /* 114 */
142 +       {0x87, 0xd7, 0xaf}, /* 115 */
143 +       {0x87, 0xd7, 0xd7}, /* 116 */
144 +       {0x87, 0xd7, 0xff}, /* 117 */
145 +       {0x87, 0xff, 0x00}, /* 118 */
146 +       {0x87, 0xff, 0x5f}, /* 119 */
147 +       {0x87, 0xff, 0x87}, /* 120 */
148 +       {0x87, 0xff, 0xaf}, /* 121 */
149 +       {0x87, 0xff, 0xd7}, /* 122 */
150 +       {0x87, 0xff, 0xff}, /* 123 */
151 +
152 +       {0xaf, 0x00, 0x00}, /* 124 */
153 +       {0xaf, 0x00, 0x5f}, /* 125 */
154 +       {0xaf, 0x00, 0x87}, /* 126 */
155 +       {0xaf, 0x00, 0xaf}, /* 127 */
156 +       {0xaf, 0x00, 0xd7}, /* 128 */
157 +       {0xaf, 0x00, 0xff}, /* 129 */
158 +       {0xaf, 0x5f, 0x00}, /* 130 */
159 +       {0xaf, 0x5f, 0x5f}, /* 131 */
160 +       {0xaf, 0x5f, 0x87}, /* 132 */
161 +       {0xaf, 0x5f, 0xaf}, /* 133 */
162 +       {0xaf, 0x5f, 0xd7}, /* 134 */
163 +       {0xaf, 0x5f, 0xff}, /* 135 */
164 +       {0xaf, 0x87, 0x00}, /* 136 */
165 +       {0xaf, 0x87, 0x5f}, /* 137 */
166 +       {0xaf, 0x87, 0x87}, /* 138 */
167 +       {0xaf, 0x87, 0xaf}, /* 139 */
168 +       {0xaf, 0x87, 0xd7}, /* 140 */
169 +       {0xaf, 0x87, 0xff}, /* 141 */
170 +       {0xaf, 0xaf, 0x00}, /* 142 */
171 +       {0xaf, 0xaf, 0x5f}, /* 143 */
172 +       {0xaf, 0xaf, 0x87}, /* 144 */
173 +       {0xaf, 0xaf, 0xaf}, /* 145 */
174 +       {0xaf, 0xaf, 0xd7}, /* 146 */
175 +       {0xaf, 0xaf, 0xff}, /* 147 */
176 +       {0xaf, 0xd7, 0x00}, /* 148 */
177 +       {0xaf, 0xd7, 0x5f}, /* 149 */
178 +       {0xaf, 0xd7, 0x87}, /* 150 */
179 +       {0xaf, 0xd7, 0xaf}, /* 151 */
180 +       {0xaf, 0xd7, 0xd7}, /* 152 */
181 +       {0xaf, 0xd7, 0xff}, /* 153 */
182 +       {0xaf, 0xff, 0x00}, /* 154 */
183 +       {0xaf, 0xff, 0x5f}, /* 155 */
184 +       {0xaf, 0xff, 0x87}, /* 156 */
185 +       {0xaf, 0xff, 0xaf}, /* 157 */
186 +       {0xaf, 0xff, 0xd7}, /* 158 */
187 +       {0xaf, 0xff, 0xff}, /* 159 */
188 +
189 +       {0xd7, 0x00, 0x00}, /* 160 */
190 +       {0xd7, 0x00, 0x5f}, /* 161 */
191 +       {0xd7, 0x00, 0x87}, /* 162 */
192 +       {0xd7, 0x00, 0xaf}, /* 163 */
193 +       {0xd7, 0x00, 0xd7}, /* 164 */
194 +       {0xd7, 0x00, 0xff}, /* 165 */
195 +       {0xd7, 0x5f, 0x00}, /* 166 */
196 +       {0xd7, 0x5f, 0x5f}, /* 167 */
197 +       {0xd7, 0x5f, 0x87}, /* 168 */
198 +       {0xd7, 0x5f, 0xaf}, /* 169 */
199 +       {0xd7, 0x5f, 0xd7}, /* 170 */
200 +       {0xd7, 0x5f, 0xff}, /* 171 */
201 +       {0xd7, 0x87, 0x00}, /* 172 */
202 +       {0xd7, 0x87, 0x5f}, /* 173 */
203 +       {0xd7, 0x87, 0x87}, /* 174 */
204 +       {0xd7, 0x87, 0xaf}, /* 175 */
205 +       {0xd7, 0x87, 0xd7}, /* 176 */
206 +       {0xd7, 0x87, 0xff}, /* 177 */
207 +       {0xd7, 0xaf, 0x00}, /* 178 */
208 +       {0xd7, 0xaf, 0x5f}, /* 179 */
209 +       {0xd7, 0xaf, 0x87}, /* 180 */
210 +       {0xd7, 0xaf, 0xaf}, /* 181 */
211 +       {0xd7, 0xaf, 0xd7}, /* 182 */
212 +       {0xd7, 0xaf, 0xff}, /* 183 */
213 +       {0xd7, 0xd7, 0x00}, /* 184 */
214 +       {0xd7, 0xd7, 0x5f}, /* 185 */
215 +       {0xd7, 0xd7, 0x87}, /* 186 */
216 +       {0xd7, 0xd7, 0xaf}, /* 187 */
217 +       {0xd7, 0xd7, 0xd7}, /* 188 */
218 +       {0xd7, 0xd7, 0xff}, /* 189 */
219 +       {0xd7, 0xff, 0x00}, /* 190 */
220 +       {0xd7, 0xff, 0x5f}, /* 191 */
221 +       {0xd7, 0xff, 0x87}, /* 192 */
222 +       {0xd7, 0xff, 0xaf}, /* 193 */
223 +       {0xd7, 0xff, 0xd7}, /* 194 */
224 +       {0xd7, 0xff, 0xff}, /* 195 */
225 +
226 +       {0xff, 0x00, 0x00}, /* 196 */
227 +       {0xff, 0x00, 0x5f}, /* 197 */
228 +       {0xff, 0x00, 0x87}, /* 198 */
229 +       {0xff, 0x00, 0xaf}, /* 199 */
230 +       {0xff, 0x00, 0xd7}, /* 200 */
231 +       {0xff, 0x00, 0xff}, /* 201 */
232 +       {0xff, 0x5f, 0x00}, /* 202 */
233 +       {0xff, 0x5f, 0x5f}, /* 203 */
234 +       {0xff, 0x5f, 0x87}, /* 204 */
235 +       {0xff, 0x5f, 0xaf}, /* 205 */
236 +       {0xff, 0x5f, 0xd7}, /* 206 */
237 +       {0xff, 0x5f, 0xff}, /* 207 */
238 +       {0xff, 0x87, 0x00}, /* 208 */
239 +       {0xff, 0x87, 0x5f}, /* 209 */
240 +       {0xff, 0x87, 0x87}, /* 210 */
241 +       {0xff, 0x87, 0xaf}, /* 211 */
242 +       {0xff, 0x87, 0xd7}, /* 212 */
243 +       {0xff, 0x87, 0xff}, /* 213 */
244 +       {0xff, 0xaf, 0x00}, /* 214 */
245 +       {0xff, 0xaf, 0x5f}, /* 215 */
246 +       {0xff, 0xaf, 0x87}, /* 216 */
247 +       {0xff, 0xaf, 0xaf}, /* 217 */
248 +       {0xff, 0xaf, 0xd7}, /* 218 */
249 +       {0xff, 0xaf, 0xff}, /* 219 */
250 +       {0xff, 0xd7, 0x00}, /* 220 */
251 +       {0xff, 0xd7, 0x5f}, /* 221 */
252 +       {0xff, 0xd7, 0x87}, /* 222 */
253 +       {0xff, 0xd7, 0xaf}, /* 223 */
254 +       {0xff, 0xd7, 0xd7}, /* 224 */
255 +       {0xff, 0xd7, 0xff}, /* 225 */
256 +       {0xff, 0xff, 0x00}, /* 226 */
257 +       {0xff, 0xff, 0x5f}, /* 227 */
258 +       {0xff, 0xff, 0x87}, /* 228 */
259 +       {0xff, 0xff, 0xaf}, /* 229 */
260 +       {0xff, 0xff, 0xd7}, /* 230 */
261 +       {0xff, 0xff, 0xff}, /* 231 */
262 +
263 +       {0x08, 0x08, 0x08}, /* 232 */
264 +       {0x12, 0x12, 0x12}, /* 233 */
265 +       {0x1c, 0x1c, 0x1c}, /* 234 */
266 +       {0x26, 0x26, 0x26}, /* 235 */
267 +       {0x30, 0x30, 0x30}, /* 236 */
268 +       {0x3a, 0x3a, 0x3a}, /* 237 */
269 +       {0x44, 0x44, 0x44}, /* 238 */
270 +       {0x4e, 0x4e, 0x4e}, /* 239 */
271 +       {0x58, 0x58, 0x58}, /* 240 */
272 +       {0x62, 0x62, 0x62}, /* 241 */
273 +       {0x6c, 0x6c, 0x6c}, /* 242 */
274 +       {0x76, 0x76, 0x76}, /* 243 */
275 +       {0x80, 0x80, 0x80}, /* 244 */
276 +       {0x8a, 0x8a, 0x8a}, /* 245 */
277 +       {0x94, 0x94, 0x94}, /* 246 */
278 +       {0x9e, 0x9e, 0x9e}, /* 247 */
279 +       {0xa8, 0xa8, 0xa8}, /* 248 */
280 +       {0xb2, 0xb2, 0xb2}, /* 249 */
281 +       {0xbc, 0xbc, 0xbc}, /* 250 */
282 +       {0xc6, 0xc6, 0xc6}, /* 251 */
283 +       {0xd0, 0xd0, 0xd0}, /* 252 */
284 +       {0xda, 0xda, 0xda}, /* 253 */
285 +       {0xe4, 0xe4, 0xe4}, /* 254 */
286 +       {0xee, 0xee, 0xee}, /* 255 */
287 +
288  };
289  
290  u16 VTerm::init_history_lines()
291 diff -Nru fbterm-1.2/src/lib/vterm_action.cpp fbterm-1.2.new/src/lib/vterm_action.cpp
292 --- fbterm-1.2/src/lib/vterm_action.cpp 2008-10-12 11:50:02.000000000 +0200
293 +++ fbterm-1.2.new/src/lib/vterm_action.cpp     2008-12-16 14:28:19.000000000 +0100
294 @@ -466,9 +466,43 @@
295         enable_mode(false);
296  }
297  
298 +
299  void VTerm::set_display_attr()
300  {
301 +       enum mode_256 {
302 +               MODE_256_NORMAL,
303 +               MODE_256_WAS_FOREGROUND_38,
304 +               MODE_256_WAS_FOREGROUND_5,
305 +               MODE_256_WAS_BACKGROUND_48,
306 +               MODE_256_WAS_BACKGROUND_5
307 +       };
308 +       mode_256 mode = MODE_256_NORMAL;
309 +       bool tmp_underline;
310 +       int tmp_fcolor;
311 +
312         for (s32 n = 0; n <= npar; n++) {
313 +               if (mode == MODE_256_WAS_FOREGROUND_5) {
314 +                       char_attr.fcolor = param[n];
315 +                       mode = MODE_256_NORMAL;
316 +                       continue;
317 +               }
318 +               if (mode == MODE_256_WAS_BACKGROUND_5) {
319 +                       char_attr.bcolor = param[n];
320 +                       mode = MODE_256_NORMAL;
321 +                       continue;
322 +               }
323 +               if (param[n] == 5 && mode != MODE_256_NORMAL) {
324 +                       if (mode == MODE_256_WAS_FOREGROUND_38) {
325 +                               char_attr.fcolor = tmp_fcolor;
326 +                               char_attr.underline = tmp_underline;
327 +                               mode = MODE_256_WAS_FOREGROUND_5;
328 +                       } else if (mode == MODE_256_WAS_BACKGROUND_48) {
329 +                               mode = MODE_256_WAS_BACKGROUND_5;
330 +                       }
331 +                       continue;
332 +               }
333 +               mode = MODE_256_NORMAL;
334 +
335                 switch (param[n]) {
336                 case 0:
337                         char_attr = default_char_attr;
338 @@ -523,8 +557,11 @@
339                         char_attr.fcolor = param[n] % 10;
340                         break;
341                 case 38:
342 +                       tmp_fcolor = char_attr.fcolor;
343 +                       tmp_underline = char_attr.underline;
344                         char_attr.fcolor = cur_fcolor;
345                         char_attr.underline = true;
346 +                       mode = MODE_256_WAS_FOREGROUND_38;
347                         break;
348                 case 39:
349                         char_attr.fcolor = default_fcolor;
350 @@ -533,6 +570,9 @@
351                 case 40 ... 47:
352                         char_attr.bcolor = param[n] % 10;
353                         break;
354 +               case 48:
355 +                       mode = MODE_256_WAS_BACKGROUND_48;
356 +                       break;
357                 case 49:
358                         char_attr.bcolor = default_bcolor;
359                         break;
360 --- fbterm-1.3/src/lib/vterm.h.orig     2008-12-20 03:48:36.000000000 +0100
361 +++ fbterm-1.3/src/lib/vterm.h  2008-12-25 13:21:40.000000000 +0100
362 @@ -35,8 +35,8 @@
363                                 || italic != a.italic || underline != a.underline || blink != a.blink || reverse != a.reverse;
364                 }
365                 
366 -               u16 fcolor : 4;
367 -               u16 bcolor : 4;
368 +               u16 fcolor : 8;
369 +               u16 bcolor : 8;
370                 u16 intensity : 2; // 0 = half-bright, 1 = normal, 2 = bold
371                 u16 italic : 1;
372                 u16 underline : 1;
373 diff -Nru fbterm-1.3.old/src/screen.h fbterm-1.3/src/screen.h
374 --- fbterm-1.3.old/src/screen.h 2008-12-20 03:48:36.000000000 +0100
375 +++ fbterm-1.3/src/screen.h     2008-12-25 13:04:41.000000000 +0100
376 @@ -24,10 +24,10 @@
377  #include "type.h"
378  #include "instance.h"
379  
380 -#define NR_COLORS 16
381 +#define NR_COLORS 256
382  
383  struct Color {
384 -    u8 blue, green, red;
385 +    u8 red, green, blue;
386  };
387  
388  struct Rectangle {
This page took 0.111253 seconds and 3 git commands to generate.