From 60fca9c5f288d06d1bcfbdc6a6d8a22630673e83 Mon Sep 17 00:00:00 2001 From: Matheus Date: Sat, 7 Jan 2023 16:44:23 -0300 Subject: [PATCH] ps2mouse: fix delta calculation --- src/arch/x86_64/ps2mouse.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/arch/x86_64/ps2mouse.c b/src/arch/x86_64/ps2mouse.c index 057873e9..e7b7cd07 100644 --- a/src/arch/x86_64/ps2mouse.c +++ b/src/arch/x86_64/ps2mouse.c @@ -75,8 +75,8 @@ void ps2mouse_irq(){ bool b4 = data[3] & 0x10; bool b5 = data[3] & 0x20; - packet.x = data[1] * (data[0] & 0x10 ? -1 : 1); - packet.y = data[2] * (data[0] & 0x20 ? -1 : 1); + packet.x = data[1] - (data[0] & 0x10 ? 0x100 : 0); + packet.y = data[2] - (data[0] & 0x20 ? 0x100 : 0); packet.z = (data[3] & 0x7) * (data[3] & 0x8 ? -1 : 1); packet.flags |= left ? MOUSE_FLAG_LB : 0;