◄Up► ◄Next► ◄Previous► ──────────────────────────────────────────────────────────────────────────── The keyboard driver consists of two parts: the main driver and a set of language-specific dynamic-link libraries. The main driver services the keyboard hardware and translates scan and virtual-key codes using default translation tables for U.S. keyboards. The language-specific libraries contain translation tables for different types of keyboards (that is, tables for other countries and other physical keyboard layouts). The main driver loads the appropriate language-specific library and retrieves its tables when Windows enables the keyboard driver. The Windows keyboard driver consists of the following: ♦ Keyboard-interrupt handler ♦ Virtual-key translation functions and tables ♦ ANSI-character translation functions and tables ♦ Keyboard-service functions Windows requires the keyboard to generate an interrupt whenever the user presses or releases a key. In response to an interrupt, the driver's keyboard-interrupt handler translates corresponding scan codes (and corresponding shift state) to Windows virtual-key codes. The keyboard passes both scan codes and virtual-key codes to Windows for generating keyboard messages, or for initiating some other action. ♦