From 3be6cf15742083b9786fba52d40f61e5803db840 Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Tue, 15 Nov 2005 23:37:21 +0000 Subject: [PATCH] 16bit colour support (H300) for the win32 simulator. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7898 a1c6a512-1295-4272-9138-f99709370657 --- firmware/SOURCES | 6 +- firmware/drivers/lcd-16bit.c | 6 ++ firmware/drivers/lcd-h300.c | 10 ---- firmware/drivers/lcd-ipod.c | 4 -- uisimulator/common/lcd-common.c | 2 +- uisimulator/win32/UI-h300.bmp | Bin 0 -> 334712 bytes uisimulator/win32/lcd-win32.c | 96 +++++++++++++++++++++++++++++--- uisimulator/win32/lcd-win32.h | 8 ++- uisimulator/win32/uisw32.h | 16 ++++++ 9 files changed, 119 insertions(+), 29 deletions(-) create mode 100644 uisimulator/win32/UI-h300.bmp diff --git a/firmware/SOURCES b/firmware/SOURCES index d8cd16e692..fb8ed7b6d7 100644 --- a/firmware/SOURCES +++ b/firmware/SOURCES @@ -98,6 +98,9 @@ drivers/i2c.c #if CONFIG_CODEC != SWCODEC drivers/mas.c #endif +#ifdef IRIVER_H300_SERIES +drivers/pcf50606.c +#endif #ifdef HAVE_RTC drivers/rtc.c #endif @@ -150,6 +153,3 @@ replaygain.c pcm_record.c #endif sound.c -#ifdef IRIVER_H300_SERIES -drivers/pcf50606.c -#endif diff --git a/firmware/drivers/lcd-16bit.c b/firmware/drivers/lcd-16bit.c index fb5e0ccbb8..9f698bbacd 100644 --- a/firmware/drivers/lcd-16bit.c +++ b/firmware/drivers/lcd-16bit.c @@ -63,6 +63,12 @@ static const char scroll_tick_table[16] = { 100, 80, 64, 50, 40, 32, 25, 20, 16, 12, 10, 8, 6, 5, 4, 3 }; +/* probably just a dummy */ +int lcd_default_contrast(void) +{ + return 28; +} + /* LCD init */ void lcd_init(void) { diff --git a/firmware/drivers/lcd-h300.c b/firmware/drivers/lcd-h300.c index 1e71da59a8..4edfe404b3 100644 --- a/firmware/drivers/lcd-h300.c +++ b/firmware/drivers/lcd-h300.c @@ -49,13 +49,6 @@ void lcd_write_data(const unsigned short* p_bytes, int count) /*** hardware configuration ***/ -int lcd_default_contrast(void) -{ - return 28; -} - -#ifndef SIMULATOR - void lcd_set_contrast(int val) { (void)val; @@ -84,10 +77,8 @@ void lcd_roll(int lines) (void)lines; } -#endif /* !SIMULATOR */ /* LCD init */ -#ifndef SIMULATOR void lcd_init_device(void) { /* GPO46 is LCD RESET */ @@ -216,4 +207,3 @@ void lcd_update_rect(int x, int y, int width, int height) lcd_write_data ((unsigned short *)&lcd_framebuffer[y][x], width); } } -#endif /* !SIMULATOR */ diff --git a/firmware/drivers/lcd-ipod.c b/firmware/drivers/lcd-ipod.c index 69272ccccf..f7a21044bb 100644 --- a/firmware/drivers/lcd-ipod.c +++ b/firmware/drivers/lcd-ipod.c @@ -120,10 +120,6 @@ static void lcd_cmd_data(int cmd, int data) } /*** hardware configuration ***/ -int lcd_default_contrast(void) -{ - return 28; -} void lcd_set_contrast(int val) { diff --git a/uisimulator/common/lcd-common.c b/uisimulator/common/lcd-common.c index c3f74e8447..a9fc294b1a 100644 --- a/uisimulator/common/lcd-common.c +++ b/uisimulator/common/lcd-common.c @@ -30,7 +30,7 @@ #include "lcd-x11.h" #endif -void lcd_blit(const unsigned char* p_data, int x, int y, int width, int height, +void lcd_blit(const fb_data* p_data, int x, int y, int width, int height, int stride) { (void)p_data; diff --git a/uisimulator/win32/UI-h300.bmp b/uisimulator/win32/UI-h300.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2af6070884fef0ec84814db53faae666e03494b2 GIT binary patch literal 334712 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 z'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

Tuly4mRVVDi!O&y-T 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%0D&ekD;r)33rw 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 Jmd`2f{{UwHa6te7 literal 0 HcmV?d00001 diff --git a/uisimulator/win32/lcd-win32.c b/uisimulator/win32/lcd-win32.c index 40f74ee2d6..49c490e1f4 100644 --- a/uisimulator/win32/lcd-win32.c +++ b/uisimulator/win32/lcd-win32.c @@ -23,8 +23,72 @@ #include "lcd.h" #include "lcd-playersim.h" -char bitmap[LCD_HEIGHT][LCD_WIDTH]; /* the ui display */ +#if LCD_DEPTH >= 16 +unsigned long bitmap[LCD_HEIGHT][LCD_WIDTH]; /* the ui display */ +BITMAPINFO256 bmi = +{ + {sizeof (BITMAPINFOHEADER), + LCD_WIDTH, -LCD_HEIGHT, 1, 32, + BI_RGB, 0, 0, 0, 216, 216, + }, /* colour lookup table for 8bit displays (standard web palette) */ + {{0x00,0x00,0x00,0}, {0x33,0x00,0x00,0}, {0x66,0x00,0x00,0}, {0x99,0x00,0x00,0}, + {0xcc,0x00,0x00,0}, {0xff,0x00,0x00,0}, {0x00,0x33,0x00,0}, {0x33,0x33,0x00,0}, + {0x66,0x33,0x00,0}, {0x99,0x33,0x00,0}, {0xcc,0x33,0x00,0}, {0xff,0x33,0x00,0}, + {0x00,0x66,0x00,0}, {0x33,0x66,0x00,0}, {0x66,0x66,0x00,0}, {0x99,0x66,0x00,0}, + {0xcc,0x66,0x00,0}, {0xff,0x66,0x00,0}, {0x00,0x99,0x00,0}, {0x33,0x99,0x00,0}, + {0x66,0x99,0x00,0}, {0x99,0x99,0x00,0}, {0xcc,0x99,0x00,0}, {0xff,0x99,0x00,0}, + {0x00,0xcc,0x00,0}, {0x33,0xcc,0x00,0}, {0x66,0xcc,0x00,0}, {0x99,0xcc,0x00,0}, + {0xcc,0xcc,0x00,0}, {0xff,0xcc,0x00,0}, {0x00,0xff,0x00,0}, {0x33,0xff,0x00,0}, + {0x66,0xff,0x00,0}, {0x99,0xff,0x00,0}, {0xcc,0xff,0x00,0}, {0xff,0xff,0x00,0}, + {0x00,0x00,0x33,0}, {0x33,0x00,0x33,0}, {0x66,0x00,0x33,0}, {0x99,0x00,0x33,0}, + {0xcc,0x00,0x33,0}, {0xff,0x00,0x33,0}, {0x00,0x33,0x33,0}, {0x33,0x33,0x33,0}, + {0x66,0x33,0x33,0}, {0x99,0x33,0x33,0}, {0xcc,0x33,0x33,0}, {0xff,0x33,0x33,0}, + {0x00,0x66,0x33,0}, {0x33,0x66,0x33,0}, {0x66,0x66,0x33,0}, {0x99,0x66,0x33,0}, + {0xcc,0x66,0x33,0}, {0xff,0x66,0x33,0}, {0x00,0x99,0x33,0}, {0x33,0x99,0x33,0}, + {0x66,0x99,0x33,0}, {0x99,0x99,0x33,0}, {0xcc,0x99,0x33,0}, {0xff,0x99,0x33,0}, + {0x00,0xcc,0x33,0}, {0x33,0xcc,0x33,0}, {0x66,0xcc,0x33,0}, {0x99,0xcc,0x33,0}, + {0xcc,0xcc,0x33,0}, {0xff,0xcc,0x33,0}, {0x00,0xff,0x33,0}, {0x33,0xff,0x33,0}, + {0x66,0xff,0x33,0}, {0x99,0xff,0x33,0}, {0xcc,0xff,0x33,0}, {0xff,0xff,0x33,0}, + {0x00,0x00,0x66,0}, {0x33,0x00,0x66,0}, {0x66,0x00,0x66,0}, {0x99,0x00,0x66,0}, + {0xcc,0x00,0x66,0}, {0xff,0x00,0x66,0}, {0x00,0x33,0x66,0}, {0x33,0x33,0x66,0}, + {0x66,0x33,0x66,0}, {0x99,0x33,0x66,0}, {0xcc,0x33,0x66,0}, {0xff,0x33,0x66,0}, + {0x00,0x66,0x66,0}, {0x33,0x66,0x66,0}, {0x66,0x66,0x66,0}, {0x99,0x66,0x66,0}, + {0xcc,0x66,0x66,0}, {0xff,0x66,0x66,0}, {0x00,0x99,0x66,0}, {0x33,0x99,0x66,0}, + {0x66,0x99,0x66,0}, {0x99,0x99,0x66,0}, {0xcc,0x99,0x66,0}, {0xff,0x99,0x66,0}, + {0x00,0xcc,0x66,0}, {0x33,0xcc,0x66,0}, {0x66,0xcc,0x66,0}, {0x99,0xcc,0x66,0}, + {0xcc,0xcc,0x66,0}, {0xff,0xcc,0x66,0}, {0x00,0xff,0x66,0}, {0x33,0xff,0x66,0}, + {0x66,0xff,0x66,0}, {0x99,0xff,0x66,0}, {0xcc,0xff,0x66,0}, {0xff,0xff,0x66,0}, + {0x00,0x00,0x99,0}, {0x33,0x00,0x99,0}, {0x66,0x00,0x99,0}, {0x99,0x00,0x99,0}, + {0xcc,0x00,0x99,0}, {0xff,0x00,0x99,0}, {0x00,0x33,0x99,0}, {0x33,0x33,0x99,0}, + {0x66,0x33,0x99,0}, {0x99,0x33,0x99,0}, {0xcc,0x33,0x99,0}, {0xff,0x33,0x99,0}, + {0x00,0x66,0x99,0}, {0x33,0x66,0x99,0}, {0x66,0x66,0x99,0}, {0x99,0x66,0x99,0}, + {0xcc,0x66,0x99,0}, {0xff,0x66,0x99,0}, {0x00,0x99,0x99,0}, {0x33,0x99,0x99,0}, + {0x66,0x99,0x99,0}, {0x99,0x99,0x99,0}, {0xcc,0x99,0x99,0}, {0xff,0x99,0x99,0}, + {0x00,0xcc,0x99,0}, {0x33,0xcc,0x99,0}, {0x66,0xcc,0x99,0}, {0x99,0xcc,0x99,0}, + {0xcc,0xcc,0x99,0}, {0xff,0xcc,0x99,0}, {0x00,0xff,0x99,0}, {0x33,0xff,0x99,0}, + {0x66,0xff,0x99,0}, {0x99,0xff,0x99,0}, {0xcc,0xff,0x99,0}, {0xff,0xff,0x99,0}, + {0x00,0x00,0xcc,0}, {0x33,0x00,0xcc,0}, {0x66,0x00,0xcc,0}, {0x99,0x00,0xcc,0}, + {0xcc,0x00,0xcc,0}, {0xff,0x00,0xcc,0}, {0x00,0x33,0xcc,0}, {0x33,0x33,0xcc,0}, + {0x66,0x33,0xcc,0}, {0x99,0x33,0xcc,0}, {0xcc,0x33,0xcc,0}, {0xff,0x33,0xcc,0}, + {0x00,0x66,0xcc,0}, {0x33,0x66,0xcc,0}, {0x66,0x66,0xcc,0}, {0x99,0x66,0xcc,0}, + {0xcc,0x66,0xcc,0}, {0xff,0x66,0xcc,0}, {0x00,0x99,0xcc,0}, {0x33,0x99,0xcc,0}, + {0x66,0x99,0xcc,0}, {0x99,0x99,0xcc,0}, {0xcc,0x99,0xcc,0}, {0xff,0x99,0xcc,0}, + {0x00,0xcc,0xcc,0}, {0x33,0xcc,0xcc,0}, {0x66,0xcc,0xcc,0}, {0x99,0xcc,0xcc,0}, + {0xcc,0xcc,0xcc,0}, {0xff,0xcc,0xcc,0}, {0x00,0xff,0xcc,0}, {0x33,0xff,0xcc,0}, + {0x66,0xff,0xcc,0}, {0x99,0xff,0xcc,0}, {0xcc,0xff,0xcc,0}, {0xff,0xff,0xcc,0}, + {0x00,0x00,0xff,0}, {0x33,0x00,0xff,0}, {0x66,0x00,0xff,0}, {0x99,0x00,0xff,0}, + {0xcc,0x00,0xff,0}, {0xff,0x00,0xff,0}, {0x00,0x33,0xff,0}, {0x33,0x33,0xff,0}, + {0x66,0x33,0xff,0}, {0x99,0x33,0xff,0}, {0xcc,0x33,0xff,0}, {0xff,0x33,0xff,0}, + {0x00,0x66,0xff,0}, {0x33,0x66,0xff,0}, {0x66,0x66,0xff,0}, {0x99,0x66,0xff,0}, + {0xcc,0x66,0xff,0}, {0xff,0x66,0xff,0}, {0x00,0x99,0xff,0}, {0x33,0x99,0xff,0}, + {0x66,0x99,0xff,0}, {0x99,0x99,0xff,0}, {0xcc,0x99,0xff,0}, {0xff,0x99,0xff,0}, + {0x00,0xcc,0xff,0}, {0x33,0xcc,0xff,0}, {0x66,0xcc,0xff,0}, {0x99,0xcc,0xff,0}, + {0xcc,0xcc,0xff,0}, {0xff,0xcc,0xff,0}, {0x00,0xff,0xff,0}, {0x33,0xff,0xff,0}, + {0x66,0xff,0xff,0}, {0x99,0xff,0xff,0}, {0xcc,0xff,0xff,0}, {0xff,0xff,0xff,0}} +}; /* bitmap information */ +#else +unsigned char bitmap[LCD_HEIGHT][LCD_WIDTH]; /* the ui display */ RGBQUAD color_zero = {UI_LCD_BGCOLORLIGHT, 0}; RGBQUAD color_max = {0, 0, 0, 0}; @@ -36,12 +100,12 @@ BITMAPINFO256 bmi = }, {} /* colour lookup table gets filled later */ }; /* bitmap information */ +#endif #ifdef HAVE_LCD_BITMAP #ifdef HAVE_REMOTE_LCD -char remote_bitmap[LCD_REMOTE_HEIGHT][LCD_REMOTE_WIDTH]; - +unsigned char remote_bitmap[LCD_REMOTE_HEIGHT][LCD_REMOTE_WIDTH]; RGBQUAD remote_color_zero = {UI_REMOTE_BGCOLORLIGHT, 0}; RGBQUAD remote_color_max = {0, 0, 0, 0}; @@ -55,12 +119,6 @@ BITMAPINFO256 remote_bmi = }; #endif -#if LCD_DEPTH == 1 -extern unsigned char lcd_framebuffer[LCD_HEIGHT/8][LCD_WIDTH]; /* the display */ -#elif LCD_DEPTH == 2 -extern unsigned char lcd_framebuffer[LCD_HEIGHT/4][LCD_WIDTH]; /* the display */ -#endif - void lcd_update(void) { int x, y; @@ -71,11 +129,19 @@ void lcd_update(void) for (x = 0; x < LCD_WIDTH; x++) for (y = 0; y < LCD_HEIGHT; y++) + { #if LCD_DEPTH == 1 bitmap[y][x] = ((lcd_framebuffer[y/8][x] >> (y & 7)) & 1); #elif LCD_DEPTH == 2 bitmap[y][x] = ((lcd_framebuffer[y/4][x] >> (2 * (y & 3))) & 3); +#elif LCD_DEPTH == 16 + fb_data pixel = lcd_framebuffer[y][x]; + unsigned red = ((pixel >> 8) & 0xf8) | (pixel >> 13); + unsigned green = ((pixel >> 3) & 0xfc) | ((pixel >> 9) & 0x03); + unsigned blue = ((pixel << 3) & 0xf8) | ((pixel >> 2) & 0x07); + bitmap[y][x] = (red << 16) | (green << 8) | blue; #endif + } /* Invalidate only the window part that actually did change */ GetClientRect (hGUIWnd, &r); @@ -106,11 +172,19 @@ void lcd_update_rect(int x_start, int y_start, for (x = x_start; x < xmax; x++) for (y = y_start; y < ymax; y++) + { #if LCD_DEPTH == 1 bitmap[y][x] = ((lcd_framebuffer[y/8][x] >> (y & 7)) & 1); #elif LCD_DEPTH == 2 bitmap[y][x] = ((lcd_framebuffer[y/4][x] >> (2 * (y & 3))) & 3); +#elif LCD_DEPTH == 16 + fb_data pixel = lcd_framebuffer[y][x]; + unsigned red = ((pixel >> 8) & 0xf8) | (pixel >> 13); + unsigned green = ((pixel >> 3) & 0xfc) | ((pixel >> 9) & 0x03); + unsigned blue = ((pixel << 3) & 0xf8) | ((pixel >> 2) & 0x07); + bitmap[y][x] = (red << 16) | (green << 8) | blue; #endif + } /* Invalidate only the window part that actually did change */ GetClientRect (hGUIWnd, &r); @@ -272,6 +346,7 @@ void lcd_backlight (bool on) } #endif +#if LCD_DEPTH <= 8 /* set a range of bitmap indices to a gradient from startcolour to endcolour */ void lcdcolors(int index, int count, RGBQUAD *start, RGBQUAD *end) { @@ -291,6 +366,7 @@ void lcdcolors(int index, int count, RGBQUAD *start, RGBQUAD *end) + (end->rgbBlue - start->rgbBlue) * i / count; } } +#endif #ifdef HAVE_REMOTE_LCD /* set a range of bitmap indices to a gradient from startcolour to endcolour */ @@ -317,7 +393,9 @@ void lcdremotecolors(int index, int count, RGBQUAD *start, RGBQUAD *end) /* initialise simulator lcd driver */ void simlcdinit(void) { +#if LCD_DEPTH <= 8 lcdcolors(0, (1<= 16 +extern unsigned long bitmap[LCD_HEIGHT][LCD_WIDTH]; // the ui display +#else +extern unsigned char bitmap[LCD_HEIGHT][LCD_WIDTH]; // the ui display +#endif extern BITMAPINFO256 bmi; // bitmap information #ifdef HAVE_REMOTE_LCD -extern char remote_bitmap[LCD_REMOTE_HEIGHT][LCD_REMOTE_WIDTH]; +extern unsigned char remote_bitmap[LCD_REMOTE_HEIGHT][LCD_REMOTE_WIDTH]; extern BITMAPINFO256 remote_bmi; // bitmap information #endif diff --git a/uisimulator/win32/uisw32.h b/uisimulator/win32/uisw32.h index c4ce761c80..7cbaa6ce47 100644 --- a/uisimulator/win32/uisw32.h +++ b/uisimulator/win32/uisw32.h @@ -93,6 +93,22 @@ typedef unsigned short wchar_t; #define UI_REMOTE_WIDTH 128 #define UI_REMOTE_HEIGHT 64 +#elif defined(IRIVER_H300_SERIES) +#define UI_TITLE "iriver H300" +#define UI_WIDTH 288 // width of GUI window +#define UI_HEIGHT 581 // height of GUI window +/* high-colour */ +#define UI_LCD_POSX 26 // x position of lcd +#define UI_LCD_POSY 36 // y position of lcd +#define UI_LCD_WIDTH 220 +#define UI_LCD_HEIGHT 176 +#define UI_REMOTE_BGCOLOR 90, 145, 90 // bkgnd of remote lcd (no bklight) +#define UI_REMOTE_BGCOLORLIGHT 250, 180, 130 // bkgnd of remote lcd (bklight) +#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 + #elif defined(ARCHOS_GMINI120) #define UI_TITLE "Gmini 120" #define UI_WIDTH 370 // width of GUI window