var fDesc=new Array(); fDesc[0] = "KeyTweak is a simple utility that allows users to redefine their keyboard input
signals. The functionality is made possible by a registry value first documented in
Windows 2000, but also present in Windows NT 4.0. and included in XP, Vista and
Windows 7. This section lists some of KeyTweak’s features and reasons you may want
to use KeyTweak.

Simply put, KeyTweak is just a front-end interface for editing a particular registry
key. Microsoft did the low-level heavy lifting by creating this registry key. KeyTweak
makes the editing of it a little less geeky.

Your keyboard communicates with your computer typically through a PS/2 port
or a USB port. The data sent by your keyboard is referred to as Scan Codes. When you
press a key, the “make” scan code for that key is received by your computer’s i8042
controller chip. When you release a key, the “break” scan code is sent. Prior to
Windows 2000, device drivers had to be written to modify scan codes. Happily,
Microsoft incorporated this feature into their operating system, thereby allowing fools
like you and me to hack our registry and change the values to anything we see fit. The
only downside is that the system has to be rebooted to take affect.

The registry key to which I’m referring is
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout and the
binary value in that key is titled “Scancode Map”. If you forget this, don’t worry, just
click the Show Me The Raw Map button to see what I’m talking about. Now, I don’t
recommend registry hacking to anyone – that’s why I wrote this utility. If you don’t
know what I’ve been talking about in this section, it’s probably better left forgotten."; function tShowHide(id, show) { var s = document.getElementById("desc"); if ((s.innerHTML.length<=212 || show==1) && show!=2) { s.innerHTML = fDesc[id]; if (document.getElementById('m1')) document.getElementById('m1').style.display='none'; if (document.getElementById('m2')) document.getElementById('m2').style.display='none'; if (document.getElementById('more_txt')) document.getElementById('more_txt').style.display='inline'; } else { s.innerHTML = ''; } }