Introduction
JoystickCursorTool is a small utility simulating keyboard keys using a joystick. It can be used for keyboardless navigation in browsers and file managers, playing games without native joystick support, using the joystick port for electronic interfaces without needing to write a joystick driver as well as other situations where only a small subset of the keyboard is typically used.
Requirements
- Windows95/NT/2000/XP or higher
- A joystick supported by Windows (installed as primary or secondary joystick)
- Up to 4 axes, 16 buttons and point-of-view are supported
The tool supports all programs using the standard windows driver for keyboard input. It does not always work with programs retrieving keyboard data at a lower level like the Win9x DOS box.
Usage
After starting the program a small icon shows up in the task bar:
Either the normal joystick cursor icon indicating the tool beeing active
or a crossed joystick cursor icon indicating the tool beein in idle state
The tool switches to idle state automatically if the joystick is not connected or switched off. A left click on the icon will open the setup dialog, a double click will close it.
Configuration
A standard setting is included, but you might also define your own. This allows using the remaining buttons as well as the other axes. After a right click the following options are available:
- The left side contains up to 128 fields each referring a single key. Their number can be toggled using the + and - buttons.
- The right side is a matrix in which each row refers to the key field next to it. Each column refers to the joystick key / axis position noted on top. Note: Only entries supported by the joystick will be shown.
- The topmost line of the matrix does not refer to a key. It shows the current state of the joystick instead.
- Repeated keypresses can be switched on and off using the Use Typematic option.
- Experienced users can adjust the timing behaviour in the Timing setup. Or enable portable mode which stores the settings in a local file rather than in the system registry
- The other buttons are self-explanatory: Default settings will restore the standard configuration, OK closes the window saving the settings permanently, Cancel closes the window restoring old settings. Joystick Nr selects the joystick to use with the current settings.
Assigning keys to the joystick
Key assignment is straightforward, although a bit unusual:
- Press the Associated Key field you want to modify. It´s when changes to -- Choose key --
- Move the joystick or press the joystick button(s) you want to use. The associated row reflects the current joystick state.
- Once you´ve found a suitable setting assign press the keyboard key you want to assign it to.
Repeat this sequence for every assignment you want to change.
Multiple joystick and settings support
The Joystick Cursor Tool supports multiple settings for various purposes
- Multiple settings can be stored and retrieved by using a command line parameter:
joycur.exe id=n
will retrive setting n, where n is a single letter or number.
- Or, when starting multiple instances of the program at the same time, settings id=2, id=3, id=4,... are used automatically
- Thus, additional joysticks and keyboad keys are possible
- Assigned id= values are shown in the setup dialog
You can enable a sequence of keys to an axis. Each key maps to a specific range on that axis and will be triggered whenever the axis position enters that range. This functionality is primarily intended for using rudders or knobs as a volume control or virtual gas pedal.
- In order to enable this functionality, check both axis positions of an axis for every key which should be part of the sequence. The topmost key in the list maps to the minimum axis position, the last key in the list maps to the maximum axis position.
- ALT-, CTRL- and Shift keys have a special meaning. They are not assigned to a specific range but are used as modifier for the whole range instead. Whenever a key within the sequence gets triggered, this modifier is invoked as well. This makes it possible to build combinations like Shift-1, ..., Shift-9.
- Each axis mode sequence contains at least two keys which are not a modifier. You may use as many keys as possible, however in practice more than 10 keys per sequence are hardly useful. Analogue gameport joysticks usually only allow using 3-5 keys properly.
- You may use multiple axes each having their own sequence if the input device provides enough accuracy.
- Note that some ranges might be skipped while changing the axis position fast enough or when the input device lacks precision. Since this is the case with real keyboard keys as well, any keyboard-controlled application should be able to handle this behaviour properly.
Portable mode
Whenever there is a joycur.cfg file in the program directory, the tool reads the settings out of this one rather than the system registry. This allows you to move the settings to a different computer or to store them in different locations by renaming or copying the file. In order to reuse it, just pass it on the command line or drag&drop it onto the tools program icon.