JPH05204353A - 自動モード変更付きの統合キーボード、及び、ポインティング装置システム - Google Patents

自動モード変更付きの統合キーボード、及び、ポインティング装置システム

Info

Publication number
JPH05204353A
JPH05204353A JP4015060A JP1506092A JPH05204353A JP H05204353 A JPH05204353 A JP H05204353A JP 4015060 A JP4015060 A JP 4015060A JP 1506092 A JP1506092 A JP 1506092A JP H05204353 A JPH05204353 A JP H05204353A
Authority
JP
Japan
Prior art keywords
pointing
keyboard
key
event
mode
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.)
Granted
Application number
JP4015060A
Other languages
English (en)
Other versions
JP2648066B2 (ja
Inventor
Patrick J Franz
ジェイ. フランツ パトリック
David H Straayer
エイチ. ストレーヤー デイヴィッド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Home Row Inc
Original Assignee
Home Row Inc
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 Home Row Inc filed Critical Home Row Inc
Publication of JPH05204353A publication Critical patent/JPH05204353A/ja
Application granted granted Critical
Publication of JP2648066B2 publication Critical patent/JP2648066B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • 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
    • G05CONTROLLING; REGULATING
    • G05GCONTROL DEVICES OR SYSTEMS INSOFAR AS CHARACTERISED BY MECHANICAL FEATURES ONLY
    • G05G9/00Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously
    • G05G9/02Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only
    • G05G9/04Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously
    • G05G9/047Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/0202Constructional details or processes of manufacture of the input device
    • G06F3/021Arrangements integrating additional peripherals in a keyboard, e.g. card or barcode reader, optical scanner
    • G06F3/0213Arrangements providing an integrated pointing device in a keyboard, e.g. trackball, mini-joystick
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • 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/0489Interaction 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 dedicated keyboard keys or combinations thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04801Cursor retrieval aid, i.e. visual aspect modification, blinking, colour changes, enlargement or other visual cues, for helping user do find the cursor in graphical user interfaces
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01HELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
    • H01H2221/00Actuators
    • H01H2221/008Actuators other then push button
    • H01H2221/012Joy stick type

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 コンピューターのユーザーが、キーボードの
ホーム列(asdf−jkl;)より手を移動させず
に、また、肉体的行動を大巾に変えることなくタイプ、
及び、ポイントできるようにする。 【構成】 タイピング・モードの操作とポインティング
・モードの操作を有し、タイピング・キーのうちの1つ
が同様にポインティング・キーでもあるタイピング・キ
ーを含む複数のキーを有するキーボード、およびカーソ
ルを有するディスプレー・スクリーンを含むコンピュー
タ・システムにおいて、第1のキーボード・イベントの
検知に応答して、ポインティング・キーの押しについて
テストすること:第1のキーボード・イベントがポイン
ティング・キーの押しでない場合に、第1のキーボード
・イベントを通常的に処理すること:および第1のキー
ボード・イベントがポインティング・キーの押しである
場合に、ポインティング・モードにスイッチするかどう
かを決定するために、ポインティング・キーの押し以後
経過した時間をモニターする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】QWERTYキーボードは、英数
字データをコンピューターにタイプするための望ましい
装置として確立されている。CRTディスプレー上で
の、テキストの選択というようなポインティング作業用
には各種の装置、及び、方式が知られている。この目的
のための装置には、マウス、ジョイスティック、ステッ
プ・キー、及び、テキスト・キーが含まれる。キーボー
ドは、キーボードに組み付けられるジョイスティック、
ジョイディスク、或いは、他のポインティング装置を含
有するものとして知られている。しかしながら、作動時
間、エラー率、等々に関しては、分離マウスが最も効率
的なポインティング装置であることが分かっている。コ
ンピューター業界でこれが広く受け入れられているのは
このためである。
【0002】
【従来の技術】タイプ、及び、ポインティング上方を、
それぞれコンピューターに入力するために、従来のキー
ボード、及び、分離マウスを使用すると、必然的に、肉
体的、精神的分裂状態が生じてしまい、これはユーザー
の生産性を重大に低減する。例えば、キーボードにタイ
プしたり、マウスでポイントするには、ユーザーは、頻
繁にキーボードとマウスの間で手を前後に動かすことが
必要になる。ある調査報告によれば、手をキーボードか
らマウスに移動させるには、約0.36秒、更に、マウ
ス・ボタンを操作するための握りの調整のための追加の
時間がかかるということである。キーボードに戻る時間
も、同様に考慮しなければならない。データはマウス
へ、或いは、これより移動するのに費やされる全部の時
間は、発生事件当たりの1秒よりも大きいことを示唆し
ている。S.K.Card等の“Evaluation
of Mouse,Rate−Controled
Isometric Joystick,Step K
eys,and Text Keys for Tex
t Selection on a CRT”(Xer
ox Palo Alto Research Cen
ter) Ergonomics,Vol.2,NO.
8,601−613(1978)公開を参照されたい。
【0003】このキーボード、及び、マウス間の運動は
必要とされる距離、及び、横から横への腕の動きのため
に、肉体的に破壊的である。これ等の運動は、これ等の
運動が必要とする時間、肉体的活動に分ける動的なシフ
ト(キーボードにタイプすることは、マウスでポイント
することと極めて異なる)、及び、これ等の運動を行う
ために必要な多くの精神的、肉体的ステップのために、
精神的に破壊的である。追加的な各々のステップには、
肉体的、精神的努力が必要であり、エラーの機会もでて
くる。
【0004】米国特許No.4,712,101は、カ
ーソル位置づけ装置を記載しているが、これは、スペー
ス・バーの下方のキーボード上に位置づけられるもので
ある。こうした装置はIsopointという商標で発
表された。Isopoint装置には、第一方向に向け
る位置の変化を表示するための、回転シャフト・エンコ
ーダーにカップリングされた、指、或いは、親指起動の
ローラーが含有される。このローラーは、第2エンコー
ダーを駆動する摺動クレードル内に位置する。こうした
装置は、必要なローリング、及び、摺動行動の組合せの
ために、特に、傾斜のカーソルの動きについて操作がぎ
こちなくなる。加えて、摺動クレードルは、固定端部ポ
イントを有するが、これは、操作における断続を余儀な
くさせるものである。
【0005】カーソル制御のため、従来のキーボードに
組み込める別のポインティング装置には、Osiris
Technologies,Inc.ネバダ市、カリ
フォルニア州により発表されたOmnipointtm
カーソル・コントローラーがある。Omnipoint
には、必須的に、ミニチュア・ジョイスティック、及
び、関連するインターフェイス電子装置が含まれる。ジ
ョイスティックは、スタンダード・キー配列に隣接し
て、キーボード内に組み込んでも良い。このカーソルの
使用には、通常のタイプ位置より離れて手を動かす必要
がある。
【0006】Isopoint及び、Omnipoin
t装置双方とも、ユーザーが、マウス・ボタンを“カチ
ッ”と押して起動させ、或は、引き操作を行うために、
装置を下方向(キーボード内)へ押すことができるよう
に、組み込まれたスイッチを含有する。こうした装置
は、そのために、単一ボタン・マウスを起動できるのが
せいぜいである。
【0007】米国特許No.4,680,577Str
aayer等に付与、は、CRTディスプレー上のカー
ソルの動きの制御、及び、文字入力のためのキーボード
配列内に配置される多目的キースイッチを開示してい
る。スタンダード・アルファベット・キーのうちの1つ
が、多目的キー・スイッチにより代替される。多目的キ
ー・スイッチのカーソル位置づけ能力を起動させるため
に、追加的なキー・スイッチが示唆される。577特許
は、そうしたシステムを実行し、使用するための実際的
な方法は開示していない。加えて、この特許は、このシ
ステムが、マウスを代用できないように、例えば、マウ
ス・ボタンの行動(“カチッ”と動くこと)と云った、
何らのポインティング・イベント情報の入力の仕方につ
いて取り扱っていない。必要なことは、ユーザーが、手
を通常のタイプ位置から離れて動かさず、また、肉体的
活動を大巾に変化させずにタイプし、ポイントできるよ
うな実際的な方法なのである。先端技術のポイント、及
び、タイプ方法はこれ等の分裂状態を想定し、これ等を
コンピューター、キーボードポインティング装置、及
び、ソフトウェアーにおける制限条件として組み込ん
だ。タイピング、及び、ポインティングは、明確な、調
和不能な活動であると考えられていた。
【0008】その結果として、ハードウェアー、及び、
ソフトウェアーが相当に重複した。例えば、マウス上の
ボタンは、ポインティングが、タイピングとは、精神
的、及び、肉体的に、極めて異なるものと考えられてき
たために必要なのである。ポインティングがそのように
異なるので、ハードウェアー、及び、ソフトウェアーが
重複し、分離が強調されるのである。例えば、マウス上
のボタンは、マウスが使用されている間は、一般的には
使用されていないキーボード上の多くのキーがあるため
に重複するのである。必要なことは、完全な互換性のた
めに応用プログラムに対して同じソフトウェアー・イン
ターフェイスを維持しながら、現在のシステムの制限、
及び、重複を除去するポインティング装置システムなの
である。
【0009】多くの公知のポインティング装置は、同様
に、有することのできるボタンの数に物理的な制限があ
る。これ等の制限により、ユーザーがポインティング中
に取り得る行動の範囲が極めて限定される。Power
Mouse100と呼ばれる追加的なボタンを加えよ
うと試みる1つの商品は、2つのボタンを40のプログ
ラム可能なキーと統合し、その結果として、使用しにく
い大型でわずらわしい装置になってしまった。必要とさ
れるものは、ユーザーが、ポインティング中にキーに手
をつけたままでいられ、また、同時にユーザーが、マウ
ス・ボタンにより現在入力されている他のポイントに関
連するデータ、或いは、“ポインティング・イベント”
を入力できるようにするが、これも、通常のタイプ位置
より手を動かさずに行えるというものである。
【0010】先端技術において見落とされている別の問
題は、カーソル画像を、ディスプレー・スクリーン上に
視覚的に位置させるというものである。ユーザーがタイ
プを停止し、ポイントすべきマウスを握るたび毎に、彼
はカーソルのために、ディスプレー・スクリーンを視覚
的にさがさねばならず、或いは、移動するカーソルが気
づかれるように、ポインティング装置を起動しなければ
ならない。これ等の方法は、時間を食うし、破壊的であ
ることもある。カーソル画像がほとんどスクリーン外に
ある場合には、カーソルを位置づけることが極めて困難
になり得る。ある場合には、1つのピクセルしか現れな
い。あるソフトウェアーの場合には、カーソルをスクリ
ーンの特定エリアに移動させることは、取るべき特定の
行動のための願望を意味する。ユーザーが、この行動か
ら取られて欲しくないと思う場合には、この意図される
表示をキャンセルするために、追加的ステップを行わな
ければならない。必要とされることは、ユーザーがポイ
ンティングが始まる時に、スクリーン上のカーソルの位
置を、即座に検知することである。
【0011】カーソルを、ポインティング装置よりのシ
グナルに応答して再配置する公知の方法は、入手可能な
ディスプレー・システムの多くの異なるモード、及び、
解像度を補償しない。ディスプレー・システムを異なっ
て構成する2つのプログラムは、同じポインティング装
置シグナルに対して、異なる明白なカーソル再配置応答
を示すことがある。必要とされることは、ポインティン
グ装置によりユーザーにより行われる同じ行動が、ディ
スプレー・システムにおける変化とは無関係に、類似の
結果を生じるように、ディスプレー・システムにおける
変化を補償するカーソル再配置の方法である。
【0012】カーソルの速度を調整することは、もう1
つのやりにくく時間を食う行動である。カーソルの速度
を変更する公知の方法では、ユーザーのワーク・フロー
を重大に妨害する断続性が導入される。結果として、多
くの人々には、これを変更することが余りにわずらわし
く、面倒くさいということで、不適正で、そのために非
効率的なカーソル速度にあまんじている。
【0013】例えば、典型的なマウスの場合、ユーザー
は、まず第一に進行中の応用プログラムを停止し、その
後に、特殊なマウス速度変更プログラムを実行すること
が必要であるが、ここでは、その速度は、数でタイプす
ることにより指定される。結果としてのカーソルの速度
は、応用プログラムが再開始されるまで観察できない。
ユーザーは、別の調整が必要であることが分かり、プロ
セスを繰り返さねばならない。
【0014】別の公知の方法は、キーボード・キー、及
び、マウス・ボタンを同時に押すというものであるが、
しかし、これ等の方法は、継続的でなく、また、特定の
応用プログラムの操作を妨げる。必要とされることは、
ユーザーが進行中の作業を重大に妨害されることなくカ
ーソルの速度を制御するための迅速、かつ相互作用的方
法を手に入れることである。
【0015】
【発明が解決しようとする課題】コンピューターのユー
ザーが、キーボードのホーム列(asdf−jkl;)
より手を移動させずに、また、肉体的行動を大巾に変え
ることなくタイプ、及び、ポイントできるようにするこ
とが発明の目的である。
【0016】本発明の別の目的は、互換性のための、現
存するプログラムに対するスタンダード・ソフトウェア
ー・インターフェイスを維持しながら、現在のコンピュ
ーター・システムに見い出されるハードウェアー、及
び、ソフトウェアーの重複、及び、操作における抑制を
低減することである。
【0017】本発明の更に別の目的は、ユーザーがポイ
ンティング中に、キーボード上に手をおいたままでいら
れ、また同時に、ユーザーがここでも通常のタイプ位置
から手を移動させずに、ポインティング関連データ、或
いは“ポインティング・イベント”を快適に入力できる
ようにすることである。
【0018】本発明の更に別の目的は、コンピューター
・ユーザーが、ポインティング作業が開始する時には、
いつも、ディスプレー・スクリーン上のカーソルの位置
を即座に検知できるようにすることである。
【0019】本発明の更に別の目的は、ユーザーにより
ポインティング装置で行われる所定の行動が、ディスプ
レー・システムにおける変動より独立的に、類似の結果
を生み出すように、ディスプレー・カーソルを再位置づ
けする時に、ディスプレー・システムにおける変動を補
償することである。
【0020】
【課題を解決するための手段】本発明に従えば、手を通
常のタイプ位置より移動させずに、すべてのタイプ、及
び、ポインティング情報をコンピューターに入力するた
めに、単一の統合キー・システムが配置される。ポイン
ティング・キーと呼ばれる、キーボードキーのうちの1
つは、ポイント方向データを、ポインティング・キーの
横方向の配列より得るために、これにカップリングされ
たセンサーを有する。
【0021】この新規のシステムは、操作のタイピング
・モード、及び、ポインティング・モードを有する。タ
イピング・モードにおいては起動されたキースイッチに
相応するキー・コードが、通常の方法で、作動システム
に送られる。ポインティング・モードにおいては、キー
ボード全体の操作が変更される。キーの全ては、新しい
機能のために使用可能となる。
【0022】キーのうちの1つ、或いは、複数が、分離
したシステムにおけるマウス・ボタンよりやって来る情
報を入力するため、ポインティング・イベント・キーと
して割当てられる。他のキーは、システムの作動を変更
するための、カーソル速度コントロール、マクロ等とい
った多種の意味を割り当てることができる。
【0023】カーソルの運動は、ポインティング・モー
ドにおいては、ポインティング・キーよりセンサー・デ
ータを読取り、カーソル配置データをつくるためにデー
タをマッピングし、また、速度インデックスに従って、
配置データをスケーリングすることにより実行される。
キーはどんな時でも、速度インデックス、であるから、
明白なカーソル速度を変更するために割り当てることが
できる。これにより、相互作用的、また、応用プログラ
ムを離れることなくしての速度コントロールが可能とな
る。
【0024】カーソル・マッピングは、事前に決定され
るトラッキング・アルゴリズムに従ってのセンサー・デ
ータの代数学的操作、或いは、ルックアップ・テーブル
により行うことができる。この新規のシステムにより、
同様に、ディスプレー・モード、例えば、文字、或い
は、グラフィック・モードを検知し、また、従って、コ
ントロールを最適化するために、カーソル速度を変更す
ることが可能となる。
【0025】本発明の別の観点に従えば、タイピングか
らポインティング操作(およびその逆)へ変更しようと
するユーザーの意図は、統合キーボードでのユーザーの
行動により誘引可能である。タイピング・モード中にポ
インティング・キーを押すことに応答して、システムは
中間の”Wait and see”モードに入り、ユ
ーザーがポインティングを開始する意図があるかどうか
を決定するために、ポインティング・キーの押しの処理
を遅延させる。
【0026】後続のキーボードの行動は、その決定を行
うためにタイミングを合わされ、テストされる。結論が
得られ、システムはポインティングにスイッチするか、
通常のタイピング・モードを回復するかを0.5秒で行
う。このプロセスは明白ではないとしても、ユーザーに
とっては目障りなものではない。使用においてポインテ
ィング・モードにスイッチするには、ユーザーはポイン
ティングを開始するだけで十分である。スイッチバック
するには、ユーザーはポインティングをやめてタイピン
グを開始するだけでよい。
【0027】
【実施例】本発明は、第1に先行技術との関連において
最も良く理解される。図1は、先行技術のコンピュータ
ー・システムを示す。この先行技術システムは、コンピ
ューター28、文字データをコンピューターに入力する
ためのキーボード24、グラフィック・データをコンピ
ューターに入力するためのポインティング装置26、及
び、コンピューターにより出力されるデータの表示のた
めのディスプレー・ターミナル29を含有する。“矢
印”25は、キーボード24のホーム列キーを含有する
キーの列を指す。キーボードは、コミュニケーション・
リンク36によりコンピューターにカップリングされ
る。ポインティング装置は、ポインティング装置コミュ
ニケーション・リンク23によりコンピューターにカッ
プリングされる。ポインティング装置26は、例えば、
1つ或いは複数のマウス・ボタン27を含有するマウス
であっても良い。ポインティング装置は、一般的には、
以下により詳細に説明するように、カーソルを位置づ
け、また、移動させるために使用されている。
【0028】図2は、図1のシステムにおいて採用され
るキーボード24のブロック・ダイアグラムである。キ
ーボード24は、キースイッチの配列32を含有する
が、そのうちの30が例である。配列32のキースイッ
チは、キーボードの走査を促進するために、列、及び、
段になって配置される。マイクロプロセッサー・システ
ム34は、キースイッチ配列32をシステム34内のマ
イクロプロセッサーに電気的にインターフェイスするた
めのハードウェアーを含有する。
【0029】作動においては、マイクロプロセッサー・
システム34は、配列32の列、及び、段を走査し、キ
ースイッチの開閉を検知する。キースイッチの開閉を検
知すると、マイクロプロセッサー・システム34は、閉
じた、或いは、開いたキースイッチに独自なコードをキ
ーボード・コミュニケーション・リンク36を介して、
コンピューター(図1の28)に転送する。
【0030】ここで図3に関して云えば、図2のキーボ
ード用の高水準処理コントロール・フロー・ダイアグラ
ムが、キーボード・データの生成、及び、コンピュータ
ーへの転送をより特定的に表すために示されている。図
3においては、初期設定ステップ42が、マイクロプロ
セッサー・システム(図2の34)をテストし、キーボ
ード・ソフトウェアー状態を初期設定する。
【0031】初期設定後、キーボード走査ループ56は
キーボード44を走査することで開始する。走査キーボ
ード44は、キースイッチ配列の列、及び、段を連続的
に走査し、キースイッチの状態における変化を検知す
る。走査キーボード44が完了すると、その結果は、ブ
ロック46でチェックされる。キースイッチにおける変
化がなかった場合には、コントロールは、自動繰り返し
ブロック52にパスする。変化があった場合には、コン
トロールは、影響を受けたキースイッチを識別するため
に、決定キー(Determine Key)ブロック
54にパスする。
【0032】決定キー・ブロック54は、もしあるとす
れば、どの2進キー・コードをコンピューターに転送す
べきかを決定するために、その変化を分析する。送りキ
ー(Send Key)コード・ブロック60が、その
キー・コードを転送する。単一キースイッチ・プレス、
及び、リリースの典型な場合には、キースイッチに相応
する1つの一意キー・コードが、キーが押された時に送
られ、キースイッチが解放された時には、他のコードが
送られる。
【0033】自動繰り返し52により表されるソフトウ
ェアーは、キースイッチが押されたままでいる場合に、
キー・コードの送りを自動的に繰り返す時であるかどう
かを決定する。何らかのキー・コードが送られた後は、
コントロールは、次のキーボード走査を開始するため
に、ループ56を介して復帰する。
【0034】図4に関して云えば、典型的な先行技術の
キーボード・ソフトウェアー・インターフェイスが表さ
れている。このシステムにおいては、コンピューター・
キーボード74はオペレーターが上記説明のようにキー
スイッチを押す時に、2進キー・コードを生成する。2
進キー・コードは、キーボード コミュニケーション・
リンク36を介してコンピューターに転送される。キー
ボード割り込みハンドラー72は、そのキー・コードを
読取り、処理し、相応する文字コードを、キーボード列
70に入れる。一般的には、キーボード干渉ハンドラー
72は、簡単で迅速な割り込みレベル・ソフトウェアー
である。
【0035】応用プログラム62は、インターフェイス
64を介して、作動システム・キーボード・サービス6
6にカップリングされる。応用プログラムによる要求に
応答して、作動システムは、別のインターフェイス、作
動システム・キーボード列インターフェイス68を介し
て、キーボード列70より文字コードを応用プログラム
に送る。作動システム・キーボード・サービス66は、
応用プログラム終結といったような作動システムの要求
についてチェックするために、文字コードを検査するこ
とができる。インターフェイス64、及び、68は応用
プログラム62が必要に応じて、文字コードを“押し戻
す”ことができるように、通常的には二方向性である。
【0036】キーボード割り込みハンドラー72の操作
は図5により詳細に示されている。図5に関して云え
ば、読取りハードウェアー(Read Hardwar
e)ブロック76が、キーボード・インターフェイス・
ハードウェアーよりのキー・コードを読み取る。各々の
これ等のキー・コードは、これがShift、Caps
Lock、Control、及び、ALTキースイッチ
のいずれかを表すのかどうかを知るためにチェックされ
る。これ等の特別のケースは、ブロック78、82、及
び、90において、それぞれテストされる。各々のテス
トについてテストがネガティブである場合には、コント
ロールは、示されるシーケンス内の次のテストにパスさ
れる。特殊なケース・テストの全てがネガティブである
場合には、コントロールはキー・コードをマップするた
めに、MapからCharブロック94にパスする。
【0037】テストのうちのいずれかがネガティブであ
る場合には、コントロールは、特別なキーが押された
か、解放されたかどうかを示す状態ブロック80、8
4、88、及び92のうちの相応する1つを最新化する
ためにパスされる。
【0038】MapからCharまでのブロック94
は、ルックアップ・テーブル或いは、これの複数を使用
して、文字コードに対するキー・コードをマップする。
マッピングにはShift、Caps Lock、Co
ntrol、及び、ALTキーの現在の状態が含まれ
る。この操作は、簡単なパススルー・マッピングであ
る。結果としての文字コードがあるとすれば、これは、
Enqueueブロック96にパスされる。一般的に
は、キー・コードがキースイッチの解放を表す場合に
は、これはEnqueueソフトウェアー96にはパス
されない。Enqueue96は、結果としての文字コ
ードをキーボード列(図4の70)に挿入する。状態の
最新化、或いは、Enqueue操作の後、必要に応じ
て、コントロールは通常の方法で、割り込まれたプログ
ラム、復帰(Return)ブロック98に復帰する。
【0039】図6は、典型的な先行技術のポインティン
グ装置ソフトウェアーの作動を表す・ブロック・ダイア
グラムである。ここでは、応用プログラム62が、作動
システム(OS)ポインティング装置サービス・ソフト
ウェアー104とコミュニケートする。この応用プログ
ラムは、初期位置、カーソル形状、カーソルの可視性等
といったポインティング装置コントロール情報をパス
し、位置、及び、ボタンのプレスといったポインティン
グ装置状態情報を受信する。
【0040】OSサービス104は、これに対して、イ
ンターフェイス仕様106に従って、ポインティング装
置ドライバー・インターフェイス・ソフトウェアー10
8とコミュニケートする。ドライバー・インターフェイ
ス・ソフトウェアー108は、特別のポインティング装
置のデータをインターフェイス106に合致するように
転換し、フォーマットする。カーソルの形状、可視性、
ロケーション、及び、ポインティング装置ボタン状態と
いった情報を含めてのポインティング装置状態データ
は、状態データ114と呼ばれるメモリー・ロケーショ
ンのセットに維持される。
【0041】ポインティング装置ドライバー・インター
フェイス・ソフトウェアー108は、インターフェイス
112を介して、状態データ114と、また、インター
フェイス110を介して、低水準ポインティング装置ソ
フトウェアー118とコミュニケートする。低水準ソフ
トウェアー118は同様に、インターフェイス116を
通して、状態データ114とコミュニケートする。
【0042】作動においては、低水準ポインティング装
置ソフトウェアー118は、ポインティング装置コミュ
ニケーション・リンク23を介して、ポインティング装
置ハードウェアー120よりデータを読み取る。ソフト
ウェアー118は、状態データ114を変更し、必要な
時に、ドライバー・インターフェイス108に通知す
る。低水準ソフトウェアー118は同様に、カーソルを
ディスプレー・ターミナル(図1の29)上で移動させ
るためのソフトウェアーを含有しても良い。
【0043】図7は、図1に示されるような完全なコン
ピューター、キーボード、及びポインティング装置シス
テムのソフトウェアー・ブロック・ダイアグラムであ
る。これは、必須的に、キーボード・ソフトウェアー
(図4参照)、及び、ポインティング装置ソフトウェア
ー(図6参照)の組合せにより成る。従って作動の詳細
は、ここで繰り返す必要がある。
【0044】最低から最高のレベルまで、応用プログラ
ム62、及び、キーボード74の間のデータ、及び、コ
ントロール・パスは応用プログラム、及び、ポインティ
ング装置120の間のデータ、及び、コントロール・パ
スより分離し、はっきりと異なるということは注目に値
する。キーボード、及び、ポインティング装置インター
フェイスのこの分離は、ユーザーの心の中でのキーボー
ド、及び、ポインティング装置操作の分離を反映する。
この技術の状態における有用な改良には、以下に説明す
るようなコンピューター・ユーザーの思考、及び、行動
についての慎重な考慮が必要である。
【0045】図8は、図1−7に表されるタイプの典型
的なコンピューター・システムを使用するための“ユー
ザー・フロチャート”である。この図は、こうしたシス
テムを使用中のコンピューター・ユーザーの決定、及
び、行動のコントロール・フローをダイアグラムする。
図8に関して云えば、初原ループ140は、ブロック1
22により表される、ポイントするかタイプするかの決
定で開始する。決定が(精神的に)タイプすることであ
る場合には、ユーザーがすでにタイプをしているかどう
かを知るために、テスト134が実行される。テスト1
34は、手、及び、ユーザーの肉体の他の部分が、タイ
プのための位置にあるかどうかを確実にするために実行
しなければならない。そうでない場合には、ユーザー
は、タイプを開始するために、一般的には、キーボード
のホーム列上の(ブロック136)タイプ位置にその手
を移動させる。手、及び、身体が適正な位置になった
ら、ユーザーは英数字138を入力するために、通常的
には繰り返し、キーボード・キースイッチを押す。
【0046】決定がポイントすることとされる場合には
ユーザーは、これが、すでに124をポイントしている
かどうかを知るためにテストをする(精神的に)。これ
は、手、及び、ユーザーの肉体の他の部分がポインティ
ング装置を操作するための位置にあることを確かめるた
めに行わなければならない。すでにポイントしているな
らば、ユーザーは続けるだけで良い。そうでない場合に
は、ユーザーはその手をポインティング装置126に移
動させてから、ディスプレー・スクリーン128上のカ
ーソルを探さなければならない。
【0047】手をポインティング装置に移動させるステ
ップには、ユーザーの手がキーボード上でタイプをして
いた場合に、ポインティング装置の操作を開始するため
に必要なこと全てが含まれる。一般的には、これには、
手をキーボードのホーム列より、ポインティング装置が
位置する場所に移動させ、ポインティング装置を握り、
指をポインティング装置ヘッド・ボタンを操作するため
に配置し、腕を快適な位置に再配置することが含まれ
る。
【0048】カーソルをディスプレー・スクリーン12
8上で探し出すことは、カーソルを最後にどこで見たか
を思いだし、あるいは、偶然にそれを視野の中に入れて
いるのと同じくらい簡単なことかも知れない。非常にし
ばしば、それはポインティング装置を操作し、ディスプ
レー・スクリーン上の運動物体を探すことを含み、その
際に時間と努力をむだにしてしまうことがある。
【0049】手がポインティング装置上におかれ、カー
ソルが位置づけられたら、ポインティング装置は“ポイ
ンティング”及び、“ポインティング・イベント”とい
う2つのタイプの操作を行うために作動しても良い。ポ
インティングは、カーソルを再位置づけするために、マ
ウス130を移動することに関する。ポインティング・
イベントは、ポインティング装置ボタン132を押すこ
とにより表されるが、このことには、選択されたポイン
ティング装置ボタンを押し、保持し、或いは、解放する
ことが含まれることがある。ポインティング・イベント
は、テキストを選択し、メニュー・アイテム、及び、他
の多くの機能をピックするのに使用される。典型的なポ
インティング装置操作には、繰り返しのポインティン
グ、及び、ポインティング・イベントにかかわることも
ある。行動に断続があった場合、或いは、行動において
の変化が必要とされる場合には、ユーザーは初原ループ
140を介して、ポイント、或いは、タイプ決定122
に効率的に復帰する。
【0050】統合キーボード、及び、ポインティング装
置システムの概要 図9は、本発明に従う統合キーボード、及び、ポインテ
ィング装置(“統合キーボード”)の簡略化ブロック・
ダイアグラムである。この新規の統合キーボードには、
キースイッチの配列232が含まれるが、そのうちキー
スイッチ230が例である。方向センサー238は、ポ
インティング情報を検知するために配列232に埋め込
まれる。方向センサーは、ポインティング・キーと呼ば
れる多目的キースイッチを形成するために、配列内のキ
ースイッチの1つにカップリングされる力センサーであ
ることが望ましい。例えば、方向センサーがJキーにカ
ップリングされるところでは、ユーザーは、Jキー上
で、望みの方向に押すことにより、ポインティング情報
を入力することができる。こうした多目的キースイッチ
の1例がこの関連では、Home Row Inc.,
incorporatedに付与された米国特許No.
4,680,577に開示されている。Jキーは、これ
がユーザーの手が、キーボードのホーム列上に配置され
る時に、ユーザーの右の人差指の下に位置するので、ポ
インティング・キーであることが望ましい。この統合シ
ステムが、ユーザーが方向情報を入力するのと、単に文
字Jを入力するのとをどのように区別するのかは、以下
に説明する。
【0051】より小型でより廉価な実施例には、平面に
おける4方向の各々についての力を感知するための、J
キーにカップリングされる4つの感力レジスター(FS
Rs)が含まれるであろう。アナログからデジタルへの
変換回路240には、FSR抵抗、アナログ情報を代表
的デジタル・シグナルに変形するための電子回路が含ま
れる。アナログからデジタルへの変換は良く知られてい
ることなので、詳細には説明しない。
【0052】アナログからデジタルへの回路240は、
パス242を介してマイクロプロセッサー・システム2
34にカップリングされる。マイクロプロセッサー・シ
ステム234には、配列232、及び、A/D回路24
0を、システム234内のマイクロプロセッサー(示さ
れてはいない)に電気的にインターフェイスするための
ハードウェアーが含まれる。
【0053】この統合キーボード、及び、ポインティン
グ装置は、英数文字データを入力するためのタイピング
・モード、及び、先行技術においては、マウスといった
ような分離のポインティング装置により入力されるよう
な、ポインティング情報を入力するためのポインティン
グ・モードという少なくとも2つの顕著な作動モードを
有する。ポインティング情報には、ポインティング方向
情報、及び、ポインティング・イベント情報が含まれ
る。
【0054】一般的には、マイクロプロセッサー・シス
テム234はキースイッチ配列232を走査して、キー
スイッチの開閉を検知する。キースイッチの開閉を検知
すると、システム234は、起動されたキースイッチに
独自のコードをキーボード・コミュニケーション・リン
ク236を通して転送する。システム234は同様に、
キースイッチの開閉のシーケンスを検査すること、或い
は、コンピューター・システムよりメッセージを受信す
ることにより、センサー238を走査すべきかどうかを
決定する。そうである場合には、センサー238よりポ
インティング方向情報を得るためにセンサー走査が実行
され、また、ポインティング方向情報も同様に、リンク
236を通して転送される。ポインティング方向情報を
送るための、コンピューターへの分離した物理的接続は
必要ない。
【0055】図10は、図9の統合キーボード、及び、
ポインティング装置の作動のフローチャートである。図
10に関して云えば、初期設定ステップ42は、マイク
ロプロセッサー・システム234(図9)をテストし、
キーボード・ソフトウェアー状態を初期設定する。次
に、キーボード走査ループ56が、キースイッチの現在
の状態を測定するためにキーボードを走査することで開
始する。
【0056】走査44が完了した後、その結果はキース
イッチ状態の変化が発生したかどうかを測定するために
ステップ46でチェックされる。変化がなかった場合に
は、コントロールは、自動繰り返しステップ52にパス
する。自動繰り返しステップ52は、上記で図3に関し
て記述したように機能する。変化があった場合には、コ
ントロールは、どのキースイッチ状態が変化したかを測
定するために、ステップ54にパスする。ステップ46
は、ソフトウェアー・キースイッチ・ディバウンスにつ
いての多重キーボード走査パスが行われるまでは、変化
した状態を示さない。
【0057】決定キー(Determine Key)
ステップ54は、もしあるとすれば、その2進キー・コ
ードをコンピューター、ステップ60に転送すべきかを
決定するためにその変化を分析する。キースイッチのプ
レス、及び、リリースの典型的な場合には、キースイッ
チに相応する1つの独自のキー・コードが、キースイッ
チを押した時に送られ、また、キースイッチが解放され
る時には、別のものが送られる。
【0058】あったとした場合に、キースイッチの変更
が処理された後、決定144はキーボード作動モード
を、タイピング、及び、ポインティング・モード間で変
更すべきかどうかを決定する。モード変更についてのこ
のチェックはキースイッチを押すか、解放するかを調べ
ること、コミュニケーション・リンクを介してのコンピ
ューターよりのコマンドをチェックすること、或いは、
サムスイッチ(以下に説明)といったような、キーボー
ド上の別のセンサーのユーザーによる起動をチェックす
ることを含むこともある。
【0059】図16は、作動モード変更を表すための、
キーボード212のスペース・バー214の下方に位置
する一対のサムスイッチ218を示している。サムスイ
ッチ218は、これ等をキーボードの平面で、一般的に
は、スペース・バー方向に摺動することで作動される。
サムスイッチは、都合よく配置されており、起動効果を
与えるために、親指の他の指の方向への自然な動きがで
きるような角度で作動される。
【0060】本統合キーボード、及び、ポインティング
装置のモードは、サムスイッチを作動することにより、
タイピングからポインティングへと変更できる。ポイン
ティング・モードへの影響は、押される次のキーボード
・キーにより決定される。例えばサムスイッチを操作す
ることにより、ポインティング・モードに入ることがで
き、また、ポインティング装置を作動するためにJキー
を押すと、サムスイッチは解放される。Jキーが解放さ
れると、キーボードはタイピング・モードに復帰する。
このように、サムスイッチは、ポインティング・モード
に入る可能性を示すのみであって、必ずしもポインティ
ング・モードより出ることは表さない。サムスイッチ2
18によって、キーボードのホーム列より手を離すこと
なく、迅速で自然な操作ができるようになる。
【0061】示された場合には、適正なモード変更が為
される。次にポインティング装置処理を行うべきかどう
かを決定するために、ポインティング・モード146に
ついてのテストが実行される。現行モードがタイピング
である場合には、コントロールはループ56を介して復
帰し、キーボード44を再び走査する。
【0062】現行モードがポインティングである場合に
は、システムは、次にポインティング方向データを得る
ために方向センサーを読取り、そのデータを処理する、
ステップ148。センサー・データ処理には、増巾、フ
ィルターリング、及び、非線型変形が含まれることもあ
る。この時点でおこるセンサー・データ処理は、性質上
は、簡単で、固定されたものである。コンピューター・
システムにおける追加的な処理が為されなければならな
い。センサー・データ処理が完了すると、処理されたセ
ンサー・データは、コンピューター150に送られる。
代替的実施例においては、粗センサー・データを処理の
ために、リアルタイムか、または、パケットにして、コ
ンピューターに送ることができよう。処理されたセンサ
ー・データが送られた後、コントロールはループ56を
通ってパスし、再びキーボードを走査し、前行プロセス
が繰り返される。
【0063】図11は、図9−10の統合キーボードを
含有するコンピューター・システムのブロック・ダイア
グラムである。応用プログラム(62)、及び、作動シ
ステム(66、104)レベルにおいては、この図は、
図7と類似である。最低のインターフェイス・レベルに
おいては、しかし、全てのユーザー入力は、共通の“統
合インターフェイス・ソフトウェアー”162を介して
行われる。この新規の構造により、追加的な制御ができ
るようになり、また、以下に更に説明するように新しい
特徴が実現できるようになる。最も低いレベルにおける
キーボード、及び、ポインティング装置データをインタ
ーセプトすることにより、応用プログラムに対して全く
透明な新しい走査を付与することができる。このよう
に、応用プログラムは、このシステムがマウスを含有す
ると“考える”。
【0064】図11の、コンピューター・システムは、
以下のように作動する。統合キーボード166は2進コ
ード化キー・コード、及び、ポインティング装置センサ
ー・データをコミュニケーション・リンク236を渡し
て、統合インターフェイス・ソフトウェアー162に送
る。
【0065】統合インターフェイス・ソフトウェアー1
62には、キー・コードより文字コードへのマッピング
・ソフトウェアー、及び、カーソルをディスプレー・ス
クリーン上で移動させるためのソフトウェアーを含め
た、追加的なポインティング装置データ処理ソフトウェ
アーが含まれる。
【0066】統合インターフェイス・ソフトウェアー1
62のキー・コード処理部分は、キーボード/ポインテ
ィング装置モード変更要求を検知し、表敬するための追
加的ソフトウェアーを有して、キーボード割り込みハン
ドラー72と類似の方法で作動する。ソフトウェアー1
62は、文字コードをキーボード列70に挿入する。作
動システム・キーボード・サービス66は、応用プログ
ラム62による要求時に、作動システム・キーボード列
操作68を介して、列70を読み取る、応用プログラム
は、インターフェイス64を介して、OSキーボード・
サービスにリンクされる。
【0067】統合状態データ158と呼ばれるメモリー
・ロケーションのセットには、操作モード(例えば、タ
イピング、及び、ポインティング)、及び、新しい特徴
(例えば、以下に説明するような可変カーソル・トラッ
キング・コントロール)を追跡するための追加的な状態
データと同様に、ポインティング装置状態データ114
(図6)に包含される全てのものが含まれる。インター
フェイス156、及び、特にインターフェイス160は
同様に以下に記載の新規の統合インターフェイス・ソフ
トウェアーを考慮して必要とされるような、典型的なポ
インティング装置(図6)に見られる相応するインター
フェイス112、及び、116と比較すると追加的なコ
ントロール、及び、特徴を有する。
【0068】ドライバー・インターフェイス・ブロック
152は、OS(作動システム)ポインティング装置1
04、及び、応用プログラム62により必要とされるよ
うなスタンダード・ポインティング装置インターフェイ
スを提供する。応用プログラム、及び、作動システムの
間のインターフェイス、また、作動システム、及び、ド
ライバー・インターフェイス152の間のインターフェ
イス106の双方とも、統合システムの作動が、OS、
及び、応用プログラムに対して透明であるように、典型
的なポインティング装置システムと類似である。
【0069】統合インターフェイス・ソフトウェアー1
62はパス154に示されるように、ドライバー・イン
ターフェイス152とコミュニケートする。
【0070】統合キーボード/ポインティング装置イン
ターフェイス・ソフトウェアー 図12は、統合インターフェイス・ソフトウェアー16
2用のコントロール・フロー・ダイアグラムである。こ
れには、点線99により示される、典型的なキーボード
割り込みハンドラー(図5参照)により実行される処理
が全て含まれる。加えて、統合インターフェイス・ソフ
トウェアー162には、キーボード/ポインティング装
置モード変更要求を検知し、表敬する、ポインティング
装置センサー・データをカーソル位置の変化に変換す
る、キーボード・キースイッチを使用してポインティン
グ装置ボタンをエミュレートする、キーボード・キース
イッチをコントロールとして使用して、ポインティング
装置作動を変更する、また、キーボード・キースイッチ
(188)を使用して、ポインティング装置より、統合
タイピング、及び、ポインティングの最大限能力を提供
するためのソフトウェアーが含まれる。これ等の特徴の
各々は、図12に示されるコントロール・フローの順
に、以下に交互に記述される。
【0071】ハードウェアー読み取り(Read Ha
rdware)ブロック76はコミュニケーション・リ
ンク236(図11)を渡って供給される2進キー・コ
ード/ポインティング装置データを読み取る。データが
読み取られると、チェック・モード(Check Mo
de)ブロック167が、統合キーボード/ポインティ
ング装置の現行モード(例えば、タイピング、或いは、
ポインティング)を測定する。コントロールは、現行モ
ードがタイピングである場合には、Change Mo
de?169に移転し、ポインティングである場合には
ChangeMode?170に移転する。タイピング
/ポインティング・モードは、これが、これ等全ての従
来のキーボード・モードに単に追加したものでなく、こ
れ等の“頂点”に立つ新しいモードになるように、他の
全てのキーボード状態(シフト、キャップス、ロック、
コントロール、及び、alt)を包合する。
【0072】タイピング・モード Change Mode?169は、得られたキー・コ
ード・データが、ユーザーが、統合キーボードのモード
をタイピングからポインティングに変更することを望ん
でいることを表しているかどうかを測定する。この測定
には、一意の事前に決定されるコードについてのチェッ
ク、或いは、多数の以前のコード、及び、その他のキー
ボード・モード(シフト、キャップス・ロック、コント
ロール、alt)に、基づくより複雑なテストを含むこ
ともある。テストにより、統合キーボードをタイピング
よりポインティングに変更すべきだと決定した場合に
は、必要とされる変更は、チェンジ・モード168で実
行される。チェンジ・モード168には、状態データ1
58(図11)にフラッグを設定すること、カーソルの
視覚上の外観を変えること、及び、モード変更をユーザ
ーに知らせることが含まれる。モード変更が完了した後
は、次のデータが受信されるまでは何もする必要がない
ので、コントロールはパスして、割り込み98より復帰
される。
【0073】Change Mode?169が、モー
ドの変更の必要がないと決定した場合には、そのキー・
コードは、典型的なキーボード割り込みハンドラーによ
るのと同様に取り扱われる。このようにして、Shif
t Key78、CapsLock Key82、Co
ntrol Key86及び、ALT Key78につ
いてのテストは行われる。これ等の特殊なキー80、8
4、88及び、92の各々の状態はそれぞれ、必要に応
じて最新化される。Map Key CodeからCh
aracter Code94、Enqueue Ch
aracter Code96及び、Return F
rom Interrupt98は全て、典型的なキー
ボード割り込みハンドラーにおけると同様に作動する。
【0074】ポインティング・モード チェック・モード167が、統合キーボード装置がポイ
ンティング・モードに在ると測定した場合には、ユーザ
ーが再びタイプを開始したいかどうかを測定するため
に、テスト170が実行される。このテストには、単一
データ・アイテムを検査すること、或いは、従来のキー
ボード・モード(シフト、キャップス・ロック、コント
ロール、及び、alt)及び、以前の2進キー・コード
/ポインティング装置データ・アイテムに基づくより複
雑なテストが含まれることもある。Change Mo
de?170が、モードは、タイピング・モードに変更
されるべきと決定した場合には、必要とされる変更が、
チェンジ・モード・ブロック172において実行され
る。
【0075】チェンジ・モード172には、状態データ
158にフラッグを設定すること、カーソルの視覚的外
観を変えること、及び、モード変更をユーザーに知らせ
ることが含まれることもある。必要とされるモード変更
が実行された後は、次のデータが受信されるまでは何も
する必要がないので、コントロールは、復帰98にパス
される。
【0076】Change Mode?170が、モー
ドはポインティングのままであるべきと決定した場合に
は、データについて行われる次のテストは、カーソルの
位置づけデータ、Labeled Pointing
Date?block174についてテストすることで
ある。このテストは、データがポインティング装置位置
づけデータであるか、或いは、キー・コード・データで
あるかを測定する。このテストには、状態データ158
におけるフラッグ、及び、カウンターのチェックと同様
に、データそれ自身内のビットをテストすることが含ま
れることもある。
【0077】Pointing Date?174が、
データはカーソル位置づけデータであると測定した場合
には、カーソルをコンピューター・ディスプレー・スク
リーン上で移動させ、状態データ158におけるカーソ
ルの位置を最新化し、また、ドライバー・インターフェ
イス152(図11)に変更を通知するために、Upd
ate(cursor)Position block
176が実行される。Update Position
176には、カーソルの位置づけデータをカーソルの位
置における変化に変換するためのカーソル・トラッキン
グ・アルゴリズムが含まれることもある。完了すると、
コントロールは移転して割り込み98より復帰する。
【0078】カーソルの移動は、以下のように実行され
る。ポインティング・データが読み取られ(76)、カ
ーソルは約18〜20Hzで作動するキーボード・クロ
ック・割り込みによって駆動される時に、定期的に再位
置づけされる。ユーザーにとって実際に明白な“カーソ
ル速度”は、カーソルが再位置づけされる度毎のカーソ
ルの位置の変化の度合い、及び、再位置づけの頻度に比
例する。クロック速度における変化は、云うまでもな
く、明白なカーソル速度における比例的な変化という結
果になるので、カーソルのトラッキングにおいて、シス
テムのキーボード・クロック率を考慮に入れなければな
らない。
【0079】従って、高い明白なカーソル速度を実行す
るためには、所定の入力フォースが、カーソルの位置に
おける比較的大きな変化に合わせてマップされる。 カ
ーソルを“減速”するためには、位置における変化がス
ケール・ダウンされる。
【0080】キーボードよりのポインティング・データ
に応答することに加えて、位置最新化、或いは、“トラ
ッキング”ソフトウェアー176も同様に、状態データ
に反映されるようなポインティング・イベント・キーの
状態により意味される暗黙の速度コントロールを考慮す
ることができる。
【0081】そのトラッキング・ソフトウェアーは、同
様に、変更ソフトウェアー184により制御される明白
な速度変更セッティング、特定のコンピューター、及
び、ディスプレー・システム用にスタンダード手段によ
って測定されるようなディスプレー解像度、及び、特定
のコンピューター、及び、ディスプレー・システム用に
スタンダード手段によって決定されるようなディスプレ
ー・モード(文字セル、或いは、グラフィック・ピクセ
ル)といったものも考慮に入れる。
【0082】カーソル・トラッキング・ソフトウェアー
を実行する一つの操作的実例は、多重の事前に決定され
るルックアップ・テーブルを使用する。例えば、グラフ
ィック・モード・ルックアップ・テーブルの1セット
は、変更操作((modifyoperation)1
84により制御される明白な速度変更セッティング、及
び、暗黙のポインティング・イベント・キー速度コント
ロール以外の全てを考慮に入れる。2セットの2つのグ
ラフィック・モード・テーブルが配備されるだろう;ポ
インティング・イベント・キーが押されていない時に使
用のための、水平、及び、垂直テーブル・セット、及
び、ポインティング・イベント・キーが押されている時
に使用のための、別の水平、及び、垂直セットである。
【0083】コミュニケーション・リンク236よりの
部分的に処理されたデータが、適当なテーブルへのイン
デックスとして使用される。このテーブル・ルックアッ
プ作業の結果が、カーソルの転位ということだが、これ
は変更操作184における明白なカーソル速度コントロ
ールにより決定されるスケーリング・ファクターによっ
て掛けても良い。この掛け算の後、この転位は、カーソ
ル位置の水平、或いは、垂直コンポーネントにおける変
化として使用される。それから、その転位値を現在の位
置に加えることにより、カーソルの新しい位置が計算さ
れる。水平、及び、垂直の双方の座標を再計算した後、
カーソル画像は、現在の位置より消去され、新しい位置
に描かれる。文字セル・ディスプレー・モード用に、類
似のテーブル・セットを配備しても良い。
【0084】ポインティング・イベント・キーの状態に
従って、異なるテーブルを使用することの利点は、ほと
んどの応用ソフトウェアーの場合には、解放された位置
におけるポインティング・イベント・キーが、何も重要
なことが発生していないことを示すことである。この状
況下で、ユーザーは、一般的にカーソルの再位置づけ時
間を低減するために、カーソルをできるだけ速く移動さ
せたいと望む。
【0085】ポインティング・イベント・キーを押した
場合には、ユーザーは、何か特定的なことを表してお
り、一般的には、カーソルをより制御された方法で移動
させたいと望む。イベント・ボタンが押されていない場
合には、速度が重要であり、押されている場合には、コ
ントロールが重要である。実際面では、ほぼ二次の力対
明白なカーソル速度マッピング・テーブルが、迅速なカ
ーソル位置づけについては、最もよく機能し、ほぼ線型
のマッピング・テーブルが、より制御されたカーソル位
置づけについては、最も良く機能することが判明してい
る。
【0086】ポインティング・イベント “ポインティング・イベント”は、通常的には、カーソ
ル位置づけ、或いは、方向情報以外のポインティング関
連情報のユーザーにより入力される。例えば、先行技術
においては、ポインティング・イベントには、マウス・
ボタンを押すこと、及び、解放することが含まれ、ま
た、同様にマウス・ボタンを“カチッと動かす”ことと
引用された。ポインティング・イベントは、カーソルの
現在の位置に関連するアイテムを選択する機能を果たせ
る。或いは、ポインティング・イベントは、事前に選択
されたテキストを、カーソルの現在のロケーションに移
動させるための要求をシグナルすることができる。
【0087】本発明に従えば、統合キーボードにおける
キースイッチのうちの1つ、或いは、複数が、ポインテ
ィング・イベントをエミュレートするために指定され
る。これ等は、ポインティング・イベント・キーと呼ば
れる。統合キーボードがポインティング・モードに在る
場合には、ポインティング・イベント・キーのうちの1
つを起動させることは、ポインティング・イベントと見
傲される。これにより、ユーザーが、その手をキーボー
ドより移動させないで、ポインティング・イベントを入
力できるようにする。全てのタイピング、及び、ポイン
ティング操作が、通常のタイプ位置より行えるように、
D及び、Fキー、或いは、キーボードのホーム列上の別
のキーを、ポインティング・イベントをエミュレートす
るように指定することが望ましい。この特徴により、時
間が大幅に節約でき、統合キーボードのユーザーに、人
間工学面の利点が提供される。ポインティング・イベン
ト・エミュレーションは、以下のように、望ましい実施
例で実行される。
【0088】再び、図12に関して云えば、テスト17
4が、2進キー・コード/ポインティング装置データが
ポインティング装置データではないと決定した場合に
は、そのデータは、キー・コード・データであることが
分かる。その場合、コントロールはテスト178にパス
し、ポインティング装置ボタン・エミュレーションにつ
いてのデータをテストする。
【0089】データが、ポインティング装置ボタンをエ
ミュレートするよう指定されるキーボード・キースイッ
チのいずれかを表している場合には、キー・コード・デ
ータは、ブロック180にパスされ、そこで、これは、
ポインティング装置ボタン状態における変化に変換さ
れ、状態データ158(図11)にストアーされる。こ
の情報は、多くの方法で使用できる。例えば、ポインテ
ィング・イベント中のカーソルの意図されぬ移動の影響
を最小限にするために、ある応用例において、ポインテ
ィング・イベントに応答して、一定の事前に決定される
期間、カーソルの動きを一次的に凍結させることも有用
であろう。
【0090】ソフトウェアー180は、このように、マ
ウス・ボタンといったポインティング装置イベント・ボ
タンの使用をエミュレートする。配列内のキースイッチ
のほぼ全てが、ポインティング装置ボタンをエミュレー
トするように指定されることができるので、そのように
指定されるキースイッチの数は、キーボード上のキース
イッチの数によってのみ制限される。この特徴により、
2つ或いは、3つボタンの単立ポインティング装置と比
較して、ポインティング作動において、より弾力性が提
供される。エミュレーション行動180が完了すると、
コントロールはブロック184にパスされ、ここで、カ
ーソル・トラッキング・アルゴリズムをエミュレートさ
れたポインティング装置ボタンの状態に従って変更する
といったような、ポインティング装置の作動に対する暗
黙の変更が実行される。
【0091】暗黙のモード変更のための代替インターフ
ェース・ソフトウェアー 図12ブロック167、168、169、170および
172に相当するプロセスは、モード変更がその目的の
ために定義される事前に決定されるキーボード・イベン
トにより明白に実行されるシステムを表す。
【0092】統合キーボード、およびポインティング装
置システムは、暗黙のモード変更、つまり明白に上記記
載のモード変更に向けられた行動以外の、ユーザーのキ
ーボードでの行動に応答して、タイピング・モードより
ポインティング・モード操作にスイッチできるように配
列できる。モードを変更しようとするユーザーの意図
は、キーボードでのユーザーの行動により誘引できる。
例えば、ポインティングを開始しようと意図するユーザ
ーは、ポインティング・キーを押し、通常タイピングの
時に行われるより長い時間押したままでいることがあ
る。タイピング・モードの間であれば、これらの行動は
ポインティング・モードへの変更が望まれているという
ことを表すために使うことができる。
【0093】しかし、モード変更が適正であるかどうか
は、ポインティング・キーを押した後のユーザーの行
動、およびこれらの行動のタイミングによって決まる。
であるから、タイピング・モードにおいてポインティン
グ・キーを押すことに応答して、システムは中間の”w
ait and see”モードに入り、後続して最終
的にポインティング・モードにスイッチするか、あるい
は通常のタイピング・モードを回復するかを決定する。
この図17〜25に表されている意志決定プロセスは、
実質的にはユーザーに明白であるように実行される。
【0094】我々は、タイピング対ポインティングにつ
いてのキーボード・イベント(通常的にはキーを押すこ
と)間のタイム・インターバルの分布が顕著に異なるこ
とを発見した。グラフィック的には、これらの分布は、
2モードの確立曲線に似ている。タイピングの時には、
キーが押し下げられている時間の量は、典型的には10
0ミリ秒以下である。しかし、ポインティングの場合に
は、キーが押し下げられている時間の量は、典型的には
500ミリ秒以下ではない(多くの場合、ユーザーのト
ラッキング応答時間が約400ミリ秒であるという事実
による)。
【0095】同様にタイピングの時には、ある特定のキ
ーが押された後で、すぐに例えば約200ミリ秒内に第
2のキーが押されるか解放されることが通常である。し
かし、ポインティングの場合には、ポインティング・イ
ベント・ボタンが押される前には、少なくとも約300
ミリ秒が経過する。わずかな間隔であったとしても、カ
ーソルを再配置するには、少なくともそれだけの時間が
必要である。
【0096】暗黙のモード変更を行うために、本システ
ムはタイピング・モードで検知されるポインティング・
キーの押しを以下のように処理する。第1に、ポインテ
ィング・キーの押しは、最終にこれが通常のタイピング
・イベントとして処理されないという点でインターセプ
トされる(典型的には、それはキーの押しをマッピング
し、それをキューに入れることになる)。そうではなく
て、本システムはポインティング・キーの押し以後経過
したタイム・インターバルのモニターを開始し、第2の
キーボード・イベントを検知するためにキーボードをモ
ニターする。第2のキーボード・イベントを検知するこ
となく十分な時間が経過した後、ポイントするという意
図が誘引され、システムはポインティング・モードの操
作にスイッチする。これは約400ミリ秒後の安全な結
論である。
【0097】逆にポインティング・キーの押しの後すぐ
に、つまり約100ミリ秒以内に第2のキーボード・イ
ベントが検知された場合には、ユーザーが通常のタイピ
ング・モードに留まることを意図しているものと結論づ
けられる。従って、システムはまずポインティング・キ
ーの押しを処理し、それから第2のキーボード・イベン
トを通常のタイピング・イベントとして処理する。”w
ait and see”の数100ミリ秒の遅れは、
ユーザーにとって妨げになるものではない。
【0098】暗黙のモード変更の実行 いま説明した方法の、および第2のキーボード・イベン
トが100〜400ミリ秒以内に”wait and
see”ウィンドーに到着した時にモードを変更するか
どうかを決定する方法の実行について以下に記述する。
【0099】キーボード上のどのキーでも、センサーに
強制してポインティング・キーとしての役割を果たさせ
るためにカップリングできるので、ここでは”ポインテ
ィング・キー”と交換可能な”J”キーについて言及す
る。
【0100】”J”キーを押すと、コーディング・キー
(SHIFT、CONTROLおよびALT)状態がチ
ェックされる。これらのうちのいずれかが押し下げられ
たままでいる場合には、ユーザーはタイプをしたいと考
えていると想定され、押された”J”キーは通常的にパ
スされる。コーディング・キーのうちのどれも押されて
いない場合には、”J”がタイピングかポインティング
の意図を持って押されたのかどうかはまだ決定できな
い。
【0101】”J”キーが押されたという事実は内部に
格納され、タイマーが開始される。タイマーは、例えば
キーボード・コントローラーのハードウェア・タイマ
ー、あるいはソフトウェア・ループ、またはホスト・プ
ロセッサーよりの何らかのインターラプト・シグナルな
どを使用して、多様な方法で実行できる。望ましく
は、”J”キーの押しに応答して、キーボードがポイン
ティング・センサー・データ・パケットの送信を開始す
るよう指示を受けるのがよい。センサー・データ・パケ
ットの受け取りは、タイマーをクロックするためのタイ
マー・インターラプトとして使用される。このパケット
は読み込まれ、パーズされるが、少なくとも初期的には
センサーの運動を引き起こすためには使用されない。
【0102】図17は、暗黙のモード変更フィーチャー
を実行するためのタイムラインを示す。示されるよう
に、0から5までの番号を与えられた6つの状態があ
る。各々の状態は、次の先行状態の結論後、約100ミ
リ秒のインターバルの間拡がる。これらの時間は概算で
あって、個々のニーズに合うように変更しても構わな
い。状態0は、通常のタイピング・モードである。ポイ
ンティング・キーの押しに応答して、状態は状態1に前
進し、ポインティング・キーの押しの後経過した時間の
モニターを開始するために使用可能とされる。
【0103】図18〜25は、暗黙のモード変更の方法
論のフローチャートである。これらのフローチャートの
全てにおいては、以下の規定が適用される。コントロー
ルはフローチャートの上端で開始し、一般的にはボトム
方向に流れる。決定はプロセス、あるいはステップ記述
において疑問符(?)により表される。コントロール
は、肯定的な決定より右の方向へ流れる。
【0104】図18は、タイマー・インターラプトのた
めのフローチャートである。このプロセスはタイマーが
使用可能(開始)にされない限り実行されない。まずカ
ウンターが増分される。次に現在の状態がチェックされ
る。後続する状態を有する各々の状態について、カウン
トの数値が現在のタイム期間(状態)が経過したかどう
かを見るためにチェックされる。現在の期間が終える
と、状態は次の状態に移行する。加えて、以下により詳
細に説明する場合においては、特殊な行動が実行され
る。
【0105】図19は、キーボード・インターラプト・
ルーチンの新規の、あるいは変更された部分を示す。こ
こでは、いずれかのハンドシェーク・プロトコル、およ
びいずれかのセンサー・データ・パケットがすでに処理
されてしまったものと想定される。また中間、あるい
は”wait and see”状態中に、第1のポイ
ンティング・キーの押しの後に(自動繰り返しの結果)
検知されるポインティング・キーの押しは無視されるも
のと想定される。フローチャートに示されるように、キ
ーボード・インターラプトに応答してコントロールは、
現在のタイミング状態に相当する図20〜25のうちの
それぞれの1つにパスする。例えば、状態0の間の第1
のキーボード・インターラプトに応答して、コントロー
ルは図20のフローチャートにより表されるプロセスに
パスする。
【0106】タイミング状態0 ここで図20に関して言えば、システムはキーボード・
イベントがポインティング・キーの押しであるかどうか
を決定するためのチェックをする。第1のキーボード・
イベントがポインティング・キーの押しである場合に
は、システムはコーディング・キーの状態をテストす
る。コーディング・キーのうちのいずれかが同様に押さ
れる場合には、ポインティング・キーの押しは通常的に
処理され、システムはタイピング・モードに留まる。”
通常的に処理される”という表現によって、ポインティ
ング・キーの押しは、通常のタイピング・モードにおけ
るいずれのキーボード・イベントと同様の方法で更に処
理されるということを意味する。例えば、ポインティン
グ・キーの押しに相当するキーコードは、応用プログラ
ムへの移行のためにキューに入れても構わない。そうし
た移行の特定事項は知られている。
【0107】タイプをしようとするユーザーの意図は、
ポインティング・キーと組み合わせたコーディング・キ
ーの使用により誘引される。これは多くの知られたタイ
ピング・イベントを検知し、ユーザーが望むのであれ
ば、自動繰り返し機能がポインティング・キー上で作動
できるようにする。例えば、下段文字Jを繰り返すに
は、ユーザーはCAPS LOCKを呼び出し、SHI
FTを押して保持し、”J”を押して保持すれば良い。
自動繰り返しが機能し、システムはタイピング・モード
に留まる。
【0108】ここで図20の右側について言えば、第1
のキーボード・イベントがポインティング・キーの押し
であり、コーディング・キーのうちのいずれもが一緒に
押されていない場合には、状態は状態1”wait a
nd see”状態にセットされる。システムは、タイ
マーを使用可能にすることによりポインティング・キー
の押し以後経過した時間のモニターを開始する。システ
ムは、同様にポインティング・キーよりのセンサー走査
データの入手を開始する。
【0109】状態1は、図21に相当する”wait
and see”状態である。この状態で第2のキーボ
ード・イベントが発生すると、ユーザーがタイピングを
継続することを意図していると推論される。従って図2
1に関して言えば、システムはポインティング・キーの
押しをキューに入れ、状態0にリセットし、タイマーを
停止し、センサー・データの入手を停止して、新規の
(第2の)キーボード・イベントを通常的に処理し、シ
ステムが通常のタイピング・モード操作を回復できるよ
うにする。
【0110】タイミング状態2 3つのイベントが継続的にモニターされる、つまり”
J”キー・ゴーイング・バック・アップ(ポインティン
グ・キーの解放)、他のキーボード・イベント、および
タイマーである。図18に関して言えば、システムが状
態1に在り、経過した時間が約100ミリ秒を超えた場
合、状態は状態2に前進する:現在のカーソル位置は退
避(登録)される:そして、その後にカーソルは移動を
開始できるようにされる。
【0111】状態2の間に、タイマーが事前に決定され
たタイム・インターバル、約200ミリ秒を超える場合
には、状態は状態3に前進する(図18参照)。他方、
第2のキーボード・イベントが状態2の間に検知された
場合、コントロールは図22のフローチャートにより表
されるコードにパスする。
【0112】図22に示されるように、この場合システ
ムは通常のタイピング・モードを回復する。特定的に
は、タイピング・モードを回復することには、タイピン
グ・イベントとして更に処理するためにポインティング
・キーの押しの表示を作成すること:状態0にリセット
すること:タイマーを停止すること:センサー・データ
の入手を停止すること:カーソルを初期の位置に復帰さ
せること:および、第2のキーボード・イベントを通常
的に処理することが含まれても構わない。
【0113】タイミング状態3 説明したように、タイミング状態2の間にキーボード・
イベントが発生しない場合には、システムは状態3に前
進し、次のキーボード・イベントを検知するためにキー
ボードをモニターし続ける。従って、ポインティング・
キーの押し以後経過した時間が、第2のタイム・インタ
ーバルよりも大きく、第2のキーボード・イベントが検
知されなかった場合には、システムは状態3に留まる。
【0114】この状態では、第2のキーボード・イベン
トの検知に応答して、コントロールは図23のフローチ
ャートにより表されるコードにパスする。ここでシステ
ムは、第2のキーボード・イベントがポインティング・
キーの解放であるかどうかを決定するためにテストをす
る。第2のキーボード・イベントがポインティング・キ
ーの解放ではない場合には、システムはこれがポインテ
ィング・イベントであるかどうかを決定する。第2のキ
ーボード・イベントがポインティング・イベントであれ
ば、そのポインティング・イベントはキューに入れら
れ、システムはポインティング・モードの操作にスイッ
チする。
【0115】分かりやすく言うと、状態3はポインティ
ング・キーの押しの後、約200から300ミリ秒まで
のインターバルに相当する。このインターバルの間に起
こる可能性のあることは、ユーザーがまだ確実ではない
のに、ポインティングを開始しようと意図することであ
る。しかし、次のキーボード・イベントがポインティン
グ・イベント・キーとして指定されるキーのうちの1つ
を押すというようなポインティング・イベントである場
合には、ポインティング・モードが望まれているものと
結論づけられる。ここでの仮定は、ユーザーが”
F”、”D”あるいは、”S”の続く”J”をタイプし
たいと思う可能性は、ポインティング・イベントを望ん
でいる可能性よりも低いというものである。これは、タ
イピング・イベントが200ミリ秒以下で想定され、そ
の後にポインティング・イベントが想定されるように条
件づけられる。我々は、あるキーが約300ミリ秒より
も長く押し下げられている場合には、ユーザーがポイン
トしようと意図しない限り、別のキーが押される可能性
は極めて低いということを発見した。
【0116】再び図23に関して言えば、第2のキーボ
ード・イベントがポインティング・イベントでなく、あ
るいはこれがポインティング・キーの解放である場合に
は、システムはタイピング・モードの操作を回復する。
タイピング・モードの操作の回復のためにとられる特定
のステップは、図22に関連して上記で説明したものと
同じである。
【0117】タイミング状態4 経過した時間が第3のタイム・インターバル(300ミ
リ秒)より大きく、第2のキーボード・イベントが検知
されなかった場合には、図18に示されるように、状態
は状態4に進められる。第2のキーボード・イベントが
状態4の間に検知される場合には、コントロールは図1
9のキーボード・インターラプト・フローチャートに従
って、図24のフローチャートに相当するコードに方向
づけられる。
【0118】図24に関して言えば、システムは第2の
キーボード・イベントがポインティング・キーの解放で
あるかどうかを決定するためにテストをする。第2のキ
ーボード・イベントが図24の左側に示されるように、
ポインティング・キーの解放でない場合には、第2のキ
ーボード・イベントはポインティング・マクロとして処
理され、状態は状態5に進められる。つまり、システム
はポインティング・モードの操作にスイッチする。言い
換えれば、図1のタイムラインに関して言えば、ポイン
ティング・キーが300ミリ秒以上押し下げられていた
場合(状態4)、およびポインティング・キーの解放以
外のポインティング・イベントが検知された場合には、
それはポインティング・マクロと想定され、システムは
ポインティング・モードの操作にスイッチされる。他
方、イベントが図24の右側に相当して、ポインティン
グ・キーの解放である場合には、システムは上記説明と
同じ方法でタイピング・モードの操作を回復する。
【0119】タイミング状態5 再び戻って図18に関して言えば、ポインティング・キ
ーの押し以後経過した時間が第4の事前に決定されるイ
ンターバル約400ミリ秒よりも大きい場合には、ポイ
ンティング・モードが仮定される。であるから、システ
ムはユーザーよりのそうするようにとの明白な指示がな
くてもポインティング・モードの操作にスイッチする。
これはタイミング状態5に相当する。タイミング状態5
においては、キーボード・インターラプトは、図25の
フローチャートに従って処理される。図25に関して言
えば、この状態でのキーボード・イベントの検知に応答
して、システムはイベントがポインティング・キーの解
放かどうかを決定するためにテストをする。そうでない
場合には、この新規のキーボード・イベントはポインテ
ィング・マクロとして処理される。代替的に、キーボー
ド・イベントが図25の右側に示されるように、ポイン
ティング・キーの解放である場合には、システムはスイ
ッチしてタイピング・モードの操作に戻る。特定的には
状態が状態0にリセットされ、タイマーは停止され、セ
ンサー走査データの入手が停止される。このようにし
て、システムは上記説明のようにタイピング・モードの
操作を回復する。
【0120】先行のモード変更原則は、統合されたキー
ボードを持つ従来のコンピュータ以外のシステムにも適
用される。例えば、どのような電気器具でも多機能キー
スイッチを配備することができる。その器具は、そこに
おいて多目的キースイッチが2進の機能(押し、および
解放)を有するコンピュータ・キーボード・システムの
タイピング・モードに類似する第1の操作モードを持っ
ても構わない。その器具は、上記説明の方法を用いて多
目的キースイッチより、ポインティングあるいはポイン
ティング方向情報を入手するために第2のモードにスイ
ッチされるような構成になっていてもよい。
【0121】統合キーボード・システムの相互作用的ユ
ーザー・モディフィケーション 図12に戻って統合システムの明白な変更、つまり、ユ
ーザーにより要求される、作動においての変更につい
て、次に記述する。テスト178が、キー・コード情報
は、ポインティング・イベント・キースイッチのうちの
いずれをも表していないと測定した場合には、コントロ
ールは、テスト182にパスされ、そのキー・コード
が、ポインティング装置の作動、或いは、統合キーボー
ド・システムの別の範囲を修飾するために割り当てられ
るキースイッチを表すかどうかを測定する。そうしたキ
ースイッチは、モディファイ・オペレーション・キース
イッチと呼ばれ、以下により詳細に記述する多数の業務
を行える。キー・コードが、モディファイ・オペレーシ
ョン・キースイッチを表す場合には、コントロールは、
モディフィケーション・ソフトウェアー184にパスさ
れる。モディフィケーション・ソフトウェアー184
は、キー・コード情報を使用して、求められるシステム
の作動を変更する。
【0122】記述されたタイプのシステムにおいては、
こうした変更には、システムの動きに対しての広範囲の
変更が含まれても良い。これ等の変更のあるものの効果
は、先行技術において知られているが、これ等を達成す
るための公知の方法は全く異なり、また、はるかに効率
の悪いものである。他の変更は、この新規の統合キーボ
ード・システムにのみ適用可能である。
【0123】実例を挙げると、第一に応用プログラムを
離脱して、カーソル速度を変更するために特殊なプログ
ラムを実行し、その後に、望みの応用プログラムに再び
入ることにより、マウス・システムにおける明白なカー
ソル速度を変えることが知られている。統合システムに
おいては、カーソルの加速(或いは、減速)機能に割り
当てられるキースイッチを1回だけストロークさせた
ら、同じ結果が達成できる。変更がより迅速に、また、
ユーザーの作業を重大に妨害することなく行えることは
明白である。重要なことは、速度コントロールが、ユー
ザーが速度調整の結果を即座に知るという点で、相互作
用的であることである。必要と思われる場合には、それ
以上の調整も、即座にできる。
【0124】別の実例的変更は、ポインティング・モー
ドにより離脱するための条件を変えることである。云い
換えれば、ポインティング・ロック・モードに入るとい
うことであるが、そこでは、ユーザーは、タイピング・
モードを再開するためには、ポインティング・キーを解
放するだけではだめである。例えば、ポインティング・
モードに在るうちに、スペース・バーを押すと、ポイン
ティング・ロック・モードに入る配列になるかもしれな
い、そうすると、システムは、Jキーが解放されたとし
ても、ポインティング・モードより離脱しない。システ
ムは、スペース・バーを押した時にのみ、タイピング・
モードに復帰することはある。
【0125】モディファイ・オペレーション・キーの更
に別の使用法は、ポインティング装置の軸をロック/ア
ンロック、或いは、変更することである。過去において
は、こうした変更は、特殊な追加マウス・ボタン、或い
は、応用レベルで特別のソフトウェアーを実行すること
によって行われてきた。これ等の選択を変更キーで行え
ば、より迅速で、より分裂的でなくなる。
【0126】モディファイ・オペレーション・キーで実
行できるシステム変更の別の例は、カーソル・トラッキ
ング・アルゴリズムを変更することである。例えば、多
種の事前に定義されるトラッキング・アルゴリズムが提
供され、そのうちの各々が、例えば、ワード・プロセシ
ング、CAD等々といった特定の応用に最適化されてい
る。一回キーをスクロールさせれば、カーソル制御につ
いての最善のトラッキング・アルゴリズムが選択でき
る。指定されるモディファイ・オペレーションが完了す
ると、コントロールは復帰98にパスされる。
【0127】更に別の変更は、右、及び、左手の作業の
間の統合キーボードをトグルすることである。例えば、
QWERTYキーボード上の右手モードにおいて、Jキ
ーはポインティング装置で、D及び、Fキーはポインテ
ィング・イベント・キーとして有効に使用される。左手
モードに切り換えると、Fキーはポインティング装置で
あり、J及び、Kキーがポインティング・イベント・キ
ーとなる。この特徴には、2つの多目的キースイッチ
(F及び、Jの位置に配置)が必要だが、そうでない場
合には、ポインティング・モードについての影響を受け
るキーの解釈を単に変えることによって、ソフトウェア
ーにおいて容易に実行できる。このように、モディファ
イ・オペレーション・キーについてのテストでは、左手
モードの場合、ポインティング・イベントを検知するた
めにはJ及び、Kを探すのに対して、右手モードにおい
ては、同じ目的のためには、D及び、Fを探す。これ等
の例は、統合キーボード・システムで使用可能な機能を
例示し始めるだけである。実質的にこれ等の全ては、低
い方のソフトウェアー・レベルにおいて、つまり、割り
込み、及び、ドライバー・レベルにおいて実行できるの
で、応用ソフトウェアー、及び、作動システムに対して
透明である。
【0128】モディファイ・オペレーション・キーの別
の例示的使用方法は、マクロ用である。テキストのセグ
メント、及び/或いは、プログラム・コマンドのストリ
ングについての省略として使用されるマクロはよく知ら
れている。この統合システムにおいては、マクロは、カ
ーソルの運動、ポインティング・イベント、及び、キー
ボード・ストロークの混合を含むことができる。例え
ば、あるマクロは、カーソルを動かし、メニューを引き
下ろし、そして、あるアイテムを取り上げるようにセッ
トできる。この特徴は、ここに記述される統合システム
環境に、容易にプログラムできる。
【0129】ポインティング装置変更(182)につい
てのテストが、キー・コードは何らの他の変更要求を表
していないと決定した場合には、コントロールは、マク
ロ拡張188についてのテストにパスされる。マクロ拡
張(Macro Expand)188は、キー・コー
ドが現在の所、拡張を必要としているマクロ・コマンド
であるかどうかを決定する。その場合には、マクロは拡
張され、コントロールは、Change Mode?1
70にパスされ、そこで、拡張されたデータが操作され
る。
【0130】マクロ拡張188が、キー・コードは現在
のところ、マクロ拡張用に指定されているものではない
と決定した場合には、コントロールは、タイピング・エ
ミュレーション・テスト、“Alpha Emulat
e”ブロック186にパスされる。アルファ・エミュレ
ート186は、キー・コードが現在のところ、タイピン
グ操作にマップされ戻されているかどうかを決定する
が、そうである場合には、コントロールは、シフト・キ
ーについてのテスト“Shift?”78にパスされ、
キー・コード処理は統合装置モードが、ポインティング
ではなくて、タイピングをしていたかのように続行す
る。この特徴は、それにより、ユーザーがタイピングデ
ータを入力するのに応答して、装置を一時的に、自動的
に、効率的にタイピング・モードに変更する。ユーザー
は、明示的にモードを変更することなく、ポインティン
グ活動を再開できる。テスト186が、キー・コードが
現在のところタイピング操作にマップされ戻されていな
いと決定した場合には、コントロールは、復帰98にパ
スされ、キー・コードは効果的に無視される。
【0131】本開示を考慮すれば、前記ソフトウェアー
の実行の詳細は、当業者には明白であろう。
【0132】コンピューターにおいて実行されるものと
して、統合キーボードにおけるものと区別されるものと
して示された各種の特徴は、これ等が、コンピューター
のハードウェアーを変更せずに、各種のコンピューター
・システムで採用できるように。ソフトウェアーにおい
て実行されることが望ましい。
【0133】統合システムの操作 図13は、本発明に従う統合キーボードについてのユー
ザー・フロー・チャートを示す。図は、統合システムを
使用中のコンピューター・ユーザーの決定、及び、行動
のコントロール・フローを表す。ユーザーが、タイピン
グ、及び、ポインティング活動双方を必要とするタスク
を開始したら、ユーザーは繰り返し、ポイントかタイプ
かの精神的決定をしなければならない122。決定がタ
イプすることである場合には、統合装置のモードがタイ
ピング・モードにあることを確認するために、ユーザー
がすでにタイプをしているかを知るためのテスト134
を行わねばならない。そうでない場合には、タイピング
・モード192に変更しないとタイプが開始できない。
このモード変更は、手をキーボードのタイプ位置におい
たままで行える簡単な行動である。タイピング・モード
にされれば、ユーザーはタイプ138に前進する。
【0134】決定122が、ポイントすることである場
合には、統合装置がすでにポインティング・モードにあ
ることを確認するために、ポインティングがすでにされ
ているか124を知るためのテストをしなければならな
い。そうである場合には、ユーザーは続行するだけでよ
い。そうでない場合には、キーボードをポインティング
・モード190に変更し、カーソル194に通知しなけ
ればならない。
【0135】ポインティング・モード190への切り換
えは、手をキーボードのタイプ位置においたままで行え
る。モード変更に応答して、システムは、カーソル画像
を、ディスプレー・スクリーン上で、例えば、これを間
断的に拡大させてフラッシュさせるので、これを見つけ
るのは容易である。人間の目の周辺面の視覚は、明る
さ、及び、運動における変化に気づくのに、極めて良く
適しているので、カーソルの外観の変化に気づくのは、
特に容易である。このように、カーソルを最後に見かけ
た場所を憶えていたり、偶然に視野の中に有していた
り、或いは、カーソルの動きを検知するために、ポイン
ティング装置を起動させたりする必要はない。
【0136】統合装置をポインティング・モードに設定
してしまえば、ポインティング装置は130を操作で
き、有用な行動がとれる。ポインティング・イベント
は、キーボード・キー196を押し、保持し、或いは、
解放することにより表される。統合システムのこの性状
により、ユーザーは手をタイプ位置においたままで、ポ
インティング・イベントを示すことができるのである。
典型的なポインティング装置操作には、カーソルを繰り
返し動かし、キースイッチを押すことが含まれることが
ある。
【0137】行動の中断があり、或いは、行動の変更が
必要になる場合には、ユーザーは、ループ140を介し
てポイントかタイプ122かの決定に、効果的に復帰す
る。
【0138】カーソル速度制御 図14は、統合キーボードを使用して、カーソル速度を
変更するためのユーザー・フローチャートである。いう
までもなく、システムがポインティング・モードにある
ことを想定している。ユーザーは、カーソル速度が許容
可能かどうか198を決定、または、変更すべきかどう
かを決定することにより開始する。現在の速度が遅すぎ
る場合には、ユーザーは事前に決定されるキーボード・
スイッチ(例えばRキー)204を押して加速すること
ができる。速すぎると思われる場合には、カーソルの減
速は、事前に決定される、キーボード・キースイッチ
(例えばVキー)206を押すと同じように簡単にでき
る。適正なキースイッチを押したらば、ユーザーはカー
ソル208を動かして、変更の効果を測定し、再び速度
が許容可能か198を決定する。速度がそれでも適正で
なければ、前記ステップを繰り返す。
【0139】カーソル速度が適正になったら、コントロ
ールはDone210に転移し、ここで、押されていた
速度変更キースイッチはすべて解放される。このプロセ
スは、継続的であっても良い;ユーザーは、レート制御
キースイッチを押し、カーソルを速度が望みのレートに
達するまで移動させ、スイッチを解放するだけでよい。
こうすればユーザーは、応用プログラムを離脱すること
なく、また、実際に、手をタイプ位置より離すことな
く、カーソル速度変更という即時のフィールドバックが
得られる。
【0140】モード変更スイッチ 図15は、キーボードの他のキー方向と同様に、下方キ
ーボード内に押すことが特徴である、本発明に従う、従
来のキーボード上のスペース・バーの変更を表す。スペ
ース・バー214は、例となるキーボード・キー212
の下方、及び、前方の従来の位置に示されている。モー
ド変更バー216は、ユーザーの親指によりすぐに操作
できるように、スペース・バー214の前方面に配置さ
れている。手がタイプ位置にある場合には、親指の自然
の握り行動によって、これ等を、モード変更バー216
を更に、スペース・バー214の全面に押し込ませるよ
うにさせ、スペース・バーの下方に組み付けられたモー
ド変更キースイッチを起動させる。
【0141】これの望ましい実施例において、本発明の
原理原則を図示し説明してきたが、当業者にとっては、
本発明を、それ等の原理原則より逸脱することなく、配
列、及び、詳細において変更できることは明白であるに
違いない。特に、しかし限定されることなく、ハードウ
ェアー及び、ソフトウェアー間の機能の割当は、特定の
公用例についての多くのデザインの可能性に従って、広
範に変更されるものである。ここに開示された原理原則
は、本発明の原理原則より逸脱することなく、デザイン
選択の問題として、ハードウェアー、及び、ソフトウェ
アーの多くの異なる組み合せにおいて実施可能である。
我々は、付随する請求項の精神、及び、範囲内に入る変
更形全てを請求するものである。
【図面の簡単な説明】
【図1】キーボード、及び、マウス・ポインティング装
置を含有する先行技術のコンピューター・システムの図
である。
【図2】先行技術のコンピューター・キーボードの高水
準ブロック・ダイアグラムである。
【図3】先行技術のコンピューター・キーボード処理フ
ローチャートである。
【図4】キーボード・データの処理にかかわり合うソフ
トウェアー・エレメントの先行技術高水準システム・ブ
ロック・ダイアグラムである。
【図5】先行技術のコンピューター・キーボード割込み
ハンドラー・システム用のコントロール・フロー・ダイ
アグラムである。
【図6】ポンティング装置データの処理にかかわり合う
先行技術のソフトウェアー・エレメントの高水準システ
ム・ブロック・ダイアグラムである。
【図7】図1に示されるタイプの先行技術のコンピュー
ター・システムのシステム・ブロック・ダイアグラムで
ある。
【図8】図1に示されるタイプの先行技術のコンピュー
ター・システムを使用している間のコンピューター・ユ
ーザーの決定、及び行動のコントロール・フローを示す
ユーザー・フローチャートである。
【図9】本発明に従う統合キーボード、及び、ポインテ
ィング装置システムのハードウェアー・エレメントの高
水準ブロック・ダイアグラムである。
【図10】図9の統合コンピューター・キーボード、及
び、ポインティング装置システムのための高水準処理コ
ントロール・フローを示すフローチャートである。
【図11】図9に示されるタイプの統合キーボード、及
び、ポインティング装置を含有するコンピューター・シ
ステムのシステム・ブロック・ダイアグラムである。
【図12】図9−11の統合キーボード、及び、ポイン
ティング装置を実行するための統合インターフェイス・
ソフトウェアーのフローチャートである。
【図13】図9−12に示されるタイプのコンピュータ
ー・システムを使用の間のコンピューター・ユーザーの
決定、及び、行動のコントロール・フローを表すユーザ
ー・フローチャートである。
【図14】本発明に従う統合ポインティング装置速度コ
ントロールを使用の間のコンピューター・ユーザーの決
定、及び、行動のコントロール・フローを表すユーザー
・フローチャートである。
【図15】スペース・バーの前方面に、サム・スイッチ
を含有するように変更された従来のキーボード上のスペ
ース・バーの拡大透視図である。
【図16】キーボード上のスペース・バーの前に配置さ
れた一対のサムスイッチの拡大透視図である。
【図17】タイミング・キーボード・イベント用に使用
される連続する6つの分離した状態を含むタイムライン
を示す。
【図18】事前に決定されたタイム・インターバルの結
論の後に後続の状態に移行するために使用されるタイマ
ー・インターラプトのためのフローチャートである。
【図19】キーボード・インターラプト・フローチャー
トの変更された部分を示す。
【図20】タイミング状態0の間にキーボード・インタ
ーラプトを処理するための方法のフローチャートであ
る。
【図21】タイミング状態1の間にキーボード・インタ
ーラプトを処理するための方法のフローチャートであ
る。
【図22】タイミング状態2の間にキーボード・インタ
ーラプトを処理するための方法のフローチャートであ
る。
【図23】タイミング状態3の間にキーボード・インタ
ーラプトを処理するための方法のフローチャートであ
る。
【図24】タイミング状態4の間にキーボード・インタ
ーラプトを処理するための方法のフローチャートであ
る。
【図25】ポインティング・モードの操作中にキーボー
ド・インターラプトを処理するためのフローチャートで
ある。
【符号の説明】
23,236 コミュニケーション・リンク 24 キーボード 25 キーの列 26 ポインティング装置 27 マウス・ボタン 28 コンピュータ 29 ディスプレー・ターミナル 30,32,230,232 キースイッチ 34,234 マイクロプロセッサー・システム 36 キーボード・コミュニケーション・リンク 212 キーボード・キー 214 スペース・バー 216 モード変更バー 238 センサー 240 A/D変換回路 242 バス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 デイヴィッド エイチ. ストレーヤー アメリカ合衆国 97017 オレゴン州 コ ルトン 23050 ハイウェイ 211

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 タイピング・モードの操作とポインティ
    ング・モードの操作を有し、タイピング・キーのうちの
    1つが同様にポインティング・キーでもあるタイピング
    ・キーを含む複数のキーを有するキーボード、およびカ
    ーソルを有するディスプレー・スクリーンを含むコンピ
    ュータ・システムにおいて、以下のステップより成る。
    タイピング・モード、およびポインティング・モード間
    のスイッチングの暗黙の方法:タイピング・モードの操
    作の間に、第1のキーボード・イベントを検知するため
    にキーボードをモニターすること:第1のキーボード・
    イベントの検知に応答して、ポインティング・キーの押
    しについてテストすること:第1のキーボード・イベン
    トがポインティング・キーの押しでない場合に、第1の
    キーボード・イベントを通常的に処理すること:および
    第1のキーボード・イベントがポインティング・キーの
    押しである場合に、ポインティング・モードにスイッチ
    するかどうかを決定するために、ポインティング・キー
    の押し以後経過した時間をモニターすること。
  2. 【請求項2】 更に以下より成る請求項1に記載の方
    法:第1のキーボード・イベントがポインティング・キ
    ーの押しである場合に、コーディング・キーの状態をテ
    ストすること:およびコーディング・キーのうちのいず
    れかが同様に押されている場合、ポインティング・キー
    の押しを通常的に処理し、タイピング・モードの操作を
    回復すること。
  3. 【請求項3】 更に以下より成る請求項1に記載の方
    法:第1のキーボード・イベントがポインティング・キ
    ーの押しである場合に、第2のキーボード・イベントを
    検知するためにキーボードをモニターすること:および
    第2のキーボード・イベントの検知に応答して、経過し
    た時間が第1の事前に決定されるタイム・インターバル
    よりも小さい場合に、ポインティング・キーの押しを通
    常的に処理し、その後に第2のキーボード・イベントを
    通常的に処理し、それによりシステムがタイピング・モ
    ードの操作を回復すること。
  4. 【請求項4】 更に以下より成る請求項1に記載の方
    法:第1のキーボード・イベントがポインティング・キ
    ーの押しである場合に、第2のキーボード・イベントを
    検知するためにキーボードをモニターすること:および
    経過した時間が、第1の事前に決定されるタイム・イン
    ターバルよりも大きく、また第2のキーボード・イベン
    トが検知されなかった場合に、初期のカーソル位置を記
    憶し、ポインティング・センサー走査データを入手し、
    そのセンサー走査データに応答してカーソルを移動させ
    ること。
  5. 【請求項5】 更に以下より成る請求項1に記載の方
    法:経過した時間が、第1の事前に決定されるタイム・
    インターバルよりも大きく、また第2のキーボード・イ
    ベントが検知されなかった場合に、第2のキーボード・
    イベントを検知するためにキーボードをモニターするこ
    と:ポインティング・センサー走査データを入手するこ
    と:カーソルをセンサー走査データに応答して移動させ
    ること:および第2のキーボード・イベントの検知に応
    答して、経過した時間が第2の事前に決定されるタイム
    ・インターバルよりも短い場合に。タイピング・モード
    の操作を回復すること。
  6. 【請求項6】 タイピング・モードの回復に以下が含ま
    れる請求項5に記載の方法:ポインティング・キーの押
    しを通常的に処理すること:カーソルを停止すること:
    および第2のキーボード・イベントを通常的に処理する
    こと。
  7. 【請求項7】 更に以下より成る請求項1に記載の方
    法:経過した時間が第1の事前に決定されるタイム・イ
    ンターバルよりも大きく、また第2のキーボード・イベ
    ントが検知されなかった場合に、第2のキーボード・イ
    ベントを検知するためにキーボードをモニターするこ
    と:および第2のキーボード・イベントの検知に応答し
    て、経過した時間が第2の事前に決定されるタイム・イ
    ンターバルよりも短い場合に、第2のキーボード・イベ
    ントがポインティング・キーの解放であるかどうかを決
    定すること:第2のキーボード・イベントがポインティ
    ング・キーの解放でない場合に、第2のキーボード・イ
    ベントがポインティング・イベントであるかどうかを決
    定すること:第2のキーボード・イベントがポインティ
    ング・イベントである場合に、そのポインティング・イ
    ベントを通常的に処理し、システムをポインティング・
    モードの操作にスイッチすること。
  8. 【請求項8】 更に以下より成る請求項7に記載の方
    法:第2のキーボード・イベントがポインティング・イ
    ベントでない場合に、タイピング・モードの操作を回復
    すること:および第2のキーボード・イベントがポイン
    ティング・キーの解放である場合に、タイピング・モー
    ドの操作を回復すること。
  9. 【請求項9】 タイピング・モードの回復に以下が含ま
    れる請求項8に記載の方法:ポインティング・キーの押
    しを通常的に処理すること:カーソルを停止すること:
    および第2のキーボード・イベントを通常的に処理する
    こと。
  10. 【請求項10】 更に以下より成る請求項7に記載の方
    法:経過した時間が第2のタイム・インターバルよりも
    大きくて、また第2のキーボード・イベントが検知され
    なかった場合に、第2のキーボード・イベントを検知す
    るためにキーボードをモニターすること:第2のキーボ
    ード・イベントの検知に応答して、経過した時間が第3
    の事前に決定されるタイム・インターバルよりも短い場
    合に、第2のキーボード・イベントがポインティング・
    キーの解放であるかどうかを決定すること:第2のキー
    ボード・イベントがポインティング・キーの解放でない
    場合に、第2のキーボード・イベントをポインティング
    ・マクロとして処理し、システムをポインティング・モ
    ードの操作にスイッチすること。
  11. 【請求項11】 更に以下より成る請求項10に記載の
    方法:第2のキーボード・イベントがポインティング・
    キーの解放である場合に、タイピング・モードの操作を
    回復すること。
  12. 【請求項12】 更に以下より成る請求項1に記載の方
    法:第2のキーボード・イベントを検知するためにキー
    ボードをモニターすること:第2のキーボード・イベン
    トの検知に応答して、経過した時間が事前に決定される
    タイム・インターバルよりも大きい場合に、システムを
    ポインティング・モードの操作にスイッチし、それによ
    りシステムがユーザーよりそうするようにとの明白な指
    令がなくとも操作のモードを変更すること。
  13. 【請求項13】 更に以下より成る請求項12に記載の
    方法:第2のキーボード・イベントの検知に応答して、
    第2のキーボード・イベントがポインティング・キーの
    解放であるかどうかを決定すること:第2のキーボード
    ・イベントがポインティング・キーの解放でない場合
    に、第2のキーボード・イベントをポインティング・マ
    クロとして処理すること:および第2のキーボード・イ
    ベントがポインティング・キーの解放である場合に、シ
    ステムをタイピング・モードの操作にスイッチするこ
    と。
  14. 【請求項14】 タイピング・モードの操作、およびポ
    インティング・モードの操作を有し、それらのうちの1
    つが同様にポインティング・キーでもある複数のタイピ
    ング・キーを有するキーボードを含むコンピュータ・シ
    ステムにおいて、以下のステップより成るタイピング・
    モードよりポインティング・モードへのスイッチの方
    法:タイピング・モードの操作中に、ポインティング・
    キーの押しを検知するためにキーボードをモニターする
    こと:ポインティング・キーの押しに応答して、タイマ
    ーがポインティング・キーの押し以後経過した時間を示
    せるようにすること:第2のキーボード・イベントを検
    知するためにキーボードをモニターすること:および経
    過した時間が第1の事前に決定されるタイム・インター
    バルを超える前に第2のキーボード・イベントが検知さ
    れない場合に、システムをポインティング・モードの操
    作にスイッチすることで、その際に当該モード変更がユ
    ーザーの行動により暗黙に実行されること。
  15. 【請求項15】 タイマーを使用可能にすることに、カ
    ウンターを供し、センサー走査データ・パケットの受領
    に応答してカウンターを増分することが含まれ、またポ
    インティング・モードにスイッチすることに、センサー
    走査データ・パケットをポインティング・キーより入手
    することが含まれる請求項14に記載の方法。
JP4015060A 1991-02-01 1992-01-30 自動モード変更付きの統合キーボード、及び、ポインティング装置システム Expired - Lifetime JP2648066B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/649,711 US5189403A (en) 1989-09-26 1991-02-01 Integrated keyboard and pointing device system with automatic mode change
US07/649,711 1991-02-01
US7/649,711 1991-02-01

Publications (2)

Publication Number Publication Date
JPH05204353A true JPH05204353A (ja) 1993-08-13
JP2648066B2 JP2648066B2 (ja) 1997-08-27

Family

ID=24605928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4015060A Expired - Lifetime JP2648066B2 (ja) 1991-02-01 1992-01-30 自動モード変更付きの統合キーボード、及び、ポインティング装置システム

Country Status (4)

Country Link
US (2) US5189403A (ja)
EP (1) EP0497502A2 (ja)
JP (1) JP2648066B2 (ja)
KR (1) KR920016935A (ja)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5189403A (en) * 1989-09-26 1993-02-23 Home Row, Inc. Integrated keyboard and pointing device system with automatic mode change
PL297648A1 (en) * 1991-06-06 1993-09-06 Care Tec Gmbh Keyboard
JPH0736142B2 (ja) * 1991-10-10 1995-04-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 移動指示手段の運動停止を認識する方法および情報処理装置
US5485614A (en) * 1991-12-23 1996-01-16 Dell Usa, L.P. Computer with pointing device mapped into keyboard
JPH05244526A (ja) * 1992-02-26 1993-09-21 Mitsubishi Electric Corp 入力装置
US5317695A (en) * 1992-04-03 1994-05-31 International Business Machines Corporation Method and system for permitting communication between a data processing system and input pointing devices of multiple types
JP2986299B2 (ja) * 1992-04-15 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション 周辺装置接続検出システム
KR940009293B1 (ko) * 1992-06-13 1994-10-06 삼성전자주식회사 마우스 기능을 구비한 키보드의 구현방법
JP2610114B2 (ja) * 1993-12-30 1997-05-14 インターナショナル・ビジネス・マシーンズ・コーポレイション ポインティング・システム、コンピュータ・システムおよび力応答方法
US5574891A (en) * 1994-09-27 1996-11-12 Acer Peripherals, Inc. Method for managing the input codes from keyboard and pointing device
WO1996011434A1 (en) * 1994-10-07 1996-04-18 Interlink Electronics, Inc. Isometric pointing device with integrated click and method therefor
US5646647A (en) * 1994-11-14 1997-07-08 International Business Machines Corporation Automatic parking of cursor in a graphical environment
US5675361A (en) * 1995-08-23 1997-10-07 Santilli; Donald S. Computer keyboard pointing device
US5786805A (en) * 1996-12-27 1998-07-28 Barry; Edwin Franklin Method and apparatus for improving object selection on a computer display by providing cursor control with a sticky property
US5874906A (en) * 1997-09-22 1999-02-23 Wilnel, Inc. Data entry system
DE19843421B4 (de) * 1997-11-25 2007-07-05 Bayerische Motoren Werke Ag Vorrichtung zur Auswahl von Punkten einer aus Menüs und/oder Untermenüs und/oder Funktionen und/oder Funktionswerten bestehenden Menüstruktur
US7808479B1 (en) 2003-09-02 2010-10-05 Apple Inc. Ambidextrous mouse
EP1717683A3 (en) * 1998-01-26 2010-03-17 Apple Inc. Method and apparatus for integrating manual input
US7614008B2 (en) * 2004-07-30 2009-11-03 Apple Inc. Operation of a computer with touch screen interface
US20060033724A1 (en) * 2004-07-30 2006-02-16 Apple Computer, Inc. Virtual input device placement on a touch screen user interface
US7844914B2 (en) * 2004-07-30 2010-11-30 Apple Inc. Activating virtual keys of a touch-screen virtual keyboard
US9239673B2 (en) 1998-01-26 2016-01-19 Apple Inc. Gesturing with a multipoint sensing device
US7663607B2 (en) 2004-05-06 2010-02-16 Apple Inc. Multipoint touchscreen
EP2256606B1 (en) 1998-01-26 2017-08-09 Apple Inc. Method and apparatus for integrating manual input
US8479122B2 (en) * 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US9292111B2 (en) * 1998-01-26 2016-03-22 Apple Inc. Gesturing with a multipoint sensing device
US6760013B2 (en) 1998-07-20 2004-07-06 Alphagrip, Inc. Hand held gaming and data entry system
US6512511B2 (en) 1998-07-20 2003-01-28 Alphagrip, Inc. Hand grippable combined keyboard and game controller system
JP4158238B2 (ja) * 1998-09-04 2008-10-01 ソニー株式会社 制御装置及び制御方法
US7145551B1 (en) * 1999-02-17 2006-12-05 Microsoft Corporation Two-handed computer input device with orientation sensor
US6469694B1 (en) 1999-04-13 2002-10-22 Peter J. Mikan Mouse emulation keyboard system
US6603461B2 (en) * 1999-10-07 2003-08-05 International Business Machines Corp. Keyboard as a computer pointing device for disabled users
IL133698A0 (en) * 1999-12-23 2001-04-30 Metzger Ram Pointing device
US6545666B1 (en) * 2000-05-30 2003-04-08 Agilent Technologies, Inc. Devices, systems and methods for positioning cursor on display device
US6795055B1 (en) * 2000-05-30 2004-09-21 Agilent Technologies, Inc. Devices, systems and methods for facilitating positioning of cursor on display device
US6677932B1 (en) 2001-01-28 2004-01-13 Finger Works, Inc. System and method for recognizing touch typing under limited tactile feedback conditions
US7030861B1 (en) 2001-02-10 2006-04-18 Wayne Carl Westerman System and method for packing multi-touch gestures onto a hand
US20020158846A1 (en) * 2001-04-30 2002-10-31 Clapper Edward O. Controlling cursor of a pointing device
US6869011B2 (en) * 2001-10-15 2005-03-22 Texas Instruments Incorporated Apparatus and method for controlling an electrical switch array
AU2002341148A1 (en) * 2001-10-30 2003-05-12 Eleksen Limited Detecting a degree of manual interaction with a manually operable key
US7154480B2 (en) * 2002-04-30 2006-12-26 Kazuho Iesaka Computer keyboard and cursor control system with keyboard map switching system
US6970158B2 (en) * 2002-05-02 2005-11-29 Emerson Harry E Computer keyboard providing an alert when typing in Caps Lock mode
US11275405B2 (en) * 2005-03-04 2022-03-15 Apple Inc. Multi-functional hand-held device
US7656393B2 (en) 2005-03-04 2010-02-02 Apple Inc. Electronic device having display and surrounding touch sensitive bezel for user interface and control
US7958455B2 (en) * 2002-08-01 2011-06-07 Apple Inc. Mode activated scrolling
WO2004025449A2 (en) * 2002-09-16 2004-03-25 Koninklijke Philips Electronics N.V. Method for inputting character and position information
US6924812B2 (en) * 2002-12-24 2005-08-02 Intel Corporation Method and apparatus for reading texture data from a cache
DE602004019703D1 (de) * 2004-06-04 2009-04-09 Research In Motion Ltd Rollrad mit zeicheneingabe
US8381135B2 (en) 2004-07-30 2013-02-19 Apple Inc. Proximity detector in handheld device
US7653883B2 (en) 2004-07-30 2010-01-26 Apple Inc. Proximity detector in handheld device
WO2006023569A1 (en) 2004-08-16 2006-03-02 Fingerworks, Inc. A method of increasing the spatial resolution of touch sensitive devices
DE202006020369U1 (de) * 2005-03-04 2008-05-21 Apple Inc., Cupertino Multifunktionale handgehaltene Vorrichtung
US8159414B2 (en) * 2005-06-17 2012-04-17 Logitech Europe S.A. Keyboard with integrated auxiliary display
US20060284847A1 (en) * 2005-06-17 2006-12-21 Logitech Europe S.A. Keyboard with programmable keys
US7294089B2 (en) * 2005-08-15 2007-11-13 Ford Global Technologies, Llc Multiple-speed automatic transmission
US7511702B2 (en) * 2006-03-30 2009-03-31 Apple Inc. Force and location sensitive display
US7538760B2 (en) 2006-03-30 2009-05-26 Apple Inc. Force imaging input device and system
US7978181B2 (en) * 2006-04-25 2011-07-12 Apple Inc. Keystroke tactility arrangement on a smooth touch surface
US8279180B2 (en) * 2006-05-02 2012-10-02 Apple Inc. Multipoint touch surface controller
US8243027B2 (en) * 2006-06-09 2012-08-14 Apple Inc. Touch screen liquid crystal display
CN104965621B (zh) 2006-06-09 2018-06-12 苹果公司 触摸屏液晶显示器及其操作方法
KR101452675B1 (ko) 2006-06-09 2014-10-22 애플 인크. 터치 스크린 액정 디스플레이
US8493330B2 (en) * 2007-01-03 2013-07-23 Apple Inc. Individual channel phase delay scheme
US9710095B2 (en) 2007-01-05 2017-07-18 Apple Inc. Touch screen stack-ups
US7813998B1 (en) 2007-03-22 2010-10-12 Trading Technologies International, Inc. System and method for selectively displaying market information related to a plurality of tradeable objects
US20110022976A1 (en) * 2007-06-21 2011-01-27 Cadexterity, Inc. dynamic user interface system
US20090109173A1 (en) * 2007-10-28 2009-04-30 Liang Fu Multi-function computer pointing device
US8665228B2 (en) 2008-06-19 2014-03-04 Tactile Displays, Llc Energy efficient interactive display with energy regenerative keyboard
US8115745B2 (en) 2008-06-19 2012-02-14 Tactile Displays, Llc Apparatus and method for interactive display with tactile feedback
US8217908B2 (en) 2008-06-19 2012-07-10 Tactile Displays, Llc Apparatus and method for interactive display with tactile feedback
US9513705B2 (en) 2008-06-19 2016-12-06 Tactile Displays, Llc Interactive display with tactile feedback
US10585493B2 (en) * 2008-12-12 2020-03-10 Apple Inc. Touch sensitive mechanical keyboard
US20100149099A1 (en) * 2008-12-12 2010-06-17 John Greer Elias Motion sensitive mechanical keyboard
US20100182239A1 (en) * 2009-01-20 2010-07-22 Wang zhi hu System and Method for Testing a Portable Information Handling System
US8654524B2 (en) 2009-08-17 2014-02-18 Apple Inc. Housing as an I/O device
US10719131B2 (en) 2010-04-05 2020-07-21 Tactile Displays, Llc Interactive display with tactile feedback
US20200393907A1 (en) 2010-04-13 2020-12-17 Tactile Displays, Llc Interactive display with tactile feedback
JP5010714B2 (ja) 2010-05-21 2012-08-29 株式会社東芝 電子機器、入力制御プログラム、及び入力制御方法
US8804056B2 (en) 2010-12-22 2014-08-12 Apple Inc. Integrated touch screens
JP5161338B2 (ja) * 2011-05-09 2013-03-13 株式会社ソニー・コンピュータエンタテインメント キーボード
US9041652B2 (en) 2011-09-14 2015-05-26 Apple Inc. Fusion keyboard
US9454239B2 (en) 2011-09-14 2016-09-27 Apple Inc. Enabling touch events on a touch sensitive mechanical keyboard
US9785251B2 (en) 2011-09-14 2017-10-10 Apple Inc. Actuation lock for a touch sensitive mechanical keyboard
US8581870B2 (en) 2011-12-06 2013-11-12 Apple Inc. Touch-sensitive button with two levels
US9035882B2 (en) * 2011-12-31 2015-05-19 Peigen Jiang Computer input device
TWI540465B (zh) * 2012-06-13 2016-07-01 原相科技股份有限公司 游標控制裝置及系統
US9557846B2 (en) 2012-10-04 2017-01-31 Corning Incorporated Pressure-sensing touch system utilizing optical and capacitive systems
KR102078618B1 (ko) * 2013-06-11 2020-02-19 삼성전자주식회사 입력부를 구비하는 커버장치 및 이를 구비한 휴대용 단말기

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4201489A (en) * 1976-08-04 1980-05-06 Creatcchnil Patent AG Keyboard actuatable with the aid of the fingers of at least one hand
EP0045307B1 (en) * 1980-02-05 1985-06-12 National Research Development Corporation Keyboards and methods of operating keyboards
US4680577A (en) * 1983-11-28 1987-07-14 Tektronix, Inc. Multipurpose cursor control keyswitch
US4712101A (en) * 1984-12-04 1987-12-08 Cheetah Control, Inc. Control mechanism for electronic apparatus
US4786895A (en) * 1985-08-02 1988-11-22 Xeltron, S. A. Control panel
US4736191A (en) * 1985-08-02 1988-04-05 Karl E. Matzke Touch activated control method and apparatus
US4937778A (en) * 1986-04-14 1990-06-26 Wolf Chris L System for selectively modifying codes generated by a touch type keyboard upon detecting of predetermined sequence of make codes and break codes
FR2599163A1 (fr) * 1986-05-21 1987-11-27 Bourgain Pierre Dispositif d'entree de donnees dans un systeme informatique
JPS62279419A (ja) * 1986-05-29 1987-12-04 Canon Inc 入力装置
US4924433A (en) * 1986-07-15 1990-05-08 Brother Kogyo Kabushiki Kaisha Word processor with attribute functions
JPH02110496A (ja) * 1988-10-19 1990-04-23 Brother Ind Ltd 情報処理装置
US5007008A (en) * 1988-12-15 1991-04-09 Hewlett-Packard Company Method and apparatus for selecting key action
EP0373319A3 (en) * 1988-12-15 1991-11-13 Hewlett-Packard Company Method and apparatus for selecting key action
US4974183A (en) * 1989-04-05 1990-11-27 Miller Wendell E Computer keyboard with thumb-actuated edit keys
US5189403A (en) * 1989-09-26 1993-02-23 Home Row, Inc. Integrated keyboard and pointing device system with automatic mode change
US5041814A (en) * 1990-06-20 1991-08-20 Lin Fu Tong E Lock with alarm device

Also Published As

Publication number Publication date
EP0497502A3 (ja) 1994-03-16
US6107996A (en) 2000-08-22
EP0497502A2 (en) 1992-08-05
KR920016935A (ko) 1992-09-25
US5189403A (en) 1993-02-23
JP2648066B2 (ja) 1997-08-27

Similar Documents

Publication Publication Date Title
JP2648066B2 (ja) 自動モード変更付きの統合キーボード、及び、ポインティング装置システム
US5124689A (en) Integrated keyboard and pointing device system
US7154480B2 (en) Computer keyboard and cursor control system with keyboard map switching system
US6587131B1 (en) Method for assisting user to operate pointer
US6323845B1 (en) Single finger controlled computer input apparatus and method
US5825675A (en) Apparatus and configuration method for a small, hand-held computing device
EP0394614B1 (en) Advanced user interface
US5269004A (en) System for integrating pointing functions into computer keyboard with lateral movement of keyswitch mounting plate causing strain and control signal
US5245321A (en) Integrated keyboard system with typing and pointing modes of operation
US6084572A (en) Isometric pointing device with integrated click and method therefor
EP0723217A1 (en) Method for expanding the command capabilities of pointing devices
WO1998000775A1 (en) Touchpad with scroll and pan regions
WO1998000775A9 (en) Touchpad with scroll and pan regions
JPH1078850A (ja) 座標入力装置およびその制御方法
US20010017614A1 (en) Input device for moving cursor and scrolling image on screen
US20030210233A1 (en) Computer user interface input device and a method of using same
US20040100451A1 (en) Electronic apparatus and operation mode switching method
JP2009187530A (ja) ユニバーサル入力装置及びシステム
US6018336A (en) Computer system having digitizing tablet
JP2001255994A (ja) 入力制御装置
US5973622A (en) Keyboard with a two-dimensional actuator for generating direction signals
KR940006811B1 (ko) 통합 키보드 및 지정기구 시스템
JPS6125232A (ja) 入力装置
JPS63317817A (ja) キ−ボ−ド制御方式
JPS63263515A (ja) カ−ソル移動キ−制御方式