(57)【特許請求の範囲】
【請求項１】
少なくとも１つの入力デバイスからの入力データを情報処理装置に送信するための入力装置であって、
所定のバスに接続され、前記入力デバイスを制御し、かつデータを取得する制御部、
所定の外部拡張デバイスを含む各種のデバイスを前記バスに接続するための拡張コネクタ、
前記バスの、前記拡張コネクタから前記制御部への接続をＯＮ／ＯＦＦする切り替え部、
前記外部拡張デバイスと同等の機能を有するセンサ、および
前記センサから取得されるデータを、前記バスを介して前記制御部に送信するためのセンサ制御部であって、さらに前記バスの前記制御部側および前記拡張コネクタ側にそれぞれ前記切り替え部を介さずに接続され、かつ前記切り替え部のＯＮ／ＯＦＦを制御するセンサ制御部を備え、
前記センサ制御部は、前記制御部から自身へのアクセスがあったとき、前記切り替え部の接続をＯＦＦにする、入力装置。
【請求項２】
前記センサ制御部は、前記制御部から自身へのアクセスがあったときさらに、前記拡張コネクタ側に対して、前記外部拡張デバイスからデータを送信させるための信号を送信し、かつ当該信号に基づいて当該拡張コネクタ側から送信されてくるデータを破棄する、請求項１記載の入力装置。
【請求項３】
前記センサはジャイロセンサである、請求項１または２記載の入力装置。
【請求項４】
前記制御部からのアクセスは、当該アクセスの対象を示す情報に続いて指示の内容が送信され、
前記センサ制御部は、前記制御部からのアクセスの対象が自身であるか否かを判定し、前記制御部からのアクセスの対象が自身であった場合、前記制御部からの指示が前記拡張コネクタに送信される前に前記切り替え部の接続をＯＦＦにする、請求項１ないし３のいずれか記載の入力装置。
【請求項５】
前記センサ制御部は、前記センサを使用するモードと使用しないモードを少なくとも含む複数のモードを有し、前記制御部からの指示の内容が、前記センサを使用しないモードから使用するモードへのモード変更である場合に、モードを変更し、前記センサを起動し、以降前記センサからのデータを前記制御部に送信するようにする、請求項４記載の入力装置。
【請求項６】
前記センサ制御部は、前記センサを使用するモードのときに、前記拡張コネクタを介して別のデバイスが接続されている場合に、当該別のデバイスからのデータを取得し、当該別のデバイスからのデータと前記センサから取得されるデータとを交互に前記制御部に送信する、請求項５記載の入力装置。
【請求項７】
前記センサ制御部はさらに、前記センサを使用するモードにおいて、前記制御部からの前記センサを使用しないモードへの変更が指示されたとき、前記切り替え部の接続をＯＮにする、請求項５または６記載の入力装置。
【請求項８】
前記制御部からのアクセスの対象が自身であった場合における、前記アクセスの対象を示す情報および指示の内容は、前記外部拡張デバイスを制御するものと同一の信号である、請求項４記載の入力装置。
【請求項９】
少なくとも１つの入力デバイスからの入力データを情報処理装置に送信するための入力装置であって、所定のバスに接続され、前記入力デバイスを制御し、かつデータを取得する制御部と、所定の外部拡張デバイスを含む各種のデバイスを前記バスに接続するための拡張コネクタと、前記バスの、前記拡張コネクタから前記制御部への接続をＯＮ／ＯＦＦする切り替え部と、外部拡張デバイスと同等の機能を有するセンサと、前記センサから取得されるデータを、前記バスを介して前記制御部に送信するためのセンサ制御コンピュータであって、さらに前記バスの前記制御部側および前記拡張コネクタ側にそれぞれ前記切り替え部を介さずに接続され、かつ前記切り替え部のＯＮ／ＯＦＦを制御するセンサ制御コンピュータと、を備える入力装置において、
前記センサ制御コンピュータを、前記制御部から自身へのアクセスがあったとき、前記切り替え部の接続をＯＦＦにする手段として機能させる、センサ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力装置に関し、特にたとえば、少なくとも１つの入力デバイスからの入力データを情報処理装置に送信するための、入力装置に関する。
【背景技術】
【０００２】
この種の入力装置の一例である操作装置が、特許文献１に開示されている。この背景技術では、操作装置（第１コントローラ）は、入力デバイスとして撮像情報演算部，加速度センサ等を備え、撮像情報演算部からの位置座標データ，加速度センサからの加速度データ等を入力データとして情報処理装置（ゲーム装置）に送信する。
【０００３】
また、操作装置には、さらなる入力デバイスとしてのジャイロセンサを含む拡張操作装置（ジャイロセンサユニット）が、拡張コネクタを介して（共通のバスに）接続される。操作装置は、拡張操作装置と一体で用いられ、撮像情報演算部からの位置座標データ，加速度センサからの加速度データ等を第１の入力データとし、ジャイロセンサからの角速度データを第２の入力データとして、情報処理装置に交互に送信する。
【０００４】
そして、拡張コネクタには、他の拡張操作装置（第２コントローラ）を接続することもできる。
【特許文献１】特許第４２５５５１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記の背景技術は、拡張コネクタに拡張操作装置を接続するものなので、操作装置の大きさが大きくなってしまう。
【０００６】
そして、仮に特許文献１記載の操作装置を改良する目的で拡張操作装置のものと同じセンサを操作装置に内蔵するようにする場合であっても、互換性を維持するためには当該拡張コネクタは他の拡張操作装置も接続可能でなければならないため、コネクタ形状は同じままであることが求められる。また、拡張操作装置によってはハウジング形状も同じであることが好ましい場合もある。したがって、当該センサを内蔵した操作装置を新たに提供するとしても、依然として特許文献１の拡張操作装置を接続することが物理的には可能な状態で提供されることが想定される。そのため、特許文献１記載の操作装置および拡張操作装置と、センサを内蔵するようにした操作装置が両方手元にあった場合には、ユーザが誤ってセンサを内蔵した操作装置に拡張操作装置をさらに接続してしまうこともあり得、その場合、共通のバスに同じセンサが接続されてしまうことがあり得る。この場合、どちらのセンサにも同じアドレスが割り当てられて、共通のバス上でデータ競合が生じる可能性がある。
【０００７】
それゆえに、この発明の目的は、新規な、入力装置を提供することである。
【０００８】
この発明の他の目的は、外部拡張デバイスを接続して用いられる入力装置に対して、当該外部拡張デバイスと同等の機能を有するデバイスを内蔵した入力装置を新たに提供する際に、互換性を維持したまま、提供することである。
【０００９】
この発明のその他の目的は、上記のようなデバイスを内蔵した入力装置に、誤った外部拡張デバイスを接続してしまった場合でも、誤動作等の発生を回避することである。
【課題を解決するための手段】
【００１０】
この発明は、上記の課題を解決するために、以下の構成を採用した。
【００１１】
第１の発明は、少なくとも１つの入力デバイスからの入力データを情報処理装置に送信するための入力装置であって、所定のバスに接続され、入力デバイスを制御し、かつデータを取得する制御部、所定の外部拡張デバイスを含む各種のデバイスをバスに接続するための拡張コネクタ、バスの、拡張コネクタから制御部への接続をＯＮ／ＯＦＦする切り替え部、外部拡張デバイスと同等の機能を有するセンサ、および、センサから取得されるデータを、バスを介して制御部に送信するためのセンサ制御部であって、さらにバスの制御部側および拡張コネクタ側にそれぞれ切り替え部を介さずに接続され、かつ切り替え部のＯＮ／ＯＦＦを制御するセンサ制御部を備え、センサ制御部は、制御部から自身へのアクセスがあったとき、切り替え部の接続をＯＦＦにする。
【００１２】
第１の発明では、入力デバイスを制御し、かつデータを取得する制御部が、所定のバスに接続されている。このバスには、拡張コネクタを介して、所定の外部拡張デバイスが接続され得るし、外部拡張デバイスに代えて、またはこれをさらに介して、他のデバイスが接続されてもよい。このバスの、拡張コネクタから制御部への接続は、切り替え部によってＯＮ／ＯＦＦされる。外部拡張デバイスと同等の機能を有するセンサから取得されるデータは、バスの制御部側および拡張コネクタ側にそれぞれ切り替え部を介さずに接続され、かつ切り替え部のＯＮ／ＯＦＦを制御するセンサ制御部によって、バスを介して制御部に送信される。センサ制御部は、制御部から自身へのアクセスがあったとき、切り替え部の接続をＯＦＦにする。
【００１３】
第１の発明によれば、制御部からセンサ制御部へのアクセスに応じて、拡張コネクタから制御部への接続がＯＦＦされるので、拡張コネクタに外部拡張デバイスが接続されても、センサと外部拡張デバイスとの間でデータ競合等の問題が生じることはなくなる。したがって、ハウジング形状が同じでよく、外部拡張デバイスへの互換性を維持できる。
【００１４】
第２の発明は、第１の発明に従属する入力装置であって、センサ制御部は、制御部から自身へのアクセスがあったときさらに、拡張コネクタ側に対して、外部拡張デバイスからデータを送信させるための信号を送信し、かつ当該信号に基づいて当該拡張コネクタ側から送信されてくるデータを破棄する。
【００１５】
第２の発明では、制御部からセンサ制御部へのアクセスがあると、センサ制御部から拡張コネクタ側に、外部拡張デバイスからデータを送信させるための信号が送信され、外部拡張デバイスから拡張コネクタを経て送信されてくるデータは、センサ制御部によって破棄される。
【００１６】
第２の発明によれば、アクセスがあったとき、外部拡張デバイスに信号を送ることで、外部拡張デバイスからデータを送信させ、この送信されたデータを破棄するので、もしアクセスがデバイスに到達したとしても、デバイスを元の状態に戻すことができる。
【００１７】
第３の発明は、第１または第２の発明に従属する入力装置であって、センサはジャイロセンサである。
【００１８】
第３の発明では、ジャイロセンサから取得される角速度データが、バスを介して制御部に送信される。
【００１９】
第３の発明によれば、角速度はジャイロセンサを入力装置のどこに付けても同じなので、内蔵のためにセンサの位置が変わっても外付けの場合と同じように情報処理が行える。
【００２０】
第４の発明は、第１ないし第３のいずれかの発明に従属する入力装置であって、制御部からのアクセスは、当該アクセスの対象を示す情報に続いて指示の内容が送信され、センサ制御部は、制御部からのアクセスの対象が自身であるか否かを判定し、制御部からのアクセスの対象が自身であった場合、制御部からの指示が拡張コネクタに送信される前に切り替え部の接続をＯＦＦにする。
【００２１】
第４の発明では、制御部からのアクセスは対象を示す情報と指示の内容とを含み、先に対象を示す情報が送信され、続いて指示の内容が送信される。したがって、センサ制御部は、先に送信される情報に基づいて対象が自身であるか否かを判定し、対象が自身であると判例された場合、指示の内容が拡張コネクタに送信される前に切り替え部の接続をＯＦＦにすることができる。
【００２２】
第４の発明によれば、拡張コネクタに外部拡張デバイスが接続されても、制御部からの指示は外部拡張デバイスに到達しなくなるので、制御部からの指示による外部拡張デバイスの誤動作を回避することができる。
【００２３】
第５の発明は、第４の発明に従属する入力装置であって、センサ制御部は、センサを使用するモードと使用しないモードを少なくとも含む複数のモードを有し、制御部からの指示の内容が、センサを使用しないモードから使用するモードへのモード変更である場合に、モードを変更し、センサを起動し、以降センサからのデータを制御部に送信するようにする。
【００２４】
第５の発明によれば、制御部からセンサ制御部へのモード変更の指示は、外部拡張デバイスには到達しないので、センサ制御部だけにモード変更を行わせて、センサの使用を開始させることができる。
【００２５】
第６の発明は、第５の発明に従属する入力装置であって、センサ制御部は、センサを使用するモードのときに、拡張コネクタを介して別のデバイスが接続されている場合に、当該別のデバイスからのデータを取得し、当該別のデバイスからのデータとセンサから取得されるデータとを交互に制御部に送信する。
【００２６】
第６の発明では、センサを使用するモードのときに、拡張コネクタを介して別のデバイスが接続されると、当該別のデバイスからのデータとセンサから取得されるデータとが交互に制御部に送信される。
【００２７】
第６の発明によれば、センサから取得されるデータに加えて、別のデバイスからのデータも利用することで、より多様な情報処理が可能となる。
【００２８】
第７の発明は、第５または第６の発明に従属する入力装置であって、センサ制御部はさらに、センサを使用するモードにおいて、制御部からのセンサを使用しないモードへの変更が指示されたとき、切り替え部の接続をＯＮにする。
【００２９】
第７の発明では、センサを使用するモードから使用しないモードへのモード変更に伴い、切り替え部の接続はＯＦＦからＯＮに変化する。したがって、センサを使用しないモードでは、拡張コネクタから制御部へのバイパスができるので、拡張コネクタに接続された別のデバイスからのデータは、センサ制御部を介すことなく制御部に送信される。
【００３０】
第７の発明によれば、センサ制御部の負荷を軽減できる。
【００３１】
第８の発明は、第４の発明に従属する入力装置であって、制御部からのアクセスの対象が自身であった場合における、アクセスの対象を示す情報および指示の内容は、外部拡張デバイスを制御するものと同一の信号である。
【００３２】
第８の発明によれば、制御部は、外部拡張デバイスを制御する信号（アクセスデータ）と同一の信号を利用してセンサ制御部にアクセスできるので、制御部を変更しなくてもよい。
【００３３】
第９の発明は、少なくとも１つの入力デバイスからの入力データを情報処理装置に送信するための入力装置であって、所定のバスに接続され、入力デバイスを制御し、かつデータを取得する制御部と、所定の外部拡張デバイスを含む各種のデバイスをバスに接続するための拡張コネクタと、バスの、拡張コネクタから制御部への接続をＯＮ／ＯＦＦする切り替え部と、外部拡張デバイスと同等の機能を有するセンサと、センサから取得されるデータを、バスを介して制御部に送信するためのセンサ制御コンピュータであって、さらにバスの制御部側および拡張コネクタ側にそれぞれ切り替え部を介さずに接続され、かつ切り替え部のＯＮ／ＯＦＦを制御するセンサ制御コンピュータと、を備える入力装置において、センサ制御コンピュータを、制御部から自身へのアクセスがあったとき、切り替え部の接続をＯＦＦにする手段として機能させる、センサ制御プログラムである。
【００３４】
第９の発明でも、第１の発明と同様に、拡張コネクタに外部拡張デバイスが接続されても、データ競合等の問題が生じることはなくなる。
【発明の効果】
【００３５】
この発明によれば、所定の外部拡張デバイスを接続して用いられる入力装置に対して、当該外部拡張デバイスと同等の機能を有するデバイスを内蔵した入力装置を新たに提供する際に、当該外部拡張デバイスに対する互換性を維持したまま、提供することができる。また、このようなデバイスを内蔵した入力装置に、誤って従来の外部拡張デバイスを接続してしまった場合でも、誤動作等の発生を回避することができる。
【００３６】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００３７】
【図１】この発明の一実施例の構成を示すブロック図である。
【図２】図１実施例に適用される第１コントローラの外観を示す図解図であり、図２（Ａ）は第１コントローラを上面後方から見た斜視図であり、図２（Ｂ）は第１コントローラを下面前方から見た斜視図である。
【図３】図１実施例に適用される第１コントローラの内部構成を示す図解図である。
【図４】図１実施例に適用される第２コントローラの本体の外観を示す図解図であり、図４（Ａ）は第２コントローラ本体を上面後方から見た斜視図であり、図４（Ｂ）は第１コントローラ本体を下面前方から見た斜視図である。
【図５】第２コントローラのコネクタの外観を示す図解図である。
【図６】第１コントローラに第２コントローラのコネクタを接続した状態で、第１コントローラに装着されたストラップのひもをコネクタのフックに掛け止めた様子を示す図解図である。
【図７】図１実施例に適用されるジャイロセンサユニットの外観を示す図解図であり、図７（Ａ）はジャイロセンサユニットを上面前方から見た斜視図であり、図７（Ｂ）はジャイロセンサユニットを下面後方から見た斜視図である。
【図８】ジャイロセンサユニットの構成を示す図解図である。
【図９】第１コントローラにジャイロセンサユニットを接続した状態を示す図解図である。
【図１０】第１コントローラにジャイロセンサユニット介して第２コントローラを接続した状態を示す図解図である。
【図１１】図１実施例の電気的な構成を示すブロック図である。
【図１２】プレイヤがコントローラを操作する様子を示す図解図である。
【図１３】図１実施例に適用されるコントローラ全体の電気的な構成の一例を示すブロック図であり、第１コントローラに第２コントローラを接続した状態を示す。
【図１４】図１実施例に適用されるコントローラ全体の電気的な構成の他の一例を示すブロック図であり、第１コントローラにジャイロセンサユニットを介して第２コントローラを接続した状態を示す。
【図１５】第１コントローラの要部（ジャイロ制御部８５Ｃ）の構成例を示すブロック図である。
【図１６】ジャイロセンサユニットの要部（ジャイロ制御部１０４Ｃ）の構成例を示すブロック図である。
【図１７】第１コントローラのジャイロ制御部が取り扱うデータのフォーマットを示す図解図であり、図１７（Ａ）はジャイロ用データのフォーマットを示し、図１７（Ｂ）は第２コントローラ用データのフォーマットを示し、そして図１７（Ｃ）はアクセスデータのフォーマット示す。
【図１８】第１コントローラのジャイロ制御部が取り扱うデータのフォーマットを示す図解図であり、図１８（Ａ）は第１コントローラ用データのフォーマットを示し、図１８（Ｂ）はアクセスデータのフォーマット示す。
【図１９】第１コントローラの内蔵ジャイロの動作を示す図解図であり、図１９（Ａ）はモード制御を示し、図１９（Ｂ）はモード遷移を示す。
【図２０】第１コントローラの制御下でのジャイロセンサユニットの動作を示す図解図であり、図２０（Ａ）はモード制御を示し、図２０（Ｂ）はモード遷移を示す。
【００３８】
ジャイロセンサユニットのマイコンによる制御をモード毎に記載したテーブルを示す図解図である。
【図２１】第１コントローラのマイコン動作の一部を示すフロー図である。
【図２２】第１コントローラのマイコン動作の他の一部を示すフロー図である。
【図２３】第１コントローラのマイコン動作のその他の一部を示すフロー図である。
【図２４】第１コントローラのマイコン動作のさらにその他の一部を示すフロー図である。
【発明を実施するための形態】
【００３９】
以下、この発明の一実施例について、図面を参照しながら詳細に説明するが、最初に、先述した特許文献１（特許第４２５５５１０号公報）との関係を説明しておく。この実施例は、特許文献１の実施例に記載の拡張操作装置（ジャイロセンサユニット）が備えるデバイスと同等のデバイス（ジャイロセンサ）を入力装置（第１コントローラ）に内蔵したものである。したがって、この実施例の入力装置（第１コントローラ）は、特許文献１のジャイロセンサユニット付き第１コントローラと同等の機能を有する。この実施例の第２コントローラおよび情報処理装置（ゲーム装置）は、特許文献１のものと同じ構成を有し、かつ同様の動作を行う。この実施例に登場するジャイロセンサユニットもまた、特許文献１のものと同等であり、以下では特許文献１記載のジャイロセンサユニットと同じものが誤ってさらに接続された場合について説明する。なお、これらは一実施例に過ぎず、本発明は特許文献１記載のデバイスと同じもの以外にも適用できることは言うまでもない。すなわち特許文献１記載のデバイスに限らず、従来の外部拡張デバイスが存在する前提において当該デバイスと同等の機能を内蔵する入力装置を新たに提供する際には本発明が適用可能である。
【００４０】
この実施例の第１コントローラは、ジャイロセンサを内蔵しているので、さらにジャイロセンサユニットを接続する必要性はないが、コネクタ形状が共通であるため、誤って接続される可能性がある。しかし、この実施例の第１コントローラにジャイロセンサが誤って接続されても、第１コントローラのマイコン制御によって同等デバイス間のデータ競合が回避され、第１コントローラは正常に機能する。第１コントローラにジャイロセンサユニットを介して第２コントローラが接続された場合にも、各コントローラは問題なく動作し、ゲーム装置は、各コントローラからのデータに基づいてゲーム処理を実行することができる。
【００４１】
つまり、この実施例の第１コントローラは、ジャイロセンサを内蔵しながら、そのマイコン制御によって、特許文献１に記載されているような従来の第１コントローラとの間で、第２コントローラといった従来の拡張デバイスに対する互換性を保っている点に特徴がある。
【００４２】
第１コントローラ３４の内部構成は、図３に示されている。コントローラ１４全体の電気的構成は、第１コントローラ３４および第２コントローラ３６の間にジャイロセンサユニット１００が介在しない場合およびする場合に場合分けして、図１３および図１４に示されている。すなわち、図１４は誤ってジャイロセンサユニット１００が接続されてしまっている状態である。第１コントローラ３４の要部（ジャイロ制御部８５Ｃ）の構成は図１５に、ジャイロセンサユニット１００の要部（ジャイロ制御部１０４Ｃ）の構成は図１６に示されている。
【００４３】
第１コントローラ用のデータフォーマットは、図１８（Ａ）に示されている。第１コントローラでモード制御に利用されるアクセスデータの構造は、図１８（Ｂ）に示されている。第１コントローラ３４でのモード制御およびモード遷移は、図１９（Ａ）および図１９（Ｂ）に示されている。なお、これらのモード制御およびモード遷移は、ジャイロセンサユニット１００が従来の第１コントローラに接続された場合に行うものと同様である。ジャイロセンサユニット１００が第１コントローラ３４に接続された場合に行うモード制御およびモード遷移は、図２０（Ａ）および図２０（Ｂ）に示されている。なお、これらのモード制御およびモード遷移では、ジャイロモードおよびジャイロ＆第２コントローラモードは、スタンバイモードおよびバイパスモードと同等（これらに吸収された状態）になる。そして、第１コントローラ３４のマイコン制御は、図２１〜図２４に示されている。
【００４４】
さて、図１を参照して、この発明の一実施例であるゲームシステム１０は、ゲーム装置１２およびコントローラ１４を含む。ゲーム装置１２は据置型ゲーム装置である。コントローラ１４は、ユーザないしプレイヤの入力装置ないし操作装置である。ゲーム装置１２とコントローラ１４とは無線によって接続される。
【００４５】
ゲーム装置１２は、略直方体のハウジング１６を含み、ハウジング１６の前面にはディスクスロット１８およびメモリカードスロットカバー２０が設けられる。ディスクスロット１８から、ゲームプログラムおよびデータを記憶した情報記憶媒体の一例である光ディスク６６（図１１）が挿入されて、ハウジング１６内のディスクドライブ５４（図１１）に装着される。メモリカードスロットカバー２０の内側には外部メモリカード用コネクタ６２（図１１）が設けられており、外部メモリカード（図示せず）が挿入される。外部メモリカードは、光ディスク６６（図１１）から読み出したゲームプログラム等をローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイされたゲームのゲームデータ（結果データまたは途中データ）を保存（セーブ）しておいたりするために利用される。また、上記ゲームデータの保存は、外部メモリカードに代えて、たとえばフラッシュメモリ等の内部メモリに対して行うようにしてもよい。
【００４６】
ゲーム装置１２のハウジング１６の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、当該コネクタを用いて、ゲーム装置１２はＡＶケーブル２８を介してモニタ（ディスプレイ）３０に接続される。このモニタ３０は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル２８は、ゲーム装置１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に入力する。したがって、カラーテレビ（モニタ）３０の画面上にたとえば３Ｄビデオゲームのゲーム画像が表示され、内蔵されるスピーカ３２からゲーム音楽や効果音などのステレオゲーム音声が出力される。
【００４７】
また、モニタ３０の周辺（この実施例では、モニタ３０の上側）には、２つの赤外ＬＥＤ（マーカ）２２ａおよび２２ｂを備えるマーカ部２２が設けられる。マーカ２２ａおよび２２ｂは、それぞれモニタ３０の前方に向けて赤外光を出力する。
【００４８】
なお、ゲーム装置１２の電源は、一般的なＡＣアダプタ（図示せず）によって与えられる。ＡＣアダプタは家庭用の標準的な壁ソケットに接続され、家庭用電源を、ゲーム装置１２を駆動するのに適した低いＤＣ電圧信号に変換する。他の実施例では、電源としてバッテリが用いられてもよい。マーカ部２２は、図示しない電源線を通してゲーム装置１２に接続されており、ゲーム装置１２から電源の供給を受ける。
【００４９】
コントローラ１４は、詳細は後述されるが、それぞれが片手で把持可能な第１コントローラ３４および第２コントローラ３６と、第１コントローラ３４に装着されるジャイロセンサユニット１００とを含む。第１コントローラ３４の後端面にはコネクタ４２（図２（Ａ），図３，図１３および図１４）が設けられ、第２コントローラ３６の後端から延びるケーブル３８の先端にはコネクタ４０（図５，図６，図１３および図１４）が設けられ、そしてジャイロセンサユニット１００の先端面および後端面にはコネクタ１０６および１０８（図７（Ａ），図７（Ｂ），図８，図１３および図１４）がそれぞれ設けられる。ジャイロセンサユニット１００の先端面側のコネクタ１０６は第１コントローラ３４のコネクタ４２と接続可能であり、第２コントローラ３６のコネクタ４０は第１コントローラ３４のコネクタ４２またはジャイロセンサユニット１００の後端面側のコネクタ１０８と接続可能である。
【００５０】
なお、ゲームをするためにはジャイロセンサユニット１００は不要であって、第２コントローラ３６はジャイロセンサユニット１００を介さずに直接第１コントローラ３４に接続されて使用されることが好ましいが、本実施例においては、誤ってジャイロセンサユニット１００が接続されてしまった場合について説明をするために、ジャイロセンサユニット１００が接続されている。
【００５１】
コネクタ１０６をコネクタ４２に接続することで、ジャイロセンサユニット１００は、第１コントローラ３４と物理的および電気的に結合される。ただし、こうして第１コントローラ３４に装着（一体化）されたジャイロセンサユニット１００からは、第１コントローラ３４の角速度を示す角速度データが出力されることはない（詳細は後述）。特許文献１に記載のような従来の第１コントローラに装着された場合には、角速度データが出力される。
【００５２】
こうして第１コントローラ３４にジャイロセンサユニット１００が装着された場合、第２コントローラ３６のコネクタ４０は、ジャイロセンサユニット１００の後端面側のコネクタ１０８に接続される。すなわち、コネクタ４２は、コネクタ１０６とコネクタ４０の両者を選択的に接続可能な構造であって、コネクタ４０は、コネクタ４２とコネクタ１０８の両者に選択的に接続可能な構造である。したがって、ジャイロセンサユニット１００に設けられるコネクタ１０６とコネクタ１０８とは、同一のハウジングに設けられるため実際は接続できないが、コネクタの形状としては互いに接続可能な形状をしていることになる。第２コントローラ３６の入力データは、ケーブル３８およびジャイロセンサユニット１００を介して第１コントローラ３４に与えられる。第１コントローラ３４は、第１コントローラ３４自身の入力データと、第２コントローラ３６の入力データとを含むコントローラデータをゲーム装置１２に送信する。第１コントローラ３４の入力データには、第１コントローラ３４自身に内蔵されたジャイロセンサ８５（図３，図１３〜図１５）からの角速度データが含まれる（詳細は後述）。
【００５３】
なお、コネクタ４０をコネクタ４２に接続した場合には、第２コントローラ３６の操作データないし入力データはケーブル３８を介して第１コントローラ３４に与えられ、第１コントローラ３４は、第１コントローラ３４自身の入力データと第２コントローラ３６の入力データとを含むコントローラデータをゲーム装置１２に送信する。
【００５４】
このとき、第１コントローラ３４の入力データと、第２コントローラ３６の入力データを送信するシステムにおいて、一度に送信するデータ量を追加することができないように設計されている場合もあるが、第１コントローラ３４のマイコン９４は、ジャイロセンサ８５からの角速度データと、第２コントローラ３６からの入力データとを交互に無線モジュール７６へ出力することによって、両者のデータを送信することができる。
【００５５】
なお、ジャイロセンサユニット１００においても、従来の第１コントローラに接続された場合には、上記のようなデータ制御（交互出力）が行われる。
【００５６】
このゲームシステム１０において、ゲーム（または他のアプリケーション）をプレイするために、ユーザはまずゲーム装置１２の電源をオンし、次いで、ユーザはビデオゲーム（もしくは実行したいと思う他のアプリケーション）を記憶している適宜の光ディスク６６を選択し、その光ディスク６６をゲーム装置１２のディスクスロット１８からディスクドライブ５４にローディングする。これに応じて、ゲーム装置１２がその光ディスク６６に記憶されているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはゲーム装置１２に入力を与えるためにコントローラ１４を操作する。
【００５７】
図２には第１コントローラ３４の外観の一例が示される。図２（Ａ）は、第１コントローラ３４を上面後方から見た斜視図であり、図２（Ｂ）は、第１コントローラ３４を下面前方から見た斜視図である。
【００５８】
第１コントローラ３４は、たとえばプラスチック成型によって形成されたハウジング７８を有している。ハウジング７８は、その前後方向（Ｚ軸方向）を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。一例として、ハウジング７８は人間の掌とほぼ同じ長さまたは幅を持つ大きさをしている。プレイヤは、第１コントローラ３４を用いて、それに設けられたボタンを押下することと、第１コントローラ３４自体の位置や向きを変えることとによって、ゲーム操作を行うことができる。
【００５９】
ハウジング７８には、複数の操作ボタンが設けられる。すなわち、ハウジング７８の上面には、十字キー８０ａ、Ｘボタン８０ｂ、Ｙボタン８０ｃ、Ａボタン８０ｄ、セレクトスイッチ８０ｅ、メニュースイッチ８０ｆ、およびスタートスイッチ８０ｇが設けられる。一方、ハウジング７８の下面には凹部が形成されており、当該凹部の後方側傾斜面にはＢボタン８０ｈが設けられる。これら各ボタン（スイッチ）８０ａ−８０ｈには、ゲーム装置１２が実行するゲームプログラムに応じてそれぞれ適宜な機能が割り当てられる。また、ハウジング７８の上面には、遠隔からゲーム装置１２本体の電源をオン／オフするための電源スイッチ８０ｉが設けられる。第１コントローラ３４に設けられる各ボタン（スイッチ）は、包括的に参照符号８０を用いて示されることもある。
【００６０】
ハウジング７８の前面には光入射口７８ｂが形成され、ハウジング７８内には撮像情報演算部８１がさらに設けられる。撮像情報演算部８１は、赤外線を撮像するカメラと撮像対象の画像内での座標を算出する演算部とによって構成され、上述のマーカ２２ａおよび２２ｂを含む被写界を赤外線で捉えて、マーカ２２ａおよび２２ｂの被写界内における位置座標を算出する。
【００６１】
また、ハウジング７８の後面には、上述のコネクタ４２が設けられている。コネクタ４２は、第１コントローラ３４に他の機器を接続するために利用される。この実施例では、コネクタ４２には第２コントローラ３６のコネクタ４０またはジャイロセンサユニット１００のコネクタ１０６が接続される。
【００６２】
ハウジング７８の後面にはまた、コネクタ４２を左右（Ｘ軸方向）に挟んで対向する位置に、一対の孔８２ａおよび８２ｂが形成されている。この一対の孔８２ａおよび８２ｂは、ジャイロセンサユニット１００をハウジング７８の後面に固定するためのフック１１２Ｆａおよび１１２Ｆｂ（図７（Ａ））が挿入される。ハウジング７８の後面にはさらに、ストラップ２４（図６）を装着するための孔８２ｃも形成されている。
【００６３】
ハウジング７８の上面を取り外すと、図３に示すような基板３４Ｂが露見する。すなわち、第１コントローラ３４は、ハウジング７８内に基板３４Ｂを含み、この基板３４Ｂの長手方向の一方端部に、先に説明したコネクタ４２が取り付けられる。この基板３４Ｂの上主面上には、先に説明した十字キー８０ａ，Ｘボタン８０ｂ，Ｙボタン８０ｃ，Ａボタン８０ｄ，セレクトスイッチ８０ｅ，メニュースイッチ８０ｆ，およびスタートスイッチ８０ｇが組み立てられる。
【００６４】
基板６４の上主面上にはまた、十字キー８０ａとＸボタン８０ｂとの間であって、かつスタートスイッチ８０ｇおよびセレクトスイッチ８０ｅの間あたりに、先に説明した加速度センサ８４が組み付けられ、さらに、加速度センサ８４とＸボタン８０ｂとの間にジャイロセンサ８５が、ジャイロセンサ８５の幅方向右側には無線モジュール７６が、それぞれ配置される。これら各種のボタン（スイッチ），センサおよびモジュールは、適宜の配線（図示せず）によってコントローラ回路を構成するマイコン９４（図１３）に各々接続される。
【００６５】
加速度センサ８４は、Ｘ軸，Ｙ軸およびＺ軸の各々に沿う直線的な加速度を検出する３軸直線加速度計である。ジャイロセンサ８５は、１軸のジャイロセンサ８５ａおよび２軸のジャイロセンサ８５ｂの２チップで構成される。ジャイロセンサ８５ａはヨー角に関する角速度（Ｙ軸周りの角速度）を検出するためのものであり、ジャイロセンサ８５ｂはロール角およびピッチ角に関する２つの角速度（Ｚ軸周りの角速度およびＸ軸周りの角速度）を検出するためのものである。ジャイロセンサ８５ａおよび８５ｂは、基板３４Ｂの上主面上に水平に並べて設けられる。なお、ジャイロセンサは１つの３軸センサであってもよいし、３つの１軸センサであってもよい。
【００６６】
なお、このようなジャイロセンサ８５の配置の向き（軸方向）は、後に詳しく説明するジャイロセンサユニット１００が接続されたときのジャイロセンサ１０４の向きと同じになるのが好ましい。配置される位置に関しては、ジャイロセンサは角速度を検出するもので、位置によっては検出する物理量は変わらないので、どこに配置されてもよく、たとえば反対側の基板に配置されていてもよい。
【００６７】
図４には第２コントローラ３６の本体の外観の一例が示される。図４（Ａ）は、第２コントローラ３６を上面後方から見た斜視図であり、図４（Ｂ）は、第２コントローラ３６を下面前方から見た斜視図である。なお、図４では、第２コントローラ３６のケーブル３８は省略されている。
【００６８】
第２コントローラ３６は、たとえばプラスチック成型によって形成されたハウジング８６を有している。ハウジング８６は、平面視では、前後方向（Ｚ軸方向）に略細長い楕円形状を有し、後端側の左右方向（Ｘ軸方向）の幅が先端側のそれよりも狭くされている。また、ハウジング８６は、側面視では、全体として湾曲した形状を有しており、先端側の水平部分から後端側に向かって下がるように湾曲している。ハウジング８６は、第１コントローラ３４と同様に、全体として大人や子供の片手で把持可能な大きさであるが、長手方向（Ｚ軸方向）の長さは、第１コントローラ３４のハウジング７８よりもやや短くされている。この第２コントローラ３６でも、プレイヤは、ボタンやスティックを操作することと、コントローラ自体の位置や向きを変えることとによって、ゲーム操作を行うことができる。
【００６９】
ハウジング８６の上面の先端側には、アナログジョイスティック８８ａが設けられる。ハウジング８６の先端には、後方にやや傾斜する先端面が設けられており、この先端面には、上下方向（図４に示すＹ軸方向）に並べて、Ｃボタン８８ｂおよびＺボタン８８ｃが設けられる。アナログジョイスティック８８ａおよび各ボタン８８ｂ，８８ｃには、ゲーム装置１２が実行するゲームプログラムに応じてそれぞれ適宜な機能が割り当てられる。第２コントローラ３６に設けられるアナログジョイスティック８８ａおよび各ボタン８８ｂ，８８ｃは、包括的に参照符号８８を用いて示されることもある。
【００７０】
また、第２コントローラ３６のハウジング８６内には加速度センサ９０（図３）が設けられている。この加速度センサ９０としては、第１コントローラ３４の加速度センサ８４と同様の加速度センサが適用される。具体的には、この実施例では３軸加速度センサが適用され、第２コントローラ３６の上下方向（Ｙ軸方向）、左右方向（Ｘ軸方向）および前後方向（Ｚ軸方向）の３軸方向のそれぞれで加速度を検知する。したがって、第１コントローラ３４の場合と同様に、検出された加速度に適宜な演算処理を施すことによって、第２コントローラ３６の傾きや回転、重力方向に対する加速度センサ９０の姿勢などを算出することができる。また、振り等によって第１コントローラ３４に加えられた動きについても同様に算出することができる。
【００７１】
図５には第２コントローラ３６のコネクタ４０の外観の一例が示される。図５は、コネクタ４０を下面前方から見た斜視図である。なお、ここでもケーブル３８は省略されている。コネクタ４０は、たとえばプラスチック成型によって形成されたハウジング１４２を有する。ハウジング１４２の下面にはフック１４４が設けられている。このフック１４４は、本来的には、図６に示すように、コネクタ４０を第１コントローラ３４（のコネクタ４２）と直に接続した場合に、第１コントローラ３４に装着されたストラップ２４のひもを掛け止めるためのものである。ストラップ２４のひもをフック１４４に掛け止めることによって、コネクタがよりしっかり固定される。
【００７２】
図７にはジャイロセンサユニット１００の外観の一例が示される。図７（Ａ）は、ジャイロセンサユニット１００を上面前方から見た斜視図であり、図７（Ｂ）は、ジャイロセンサユニット１００を下面後方から見た斜視図である。
【００７３】
ジャイロセンサユニット１００は、たとえばプラスチック成型によって形成されたハウジング１１０を有している。ハウジング１１０は、略直方体形状を有しており、その長さは第１コントローラ３４のハウジング７８の長さのおよそ１／５、その幅および厚みはハウジング７８の幅および厚みとほぼ同じである。プレイヤは、第１コントローラ３４にジャイロセンサユニット１００を装着した状態でも、第１コントローラ３４自体の位置や向きを変えることによって、ゲーム操作を行うことができる。
【００７４】
ハウジング１１０の前面および後面には上述のコネクタ１０６および１０８が、ハウジング１１０の両側面には一対のリリースボタン１１２ａおよび１１２ｂが、そしてハウジング１１０の下面にはロックスイッチ１１４が、それぞれ設けられている。ハウジング１１０の前面下端から下面先端にかけては、第１コントローラ３４にジャイロセンサユニット１００を装着した状態でストラップ２４用の孔８２ｃが露見するように（図９）、略球面状の凹部１１０ａが設けられている。
【００７５】
ハウジング１１０の前面にはまた、コネクタ１０６を挟んで横方向（Ｘ軸方向）に対向する位置に、一対のリリースボタン１１２ａおよび１１２ｂとそれぞれ連繋する一対のフック１１２Ｆａおよび１１２Ｆｂが設けられている。ジャイロセンサユニット１００を第１コントローラ３４に装着するべく、コネクタ１０６をコネクタ４２に接続すると、一対のフック１１２Ｆａおよび１１２Ｆｂはハウジング７８後面の一対の孔８２ａおよび８２ｂ（図２（Ａ））に挿入され、フック１１２Ｆａおよび１１２Ｆｂの爪がハウジング７８の内壁に引っ掛かる。これによって、ジャイロセンサユニット１００は、第１コントローラ３４の後面に固定される。
【００７６】
こうして第１コントローラ３４に装着されたジャイロセンサユニット１００が図９に示される。この状態で一対のリリースボタン１１２ａおよび１１２ｂを押せば、爪の引っ掛かりは解け、ジャイロセンサユニット１００を第１コントローラ３４から取り外せるようになる。
【００７７】
ロックスイッチ１１４は、このようなリリースボタン１１２ａおよび１１２ｂにロックをかけるためのスライドスイッチである。リリースボタン１１２ａおよび１１２ｂは、ロックスイッチ１１４が第１位置（たとえば後ろ寄り）にあるとき押下不能（ロック状態）であり、ロックスイッチ１１４が第２位置（たとえば前寄り）にあるとき押下可能（解除状態）である。ハウジング１１０内には、ロックバネ１１８ａおよび１１８ｂ（図８）が設けられ、リリースボタン１１２ａおよび１１２ｂを押下すると反発するように構成され、押下されていないときは爪が引っ掛かった状態を維持するように構成されている。このため、ジャイロセンサユニット１００を取り外すには、ユーザは、ロックスイッチ１１４を第１位置から第２位置にスライドさせたうえで、リリースボタン１１２ａおよび１１２ｂを押す必要がある。
【００７８】
ハウジング１１０の後面にはまた、コネクタ１０８に装着されるコネクタカバー１１６を収納可能な凹部１１０ｂが、このコネクタ１０８の周囲に形成される。コネクタカバー１１６は、その主面の一方端部に、前後（Ｚ軸方向）に長細い薄手の（すなわち曲折容易な）突起１１６ａを有する。この突起１１６ａの先端部分がハウジング１１０と係合されており、コネクタカバー１１６は、コネクタ１０８から取り外された状態でもハウジング１１０に係留される。
【００７９】
コネクタカバー１１６はまた、その主面の他方端部に、左右（Ｘ軸方向）に長細い厚手の（すなわち曲折困難な）突起１１６ｂを有する。突起１１６ｂの厚み（Ｚ軸方向の高さ）は、第２コントローラ３６のコネクタ４０に設けられたフック１４４（図５）の厚み（Ｙ軸方向の高さ）とほぼ同じである。第１コントローラ３４にジャイロセンサユニット１００を介して第２コントローラ３６が接続された場合、コネクタカバー１１６は、図１０に示すように、その主面が水平となって、突起１１６ｂがフック１４４の側面と係合される。
【００８０】
図８にはジャイロセンサユニット１００の構成の一例が示される。ジャイロセンサユニット１００は、上述したハウジング１１０、コネクタ１０６および１０８、リリースボタン１１２ａおよび１１２ｂ、フック１１２Ｆａおよび１１２Ｆｂ、ロックスイッチ１１４、コネクタカバー１１６ならびにロックバネ１１８ａおよび１１８ｂに加え、ジャイロ基板１２０および支持部材１２２を備える。ジャイロ基板１２０はコネクタ１０６および１０８の各々と信号線で接続され、支持部材１２２はジャイロ基板１２０ならびにコネクタ１０６および１０８を支持する。
【００８１】
ジャイロ基板１２０にはジャイロセンサ１０４が設けられる。ジャイロセンサ１０４は、１軸のジャイロセンサ１０４ａおよび２軸のジャイロセンサ１０４ｂの２チップで構成される。ジャイロセンサ１０４ａはヨー角に関する角速度（Ｙ軸周りの角速度）を検出するためのものであり、ジャイロセンサ１０４ｂはロール角およびピッチ角に関する２つの角速度（Ｚ軸周りの角速度およびＸ軸周りの角速度）を検出するためのものである。ジャイロセンサ１０４ａおよび１０４ｂは、ジャイロ基板１２０の上面１２０ａに水平に並べて設けられる。
【００８２】
なお、ジャイロセンサ１０４ａおよび１０４ｂの配置は、図８に示されたものに限らない。他の実施例では、ジャイロセンサ１０４ａは、ジャイロ基板１２０の上面１２０ａおよび下面１２０ｂの一方に水平に設けられ、ジャイロセンサ１０４ｂは、ジャイロ基板１２０の上面１２０ａおよび下面１２０ｂの他方に水平に、ジャイロ基板１２０を挟んでジャイロセンサ１０４ａと対向するように設けられる。その他の実施例では、ジャイロセンサ１０４ａはジャイロ基板１２０の上面１２０ａおよび下面１２０ｂの一方に垂直に設けられ、ジャイロセンサ１０４ｂはジャイロ基板１２０の上面１２０ａおよび下面１２０ｂの他方に水平に設けられる。
【００８３】
また、ジャイロセンサ１０４は、２チップ構成とは限らず、３個の１軸ジャイロセンサ（３チップ）で構成してもよく、１個の３軸ジャイロセンサ（１チップ）で構成してもよい。いずれの場合も、上述の３つの角速度を適正に検出できるように、各チップの位置や向きが決定される。さらにまた、場合によっては、ジャイロセンサ１０４は、１個の２軸ジャイロセンサで構成しても、２個または１個の１軸ジャイロセンサで構成してもよい。
【００８４】
そして、このような変形例は、第１コントローラ３４に内蔵されたジャイロセンサ８５にも適用されてよい。
【００８５】
なお、図２に示した第１コントローラ３４、図４に示した第２コントローラ３６、図５に示したコネクタ４０、および図７に示したジャイロセンサユニット１００の形状や、ボタン（スイッチまたはスティック等）の形状、数および設置位置等は単なる一例に過ぎず、他の形状、数および設置位置等に適宜変更され得る。
【００８６】
なお、センサは、好ましい実施例ではジャイロセンサ（角速度センサ）であるが、たとえば加速度センサ、速度センサ、変位センサ、回転角センサなど、他のモーションセンサでもよい。モーションセンサ以外にも、傾斜センサ、イメージセンサ、光センサ、圧力センサ、磁気センサ、温度センサなどがあり、いずれのセンサを追加する場合でも、センサの検出対象を利用した操作が可能となる。いずれのセンサを用いた場合でも、従来操作装置に接続されていた他の装置をそのまま使用しながら、操作装置に当該センサを追加することができる。
【００８７】
また、コントローラ１４の電源は、第１コントローラ３４内に取替可能に収容されるバッテリ（図示せず）によって与えられる。第２コントローラ３６には、コネクタ４０およびケーブル３８を介してこの電源が供給される。第１コントローラ３４にジャイロセンサユニット１００が接続されている場合、ジャイロセンサユニット１００にはコネクタ４２および１０６を介してこの電源が供給される。さらにジャイロセンサユニット１００に第２コントローラ３６が接続されていれば、第１コントローラ３４からジャイロセンサユニット１００に供給された電源の一部は、コネクタ１０８、コネクタ４０およびケーブル３８を介して第２コントローラ３６にも与えられる。
【００８８】
図１１にはゲームシステム１０の電気的な構成が示される。図示は省略するが、ハウジング１６内の各コンポーネントは、プリント基板に実装される。図１１に示すように、ゲーム装置１２には、ＣＰＵ４４が設けられ、ゲームプロセッサとして機能する。また、ＣＰＵ４４には、システムＬＳＩ６４が接続される。このシステムＬＳＩ６４には、外部メインメモリ４６、ＲＯＭ／ＲＴＣ４８、ディスクドライブ５４およびＡＶ  ＩＣ５６が接続される。
【００８９】
外部メインメモリ４６は、ゲームプログラム等のプログラムを記憶したり、各種データを記憶したりして、ＣＰＵ４４のワーク領域やバッファ領域として用いられる。ＲＯＭ／ＲＴＣ４８は、いわゆるブートＲＯＭであり、ゲーム装置１２の起動用のプログラムが組み込まれるとともに、時間をカウントする時計回路が設けられる。ディスクドライブ５４は、光ディスク６６からプログラムやテクスチャデータ等を読み出し、ＣＰＵ４４の制御の下で、後述する内部メインメモリ６４ｅまたは外部メインメモリ４６に書き込む。
【００９０】
システムＬＳＩ６４には、入出力プロセッサ６４ａ、ＧＰＵ(Graphics Processor Unit)６４ｂ，ＤＳＰ(Digital Signal Processor)６４ｃ，ＶＲＡＭ６４ｄおよび内部メインメモリ４２ｅが設けられ、図示は省略するが、これらは内部バスによって互いに接続される。
【００９１】
入出力プロセッサ（Ｉ／Ｏプロセッサ）４２ａは、データの送受信を実行したり、データのダウンロードを実行したりする。
【００９２】
ＧＰＵ６４は、描画手段の一部を形成し、ＣＰＵ４４からのグラフィクスコマンド(作画命令)を受け、そのコマンドに従ってゲーム画像データを生成する。ただし、ＣＰＵ４０は、グラフィクスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラムをＧＰＵ６４に与える。
【００９３】
図示は省略するが、上述したように、ＧＰＵ６４にはＶＲＡＭ６４ｄが接続される。ＧＰＵ６４が作画命令を実行するにあたって必要なデータ（画像データ：ポリゴンデータやテクスチャデータなどのデータ）は、ＧＰＵ６４がＶＲＡＭ６４ｄにアクセスして取得する。ただし、ＣＰＵ４４は、描画に必要な画像データを、ＧＰＵ６４を介してＶＲＡＭ６４ｄに書き込む。ＧＰＵ６４は、ＶＲＡＭ６４ｄにアクセスして描画のためのゲーム画像データを作成する。
【００９４】
なお、この実施例では、ＧＰＵ６４がゲーム画像データを生成する場合について説明するが、ゲームアプリケーション以外の任意のアプリケーションを実行する場合には、ＧＰＵ６４は当該任意のアプリケーションについての画像データを生成する。
【００９５】
また、ＤＳＰ６４ｃは、オーディオプロセッサとして機能し、内部メインメモリ６４ｅや外部メインメモリ４６に記憶されるサウンドデータや音波形（音色）データを用いて、スピーカ３２から出力する音、音声或いは音楽に対応するオーディオデータを生成する。
【００９６】
上述のように生成されたゲーム画像データおよびオーディオデータは、ＡＶ  ＩＣ５６によって読み出され、ＡＶコネクタ５８を介してモニタ３０およびスピーカ３２に出力される。したがって、ゲーム画面がモニタ３０に表示され、ゲームに必要な音（音楽）がスピーカ３２から出力される。
【００９７】
また、入出力プロセッサ６４ａには、フラッシュメモリ４３、無線通信モジュール５０および無線コントローラモジュール５２が接続されるとともに、拡張コネクタ６０およびメモリカード用コネクタ６２が接続される。また、無線通信モジュール５０にはアンテナ５０ａが接続され、無線コントローラモジュール５２にはアンテナ５２ａが接続される。
【００９８】
入出力プロセッサ６４ａは、無線通信モジュール５０を介して、ネットワーク（図示せず）に接続される他のゲーム装置や各種サーバと通信することができる。ただし、ネットワークを介さずに、直接的に他のゲーム装置と通信することもできる。入出力プロセッサ６４ａは、定期的にフラッシュメモリ４３にアクセスし、ネットワークへ送信する必要があるデータ（「送信データ」とする）の有無を検出し、当該送信データが有る場合には、無線通信モジュール５０およびアンテナ５０ａを介してネットワークに送信する。また、入出力プロセッサ６４ａは、他のゲーム装置から送信されるデータ（「受信データ」とする）を、ネットワーク、アンテナ５０ａおよび無線通信モジュール５０を介して受信し、当該受信データをフラッシュメモリ４３に記憶する。ただし、受信データが一定の条件を満たさない場合には、当該受信データはそのまま破棄される。さらに、入出力プロセッサ６４ａは、ダウンロードサーバ（図示せず）からダウンロードしたデータ（ダウンロードデータとする）をネットワーク、アンテナ５０ａおよび無線通信モジュール５０を介して受信し、そのダウンロードデータをフラッシュメモリ４３に記憶することもできる。
【００９９】
また、入出力プロセッサ６４ａは、コントローラ１４から送信される入力データをアンテナ５２ａおよび無線コントローラモジュール５２を介して受信し、内部メインメモリ６４ｅまたは外部メインメモリ４６のバッファ領域に記憶（一時記憶）する。入力データは、ＣＰＵ４４の処理（たとえば、ゲーム処理）によって利用された後、バッファ領域から消去される。
【０１００】
なお、この実施例では、上述したように、無線コントローラモジュール５２は、Ｂｌｕｅｔｏｏｔｈ規格に従ってコントローラ１４との間で通信を行う。このため、コントローラ１４からデータを取得するだけでなく、ゲーム装置１２からコントローラ１４に所定の命令を送信し、コントローラ１４の動作をゲーム装置１２から制御することもできる。
【０１０１】
さらに、入出力プロセッサ６４ａには、拡張コネクタ６０およびメモリカード用コネクタ６２が接続される。拡張コネクタ６０は、ＵＳＢやＳＣＳＩのようなインタフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、コントローラ１４とは異なる他のコントローラのような周辺機器を接続したりすることができる。また、拡張コネクタ６０に有線ＬＡＮアダプタを接続し、無線通信モジュール５０に代えて当該有線ＬＡＮを利用することもできる。メモリカード用コネクタ６２には、メモリカード３８のような外部記憶媒体を接続することができる。したがって、たとえば、入出力プロセッサ６４ａは、拡張コネクタ６０やメモリカード用コネクタ６２を介して、外部記憶媒体にアクセスし、データを保存したり、データを読み出したりすることができる。
【０１０２】
詳細な説明は省略するが、図１にも示したように、ゲーム装置１２（ハウジング１６）には、電源ボタン２０ａ，リセットボタン２０ｂおよびイジェクトボタン２０ｃが設けられる。電源ボタン２０ａは、システムＬＳＩ６４に接続される。この電源ボタン２０ａがオンされると、システムＬＳＩ６４には、ゲーム装置１２の各コンポーネントに図示しないＡＣアダプタを経て電源が供給され、通電状態となるモードが設定される。
【０１０３】
リセットボタン２０ｂもまた、システムＬＳＩ６４に接続される。リセットボタン２０ｂが押されると、システムＬＳＩ６４は、ゲーム装置１２の起動プログラムを再起動する。イジェクトボタン２０ｃは、ディスクドライブ５４に接続される。イジェクトボタン２０ｃが押されると、ディスクドライブ５４から光ディスク６６が排出される。
【０１０４】
図１３には、第１コントローラ３４と第２コントローラ３６とが（ジャイロセンサユニット１００を介さずに）接続されたときのコントローラ１４全体の電気的構成の一例が示される。第１コントローラ３４は、その内部に無線通信モジュール７６を備え、無線通信モジュール７６には、操作部８０および加速度センサ８４が接続される。無線通信モジュールはまた、共通のバスであるシリアルバス９５に接続され、シリアルバス９５には、撮像情報演算部８１、および他のデバイスたとえばメモリ９６などが接続される。なお、メモリ９６は、たとえばＥＥＰＲＯＭで構成され、第１コントローラのデバイス情報や、無線モジュール７６，マイコン９４等が動作するためのプログラム，データなどを記憶する。シリアルバス９５は、たとえばＩ２Ｃ等のシリアルバスを用いることができる。
【０１０５】
シリアルバス９５の一方端には、互いに並列に配置されたスイッチＳＷ１およびマイコン９４の各々を介して（さらにはコネクタ４２および４０ならびにケーブル３８を通して）、第２コントローラ３６のマイコン８９が接続される。前者のマイコン９４には、ジャイロセンサ８５が接続され、後者のマイコンに８９には、操作部８８および加速度センサ９０が接続される。
【０１０６】
シリアルバス９５に接続された各デバイスには、シリアルバス９５上のアドレス（番地）が割り当てられる。この実施例では、撮像情報演算部８１に＃１番地が、メモリ９６に＃２番地が、マイコン９４には＃３番地が、そしてマイコン８９に＃４番地が、それぞれ割り当てられるものとする。ここで＃３番地は、ジャイロ機能を呼び出す呼出制御（図２１，図２２および図２３参照）でのみ使用される特別なアドレスであり、メイン制御（図２１，図２４参照）では、任意の拡張デバイスに割り当てられる通常のアドレスである＃４番地が使用される。
【０１０７】
したがって、マイコン９４に＃４番地が割り当てられた状態は、その内蔵ジャイロセンサ８５が起動された状態、つまりジャイロモードまたはジャイロ＆第２コントローラモードに対応し、マイコン９４に＃３番地が割り当てられた状態は、その内蔵ジャイロセンサ８５が休眠している状態、つまりスタンバイモードまたはバイパスモードに対応する。ここで、ジャイロモードとは、ジャイロ機能を用いるモードであり、かつ第２コントローラが接続されていないときのモードである。ジャイロ＆第２コントローラモードとは、ジャイロ機能と第２コントローラを両方用いるモードである。また、スタンバイモードとはジャイロ機能を使わないモードで、かつ第２コントローラが接続されていないときのモードである。バイパスモードとは、ジャイロ機能を用いずに第２コントローラを用いるモードである。ジャイロ機能の利用の有無、第２コントローラの利用の有無に応じて上記４つのモードで制御が行われる。
【０１０８】
したがってまた、ジャイロ＆第２コントローラモードでは、アドレスとして同じ＃４番地が割り当てられた複数のマイコン、つまりマイコン９４とマイコン１０２および／または８９とが、シリアルバス９５に接続された状態になる。この場合、各マイコンは、ジャイロ・第２コントローラ識別情報（図１７参照）に基づいて識別可能である。
【０１０９】
無線モジュール７６とマイコン９４との間およびマイコン９４とコネクタ４２との間はＡｔｔａｃｈピンで接続されており、無線モジュール７６は、Ａｔｔａｃｈの値を参照することで、コネクタ４２にジャイロセンサユニット１００，第２コントローラ３６等のデバイスが接続されているかどうかがわかる。
【０１１０】
スイッチＳＷ１は、マイコン９４の制御下で、先述したように、ジャイロセンサ８５を利用しないモード（スタンバイモードまたはバイパスモード）ではＯＮ（Ｃｏｎｎｅｃｔ）され、ジャイロセンサ８５を利用するモード（ジャイロモードまたはジャイロ＆第２コントローラモード）ではＯＦＦ（Ｄｉｓｃｏｎｎｅｃｔ）される（図１９（Ａ）参照）。
【０１１１】
操作部８０は、上述の操作ボタンないし操作スイッチ８０ａ‐８０ｉを示す。操作部８０が操作されると、その操作を示すデータが無線通信モジュール７６に出力される。加速度センサ８４が検出した加速度を示すデータもまた、無線通信モジュール７６へ出力される。加速度センサ８４は、たとえば最大２００フレーム／秒程度のサンプリング周期を有する。
【０１１２】
撮像情報演算部８１からは、マーカ２２ａおよび２２ｂの撮影された画像内における位置座標を示すデータが、シリアルバス９５を通して無線通信モジュール７６に出力される。ジャイロセンサ８５は、上述のジャイロセンサ８５ａおよび８５ｂを示しており、たとえば加速度センサ８４と同様のサンプリング周期を有する。マイコン９４は、ジャイロセンサ８５が検出した角速度を示すデータを、シリアルバス９５を通して無線通信モジュール７６に出力する。
【０１１３】
操作部８８は、上述のスティック８８ａおよび操作ボタン８８ｂ、８８ｃを示す。操作部８８が操作されると、その操作を示すデータ（操作データ）が、スイッチＳＷ１がＯＮの場合にはマイコン８９からシリアルバス９５を通して無線通信モジュール７６に出力される。一方、スイッチＳＷ１がＯＦＦの場合には、操作データは、シリアルバス９５を通してマイコン９４に与えられ、マイコン９４は、この操作データをシリアルバス９５を通して無線通信モジュール７６に出力する。
【０１１４】
また、加速度センサ９０も、加速度センサ８４と同様のサンプリング周期を有しており、これにより検出された加速度を示すデータもまた、マイコン８９によって操作データと同様に、スイッチＳＷ１がＯＮの場合にはスイッチＳＷ１側のバイパスを通って無線通信モジュール７６に出力され、スイッチＳＷ１がＯＦＦの場合にはマイコン９４を経由して無線通信モジュール７６に出力される。
【０１１５】
なお、上述した無線通信モジュール７６への各出力は、たとえば１／２００秒周期で実行される。したがって、任意の１／２００秒間に、操作部８０からの操作データと、撮像情報演算部８１のからの位置座標データと、加速度センサ８４からの加速度データと、ジャイロセンサ８５からの角速度データと、操作部８８からの操作データと、加速度センサ９０からの加速度データとが、１回ずつ無線通信モジュール７６に向けて出力される。
【０１１６】
上述のような第１コントローラ３４の要素のうちスイッチＳＷ１およびジャイロセンサ８５が、従来の第１コントローラに対して追加され、さらにマイコン９４がこれらを制御することで、第１コントローラ３４にジャイロ機能が付加される。以下では、スイッチＳＷ１およびジャイロセンサ８５とマイコン９４とからなる要部を“ジャイロ制御部８５Ｃ”と呼ぶ。
【０１１７】
図１４には、第１コントローラ３４と第２コントローラ３６とがジャイロセンサユニット１００を介して接続されたときのコントローラ１４全体の電気的構成の一例が示される。ジャイロセンサユニット１００には、ジャイロ制御部１０４Ｃが含まれている。ジャイロ制御部１０４Ｃは、スイッチＳＷ２およびジャイロセンサ１０４とマイコン１０２とで構成される。ジャイロセンサ１０４は、上述のジャイロセンサ１０４ａおよび１０４ｂを示しており、たとえば加速度センサ８４と同様のサンプリング周期を有する。
【０１１８】
本来の動作として、マイコン１０２は、スタンバイモードまたはバイパスモードでは、スイッチＳＷ２をＯＮ（Ｃｏｎｎｅｃｔ）する一方、ジャイロセンサを休眠状態に置き、ジャイロモードまたはジャイロ＆第２コントローラモードでは、スイッチＳＷ２をＯＦＦ（Ｄｉｓｃｏｎｎｅｃｔ）する一方、ジャイロセンサ１０４が検出した角速度を示すデータをシリアルバス９５を通して無線通信モジュール７６に出力する。
【０１１９】
しかし、この実施例では、第１コントローラ３４（のマイコン９４）と第２コントローラ３６（のマイコン８９）との間（のシリアルバス９５）に、互いに並列に配置されたスイッチＳＷ２およびマイコン１０２の各々が介在する。マイコン９４がマイコン１０２を通してスイッチＳＷ２およびジャイロセンサ１０４を制御することで、スイッチＳＷ２は、図２０に示されるように、モードによらず初期状態つまりＯＮ（Ｃｏｎｎｅｃｔ）状態に置かれ、ジャイロセンサ１０４は、モードによらず休眠状態（電源ＯＦＦ状態）に置かれる。
【０１２０】
図１５には、図１３または図１４に示した第１コントローラの要部つまりジャイロ制御部８５Ｃの構成が示される。上述のコネクタ４２、コネクタ１０６、コネクタ１０８およびコネクタ４０は、それぞれたとえば６ピンのコネクタであり、この６ピンの中に、コネクタ間の接続状態を示す変数“Ａｔｔａｃｈ”を制御するためのＡｔｔａｃｈピンが含まれている。Ａｔｔａｃｈは、コネクタ間が切断されていることを示す“Ｌｏｗ”と、コネクタ間が接続されていることを示す“Ｈｉｇｈ”との間で変化する。ここでは特に、マイコン９４から見て、無線モジュール７６側のＡｔｔａｃｈを“Ａｔｔａｃｈ１”、コネクタ４２側のＡｔｔａｃｈを“Ａｔｔａｃｈ２”と呼ぶ。
【０１２１】
上記６ピンのうち他の２つにはシリアルバス９５が割り当てられており、ジャイロ制御部８５Ｃは、無線モジュール７６側のシリアルバス９５とコネクタ４２側のシリアルバス９５とを互いに接続／分離するためのバススイッチＳＷ１をさらに含む。
【０１２２】
マイコン９４は、２種類のＡ／Ｄ変換回路９４ａおよび９４ｂを含んでおり、ジャイロセンサ８５から出力される３軸周りの角速度信号は、これらＡ／Ｄ変換回路９４ａおよび９４ｂの各々に与えられる。Ａ／Ｄ変換回路９４ａでは、ジャイロセンサ８５の検出範囲の全部（たとえば±３６０度／秒）を対象とする高角速度モードのＡ／Ｄ変換処理が実行され、Ａ／Ｄ変換回路９４ｂでは、ジャイロセンサ８５の検出範囲の一部（たとえば±９０度／秒）を対象とする低角速度モードのＡ／Ｄ変換処理が実行される。マイコン９４は、これら２種類のＡ／Ｄ変換結果のいずれか一方を角速度データとして出力する。
【０１２３】
具体的には、Ａ／Ｄ変換回路９４ａおよび９４ｂからある時刻に対応する２種類の角速度データが出力されると、マイコン９４は最初、このうち低角速度モードの角速度データについて、その値Ａが第１閾値Ｔｈ１から第２閾値Ｔｈ２（＞Ｔｈ１）までの範囲内にあるかどうか、すなわち条件“Ｔｈ１≦Ａ≦Ｔｈ２”が満足されるか否かを、軸毎に、つまりヨー、ロールおよびピッチの各々について判定する。次に、これら３つの判定結果に基づいて、低角速度モードおよび高角速度モードのいずれか１つを選択する。たとえば、３つの判定結果それぞれに関して、ＹＥＳであれば低角速度モードを選択し、ＮＯであれば高角速度モードを軸ごとに選択する。そして、軸ごとに選択されたモードに従う角速度データを、選択されたモードを示すモード情報と共にそれぞれ出力する。つまり、角速度に応じてデータの精度を変えることによって、同じデータ量であっても、低速のときにはより精度の高いデータを出力することができる。
【０１２４】
図１６には、図１４に示したジャイロセンサユニット１００の要部つまりジャイロ制御部１０４Ｃの構成が示される。ジャイロ制御部１０４Ｃの構成は、マイコンの制御内容を除いて概ね上述したジャイロ制御部８５Ｃの構成と同等である。なお、ジャイロ制御部１０４Ｃでは、Ａｔｔａｃｈ１およびＡｔｔａｃｈ２は、マイコン１０２から見て第１コントローラ３４（マイコン９４）側および第２コントローラ３６（マイコン８９）側となる。
【０１２５】
図１７には、第１コントローラ３４においてジャイロ制御部８５Ｃが取り扱う（マイコン９４から無線モジュール７６に出力される）データのフォーマットが示される。図１７（Ａ）はジャイロ用データのフォーマットを示し、図１７（Ｂ）は第２コントローラ用データのフォーマットを示す。なお、これらのフォーマットは、ジャイロセンサユニット１００においてジャイロ制御部１０４Ｃが取り扱うデータのものと共通である。
【０１２６】
図１７（Ａ）に示されるように、ジャイロ用データは、ヨー角速度データ、ロール角速度データおよびピッチ角速度データと、ヨー角速度モード情報、ロール角速度モード情報およびピッチ角速度モード情報と、第２コネクタ接続情報と、ジャイロ・第２コントローラ識別情報とを含む。
【０１２７】
ヨー角速度データ、ロール角速度データおよびピッチ角速度データは、ジャイロセンサ１０４から出力されるヨー角速度信号、ロール角速度信号およびピッチ角速度信号をＡ／Ｄ変換して得られる、たとえば各１４ビットのデータである。ヨー角速度モード情報、ロール角速度モード情報およびピッチ角速度モード情報は、それぞれ対応する角速度データのモードを示す各１ビットの情報であり、高角速度モードに対応する“０”と、低角速度モードに対応する“１”との間で変化する。
【０１２８】
第２コントローラ接続情報は、コネクタ４２または１０８に第２コントローラ３６が接続されているか否かを示す１ビットの情報であり、非接続を示す“０”と、接続を示す“１”との間で変化する。ジャイロ・第２コントローラ識別情報は、当該データがジャイロセンサ８５または１０４から出力されたデータであるか第２コントローラ３６から出力されたデータであるかを識別する１ビットの情報であり、ジャイロセンサ８５または１０４からのデータであることを示す“１”と、第２コントローラ３６からのデータであることを示す“０”との間で変化する。
【０１２９】
一方、第２コントローラからのデータは、左右方向（Ｘ軸方向）のスティック操作および前後方向（Ｚ軸方向）のスティック操作をそれぞれ示すＸスティック操作データおよびＹスティック操作データと、Ｘ軸方向の加速度、Ｙ軸方向の加速度およびＺ軸方向の加速度をそれぞれ示すＸ加速度データ、Ｙ加速度データおよびＺ加速度データと、ボタン操作データと、第２コネクタ接続情報と、ジャイロ・第２コントローラ識別情報とを含む。
【０１３０】
第１コントローラ３４において、マイコン９４は無線モジュール７６に、図１７（Ａ）のフォーマットに従うジャイロ用データと、図１７（Ｂ）のフォーマットに従う第２コントローラ用データとを、それぞれたとえば１／２００秒周期で交互に、つまり片方のフォーマットに関しては、それぞれ１／１００秒周期で出力する。これはゲームの処理等で一般的な処理期間である１／６０秒周期よりも十分短いことから、データを交互に出力してもゲーム処理で両方のデータを１フレームで同時に利用することができる。
【０１３１】
無線モジュール７６は、マイコン７６Ｃ，メモリ７６Ｒなどを含み、マイコン７６Ｃの制御によって、メモリ７６Ｒを記憶領域（作業領域やバッファ領域）として用いながら、取得したデータをアンテナ９８を介してゲーム装置１２に送信したり、ゲーム装置１２からのデータをアンテナ９８を介して受信したりする。
【０１３２】
マイコン９４から無線モジュール７６に出力されたデータは、マイコン７６Ｃを経て一時的にメモリ７６Ｒに格納される。第１コントローラ３４内の操作部８０、撮像情報演算部８１および加速度センサ８４から無線モジュール７６に出力されたデータもまた、メモリ７６Ｒに一時的に格納される。マイコン７６Ｃは、ゲーム装置１２への送信タイミングが到来すると、メモリ７６Ｒに格納されているデータをコントローラデータとして無線モジュール７６へ出力する。
【０１３３】
コントローラデータには、図１７（Ａ）に示したジャイロ用データおよび／または図１７（Ｂ）に示した第２コントローラ用データに加えて、図１８（Ａ）に示すような第１コントローラ用データが含まれる。第１コントローラ用データには、加速度センサ８４の出力に基づくＸ加速度データ、Ｙ加速度データおよびＺ加速度データと、撮像情報演算部８１の出力に基づく位置座標データと、操作部８０の出力に基づくボタン操作データとが含まれる。
【０１３４】
無線モジュール７６は、Ｂｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）のような近距離無線通信技術を用いて、所定周波数の搬送波をコントローラデータで変調し、その微弱電波信号をアンテナ９８から放射する。つまり、コントローラデータは、無線モジュール７６で微弱電波信号に変調されて第１コントローラ３４から送信される。微弱電波信号はゲーム装置１２側の無線コントローラモジュール５２で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置１２はコントローラデータを取得することができる。ゲーム装置１２のＣＰＵ４４は、コントローラ１４から取得したコントローラデータに基づいてゲーム処理を行う。なお、第１コントローラ３４とゲーム装置１２との無線通信は、近距離無線通信に限らず、無線ＬＡＮなど他の規格に従って実行されてもよい。
【０１３５】
以上のように構成されたゲームシステム１０では、ボタン操作だけでなく、コントローラ１４自体を動かすことによっても、ゲームなどのアプリケーションに対する入力を行うことができる。ゲームをプレイする際には、たとえば図１２に示すように、プレイヤは、その右手で第１コントローラ３４（具体的にはハウジング７８の把持部７８ａ：図２）を持ち、その左手で第２コントローラ３６を持つ。上述のように、第１コントローラ３４には３軸方向の加速度を検出する加速度センサ８４が内蔵され、第２コントローラ３６にも同様の加速度センサ９０が内蔵されている。第１コントローラ３４にはさらに、３軸周りの角速度を検出するジャイロセンサ８５も内蔵されている。第１コントローラ３４および第２コントローラ３６がそれぞれプレイヤによって動かされると、加速度センサ８４およびジャイロセンサ８５によって、第１コントローラ自身の動きを示す３軸方向の加速度値および３軸周りの角速度値が検出され、加速度センサ９０によって、第２コントローラ自身の動きを示す３軸方向の加速度値が検出される。
【０１３６】
これらの検出値は、先述したコントローラデータの態様でゲーム装置１２に送信される。ゲーム装置１２（図１１）では、コントローラ１４からのコントローラデータは、入出力プロセッサ６４ａによってアンテナ５２ａおよび無線コントローラモジュール５２を介して受信され、受信されたコントローラデータは、内部メインメモリ６４ｅまたは外部メインメモリ４６のバッファ領域に書き込まれる。ＣＰＵ４４は、内部メインメモリ６４ｅまたは外部メインメモリ４６のバッファ領域に格納されたコントローラデータを読み出し、このコントローラデータから検出値つまりコントローラ１４によって検出された加速度および／または角速度の値を復元する。
【０１３７】
なお、角速度データには高角速度および低角速度の２つのモードがあるため、これら２つのモードにそれぞれ対応する２種類の角速度復元アルゴリズムが準備される。角速度データから角速度の値を復元するにあたっては、当該角速度データのモードに対応する角速度復元アルゴリズムが、角速度モード情報に基づいて選択される。
【０１３８】
ＣＰＵ４４はさらに、取得された角速度や加速度に基づいてゲーム処理を行うことができる。たとえば、角速度や加速度に基づいて姿勢を算出し、姿勢に基づいたゲーム処理を行うことができる。具体的には、入力装置の姿勢を角速度に基づいて更新することで姿勢を算出することができ、さらに、当該姿勢に対して加速度によって補正をすることができる。また、入力装置の振りに基づいたゲーム処理を行うことができる。
【０１３９】
ところで、ゲームには、第１コントローラ３４しか利用しない１コントローラ用ゲームと、第１コントローラ３４および第２コントローラ３６を利用する２コントローラ用ゲームとがある。メインコントローラである第１コントローラ３４は、どのゲームをプレイする場合にも必要であるが、拡張コントローラである第２コントローラ３６は、２コントローラ用ゲームをプレイするとき、第１コントローラ３４に接続され、１コントローラゲームをプレイするときには通常取り外される。
【０１４０】
一方、ジャイロセンサユニット１００は、先述したように、従来の第１コントローラのための拡張センサないし拡張コントローラであって、この実施例の第１コントローラ３４に接続すべきものではないが、コネクタ形状が共通なので誤って接続される場合もあり得る。さらには、第２コントローラ３６がジャイロセンサユニット１００を介して第１コントローラ３４に接続される可能性もある。
【０１４１】
第１コントローラ３４のジャイロ制御部８５Ｃによるモード制御の概要を図１９に示す。図１９（Ａ）にはジャイロ制御部８５Ｃの制御対象を記載したテーブルが、図１９（Ｂ）にはジャイロ制御部８５Ｃのモード遷移が、それぞれ示される。なお、テーブルは、たとえばメモリ９４ｃに記憶される。図１９に示されるように、ジャイロセンサユニット１００に準備されているモードは、先述した“スタンバイ”、“バイパス”、“ジャイロ”および“ジャイロ＆第２コントローラ”の４種類である。
【０１４２】
図１９（Ａ）を参照して、ジャイロ制御部８５Ｃの制御対象には、“ジャイロ機能”、“ジャイロ電源”、“バススイッチ”、“Ａｔｔａｃｈ１”および“バスアドレス”等が含まれる。ジャイロ機能は、スタンバイおよびバイパスの各モードでは停止状態（Ｎｏ Ａｃｔｉｖｅ）に置かれる一方、ジャイロおよびジャイロ＆第２コントローラの各モードでは起動状態（Ａｃｔｉｖｅ）に置かれる。ジャイロ電源つまりジャイロセンサ８５への電源供給は、スタンバイおよびバイパスの各モードで停止（ＯＦＦ）され、ジャイロおよびジャイロ＆第２コントローラの各モードでは実行（ＯＮ）される。バススイッチＳＷ１は、スタンバイおよびバイパスの各モードで接続（Ｃｏｎｎｅｃｔ）され、ジャイロおよびジャイロ＆第２コントローラの各モードでは切断（Ｄｉｓｃｏｎｎｅｃｔ）される。
【０１４３】
拡張コネクタつまりコネクタ４２には、バイパスおよびジャイロ＆第２コントローラの各モードでは第２コントローラ３６が接続され、スタンバイおよびジャイロの各モードでは第２コントローラ３６が接続されない。Ａｔｔａｃｈ１は、スタンバイモードで非接続状態を示す“Ｌｏｗ”に制御され、バイパス、ジャイロおよびジャイロ＆第２コントローラの各モードでは接続状態を示す“Ｈｉｇｈ”に制御される。バスアドレスに関しては、スタンバイおよびバイパスの各モードに限って、特別なアドレス（＃３：後述）が注目される。なお、ジャイロおよびジャイロ＆第２コントローラの各モードでは、通常のアドレス（＃４：後述）が注目される。
【０１４４】
図１９（Ｂ）を参照して、第１コントローラ３４が起動されたときのモード、つまりジャイロ制御部８５Ｃの初期モードは、たとえばスタンバイモードである。なお、初期モードは、スタンバイ以外のモードたとえばジャイロモードなどでもよい。第１コントローラ３４に第２コントローラ３６が接続されると、ジャイロ制御部８５Ｃは、スタンバイモードからバイパスモードに移行し、その後に第２コントローラ３６が取り外されると、バイパスモードからスタンバイモードに移行する。
【０１４５】
一方、ジャイロ対応型のアプリケーションは、必要に応じて角速度データを取得するべく、無線モジュール７６を通してジャイロ制御部８５Ｃに呼び出しおよびリセットをかける。ジャイロ制御部８５Ｃは、スタンバイモードでアプリケーション（無線モジュール７６）から呼び出しを受けるとジャイロモードに移行し、ジャイロモードでアプリケーションからリセットを受けるとスタンバイモードに移行する。ジャイロ制御部８５Ｃはまた、ジャイロモードで第２コントローラ３６が接続されるとジャイロ＆第２コントローラモードに移行し、ジャイロ＆第２コントローラモードで第２コントローラ３６が取り外されるとジャイロモードに移行する。ジャイロ制御部８５Ｃはさらにまた、ジャイロ＆第２コントローラモードでアプリケーションからリセットを受けるとバイパスモードに移行し、バイパスモードでアプリケーションから呼び出しを受けるとジャイロ＆第２コントローラモードに移行する。
【０１４６】
なお、アプリケーションがジャイロ非対応型の場合、ジャイロ制御部８５Ｃのモードは、スタンバイモードおよびバイパスモードの間で切り換わるに止まる。
【０１４７】
ところで、図１９に示したジャイロ制御部８５Ｃによるモード制御は、ジャイロセンサユニット１００のジャイロ制御部１０４Ｃが本来行うべきモード制御と共通のものである。したがって、ジャイロセンサユニット１００が従来の第１コントローラに接続された場合には、ジャイロ制御部１０４Ｃが図１９のようなモード制御を実行する。
【０１４８】
しかし、ジャイロセンサユニット１００がこの実施例の第１コントローラ３４に接続された場合には、ジャイロ制御部１０４Ｃは、ジャイロ制御部８５Ｃの制御下で、図２０に示すようなモード制御を行う。図２０（Ａ）を参照して、スタンバイモードおよびバイパスモードにおける制御内容は、図１９（Ａ）に示したスタンバイモードおよびバイパスモードにおける制御内容とそれぞれ共通のものであり、そして、ジャイロモードおよびジャイロ＆第２コントローラモードにおける制御内容は、スタンバイモードおよびバイパスモードにおける制御内容とそれぞれ共通のものである。
【０１４９】
図２０（Ｂ）を参照して、ジャイロ制御部１０４Ｃは、ジャイロセンサユニット１００が第１コントローラ３４に接続されたとき起動されるが、このときのモード、つまりジャイロ制御部１０４Ｃの初期モードは、たとえばスタンバイモードである。ジャイロセンサユニット１００が第１コントローラ３４に接続された状態で、さらに、ジャイロセンサユニット１００に第２コントローラ３６が接続されると、ジャイロ制御部８５Ｃは、スタンバイモードからバイパスモードに移行し、その後に第２コントローラ３６が取り外されると、バイパスモードからスタンバイモードに復帰する。一方、アプリケーション（無線モジュール７６）からジャイロ制御部８５Ｃへの呼び出しおよびリセットは、ジャイロ制御部８５Ｃによって無効化される。これによって、ジャイロモードおよびジャイロ＆第２コントローラモードへは移行できなくなり、それぞれスタンバイモードおよびバイパスモードに限定されることになる。
【０１５０】
このように、ジャイロ制御部１０４Ｃは、ジャイロ制御部８５Ｃの制御下に入ることで、スタンバイおよびバイパスの２モード間で遷移するようになる。具体的には、ジャイロ制御部１０４Ｃは、ジャイロ制御部８５Ｃがスタンバイモードまたはジャイロモードにあるときはスタンバイモードとなり、ジャイロ制御部８５Ｃがバイパスモードまたはジャイロ＆第２コントローラモードにあるときはバイパスモードとなる。この結果、何もデータを出力しないか、第２コントローラ３６のデータをそのままバイパスするだけになるので、ジャイロセンサユニット１００が無い場合と変わらないことになり、この実施例の第１コントローラ３４にジャイロセンサユニット１００が接続されても、誤動作等の発生は回避される。さらに、ジャイロセンサユニット１００を介して第２コントローラが接続されても、問題なく動作する。
【０１５１】
マイコン９４の制御についてより詳しく説明する。第１コントローラ３４のジャイロ制御部８５Ｃ（マイコン９４）は、図２１〜図２４に示すフローに従って動作する。なお、これらのフロー図に対応する制御プログラムは、たとえばメモリ９６または９４ｃに格納されている。
【０１５２】
図２１を参照して、マイコン９４は、最初のステップＳ１で、無線モジュール７６からのアクセスの有無を判別する。ステップＳ１でＮＯであれば、同様の判別処理が所定時間毎に繰り返される。ステップＳ１でＹＥＳと判別されると、ステップＳ３およびＳ５で当該アクセスのアドレス（宛先）を判別する。
【０１５３】
ここで、無線モジュール７６からのアクセスのデータ構造について説明する。図１８（Ｂ）に示すように、アクセスデータは、アドレス，Ｒ／Ｗ，およびデータを含む。アドレスは、シリアルバス９５上でのアクセス先を示す番地（＃１，＃２，…）であり、たとえば７ビットで記述される。Ｒ／Ｗは、ＲｅａｄまたはＷｒｉｔｅを示すコマンドであり、たとえば１ビットで記述される。データは、たとえばＲ／Ｗの詳細を示す情報であり、書き込み先／読み出し元を示すアドレス，書き込むべき／読み出すべき内容などが記述される。
【０１５４】
たとえば、アドレス（宛先）に＃３が記述され、Ｒ／ＷにＷｒｉｔｅが記述され、そしてデータに、モード変更に対応する特定アドレスと、当該特定アドレスに書き込むべきモード情報とが記述されたアクセスデータは、アドレスが＃３番地のデバイスたとえばマイコン９４に対し、スタンバイまたはバイパスからジャイロまたはジャイロ＆第２コントローラへのモード変更（ジャイロ呼び出し）を指示するコマンドとして機能する。また、たとえば、アドレス（宛先）に＃３が記述され、Ｒ／ＷにＲｅａｄが記述され、そしてデータに、デバイス情報の読み込みに対応する別のアドレスが記述されたアクセスデータは、アドレスが＃３番地のデバイスたとえばマイコン９４に対し、デバイス情報の出力（無線モジュール７６から見ると読み込み）を指示するコマンドとして機能する。
【０１５５】
図２１に戻って、ステップＳ３では当該アクセスのアドレス（宛先）が＃３であるか否かが判別され、ステップＳ５では当該アクセスのアドレス（宛先）が＃４であるか否かが判別される。ステップＳ３およびＳ４の判別結果がいずれもＮＯであれば、当該アクセスはジャイロ制御部８５Ｃへのアクセスではないとみなして、ステップＳ１に戻る。
【０１５６】
ステップＳ３でＹＥＳと判別されると、ステップＳ３ａに移り、自身のアドレスが＃３であるか否かをさらに判別する。ここでもＹＥＳであれば、ステップＳ７で呼出制御（図２２参照）を実行し、その後、ステップＳ１に戻る。ステップＳ３ａでＮＯであれば、既にジャイロ機能は起動されているので呼び出し処理は不要とみなして、ステップＳ１に戻る。
【０１５７】
ステップＳ５でＹＥＳと判別されると、ステップＳ５ａに移り、自身のアドレスが＃４であるか否かをさらに判別する。ここでもＹＥＳであれば、ステップＳ９でメイン制御（図２４参照）を実行した後、ステップＳ１に戻る。ステップＳ５ａでＮＯであれば、ジャイロ機能は未だ起動されていないので通常制御は不要とみなして、ステップＳ１に戻る。
【０１５８】
上記ステップＳ７の呼出制御は、たとえば図２２および図２３のサブルーチンに従って実行される。図２２を参照して、マイコン９４は、最初、ステップＳ１１で、スイッチＳＷ１をＯＦＦ（Ｄｉｓｃｏｎｎｅｃｔ）する。これによって、コネクタ４２（に接続された拡張デバイス）側から無線モジュール７６へのシリアルバス９５によるバイパスが遮断され、その結果、当該アクセスは、その先頭部分（アドレスなど：図１８（Ｂ）参照）を除いて、コネクタ４２へは到達しなくなる。すなわち、無線モジュール７６からのアクセスが自身を示す＃３番地へのアクセスであると分かった段階、つまり先頭部分がシリアルバス９５に送信された時点でスイッチＳＷ１をＯＦＦ（Ｄｉｓｃｏｎｎｅｃｔ）するので、それ以降にコネクタ４２側へ送信される制御内容を示すデータが遮断される。また、当該アクセスに対するマイコン１０２からの応答が仮にあっても、その応答データは無線モジュール７６に到達せず、マイコン９４で廃棄等の処理が行えるようになる。
【０１５９】
次に、ステップＳ１３で、無線モジュール７６側のＡｔｔａｃｈつまりＡｔｔａｃｈ１（図１５参照）をＬｏｗにする。これによって、無線モジュール７６からは、ジャイロセンサ８５が見えない状態となる。
【０１６０】
そして、ステップＳ１５で、シリアルバス９５に対してバスクリア処理を実行する。具体的には、シリアルバス９５に所定数のクロックを流し、これに応答してシリアルバス９５に送出されたデータを破棄する。つまり、先述したように、当該アクセスの先頭部分は、同じ＃３番地が割り当てられたマイコン１０２によっても検知されるため、マイコン１０２が何らかの応答を行う可能性がある。そこで、バスクリア処理を実行して、当該アクセスを取り消し、マイコン１０２が応答すべきデータを持っていればこれを出力させ、シリアルバス９５を介してマイコン９４に送信されてきたデータは特に受け取らずに破棄し、マイコン１０２を元の状態に戻しておく。
【０１６１】
バスクリア処理が完了すると、ステップＳ１７に進んで、当該アクセスはＲｅａｄであるか否かを判別する。ここでＮＯつまりＷｒｉｔｅであれば、処理はステップＳ２９（図２３参照：後述）に移る。ステップＳ１７でＹＥＳつまりＲｅａｄであれば、ステップＳ１９で、無線モジュール７６にレスポンス（読み込み対象として指定されたデータ、たとえばジャイロの状態を示すデータ等）を返す。そして、次のステップＳ２１で、指定されたデータを返信し終えたか（読み込みが完了したか）否かを判別し、ＮＯであればステップＳ１９に戻って同様の処理を繰り返す。
【０１６２】
ステップＳ２１でＹＥＳであれば、ステップＳ２３に進み、スイッチＳＷ１をＯＮ（Ｃｏｎｎｅｃｔ）する。これによって、コネクタ４２側から無線モジュール７６へのシリアルバス９５によるバイパスが回復される。
【０１６３】
次に、ステップＳ２５で、コネクタ４２側のＡｔｔａｃｈつまりＡｔｔａｃｈ２（図１５参照）はＨｉｇｈであるか否かを判別し、ＮＯつまりＡｔｔａｃｈ２＝Ｌｏｗであれば、何もせずに（Ａｔｔａｃｈ１＝Ｌｏｗのままで）メインルーチン（図２１参照）に復帰する。ステップＳ２５でＹＥＳつまりＡｔｔａｃｈ２＝Ｈｉｇｈであれば、ステップＳ２７でＡｔｔａｃｈ１＝Ｈｉｇｈとした後、メインルーチンに復帰する。
【０１６４】
上記ステップＳ１７でアクセスがＷｒｉｔｅであると判別された場合の処理は、次のようになる。図２３を参照して、マイコン９４は、ステップＳ２９で、当該アクセスは、モード変更に対応する特定番地へのＷｒｉｔｅであるか否か、要するにモード変更を指示するコマンドであるか否かを判別する。ここでＮＯ、つまり他の番地へのＷｒｉｔｅであれば、処理はステップＳ４５（後述）に移る。
【０１６５】
ステップＳ２９でＹＥＳつまり特定番地へのＷｒｉｔｅであれば、ステップＳ３１に進んで、当該特定番地に、指定された値つまり変更後のモード情報（“ジャイロモード”または“ジャイロ＆第２コントローラモード”）を書き込む。次に、ステップＳ３３で無線モジュール７６にレスポンス（Ａｃｋ）を返し、ステップＳ３５で更新後のモード情報に応じて内蔵ジャイロつまりジャイロセンサ８５を起動する。ジャイロ起動に伴い、ステップＳ３７で自身のアドレスを＃３から＃４に変更し、そしてステップＳ３９でＡｔｔａｃｈ１＝Ｈｉｇｈとする。Ａｔｔａｃｈ１＝Ｈｉｇｈとしたことで、無線モジュール７６にジャイロセンサ８５が接続されていると認識される。
【０１６６】
次に、ステップＳ４１で、Ａｔｔａｃｈ２＝Ｈｉｇｈであるか否かを判別し、ＮＯつまりＡｔｔａｃｈ２＝Ｌｏｗであれば、何もせずにメインルーチン（図２１参照）に復帰する。ステップＳ４１でＹＥＳつまりＡｔｔａｃｈ２＝Ｈｉｇｈであれば、ステップＳ４３で第２コントローラ３６の初期化を行った後、メインルーチンに復帰する。
【０１６７】
上記ステップＳ２９でＮＯと判別された場合の処理は、次のようになる。マイコン９４は、ステップＳ４５で、他の番地に、指定された値を書き込む。次に、ステップＳ４７で無線モジュール７６にレスポンス（Ａｃｋ）を返し、ステップＳ４８で当該番地への書き込み値に応じた処理を実行し、そしてステップＳ４９でスイッチＳＷ１をＯＮ（Ｃｏｎｎｅｃｔ）する。
【０１６８】
次に、ステップＳ５１で、Ａｔｔａｃｈ２＝Ｈｉｇｈであるか否かを判別し、ＮＯつまりＡｔｔａｃｈ２＝Ｌｏｗであれば、何もせずにメインルーチンに復帰する。ステップＳ５１でＹＥＳつまりＡｔｔａｃｈ２＝Ｈｉｇｈであれば、ステップＳ４３でＡｔｔａｃｈ１＝Ｈｉｇｈとした後、メインルーチンに復帰する。
【０１６９】
上記ステップＳ９の通常制御は、たとえば図２４のサブルーチンに従って実行される。図２４を参照して、マイコン９４は、最初、ステップＳ６１でジャイロモードへのモード更新を行う。具体的には、メモリ９４ｃ内のテーブル（図１９（Ａ））に記述された“ジャイロ”の規定に従って、ジャイロ機能を起動させ、ジャイロセンサ８５への電源供給を開始し、バススイッチＳＷ１を切断(ＯＦＦ）し、コネクタ４２を休止させ、Ａｔｔａｃｈ１を“Ｈｉｇｈ”（＝１）に制御し、そしてシリアルバス９５の通常のアドレス（＃４）への注目を開始する。なお、既にジャイロモードである場合には、このようなモード更新処理の全部または一部は省略されてよい。こうしてジャイロ制御部８５Ｃがジャイロモードに移行すると、処理はステップＳ６３〜Ｓ６７のループに入る。
【０１７０】
ステップＳ６３ではＡｔｔａｃｈ２が“１”つまりＨｉｇｈであるか否かが、ステップＳ６５ではアプリケーションからリセットがかかったか否かが、そしてステップＳ６７では現時刻がデータ出力タイミングに該当するか否かが、それぞれ判別される。前回のデータ出力から既定時間が経過すると、ステップＳ６７の判別結果がＹＥＳとなり、処理はステップＳ６９に移る。ステップＳ６９では、マイコン９４は、ジャイロセンサ８５からのジャイロ用データ（図１７（Ａ））を無線モジュール７６側に出力する。出力後、処理はステップＳ６３〜Ｓ６７のループに戻る。
【０１７１】
アプリケーションから（無線モジュール７６を通して）リセットがかかると、ステップＳ６５の判別結果がＹＥＳとなって、処理はステップＳ７１に移る。ステップＳ７１では、スタンバイモードへのモード更新が行われる。このモード更新では、メモリ９４ｃ内のテーブル（図１９（Ａ））に記述された“スタンバイ”の規定が参照される。これにより、スイッチＳＷ１はＯＮ状態となる。こうしてジャイロ制御部８５Ｃがスタンバイモードに移行すると、処理はステップＳ８５（後述）に進む。
【０１７２】
Ａｔｔａｃｈ２が“０”から“１”に変化すると、ステップＳ６３の判別結果がＹＥＳとなり、処理はステップＳ７３に移る。ステップＳ７３では、ジャイロ＆第２コントローラモードへのモード更新が行われる。このモード更新では、メモリ９４ｃ内のテーブル（図１９（Ａ））に記述された“ジャイロ＆第２コントローラ”の規定が参照される。これにより、スイッチＳＷ１はＯＦＦ状態となる。こうしてジャイロ制御部８５Ｃがジャイロ＆第２コントローラモードに移行すると、処理はステップＳ７５〜Ｓ７９のループに入る。
【０１７３】
ステップＳ７５ではＡｔｔａｃｈ２が“０”つまりＬｏｗであるか否かが、ステップＳ７７ではアプリケーションからリセットがかかったか否かが、そしてステップＳ７９では現時刻がデータ出力タイミングに該当するか否かが、それぞれ判別される。前回のデータ出力から既定時間が経過すると、ステップＳ７９の判別結果がＹＥＳとなり、処理はステップＳ８１に移る。ステップＳ８１では、マイコン９４は、ジャイロ用データ（図１７（Ａ））および第２コントローラ用データ（図１７（Ｂ））を交互に無線モジュール７６側に出力する。出力後、処理はステップＳ７５〜Ｓ７９のループに戻る。
【０１７４】
アプリケーションからリセットがかかると、ステップＳ７７の判別結果がＹＥＳとなって、処理はステップＳ８３に移る。ステップＳ８３では、バイパスモードへのモード更新が行われる。このモード更新では、メモリ９４ｃ内のテーブル（図１９（Ａ））に記述された“バイパス”の規定が参照される。これにより、スイッチＳＷ１はＯＮ状態となる。こうしてジャイロ制御部８５Ｃがバイパスモードに移行すると、処理はステップＳ８５に進む。
【０１７５】
Ａｔｔａｃｈ２が“１”から“０”に変化すると、ステップＳ７５の判別結果がＹＥＳとなり、処理はステップＳ６１に戻る。
【０１７６】
上記ステップＳ７１またはＳ８３に続くステップＳ８５では、自身のアドレスを呼出制御用の特別なアドレスである＃３に変更する。アドレス変更後、処理はメインルーチン（図２１参照）に復帰する。
【０１７７】
以上から明らかなように、この実施例の第１コントローラ３４では、操作部８０，加速度センサ８４といった入力デバイスを制御し、かつデータを取得する無線モジュール７６が、所定のバスたとえばシリアルバス９５に接続されている。シリアルバス９５には、コネクタ４２を介してジャイロセンサユニット１００が接続され得る。シリアルバス９５の、コネクタ４２から無線モジュール７６への接続は、スイッチＳＷ１によってＯＮ／ＯＦＦされる。ジャイロセンサユニット１００と同等の機能を有するジャイロセンサ８５から取得されるデータは、シリアルバス９５の無線モジュール７６側およびコネクタ４２側にそれぞれスイッチＳＷ１を介さずに接続され、かつスイッチＳＷ１のＯＮ／ＯＦＦを制御するマイコン９４によって、シリアルバス９５を介して無線モジュール７６に送信される。マイコン９４は、無線モジュール７６から自身へのアクセスがあったとき、スイッチＳＷ１の接続をＯＦＦにする（Ｓ１１）。
【０１７８】
この実施例によれば、無線モジュール７６からマイコン９４へのアクセスに応じて、コネクタ４２から無線モジュール７６への接続がＯＦＦされるので、コネクタ４２にジャイロセンサユニット１００が接続されても、ジャイロセンサ８５とジャイロセンサユニット１００との間でデータ競合等の問題が生じることはなくなる。したがって、ハウジング形状が同じでよく、ジャイロセンサユニット１００への互換性を維持できる
なお、この実施例では、第１コントローラ３４と第２コントローラ３６との間はケーブル３８で接続されたが、無線通信により接続されてもよい。
【０１７９】
なお、以上で挙げたバス名，アドレス値，データフォーマットなどは、一例に過ぎず、適宜変更されてよい。
【０１８０】
以上では、一例として、ゲームシステム１０を用いて説明したが、この発明は、入力装置（入力デバイス）からのデータに基づいて、ゲームなどのアプリケーションに従う情報処理を実行する、情報処理システムに適用できる。
【符号の説明】
【０１８１】
１０  …ゲームシステム
１２  …ゲーム装置
１４  …コントローラ
３４  …第１コントローラ
３６  …第２コントローラ
４０，４２，１０６，１０８  …コネクタ
８０，８８  …操作部
８１  …撮像情報演算部
８４，９０  …加速度センサ
７６  …無線モジュール
８９，９４，１０２  …マイコン
１００  …ジャイロセンサユニット
８５，１０４  …ジャイロセンサ
８５Ｃ，１０４Ｃ  …ジャイロ制御部
ＳＷＩ，ＳＷ２  …スイッチ
【図１】
0005404522.tif 000002
【図２】
0005404522.tif 000003
【図３】
0005404522.tif 000004
【図４】
0005404522.tif 000005
【図５】
0005404522.tif 000006
【図６】
0005404522.tif 000007
【図７】
0005404522.tif 000008
【図８】
0005404522.tif 000009
【図９】
0005404522.tif 000010
【図１０】
0005404522.tif 000011
【図１１】
0005404522.tif 000012
【図１２】
0005404522.tif 000013
【図１３】
0005404522.tif 000014
【図１４】
0005404522.tif 000015
【図１５】
0005404522.tif 000016
【図１６】
0005404522.tif 000017
【図１７】
0005404522.tif 000018
【図１８】
0005404522.tif 000019
【図１９】
0005404522.tif 000020
【図２０】
0005404522.tif 000021
【図２１】
0005404522.tif 000022
【図２２】
0005404522.tif 000023
【図２３】
0005404522.tif 000024
【図２４】
0005404522.tif 000025