1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265
|
GLUT NOTE: The GLUT API version 2 & 3 X11 implementations support the SGI
Dials and Buttons, SGI Spaceball, and SGI Tablet via the X Input
extension. These devices are advertised as described below. If other
vendors advertise these X Input extension devices differently, GLUT's X
implementation will need to be extended to properly support such
differently advertised devices.
X Input Extension Devices as Advertised by Silicon Graphics
Mark Kilgard
February 13, 1995
$Revision: 1.2 $
This document describes how Silicon Graphics Inc. (SGI) advertises its
support for input devices through the X Input extension. Because the X
Input extension only provides mechanism for supporting additional X
input devices, vendors may support the same or similar devices in
slightly different ways making it difficult for programs to count on
how a given input device will be supported across vendors.
The intent of this document is not to propose any standard way of
supporting specific X Input extension devices, but merely to thoroughly
describe SGI's X Input support for the benefit of X Input programmers
and other X Input extension implementors wishing to mimic SGI's X Input
support to avoid needless incompatibility for otherwise standard and
common input devices.
The client queriable state returned by the X Input extension is not
enough to effectively use X Input extension devices. The physical
layout of how the dials, axes, buttons, etc. are laid out is not
queriable. Effective use of the extension requires knowledge of the
physical layout of the devices. Diagrams are provided to show the
actual layout.
Comments and corrections should be sent to Mark Kilgard <mjk@nvidia.com>
(Please note that I no longer work at Silicon Graphics. Try contacting
Peter Daifuku <daifuku@sgi.com) if you need to contact SGI about this
information.)
SGI Dials and Buttons:
Device type: KNOB_BOX
Device name: dial+buttons
Classes: 2
ButtonClass
Number buttons: 32
ValuatorClass
Device mode: Absolute
Number axes: 8
Axis 1
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 2
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 3
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 4
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 5
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 6
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 7
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Axis 8
Minimum value: -32768
Maximum value: 32767
Resolution: 200
Physical layout:
+---------+
| (7) (8) |
| |
| (5) (6) |
| | <---- Dials on dial box w/ axis number
| (3) (4) |
| |
| (1) (2) |
+---------+
+-------------------------------+
| [ 1] [ 2] [ 3] [ 4] |
| |
| [ 5] [ 6] [ 7] [ 8] [ 9] [10] |
| |
| [11] [12] [13] [14] [15] [16] | <--- Buttons on button box
| | w/ button number
| [17] [18] [19] [20] [21] [22] |
| |
| [23] [24] [25] [26] [27] [28] |
| |
| [29] [30] [31] [32] |
+-------------------------------+
Device manufacturer: Seiko
SGI SpaceBall:
Device type: SPACEBALL
Device name: spaceball
Classes: 2
ButtonClass
Number buttons: 9
ValuatorClass
Device mode: Absolute
Number axes: 7
Axis 1
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Axis 2
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Axis 3
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Axis 4
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Axis 5
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Axis 6
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Axis 7
Minimum value: -18000
Maximum value: 18000
Resolution: 200
Physical layout:
+-----------------+
| [1] [2] [3] [4] | <--- Function keys
| [5] [6] [7] [8] |
| |
| /--[9]--\ | <--- Pick button (hidden on ball surface)
| / \ |
| | "the | | Axes 1-3 X, Y, Z rotation
| | ball" | | Axes 4-6 X, Y, Z translation
| | | | Axis 7 Period
| \ / |
| \-------/ | X is left and right; Y is up and down;
| | Z is back and forward.
+-----------------+
Device manufacturer: SpaceBall Technologies, Inc. Lowell, MA
(508) 970-0330.
SGI Tablet:
Device type: TABLET
Device name: tablet
Classes: 2
ButtonClass
Number buttons: 4
ValuatorClass
Device mode: Absolute
Number axes: 2
Axis 1
Minimum value: 0
Maximum value: 2206
Resolution: 200
Axis 2
Minimum value: 0
Maximum value: 2206
Resolution: 200
Physical layout:
-----
/ (+) \ The tablet puck crosshair
/ | \
/ | \
+---------+
| <1> | The tablet puck buttons.
| |
| <2> <4> |
| |
| <3> |
\ /
+-----+
Device manufacturer: Hitachi
SGI Virtual Pointer:
Device type: VIRTUAL_POINTER
Device name: virtual_pointer
Classes: 2
ButtonClass
Number buttons: 5
ValuatorClass
Device mode: Absolute
Number axes: 2
Axis 1
Minimum value: 0
Maximum value: 1280
Resolution: 200
Axis 2
Minimum value: 0
Maximum value: 1024
Resolution: 200
Physical layout: n/a
Device manufacturer: n/a
Notes: The virtual_pointer allows multiple physical devices to "push"
a single logical pointer. The virtual pointer is an SGI feature.
SGI Mouse:
Device type: MOUSE
Device name: mouse
Classes: 2
ButtonClass
Number buttons: 3
ValuatorClass
Device mode: Absolute
Number axes: 2
Axis 1
Minimum value: 0
Maximum value: 65000
Resolution: 200
Axis 2
Minimum value: 0
Maximum value: 65000
Resolution: 200
Physical layout:
+-------------+
| |
| [1] [2] [3] | <--- Buttons on mouse w/ button numbers.
| |
| |
| |
| |
+-------------+
Axis 1 is for mouse motion in X axis (left & right)
Axis 2 is for mouse motion in Y axis (top & bottom)
Device manufacturer: SGI
|