summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2006-02-09 19:47:52 +0000
committerDave Chapman <dave@dchapman.com>2006-02-09 19:47:52 +0000
commitb0ad4cfbb514087bab8739c8604d97e8c27e0545 (patch)
tree3097ac6be95a84ca7ccdce8b820c02ac2cf10b27
parentee2019d591980f44e5f7911a4382dcf855859b8f (diff)
downloadrockbox-b0ad4cfbb514087bab8739c8604d97e8c27e0545.zip
rockbox-b0ad4cfbb514087bab8739c8604d97e8c27e0545.tar.gz
rockbox-b0ad4cfbb514087bab8739c8604d97e8c27e0545.tar.bz2
rockbox-b0ad4cfbb514087bab8739c8604d97e8c27e0545.tar.xz
Implement contrast setting for iPod greyscale LCD
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8643 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/lcd-2bit-horz.c2
-rw-r--r--firmware/drivers/lcd-ipod.c6
2 files changed, 6 insertions, 2 deletions
diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c
index fd6be0b..1045ba6 100644
--- a/firmware/drivers/lcd-2bit-horz.c
+++ b/firmware/drivers/lcd-2bit-horz.c
@@ -84,7 +84,7 @@ void lcd_init(void)
int lcd_default_contrast(void)
{
- return 96;
+ return 40;
}
/*** parameter handling ***/
diff --git a/firmware/drivers/lcd-ipod.c b/firmware/drivers/lcd-ipod.c
index d37981a..d1d63b9 100644
--- a/firmware/drivers/lcd-ipod.c
+++ b/firmware/drivers/lcd-ipod.c
@@ -158,9 +158,13 @@ void lcd_update(void)
lcd_update_rect(0, 0, LCD_WIDTH, LCD_HEIGHT);
}
+/* Rockbox stores the contrast as 0..63 - we add 64 to it */
void lcd_set_contrast(int val)
{
- lcd_cmd_and_data(0x4, 0x4, val);
+ if (val < 0) val = 0;
+ else if (val > 63) val = 63;
+
+ lcd_cmd_and_data(0x4, 0x4, val + 64);
lcd_contrast = val;
}