home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 3 / goldfish_volume_3.bin / files / fish / disks / d1038.lha / Programs / Wacom / Documentation / English / Wacom.txt < prev   
Encoding:
Text File  |  1994-11-06  |  62.5 KB  |  1,376 lines

  1.  
  2.  
  3.  
  4.                             Users  Manual  for  the
  5.  
  6.                            Wacom  -  Digitizerdriver
  7.  
  8.                           for  the  Commodore  Amiga
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.                                  Abstract
  18.  
  19.  
  20.          The program enables you to use a pressure sensitive digitizertablet
  21.          from Wacom with your Commodore Amiga.  The tablet can be used to-
  22.          gether with the mouse (or without it) as direct_input medium. The-
  23.          refore the driver can be used together with (nearly) every software.
  24.          Furthermore the (pressuresensitive) data provided by the tablet can
  25.          be exported in custom applications using a documented softwareinter-
  26.          face. Under AmigaOS 3.0 or better the pressure data is also directly
  27.          used by Intuition and passed to every window where an application can
  28.          use the tabletdata.
  29.  
  30.  
  31.                         (c) 1993-1994 Roland Schwingel
  32.  
  33.  
  34.  
  35.          1. Introduction and legal stuff
  36.  
  37.  
  38.          The Program enables you to use a pressure sensitive digitizertablet
  39.          from Wacom with your Commodore Amiga. The amigamousepointer is con-
  40.          trolled by the driver for providing compatibility to nearly every
  41.          program. The digitizertablet can be used either in pressure or in
  42.          normal mode. Nearly all the (pressuresensitive) data provided by the
  43.          tablet can be exported in custom applications using a documented soft-
  44.          wareinterface. Under AmigaOS 3.0 or better the pressure data is also
  45.          directly used by Intuition and passed to every window where an app-
  46.          lication can use the tabletdata.
  47.  
  48.  
  49.  
  50.          1.1   legal stuff
  51.  
  52.  
  53.          The Wacom Driver is Shareware. If you want to use the program you
  54.          should send - after you have tested the program for about 14 days -
  55.          the registration fee ($20.00 or more) together with the filled
  56.          registration form to the author.
  57.          With your registration fee you are helping to develop (more) good
  58.          software for the Amiga. The version you are holding in your hand is
  59.          not crippled in any way. The programs in the Develop drawer are not
  60.          Shareware. They are serving as examples for communicating with the
  61.          driver in own applications. Together with their source they are
  62.          Freeware.
  63.  
  64.          The software and all principles described here were developed strictly
  65.          using the Commodore Developer Guidelines. The package was extensively
  66.          tested and is considered to be free of errors. But there is nobody on
  67.          earth who is perfect. Therfore I MUST write the following lines. Read
  68.          them carefully.
  69.  
  70.               +-----------------------------------------------------+
  71.               | ATTENTION:                                          |
  72.               |                                                     |
  73.               | YOU ARE USING THE WACOM DRIVER ENTIRELY AND ONLY    |
  74.               | ON YOUR OWN RISK. THE AUTHOR IS NOT LIABLE AND CAN  |
  75.               | NOT BE PUNISHED IN ANY WAY FOR PROPABLY OCCURING    |
  76.               | DAMAGES ON YOUR HARD- OR SOFTWARE OR OTHER DAMA-    |
  77.               | GES OR ERROS WHICH MAY RESULT FROM USING THE SOFT-  |
  78.               | WARE OR ITS DOCUMENTATION. THIS PACKAGE IS PROVIDED |
  79.               | "AS IS", AND THERE IS NO WARRANTY.                  |
  80.               +-----------------------------------------------------+
  81.  
  82.          Your are allowed to give the package to another party at any time if
  83.          you consider the following terms:
  84.  
  85.          o The Wacom package may only be given away to another party in
  86.            complete and unchanged form.  You are not allowed to delete files
  87.            nor to modify one or more files nor to add files to the package if
  88.            you want to give it away. Compression of the package is allowed as
  89.            long as all informations are remaining completely intact when de-
  90.            crompessing.
  91.  
  92.          o The package may not be published on PD-Disks with a price greater
  93.            than $5 (US). Exceptions are PD-CD-roms, their price may be higher.
  94.  
  95.          o Commercial use or trade of the package is only allowed after given
  96.            permission by the author. The Wacom Company is allowed to accomplish
  97.            and distribute their tablets together with this package. This
  98.            circumstance frees the person or company which buys the digitizer
  99.            together with the package not from paying the Shareware fee.
  100.  
  101.  
  102.  
  103.          1.2   Registering and the address of the author
  104.  
  105.  
  106.          If you want to use this program you must register it. The amount of
  107.          the Shareware fee is 20.00 US$ (or 25.00 DM). Please do not send any
  108.          other currencies. If you want to send the money via bank order you
  109.          should mention your name and address on the bank order form. The
  110.          directory of this document contains a registration form with the
  111.          filename "Register-E.Txt". Please print it, fill it and send it to-
  112.          gether with the Shareware fee to:
  113.  
  114.  
  115.               Roland Schwingel
  116.               Lilienthalstrasse 9
  117.               92421 Schwandorf
  118.               GERMANY
  119.  
  120.  
  121.          If there are any questions or problems concerning the package you can
  122.          reach the author also through Email and telephone:
  123.  
  124.  
  125.               Email: roland.schwingel@extern.uni-regensburg.de
  126.               Phone: +49-(0)9431-5779
  127.  
  128.  
  129.  
  130.          1.3   Updates
  131.  
  132.          The registrationfee also contains the mailing of the actual Version on
  133.          disk. When there is a new version in preparation I will wait with sen-
  134.          ding until the new Version is finished. Updates are sent via Email for
  135.          free. If you like an update via disk you should send US$8 (or 10DM)
  136.          to the above adress for covering the costs for shipping and handling.
  137.  
  138.          The actual version can also be obtained via anonymous FTP from various
  139.          Aminet sites and will also be published on PD-Disks like the Fish
  140.          Series.
  141.  
  142.  
  143.  
  144.          2   System requirements and Installation
  145.  
  146.  
  147.          2.1   System requirements
  148.  
  149.  
  150.          If you want to use the Wacom driver you will need at least Kickstart
  151.          and Workbench 2.04. The package contains also a german catalog file
  152.          which you can use on a WB2.1 and up system and enables you to receive
  153.          all texts which are printed by the program in german. And at least you
  154.          need a Wacom tablet.
  155.  
  156.          These are the tablets which are currently supported by the driver:
  157.  
  158.          o SD-013
  159.          o SD-113
  160.          o SD-210
  161.          o SD-310 SD-311 SD-312
  162.          o SD-320 SD-321 SD-322
  163.          o SD-420 SD-421 SD-422
  164.          o SD-510
  165.          o all digitizers of the UD-Series eg. ArtZ, UD-1212, ...
  166.          o all digitizers of the KT-Series eg. ArtPad
  167.  
  168.          The digitizer should be configured as delivered by Wacom.
  169.  
  170.          The driverprogramm runs with any CPU which is currently used with the
  171.          Amiga. If you want to use the driver, a faster CPU is recommended
  172.          because if you are running on 68000 the mousepointer is a little bit
  173.          slow. The memoryusage of the driver is very low (about 45KB), it can
  174.          therefore be used together with any other programm. Together with some
  175.          mouse accelerators or "Sun Mouse" tools the mousepointer reacts a
  176.          little bit wild. If you got problems steering the mousepointer with
  177.          the tablet deactivate those tools.
  178.  
  179.  
  180.  
  181.          2.2   Installation
  182.  
  183.  
  184.          Installation is very simple. The driverprogram should be copied to-
  185.          gether with its Icon in the WBStartup drawer on your bootpartition (or
  186.          in the WBStartup Drawer in the rootdirectory of your boootdisk). There
  187.          the program will automatically be activated every time you boot.
  188.  
  189.          The absolute path for installing the driver should be:
  190.  
  191.               SYS:WBStartup
  192.  
  193.          If you are running under Workbench 2.1 or 3.x you can install the
  194.          german catalogfile if your workbenchlanguage is "Deutsch". Just copy
  195.  
  196.          catalogs/deutsch/Wacom.catalog
  197.  
  198.          to
  199.  
  200.          LOCALE:catalogs/deutsch/Wacom.catalog.
  201.  
  202.          To make installation easier there is a SHELL-Skript, wich performs all
  203.          these actions mentioned above. Just start "Install" from SHELL or
  204.          Workbench.
  205.  
  206.          The tablet must be connected to the serial port of your Amiga. If you
  207.          got a Multi-IO board with serial ports you can also connect the tablet
  208.          there. A scheme for a connector cable for the SD-series tablet is sup-
  209.          ported in the directory of this document for the reason that you are
  210.          having no suitable cable. It is an IFF-ILBM picture called
  211.          "Wacom-SD.ilbm". The scheme shows a cable for Amiga500/2000. The cable
  212.          should also be suitable for A3000/4000/600/2000.
  213.          Only A1000 Users have to modify the cable due to a different serial
  214.          port connector. If you got an UD- or KT-tablet you have to use the
  215.          delivered cable which also suits perfectly. (UD/KT-series digitizers
  216.          are having the powerstrips inside the datacable.)
  217.  
  218.  
  219.  
  220.          3   Usage and Configuration of the Driver
  221.  
  222.  
  223.          The Wacom Driver is a so called Commodity.  Commodities are linked in
  224.          the input data stream of the Amiga and are sending/filtering Input-
  225.          events.
  226.  
  227.          The Driverporgram was developed for the WBStartup drawer of the WB
  228.          (WB = Workbench). There it is started whenever the Workbench is
  229.          loaded. The driver can only be started once. When it is started for
  230.          the second time and the first program is still active in memory the
  231.          first program opens its configurationwindow and the second one quits
  232.          immediately and silent. The driver can also be started from any other
  233.          drawer from the Shell or from the WB. The program takes a couple of
  234.          parameters from the user when it is started.
  235.          If you start it from WB the so called TOOLTYPES are used. These
  236.          tooltypes are stored in the icon of the program.
  237.  
  238.  
  239.  
  240.          3.1   The Icon Tooltypes
  241.  
  242.  
  243.          In most cases you need not change the tooltypes of the Wacom driver
  244.          because it saves its settings on its own in the Tooltypes (look later
  245.          chapters for more details).  There is only one Tooltype (INPUT_EVENT)
  246.          which is read, used and saved by the programm, but which can not be
  247.          modified within the program.
  248.  
  249.          The following Tooltypes are used:
  250.  
  251.               CX_PRIORITY  (Default: 0) The priority of the commodity. Normally
  252.                            the default value of 0 is no subject of change.
  253.  
  254.               CX_POPUP     (Default: yes) If this tooltype is set to yes the
  255.                            configurationwindow is opened every time the program
  256.                            is started and you can easily configure the driver
  257.                            before the tablet is initialized. If the tooltype is
  258.                            set to no the driver will immediatley be started
  259.                            using the settings saved in the tooltypes. The
  260.                            configurationwindow can easily be opened via hotkey
  261.                            even if the driver is running.
  262.  
  263.               CX_POPKEY    (Default: lalt w) Here is the keycombination stored
  264.                            which is used as hotkey for opening the window when
  265.                            the commodity is active. Defaulted to left Alt key
  266.                            together with the key w.
  267.  
  268.               APPICON      (Default: no) The window can also be opened when the
  269.                            commodity is deactivated. If APPICON = yes there
  270.                            will be a wacomappicon displayed on the WB. If a
  271.                            doubleclick is performed on this appicon the confi-
  272.                            gurationwindow opens.
  273.  
  274.               APPMENU      (Default: no) In the "Tools" menu on the WB an entry
  275.                            is created which opens the window everytime it is
  276.                            selected. (APPMENU must be set to yes)
  277.  
  278.               BEEPER       (Default: off) This field contains the state of the
  279.                            tabletbuzzer^1. If set to on the buzzer will be
  280.                            enabled for a short time whenever a button on an
  281.                            input device is pressed.
  282.  
  283.               MODE         (Default: normal) Setting whether the tablet should
  284.                            be in pressure mode or not. If MODE = pressure the
  285.                            pressure sensitive mode is selected. You can use the
  286.                            so called "pressure stylus" in this mode. If MODE =
  287.                            normal the "standard stylus" or the cursor can be
  288.                            used for input. This Tooltype is only necessary for
  289.                            SD-Tablets and for UD-Tablets which are driven with
  290.                            the Wacom II-S Commandset.
  291.  
  292.               LMB_EMULATION (Default: off) If the tablet is used in pressure
  293.                            mode there can no buttonstatus be transmitted to the
  294.                            driver. Only pressure data is supplied in this mode.
  295.                            Therefore it is normally impossible to hit any icons
  296.                            or gadgets with this pen. The driverprogram is able
  297.                            to emulate a click to the left mousebutton when a
  298.                            certain pressure limit is reached.
  299.                            If you want to use this feature you must set this
  300.                            tooltype to on. Only relevant when MODE=pressure and
  301.                            Wacom II-S commands are used.
  302.  
  303.               LMB_LIMIT    (Default: 15) That is the limit which must be
  304.                            reached in pressure mode to emulate a LMB hit.
  305.                            Set MODE = pressure and LMB_EMULATION = on. Values
  306.                            for the limit must be between -30 and +30. This
  307.                            tooltype is also only necessary for SD-Tablets and
  308.                            for UD-Tablets in Wacom II-S mode.
  309.  
  310.               DEVICE       (Default: serial.device) Here is the name of the
  311.                            systems devicedriver stored which is used to com-
  312.                            municate with the Wacom tablet. If the tablet is
  313.                            connected to a MultiIO board you must insert the
  314.                            name of the Multi-IO driver. If connected to the
  315.                            normal serial port this place should be filled with
  316.                            serial.device. (Please refer also to your MultiIO
  317.                            oard documentation.)
  318.  
  319.               UNIT         (Default: 0) The default value must only be changed
  320.                            when the digitizer is connected to a MultiIO-Board.
  321.                            Insert the number of the MultiIO-Board's serial port
  322.                            to which you have connected the tablet. (Please
  323.                            refer also to your MultiIO Board documentation.)
  324.  
  325.               MOUSE        (Default: FULL) The driverprogram enables the user
  326.                            to control the mousepointer with the digitizer.
  327.                            With help of this tooltype you can define which
  328.                            parts of the mouse will be emulated. There are 3
  329.                            independent settings:
  330.  
  331.                            +-----------+-------------------------------------+
  332.                            | FULL      | The mousepointer and the 2 mousebut-|
  333.                            |           | tons will be set by_the_program     |
  334.                            +-----------+-------------------------------------+
  335.                            | POINTER   | Only the mouspointer will be set by |
  336.                            |           | the tablet.                         |
  337.                            +-----------+-------------------------------------+
  338.                            | NONE      | No mousemulation. The data send by  |
  339.                            |           | the tablet are                      |
  340.                            |           | only provided to the softwareinter- |
  341.                            |           | face.                               |
  342.                            +-----------+-------------------------------------+
  343.  
  344.               COMMANDSET   (Default: WACOM_IV) This tooltype is used to define
  345.                            which commandset is used for communication with the
  346.                            tablet. You can choose^2 between WACOM_IV and
  347.                            WACOM_II-S.
  348.  
  349.               AREA         (Default: BLANK) Determines size and location of the
  350.                            working area on the tablet.
  351.  
  352.                            +-----------+-------------------------------------+
  353.                            | FULL      | The whole working area on the tablet|
  354.                            |           | can be used for input.              |
  355.                            +-----------+-------------------------------------+
  356.                            | BLANK     | The same as FULL with the difference|
  357.                            |           | that there is a 4 millimeter sized  |
  358.                            |           | border around the working area to   |
  359.                            |           | make it easier to reach the border  |
  360.                            |           | of a screen with the tablet. This   |
  361.                            |           | border is also used to initiate the |
  362.                            |           | scrolling of an so called           |
  363.                            |           | Autoscroll-Screen.                  |
  364.                            +-----------+-------------------------------------+
  365.                            | CUSTOM    | A selfdefined working area is used  |
  366.                            |           | for data input. Also look at the    |
  367.                            |           | CUSTOM_AREA-Tooltypes.              |
  368.                            +-----------+-------------------------------------+
  369.  
  370.               MULTIMODE    (Default: OFF) The Wacom IV commandset offers the
  371.                            capability of using 2 inputdevices^3 at the same
  372.                            time. You can switch this on or off using this tool-
  373.                            type. If you want to use multimode you must also use
  374.                            the Wacom IV commandset.
  375.  
  376.               MULTI_MOUSE  (Default: PEN) Because you can use two inputdevices
  377.                            at the same time when in multimode, you must
  378.                            determin which device is used as mouse. You can
  379.                            select between PEN and DIGITIZER. This has only an
  380.                            effect when the mouseemulation is also switched on.
  381.  
  382.               CUSTOM_AREA_LEFT (Default: 0)
  383.               CUSTOM_AREA_TOP (Default: 0)
  384.               CUSTOM_AREA_RIGHT (Default: 15239)
  385.               CUSTOM_AREA_BOTTOM (Default: 15239) These 4 Tooltypes are de-
  386.                            scribing the borders of the custom working area.
  387.                            Everything inside can be accessed. These Tooltypes
  388.                            are only used when AREA = CUSTOM. The marked Area
  389.                            must have at least a size of 1000 on 1000 points.
  390.  
  391.               INPUT_EVENT  (Default: TABLET) As mentioned above, this is the
  392.                            only setting which can not be changed when the
  393.                            driver is running. This Tooltype selects the
  394.                            Inputevents^4 that are used to set the mousepointer.
  395.                            You got two choices:
  396.  
  397.                            At first there is TABLET. All data is sent over an
  398.                            inputeventsubclass to the OS^5 as an inputevent from
  399.                            a digitizer. This also enables sending of pressure
  400.                            data.
  401.                            
  402.                            Under AmigaOS 2.0 this tabletinterface is not 
  403.                            completely implemented. This solution is not very
  404.                            fast and the pressure is currently not used inside
  405.                            the OS. Furthermore there are problems with 
  406.                            autoscrolling screens.
  407.  
  408.                            When running AmigaOS 3.0 or better there is a 
  409.                            different much better tabletinterface. The tablet
  410.                            data like the pressure are taken by the operating
  411.                            system and sent to every intuition window. All what
  412.                            the application has to do is to take the datas.
  413.  
  414.                            Dependend on your current OS Version the correct
  415.                            routines are choosen automatically.
  416.  
  417.                            The other possibility is PIXEL. The data will be 
  418.                            send as a kind of mousedata to the OS. This solution
  419.                            is faster, but has also some disadvantages. There
  420.                            are problems with screendragging and a recalculating
  421.                            from tabletcoordinates to screencoordinates is
  422.                            necessary inside of the driver. Additionally there
  423.                            is no way to send pressuredata.
  424.  
  425.                            The cause for the fact that this setting can not be
  426.                            made from inside the program is, that this option is
  427.                            only for "expert" users. In the next version I will
  428.                            decide for only one method and than this tooltype
  429.                            will be removed. You should try out both settings
  430.                            and then choose the one you like most.
  431.  
  432.               DONOTWAIT    This tooltype is not used by the tabletdriver. It is
  433.                            used by the WB if you start from the WBStartup
  434.                            drawer. The Wacom driver sets this tooltype auto-
  435.                            matically.
  436.  
  437.  
  438.          Once again I have to mention that you need not change the contents of
  439.          the tooltypes manually. All settings (except from INPUT_EVENT) can be
  440.          made from the configurationwindows. Your settings are saved here
  441.          inside the tooltypes by the program automatically.
  442.  
  443. ____________________________
  444.          ^1:  The buzzer is only available to tablets of the SD series.
  445.          ^2:  Attention: SD series tablets can not be driven in Wacom IV !
  446.          ^3:  Pen and Cursor. You need two different devices
  447.          ^4:  Inputevents: Commands which are sent to the operating system
  448.               (more exactly here: "input.device") for all kinds of input
  449.               (eg.  mouse, keyboard) in order to start the desired action.
  450.          ^5:  OS = operating system
  451.  
  452.  
  453.  
  454.          3.2   Start from the SHELL
  455.  
  456.  
  457.          If you are starting the driver from the SHELL the icon tooltypes are
  458.          not read and passed to the program. You must therefore give all
  459.          parameters to the program by writing them separated by spaces behind
  460.          the program's name. If a parameter is equivalent to the default value
  461.          you need not write it in the commandline.
  462.  
  463.          Example for a SHELL start:
  464.  
  465.  
  466.              Wacom MOUSE=POINTER
  467.  
  468.  
  469.  
  470.          3.3  Differences between the tablets
  471.  
  472.  
  473.          The Wacom driver supports three different kinds of tablets.
  474.  
  475.          First there are the tablets of the SD series and on the other hand
  476.          there are the UD and KT-series digitizers. The last one can do every-
  477.          thing that SD tablets can do - with two exceptions. The UD series
  478.          tablets are having no buzzer and no extra reset knob^6.
  479.  
  480. ____________________________
  481.          ^6:  Isn't so necessary, because UD tablets are configured with help
  482.               of a menubar and if a Reset is necessary the tablet will do so
  483.               automatically.
  484.  
  485.  
  486.  
  487.          3.3.1 The SD Series tablets
  488.  
  489.          For these digitizers there are existing 3 different kinds of input
  490.          devices:
  491.  
  492.          o Standard Stylus: This pen has two switches (one in the tip and one
  493.            on the side) and is designed for drawing. There is no pressure
  494.            transmission.
  495.  
  496.          o Pressure Stylus: This pen has directly no switches, but a "soft"
  497.            tip. Designed for transmitting pressure.
  498.  
  499.          o Cross hair cursor: Designed for precise digitizing. It has 4 Buttons
  500.            and transmitts no pressure.
  501.  
  502.          Beside of third party tabletemulations this tablet features the
  503.          Wacom II-S commandset.
  504.  
  505.  
  506.  
  507.          3.3.2 The UD Series tablets
  508.  
  509.  
  510.          This digitizer uses only 2 different kinds of input devices:
  511.  
  512.          o Stylus:  This pen also has two switches (one in the tip and one on
  513.            the side). The tip switch also sends pressuredata, therefore there
  514.            is no need for an extra pressure pen.
  515.  
  516.          o Cross hair cursor: There are two different kinds. One with 4 and one
  517.            with 16 Buttons. These devices are also sending no pressure.
  518.  
  519.          Beside of third party tabletemulations the Wacom II-S and the Wacom IV
  520.          commandsets can be used.  The Wacom IV commandset has some significant
  521.          improvements:
  522.  
  523.          o Greater pressure range: Wacom II-S Commandset features 60
  524.            steps. Wacom IV features 120 or 256^7 steps of pressure.
  525.  
  526.          o Multimode: It is possible to use 2 (different) input devices at
  527.            same time.
  528.  
  529.          o Macrokeys: The UD tablets are having so called "Macro Buttons"
  530.            outside the sensitive area. They can be used from software for own
  531.            funtions.
  532.  
  533.          o Pressure characteritics can be changed^8.
  534.  
  535.          o Many expansions that are making it easier for the programmer. Among
  536.            these there is a more compact data representation which makes it
  537.            faster to transform the received data. Additionally Wacom IV always
  538.            works in pressure mode and button information is supplied at the
  539.            same time.
  540.  
  541. ____________________________
  542.          ^7:  with Romversion 1.2 and up. You have also double density with
  543.               these roms.
  544.          ^8:  You choose between two settings.
  545.  
  546.  
  547.  
  548.          3.3.3 The KT Series tablets
  549.  
  550.          Currently there is only one tablet of this series available (ArtPad),
  551.          so this section describes this tablet.
  552.  
  553.          These tablets can do everything what UD series tablets can do, but
  554.          with some limitations.
  555.  
  556.          o This tablet can operate with Wacom II-S and Wacom IV commands.
  557.  
  558.          o Like UD series tablets with a romversion 1.2 and up it has a double
  559.            resolution^9 and a double pressurerange^10 compared to UD series
  560.            tablets with a romversion lower than 1.2.
  561.  
  562.          o There is no menubar.
  563.  
  564.          o The only inputdevice available for this tablet is the pen. There is
  565.            no digitizer, and therefore no multimode.
  566.  
  567. ____________________________
  568.          ^9:  up to 2540 lpi.
  569.          ^10: 256 steps
  570.  
  571.  
  572.  
  573.          3.4   Controlling the mousepointer with the tablet
  574.  
  575.  
  576.          With activated driver the mousepointer can be controlled either with
  577.          the mouse or the tablet (if mouseemulation is active).  The whole
  578.          selected working area on the tablet represents the area on your
  579.          monitor which can be reached by the mouse. The top left edge corres-
  580.          ponds to the top left edge on your monitor. The bottom right edge
  581.          corresponds to the bottom right edge on the monitor. The buttons of
  582.          the tablet's input devices are connected to following functions:
  583.  
  584.          Standard Stylus:   A click with the tip is equivalent to a click on
  585.                             the left mousebutton. The switch on the side of
  586.                             the pen reacts like the right mousebutton. This is
  587.                             also TRUE for the combined pen of the UD/KT series
  588.                             tablet in Wacom IV mode.
  589.  
  590.          Pressure Stylus^11: This pen can only be used when in pressure mode.
  591.                             The pen transmits the valid pressure between -30
  592.                             and +30. You can, if you like to, enable the
  593.                             drivers LMB emulation capability. When this option
  594.                             is switched on a hit to the left mousebutton is
  595.                             emulated when a certain pressure is reached.
  596.  
  597.          Cursor:            This device has four buttons. Two of these buttons
  598.                             (the top button in the middle and the bottom button
  599.                             in the middle) are for free usage in own app-
  600.                             lications. The left and the right button are having
  601.                             the same functions like your mouse. If you got a 16
  602.                             buttoned cursor the mouse funtions are mapped to
  603.                             the buttons 2 and 4.
  604.  
  605. ____________________________
  606.          ^11:  only available with SD tablets.
  607.  
  608.  
  609.  
  610.          3.5   The Mainwindow
  611.  
  612.  
  613.          The mainwindow will appear when at least one of these events occur:
  614.  
  615.          o When the program is started and the tooltype CX_POPUP is set to yes.
  616.  
  617.          o The Commodities Exchange^12 programm has sent an "appear" message to
  618.            the driver.
  619.  
  620.          o The hotkey was preesed. (only when Commodity is active)
  621.  
  622.          o The appicon was doubleclicked. (only when the appicon option is
  623.            enabled)
  624.  
  625.          o The Wacom AppMenuItem was selected from the WB's "Tools" menu.
  626.            (only when the appmenu option is enabled)
  627.  
  628.          o The program was started again even it was still active in memory.
  629.  
  630.          The window is devided in four areas. For description the english
  631.          localization is used. Most of the driverfuntions can also be accessed
  632.          from keyboard too by hiting the corresponding underlined letter.
  633.  
  634. _______________________________
  635.          ^12: Commodities Exchange is a part of your Workbench disk.
  636.  
  637.  
  638.  
  639.          3.5.1 Info
  640.  
  641.  
  642.          The type and the romversion of the tablet are displayed here when the
  643.          driver was activated succesfully.
  644.  
  645.  
  646.  
  647.          3.5.2 Commodity Preferences
  648.  
  649.  
  650.          Here you can enter all commodity relevant data.
  651.  
  652.               Hotkey      Using this stringgadget you can enter the keycom-
  653.                           bination for the hotkey which opens the closed window
  654.                           when the commodity is activated. If you don't like
  655.                           the default hotkey just enter a new one. It will be
  656.                           activated immediately after you have entered it.
  657.                           For valid keyexpressions look into your Workbench
  658.                           manual in the commodities chapter.
  659.  
  660.               Popup       This cyclebutton determins whether the window should
  661.                           be opened upon program start or not.
  662.  
  663.               Pri         Priority of the commodity. Normally the default value
  664.                           (0) needn't be changed.
  665.  
  666.               Commodity   Only when the commodity is activated the mousepointer
  667.                           can be positionated using the tablet. Also opening
  668.                           the window using the hotkey is only available when
  669.                           the commodity is active. Everytime the cyclebutton
  670.                           switches from deactivated to activated the tablet is
  671.                           completely new initialized.
  672.  
  673.               AppIcon     If this checkbox is selected the window can also be
  674.                           opened using an appicon on the Workbench. Just
  675.                           doubleclick it and the window will open. The image
  676.                           for the appicon will be taken from the driver's icon.
  677.                           If there is no icon a build in one is used.
  678.  
  679.               AppMenu     When this gadget is selected the window can be opened
  680.                           selecting the WacomII-S/IV Driver: Popup menuitem
  681.                           from the workbench's toolsmenu.
  682.  
  683.  
  684.  
  685.          3.5.3 Digitizer Preferences
  686.  
  687.          All settings concerning the tablet can be made here.
  688.  
  689.               Device      This stringgadget contains the name of the device
  690.                           which is used to communicate with the tablet. If
  691.                           you have connected the tablet to a multi-IO board
  692.                           you need to enter the name of the device for this
  693.                           board. If the tablet is connected to the normal
  694.                           serial port of the Amiga the name of the device
  695.                           should be serial.device (A change of this setting
  696.                           will only be applied to the tablet after the next
  697.                           initialization).
  698.  
  699.               Unit        The default value (0) must also be changed when the
  700.                           tablet is connected to a multi-IO board. You have to
  701.                           enter the unitnumber of the serial port you have the
  702.                           tablet connected to. Please refer to the boards
  703.                           manual (A change of this setting will only be applied
  704.                           to the tablet after the next initialization).
  705.  
  706.               Commandset  Selects the commandset which is used to communicate
  707.                           with the tablet. You can choose between WACOM II-S
  708.                           and WACOM IV. Wacom IV is only available with the
  709.                           UD/KT series and should be used if you got one. If
  710.                           you got a SD series tablet and want to run Wacom IV
  711.                           this will be detected while the initialization phase
  712.                           of the tablet and you will be notified to correct it.
  713.  
  714.               Multimode   The Wacom IV commandset enables you to use two
  715.                           different inputdevices at the same time. If you want
  716.                           to have this switch this on.
  717.  
  718.               Buzzer      If activated the internal tablet buzzer sounds when
  719.                           a button on an input device is pressed. Remember,
  720.                           only SD series tablets are having a buzzer (A change
  721.                           of this setting will only be applied to the tablet
  722.                           after the next initialization).
  723.  
  724.               Set Mouse   Determins which parts of a normal mouse will be emu-
  725.                           lated by the driver. You can choose Pointer+Buttons,
  726.                           only Pointer and None. If None is selected the
  727.                           incoming data from the tablet will only be available
  728.                           through the softwareinterface.
  729.  
  730.               Multi-Mouse When multimode and mouseemulation are active you must
  731.                           have determined which of the two inputdevices should
  732.                           serve as mouse.
  733.  
  734.               Pressure-Mode If this gadget is selected the tablet is put to
  735.                           pressuresensitive mode during the next initiali-
  736.                           zation. You have to use the so called pressure pen in
  737.                           this mode if you are using a SD series tablet. If
  738.                           Wacom IV commandset is selected the tablet is auto-
  739.                           matically working pressuresensitve.
  740.  
  741.               Emulate LMB When selected a hit to the left mousebutton is emu-
  742.                           lated when a certain pressure is reached if you are
  743.                           working with Wacom II commandset. When Wacom IV is
  744.                           used the parallel transmitted state of the buttons
  745.                           is used for mousebuttons.  Therefore you can't select
  746.                           this in Wacom IV mode.
  747.  
  748.               Limit for LMB Pressure which is at least needed to emulate a hit
  749.                           to the left mouse button. (value must be between -30
  750.                           and +30.) Only selectable if Wacom II is active and
  751.                           LMB emulation is switched to on.
  752.  
  753.               Set Working Area If selected a window is opened. Inside this
  754.                           window you can choose the customize the tablet's
  755.                           working area.
  756.  
  757.  
  758.  
  759.          3.5.4 Controlsection
  760.  
  761.  
  762.          With these 3 gadgets the driver can either be quited or the window
  763.          can be closed or the settings of the tablet can be saved to disk.
  764.  
  765.               Hide        Hitting this gadget closes all windows. If the tablet
  766.                           must be new initialized due to modified settings this
  767.                           is done here, too. The driver is not quited.
  768.  
  769.               Save        Causes the program to save the settings in the tool-
  770.                           array of its icon. If there is no icon an icon is
  771.                           generated. If the tablet must be new initialized
  772.                           due to modified settings this is done here, too.
  773.  
  774.               Quit        After verification of your choice the driver is re-
  775.                           moved and quited.
  776.  
  777.  
  778.  
  779.         3.5.5 The Menus
  780.  
  781.  
  782.         With Version 1.16 the Wacom driver also has menus.
  783.  
  784.               About ...   Opens a little window with some informations con-
  785.                           cerning the driver.
  786.  
  787.               Save        Save the current settings to the icon.
  788.  
  789.               Hide        Closes the commodity window and initializes the
  790.                           tablet if necessary.
  791.  
  792.               Quit        Quits the program after request.
  793.  
  794.  
  795.  
  796.          3.6   The Area Window
  797.  
  798.  
  799.          This window is used to define which parts of the sensitive tabletarea
  800.          should be used for input. This window is structured in two areas.
  801.  
  802.  
  803.  
  804.          3.6.1 Working Area
  805.  
  806.  
  807.          There are 3 possibilities:
  808.  
  809.  
  810.               Full Tablet  The whole sensitive area of the tablet is used for
  811.                           input.
  812.  
  813.               Full Tablet, Borderblanking  Once again the whole sensitive
  814.                           area is used, but there will be a little (4
  815.                           millimeters wide) border on each side of the
  816.                           tablet which is not directly used. This has two
  817.                           advantages:
  818.  
  819.                           1. It is easier to access the edges of a screen.
  820.  
  821.                           2. The border is used to initiate the scrolling of
  822.                              Autoscroll screens.
  823.  
  824.               Custom Area  A self defined workingarea is used for input. If
  825.                           this gadget is selected the gadgets for the custom
  826.                           area are enabled. If you leave again a few milli-
  827.                           meters wide border the scrolling of autoscrollscreens
  828.                           can be initiated.
  829.  
  830.  
  831.  
  832.          3.6.2 Customized Area
  833.  
  834.  
  835.          A custom area can be selected by defining the top left and the bottom
  836.          right edge of the area. You can do this by entering the coordinates by
  837.          hand or you can directly read them from tablet.
  838.  
  839.          The last method is working even with activated and deactivated driver.
  840.          The selected area must have at least a size of 1000 points in both
  841.          directions. Reading of the coordinates from tablet can be finished by
  842.          pressing a key on the tablet's inputdevice and aborted by pressing the
  843.          escape key on the keyboard.
  844.  
  845.  
  846.  
  847.          4  General notes
  848.  
  849.  
  850.          o After each initialization a buzzer sound from the tablet is heared.
  851.            This is normal and shows the end of this process. (only digitizers
  852.            of the SD-Series)
  853.  
  854.          o Following changes of the settings are making it neccesarry to re-
  855.            configure the tablet:
  856.  
  857.            - Device
  858.            - Unit
  859.            - Buzzer
  860.            - Pressure-Mode
  861.            - Multimode
  862.            - Every change within the definition of the working area.
  863.  
  864.          o Together with some mouse accelerators or "Sun Mouse"-tools the
  865.            mousepointer reacts a little bit wild. If you got problems steering
  866.            the mousepointer with the tablet deactivate those tools. This pro-
  867.            blem occurs because some tools are not expecting inputevents from a
  868.            tablet.
  869.  
  870.          o Due to tolerances in the production of the pens some pressure pens
  871.            could have a little bit greater range.
  872.  
  873.          o After accidently hitting on the resetknob on the back of the tablet,
  874.            it must be reinitialized. The same must be done after changing the
  875.            configuration of UD series tablets with help of the menubar of the
  876.            tablet.
  877.  
  878.          o You are advised not to make changes to the configurationwindow using
  879.            the tablet, because the data sets which are sent by the tablet while
  880.            moving the pen or cursor can disturb the reconfiguration of the
  881.            tablet. I have tried  to avoid this possibility as good as possible
  882.            (and in more than 99% of all cases you can operate the driver with
  883.            the tablet without any problems), but you can never know.
  884.  
  885.          o You mustn't configure your tablet to the commandset or other set-
  886.            tings you want to run the driver with. All tabletconfiguration
  887.            (commandset, pressure etc.) are made by the driver. No setting which
  888.            you have saved to the tablet will be changed in tabletmemory. Only
  889.            the current working mode is temporarily changed by the driver.
  890.  
  891.  
  892.  
  893.          5  How to get tablet data in own programs
  894.  
  895.  
  896.          You want to write a paintprogram and you want to control the size of
  897.          your tools according to the pressure the pen applies to the tablet?
  898.          Then you should read this chapter because the Wacom driver supports a
  899.          comfort interface to custom applications for direct data export.
  900.  
  901.          This chapter only describes the builtin softwareinterface. The OS 3.0
  902.          tabletinterface is described in the Commodore developers kit. Further-
  903.          more there is a program with sourcecode in the drawer {\tt Devlop} of
  904.          the package that shows the usage of the OS 3.0 tabletinterface. It
  905.          must be possible even for novice programmers to implement this 
  906.          interface.
  907.  
  908.  
  909.          5.1   Communication between tabletdriver and application
  910.  
  911.  
  912.          The Amiga operating system 2.0 offers only small support for pressure
  913.          tablets. Therefore I had to find an own way to support these
  914.          (pressure) data to custom applications. The Wacom driver uses the
  915.          Amiga messageports for export.
  916.  
  917.          Due to the fact that the driver is setting the mouse (if you like)
  918.          you only have to take care for pressure data, even the software-
  919.          interface offers much more than this.
  920.  
  921.          Upon start the driver creates a public messageport which is used for
  922.          data export. The Wacom driver package contains a drawer named Develop.
  923.          There you can find the C-sourcecode and the compiled version of
  924.          program called "get_pressure" which uses the softwareinterface of the
  925.          driver in order to get the data. Among these files there is one called
  926.          "Wacom.h" a C headerfile which you can use in own applications. This
  927.          file contains all defines and structures you need for receiving the
  928.          data from the driver. Before you include "Wacom.h" you should include
  929.          "<exec/exec.h>"^13.
  930.  
  931.          You can get the adress of the public messageport in the following way:
  932.  
  933.          struct MsgPort     *Wacom_data_Port;
  934.          ...
  935.          /* The portname is also defined as WACOM_PORT_NAME in Wacom.h */
  936.          Wacom_data_Port=FindPort("Wacom DataPort");
  937.          ...
  938.  
  939.          Now you have to create an own messageport and an own WacomMsg.
  940.  
  941.          struct MsgPort     *Our_Port;
  942.          struct WacomMSG     WMess;        /* look Wacom.h */
  943.          ...
  944.          if(Our_Port=CreateMsgPort())
  945.          {
  946.           WMess.Mess.mn_Node.ln_Type=NT_MESSAGE;
  947.           WMess.Mess.mn_Length=sizeof(struct WacomMSG);
  948.           WMess.Mess.mn_ReplyPort=Our_Port;
  949.          }
  950.          ...
  951.  
  952.          Now you can send the request for data to the Wacom driver:
  953.  
  954.          if(Wacom_data_Port)
  955.          {
  956.           /* send request */
  957.           PutMsg(Wacom_data_Port,(struct Message *)&WMess);
  958.  
  959.           /* Wait for answer */
  960.           WaitPort(Our_Port);    /* better Wait(1L<<Our_Port->mp_SigBit); */
  961.  
  962.           if(GetMsg(Our_Port))
  963.           {
  964.            printf("Current X-Coordinate:%ld"n",WMess.WacomInfo.Tablett_X);
  965.            ...
  966.           }
  967.          }
  968.  
  969.          Before you can quit your_program you have to free all used resources.
  970.  
  971. ____________________________
  972.          ^13: exec/exec.h is a part of your C development package.
  973.  
  974.  
  975.  
  976.          5.2   The datastructures
  977.  
  978.  
  979.          The WacomInfo structure (which is part of the WacomMSG structure)
  980.          containes beside of the pressure much more data. For detailed do-
  981.          cumentation look into "Wacom.h"^14.
  982.  
  983.          In the current version it is not possible to send commands to the
  984.          Wacom driver using the messageport. This will propably be possible in
  985.          a future version. Therefore the WacomInfo and the WacomMSG structure
  986.          are containing some bytes wich are reserved for future use in order
  987.          to preserve compatibility.
  988.  
  989. ____________________________
  990.          ^14: The file is printed in appendix A.
  991.  
  992.  
  993.  
  994.          5.3   The fields of the WacomInfo structure
  995.  
  996.          o Sync                                                           BOOL
  997.            The presence of this field has only compatibility reasons. In
  998.            version 1.0 this field was used to determin whether the mousepointer
  999.            is already positioned at the moment the data package is transmited
  1000.            to the application. In Version 1.10 and up the data package will be
  1001.            transmitted to you after mousepositioning. Therefore this field can
  1002.            be ignored and has always FALSE.
  1003.  
  1004.          o Driver_running                                                 BOOL
  1005.            Shows whether the driver is running or not. If this field is TRUE
  1006.            the driver is active.
  1007.  
  1008.          o Wacom_Series                                                  UBYTE
  1009.            This field contains the used tablettype.
  1010.  
  1011.                         +-------+-------------------+
  1012.                         | Value |Tablettype         |
  1013.                         +-------+-------------------+
  1014.                         | 0     |SD series tablet   |
  1015.                         +-------+-------------------+
  1016.                         | 1     |UD/KT series tablet|
  1017.                         +-------+-------------------+
  1018.  
  1019.          o Beeper                                                         BOOL
  1020.            If this field is set to TRUE the internal tabletbuzzer of SD tablets
  1021.            will be activated for a very short period whenever a button on a
  1022.            tablet's input device is pressed.
  1023.  
  1024.          o Mode                                                           BOOL
  1025.            Is set to TRUE when the tablet is working pressuresensitive. If
  1026.            Wacom IV commandset is used the tablet is working automatically in
  1027.            pressure mode. If running Wacom II-S pressure mode must be selected
  1028.            manually.
  1029.  
  1030.          o MB_Emu                                                         BOOL
  1031.            If running Wacom II-S in pressure mode, there is no button trans-
  1032.            mission of the pen possible. You can't hit any gadget or anything
  1033.            else with the tablet. Therefore a hit to the left mouse button is
  1034.            emulated when a certain pressure is reached and this field is set
  1035.            to TRUE. (only when mouse emulation is switched on). If running
  1036.            Wacom IV the parrallel transmitted button state is used for mouse-
  1037.            buttons and this field contains FALSE.
  1038.  
  1039.          o Pressure_Limit                                              integer
  1040.            Contains the limit which must be reached by the pressure to cause a
  1041.            click to the left mousebutton. Holds a value between -30 and +30
  1042.            when in pressuresensitive Wacom II-S mode and MB_Emu=TRUE. Other-
  1043.            wise it contains NO_PRESS.
  1044.  
  1045.          o Pressure                                                       WORD
  1046.            Contains the actual pressure when the tablet is working pressure-
  1047.            sensitive. Otherwiese contains NO_PRESS.
  1048.  
  1049.          o input_device                                                  UBYTE
  1050.            Shows the actually used input device (When in multimode shows the
  1051.            actual moved device).
  1052.  
  1053.                   +-----+---------------------------------+
  1054.                   | Bit |Inputdevice when set             |
  1055.                   +-----+---------------------------------+
  1056.                   |  0  |Standard_Stylus                  |
  1057.                   +-----+---------------------------------+
  1058.                   |  1  |Pressure Stylus (only SD tablets)|
  1059.                   +-----+---------------------------------+
  1060.                   |  2  |Cursor                           |
  1061.                   +-----+---------------------------------+
  1062.  
  1063.  
  1064.          o Buttons                                                       UBYTE
  1065.            In dependency of the actual used input devices this field contains
  1066.            the number of the pressed button at that moment. When there is no
  1067.            button pressed this field contains 0. If running in multimode it
  1068.            always shows the state of the pen's buttons, because the cursor has
  1069.            his own field when in multimode.
  1070.  
  1071.               +------------------+-------------------------+
  1072.               | input device     |Button         Value     |
  1073.               +------------------+-------------------------+
  1074.               | Standard Stylus  |tip switch        1      |
  1075.               |                  |barrel switch     2      |
  1076.               |                  |both switches     3      |
  1077.               +------------------+-------------------------+
  1078.               | Crosshaircursor  |top button        1      |
  1079.               | (4 Buttons)      |left button       2      |
  1080.               |                  |bottom button     3      |
  1081.               |                  |right button      4      |
  1082.               +------------------+-------------------------+
  1083.               | Crosshaircursor  |one of those  <Number of |
  1084.               | (16 Buttons)     |buttons       the_button>|
  1085.               +------------------+-------------------------+
  1086.  
  1087.  
  1088.          o Tablett_Max_X                                                 ULONG
  1089.          o Tablett_Max_Y                                                 ULONG
  1090.            These fields are containing the maximum tabletresolution. But these
  1091.            values are depending on the selected working area. The selection and
  1092.            presentation is completly transparent. If you have selected a 6000
  1093.            on 7000 points wide area for instance on a tablet with a physical
  1094.            resolution of 15420 points in both directions these fields are con-
  1095.            taining 6000 and 7000. If the working area is the whole tablet you
  1096.            will see here the physical tabletresolution.
  1097.  
  1098.          o Tablett_X                                                      long
  1099.          o Tablett_Y                                                      long
  1100.            Here you will see the actual position of the input device on the
  1101.            tablet. When in multimode you can find here the coordinates of the
  1102.            pen. The coordinates of the cursor are kept in own fields. The co-
  1103.            ordinates displayed here are in respect of the location and size of
  1104.            the selected working area. The origin is on the top left.
  1105.  
  1106.          o Set_Mouse                                                     UBYTE
  1107.            Shows which parts of the mouse will be emulated by the mouse.
  1108.  
  1109.                  +-------+------------------------------+
  1110.                  | Value |Emulation                     |
  1111.                  +-------+------------------------------+
  1112.                  | 0     |no mouseemulation             |
  1113.                  +-------+------------------------------+
  1114.                  | 1     |mousepointer and mousebuttons |
  1115.                  +-------+------------------------------+
  1116.                  | 2     |only mousepointer             |
  1117.                  +-------+------------------------------+
  1118.  
  1119.            Please remember, MB_Emu also depends upon this setting.
  1120.  
  1121.          o Commandset                                                    UBYTE
  1122.            Shows which commandset is used to communicate with the tablet.
  1123.  
  1124.              +-------+-----------------------------------------+
  1125.              | Value |Commanset                                |
  1126.              +-------+-----------------------------------------+
  1127.              | 0     |Wacom IV (not available with SD tablets) |
  1128.              +-------+-----------------------------------------+
  1129.              | 1     |Wacom II-S                               |
  1130.              +-------+-----------------------------------------+
  1131.  
  1132.          o Multi_Mode                                                     BOOL
  1133.            In multimode you can use two different input devices at the same
  1134.            time. Only available with Wacom IV commandset. When multimode is
  1135.            switched on this field contains TRUE.
  1136.  
  1137.          o Multi_Mouse                                                   UBYTE
  1138.            When mouseemulation and multimode are switched on you will see here
  1139.            the input device which is used as mouse.
  1140.  
  1141.                             +-------+--------+
  1142.                             | Value |Mouse   |
  1143.                             +-------+--------+
  1144.                             | 0     |Pen     |
  1145.                             +-------+--------+
  1146.                             | 1     |Cursor  |
  1147.                             +-------+--------+
  1148.  
  1149.          o Macrokey                                                      UBYTE
  1150.            UD series tablets are having so called macro buttons which can be
  1151.            used for custom functions. When Wacom IV is used you will see here
  1152.            the number of macro button which is actually pressed (if there is
  1153.            one pressed) otherwise these field will contain 0.
  1154.  
  1155.          o MM_Dig_Buttons                                                UBYTE
  1156.            In multimode this field contains the currently pressed buttons on
  1157.            the cursor^15.
  1158.  
  1159.          o MM_Dig_X                                                      ULONG
  1160.          o MM_Dig_Y                                                      ULONG
  1161.            In multimode are the actual coordinates of the cursor stored inside
  1162.            here^16.
  1163.  
  1164.          o Proximity                                                     UBYTE
  1165.            Shows whether the inputdevice of the tablet is in proximity. You
  1166.            should only read data from this softwareinterface when this field
  1167.            contains 1.
  1168.  
  1169.          o MM_Dig_Proximity                                              UBYTE
  1170.            The same as Proximity, but only for the digitizer in multimode.
  1171.  
  1172.          The interactions and dependencies between the fields inside the
  1173.          WacomInfo structure can also be seen when you are running the
  1174.          Get_Pressure program parallel with the driver.
  1175.  
  1176. ____________________________
  1177.          ^15: also look at field Buttons.
  1178.          ^16: also look at the Tablet_X and Tablet_Y fields.
  1179.  
  1180.  
  1181.  
  1182.          A Wacom.h
  1183.  
  1184.  
  1185.          Here are the contents of "Wacom.h".
  1186.  
  1187. /***********************************************************************/
  1188. /* WACOM Digitizerdriver             (C) 1993-1994 by ROLAND SCHWINGEL */
  1189. /***********************************************************************/
  1190. /* Headerfile for receiving tabletdata from the driver                 */
  1191. /* Revision 1.2                                                        */
  1192. /***********************************************************************/
  1193.  
  1194. /* DEFINES *******************************/
  1195. #define WACOM_PORT_NAME   "Wacom DataPort"     /* Name of the DataPort */
  1196. #define NO_PRESS          -64;                 /* No valid Pressure */
  1197.  
  1198. /* Structures ****************************/
  1199. struct Wacom
  1200. {
  1201.  UBYTE        Sync;            /* Synchronisation with subprocess */
  1202.                                /* (internal must be 0) */
  1203.  UBYTE        Driver_running;  /* Driver active or not */
  1204.                                /* 0 = inactive */
  1205.                                /* 1 = active */
  1206.  UBYTE        Wacom_Series;    /* 0 = SD-Series */
  1207.                                /* 1 = UD-Series */
  1208.  UBYTE        Beeper;          /* State of the Beeper */
  1209.                                /* 0 = off */
  1210.                                /* 1 = on */
  1211.  UBYTE        Mode;            /* Pressure or "normal" Mode */
  1212.                                /* 0 = normal */
  1213.                                /* 1 = pressure */
  1214.  UBYTE        MB_Emu;          /* Mousebuttonemulation in Pressure Mode */
  1215.                                /* 0 = inactive */
  1216.                                /* 1 = active */
  1217.  int          Pressure_Limit;  /* Limit for LMB-Emulation (-30 ... 30) */
  1218.  WORD         Pressure;        /* current Pressure when in Pressure Mode */
  1219.                                /* WacomII-S: -30 ... 30 */
  1220.                                /* WacomIV:   -60 ... 60 */
  1221.  UBYTE        input_device;    /* Type of current Stylus/Digitzer */
  1222.                                /* 1 = standard Stylus */
  1223.                                /* 2 = pressure Stylus */
  1224.                                /* 4 = Digitizer */
  1225.  UBYTE        Buttons;         /* State of the current input_device Buttons */
  1226.                                /* Standard Stylus:  1 = Frontbutton */
  1227.                                /*                   2 = Sidebutton */
  1228.                                /*                   3 = both */
  1229.                                /* Digitizer:        1 = middle Button top */
  1230.                                /*                   2 = left Button */
  1231.                                /*                   3 = middle Button bottom */
  1232.                                /*                   4 = right Button */
  1233.  ULONG        Tablett_Max_X;   /* Maximum X-Value on the Digitizer */
  1234.  ULONG        Tablett_Max_Y;   /* Maximum Y-Value on the Digitizer */
  1235.  long         Tablett_X;       /* current X-Coordinate */
  1236.                                /* when in WacomIV and Multimode: */
  1237.                                /* X-Coordinate of the pen */
  1238.  long         Tablett_Y;       /* current Y-Coordinate */
  1239.                                /* when in WacomIV and Multimode: */
  1240.                                /* Y-Coordinate of the pen */
  1241.  
  1242.  /* Additions: 10.02.1994 */
  1243.  UBYTE        Set_Mouse;       /* Mouseemulation */
  1244.                                /* 0 = off */
  1245.                                /* 1 = Mousepointer and Buttons */
  1246.                                /* 2 = only Mousepointer */
  1247.  UBYTE        Commandset;      /* Commandset actually used */
  1248.                                /* 0 = Wacom IV */
  1249.                                /* 1 = Wacom II-S */
  1250.  UBYTE        Multi_Mode;      /* Multimode on/off (only Wacom IV) */
  1251.                                /* 0 = off */
  1252.                                /* 1 = on */
  1253.  UBYTE        Multi_Mouse;     /* inputdevice used as mouse when in */
  1254.                                /* Multi_Mode (only WacomIV) */
  1255.                                /* 0 = pen */
  1256.                                /* 1 = Digitizer */
  1257.  UBYTE        Macrokey;        /* pressed Macrobutton (only Wacom IV) */
  1258.  UBYTE        MM_Dig_Buttons;  /* pressed cursorbuttons in Multimode */
  1259.                                /* (only Wacom IV) */
  1260.  ULONG        MM_Dig_X;        /* X-Coordinate of the cursor in Multimode */
  1261.                                /* (only Wacom IV) */
  1262.  ULONG        MM_Dig_Y;        /* Y-Coordinate of the cursor in Multimode */
  1263.                                /* (only Wacom IV) */
  1264.  /* Additions: 20.03.1994 */
  1265.  UBYTE        Proximity;       /* shows proximitiy of the pointing device */
  1266.                                /* 0 = not in proximity*/
  1267.                                /* 1 = in proximity */
  1268.  
  1269.  UBYTE        MM_Dig_Proximity;/* shows digitizers proximity in multimode */
  1270.                                /* 0 = not in proximity */
  1271.                                /* 1 = in proximity */
  1272.  
  1273.  UBYTE        reserved[112];   /* for future Expansions */
  1274. };
  1275.  
  1276. /* Message Structure for getting the above for use with PutMsg() */
  1277. struct WacomMSG
  1278. {
  1279.  struct Message Mess;
  1280.  struct Wacom   WacomInfo;
  1281.  UBYTE          reserved[32];  /* For future Expansions */
  1282. };
  1283.  
  1284.  
  1285.  
  1286.          B History
  1287.  
  1288.  
  1289.          These are the changes made to the driver in his history.
  1290.  
  1291.  
  1292.          Version 1.16 (07. November 1994)
  1293.  
  1294.          o Now also supports the new KT series. (eg. ArtPad)
  1295.  
  1296.          o UD tablets with a romversion 1.2 or greater can be driven with
  1297.            double resolution and double pressure range. This is also supported
  1298.            now.
  1299.  
  1300.          o The mainwindow now also has menus.
  1301.  
  1302.          o The cycle- and buttongadgets with keyboard access are highlited now
  1303.            when the corresponding key is pressed.
  1304.  
  1305.          o The layout of checkboxgadget has changed. When running AmigaOS3.0 or
  1306.            better they are looking much better with bigger fonts.
  1307.  
  1308.          o The requester which appears when the tablet is not switched on now
  1309.            has a retry-button for much easier reinitialising.
  1310.  
  1311.          o Revised tabletrecognition. It is now more flexible when some of the
  1312.            internal tabletsettings (DIP-switches or memory settings) are not
  1313.            set to factory settings. But please set your tablet to factory de-
  1314.            faults!
  1315.  
  1316.          o Revised SD-510C handling. There have been problems with a certain
  1317.            ROM-version of this tablet.
  1318.  
  1319.  
  1320.          Version 1.12 (07. May 1994)
  1321.  
  1322.          o Implementation of the Kickstart 3.0 tablethandling.
  1323.            Every Intuitionwindow can now receive pressure data directly
  1324.            from Intuition. This is only used when AmigaOS 3.0 or better is
  1325.            available in the system.
  1326.  
  1327.          o Adapted to the actual Wacom IV specification from april 1994.
  1328.  
  1329.          o simplified serial communication in order to improve compatibility
  1330.            to MultiIO cards that are having not the full commandset implemen-
  1331.            ted.
  1332.  
  1333.          o minor optimizations in the whole program.
  1334.  
  1335.          o exampleprogram with source included to show usage of the 
  1336.            AmigaOS 3.0 tablethandling.
  1337.  
  1338.          o new compiled with SAS/C V6.51.
  1339.  
  1340.  
  1341.          Version 1.10 (21. February 1994):
  1342.  
  1343.          o direct and complete support of the Wacom IV commandset including ma-
  1344.            cro buttons, multimode and greater pressure range.
  1345.  
  1346.          o second window for defining the working area.
  1347.  
  1348.          o editable mouseemulation (includes switching off).
  1349.  
  1350.          o enabled scrolling of autoscroll screens.
  1351.  
  1352.          o multiselect with shift keys down is working now.
  1353.  
  1354.          o expanded softwareinterface.
  1355.  
  1356.          o optimized for lower cpu load.
  1357.  
  1358.          o complete second mouseemulation.
  1359.  
  1360.  
  1361.          Version 1.0 (12. October 1993):
  1362.  
  1363.          o Creation of the first version.
  1364.  
  1365.  
  1366.  
  1367.          C Trademarks
  1368.  
  1369.  
  1370.          Amiga(c), Kickstart(c), Workbench(c) are trademarks of
  1371.                                               Commodore-Amiga, Inc.
  1372.  
  1373.          Wacom(c), Wacom II-S(c), Wacom IV(c) are trademarks of
  1374.                                               Wacom Co., Ltd.
  1375.  
  1376.