Simulate backlight for colour targets. Implements the idea from FS #9884, but uses...
[kugel-rb.git] / uisimulator / sdl / uisdl.h
blob6cb382ce8bf29ff776cd20f0426966ee6f696c8c
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2006 Dan Everton
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 #ifndef __UISDL_H__
23 #define __UISDL_H__
25 #include <stdbool.h>
26 #include <SDL.h>
28 /* colour definitions are R, G, B */
30 #if defined(ARCHOS_RECORDER)
31 #define UI_TITLE "Jukebox Recorder"
32 #define UI_WIDTH 270 /* width of GUI window */
33 #define UI_HEIGHT 406 /* height of GUI window */
34 #define UI_LCD_POSX 80 /* x position of lcd */
35 #define UI_LCD_POSY 104 /* y position of lcd */
37 #elif defined(ARCHOS_PLAYER)
38 #define UI_TITLE "Jukebox Player"
39 #define UI_WIDTH 284 /* width of GUI window */
40 #define UI_HEIGHT 420 /* height of GUI window */
41 #define UI_LCD_POSX 75 /* x position of lcd */
42 #define UI_LCD_POSY 116 /* y position of lcd */
44 #elif defined(ARCHOS_FMRECORDER) || defined(ARCHOS_RECORDERV2)
45 #define UI_TITLE "Jukebox FM Recorder"
46 #define UI_WIDTH 285 /* width of GUI window */
47 #define UI_HEIGHT 414 /* height of GUI window */
48 #define UI_LCD_POSX 87 /* x position of lcd */
49 #define UI_LCD_POSY 77 /* y position of lcd */
51 #elif defined(ARCHOS_ONDIOSP) || defined(ARCHOS_ONDIOFM)
52 #define UI_TITLE "Ondio"
53 #define UI_WIDTH 155 /* width of GUI window */
54 #define UI_HEIGHT 334 /* height of GUI window */
55 #define UI_LCD_POSX 21 /* x position of lcd */
56 #define UI_LCD_POSY 82 /* y position of lcd */
58 #elif defined(IRIVER_H120) || defined(IRIVER_H100)
59 #define UI_TITLE "iriver H1x0"
60 #define UI_WIDTH 379 /* width of GUI window */
61 #define UI_HEIGHT 508 /* height of GUI window */
62 #define UI_LCD_POSX 109 /* x position of lcd */
63 #define UI_LCD_POSY 23 /* y position of lcd */
64 #define UI_REMOTE_POSX 50 /* x position of remote lcd */
65 #define UI_REMOTE_POSY 403 /* y position of remote lcd */
67 #elif defined(IRIVER_H300)
68 #define UI_TITLE "iriver H300"
69 #define UI_WIDTH 288 /* width of GUI window */
70 #define UI_HEIGHT 581 /* height of GUI window */
71 #define UI_LCD_POSX 26 /* x position of lcd */
72 #define UI_LCD_POSY 36 /* y position of lcd */
73 #define UI_REMOTE_POSX 12 /* x position of remote lcd */
74 #define UI_REMOTE_POSY 478 /* y position of remote lcd */
76 #elif defined(IPOD_1G2G)
77 #define UI_TITLE "iPod 1G/2G"
78 #define UI_WIDTH 224 /* width of GUI window */
79 #define UI_HEIGHT 382 /* height of GUI window */
80 #define UI_LCD_POSX 32 /* x position of lcd */
81 #define UI_LCD_POSY 12 /* y position of lcd */
83 #elif defined(IPOD_3G)
84 #define UI_TITLE "iPod 3G"
85 #define UI_WIDTH 218 /* width of GUI window */
86 #define UI_HEIGHT 389 /* height of GUI window */
87 #define UI_LCD_POSX 29 /* x position of lcd */
88 #define UI_LCD_POSY 16 /* y position of lcd */
90 #elif defined(IPOD_4G)
91 #define UI_TITLE "iPod 4G"
92 #define UI_WIDTH 196 /* width of GUI window */
93 #define UI_HEIGHT 370 /* height of GUI window */
94 #define UI_LCD_POSX 19 /* x position of lcd */
95 #define UI_LCD_POSY 14 /* y position of lcd */
97 #elif defined(IPOD_MINI) || defined(IPOD_MINI2G)
98 #define UI_TITLE "iPod mini"
99 #define UI_WIDTH 191 /* width of GUI window */
100 #define UI_HEIGHT 365 /* height of GUI window */
101 #define UI_LCD_POSX 24 /* x position of lcd */
102 #define UI_LCD_POSY 17 /* y position of lcd */
104 #elif defined(IPOD_COLOR)
105 #define UI_TITLE "iPod Color"
106 #define UI_WIDTH 261 /* width of GUI window */
107 #define UI_HEIGHT 493 /* height of GUI window */
108 #define UI_LCD_POSX 21 /* x position of lcd */
109 #define UI_LCD_POSY 16 /* y position of lcd */
111 #elif defined(IPOD_NANO)
112 #define UI_TITLE "iPod Nano"
113 #define UI_WIDTH 199 /* width of GUI window */
114 #define UI_HEIGHT 421 /* height of GUI window */
115 #define UI_LCD_POSX 13 /* x position of lcd */
116 #define UI_LCD_POSY 14 /* y position of lcd */
118 #elif defined(IPOD_VIDEO)
119 #define UI_TITLE "iPod Video"
120 #define UI_WIDTH 350 /* width of GUI window */
121 #define UI_HEIGHT 591 /* height of GUI window */
122 #define UI_LCD_POSX 14 /* x position of lcd */
123 #define UI_LCD_POSY 12 /* y position of lcd */
125 #elif defined(IAUDIO_X5)
126 #define UI_TITLE "iAudio X5"
127 #define UI_WIDTH 300 /* width of GUI window */
128 #define UI_HEIGHT 558 /* height of GUI window */
129 #define UI_LCD_POSX 55 /* x position of lcd */
130 #define UI_LCD_POSY 61 /* y position of lcd */
131 #define UI_REMOTE_POSX 12 /* x position of remote lcd */
132 #define UI_REMOTE_POSY 462 /* y position of remote lcd */
134 #elif defined(IAUDIO_M5)
135 #define UI_TITLE "iAudio M5"
136 #define UI_WIDTH 374 /* width of GUI window */
137 #define UI_HEIGHT 650 /* height of GUI window */
138 #define UI_LCD_POSX 82 /* x position of lcd */
139 #define UI_LCD_POSY 74 /* y position of lcd */
140 #define UI_REMOTE_POSX 59 /* x position of remote lcd */
141 #define UI_REMOTE_POSY 509 /* y position of remote lcd */
143 #elif defined(IAUDIO_M3)
144 #define UI_TITLE "iAudio M3"
145 #define UI_WIDTH 397 /* width of GUI window */
146 #define UI_HEIGHT 501 /* height of GUI window */
147 #define UI_LCD_POSX 92 /* x position of lcd */
148 #define UI_LCD_POSY 348 /* y position of lcd */
150 #elif defined(GIGABEAT_F)
151 #define UI_TITLE "Toshiba Gigabeat"
152 #define UI_WIDTH 401 /* width of GUI window */
153 #define UI_HEIGHT 655 /* height of GUI window */
154 #define UI_LCD_POSX 48 /* x position of lcd */
155 #define UI_LCD_POSY 60 /* y position of lcd */
157 #elif defined(GIGABEAT_S)
158 #define UI_TITLE "Toshiba Gigabeat"
159 #define UI_WIDTH 450 /* width of GUI window */
160 #define UI_HEIGHT 688 /* height of GUI window */
161 #define UI_LCD_POSX 96 /* x position of lcd */
162 #define UI_LCD_POSY 90 /* y position of lcd */
164 #elif defined(MROBE_500)
165 #define UI_TITLE "Olympus M:Robe 500"
166 #define UI_WIDTH 401 /* width of GUI window */
167 #define UI_HEIGHT 655 /* height of GUI window */
168 #define UI_LCD_POSX 48 /* x position of lcd */
169 #define UI_LCD_POSY 60 /* y position of lcd */
170 #define UI_REMOTE_POSX 50 /* x position of remote lcd */
171 #define UI_REMOTE_POSY 403 /* y position of remote lcd */
173 #elif defined(IRIVER_H10)
174 #define UI_TITLE "iriver H10 20Gb"
175 #define UI_WIDTH 392 /* width of GUI window */
176 #define UI_HEIGHT 391 /* height of GUI window */
177 #define UI_LCD_POSX 111 /* x position of lcd */
178 #define UI_LCD_POSY 30 /* y position of lcd */
180 #elif defined(IRIVER_H10_5GB)
181 #define UI_TITLE "iriver H10 5/6Gb"
182 #define UI_WIDTH 353 /* width of GUI window */
183 #define UI_HEIGHT 460 /* height of GUI window */
184 #define UI_LCD_POSX 112 /* x position of lcd */
185 #define UI_LCD_POSY 45 /* y position of lcd */
187 #elif defined(SANSA_E200) || defined(SANSA_E200V2)
188 #ifdef SANSA_E200
189 #define UI_TITLE "Sansa e200"
190 #else
191 #define UI_TITLE "Sansa e200v2"
192 #endif
193 #define UI_WIDTH 260 /* width of GUI window */
194 #define UI_HEIGHT 502 /* height of GUI window */
195 #define UI_LCD_POSX 42 /* x position of lcd */
196 #define UI_LCD_POSY 37 /* y position of lcd */
198 #elif defined(SANSA_C200)
199 #define UI_TITLE "Sansa c200"
200 #define UI_WIDTH 350 /* width of GUI window */
201 #define UI_HEIGHT 152 /* height of GUI window */
202 #define UI_LCD_POSX 42 /* x position of lcd */
203 #define UI_LCD_POSY 35 /* y position of lcd */
205 #elif defined(IRIVER_IFP7XX)
206 #define UI_TITLE "iriver iFP7xx"
207 #define UI_WIDTH 425 /* width of GUI window */
208 #define UI_HEIGHT 183 /* height of GUI window */
209 #define UI_LCD_POSX 115 /* x position of lcd */
210 #define UI_LCD_POSY 54 /* y position of lcd */
212 #elif defined(ARCHOS_AV300)
213 #define UI_TITLE "Archos AV300"
214 /* We are temporarily using a 2bpp LCD driver and dummy bitmap */
215 #define UI_WIDTH 420 /* width of GUI window */
216 #define UI_HEIGHT 340 /* height of GUI window */
217 #define UI_LCD_POSX 50 /* x position of lcd */
218 #define UI_LCD_POSY 50 /* y position of lcd */
220 #elif defined(MROBE_100)
221 #define UI_TITLE "Olympus M:Robe 100"
222 #define UI_WIDTH 247 /* width of GUI window */
223 #define UI_HEIGHT 416 /* height of GUI window */
224 #define UI_LCD_POSX 43 /* x position of lcd */
225 #define UI_LCD_POSY 25 /* y position of lcd */
227 #elif defined(COWON_D2)
228 #define UI_TITLE "Cowon D2"
229 #define UI_WIDTH 472 /* width of GUI window */
230 #define UI_HEIGHT 368 /* height of GUI window */
231 #define UI_LCD_POSX 58 /* x position of lcd */
232 #define UI_LCD_POSY 67 /* y position of lcd */
234 #elif defined(IAUDIO_7)
235 #define UI_TITLE "iAudio7"
236 #define UI_WIDTH 494 /* width of GUI window */
237 #define UI_HEIGHT 214 /* height of GUI window */
238 #define UI_LCD_POSX 131 /* x position of lcd */
239 #define UI_LCD_POSY 38 /* y position of lcd */
241 #elif defined(CREATIVE_ZVM) || defined(CREATIVE_ZVM60GB)
242 #ifdef CREATIVE_ZVM
243 #define UI_TITLE "Creative Zen Vision:M 30GB"
244 #else
245 #define UI_TITLE "Creative Zen Vision:M 60GB"
246 #endif
247 #define UI_WIDTH 383 /* width of GUI window */
248 #define UI_HEIGHT 643 /* height of GUI window */
249 #define UI_LCD_POSX 31 /* x position of lcd */
250 #define UI_LCD_POSY 62 /* y position of lcd */
252 #elif defined(CREATIVE_ZV)
253 #define UI_TITLE "Creative Zen Vision"
254 #define UI_WIDTH 1054 /* width of GUI window */
255 #define UI_HEIGHT 643 /* height of GUI window */
256 #define UI_LCD_POSX 129 /* x position of lcd */
257 #define UI_LCD_POSY 85 /* y position of lcd */
259 #elif defined(MEIZU_M6SL)
260 #define UI_TITLE "Meizu M6"
261 #define UI_WIDTH 512 /* width of GUI window */
262 #define UI_HEIGHT 322 /* height of GUI window */
263 #define UI_LCD_POSX 39 /* x position of lcd */
264 #define UI_LCD_POSY 38 /* y position of lcd */
266 #elif defined(SANSA_FUZE)
267 #define UI_TITLE "Sansa Fuze"
268 #define UI_WIDTH 279 /* width of GUI window */
269 #define UI_HEIGHT 449 /* height of GUI window */
270 #define UI_LCD_POSX 30 /* x position of lcd */
271 #define UI_LCD_POSY 31 /* y position of lcd */
273 #elif defined(SANSA_CLIP)
274 #define UI_TITLE "Sansa Clip"
275 #define UI_WIDTH 205 /* width of GUI window */
276 #define UI_HEIGHT 325 /* height of GUI window */
277 #define UI_LCD_POSX 38 /* x position of lcd */
278 #define UI_LCD_POSY 38 /* y position of lcd */
280 #elif defined(PHILIPS_HDD1630)
281 #define UI_TITLE "Philips GoGear HDD1630"
282 #define UI_WIDTH 407 /* width of GUI window */
283 #define UI_HEIGHT 391 /* height of GUI window */
284 #define UI_LCD_POSX 143 /* x position of lcd */
285 #define UI_LCD_POSY 27 /* y position of lcd */
287 #elif defined(SANSA_M200V4)
288 #define UI_TITLE "sansa m200v4"
289 #define UI_WIDTH 350 /* width of GUI window */
290 #define UI_HEIGHT 168 /* height of GUI window */
291 #define UI_LCD_POSX 42 /* x position of lcd */
292 #define UI_LCD_POSY 55 /* y position of lcd */
295 #else
296 #error no UI defines
297 #endif
298 extern SDL_Surface *gui_surface;
299 extern bool background; /* True if the background image is enabled */
300 extern int display_zoom;
302 #endif /* #ifndef __UISDL_H__ */