mirror of
https://github.com/reactos/reactos.git
synced 2026-09-08 18:30:51 +08:00
Since Windows 11 24H2 (host build 26100), Hyper-V's emulated PS/2 mouse reports vertical movement already in Windows orientation, so the usual PS/2 -> Windows Y inversion made the pointer move backwards. The same host regression also affects other legacy guests such as Windows XP. Detect this via the CPUID hypervisor interface (Hyper-V signature and host build number) combined with the SMBIOS system identity, so that other hypervisors exposing the Hyper-V CPUID interface (e.g. VMware/VirtualBox on top of the Windows Hypervisor Platform) are never affected, and skip the Y negation in that case. Also OR the flags in the SMBIOS hardware table matching instead of overwriting them, so flags set by other detections are preserved. CORE-20561 Signed-off-by: Pavel Parfenov <pavel.parfenov91@gmail.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>