Windows supports both USB and PS/2 keyboards, and can in fact support having more than one such input device plugged in at a time. However, when a PS/2 keyboard is uninstalled and a USB keyboard is made the main input device (via the Keyboard section in the Control Panel), PS/2 keyboard support is disabled.
This can be frustrating if a user needs to plug a PS/2 keyboard back in to perform debugging in Windows, or when a USB keyboard no longer works correctly due to problems with the USB subsystem. Note: A PS/2 keyboard will still allow access to the BIOS and will work in the boot-loader; it just won't work correctly in Windows. (It will, however, usually work in the Recovery Console.)
PS/2 keyboard devices are governed by a kernel-level service called i8042prt, short for the technical name for the PS/2 keyboard port. When a USB keyboard is added as a replacement for a PS/2 keyboard, the i8042prt service is forcibly disabled. This is to prevent a conflict between PS/2 and USB devices, but if a PS/2 keyboard is reinstalled, the service is not automatically restarted.
To switch back to using a PS/2 keyboard, the user needs to edit the Registry to restart the i8042prt service. To do this, In HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt,, edit the Start value and set it to a hex or decimal value of 1. Reboot and change to a PS/2 keyboard via the Keyboards section in Control Panel.
For those debating the merits of PS/2 and USB keyboards, in some instances a PS/2 keyboard may be more useful than a USB model. For instance, a PS/2 keyboard can be used to initiate a manual crash dump; a USB keyboard cannot.
Serdar Yegulalp is the editor of the Windows 2000 Power Users Newsletter. Check out his Windows 2000 blog for his latest advice and musings on the world of Windows network administrators – please share your thoughts as well!