From 31667b47a57c74894d66d7243aae6705898b424c Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Fri, 11 Jan 2019 02:45:06 +0100 Subject: [PATCH] Teach PS2MouseDevice to read the left and right buttons. --- Kernel/PS2MouseDevice.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Kernel/PS2MouseDevice.cpp b/Kernel/PS2MouseDevice.cpp index c829c60539..497c655d04 100644 --- a/Kernel/PS2MouseDevice.cpp +++ b/Kernel/PS2MouseDevice.cpp @@ -14,15 +14,24 @@ PS2MouseDevice::~PS2MouseDevice() void PS2MouseDevice::handle_irq() { - m_data[m_data_state] = IO::in8(0x60); + byte data = IO::in8(0x60); + m_data[m_data_state] = data; switch (m_data_state) { case 0: + ASSERT(data & 0x08); + ++m_data_state; + break; case 1: ++m_data_state; break; case 2: m_data_state = 0; - dbgprintf("PS2Mouse: %d, %d\n", m_data[1], m_data[2]); + dbgprintf("PS2Mouse: %d, %d %s %s\n", + m_data[1], + m_data[2], + (m_data[0] & 1) ? "Left" : "", + (m_data[0] & 2) ? "Right" : "" + ); break; } }