---------------------------------- Notices ----------------------------------- (C) Copyright CalComp Digitizer Products Group 1993. All rights reserved. ---------------------------------- Contents ---------------------------------- This diskette [CCOS2930713] contains the following files... CALCOMP.TXT - This file. CALCOMP.SYS - Mouse driver. -------------------------------- Installation -------------------------------- Installation. This mouse driver is an OS.2 2.x device driver ONLY, it does NOT function under OS/2 1.x. The file CALCOMP.SYS should be copied to a directory of your choice -- the C:\OS2 directory is the usual choice, but any directory can be used. Your CONFIG.SYS file should be altered to contain the following two lines... DEVICE=C:\path\CALCOMP.SYS [options...] DEVICE=C:\OS2\MOUSE.SYS TYPE=CALCOMP$ and any existing lines relating to the mouse driver should be removed. For example, assuming that CALCOMP.SYS has been placed in the C:\OS2 directory: DEVICE=C:\OS2\CALCOMP.SYS BAUD=19200 DEVICE=C:\OS2\MOUSE.SYS TYPE=CALCOMP$ or: DEVICE=C:\OS2\CALCOMP.SYS DEVICE=C:\OS2\MOUSE.SYS TYPE=CALCOMP$ or: DEVICE=C:\OS2\CALCOMP.SYS PORT=73D8 IRQ=11 BAUD=2400 MOUSE=DW RELATIVE BUTTONS=2 ORDER=2143 DEVICE=C:\OS2\MOUSE.SYS TYPE=CALCOMP$ The first DEVICE line in the last example is longer than 80 characters. In almost all cases an installation similar to the first two examples would be used except that the ORDER option is frequently required. If you have multiple digitizers attached to your system, then you may need to specify the serial port for the desired digitizer. Only one mouse or digitizer can be used at a time. Lines in your CONFIG.SYS which are mouse related are... DEVICE=C:\OS2\VISION.SYS... DEVICE=C:\OS2\PCLOGIC.SYS... DEVICE=C:\OS2\RODENT.SYS... DEVICE=C:\OS2\MOUSE.SYS... all such lines should be removed and replaced as shown above. ---------------------------------- Options ----------------------------------- The following options are supported... COM=# This option allows the serial port to explicitly specified. This option may be specified as: COM=1 COM=2 COM=3 COM=4 where 1..4 is one of the standard com ports. So, COM=1 is normally equivalent to: PORT=03f8 IRQ=4 If both this option and the PORT option are omitted then the mouse driver will scan COM1..COM4 (in order) to find the mouse. This procedure works and is reasonably reliable, however it is impossible to completely restore the uart state so automatic scanning could potentially cause problems with other devices attached to serial ports. This mouse driver will restore more of the serial port state than the IBM mouse drivers. Specifying either this option or the PORT option also reduces the time required to initialize the mouse driver -- by as much as a couple of seconds. PORT=# This option allows the serial port address to explicitly specified, and may be specified as: PORT=xxxx where "xxxx" is the hex address of the port to be used. If the COM option is also specified, this option takes precedence. Any serial port which is compatible with the 8250 uart may be used. This mouse driver is not restricted to COM1..COM4, unlike the IBM mouse drivers. If both this option and the COM option are omitted then the mouse driver will scan COM1..COM4 (in order) to find the mouse. This procedure works and is reasonably reliable, however it is impossible to completely restore the uart state so automatic scanning could potentially cause problems with other devices attached to serial ports. This mouse driver will restore more of the serial port state than the IBM mouse drivers. Specifying this option also reduces the time required to initialize the mouse driver -- by as much as a couple of seconds. IRQ=# This option allows the interrupt number to explicitly specified. Any interrupt from 2..15 may be used, unlike the IBM drivers which are restricted to interrupts 2..7. If omitted, the interrupt level to be used will be determined from the port address. This procedure is only reliable for the standard COM1 and COM2 port addresses 3f8 and 2f8. It may work for COM3 and COM4 (depending on the actual port addresses). The IBM mouse driver has the same (undocumented) problem, but does not provide a mechanism to specify the interrupt number. BAUD=# This option allows the baud rate to be specified. It may be one of 150, 300, 600, 1200, 2400, 4800, 9600 or 19200 All mice do not support all baud rates. To use the lowest baud rate supported by the mouse specify: BAUD=150 and to use the highest baud rate supported by the mouse specify: BAUD=19200. The lowest baud rate which gives good performance should be used to reduce system load. If this option is not specified then it defaults to a value determined by the protocol in use. Each protocol has a default baud rate based on the default mouse baud rate. If a baud rate is specified which is not supported by the protocol the highest baud rate which is less than the specified baud rate will be used, if any, and otherwise the lowest baud rate which is higher than the specified baud rate will be used. MOUSE=xx This option allows the mouse type to be specified. This is required to use anything other than the newer 3300 digitizers. If an mouse type is specified that fails to match the hardware in use then the mouse driver may or may not load, and if loads may fail to operate properly. This option may be specified as: MOUSE=D3 CalComp 3300 and newer digitizers. Protocols: ABSOLUTE, RELATIVE default: ABSOLUTE Baud Rate: 150, 300, 600, 1200, 2400, 4800, 9600, 19200 default: 9600 MOUSE=D9 CalComp 9x00 digitizers. The 9x00 digitizers are older products which do not support full software initialization. These tablets MUST be set for 9600 baud. The 9100 model tablets must have the hardware switches configured for format 5. If reconfigured by other applications the tablet must be reset before this driver will function. This option is required for these digitizers, they cannot be automatically recognized. Protocols: ABSOLUTE, RELATIVE default: ABSOLUTE Baud Rate: 9600 default: 9600 MOUSE=DW CalComp WIZ and 2x00 digitizers. The WIZ and 2x00 digitizers are older products which do not support full software initialization. These tablets MUST be set for 9600 baud. If reconfigured by other applications the tablet must be reset to 9600 baud before this driver will function. This option is required for these digitizers, they cannot be automatically recognized. Protocols: ABSOLUTE, RELATIVE default: ABSOLUTE Baud Rate: 9600 default: 9600 ABSOLUTE This option specifies that the "absolute" communications protocol is to be used. This is the default protocol. This is an "absolute" protocol, i.e. each position on the digitizer tablet corresponds exactly to a point on the screen. RELATIVE This option specifies that the "relative" communications protocol is to be used. BUTTONS=# This option indicates the number of buttons to be supported. This option may be specified as: BUTTONS=2 BUTTONS=3 ORDER=# This option specifies the button ordering. Digitizer pucks tend to be inconsistent between logical button numbering and physical button placement and this option is almost always required for convenient use of a digitizer. Further, while OS/2 allows the left and right buttons to be swapped for left hand users, it doesn't do so correctly for three button mice and the swapping does not function at all for DOS and OS/2 full screen sessions. Trailing digits may be omitted if they are in order. At least one digit must be specified. This mouse driver supports from 2 to 7 physical buttons. Any buttons above button 7 will be ignored. This option may be specified as: ORDER=1234567 where each digit is the button to be used for the corresponding button position. Omitted digit positions which be assigned their position index. It is an error to specify the same button twice, or to fail to specify a button. Thus: ORDER=1 ORDER=12 ORDER=123 ORDER=1234 ORDER=12345 ORDER=123456 ORDER=1234567 all result in the default button ordering. But: ORDER=122 ORDER=124 are both errors. And: ORDER=7654321 reverses the button ordering. So button 1 will be treated the same as button 7, button 2 the same as button 6, and so on. The most common button orderings for mice are: ORDER=321 which reverses the left and right buttons, leaving the middle button unaffected. Also: ORDER=132 which reverses the middle and right buttons. Thus OS/2 button 1 is physical button 1, OS/2 button 2 is physical button 2 and OS/2 button 3 is physical button 3. One useful ordering for some digitizer pucks arranged in a "diamond" ordering is: ORDER=2143 For mice, the left mouse button is always physical button 1, the right mouse button always physical button 3 and the middle mouse button (if present) is always physical button 2. The general button assignment strategy for BUTTONS=2 is... Button 1 -- OS/2 button 1 (left button down) Button 2 -- OS/2 button 1+2 (all buttons down) Button 3 -- OS/2 button 2 (right button down) Button 4 -- OS/2 button 1+2 (all buttons down) Button 5 -- OS/2 button 1+2 (all buttons down) Button 6 -- OS/2 button 1+2 (all buttons down) Button 7 -- OS/2 button 1+2 (all buttons down) Notice that for two button mice no more than 3 buttons can be profitably used for OS/2. The general button assignment strategy for BUTTONS=3 is... Button 1 -- OS/2 button 1 (left button down) Button 2 -- OS/2 button 3 (middle button down) Button 3 -- OS/2 button 2 (right button down) Button 4 -- OS/2 button 1+2 chord (left + right buttons down) Button 5 -- OS/2 button 1+3 chord (left + middle buttons down) Button 6 -- OS/2 button 2+3 chord (middle + right buttons down) Button 7 -- OS/2 button 1+2+3 chord (all buttons down) Notice that for three button mice no more than 7 buttons can be profitably used for OS/2. Also, many digitizer pucks have the limitation that only one button can be pressed at a time and there are both mice and digitizer pucks which have buttons hard-wired to generate chord clicks of other buttons and where mulitple presses of buttons may result in the appearance of some other button being pressed. These problems cannot be resolved by this driver, but the ORDER option can allow the best setup for a particular mouse or puck. RESPONSE=# This option specifies a divisor to reduce the mouse responsiveness. If omitted it defaults to 1. It may be specified as: RESPONSE=1 RESPONSE=2 RESPONSE=4 RESPONSE=8 and only these values may be used. This can be useful because most digitizers are very high resolution which is FAR too sensitive for most people. Further, if a user has difficultly holding the mouse steady (such as Parkinson's victims) this allows the mouse to ignore small movements. Caution: with this option it is possible to slowly move the mouse without moving the mouse cursor at all. This effect does NOT happen for RESPONSE=1 and would be most noticable for RESPONSE=8. Notice that this option is the opposite of mouse acceleration. As for the ORDER option, OS/2 DOES provide a mouse sensitivity control, but that control is not effective for DOS or OS/2 full screen sessions. X=[#..]# This option specifies the active horizontal range for a digitizer tablet. It may be specified as: X=# X=#..# In the first case, the active range is assumed to be 0..#-1 and in the second case the active range is #1..#2-1. Thus, X=7500 would result in an active range of 0 to 7499, inclusive. And X=500..7000 would result in an active range of 500 to 6999, inclusive. If "..#" is present, spaces may NOT surround "..". However, spaces MAY surround "=" as in all other options. This is option is only necessary when it is not possible to determine the digitizer size automatically or when it is not desired to use the entire digitizer surface as the active mouse area. This option can be used to create non-symmetrical margins. Normally the MARGIN parameter is used to specify symmetrical margins. The MARGIN value is added to the minimum and subtracted from the maximum horizontal range. However, if for example, the digitizer tablets physically active area was X=0..7500 then specifying X=1000..4000 would give a left (or right) margin of 1000 and a right (or left) margin of 3500 (some tablets may physically reverse left and right). Y=[#..]# This option specifies the active vertical range for a digitizer tablet. It may be specified as: Y=# Y=#..# In the first case, the active range is assumed to be 0..#-1 and in the second case the active range is #1..#2-1. Thus, Y=7500 would result in an active range of 0 to 7499, inclusive. And Y=500..7000 would result in an active range of 500 to 6999, inclusive. If "..#" is present, spaces may NOT surround "..". However, spaces MAY surround "=" as in all other options. This is option is only necessary when it is not possible to determine the digitizer size automatically or when it is not desired to use the entire digitizer surface as the active mouse area. This option can be used to create non-symmetrical margins. Normally the MARGIN parameter is used to specify symmetrical margins. The MARGIN value is added to the minimum and subtracted from the maximum horizontal range. However, if for example, the digitizer tablets physically active area was Y=0..7500 then specifying Y=1000..4000 would give a left (or right) margin of 1000 and a right (or left) margin of 3500 (some tablets may physically reverse left and right). MARGIN=# This option allows the margin on an absolute pointing device to be specified. The default is MARGIN=0 since some digitizer tablets have a hardware margin. Units are in terms of the device resolution. Most digitizers are programmed for 1000lpi so MARGIN=500 gives a half inch margin on each side of the tablet. When the cursor is in the margin area button presses will be recognized and the mouse cursor will move in two dimensions but will be "pegged" to the appropriate side and so will not move in that dimension. Use of a margin prevents a "cliff" effect. The hardware margins provided by some devices will ONLY recognize button presses. PRESSURE=# This option is only effective for digitizer pens which are pressure sensitive. This options sets the pressure threshold at which a pen tip recognizes a button press. The pressure must be in the range of 1 to 255 inclusive. The default, and recommended value is 4. ------------------------------------------------------------------------------