summaryrefslogtreecommitdiff
path: root/firmware/drivers
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/drivers
parent8b05a002af34dddadc7cf5cc56de75216c0705c7 (diff)
downloadrockbox-638184f1a28f6e2fab225d9630baccdcff6dbf16.zip
rockbox-638184f1a28f6e2fab225d9630baccdcff6dbf16.tar.gz
rockbox-638184f1a28f6e2fab225d9630baccdcff6dbf16.tar.bz2
rockbox-638184f1a28f6e2fab225d9630baccdcff6dbf16.tar.xz
Added LCD contrast setting
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1710 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers')
-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 81dc41f..b67be4e 100644
--- a/firmware/drivers/lcd.c
+++ b/firmware/drivers/lcd.c
@@ -38,9 +38,6 @@
#define LCDR (PBDR_ADDR+1)
-/* PA14 : /LCD-BL --- backlight */
-#define LCD_BL 6
-
#ifdef HAVE_LCD_CHARCELLS
#define LCD_DS 1 // PB0 = 1 --- 0001 --- LCD-DS
@@ -323,18 +320,7 @@ static void lcd_write(bool command, int byte)
PBDR |= LCD_CS; /* disable lcd chip select */
}
#endif /* ASM_IMPLEMENTATION */
-
-/*** BACKLIGHT ***/
-
-void lcd_backlight(bool on)
-{
- if ( on )
- PAIOR |= LCD_BL;
- else
- PAIOR &= ~LCD_BL;
-}
-
-#endif /* SIMULATOR */
+#endif /* !SIMULATOR */
unsigned char icon_mirror[11];
@@ -524,6 +510,26 @@ void lcd_init (void)
}
#endif
+#ifdef SIMULATOR
+void lcd_set_contrast(int val)
+{
+ val = val;
+}
+#else
+#ifdef HAVE_LCD_BITMAP
+void lcd_set_contrast(int val)
+{
+ lcd_write(true, LCD_CNTL_CONTRAST);
+ lcd_write(true, val);
+}
+#else
+void lcd_set_contrast(int val)
+{
+ lcd_write(true, LCD_CONTRAST_SET);
+ lcd_write(false, 31-val);
+}
+#endif
+#endif
#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR) /* not CHARCELLS */
diff --git a/firmware/drivers/lcd.h b/firmware/drivers/lcd.h
index 145d858..2ce6339 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 );
extern void lcd_icon(int icon, bool enable);
extern void lcd_stop_scroll(void);
extern void lcd_scroll_speed( int speed );
+extern void lcd_set_contrast(int val);
#if defined(SIMULATOR) || defined(HAVE_LCD_BITMAP)
extern void lcd_update(void);