X5 remote LCD drawing. This will break target linking atm - lcd_remote_update[_rect]() are not yet implemented.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10347 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jens Arnold 2006-07-28 07:35:45 +00:00
parent cb36fec392
commit 05ddd9a44e
16 changed files with 1182 additions and 38 deletions

View file

@ -6,7 +6,7 @@ lcd-bitmap.c
lcd-charcell.c
#endif
#ifdef HAVE_REMOTE_LCD
lcd-remote.c
lcd-remote-bitmap.c
#endif
lcd-sdl.c
sound.c

View file

@ -19,7 +19,7 @@
#include "uisdl.h"
#include "lcd-sdl.h"
#include "lcd-remote.h"
#include "lcd-remote-bitmap.h"
SDL_Surface *remote_surface;
@ -27,10 +27,15 @@ SDL_Color remote_color_zero = {UI_REMOTE_BGCOLOR, 0};
SDL_Color remote_backlight_color_zero = {UI_REMOTE_BGCOLORLIGHT, 0};
SDL_Color remote_color_max = {0, 0, 0, 0};
extern unsigned char lcd_remote_framebuffer[LCD_REMOTE_HEIGHT/8][LCD_REMOTE_WIDTH];
static unsigned long get_lcd_remote_pixel(int x, int y) {
return ((lcd_remote_framebuffer[y/8][x] >> (y & 7)) & 1);
#if LCD_REMOTE_DEPTH == 1
return (lcd_remote_framebuffer[y/8][x] >> (y & 7)) & 1;
#elif LCD_REMOTE_DEPTH == 2
#if LCD_REMOTE_PIXELFORMAT == VERTICAL_INTERLEAVED
unsigned bits = (lcd_remote_framebuffer[y/8][x] >> (y & 7)) & 0x0101;
return (bits | (bits >> 7)) & 3;
#endif
#endif
}
void lcd_remote_update (void)

View file

@ -21,6 +21,7 @@
#define __LCDREMOTE_H__
#include "lcd.h"
#include "lcd-remote.h"
#include "SDL.h"
void sim_lcd_remote_init(void);

View file

@ -31,7 +31,7 @@
#include "lcd-charcell.h"
#endif
#ifdef HAVE_REMOTE_LCD
#include "lcd-remote.h"
#include "lcd-remote-bitmap.h"
#endif
#include "thread-sdl.h"
#include "SDL_mutex.h"

View file

@ -176,22 +176,18 @@
#elif defined(IAUDIO_X5)
#define UI_TITLE "iAudio X5"
#define UI_WIDTH 300 /* width of GUI window */
#define UI_HEIGHT 462 /* height of GUI window */
#define UI_LCD_BGCOLOR 90, 145, 90 /* bkgnd color of LCD (no backlight) */
#define UI_LCD_BGCOLORLIGHT 230, 160, 60 /* bkgnd color of LCD (backlight) */
#define UI_LCD_BLACK 0, 0, 0 /* black */
#define UI_HEIGHT 558 /* height of GUI window */
/* high-colour */
#define UI_LCD_POSX 55 /* x position of lcd */
#define UI_LCD_POSY 61 /* y position of lcd (74 for real aspect) */
#define UI_LCD_WIDTH LCD_WIDTH /* * 1.5 */
#define UI_LCD_HEIGHT LCD_HEIGHT /* * 1.5 */
#define UI_REMOTE_POSX 12 /* x position of remote lcd */
#define UI_REMOTE_POSY 478 /* y position of remote lcd */
#define UI_REMOTE_WIDTH 128
#define UI_REMOTE_HEIGHT 64
#define UI_REMOTE_BGCOLORLIGHT 250, 180, 130 /* bkgnd of remote lcd (bklight) */
#define UI_REMOTE_BGCOLOR 90, 145, 90 /* bkgnd of remote lcd (no bklight) */
#define UI_REMOTE_BGCOLORLIGHT 130, 180, 250 /* bkgnd of remote lcd (bklight) */
#define UI_REMOTE_POSX 12 /* x position of remote lcd */
#define UI_REMOTE_POSY 462 /* y position of remote lcd */
#define UI_REMOTE_WIDTH 128
#define UI_REMOTE_HEIGHT 96
#elif defined(GIGABEAT_F)
#define UI_TITLE "Toshiba Gigabeat"