summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2002-08-13 11:10:11 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2002-08-13 11:10:11 +0000
commit638184f1a28f6e2fab225d9630baccdcff6dbf16 (patch)
treec590188fd3cc0fcb2d7e265176f19c5bf8ccbca8 /firmware
parent8b05a002af34dddadc7cf5cc56de75216c0705c7 (diff)
downloadrockbox-638184f1a28f6e2fab225d9630baccdcff6dbf16.tar.gz
rockbox-638184f1a28f6e2fab225d9630baccdcff6dbf16.zip
Added LCD contrast setting
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1710 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/drivers/lcd.c36
-rw-r--r--firmware/drivers/lcd.h1
2 files changed, 22 insertions, 15 deletions
diff --git a/firmware/drivers/lcd.c b/firmware/drivers/lcd.c
index 81dc41fff3..b67be4e761 100644
--- a/firmware/drivers/lcd.c
+++ b/firmware/drivers/lcd.c
@@ -38,9 +38,6 @@
38 38
39#define LCDR (PBDR_ADDR+1) 39#define LCDR (PBDR_ADDR+1)
40 40
41/* PA14 : /LCD-BL --- backlight */
42#define LCD_BL 6
43
44#ifdef HAVE_LCD_CHARCELLS 41#ifdef HAVE_LCD_CHARCELLS
45 42
46#define LCD_DS 1 // PB0 = 1 --- 0001 --- LCD-DS 43#define LCD_DS 1 // PB0 = 1 --- 0001 --- LCD-DS
@@ -323,18 +320,7 @@ static void lcd_write(bool command, int byte)
323 PBDR |= LCD_CS; /* disable lcd chip select */ 320 PBDR |= LCD_CS; /* disable lcd chip select */
324} 321}
325#endif /* ASM_IMPLEMENTATION */ 322#endif /* ASM_IMPLEMENTATION */
326 323#endif /* !SIMULATOR */
327/*** BACKLIGHT ***/
328
329void lcd_backlight(bool on)
330{
331 if ( on )
332 PAIOR |= LCD_BL;
333 else
334 PAIOR &= ~LCD_BL;
335}
336
337#endif /* SIMULATOR */
338 324
339unsigned char icon_mirror[11]; 325unsigned char icon_mirror[11];
340 326
@@ -524,6 +510,26 @@ void lcd_init (void)
524} 510}
525#endif 511#endif
526 512
513#ifdef SIMULATOR
514void lcd_set_contrast(int val)
515{
516 val = val;
517}
518#else
519#ifdef HAVE_LCD_BITMAP
520void lcd_set_contrast(int val)
521{
522 lcd_write(true, LCD_CNTL_CONTRAST);
523 lcd_write(true, val);
524}
525#else
526void lcd_set_contrast(int val)
527{
528 lcd_write(true, LCD_CONTRAST_SET);
529 lcd_write(false, 31-val);
530}
531#endif
532#endif
527 533
528#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR) /* not CHARCELLS */ 534#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR) /* not CHARCELLS */
529 535
diff --git a/firmware/drivers/lcd.h b/firmware/drivers/lcd.h
index 145d858c54..2ce6339b8c 100644
--- a/firmware/drivers/lcd.h
+++ b/firmware/drivers/lcd.h
@@ -35,6 +35,7 @@ extern void lcd_puts_scroll(int x, int y, unsigned char* string );
35extern void lcd_icon(int icon, bool enable); 35extern void lcd_icon(int icon, bool enable);
36extern void lcd_stop_scroll(void); 36extern void lcd_stop_scroll(void);
37extern void lcd_scroll_speed( int speed ); 37extern void lcd_scroll_speed( int speed );
38extern void lcd_set_contrast(int val);
38 39
39#if defined(SIMULATOR) || defined(HAVE_LCD_BITMAP) 40#if defined(SIMULATOR) || defined(HAVE_LCD_BITMAP)
40extern void lcd_update(void); 41extern void lcd_update(void);