[SeaBIOS] Add support for legacy USB keyboard/mouse (PS/2 emulation for USB?)

Kevin O'Connor kevin at koconnor.net
Sat Apr 16 03:03:02 CEST 2016


On Sat, Apr 16, 2016 at 01:26:43AM +0200, Adam Rutkowski wrote:
> Hello,
> 
> I think this is the right place to write about this. From a few days
> I'm fighting with not USB-aware OS-es in QEMU (like Windows 98, IBM
> OS/2, MS-DOS etc.). When I assign real USB keyboard and mouse to VM,
> keyboard partially works in DOS (keys like Alt aren't working), but
> mouse doesn't work at all.

In my quick tests on freedos, both the usb keyboard alt key and usb
mouse work.  That said, I don't doubt old DOS device drivers and old
OSes (eg, win98) would attempt to directly access the ps2 hardware and
thus not benefit from the SeaBIOS USB drivers.

>After starting, let's say Windows 98
> Setup, keyboard stops working too. From my experience these
> peripherals works only in newer OSes like Windows 2000+ or Linux,
> because they initialize their own USB HID driver. I'm not using
> QEMU's emulated USB HID devices, because I utilize VGA passthrough,
> so I need direct access from guest machine.
> 
> Summarizing: is it possible to add full support for USB keyboard and
> mouse in SeaBIOS?

Unfortunately, emulating a ps2 keyboard/mouse in SeaBIOS is very
difficult, and I don't think it's practical.

However, it should be easy to have QEMU emulate a ps2 keyboard/mouse.
It should also be possible to do that emulation even if the VGA is in
passthrough.

-Kevin



More information about the SeaBIOS mailing list