Home

Research

People

Publications

Teaching

Resources

Modify/Disable The Caps Lock Key

This page explains how to modify a Windows 2000/XP computer in order to disable the Caps Lock key or to swap the CTRL and Caps Lock Keys.

Windows 2000 and XP include a new Scan Code Mapper, which provides a method that allows for mapping of scan codes. It allows the reassignment of any key, incl. disabling keys by mapping them to a zero value.

Here are some of the keys:

Caps Lock 0x3A
Left CTRL 0x1D

The entries in the registry are stored in little Endia format.

Step 1

First, a new binary value called Scancode Map needs to created in the Keyboard Layout key.

Using the registry editor, find HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout

 

Disable Caps Lock:

Scancode Map entries to disable CAPS LOCK

  Value Interpretation Entered as
DWORD 1 0x00000000 Header: Version. Set all to zeroes 00 00 00 00
DWORD 2 0x00000000 Header: Flags. Set all to zeroes 00 00 00 00
DWORD 3 0x00000002 Number of entries in the map, including null terminator (2 entries in this example) 02 00 00 00
DWORD 4 0x003A0000 Remove CAPS LOCK (0x3A --> 0x00) 00 00 3A 00
DWORD 4 0x00000000 Null Terminator 00 00 00 00

Therefore, in order to disable the CAPS Lock key, one would specify the binary value of the Scancode Map as:

00 00 00 00 00 00 00 00 02 00 00 00 00 00 3A 00 00 00 00 00

and the editor window would look like:

Then reboot the system to activate the Scancode Map.

Swap CTRL and Caps Lock

Scancode Map entries to swap LEft CTRL for CAPS LOCK

  Value Interpretation Entered as
DWORD 1 0x00000000 Header: Version. Set all to zeroes 00 00 00 00
DWORD 2 0x00000000 Header: Flags. Set all to zeroes 00 00 00 00
DWORD 3 0x00000003 Number of entries in the map, including null terminator (3 entries in this example) 03 00 00 00
DWORD 4 0x001D003A Left Ctrl Key --> CAPS LOCK (0x1D --> 0x3A) 3A 00 1D 00
DWORD 5 0x003A001D CAPS LOCK --> Left CTRL (0x3A --> 0x1D) 1D 00 3A 00
DWORD 6 0x00000000 Null Terminator 00 00 00 00

Therefore, in order to swap the Left CTRL with the CAPS Lock key, one would specify the binary value of the Scancode Map as:

00 00 00 00 00 00 00 00 03 00 00 00 3A 00 1D 00 1D 00 3A 00 00 00 00 00

and the editor window will look like:
0000 00 00 00 00 00 00 00 00
0080 03 00 00 00 3A 00 1D 00
0010 1D 00 3A 00 00 00 00 00

Then reboot the system to activate the Scancode Map.

For more information, check out http://www.microsoft.com/hwdev/tech/input/w2kscan-map.asp


Home || Research || People || Publications || Teaching|| Resources

Last updated: Mon, 17-Nov-2008 16:53
Copyright 2008 Precision Design Lab