JPH06501798A - 標準プログラムへのタブレット入力を有するコンピュータ - Google Patents

標準プログラムへのタブレット入力を有するコンピュータ

Info

Publication number
JPH06501798A
JPH06501798A JP3512101A JP51210191A JPH06501798A JP H06501798 A JPH06501798 A JP H06501798A JP 3512101 A JP3512101 A JP 3512101A JP 51210191 A JP51210191 A JP 51210191A JP H06501798 A JPH06501798 A JP H06501798A
Authority
JP
Japan
Prior art keywords
data
display
user
mouse
tablet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP3512101A
Other languages
English (en)
Inventor
マーティン,パトリシア・エイ
ハンティントン,ジョナサン・ティー,ザ・セカンド
マクナリー,ジェイ・マイケル
バレット,デーヴィッド・エム
ウォード,ジーン・レナード
Original Assignee
ウォング・ラボラトリーズ・インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ウォング・ラボラトリーズ・インコーポレーテッド filed Critical ウォング・ラボラトリーズ・インコーポレーテッド
Publication of JPH06501798A publication Critical patent/JPH06501798A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Digital Computer Display Output (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 標準プログラムへのタブレット入力を有するコンピュータ概 要 関連出願の参照 発明の分野 背景 発明の概要 図面の簡単な説明 例示実施例の詳細な説明 実施例 1.2 主要システム構成物 1、2.1 主プロセツサ 1、2.2 表示スクリーン 1、2.3 主表示バッファ及び制御器1、2.4 インターフェースプロセッ サ1、2.5 インターフェースプロセッサファームウェア1、2.5.1 キ ーボード制御器エミュレーション1、.2.5.2 疑似装置に対するサービス 1、2.5.3 データリンク制御 12.6 ボインティング装置 1、2.7 インク/マスク表示バッファ及び制御器1.2.8 ビデオマルチ プレクサ 1.29 信号処理サブシステム 1210 種々の通信ポート 1゜2.11 大量記憶装置 1.3 VLSIの実施 1、3.1 オプテイマイザ 1.3.2 8GA 1、3.2.1 メモリマツピング 1、3.2.2 表示タイミング 1.3.2.3 VGAとインクデータとの多重化1、3.2.4 表示モード 1、3.2.5 インターフェースプロセッサとBGAl、3.2.6 BGA とオプテイマイザ1、3.2.7 コントラスト制御 1.4 主及びインターフェースプロセッサ間の通信1、4.1 データリンク レジスタ 1、4.2 データリンクプロトコル 1、4.3 データリンク上のタブレットデータ2 疑似装置 2.1 ユーザインターフェースアイコンに共通な特性2、1.1 スタイラス 位置のユーザへのフィードバック2、1.2 スタイラスの押し下げ 2、1.3 ユーザ目標エラーに対処するユーザインターフェース規則2、1. 3.1 r点接触」規則 2、1.3.2 rアイコンへのドラッグ」規則2、1.3.3 rアイコン放 置」規則2、1.4 ドラッグ動作 2.1.5 サイズ決め 2、1.6 スタッキング 2、1.7 文字の送出 2.2 手書き認識装置 2.21 文字の書き込み 2.2゜1.1 ストロークの案内及び文字認識2.2.1..2 インクの消 去及び認識結果の表示2.2.2 W集 2、2.3 機能ボタン 2、2.3.1 挿入 2、2.3.2 削除 2、2.3.3 消去 2、2.3.4 スクロール動作 2、2.3.5 文字をアブリケーンヨンに送出2、2.3.6 移動及びサイ ズ変更 2、2.4 多数ラインの扱い 2.25 ポインティング及び書き込みモードの自動選択2.3 キーボード装 ! 2、3.1 タイプ入力 2、3.1.1 シフトキーの動作 2.32 機能ボタン 2、3.2.1 キーボードの構成 2.4 マウス装置 2、4.1 マウスの動き 2.42 機能ボタン 2、4.2.1 移動のスケーリング 2、4.2.2 マウスボタンの動作 2.4゜23 移動及びサイズ変更 2.5 インクt(Info)装置 2.6 他の疑似装置 2.7 アプリケーションへの直接タブレット人力2.8 アブリケーンヨンに よってコールされるユーザインターフェース 2.9 インターフェースプロセッサと主プロセツサとの相互作用2.10 疑 似装置の実現 請求の範囲 開示事項の要約 関連出願の参照 本願は、次の出願に関連するものである。
本願と同日付で出願された、パレットら(Barrett et al)の「別 個の表示面及びユーザインターフェースプロセッサを有するコンピュータ」、本 願と同日付で出願された、ワードら(Ward et al)の「疑似袋!を有 するユーザインターフェース」、及び1990年11月9日付けで出願された、 デビット パレットら(DevidBarrett et al)の「システム クロック速度制御装置」。
これらの出願の最初の2つは、本願と同一開示を基にしたものである。
発明の分野 本発明は、コンピュータシステム用ユーザインターフェースのための動作及びサ ポート設備に関するものである。本発明は、特に、スタイラスがユーザの主要人 力装置であるシステムにおいて有用なものである。
背 景 ユーザの要求と種々の実施技術装置の能力との双方に鑑みて、コンピュータ及び 人間がそれらのコンピュータと相互作用する方法は、何度も再設計されている。
このようにする際、現在の技術及び人間の現在の理解にしたがって、各システム の設計を最適化することが望ましい。しかしながら、多くの場合これとは反対に 、新しいシステムにハードウェア及びソフトウェアの双方において既存の構成物 を利用させることができるようにするために、コンピュータシステムの設計を形 作る別の力が必要である。この別の力は、既存の設計に大きな投資をし続けたい とする要望、及び既存のシステムで普及され続ける環境において新しい/ステム を使用する要望を含む、種々のソースから生じるものである。
新システムが、アプリケーションプログラム(あるシステムを、多くの場合単に 「アプリケーション」と呼ばれている現実のタスクに適応させるプログラム)、 及びシステムプログラム(アプリケーションプログラムによって用いられるシス テム管理機能及びサービスを提供するプログラム)の双方の、既存のソフトウェ ア構成物を利用することができることは、特に有益である。ある既存のアブリケ ーンヨンが、あるユーザ共同体内では、実際に標準となっているので、新しいシ ステムがこれら標準アプリケーションを実行できることは、特に重要なことであ る。
ユーザ相互作用を与える殆どのソフトウェアは、第一に、キーストロークデータ の形状のユーザ入力に対して設計されている。成長しつつあるソフトウェア本体 (bodyL特にデスクトップシステム用に設計されたソフトウェア本体は、キ ーストロークデータに加えて、マウスからの入力も受け付ける。一般的に、これ らのシステムは、ある機能に対してはキーストロークデータを未だに必要とする 。
コンピュータンステムを人間にとって使いやすくするために、種々のシステムは 、スタイラス型入力装!(典型的にデジタル化タブレット)を備えている。従来 の筆記形態入力と類似しているため、スタイラス型入力装置は、ポインティング 装置の中でも、ポインティング装置として機能することに加えて、文字入力に用 いるのに特に適している。使用時、スタイラス型入力装置は、一般的に、キーボ ードに加えて設けられる。ある場合には、システムは、スタイラス型装置を主ユ ーザ入力装置として用いるよう設計されている。
キーボードは、スタイラス及びデジタル化タブレットとは根本的に異なる特性を 有するものである。キーボードを用いれば、正確な文字識別が簡単にできる。
すなわちユーザが単に対応するキーを押すだけで、アルファベット文字を表すデ ータを発生する。キーボードが、単一動作(すなわちバイナリスイッチの押圧) で1つの文字を作成するために用いることができるので、ユーザへの必要とされ るフィードバンクは、聴取可能なりリック音を伴ったその文字を表示することだ けである。対照的に、スタイラスを文字入力に用いることができるが、非常に難 しいユーザへのフィードバックが必要となる。手書き文字は、ユーザ及びコンピ ュータシステムの双方に対して、大幅に複雑なプロセス(ユーザには親しみやす いが)によって、発生されるものである。
キーボードで機能選択を行なうには、非常に広い範囲の代替方法が使われている 。それらの内で、キーボードはボインティング装置としては非常に劣るので、あ る機能即ち操作すべきオブジェクトの可視表現への指示はぎこちない。
マウスもしばしばシステム内で用いられ、ユーザがマウスを用いてスクリーン上 のオブジェクトをドラッグ(drag)できるようになっている。これは、特定 の形式のマウスカーソルまたはポインタの表示を備えることによって達成されて いる。このカーソルは、システムには知られている絶対位置を有しており、シス テムは、マウスの相対的移動に応じてカーソル位置を調整する。このカーソルは マウスの相対移動とオブジェクトのドラッグ動作との間の絶対的仲介物として機 能する。
マウスカーソルを用いるように設計されたプログラムを、表示スクリーン上で直 接動作するスタイラスと共に用いると、ユーザは、スタイラスでカーソルを、即 ち、スタイラスをカーソル上に位置付はカーソルをドラッグすることによって、 直接操作することができると考えるであろう。これは一般に、ユーザをいらいら させるような動作を行なう。即ち、マウスの移動量とカーソルによって移動され る距離との関係は固定されておらず、これはアブリケーンヨンによって変動した り、単一アプリケーション内においても変動するものである(例えば、速度の関 数として変動する場合がある)。その結果、スタイラスがオブジェクト上でスタ ートシても、そのオブジェクトはスタイラスの位置を追跡しないであろう。
スタイラスが用いられるシステムでは、表示にスタイラスを直接用いることがで きることが、ユーザにとって特に有利である。例えば、表示スクリーン上に直接 書くことができ、そして適切な時に、「インク」の軌跡が、表示上のスタイラス の通った経路に現れるので、ユーザには紙の上で書いているのと全く同じように 思われる。
スクリーン上で直接用いられるポインティング型入力装置は、その絶対位置を与 えなければならない(インクが、スクリーン上のスタイラスの位置に現れるよう に)。これは、相対位!を与えるマウスによる入力とは、異なる点である。すな わちマウスを用いると、ユーザは一連の右方向の動作のみを指示するマウスデー タを発生し、しかもマウスの終端をそのスタート位置にあるようにすることがで きる(例えば、マウスを右に移動させ、マウスを持ち上げ、その元の位置の左に マウスを置き、そしてマウスを右に移動させて元の位!に戻す)。このように、 マウス及びスタイラスは「ポインタ型」装!(ロケータ)であるが、それらの特 性は異なっている。
文字コードの入力は、スタイラスを用いて既存の(スタイラスを用いない)プロ グラムを実行させるには、別の種類の障害となる。手書き文字の入力は、ユーザ へのフィードバックを必要とする場合には、複雑過ぎるのである。手書き入力を 考オしていないプログラムは、未だにそのようなフィードバックに対する機能( p rov i s i on)を有するユーザインターフェースを定義してい ない。
これらの人力装置の特性における差は、スタイラスを基本としたコンピュータン ステムで用いる多くの既存のソフトウェアを有効に利用するための大きな障害と なっている。その結果、スタイラスによる入力を用いる場合の殆どは、スタイラ スを備えたシステム用に特に書かれたアプリケーションプログラムに頼っている のが実際である。
本発明にしたがって構築されたシステムは、既存のソフトウェアを実行すること ができ、しかもシステムのユーザがそのようなソフトウェアと相互作用ができる ようにするものである。
発明の概要 本発明によるシステムは、既存のプログラムを対象とするように設計されていな いポインタ型袋!(特にスタイラス/タブレット)を用いて、既存のプログラム をユーザが処理できるようにするものである。これは、既存のプログラムの処理 に対して論理的には上位に位置するがそれとは干渉しないユーザインターフェー スを提供することによって達成されるものである。このユーザインターフェース は、ポインティング装置の動作に関するフィードバックを、ユーザに提供する。
既存のプログラムの実行に干渉することなくこの上位(overlaying) インターフェースを実施するために、インターフェースプロセッサを備えて、こ のインターフェースを実施するために用いられるソフトウェアを実行する。更に 、別個の表示面を備えて、既存のプログラムによって使用される表示バッファを 変更することなく、既存のプログラムからの表示と該別個の表示面が仮想的に組 み合わせられる。この表示面は、組み合わせられる画像を保持するインク面(i nk plane)バッファ、インク面データが既存のプログラムからの表示デ ータとどのように組み合わされるかを示すマスク面バッファ、及びデータの組み 合せを行なうマルチプレクサを用いることによって、組み合わせられる。
図面の簡単な説明 本発明は、添付の請求の範囲において、特徴が指摘されている。本発明の上述の 及びその他の利点は、以下の詳細な説明を図面と関連付けて参照することにより 、よりよく理解することができよう。ここで、図1は、本発明が有利に用いられ るコンピュータシステムの斜視図である。
図2は、本発明を具体化したコンピュータンステムの回路の、論理組織を強調し たブロック図である。
図3は、本発明を具体化したコンピュータシステムの回路の物理的実施態様を強 調したブロック図である。
図4は、主プロセツサとインターフェースプロセッサとの間の通信に使用される 回路のブロック図である。
図5は、表示すブシステムにおける回路のブロック図である。
図6は、表示すブンステムの表示データ多重化回路を示す。
図7.8及び9は、表示スクリーン上の画素位置とインク及びマスクデータの記 憶との対応を示す。図7は、表示スクリーン上の画素位置のいくつかを示す。
図8は、インク及びマスクデータが4つのVRAMチップにどのように記憶され るかを示すメモリマツプを有する。図9は、インク及びマスクデータが、インタ ーフェースプロセッサのアドレス空間において、どのように現れるかを示す。
図10は、3つのシミュレートされた装置アイコン、即ちキーボード、手書き及 びマウスを示すスクリーン表示である。
図11は、タブレット、表示、及びあるソフトウェア構成物間の関係を示す。
例示実施例の詳細な説明 1 プラットフォーム 1.1 コンピユーテイング環境 本発明は、ユーザが書き込み用スタイラスまたはその他のポインティング装置を 用いて相互作用するコンピュータンステムにおいて、有利に用いられるものであ る。ユーザが表示装置上で書き込みを行なえれば、キーボードを削除しくまたは 少なくとも選択的とされる)、コンピュータシステムを小型化できるので、結果 的に得られるシステムは「ノートブンク」コンピュータとも呼ばれている。本発 明を、このようなノートブックコンピュータに沿って説明する。この説明を基に すれば、本発明の他の実施例も明白であろう。
図1は、ノートブックコンピュータ10の斜視図である。これは、デジタル化タ ブレットと表示装置t12の組み合せを備えている。スタイラス14は、デジタ ル化タブレットと共に用いられ、システムにX−YIE標入六入力える。表示装 置は、液晶技術を用いて構成され、バンクライトを備えている。タブレット領域 の一方の縁に沿って、一連のラベルを付けた領域16a、16b、16c及び1 6dがある。システムは、これらの領域にスタイラスが接触すると、あるシステ ム機能を開始する。ある動作モードにおいて、システムは、電子インクを供給す るように動作し、この場合タブレフト上のスタイラスの移動が、ユーザが1枚の 紙の上に書いているかのように、表示装置上で見ることができる痕跡を残す。
この例示的ノートブックコンピュータの他の機構は、音声デジタル化及び再生( ヘッドセット/マイクロフォンを接続することができる)、データ通信(ファッ クスを含む)、内部ハードディスクドライブ、標準シリアル及びパラレルポート 、5C8Iポート(特に外部フロッピディスクドライブへの接続のため)を備え ている。5C3Iボートの代りにコネクタを備えて、IBMのPS/2コンピュ ータの多くのマイクロチャンネルと互換性のあるバスに接続することができる。
主プロセツサは、Inte180386SXである。このシステムの中核は、一 般的にIBMのPS/2モデル80、タイプ1と互換性がある。
インターフェースプロセッサ、表示制御のインク/マスク面部分及び種々のサポ ートロジックを提供するASIC(以下オプテイマイザ(optimizer) と称する)を含む、本発明に最も密接に関係のある回路のそれらの態様を以下に 述べる。
1.2 主要システム構成物(コンポーネント)本コンピュータシステムの主要 ハードウェア構成物が図2に示されている。
・主プロセツサ30 ・インターフェースプロセッサ32 ・ポインティング装置(タブレット/スタイラス34及びインターフェース3・ 主表示バッファ及び表示(VGA)制御器38・インク面バッファ42、マスク 面バッファ44及びビデオマルチプレクサ46を含む表示制御回路40 ・表示スクリーン48 ・インタープロセッサインターフェース50・インターフェース回路54によっ てインターフェースプロセッサ32に接続される、オプショナルキーボード52 図3は、回路の物理的な実施態様を強調したコンピュータシステムのブロック図 であり、その多くは超大規模集積回路チップにより実現されている。
1、2.1 主プロセツサ 主プロセツサ30は、Intel Corporationの803863Xマ イクロプロセツサを用いて実現されている。このプロセッサは、オペレーティン グシステム及びアプリケーン3ンプログラムを実行する。このプロセッサには、 1または4メガバイトの基本主メモリ30aがあり、1メガバイトまたは4メガ バイトの2つのモデュールをオプションで加えることができる(したがって、1 2メガバイトまで備えることができる)。ノートブックコンピュータの形態の特 徴を保持するために、王メモリは、米国特許第4710903号に記載されてい るのと同様な方法で制御される、疑似スタティックメモリチップを用いている。
基本的人出カンステム(BIO5)として知られている、システムサービスソフ トウエア用に、128キロバイトのメモリ30b(ROM)を備えている。
1、2.2 表示スクリーン 視覚出力は、表示スクリーン48によって提供される。好適実施例では、これは 、デジタル化タブレット34(以下に説明する)と物理的に一体化された平面パ ネル表示装置である。特に、これは640X480画素の液晶表示装置であり、 250ミリ秒より高速のスイッチング時間を有するものである。
1、2.3 主表示バッファ及び制御器主表示バッファ及び表示制御器38 ( Chips & TechnoIogreS 82C455VGA制御器)は、 主プロセツサ30によって制御される。
これは、主プロセツサ上で実行中のアプリケーションには、一般的にVGAとし て知られているような従来のビデオ表示装置のように思われる。これは、640 ×480画素の制御を可能とするもので、4つの128KX8ビツトの疑似スタ ティックメモリ素子に記憶される。このメモリは、256色用に書かれたアプリ ケーションを実行させるのに十分な大きさである。表示スクリーンの画素はバイ ナリ的であるが、V G A制御器は、これらを時間多重化して16階調の灰色 をシミュレートしている。
1、2.4 インターフェースプロセッサインターフェースプロセンサ32は、 日本電気株式会社から入手可能なV25マイクロプロセッサである。V23は、 Intelの80188と類似している。
このプロセッサは以下の機能を行なう。
・主プロセツサに接続し、PS/2型コンピュータにおけるタイプのキーボード 制御器を(ハードウェアのレベルに下げて)ンユミレートする。このプロトコル は、典型的にはマウスである補助装置からのデータを得るためのものである。キ ーボードポートに加えて、主プロセツサへの他の通信チャンネルが、他の通信の ために用いられる。
・オプショナルキーボードに接続し、このキーボードのデータを生プロセッサ( PS/2型コンピュータにおける8042制御器であるかのように)に供給する 。
・インク及びマスク面に接続し、データを供給する。
・タブレット入力を使用する、シミュレートされた装置(デバイス)ユーザイン ターフェースを実行し、キーボードポート出力をシミュレートし、そしてインク 及びマスク面に書き込む。
・手書き認識アルゴリズム(シミュレートされた装置インターフェースの一部) を実行する。
1、2.5 インターフェースプロセッサファームウェアV25には16キロバ イトのROMがある。このROMは、初期化、診断、主プロセツサからインター フェースプロセッサの主メモリ(インク及びマスク面用のバッファを備えている )へのデータ転送の支援、及びキーボード制御器のエミュレーシヨン(ソフトウ ェアをインターフェースプロセッサの王メモリにダウンロードする前に、物理的 キーボードの使用を許可する)のためのプログラムコードを含む。
診断は、インターフェースプロセッサのメモリ、インターフェースプロセッサを オプテイマイザに接続するデータバス、及びシリアルポートを試験する(シリア ルポートに接続されているタブレットの状態を得ることを含む)を試験する。
1、2.5.1 キーボード制御器エミュレーション前記のファームウェアは、 典型的に8042キーボード制御器によって備えられる機能を与える。キースト ローク及びマウスデータを王プロセッサに引き渡すことに加えて、これらの機能 は、パスワードの設定及び検査、r8042 RAMJの読み出し及び書き込み 、そして物理的キーボードインターフェースのイネーブル、ディスイネーブル及 び試験を含む。
キーボードポートを介してデータを主プロセツサに送る、このファームウェアの サービスは、3つの状態で送られているデータを扱うことができる。それらは、 変換済みデータ、未変換データ、補助データである。
変換済みデータは、物理的キーボードから来たものとして扱われる。このデータ は、インターフェースプロセッサによって認知されるシステムのシフト状態に影 響を及ぼす変化を発見するために、監視される。8042のコマンドバイトのP C互換性の状態にしたがって、このデータをあるスキャンコードから別のものに 変換することもできる。
未変換データは、変化せずにシステムに送られる。シフト状態の変化を監視する ために、未変換データを監視することはしない。即ちインターフェースプロセッ サは、未変換データによるシフト状態のいかなる変化も、未変換データストリー ムの最後で、元に戻される(undone)と仮定している。
補助データは、変換されずに主プロセンサに送られる。補助データを送る際、キ ーボード状態レジスタの1ビツトがセットされ、データがキーボードデータでは な(、補助データであることを主プロセツサに示す。補助データとは、典型的に マウスデータである。
1゜2.5.2 疑似装置に対するサービスファームウェアは疑似(シミュレー トされた)装置によるキーボードポートの使用を支援する種々のサービスを備え ている。
物理的キーボードからのデータストリームをイネーブル及びディスイネーブルす るサービスがある。ディスイネーブルが要求されると、多ビツトキーコードを分 割せずにストリームを中断できるまでサービスは待機し、そして現在のシフト状 態の指示と共に戻る。
バッファサブミツト(submit)サービスは、送るべき1ブロツクの「キー ボード」データのサブミツトを可能とするものであるっデータは、変換済み、未 変換または補助として識別され、それにしたがって取り扱われる。「終了時(W hen done)Jルーチンへのポインタが、前記データのブロックと共に設 けられている。即ちサービスは、バッファ内のデータが送られた時、このルーチ ンを実行する。別のバッファが現在送られている時、エラーが返送される。
物理的キーボードがイネーブル状態にされると、バッファサブミツトサービスは 、バッファ送出の前に物理的キーボードをディスイネーブル状態にし、データ送 出の後には物理的キーボードをイネーブル状態にする。
バッファ中止(abort)サービスが、進行中のバッファ過言を取り消すこと ができるようにするために設けられている。
バッファ送信速度設定サービスは、キーストロークデータのバッファが主プロセ ツサに送られる速度を制御するために設けられている。これは、主プロセツサに おけるキーボードバッファのオーバーフローに対する制御のために設けられたも のである。遅れは、8バイト以下のバッファには適用しない。これは、どの単一 キーストロークのバイト列でも、遅れなしに送ることができるようにするもので ある。
インターフェースプロセッサのクロック速度を制御するために、サービスが設け られている。このクロックは、2.4、または8メガバイトに設定することがで きる。この速度制御をサポートするハードウェアは、V25チップに集積化され ている。
インターフェースプロセッサのシリアルポート(タブレットに接続されている) からのイベント、データリンクからのイベント、またはある時間期間(呼び出し 側によってミリ秒で指定される)の間、待機するサービスが設けられている。こ のサービスは、これら3つのイベントのいかなる組み合せでも待機する。待機中 、このサービスはインターフェースプロセッサの速度をその最低速度に設定する 。
上述のイベントが起きた時、サービスはインターフェースプロセッサの速度をそ の元の速度に戻し、そしてサービスは呼び出し側に戻る。
割り込みベクトルを連鎖してシステムからキーボードまたは補助装置への通信に ついて学習することができるようにするサービスも、設けられている。
また、ファームウェアはフリーランニングの32ビツトのカウンタも備えている 。このカウンタは、各ミリ秒毎に1増分される。これらの1ミリ秒の割り込みを 連鎖することも可能である。っ ]、、2.5.3 データリンク制御 上述のファームウェアは、また、データリンクを介した通信のための支援を提供 する。この通信について以下に説明する。
1、2.6 ポインティング装置 好ましくは、ポインティング装置は絶対位置を与える形式(例えば、デジタル化 タブレット、ライトペン)のものがよい。マウスは相対位置を与える(即ち、移 動量であって位置ではない)ので、マウスを用いることもできるが、利点が少な くなる。
好適実施例のポインティング装置は、5criptel Corporatio nから入手可能なもののような、透明なデジタル化タブレットとそれに付随する スタイラス(タブレットとスタイラス共に、図2では34として示されている) である。
適切なタブレットは、以下のような特性を有していなければならない。
・下層の表示において単一の画素を指示することができる絶対精度がなければな らない。100画素/インチの下層表示では、全ての情報源からのタータルエラ ーは、±0.05インチ未満でなければならない。
・タブレットを表示装置にかぶせであるので、タブレットは透明でなければなら ず、光の分散は最少でなければならず、表示装置上の書き込み表面の高さは、視 覚パラランクスを減少させるために、最低にしなければならない。
・タブレットは、スタイラスの使用並びに池の物体からの衝撃及び摩擦に耐える ように、耐摩擦型でなければならない。
・タブレットはノイズに対する十分な抵抗力を有し、コンピュータ内の表示装! や他のRFI源から非常に近い所でも正確に動作しなければならないっ・ノート ブック型の小型コンピュータは、それが遺帯可能装置として特に有用である。し たがって、低電力も、有用な特性である。
・タブレットは、1秒当り少なくとも120ポイントをデジタルfヒできなげれ ばならない。
・スタイラスのタブレットへの接近を感知する機能を設け、ユーザが書き込みま たはドラッグを行なっていないがスタイラスが表面近くまたは表面上にある時、 システムが追跡用カーソルを表示できるようにしなければならない。
タブレットへの「接触」を感知すべきであり、これはティップスイッチ(tip  5w1tch)で実施することができる。スイソチ力は、ユーザが最少のスキ ップ動作で快適に書くことができるようにすべきである。
[デジタイザ技術・性能特性及びユーザインターフェースに対する効果J (I EEE Computet and Applications 1987年4 月、pp31−44)という題の論文が、デジタイザ技術について記載している 。
タブレットインターフェース36は、タブレットからのX−Y座標データをイン ターフェースプロセンサに転送する。このインターフェースは、アナログフロン トエンド(f ron t end) 、D/A変換器、68HC11マイクロ コントローラ(Motorola Corporationから)、及び関連す るロジック、並びにFROMを備えている。PROMは、マイクロコントローラ が行方向のタブレットデータを補正するために用いる情報を含んでいる。上記マ イクロコントローラは、インターフェースプロセッサ32へのシリアルリンクを 有している。
タブレットインターフェース36とインターフェースプロセッサ32との間の接 続は、19.2キロビット/秒で動作する、双方向非同期シリアルリンクである 。以下にあげるのはインターフェースプロセッサがタブレット制御器に送ること ができる最も重要なコマンドである。
Re5et タブレットを再初期化し、試験する。成功または失敗コードがイン ターフェースプロセッサに戻される。
Quit タブレット制御器が、できるたけ多くのタブレ、ト電子回路の電力を 低下させ、新しいコマンドを待つ。
5leep ユーザイベント(fi’llえば、スタイラスが接近する、または 、既に近傍にあれば、スタイラスが移動する)が起こるまで、タブレット制御器 はデータ送出を停止し、イベント発生時にタブレット制御器はデータ送出を開始 する。
他のコマンドを診断の目的に用いることができる。
デジタル化された各ポイントに対して、タブレット制御器は、5バイトのデータ を送る。その場合、ビット位置は次の意味を有する。
1 0 1 TIP 5IDE O00PROX2 0 0 X5 X4 X3  X2 XI XO300Xll XIOX9 X8 X7 X64 0 0  Y5 Y4 Y3 Y2 YI YO500Yll YIOY9 Y8 Y7  Y6RROXは、スタイラスがタブレットの感知範囲にあるか否かを示す。TI Pは、ティンプスイッチが押圧されたか否かを示す。5IDEはスタイラス側の スイッチが押圧されたか否かを示す。X及びYは、X−Y座標データを表す。
タブレット制御器によってインターフェースプロセッサに送られるデータは、X 及びY軸に対して、0から4095までの値を有する。これらの値は、表示装置 よりわずかに大きな領域に対応する(表示装置の縁に沿って「ボタン」を設ける ため)。
製造工程の一部として、各ユニットに対して3点更正を行ない(デンタイザと表 示装置との不整合を補正するため)、安定メモリ(例えば、ディスク、)−ッテ リでバックアップされたC〜IO8RAM、EFROM)に記憶する。更正パラ メータは、インターフェースプロセッサが12ビツトのタブレット制御器を表示 座標に変換するために、用いられる。
1、2.7 インク/マスク表示バッファ及び制御器マスク面は画素当り1ビツ トを有している。これを用いて、通常の表示バッファからのデータまたはインク 面からのデータのどちらが表示スクリーン上に示されているかを判断する。マス ク面を拡張して、画素当り1ビツト以上を含むこともできる。例えば、VGAと インクデータとの間での単純な選択に加えて、A N D 。
OR,XOR,NOR,及びNANDのような、画像の組み合せ構成の中からの 選択ができるようになる。
例示的なシステムでは、インク面は画素当り1ビツトを有する。しかしながら、 この面は、画素当りより多くのビットを有し、インク面に灰色階調またはカラー 表示ができるようにすることも可能である。
1、2.8 ビデオマルチプレクサ ビデオマルチプレクサは、リフレッシュデータの表示装置への流れを制御する。
これは、マスク面データストリームの画素値にしたがって、アプリケーション面 (VGA)のデータ流またはインク面のデータ流から、画素値を選択する。XO Rのような、2つの面からのデータを組み合せるためのより複雑な演算動作を用 いることもできる。このような動作は、全体として表示装置に対して、或は(マ スク面が画素当り1ビツト以上を含んでいれば)画素毎に選択することもできる 。
1、2.9 信号処理サブシステム 本システムは、信号処理サブシステムを備えている。このサブシステムは、音声 の記録及び再生を行なうことができ、ファクシミリのモデムとして動作し、そし てデータ通信のためにV22として、bis2400ビット/秒で動作する。
このサブシステムは、デジタル信号プロセッサ60 (Texas Instr uments320c25)(それ自体のメモリ66を有する)、外部へのイン ターフェースのためのアナログ回路62、及び(マイクロチャンネル70を介し て)システムの残りの部分と連係するためのデジタル回路を有するASIC64 を備えている。
外部マイクロフォン及びヘッドセットのためにコネクタが設けられている。内部 マイクロフォンも備えられている。
1、2.10 種々の通信ポート 更に次の通信ポートが設けられている。
・2つのシリアルポート(1つは標準コネクタを有し、もう1つはモデムが必要 でない時に用いるための、モデムポートコネクタを介して使用可能なもの)・S C8Iポート74 ・工業標準パラレルポート パラレルポートと標準シリアルポートとは、VL16C451B (VLSIL ogicより)72を用いて実施されている。第2のシリアルポートは、デジタ ル信号処理サブシステムの一部であるASIC64によって実施されている。
1、2.11 大量記憶装置 ハードディスクドライブ76が、プログラム及びデータの大量記憶のために備え られている。外部フロッピディスクドライブをSC8Iインターフェースを介し て接続することができる。
1.3 VLSIの実施 Western Digitalから入手可能な次のチ・ノブは、コアロジ、ツ ク80を実施するものである。
・WD6000周辺I10周辺上10コントローラ1.0DMAコントローラ及 び中央アービタ・WD6036LPマイクロチャンネルバスコントローラ及びメ モリコントローラ ・WD5020アドレス/データバッファその他の構成物には、次のものが含ま れる。
・システムROM30bは、128kx8ビツトであり、電源オン試験用ソフト ウェア及びBrO5,並びにシステムデータを含んでいる。2つの27×512 メモリチツプが用いられている。このROMは、8ビツト幅のデータバスを有す る、ローカルチャンネルバスに接続されている。システムを起動した後、BrO 3をシステムメモリにコピーしてアクセスを高速化し、電力消費を提言するため にシステムROMをスタンバイモードに設定できるようにする。
・リアルタイムクロック82は、MC146818Aを用いて実施されている。
この構成物は、一体化電池によって保持される64バイトのRA Mも含んでい る。
・不揮発性C〜10S RAM84は、システム構成データの記憶のための、ノ クソテリでバックアップされた8キロバイトのメモリを備えている。
1.31 オプテイマイザ 「オプテイマイザ」88は、次のものを含む種々の機能を組み合せるVLSIチ ップである。
・プログラムで制御される速度のスイッチングを含むクロック発生(ノートブッ クコンピュータでは、システムクロック速度を変化させて電力効率を向上させて いる) ・制御信号、及びSC3Iボート及びハードディスクドライブ用I10レジスタ アドレスのデコードは、マイクロチャンネル信号から発生される。
・プログラマブルなオプショナル選択レジスタを含む種々のI10レジスタ(オ プテイマイザによってサポートされるデバイスであり、主プロセ、ソサには、全 て単一のマイクロチャンネルデバイスのように見える。このようなデノくイスの 特性は、rlB〜I Personal System/2 Hardware  Interface Technical ReferenceJにおけるよ うに、どこにでも記載されている)、及びシステム電源制御用並びに主プロセツ サのクロック速度を制御するためのレジスタ・オプショナルキーボードとインタ ーフェースプロセッサとの間のインターフェース ・主プロセツサとインターフェースブロセ・ツサとの間のインターフェース最後 にあげた2つの機能は、本発明に最も関連のあるものである。
インター(相互)プロセッサインターフェース50及びキーボードインターフェ ース54を実現するオプテイマイザ内の回路が、図4に更に詳しく示されている 。
主プロセツサとインターフェースプロセッサとの間の、「データリンク」として 知られている通信リンクのために、オプテイマイザは、4つのレジスタ、即ち通 信の各方向に対して1つのデータレジスタ及び1つの状態レジスタ(図4の11 0.112.114及び116)を備えて(する。
主ブロセ、けが標準キーボードポートと看做すものを設けるために(IBMのP S/2ンリーズのようなコンピュータによって代表される、事実上の標準)、オ プテイマイザは、さらに4つのレジスタ、即ち通信の各方向に対して1つのデー タレジスタと1つの状態レジスタ(図4の120.122.124及び126) を構成する。
オプテイマイザは、また、インターフェースブロセ・ソサのためにも、割り込み IDレジスタと割り込みマスクレジスタとを構成する。
インターフェースプロセッサは、主ブロセ・ソサへのキーストロークの通信を取 り扱うが、オプテイマイザは、(オプションの)物理的キーボードへの双方向シ リアルインターフェースを備えている。これは、インターフェースプロセッサを 、キーボードクロック及びデータ線の監視から開放し、インターフェースプロセ ッサが全バイトに対処できるようにするものである。物理的キーボードの接続を サポートするために、オプテイマイザは、データレジスタ130(双方向)及び インターフェースプロセッサによってアクセスされる状態レジスタ132を備え ている。
インターフェースプロセッサは、インターフェースプロセ・ソサカ<8042キ ーボードコントローラであるかのように主ブロセ・ソサと相互作用すること1こ よって、(オプションの物理的キーボードと疑似キーボードからの両方の)キー ストロークを送出する。標準キーボードコントローラは、補助装置(典型的(こ マウス)及びキーボードからのデータに備えているので、この機能も設けられて LNる。
オプテイマイザは、ブート(boot)時のソフトウェアのローディング及びそ の他の必要時を含む、プロセッサ間の種々の通信のために用(Xられる、インタ ーフェースプロセンサと主プロセツサとの間の「データリンク」接続も、与える 。
1.3.2 8GA BGA86 K5) は、殆どの回路に、現在のアブ1ノケー/ヨンの表示デー タと衝突することなく、疑似装置のユーザインターフェースを表示できるよう( こするものである。特に、BGAは、殆どのインク/マスク回路を実現し、表示 装置にデータ及び制御信号を供給するVLSIチップである。図6は、マルチプ レクサ46(図2のもの)を更に詳細に示しており、これは、図5において「ビ デオデータの交換」と名付けられたブロックに含まれている。
BGAは、VGAコントローラからのデータを受け取り、インターフェースプロ セッサにインク/マスクメモリへの書き込み/読み取りアクセスを供給し、そし て表示装置にデータを送る。BGAは、VGA信号(水平同期、垂直同期、及び 画素クロックであり、これらは一度に8画素バイトずつ、4画素が表示装置の上 半分から、そして4画素が表示装置の下半分からのものである)を監視し、イン ク/マスクデータからのデータを、VGA制御器によって発生されたデータと調 和させることができるようにする。BGAは、VGA制御器からのドツトクロッ ク信号(画素クロックの8倍)も用いて、その動作を連続化させている。
VGA制御器は、多重化メモリアドレスバスを有するDRAMと共に用いるよう に設計されている。しかしながら、VGA表示バッファは、多重化アドレスバス を用いないPSRAMで構成されており、したがってアドレスランチが用いられ ている。更に、BGAは、VGA制御器によって発生された信号から、PSRA M用制御信号を得る回路を含んでいる。
インターフェースプロセッサ用主メモリである512キロバイトのメモリアレイ がBGAに取り付けられている。このうち、76800バイトがインク/マスク 面表示バッファのために用いられている。この表示バッファは、(図9に示すよ うに)インターフェースプロセッサには、2つの38400バイトブロツクのよ うに見える。インク面は30000.にて開始し、マスク面は70000.にて 開始する。これらの位置は、(図8に示すように)個々のメモリデバイスへのア ドレスの割り当てと組み合わされて、各画素に対するインク面及びマスク面デー タが結果的に別個のメモリデバイスに記憶されるようになっている。したがって 、表示装置をリフレッシュするとき、両方を同時に引き出すことができる。この メモリの残りの部分く約400キロバイト)は、プログラム及びデータの記憶の ために、インターフェースプロセッサによりて使用されるようになっている。
このアレイは、4つの256Kx4ピントビデオRAM (VRAM)デバイス (524256チツプ)によって実現されている。これらは、デュアルポートデ バイスである。各チップは、4ビツトの読み取り/書き込みポートを有し、BG A内の回路を介してインターフェースプロセッサに接続されている。また、各チ 。
プはノリアルアクセスの読み取りのみのポートも有しており、これは表示用デー タを供給するために用いられる。各チップは、4つの512ビツト/フトレシス タを有し、これらはシリアルアクセスポートを駆動するために用いられる。一旦 シフトレノスタがロードされると、ノリアルデータを7リアルポートからンフト アウトしている状態で、他のポートを介したアクセスが生じてもよい。
1.3.2.1 メモリマツピング インターフェースプロセッサが、1メモリサイクル中に1バイトのインクデータ (8画素に対するインクデータ)を読み取ることができ、更に1メモリサイクル 中に1バイトのマスクデータ(8画素に対するマスクデータ)を読み取ることが できることが望ましい。また、8画素に対するインク及びマスクデータの両方が 一度に、表示のリフレッシュのために使用可能であることも望ましい。
図7は、表示装置の上半分の最初の16個の画素をT1−T16として表し、表 示装置の下半分の最初の16個の画素を81〜B16として表すものである。
LCD表示装買装置、一度に8ビツトのデータが供給される。これらの8ビツト は、表示装置の上半分の4画素及び表示装置の下半分の4画素に対応する。図8 は、例えばインク及びマスクデータがどのように4個のV R、A Mチップに 記憶されるかを示している。ITIは画素T1に対するインクビットであり、M Tlは画素T1に対するマスクビットである。IBIは、画素B1に対するイン クビットであり、〜fB1は画素B1に対するマスクピントである。VRA〜1 0及びVRAMIにおいて、インク及びマスクデータは、30000.から39 5F F Hまでのアドレスに記憶される。VRAM2及びVRAM3では、イ ンク及びマスクデータは39600.から記憶される。アドレス3FFFF、以 降では、インク及びマスクデータが30000.から32BFFFHまでの位置 で連続するように、アドレス指定が繰り返される(wrap)。
表示リフレッシュのために、図8に示すように、信号5DO−8D15の16個 の信号として、データがV RA Mから読み出される。図6は、これらの信号 が、どのように2つのマルチプレクサ150及び152(各々、2組の8個の信 号の内の1組を選択する)によって処理され、8個の1ビツトマルチプレクサ1 60においてVGAからのデータを組み合わされるかを、示すものである。
表示リフレッシュのために、図8に示すようにVRAMからデータが連続的に読 み出される。例えば、シリアルデータピント0 (SDO)はインクデータであ り、次にマスクピント、その次にインクビット等となっている。SDOがインク ビットの場合は、SD4はマスクビットとなる。マルチプレクサ150及び15 2は、交互の16ビツトワードにおいて、各VRAMからの4ビツトのニブル( rlibble)を交換するのに用いられる。
インターフェースプロセッサがメモリをアクセスした時、BGAはVRAMへの アドレッシングを制御して、1バイトのインクデータが、1つのVRAMからの 奇数番の位置と、他のVRAMからの偶数番の位置とで構成されるようにする。
更に、インクデータは連続したインターフェースプロセッサのアドレス位置(3 oooo、からスタート)においてアクセスされるが、各VRA〜1チップの1 つ置きのメモリ位置に記憶される(VRAMチップにおいては、マスクデータと 交互になっており、インターフェースプロセッサには、より高位のアドレス範囲 の70000□から始まるように見える)。したがって、インクデータは、イン ターフェースプロセッサのアドレス空間において、1つの連続データブロックと して現れ(30000,〜395FFH)、マスクデータはインターフェースプ ロセッサのアドレス空間において、別の連続データブロックとして(70000 ゜〜795FF、)現れる。これは、図9に示されており、ビット識別が図8の ものと対応し、更に図7の画素と対応している。
1、3.2.2 表示タイミング VGA制御器38は、画素毎に1ビツトの表示データを発生する。このデータは 一度に8画素分発生される。即ち、表示装置の上半分の4画素と、表示装置の下 半分の4画素である。V G 、A制御器は、この表示データに付随する3つの 制御信号も発生する。それらは、各8画素(バイト)データに対する1度に1つ の画素クロック、水平同期信号、及び垂直同期信号である。VGA制御器は、画 素クロックの速度の8倍の「ドツトクロック」も供給する。
1.3.2.3 VGAとインクデータとの多重化ビデオデータの交換と名付け られた図5のブロック(図6に詳細に示されている)は、8個の単一ビットマル チプレクサ160を含んでいる。各マルチプレクサは、マスクビットを用いてV GAデータビットまたはインクビットを選択する。
各画素クロックのタイミングで表示装置の上半分の4つの連続する画素と、表示 装置の下半分の4つの連続する画素が、同時に1組のマルチプレクサによって処 理される。VGA制御器からの制御信号(画素クロック、水平同期、及び垂直同 期)を遅延させて、BGAからのビデオデータと同期させる。
1、3.2.4 表示モード 通常、BGAは、VGA、インク及びマスク面からのデータの組み合せである表 示データを供給する。各画素に対して、BGAは、マスク面データに応じて、V GAデータまたはインクデータを供給する。
B G Aは、両方のデータ源(V G A及びインク/マスク)からのデータ のブランキングを準備する。これは、表示装置からのアプリケーションデータま たはインターフェースデータの除去を、対応する表示バッファをクリアすること なく、行なえるようにする。
BGAを「スリーブ」モードにして電力消費を低減させることもできる。このモ ードでは、インターフェースプロセッサは、全てのVRAMメモリ位置へのアク セスを有する。VGAデータは、V G Aタイミング信号を監視することなく 、表示装置に渡される。BGAスリーブは、BGA制御レンしタ内のあるビット を設定することによってアクティブ化され、そしてVGAスリーブ信号(オプテ イマイザから外部ビンにて受け取られる)によってアクティブ化される。VGA スリーブ信号によってアクティブ化されるとは、表示出力ドライバはディスイネ ーブルされるので、表示装置にダメージを与える事なく、電力を表示装置から遮 断することができる。
1、3.2.5 インターフェースプロセッサとBGABGAは、VRAMが2 つの待ち状態で動作する1200秒のDRA〜1であるかのように、VRAMの アクセスをインターフェースプロセッサに与える。
BGAは、ビデオンフトレジスタがロード中にインターフェースプロセッサのR eady (レディ)線を制御して、インターフェースプロセッサには明白なよ うに、VRAMを用いて表示装置をリフレッシュできるようにする。
BGA制御レジスタは、次のビット、即ちBGAスリーブ、ブランクVGA。
ブランクインクを備えている。また現在走査中の線の番号を示すリードオンリレ ジスタもある。
1.3.2.6 BGAとオプテイマイザBGAは、インターフェースプロセッ サのアドレス線の全てと接続されており、一方オブティマイザはこれらのアドレ ス線のサブセットに接続されている。このように、BGAは、オプテイマイザの ためのチップ選択信号を発生するように構成されている。このチップ選択は、1 011〜17□の範囲内のアドレス、即ちオプテイマイザの8つのI10マンブ トレジスタに対応するアドレス内の任意のI10アドレスに対して、アクティブ 状態である。
1、3.2.7 コントラスト制御 表示のコントラストは、8ビツトのD/A変換器の出力によって制御される。
この変換器のデータレジスタは、メモリ位置にマツプされている。このメモリ位 置への書き込みは、VRAMへの書き込みと、外部D/A変換器への新しい値の ランチとの、二重の機能を有する。したがって、変換器の現在値は、そのVRA Mの位置を読取ることによって、判定することができる。
1.4 主プロセツサ及びインターフェースプロセッサ間の通信主プロセツサと インターフェースプロセッサとは、2つの別個の機構を通じて、互に通信する。
インターフェースプロセッサは、キーストローク及びマウスデータの通信は、I 10ポート及びキーボードコントローラと関連付けられているプロトコルとを通 じて行なっている。別個の、より一般的通信機−(「データリンク」と呼ばれて いる)も、備えられている。
1、4.1 データリンクレジスタ 主プロセツサとインターフェースプロセッサとの間のデータリンクは、7.tの プロセッサに対して、受信データレジスタ(8ビツト)、送信データレジスタ( 8ビツト)、状態レジスタ(この内2ビットが用いられる)、及び1つの制御ピ ント(あるレジスタ内に配置されており、該レジスタは複数の制御ビットが他の 目的に使われている)を、用いている。一方のプロセッサの送信レジスタは、他 方のプロセッサの受信レジスタである。
インターフェースプロセッサは、この情報に、固定アドレスを有するI10ポー トを介してアクセスする。
データリンクレジスタは、オプテイマイザによって維持されるものの中にある。
オプテイマイザのPOSレジスタ103は、4つのビットを備えており、これら を用いて、データリンク、状態レジスタ、並びにオプテイマイザによってサポー トされる他のレジスタのアドレスマツピングを制御する。
一つの状態ビットは、そのプロセッサの受信レジスタにデータがあるかいなかを 示す。他の状態ピントは、そのプロセッサの送信レジスタが空であるかを示す。
制御ピントによって、他方のプロセッサがデータを送る時に、割込みが発生され るかを、対応するプロセッサが判断できるようにしている。
1、4.2 データリンクプロトコル 低レベル通信プロトコルは、主プロセツサが何によってインターフェースプロセ ッサから診断情報を得ることができたかによって定義され、データ(ソフトウェ アを含む)をインターフェースプロセッサの主メモリにダウンロードし、電力保 存機構を制御し、そして主プロセツサにて実行されるアプリケーションがインタ ーフェースプロセッサと通信できるようにする基本機構を設けている。
主プロセツサからインターフェースプロセッサへの一般的通信に対して、王プロ セッサ内のBIOSコールが、1ブロツクのデータをインターフェースプロセッ サに送ることができる。
インターフェースプロセッサから主プロセツサへの一般的通信のために、アプリ ケーションに備えられたデータリンクのデータハンドラ(hand l e r )が用いられる。BIOSコールを設けて、データリンクハンドラを設置し、デ ータ ′リンクトライバの現在の状態をセーブしくデータリンクトライノ(の現 在の状態をセーブするのに必要とされるメモリ量を示す、別のBIOSコールカ (設けられている)、そして以前にセーブしたデータリンクトライノくの状態を 復元する。データリンクデータハンドラを用いることによって、複数のアブ1ノ ケーシヨンカ(、データ1ルクへのアクセスを共有することができる。BIO3 It、セーブ力)ら;ノストアを減じた数のカウントを保持し、各データリンク トライノく状態セーブ(ま、関連のあるカウント(即ちネスティングレベル)を 含んで0る。データ1ノンクドライバ状態が復元されると、このカウントがチェ ・ツクされ、ネスティングレベルシカく一致しないと、エラーが戻される。
インターフェースプロセッサからのデータを受け取る1こ1マ、アブ1ノケーシ ヨンはあるルーティンを備えねばならず、データがインターフェースブツセ1. サカ)ら受けとられる時、このルーティンがコールされる。アブ1ノケーンヨン 1よ、上述の「設置(instrall)JBIOSコールによって、このデー タノーンドラル−チンをデータリンクトライバを用いて登録する。
現在のデータリンクデータノーンドラへのポインタがドライノく状態セーブ領域 1こ記憶されているので、デーツノ1ンドラは容易に連鎖することができる。1 つのノ1ンドラが、データがそのハンドラのためのものでないと判断した場合、 そのノ1ンドラは、そのハンドラが設置された時に作成された状態セーブ領域1 こお0て示されたハンドラに従うことができる。
これらのBIOSコールは、以下のエラー状態を示すビ・ソトを有するデータ1 ノンク状態のバイトを戻す。それらは、送信進行中、受信進行中、違法データ1 ノンクドライバ状態の復元、タイムアウト、ビジー、及び無効機能要求である。
更に、インターフェースプロセッサのりセント、エコーデータ(データ1ノンク の試験のため)、診断結果の獲得(インターフェースデータ・ソサのファームウ ェア診断の結果を返す)、ダウンロード初期コード及びデータ(及び特定位置へ のジャンプ)、F1キー発生のイネーブル及びディスイネーブル、電池電圧レベ ルの獲得、インターフェースプロセッサファームウェア改正(revision )レベルの獲得のような、ある特定のインターフェースプロセッサ1こ関連した 作用を行なうために、BIOSコールが設けられている。
システムがブートしている時、ユーザがF1キーボタンを押圧するか、或はタブ レットを叩((ユーザがエラーメゾセージを見たことを示す)ことを要求される ような、ある状況(ユーザの注意を引くべき構成エラーのような)がある。生プ ロセッサが、F11キー生をイネーブルために、インターフェースプロセッサに コマンドを送った後、インターフェースプロセッサは、ユーザが最初にタブレッ トを叩いた時にF1キーストロークを送出する。主プロセツサがF11キー生を ディスイネーブルすることができるコマンドがある(例えば、オプションのキー ボード上でF1キーを押圧した後にユーザがタブレットを叩いた時には、第2の F1キーストロークを発生しないようにするため)。
主プロセツサは、表示装置のバンクライトのオンオフ、ハードディスクのタイム アウトの設定、最高速システムクロソクの設定、最低速システムクロソク速度の 設定、システム遮断の開始、システム起動の開始等の、インターフェースプロセ ッサから発せられたあるコマンドも、サポートする。
データリンクを介したインターフェースプロセッサとの通信のため、ドライバは 、2つの方法のいずれかで通信を実施することができるっ上述のように、データ リンクデータハンドラは、BiO2を用いて登録することができる。代替的に、 あるドライバがデータリンク割り込みを引き受けることができる。このドライバ は、恐らく、適切な時に通常のBIOSデータリンクトライバに連鎖することに なろう。
143 データリンク上のタブレットデータ主プロセツサは、タブレットデータ をそこに送るように要求することができる。
このような要求の後、インターフェースプロセッサは、5バイトのタブレットデ ータブロックを、それらが使用可能になった時、及び疑似袋!インターフェース によって用いられていない時はいつでも、主プロセンサに送出する。加えて、主 プロセツサは、それにコマンドをタブレットに送るように指揮しているインター フェースプロセッサにコマンドを送ることによって、タブレットを制御すること ができる。主プロセツサは、インターフェースプロセッサが用いることになる更 正パラメータを指定するコマンドを、インターフェースプロセッサに送ることが できる。主プロセツサは、インターフェースプロセッサが、主プロセツサに送ら れるために待機しているいかなるタブレットデータをも破棄すべきことを指示す るコマンドを、送ることができる。
主プロセツサ用のBiO2は、タブレットデータを受け取る機構を備えており、 これによって主プロセツサ内で実行されているアプリケーションを登録すること ができる。一度に1つ以上のアプリケーションを登録することができ、この場合 、連鎖を形成して、1つのアプリケーションによって用いられていないタブレッ トデータを、その連鎖内の下位にある他のアプリケーションに使用可能にするこ とができる。
2 疑似装置 キーボード、マウス、手書き入力装置からなる1組の疑似装置が、ユーザに使用 可能となっている。
ある「疑似装置」は、アプリケーションプログラム及びユーザの双方に対して、 多くの既存のアプリケーションプログラムが動作するように設計された装置を、 実際にシミュレートする。他のものは、アプリケーションが動作するように設計 された装置のいずれとも異なり、ユーザを対象にしている。例えば、手書き入力 装!は、標準装置へそれほど関係するものではない。ある意味では、手書き入力 装置は、以前は手書き入力を用いるために特に開発されたアプリケーションとの み使用可能だった手書き入力を、(ユーザに対して)シミュレートするものであ る。アプリケーションの観点からは、この装置は、キーボードをシミュレートす る。キーを含む必要はないが(実物またはシミュレーション)、手書き入力装置 は、アプリケーションにキーコードデータを供給する。
これらの入力設備は、それらがユーザに対してどの特定のアプリケーションプロ グラムとも独立しており、かつ相互にも高い独立性を持って存在しているという 意味において、「装置」である。仮想的には、装置表示は、アプリケーション表 示と常に干渉しているのではない。これは、大きな表示装置上の別個のウィンド ウのように、各々に別個の表示領域を与えることによって、達成することができ る。しかしながら、好適実施例では、アプリケ−/ヨン表示とインターフェース 装置の表示との両方に対して、1つのスクリーン領域を用いている。ユーザに対 して、装置はアプリケ−/ヨン表示の上にあるように見える。 更に、実施にお いて、これらの装置は、それらが用いられ得る種々のアプリケーションプログラ ムとは独立している。好適実施例では、それらは、アプリケーションが実行され るプロセッサとは別個のプロセッサを用いても、部分的に実施される。
装置ノミュレーションとアプリケーションとの間に最高の独立性をもたらすため に(そして共有される表示性能を向上させるために)、上述のようなハードウェ アサポートが、疑似装置表示のために備えられている。表示面が備えられており 、該表示面のタイプに対して多くの既存のアプリケーションが設計された。2つ の面、即ちインク面及びマスク面も追加されている。ある画素に対する表示され た値は、以下のように、3つの面の各々からのその画素の値から、決定される。
即ち、マスク面画素が一方の値を有する時、アプリケ−ノヨン面画素値が表示さ れ、マスク面画素が他方の値を有する時、インク面画素値が表示される。
インク面がそう名付けられたのは、その機能の1つが「電子インク」の表示であ り、時として、ユーザがペンで紙の上に書いているかのように、スタイラス、タ ブレット及び表示装置が動作するからである。スタイラスがタブレットと接触し ている時、スタイラスをタブレットを横切って動かすにつれて「インク」の痕跡 が表示される。インクを用いない動作の多くに対して、例えば、スタイラスがあ るアイコンをドラッグする際、表示にインクを散乱させる必要はない。一方、電 子インクはインク面のみに限定される必要もない5ノミユレートされた装置(V E似装置)のみがインク面を用いるのに対して、特定のアプリケーションは、こ れらのアプリケーションによって用いるために備えられた表示面にインクを塗る (put)ことができる。例えば、「ペイントアプリケーションは、ロケータ装 置の動きに応答して、電子インクを表示する。
1列の機能ボタンも設けられている。図1に示されているものは、rDEVIC 3J、rCONTRASTJ、rFREEsTYLEJ、rTNF○」(16a 、16b、16C及び16d)である。これらは、通常のスクリーン表示の上に 延在するタブレットの一部分に配置されている。これらのボタンの各々として機 能するタブレットの部分を示すために印刷された永久ラベルがある。代替的に、 表示装置が機能ボタンに対するラベルを提供することもでき、そして該機能ボタ ンは、タブレットとは別個の機構で実施することもできる。いずれの場合でも、 コントラストの調整が悪く表示が空白に見える時に、コントラストボタンを識別 するなんらかの手段(表示装置から離れた)を備えるべきである。
機能ボタンは、疑似装置の制御において(特に)用いられる。
「装置トレイ(tray)Jをアクティブ化及び非アクテイブ化するために用い られるDEVICEボタン16aがある。ユーザが最初にDEVICESボタン を押圧した時(当該装置ボタンに対応するタブレットのその部分に接触すること によって)、使用可能な疑似装置のトレイが表示される。すると、ユーザはトレ イから、ユーザがアクティブにしたい装置を引き出すことができ、そして既にア クティブ化されているがユーザが現在必要としていないものをトレイに引き戻す ことができる。次に、ユーザがDEVICESボタンを再度押圧すると、トレイ とその上のいかなる装置も(表示から)除去される結果となる。便宜上、装置は 、トレイ上で小さなアイコン(スタンプと呼ばれる)として現れる。また、トレ イが表示される時、既にトレイから除去されたためにスクリーン上にある装置も 、スタンプの形状で表示される。トレイが除去されると、残りの装置のどの視覚 表現も(即ちトレイ上に配置されていないもの)、それより大きく、より複雑な アイコンによって、置き換えられる。このアイコンは、ユーザが「動作させる」 疑似装置の視覚形状である。
情報装置をアクティブ化及び非アクテイブ化するために用いられるI N F  Oボタン16dがある。ユーザが最初にINFOボタンに触れると、INFOア イコンが現れる。最初に、INFOアイコンは、それをどのように用いるかにつ いての情報を表示する。次に、ユーザは、ユーザが何についての情報が欲しいか についての機能ボタン、即ちアイコンに触れる。これによって、触れられたオブ ジェクトに関する情報が、IFOアイコンのテキスト領域に現れる。
CoNTRAST機能ボタン16bは、表示の外観の1つの面である、コントラ ストを制御するものである。このボタンは2つの部分を有している。1つはコン トラストを増加させるため、1つはコントラストを低下させるのものである。
これらのボタンは、1/2秒間隔で自動的に繰り返し、最初のコントラストの増 分は小さく、後に増分は大きくなる(比較的長い時間、スタイラスを押し続けた 時)。
機能ボタンは、特定のアプリケーションをアクティブ化するために、設けること ができる。例えば、rFREEsTYLEj (Wang Laborator ies、incの商標)ボタン16cが設けられており、これは注釈及びデスク トップ管理アプリケーションをアクティブ化する。特に、このボタンによって、 データがインターフェースプロセッサから、主プロセツサ内の常駐Freest yle (フリースタイル)ドライバにデータを送ることになり、それが追加の Freestyie構成物をロードする。インターフェースプロセッサは、イン ターフェースプロセッサによって与えられたユーザインターフェースが使用しな いタブレットデータを、主プロセツサに使用可能にする。Freestyleア ブリケーンヨンは、このタブレットデータを読み込む。
これらの機能ボタンは、異なる方法で組織することもできる。例えば、Free style及びInfoは、Devicesトレイがら得ることができる。いく つかまたは全ての装置に対して別個の機能ボタンがあることもあり、極端な場合 、Devices)レイは必要でなくなる。表示装置のバックライト照明の量を 制御するためのLIGHTボタンのような、付加的な機能を行なうために、さら にボタンを設けることも可能である。
2 ] ユユーザインターフェースアイコに共通な特性アイコンは長方形(また は長方形の組み合せ)である。また、アイコンは別の形状でもよいが、アイコン の描画及びスタイラスがアイコン内にあるかの判断は、長方形の場合が最も効率 的に行なわれる。
アイコンの殆どが「サブアイコン」を含んでいる。これらのサブアイコンは、典 型的に特定の機能と対応し、ユーザがスタイラスを用いて叩く、ボタン領域とし て機能する場合も多い。
図10は、3つの疑似装置に対するアイコンを示すスクリーン表示である。これ らのアイコンの背後には、キーボードストロークの形状の入力及びマウス入力を 受け取り、そしてタブレットデータを受け取らないように構成された、テキスト 編集アプリケーションの表示がある。
キーボード装置は、4つのキーグループ(機能キーグループ、主QWERTYキ ーボード、カーソル制御キーバッド、数字キーバッド)並びにドラッグ及び構成 ボタンと共に示されている。
手書き装置は、上部にサイズ変更、ボックス幅調整、挿入、削除、及びドラッグ 動作用のボタンと共に示されている。また、表示された文字ボックスの左及び右 にスクロールするためのボタン、1列の文字を送るためのボタン、及び3組の文 字をオン及びオフするためのボタンも示されている(適切に文字認識アルゴリ識 結果が、文字を書き込むボックスの上に示されている。
マウス装置は、サイズ変更、拡縮率(拡大縮小率)、及びドラッグ動作用ボタン 、並びに3つの「マウスボタン」制御ボタン(1つはマウスの左ボタンに対応し 、1つはマウスの右ボタンに対応し、更に1つはマウスの左ボタン及び右ボタン を同時に、効果的に押圧するためのものである)と共に示されている。ボタン領 域の下に示されているのは、マウス移動領域であり、これは物理的なマウスと共 に用いることができるマウスバッドに対応する。
図10では、DEVICESlCONTRAST、FREESTYELE、及び INFOボタンは、表示装置の右側に沿って示されている。これは、上部に沿っ て示されている図1に示す例の代替案である。
2、1.1 スタイラス位置のユーザへのフィードバックスタイラスが、タブレ ットに対して感知できる程度の近さにある時(タブレットが適切にスタイラスを 感知してX−Y位置データを供給することを意味する)、スタイラス位置をユー ザに示すことができる。これは、タブレットが表示装置上に配置されていない時 は、特に助けとなる。いずれの場合でも、これは、小さな的に当てるというユー ザのタスクを簡単にし、そしてユーザにとってスタイラスがあると思われる表示 装置上の場所と、表示装置上で/ステムがスタイラスを配置した場所との間の小 さな不一致を、ユーザが克服する助けとなる。一般的に、スタイラスが隣接して いる時、カーソルはその位置を示す、ある状況では、このカーソルの出現は位置 に依存し、したがって更にフィードバックを与える。池の状況では、位置のフィ ードバックは、スタイラスの位置に応答して、表示装置の特定の領域を強調する 形をとる(たとえば、疑似キーボード上のキー)。
2、1.2 スタイラスの押し下げ 多くの状況においてスタイラスが押し下げられる時間は、特に重要なことではな い。他の状況においては、スタイラスを押し下げることが、自動的にある機能を 繰り返す結果となる。例えば、疑似キーボードキー上でスタイラスを押し下げる と、物理的キーボード上であるキーを押し下げているのと同様な自動繰り返し動 作が、結果的に得られる。更に別の状況においては、スタイラスを押し下げるこ とが、ある機能ボタンを「ロック」することになる。例えば、疑似マウスボタン は、スタイラスが短い時間下げられる時は、押圧及び開放を模倣するっ一方、ス タイラスが十分長く押し下げられると、スタイラスが除去された後でも、疑似マ ウスボタンは、「押圧」されたままとなる。
2.13 ユーザ目標エラーに対処するユーザインターフェース規則種々の規則 を用いてユーザインターフェースの動作を支配(govern)L、スタイラス 動作がどのように解釈されるかについてのユーザの理解を容易にする。
2、1.3.1 r点接触」規則 殆どの状況では、「点接触」規則は、以下にのべるアイコンの放1 (] 5a ve)規則及びアイコンへのドラッグ規則の組み合せよりも、有用である。
点接触規則とは、行なわれる機能が、スタイラスが接触した最初の点によって、 決定されることである。「アイコンへのドラッグ」規則と同様、あるアイコンへ の境界を横切ることによっては、ある機能はアクティブ化されない。しかしなが ら、この規則は、スタイラスがアイコンを離れても、ある機能の実行を継続させ るものである。
点接触規則はユーザに対して、疑似マウス装置に特に有用である。この規則は、 ストロークがマウス移動領域において開始するのであれば、用いられるスタイラ スが広く移動できるようにして、マウスデータを発生しつつ、スクリーン上に小 さなマウスアイコンを保持することを、可能とするものである。
2、1.3. rアイコンへのドラッグ」規則「アイコンへのドラッグ」規則に よれば、あるアイコンの機能は、スタイラスをそのアイコン内にドラッグするこ とによっては、開始されない。ある機能が、点接触規則にしたがって実行されて いる場合、スタイラスが他のアイコンに侵入しても、その機能は続けられる。あ るアイコンの機能をアクティブ化するには、そのアイコン(またはサブアイコン )の内側で、押し下げる必要かある。
2、1.3.3 rアイコン放置」規則ドラッグ及びサイズ変更動作のために、 点接触規則に代るものが用いられる。
スタイラスがあるドラッグ、またはサイズ変更サブアイコン内にあり、そのサブ アイコンを離れた時、 ・そのアイコン機能が停止し、 ・ユーザインターフェースは、スタイラスがタブレットから持ち上げられるまで 、全てのタブレットデータを無視する。
スタイラスが他のアイコン、或は空領域から当該アイコンに移動しても、変わり はない。
この規則は、ドラッグ及びサイズ変更の間維持されるが、これらの動作中、一般 的にスタイラスがアイコンを離れないようにアイコンが動(からである。しかし ながら、最大サイズに達した場合、またはユーザが境界を越えてアイコンをドラ ッグしようとした場合、スタイラスはそのサイズ、或はサブアイコンのドラッグ を放置して、動作を終える。
この規則を、点接触規則の代りに基本規則として適用することもできる。
2.1.4 ドラッグ動作 全ての装置は、「ドラッグ」サブアイコンを有する。これは、例えば、アプリケ ーション表示の特に重要な部分が隠れてしまうのを避けるために、ユーザに装置 を表示上で移動させるようにするものである。この「サブアイコン」は、特定の 方法で視覚的に示す必要はない。むしろ、池のサブアイコンによって占められな いアイコン領域全てをサブアイコンが包含することもできる。
サブアイコンのドラッグは、装置アイコンの右上角に配置されている。
スタイラスがあるドラッグサブアイコンに触れると、装置アイコンが、XOR「 アウトライン」によって!き換えられる。これは、ユーザに、ドラッグ機能がア クティブ化されたことを、示すものである。
スタイラスが持ち上げられるまで(または、以下に説明するように、スタイラス がドラッグサブアイコンの外に移動するまで)、このアウトラインは、スタイラ スの動きを追跡するように、スクリーン上を移動する。言い替えれば、ユーザは アイコンを「ドラッグ」することができるのである。
インク面表示の縁部を越えて移動するアイコンの部分はない。したがって、アイ コンを縁部に抗して押しやると、アイコンはもはやスタイラスを追跡せず、そし てスタイラスはドラッグサブアイコンからでてしまう。このようにした場合、ド ラッグ動作が終了し、スタイラスを持ち上げるまで池の動作は行なわれない。
21.5 サイズ決め 全てのサイズ指定可能装置は、「サイズ」アイコンを有している。
サイズサブアイコンは、装置アイコンの左上角部に配置されている。サイズアイ コンの他の可能な配置場所は、アイコンの周囲全体または、アイコンの全ての角 を含む。
スタイラスがサイズサブアイコンに触れると、装置アイコンが白黒の輪郭線によ って!き換えられる(処理負荷を減らすために、XORを取った輪郭線を用いる ことができる)。これは、ユーザに、サイズ決め機能がアクティブ化されたこと を示す。
スタイラスが持ち上げられる(または、以下に説明するように、スタイラスがサ イズサブアイコンからでる)まで、この輪郭線のサイズが変化し、スタイラスの 動きに追従する。アイコンの右下角の位置は、固定されたままである。言い替え れば、ユーザは、アイコンの左上角をドラッグするのであるっアイコンの部分で 、インク面表示の縁部を越えて移動する部分はない。あるアイコンはサイズの制 限を有することもある(水平及び垂直の一方又は両方の寸法、及びアイコン領域 の制限があり得る)。これらの要素は、サイズの変更がスタイラスに追従するの を停止する結果となり、結果として、スタイラスは、サイズアイコンからでるこ ともある。
機能ボックス(サブアイコン)は、アイコン全体のサイズにわたって拡大縮小す る。手書きアイコンでは、文字ボックスのサイズは変化しない。ボックスの数は 視覚的に変化する。
ユーザは、キーボード装置アイコンのサイズ変更ではな(、アクティブとなるキ ーボードの部分を選択することができる(以下に論じる、キーボード装置構成ボ タンの議論を見られたい)。
各角部のサブアイコンのサイズを変更する、または境界線をドラッグすることに よってサイズ変更を行なう等、サイズ変更のための他の構成を用いることもでき る(例えば、Microsoft Corporationのウィンドウ製品に 用いられているように)。
2、1.6 スタッキング 表示装置上のアイコンは、各々新しくアクセスされた順(INFOアイコン等を 用いて機能ボタンによって接触またはアクティブ化される順)に、整列されてい る。アイコンは、表示装置上の重複領域を覆うこともある。アイコンが重複する 時は、それらのアイコンの最も新しくアクセスされたものを、重複領域に表示す る。
このように、アイコンが集められた時、ユーザはそれらをアイコンの重複スタッ クとして見ることができる。1つのアイコンのどこか一部に触れると、それが最 上部のアイコンとなる。他のアイコンに完全に覆われているアイコンは、その上 のアイコンが十分に移動されてその覆われているアイコンの一部が露出するまで 、触れることはできない。
2.17 文字の送出 アプリケーションへの文字の送出は、そのアプリケーションにとっては、文字が キーボードから来るかのように行なわれる(好ましくは、ハードウェアによって )。このように、文字の送出は、キーボードが行なう低レベルのI10100実 行を伴うっこれの1つの結果は、アスキー文字コードではなく、キーコードデー タ(キーの押圧及び開放についての情報)が送出されることである。
ユーザインターフェースサブ/ステムのファームウェアは、ソフト及びシフトロ ックの状態に耐えず注意しているので(選択的な物理的キーホードからのキー操 作による変化も含む)、例えば、シフトされた状態でユーザが小文字を書いた時 、疑似装置は、無ンフト/文字/シフト情報を含む連続情報を、ファームウェア に送出することができる。次に、ファームウェアはこれらのコードを必要に応じ て変換し、キーボードポートを介して主プロセツサに送出する。
疑似キーボードのデータを主プロセツサに送出する、インターフェースプロセッ サの主プロセツサとの低レベル通信は、物理的キーボードが取り付けられている 時に実際のキーストロークデータを送出するのに用いられるのと同一である。
主プロセツサとの通はを制御する低レベルソフトウェアは、インターフェースプ ロセッサのファームウェアの一部である。これは、疑似袋!ユーザインターフェ ースからデータを受け取り、どのようにデータが識別されるかにしたがって、キ ーストロークデータ、マウスデータ、またはタブレットデータとして、送出する 。 この低レベルソフトウェアは、1つの装置(例えば疑似キーボード)の代り に送られる多コードンーケンスが、池の装置(例えば物理的キーボード)の代り のデータ送出によって、不適切に割り込まれないことを保証することができる。
この低レベルソフトウェアは、ソフト状態を追跡している。シフト状態情報を適 切に用いることは、(上述のように)疑似ユーザインターフェースいかんである 。
2.2 手書き認識装置 手書き認識入力装置は、手書き文字がキーボードから発したものであるかのよう に、アプリケーションに得られるようにする機構を備えるものである。手書き認 識入力装置用アイコンの主体は、ユーザが文字を書き込むことができるボックス を含んでいる。(文字位置の輪郭を定める他の方法、ティックマーク、ハッノユ マーク、影領域等を用いることもてきる。更に、このような明示的な文字分離に 頼らない文字認識技術を用いることもできる。)文字が書き込まれた後、ホック スが文字の列を編集する手助けをする。また、ストロークを文字に導く(par se)ための他のアルゴリズム(ストロークのセグメント化)を用い、ホックス を表示する必要性をなくすことも可能である。
ストロークデータは、認識アルゴリズムによって処理され、別個の文字として読 み取り可能に書かれた、印刷可能な文字の全てを認識アルゴリズムが認識する。
認識アルゴリズムに供給されるデータは、ストロークの記述、それらの文字ボッ クス内での位置、及び文字集合の指示(英数字、アルファベットのみ)を吹くん でいる。続き文字用のより複雑なアルゴリズムを用いることもできる。
事前訓練アルゴリズムは、ユーザがアルゴリズムを訓練する必要が全くなくなる ので、有用である。更に、ユーザは、ある特定の奇異な文字を扱うためのアルゴ リズムを訓練する選択ができる。訓練を必要とするアルゴリズム、及び訓練する ことができないアルゴリズムも使用可能である。
文字が認識された後、ユーザは、認識された文字の列を編集することができ、そ してそのストリングをアプリケーションに送出することができる。
2、2.1 文字の書き込み 各文字は、別個のボックスに書き込まれる。文字は、ボックスにどのような順序 で書き込んでもよい。左から右に文字を書く必要はない。ボックスに書き込むと き、電子インクが表示され、従来のペンを用いた書き込みを模擬する。
2、2.1゜1 ストロークの案内及び文字認識手書き文字は、1つ以上の手書 きストロークで構成されている。手書きストロークと考慮されるために、スタイ ラスは、アイコンの書き込み領域内で開始する。
この領域は、文字ボックスよりわずかに(たとえば、約1/8インチ)広くなっ ている。ユーザがスタイラスを持ち上げるか、あるいはスタイラスが文字書き込 み領域から離れた時、ストロークは終了する。電子インクが手書きストロークに 関して表示される。これは、システムが文字ストロークが何であるかを正確に、 ユーザに示す(そして、ユーザの書き込みを助ける)。
ストロークバッファは、2つの部分を有する。その一方はタブレ、トの解像度を (より高い解像度が文字認識にはより必要である)を含み、他方は、表示装置( 画素)の解像度(電子インクの表示を制御するために用いる)のデータを含んで いる。
あるストロークの「平均」位置が、どのボックスに「入っているか」を判定する 。単一列の文字ボックスに対して、ストローク内のデジタル化された点のX座標 の平均を用いて、ストロークが関連付けられるボックスを判定する。
ストロークの案内−アルゴリズムA 以下のことは、ストローク毎の処理に対する1つの手法を要約したものである。
・以前のストロークがない場合 一認議アルゴリズムをこのストロークに適用する。
−二のストロークが「入っている」ボックスに、結果を表示する。
−二のストロークをセーブする。
・1つ以上の以前のストロークがあり、それらが同一ボックスにある場合−この ストロークを以前のストロークのグループに加える。
−認識アルゴリズムを、そのストロークのグループに適用する。
一対応するボックスに、新しい結果を表示する。
−グループ内のストロークをセーブする。
・1つ以上の以前のストロークがあり、それらが別のボ、ノクスにある場合−他 のボックス中のインクを消す(そのボックスに対する認識結果は表示し続ける) 。
一以前のストロークを破棄する。
−このストロークが「入っている」ボックス内に結果を表示する。
−二のストロークをセーブする。
・スタイラスが、書き込み領域の外側に触れたり、或いはある時間期間(約1秒 のような)新しいストロークがない場合−残りのインクを消去する(認識結果は 表示し続ける)−以前のストロークを破棄するっ ストローク案内−アルゴリズムB 以下に、ストローク処理の多少異なる手法を説明する。
・次のストークを得て(あるストロークがリターンされたなら、それは手書き領 域にある)、それを(たぶん空の)ストロークバッファに加える。
・ (複数ボックスの1本の線に対する)ストロークの「平均」X位置を計算す ることによって、(どの文字ボックスと当該ストロークが関連付けられているか を、判断する。その平均X位置が(ボックスの内の1つの中ではなく)手書き領 域の左または右端にある場合は、そのストロークを無視する。
・ストロークが、ユーザが4つ以上の文字を消そうとしたことを示す場合、消さ れた文字(及びそれらのボックス)を削除する(それらのボックスは半分以上線 が引かれたものである)。
・ストロークが現ボックスにはない場合−それを現ボックスとする。
一以前のストロークに対応するインクを消去する。
−以前のボックスに対する認識結果を表示する。
−新しいストロークを、ストロークバッファの先頭に移動する(他のストローク を除去する)。
一ボックスに存在し得るいずれの認識結果も消去する。
−新しいストロークを描(。
・ストロークバッファ内のストロークに対する、認識結果を得る。
・次のスタイラスの接触を待つ。余りに長くかかるか、或いは次のスタイラスの 接触が手書き領域の外側である場合、−現ボックスの認識結果を表示する。
−以前のストロークに対するインクを消去する。
−ストロークバッファをクリアする。
2212 インクの消去及び認識結果の表示従来のシステムでは、インクの消去 及び認識結果の表示時刻を調整するための種々のアルゴリズムが用いられている 。これを行なうのに、書き込みプロセスへの混乱(distract 1on) を最少にし、かつユーザに2識プロセスについての助けになるフィードバックを 与えるように、それを行なうのが好ましい。
認識結果は、ユーザが書き込む領域から離れた所に表示することが出来る。これ は図10に示されており、ここで認識結実用空間は、文字が手書きされる空間の にに、tされているうこの場合、インクの表示を残しながら認識結果を表示する ことができる。
代替的に、認識結果を、ユーザが文字を書き込む領域に表示することもできる。
しかしながら、この場合、対応するインクを消去せずに認識結果が表示されると 、その結果とユーザの手書きが重複して、判読不能な混乱となり、ユーザを悩ま す結果となる場合が多い。
ある従来のシステムにおいて用いられた手法は、ユーザが十分長い期間中断し、 そしてそれまでに書かれた文字全てのインクを一度に消去するまで、侍つという ものである。この突然の消去それ自体は、混乱を招き、そして多くの文字を一度 に消去することにより、誤認識ではなくセグメント化エラーによる認識エラーを 、ユーザが理解することが困難になる。
最適の方法は以下のものである。
1、書かれた各ストロークをインクで書くために用いられた座標の全ての7<ソ ファを、ストロークを基準に、保持する。
2、区分は器(s egmen t e r)によってストロークを文字にグル ープ化するので(好ましくは、リアルタイムでであるが、必ずしも必要ではない )、システムはそれらのストロークの座標のバッフアキオフされた記録を用いて 、セグメント化された文字のインクのみを消去する。消去されたインクに対応す るバッファ記憶された座標のためのメモリ空間は、したがって、再使用すること ができる。
3、システムは、そして、直ちにまたはある遅れの後に、それらのストロークに 対する認識結果の文字を、いかなる残されたインクもな(、表示することができ る。
この方法を用いれば、不明瞭にするインクを残さずに、結果を文字毎に表示する ことがてきる。セグメント化したストロークの認識文字への変換は明白に起こる ので、ユーザは、セグメント化エラーが誤認識の原因である場合を、容易に知る ことができる。少数の保留中のストロークの座標のみをバッファ記憶すればよい ので、インク座標用の記憶空間を減少させることができる。
完全にセグメント化された文字の代りに、各ストロークの終端で、その時の認識 結果を表示するように、この方法を変更することもてきよう、加えて、本方法は 、編集過程の一部として、認識結果の代りに、インクを呼び出しそして再表示す るようにすることもできる。
ユーザの手書き文字を、極度にことなる外観で置き換えることは、ユーザを混乱 させる原因となる。例えば、手書き文字は、典型的に比較的細い線の集合として 現われ、文字のデザインは簡素である。対称的に、より判読可能な文字は、重量 がより重く、そして髭飾り(serif)を含むこともある。
このように、本例示的システムは、手書き装置によって用いられるための、「手 書き」フォントを備えている。このフォントの文字は、細線で構成されている。
更に、細線は、完全に直線または均等に湾曲したセグメントから成るよりはむし ろ、手書き文字を象徴するように、多少うねりがあろう文字認識結果を、ユーザ が書き込んだ領域内に表示しようとする時、文字は、手書きフォントで表示され る。
2.2.2 lit集 2、2.3 機能ボタン 手書き認識入力装置アイコンは、いくつかのサブアイコンを有する。
−挿入 一削除 −送出 2.2.3.1 挿入 ユーザは、空白のボックスを挿入することができ、これはある空間のために空白 のままにしておくことができ、またユーザがそこに文字を書き込むこともできる 。挿入機能ボタンに触れることによって、ボックスが挿入され、暗く変化するこ とにより、それがアクティブ化されたことを示す。そして、ユーザはテキスト線 内の一点に触れて、どこに空白ボックスが挿入されるべきかを示し、ボックスの 線を横切ってスタイラスをドラッグする。空ボックスが挿入され、該ボックスは ユーザが最初に触れた所にもっとも近いボックスの境界で始まり(即ち、1つの ボックスの中間と、次のボックスの中間との間のどこかに触れると、それら2つ のボックスの間に空白ボックスが挿入される)、ユーザがストロークを終了させ た所に最も近いボックスの境界で終る。
2、2.3.2 削除 ユーザは、挿入機能ボタンを用いてボックスを挿入したのと類似の方法で、削除 機能ボタンを用いることによって、ボックスを削除することができる。ユーザが 削除機能ボタンに触れると、それは暗く変化して、それがアクティブ化されたこ とを示す。次にユーザは削除すべきボックスに触れ、スタイラスをボックスの線 を横切ってドラッグする。ユーザがスタイラスを持上げると、ストロークが始ま ったボックスからストロークが終ったボックスまでが削除される。
2、2.3.3 消去 ユーザは、ボックスから文字を消去することができる(ボックスそのものを削除 するのではなく、空白ボックスは残す)。ユーザが消去機能ボタンに触れると、 暗くなり、それがアクティブ化されたことを示す。次に、ユーザは消去すべきボ ックスに触れ、スタイラスをボックスの線を横切ってドラッグする。ユーザがス タイラスを持ち上げると、ストロークを開始したボックスからストロークを終え たボックスまての文字が消去される。これは、「消去」ではボックスが残ること で、「削除」動作とは相違している。
2231 スクロール動作 アプリケーション表示の過度な不明瞭を避けるために、ユーザは手書きアイコン を小さく保持したいことがある。
左スクロール機能ボタンに触れると、テキストボックス内の全ての文字が、−文 字左に移動する。スタイラスを押し下げると、機能は自動的に繰返す。右スクロ ール機能ボタンも、同様に作用する。
スタイラスがボックスの外側に触れた時(例えば、スクロールボタンの1つに触 れる)ボックス内のいずれのインクも消去されるので、スクロールするインクは なく、認識された文字だけである。
2、2.3.5文字をアプリケーションに送出好適実施例では、手書き認識入力 装置は、バッファモードで動作し、ここではユーザが送出機能ボタンに触れるま で、文字は送出されない。代替的に、付加的モードを備えることができ(手書き 認識入力装置の機能ボタンによって選択可能)、それが完了した後各文字を送出 する。非バッファモードは、2つの選択可能なサブモードを含む。それはバック スペース処理を伴うか、及び伴わないかである。
バックスペース処理が動作中に、ユーザが現在の線に既に送出された文字に対応 するボックスの1つに文字を書き込むと、一連のバックスペースが送出され(そ の線内の後ろの文字を下げるため)、その後に新しく書き込まれた文字が続き、 その後にその線の右に現われる文字が続く。バックスペース処理は、現在の線に おいて修正するために、ユーザに後戻りや打ち直しを許す(キーボードを用いる 時)ようなアプリケーションには、有用である。
バッファモードでは、ユーザが「送出」機能ボタンを押すと、最後に手書き装置 がクリアされてから書き込まれた全ての文字がアプリケーションに送出され、そ して手書き装置がクリアされる(例えば、認識された文字の指示が表示から除去 される)。送るべき文字がなければ、キャリッジリターン文字が送出される。
非バッファモードでは、書き込みが空ボックスの右のボックスで開始した時、ス ペース記号が各空ボックスに対して送られる。バッファモードで文字が送出され る時は、スペース記号がいずれの空白ボックスに対しても送出される(連続して (t ra i l ing)空白が送られない場合は除く)。
2、2.3.6 移動及びサイズ変更 ドラッグ及びサイズ変更サブアイコンは、上述した一般的なアイコンと同様に動 作するが、薯き込みボックスの扱いには、特別の注意を要する。アイコンの高さ を変える時、書き込みボックスの高さも比例して変化する。しかしながら、アイ コンの幅を変える時は、文字を書き込むボックスの幅は変化されない。むしろ、 表示されるボックスの数が変わる。
ボックスの高さを変えるには、ユーザはホンクスサイズサブアイコンに触れ、ボ ックスサイズを変化すべき量だけスタイラスをドラッグし、そしてスタイラスを 持ち上げる。スタイラスがボックスサイズサブアイコンに触れると、そのサブア イコンの色が変わり(例えば、補色になる)、その機能がアクティブ化されたこ とを示す。スタイラスが持ち上げられるまで、右下ボックスの右下角(1ライン 以上のボックスがある場合)が、スタイラスが移動するのと同じ方向に移動され る。左上ボックスの左上角は固定されたままである。サイズ変更は、表示された ボックスのライン全体に対するものなので、ボックスサイズの大きな変更は、ボ ックスサイズサブアイコンにおいて数回のストロークを要することがある。
アイコン全体のサイズを大きくする時、またはボックスのサイズを縮小する時、 1つ以上の追加ボックス(またはボックスの1ライン以上の追加ボックス)が表 示される程度に変化を太き(してもよい。好ましくは、ユーザは現在の書き込み の右及び下に、追加の空間が現れることを期待する可能性が高いので、それらは ラインの右端に追加すべきである(または、ラインの追加の場合は下に)。
22.4 多数ラインの扱い 手書き認識入力装置は、多数ラインを取り扱うように拡張することができる。
多数ラインが用いられる場合、現ホックスの有効な境界を、上または下のボック ス内に拡張し、先に描いたストロークを閉じなければならない。これによって、 文字rTJの上部のようなストロークを、それが実際のボックス境界の完全に外 側に達しても、池のストロークと共に適切に含ませることが可能となる。
手書きアイコンが1ライン以上のホックスを扱うように構成されている場合、以 下の手法のいずれかを用いて、いつ文字をバッファモードで送出するかを決定す ることができる。
1、単線での場合のように、ユーザが送出ボタンに触れるまで、何も送出しない 。そして、各ラインの後にキャリッジリターンを送出する。
2、ユーザが新しいライン内に書き込む時、ユーザが先に書き込んだラインを送 出し、それにキャリッジリターンを続ける。
3、ユーザが新しいライン内に書き込む時、キャリソノリターン及びまたはカー ソル移動コードを送出し、ユーザが先に書き込んだラインに対する、新しいライ ンの位置を(文字を送出しているアプリケーションに)示そうとする。
2番目及び3番目の代替案は、ユーザが上から連続して一度に1ライン下がるよ うに書き込む場合には、同一である。
2、2.5 ポインティング及び書き込みモードの自動選択スタイラスを用い、 このスタイラスをポインティング装置(マウスの機能と同様)または書き込み( 例えば手書き認識または注釈のために)のいずれかとして用いることができるよ うにする、多くのシステムが開発されている。ユーザがポインティング及び書き 込みモード間で明示的に切り替えを開始する機構は、従来から備えられている。
その例には、次のものが含まれる。ユーザは書き込みの前にスタイラスでメニュ ー項目を取り上げ、ユーザはそのフィールドに書き込む前に「書き込み」フィー ルドをスタイラスで取り上げ(ユーザが書き込もうとする領域を、システムが表 示することに応答して)、ユーザは書き込みの前にスタイラスで二重クリックを 行ない、ユーザは書き込みの前にスタイラス側のバレルスイッチを押圧して保持 する(同様の機構は、書き込みからポインティングへの切り替えにも、設けられ る)。明示的動作の要求は、書き込みの前後で、ユーザの動作を中断する。
スタイラスが動作するモードを決定するために手書き認識装置によって用いられ る技術の変容も、手書き認識装置のコンテキスト以外で有用である。例えば、こ れは、表示された様式内のある領域内に情報を手書きすることをユーザにめる、 「様式書き込み」アプリケーションに用いることができる。
この技術は、ユーザにとって書き込み領域として自明の表示領域に書き込みが行 われることを想定している。即ち、ユーザが濃き混むスペースを備えた汎用のベ ーパ形態の表示画像である。
この技術は以下の通りである。
1、スタイラスは通常指示モードで動作する。
2、ユーザが書き込みフィールドの領域内(長方形輪郭内のような)にスタイラ スを押し付けた場合、システムは指示入力としてのスタイラスデータを無視し、 書き込みモードに切り変える。
3、書き込みモードは、スタイラスが持ち上げられるまで、スタイラスの位置に 関係なく、維持される。
第2の規則の代替案として、システムは、最初の接触点をポインタの動作として 受け入れることができ、または書i込みモード終了時の持ち上げ点を、ポインタ の動作として受け入れることができる。これによって、書き込みの開始が、入力 フィールドを「選択する」ために用いることもできるようになる。
第3の規則の代替案として、ユーザが(1つ以上の書き込みストロークの後)持 ち上げ、他の書き込み領域を含む書き込みフィールド外の点で下ろすまで、シス テムは書き込みモードに留まることができる(別の書き込みフィールドの場合、 システムは直ちに書き込みモードに再度切り変えることになろう)。
基本技術は、書き込みフィールドがどこに位置するかについてユーザに見える指 示を与え、更に、スタイラスが触れた場所を基に、書き込み及びポインティング モード間で直接切り替えができるようにする。
2.3 キーボード装置 疑似キーボード装置は、アイコン状キーボード上でスタイラスを用いて「タイプ 」することによって、ユーザにキーボードデータを人力させるものである。
詳細なキー配!に関する、疑似キーボード装置のそれらの態様は、システム設定 (例えば、文字セットの国別、QWERTYまたはドヴオランク(Dvorak )、機能キーの数)中に、変更することができる。
キーホードのその他の態様は、キーボードアイコン上の構成機能ボタンを用いる ことによって、いつでも変更することができる。キーボードは、個々に選択可能 で、かつ種々の方法で互いに対して物理的に配置可能な部分に構成されている。
キーボードの必要ではない部分を除去することによって、下層のアプリケーショ ン表示の可視性を最大化することができる。
2.3.1 タイプ入力 キーのコードは、ユーザが対応するキーの表示にスタイラスで触れた時に、送出 される。接触すると、キーの表示に影陰が付いてユーザにフィードバックする。
スタイラスが「キー」と約1/2秒以上接触し続けた場合、スタイラスがキー内 に留まっている限り、キーは1秒当り約5回の比率で自動的に繰り返すことにな る(キーボード機能をシミュレートすることを、タイプマチイック(typem atic)動作と呼ぶこともある)。アプリケージ3ンは、BrO3を呼び出す ことによって、繰り返しの遅れ及び比率を調整することができる。
別な手法は、キーボード装置を、「アイコンの放置」及び[アイコンへのドラッ グ]規則の例外とすることであり、接触時ではなく持ち上げ時にキーコードを送 出ことである。こうすれば、ユーザがスタイラスでキーに正確に触れる必要が減 少する。ユーザは、任意のキーに接触し、その周りをドラッグしくスタイラスが 現在どのキーに配置されているかを示す強調を付けて)、そしてそのキーからス タイラスを持ち上げる。しかしながら、この手法では、スタイラスを押し下げる ことを基にしたタイプマチイック動作が、用いられなくなる。
2、3.1.1 シフトキーの動作 従来のキーボード上では、シフト型キー(例えば、制御キー、シフトキー、アル ドシフト(alt−shift)キー)は、別のキーを押しつつシフト型キーを 押し下げることによって、用いられる。この動作は、1つのスタイラスでは不可 能である。
したがって、疑似キーボード装!では、シフト型キーは、従来のキーボード上の 対応物とは異なった動作を行なう。シフト型キーに接触すると、それが強調され て、押圧されたことが示され、そしてそのキーが押圧されたことを示すキーコー ドデータが送出される。この強調は、シフト型キーが「押圧」されている限り続 く。(これは、非シフトキーの扱いと異なるもので、このため、キーが触れられ る毎に「押下」及び「開放」コードが送出される。、)次の接触が非シフトキー に対するものの場合、ノット型キーは、スタイラスがそのキーから持ち上げられ るまで、「押圧」され続け、その時ソフト型キーの強調が除去され、シフト型キ ーが開放されたことを示すキーコードデータが送出される。次のキー接触が異な る種類のシフトキーに対するものであれば、最初のものがアクティブであり続け る。もしシフト型がアクティブ状態の時、スタイラスは通常のキー以外に接触し 、/フト型キーは非アクテイブ化される(強調を除去し、適切なキー開放データ を送出する)。このように、ソフトされた文字を送出する典型的な方法は、シフ トキーに触れ、そして送出すべき文字のキーに触れることである。ユーザが、ス タイラスを、送出すべき文字のキー上に、それが連続して送出されるよう長く保 持すると、その文字が繰り返えしてソフトされる。通常キーに触れている時に、 2つのシフトキーがアクティブ状態である場合、スタイラスが通常キーから持ち 上げられた時に両方が開放データを送出する。
また、大文字ロック、数字ロックのようなロックキーもある。このようなキーに 触れると、それが押圧されそして開放されたことを示すキーコードが送出される 。これらのキーの「ロツクコ動作は、多くのコンピュータキーボードを用いる場 合のように、疑似キーボード装!内ではなく、キーの解釈(interpret ation)内のものである。これらのキーは、再び触れられるまで強調された ままであり、これによってそれらのロック状態を示す。
2、3.2 機能ボタン 一構成 のためのサブアイコンを備えている。
また、「サイズ」サブアイコンを備えているものもある。池の装置アイコンと同 様、キーボードアイコンは、ドラッグサブアイコンを備えており、これによって ユーザはキーボードアイコンを表示装置上に配置することがてきる。キーボード を構成することができる。
2、3.2.1 キーボードの構成 構成ボタンに触れると、構成編集用サブアイコンが現れる。このアイコンは、記 憶空間、構築空間及び制御空間の3つの部分を有する。
4つのキーボード部分には65の可能な構成がある。ユーザは、キーボード部分 を移動し、可能な構成の1つを近似した構成内の部分を組み立てるようにするこ とによって、それらの構成の1つを効果的に選択する。
使用可能なキーボード部分を表すアイコンが、記憶空間に表示される。ユーザは 、所望部分を構築空間にドラッグし、そしてそれらを所望の相対構成内に配置す る。キーホードの一部を必要としないとき、それを構築空間から記憶空間にドラ ッグして戻す。
スタイラスを持ち上げると、構築領域にあり可能性な構成の1つを近似するよう に位置付けされたキーボード部分が、自動的に再配置され、その構成のキーボー ドを示す。残りのキーボード部分は、自動的に記憶領域内の元の位置に戻される 。
ユーザが再び構成ボタンに触れると、構成編集用サブアイコンが、構築空間内に 構成された全てのキーボード部分と共に除去される。こうして構成されたキーボ ード部分は、1つのキーボードとして結合され、1つのユニットとしてドラック することができる。
2.4 マウス装置 疑似マウス装置は、マウスデータをユーザがアプリケーションに送出できるよう にする。本例示的システムは、典型的にInternational Busi ness Machines CorporationのPS/2コンピュータ と共に用いられる2−ボタンマウスを模擬したものである。
疑似マウス装置は、次の部分を有する。
−ドラッグサブアイコン 一サイズ変更サブアイコン 一移動拡大棒小サブアイコン −3つのサブアイコン(左、右、及び両方)を含む「マウスボタン」領域−移動 領域サブアイコン 2.4.1 マウスの動き タブレットをマウスアイコンの移動領域内に接触させつつスタイラスを移動させ ると、マウス移動データが発生する。デジタル化タブレットは、絶対X、Y座標 データを与える。しかしながら、移動のみを用いてマウスデータを発生する。
スタイラスをタブレットに接触させて持ち上げても(タブレット表面上での移動 はせずに)、マウス移動データを発生しない。特に、マウス移動データは、(最 も最近)接触されたスタイラス、または最後のマウスデータが送出されてからの 、スタイラスが移動したX及びYの距M(rマウスティック」で測定した)であ る。
例えば、タブレット上のマウスの1インチの水平方向移動は、どこからその1イ ンチの移動が開始したかに係わらず、同数のマウスティックに変換される。更に 、1/4インチの移動を4回繰返すと(即ち、水平方向移動の4回の繰返し、持 ち上げ、そして 同一開始位置への戻り)は、1回の1インチの移動と同じ累積 水平方向マウス移動となる。
他の疑似マウスは、まったく移動領域を含まない。代りに、全タブレット領域( 他の機能によって使われない)がマウス移動領域として作用する。
更に他の疑似マウスを、特別なマウスドライバを許すアプリケーションと共に用 いることができる。この場合、マウスカーソルをスタイラスが差し示す位置まで 移動させるマウスデータを送出し、このようにして、タブレットによって与えら れる絶対位置情報を利用する。
2、4.2 機能ボタン 2421 移動のスケーリング 疑似マウス装置内の移動スケーリングボタンを用いることにより、ユーザは、所 与のスタイラスの移動量に対して発生されるマウスの移動量を調整することがで きる。移動スケーリングサブアイコンは、図10のマウス装置アイコンに示され るように、バーによって現スケーリング係数を示すっスケーリング係数を変える には、ユーザは、スケーリングバーのどこかに触れ、そしてスタイラスを右また は左にドラッグして、スケーリング区数の増加または減少させる。
2、4.2.2 マウスボタンの動作 疑似マウス上には、従来のマウス上にあるボタンをシミュレートしたボタンがあ る。しかしながら、疑似ボタンの動作が、複数の指よりはむしろ1つのポインテ ィング装置でアクティブ化されるよう、特別に改造する多(の方法がある。
マウスボタン領域は3つの部分に分れている。左側及び右側の部分は、左側及び 右側のマウスボタンをシミュレートするために用いられる。中央部分は、両方の ボタンを一緒に押圧するのを趣味レートするのに用いられる。この能力が設けら れるのは、物理的マウスのユーザが両方のマウスボタンを一緒に押圧できるのに 対し、疑似マウスのユーザは、ボタンを押圧するのに1つのスタイラスしか有し ていないからである。
ボタン領域の1つに触れると、対応する1つ又は複数のボタンが押圧されたこと を示すデータが、アプリケーションに送られる。スタイラスを約1/2秒以内で 持ち上げると、1つ又は複数のボタンが解除されたことを示すデータが送出され る。
多くのアプリケーションでは、ユーザはマウスを動かしながら、同時にマウスボ タンを押し下げていなければならない。疑似マウスのユーザがこのような同時動 作を行なえるようにするために、ボタン領域の各々は、ボタンをアクティブ化す る時に、スタイラスを172秒より長く押し下げていると、ボタンが「押された まま」ロックしく即ち、スタイラスが持ち上げられた後も、押圧された位置をシ ミュレートし続ける)、ユーザが続いてロックされたボタン領域に触れると、そ のロックが解除されて、「上がった」状態の疑似ボタンを表す信号を返す(即ち 、ボタンが戻ったことを示すデータを送出する)。
疑似ボタンが「下がって」いる時はいつでも、疑似マウス装置アイコン」二の対 応する領域は強調(ハイライト付け)されている。BOTH領域にそれが触れる と、それにしたがって、BOTH領域が強調されるのではなく、LEFT及びR IGHTボタン領域の強調が調整される。スタイラスがBOTH領域内で十分長 く押し下げられると、LEFT及びRIGHTボタンはロックされる。これらは 別個に、或いはBOTH領域に再び触れることによって、解除される。
2、.4.2.3 移動及びサイズ変更ドラッグ及びサイズ変更サブアイコンは 、一般的なアイコンについて上述したように動作する。
疑似マウス装置アイコンのサイズを変更しても、タブレットデータをマウス移動 データに変更するのに用いられるスケーリング係数を変化させることはない。
上述のように、このスケーリング係数は、ユーザによって別個に調整可能なもの である。ユーザは、疑似マウス装置を、移動の必要性に合せて改造することがで きる。例えば、ユーザはアイコンを非常に小さクシ(下層のアプリケーションを 殆ど覆わないように)、そしてスゲ−リング係数を太き(し、小さな移動領域で も、スクリーン上のどこでも容易にカーソルを移動させるようにてきる。反対に 、細かい制御が重要な時は、スケーリング係数を小さくし、大きなスタイラスの 移動が小さなマウス動作量となるようにすることもできる。
代替実施例では、疑似マウス装置は、そのサイズが変更された時、スケーリング 係数が自動的に調整され、移動領域を横切るストロークが、マウス装置アイコン の大きさに係わらず、マウスの移動量が同一となるように、構成することも可能 である。
2.5 Info(インフォ)装置 インフォ装置は、表示装置の側部に沿ったインフォボタンに触れることによって 、アクティブ化される。こうすると、インフォ装!アイコンが表示装置上に結果 として表われる。インフォボタンは、「交互動作」ボタンである。2度めにこれ に触れると、再びインフォアイコンはなくなる。
インフォ装置は、次の6つのサブアイコンを含み、そのうち5つはアクティブで ある。
一情報テキストの表示用テキスト領域 −前のスクリーン 一次のスクリーン 一ホームスクリーン 既に実行されたサブアイコンに触れると、インフすアイコンは、表示装置から除 去され、インフすボタンから強調が除去される。
インフォアイコンは、池のアイコンに対するのと同じように、ドラッグサブアイ コンを用いることによって、表示装置上を移動させることができる。
インフォ装置がアクティブ化されると、そのインフす装置をどのように使用する かを説明するテキストが、テキスト領域に表示される。テキストのある部分が強 調されて、ヘルプテキスト内の別の場所へのポインタと関連付けられていること を示す。スタイラスを用いてこれら強調された部分の1つを選択すると、関連す るポインタによって識別されたテキストにジャンプする。テキスト内の一連のジ ャンプは記録されて、ユーザが「バックアップ」できるようになっている。
次のスクリーンボタン及び前のスクリーンボタンは、ユーザが、現テキスト本体 内で移動できるようにし、そして先に表示されたテキストを通じてバックアップ できるようにするものであるっホームスクリーンボタンは、ユーザに、直接最初 のスクリーンに戻すことができるようにする。
テキスト用のディスクファイルは、主プロセツサへのデータリンクを用いて、イ ンターフェースプロセッサによってアクセスされる。
2.6flhの疑似装置 上述の例から、当業者は、疑似装置の統一性を理解することができるであろう。
上述と同様に、例えば、疑似トラックボール、疑似三次元ポインタ、または疑似 ジョイスティックのような、他の疑似装置、を実現することもできる。
疑似タブレット装置には、他にも利点がある。本発明を、表示スクリーン上に被 せるタブレットと共に用いると、タブレットデータとスクリーンデータとの1つ の特定の対応性によって、スクリーン位!においてスタイラスの配置位置(即ち 1組のX及びYスケーリング係数とX及びYオフセット)を追跡する結果となる 。この対応性は、一般的に、どの特定のアプリケーションによっても用いられて いないものであり、その場合、スタイラス位置とスクリーン位置とが、互いに追 跡できず、タブレットが表示スクリーン上に被せられていない時には表われない 混乱をユーザに与えることになる。このように、ポインティングが実際のタブレ ットによって発生される時でも、物理的タブレットを直接用いるよりは、疑似タ ブレット座標を用いたアプリケーンコンを実行することにより、利点が得られる ことがある。
このような疑似タブレット装置は、相対的な移動の代りにテーブル領域内の絶対 位置が送出されることを除いて、疑似マウス族!と同様である。疑似マウスとタ ブレット装置との間の他の相違は、タブレットについては、スケーリングに加え て、X及びYオフセットの調整(即ち、完全なタブレットのどの部分をタブレッ ト領域がシミュレートしているのかを判断する)を備えるのが有用であるこタブ レットデータをアプリケ−/コンに直接使用可能にするための設備がある(疑似 タブレット装置からではなく、実際のタブレットから)。スクリーン領域にはあ るが疑似装!にはないタブレットデータは、主プロセンサで実行さるアプリケー ションに、上述のデータリンクプロトコルを介して送ることができる。
アプリケーションへ送られるタブレットデータは、アプリケーンコンが容易にタ ブレット座標をスクリーン位置に関係付けられるように、調整される。ボタン領 域内のタブレット点は、データが当該アプリケーションに送られる前に検出され る。したがって、機能ボタンはアクティブ状態にし続けることができる。
2.8 アプリケーションによってコールされるユーザインタフェースユーザイ ンターフェースサブシステムは、アプリケーションには見えないように設計され ているが、ユーザインターフェースサブシステムについて分るようにアプリケー ンコンを設計すると、いくつかの付加的な甲、恵を得ることができる。
アプリケーンコンが、ユーザインターフェースサブシステムによって設けられる ユーザサービスをコールするように、準備することができる。主プロセツサ内で 実行されるアプリケーンコンは、特定のコールを行なうことができ、これによっ て王プロセンサが、あるコードをインターフェースプロセッサに渡して、実行さ れるサービスを識別する。例えば、あるアプリケーンコンにとっては、適切な時 刻にある疑似装置を強制的に表示させたり消したりすることができることが望ま しいことがある。
更に、主プロセツサが疑似装置の現状態を判断することができ、かつ主プロセ。
すが疑似装!の状態を設定することができるデータリンクプロトコルによって、 主プロセツサ用のプログラムは、ユーザが特に有用であると看做す疑似装置の構 成をセーブし、そして復元することができる。この状態情報は、コントラストの 設定、各装置アイコンの位置及びサイズ、各装置アイコンのオン/オフ状態、及 び種々のアイコンの状態値(例えば、数字−ロック、マウス拡大縮小値、手書き アイコンボックスサイズ、キーボード構成))を含んでいる。
ユーザインターフェースの状態をセーブする能力により、ユーザは、システムが 起動された時に、ユーザの好みに応じて特定の装置のサイズを変更して表示装置 上に配置することが可能となる。これはまた、ユーザが頻繁に使われる構成を素 速く設定できるようにするものである。
2.9 インターフェースプロセッサと主プロセツサのアプリケーションの相互 作用例 Freestyleがタブレットデータを用いる唯一のアプリケーションである システムでは、Freestyleは、ユーザがタブレットをスタイラスで触れ ることによって、呼び出すことができる。しかしながら、上述のように、疑似装 置インターフェースと共に用いられる時、Freestyleアプリケーション は、タブレット上の特定のボタン領域に触れることによって、起動することがで きる。これは、次の機構によって達成することができる。システムが最初にブー トされる時、Freestyleの常駐(レノプント)部分が主プロセンサにロ ードされる。この時、Freestyleは、BIOSコールによって、インタ ーフェースプロセッサからタブレットデータを受け取ることを所望するものとし て、主プロセンサのBiO2を用いてそれ自体を登録する。更に、Freest yleは、疑似装置インターフェースと通信して(インターフェースプロセッサ へのデータリンクを利用するBIOSコールによって) 、Frees tyl eアイコンに触れた後にタブレットデータを送出すべきことを示す。このように して、Freestyleボタンが触れられたことを疑似装置が判断した時、タ ブレ、・トデータを送出し、これによってFreestyleの常駐部分にFr ees t y I eを呼び出させる。、、疑似装置インターフェースも、両 方のシフトキーの同時押圧をエミュレートして(Freestyleを呼び出す ために共通に用いられるキーの組合せ)、適切なキーコードを主プロセツサに送 ることによって、Freestyleを呼び出すことができる。Freesty leの処理が完了した時、疑似装置インターフェースと通信して、ボタンが再び 触れられるまで、これ以上タブレットデータをFreestyleに送るべきて はないことを指示する。、 2.10 疑似装置の実現 図11は、タブレット12b、表示装ff112a、及びあるソフトウェア構成 物の間の関係を示す。
ユーザは、タブレット12b及び表示装置12aのスクリーン(これらは好適実 施例では図1の12に示されるように、上に被せられている)を用いることによ って、王プロセッサ30(図2)で実行中のアプリケーンコンプログラム200 と相互作用する。ブロック200は「アプリケーションプログラム」として示さ れているが、これは、ユーザがタブレット及び表示装!によって相互作用するこ とを望むいかなるプログラム(システムプログラムを含む)をも現わすものであ る。
上述の疑似装置は、インターフェースプロセッサにて実行され、図11において 「疑似装置プログラム」として示されているソフトウェア本体220によって、 実行される。疑似装置プログラムは、構成物222.224.226及び228 を備えており、これらは種々の疑似装置と対応するものである。このソフトウェ ア本体220は、表示装ff112aを用いて、インク及びマスク面42及び4 4(図2)にデータを書くことによって、ユーザに視覚的フィードバックを与え るっタブレット12bからのデータは、疑似装置プログラム220によって処理 され、それに応答して、キーストロークまたはマウスデータの形状のデータを発 生する。このデータは、主プロセツサのBIO3212によって提供されるサー ビス及びインターフェースプロセッサのファームウェア214によって提供され るサービスを含む通信サービス210によって、アプリケーンコンプログラム2 00に供給される。図11には示されていないが、タブレットとの低レベルの相 互作用は、インターフェースプロセッサのファームウェア内のルーチンによって 取扱われる。しかしながら、主要なタブレット制御は、疑似装置プログラムによ って行なわれる。
次のアウトラインは、疑似装置の例示的実施例におけるC機能間の関係を示すも のである。アウトラインの1つのレベルに掲載されている機能は、そのアウトラ インの次の外側レベルにおいてそれらに先立つ機能を実施するために、用いられ る。フロー制御情報のいくつかは概要に含まれている。当業者は、ここに記載す るようなシステムのソフトウェア構成物を実施する場合に関連のある、更なる詳 細が明らかであり、それに対処できるであろう。アウトラインに記載されたソフ トウェアの組織は、例示であり、当業者には、特定のシステムの特性及びソフト ウェア開発者間の形式の相違が与えられれば、多くの変更が可能であることが明 らかであろうっ 「ペン」という用語は、以下のアウトラインの場合のように、「スタイラス」と 相互交換可能によく用いられている。
各項目の前の数字は、その項目のアウトラインレベルを示す。
l user 1nterface() これは、疑似装置ユーザインターフェ ースである。次のことを永遠に行なう。
・タブレットからの次の点を待つ。
・それがペンを下ろした点でなければ、何もしない。
・機能ボタン内であれば、機能ボタン処理を行ない、次にペンが上げられるのを 待つ。
・疑似装置アイコン内であれば、そのアイコン機能を行なう(例えば、5tar t mouse 1con)つアイコンは上から下にチェックされ、ポイントが アイコンの境界内にあるかを見る。
・下ろされているがアイコン内ではない場合、ペンが上げられるまで待つ(アイ コンへの動きを避けるため)。
・上げられているか、或いは下げられているが疑似装置アイコン内ではない場合 、任意にその点を主プロセツサに送る。
2 ttrpointOは、タブレットからのある点を得る。タブレット位置は 2つの形式で返送される。1つは、画素で、もう1つはタブレットの解像度で( このほうが高い)ある。タブレットデータの時間も返送される。手書き認識のよ うな処理には、解像度が高ければ高いほど相応しいが、画素座標は、多くのスク リーンに関連した処理に都合がよい。タブレットからの点を待つのではなく、こ の機能は、データが得られないという指示を返す。
2 check button boxesOは、機能ボタンを実行する(例え ば、装置トレイを引き出す)。
・カーソルが機能ストリップ(strip)内にあるか調べる。なければリター ンする。
・「装!」ボタン領域内であれば、次に5elect device Oを実行 する。
・「コントラスト」ボタンであれば、スクリーンコントラストを調整する。
・ 「フリースタイル」ボタンであれば、フリースタイルアプリケーションを開 始する。
・「インクす」ボタンであれば、そしてインフオアイコンがまだアクティブでな ければ、それをアクティブ化させ、そうでなければ、それを非アクテイブ化させ る(即ち、スクリーンから消去し、アイコンスタックから除去する)。
3 if in +device tray botton−45elect  devicesOは、「装!」ボタンのための処理である。これは2つの状態間 で交互に切換わる。即ち最初にこのボタンに触れると装置トレイがアクティブ化 し、2回目にこのボタンに触れると装置トレイが不活性化する。
5 w?+en changing frolIlstaa+ps toico ns (装置トレイを取り去る)。
65elect doneOこれは、ユーザがトレイからの装置の選択を完了し た時に行なわれる。これは、表示装置から装置トレイを除去する。
7 erase 1conO表示装置から全てのスタンプといかなるアイコンを もクリアする。
7 erase device trayOスタンプ用視覚コンテナを除去する 。
7 remove 1conO装置ボックス内に配置されているアイコンスタッ クからいかなるスタンプも除去する。
7 swap 1cons and stampsOスタック上に残っているス タンプが、アイコン(アイコンスタック上の)と交換される。
7 draw 1consOアイコンスタック上に(即ち、アクティブなもの) 全てのアイコン及びスタンプを描く。実行には、論理的に移動されたアイコンの 下にある全てのアイコンではなく、実際に重なり合っているアイコンのみを再度 描けばよい。
5 when changing froIIlicon tostamps  (装置トレイを引き出す)。
6 erase 1consOフルサイズのアイコンを避ける。
65vap 1cons and stampsOは、アイコンの代りにスタン プを有するように、アイコンスタックを調整する。
6 draw device trayO使用可能な装置のためのトレイを描く (スタンプ形状で)。
6 display current stampsOスタンプ(MOUSES TAMP、 KBDSTAMP、HANDWSTAMP)を描(。
7 compute stamp positionQ スタンプ位置は、イン アクティブなアイコン用装置トレイ内であり、アイコンがアクティブであったら 、そのアイコン位置である。
35uck touch pointOペンがタブレットと接触している場合、 ペンがもちあげられるまでタブレットデータを破棄する(任意に点を主プロセツ サに送る)。
3 if in″contrast″button スタイラスがコントラスト ボタンのどの部分に触れているかに応じて、LCD表示装置のコントラストを、 高くまたは低く調整する。
3 if in″Freestyle″button 主プロセツサ内で、Fr eestyleアブリケーンヨンを立ち上げる。
3 if in +1nfo” button4 if 1nfo not a ctive それを開始する。
5 add 1con0 5 draw 1nfo 1con0 4 if 1nfo already active それを取り去る。
5 IIove 1con to topO5erase 1nfo 1con 0 5 remove 1con0 2 is in handy 1con03 point in rectan gle()25tart handy 1conO手書きアイコンを実行する。
3 move 1con to topOアイコンを既に最上部に描いたかにつ いての指示を戻す。これらの処理は、フルサイズのアイコンの代りにサイズまた は位置を変えたンヤドウを表示するので、これを用いて、あるドラッグまたはサ イズ変更処理(または、キーボードの場合には、サイズ変更処理よりはむしろ、 再構成処理)のための再描画を回避する。
3 i5 in vritehandw03 write handy() 文 字を手書きし、認識する。手書き領域内のストロークの最初の点でコールされる 。
4 capture one 5trokeOスタイラスが持ち上げられるまで 、タブレット上の点を読み取る。これら全ての点をバッファストロークに加える 。
4co■pute 5troke boxOストロークバッファ内で最も最近加 えられたストロークに対する「ボックス」を判定する。
4 flush handy 5trokesO新しいストロークが実際には書 き込み領域内に属していないと、判断された場合(例えば、書き手が書き込み領 域に押し付けたが書き込み領域から外に移動させた場合)、バッファ内のいずれ かの以前のストロークについて認識を行ない、この新しいストロークは放棄し、 そしてリターンする。
4 compute−stroke box extentsO新しいストロー クが非常に広い場合(例えば、3文字ボックスの広さ以上)、それを消去マーク として考える。そのインクを消去する。それが包含するアスキー文字を、空白に 変換する。そのストロークを放棄する。そしてリターンする。
4 duIIlp previous 5trokesOこのストロークが、ス トロークバッファ内の以前のストロークとは異なる「ボックス」内にある場合、 それら以前のストロークについて認識を行ない、それらを放棄し、この新しいス トロークを、唯一のバッファされたストロークとする。ストロークの区分は実際 のボックスに頼る必要がないことに注意する。「ボックスなし」区分方法が使用 できる。
4 check timeout□ 次の状態の1つが起こるまで待つ。
・ユーザがタイムアウト期間の間押し下げながった。
・ユーザが再び押し下げたが、書き込み領域内ではない。
先の2つの場合、全てのバッファ記憶されているストロークについて識別を行な い、それらを排除し、そしてリターンする。
・ユーザが書き込み領域内で押し下げた。この場合、単にリターンする(より高 いレベルのループを通る次の繰り返しで、再びwrite handy□をコー ルする)。
3 is in draghandwQ3 drag handy() 4 drag 1conOペンが持ち上げられるまで、アイコンをドラッグする 。
5 draw handy 1con03 is in sizehandw( ) ペンはサイズ領域にあるか?3 resize handvo 4 resize 1con0 5 draw hand 1con()3 is in inserthand wOペンは挿入領域にあるか?31nsert handy() 一連の手書き 文字に空白(ブランク)を挿入する。
4 flush handvO未解決のバッファ記憶されているストロークのい ずれかについて認識を行ない、それらを放棄する。
4 set the cursor to a +tool modal−cu rsor ユーザに、挿入モードがアクティブ状態であることを示すためのもの である。
45uck touch pointsQ ユーザがスタイラスを持ち上げるの を待つ。
45uck prox pointsO−y−−ザが再び押し下げるのを待つ。
4 is in vritehandwOユーザの接触が書き込み領域の外側の 場合、カーソルを後退させて、リターンする。
4 while the 5tylus is touching5 if t he user IIIoves right from the 1niti al position 文字/ボックスを、スタイラス点から、書き込み領域 の右端まで右方向に動かし、空いた空間(オープンスペース)を空白で埋める。
5 if the user moves 1eft from the 1n itial position 文字/ボックスを、スタイラス点から、書き込 み領域の左端まで左方向に動かし、空いた空間を空白で埋める。
4 after the user 1ifts the 5tylus 戻る (ユーザは、書き込むべき開放空間を作成した)。
3 is in deletehandvOペンが削除領域にあるか93 de l、ete handvO手書き文字から削除する。
4 flush handy() 未処理のバッファ記憶されているストローク のいずれかについて認識を行ない、それらを放棄する。
4 set the cursor to a″tool modal” cu rsor ユーザに、削除モードがアクティブ状態であることを示すためのもの であるユ45uck touch pointsOユーザがスタイラスを持ち上 げるのを待つ。
45uck prox pointsOユーザが再び押し下げるのを待ツッ4  is in writehandwOユーザの接触が書き込み領域の外側の場合 、カーソルを後退させて、リターンするっ 4 while the 5tylus is touching ユーザがス タイラスを動かした全テノボ。
クス/文字を強調する。
4 after user 1ifts the 5tylus ユーザが強調 した全てのポ、7クス/文字を除去する。必要に応じて、文字/ボックスを書き 込み領域の右端からスクロースして、削除されたボックスを置き換える。
3 is in 5crolLleftOペンはスクロール領域内にあるか。
3 is in scrollrightOペンはスクロール領域内にあるか。
35croll handwO手書き領域内の文字をスクロールする。
4 erase handy 1nkOインクを消去し、バッファ記憶されてい るストローク点を除去する。
4 display handy promptOスクロールプロンプトを表示 する。
41nitialize repeatO4erase writing ar ea04 draw writing area04 clear handy  promptO4wait for repeatO自動繰り返しの前に、適 切な時間待つ。
4 is proxOペンがもち上がっている場合、我々は全てを終えた。
4 Use higher 5peed repeat どれくらい頻繁に繰り 返したかを追跡する。4回の試みの後、スクロール動作をより速く繰り返す。
51nitialize repeatO3is in adjusthand wOペンは調整領域にあるか?3 adjust handwO文字が書き込ま れるボックスの幅を調整する。
4 erase handy 1nkOインクを消去し、バッファ記憶されたス トローク点を除去る。
4 EIighLight BoxO調整ボックスを強調する。
4 display handy promptOプロンプトを掲げる。
40utline RectangleO最も右側のボックスを基準マーカとし て強調する。
4 Read points as long at the pen is  down:55kip to cursor+t tablet data□  タブレットに追いつく。
5 ttrpolnto 5 is proxOペンが上がっているなら、我々は全てを終えた。
5 colIlpute new box width x ペンの移動は、表 示されたボックスの全幅における変化である。1つのボックスの幅は、全/ボッ クス カウントである。
最少サイズよりFlまたは最大より上には進んではいけなし・。
50utline Rectangle() 強調されていない最も右側のホッ クス。
5 erase writing area()5 colIlpute ha ndy 1ocationQ5 draw writing boxesQ ボ ックスを再び描く。
50utline RectangleO新しい最も右側のボックスを強調する 。
4 clear handy prompt()4 Highlight Bo xO 40utline RectangleO4erase handy 1con 04 draw handw 1con03 is i、n 5endhand vOペンは送出領域ニアルカ?35end handwo 4 display handy promptO4erase handw  1nkOインクを消去し、バッファされたストローク点を削除する。
45end all characters・ 先頭及び後尾の空ボックスの間 の文字のみを送出する。線が空であったなら、キャリソノリターンを送出する。
5 ascii to 5canO ,55end keycode0 6 display physical keyboard。
65end keycode data6 enable physical  keyboard。
4 Redisplay・ スクロールウィンドウのオフセットをリセットし、 0番目のボッ クスが最初のボックスとして表示されるようにする。
5 draw writing area()3 is in upperha ndw□ ペンは大文字領域にあるか?3 upper handy() 認識 器が選択する(大文字アルファベ ットの)文字集合を判定する。
4 set recognition 5ubset03 is in lov erhandw□ ペンは小文字領域にあるか?3 lower handy□  認識器が選択する(小文字アルファベ ットの)文字集合を判定する。
4 set recognition 5ubset03 is in num erhandw□ ペンは、数字キー領域にあるか?3 numer hand vO認識器が選択する(数字及び句読点) 文字集合を判定する。
4 set recognition 5ubset035uck touch  pointsOペンが持ち上げられるまでこれ以上何もしない。
2 is in mouse 1con03 point in rectan gle025tart mouse 1con() マウスアイコンを実行する 。
・ドラッグまたはサイズ領域でなければ、最上部に再描画する。
・領域に応じた機能を実行する(例えばドラッグ、サイズ、ボタン、移動)。・ ペンが上げられるまで待つ。
3 move 1con to topOアイコンをスタックの最上部に移動さ せることに加えて(しかしアイコンの再描画は行なわない)、アイコンを既に最 上部に描いたかについての指示を返送する。これらの処理は、フルサイズのアイ コンの代りにサイズまたは位置を変えたシャドウを表示するので、これを用いて 、あるドラッグまたはサイズ変更処理(または、キーボードの場合には、サイズ 変更処理よりはむしろ、再構成処理)のための再描画を回避する。
3 is in dragmouse03 drag mouseo 4 drag 1conOペンが持ち上げられるまでアイコンをドラッグする。
5 draw mouse 1con03 is in sizemouse0 3 resize a+ouse0 4 resize 1con0 5 draw mouse 1con03 is in 5calebar0 35cale mouseOX方向のペンの移動が、タブレット対マウススケー ル係数を変化させる。スケール長は、X方向のペンの移動量だけ変化する(そし て、最小及び最大限度間に限定される)。ティック当りの画素は、ティック当り の最大画素として計算される(最大長−現在の長さ)/最大長(そしてこれも、 最小及び最大の範囲内に限定される)。
4 display mouse scaling proa+pt4 do  for all pen down points:55kip to cur rent tablet data()5 ttrpointo 5 is proxOペンが持ちとげられた時にこのループから出る。
s coa+pute new values スケール長及びティック当りの 画素が、各々X移動を基に計算される。
5 complement 5cale barO現在の倍率バーを消去する。
5 coIIlpute ll1ouse 1ocation□ ティック当り の画素からスケール長を逆算することを含み、マウス位置パラメータを更新する 。
5 complement 5cale barO新しいスケールバーを描く。
スケールバーは、右に向かって成長する(即ち、それに割り当てられた空間内で は、左に揃えられる)。
4 clear mouse prompt03 is in 1eftbut ton()3 is in rightbutton03 is in bot hbutton03 button mouseo 3つのボタン領域のいずれ かへのペンの接触を処理する。
・ONであるボタン上での動作で、そのボタンをOFFにして、リターンする。
・OFFであるボタン上での動作で、そのボタンをONにし、またcall t imed button clickOをコールすることによって、クリックを チェックする。
ペンが十分長く下ろされてそれがクリックではないと判断されるまで、それは阻 止する。
・ペン動作と、対比されるボタン動作との違いに注意されたい。
−短いボタンの押圧はクリックである。長いボタンの押圧は長いボタンの押圧で あり、これはボタンが解除される時に終る。
−短いペンの接触はクリックである。長いペンの接触は、疑似ボタンを押し下げ たままロックする。いかなる長さのものでも、後続の接触で疑似ボタンが解除さ れる。
4 complement 1eftbutton04 complement  rightbutton04 timed button clickOボタ ンがオンでなければ、ペンの持ち上げまでの時間が、クリックの要求と考えられ る程短いかを、見るために待つ。
3 is in mouse mouseO3mouse mouse() マ ウスアイコンのマウス動作部分を処理する。距離がタブレット点にて(マウスの ティックより正確である)計算される(毎回)。
・マウスプロンプトを表示する。
・随意に、マウスアイコンのコピーをセーブする。
・送られた古いX及びYティックを0に設定する。
・ペンが上げられるまで実行する。
−古いタブレットデータをとばし、次の点を得る。
−元の接触からマウスティックにおける現在の位!まてを測定する。
−押し下げ以来、または最後の移動が送出されて以来(古いX及びYを減算する )の、移動したティックを計算するっ一マウスの移動データを、マウスからであ るかのように、送出する。
−8いX及びYを現在の位置に設定する。
4 display mouse movement prompt4 Bit Bit Pix to MemOマウスアイコンのコピーをセーブする。この機 能は、ハードウェアのインク面を用いない実施においてのみ、必要なもので、こ の場合、この機能は性能の向上をもたらす。
4 do for all pen down points:55kip t o current tablet data05 ttrpointo 5 is prox() ペンが持ち上げられた時このループから出る。
5pen−to−mouse−tick algorithm タブレット距離 からマウスティックに変換する。1つのスタイラス位置から開始しそしてそこに 戻る経路を保証することは、ゼロの全マウス動作に加えることであり、絶対(タ ブレット)から相対(マウス)動作に変換する前に、タブレットの座標を調整す る。
55end mouse data 主プロセツサへ。
4 clear mouse prompt035uck touch poi nts()2 is in kbd 1con0 3 point in rectangle025tart kbd 1con Oキーボードアイコンを実行する。
3 move 1con to topOアイコンが既に最上部に描かれている かについての識別を返送する。これを用いて、ドラッグまたはサイズ再変更処理 (または、キーボードの場合は、サイズ再変更処理ではなく、再構成処理)のた めの再描画を回避する。なぜなら、これらの処理は、全アイコンの変わりに、サ イズまたは位置を変えたシャドウを表示するからである。
3 erase kbd 1con0 3 draw kbd 1con0 3 is in drag 5ection03 drg kbdo 3 is in config 5ection()3 config kbd  1conOキーボードを構成する。
45ave keyboard 1con 1ocation ユーザが構成を 変更することができ、そして変更後キーボードの再配置の必要をなくすためのも のである。
45ave oldxysO個々のキーボード部分の位置をセーブする。
4 remove 1con0 41nit kfig editor04 configure kbd() 4 restore keyboard X & Y 1ocation va lues4 kbd config doneOキーボード輪郭のサイズを再変 更する。
3 is in vpfsection()3 is in hpfsecti on03 is in kbdsection() 点が、キーボードアイコン の主キーボード部内にあるか否かを判断する。
4 point in rectangle03 is in aksecti on03 is in numsection03 is in edtsec tion03 find keyOキーボードアイコンの関連する部分における ペン位置を基に、キーコードを判定する。ある点が与えられると、キ一番号を返 す。
・キーボードのどの主要部分に、点が位置しているか(例えば、機能キー、アル ファベットキー、数字キーバッド、カーソル制御)。
・識別されたキーボード部分内で、バイナリ検索を用いて、その点がどの行に位 置するかを判定する。
・識別された行内で、バイナリ検索を用いて、当該特定のキーを識別する。
次に、キ一番号を、キーコード及びキー輪郭を備えたテーブルへのインデックス として用いる。
3 type keyo 4 Fill RectangleOそれがヒツトしたことを示すXORキー4 5w1tch to 5canOキースイッチ番号を得て、それをスキャンコー ド集合#2からのメイク/ブレークコード対に変換する。
55can2to 5can10 6 convert 2210 4 for 1ndividual 5hift keys 関連するシフト状 態にしたがってメイクコードまたはブレークコードを送出する。
55end a codeo 4 typematicOタイプマチイック動作の加速を実施して、非シフトキ ーコードを処理する。
55end a code() 4 Fill RectangleOキーがロック用キーでないなら、キーの表 示を再び反対にする。
35uck touch points()2 is in 1nfo 1co n()3 point in rectangLeO25tart 1nfo  1conOインフォアイコンを実行するっ3 Redrav 1con (ドラ ッグ及びサイズ再変更を除()。
4 move 1con to top04 erase 1nfo 1con 04 draw 1nfor 1con03 is in draginfoO それはドラッグ領域内か93 drag 1nf0 3 is in 5izeinfoOそれはサイズ領域内か?3 resize  1nfo0 3 is in previous 1nfoOそれは以前のヘルプ領域内力\ ?3 previous 1nfoOファイルスタ・ツクにて、ルベルイルを持 ち上げる。
4 draw info textO 3 is in scroll upO それはスクロールダウン領域力)?3  scroll up infoO インフオテキストを1ラインスクロールす る。
4 wait for repeatO 時間調整した自動繰り返しを実施する 。
3 is in scroll down O それはスクロールダウン領域か ?3 scroll down infoO インフオテキストを1ライン下唇 ニスクロールスル。
4 wait for repeatO 時間調整した自動繰り返しを実施する 。
3 is in ho+*e infoO それはホームインフオ領域か?3  home infoO インフオファイルスタ・ツクの基番二行く。
4 draw info textO そのインフオファイルを表示する。
3 is in info infoO それはインフオメニュー領域内力λ。
3 info infoO 基準インフオテキストへリンクする。ペン力(現在 の基準項目内に位置していなければ、何もしない。
4 for each current reference item:5  point in rectangLeO ペンは基準項目内番二あるか?4  If reference is to the home file 全てを スタック力)ら開放する。
3 suck touch point02 is in mouse sta mp()3 point in rectangLeO2 is in kbd  staIIlp03 point in rectangLeO2 is i n handy stamp()3 point in rectangLeO 2 dev drag partO スタンプをドラ・ソゲする。
l suck touch pointsOこれまで、本発明の具体的な実施例 を記載してきた。当業者には、更に池の変容も明白であろう。例えば、詳細に記 載した特定の実施例は、タブレットをかぶせた表示装置と、「電子インク」の機 能を有する携帯可能コンピュータである。
しかしながら、表示装置上にタブレット(または池の指示装置)を用いず、タブ レット以外のある種のロケータ装置が用いられているシステム、及び撓帯可能で あることを意図していないシステムにも、本発明は有用であることを、当業者は 認めよう。このように、本発明は、本明細書に示され記載された具体的な詳細及 び例示的例には限定されないものである。むしろ、本発明の真の精神及び範囲内 の範−に入るそのような変容及び変更全てを包含することが、添付の請求の範囲 の目的である。
1−− +−+ FIG、5a FIG、5b VF?AMO RAM2 FIG、8a VRAMI VRAM3 国際調査報告 フロントページの続き (72)発明者 マクナリー、ジェイ・マイケルアメリカ合衆国ニューハンプシ ャー州 03038、プリー、ナツト・メドウ・レーン(72)発明者 パレット、デー ヴイッド・エムアメリカ合衆国マサチューセッツ州01879゜ティングズボロ ー、ベヴアリー・ロード(72)発明者 ウォード、ジーン・レナードアメリカ 合衆国マサチューセッツ州02174゜アーリントン、クーリッジ・ロード 5 9

Claims (6)

    【特許請求の範囲】
  1. 1.コンピュータシステムにおいて、 (A)既存のプログラムを実行するための王プロセッサと、(B)表示スクリー ンと、 (C)前記既存のプログラムによって発生された主表示画像に関する表示データ を受信するための主表示バッファと、 (D)スタイラスを含み、コンピュータシステムのユーザが該スタイラスを前記 表示スクリーンの表面上で移動するときに、ポインティングデータを発生するた めのポインタ型入力装置と、 (E)オーバーレイ表示画像に関するデータを受信するためのオーバーレイ表示 バッファと、 (F)前記主表示バッファと前記オーバーレイ表示バッファとからデータを受信 し、前記表示スクリーンが前記主表示画像と前記オーバーレイ表示画像とを組み 合わせた表示を発生するよう、前記表示スクリーンに対してデータを供給するた めの表示マルチプレクサと、 (G)インターフェースプロセッサであって、該プロセッサは(1)キーストロ ークデータを前記主プロセッサに供給するように接続され、(2)前記ポインタ 型入力装置からデータを受信するように接続され、(3)表示データを前記オー バーレイ表示バッファに供給するように接続されており、 コンピュータシステムのユーザが前記ポインタ型入力装置を用いて制御する少な くとも1つの疑似装置であって、前記オーバーレイ表示バッファを用いてユーザ に表示される疑似装置を実現するためのインターフェースプロセッサとを備えて おり、キーボードを用いて動作されるよう設定されてはいるが前記ポインタ型装 置を用いて使用するよう設定されていないプログラムであるにもかかわらず、該 プログラムを前記ポインタ型装置を用いて動作可能にしたことを特徴とするコン ピュータシステム。
  2. 2.請求項1記載のコンピュータシステムにおいて、前記少なくとも1つの疑似 装置は、該疑似装置の1つの領域中の手書き文字の認識を行うよう構成されてい るコンピュータシステム。
  3. 3.物理的キーボードの代わりにタブレット入力により、既存のキーボード基準 プログラムを実行させることができるコンピュータシステムにおいて、(A)前 記既存のプログラムを実行するための主プロセッサと、(B)デジタル化タブレ ット及びスタイラスと、(C)表示スクリーンと、 (D)前記主プロセッサで実行する前記プログラムから表示データを受信するよ うに接続された第1の表示バッファと、(E)インターフェースプロセッサであ って、該インターフェースプロセッサが標準のキーボード制御器を(前記主プロ セッサに関して)エミュレートすることができるようにするための手段を含んで いるインターフェースプロセッサと、(F)前記インターフェースプロセッサか ら表示データを受信するように接続された第2の表示バッファと、 (G)前記表示スクリーンに、前記第1及び第2の表示バッファの両方からのデ ータの組み合わせであるデータを提供するための表示マルチプレクサとを備えて おり、前記インターフェースプロセッサは、デジタル化タブレットによるユーザ からの入力を用いて複数のユーザ入力装置をシミュレートし、かつ前記第2の表 示バッファを用いてユーザにフィードバックするコンピュータシステム。
  4. 4.物理的マウスの代わりにタブレット入力により、既存のマウス基準プログラ ムを実行することができるコンピュータシステムにおいて、(A)前記既存のプ ログラムを実行するための主プロセッサと、(B)デジタル化タブレット及びス タイラスと、(C)表示スクリーンと、 (D)前記主プロセッサで実行される前記プログラムから表示データを受信する ように接続された第1の表示バッファと、(E)インターフェースプロセッサで あって、該インターフェースプロセッサが標準のキーボード制御器を(前記主プ ロセッサに関して)エミュレートすることができるようにするための手段を含ん でいるインターフェースプロセッサと、(F)前記インターフェースプロセッサ から表示データを受信するように接続された第2の表示バッファと、 (G)前記表示スクリーンに、前記第1及び第2の表示バッファの両方からのデ ータの組み合わせであるデータを提供するための表示マルチプレクサとを備えて おり、前記インターフェースプロセッサは、前記デジタル化タブレットによって ユーザからの入力を用いて疑似マウス装置を実現し、かつ前記第2の表示バッフ ァを用いてユーザにフィードバックすることができるよう構成されたコンピュー タシステム。
  5. 5.請求項4記載のコンピュータシステムにおいて、前記疑似マウス装置は、マ ウス移動領域及び少なくとも1つのマウスボタンに対応する領域を含むマウスア イコンの表示を含み、前記インターフェースプロセッサは、前記マウス移動領域 におけるタブレットデータに応答して、前記主プロセッサにマウス移動データを 送り、且つ前記マウスボタンに対応する領域におけるタブレットデータに応答し て、マウスボタンの動作を示すデータを前記王プロセッサに送るよう構成されて いるコンピュータシステム。
  6. 6.請求項5記載のコンピュータシステムにおいて、前記疑似マウス装置は、第 2のマウスボタンに対応する領域及び両ボタン領域を更に含み、前記インターフ ェースプロセッサは、前記第2のマウスボタンに対応する領域におけるタブレッ トデータに応答して、前記第2のマウスボタンの動作を示すデータを前記主プロ セッサに送り、且つ前記両ボタン範囲におけるタブレットデータに応答して、両 マウスボタンの動作を示すデータを前記主プロセッサに送るよう構成されている コンピュータシステム。
JP3512101A 1990-11-13 1991-06-20 標準プログラムへのタブレット入力を有するコンピュータ Pending JPH06501798A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/613,324 US5148155A (en) 1990-11-13 1990-11-13 Computer with tablet input to standard programs
US613,324 1990-11-13
PCT/US1991/004460 WO1992009037A1 (en) 1990-11-13 1991-06-20 Computer with tablet input to standard programs

Publications (1)

Publication Number Publication Date
JPH06501798A true JPH06501798A (ja) 1994-02-24

Family

ID=24456849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3512101A Pending JPH06501798A (ja) 1990-11-13 1991-06-20 標準プログラムへのタブレット入力を有するコンピュータ

Country Status (7)

Country Link
US (1) US5148155A (ja)
EP (1) EP0557282B1 (ja)
JP (1) JPH06501798A (ja)
AU (1) AU652767B2 (ja)
CA (1) CA2092904A1 (ja)
DE (1) DE69105997T2 (ja)
WO (1) WO1992009037A1 (ja)

Families Citing this family (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5361310A (en) * 1990-01-19 1994-11-01 Fujitsu Limited Handwriting entry processing system using keyboard and mouse interfaces requiring no modification of an application program
US6804791B2 (en) * 1990-03-23 2004-10-12 Matsushita Electric Industrial Co., Ltd. Data processing apparatus
JPH07117868B2 (ja) * 1991-04-30 1995-12-18 インターナショナル・ビジネス・マシーンズ・コーポレイション タツチ型作動キーボード定義方法及び装置
US5946406A (en) 1991-06-17 1999-08-31 Microsoft Corporation Method and system for data entry of handwritten symbols
JPH0520274A (ja) * 1991-07-10 1993-01-29 Canon Inc 電子情報機器
US5450596A (en) * 1991-07-18 1995-09-12 Redwear Interactive Inc. CD-ROM data retrieval system using a hands-free command controller and headwear monitor
FR2680420B1 (fr) * 1991-08-14 1994-06-17 Truchet Philippe Dispositif electronique pour transformer un systeme informatique standard en ordinateur dit sans clavier afin d'en simplifier l'utilisation.
JPH07104766B2 (ja) * 1991-10-28 1995-11-13 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理システムのメニューから複数のオブジェクトを表示する方法及び装置
JPH07504997A (ja) * 1992-03-20 1995-06-01 ブイ エル エス アイ テクノロジー,インコーポレイテッド 2重スキャンlcdパネル駆動用のアドレス変換を用いたvga制御器と駆動方法
CA2089784C (en) * 1992-04-15 1996-12-24 William Joseph Anderson Apparatus and method for disambiguating an input stream generated by a stylus-based user interface
US5329625A (en) * 1992-04-15 1994-07-12 International Business Machines Corp. System to service processor interface for a tablet computer
US5583542A (en) * 1992-05-26 1996-12-10 Apple Computer, Incorporated Method for deleting objects on a computer display
JPH064277A (ja) * 1992-06-23 1994-01-14 Hitachi Ltd Gui制御プログラム自動生成方法および装置
JP3227218B2 (ja) * 1992-09-11 2001-11-12 キヤノン株式会社 情報処理装置
US5404442A (en) * 1992-11-30 1995-04-04 Apple Computer, Inc. Visible clipboard for graphical computer environments
US5550562A (en) * 1993-01-12 1996-08-27 Fujitsu Limited Data processing device that enables mouse-operated application programs to be operated from an operation pad, and an operation pad for use with the same
EP0702809A4 (en) * 1993-06-07 1998-10-14 Epd Partnership D B A Reddy In HANDS-FREE CD-ROM MEMORY RECORDING AND EXTRACTION SYSTEM
US6366697B1 (en) 1993-10-06 2002-04-02 Xerox Corporation Rotationally desensitized unistroke handwriting recognition
US5422656A (en) * 1993-11-01 1995-06-06 International Business Machines Corp. Personal communicator having improved contrast control for a liquid crystal, touch sensitive display
US6243071B1 (en) * 1993-11-03 2001-06-05 Apple Computer, Inc. Tool set for navigating through an electronic book
US5511135A (en) * 1993-11-29 1996-04-23 International Business Machines Corporation Stylus-input recognition correction manager
JP3546337B2 (ja) * 1993-12-21 2004-07-28 ゼロックス コーポレイション 計算システム用ユーザ・インタフェース装置及びグラフィック・キーボード使用方法
US5504589A (en) * 1993-12-27 1996-04-02 Montague; Charles E. System and apparatus for transmitting food orders to a central station
US5508720A (en) * 1994-02-02 1996-04-16 Copytele, Inc. Portable telecommunication device with removable electrophoretic display
WO1995025326A1 (en) * 1994-03-17 1995-09-21 Voice Powered Technology International, Inc. Voice/pointer operated system
WO1996001453A1 (en) 1994-07-01 1996-01-18 Palm Computing, Inc. Multiple pen stroke character set and handwriting recognition system
JPH0816313A (ja) * 1994-07-04 1996-01-19 Sanyo Electric Co Ltd 手書き入力方法及び装置
US6092117A (en) * 1994-09-02 2000-07-18 Packard Bell Nec System and method for automatically reconnecting a wireless interface device to a host computer
US6209034B1 (en) 1994-09-02 2001-03-27 Nec Corporation Remote keyboard macros activated by hot icons
US6262719B1 (en) * 1994-09-02 2001-07-17 Packard Bell Nec, Inc. Mouse emulation with a passive pen
US6292181B1 (en) 1994-09-02 2001-09-18 Nec Corporation Structure and method for controlling a host computer using a remote hand-held interface device
US6137473A (en) * 1994-09-02 2000-10-24 Nec Corporation System and method for switching control between a host computer and a remote interface device
US5974558A (en) * 1994-09-02 1999-10-26 Packard Bell Nec Resume on pen contact
US5867106A (en) * 1994-09-02 1999-02-02 Packard Bell Nec Password switch to override remote control
US5694123A (en) * 1994-09-15 1997-12-02 International Business Machines Corporation Keyboard with integrated pointing device and click buttons with lock down for drag operation in a computer system with a graphical user interface
DE4438768A1 (de) * 1994-10-24 1996-04-25 Aristo Graphic Systeme Verwendung eines Mittels, welches ein Tastatureingaben-Datenformat für einen Computer erzeugt
US5606674A (en) * 1995-01-03 1997-02-25 Intel Corporation Graphical user interface for transferring data between applications that support different metaphors
US5802388A (en) * 1995-05-04 1998-09-01 Ibm Corporation System and method for correction and confirmation dialog for hand printed character input to a data processing system
US20090322499A1 (en) * 1995-06-29 2009-12-31 Pryor Timothy R Programmable tactile touch screen displays and man-machine interfaces for improved vehicle instrumentation and telematics
JPH0981320A (ja) * 1995-09-20 1997-03-28 Matsushita Electric Ind Co Ltd ペン入力式選択入力装置及びその方法
US6108727A (en) * 1995-10-16 2000-08-22 Packard Bell Nec System having wireless interface device for storing compressed predetermined program files received from a remote host and communicating with the remote host via wireless link
US6018806A (en) * 1995-10-16 2000-01-25 Packard Bell Nec Method and system for rebooting a computer having corrupted memory using an external jumper
US6148344A (en) * 1995-10-16 2000-11-14 Nec Corporation System and method for enabling an IPX driver to accommodate multiple LAN adapters
US5990875A (en) * 1995-10-16 1999-11-23 Packard Bell Nec Double pen up event
US5996082A (en) * 1995-10-16 1999-11-30 Packard Bell Nec System and method for delaying a wake-up signal
US6126327A (en) * 1995-10-16 2000-10-03 Packard Bell Nec Radio flash update
US6279153B1 (en) 1995-10-16 2001-08-21 Nec Corporation Multi-user flash ROM update
US6664982B1 (en) 1995-10-16 2003-12-16 Nec Corporation Multi-user on-screen keyboard
US6924790B1 (en) * 1995-10-16 2005-08-02 Nec Corporation Mode switching for pen-based computer systems
US7512671B1 (en) * 1995-10-16 2009-03-31 Nec Corporation Computer system for enabling a wireless interface device to selectively establish a communication link with a user selectable remote computer
US5923866A (en) * 1996-04-26 1999-07-13 Acer Incorporated Method and apparatus for realizing a keyboard key function on a remote control
US6417844B1 (en) * 1996-06-25 2002-07-09 Seiko Epson Corporation Data processing apparatus and data processing method
US6128007A (en) * 1996-07-29 2000-10-03 Motorola, Inc. Method and apparatus for multi-mode handwritten input and hand directed control of a computing device
US5784060A (en) * 1996-08-22 1998-07-21 International Business Machines Corp. Mobile client computer programmed to display lists and hexagonal keyboard
KR100627378B1 (ko) * 1996-08-28 2006-09-22 임베디드 테크놀로지스, 엘엘씨 터치 스크린 장치 및 방법
US5905486A (en) * 1997-03-03 1999-05-18 International Business Machines Corporation Mobile client computer programmed to combine cursor, control and input functions
US9292111B2 (en) 1998-01-26 2016-03-22 Apple Inc. Gesturing with a multipoint sensing device
US8479122B2 (en) 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US9239673B2 (en) 1998-01-26 2016-01-19 Apple Inc. Gesturing with a multipoint sensing device
US6326952B1 (en) * 1998-04-24 2001-12-04 International Business Machines Corporation Method and apparatus for displaying and retrieving input on visual displays
US6911969B1 (en) 1998-05-01 2005-06-28 Honeywell International Inc. Handheld computer apparatus
US7158871B1 (en) 1998-05-07 2007-01-02 Art - Advanced Recognition Technologies Ltd. Handwritten and voice control of vehicle components
US6160539A (en) * 1998-06-08 2000-12-12 Wacom Co., Ltd. Digitizer system with cursor shape changing as a function of pointer location on menu strip
US6982702B1 (en) * 1998-06-12 2006-01-03 Hewlett-Packard Development Company, L.P. Portable computer system
US6597346B1 (en) 1998-10-02 2003-07-22 Honeywell Inc. Hand held computer with see-through display
US6650305B1 (en) 1998-10-02 2003-11-18 Honeywell Inc. Wireless electronic display
US6690357B1 (en) * 1998-10-07 2004-02-10 Intel Corporation Input device using scanning sensors
JP4371466B2 (ja) * 1999-04-15 2009-11-25 株式会社東芝 コンピュータシステム及びそのi/o装置の制御方法
US7106888B1 (en) * 1999-05-25 2006-09-12 Silverbrook Research Pty Ltd Signature capture via interface surface
US6741235B1 (en) 2000-06-13 2004-05-25 Michael Goren Rapid entry of data and information on a reduced size input area
US7397949B2 (en) * 2000-06-21 2008-07-08 Microsoft Corporation Serial storage of ink and its properties
US7006711B2 (en) * 2000-06-21 2006-02-28 Microsoft Corporation Transform table for ink sizing and compression
US6707473B2 (en) * 2001-08-01 2004-03-16 Microsoft Corporation Dynamic rendering of ink strokes with transparency
US7346229B2 (en) * 2001-06-27 2008-03-18 Microsoft Corporation Transform table for ink sizing and compression
US6909430B2 (en) * 2001-08-01 2005-06-21 Microsoft Corporation Rendering ink strokes of variable width and angle
US7168038B2 (en) * 2001-08-01 2007-01-23 Microsoft Corporation System and method for scaling and repositioning drawings
US7849301B2 (en) * 2001-12-12 2010-12-07 Intel Corporation Providing a user input interface prior to initiation of an operating system
US6930670B2 (en) * 2001-12-31 2005-08-16 Aiptek International Inc. Computer peripheral input system with two input types and method of data communication for the same
US6882337B2 (en) * 2002-04-18 2005-04-19 Microsoft Corporation Virtual keyboard for touch-typing using audio feedback
US20030197690A1 (en) * 2002-04-19 2003-10-23 Zimenkov Oleg N. Computer input system
US7190351B1 (en) 2002-05-10 2007-03-13 Michael Goren System and method for data input
US6910911B2 (en) 2002-06-27 2005-06-28 Vocollect, Inc. Break-away electrical connector
US20040130525A1 (en) * 2002-11-19 2004-07-08 Suchocki Edward J. Dynamic touch screen amusement game controller
US7685538B2 (en) * 2003-01-31 2010-03-23 Wacom Co., Ltd. Method of triggering functions in a computer application using a digitizer having a stylus and a digitizer system
US20040228532A1 (en) * 2003-05-14 2004-11-18 Microsoft Corporation Instant messaging ink and formats
US8281241B2 (en) 2004-06-28 2012-10-02 Nokia Corporation Electronic device and method for providing extended user interface
US8381135B2 (en) 2004-07-30 2013-02-19 Apple Inc. Proximity detector in handheld device
CN100429608C (zh) * 2005-03-30 2008-10-29 汉王科技股份有限公司 一种具有手写输入和鼠标功能的装置
US20070080930A1 (en) * 2005-10-11 2007-04-12 Logan James R Terminal device for voice-directed work and information exchange
US20080052389A1 (en) * 2006-08-24 2008-02-28 George David A Method and apparatus for inferring the busy state of an instant messaging user
DE112007003635T5 (de) * 2007-08-30 2010-09-30 Razer (Asia-Pacific) Pte. Ltd. System und Verfahren zur Deaktivierung von Tasten
USD626949S1 (en) 2008-02-20 2010-11-09 Vocollect Healthcare Systems, Inc. Body-worn mobile device
US8296670B2 (en) * 2008-05-19 2012-10-23 Microsoft Corporation Accessing a menu utilizing a drag-operation
US8386261B2 (en) 2008-11-14 2013-02-26 Vocollect Healthcare Systems, Inc. Training/coaching system for a voice-enabled work environment
US20100283740A1 (en) * 2009-05-05 2010-11-11 Ching-Hung Chao Method for Protecting Resistive Touch Panel and Computer-Readable Storage Medium and Electronic Device thereof
US8355007B2 (en) 2009-05-11 2013-01-15 Adobe Systems Incorporated Methods for use with multi-touch displays for determining when a touch is processed as a mouse event
US8659397B2 (en) 2010-07-22 2014-02-25 Vocollect, Inc. Method and system for correctly identifying specific RFID tags
USD643400S1 (en) 2010-08-19 2011-08-16 Vocollect Healthcare Systems, Inc. Body-worn mobile device
USD643013S1 (en) 2010-08-20 2011-08-09 Vocollect Healthcare Systems, Inc. Body-worn mobile device
US9632604B2 (en) * 2012-03-27 2017-04-25 Hewlett-Packard Development Company, L.P. Input components of a device
WO2014023118A1 (zh) * 2012-08-09 2014-02-13 Li Yonggui 手机键盘与鼠标
CN107526494B (zh) * 2017-09-06 2021-02-09 北京小米移动软件有限公司 键盘显示方法、装置、终端及存储介质
KR20210014397A (ko) * 2019-07-30 2021-02-09 삼성전자주식회사 스타일러스 펜에 의한 제스처를 확인하는 전자 장치 및 그 동작 방법
CN112905092B (zh) * 2021-02-22 2023-07-07 深圳市康冠商用科技有限公司 擦除控件的调节方法、装置、电子设备及存储介质
CN114998632B (zh) * 2022-05-17 2023-10-24 海南大学 一种基于像素聚类的rvin检测和去除的方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4639720A (en) * 1981-01-12 1987-01-27 Harris Corporation Electronic sketch pad
US4602286A (en) * 1982-01-15 1986-07-22 Quantel Limited Video processing for composite images
US4587633A (en) * 1982-11-10 1986-05-06 Wang Laboratories, Inc. Management communication terminal system
JPS60205686A (ja) * 1984-03-30 1985-10-17 Hitachi Ltd 手書き文字・図形認識システム
DE3586927T2 (de) * 1984-04-20 1993-06-03 Hitachi Ltd Flaches bildschirmanzeigesystem mit integriertem eingabegeraet.
US4562304A (en) * 1984-05-23 1985-12-31 Pencept, Inc. Apparatus and method for emulating computer keyboard input with a handprint terminal
JPS61120231A (ja) * 1984-11-16 1986-06-07 Sharp Corp 手書き入力装置
JPS61275990A (ja) * 1985-05-31 1986-12-06 Canon Inc 手書パタ−ン認識機能付電子機器
US4901221A (en) * 1986-04-14 1990-02-13 National Instruments, Inc. Graphical system for modelling a process and associated method
US4899136A (en) * 1986-04-28 1990-02-06 Xerox Corporation Data processor having a user interface display with metaphoric objects
US4972496A (en) * 1986-07-25 1990-11-20 Grid Systems Corporation Handwritten keyboardless entry computer system
US4839634A (en) * 1986-12-01 1989-06-13 More Edward S Electro-optic slate for input/output of hand-entered textual and graphic information
JPS63220334A (ja) * 1987-03-10 1988-09-13 Sharp Corp デ−タ処理装置
US4953225A (en) * 1987-10-16 1990-08-28 Sharp Kabushiki Kaisha Handwritten character-recognizing apparatus for automatically generating and displaying character frames
EP0377698A4 (en) * 1988-05-27 1993-09-22 Wang Laboratories Inc. Document manipulation in a data processing system
JPH02127720A (ja) * 1988-11-08 1990-05-16 Mitsubishi Electric Corp 情報処理装置の入力用デバイス・シミュレート方式
FR2645990A1 (fr) * 1989-04-14 1990-10-19 Telematique Videotex Francaise Micro-ordinateur p ortatif a ecran-clavier tactile

Also Published As

Publication number Publication date
EP0557282A1 (en) 1993-09-01
EP0557282B1 (en) 1994-12-14
DE69105997T2 (de) 1995-07-13
AU8204691A (en) 1992-06-11
WO1992009037A1 (en) 1992-05-29
CA2092904A1 (en) 1992-05-14
DE69105997D1 (de) 1995-01-26
AU652767B2 (en) 1994-09-08
US5148155A (en) 1992-09-15

Similar Documents

Publication Publication Date Title
JPH06501798A (ja) 標準プログラムへのタブレット入力を有するコンピュータ
JPH05508500A (ja) 疑似装置を有するユーザインターフェース
JPH06501799A (ja) 別個の表示面及びユーザインターフェースプロセッサを有するコンピュータ
US8599147B2 (en) Computer interface for navigating graphical user interface by touch
US7936339B2 (en) Method and system for invoking computer functionality by interaction with dynamically generated interface regions of a writing surface
US5250929A (en) Interactive overlay-driven computer display system
US20060078866A1 (en) System and method for identifying termination of data entry
KR20060082422A (ko) 기록된 그래픽 장치용의 사용자 인터페이스
WO2007093984A2 (en) A system and method of inputting data into a computing system
US7170502B2 (en) Method for implementing a partial ink layer for a pen-based computing device
EP0538257B1 (en) Digitizer tablet system with dual-mode cursor/mouse
US20050270274A1 (en) Rapid input device
JP6434594B2 (ja) 画像表示装置、画像表示装置の制御方法及び画像表示方法
JP2984272B2 (ja) 文字処理方法及び装置
WO2022162356A1 (en) Apparatus and method for entering logograms into an electronic device
JPH0883276A (ja) 文書処理装置及び処理方法
WO2005088522A1 (en) System and method for text entry
JPH0632082B2 (ja) パタ−ン入力装置