aboutsummaryrefslogtreecommitdiff
path: root/Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c
diff options
context:
space:
mode:
Diffstat (limited to 'Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c')
-rw-r--r--Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c b/Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c
index 1b9c12aa9d..38e4b2564a 100644
--- a/Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c
+++ b/Demos/Host/LowLevel/MouseHostWithParser/MouseHostWithParser.c
@@ -299,19 +299,15 @@ void ProcessMouseReport(uint8_t* MouseReport)
if (!(FoundData))
continue;
- int16_t DeltaMovement = (int16_t)(ReportItem->Value << (16 - ReportItem->Attributes.BitSize));
+ int16_t DeltaMovement = HID_ALIGN_DATA(ReportItem, int16_t);
- /* Determine if the report is for the X or Y delta movement */
- if (ReportItem->Attributes.Usage.Usage == USAGE_X)
+ /* Check to see if a (non-zero) delta movement has been indicated */
+ if (DeltaMovement)
{
- /* Turn on the appropriate LED according to direction if the delta is non-zero */
- if (DeltaMovement)
+ /* Determine if the report is for the X or Y delta movement, light LEDs as appropriate */
+ if (ReportItem->Attributes.Usage.Usage == USAGE_X)
LEDMask |= ((DeltaMovement > 0) ? LEDS_LED1 : LEDS_LED2);
- }
- else
- {
- /* Turn on the appropriate LED according to direction if the delta is non-zero */
- if (DeltaMovement)
+ else
LEDMask |= ((DeltaMovement > 0) ? LEDS_LED3 : LEDS_LED4);
}
}