source: branches/philmoz/core/gui_draw.h @ 1343

Revision 1343, 18.7 KB checked in by philmoz, 20 months ago (diff)
  • Merged recent changes from main trunk to this branch.
  • Added experimental color/palette code for G12/SX30/IXUS310. Loads custom CHDK colors into camera palette. Adds better icons from CHDK-DE.
  • Property svn:eol-style set to native
Line 
1#ifndef GUI_DRAW_H
2#define GUI_DRAW_H
3//-------------------------------------------------------------------
4
5// Moved from gui_bench.c, gui_debug.c, gui_calendar.c, gui_reversi.c & gui_sokoban.c so it can be overridden
6// Default value is white in SX30 & G12 palette making white text hard to read
7#define SCREEN_COLOR            0xF7
8
9//-------------------------------------------------------------------
10
11#if CAM_BITMAP_PALETTE==1
12#define COLOR_TRANSPARENT   0x00
13#define COLOR_WHITE         0x11
14#define COLOR_RED           0x22
15#define COLOR_GREY          0x3F
16#define COLOR_GREEN         0x55
17#define COLOR_BLUE_LT       0xDD
18#define COLOR_BLUE          0xDF
19#define COLOR_YELLOW        0xEE
20#define COLOR_BLACK         0xFF
21#define COLOR_BG            0x44
22#define COLOR_FG            COLOR_WHITE
23#define COLOR_SELECTED_BG   COLOR_RED
24#define COLOR_SELECTED_FG   COLOR_WHITE
25#define COLOR_ALT_BG        0xD4
26#define COLOR_SPLASH_RED    0x2E
27#define COLOR_SPLASH_PINK   0x21
28#define COLOR_SPLASH_GREY   0x1F
29// colors for blended histo
30#define COLOR_HISTO_R       COLOR_RED
31#define COLOR_HISTO_R_PLAY  COLOR_RED
32#define COLOR_HISTO_B       COLOR_BLUE
33#define COLOR_HISTO_G       COLOR_GREEN
34#define COLOR_HISTO_G_PLAY  COLOR_GREEN
35#define COLOR_HISTO_BG      COLOR_BLUE_LT
36#define COLOR_HISTO_RG      COLOR_YELLOW
37#define COLOR_HISTO_RB      0x66
38#define COLOR_HISTO_RB_PLAY 0xE2
39#define COLOR_HISTO_B_PLAY  0xCC
40#define COLOR_HISTO_BG_PLAY 0x99
41#define COLOR_HISTO_RG_PLAY 0x66
42
43#elif CAM_BITMAP_PALETTE==2    // sd990
44#define COLOR_TRANSPARENT   0x00
45#define COLOR_WHITE         0xD3
46#define COLOR_RED           0x64
47#define COLOR_GREY          0x12
48#define COLOR_GREEN         0xC4
49#define COLOR_BLUE_LT       0x6A
50#define COLOR_BLUE          0x87
51#define COLOR_YELLOW        0x44
52#define COLOR_BLACK         0xFF
53#define COLOR_BG            0x22
54#define COLOR_FG            COLOR_WHITE
55#define COLOR_SELECTED_BG   COLOR_RED
56#define COLOR_SELECTED_FG   COLOR_WHITE
57#define COLOR_ALT_BG        0x22
58#define COLOR_SPLASH_RED    0x58
59#define COLOR_SPLASH_PINK   0x4C
60#define COLOR_SPLASH_GREY   0x16
61// colors for blended histo
62// many of these probably wrong on this cam
63#define COLOR_HISTO_R       COLOR_RED
64#define COLOR_HISTO_R_PLAY  COLOR_RED
65#define COLOR_HISTO_B       COLOR_BLUE
66#define COLOR_HISTO_G       COLOR_GREEN
67#define COLOR_HISTO_G_PLAY  COLOR_GREEN
68#define COLOR_HISTO_BG      COLOR_BLUE_LT
69#define COLOR_HISTO_RG      COLOR_YELLOW
70#define COLOR_HISTO_RB      0x66
71#define COLOR_HISTO_RB_PLAY 0xE2
72#define COLOR_HISTO_B_PLAY  0xCC
73#define COLOR_HISTO_BG_PLAY 0x99
74#define COLOR_HISTO_RG_PLAY 0x66
75
76#elif CAM_BITMAP_PALETTE==3    // sx200
77#define COLOR_TRANSPARENT   0x00
78#define COLOR_WHITE         0x01
79#define COLOR_RED           0x2B
80#define COLOR_GREY          0x17
81#define COLOR_GREEN         0x99
82#define COLOR_BLUE_LT       0x2D
83#define COLOR_BLUE          0x3B
84#define COLOR_YELLOW        0x9A
85#define COLOR_BLACK         0xFF
86#define COLOR_BG            0x81
87#define COLOR_FG            COLOR_WHITE
88#define COLOR_SELECTED_BG   COLOR_RED
89#define COLOR_SELECTED_FG   COLOR_WHITE
90#define COLOR_ALT_BG        COLOR_GREY
91#define COLOR_SPLASH_RED    0x29
92#define COLOR_SPLASH_PINK   0x1E
93#define COLOR_SPLASH_GREY   0x16
94// colors for blended histo
95#define COLOR_HISTO_R       COLOR_RED
96#define COLOR_HISTO_R_PLAY  COLOR_HISTO_R
97#define COLOR_HISTO_B       COLOR_BLUE
98#define COLOR_HISTO_G       COLOR_GREEN
99#define COLOR_HISTO_G_PLAY  COLOR_HISTO_G
100#define COLOR_HISTO_BG      COLOR_BLUE_LT
101#define COLOR_HISTO_RG      COLOR_YELLOW
102#define COLOR_HISTO_RB      COLOR_BLACK // there isn't purplish on this cam I guess
103#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
104#define COLOR_HISTO_B_PLAY  COLOR_HISTO_B
105#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
106#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
107
108#elif CAM_BITMAP_PALETTE==4    // g11
109#define COLOR_TRANSPARENT   0x00
110#define COLOR_WHITE         0x01
111#define COLOR_RED           0x2B
112#define COLOR_GREY          0x17
113#define COLOR_GREEN         0x99
114#define COLOR_BLUE_LT       0xA9
115#define COLOR_BLUE          0xA1
116#define COLOR_YELLOW        0x9A
117#define COLOR_BLACK         0xFF
118#define COLOR_BG            0x61
119#define COLOR_FG            COLOR_WHITE
120#define COLOR_SELECTED_BG   COLOR_RED
121#define COLOR_SELECTED_FG   COLOR_WHITE
122#define COLOR_ALT_BG        COLOR_GREY
123#define COLOR_SPLASH_RED    0x29
124#define COLOR_SPLASH_PINK   0x1E
125#define COLOR_SPLASH_GREY   0x16
126// colors for blended histo
127#define COLOR_HISTO_R       COLOR_RED
128#define COLOR_HISTO_R_PLAY  COLOR_HISTO_R
129#define COLOR_HISTO_B       COLOR_BLUE
130#define COLOR_HISTO_G       COLOR_GREEN
131#define COLOR_HISTO_G_PLAY  COLOR_HISTO_G
132#define COLOR_HISTO_BG      COLOR_BLUE_LT
133#define COLOR_HISTO_RG      COLOR_YELLOW
134#define COLOR_HISTO_RB      COLOR_BLACK // there isn't purplish on this cam I guess
135#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
136#define COLOR_HISTO_B_PLAY  COLOR_HISTO_B
137#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
138#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
139
140#elif CAM_BITMAP_PALETTE==5    // Based on sd990
141#define COLOR_TRANSPARENT   0x00
142#define COLOR_WHITE         0xD3
143#define COLOR_RED           0x6A
144#define COLOR_GREY          0x12
145#define COLOR_GREEN         0xBF
146#define COLOR_BLUE_LT       0x7C
147#define COLOR_BLUE          0x90
148#define COLOR_YELLOW        0x53
149#define COLOR_BLACK         0xFF
150#define COLOR_BG            0x22
151#define COLOR_FG            COLOR_WHITE
152#define COLOR_SELECTED_BG   COLOR_RED
153#define COLOR_SELECTED_FG   COLOR_WHITE
154#define COLOR_ALT_BG        0x22
155#define COLOR_SPLASH_RED    0x72
156#define COLOR_SPLASH_PINK   0x5C
157#define COLOR_SPLASH_GREY   0x16
158#define COLOR_HISTO_R       COLOR_RED
159#define COLOR_HISTO_R_PLAY  COLOR_RED
160#define COLOR_HISTO_B       COLOR_BLUE
161#define COLOR_HISTO_G       COLOR_GREEN
162#define COLOR_HISTO_G_PLAY  COLOR_GREEN
163#define COLOR_HISTO_BG      COLOR_BLUE_LT
164#define COLOR_HISTO_RG      COLOR_YELLOW
165#define COLOR_HISTO_RB      0x72
166#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
167#define COLOR_HISTO_B_PLAY  COLOR_HISTO_B
168#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
169#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
170
171#elif CAM_BITMAP_PALETTE==6    // sx20
172#define COLOR_TRANSPARENT   0x00
173#define COLOR_WHITE         0x01
174#define COLOR_RED           0x2B
175#define COLOR_GREY          0x0F
176#define COLOR_GREEN         0xA9
177#define COLOR_BLUE_LT       0x2D
178#define COLOR_BLUE          0x3B
179#define COLOR_YELLOW        0x8B
180#define COLOR_BLACK         0xFF
181#define COLOR_BG            0xFE
182#define COLOR_FG            COLOR_WHITE
183#define COLOR_SELECTED_BG   COLOR_RED
184#define COLOR_SELECTED_FG   COLOR_WHITE
185#define COLOR_ALT_BG        COLOR_BG
186#define COLOR_SPLASH_RED    COLOR_RED
187#define COLOR_SPLASH_PINK   0xEA
188#define COLOR_SPLASH_GREY   0x16
189#define COLOR_HISTO_R       COLOR_RED
190#define COLOR_HISTO_R_PLAY  COLOR_RED
191#define COLOR_HISTO_B       COLOR_BLUE
192#define COLOR_HISTO_G       COLOR_GREEN
193#define COLOR_HISTO_G_PLAY  COLOR_GREEN
194#define COLOR_HISTO_BG      COLOR_BLUE_LT
195#define COLOR_HISTO_RG      COLOR_YELLOW
196#define COLOR_HISTO_RB      COLOR_RED
197#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
198#define COLOR_HISTO_B_PLAY  COLOR_HISTO_B
199#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
200#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
201
202#elif CAM_BITMAP_PALETTE==7    // sx130is, s95
203#define COLOR_TRANSPARENT   0x00
204#define COLOR_WHITE         0x01
205#define COLOR_RED           0x1e
206#define COLOR_GREY          0x1a
207#define COLOR_GREEN         0x17
208#define COLOR_BLUE_LT       0x10
209#define COLOR_BLUE          0x14
210#define COLOR_YELLOW        0x60
211#define COLOR_BLACK         0xFF
212#define COLOR_BG            0x62
213#define COLOR_FG            COLOR_WHITE
214#define COLOR_SELECTED_BG   0x0e
215#define COLOR_SELECTED_FG   COLOR_BLACK
216#define COLOR_ALT_BG        COLOR_BG
217#define COLOR_SPLASH_RED    COLOR_RED
218#define COLOR_SPLASH_PINK   0x1e    // Orange
219#define COLOR_SPLASH_GREY   0x16
220#define COLOR_HISTO_R       0x66
221#define COLOR_HISTO_R_PLAY  0xA0
222#define COLOR_HISTO_B       0x61
223#define COLOR_HISTO_B_PLAY  0xA2
224#define COLOR_HISTO_G       0x5F
225#define COLOR_HISTO_G_PLAY  0xA1
226#define COLOR_HISTO_BG      COLOR_BLUE_LT
227#define COLOR_HISTO_RG      COLOR_YELLOW
228#define COLOR_HISTO_RB      COLOR_RED
229#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
230#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
231#define COLOR_HISTO_RG_PLAY 0x80
232#undef SCREEN_COLOR
233#define SCREEN_COLOR            0x1D
234
235#elif CAM_BITMAP_PALETTE==8    // a490, a495
236#define COLOR_TRANSPARENT   0x00
237#define COLOR_WHITE         0x01
238#define COLOR_RED           0x66
239#define COLOR_GREY          0x6D
240#define COLOR_GREEN         0x69
241#define COLOR_BLUE_LT       0x68
242#define COLOR_BLUE          0x67
243#define COLOR_YELLOW        0x60
244#define COLOR_BLACK         0xFF
245#define COLOR_BG            0x20
246#define COLOR_FG            COLOR_WHITE
247#define COLOR_SELECTED_BG   COLOR_RED
248#define COLOR_SELECTED_FG   COLOR_WHITE
249#define COLOR_ALT_BG        0x20
250#define COLOR_SPLASH_RED    COLOR_RED
251#define COLOR_SPLASH_PINK   COLOR_GREY
252#define COLOR_SPLASH_GREY   0xDE
253#define COLOR_HISTO_R       COLOR_RED
254#define COLOR_HISTO_R_PLAY  COLOR_RED
255#define COLOR_HISTO_B       COLOR_BLUE
256#define COLOR_HISTO_G       COLOR_GREEN
257#define COLOR_HISTO_G_PLAY  COLOR_GREEN
258#define COLOR_HISTO_BG      COLOR_BLUE_LT
259#define COLOR_HISTO_RG      COLOR_YELLOW
260#define COLOR_HISTO_RB      COLOR_RED
261#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
262#define COLOR_HISTO_B_PLAY  COLOR_HISTO_B
263#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
264#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
265
266#elif CAM_BITMAP_PALETTE==9    // sx220
267#define COLOR_TRANSPARENT   0x00
268#define COLOR_WHITE         0x01
269#define COLOR_RED           0x9f
270#define COLOR_GREY          0x1a
271#define COLOR_GREY_LIGHT    0x0B
272#define COLOR_GREY_DARK     0x19
273#define COLOR_GREEN         0xa0
274#define COLOR_BLUE_LT       0x96
275#define COLOR_BLUE          0xa1
276#define COLOR_YELLOW        0x92
277#define COLOR_BLACK         0xFF
278#define COLOR_BG            0x62
279#define COLOR_FG            COLOR_WHITE
280#define COLOR_SELECTED_BG   0x0e
281#define COLOR_SELECTED_FG   COLOR_BLACK
282#define COLOR_ALT_BG        COLOR_BG
283#define COLOR_SPLASH_RED    COLOR_RED
284#define COLOR_SPLASH_PINK   0x1e    // Orange
285#define COLOR_SPLASH_GREY   0x16
286#define COLOR_HISTO_R       0x6C
287#define COLOR_HISTO_R_PLAY  COLOR_RED
288#define COLOR_HISTO_B       0x6D
289#define COLOR_HISTO_B_PLAY  COLOR_BLUE
290#define COLOR_HISTO_G       0x90
291#define COLOR_HISTO_G_PLAY  COLOR_GREEN
292#define COLOR_HISTO_BG      0x52    // COLOR_BLUE_LT
293#define COLOR_HISTO_RG      0x51    // COLOR_YELLOW
294#define COLOR_HISTO_RB      0x3D    // COLOR_RED
295#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
296#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
297#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
298#undef SCREEN_COLOR
299#define SCREEN_COLOR            0x1D
300
301#elif CAM_BITMAP_PALETTE==10    // a1100
302#define COLOR_TRANSPARENT   0x00
303#define COLOR_WHITE         0x0A
304#define COLOR_RED           0x6B
305#define COLOR_GREY          0x17
306#define COLOR_GREEN         0x96
307#define COLOR_BLUE_LT       0x79
308#define COLOR_BLUE          0x8A
309#define COLOR_YELLOW        0x54
310#define COLOR_BLACK         0xFF
311#define COLOR_BG            0x1F
312#define COLOR_FG            COLOR_WHITE
313#define COLOR_SELECTED_BG   COLOR_RED
314#define COLOR_SELECTED_FG   COLOR_WHITE
315#define COLOR_ALT_BG        0x87
316#define COLOR_SPLASH_RED    0x60
317#define COLOR_SPLASH_PINK   0xBD
318#define COLOR_SPLASH_GREY   0x16
319// colors for blended histo
320#define COLOR_HISTO_R       COLOR_RED
321#define COLOR_HISTO_R_PLAY  COLOR_RED
322#define COLOR_HISTO_B       COLOR_BLUE
323#define COLOR_HISTO_G       COLOR_GREEN
324#define COLOR_HISTO_G_PLAY  COLOR_GREEN
325#define COLOR_HISTO_BG      COLOR_BLUE_LT
326#define COLOR_HISTO_RG      COLOR_YELLOW
327#define COLOR_HISTO_RB      0x66
328#define COLOR_HISTO_RB_PLAY 0xE2
329#define COLOR_HISTO_B_PLAY  0xCC
330#define COLOR_HISTO_BG_PLAY 0x99
331#define COLOR_HISTO_RG_PLAY 0x66
332#undef SCREEN_COLOR
333#define SCREEN_COLOR            0x1D
334
335#elif CAM_BITMAP_PALETTE==11    // sd4000
336// pallete changes almost completely depenting on mode and if canon menu is active or not
337// playback, playback with menu, photo record mode, photo record mode with menu, ...
338#define COLOR_TRANSPARENT   0x00    // always the same
339#define COLOR_WHITE         0x01    // always the same
340#define COLOR_RED           0x1E    // always the same, bright orange (red is only available in record more without menu)
341#define COLOR_GREY          0x16    // always the same
342#define COLOR_GREEN         0x9F    // playback only, without menu
343#define COLOR_BLUE_LT       0x0C    // playback: light brown
344#define COLOR_BLUE          0x12    // playback: dark brown (almost like sh.t)
345#define COLOR_YELLOW        0x90    // playback only, without menu
346#define COLOR_BLACK         0xFF    // always the same
347#define COLOR_BG            0x1D    // greyisch
348#define COLOR_FG            COLOR_WHITE
349#define COLOR_SELECTED_BG   COLOR_RED    // always the same, light grey
350#define COLOR_SELECTED_FG   COLOR_BLACK
351#define COLOR_ALT_BG        COLOR_BG
352#define COLOR_SPLASH_RED    COLOR_RED
353#define COLOR_SPLASH_PINK   COLOR_BLUE
354#define COLOR_SPLASH_GREY   0x16    // darker grey
355#define COLOR_HISTO_R       0x66    // record only, without menu
356#define COLOR_HISTO_R_PLAY  COLOR_RED
357#define COLOR_HISTO_B       0x3C
358#define COLOR_HISTO_B_PLAY  0x50    // playback without menu dont have blue at all, bright Orange
359#define COLOR_HISTO_G       0x6B
360#define COLOR_HISTO_G_PLAY  COLOR_GREEN
361#define COLOR_HISTO_BG      COLOR_BLUE_LT
362#define COLOR_HISTO_RG      COLOR_YELLOW
363#define COLOR_HISTO_RB      COLOR_RED
364#define COLOR_HISTO_RB_PLAY COLOR_HISTO_RB
365#define COLOR_HISTO_BG_PLAY COLOR_BLUE_LT
366#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
367
368#elif CAM_BITMAP_PALETTE==12    // IXUS 310, SX30, G12
369// Default Canon colors
370#define COLOR_TRANSPARENT   0x00
371#define COLOR_WHITE         0x01
372#define COLOR_BLACK         0xFF
373#define COLOR_GREY          0x1a
374#define COLOR_GREY_MED      0x16
375#define COLOR_GREY_LT       0x0E
376#undef SCREEN_COLOR
377#define SCREEN_COLOR        0x1D
378
379// CHDK colors loaded into these locations in the camera palette by load_chdk_palette()
380#define COLOR_RED           (CHDK_COLOR_BASE+0)
381#define COLOR_RED_DK        (CHDK_COLOR_BASE+1)
382#define COLOR_RED_LT        (CHDK_COLOR_BASE+2)
383#define COLOR_GREEN         (CHDK_COLOR_BASE+3)
384#define COLOR_GREEN_DK      (CHDK_COLOR_BASE+4)
385#define COLOR_GREEN_LT      (CHDK_COLOR_BASE+5)
386#define COLOR_BLUE          (CHDK_COLOR_BASE+6)
387#define COLOR_BLUE_DK       (CHDK_COLOR_BASE+7)
388#define COLOR_BLUE_LT       (CHDK_COLOR_BASE+8)
389#define COLOR_MAGENTA       (CHDK_COLOR_BASE+9)
390#define COLOR_YELLOW        (CHDK_COLOR_BASE+10)
391#define COLOR_YELLOW_DK     (CHDK_COLOR_BASE+11)
392#define COLOR_YELLOW_LT     (CHDK_COLOR_BASE+12)
393
394#define COLOR_CYAN          COLOR_BLUE_LT
395#define COLOR_BG            COLOR_GREY
396#define COLOR_FG            COLOR_WHITE
397#define COLOR_SELECTED_BG   COLOR_GREY_LT
398#define COLOR_SELECTED_FG   COLOR_BLACK
399#define COLOR_ALT_BG        COLOR_BG
400
401#define COLOR_SPLASH_RED    COLOR_RED_DK
402#define COLOR_SPLASH_PINK   COLOR_RED_LT
403#define COLOR_SPLASH_GREY   COLOR_GREY_MED
404
405#define COLOR_HISTO_R       COLOR_RED
406#define COLOR_HISTO_R_PLAY  COLOR_RED
407#define COLOR_HISTO_B       COLOR_BLUE
408#define COLOR_HISTO_B_PLAY  COLOR_BLUE
409#define COLOR_HISTO_G       COLOR_GREEN
410#define COLOR_HISTO_G_PLAY  COLOR_GREEN
411#define COLOR_HISTO_BG      COLOR_CYAN
412#define COLOR_HISTO_BG_PLAY COLOR_CYAN
413#define COLOR_HISTO_RG      COLOR_YELLOW
414#define COLOR_HISTO_RG_PLAY COLOR_YELLOW
415#define COLOR_HISTO_RB      COLOR_MAGENTA
416#define COLOR_HISTO_RB_PLAY COLOR_MAGENTA
417
418#else
419#error CAM_BITMAP_PALETTE not defined
420#endif
421
422#define FONT_WIDTH          8
423#define FONT_HEIGHT         16
424
425//-------------------------------------------------------------------
426extern unsigned int         screen_width, screen_height, screen_size;
427extern unsigned int         screen_buffer_width, screen_buffer_height, screen_buffer_size;
428
429//-------------------------------------------------------------------
430extern void draw_init();
431extern void draw_set_draw_proc(void (*pixel_proc)(unsigned int offset, color cl));
432
433#ifdef CAM_DETECT_SCREEN_ERASE
434extern void draw_set_guard();
435extern int draw_test_guard();
436extern int draw_test_pixel(coord x, coord y, color c);
437#endif
438
439extern color draw_get_pixel(coord x, coord y);
440
441extern void draw_line(coord x1, coord y1, coord x2, coord y2, color cl);
442extern void draw_hline(coord x, coord y, int len, color cl);
443extern void draw_vline(coord x, coord y, int len, color cl);
444
445// draw frame
446extern void draw_rect(coord x1, coord y1, coord x2, coord y2, color cl);
447extern void draw_rect_thick(coord x1, coord y1, coord x2, coord y2, color cl, int thickness);
448extern void draw_rect_shadow(coord x1, coord y1, coord x2, coord y2, color cl, int thickness);
449extern void draw_round_rect(coord x1, coord y1, coord x2, coord y2, color cl);
450extern void draw_round_rect_thick(coord x1, coord y1, coord x2, coord y2, color cl, int thickness);
451// color: hi_byte - BG; lo_byte - FG
452extern void draw_filled_rect(coord x1, coord y1, coord x2, coord y2, color cl);
453extern void draw_filled_rect_thick(coord x1, coord y1, coord x2, coord y2, color cl, int thickness);
454extern void draw_filled_round_rect(coord x1, coord y1, coord x2, coord y2, color cl);
455extern void draw_filled_round_rect_thick(coord x1, coord y1, coord x2, coord y2, color cl, int thickness);
456
457extern void draw_char(coord x, coord y, const char ch, color cl);
458extern void draw_string(coord x, coord y, const char *s, color cl);
459
460extern void draw_txt_rect(coord col, coord row, unsigned int length, unsigned int height, color cl);
461extern void draw_txt_rect_exp(coord col, coord row, unsigned int length, unsigned int height, unsigned int exp, color cl);
462extern void draw_txt_filled_rect(coord col, coord row, unsigned int length, unsigned int height, color cl);
463extern void draw_txt_filled_rect_exp(coord col, coord row, unsigned int length, unsigned int height, unsigned int exp, color cl);
464extern void draw_txt_string(coord col, coord row, const char *str, color cl);
465extern void draw_txt_char(coord col, coord row, const char ch, color cl);
466
467extern void draw_clear();
468extern void draw_restore();
469
470extern void draw_fill(coord x, coord y, color cl_fill, color cl_bound);
471extern void draw_circle(coord x, coord y, const unsigned int r, color cl);
472extern void draw_ellipse(coord xc, coord yc, unsigned int a, unsigned int b, color cl);
473extern void draw_filled_ellipse(coord xc, coord yc, unsigned int a, unsigned int b, color cl);
474
475
476#if CAM_USES_ASPECT_CORRECTION //nandoide sept-2009
477void draw_set_aspect_xcorrection_proc(unsigned int (*xcorrection_proc)(unsigned int x));
478void draw_set_aspect_ycorrection_proc(unsigned int (*ycorrection_proc)(unsigned int y));
479unsigned int aspect_xcorrection_games_360(unsigned int x);
480unsigned int aspect_ycorrection_games_360(unsigned int y);
481void draw_set_environment(unsigned int (*xcorrection_proc)(unsigned int x),
482                                       unsigned int (*ycorrection_proc)(unsigned int y),
483                                       int screenx, int screeny );
484#endif
485
486//-------------------------------------------------------------------
487#endif
Note: See TracBrowser for help on using the repository browser.