summaryrefslogtreecommitdiff
path: root/hid
diff options
context:
space:
mode:
authorMaxim Devaev <[email protected]>2021-08-14 09:21:04 +0300
committerMaxim Devaev <[email protected]>2021-08-14 09:29:12 +0300
commited5952f13ef1baede4101934bc5df952ce66af1b (patch)
tree62d89ad0203fafdb018dc31ba97a3ae96c8aafca /hid
parentc4b9eba250b15afb09720d4a9e2818a9bf447efe (diff)
fixed pikvm/pikvm#159: workaround for windows 98 absolute mouse bug
Diffstat (limited to 'hid')
-rw-r--r--hid/platformio.ini2
-rw-r--r--hid/src/usb/hid.h4
2 files changed, 6 insertions, 0 deletions
diff --git a/hid/platformio.ini b/hid/platformio.ini
index a8a0988d..ed847afb 100644
--- a/hid/platformio.ini
+++ b/hid/platformio.ini
@@ -24,6 +24,8 @@ build_flags =
-DHID_WITH_USB
-DHID_SET_USB_KBD
-DHID_SET_USB_MOUSE_ABS
+# ----- The USB ABS fix for Windows 98 (https://github.com/pikvm/pikvm/issues/159) -----
+# -DHID_USB_ABS_WIN98_FIX
# ----- PS2 keyboard only -----
# -DHID_WITH_PS2
# -DHID_SET_PS2_KBD
diff --git a/hid/src/usb/hid.h b/hid/src/usb/hid.h
index f40cbf36..51b14b96 100644
--- a/hid/src/usb/hid.h
+++ b/hid/src/usb/hid.h
@@ -161,7 +161,11 @@ class UsbMouseAbsolute {
void sendMove(int x, int y) {
CHECK_HID_EP;
+#ifdef HID_USB_ABS_WIN98_FIX
+ _mouse.moveTo(x << 1, y << 1);
+#else
_mouse.moveTo(x, y);
+#endif
}
void sendWheel(int delta_y) {