3.6.1 Virtual-Key Codes

The keyboard driver's hardware interrupt function translates OEM scan codes into virtual-key codes to provide Windows with keyboard input that is independent of the keyboard hardware.

The virtual-key code set consists of 256 byte values in the range 0 to 255. Most, but not all, of the values used by standard drivers are in the range 0 to 127. There is a loose distinction between “standard” keys, which do not vary much, and “OEM” keys, which do vary from keyboard to keyboard.