6.1.5 Initialization File Entries for Keyboard

The [Keyboard] section in the SYSTEM.INI file specifies information the keyboard driver uses to adapt its operation. The driver reads the type, subtype, KEYBOARD.DLL, and OEMANSI.BIN settings from the SYSTEM.INI file using the GetPrivateProfileInt and GetPrivateProfileString functions (KERNEL.127 and KERNEL.128). The driver uses the values to prepare translation tables and to modify driver operation.

The type setting specifies which type of keyboard layout the driver must support. If the keyboard type is not the driver's default type, the driver loads the language-specific keyboard library specified by the KEYBOARD.DLL setting and calls that library's GetKbdTable function to install the appropriate translation tables. If a subtype setting is given, the driver also may use it to determine which translation tables to load. However, since this setting specifies whether a keyboard of a given type has special attributes, drivers most often use the subtype setting to determine whether to test for certain special cases.

For many keyboards, the Windows Setup program automatically determines the keyboard type and sets the appropriate value in the SYSTEM.INI file. If the type for a given keyboard can not be accurately determined, a driver developer can supply a modified SETUP.INF file which allows the user to manually select the keyboard type during installation.