From f48ec1f7fca7b0e12cbcbe4de3dbe21ed5a2edfa Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Fri, 11 Feb 2005 13:13:36 +0000 Subject: iRiver: Support for remote control buttons git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5909 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/button.c | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) (limited to 'firmware/drivers/button.c') diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c index 1a0aeceb06..cd4492315d 100644 --- a/firmware/drivers/button.c +++ b/firmware/drivers/button.c @@ -351,7 +351,7 @@ static int button_read(void) #if CONFIG_KEYPAD == IRIVER_H100_PAD - data = adc_scan(0); + data = adc_scan(ADC_BUTTONS); if (data < 0x80) if (data < 0x30) @@ -377,6 +377,38 @@ static int button_read(void) if (data < 0xf0) btn = BUTTON_REC; + data = adc_scan(ADC_REMOTE); + + if (data < 0x74) + if (data < 0x40) + if (data < 0x20) + if(data < 0x10) + btn = BUTTON_RC_STOP; + else + btn = BUTTON_RC_VOL_DOWN; + else + btn = BUTTON_RC_VOL; + else + if (data < 0x58) + btn = BUTTON_RC_VOL_UP; + else + btn = BUTTON_RC_BITRATE; + else + if (data < 0xb0) + if (data < 0x88) + btn = BUTTON_RC_REC; + else + btn = BUTTON_RC_SOURCE; + else + if (data < 0xd8) + if(data < 0xc0) + btn = BUTTON_RC_FF; + else + btn = BUTTON_RC_MENU; + else + if (data < 0xf0) + btn = BUTTON_RC_REW; + data = GPIO1_READ; if ((data & 0x20) == 0) btn |= BUTTON_ON; -- cgit v1.2.3