Copyright © 2003-2009 by Travis Krumsick .
Version History
1
Introduction
How Does It Work?
Features
Limitations
Why Would I Want to Remap My Keys?
2
2
2
2
3
Getting Started
System Requirements
Installation Notes
3
3
3
Using KeyTweak
Informational Area
Key Selection Area
Keyboard Controls Area
Full Teach Mode
Half Teach Mode
4
4
5
5
7
7
Other Information
Recommended Reading
Licensing
Thank You
8
8
8
8
Version History v1.0.8 – 8/23/03 - Initial release. v1.0.9 – 9/26/03 - Fixed “Show Me the Raw Map” function. v1.0.10 – 10/4/03 - Fixed bug that caused dialog box to flash just before computer is rebooted. v1.0.11 – 11/9/03 – Added more specialty buttons v1.0.12 – 12/22/03 – Fixed bug: Numpad / key was not defined. Thank you Johan Barkhuizen. v1.0.14 – 5/11/04 – Added Macintosh Keypad (=) key that generates LF characters. v2.0.0 -- 6/25/04 – Added Teach Mode (Full) v2.0.1 -- 7/29/04 – Added support for extended keys through Teach Mode v2.1.1 -- 10/4/04 – Added Half Teach Mode v2.2.0 -- 10/15/05 – Added ability to save KeyTweak remappings as files and MRU list. v2.3.0 -- 1/9/09 – Updated to support Windows Vista and Windows 7 UAC.
Bug fix: WWW Home key mapping fixed.
Bug fix: Disabled keys read from .ktw files now interpreted correctly.
Introduction
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.
How Does It Work?
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.
Features
Simple interface
Ability to Teach remapping by pressing the keys to be remapped
Easy-to-read lists of all current and pending re-mappings
Implementation of Specialty Keys support for certain keyboards
Remove all re-mappings with a single button
Enable/disable annoying keys
Displays what exactly is written to the “Scancode Map” registry value and how to interpret its binary data
User warnings help ensure Ctrl-Alt-Delete sequence is maintained
Limitations
•
Keytweak cannot combine keystrokes. You cannot merge Ctrl+Alt+Del into a single key for example, nor can you map Alt+num key sequences into a single key. The reason for this is because each keystroke generates a scancode and multiple scancodes are typically combined into a single keycode by the keyboard
•
•
•
•
processor. The keycode combinations take place downstream of KeyTweak’s functionality. Keytweak cannot affect the Fn key of most laptops. This because the Fn key itself does not generate a scancode, but rather modifies the scancode of other keys on the keyboard. The scancode modifications take place upstream of
KeyTweak’s functionality.
The Pause/Break key cannot be remapped. This special key generates a 3-byte scancode, but the Scancode Map registry entry only allows for the remapping of
2-byte scancodes.
KeyTweak edits are global. That is, you can’t specify user-specific, applicationspecific, or keyboard-specific remappings. The remapping affects all users, all applications, and all keyboards and all users on the machine. Note that some games may perform their own keyboard remapping. These could supersede or be applied in addition to KeyTweak remappings.
Rebooting is required. The remapping is read by the operating system upon start up. Any change to the remapping will require a reboot.
Why Would I Want to Remap My Keys?
Unless you are one of the few people that make use of every key on your keyboard and are completely happy with your keyboard layout, there is probably something you would like to change on your keyboard. Maybe you have an IBM
Thinkpad and you really miss having a Windows Logo key. Maybe you are used to using a different keyboard and you keep hitting the wrong key. Maybe you know that you are going to be doing a lot of numerical data entry and would like to change your
Num Pad + key into a Tab key for a little while. How about changing Scroll Lock into a
Mute button? There are lots of reasons for why you might remap your keyboard.
I had a Dell Inspiron 3800, a model who was notorious for losing functionality in four keys: 8, I, K, and comma. I remapped 8 to F8, I to Right-Alt, K to Right-Ctrl, and comma to F9. Tada, a semi-working keyboard again. Good enough to use while traveling anyway. My wife uses a Thinkpad and really missed having a Windows key and didn’t mind giving up Right-Alt to get it.
Sure you could remap your keys the hard way by wading through scan codes and reversing the hex notation. But why do that when there’s a simple app that can do it for you? Getting Started
System Requirements
KeyTweak supports the following operating systems: Windows NT 4.0,
Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server
2008, and Windows 7. Because KeyTweak performs a write operation to a protected area of the registry, Vista and Windows 7 UAC will request elevated permissions.
Installation Notes
Installation is made simple with Nullsoft’s Software Installation System (NSIS).
Just run KeyTweak_install.exe and choose a directory to install KeyTweak. Once
installed, you can copy the KeyTweak.exe file onto a floppy and run it right from there.
Even though this is a VB6 app, you can use it like a stand-alone executable because the only .dlls used are those that are distributed with Windows. Really, the whole installation bit is for the sake of this manual and to make it easy to clean up your computer if you want to uninstall. To uninstall, simply run the uninstall.exe file that is located in the same directory as KeyTweak.exe – or just use the shortcut from your Start
Menu.
Using KeyTweak
The goal of this program is to make remapping keys easy and manageable. The main form is laid out into three main areas corresponding roughly to the upper, middle, and bottom third of the screen. These areas are the Informational Area, Key Selection
Area, and Keyboard Controls Area. Additionally, there are two “teach” modes that provide alternative means to remapping your keyboard. The File menu supports saving and reloading remappings to/from .ktw files.
Informational area
Key Selection Area
Keyboard
Controls Area
Full and Half Teach Mode
Informational Area
When KeyTweak starts, it reads a certain value from your computer’s registry so that it can display what, if any, key remappings are in place. Any remappings found are displayed in the listbox with the caption “Remapped Keys currently in effect”. This is probably the first place you should look if you have been using KeyTweak before.
The next button, Restore All Defaults, is sort of a panic button and will immediately revert your keyboard back its default configuration. I know this isn’t really an “informational” control, but it seems appropriate to put this button near the area that
could cause you to panic. Essentially, this button deletes the Scancode Map registry value, eliminating all remappings.
Below that button is another button called Show Me The Raw Map. This button will pop up a window displaying the raw data in your registry value along with a translation of the hex values. This information is only for the curious and is not needed for normal operation of KeyTweak.
Finally to right side of the Informational Area is a Warning Label. The Warning
Label only appears if your keyboard is in a potentially dangerous configuration. That is to say, you have remapped away you Ctrl, Alt, or Delete Key(s) and you may not be able to log into the system correctly. KeyTweak will pop up warning message boxes if you attempt to Apply a dangerous configuration, or if a dangerous configuration is detected upon starting KeyTweak. KeyTweak will eventually let you make such a configuration change, but you do so at your own risk. My recommendation is that if you ever see the
Warning Label, you should click the Restore All Defaults panic button and then restart your machine.
After reading what key remappings are currently in effect, you may want to add, change, or delete a remapping. There are two ways to do that – through Key Selection
Area or through the Teach Mode in the Keyboard Controls Area.
Key Selection Area
This area of KeyTweak provides a virtual keyboard in which you can select what key you would like to remap. You will notice that the keys in this area only have numbers assigned to them without their normal descriptions. The reason for this is to keep in mind that what you are selecting here is a ‘key’, not what the key represents. If you hover your mouse above any key, a tooltip textbox will appear next your cursor, indicating what the key is currently representing. Due to the nature of this program, I found it too difficult to implement keyboard shortcuts here (for that use Teach Mode), so you’ll have to use your mouse to select a key from this area.
The key layout is based upon a 104-key United States keyboard. You may have to do a little searching to find the key you want to change if you have fewer keys on your keyboard. In addition, certain Specialty Keys may be available to your keyboard. These are keys defined in the standard for PS-2 keyboard scan codes. At home, using a
Logitech wireless keyboard, I was able to make use of the CD control buttons and the
Mute button, but not the Volume controls or the other Specialty buttons. Your mileage may vary.
Finally, due to the mode of implementation, the Pause/Break key cannot be remapped. Keyboard Controls Area
This area of KeyTweak provides the means to remap the key selected in the Key
Selection Area, or to enter Teach Mode, in which you will be able to press two keys,
‘teaching’ KeyTweak what to remap.
When a key is clicked in the Key Selection Area, that key’s mapping appears in the Keyboard Controls Area. From here you can decide how the key will behave.
Basically you have three options: Remap the Key, Restore the Default Behavior to this key, or Enable/Disable this key. To remap a key, first select the new value you want this
key to represent. The dropdown box contains all the possible selections for remapping.
When you have selected one that you like, click the Remap Key button. This will add an item to the list of Pending Changes.
If you would like to restore the default behavior for your selected key, just click
Restore Default. Likewise if you would like to enable or disable the key, click the
Disable (Enable) Key button. For these two buttons, you don’t need to select anything from the dropdown box. Like the Remap Key button, these buttons will also update the list of Pending Changes.
Once you have at least one pending change, the Apply and Clear All buttons will become enabled appear underneath the list of Pending Changes. If you select a single item from the list of Pending Changes, the Clear button will also become enabled. The
Apply button is used to write the list of changes to the registry. The Clear button will remove a change from the list. The Clear All button will remove all changes from the list. When you press the Apply button, KeyTweak will check to see if any of your submissions could be considered Dangerous as defined above. If so, KeyTweak will force you to confirm your action. Once the registry is written, KeyTweak will ask you if you would like to restart your computer to load the changes. If you choose not to restart, you’ll get another suggestion to restart KeyTweak to re-read the registry and refresh the
Informational Area.
Full Teach Mode
As of v2.00, KeyTweak has been enhanced with a new method of teaching remappings.
By pressing ‘Go To Teach Mode’ the user will be presented with a new screen. When
‘Begin Teach Mode’ is pressed, KeyTweak will hook the keyboard, and display the scancode of the first button pressed under ‘Scancode of Key #1’. Then it will display the scancode of the second key pressed and display it uder ‘Scancode of Key #2’. KeyTweak then unhooks the keyboard. At that point, the user can decide to reteach, remap, or cancel by pressing on one of the three buttons on the screen. If remapping is selected, the new mapping will appear in the Pending Changes listbox on the main screen. The user will then have to press Apply to apply the pending remap.
Half Teach Mode
Added to v2.1.1, Half Teach Mode will scan a single keystroke and then allow you to choose its remapping from dropdown list. This can be helpful if you have taken apart your keyboard completely and you require a full remap, or if your keyboard doesn’t resemble a standard 104-key layout.
Other Information
Recommended Reading
•
•
•
Key Support, Keyboard Scan Codes, and Windows http://www.microsoft.com/whdc/archive/scancode.mspx Scan Code Mapper for Windows http://www.microsoft.com/whdc/archive/w2kscan-map.mspx Keyboard Scan Codes: Set 1 http://www.computer-engineering.org/ps2keyboard/scancodes1.html Licensing
KeyTweak – Keyboard Remapper
Copyright © 2003-2009 by Travis Krumsick
.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS
“AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Thank You
I very much appreciate the emails I’ve received over the years describing your experiences with KeyTweak as well as bug fixes and feature requests. It’s the first freeware application I’ve ever written and was surprised that the broad reception it has received. If KeyTweak has increased your productivity or has saved you from buying a new keyboard, donations are happily accepted via PayPal via the link below. ☺ https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2351203
You May Also Find These Documents Helpful
-
Then add a space. Next, type in “dd”.Then, press the “Ctrl” key, “v” key, and “esc” key at the same time to map this key. FInally, press the “Enter” key.…
- 818 Words
- 4 Pages
Good Essays -
1. The 10-Key Numeric Keypad – [the table (box) is located below the instructions for the exercise.]…
- 625 Words
- 4 Pages
Satisfactory Essays -
12. From Explorer or the Computer window, right-click a file or folder and select Properties from the short cut menu.…
- 277 Words
- 2 Pages
Satisfactory Essays -
Is able to run on almost any type of computer whether it is a desktop or laptop device.…
- 808 Words
- 4 Pages
Good Essays -
Correct. This seems to be the best solution since the user could use the stylus or light pen to tap on the displayed keys.…
- 910 Words
- 4 Pages
Better Essays -
1. The 10-Key Numeric Keypad – [the table (box) is located below the instructions for the exercise.]…
- 569 Words
- 5 Pages
Satisfactory Essays -
“Brother, our seats were once large, and yours were very small; you have now become a great people, and we have scarcely a place left to spread our blankets; you have got our country, but are not satisfied you want to force your religion upon us.”(2).…
- 1189 Words
- 5 Pages
Better Essays -
Since step one was written a couple of things have changed and I realized typing was not really a problem.…
- 1320 Words
- 9 Pages
Good Essays -
SATRACK was developed to validate and monitor the Trident missile guidance error model in the System Flight Test Program. It is the primary instrumentation and processing system responsible for accuracy evaluation of the Navy’s Strategic Weapon System. Instrumentation and processing systems available when the Trident Development Program began could not meet this need. APL conceived and led the development of the SATRACK system to fulfill this requirement. Prototype instrumentation required for the missile and ground station data collection functions were developed at APL to validate the concept, and we generated specifications controlling the development of the operating missile and ground station hardware. We also developed and operate the SATRACK processing facility, which includes a unique preprocessing hardware and software configuration and an extensive post processing analysis capability. Additionally, the APL satellite tracking facility has operated as a backup SATRACK recording site for all East Coast test flights since 1978. SATRACK fully met all its guidance subsystem evaluation requirements and also provided weapon system error model insights that would not have been possible without its unique ability to detect and allocate small error contributors to miss distances observed in the flight test program. SATRACK not only validated the Trident system accuracy, but the test-derived and -validated system error models have allowed the command authority to confidently assign and allocate targets to sea-based strategic resources.…
- 436 Words
- 2 Pages
Satisfactory Essays -
JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of…
- 7758 Words
- 171 Pages
Powerful Essays -
Kontribusi wajib kepada negara yang terutang oleh orang pribadi atau badan yang bersifat memaksa berdasarkan undang-undang, dengan tidak mendapatkan imbalan secara langsung dan digunakan untuk keperluan negara bagi sebesar-berasnya kemakmuran rakyat…
- 1833 Words
- 8 Pages
Powerful Essays -
The holy prophet (peace be upon him) had expressed his concern for the basic rights and respectable place for women in society 1400 years ago. In this regard, however certain restrictions particularly observance of purdha by women deemed extremely necessary, which was ordered by almighty Allah.…
- 5008 Words
- 21 Pages
Powerful Essays -
Imtiaz, a venture of Mr.Hakim Khan Abbasi stepped on ground in the year 1955. His initial step was to start a small store which contained general items of day to day use. Later Mr.Imtiaz Hussain joined in and dreamt of making Imtiaz Super Store, a store which would help make peoples live better. He had a vision, a vision of not making his business big but to serve people; a vision of not making profits but helping people save money; a vision to strive and conquer with love.…
- 505 Words
- 3 Pages
Good Essays -
Bataan National High School has been known for having intelligent and sensible students. Academics has always been the number one priority of our school. But despite that fact, we do not just spend our time reading and studying all the time inside a room. Our learning extends beyond that four cornered room into the real life because the true lessons that we need to learn are sometimes not taught by the teachers but to be discovered by us as students.…
- 859 Words
- 4 Pages
Satisfactory Essays -
From the beginning of our life we do not own anything but we have to strive harder in order to survive. The story of Ben Carson, when he is a student he was bullied and was tempted by his classmate to do bad thing but still his mother did not lack of reminding his children to be still. And because of that his mother let his children realized of how hard she is working well in order to survive with their school.…
- 266 Words
- 1 Page
Satisfactory Essays