RW Key Factory

1. About

RW Key Factory is a plugin that works with ATI's Remote Wonder controller. It's purpose is to assign key presses to the buttons on the remote controllers. You can define your key presses and control any program that supports keyboard shortcuts.

RWKeyFactory supports periodical repeating of keys. The internal thread issues keystrokes periodically according to the configured repeat count & repeat delay.

TV, DVD, Book and Power Off buttons NOW AVAILABLE! You can use them if you load RW Key Factory into the new RW Key Master application available from the same page as RWKF.

With RW Key Master application, RWKF also supports all Remote Wonder Plus buttons. Just select the proper button naming style.

Contact address:

Downloads and info:

2. Installation

3. Configuration

3.1 Wanted keys

Here you can select what key groups you want to remap. Be careful if you select the Mouse group as this may disable the Mouse emulation. To use any of the extended keys, select the Web group.

3.2 Key events

Here you can assign keyboard events to ATI RW buttons. The columns in the grid are:

Note about the repeated keystrokes:

The internal thread works in interval of 10 ms (after each step it sleeps for 10 ms), so if the repeat delay is <10, more repeated keystrokes may appear at once (all that should happen in the interval of the thread's sleep). RWKeyFactory gets time information via GetTickCount. This function returns the number
of milliseconds since Windows start. This counter overflows after 49 days. Although this situation is handled, it was never tested.

3.3 Pending repeat keys

This box shows the pending repeat keystrokes that will be issued. Pending items counter indicates the number of pending keystroke types (according to the RW key associations, regardless to the repeat count), the Pending keys counter displays the total number of keystrokes that will be issued. Using the Clear button, all pending keystrokes will be removed. The pending keystrokes are also removed upon closing the configuration dialog.

3.4 Configuration file

You can have multiple configuration files. Use the Load button to load one of them. Sample configuration file for SubtitleProcessor is included.

3.5 Actions

The actions are of 3 types:

3.5.1 Advanced actions

These can be used to various purposes and are most versatile. Different key combinations can be assigned to the On, Repeat and Off ATI presses. This can be used for example to define a press of Shift in the On action and a releas of shift in the Off action. If you hold this key on RW, when pressing the other keys the Shift will be still down - you can increase the possible combinations.

3.5.2 Toggle action

These are used to turn keys on in the On action and turn them off in the Off action. You can for example assign the press of Shift to the On and a release of Shift to the Off action. When you press the key, the Shift becomes pressed. You can release the key and the Shift stays pressed. Now when pressing other keys on RW you have the Shift pressed and the possible combinations are doubled. When you press the key with the Shift again, it becomes released.

3.6 Action editor

You can define the action type by selecting the appropriate tab. The Simple editor is similar to previous versions of RW Key Factory. The Advanced and Toggle tabs contain listboxes with key combinations. When these tabs are selected, the advanced toolbar is displayed in the bottom of the editor. The controls
work with the selected listbox and they are:

By pressing the OK button the changes are confirmed. If there is an error in some of the lists, error message is displayed and the offending line in that list is selected.

3.7 Remote Controller Support

Use the buttons to load different RC configurations - they contain appropriate button names.

4. Legal

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

Copyright (C) 2004-2006 Jan Klir <>

5. Source code

The package comes with Delphi 7 PE source code. To compile the source code, you will need CatsoftComponents available from the web page ( It also uses third party components and libraries: JCL, JVCL, Virtual Treeview