1
0
Fork 0
forked from len0rd/rockbox

Filters out AN5 keys if UP is pressed. Solves bug #619028.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2545 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Linus Nielsen Feltzing 2002-10-09 09:29:04 +00:00
parent 26e7ec4787
commit 902c43a968

View file

@ -271,16 +271,22 @@ static int button_read(void)
else if (data >= LEVEL1)
btn |= BUTTON_F1;
/* Check DOWN, PLAY, LEFT, RIGHT */
data = adc_read(ADC_BUTTON_ROW2);
if (data >= LEVEL4)
btn |= BUTTON_DOWN;
else if (data >= LEVEL3)
btn |= BUTTON_PLAY;
else if (data >= LEVEL2)
btn |= BUTTON_LEFT;
else if (data >= LEVEL1)
btn |= BUTTON_RIGHT;
/* Some units have mushy keypads, so pressing UP also activates
the Left/Right buttons. Let's combat that by skipping the AN5
checks when UP is pressed. */
if(!(btn & BUTTON_UP))
{
/* Check DOWN, PLAY, LEFT, RIGHT */
data = adc_read(ADC_BUTTON_ROW2);
if (data >= LEVEL4)
btn |= BUTTON_DOWN;
else if (data >= LEVEL3)
btn |= BUTTON_PLAY;
else if (data >= LEVEL2)
btn |= BUTTON_LEFT;
else if (data >= LEVEL1)
btn |= BUTTON_RIGHT;
}
return btn;
}