(57)【要約】【課題】複数言語入力に対応し、かつ、文字コードや仮想キーコードを出力することが可能な統合キーボードドライバを提供する。【解決手段】文字コード変換テーブル選択部１４７は、複数の文字コード変換テーブル１４８の中から、取得した国番号に応じた言語仕様の文字コードテーブルを選択する。仮想キーコード変換テーブル選択部１４３は、複数の仮想キーコード変換テーブル１４４の中から、取得した国番号に応じた言語仕様の仮想キーコードテーブルを選択する。スキャンコード解析部１４１はキーボード１５０からのスキャンコードを解析する。仮想キーコード取得部１４２は、選択した仮想キーコード変換テーブルを用いて、取得したスキャンコードを、対応する仮想キーコードに変換して出力する。仮想キーコード解析部１４５は、その仮想キーコードを解析する。文字コード取得部１４６は、仮想キーコード解析部１４５による解析結果を参照しながら、選択した文字コード変換テーブルを用いて、取得した仮想キーコードを、対応する文字コードに変換して出力する。【選択図】        図２
2004220158.tif 000002
【特許請求の範囲】
【請求項１】
キーボードからのスキャンコードを入力して、所望言語に対応する文字コードを出力する統合キーボードドライバであって、
前記スキャンコードを、対応する仮想キーコードに変換して出力する仮想キーボードドライバと、
変換して得られた前記仮想キーコードを、対応する文字コードに変換して出力するキーボードドライバと、
を備え、
前記仮想キーボードドライバは、
前記スキャンコードと前記仮想キーコードとの対応関係を規定する変換テーブルであって、複数言語に対応すべく、各言語毎に用意される複数の第１変換テーブルと、
言語指定情報に基づいて、前記複数の第１変換テーブルの中から、指定された言語に対応する第１変換テーブルを選択する第１選択部と、
選択した前記第１変換テーブルを用いて、前記スキャンコードを、対応する前記仮想キーコードを変換して出力する仮想キーコード取得部と、
を備えると共に、
前記キーボードドライバは、
前記仮想キーコードと文字コードとの対応関係を規定する変換テーブルであって、前記複数言語に対応すべく、各言語毎に用意される複数の第２変換テーブルと、
前記言語指定情報に基づいて、前記複数の第２変換テーブルの中から、指定された前記言語に対応する第２変換テーブルを選択する第２選択部と、
選択した前記第２変換テーブルを用いて、前記仮想キーコードを、対応する前記文字コードを変換して出力する文字コード取得部と、
を備える統合キーボードドライバ。
【請求項２】
請求項１に記載の統合キーボードドライバにおいて、
前記仮想キーボードドライバは、前記キーボードからの前記スキャンコードを解析するスキャンコード解析部をさらに備えると共に、
前記文字コードドライバは、前記仮想キーボードドライバからの前記仮想キーコードを解析する仮想キーコード解析部をさらに備えることを特徴とする統合キーボードドライバ。
【請求項３】
請求項１に記載の統合キーボードドライバにおいて、
前記第１及び第２選択部は、前記統合キーボードドライバの起動時に、それぞれ、外部から前記言語指定情報を取得して、前記変換テーブルの選択を行うことを特徴とする統合キーボードドライバ。
【請求項４】
画像を投写して表示することが可能なプロジェクタであって、
画像を投写するための画像投写部と、
文字を入力するためのキーボードと、
該キーボードからのスキャンコードを入力して、所望言語に対応する文字コードを出力する統合キーボードドライバと、
該統合キーボードドライバからの前記文字コードを入力し、その文字コードに応じた文字フォントを取得して、前記画像投写部によって、投写画面上に文字を表示させるオペレーティングシステムと、
を備え、
前記統合キーボードドライバとして、請求項１に記載の統合キーボードドライバを用いることを特徴とするプロジェクタ。
【請求項５】
キーボードからのスキャンコードを、所望言語に対応する仮想キーコードや文字コードに変換するコード変換方法であって、
（ａ）前記スキャンコードと前記仮想キーコードとの対応関係を規定する第１変換テーブルと、前記仮想キーコードと文字コードとの対応関係を規定する第２変換テーブルと、をそれぞれ各言語毎に用意する工程と、
（ｂ）言語指定情報を取得して、該言語指定情報に基づいて、前記複数の第１変換テーブルの中から、指定された言語に対応する第１変換テーブルを選択すると共に、前記複数の第２変換テーブルの中から、指定された前記言語に対応する第２変換テーブルを選択する工程と、
（ｃ）前記キーボードからの前記スキャンコードを取得する工程と、
（ｄ）選択した前記第１変換テーブルを用いて、取得した前記スキャンコードを、対応する前記仮想キーコードへ変換する工程と、
（ｅ）選択した前記第２変換テーブルを用いて、変換して得られた前記仮想キーコードを、対応する前記文字コードへ変換する工程と、
を備えるコード変換方法。
【請求項６】
キーボードからのスキャンコードを、所望言語に対応する仮想キーコードや文字コードに変換するためのコンピュータプログラムであって、前記スキャンコードと前記仮想キーコードとの対応関係を規定する変換テーブルであって、複数言語に対応すべく、各言語毎に用意される複数の第１変換テーブルの中から、言語指定情報に基づいて、指定された言語に対応する第１変換テーブルを選択する機能と、
選択した前記第１変換テーブルを用いて、前記スキャンコードを、対応する前記仮想キーコードへ変換する機能と、
前記仮想キーコードと文字コードとの対応関係を規定する変換テーブルであって、前記複数言語に対応すべく、各言語毎に用意される複数の第２変換テーブルの中から、前記言語指定情報に基づいて、指定された前記言語に対応する第２変換テーブルを選択する機能と、
選択した前記第２変換テーブルを用いて、前記仮想キーコードを、対応する前記文字コードへ変換する機能と、
を前記コンピュータに実現させるためのコンピュータプログラム。
【請求項７】
請求項６に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、キーボードからのスキャンコードを入力して、所望言語に対応する文字コードを出力する統合キーボードドライバに関するものである。
【０００２】
【従来の技術】
近年、プロジェクタとしては、世界各国で共通に使用できるようにするために、例えば、投写画面上でのメニュー画面などに用いる表示言語を、複数の言語の中から選択して切り換えることができる機能を有するものが提案されている。
【０００３】
一方、別のプロジェクタとしては、キーボードの接続を可能とし、そのキーボードからのスキャンコードをキーボードドライバによって文字コードに変換して、投写画面上に文字を入力することができる機能を有するものも開発されている。
【０００４】
そこで、前者の複数言語表示機能を有するプロジェクタに、後者の文字入力機能を付加しようとする場合、メニュー画面などに用いる言語の切り換えに応じて、入力できる文字も、同じ言語となるように切り換え得る必要があり、そのためには、文字入力に用いる言語も、複数の言語の中から選択して切り換えることができるように構成する必要がある。
【０００５】
このように、文字入力に用いる言語を、複数の言語の中から選択して切り換える技術として、従来においては、下記の特許文献１に記載のものが知られている。
【０００６】
【特許文献１】
特開平７−３６５９７号公報
【０００７】
特許文献１に記載の従来技術においては、キー入力システムが、キーボードユニットと、スキャンコード生成手段，キーコード変換手段及びキーコード送出手段を有するキーボード駆動機構と、各言語毎のキーテーブルを有するフラッシュＲＯＭと、を備えている。そして、キーボードユニットのキーが押下されると、スキャンコード生成手段によって、そのキーに対応するスキャンコードが生成され、キーコード変換手段によって、フラッシュＲＯＭ内の各言語毎のキーテーブルを利用し、そのスキャンコードをキーコードに変換して、キーコード送出手段によって、そのキーコードをオペレーティングシステム（以下、ＯＳと略す）に送るようになっている。ここで、フラッシュＲＯＭ内には、各言語毎のキーテーブルが複数書き込まれており、スイッチなどの選択手段により、１つの言語のテーブルが選択されるようになっている。
【０００８】
なお、この種の従来技術として、関連するものには、例えば、下記の特許文献２に記載のものが挙げられる。
【０００９】
【特許文献２】
特開２００２−１５７０７１号公報
【００１０】
【発明が解決しようとする課題】
しかしながら、上記した従来技術においては、複数言語入力には対応しているものの、スキャンコードをキーコードに変換する機能だけしか有していないため、文字コードを出力したり、仮想キーコードを出力したりする点については、何ら考慮されていなかった。
【００１１】
従って、本発明の目的は、上記した従来技術の問題点を解決し、複数言語入力に対応し、かつ、文字コードや仮想キーコードを出力することが可能な統合キーボードドライバを提供することにある。
【００１２】
【課題を解決するための手段およびその作用・効果】
上記した目的の少なくとも一部を達成するために、本発明の統合キーボードドライバは、キーボードからのスキャンコードを入力して、所望言語に対応する文字コードを出力する統合キーボードドライバであって、
前記スキャンコードを、対応する仮想キーコードに変換して出力する仮想キーボードドライバと、
変換して得られた前記仮想キーコードを、対応する文字コードに変換して出力するキーボードドライバと、
を備え、
前記仮想キーボードドライバは、
前記スキャンコードと前記仮想キーコードとの対応関係を規定する変換テーブルであって、複数言語に対応すべく、各言語毎に用意される複数の第１変換テーブルと、
外部から取得した言語指定情報に基づいて、前記複数の第１変換テーブルの中から、指定された言語に対応する第１変換テーブルを選択する第１選択部と、
選択した前記第１変換テーブルを用いて、前記スキャンコードを、対応する前記仮想キーコードへ変換して出力する仮想キーコード取得部と、
を備えると共に、
前記キーボードドライバは、
前記仮想キーコードと文字コードとの対応関係を規定する変換テーブルであって、前記複数言語に対応すべく、各言語毎に用意される複数の第２変換テーブルと、
外部から取得した前記言語指定情報に基づいて、前記複数の第２変換テーブルの中から、指定された前記言語に対応する第２変換テーブルを選択する第２選択部と、
選択した前記第２変換テーブルを用いて、前記仮想キーコードを、対応する前記文字コードへ変換して出力する文字コード取得部と、
を備えることを要旨とする。
【００１３】
このように、本発明の統合キーボードドライバでは、仮想キーボードドライバとキーボードドライバとを備え、仮想キーボードドライバには、スキャンコードと仮想キーコードとの対応関係を規定する変換テーブルを各言語毎に用意し、キーボードドライバには、仮想キーコードと文字コードとの対応関係を規定する変換テーブルを各言語毎に用意する。そして、仮想キーボードドライバ及びキーボードドライバにおいて、それぞれ、言語指定情報に基づいて、それら変換テーブルの中から、指定された言語に対応する変換テーブルを選択する。さらに、仮想キーボードドライバでは、選択した変換テーブルを用いて、キーボードからのスキャンコードを、対応する仮想キーコードを変換して出力し、キーボードドライバでは、選択した変換テーブルを用いて、仮想キーボードドライバからの仮想キーコードを、対応する文字コードに変換して出力する。
【００１４】
従って、本発明によれば、複数言語入力に対応し、かつ、文字コードや仮想キーコードを出力することが可能な統合キーボードドライバを実現することができる。また、本発明では、仮想キーボードドライバ及びキーボードドライバにおいて、それぞれ、変換テーブルを各言語毎に用意し、それらを選択して切り換えることにより、１つの統合キーボードドライバを各言語共通で利用するようにしている。そのため、各言語毎に、統合キーボードドライバを用意する必要がなく、しかも、各言語毎に統合キーボードドライバを用意する場合に比較して、ドライバのサイズを小さくすることができる。
【００１５】
本発明の統合キーボードドライバにおいて、前記仮想キーボードドライバは、前記キーボードからの前記スキャンコードを解析するスキャンコード解析部をさらに備えると共に、前記文字コードドライバは、前記仮想キーボードドライバからの前記仮想キーコードを解析する仮想キーコード解析部をさらに備えることが好ましい。
【００１６】
このようなスキャンコード解析部や仮想キーコード解析部を備えることにより、仮想キーコード取得部では、スキャンコード解析部による解析結果を参照して、スキャンコードを適切な仮想キーコードに変換することができる。また、文字コード取得部では、仮想キーコード解析部による解析結果を参照して、仮想キーコードを、その組み合わせなどに応じた文字コードに変換することができる。
【００１７】
また、本発明の統合キーボードドライバにおいて、前記第１及び第２選択部は、前記統合キーボードドライバの起動時に、それぞれ、前記言語指定情報を取得して、前記変換テーブルの選択を行うようにしても良い。
【００１８】
なお、本発明は、上記した統合キーボードドライバに限ることなく、そのようなキーボードドライバを備えたプロジェクタとしての態様でも実現することが可能である。また、そのような装置発明の態様に限ることなく、コード変換方法などの方法発明としての態様で実現することも可能であり、さらには、それら方法や装置を構築するためのコンピュータプログラムとしての態様や、そのようなコンピュータプログラムを記録した記録媒体としての態様や、上記コンピュータプログラムを含み搬送波内に具現化されたデータ信号など、種々の態様で実現することも可能である。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態を実施例に基づいて説明する。図１は本発明の一実施例としての統合キーボードドライバを搭載したプロジェクタの構成を示すブロック図である。
【００２０】
図１に示すように、プロジェクタ１００には、外部に、文字入力を行うためのキーボード１５０がケーブルなどを介して接続されていると共に、リモートコントローラ（以下、リモコンと略す）１６０が赤外線通信などの無線を介して接続されている。
【００２１】
このプロジェクタ１００は、２ＣＰＵ構成となっており、画像投写機能などを制御する第１ＣＰＵ１０２と、ネットワーク接続機能，文字入力機能などを制御する第２ＣＰＵ１０４と、を備えている。第１ＣＰＵ１０２は、第１メモリ１０６に格納されているコンピュータプログラムを読み出して実行することにより、上記制御などを実現する。また、第２ＣＰＵ１０４は、第２メモリ１０８に格納されているコンピュータプログラムを読み出して実行することにより、ＯＳ１３０や統合キーボードドライバ１４０として機能する。なお、これらＯＳ１３０及び統合キーボードドライバ１４０は、第２メモリ１０８のうち、ＲＯＭ（図示せず）に格納されている。但し、統合キーボードドライバ１４０については、例えば、予め、ＰＣＭＣＩＡカード（図示せず）などにコンピュータプログラムを格納しておき、起動時に、ＰＣＭＣＩＡインタフェース部（図示せず）を介して、第２メモリ１０８のうち、ＲＡＭ（図示せず）に読み込ませるようにしてもよい。また、ＯＳ１３０としては、マイクロソフト社によって開発されたＷｉｎｄｏｗｓ（登録商標）  ＣＥなどを適用することができる。
【００２２】
その他、プロジェクタ１００は、画像投写部１１０と、リモコン受信部１１２と、ネットワークインタフェース部１１４と、キーボードインタフェース部１１６と、Ｉ／Ｏポート１１８と、を主として備えている。このうち、画像投写部１１０は、画像入力端子から入力された画像信号に所望の処理を施した後、その画像信号に応じて液晶パネルなどのライトバルブ（図示せず）を駆動し、光源（図示せず）から照射された照明光を変調する。そして、その変調された照明光を投写光学系（図示せず）によって投写スクリーン（図示せず）上に投写して、画像投写を実現する。リモコン受信部１１２は、リモコン１６０から出力された赤外線信号を受信し、Ｉ／Ｏポート１１８を介して第１ＣＰＵ１０２に伝える。ネットワークインタフェース部１１４は、プロジェクタ１００がネットワーク接続端子を介してＬＡＮなどのネットワークに接続されている場合に、そのネットワークから入力されたコマンドやデータを所望の形式に変換して、第２ＣＰＵ１０４などに伝える。キーボードインタフェース部１１６は、キーボード１５０から出力されるスキャンコードを第２ＣＰＵ１０４に伝える。Ｉ／Ｏポート１１８は、第１ＣＰＵ１０２と第２ＣＰＵ１０４との間の信号のやり取りや、他の構成要素同士の信号のやり取りを仲介する。
【００２３】
次に、本発明の特徴部分である統合キーボードドライバ１４０の構成について説明する。図２は図１における統合キーボードドライバ１４０の内部構成を示すブロック図である。
【００２４】
本実施例の統合キーボードドライバ１４０は、前述したとおり、第２ＣＰＵ１０４が第２メモリ１０８内の所望のコンピュータプログラムを実行することによって、実現される。
【００２５】
図２に示すように、この統合キーボードドライバ１４０は、仮想キーボードドライバ１４０Ａと、キーボードドライバ１４０Ｂと、で構成されている。
【００２６】
仮想キーボードドライバ１４０Ａは、スキャンコード解析部１４１と、仮想キーコード取得部１４２と、仮想キーコード変換テーブル選択部１４３の他、複数の仮想キーコード変換テーブル１４４を備えている。このうち、仮想キーコード変換テーブル１４４は、スキャンコードと仮想キーコードとの対応関係を規定するテーブルであって、スキャンコードを仮想キーコードへ変換する際に参照される。この仮想キーコード変換テーブル１４４は、日本語仕様，英語仕様，フランス語仕様，ドイツ語仕様という具合に、主要な言語について、言語毎に用意されている。
【００２７】  
一方、キーボードドライバ１４０Ｂは、仮想キーコード解析部１４５と、文字コード取得部１４６と、文字コード変換テーブル選択部１４７と、複数の文字コード変換テーブル１４８と、を備えている。このうち、文字コード変換テーブル１４８は、仮想キーコードと文字コードとの対応関係を示すテーブルであって、仮想キーコードを文字コードに変換する際に参照される。この文字コード変換テーブル１４８も、日本語仕様，英語仕様，フランス語仕様，ドイツ語仕様という具合に、仮想キーコード変換テーブル１４４の場合と同様の言語について、言語毎に用意されている。
【００２８】
それでは、本実施例の統合キーボードドライバ１４０の動作について、詳細に説明する前に、その動作の前提となる、メニュー画面などにおける表示言語の切り換え動作について簡単に説明する。
【００２９】
ユーザがリモコン１６０を用いて、「オンスクリーンメニュー」を選択すると、第１ＣＰＵ１０２は、その選択に応じて、画像投写部１１０により投写画面上にメニュー画面を表示させる。ユーザがそのメニュー画面の中から「言語切り換え」をさらに選択すると、第１ＣＰＵ１０２は、「日本語」，「英語」，「フランス語」，「ドイツ語」など、表示可能な言語をリストアップする。ユーザが、それら言語の中から切り換えたい言語を選択すると、第１ＣＰＵ１０２は、メニュー画面を、それまで表示していた言語から、新たに選択された言語に切り換えて表示させる。また、第１ＣＰＵ１０２は、第１メモリ１０６に記憶している国番号を、新たに選択された言語に対応する国番号に書き換える。
【００３０】
このようにして、メニュー画面などに用いる表示言語は切り換えられる。しかしながら、本実施例においては、文字入力に用いる言語は、文字入力機能が第１ＣＰＵ１０２ではなく第２ＣＰＵ１０４によって制御されているため、プロジェクタ１００が、再度、電源オンされるまでは、切り換わらない。
【００３１】
そこで、プロジェクタ１００の電源オン時の処理動作について、図３を用いて説明する。図３は図１のプロジェクタ１００の電源オン時における主要構成要素の処理手順を示すフローチャートである。
【００３２】
プロジェクタ１００の電源がオンされると、第１ＣＰＵ１０２が起動されると共に、第２ＣＰＵ１０４が起動され、ＯＳ１３０と統合キーボードドライバ１４０が立ち上がる。そこで、図３に示すように、まず、ＯＳ１３０が、第１ＣＰＵ１０２に対して国番号の取得を要求する（ステップＳ１０２）。第１ＣＰＵ１０２は、第１メモリ１０６に記憶されている国番号をＯＳ１３０に応答する（ステップＳ１０４）。このとき、前回のプロジェクタ１００の稼働中に、表示言語の切り換えが行われていれば、第１ＣＰＵ１０２は、前述したとおり、第１メモリ１０６に記憶している国番号を、新たに選択された言語に対応する国番号に書き換えているので、その国番号を応答することになる。なお、表示言語の切り換えが行われていなければ、それまで第１メモリ１０６に記憶していた国番号をそのまま応答する。ＯＳ１３０は、応答された国番号を取得すると、その国番号をレジストリに書き込む。
【００３３】
次に、ＯＳ１３０は、ドライバ群の初期化を開始し（ステップＳ１０６）、まず、キーボードドライバ１４０Ｂに対し初期化を指示する（ステップＳ１０８）。これにより、キーボードドライバ１４０Ｂは、ＯＳ１３０に対して国番号の取得を要求する（ステップＳ１１０）。ＯＳ１３０は、レジストリから国番号を読み出して、キーボードドライバ１４０Ｂに応答する（ステップＳ１１２）。キーボードドライバ１４０Ｂの文字コード変換テーブル選択部１４７は、応答された国番号を取得する。
【００３４】
そして、文字コード変換テーブル選択部１４７は、複数の文字コード変換テーブル１４８の中から、取得した国番号に応じた言語仕様の文字コードテーブルを選択する（ステップＳ１１４）。なお、キーボードドライバ１４０ＢがＯＳ１３０からの国番号を取得できない場合には、予め、初期値として用意された国番号を用い、その国番号に応じた文字コードテーブルを選択する。キーボードドライバ１４０Ｂは、文字コードテーブルの選択が完了すると、ＯＳ１３０に対して初期化終了を応答する（ステップＳ１１６）。
【００３５】
続いて、ＯＳ１３０は、仮想キーボードドライバ１４０Ａに対し初期化を指示する（ステップＳ１１８）。これにより、仮想キーボードドライバ１４０Ａは、ＯＳ１３０に対して国番号の取得を要求する（ステップＳ１２０）。ＯＳ１３０は、レジストリから先ほどと同じ国番号を読み出して、仮想キーボードドライバ１４０Ａに応答する（ステップＳ１２２）。仮想キーボードドライバ１４０Ａの仮想キーコード変換テーブル選択部１４３は、応答された国番号を取得する。
【００３６】
そして、仮想キーコード変換テーブル選択部１４３は、複数の仮想キーコード変換テーブル１４４の中から、取得した国番号に応じた言語仕様の仮想キーコードテーブルを選択する（ステップＳ１２４）。このとき、取得した国番号は、先にキーボードドライバ１４０Ｂが取得した国番号と同じ国番号であるので、仮想キーコード変換テーブル選択部１４３は、文字コード変換テーブル選択部１４７が選択した文字コード変換テーブルの言語仕様と同じ言語仕様の仮想キーコード変換テーブルを選択することになる。なお、仮想キーボードドライバ１４０ＡがＯＳ１３０からの国番号を取得できない場合には、予め、初期値として用意された、キーボードドライバ１４０Ｂの場合と同じ国番号を用いて、その国番号に応じた仮想キーコードテーブルを選択する。仮想キーボードドライバ１４０Ａは、仮想キーコードテーブルの選択が完了すると、ＯＳ１３０に対して初期化終了を応答する（ステップＳ１２６）。
【００３７】
以上説明した、プロジェクタ１００の電源オン時における統合キーボードドライバ１４０の動作が実行されることによって、メニュー画面などに用いる表示言語と同じ言語仕様の仮想キーコード変換テーブル及び文字コード変換テーブルが、仮想キーボードドライバ１４０Ａ及びキーボードドライバ１４０Ｂにおいてそれぞれ選択されることになる。従って、前回のプロジェクタ１００の稼働中に、表示言語の切り換えが行われていれば、この電源オン時の動作によって、切り換え後の表示言語と同じ言語仕様の変換テーブルがそれぞれ選択されることになる。
【００３８】
次に、文字入力時における統合キーボードドライバ１４０の動作について、図２を用いて説明する。まず、ユーザがキーボード１５０を用いてキー入力を行うと、キーボード１５０は、その押下されたキーに対応するスキャンコードを出力する。統合キーボードドライバ１４０は、そのスキャンコードをキーボードインタフェース部１１６を介して取得すると、まず、仮想キーボードドライバ１４０Ａにおいて、スキャンコード解析部１４１がそのスキャンコードを解析し、どのキーのスキャンコードかを認識する。次に、仮想キーコード取得部１４２は、その解析結果を参照して、仮想キーコード変換テーブル選択部１４３が選択した仮想キーコード変換テーブルを用いて、取得したスキャンコードを、対応する仮想キーコードに変換して出力する。
【００３９】
一般に、キーボード１５０においては、キートップに表示されている文字を入力するために用いるキーだけでなく、例えば、電源キーやカーソルキーなど単独で或る特定の機能を実行させるためのキーや、Ａｌｔキーなど、他のキーと組み合わせによって、或る特定の機能を実行させるためのキーなどがあり、それら単独のキーや、キーの組み合わせについて、仮想キーコードが割り当てられている。従って、例えば、Ａｌｔキーと上向きカーソルキーとが共に押下されたときに、ページアップの機能を実行させるように設定されている場合には、Ａｌｔキーと上向きカーソルキーとの組み合わせに対して、ページアップの仮想キーコードが出力されることになる。
【００４０】
仮想キーボードドライバ１４０Ａから出力された仮想キーコードは、キーボードドライバ１４０Ｂに入力される他、統合キーボードドライバ１４０の外部に出力される。統合キーボードドライバ１４０の外部に出力された仮想キーコードは、例えば、アプリケーションプログラムによって取得され、対応する処理の実行に供される。
【００４１】
次に、キーボードドライバ１４０Ｂにおいて、仮想キーコード解析部１４５は、その仮想キーコードを解析し、ＳｈｉｆｔキーやＣｔｒｌキーが押下されたかどうか、ＮｕｍＬｏｃｋやＣａｐｓＬｏｃｋが有効であるかどうかを判断する。次に、文字コード取得部１４６は、仮想キーコード解析部１４５による解析結果を参照しながら、文字コード変換テーブル選択部１４７が選択した文字コード変換テーブルを用いて、取得した仮想キーコードを、対応する文字コードに変換して出力する。例えば、Ａキーが押下されている場合には、そのＡキーの仮想キーコードに対して、文字コードとして、ＡＳＣＩＩコードのａ（小文字Ａ）のコードが出力され、ＳｈｉｆｔキーとＡキーが共に押下されている場合には、それらの仮想キーコードに対して、文字コードとして、ＡＳＣＩＩコードのＡ（大文字Ａ）のコードが出力される。また、Ａキーが押下されている場合であって、ＣａｐｓＬｏｃｋが有効である場合にも、それらの仮想キーコードに対して、文字コードとして、ＡＳＣＩＩコードのＡ（大文字Ａ）のコードが出力される。
【００４２】
文字コード取得部１４６から出力された文字コードは、ＯＳ１３０に入力される。ＯＳ１３０は、その文字コードに基づいて、その文字コードに対応したフォントデータを取得して、Ｉ／Ｏポート１１８を介して画像投写部１１０に送り、画像投写部１１０によって、投写画面上に表示させる。
【００４３】
以上説明したように、本実施例によれば、複数言語入力に対応し、かつ、文字コードや仮想キーコードを出力することが可能な統合キーボードドライバを実現することができる。また、本実施例では、仮想キーコード変換テーブル及び文字コード変換テーブルを各言語毎に用意し、それらを選択して切り換えることにより、１つの統合キーボードドライバを各言語共通で利用するようにしている。そのため、各言語毎に、統合キーボードドライバを用意する必要がなく、しかも、各言語毎に統合キーボードドライバを用意する場合に比較して、ドライバのサイズを小さくすることができる。例えば、７か国言語に対応する場合、各言語毎に統合キーボードドライバを用意すると、その合計サイズは２３３ＫＢになるが、本実施例の如く、１つの統合キーボードドライバで構成すると、そのサイズは５５ＫＢとなる。
【００４４】
なお、本発明は上記した実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。
【図面の簡単な説明】
【図１】本発明の一実施例としての統合キーボードドライバを搭載したプロジェクタの構成を示すブロック図である。
【図２】図１における統合キーボードドライバ１４０の構成を示すブロック図である。
【図３】図１のプロジェクタ１００の電源オン時における主要構成要素の処理手順を示すフローチャートである。
【符号の説明】
１００…プロジェクタ
１０２…第１ＣＰＵ
１０４…第２ＣＰＵ
１０６…第１メモリ
１０８…第２メモリ
１１０…画像投写部
１１２…リモコン受信部
１１４…ネットワークインタフェース部
１１６…キーボードインタフェース部
１１８…Ｉ／Ｏポート
１４０…統合キーボードドライバ
１４０Ａ…仮想キーボードドライバ
１４０Ｂ…キーボードドライバ
１４１…スキャンコード解析部
１４２…仮想キーコード取得部
１４３…仮想キーコード変換テーブル選択部
１４４…仮想キーコード変換テーブル
１４５…仮想キーコード解析部
１４６…文字コード取得部
１４７…文字コード変換テーブル選択部
１４８…文字コード変換テーブル
１５０…キーボード
１６０…リモコン
【図１】
2004220158.tif 000003
【図２】
2004220158.tif 000004
【図３】
2004220158.tif 000005