Start the Input Manager
Input [-bdgltv] protocol [protocol_opts...]
[protocol [protocol_opts...]]...
[device [device_opts...]]... [filter [filter_opts...]]...
- -b
- Prevent Ctrl-Alt-Shift-Backspace (CASB) exit
(default: allow CASB).
- -d
- Device (default: /dev/photon or $PHOTON).
- -g
- Input group (default: 1).
- -l
- List the internal modules. Modules are listed in the following format
where class is one of: D - Device, P - Protocol, or F - Filter:
module name | date last compiled | revision | class
- -t
- Throttle factor in milliseconds (default: 0).
- -v
- Increment verbosity (default: 0).
- ahl [-b baud]
- AHL-51A touchscreen protocol.
Options:
- -b baud
- Baud rate (default: 9600).
Devices supported: fd, uart
- airmse [-b baud]
- AirMouse protocol.
Options:
- -b baud
- Baud rate (default: 1200).
Devices supported: fd, uart
- busmse [-i irq] [-p ioport]
- Microsoft bus mouse controller.
Options:
- -i irq
- IRQ for bus adapter (default: 5).
- -p ioport
- Port of bus adapter (default: 0x23c).
Devices supported: busmse controller only.
- carrol [-b baud]
- Carroll Touch SmartFrame protocol.
Options:
- -b baud
- Baud rate (default: 2400).
Devices supported: fd, hbc, uart
- compaq
- Compaq Concerto protocol.
Devices supported: spratly
- cyber [-[A-Z] btnmap] [-b baud]
- CyberScan 3232 protocol.
Options:
- -[A-Z] btnmap
- Define virtual button mapping (e.g. ulx,uly:lrx,lry:btn).
- -b baud
- Baud rate (default: 9600).
Devices supported: fd, uart
- devmse [-d name]
- Input provided by a resource manager.
Options:
- -d name
- Device name provided by resource manager (no default).
Devices supported: devmse controller only.
- dyna [-b baud]
- Dynapro SC3 protocol.
Options:
- -b baud
- Baud rate (default: 2400).
Devices supported: fd, uart
- gm [-b baud]
- GM Nameplate protocol.
Options:
- -b baud
- Baud rate (default: 9600).
Devices supported: fd, uart
- intellitch [-b baud] [-h press]
[-r milliseconds] [-u] [-z]
- Elographics IntelliTouch or AccuTouch protocols.
Options:
- -b baud
- Baud rate -- if connected to a serial input.
- -h press
- Simulate a right button when the pressure is greater than press.
- -r milliseconds
- Number of milliseconds that finger must be released for an untouch (left button) event to occur (default: 80).
- -u
- Disable untouch (left button) event generation.
- -z
- Enable z "pressure" data -- only on 40XX controllers.
Devices supported: elo -I, fd, uart
- kbd [-k rate[,delay]] [-R]
- Keyboard scan codes (connected to primary keyboard).
Options:
- -k rate[,delay]
- Keyboard rate (Hz)/delay(ms) (default: 40Hz, 1000ms).
- -R
- Don't reset keyboard (default: reset keyboard).
Devices supported: kb
- microtch [-b baud]
- Microtouch protocol.
Options:
- -b baud
- Baud rate (default: 9600).
Devices supported: fd, uart
- msoft [-3] [-b baud] [-i][-R]
- Microsoft-compatible mouse protocol (serial).
Options:
- -3
- Microsoft 3-button mouse.
- -b baud
- Baud rate for serial device (default: 1200).
- -i
- Intellimouse.
- -R
- Don't reset mouse (default: reset mouse).
Devices supported: fd, uart
- msys [-b baud]
- Mouse Systems mouse protocol (used by Logitech).
Options:
- -b baud
- Baud rate for serial device (default: 1200).
Devices supported: fd, uart
- ps2 [-r]
- IBM PS/2 mouse protocol.
Options:
- -r
- Reset the mouse (default: don't reset mouse).
Devices supported: busmse, kb -2
- smartset [-b baud]
- Elographics Smartset protocol.
Options:
- -b baud
- Baud rate (9600).
Devices supported: elo, fd, uart
- wacom [-b baud] [-P]
- Wacom PL-100V protocol.
Options:
- -b baud
- Baud rate (default: 19200).
- -P
- Enable pressure mode (default: automatically determine).
Devices supported: fd, uart
|
All serial devices use 8 data bits, 1 stop bit, and no parity. |
- elo [-I] [-i irq] [-p ioport]
- Elographics 14X and 40XX bus driver.
Options:
- -I
- 40XX (IntelliTouch board).
- -i irq
- IRQ for bus adapter (default: 5).
- -p ioport
- Port of bus adapter (default: 0x280).
- fd [-d device]
- Opens a device via open().
Options:
- -d device
- Device to open fd on (default: /dev/ser1)
- hbc [-i irq] [-p ioport]
- Carroll Touch Hardware Based Controller.
Options:
- -i irq
- HBC interrupt (default: 7).
- -p ioport
- HBC port (default: 0x300).
- kb [-2] [-i irq] [-p ioport]
- Keyboard controller.
Options:
- -2
- Set default IRQ and I/O port for auxiliary port.
- -i irq
- IRQ (default: 1).
- -p ioport
- Port (default: 0x60).
- spratly [-i irq] [-p ioport]
- Compaq Spratly interface.
Options:
- -i irq
- Spratly interrupt (default: 15).
- -p ioport
- Spratly port (default: 0x2065).
- uart [-i irq] [-p ioport]
- Accesses 8250/16450/16550 UART directly.
Options:
- -i irq
- IRQ for serial device (default: 4).
- -p ioport
- Port of serial device (default: 3f8).
- abs [-b] [-c] [-f filename] [-o x,y]
[-s x,y]
- Transform and compress absolute coordinate "touch" events.
Options:
- -b
- Touching the screen emulates right mouse button (default: left).
- -c
- Calibrate mode -- don't transform coordinates.
- -f filename
- Calibration filename.
- -o x,y
- Origin of display region (default: the origin of the graphics region).
- -s x,y
- Coordinates of lower-right corner of display region (default: the width and height of the graphics region).
- keyboard [-k kbd_file]
- Translate scan codes to Unicode.
Options:
- -k kbd_file
- File to use for international keyboard mapping.
- rel [-G gain] [-l] [-T threshold] [-x] [-y]
- Filter and compress relative coordinate "mouse" events.
Options:
- -G gain
- Motion multiplier (default: 1).
- -l
- Swap right and left buttons.
- -T threshold
- Speed-doubling threshold in mickeys (100).
- -x
- Reverse X.
- -y
- Reverse Y.
The Input utility serves as an input driver for Photon.
The inputtrap utility detects drivers and starts Input.
Input is responsible for taking data from an
input device such as a mouse, touchscreen controller, or
keyboard, interpreting the data, and then
"doing" something with it. The default behavior
is to package the data as an event and inject it into the
Photon event space. But Input can also pass data
to the Mouse and Touch I/O managers
used in console, X, and QNX Windows applications.
Input uses a layered approach to driver design:
- filter layer
- protocol layer
- device layer
At each layer, data is interpreted/modified and passed up to
the next layer until it's injected as an event into the
Photon event space.
For each device Input talks to, there's a
separate path through the three layers called an event
bus line. An event bus line consists of modules, one
representing each layer, linked together by a software bus.
As data is passed up the layers via the bus, the data is
manipulated by each module into a format recognizable by the
next layer's module and so on.
It's important to note that you can run as many instances of
Input as you want, one for each device. Or you
can run one Input for all the devices. Choosing
which scenario to use is mostly a matter of convenience.
For example, if you're trying to get an Elographics
touchscreen to work, it's a good idea to run a separate
Input for the touchscreen in order to get all the
command-line arguments right. This way you won't hang your
system if you put the wrong arguments in and
Input dies -- you'll still have your
original Input talking to the mouse and keyboard.
The inputtrap utility detects a Microsoft mouse interfaced
directly through the UART, and a keyboard interfaced through the file
descriptor provided by opening /dev/kbd. The
inputtrap utility invokes Input with
the following options:
Input kbd fd -d/dev/kbd msoft uart &
The inputtrap utility detects a PS/2 mouse interfaced
through the auxiliary port on the keyboard controller (kb -2),
and a keyboard interfaced through the primary keyboard port
on the keyboard controller (kb). The inputtrap
utility invokes Input with the following
options:
Input kbd kb ps2 kb -2 &
Entering the following command causes Input to drive a
Microsoft bus mouse, a keyboard (#1) interfaced through the primary
keyboard port on the keyboard controller, and a keyboard (#2)
connected through the auxiliary port on the keyboard controller:
Input kbd kb kbd kb -2 busmse &
inputtrap