JPH0795314B2 - 周辺装置支援システム - Google Patents
周辺装置支援システムInfo
- Publication number
- JPH0795314B2 JPH0795314B2 JP2248979A JP24897990A JPH0795314B2 JP H0795314 B2 JPH0795314 B2 JP H0795314B2 JP 2248979 A JP2248979 A JP 2248979A JP 24897990 A JP24897990 A JP 24897990A JP H0795314 B2 JPH0795314 B2 JP H0795314B2
- Authority
- JP
- Japan
- Prior art keywords
- mouse
- device driver
- independent
- dependent
- operating system
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the program performs an interfacing function, e.g. device driver
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Digital Computer Display Output (AREA)
- Position Input By Displaying (AREA)
Description
【発明の詳細な説明】 A.産業上の利用分野 本発明は、計算機システムに接続可能な周辺装置(デバ
イス)の動作環境内でソフトウエアを支援するためのシ
ステム及び方法に係り、特にポインテイング・デバイス
(例えばマウス)のような周辺装置に対する支援に係
る。
イス)の動作環境内でソフトウエアを支援するためのシ
ステム及び方法に係り、特にポインテイング・デバイス
(例えばマウス)のような周辺装置に対する支援に係
る。
B.従来の技術とその課題 従来は、PC DOSやOS/2T(IBM社の商標)などのオペレー
テイング・システムのもとで動作する計算機にポインテ
イング・デバイスのような周辺装置を接続するために
は、当該デバイスをオペレーテイング・システムのもと
で動かすためのデバイス・ドライバ・プログラム・モジ
ユールを独立したデバイス毎に準備して計算機にロード
する必要があつた。一般に、そのようなデバイスのメー
カに複雑なデバイス・ドライバ・モジユールを準備させ
るためには、オペレーテイング・システムのインタフエ
ースその他の内部情報を文書化してデバイス・メーカに
知らせる必要があつた。
テイング・システムのもとで動作する計算機にポインテ
イング・デバイスのような周辺装置を接続するために
は、当該デバイスをオペレーテイング・システムのもと
で動かすためのデバイス・ドライバ・プログラム・モジ
ユールを独立したデバイス毎に準備して計算機にロード
する必要があつた。一般に、そのようなデバイスのメー
カに複雑なデバイス・ドライバ・モジユールを準備させ
るためには、オペレーテイング・システムのインタフエ
ースその他の内部情報を文書化してデバイス・メーカに
知らせる必要があつた。
例えばOS/2の場合、リリース毎に特別のマウス支援イン
タフエースが規定され、オペレーテイング・システムに
組込まれていた。これに伴う問題は、インタフエースが
リリース毎に変わるため、デバイス・メーカはそのデバ
イスに対する全く新しいデバイス・ドライバを準備し
て、当該デバイスが新しいバージヨンのオペレーテイン
グ・システムで動作できるようにしなければならない、
ということである。
タフエースが規定され、オペレーテイング・システムに
組込まれていた。これに伴う問題は、インタフエースが
リリース毎に変わるため、デバイス・メーカはそのデバ
イスに対する全く新しいデバイス・ドライバを準備し
て、当該デバイスが新しいバージヨンのオペレーテイン
グ・システムで動作できるようにしなければならない、
ということである。
更に、最近では、OS/2のようなオペレーテイング・シス
テムが文書化されていない内部デバイス・インタフエー
スを持つようになつてきたため、デバイス・メーカが完
全なデバイス・ドライバを準備するのが難しくなつてき
た。
テムが文書化されていない内部デバイス・インタフエー
スを持つようになつてきたため、デバイス・メーカが完
全なデバイス・ドライバを準備するのが難しくなつてき
た。
本発明は、オペレーテイング・システムを修正すること
によつて上述の問題を解決するものである。
によつて上述の問題を解決するものである。
C.課題を解決するための手段 本発明は、アプリケーション・プログラムの実行並びに
計算機システム及びそれに接続された周辺装置の動作を
可能にするオペレーテイング・システムを改良する。周
辺装置の動作を支援するためには所定のデバイス・ドラ
イバが必要であるが、本発明によれば、オペレーテイン
グ・システムに関連して接続可能な周辺装置の動作を支
援するための手段がオペレーテイング・システムに設け
られる。この支援手段は、接続される周辺装置のタイプ
から論理的に独立しており、従つてメーカは、この支援
手段と会話する比較的小規模のプログラム・モジユー
ル、すなわちデバイス・ドライバを提供するだけでよ
い。論理的に独立している、ということは、どのような
マウスあるいはポインテイング・デバイスが接続されて
も、当該デバイス・ドライバがすべて同じ様にして動作
し、オペレーテイング・システムと会話することを意味
する。
計算機システム及びそれに接続された周辺装置の動作を
可能にするオペレーテイング・システムを改良する。周
辺装置の動作を支援するためには所定のデバイス・ドラ
イバが必要であるが、本発明によれば、オペレーテイン
グ・システムに関連して接続可能な周辺装置の動作を支
援するための手段がオペレーテイング・システムに設け
られる。この支援手段は、接続される周辺装置のタイプ
から論理的に独立しており、従つてメーカは、この支援
手段と会話する比較的小規模のプログラム・モジユー
ル、すなわちデバイス・ドライバを提供するだけでよ
い。論理的に独立している、ということは、どのような
マウスあるいはポインテイング・デバイスが接続されて
も、当該デバイス・ドライバがすべて同じ様にして動作
し、オペレーテイング・システムと会話することを意味
する。
後述の実施例では、支援手段は、オペレーテイング・シ
ステムのアプリケーション・プログラム・インターフェ
イス(API)を支援するための手段と、データ様式化手
段(データ・フオーマツタ)と、デバイス間通信手段
(IDC)と、データ域を維持するための手段とを含んで
いる。実施例で使用する接続可能な周辺装置はポインテ
イング・デバイス、特にマウスである。
ステムのアプリケーション・プログラム・インターフェ
イス(API)を支援するための手段と、データ様式化手
段(データ・フオーマツタ)と、デバイス間通信手段
(IDC)と、データ域を維持するための手段とを含んで
いる。実施例で使用する接続可能な周辺装置はポインテ
イング・デバイス、特にマウスである。
本発明によれば、従来の周辺装置プログラム・モジユー
ルが2つの独立したモジユールに分けられる。その第1
モジユールは、接続されるデバイス(マウス)の特有の
ハードウエア要求を支援するすべてのコードを含むデバ
イス依存プログラム・モジユールである。このモジユー
ルはシステム・インタフエース・コードしか含んでいな
いので、置換可能になつている。従つて、デバイス・メ
ーカはこのモジユールを自身のモジユールと置換して、
デバイスがオペレーテイング・システムにより支援され
るようにすることができる。具体的には、このモジユー
ルは単一のシステム・インタフエース及びデバイス固有
支援コードを含む。
ルが2つの独立したモジユールに分けられる。その第1
モジユールは、接続されるデバイス(マウス)の特有の
ハードウエア要求を支援するすべてのコードを含むデバ
イス依存プログラム・モジユールである。このモジユー
ルはシステム・インタフエース・コードしか含んでいな
いので、置換可能になつている。従つて、デバイス・メ
ーカはこのモジユールを自身のモジユールと置換して、
デバイスがオペレーテイング・システムにより支援され
るようにすることができる。具体的には、このモジユー
ルは単一のシステム・インタフエース及びデバイス固有
支援コードを含む。
第2のモジユールはオペレーテイング・システムにその
一部として組込まれるデバイス独立プログラム・モジユ
ールである。これは従来1つであつたプログラム・モジ
ユールの残りの部分を含み、デバイス依存プログラム・
モジユールによつて支援されるデバイスのタイプから独
立させるため広範囲の修正がなされている。デバイス独
立モジユールは、オペレーテイング・システムの残りへ
のプログラミング・インタフエース、及び他のシステム
・モジユールへの文書化されない内部インタフエースを
支援する。
一部として組込まれるデバイス独立プログラム・モジユ
ールである。これは従来1つであつたプログラム・モジ
ユールの残りの部分を含み、デバイス依存プログラム・
モジユールによつて支援されるデバイスのタイプから独
立させるため広範囲の修正がなされている。デバイス独
立モジユールは、オペレーテイング・システムの残りへ
のプログラミング・インタフエース、及び他のシステム
・モジユールへの文書化されない内部インタフエースを
支援する。
本発明の実施においては、オペレーテイング・システム
に含まれる新しいプログラム・モジユールとの間で新し
いインタフエースが定義され、これを用いることによ
り、デバイス依存モジユール及びデバイス独立モジユー
ルは相互に通信することができる。これは前述のIDC機
構を用いて行われる。IDC機構は、2つのデバイス・ド
ライバ・プログラム・モジユールが直接通信するのを可
能にする被定義方法である。このIDCインタフエースは
マウス・デバイスの通常動作のために両モジユールによ
つて使用されるものであり、IBM OS/2オペレーテイング
・システム文書化で定義される。この機構自体は、当業
者であれば、本明細書の記述に基いて容易に実施できる
ものである。
に含まれる新しいプログラム・モジユールとの間で新し
いインタフエースが定義され、これを用いることによ
り、デバイス依存モジユール及びデバイス独立モジユー
ルは相互に通信することができる。これは前述のIDC機
構を用いて行われる。IDC機構は、2つのデバイス・ド
ライバ・プログラム・モジユールが直接通信するのを可
能にする被定義方法である。このIDCインタフエースは
マウス・デバイスの通常動作のために両モジユールによ
つて使用されるものであり、IBM OS/2オペレーテイング
・システム文書化で定義される。この機構自体は、当業
者であれば、本明細書の記述に基いて容易に実施できる
ものである。
D.実施例 本発明は、ポインテイング・デバイス等の周辺装置を接
続でき、且つロード可能デバイス・ドライバを実行でき
る任意の計算機システムで実施することができるが、以
下では、オペレーテイング・システムとしてOS/2を採用
したパーソナル・コンピユータ(例えばIBM OS/2)を例
にとつて説明する。
続でき、且つロード可能デバイス・ドライバを実行でき
る任意の計算機システムで実施することができるが、以
下では、オペレーテイング・システムとしてOS/2を採用
したパーソナル・コンピユータ(例えばIBM OS/2)を例
にとつて説明する。
説明の便宜上、まず従来のシステムについて簡単に触れ
ておく。
ておく。
第2図に示すように、従来のシステムでは、接続可能デ
バイスを支援する手段はオペレーテイング・システムと
は別になつている。従つて動作に際しては、アプリケー
シヨン1は、システム・サービスについてはオペレーテ
イング・システム3と直接インタフエースし、デバイス
支援サービスについては別のデバイス・ドライバ5と直
接インタフエースする。デバイス支援サービスはアプリ
ケーシヨン・プログラム・インターフエイス(API)と
も呼ばれる。デバイス・ドライバ5はハードウエア7と
直接インタフエースする。このようなシステムは、ポイ
ンテイング・デバイスを含む多くの異なつたタイプのデ
バイスを支援するのに用いられるが、その一例としてPC
DOSがある。
バイスを支援する手段はオペレーテイング・システムと
は別になつている。従つて動作に際しては、アプリケー
シヨン1は、システム・サービスについてはオペレーテ
イング・システム3と直接インタフエースし、デバイス
支援サービスについては別のデバイス・ドライバ5と直
接インタフエースする。デバイス支援サービスはアプリ
ケーシヨン・プログラム・インターフエイス(API)と
も呼ばれる。デバイス・ドライバ5はハードウエア7と
直接インタフエースする。このようなシステムは、ポイ
ンテイング・デバイスを含む多くの異なつたタイプのデ
バイスを支援するのに用いられるが、その一例としてPC
DOSがある。
ポインテイング・デバイスとしてマウスが広く用いられ
るようになつてきたので、オペレーテイング・システム
はその一部にマウス支援を含むようになつた。第3図
は、代表的なオペレーテイング・システム(例えばOS/
2)による従来のマウス支援を示したものである。ここ
では、アプリケーシヨン1は最早デバイス・ドライバと
は直接インタフエースせず、その代りにAPI層9を持つ
たシステム3とインタフエースする。そしてAPI層9が
デバイス・ドライバ(DD)とインタフエースする。
るようになつてきたので、オペレーテイング・システム
はその一部にマウス支援を含むようになつた。第3図
は、代表的なオペレーテイング・システム(例えばOS/
2)による従来のマウス支援を示したものである。ここ
では、アプリケーシヨン1は最早デバイス・ドライバと
は直接インタフエースせず、その代りにAPI層9を持つ
たシステム3とインタフエースする。そしてAPI層9が
デバイス・ドライバ(DD)とインタフエースする。
第3図は従来のマウス・デバイス・ドライバの内部構造
も示している。デバイス・ドライバは幾つかの論理領域
に分けられ、その各領域はオペレーシヨンに対してそれ
ぞれ固有の機能を持つている。また各領域は、システム
の他のモジユールに対する私用の或いは公開されていな
いインタフエースを含むこともある。ここでは、理解し
易くするために、マウス・デバイス・ドライバが3つの
部分に分かれているものとする。最初の部分はAPI支援1
1である。この部分は、システム3に含まれるAPI層9と
のインタフエースとして働く。次は割込みハンドル及び
データ・フオーマツタ13である。この部分はマウス17か
らのすべての割込みデータを読み取つて、それを総称マ
ウス事象に変換する。この事象は適当な事象待ち行列に
加えられる。最後の部分はデータ域15である。データ域
15は、すべての移動制御変数、事象待ち行列及び他の変
数を含む。デバイス依存性はデバイス・ドライバ全体に
組込まれる。このデバイス依存性は例えば次のような情
報を含む。
も示している。デバイス・ドライバは幾つかの論理領域
に分けられ、その各領域はオペレーシヨンに対してそれ
ぞれ固有の機能を持つている。また各領域は、システム
の他のモジユールに対する私用の或いは公開されていな
いインタフエースを含むこともある。ここでは、理解し
易くするために、マウス・デバイス・ドライバが3つの
部分に分かれているものとする。最初の部分はAPI支援1
1である。この部分は、システム3に含まれるAPI層9と
のインタフエースとして働く。次は割込みハンドル及び
データ・フオーマツタ13である。この部分はマウス17か
らのすべての割込みデータを読み取つて、それを総称マ
ウス事象に変換する。この事象は適当な事象待ち行列に
加えられる。最後の部分はデータ域15である。データ域
15は、すべての移動制御変数、事象待ち行列及び他の変
数を含む。デバイス依存性はデバイス・ドライバ全体に
組込まれる。このデバイス依存性は例えば次のような情
報を含む。
1)データの様式及び大きさ 2)マウスのタイプ(シリアル・マウス、バス・マウス
など) 3)割込みレート 4)マイン・ベース 5)マウスのボタンの数 6)移動分解能 7)デイスエーブルの方法 上述のようなデバイス依存の各特性に従つてモジユール
の各部分を構成することは当業者であれば容易であろ
う。
など) 3)割込みレート 4)マイン・ベース 5)マウスのボタンの数 6)移動分解能 7)デイスエーブルの方法 上述のようなデバイス依存の各特性に従つてモジユール
の各部分を構成することは当業者であれば容易であろ
う。
本発明に従うシステムを第1図に示す。第1図のデバイ
ス・ドライバ・モジユールは2つの部分に分けられてい
る。これは、デバイス・ドライバ・モジユール全体にわ
たつてすべてのハードウエア依存性を識別し、それらを
別のデバイス・ドライバ・モジユールに置くことによ
り、達成された。その結果が第1図に示した2つのモジ
ユール、すなわちマウス独立デバイス・ドライバ(11、
19、21、15)及びマウス依存性デバイス・ドライバ(2
3、25)である。マウス依存デバイス・ドライバ(23、2
5)は、従来のマウス・デバイス・ドライバからのすべ
てのハードウエア依存コードを含む。デバイス・ドライ
バを2つに分離した結果、それらの間の通信手段、すな
わちデバイス間通信手段(IDC)が必要になつた。第1
図に示した2つのデバイス・ドライバはそれぞれのIDC2
1及び23を持つている。IDC21及び23は2つのデバイス・
ドライバの間の通信に使用される。マウス独立デバイス
・ドライバは、IDC21を用いて、マウス・ハードウエア
の状態を制御すると共にその動作特性を照会する。マウ
ス依存デバイス・ドライバは、IDC23を用いて、マウス
事象データを共通フオーマツトの形で、すなわち共通事
象パケツトでマウス独立デバイス・ドライバへ送る。マ
ウス独立デバイス・ドライバは受け取つた共通事象パケ
ツトを処理する。このように、すべてのデバイス動作依
存性をデバイス依存デバイス・ドライバに置くことによ
り、デバイス独立デバイス・ドライバは接続されるハー
ドウエアのタイプとは無関係になる。
ス・ドライバ・モジユールは2つの部分に分けられてい
る。これは、デバイス・ドライバ・モジユール全体にわ
たつてすべてのハードウエア依存性を識別し、それらを
別のデバイス・ドライバ・モジユールに置くことによ
り、達成された。その結果が第1図に示した2つのモジ
ユール、すなわちマウス独立デバイス・ドライバ(11、
19、21、15)及びマウス依存性デバイス・ドライバ(2
3、25)である。マウス依存デバイス・ドライバ(23、2
5)は、従来のマウス・デバイス・ドライバからのすべ
てのハードウエア依存コードを含む。デバイス・ドライ
バを2つに分離した結果、それらの間の通信手段、すな
わちデバイス間通信手段(IDC)が必要になつた。第1
図に示した2つのデバイス・ドライバはそれぞれのIDC2
1及び23を持つている。IDC21及び23は2つのデバイス・
ドライバの間の通信に使用される。マウス独立デバイス
・ドライバは、IDC21を用いて、マウス・ハードウエア
の状態を制御すると共にその動作特性を照会する。マウ
ス依存デバイス・ドライバは、IDC23を用いて、マウス
事象データを共通フオーマツトの形で、すなわち共通事
象パケツトでマウス独立デバイス・ドライバへ送る。マ
ウス独立デバイス・ドライバは受け取つた共通事象パケ
ツトを処理する。このように、すべてのデバイス動作依
存性をデバイス依存デバイス・ドライバに置くことによ
り、デバイス独立デバイス・ドライバは接続されるハー
ドウエアのタイプとは無関係になる。
第4a図は、マウス依存デバイス・ドライバがマウス・ハ
ードウエアから割込みを受け取つた時の制御の流れを示
している。まず割込み27が発生する。次のステツプ29で
デバイス、すなわちマウス・ハードウエアから割込みデ
ータが読み取られる。これはデバイスに依存するステツ
プであるから、マウス毎に、及びマウスが支援されるマ
シン・ベース毎に異なつている。ステツプ31で割込みデ
ータが蓄積される。殆んどのマウスは、完全なハードウ
エア依存マウス事象を報告するために複数の割込みを発
生する。次の判断ステツプ33は、完全なハードウエア依
存マウス事象が累積されたかどうかを調べる。もし累積
されていると、ステツプ35に進んで、デバイス依存マウ
ス事象データを共通マウス事象パケツトに変換する。次
いでこの共通事象パケツトを処理するために、ステツプ
37でマウス独立デバイス・ドライバを呼出す。この呼出
しは、マウス独立デバイス・ドライバの一部であるIDC2
1を用いて通常の方法で行われる。ステツプ39は第4b図
に続いている。マウス独立デバイス・ドライバからマウ
ス依存デバイス・ドライバに戻るステツプ41が実行され
る。この時、共通事象パケツトの処理は完了している。
次いでマウス依存デバイス・ドライバはステツプ43で割
込み処理を完了し、割込みシーケンスから戻るステツプ
45を実行する。ステツプ33で、完全なハードウエア依存
マウス事象がまだ受け取られていないことがわかると、
ステツプ43に進んで割込み処理を完了し、割込みシーケ
ンスから戻るステツプ45を実行する。その後は、ステツ
プ27で割込まれていたオペレーシヨンが再開される。
ードウエアから割込みを受け取つた時の制御の流れを示
している。まず割込み27が発生する。次のステツプ29で
デバイス、すなわちマウス・ハードウエアから割込みデ
ータが読み取られる。これはデバイスに依存するステツ
プであるから、マウス毎に、及びマウスが支援されるマ
シン・ベース毎に異なつている。ステツプ31で割込みデ
ータが蓄積される。殆んどのマウスは、完全なハードウ
エア依存マウス事象を報告するために複数の割込みを発
生する。次の判断ステツプ33は、完全なハードウエア依
存マウス事象が累積されたかどうかを調べる。もし累積
されていると、ステツプ35に進んで、デバイス依存マウ
ス事象データを共通マウス事象パケツトに変換する。次
いでこの共通事象パケツトを処理するために、ステツプ
37でマウス独立デバイス・ドライバを呼出す。この呼出
しは、マウス独立デバイス・ドライバの一部であるIDC2
1を用いて通常の方法で行われる。ステツプ39は第4b図
に続いている。マウス独立デバイス・ドライバからマウ
ス依存デバイス・ドライバに戻るステツプ41が実行され
る。この時、共通事象パケツトの処理は完了している。
次いでマウス依存デバイス・ドライバはステツプ43で割
込み処理を完了し、割込みシーケンスから戻るステツプ
45を実行する。ステツプ33で、完全なハードウエア依存
マウス事象がまだ受け取られていないことがわかると、
ステツプ43に進んで割込み処理を完了し、割込みシーケ
ンスから戻るステツプ45を実行する。その後は、ステツ
プ27で割込まれていたオペレーシヨンが再開される。
第4b図は、マウス依存デバイス・ドライバからの共通事
象パケツトを処理するためにマウス独立デバイス・ドラ
イバで行われるオペレーシヨンの流れを示している。ま
ず判断ステツプ47でマウス支援が活動化されているかど
うかを調べる。次の条件が満足されると、マウス支援が
活動化されているものと考えられる。
象パケツトを処理するためにマウス独立デバイス・ドラ
イバで行われるオペレーシヨンの流れを示している。ま
ず判断ステツプ47でマウス支援が活動化されているかど
うかを調べる。次の条件が満足されると、マウス支援が
活動化されているものと考えられる。
1)IBM OS/2プレゼンテーシヨン・マネージヤ・シエル
のようなアプリケーションがマウスをオープンしてい
る。
のようなアプリケーションがマウスをオープンしてい
る。
2)ポインタ・イメージを表示画面上で正しく追跡でき
るようにビデオ表示モードが支援されている。
るようにビデオ表示モードが支援されている。
もし活動化されていると、事象は処理され、さもなけれ
ば、事象が無視されて、マウス依存デバイス・ドライバ
に制御が戻される。マウス支援が活動化されていると、
判断ステツプ49でマウスが動いたかどうかを調べる。も
し動いていると、ステツプ51に進んで、マウスの動きを
画面上のポインタ・イメージの移動に変換し、更にステ
ツプ53で新しいポインタ位置を計算する。ステツプ51及
び53で使用するアルゴリズムは周知のものであるから、
詳細については省略する。判断ステツプ55に進んで、マ
ウスを用いるアプリケーシヨンにマウス事象を報告すべ
きかどうかを調べる。もし報告するのであれば、ステツ
プ57に進んで、共通事象パケツト及び新たに計算したポ
インタ位置から総称マウス事象を組立てる。次のステツ
プ58は、ハードウエア依存オペレーシヨンが必要かどう
かを調べる。もし必要であれば、そのオペレーシヨンを
実行するため、ステツプ60でマウス依存デバイス・ドラ
イバを呼出す。次のステツプ59は、マウス事象を適当な
マウス事象待ち行列(例えば先入れ先出し待ち行列)に
入れる。次のステツプ61では、前のポインタ・イメージ
位置が新しいポインタ・イメージ位置と比較される。も
しそれらの位置が異なつていると、ステツプ63に進ん
で、新しい位置が現表示モードの限界内にあるかどうか
を調べる。もし限界内になければ、ステツプ65でポイン
タ・イメージ位置を調節して、それが限界内にくるよう
にする。次のステツプ67で、前のポインタ位置からポイ
ンタ・イメージを除去し、そしてステツプ69で新しいポ
インタ・イメージ位置のところにポインタ・イメージを
描く。それが終ると、マウス依存デバイス・ドライバに
戻るステツプ41が実行される。IBM OS/2では、ステツプ
67及び69は、IBM Technical References for OS/2に文
書化されているポインタIDCインタフエースを介して実
行される。
ば、事象が無視されて、マウス依存デバイス・ドライバ
に制御が戻される。マウス支援が活動化されていると、
判断ステツプ49でマウスが動いたかどうかを調べる。も
し動いていると、ステツプ51に進んで、マウスの動きを
画面上のポインタ・イメージの移動に変換し、更にステ
ツプ53で新しいポインタ位置を計算する。ステツプ51及
び53で使用するアルゴリズムは周知のものであるから、
詳細については省略する。判断ステツプ55に進んで、マ
ウスを用いるアプリケーシヨンにマウス事象を報告すべ
きかどうかを調べる。もし報告するのであれば、ステツ
プ57に進んで、共通事象パケツト及び新たに計算したポ
インタ位置から総称マウス事象を組立てる。次のステツ
プ58は、ハードウエア依存オペレーシヨンが必要かどう
かを調べる。もし必要であれば、そのオペレーシヨンを
実行するため、ステツプ60でマウス依存デバイス・ドラ
イバを呼出す。次のステツプ59は、マウス事象を適当な
マウス事象待ち行列(例えば先入れ先出し待ち行列)に
入れる。次のステツプ61では、前のポインタ・イメージ
位置が新しいポインタ・イメージ位置と比較される。も
しそれらの位置が異なつていると、ステツプ63に進ん
で、新しい位置が現表示モードの限界内にあるかどうか
を調べる。もし限界内になければ、ステツプ65でポイン
タ・イメージ位置を調節して、それが限界内にくるよう
にする。次のステツプ67で、前のポインタ位置からポイ
ンタ・イメージを除去し、そしてステツプ69で新しいポ
インタ・イメージ位置のところにポインタ・イメージを
描く。それが終ると、マウス依存デバイス・ドライバに
戻るステツプ41が実行される。IBM OS/2では、ステツプ
67及び69は、IBM Technical References for OS/2に文
書化されているポインタIDCインタフエースを介して実
行される。
マウス事象を待ち行列に入れるステツプ59は、当該セツ
シヨンのためにどのような待合せモードがとられている
かを調べる。使用可能な待ち合せモードは2つある。そ
の1つは通常待合せモードである。このモードでは、事
象は、マウス独立デバイス・ドライバがそのデータ域に
維待している事象待ち行列に送られる。第2のモードは
単一待ち行列モードである。このモードでは、マウス事
象は待合せのための別のOS/2コンポーネントに送られ
る。単一待ち行列モード及びそれに関連するすべてのオ
ペレーシヨンは文書化されていないが、本発明の実施に
は問題はない。
シヨンのためにどのような待合せモードがとられている
かを調べる。使用可能な待ち合せモードは2つある。そ
の1つは通常待合せモードである。このモードでは、事
象は、マウス独立デバイス・ドライバがそのデータ域に
維待している事象待ち行列に送られる。第2のモードは
単一待ち行列モードである。このモードでは、マウス事
象は待合せのための別のOS/2コンポーネントに送られ
る。単一待ち行列モード及びそれに関連するすべてのオ
ペレーシヨンは文書化されていないが、本発明の実施に
は問題はない。
本発明の開示を完全なものにするため、上述の未文書化
インタフエースの技術内容を次に説明する。これから述
べる情報及びOS/2関係の技術マニユアルに記載されてい
る情報を利用すれば、IBM OS/2のもとで本発明を実施す
ることは容易である。
インタフエースの技術内容を次に説明する。これから述
べる情報及びOS/2関係の技術マニユアルに記載されてい
る情報を利用すれば、IBM OS/2のもとで本発明を実施す
ることは容易である。
単一待ち行列モードを活動化するためには、新デバイス
状況ワードの上位バイトにおけるビツト2がセツトされ
た状態でMouSetDev−Status呼出しを行う必要がある。
次に述べるインタフエースは、ここでの文書化を除き、
現在のところIBM OS/2関係のマニユアルでは文書化され
ていない。マウス独立デバイス・ドライバは、単一待ち
行列モードが活動化されていることを検出すると、次の
ステツプを実行する。
状況ワードの上位バイトにおけるビツト2がセツトされ
た状態でMouSetDev−Status呼出しを行う必要がある。
次に述べるインタフエースは、ここでの文書化を除き、
現在のところIBM OS/2関係のマニユアルでは文書化され
ていない。マウス独立デバイス・ドライバは、単一待ち
行列モードが活動化されていることを検出すると、次の
ステツプを実行する。
1)デバイス名“SINGLEQ$”を待つ単一待ち行列デバ
イス・ドライバへのIDC入口点を得るためAttachDD Dev
−Helpを呼出す。
イス・ドライバへのIDC入口点を得るためAttachDD Dev
−Helpを呼出す。
2)次のステツプを実行することによつて単一待ち行列
IDCインタフエースを初期設定する。
IDCインタフエースを初期設定する。
A)CXを単一事象待ち行列予約のためのバイト数に設定
する。この予約のためのバイト数は、マウス事象のバイ
ト数に8を加算し、それに待ち行列が保持すべき事象の
数を乗算することにより得られる。
する。この予約のためのバイト数は、マウス事象のバイ
ト数に8を加算し、それに待ち行列が保持すべき事象の
数を乗算することにより得られる。
B)BXを初期設定機能を指定する001hに設定する。
C)AXをマウスからの呼出しであることを示す0200hに
設定する。
設定する。
D)IDC呼出しについての規則に従つて単一待ち行列デ
バイス・ドライバへのIDC呼出しを実行する。
バイス・ドライバへのIDC呼出しを実行する。
初期設定機能が終ると、AXは0になるが、もし0でなけ
ればエラーが生じており、従つて単一待ち行列モードを
活動化すべきでない。一旦セツシヨンが単一待ち行列モ
ードになると、そのセツシヨンの事象待ち行列を読み取
る如何なるコールも失敗する。
ればエラーが生じており、従つて単一待ち行列モードを
活動化すべきでない。一旦セツシヨンが単一待ち行列モ
ードになると、そのセツシヨンの事象待ち行列を読み取
る如何なるコールも失敗する。
マウス事象処理の間、セツシヨンについて単一待ち行列
モードが活動化されると、マウス事象は、次のステツプ
を実行することによつて、単一待ち行列デバイス・ドラ
イバに送られる。
モードが活動化されると、マウス事象は、次のステツプ
を実行することによつて、単一待ち行列デバイス・ドラ
イバに送られる。
1)SIをマウス事象のオフセツトに設定する。
2)AHをマウスからの呼出しであることを示す02hに設
定する。
定する。
3)ALをマウス事象の大きさ(バイト数)に設定する。
4)BHをマウス事象の始めからタイムスタンプまでのオ
フセツト(バイト数)に設定する。
フセツト(バイト数)に設定する。
5)BLを待ち行列書込み機能を示す02hに設定する。
6)IDC規則を用いて単一待ち行列デバイス・ドライバ
へのIDCインタフエース呼出しを実行する。
へのIDCインタフエース呼出しを実行する。
マウス依存デバイス・ドライバ及びマウス独立デバイス
・ドライバは一緒になつて1つのマウス・デバイス独立
システムを構成する。その本質は、従来のマウス・デバ
イス・ドライバからのデバイス依存コードの除去と、接
続されるマウス・デバイスから独立しているIDCインタ
フエースの付加にある。
・ドライバは一緒になつて1つのマウス・デバイス独立
システムを構成する。その本質は、従来のマウス・デバ
イス・ドライバからのデバイス依存コードの除去と、接
続されるマウス・デバイスから独立しているIDCインタ
フエースの付加にある。
最後に第4a図及び第4b図の流れ図を擬似コードで実施し
た例を示しておく。まず表1は、マウス依存デバイス・
ドライバ・モジユールの擬似コードを示しているが、こ
れは第4a図の実施例に対応しており、特定のマウス・デ
バイスのためのものではない。
た例を示しておく。まず表1は、マウス依存デバイス・
ドライバ・モジユールの擬似コードを示しているが、こ
れは第4a図の実施例に対応しており、特定のマウス・デ
バイスのためのものではない。
次の表2は、マウス独立デバイス・ドライバがマウス事
象を処理する時のオペレーシヨンの擬似コード表現であ
る。この擬似コードは、本発明実施の際に実行される基
本ステツプを示している。IBM OS/2への実際の組込みは
この基本構造に従つて行われる(第4b図参照)。
象を処理する時のオペレーシヨンの擬似コード表現であ
る。この擬似コードは、本発明実施の際に実行される基
本ステツプを示している。IBM OS/2への実際の組込みは
この基本構造に従つて行われる(第4b図参照)。
このルーチンへの入力は共通フオーマツトのマウス事象
データである。マスウ事象データはInterruptPacketと
呼ばれるバツフアに渡される。
データである。マスウ事象データはInterruptPacketと
呼ばれるバツフアに渡される。
E.発明の効果 本発明には2つの顕著な効果がある。まず第1に、デバ
イス・メーカはデバイス依存ソフトウエア・モジユール
を一度書くだけでよい。デバイスは、現文書化デバイス
・ドライバ・アーキテクチヤを支援するオペレーテイン
グ・システムの将来に置けるすべての改訂で支援され
る。それが可能なのは、デバイス依存プログラム・モジ
ユールが被接続デバイスの通常のオペレーシヨンで要求
される、オペレーテイング・システムへの如何なるイン
タフエースも持たないからである。定義されるインタフ
エースは、置換可能デバイス・ドライバ・プログラム・
モジユールに要求されるものだけである。例えば、オペ
レーテイング・システムの改訂版を導入する場合、デバ
イス・メーカはそれに合わせて新たなデバイス依存ドラ
イバ・モジユールを提供する必要はなく、前に提供した
もので十分である。
イス・メーカはデバイス依存ソフトウエア・モジユール
を一度書くだけでよい。デバイスは、現文書化デバイス
・ドライバ・アーキテクチヤを支援するオペレーテイン
グ・システムの将来に置けるすべての改訂で支援され
る。それが可能なのは、デバイス依存プログラム・モジ
ユールが被接続デバイスの通常のオペレーシヨンで要求
される、オペレーテイング・システムへの如何なるイン
タフエースも持たないからである。定義されるインタフ
エースは、置換可能デバイス・ドライバ・プログラム・
モジユールに要求されるものだけである。例えば、オペ
レーテイング・システムの改訂版を導入する場合、デバ
イス・メーカはそれに合わせて新たなデバイス依存ドラ
イバ・モジユールを提供する必要はなく、前に提供した
もので十分である。
第2の効果は拡張性である。すなわち、前述の実施例で
は、デバイスとしてマウスを用いていたが、本発明は任
意のデバイスに適用可能である。マウスはポインテイン
グ・デバイスの1種であるが、ポインテイング・デバイ
スとは、ユーザが計算機画面上の特定のオブジエクトを
又は領域を指し示したり選択したりすることができる可
視インタフエース・デバイスを意味する。オペレーテイ
ング・システムが提供するデバイス独立モジユールは、
どのようなタイプのデバイスが接続されているかを気に
しない。従つて、デバイス・メーカは、如何なるタイプ
のポインテイング・デバイスであつても、それを支援す
るためのデバイス依存モジユールを書くことができる。
マウス以外のポインテイング・デバイスとしては、ライ
トペン、タツチパツド、タツチスクリーン、ローラボー
ル、ジヨイステイツクなどがあるが、勿論本発明はそれ
らに限定されるものではない。
は、デバイスとしてマウスを用いていたが、本発明は任
意のデバイスに適用可能である。マウスはポインテイン
グ・デバイスの1種であるが、ポインテイング・デバイ
スとは、ユーザが計算機画面上の特定のオブジエクトを
又は領域を指し示したり選択したりすることができる可
視インタフエース・デバイスを意味する。オペレーテイ
ング・システムが提供するデバイス独立モジユールは、
どのようなタイプのデバイスが接続されているかを気に
しない。従つて、デバイス・メーカは、如何なるタイプ
のポインテイング・デバイスであつても、それを支援す
るためのデバイス依存モジユールを書くことができる。
マウス以外のポインテイング・デバイスとしては、ライ
トペン、タツチパツド、タツチスクリーン、ローラボー
ル、ジヨイステイツクなどがあるが、勿論本発明はそれ
らに限定されるものではない。
第1図は本発明の実施例を示すブロック図。 第2図及び第3図は従来技術を示すブロック図。 第4a図はマウス依存デバイス・ドライバのオペレーシヨ
ンを示す流れ図。 第4b図はマウス独立デバイス・ドライバのオペレーシヨ
ンを示す流れ図。
ンを示す流れ図。 第4b図はマウス独立デバイス・ドライバのオペレーシヨ
ンを示す流れ図。
Claims (1)
- 【請求項1】オペレーティング・システム(3)上で動
作し、周辺装置(17)の動作を支援するために所定のデ
バイス・ドライバを必要とする計算機システムにおい
て、該周辺装置の動作を該オペレーティング・システム
と共に支援するための、周辺装置支援システムであっ
て、 (a)前記周辺装置の種類とは論理的に独立した装置独
立支援手段(11,15,19,21)と、 (b)前記装置独立支援手段と共に前記周辺装置の動作
を支援するための前記周辺装置に固有の特性を支援する
装置依存支援手段(23,25)を含み、 前記装置独立支援手段は、 (i)前記オペレーティング・システムのアプリケーシ
ョン・プログラム・インターフェイス(9)を支援する
ための手段(11)と、 (ii)データ変換のための手段(19)と、 (iii)デバイス間通信手段(21)と、 (iv)データ域を保持するための手段(15)を含み、 前記装置依存支援手段は、デバイス間通信手段(23)を
含み、 前記装置独立支援手段と前記装置依存支援手段が、前記
デバイス間通信手段(21、23)を通じて互いに通信する
ことを特徴とする周辺装置支援システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US41107489A | 1989-09-22 | 1989-09-22 | |
| US411074 | 1989-09-22 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03121555A JPH03121555A (ja) | 1991-05-23 |
| JPH0795314B2 true JPH0795314B2 (ja) | 1995-10-11 |
Family
ID=23627448
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2248979A Expired - Lifetime JPH0795314B2 (ja) | 1989-09-22 | 1990-09-20 | 周辺装置支援システム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5465364A (ja) |
| EP (1) | EP0419064A3 (ja) |
| JP (1) | JPH0795314B2 (ja) |
Families Citing this family (85)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5291585A (en) * | 1991-07-29 | 1994-03-01 | Dell Usa, L.P. | Computer system having system feature extension software containing a self-describing feature table for accessing I/O devices according to machine-independent format |
| US5781797A (en) * | 1992-09-30 | 1998-07-14 | Microsoft Corporation | Method and system for configuring device driver by selecting a plurality of component drivers to be included in the device driver |
| EP0610677A3 (en) * | 1993-02-12 | 1995-08-02 | Ibm | Communication device management module operating in two modes. |
| US5664195A (en) * | 1993-04-07 | 1997-09-02 | Sequoia Systems, Inc. | Method and apparatus for dynamic installation of a driver on a computer system |
| US5781798A (en) * | 1993-12-30 | 1998-07-14 | International Business Machines Corporation | Method and apparatus for providing hot swapping capability in a computer system with static peripheral driver software |
| JPH08161250A (ja) * | 1994-12-06 | 1996-06-21 | Canon Inc | 情報処理装置 |
| US5802365A (en) * | 1995-05-05 | 1998-09-01 | Apple Computer, Inc. | Dynamic device matching using driver candidate lists |
| USRE39369E1 (en) | 1995-06-29 | 2006-10-31 | Igt | Electronic casino gaming system with improved play capacity, authentication and security |
| US5643086A (en) | 1995-06-29 | 1997-07-01 | Silicon Gaming, Inc. | Electronic casino gaming apparatus with improved play capacity, authentication and security |
| US7063615B2 (en) * | 1995-06-29 | 2006-06-20 | Igt | Electronic gaming apparatus with authentication |
| US6620047B1 (en) | 1995-06-29 | 2003-09-16 | Igt | Electronic gaming apparatus having authentication data sets |
| EP0752646B1 (en) * | 1995-07-07 | 2002-03-27 | Sun Microsystems, Inc. | Data access implementation of device driver interface |
| US5923876A (en) * | 1995-08-24 | 1999-07-13 | Compaq Computer Corp. | Disk fault prediction system |
| US6289396B1 (en) * | 1995-11-21 | 2001-09-11 | Diamond Multimedia Systems, Inc. | Dynamic programmable mode switching device driver architecture |
| US5752032A (en) * | 1995-11-21 | 1998-05-12 | Diamond Multimedia Systems, Inc. | Adaptive device driver using controller hardware sub-element identifier |
| US6393495B1 (en) * | 1995-11-21 | 2002-05-21 | Diamond Multimedia Systems, Inc. | Modular virtualizing device driver architecture |
| US6009476A (en) * | 1995-11-21 | 1999-12-28 | Diamond Multimedia Systems, Inc. | Device driver architecture supporting emulation environment |
| US5896534A (en) * | 1996-01-26 | 1999-04-20 | Dell Usa, L.P. | Operating system independent apparatus and method for supporting input/output devices unsupported by executing programs |
| US5796984A (en) * | 1996-01-26 | 1998-08-18 | Dell Usa, L.P. | Operating system independent apparatus and method for eliminating peripheral device functions |
| US6094600A (en) * | 1996-02-06 | 2000-07-25 | Fisher-Rosemount Systems, Inc. | System and method for managing a transaction database of records of changes to field device configurations |
| JP2787911B2 (ja) * | 1996-03-29 | 1998-08-20 | 三菱電機株式会社 | データストレージ管理方式及びデータストレージ管理方法 |
| US5787019A (en) * | 1996-05-10 | 1998-07-28 | Apple Computer, Inc. | System and method for handling dynamic changes in device states |
| DE19622531C2 (de) * | 1996-06-05 | 2003-12-04 | Deutsche Telekom Ag | Verfahren, Anlage und Unterstation zur Übertragung von Informations- und Steuerdaten |
| US6185590B1 (en) | 1996-10-18 | 2001-02-06 | Imagination Software | Process and architecture for use on stand-alone machine and in distributed computer architecture for client server and/or intranet and/or internet operating environments |
| AU4822397A (en) * | 1996-10-18 | 1998-05-15 | Imagination Software | Distributed computer architecture and process for generating reusable software components |
| US6651104B1 (en) * | 1996-11-12 | 2003-11-18 | Ericsson Inc. | Multi-layered interface for interconnecting application programs to system bus lines for electronic devices |
| US6064660A (en) * | 1996-12-12 | 2000-05-16 | Optimay Corporation | GSM transceiver with portable protocol stack |
| US6070236A (en) * | 1996-12-19 | 2000-05-30 | Deutsche Thomson-Brandt Gmbh | Apparatus for processing a sequence of control commands as well as a method for generating a sequence of control commands, and storage medium for storing control commands |
| US6041364A (en) * | 1996-12-19 | 2000-03-21 | Intel Corporation | Method and system for adding a device entry to a device tree upon detecting the connection of a device |
| US6212576B1 (en) | 1997-01-27 | 2001-04-03 | Optimay Corporation | Operating system interface for use with multitasking GSM protocol stacks |
| US20020025852A1 (en) * | 2000-09-29 | 2002-02-28 | Alcorn Allan E. | Gaming apparatus with portrait-mode display |
| US6021446A (en) * | 1997-07-11 | 2000-02-01 | Sun Microsystems, Inc. | Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine |
| EP0893765A1 (en) * | 1997-07-24 | 1999-01-27 | CANAL+ Société Anonyme | IEEE 1394 Set Top Box device driver |
| US6311228B1 (en) * | 1997-08-06 | 2001-10-30 | Microsoft Corporation | Method and architecture for simplified communications with HID devices |
| US6275266B1 (en) * | 1997-11-12 | 2001-08-14 | Philips Electronics North America Corporation | Apparatus and method for automatically detecting and configuring a television display for a personal computer |
| US6845508B2 (en) | 1997-12-19 | 2005-01-18 | Microsoft Corporation | Stream class driver for computer operating system |
| US6182242B1 (en) | 1998-04-22 | 2001-01-30 | International Business Machines Corporation | Generic device driver simulator and method |
| US6574588B1 (en) * | 1998-09-23 | 2003-06-03 | Microsoft Corporation | Solid-state memory device that emulates a known storage device |
| US7058563B1 (en) | 1998-09-23 | 2006-06-06 | Microsoft Corporation | Device driver auto-load |
| GB2345986A (en) * | 1999-01-19 | 2000-07-26 | Inventec Corp | Computer mouse/mice driver |
| US6490493B1 (en) | 1999-01-21 | 2002-12-03 | Rosemount Inc. | Industrial process device management software |
| US5968138A (en) * | 1999-04-23 | 1999-10-19 | Hewlett-Packard Company | Method and apparatus for peripheral system management, using multiple object interfaces |
| US6618630B1 (en) | 1999-07-08 | 2003-09-09 | Fisher-Rosemount Systems, Inc. | User interface that integrates a process control configuration system and a field device management system |
| US7089300B1 (en) * | 1999-10-18 | 2006-08-08 | Apple Computer, Inc. | Method and apparatus for administering the operating system of a net-booted environment |
| EP1238333A1 (en) * | 1999-12-15 | 2002-09-11 | Sun Microsystems, Inc. | Computer system with an improved device and driver framework |
| US20050255924A1 (en) * | 2000-03-03 | 2005-11-17 | Cole Joseph W | Gaming apparatus having door mounted display |
| US7043641B1 (en) | 2000-03-08 | 2006-05-09 | Igt | Encryption in a secure computerized gaming system |
| CA2402389A1 (en) | 2000-03-08 | 2002-09-19 | Shuffle Master, Inc. | Computerized gaming system, method and apparatus |
| US7988559B2 (en) | 2001-03-08 | 2011-08-02 | Igt | Computerized gaming system, method and apparatus |
| US6813729B1 (en) | 2000-06-15 | 2004-11-02 | Advanced Micro Devices, Inc. | Programmable bi-directional MII testing methodology and device including same |
| US6937571B1 (en) | 2000-06-19 | 2005-08-30 | Advanced Micro Devices, Inc. | Method of testing a network device through a medium independent interface (MII) |
| US6978318B1 (en) | 2000-06-19 | 2005-12-20 | Advanced Micro Devices, Inc. | Network interface apparatus and method of internal communication within the same |
| GB2384593B (en) * | 2000-08-21 | 2004-12-01 | Int Game Tech | A method of operating a gaming system and gaming device |
| CA2356015A1 (en) | 2000-08-31 | 2002-02-28 | International Game Technology | Method and apparatus for encoding vouchers in a cashless casino gaming system |
| US6677347B2 (en) * | 2000-12-08 | 2004-01-13 | 3M Innovative Properties Company | Sulfonamido ether substituted imidazoquinolines |
| US6848110B2 (en) | 2000-12-22 | 2005-01-25 | International Business Machines Corporation | Automatic feature augmentation for component based application programming interfaces |
| US7203841B2 (en) | 2001-03-08 | 2007-04-10 | Igt | Encryption in a secure computerized gaming system |
| US8214849B2 (en) * | 2001-07-13 | 2012-07-03 | Advanced Micro Devices, Inc. | System for loading device-specific code and method thereof |
| US7162036B2 (en) | 2001-08-06 | 2007-01-09 | Igt | Digital identification of unique game characteristics |
| US6685567B2 (en) | 2001-08-08 | 2004-02-03 | Igt | Process verification |
| WO2003023647A1 (en) | 2001-09-10 | 2003-03-20 | Igt | Method for developing gaming programs compatible with a computerized gaming operating system and apparatus |
| US8708828B2 (en) | 2001-09-28 | 2014-04-29 | Igt | Pluggable modular gaming modifiers and configuration templates for gaming environments |
| US6902481B2 (en) | 2001-09-28 | 2005-06-07 | Igt | Decoupling of the graphical presentation of a game from the presentation logic |
| US7931533B2 (en) | 2001-09-28 | 2011-04-26 | Igt | Game development architecture that decouples the game logic from the graphics logics |
| US20030064784A1 (en) | 2001-09-28 | 2003-04-03 | William Wells | Wide screen gaming apparatus |
| US7259881B2 (en) * | 2001-10-03 | 2007-08-21 | Kabushiki Kaisha Toshiba | Method of monitoring multiple controller families |
| US8060587B2 (en) * | 2001-10-05 | 2011-11-15 | International Business Machines Corporation | Methods and apparatus for launching device specific applications on storage area network components |
| US20030079050A1 (en) * | 2001-10-19 | 2003-04-24 | Chang Cheng Tsung | Computer system with parallel sever architecture |
| US7179170B2 (en) | 2001-11-26 | 2007-02-20 | Igt | Pass-through live validation device and method |
| US7171022B2 (en) * | 2001-12-05 | 2007-01-30 | Lockheed Martin Corporation | Common method for communicating area information |
| GB0204035D0 (en) * | 2002-02-21 | 2002-04-03 | Adder Tech Ltd | Interfacing devices |
| US6986108B2 (en) * | 2002-03-21 | 2006-01-10 | Toshiba Tec Kabushiki Kaisha | System for accessing digital imaging devices |
| US7107331B2 (en) * | 2002-03-25 | 2006-09-12 | Kabushiki Kaisha Toshiba | System and method for configuring digital image devices |
| US6977994B2 (en) * | 2002-03-27 | 2005-12-20 | Toshiba Tec Kabushiki Kaisha | Portable, high performance messaging system |
| US20030184783A1 (en) * | 2002-03-28 | 2003-10-02 | Toshiba Tec Kabushiki Kaisha | Modular layer for abstracting peripheral hardware characteristics |
| US20070186216A1 (en) * | 2002-05-28 | 2007-08-09 | Mustafa Seifi | Message driven job processing system and method |
| US7730155B1 (en) | 2002-10-01 | 2010-06-01 | Apple Inc. | Method and apparatus for dynamically locating resources |
| US7774774B1 (en) * | 2003-10-22 | 2010-08-10 | Apple Inc. | Software setup system |
| US7689985B2 (en) * | 2005-03-04 | 2010-03-30 | Microsoft Corporation | Versioning support for drivers frameworks |
| US7716379B2 (en) | 2007-04-26 | 2010-05-11 | Microsoft Corporation | Hardware control interface for IEEE standard 802.11 including transmission control interface component and a transmission status interface component |
| US8346974B2 (en) | 2007-07-27 | 2013-01-01 | Microsoft Corporation | Hardware control interface for IEEE standard 802.11 |
| US9927788B2 (en) | 2011-05-19 | 2018-03-27 | Fisher-Rosemount Systems, Inc. | Software lockout coordination between a process control system and an asset management system |
| US8627097B2 (en) | 2012-03-27 | 2014-01-07 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
| US9542172B2 (en) | 2013-02-05 | 2017-01-10 | Apple Inc. | Automatic updating of applications |
| US9594654B2 (en) * | 2013-12-24 | 2017-03-14 | International Business Machines Corporation | Generating and detecting hang scenarios in a partially populated simulation environment |
Family Cites Families (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4555775B1 (en) * | 1982-10-07 | 1995-12-05 | Bell Telephone Labor Inc | Dynamic generation and overlaying of graphic windows for multiple active program storage areas |
| US4692858A (en) * | 1984-02-02 | 1987-09-08 | Trillian Computer Corporation | Visual interface between user and computer system |
| US4587630A (en) * | 1984-02-15 | 1986-05-06 | Hewlett-Packard Company | Intelligent programmable touchscreen system |
| US4813013A (en) * | 1984-03-01 | 1989-03-14 | The Cadware Group, Ltd. | Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons |
| US4775931A (en) * | 1984-05-11 | 1988-10-04 | Hewlett-Packard Company | Dynamically configured computing device |
| US4773005A (en) * | 1984-09-07 | 1988-09-20 | Tektronix, Inc. | Dynamic address assignment system |
| US4701848A (en) * | 1984-11-19 | 1987-10-20 | Clyde, Inc. | System for effectively paralleling computer terminal devices |
| US4727512A (en) * | 1984-12-06 | 1988-02-23 | Computer Design & Applications, Inc. | Interface adaptor emulating magnetic tape drive |
| US4649479A (en) * | 1985-02-28 | 1987-03-10 | International Business Machines Corp. | Device driver and adapter binding technique |
| JPH0664536B2 (ja) * | 1986-01-17 | 1994-08-22 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 仮想端末サブシステムの制御方法 |
| JPS62192820A (ja) * | 1986-02-20 | 1987-08-24 | Mitsubishi Electric Corp | マン・マシン・インタフェイス管理方式 |
| US4937036A (en) * | 1986-04-28 | 1990-06-26 | Xerox Corporation | Concurrent display of data from two different display processors and user interface therefore |
| JPS6324448A (ja) * | 1986-07-17 | 1988-02-01 | Toshiba Corp | 複合文書処理装置 |
| GB8621061D0 (en) * | 1986-09-01 | 1986-10-08 | Hewlett Packard Ltd | User interface simulation |
| US4975829A (en) * | 1986-09-22 | 1990-12-04 | At&T Bell Laboratories | Communication interface protocol |
| JPS63113721A (ja) * | 1986-10-31 | 1988-05-18 | Fujitsu Ltd | マウス・タブレツト共通制御装置 |
| US4855905A (en) * | 1987-04-29 | 1989-08-08 | International Business Machines Corporation | Multiprotocol I/O communications controller unit including emulated I/O controllers and tables translation of common commands and device addresses |
| US4859995A (en) * | 1987-06-30 | 1989-08-22 | Xerox Corporation | Mouse pointer with switchable emulation mode |
| JPS6410300A (en) * | 1987-07-03 | 1989-01-13 | Hitachi Ltd | User's interface system for searching |
| US4896290A (en) * | 1987-08-24 | 1990-01-23 | Wang Laboratories, Inc. | Method for routing events from key strokes in a multi-processing computer systems |
| US5191655A (en) * | 1987-10-13 | 1993-03-02 | Standard Microsystems Corporation | Interface arrangement for facilitating data communication between a computer and peripherals |
| JP2569092B2 (ja) * | 1987-12-11 | 1997-01-08 | 株式会社日立製作所 | 入出力機器制御プログラムのアドレス解決方法 |
| US4972368A (en) * | 1988-03-04 | 1990-11-20 | Stallion Technologies, Pty. Ltd. | Intelligent serial I/O subsystem |
| US4914624A (en) * | 1988-05-06 | 1990-04-03 | Dunthorn David I | Virtual button for touch screen |
| US4951245A (en) * | 1988-05-20 | 1990-08-21 | Bull Hn Information Systems Inc. | Network terminal driver communications subsystem |
| US4896291A (en) * | 1988-05-20 | 1990-01-23 | International Business Machines Corporation | Valuator menu for use as a graphical user interface tool |
| US4924378A (en) * | 1988-06-13 | 1990-05-08 | Prime Computer, Inc. | License mangagement system and license storage key |
| US5097533A (en) * | 1988-11-29 | 1992-03-17 | International Business Machines Corporation | System and method for interfacing computer application programs written in different languages to a software system |
-
1990
- 1990-08-30 EP EP19900309463 patent/EP0419064A3/en not_active Withdrawn
- 1990-09-20 JP JP2248979A patent/JPH0795314B2/ja not_active Expired - Lifetime
-
1994
- 1994-03-18 US US08/210,530 patent/US5465364A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US5465364A (en) | 1995-11-07 |
| EP0419064A2 (en) | 1991-03-27 |
| JPH03121555A (ja) | 1991-05-23 |
| EP0419064A3 (en) | 1992-08-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0795314B2 (ja) | 周辺装置支援システム | |
| JP3659062B2 (ja) | 計算機システム | |
| EP0475600B1 (en) | System and method for communication between windowing environments | |
| EP0229336B1 (en) | A virtual terminal subsystem | |
| US6285363B1 (en) | Method and system for sharing applications between computer systems | |
| US5029077A (en) | System and method for controlling physical resources allocated to a virtual terminal | |
| US5640495A (en) | Computer-printer interface control for bidirectional/undirectional data communications | |
| US20050240944A1 (en) | Method and apparatus for adapting and hosting legacy user interface controls | |
| EP0751460A2 (en) | System and method of controlling mapping of data buffers for heterogenous programs in digital computer system | |
| US7865883B1 (en) | Parallel and asynchronous debugger and debugging method for multi-threaded programs | |
| EP1025489B1 (en) | System to associate control with applications using drag and drop interface | |
| US6308226B1 (en) | Communication method and system for objects movable in network | |
| US7191263B2 (en) | Enhanced input using packet switching over a PS/2 or other interface | |
| CN1082209C (zh) | 在虚拟终端环境下允许使用单个操作的机构 | |
| EP0487290A2 (en) | Method and means for operating a computer workstation | |
| JP2945753B2 (ja) | 情報処理装置 | |
| JP2848172B2 (ja) | 入出力制御装置 | |
| JP2004013689A (ja) | データ処理装置 | |
| CN115617219A (zh) | 零终端外设的控制方法及装置 | |
| JP2004013687A (ja) | データ処理装置 | |
| CN119718151A (zh) | 一种基于多主机的输入设备共享方法及系统 | |
| JPH0317769A (ja) | アプリケーシヨンソフトの機能拡張方法 | |
| JPH06309079A (ja) | 仮想計算機におけるキーボード制御方式 | |
| Bryant | PACS-What About Software | |
| JPH01260554A (ja) | ファイル転送完了通知方式 |