Browse Prior Art Database

Method for Supporting an Absolute Pointing Device

IP.com Disclosure Number: IPCOM000110410D
Original Publication Date: 1992-Nov-01
Included in the Prior Art Database: 2005-Mar-25
Document File: 4 page(s) / 169K

Publishing Venue

IBM

Related People

Rowland, KA: AUTHOR

Abstract

This article describes a method of mapping a pointing device position event, within its logical or physical frame of reference at an absolute position, into a device-independent interface, by providing both position and size of space information in the device-independent interface.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 46% of the total text.

Method for Supporting an Absolute Pointing Device

       This article describes a method of mapping a pointing
device position event, within its logical or physical frame of
reference at an absolute position, into a device-independent
interface, by providing both position and size of space information
in the device-independent interface.

      There are two basic types of pointing devices.  The first is a
relative device.  A relative device reports motion on a relative
basis.  It will report how far it has moved, but has no concept of
where it is.  An example of a relative pointing device is a mouse.
The second type of pointing device is an absolute pointing device.
An absolute pointing device reports where an event occurred in some
device space.  The concept of relative motion is not valid.  An
example of an absolute pointing device is a touch screen.

      In the past, many programs have had complete control over the
entire hardware system, including the video system.  Recently, more
complex systems have had to centralize control of hardware
subsystems.  This centralization has removed the ability to easily
interface new hardware, such as a touch screen, to an operating
system (OS).  It has also added interface layers to hardware
subsystems, removing direct application control of the hardware.

      The specific problem of attaching an absolute pointing device
is the lack of information concerning the video subsystem.  The
absolute pointing device needs to know the resolution of the current
mode in order to map the entire absolute pointing device physical
space into the display mode dependent space.  When an "event" is
generated at the corner of the absolute pointing device, the event
should be translated to the same corner of the display.  This is
impossible without knowledge of the current state of the video
subsystem.

      With pointing device independence it is possible to add either
of the two classes of pointing devices discussed above.  For relative
pointing devices there were no problems in gaining full support for
the attached device.  Absolute pointing devices, however, were
severely limited in function.  At a minimum the device could be
attached, but would not be useable.  Device independence provided for
all system level coordination, such as maintaining pointer positions
for each session, updating event queues, and supporting the
application programming interface.  This meant that a solution to the
absolute pointing device problem did not need to include these
elements, because they had already been solved.  The solution had to
interface an absolute pointing device to the device independent
program module in a way that would keep the pointing
device-independent from the rest of the system.

      The solution was to provide specific modifications to the
inter-device communication (IDC) interface.  These modifications were
made so that existing devices would continue to operate w...