diff options
-rw-r--r-- | apps/plugin.h | 4 | ||||
-rw-r--r-- | apps/screen_access.c | 294 | ||||
-rw-r--r-- | apps/screen_access.h | 17 |
3 files changed, 150 insertions, 165 deletions
diff --git a/apps/plugin.h b/apps/plugin.h index 3971a1357c..ab6213850d 100644 --- a/apps/plugin.h +++ b/apps/plugin.h | |||
@@ -112,12 +112,12 @@ | |||
112 | #define PLUGIN_MAGIC 0x526F634B /* RocK */ | 112 | #define PLUGIN_MAGIC 0x526F634B /* RocK */ |
113 | 113 | ||
114 | /* increase this every time the api struct changes */ | 114 | /* increase this every time the api struct changes */ |
115 | #define PLUGIN_API_VERSION 74 | 115 | #define PLUGIN_API_VERSION 75 |
116 | 116 | ||
117 | /* update this to latest version if a change to the api struct breaks | 117 | /* update this to latest version if a change to the api struct breaks |
118 | backwards compatibility (and please take the opportunity to sort in any | 118 | backwards compatibility (and please take the opportunity to sort in any |
119 | new function which are "waiting" at the end of the function table) */ | 119 | new function which are "waiting" at the end of the function table) */ |
120 | #define PLUGIN_MIN_API_VERSION 74 | 120 | #define PLUGIN_MIN_API_VERSION 75 |
121 | 121 | ||
122 | /* plugin return codes */ | 122 | /* plugin return codes */ |
123 | enum plugin_status { | 123 | enum plugin_status { |
diff --git a/apps/screen_access.c b/apps/screen_access.c index b5731cf33a..251bd7e848 100644 --- a/apps/screen_access.c +++ b/apps/screen_access.c | |||
@@ -30,181 +30,168 @@ | |||
30 | #include "screen_access.h" | 30 | #include "screen_access.h" |
31 | #include "textarea.h" | 31 | #include "textarea.h" |
32 | 32 | ||
33 | struct screen screens[NB_SCREENS]; | 33 | struct screen screens[NB_SCREENS] = |
34 | |||
35 | void screen_init(struct screen * screen, enum screen_type screen_type) | ||
36 | { | 34 | { |
37 | switch(screen_type) | ||
38 | { | 35 | { |
39 | #ifdef HAVE_REMOTE_LCD | 36 | .screen_type=SCREEN_MAIN, |
40 | case SCREEN_REMOTE: | 37 | .width=LCD_WIDTH, |
41 | screen->is_color=false;/* No color remotes yet */ | 38 | .height=LCD_HEIGHT, |
42 | screen->pixel_format=LCD_REMOTE_PIXELFORMAT; | 39 | .depth=LCD_DEPTH, |
43 | screen->depth=LCD_REMOTE_DEPTH; | ||
44 | screen->has_disk_led=false; | ||
45 | |||
46 | screen->width=LCD_REMOTE_WIDTH; | ||
47 | screen->height=LCD_REMOTE_HEIGHT; | ||
48 | screen->setmargins=&lcd_remote_setmargins; | ||
49 | screen->getymargin=&lcd_remote_getymargin; | ||
50 | screen->getxmargin=&lcd_remote_getxmargin; | ||
51 | screen->getstringsize=&lcd_remote_getstringsize; | ||
52 | #if 1 /* all remote LCDs are bitmapped so far */ | ||
53 | screen->setfont=&lcd_remote_setfont; | ||
54 | screen->setfont(FONT_UI); | ||
55 | screen->mono_bitmap=&lcd_remote_mono_bitmap; | ||
56 | screen->mono_bitmap_part=&lcd_remote_mono_bitmap_part; | ||
57 | screen->bitmap=(screen_bitmap_func*)&lcd_remote_bitmap; | ||
58 | screen->bitmap_part=(screen_bitmap_part_func*)&lcd_remote_bitmap_part; | ||
59 | screen->set_drawmode=&lcd_remote_set_drawmode; | ||
60 | #if LCD_REMOTE_DEPTH <= 2 | ||
61 | /* No transparency yet for grayscale and mono lcd */ | ||
62 | screen->transparent_bitmap=(screen_bitmap_func*)&lcd_remote_bitmap; | ||
63 | screen->transparent_bitmap_part=(screen_bitmap_part_func*)&lcd_remote_bitmap_part; | ||
64 | /* No colour remotes yet */ | ||
65 | #endif | ||
66 | #if LCD_REMOTE_DEPTH > 1 | ||
67 | #if defined(HAVE_LCD_COLOR) | 40 | #if defined(HAVE_LCD_COLOR) |
68 | screen->color_to_native=&lcd_remote_color_to_native; | 41 | .is_color=true, |
69 | #endif | ||
70 | screen->get_background=&lcd_remote_get_background; | ||
71 | screen->get_foreground=&lcd_remote_get_foreground; | ||
72 | screen->set_background=&lcd_remote_set_background; | ||
73 | screen->set_foreground=&lcd_remote_set_foreground; | ||
74 | #endif /* LCD_REMOTE_DEPTH > 1 */ | ||
75 | screen->update_rect=&lcd_remote_update_rect; | ||
76 | screen->fillrect=&lcd_remote_fillrect; | ||
77 | screen->drawrect=&lcd_remote_drawrect; | ||
78 | screen->drawpixel=&lcd_remote_drawpixel; | ||
79 | screen->drawline=&lcd_remote_drawline; | ||
80 | screen->vline=&lcd_remote_vline; | ||
81 | screen->hline=&lcd_remote_hline; | ||
82 | screen->scroll_step=&lcd_remote_scroll_step; | ||
83 | screen->invertscroll=&lcd_remote_invertscroll; | ||
84 | screen->puts_style_offset=&lcd_remote_puts_style_offset; | ||
85 | screen->puts_scroll_style=&lcd_remote_puts_scroll_style; | ||
86 | screen->puts_scroll_style_offset=&lcd_remote_puts_scroll_style_offset; | ||
87 | #endif /* 1 */ | ||
88 | |||
89 | #if 0 /* no charcell remote LCDs so far */ | ||
90 | screen->double_height=&lcd_remote_double_height; | ||
91 | screen->putc=&lcd_remote_putc; | ||
92 | screen->get_locked_pattern=&lcd_remote_get_locked_pattern; | ||
93 | screen->define_pattern=&lcd_remote_define_pattern; | ||
94 | screen->icon=&lcd_remote_icon; | ||
95 | #endif /* 0 */ | ||
96 | |||
97 | screen->init=&lcd_remote_init; | ||
98 | screen->putsxy=&lcd_remote_putsxy; | ||
99 | screen->puts=&lcd_remote_puts; | ||
100 | screen->puts_offset=&lcd_remote_puts_offset; | ||
101 | screen->puts_scroll=&lcd_remote_puts_scroll; | ||
102 | screen->puts_scroll_offset=&lcd_remote_puts_scroll_offset; | ||
103 | screen->scroll_speed=&lcd_remote_scroll_speed; | ||
104 | screen->scroll_delay=&lcd_remote_scroll_delay; | ||
105 | screen->stop_scroll=&lcd_remote_stop_scroll; | ||
106 | screen->clear_display=&lcd_remote_clear_display; | ||
107 | screen->update=&lcd_remote_update; | ||
108 | screen->backlight_on=&remote_backlight_on; | ||
109 | screen->backlight_off=&remote_backlight_off; | ||
110 | screen->is_backlight_on=&is_remote_backlight_on; | ||
111 | screen->backlight_set_timeout=&remote_backlight_set_timeout; | ||
112 | break; | ||
113 | #endif /* HAVE_REMOTE_LCD */ | ||
114 | |||
115 | case SCREEN_MAIN: | ||
116 | default: | ||
117 | #if defined(HAVE_LCD_COLOR) | ||
118 | screen->is_color=true; | ||
119 | #else | 42 | #else |
120 | screen->is_color=false; | 43 | .is_color=false, |
121 | #endif | 44 | #endif |
122 | #ifdef HAVE_LCD_BITMAP | 45 | #ifdef HAVE_LCD_BITMAP |
123 | screen->pixel_format=LCD_PIXELFORMAT; | 46 | .pixel_format=LCD_PIXELFORMAT, |
124 | #endif | 47 | #endif |
125 | screen->depth=LCD_DEPTH; | ||
126 | #if (CONFIG_LED == LED_VIRTUAL) | 48 | #if (CONFIG_LED == LED_VIRTUAL) |
127 | screen->has_disk_led=false; | 49 | .has_disk_led=false, |
128 | #elif defined(HAVE_REMOTE_LCD) | 50 | #elif defined(HAVE_REMOTE_LCD) |
129 | screen->has_disk_led=true; | 51 | .has_disk_led=true, |
130 | #endif | 52 | #endif |
131 | screen->width=LCD_WIDTH; | 53 | .setmargins=&lcd_setmargins, |
132 | screen->height=LCD_HEIGHT; | 54 | .getymargin=&lcd_getymargin, |
133 | screen->setmargins=&lcd_setmargins; | 55 | .getxmargin=&lcd_getxmargin, |
134 | screen->getymargin=&lcd_getymargin; | 56 | .getstringsize=&lcd_getstringsize, |
135 | screen->getxmargin=&lcd_getxmargin; | ||
136 | screen->getstringsize=&lcd_getstringsize; | ||
137 | #ifdef HAVE_LCD_BITMAP | 57 | #ifdef HAVE_LCD_BITMAP |
138 | screen->setfont=&lcd_setfont; | 58 | .setfont=&lcd_setfont, |
139 | screen->setfont(FONT_UI); | 59 | .mono_bitmap=&lcd_mono_bitmap, |
140 | screen->mono_bitmap=&lcd_mono_bitmap; | 60 | .mono_bitmap_part=&lcd_mono_bitmap_part, |
141 | screen->mono_bitmap_part=&lcd_mono_bitmap_part; | 61 | .set_drawmode=&lcd_set_drawmode, |
142 | screen->set_drawmode=&lcd_set_drawmode; | 62 | .bitmap=(screen_bitmap_func*)&lcd_bitmap, |
143 | screen->bitmap=(screen_bitmap_func*)&lcd_bitmap; | 63 | .bitmap_part=(screen_bitmap_part_func*)&lcd_bitmap_part, |
144 | screen->bitmap_part=(screen_bitmap_part_func*)&lcd_bitmap_part; | ||
145 | #if LCD_DEPTH <= 2 | 64 | #if LCD_DEPTH <= 2 |
146 | /* No transparency yet for grayscale and mono lcd */ | 65 | /* No transparency yet for grayscale and mono lcd */ |
147 | screen->transparent_bitmap=(screen_bitmap_func*)&lcd_bitmap; | 66 | .transparent_bitmap=(screen_bitmap_func*)&lcd_bitmap, |
148 | screen->transparent_bitmap_part=(screen_bitmap_part_func*)&lcd_bitmap_part; | 67 | .transparent_bitmap_part=(screen_bitmap_part_func*)&lcd_bitmap_part, |
149 | #else | 68 | #else |
150 | screen->transparent_bitmap=(screen_bitmap_func*)&lcd_bitmap_transparent; | 69 | .transparent_bitmap=(screen_bitmap_func*)&lcd_bitmap_transparent, |
151 | screen->transparent_bitmap_part=(screen_bitmap_part_func*)&lcd_bitmap_transparent_part; | 70 | .transparent_bitmap_part=(screen_bitmap_part_func*)&lcd_bitmap_transparent_part, |
152 | #endif | 71 | #endif |
153 | #if LCD_DEPTH > 1 | 72 | #if LCD_DEPTH > 1 |
154 | #if defined(HAVE_LCD_COLOR) && defined(LCD_REMOTE_DEPTH) && LCD_REMOTE_DEPTH > 1 | 73 | #if defined(HAVE_LCD_COLOR) && defined(LCD_REMOTE_DEPTH) && LCD_REMOTE_DEPTH > 1 |
155 | screen->color_to_native=&lcd_color_to_native; | 74 | .color_to_native=&lcd_color_to_native, |
156 | #endif | 75 | #endif |
157 | screen->get_background=&lcd_get_background; | 76 | .get_background=&lcd_get_background, |
158 | screen->get_foreground=&lcd_get_foreground; | 77 | .get_foreground=&lcd_get_foreground, |
159 | screen->set_background=&lcd_set_background; | 78 | .set_background=&lcd_set_background, |
160 | screen->set_foreground=&lcd_set_foreground; | 79 | .set_foreground=&lcd_set_foreground, |
161 | #endif /* LCD_DEPTH > 1 */ | 80 | #endif /* LCD_DEPTH > 1 */ |
162 | screen->update_rect=&lcd_update_rect; | 81 | .update_rect=&lcd_update_rect, |
163 | screen->fillrect=&lcd_fillrect; | 82 | .fillrect=&lcd_fillrect, |
164 | screen->drawrect=&lcd_drawrect; | 83 | .drawrect=&lcd_drawrect, |
165 | screen->drawpixel=&lcd_drawpixel; | 84 | .drawpixel=&lcd_drawpixel, |
166 | screen->drawline=&lcd_drawline; | 85 | .drawline=&lcd_drawline, |
167 | screen->vline=&lcd_vline; | 86 | .vline=&lcd_vline, |
168 | screen->hline=&lcd_hline; | 87 | .hline=&lcd_hline, |
169 | screen->scroll_step=&lcd_scroll_step; | 88 | .scroll_step=&lcd_scroll_step, |
170 | screen->invertscroll=&lcd_invertscroll; | 89 | .invertscroll=&lcd_invertscroll, |
171 | screen->puts_style_offset=&lcd_puts_style_offset; | 90 | .puts_style_offset=&lcd_puts_style_offset, |
172 | screen->puts_scroll_style=&lcd_puts_scroll_style; | 91 | .puts_scroll_style=&lcd_puts_scroll_style, |
173 | screen->puts_scroll_style_offset=&lcd_puts_scroll_style_offset; | 92 | .puts_scroll_style_offset=&lcd_puts_scroll_style_offset, |
174 | #endif /* HAVE_LCD_BITMAP */ | 93 | #endif /* HAVE_LCD_BITMAP */ |
175 | 94 | ||
176 | #ifdef HAVE_LCD_CHARCELLS | 95 | #ifdef HAVE_LCD_CHARCELLS |
177 | screen->double_height=&lcd_double_height; | 96 | .double_height=&lcd_double_height, |
178 | screen->putc=&lcd_putc; | 97 | .putc=&lcd_putc, |
179 | screen->get_locked_pattern=&lcd_get_locked_pattern; | 98 | .get_locked_pattern=&lcd_get_locked_pattern, |
180 | screen->define_pattern=&lcd_define_pattern; | 99 | .define_pattern=&lcd_define_pattern, |
181 | screen->unlock_pattern=&lcd_unlock_pattern; | 100 | .unlock_pattern=&lcd_unlock_pattern, |
182 | screen->icon=&lcd_icon; | 101 | .icon=&lcd_icon, |
183 | #endif /* HAVE_LCD_CHARCELLS */ | 102 | #endif /* HAVE_LCD_CHARCELLS */ |
184 | 103 | ||
185 | screen->init=&lcd_init; | 104 | .putsxy=&lcd_putsxy, |
186 | screen->putsxy=&lcd_putsxy; | 105 | .puts=&lcd_puts, |
187 | screen->puts=&lcd_puts; | 106 | .puts_offset=&lcd_puts_offset, |
188 | screen->puts_offset=&lcd_puts_offset; | 107 | .puts_scroll=&lcd_puts_scroll, |
189 | screen->puts_scroll=&lcd_puts_scroll; | 108 | .puts_scroll_offset=&lcd_puts_scroll_offset, |
190 | screen->puts_scroll_offset=&lcd_puts_scroll_offset; | 109 | .scroll_speed=&lcd_scroll_speed, |
191 | screen->scroll_speed=&lcd_scroll_speed; | 110 | .scroll_delay=&lcd_scroll_delay, |
192 | screen->scroll_delay=&lcd_scroll_delay; | 111 | .stop_scroll=&lcd_stop_scroll, |
193 | screen->stop_scroll=&lcd_stop_scroll; | 112 | .clear_display=&lcd_clear_display, |
194 | screen->clear_display=&lcd_clear_display; | 113 | .update=&lcd_update, |
195 | screen->update=&lcd_update; | 114 | .backlight_on=&backlight_on, |
196 | screen->backlight_on=&backlight_on; | 115 | .backlight_off=&backlight_off, |
197 | screen->backlight_off=&backlight_off; | 116 | .is_backlight_on=&is_backlight_on, |
198 | screen->is_backlight_on=&is_backlight_on; | 117 | .backlight_set_timeout=&backlight_set_timeout |
199 | screen->backlight_set_timeout=&backlight_set_timeout; | ||
200 | break; | ||
201 | } | ||
202 | screen->screen_type=screen_type; | ||
203 | #ifdef HAS_BUTTONBAR | 118 | #ifdef HAS_BUTTONBAR |
204 | screen->has_buttonbar=false; | 119 | ,.has_buttonbar=false |
205 | #endif | 120 | #endif |
206 | gui_textarea_update_nblines(screen); | 121 | } |
207 | } | 122 | #ifdef HAVE_REMOTE_LCD |
123 | ,{ | ||
124 | .screen_type=SCREEN_REMOTE, | ||
125 | .width=LCD_REMOTE_WIDTH, | ||
126 | .height=LCD_REMOTE_HEIGHT, | ||
127 | .depth=LCD_REMOTE_DEPTH, | ||
128 | .is_color=false,/* No color remotes yet */ | ||
129 | .pixel_format=LCD_REMOTE_PIXELFORMAT, | ||
130 | .has_disk_led=false, | ||
131 | .setmargins=&lcd_remote_setmargins, | ||
132 | .getymargin=&lcd_remote_getymargin, | ||
133 | .getxmargin=&lcd_remote_getxmargin, | ||
134 | .getstringsize=&lcd_remote_getstringsize, | ||
135 | #if 1 /* all remote LCDs are bitmapped so far */ | ||
136 | .setfont=&lcd_remote_setfont, | ||
137 | .mono_bitmap=&lcd_remote_mono_bitmap, | ||
138 | .mono_bitmap_part=&lcd_remote_mono_bitmap_part, | ||
139 | .bitmap=(screen_bitmap_func*)&lcd_remote_bitmap, | ||
140 | .bitmap_part=(screen_bitmap_part_func*)&lcd_remote_bitmap_part, | ||
141 | .set_drawmode=&lcd_remote_set_drawmode, | ||
142 | #if LCD_REMOTE_DEPTH <= 2 | ||
143 | /* No transparency yet for grayscale and mono lcd */ | ||
144 | .transparent_bitmap=(screen_bitmap_func*)&lcd_remote_bitmap, | ||
145 | .transparent_bitmap_part=(screen_bitmap_part_func*)&lcd_remote_bitmap_part, | ||
146 | /* No colour remotes yet */ | ||
147 | #endif | ||
148 | #if LCD_REMOTE_DEPTH > 1 | ||
149 | #if defined(HAVE_LCD_COLOR) | ||
150 | .color_to_native=&lcd_remote_color_to_native, | ||
151 | #endif | ||
152 | .get_background=&lcd_remote_get_background, | ||
153 | .get_foreground=&lcd_remote_get_foreground, | ||
154 | .set_background=&lcd_remote_set_background, | ||
155 | .set_foreground=&lcd_remote_set_foreground, | ||
156 | #endif /* LCD_REMOTE_DEPTH > 1 */ | ||
157 | .update_rect=&lcd_remote_update_rect, | ||
158 | .fillrect=&lcd_remote_fillrect, | ||
159 | .drawrect=&lcd_remote_drawrect, | ||
160 | .drawpixel=&lcd_remote_drawpixel, | ||
161 | .drawline=&lcd_remote_drawline, | ||
162 | .vline=&lcd_remote_vline, | ||
163 | .hline=&lcd_remote_hline, | ||
164 | .scroll_step=&lcd_remote_scroll_step, | ||
165 | .invertscroll=&lcd_remote_invertscroll, | ||
166 | .puts_style_offset=&lcd_remote_puts_style_offset, | ||
167 | .puts_scroll_style=&lcd_remote_puts_scroll_style, | ||
168 | .puts_scroll_style_offset=&lcd_remote_puts_scroll_style_offset, | ||
169 | #endif /* 1 */ | ||
170 | |||
171 | #if 0 /* no charcell remote LCDs so far */ | ||
172 | .double_height=&lcd_remote_double_height, | ||
173 | .putc=&lcd_remote_putc, | ||
174 | .get_locked_pattern=&lcd_remote_get_locked_pattern, | ||
175 | .define_pattern=&lcd_remote_define_pattern, | ||
176 | .icon=&lcd_remote_icon, | ||
177 | #endif /* 0 */ | ||
178 | .putsxy=&lcd_remote_putsxy, | ||
179 | .puts=&lcd_remote_puts, | ||
180 | .puts_offset=&lcd_remote_puts_offset, | ||
181 | .puts_scroll=&lcd_remote_puts_scroll, | ||
182 | .puts_scroll_offset=&lcd_remote_puts_scroll_offset, | ||
183 | .scroll_speed=&lcd_remote_scroll_speed, | ||
184 | .scroll_delay=&lcd_remote_scroll_delay, | ||
185 | .stop_scroll=&lcd_remote_stop_scroll, | ||
186 | .clear_display=&lcd_remote_clear_display, | ||
187 | .update=&lcd_remote_update, | ||
188 | .backlight_on=&remote_backlight_on, | ||
189 | .backlight_off=&remote_backlight_off, | ||
190 | .is_backlight_on=&is_remote_backlight_on, | ||
191 | .backlight_set_timeout=&remote_backlight_set_timeout | ||
192 | } | ||
193 | #endif /* HAVE_REMOTE_LCD */ | ||
194 | }; | ||
208 | 195 | ||
209 | #ifdef HAVE_LCD_BITMAP | 196 | #ifdef HAVE_LCD_BITMAP |
210 | void screen_clear_area(struct screen * display, int xstart, int ystart, | 197 | void screen_clear_area(struct screen * display, int xstart, int ystart, |
@@ -220,5 +207,10 @@ void screen_access_init(void) | |||
220 | { | 207 | { |
221 | int i; | 208 | int i; |
222 | FOR_NB_SCREENS(i) | 209 | FOR_NB_SCREENS(i) |
223 | screen_init(&screens[i], i); | 210 | { |
211 | #ifdef HAVE_LCD_BITMAP | ||
212 | ((struct screen*)&screens[i])->setfont(FONT_UI); | ||
213 | #endif | ||
214 | gui_textarea_update_nblines(&screens[i]); | ||
215 | } | ||
224 | } | 216 | } |
diff --git a/apps/screen_access.h b/apps/screen_access.h index 822aab4a88..05a53d5d0f 100644 --- a/apps/screen_access.h +++ b/apps/screen_access.h | |||
@@ -51,18 +51,20 @@ typedef void screen_bitmap_part_func(const void *src, int src_x, int src_y, | |||
51 | typedef void screen_bitmap_func(const void *src, int x, int y, int width, | 51 | typedef void screen_bitmap_func(const void *src, int x, int y, int width, |
52 | int height); | 52 | int height); |
53 | 53 | ||
54 | /* if this struct is changed the plugin api may break so bump the api | ||
55 | versions in plugin.h */ | ||
54 | struct screen | 56 | struct screen |
55 | { | 57 | { |
56 | int width, height; | ||
57 | int nb_lines; | ||
58 | enum screen_type screen_type; | 58 | enum screen_type screen_type; |
59 | int width, height; | ||
59 | int depth; | 60 | int depth; |
60 | bool is_color; | 61 | int nb_lines; |
61 | #ifdef HAVE_LCD_BITMAP | 62 | #ifdef HAVE_LCD_BITMAP |
62 | int pixel_format; | 63 | int pixel_format; |
63 | #endif | 64 | #endif |
64 | int char_width; | 65 | int char_width; |
65 | int char_height; | 66 | int char_height; |
67 | bool is_color; | ||
66 | #if (CONFIG_LED == LED_VIRTUAL) || defined(HAVE_REMOTE_LCD) | 68 | #if (CONFIG_LED == LED_VIRTUAL) || defined(HAVE_REMOTE_LCD) |
67 | bool has_disk_led; | 69 | bool has_disk_led; |
68 | #endif | 70 | #endif |
@@ -72,7 +74,6 @@ struct screen | |||
72 | void (*setmargins)(int x, int y); | 74 | void (*setmargins)(int x, int y); |
73 | int (*getxmargin)(void); | 75 | int (*getxmargin)(void); |
74 | int (*getymargin)(void); | 76 | int (*getymargin)(void); |
75 | |||
76 | int (*getstringsize)(const unsigned char *str, int *w, int *h); | 77 | int (*getstringsize)(const unsigned char *str, int *w, int *h); |
77 | #if defined(HAVE_LCD_BITMAP) || defined(HAVE_REMOTE_LCD) /* always bitmap */ | 78 | #if defined(HAVE_LCD_BITMAP) || defined(HAVE_REMOTE_LCD) /* always bitmap */ |
78 | void (*setfont)(int newfont); | 79 | void (*setfont)(int newfont); |
@@ -124,7 +125,6 @@ struct screen | |||
124 | void (*define_pattern)(unsigned long ucs, const char *pattern); | 125 | void (*define_pattern)(unsigned long ucs, const char *pattern); |
125 | void (*unlock_pattern)(unsigned long ucs); | 126 | void (*unlock_pattern)(unsigned long ucs); |
126 | #endif | 127 | #endif |
127 | void (*init)(void); | ||
128 | void (*putsxy)(int x, int y, const unsigned char *str); | 128 | void (*putsxy)(int x, int y, const unsigned char *str); |
129 | void (*puts)(int x, int y, const unsigned char *str); | 129 | void (*puts)(int x, int y, const unsigned char *str); |
130 | void (*puts_offset)(int x, int y, const unsigned char *str, int offset); | 130 | void (*puts_offset)(int x, int y, const unsigned char *str, int offset); |
@@ -142,13 +142,6 @@ struct screen | |||
142 | void (*backlight_set_timeout)(int index); | 142 | void (*backlight_set_timeout)(int index); |
143 | }; | 143 | }; |
144 | 144 | ||
145 | /* | ||
146 | * Initializes the given screen structure for a given display | ||
147 | * - screen : the screen structure | ||
148 | * - display_type : currently 2 possibles values : MAIN or REMOTE | ||
149 | */ | ||
150 | extern void screen_init(struct screen * screen, enum screen_type screen_type); | ||
151 | |||
152 | #ifdef HAS_BUTTONBAR | 145 | #ifdef HAS_BUTTONBAR |
153 | /* | 146 | /* |
154 | * Sets if the given screen has a buttonbar or not | 147 | * Sets if the given screen has a buttonbar or not |