Someone
public text v1 · immutable static const unsigned char wheel_tbl[2][4] =
{
/* 0x00 0x40 0x80 0xc0 */ /* Wheel value */
{ 0x40, 0xc0, 0x00, 0x80 }, /* Clockwise rotation */
{ 0x80, 0x00, 0xc0, 0x40 }, /* Counter-clockwise */
};
...
if (old_wheel_value == wheel_tbl[0][wheel_value >> 6])
btn = BUTTON_SCROLL_DOWN;
else if (old_wheel_value == wheel_tbl[1][wheel_value >> 6])
btn = BUTTON_SCROLL_UP;
...
old_wheel_value = wheel_value;