情報処理システムおよび情報処理装置
【課題】アプリケーションの実行の有無に関わらず、当該アプリケーションで利用可能なデータを他の情報処理装置に提供することが可能な情報処理システムを提供する。
【解決手段】CPUは、通信相手(他のゲーム装置)を探索する通信相手サーチ処理を実行する(ステップS22)。そして、CPUは、受信したデータ内容を確認する(ステップS30)。そして、受信したデータに含まれる識別情報が一致した場合には、無線通信モジュール内に保存されたアプリケーション識別情報と受信したデータに含まれるアプリケーション識別情報とを比較する(ステップS33)。アプリケーション識別情報が一致する場合には、一致したアプリケーション識別情報に対応する交換データを有する他のゲーム装置が発見された旨を本体側に通知する(ステップS36)。そして、他のゲーム装置との間で交換データの授受を実行する。
【解決手段】CPUは、通信相手(他のゲーム装置)を探索する通信相手サーチ処理を実行する(ステップS22)。そして、CPUは、受信したデータ内容を確認する(ステップS30)。そして、受信したデータに含まれる識別情報が一致した場合には、無線通信モジュール内に保存されたアプリケーション識別情報と受信したデータに含まれるアプリケーション識別情報とを比較する(ステップS33)。アプリケーション識別情報が一致する場合には、一致したアプリケーション識別情報に対応する交換データを有する他のゲーム装置が発見された旨を本体側に通知する(ステップS36)。そして、他のゲーム装置との間で交換データの授受を実行する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、情報処理システムおよび情報処理装置に関し、特に、例えば、互いに無線通信可能な複数の携帯型の情報処理装置等を備える、情報処理システムおよび情報処理装置に関する。
【背景技術】
【0002】
従来より、情報処理装置が近接した場合に、自動的に通信を実行するシステムが存在する。例えば、特開2005−28103号公報においては、通信するゲーム装置同士で交換条件を確認し合い、交換条件が合致する場合には、交換用に指定されたゲームデータをゲーム装置同士で交換するシステムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−28103号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方で、上記システムにおいては、交換処理は、携帯ゲーム装置同士でゲームのアプリケーションプログラム(以下、単にアプリケーションあるいはアプリとも称することとする)が実行されている場合にのみ、交換用に指定されたゲームデータを交換することが可能である。異なるゲームアプリケーションを実行中のゲーム装置同士は、当該交換を実行することはできなかった。
【0005】
本発明の目的は、上記のような問題を解決するためになされたものであって、アプリケーションの実行の有無に関わらず、当該アプリケーションで利用可能なデータを他の情報処理装置に提供することが可能な情報処理システムおよび情報処理装置を提供することである。
【課題を解決するための手段】
【0006】
この本発明の第1の局面に従う情報処理システムは、複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置を複数含む、情報処理システムであって、情報処理装置は、それぞれ、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、他の情報処理装置と無線通信するための通信手段と、アプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む。
【0007】
第1の局面によれば、携帯型ゲーム装置情報処理装置によるアプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。すなわち、無線通信モジュール38は、アプリケーションプログラムの実行の有無に関わらず、他のゲーム装置と通信し、交換データ保存領域80のスロットSLに格納されている交換データを他のゲーム装置に送信し、他のゲーム装置からの交換データを受信する。したがって、アプリケーションプログラムの実行の有無に関わらず、交換データを交換することができ、交換データを手軽に交換することができる。
【0008】
好ましい第2の局面によれば、情報処理装置は、データ送受信制御手段により受信した、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能な他の情報処理装置において記憶された提供データを記憶する受信データ記憶手段をさらに含む。
【0009】
第2の局面によれば、受信データ記憶手段は、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能な他の情報処理装置において記憶された提供データを記憶する。したがって、他のゲーム装置から受信した交換データが受信データ保存領域82に記憶され、当該交換データを、ゲーム装置自身が有する対応するアプリケーションで利用することが可能であるため交換データを利用するアプリケーションの興趣性を向上させることができる。
【0010】
好ましい第3の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、当該アプリケーションプログラムで利用可能なデータを、提供データとして提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。
【0011】
好ましい第4の局面によれば、提供データ記憶手段は、提供データを、提供データに係るアプリケーションプログラムを識別可能に記憶する。
【0012】
好ましい第5の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、当該アプリケーションプログラムで利用可能なデータを、提供データとして、自己のアプリケーションプログラムを識別可能に提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。
【0013】
第3〜第5の局面によれば、処理手段を、アプリケーションプログラムで利用可能なデータを、提供データとして提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。したがって、ゲーム装置のアプリケーションプログラムの実行中に交換データを交換データ保存領域80に記憶させることが可能であり、例えば、ゲーム上のイベントと関連づけて交換データを記憶させることも可能であり、交換データの記憶に興趣性を持たせることが可能である。
【0014】
好ましい第6の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、複数のアプリケーションプログラムのうちの第1のアプリケーションプログラムは、処理手段を、当該第1のアプリケーションプログラムで利用可能なデータを、第1の提供データとして、提供データ記憶手段に記憶させる第1提供データ記憶制御手段として機能させ、複数のアプリケーションプログラムのうちの第2のアプリケーションプログラムは、処理手段を、当該第2のアプリケーションプログラムで利用可能なデータを、第2の提供データとして、提供データ記憶手段に記憶させる第2提供データ記憶制御手段として機能させる。
【0015】
第6の局面によれば、処理手段を、第1および第2のアプリケーションプログラムで利用可能なデータを、それぞれ第1および第2の提供データとして提供データ記憶手段に記憶させる第1および第2提供データ記憶制御手段として機能させる。したがって、複数のアプリケーションプログラムの交換データを交換データ保存領域80に記憶させることが可能であり、交換データの記憶に興趣性を持たせることが可能である。
【0016】
好ましい第7の局面によれば、情報処理装置は、複数のアプリケーションプログラムが
それぞれ使用する複数のアプリケーション用記憶手段をさらに含み、提供データ記憶手段は、複数のアプリケーション用記憶手段に記憶されるアプリケーションデータに基づく提供データが記憶される、共用の記憶手段である。
【0017】
第7の局面によれば、複数のアプリケーション用記憶手段と、提供データ記憶手段とは共用の記憶手段である。したがって、1つの保存用データメモリ34にそれぞれ記憶領域を設けて内蔵アプリ保存領域と、交換データ保存領域とを設けることが可能であるため別々のメモリとするよりも1つのメモリとすることによりメモリのレイアウト面積を縮小することが可能である。
【0018】
好ましい第8の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、アプリケーション用記憶手段に記憶されるアプリケーションデータに基づく提供データを、提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。
【0019】
第8の局面によれば、処理手段を、アプリケーション用記憶手段に記憶されるアプリケーションデータに基づく提供データを提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。したがって、アプリケーションデータとして、ユーザがゲーム内で手に入れたアイテムや、キャラクタのデータ等を交換データとすることが可能であり、交換データの記憶に興趣性を持たせることが可能である。
【0020】
好ましい第9の局面によれば、情報処理装置は、情報処理装置によるアプリケーションプログラムの実行時に、対応するアプリケーションプログラムの提供データが受信されているか否かを判断する提供データ格納判断手段と、提供データ格納判断手段により対応するアプリケーションプログラムの提供データが受信されていると判断した場合には、対応するアプリケーションプログラムの提供データを読み出す提供データ取得手段とをさらに含む。
【0021】
好ましい第10の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、提供データ格納判断手段および提供データ取得手段として機能させる。
【0022】
第9および第10の局面によれば、情報処理装置は、アプリケーションプログラムの実行時に、対応するアプリケーションプログラムの提供データが受信されているか否かを判断し、提供データ格納判断手段により対応するアプリケーションプログラムの提供データが受信されていると判断した場合には、対応するアプリケーションプログラムの提供データを読み出す。したがって、アプリケーションプログラムの実行時に受信データ保存領域82に対応するアプリケーションプログラムで利用可能な交換データが受信されているかどうかを判断し、受信されている場合には、当該交換データを読み出して利用することが可能であるため交換データを利用したアプリケーションプログラムの興趣性を増すことが可能である。
【0023】
好ましい第11の局面によれば、データ送受信制御手段は、他の情報処理装置と通信可能になったときに、当該他の情報処理装置との間で無線通信による接続を確立するための処理を実行する接続確立手段を含む。
【0024】
好ましい第12の局面によれば、提供データ記憶手段は、複数の提供データを記憶可能であり、データ送受信制御手段は、接続確立手段によって他の情報処理装置との間の接続が確立されたときに、複数の提供データのそれぞれについて、送信する。
【0025】
第11および第12の局面によれば、データ送受信制御手段は、接続確立手段によって他の情報処理装置との間の接続が確立されたときに、複数の提供データのそれぞれについて、送信する。したがって、交換データ保存領域80に格納されている複数のスロットSLに格納されている交換データについて、接続が確立されたときに、それぞれ送信することが可能であるため、一括して交換データを交換することが可能であり、交換データの交換を容易に実行することが可能である。
【0026】
好ましい第13の局面によれば、データ送受信制御手段は、通信手段を用いて提供データ記憶手段に記憶されている提供データの属性情報と、他の情報処理装置の提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。
【0027】
好ましい第14の局面によれば、提供データごとに、各アプリケーションプログラムを識別する識別データが設定され、データ送受信制御手段は、提供データ記憶手段に記憶されている提供データの識別データと、他の情報処理装置の提供データ記憶手段に記憶されている識別データとの比較に基づいて一致した場合には、提供データ記憶手段に記憶された一致した識別データに対応する提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された一致した識別データに対応する提供データを受信する。
【0028】
第13および第14の局面によれば、提供データの属性情報(識別データ)と、他の情報処理装置の提供データ記憶手段に記憶されている提供データの属性情報(識別データ)との比較に基づいて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。したがって、交換データに対応付けられているアプリケーション識別情報の比較に基づいて一致した場合には、同一のアプリケーションに対応する交換データであることを認識することが可能であり、同一のアプリケーションに対応する交換データを交換して、交換データの交換の興趣性を増すことができる。
【0029】
好ましい第15の局面によれば、データ送受信制御手段は、提供データ記憶手段に記憶されている提供データの識別データと、他の情報処理装置の提供データ記憶手段に記憶されている提供データの識別データとについて、予め設けられている複数の比較方式のうち、提供データの識別データについて指定された比較方式に従う比較処理を実行する。
【0030】
第15の局面によれば、データ送受信制御手段は、識別データの比較について、予め設けられている複数の比較方式のうち、指定された比較方式に従う比較処理を実行する。したがって、アプリケーション識別データの全体を比較する場合だけでなく、一部のデータのみを比較したりすることが可能となり、交換データの交換処理を早期に実行して交換データの交換の興趣性を増すことができる。また、アプリケーション識別データの中に交換条件を設定して交換条件の一致を比較することが可能となり、より高度な交換処理が可能となり交換データの交換の興趣性を増すことができる。
【0031】
好ましい第16の局面によれば、情報処理装置は、無線モジュールを含み、無線モジュールは、通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、提供データ記憶手段に記憶されている提供データの属性情報と、他の情報処理装置の提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、一致した場合には、他の情報処理装置との間でデータ通信を実行するようにデータ送受信制御手段に指示する。
【0032】
第16の局面によれば、無線モジュールは、通信可能な他の情報処理装置を繰り返して
探索し、他の情報処理装置と通信可能になったときに、提供データの属性情報と、他の情報処理装置の提供データの属性情報との比較に基づいて、一致した場合には、データ通信を実行するようにデータ送受信制御手段に指示する。したがって、無線通信モジュール38は、通信相手を探索して、自己が有している交換データのアプリケーション識別データと、通信相手が有している交換データのアプリケーション識別データとが一致する場合に本体部であるCPU31に通知するため、一致しない場合には、CPU31がスリープ状態の場合に起動させることはなく、ゲーム装置本体の省電力を図ることができる。
【0033】
好ましい第17の局面によれば、各情報処理装置ごとに、各情報処理装置を識別することが可能な装置識別情報が設定され、情報処理装置は、通信した他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段をさらに含み、データ送受信制御手段は、通信手段を用いて、装置識別情報記憶手段に記憶されている装置識別情報と、他の情報処理装置の装置識別情報との比較に基づいて、装置識別情報記憶手段に記憶されている装置識別情報に対応する他の情報処理装置には提供データ記憶手段に記憶された提供データを送信しない。
【0034】
第17の局面によれば、情報処理装置は、以前に通信した他の情報処理装置の装置識別情報を記憶し、記憶している装置識別情報と、今回通信する他の情報処理装置の装置識別情報との比較に基づいて、記憶している装置識別情報に対応する他の情報処理装置には提供データを送信しない。したがって、MSCアドレス保存領域88に格納されているMACアドレスリストに含まれているMACアドレスに対応するゲーム装置に対しては、交換データは送信されないため交換データの交換処理を同じゲーム装置と複数回繰り返すことはなく、効率的な交換データの交換が可能となる。
【0035】
好ましい第18の局面によれば、各情報処理装置ごとに、各情報処理装置を識別することが可能な装置識別情報が設定され、情報処理装置は、通信した他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段と、無線モジュールとをさらに含み、無線モジュールは、通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、装置識別情報記憶手段に記憶されている装置識別情報と、他の情報処理装置の装置識別情報との比較に基づいて、一致した場合には、他の情報処理装置との間でデータ通信を実行するようにデータ送受信制御手段に指示しない。
【0036】
第18の局面によれば、無線モジュールは、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、以前に通信した他の情報処理装置の装置識別情報と、今回通信する他の情報処理装置の装置識別情報との比較に基づいて、一致した場合には、データ通信を実行するようにデータ送受信制御手段に指示しない。したがって、無線通信モジュール38は、通信相手を探索して、MSCアドレス保存領域88に格納されているMACアドレスリストに含まれているMACアドレスに対応するゲーム装置に対しては、以前に通信した通信相手であるため本体部であるCPU31に通知しないことにより、同じゲーム装置と交換データの交換処理を繰り返すことはなく効率的な交換が可能となるとともに、CPU31がスリープ状態の場合に起動させることはないため、ゲーム装置本体の省電力を図ることができる。
【0037】
好ましい第19の局面によれば、装置識別情報記憶手段に記憶された装置識別情報は、所定条件の場合に消去される。
【0038】
好ましい第20の局面によれば、装置識別情報記憶手段に記憶された装置識別情報は、一定時間経過後に消去される。
【0039】
第19および第20の局面によれば、装置識別情報記憶手段に記憶された装置識別情報
は、一定時間経過後に消去される。したがって、MACアドレスリスト保存領域88に格納されているMACアドレスはリセットされるため、再度、以前に通信処理が実行された装置ともデータ通信を実行することが可能である。例えば、以前に交換データの授受が実行された装置についても一定期間内に状況が変わり(新たな交換データが設定されているなど)、交換データの授受が可能な状況となっている可能性もあるため再度、交換データの交換が可能か否かを判断して、可能であるならば交換データの授受を実行するようにすることにより交換データの興趣性を増すことができる。
【0040】
好ましい第21の局面によれば、配信データを送信することが可能な配信用端末をさらに備え、通信手段は、他の情報処理装置あるいは配信用端末との無線通信の切り替えが可能であり、データ送受信制御手段は、アプリケーションの実行の有無に関わらず、通信手段が配信用端末との無線通信に切り替えられた場合には、通信手段を用いて配信用端末から送信された配信データを受信する。
【0041】
第21の局面によれば、配信用端末との無線通信に切り替えられた場合には、配信用端末から配信された配信データを受信する。したがって、固定端末機器5から送信された配信データを受信することが可能であるため、交換データの交換とともに配信データ取得の興趣性が増す。
【0042】
好ましい第22の局面によれば、通信手段は、他の情報処理装置との無線通信を実行する場合に、他の情報処理装置を探索するための第1の探索信号を出力し、配信用端末との無線通信を実行する場合には、配信用端末からの情報処理装置を探索する第2の探索信号の入力があるまで待機する。
【0043】
好ましい第23の局面によれば、通信手段は、他の情報処理装置との無線通信を実行する第1の期間において、他の情報処理装置を探索するための第1の探索信号を不特定の相手に繰り返し送信し、第2の期間において、他の情報処理装置から繰り返し送信される第1の探索信号の入力があるまで待機し、配信用端末との無線通信を実行する第3の期間において、配信用端末から繰り返し送信される第2の探索信号の入力があるまで待機する。
【0044】
第22および第23の局面によれば、他の情報処理装置との無線通信を実行する第1の期間において、他の情報処理装置を探索するための第1の探索信号を不特定の相手に繰り返し送信する。また、配信用端末との無線通信を実行する第3の期間において、配信用端末から繰り返し送信される第2の探索信号の入力があるまで待機する。したがって、固定端末機器5からの配信データを取得する場合には、ゲーム装置間のデータ通信と異なり、固定端末機器5からの接続要求があるまで待機する。すなわち、備え付けの機器である固定端末機器5からのみ接続要求信号を送信することにより、効率的なデータ通信を実行することができる。
【0045】
好ましい第24の局面によれば、複数のアプリケーションプログラムのうちの少なくとも1つは、情報処理装置と装着されて実行される、着脱可能な外部記憶装置に記憶された外部アプリケーションプログラムであり、提供データ記憶手段は、外部アプリケーションプログラムで利用可能なデータを、提供データとして記憶し、データ送受信制御手段は、外部記憶装置の装着状態の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。
【0046】
第24の局面によれば、データ送受信制御手段は、外部記憶装置の装着状態の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。したがって
、メモリカード26の装着の有無に関わらず、交換データを他のゲーム装置と交換することが可能であるためメモリカード26を装着している必要は無く、利便性が高く、また、何が交換されるかが分からないため興趣性が増す。
【0047】
好ましい第25の局面によれば、データ送受信制御手段は、他の情報処理装置において記憶された提供データを受信した場合には、提供データ記憶手段に記憶された提供データを消去する。
【0048】
第25の局面によれば、他の情報処理装置において記憶された提供データを受信した場合には、提供データ記憶手段に記憶された提供データを消去する。したがって、受信データ保存領域82に交換データが格納された場合には、交換データ保存領域80のスロットSLに格納されている交換データは削除されるため交換が成立し、交換データの交換の興趣性を増すことができる。
【0049】
好ましい第26の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、当該アプリケーションプログラムで利用可能な、提供データ記憶手段に記憶された提供データを消去する提供データ消去手段として機能させる。
【0050】
第26の局面によれば、処理手段を、アプリケーションプログラムで利用可能な提供データ記憶制御手段に記憶された提供データを消去する提供データ消去手段として機能させる。したがって、ゲーム装置のアプリケーションプログラムの実行により、交換データ保存領域80のスロットSLに格納された提供データを消去することが可能であり、それにより交換が成立し、交換データの交換の興趣性を増すことができる。
【0051】
好ましい第27の局面によれば、複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置であって、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、他の情報処理装置と無線通信するための通信手段と、アプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む。
【0052】
第27の局面によれば、携帯型ゲーム装置情報処理装置によるアプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。すなわち、無線通信モジュール38は、アプリケーションプログラムの実行の有無に関わらず、他のゲーム装置と通信し、交換データ保存領域80のスロットSLに格納されている交換データを他のゲーム装置に送信し、他のゲーム装置からの交換データを受信する。したがって、アプリケーションプログラムの実行の有無に関わらず、交換データを交換することができ、交換データを手軽に交換することができる。
【0053】
好ましい第28の局面によれば、着脱可能な記憶媒体に記憶された所定のアプリケーションプログラムを実行可能な携帯型の情報処理装置であって、記憶媒体の装着時に、所定のアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、他の情報処理装置と無線通信するための通信手段と、記憶媒体の装着の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを備える。
【0054】
第28の局面によれば、携帯型ゲーム装置情報処理装置による記憶媒体の装着の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。すなわち、無線通信モジュール38は、記憶媒体の装着の有無に関わらず、他のゲーム装置と通信し、交換データ保存領域80のスロットSLに格納されている交換データを他のゲーム装置に送信し、他のゲーム装置からの交換データを受信する。したがって、アプリケーションプログラムの実行の有無に関わらず、交換データを交換することができ、交換データを手軽に交換することができる。
【0055】
上述の記載においては、本発明の理解を助けるために後述の実施形態との対応関係を示すための参照符号および補足説明等を付したが、これらは本発明を何ら限定するものではない。
【発明の効果】
【0056】
本発明に従えば情報処理システムおよび情報処理装置アプリケーションの実行の有無に関わらず、当該アプリケーションで利用可能なデータを他の情報処理装置に提供することが可能である。
【図面の簡単な説明】
【0057】
【図1】本発明に係る情報処理システムの典型例について説明する図である。
【図2】本発明の実施の形態に従うゲーム装置1の構成の概略ブロック図について説明する図である。
【図3】本実施の形態に従う無線通信モジュール38の構成について説明する図である。
【図4】本実施の形態に従う保存用データメモリ34のメモリマップについて説明する図である。
【図5】交換データ保存領域80への交換データの格納処理について説明する図である。
【図6】アプリケーションにより交換データ保存領域80に交換データを格納する場合について説明する図である。
【図7】本発明の実施の形態に従う無線通信モジュール38で実行するデータ通信処理のフローについて説明する図である。
【図8】本発明の実施の形態に従う通信初期設定の処理について説明する図である。
【図9】通信初期設定処理によりRAM66に格納されたデータについて説明する図である。
【図10】本発明の実施の形態に従う携帯端末間通信について説明する図である。
【図11】本発明の実施の形態に従うMACアドレスを比較する場合の概念図について説明する図である。
【図12】本発明の実施の形態に従うMACアドレスを比較する場合の別の概念図について説明する図である。
【図13】本発明の実施の形態に従う携帯端末間通信においてゲーム装置において受信される無線フレームの構成について説明する図である。
【図14】本発明の実施の形態に従うアプリケーション識別情報(ID)を比較する場合の概念図について説明する図である。
【図15】本発明の実施の形態に従うアプリケーション識別情報(ID)の比較について説明する図である。
【図16】本発明の実施の形態に従うアプリケーション識別情報(ID)のさらに別の比較について説明する図である。
【図17】本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する図(その1)である。
【図18】本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する図(その2)である。
【図19】本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する図(その3)である。
【図20】交換データの授受処理のフロー(その1)について説明する図である。
【図21】交換データの授受処理のフロー(その2)について説明する図である。
【図22】本発明の実施の形態に従う交換データ通知処理について説明する図である。
【図23】図5で説明した交換データ追加および消去処理について説明する図である。
【図24】通信相手サーチ処理について説明する図である。
【図25】通信相手サーチ処理(1)を示すフロー図である。
【図26】通信相手サーチ処理(2)を示すフロー図(その1)である。
【図27】通信相手サーチ処理(2)を示すフロー図(その2)である。
【図28】本発明の実施の形態に従う交換データの授受のデータの遣り取りについて説明する図である。
【図29】本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5との通信処理の概略について説明する図である。
【図30】本発明の実施の形態に従う携帯固定端末間通信について説明する図である。
【図31】本発明の実施の形態に従う携帯固定端末間通信においてゲーム装置において受信される配信無線フレームの構成について説明する図である。
【図32】配信データを取得するデータ取得処理のフローについて説明する図である。
【図33】通信相手サーチ処理(3)を示すフロー図である。
【図34】本発明の実施の形態に従う配信データ取得のデータの遣り取りについて説明する図である。
【図35】本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5#との通信処理の概略について説明する図である。
【発明を実施するための形態】
【0058】
この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0059】
<全体構成>
まず、図1を用いて本発明に係る情報処理システムの典型例について説明する。
【0060】
図1を参照して、この発明の実施の形態に従う本発明に係る情報処理システムは、複数の携帯型の情報処理装置を含む。本例においては、複数の携帯型の情報処理装置の一例として携帯ゲーム装置(以下、単にゲーム装置とも称する)1〜3が示されている。なお、ここでは、3台の携帯ゲーム装置が示されているが少なくとも2台有ればよい。また、さらに複数台の携帯ゲーム装置を設けた構成とすることも可能である。
【0061】
なお、本例においては、本発明の実施の形態における情報処理システムにおいて、必須の構成物ではないが、携帯型の情報処理装置であるゲーム装置と無線通信可能な固定端末機器5を設ける。
【0062】
ゲーム装置1〜3は、互いに無線通信を実行してデータの授受が可能であり、本例においては、ゲーム装置1(以下、単に、自機とも称する)と、他のゲーム装置および固定端
末機器5と通信する場合について説明する。
【0063】
また、図1においては、ゲーム装置1(自機)において、無線通信を実行する場合の通信可能範囲10が点線で示されている。すなわち、図1の例においては、ゲーム装置1(自機)は、ゲーム装置2,3と、固定端末機器5とそれぞれ通信が可能な状態であることが示されている。なお、図1においては、自機のゲーム装置1の通信可能範囲10に、ユーザ名「一郎」および「次郎」のゲーム装置2,3がそれぞれ存在し、ゲーム装置1は、ユーザ名「次郎」のゲーム装置3と無線通信している様子が示されている。
【0064】
詳細については後述するが、ゲーム装置1とゲーム装置3とは、互いに無線通信を実行して、互いに有しているデータを交換する。
【0065】
また、後述するが、固定端末機器5は、周辺のゲーム装置に対して所定の配信データを配信する。そして、ゲーム装置は、固定端末機器5から配信された配信データを取得した場合には、取得した配信データを利用することが可能であるものとする。
【0066】
<ゲーム装置の構成>
図2を用いて、本発明の実施の形態に従うゲーム装置1の構成の概略ブロック図について説明する。なお、ゲーム装置2,3についても同様の構成であるためその詳細な説明は省略する。
【0067】
図2を参照して、ゲーム装置1は、CPU31と、メインメモリ32と、メモリ制御回路33と、保存用データメモリ34と、プリセットデータ用メモリ35と、メモリカードインターフェース(メモリカードI/F)36と、無線通信モジュール38と、リアルタイムクロック(RTC)40と、電源回路41とを備えている。
【0068】
CPU31は、プログラムを実行するための演算処理手段である。本実施の形態では、当該プログラムは、ゲーム装置1内のメモリ(たとえば、保存用データメモリ34)やメモリカード26等に記録されている。なお、CPU31によって実行されるプログラムは、ゲーム装置1内のメモリに予め記録されていてもよいし、メモリカード26から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。また、CPU31は、マルチプロセス処理が可能である。具体的には、ゲーム処理を実行しつつ、バックグラウンドで、後述するゲーム交換処理を実行することができる。
【0069】
CPU31には、メインメモリ32、メモリ制御回路33、およびプリセットデータ用メモリ35が接続される。また、メモリ制御回路33には、保存用データメモリ34が接続される。
【0070】
メインメモリ32は、CPU31のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ32は、上記情報処理に用いられる各種データを記憶したり、外部(メモリカード26や他の機器等)から取得されるプログラムを記憶したりする。本実施の形態では、メインメモリ32として、たとえばPSRAM(Pseudo-SRAM
)を用いる。
【0071】
保存用データメモリ34については、さらに、後述するが、CPU31によって実行されるプログラムやカメラ23によって撮影された画像のデータ等を記憶するための記憶手段である。
【0072】
保存用データメモリ34は、不揮発性の記憶媒体によって構成されており、たとえば本実施例ではNAND型フラッシュメモリで構成される。メモリ制御回路33は、CPU3
1の指示に従って、保存用データメモリ34に対するデータの読み出しおよび書き込みを制御する回路である。
【0073】
プリセットデータ用メモリ35は、ゲーム装置1において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ35としては、SPI(Serial Peripheral Interface)バスによってCPU3
1と接続されるフラッシュメモリを用いることができる。
【0074】
メモリカードI/F36は、CPU31に接続される。メモリカードI/F36は、コネクタに装着されたメモリカード26に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行なう。
【0075】
本実施の形態に従う無線通信モジュール38は、後述するが同種のゲーム装置等との間で無線通信を行なう機能を有する。
【0076】
さらに、CPU31には、RTC40および電源回路41が接続される。RTC40は、時間をカウントしてCPU31に出力する。たとえば、CPU31は、RTC40によって計時された時間に基づいて、現在時刻(日付)等を計算することもできる。電源回路41は、ゲーム装置1が有する電源から供給される電力を制御し、ゲーム装置1の各部品に電力を供給する。
【0077】
さらに、ゲーム装置1は、マイク43およびアンプ44を備えている。マイク43およびアンプ44は、それぞれI/F回路42に接続される。マイク43は、ゲーム装置1に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をI/F回路42に出力する。アンプ44は、I/F回路42からの音声信号を増幅してスピーカ45から出力させる。I/F回路42は、CPU31に接続される。
【0078】
I/F回路42は、マイク43からの音声信号の入力を受ける音声入力制御回路54と、アンプ44に対する音声信号の出力の制御を行なう音声出力制御回路56とを含む。
【0079】
音声入力制御回路54は、マイク43からの音声信号の入力レベルを検知して、音声信号に対するA/D変換を行なったり、音声信号を所定の形式の音声データに変換したりする。
【0080】
音声出力制御回路56は、出力信号がステレオ設定あるいはモノラル設定に従って、アンプ44に出力する音声信号を調整する。
【0081】
操作ボタン14は、図示しないが複数の操作ボタンで構成され、CPU31に接続される。操作ボタン14からCPU31へは、各操作ボタンに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
【0082】
カメラ23は、CPU31に接続される。カメラ23は、CPU31の指示に応じて画像を撮影し、撮影した画像データをCPU31に出力する。たとえば、CPU31は、カメラ23に対して撮影指示を行ない、撮影指示を受けたカメラが画像を撮影して画像データをCPU31に送る。
【0083】
また、LCD12は、CPU31に接続される。LCD12は、CPU31の指示に従って図示しないが操作画面等を表示する。
【0084】
メモリカード26は、図示しないコネクタと着脱可能であり、コネクタと接続された場合にはメモリカードI/F36と接続される。メモリカード26は、ROM27と、バックアップRAM28とが内蔵され、ROM27には、ゲーム装置1で実行するためのアプリケーション等が予め設定(記憶)されている。なお、ROM27には、ROM27に記憶されるアプリケーションを識別するアプリケーション識別情報(ID)が記憶されている。また、バックアップRAM28には、アプリケーションの途中のデータや結果データが記憶(セーブ)される。また、バックアップRAM28は、後述するが、当該アプリケーションを実行した場合に他のゲーム装置に提供するデータ(交換データ)をゲーム装置に保存した場合には交換フラグデータを記憶する。
【0085】
図3を用いて、本実施の形態に従う無線通信モジュール38の構成について説明する。
図3を参照して、本発明の実施の形態に従う無線通信モジュール38は、CPU60と、RF(Radio Frequency)−IC62と、メモリ制御部64と、モジュールI/F76
と、各部と接続されている内部バス74とを含む。
【0086】
メモリ制御部64は、RAM66と、ROM72とを含む。後述するが、RAM66には、アプリケーションID保存領域68と、MACアドレスリスト保存領域70とが設けられている。
【0087】
CPU60は、無線通信に関するプログラムを実行するための演算処理手段である。
CPU60は、メモリ制御部64に格納されているROM72から読出されたプログラムによって無線通信の所定の機能を実現することが可能である。具体的には、後述する携帯端末間通信を実行するためのアプリケーションおよび携帯固定端末間通信を実行するためのアプリケーションが格納されている。
【0088】
CPU60が当該携帯端末間処理を実行するためのアプリケーションを実行することにより、無線通信モジュール38において交換データを交換する通信相手を探索する処理(以下、交換相手探索処理とも称する)が実行される。そして、無線通信モジュール38における交換相手探索処理により交換データを交換する通信相手が見つかった場合には、後述するがゲーム装置1の本体部であるCPU31に通知されて、交換データの授受処理が実行される。具体的には、本体部であるCPU31の指示に従って通信相手との接続を確立する処理が実行されて、接続が確立された後、交換データの授受処理が実行される。
【0089】
同様に、CPU60が携帯固定端末間通信を実行するためのアプリケーションを実行することにより、無線通信モジュール38において、配信データを提供する通信相手を探索する処理(以下、配信相手探索処理とも称する)が実行される。そして、無線通信モジュール38における配信相手探索処理により配信データを提供する通信相手が見つかった場合には、後述するがゲーム装置1の本体部であるCPU31に通知されて、配信データを取得する処理が実行される。具体的には、本体部であるCPU31の指示に従って通信相手である固定端末機器との接続を確立する処理が実行されて、接続が確立された後、配信データを取得する処理が実行される。
【0090】
RF−IC62は、例えば、他のゲーム装置に対してCPU60の指示により送信されるデータを変調して、アンテナ61から電波を送信する。ただし、電波強度は、非常に微弱で、電波法においてユーザが無免許で利用できる程度の小さい値に設定されている。また、無線通信モジュール38は、例えば、他のゲーム装置から送信された電波をアンテナ61で受信して、RF−IC62において受信データが復調される。復調された受信データは、メモリ制御部64のRAM66に格納される。
【0091】
モジュールI/F76は、無線通信モジュール38とゲーム装置1のCPU31等の本
体部とのインタフェースであり、モジュールI/F76を介して無線通信モジュールのアンテナ61で受信し、RAM66に格納された受信データがゲーム装置1の本体部であるCPU31等に出力される。また、CPU31からの指示に従って、保存用データメモリ34に格納されている後述する提供データ(以下、交換データとも称する)がモジュールI/F76を介して無線通信モジュール38に入力され、上述したように送信データとしてアンテナ61から例えば外部の他のゲーム装置に出力することが可能である。
【0092】
なお、外部の他のゲーム装置に送信するデータとしては、モジュールI/F76を介してゲーム装置1の本体部であるCPU31の指示により入力されたデータに限られず、無線通信モジュール38内でCPU60の指示によりメモリ制御部64に設けられたRAM66等に格納されているデータに基づいて生成した交換判定データ(図13の無線フレーム)を送信データとして出力する。後述するが当該交換判定データ(図13の無線フレーム)は、子機側からの接続要求信号として出力される。
【0093】
図4を用いて、本実施の形態に従う保存用データメモリ34のメモリマップについて説明する。
【0094】
図4を参照して、保存用データメモリ34は、交換データ保存領域80と、受信データ保存領域82と、内蔵アプリ保存領域84と、システムプログラム保存領域86と、MACアドレスリスト保存領域88とを含む。
【0095】
交換データ保存領域80は、他のゲーム装置との間でのデータの交換を実行する際に用いられる交換データが保存される領域である。
【0096】
この交換データ保存領域80には、複数の記憶領域である複数のスロットSL1〜SL10が設けられている。この各スロットSLは、アプリケーションで利用可能なデータを他のゲーム装置に提供する交換データとして格納する領域であり、実際にアプリケーションで利用されるデータは、当該アプリケーションを識別するアプリケーション識別データ(ID)に対応付けられた状態で格納される。
【0097】
また、受信データ保存領域82は、他のゲーム装置との間でのデータの交換の際に、他のゲーム装置から送信された交換データを保存する領域である。
【0098】
また、内蔵アプリ保存領域84は、予めゲーム装置1で格納されている、当該ゲーム装置1の種々の機能を実現するために必要な複数のアプリケーション等が保存されている領域である。なお、内蔵アプリ保存領域84には、アプリケーション本体用の保存領域と、各アプリケーション毎に設けられた、当該アプリケーションが占有的に使用するセーブデータを保存するための保存領域(アプリケーション用記憶領域)とが設けられる。
【0099】
したがって、内蔵アプリ保存領域84に複数のアプリケーションが保存されている場合には、それぞれのアプリケーションに対応して設けられた複数の保存領域が設けられる。
【0100】
また、システムプログラム保存領域86は、情報処理装置の本体機能を実現するための本体機能プログラム、例えば、起動するアプリケーションを選択するためのメニュープログラムや、交換データを有する通信相手と互いに交換データの授受を実行するデータ授受処理および配信データを通信相手から取得するデータ取得処理を実行するためのプログラム等が保存されている領域である。
【0101】
また、MACアドレスリスト保存領域88は、無線通信モジュール38において、以前に通信した相手のゲーム装置を識別することが可能なMACアドレスを保存する領域であ
る。当該MACアドレスリスト保存領域88に保存されたMACアドレスは、後述するデータ通信処理を実行する際の通信初期設定処理において用いられる。
【0102】
なお、MACアドレスリスト保存領域88のデータは、ユーザからの所定の操作指示に従ってCPU31の指示により消去することが可能である。また、一定期間後に消去することが可能であるものとする。なお、MACアドレスリスト保存領域88のデータを消去する際には、RAM66のMACアドレスリスト保存領域70に格納されているMACアドレスリストについても、本体部であるCPU31からの指示により消去されるものとする。
【0103】
なお、本例においては、CPU31の指示により、MACアドレスリスト保存領域70に格納されているMACアドレスリストを消去する場合について説明するが、当該CPU31の指示によらず、無線通信モジュール38内で一定期間経過後、CPU60の指示によりRAM66のMACアドレスリスト保存領域70に格納されているMACアドレスリストをリセットして消去するようにすることも可能である。
【0104】
<交換データ保存領域80への格納>
図5を用いて交換データ保存領域80への交換データの格納処理について説明する。
【0105】
本例においては、交換データは、ユーザがゲーム装置1においてアプリケーションを実行中に、当該アプリケーションで利用可能なデータを交換データとして外部のゲーム装置に対して提供する目的で操作することにより、指定した交換データが交換データ保存領域80に格納される。一例として、メモリカード26のROMに格納されたアプリケーションを実行する場合について説明する。
【0106】
ゲーム装置1の主電源がオンし、ユーザが所定の操作を実行することにより、ゲーム装置1のCPU31は、メモリカード26に格納されたデータをロードする(ステップST0)。すなわち、メモリカード26のROM27に格納されているアプリケーションのデータの一部およびバックアップRAM28に格納されている例えば次回のアプリケーションに利用可能な途中データや結果データであるセーブデータ等をメインメモリ32に展開する。なお、メモリカード26に格納されたデータをロードする処理までが、上述したシステムプログラム保存領域86に保存されている本体機能プログラムにより実行される機能であり、それ以降の処理、後述する交換データを格納する機能あるいは追加および消去する機能等についてはメモリカード26のROM27に格納されているアプリケーションにより実行される機能である。
【0107】
そして、次に、メインメモリ32に展開されたデータに基づいてアプリケーションが実行される(ステップST1)。
【0108】
そして、CPU31は、当該アプリケーションの実行により、まず、バックアップRAM28に格納されていたデータに交換データを交換データ保存領域80に格納したことを示す交換フラグデータが含まれていたかどうかを判断する(ステップST2)。
【0109】
ステップST2において、CPU31は、バックアップRAM28に格納されていたデータに交換データを交換データ保存領域80に格納したことを示す交換フラグデータが含まれていたと判断した場合(ステップST1においてYES)には、交換データの追加処理および消去処理を実行する(ステップST22)。当該処理については後述する。そして、当該追加処理および消去処理を実行した後、ステップST4に進む。
【0110】
ステップST2において、CPU31は、バックアップRAM28に格納されていたデ
ータに交換データを交換データ保存領域80に格納したことを示す交換フラグデータが含まれていないと判断した場合(ステップST2においてNO)には、次に、ステップST4に進む。
【0111】
そして、CPU31は、アプリケーションの実行により、交換データの登録イベント(以下、交換データ登録イベントとも称する)が発生したかどうかを判断する(ステップST4)。つまりアプリケーションの実行中に実行しているアプリケーションで利用可能なデータを交換データとして、交換データ保存領域80に格納するかどうかを促すシーンに移行されたかどうかを判断する。
【0112】
ここで、交換データとは、アプリケーションプログラムにおいて利用されるデータであり、より好ましくは、アプリケーションプログラムを実行することによりユーザが獲得または作成したデータである。
【0113】
図示は省略するが、たとえば、交換データ登録イベントとしては、アプリケーションの実行により、バックアップRAMに記憶されているゲーム内で獲得または作成したデータ等、当該アプリケーションで利用可能なデータの一覧をLCD12に表示し、その中からユーザが他人にあげても良いデータを選択するような場合が挙げられる。
【0114】
交換データの格納については、以下に説明するが、例えば、ユーザがゲーム内で手に入れたアイテムや、ゲームを進行することによって成長させたキャラクタのデータを交換データとしてもよい。また、アイテムにはユーザのメッセージを付加してもよい。より具体的には、「手紙」のアイテムにユーザがメッセージを書いて、当該メッセージを交換データとして格納するようにしてもよい。このように、ゲームの実行状況に応じたアイテムやキャラクタを交換データとすることで、データにユーザごとの個性が生じることになり、交換した場合の興趣が高まる。
【0115】
さらに、交換データ登録イベントを、ゲーム上のイベントとして表現しても良い。例えば、ユーザが、ゲーム内で所定の場所にアイテムやキャラクタを置いたり預けたりする操作をした場合に、当該アイテムやキャラクタのデータを交換データとして交換データ保存領域80に格納する処理を実行しても良い。また、ゲーム内で「手紙」のアイテムをボトルに入れて海に流すような演出をして、海に流した「手紙」のアイテムのデータを交換データとして交換データ保存領域80に格納する処理を実行しても良い。
【0116】
CPU31は、交換イベントが発生したと判断された場合(ステップST4においてYES)には、交換データの指定入力があったかどうかを判断する(ステップST6)。
【0117】
一方、CPU31は、交換イベントが発生していないと判断した場合(ステップST4においてNO)には、再び、ステップST2に戻り通常のアプリケーションを実行する。例えば、ユーザの操作に基づいて仮想空間内でオブジェクトを動作させる等のゲーム処理を実行する。
【0118】
次に、ステップST6において、CPU31は、交換の指定入力があったと判断した場合(ステップST6においてYES)には、交換データ保存領域80を確認する(ステップST8)。
【0119】
一方、ステップST6において、CPU31は、交換の指定入力が無いと判断した場合(ステップST6においてNO)には、ユーザが交換を希望しないため、再び、ステップST2に戻り通常のアプリケーションを実行する。
【0120】
次に、CPU31は、交換データ保存領域80を確認した後、交換データ保存領域80に空きスロットがあるどうかを判断する(ステップST10)。
【0121】
ステップST10において、CPU31は、交換データ保存領域80に空きスロットがあると判断した場合(ステップST10においてYES)には、空きスロットに交換データを格納する(ステップST12)。
【0122】
一方、ステップST10において、CPU31は、空きスロットがないと判断した場合(ステップST10においてNO)には、スロットのデータを削除したかどうかを判断する(ステップST11)。図示は省略するが、たとえば空きスロットが無い旨をユーザに通知し、ユーザにいずれかのスロットのデータを削除するように指定させることが可能である。そして、指定があった場合には、当該スロットのデータが削除されるものとする。
【0123】
ステップST11において、CPU31は、スロットのデータが削除されたと判断した場合には、再びステップST10に戻る。そして、空きスロットに交換データを格納する。
【0124】
一方、ステップST11において、CPU31は、スロットのデータが削除されていないと判断した場合には、再び、ステップST2に戻り、通常のアプリケーションを実行する。
【0125】
そして、次に、CPU31は、ユーザからアプリケーションの終了指示が有るかどうかを判断する(ステップST14)。
【0126】
ステップST14において、ユーザからアプリケーションの終了指示が有ると判断した場合には、次のステップST16に進む。一方、ステップST14において、ユーザからアプリケーションの終了指示が有ると判断した場合(ステップST14においてNO)には、再び、ステップST2に戻り、通常のアプリケーションを実行する。
【0127】
次に、ステップST16において、交換データが交換データ保存領域80に格納されたかどうかを判断する。そして、CPU31は、交換データ保存領域80に交換データが格納されたと判断した場合(ステップST16においてYES)には、バックアップRAM28に交換データを交換データ保存領域80に格納したことを示す交換フラグデータをセーブデータ(例えば、獲得したアイテム、キャラクタ、文章や絵などの作成データなどアプリケーションで利用するデータ)とともに保存する(ステップST18)。そして、処理を終了する(エンド)。一方、CPU31は、交換データ保存領域80に交換データが格納されていないと判断した場合(ステップST16においてNO)には、バックアップRAM28にセーブデータのみを保存する(ステップST20)。そして、処理を終了する(エンド)。
【0128】
当該処理により、バックアップRAM28に交換フラグデータを保存することにより、上述したようにステップST2における判断処理において、交換フラグデータが含まれている場合には、交換データの追加処理および消去処理を実行することが可能である。
【0129】
なお、本例においては、一例として、メモリカード26のROMに格納されたアプリケーションを実行した場合における交換データ保存領域80への交換データの格納処理について説明したが、特にメモリカード26に格納されたアプリケーションに限られず、内蔵アプリ保存領域84に格納されているアプリケーションを実行した場合における交換データの格納処理についても、内蔵アプリ保存領域84に各アプリケーション毎に設けられた、当該アプリケーションのセーブデータを保存するための保存領域を上記したバックアッ
プRAMと対応付けて用いることにより実現可能である。
【0130】
また、本例においては、交換データを追加および消去する機能等についてはメモリカード26のROM27に格納されているアプリケーションにより実行される機能として説明したが、システムプログラム保存領域86に保存されている本体機能プログラムにより実行される機能としても良い。具体的には、メモリカード26に格納されたデータをロードした後、展開されているデータ中に、交換フラグデータが有るか否かを判断して、交換データを追加および消去する処理を実行した後、アプリケーションを実行するようにすれば良い。
【0131】
図6を用いて、アプリケーションにより交換データ保存領域80に交換データを格納する場合について説明する。
【0132】
図6(A)においては、たとえば、上述したメモリカードに記憶されたアプリケーション名Aを実行することによって、交換データ保存領域80のスロットSL1にアプリケーション識別情報(ID)であるアプリケーション名Aに対応して交換データが格納されている場合が示されている。なお、本例においては、説明を簡易にするためにアプリケーション名とアプリケーション識別情報とを同一のものとして説明するが、特に同じである必要は無く異なるものとすることも可能である。
【0133】
また、1つのアプリケーションに対して1つの交換データが格納される必要は無く、図6(B)においては、上述したメモリカードに記憶されたアプリケーションCを実行することによって、交換データ保存領域80の2つのスロットSL3,SL4にアプリケーション識別情報(ID)であるアプリケーション名Cに対応付けられた交換データがそれぞれ格納されている場合が示されている。なお、後述するが、アプリケーション識別情報(ID)としてアプリケーション名Cのみではなく、付属情報を追加したデータをスロットSL3,SL4に登録することによって、より、高度な交換条件として用いることができる(図16(C)を参照)。なお、ここで表記されている数字は、1つ目のデータ、2つ目のデータを指し示すものとし、同一のアプリケーション名をアプリケーション識別情報とすることも可能である。
【0134】
また、特にメモリカードのアプリケーションに限られず、図6(C)に示されるように、ゲーム装置1の内蔵アプリ保存領域84に格納されている内蔵アプリDを実行することによって、交換データ保存領域80のスロットSL5にアプリケーション識別情報(ID)であるアプリケーション名Dに対応付けられた交換データが格納されている場合が示されている。
【0135】
そして、本例における交換データ保存領域80の各スロットに格納された交換データは、所定の通信条件が満たされた場合に他のゲーム装置に送信される。
【0136】
<無線通信モジュール38によるデータ通信処理>
図7を用いて、本発明の実施の形態に従う無線通信モジュール38で実行するデータ通信処理のフローについて説明する。本例におけるデータ通信処理は、本体側のCPU31で実行されるアプリケーションの有無に関わらず、実行することが可能である。すなわち、無線通信モジュール38は、本体側のCPU31と並列的に動作することが可能である。
【0137】
なお、本例においては、一例として、本体側のCPU31がアプリケーションを実行している場合において、本体側のCPU31が無線通信モジュール38を利用したアプリケーションを実行する場合には、当該データ通信を実行せず、それ以外の場合に、当該デー
タ通信を実行する場合について説明するが、特にこれに限られず、無線通信モジュール38を利用したアプリケーションを実行する場合において当該データ通信を実行するようにすることも可能である。
【0138】
なお、無線通信モジュール38を利用したアプリケーションを実行する場合とは、たとえば、他のゲーム装置と無線通信モジュール38を利用して通信対戦ゲーム等を実行するような場合であり、それ以外の場合とは、本体側のCPU31が無線通信モジュール38を利用しないアプリケーションを実行する場合や、アプリケーションを実行しない場合、例えば、本体側のCPU31がスリープ状態等の省電力状態である場合等が挙げられる。
【0139】
図7を参照して、まず、本発明の実施の形態に従うデータ通信を実行するために必要な通信初期設定処理を実行する(ステップS0)。通信初期設定処理(図8)については後述するが、当該処理は、上述したシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現されるものである。以降の後述する携帯端末間通信(図10)および携帯固定端末間通信(図30)については、無線通信モジュール38のCPU60がROM72に格納されているアプリケーションを実行することにより実現されるものである。
【0140】
なお、本フローについては、例えば、電源投入時、無線通信が有効に設定された場合に自動的に開始される。
【0141】
次に、無線通信モジュール38のCPU60は、CPU31からデータ通信開始指示があったかどうかを判断する(ステップS2)。たとえば、CPU31は、無線通信モジュール38を利用したアプリケーションが実行されていないと判断した場合に無線モジュール38にデータ通信開始指示を出力する。具体的には、一例として電源投入時に、当該データ通信開始指示を出力する。CPU60は、CPU31からのデータ通信開始指示が有ったと判断した場合には、携帯端末間通信を実行する(ステップS4)。そして、再び、携帯端末間通信を実行する(ステップS6)。そして、次に、携帯固定端末間通信を実行する(ステップS8)。そして、再び、ステップS4に戻って携帯端末間通信を実行する。
【0142】
したがって、無線通信モジュール38は、本体側のCPU31のアプリケーションの実行の有無に関わらず、例えば、アプリケーションを実行していないとき、さらには、省電力状態にあるときでも、上記の携帯端末間通信および携帯固定端末間通信を実行し続ける。
【0143】
なお、本体側のCPU31は、無線通信モジュール38を利用するアプリケーションを実行する場合には、無線通信モジュール38に対して、当該データ通信の中止を指示し、当該データ通信を終了させて、当該アプリケーションに基づく別のデータ通信を実行することも可能である。
【0144】
そして、CPU31は、当該別のデータ通信が終了した場合には、上記で説明した通信初期設定後、データ通信開始指示を出力し、再び携帯端末間通信および携帯固定端末間通信であるデータ通信を再開することが可能である。
【0145】
図8を用いて、本発明の実施の形態に従う通信初期設定の処理について説明する。なお、当該通信初期設定処理は、上述したようにシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現され、無線通信モジュール38側に対する処理についても本体側の機能としてCPU31からの指示により実行、処理される。
【0146】
図8を参照して、まず、本体側のCPU31は、保存用データメモリ34の交換データ保存領域80を確認する(ステップS10)。そして、次に、CPU31は、保存用データメモリ34の交換データ保存領域80に交換データがあるかどうかを判断する(ステップS12)。
【0147】
そして、ステップS12において、CPU31は、交換データ保存領域80のスロットに交換データがあると判断した場合(ステップS12においてYES)には、スロットに格納されている各交換データと対応付けられている各アプリケーション識別情報(ID)すなわちアプリケーション識別情報(ID)のリストおよび保存用データメモリ34のMACアドレスリスト保存領域88に格納されているMACアドレスリストを無線通信モジュール38に出力する。
【0148】
無線通信モジュール側において、無線通信モジュール38のCPU60は、本体側のCPU31から出力されたアプリケーション識別情報(ID)のリストおよびMACアドレスリストをそれぞれRAM66のアプリケーションID保存領域68およびMACアドレスリスト保存領域70にそれぞれ格納する(ステップS16)。そして、処理を終了する(リターン)。
【0149】
当該処理によりデータ通信の準備が完了する。すなわち、無線通信モジュール38のCPU60は、データ通信処理のための交換判定データを生成して他のゲーム装置に送信することが可能となる。
【0150】
具体的には、CPU60は、アプリケーションID保存領域68に格納されている交換データ保存領域80のスロットに格納されている実際の交換データと対応付けられているアプリケーション識別情報(ID)を含めた交換判定データを他のゲーム装置に送信することが可能となる。なお、交換データ保存領域80のスロットに複数の交換データが格納されている場合には、それぞれに対応付けられているアプリケーション識別情報(ID)が交換判定データに含められる。
【0151】
したがって、交換判定データを受信した他のゲーム装置は、その内容であるアプリケーション識別情報(ID)を確認することにより、他のゲーム装置自身が有している交換データに対応付けられているアプリケーション識別情報(ID)と比較して、一致するならば、交換データの交換が可能であり、不一致であるならば交換データの交換が不可能であると判断することが可能となる。
【0152】
また、MACアドレスリスト保存領域70に本体側のCPU31から出力されたMACアドレスリストを格納することにより、後述するMACアドレスフィルタリング処理を実現することが可能となる。
【0153】
一方、ステップS12において、CPU31は、交換データ保存領域80のスロットに交換データがないと判断した場合(ステップS12においてNO)には、上記の処理を実行することなく処理を終了する(リターン)。この場合には、スロットに交換データが無いため後述する携帯端末間通信に従う他のゲーム装置との間での交換データの授受処理は実行されないが、後述する携帯固定端末間通信に従う配信データを受信することが可能である。
【0154】
なお、本例においては、データ通信の準備として、通信処理開始前に、通信初期設定処理として、アプリケーション識別情報(ID)のリストおよびMACアドレスリストをそれぞれRAM66のアプリケーションID保存領域68およびMACアドレスリスト保存
領域70にそれぞれ格納する場合について説明しているがそのタイミングとして例えば、アプリケーションプログラムが交換データ保存領域80に交換データを格納したことに応答して当該通信初期設定処理を実行するようにすることも可能である。
【0155】
図9を用いて、通信初期設定処理によりRAM66に格納されたデータについて説明する。
【0156】
図9(A)を参照して、ここでは、RAM66のアプリケーションID保存領域68にアプリケーション識別情報(ID)A,B,C1,C2,Dがそれぞれ格納されている場合が示されている。
【0157】
なお、図9(A)は、MACアドレスリストには何も格納されていない状態である。
図9(B)においては、図9(A)で説明したアプリケーション識別情報(ID)がアプリケーションID保存領域68に格納されるとともに、MACアドレスリストとして、MACアドレスAD1,AD2,AD3がMACアドレスリスト保存領域70に格納されている場合が示されている。当該MACアドレスリストのデータは、後述する携帯端末間通信におけるMACアドレスの比較によるMACアドレスフィルタリング処理の際に用いられる。
【0158】
図10を用いて、本発明の実施の形態に従う携帯端末間通信について説明する。当該処理は、無線通信モジュール38において交換データを交換する通信相手を探索する交換相手探索処理であり、CPU60が、ROM72に格納されている携帯端末間処理を実行するためのアプリケーションを実行することにより実現される。
【0159】
図10を参照して、まず、CPU60は、所定期間が経過したかどうかを判断する(ステップS20)。そして、ステップS20において、CPU60は、所定期間が経過していないと判断した場合(ステップS20においてNO)には、通信相手(他のゲーム装置)を探索する通信相手サーチ処理を実行する(ステップS22)。通信相手サーチ処理については後述する。
【0160】
そして、次に、CPU60は、通信相手サーチ処理により通信相手が発見されたかどうかを判断する(ステップS24)。
【0161】
ステップS24において、CPU60は、通信相手が発見された場合(ステップS24においてYES)には、MACアドレスを比較する(ステップS26)。具体的には、後述するが受信したデータに含まれるMACアドレスと、上述したMACアドレスリスト保存領域70に格納されているMACアドレスとを比較する。上述したようにMACアドレスは、通信対象を識別する識別情報であり、各ゲーム装置にそれぞれ固有のMACアドレスが割り当てられている。
【0162】
そして、次に、CPU60は、受信したデータに含まれる他のゲーム装置のMACアドレスが、MACアドレスリストに格納されているMACアドレスと一致するかどうかを判断する(ステップS28)。
【0163】
そして、ステップS28において、CPU60は、MACアドレスが一致したと判断した場合(ステップS28においてYES)には、再びステップS20に戻る。すなわち、以降の処理を実行することなく当該MACアドレスに対応する他のゲーム装置との通信を終了する。
【0164】
図11を用いて、本発明の実施の形態に従うMACアドレスを比較する場合の概念図に
ついて説明する。
【0165】
本例においては、ゲーム装置1と、通信相手である他のゲーム装置としてゲーム装置3との通信接続について説明する。
【0166】
図11を参照して、ここでは、ゲーム装置1側において、交換データ保存領域80のスロットSL1〜SL5にそれぞれ交換データが格納されている場合が示されている。
【0167】
そして、無線通信モジュール38のRAM66のアプリケーションID保存領域68には、図9(A)で説明したのと同様にアプリケーション識別情報(ID)A,B,C1,C2,Dがそれぞれ格納されている場合が示されている。
【0168】
なお、MACアドレスリストには何も格納されていない。
次に、ゲーム装置3側について説明する。ゲーム装置3側の対応する同一の構成要素については、「P」の記号をさらに付加している。具体的には、ゲーム装置1の交換データ保存領域80と、ゲーム装置3側の交換データ保存領域80Pとが対応している。
【0169】
また、ゲーム装置1の無線通信モジュール38と、ゲーム装置3側の無線通信モジュール38Pとが対応している。他の場合についても同様である。
【0170】
そして、ゲーム装置3の交換データ保存領域80PのスロットSL1,SL2にそれぞれ交換データが格納されている場合が示されている。
【0171】
ゲーム装置3側においても同様の方式に従って、無線通信モジュール38PのアプリケーションID保存領域68Pにアプリケーション識別情報(ID)B,Eがそれぞれ格納されている場合が示されている。
【0172】
なお、MACアドレスリストには何も格納されていない。当該場合において、ゲーム装置1である自機のMACアドレスはAD0に設定されているものとする。
【0173】
また、ゲーム装置3のMACアドレスはAD1に設定されているものとする。
この場合には、ゲーム装置3のMACアドレスAD1は、ゲーム装置1のMACアドレスリストには登録されていないためMACアドレスは一致しないと判断される。そして、次の処理に進む。
【0174】
なお、本例においては、ゲーム装置1において、MACアドレスリストに登録されているかどうかが判断される場合について説明しているが、ゲーム装置3側においても同様の処理が実行される。
【0175】
図12を用いて、本発明の実施の形態に従うMACアドレスを比較する場合の別の概念図について説明する。
【0176】
図12を参照して、ここでは、図11の構成と比較して、MACアドレスリストに登録されている内容が異なる。具体的には、無線通信モジュール38のMACアドレスリスト保存領域70には、MACアドレスAD1が登録されている場合が示されている。
【0177】
また、同様に、ゲーム装置3側のMACアドレスリスト保存領域70PにMACアドレスAD0が登録されている場合が示されている。
【0178】
この場合には、ゲーム装置3のMACアドレスAD1は、ゲーム装置1のMACアドレ
スリストに登録されておりMACアドレスが一致すると判断される。
【0179】
したがって、当該場合には、以降の処理を実行することなく当該MACアドレスに対応する他のゲーム装置であるゲーム装置3とは通信接続の確立処理を行わない。すなわち、MACアドレスリストに登録されているゲーム装置との間では実質的な通信は実行されない。
【0180】
すなわち、MACアドレスが一致するような、以前に通信処理が実行された装置については、交換データの授受が実行されたかあるいは交換データが無いため通信が終了したか否かのいずれかであるため再度、通信処理する必要がない。
【0181】
したがって、本実施の形態に従うゲーム装置においては、通信範囲のゲーム装置を自動的に繰り返して探知し、見つかったゲーム装置を通信候補に設定する。この場合、同じゲーム装置を何度も探知して見つけてしまう可能性があるが、上述のようなMACアドレスフィルタリング処理により、同じゲーム装置との間で何度も通信することを防止することができ、効率的かつ効果的なデータ通信を実行することが可能である。
【0182】
なお、上述したようにRAM66のMACアドレスリスト保存領域70に格納されているMACアドレスリストは一定期間経過後リセットして消去することも可能であり、消去された場合には、再度、以前に通信処理が実行された装置ともデータ通信を実行することが可能である。すなわち、以前に交換データの授受が実行された装置についても一定期間内に状況が変わり(新たな交換データが設定されているなど)、交換データの授受が可能な状況となっている可能性もあるため再度、交換データの交換が可能か否かを判断して、可能であるならば交換データの授受を実行するようにしても良い。
【0183】
再び図10を参照して、CPU60は、ステップS28において、CPU60は、MACアドレスが一致しないと判断した場合(ステップS28においてNO)には、受信したデータ内容を確認する(ステップS30)。
【0184】
図13を用いて、本発明の実施の形態に従う携帯端末間通信においてゲーム装置において受信される無線フレームの構成について説明する。
【0185】
図13を参照して、まず、先頭部分にヘッダ情報D1が設けられる。この部分にデータ長および上述したMACアドレス等が含まれている。
【0186】
そして、次に、当該データを提供する企業等を識別するためのベンダ情報D3が設けられる。
【0187】
そして、次に、受信データに含まれる通信データの種別を示す通信データ種別情報D4が設けられる。なお、携帯端末間通信の場合には、携帯端末間通信の通信データを示す情報が格納される。
【0188】
そして、以降に設けられたアプリケーション識別情報(ID)の個数を示すアプリケーションID個数情報D5が設けられる。
【0189】
そして、N個のアプリケーション識別情報(ID)6−1〜6−Nが設けられる。
なお、本例においては、N個のアプリケーション識別情報(ID)が設けられている場合が示されているが少なくとも一個以上であれば良い。
【0190】
アプリケーション識別情報(ID)に関して、たとえば、アプリケーション識別情報(
ID)6−1は、アプリケーション識別情報(ID)6−1のヘッダ情報Da1と、データ本体部であるアプリケーションIDデータDc1とに分けられる。なお、ヘッダ情報Da1には、アプリケーションIDデータの長さを示す長さ情報Db1が格納されている。
【0191】
同様に、アプリケーション識別情報(ID)6−2は、アプリケーション識別情報(ID)6−2のヘッダ情報Da2と、データ本体部であるアプリケーションIDデータDc2とに分けられる。なお、ヘッダ情報Da2には、アプリケーションIDデータの長さを示す長さ情報Db2が格納されている。他のアプリケーション識別情報(ID)についても同様であるのでその詳細については繰り返さない。
【0192】
当該アプリケーション識別情報(ID)を無線フレーム中にデータとして含めることにより、当該無線フレームを受信した側において、当該アプリケーション識別情報(ID)に基づいて同じアプリケーションの交換データを有しているかを判断することが可能である。なお、一致するか否かを判断できさえすれば良く、例えば、当該アプリケーション識別情報(ID)そのものを送信するのではなく、ハッシュ関数に基づくハッシュ値を送信して、受信した側においてデータ比較するようにしても良い。他の情報等についても同様にすることも可能である。
【0193】
そして、「その他」情報D7が設けられる。「その他」情報としては、無線通信で用いられる識別コード、SSID(Service Set Identifier)や、電波干渉を避けるために設定される無線チャンネル(周波数)等のデータが格納されている。
【0194】
当該無線フレームは、不特定の相手(ゲーム装置)に対して送信されたものであり、不特定の相手(ゲーム装置)が受信するものである。後述するが親機側のゲーム装置は、宛先を特定せずに当該送信を繰り返し実行する。そして、当該無線フレームを受信したゲーム装置(子機側)は、無線フレームを発信したゲーム装置(親機側)に対して、自己が有するデータに基づく無線フレームを送信し、データの授受に従って不特定のゲーム装置同士が通信処理を実行する。
【0195】
なお、本例における無線フレームについては、一例として、1つのIE(Information Element)データ(ベンダ情報、通信データの種別を示す通信データ種別情報、アプリケ
ーション識別情報等)が含まれた無線フレームについて説明したが、特にこれに限られず、無線通信で用いられるその他のIEデータが複数含められた無線フレームとすることも可能である。その場合には、複数のIEデータに対して無線フレームのヘッダ情報が付加されることになる。
【0196】
再び、図10を参照して、次に、CPU60は、受信したデータに含まれる識別情報が一致しているかどうかを判断する(ステップS32)。具体的には、図13で説明した当該データを提供する企業等を識別するためのベンダ情報が一致するかどうかを判断する。ベンダ情報が一致する場合とは、送信されたデータの発信源が互いに通信接続が可能な同種の装置であることを意味し、異なる場合には、送信されたデータの発信源が互いに通信接続が不可能である全く種類の異なる装置であることを意味する。
【0197】
また、通信データの種別を示す通信データ種別情報が一致するかどうかを判断する。通信データ種別情報が一致する場合とは、携帯端末間通信における通信データであることを意味する。一方、後述するが携帯固定端末間通信における固定端末機器5から出力されるデータに含まれる通信データ種別情報とは異なるため仮に携帯端末間通信において固定端末機器5から出力されたデータを受信した場合であっても通信データ種別情報が異なるため当該データを受信せず同種のゲーム装置とのみ通信することが可能である。ゲーム装置1側の比較の対象であるベンダ情報は予めROM72に登録されているものとする。また
、ゲーム装置1側の比較の対象である通信データ種別情報についても予めROM72に登録されているものとする。CPU60は、携帯端末間通信か携帯固定端末間通信かによって通信データ種別情報を切り替えて、受信したデータに含まれている通信データ種別情報と一致するか否か判断する。
【0198】
すなわち、ステップS32において、CPU60は、識別情報が一致していないと判断した場合(ステップS32においてNO)には、再びステップS20に戻る。したがって、互いに通信接続が不可能である装置とは、以降の処理を実行することなく通信を終了する。
【0199】
次に、ステップS32において、CPU60は、識別情報が一致していると判断した場合(ステップS32においてYES)には、次に、アプリケーション識別情報(ID)を比較する(ステップS33)。
【0200】
そして、CPU60は、アプリケーション識別情報(ID)が一致するかどうかを判断する(ステップS34)。具体的には、自己のアプリケーションID保存領域68に格納されているアプリケーション識別情報(ID)のリストと、受信したデータに含まれるアプリケーション識別情報(ID)のリストを参照して、一致するIDが少なくとも1つ存在するかどうかを判断する。すなわち、ここでは、通信接続により交換可能な交換データを互いに有しているかどうかが判断される。同一のアプリケーション識別情報(ID)であれば、データを交換した場合に同じアプリケーションを実行することにより互いにデータを利用可能である。なお、アプリケーション識別情報(ID)が同じでなくても、データの互換性のあるアプリケーションであることが判定して、そのような関係にあるアプリケーション識別情報(ID)であれば、ステップS34でYesと判断してもよい。
【0201】
図14を用いて、本発明の実施の形態に従うアプリケーション識別情報(ID)を比較する場合の概念図について説明する。
【0202】
図14を参照して、ここでは、図11で説明したゲーム装置1およびゲーム装置3と同様の状況が示されており、無線通信モジュール38のRAM66のアプリケーションID保存領域68には、アプリケーション識別情報(ID)A,B,C1,C2,Dがそれぞれ格納されている場合が示されている。そして、ゲーム装置3側の無線通信モジュール38PのアプリケーションID保存領域68Pにアプリケーション識別情報(ID)B,Eがそれぞれ格納されている場合が示されている。
【0203】
そして、上述したように受信したデータに含まれるアプリケーション識別情報(ID)と、アプリケーションID保存領域68に格納されているアプリケーション識別情報(ID)とが一致するかどうかが判断される。本例においては、アプリケーション識別情報(ID)Bに関して、一致する場合が示されている。
【0204】
再び、図10を参照して、次に、CPU60は、アプリケーション識別情報(ID)が一致すると判断した場合(ステップS34においてYES)には、一致したアプリケーション識別情報(ID)に対応する交換データを有する他のゲーム装置が発見された旨を本体側に通知する(ステップS36)。そして処理を終了する(エンド)。
【0205】
以降、他のゲーム装置である通信相手と接続を確立して、他のゲーム装置との間での一致したアプリケーション識別情報(ID)に対応する交換データの授受を実行するデータ授受処理については、無線通信モジュール38を用いた本体側のCPU31のアプリケーションとして実行されることになる。
【0206】
したがって、本体側に、交換データを有する他のゲーム装置が発見された旨を通知することにより無線通信モジュール38のCPU60のみが独立して実行するデータ通信、すなわち、無線通信モジュール38において交換データを交換する通信相手を探索する交換相手探索処理は終了する。
【0207】
一方、ステップS34において、CPU60は、アプリケーションIDが一致しないと判断した場合(ステップS34においてNO)には、ステップS20に戻る。
【0208】
当該処理により、本例においては、無線通信モジュール38における配信相手探索処理により交換可能な通信相手が見つかった場合にのみ、本体部であるCPU31に通知されて、通信相手との接続が確立されて、交換データの授受が実行される。したがって、例えば、本体部であるCPU31がスリープ状態である場合に、無線通信モジュール38における配信相手探索処理により通信相手が見つかった場合であっても交換が可能でなければ本体部であるCPU31に通知されて通信接続が確立されることはないため、ゲーム装置1全体における省電力を図ることが可能である。
【0209】
ここで、上記で説明したアプリケーション識別情報(ID)の比較について説明する。
図15を用いて、本発明の実施の形態に従うアプリケーション識別情報(ID)の比較について説明する。
【0210】
図15に示されるようにゲーム装置1である自機のアプリケーション識別情報(ID)と、ゲーム装置3からの受信データに含まれているであるアプリケーション識別情報(ID)との比較において、同じ長さのアプリケーションIDデータを比較する。
【0211】
具体的には、アプリケーション識別情報(ID)に含まれている上述したアプリケーションIDデータの長さを示す長さ情報を用いて当該長さ情報が一致するアプリケーションIDとのみデータの比較を実行する。
【0212】
すなわち、データの長さが同じであるため長さが異なるアプリケーションIDデータとの比較を実行する必要が無く高速にアプリケーション識別情報(ID)の一致を判断することが可能である。
【0213】
図16を用いて、本発明の実施の形態に従うアプリケーション識別情報(ID)のさらに別の比較について説明する。
【0214】
図16(A)を参照して、ここでは、アプリケーション識別情報(ID)6−1に関して、アプリケーション識別情報(ID)6−1のヘッダ情報Da1をヘッダ情報Da1#に変更した場合が示されている。具体的には、ヘッダ情報の中にアプリケーションID種別情報がさらに含まれている点が異なる。その他の点については同様である。
【0215】
図16(B)を参照して、ここでは、アプリケーションID種別情報に格納される値と、対応する比較方式とを説明するテーブルが示されている。
【0216】
具体的には、アプリケーションID種別情報が「0」の場合には、同じ長さのアプリケーションIDデータの全体を比較するものとする。
【0217】
ここで、アプリケーションID種別情報が「1」の場合には、同じ長さのアプリケーションIDデータに対してその一部のデータのみ(例えば、予め定められたビット数)を比
較するものとする。
【0218】
また、アプリケーションID種別情報が「2」の場合には、同じ長さのアプリケーションIDデータに対してアプリケーションID識別情報が「0」の場合とは異なる所定の方式によるビット比較を実行するものとする。
【0219】
また、アプリケーションID種別情報が「0」の場合は、図15で説明したのと同様の方式である。一方、アプリケーションID種別情報が「1」の場合には、同じ長さのアプリケーションIDデータに対して所定長ビットを比較して、所定長ビットが一致すればアプリケーションIDデータが一致したと判断するものである。長さが同一で所定長ビットのデータも一致していれば同じアプリケーションIDデータである可能性が高いためより高速にアプリケーション識別情報(ID)の一致を判断することが可能である。
【0220】
図16(C)は、アプリケーションID種別情報が「2」の場合におけるビット比較を説明する図である。
【0221】
図16(C)を参照して、この場合には、アプリケーションIDデータに、アプリケーション名等のアプリケーションを特定する情報(アプリケーション名情報)だけでなく、付属情報が含まれている場合が示されている。
【0222】
そして、付属情報として、自機のアプリケーションIDデータの少なくとも一部を用いて自分が欲しいキャラクタ情報と、自分が相手に渡すキャラクタ情報とを格納する。
【0223】
一方、他のゲーム装置側においても、同様に、アプリケーション名情報だけでなく、付属情報として、アプリケーションIDデータの少なくとも一部を用いて自分が欲しいキャラクタ情報と、自分が相手に渡すキャラクタ情報とを格納する。
【0224】
そして、アプリケーション名情報が一致するか否かを判断するとともに、さらに、自機のアプリケーションIDデータに含まれる自分が欲しいキャラクタ情報と、他のゲーム装置のアプリケーションIDデータに含まれる自分が相手に渡すキャラクタ情報とが一致するか否かを判断し、自機のアプリケーションIDデータに含まれる自分が相手に渡すキャラクタ情報と、他のゲーム装置のアプリケーションIDデータに含まれる自分が欲しいキャラクタ情報とが一致するか否かも判断する。アプリケーション名情報の一致のみならず、さらに、交換条件であるキャラクタ情報が一致する場合にアプリケーション識別情報(ID)の一致と判断する。
【0225】
当該比較方式により、ゲーム装置1である自機と他のゲーム装置3とで実際に交換データを交換する前に、互いに交換する交換データの内容に基づいて互いが希望する交換データであれば交換条件が成立したとして本体側に通知し、いずれか一方でも希望しない場合には交換条件が不成立であるとして通信を終了するためユーザが望む交換データのみを交換することが可能となる。すなわち、高度な交換条件を設定してユーザにとって不本意なデータ授受処理を回避することができ、情報処理装置であるゲーム装置に対する興趣性を増すことができる。
【0226】
図17〜図19を用いて、本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する。
【0227】
本例においては、ゲーム装置1と、通信相手である他のゲーム装置としてゲーム装置3との間で交換データの授受処理を実行する場合について説明する。
【0228】
上記したように、CPU31は、無線通信モジュール38から一致したアプリケーション識別情報(ID)に対応する交換データを有する他のゲーム装置が発見された旨の通知
を受けた場合には、データ授受処理を実行する。
【0229】
図17を参照して、まず、一致したアプリケーション識別情報(ID)に対応する交換データが格納されたスロット(交換データ保存領域80)からデータを読み出してデータをコピーする。例えば、メインメモリ32にコピーデータを作成する。そして、当該コピーデータが無線通信モジュール38を介してゲーム装置3に送信される。
【0230】
ゲーム装置3においても、ゲーム装置1と同様に無線通信モジュール38Pから一致したアプリケーション識別情報(ID)に対応する交換データを有するゲーム装置が発見された旨の通知が本体側に出力される。
【0231】
そして、本体側において、一致したアプリケーション識別情報(ID)に対応する交換データが格納されたスロット(効果データ保存領域80)からデータが読み出されてデータがコピーされる。そして、当該コピーデータが無線通信モジュール38Pを介してゲーム装置1に送信される。
【0232】
図18を参照して、ゲーム装置1の本体側であるCPU31は、無線通信モジュール38を介してゲーム装置3から送信された交換データを取得してアプリケーション識別情報(ID)と共に受信データ保存領域82に格納する。
【0233】
同様に、ゲーム装置3の本体側であるCPUは、無線通信モジュール38Pを介してゲーム装置1から送信された交換データを取得してアプリケーション識別情報(ID)と共に受信データ保存領域82Pに格納する。
【0234】
そして、図19を参照して、ゲーム装置1について交換データ保存領域80の交換データが格納されていたスロットのデータを消去する。本例においては、交換データ保存領域80のスロットSL2に対応する領域のデータを消去する。
【0235】
同様に、ゲーム装置3について交換データ保存領域80Pの交換データが格納されていたスロットのデータを消去する。本例においては、交換データ保存領域80PのスロットSL1に対応する領域のデータを消去する。
【0236】
当該処理により、通信相手に送信した交換データを消去することにより交換データの交換処理が完了する。
【0237】
なお、後述するが交換データの消去は、スロットに格納されていた交換データを利用するアプリケーションを起動することにより当該アプリケーションの実行によって交換データ保存領域のスロットのデータが消去されるものとする。
【0238】
なお、本例においては、交換データを消去する場合について説明するが、消去せずにそのまま維持するようにすることも可能である。その場合には、交換データの交換処理ではなく複製データの授受となる。
【0239】
なお、本例においては、一例として、一致したアプリケーション識別情報(ID)に対応する1つの交換データについて、交換処理を行う場合について説明しているが、特に1つの交換データに限られず、一致したアプリケーション識別情報(ID)に対応する交換データが複数個有る場合においてもそれぞれの交換データについて同様の処理が実行される。
【0240】
図20および図21を用いて、上記で説明したデータ授受処理のフローについて説明す
る。当該データ授受処理は、上述したシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現されるものである。当該データ授受処理は、例えば、本体の起動時に開始して、バックグラウンドで継続的に実行される。
【0241】
図20を参照して、まず、CPU31は、無線通信モジュール38からの通知があるかどうかを判断する(ステップS40)。
【0242】
ステップS40において、CPU31は、無線通信モジュール38からの通知があったと判断した場合(ステップS40においてYES)には、次に、スロットに格納された、一致したアプリケーション識別情報(ID)に対応する交換データを交換データ保存領域80からコピーする(ステップS42)。具体的には、CPU31は、図17で説明したようにメインメモリ32にコピーデータを作成する。
【0243】
そして、次に、CPU31は、無線通信モジュール38からの交換データを有するゲーム装置が発見された旨の通知に含まれている通信相手のMACアドレス等の接続情報に基づいて通信相手との間で通信接続を確立する(ステップS44)。なお、本例においては、ゲーム装置が発見された旨の通知後、通信相手との接続を確立する場合、すなわち、CPU31が実行する場合について説明するが、ゲーム装置が発見された旨の通知前、例えば、無線通信モジュール38において図10のステップS34とステップS36との間で通信相手との接続を確立する処理を実行するようにしても良い。
【0244】
互いに交換データの授受を実行する2つのゲーム装置のうち一方が親機となり他方が子機となるが、本例においては、接続要求信号を出力した子機側のゲーム装置から親機側のゲーム装置に交換データを出力するものとする。なお、本例においては、ゲーム装置1が子機となった場合の処理について説明する。
【0245】
次に、CPU31は、自機が親機か子機かを判断するため子機としての接続フラグがオンであるかどうかを判断する(ステップS46)。接続フラグの設定に関しては、後述する。
【0246】
そして、子機としての接続フラグがオンである場合、すなわち、自機が子機であると判断した場合(ステップS46においてYES)には、通信相手(親機)に交換データを送信する(ステップS50)。
【0247】
一方、子機としての接続フラグがオンでない場合、すなわち、自機が親機であると判断した場合(ステップS46においてNO)には、「AA」に進む。「AA」以降の処理は、親機側の処理であり後述する。
【0248】
そして、次に、CPU31は、通信相手(親機)から交換データを一定期間内に受信したかどうかを判断する(ステップS52)。
【0249】
ステップS52において、CPU31は、通信相手(親機)から交換データを一定期間内に受信したと判断した場合には(ステップS52においてYES)には、受信データ保存領域82に交換データを格納する(ステップS54)。具体的には、図18で説明したように無線通信モジュール38を介して受信した交換データをアプリケーション識別情報(ID)と共に受信データ保存領域82に格納する。
【0250】
そして、次に、CPU31は、保存用データメモリ34に設けられているMACアドレスリスト保存領域88に、通信相手を識別するMACアドレスを保存する(ステップS5
8)。当該MACアドレスリスト保存領域88に保存されたMACアドレスがMACアドレスリストの一部に含められ上述した通信初期設定処理で用いられることになる。
【0251】
そして、通信初期設定処理により、MACアドレスリスト保存領域70にMACアドレスリストが保存されるため、上述したMACアドレスフィルタリング処理により、同じゲーム装置との間で何度も通信することを防止することができ、効率的かつ効果的なデータ通信を実行することが可能である。
【0252】
なお、本例においては、本体側の保存用メモリ34に設けられているMACアドレス保存領域88に保存されたMACアドレスリストと、無線通信モジュール38のMACアドレスリスト保存領域70に格納されているMACアドレスリストは同じであり、MACアドレスリスト保存領域70のみを用いて上記で説明した方式を実現しても良い。
【0253】
一方で、本体側の保存用メモリ34にMACアドレス保存領域88を設けて、当該MACアドレス保存領域88にMACアドレスを保存することにより、無線通信モジュール35にアクセスしてMACアドレス保存領域70のデータを編集するよりも、MACアドレスのデータの追加あるいは削除等の編集を容易かつ高速に実行することが可能である。
【0254】
そして、次に、CPU31は、通信相手(親機)との通信を切断する(ステップS60)。すなわち、上記処理により通信相手との間での交換データのデータ授受処理が終了することになる。
【0255】
そして、次に、CPU31は、交換データ通知処理を実行する(ステップS64)。交換データ通知処理については後述する。そして処理を終了する(エンド)
一方、ステップS52において、CPU31は、通信相手(親機)から交換データを一定期間内に受信していないと判断した場合(ステップS52においてNO)には、ステップS60に進む。この場合には、交換データを適切に取得することができなかったためMACアドレスリスト保存領域70にMACアドレスを保存することなく通信を切断する。したがって、再度、携帯端末間通信に従って上述した処理を実行して、交換データのデータ授受処理を再開することが可能である。
【0256】
次に、親機側の処理について説明する。
なお、本例においては、ゲーム装置3が親機となった場合の処理について説明する。
【0257】
親機側の処理についても、図20で説明したステップS40〜S44までは子機側の処理と同様である。
【0258】
図21を参照して、子機としての接続フラグがオンでない場合、すなわち、親機としての接続フラグがオンであり自機が親機であると判断した場合(ステップS46においてNO)には、CPU31は、通信相手(子機)から交換データを一定期間内に受信したかどうかを判断する(ステップS72)。
【0259】
次に、ステップS72において、通信相手(子機)から一定期間内に交換データを受信したと判断した場合(ステップS72においてYES)には、受信データ保存領域82に交換データをアプリケーション識別情報(ID)と共に格納する(ステップS78)。
【0260】
そして、次に、CPU31は、通信相手(親機)に交換データを送信する(ステップS80)。
【0261】
そして、次に「BB」に進む。すなわち、図20のステップS58に進む。以降の処理
については上述したのと同様である。
【0262】
また、ステップS72において、CPU31は、通信相手(親機)から一定期間内に交換データを受信していないと判断した場合(ステップS72においてNO)には、次に、「CC」に進む。すなわち、図20のステップS60に進む。
【0263】
図22を用いて、本発明の実施の形態に従う交換データ通知処理について説明する。当該交換データ通知処理は、上述したシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現されるものである。
【0264】
図22を参照して、CPU31は、受信データ保存領域82に交換データが格納されたかどうかを判断する(ステップS90)。
【0265】
そして、CPU31は、受信データ保存領域82に交換データが格納されたと判断した場合(ステップS90においてYES)には、効果音を出力する(ステップS92)。具体的には、CPU31は、図2で説明したスピーカ45から予め用意されている効果音を出力するように指示する。そして、次に、CPU31は、交換データの内容を表示する(ステップS94)。具体的には、CPU31は、交換データが有った旨の表示をLCD12に出力するように指示する。そして、処理を終了する(エンド)。
【0266】
当該効果音のスピーカ45からの出力およびLCD12への表示によりユーザは、交換データが格納されたことを認知することが可能である。
【0267】
なお、本例においては、一例としてスピーカ45からの効果音およびLCD12への表示による聴覚および視覚による交換データが授受されたことをユーザに通知する場合について説明したが、いずれか一方でも良い。また、例えば、バイブレーション機能を実行してゲーム装置を振動させて触覚により交換データが授受されたことをユーザに通知するようにしても良い。
【0268】
そして、当該交換データの格納に伴いユーザは、当該交換データを利用可能なアプリケーションを起動するものとする。そして、当該アプリケーションの起動により交換データ保存領域に格納された交換データが消去されるものとする。
【0269】
図23を用いて図5で説明した交換データ追加および消去処理について説明する。
なお、上述したように、交換データ追加および消去処理は、上述したようにメモリカード26のROM27に格納されているアプリケーションプログラムをCPU31が実行することにより実現される。
【0270】
図23を参照して、まず、CPU31は、受信データ保存領域82を確認する(ステップST30)。
【0271】
そして、CPU31は、データをロードした実行中のアプリケーションのアプリケーションIDに対応する交換データが受信データ保存領域82に有るかどうかを判断する(ステップST32)。
【0272】
そして、次に、CPU31は、受信データ保存領域82に当該アプリケーションIDに対応する交換データが有ると判断した場合には、交換データを取得する(ステップST34)。
【0273】
当該処理により取得した交換データを用いたアプリケーションを実行することが可能と
なる。
【0274】
このとき、取得した交換データをセーブデータとして、自己のセーブ領域(バックアップRAM)に転送保存しても良い。また、それに伴い受信データ保存領域82に有る交換データを削除することも可能である。
【0275】
なお、本例においては、交換データが受信データ保存領域82に有るかどうかを判断して、受信データ保存領域82に有る場合には、交換データを取得するとして説明したが、このとき、ユーザに交換データを取得した旨(より好ましくは、取得した交換データの内容)を提示するようにしても良い。さらには、当該交換データを利用するかどうか、ユーザに選択させるようにすることも可能である。
【0276】
そして、次に、CPU31は、スロットに格納されたアプリケーションIDに対応する交換データを削除する(ステップST36)。
【0277】
このとき、自己のセーブ領域(バックアップRAM)にあるセーブデータとして格納されている交換データを削除することも可能である。
【0278】
当該処理により交換データ保存領域80のスロットに格納されたアプリケーションIDに対応する交換データが削除されることにより交換データの交換処理が完了することになる。
【0279】
そして、次に、CPU31は、交換データ保存領域80に格納された交換データを削除したためバックアップRAM28に格納されていた交換フラグデータを消去する(ステップST38)。
【0280】
そして、処理を終了する(リターン)。
そして、図5で説明したようにステップST4に進むことになる。
【0281】
なお、本例においては、アプリケーションを起動した際に、交換フラグデータの有無に基づいて受信データ保存領域82を確認して交換データが有る場合には、当該受信データ保存領域82に記憶された交換データを取得して、交換データ保存領域80に記憶された交換データを削除する方式について説明したが、当該アプリケーションを起動しない場合においても交換データ保存領域80に記憶された交換データを削除するようにしても良い。たとえば、CPU31が受信データ保存領域82に他のゲーム装置からの交換データを格納することに応答して、交換データ保存領域80に記憶された交換データを削除するように指示することにより実現可能である。
【0282】
<通信相手のサーチ処理>
次に、図24〜図27を参照して、前述のステップS22(図10)の通信相手サーチ処理について説明する。
【0283】
この処理では、ゲーム装置1は、親機または子機として他のゲーム装置との間で通信可能な相手を探索するデータ通信を実行する。
【0284】
データ通信を試みる場合には、ゲーム装置1は、通信可能範囲10に存在する他のゲーム装置をサーチすべく、交換判定データを含む接続要求信号を宛先を特定せずに送信する(本実施例においては、交換判定データを含む接続要求信号を定期的に繰り返し送信する方式について説明するが、いわゆるプローブリクエストによる方式等を採用することも可能である)。当該交換判定データは、図13で説明したアプリケーション識別情報等を含
む無線フレームである。
【0285】
本例においては、子機側のゲーム装置からこの交換判定データを含む接続要求信号を送信するものとする。そして、親機側のゲーム装置は、この交換判定データを含む接続要求信号を受信するまで待機し、受信した場合には、これに応答して、子機側のゲーム装置に親機側のゲーム装置の交換判定データを含む接続応答信号を送信する。
【0286】
この接続要求信号および接続応答信号の送受信により、親機および子機としてのゲーム装置間においてデータ通信が可能となる。なお、本例においては、子機側のゲーム装置から接続要求信号を送信し、親機側のゲーム装置は、接続応答信号を送信する場合について説明するが、親機と子機との関係を入れ替えるようにしても良い。
【0287】
このような通信相手サーチ処理では、各ゲーム装置1は、親機として動作して子機からのサーチを受ける処理と、子機として動作して親機をサーチする処理とを交互に繰り返す。
【0288】
具体的には、所定の期間(図24のTcycle)を1周期として、各周期の一部を子機として動作する期間(図24のTsp)とし、残りを親機として動作する期間(Tsc)とする。ここで、子機として動作中のゲーム装置と親機として動作中のゲーム装置との間で接続可能であり、子機として動作中のゲーム装置と子機として動作中のゲーム装置、および、親機として動作中のゲーム装置と親機として動作中のゲーム装置は、接続不可能である。
【0289】
ゆえに、子機として動作する期間と親機として動作する期間を固定的にした場合、偶然にそれらの期間が一致している2つのゲーム装置においてデータ通信が不可能になる。
【0290】
このようなことを防ぐため、1周期における子機として動作する期間と親機として動作する期間の配分または配置をランダムに変えるようにしてある。
【0291】
配分をランダムに変える方式が図24(A)に示すような「通信相手サーチ処理(1)」であり、配置をランダムに変える方式が図24(B)に示すような「通信相手サーチ処理(2)」である。
【0292】
図24(A)を参照して、通信相手サーチ処理(1)は、上述したように、TspおよびTscの配分がランダムに決定される。この処理(1サイクル)の期間を固定値のTcycle(たとえば、4秒)とし、Tscの長さは0からTcycleの間のランダム値に決定され、Tspの長さはTcycleの残りの期間(Tcycle−Tsc)に決まる。また、TscおよびTspが、この順番でTcycleに設定される。Tscの長さは毎回ランダムに決定されるため、Tspの長さもランダムに決定される。これにより、通信可能範囲10に存在する他のゲーム装置との間でデータ通信を実行することができない状態を回避するようにしてある。ただし、Tspが短くなり過ぎると、他のゲーム装置を正確にサーチすることができず、他のゲーム装置との間でデータ通信を実行することができない場合があるため、Tspについての必要最小限の期間を決定しておき、これを確保できない場合には、再度Tscを決定し直すようにしてもよい。
【0293】
なお、この実施例では、Tsc、Tspの順でTcycleを設定するようにしてあるが、逆の順番で設定するようにしてもよい。
【0294】
図24(B)を参照して、通信相手サーチ処理(2)は、上述したように、TspやTscの配置がランダムに決定される。言い換えると、Tspの長さを固定値として、Tc
ycle内におけるTspの開始位置をランダムに設定する。具体的に説明すると、図24(B)に示すように、通信相手サーチ処理(2)では、Tcycle(この実施例では、固定値であり、4秒に設定される。)には、固定値で決定されるTspおよびこのTspを間に挟むようにランダムに決定されるTsc1およびTsc2が設けられる。つまり、Tcycleには、Tsc1、TspおよびTsc2がこの順で設けられる。また、Tsc1の長さは0から(Tcycle−Tsp)の間でランダムに決定され、Tsc2の長さは、Tcycleからランダムに決定されたTsc1およびTspを減算して決定される。
【0295】
なお、本実施例では、Tsc、Tspの順でTcycleが設定されるのでTspの開始位置をランダムにしたが、Tsp、Tscの順でTcycleが設定される場合には、Tscの開始時期をランダムに決定すればよい。
【0296】
通信相手サーチ処理(1)または(2)においては、Tspの期間において、ゲーム装置1は、交換判定データを含む接続要求信号を宛先を特定せずに送信した後、他のゲーム装置3から送信される交換判定データを含む接続応答信号の受信を試みるという処理を繰り返す。また、Tscの期間において、ゲーム装置1は、他のゲーム装置から送信される交換判定データを含む接続要求信号の受信を試みて、受信に成功した場合には、交換判定データを含む接続応答信号を送信するという処理を繰り返す。
【0297】
また、ゲーム装置1は、消費電力の浪費を防止するために、子機として働く期間においては、所定期間(この実施例では、64ms)毎に交換判定データを含む接続要求信号を送信するようにしてある。つまり、間欠的にデータ送信が実行されるのである。
【0298】
以下、通信相手サーチ処理(1)および通信相手サーチ処理(2)について、フロー図を用いて、それぞれ、具体的に説明することにする。
【0299】
図25は通信相手サーチ処理(1)を示すフロー図である。
この図25を参照して、通信相手サーチ処理(1)を開始すると、ステップS151で、Tscを0からTcycleの範囲内でランダムに決定する。図示は省略するが、Tcycleは固定値であるため、Tscが決定されると、Tspも決定される。
【0300】
続くステップS153〜S163が上述のTscにおいて実行される処理であり、親機として動作して子機をサーチする処理がされる。ステップS165〜S177が上述のTspにおいて実行される処理であり、子機として動作して親機をサーチする処理がされる。
【0301】
ステップS153では、子機のサーチを開始する。図示は省略するが、このときタイマ回路をスタートする。次にステップS155で、子機からの交換判定データを含む接続要求信号を受信したかどうかを判断する。
【0302】
子機からの交換判定データを含む接続要求信号を受信した場合(ステップS155においてYES)には、ステップS157で、子機に交換判定データを含む接続応答信号を送信し、その後、ステップS161において、親機としての接続フラグをオンして、通信相手サーチ処理(1)をリターンする。つまり、親機として、他のゲーム装置との間で通信接続が可能であることが判明する。
【0303】
なお、図25においては省略したが、通信相手サーチ処理(1)が開始されたとき、子機としての接続フラグ(後述する親機としての接続フラグも同じ。)はオフ(リセット)される。
【0304】
一方、子機からの交換判定データを含む接続要求信号を全く受信しない場合(ステップS155においてNO)には、ステップS163で、子機サーチ時間すなわち親機として他のゲーム装置からの接続が試みられる期間がTsc秒経過したかどうかを判断する。
【0305】
ステップS163において、子機サーチ時間がTsc秒経過していなければ(ステップS163においてNO)、そのままステップS155に戻る。
【0306】
一方、子機サーチ時間がTsc秒経過すれば(ステップS163においてYES)、ステップS165で、親機のサーチを開始し、つまりタイマ回路をリセットおよびスタートし、ステップS167で、交換判定データを含む接続要求信号を宛先を特定せずに送信する。
【0307】
続くステップS169では、親機からの交換判定データを含む接続応答信号を受信したかどうかを判断する。親機からの交換判定データを含む接続応答信号を受信すれば(ステップS169においてYES)であれば、、ステップS173で、子機としての接続フラグをオンして、通信相手サーチ処理(1)をリターンする。つまり、子機として他のゲーム装置との間で通信接続が可能であることが判明する。
【0308】
一方、親機からの交換判定データを含む接続応答信号を受信しなければ(ステップS169においてNO)、ステップS175で、64ms待機し、続くステップS177で、親機サーチ時間すなわち子機として他のゲーム装置との接続を試みる期間がTsp秒経過したかどうかを判断する。
【0309】
親機サーチ時間がTsp秒経過していなければ(ステップS177においてNO)、そのままステップS167に戻る。
【0310】
一方、親機サーチ時間がTsp秒経過すれば(ステップS177においてYES)、Tcycleの期間が経過したと判断して、通信相手サーチ処理(1)をリターンする。
【0311】
ステップS175で64ms待機することにより、ステップS167において、交換判定データを含む接続要求信号を宛先を特定せずに送信を繰り返す処理が間欠的に行われることになり、消費電力を抑えることができる。
【0312】
図26および図27は、通信相手サーチ処理(2)を示すフロー図である。
図26を参照して、通信相手サーチ処理(2)を開始すると、ステップS181で、Tsc1を0から(Tcycle−Tsp)の範囲内でランダムに決定する。上述したように、通信相手サーチ処理(2)では、TcycleおよびTspは固定値であるため、Tsc1が決定されると、Tsc2も決定される。
【0313】
続くステップS183〜S193が上述のTsc1において実行される処理であり、親機として動作して子機をサーチする処理がされる。ステップS195〜S207が上述のTspにおいて実行される処理であり、子機として動作して親機をサーチする処理がされる。さらに、ステップS209〜S219が上述のTsc2において実行される処理であり、子機として動作して親機をサーチする処理がされる。
【0314】
ステップS183では、子機のサーチを開始する。図示は省略するが、このときタイマ回路をスタートする。次にステップS185で、子機からの交換判定データを含む接続要求信号を受信したかどうかを判断する。
【0315】
子機からの交換判定データを含む接続要求信号を受信すれば(ステップS185においてYES)、ステップS187で、子機に親機の交換判定データを含む接続応答信号を送信し、その後、ステップS191において、親機としての接続フラグをオンして、通信相手サーチ処理(2)をリターンする。つまり、親機として他のゲーム装置との間で通信接続が可能であることが判明する。
【0316】
なお、図26においては省略したが、通信相手サーチ処理(2)が開始されたとき、子機としての接続フラグおよび親機としての接続フラグがオフされるのは、通信相手サーチ処理(1)の場合と同じである。
【0317】
一方、子機からの交換判定データを含む接続要求信号を全く受信しない場合(ステップS185においてNO)には、ステップS193で、子機サーチ時間すなわち親機として他のゲーム装置から接続を試みられる期間がTsc1秒経過したかどうかを判断する。
【0318】
子機サーチ時間がTsc1秒経過していなければ(ステップS193においてNO)、そのままステップS185に戻る。
【0319】
一方、子機サーチ時間がTsc1秒経過すれば(ステップS193においてYES)、ステップS195で、親機のサーチを開始し、つまりタイマ回路をリセットおよびスタートし、ステップS197で、交換判定データを含む接続要求信号を宛先を特定せずに送信する。
【0320】
続くステップS199では、親機から接続応答信号を受信したかどうかを判断する。親機から接続応答信号を受信すれば(ステップS199においてYES)、ステップS203で、子機としての接続フラグをオンして、通信相手サーチ処理(2)をリターンする。つまり、子機として他のゲーム装置との間で通信接続が可能であることが判明する。
【0321】
一方、親機からの交換判定データを含む接続応答信号を受信しなければ(ステップS199においてNO)、ステップS205で、64ms待機し、続くステップS207で、親機サーチ時間すなわち子機として他のゲーム装置との接続を試みる期間がTsp秒経過したかどうかを判断する。
【0322】
親機サーチ時間がTsp秒経過していなければ(ステップS207においてNO)、そのままステップS197に戻る。
【0323】
一方、親機サーチ時間がTsp秒経過すれば(ステップS207においてYES)、図27に示すステップ209で、子機のサーチを開始する。このとき、タイマ回路をリセットおよびスタートする。
【0324】
次のステップS211では、子機からの交換判定データを含む接続要求信号を受信したかどうかを判断する。
【0325】
子機からの交換判定データを含む接続要求信号を受信すれば(ステップS211においてYES)、ステップS213で、子機に交換判定データを含む接続応答信号を送信し、その後、ステップS217において、親機としての接続フラグをオンして、通信相手サーチ処理(2)をリターンする。
【0326】
一方、子機からの交換判定データを含む接続要求信号を全く受信しない場合(ステップS211においてNO)には、ステップS219で、子機サーチ時間がTsc2秒経過したかどうかを判断する。
【0327】
子機サーチ時間がTsc2秒経過していなければ(ステップS219においてNO)、そのままステップS211に戻る。
【0328】
一方、子機サーチ時間がTsc2秒経過すれば(ステップS219においてYES)、Tcycleの期間が経過したと判断して、通信相手サーチ処理(2)をリターンする。
【0329】
図28を用いて本発明の実施の形態に従う交換データの授受のデータの遣り取りについて説明する。
【0330】
図28を参照して、本体側のCPU31においてアプリケーションプログラムの実行による交換データが設定される(シーケンスsq2)。そして、本体側のCPU31は、無線通信モジュール38に対して通信初期設定のためのデータを出力する(シーケンスsq4)。具体的には、交換データのアプリケーションIDのリストおよびMACアドレスリストに関するデータを出力する。そして、当該交換データのアプリケーションIDのリストは、アプリケーションID保存領域68に格納され、MACアドレスリストは、MACアドレスリスト保存領域70に格納される。
【0331】
そして、本体側のCPU31は、データ通信開始指示を無線通信モジュール38に出力する(シーケンスsq6)。
【0332】
これに伴いデータ通信開始指示に応答して無線通信モジュール38によるデータ通信処理が開始される(シーケンスsq8)。そして、まず、無線通信モジュール38において交換データを交換する通信相手を探索する交換相手探索処理である携帯端末間通信が開始される。
【0333】
一方、ゲーム装置3においても、本体側のCPUにおいてアプリケーションプログラムの実行による交換データが設定される(シーケンスsq14)。そして、本体側のCPUは、無線通信モジュール38Pに対して通信初期設定のためのデータを出力する(シーケンスsq16)。具体的には、交換データのアプリケーションIDのリストおよびMACアドレスリストに関するデータを出力する。そして、当該交換データのアプリケーションIDのリストは、アプリケーションID保存領域68Pに格納され、MACアドレスリストは、MACアドレスリスト保存領域70Pに格納される。
【0334】
そして、本体側のCPU31は、データ通信開始指示を無線通信モジュール38Pに出力する(シーケンスsq18)。
【0335】
これに伴いデータ通信開始指示に応答して無線通信モジュール38Pによるデータ通信処理が開始される(シーケンスsq18)。そして、上述したのと同様に、携帯端末間通信が開始される。
【0336】
再び、ゲーム装置1に関して、次に、上述したように携帯端末間通信において、子機サーチが実行される(シーケンスsq21)。そして、次に、親機サーチが実行される(シーケンスsq22)。
【0337】
そして、親機サーチにおいて、ゲーム装置1の無線通信モジュール38からゲーム装置3の無線通信モジュール38Pに対して交換判定データを含む接続要求信号が送信されると(シーケンスsq26)、ゲーム装置3の無線通信モジュール38Pは、ゲーム装置1からの交換判定データを受け付けて、ゲーム装置1の無線通信モジュール38にゲーム装置3の交換判定データを含む接続応答信号を送信する(シーケンスsq28)。
【0338】
そして、無線通信モジュール38は、無線通信モジュール38Pからの交換判定データを含む接続応答信号の入力を受け付ける。
【0339】
当該処理により、上述したように自機であるゲーム装置1については子機としての接続フラグがオンする。また、ゲーム装置3については親機としての接続フラグがオンする。
【0340】
ゲーム装置1においては、子機としての接続フラグがオンとなることに伴い通信相手である親機と通信接続が可能であるすなわち通信相手を発見したと判断する(シーケンスsq30)。また、ゲーム装置3においても親機としての接続フラグがオンとなることに伴い通信相手である子機と通信接続が可能であるすなわち通信相手を発見したと判断する(スケールsq42)。
【0341】
そして、ゲーム装置1においては、通信相手を発見した後、次に、MACアドレスを比較する(シーケンスsq32)。
【0342】
そして、不一致である場合、すなわち、未だ通信していない相手である場合には、次に識別情報を比較する(シーケンスsq34)。
【0343】
そして、識別情報が一致した場合には、アプリケーションIDを比較する(シーケンスsq36)。
【0344】
そして、アプリケーションIDが一致したと判断した場合には、無線通信モジュール38は、本体側のCPUに対して一致したアプリケーション識別情報(ID)に対応する交換データについて、交換が可能なゲーム装置3が発見された旨を通知する(シーケンスsq38)。
【0345】
これにより本体側のCPUは、無線通信モジュール38からの通知によって通信接続が可能な交換相手が発見されたことを認識し、データ授受処理を開始する(シーケンスsq40)。
【0346】
一方、同様の処理に従ってゲーム装置3側においても、通信相手を発見した(シーケンスsq42)後、MACアドレスを比較し(シーケンスsq44)、不一致である場合、すなわち、未だ通信していない相手である場合には識別情報を比較し(シーケンスsq46)、そして、一致した場合にはアプリケーションIDを比較し(シーケンスsq48)、そして、一致した場合には本体側のCPUに交換が可能なゲーム装置1が発見された旨を通知する(スケールsq50)。
【0347】
これにより、ゲーム装置3においてもデータ授受処理が開始される(シーケンスsq52)。
【0348】
そして、次に、ゲーム装置1の本体側のCPU31は、データ授受処理が開始された後、ゲーム装置3との間で通信接続を確立する(シーケンスsq54)。
【0349】
同様に、ゲーム装置3の本体側のCPUにおいてもデータ授受処理が開始された後、ゲーム装置1との間で通信接続を確立する(シーケンスsq56)。
【0350】
そして、ゲーム装置1は、交換データを送信する(シーケンスsq58)。当該交換データは、スロットに格納されている交換データをコピーしたコピーデータである。
【0351】
そして、ゲーム装置3においてゲーム装置1から送信された交換データを受信して、当該交換データを格納する(シーケンスsq60)。
【0352】
そして、ゲーム装置3において、交換データを送信する(シーケンスsq62)。当該交換データは、スロットに格納されている交換データをコピーしたコピーデータである。
【0353】
そして、ゲーム装置1においては、ゲーム装置3から送信された交換データを受信して、当該交換データを格納する(シーケンスsq64)。
【0354】
そして、通信を切断する(シーケンスsq66)。
そして、交換データ通知処理を実行する(シーケンスsq68)。
【0355】
同様に、ゲーム装置3においても、交換データを格納した後、通信を切断する(シーケンスsq70)。そして、交換データ通知処理を実行する(シーケンスsq72)。
【0356】
そして、上述したように交換データの通知を受けて、ユーザが当該交換データを利用するアプリケーションを実行することにより上記で説明したスロットに格納されている交換データの消去処理が実行されて交換データの交換処理が完了する。
【0357】
なお、上記シーケンスにおいて、シーケンスsq4,sq6,sq16,sq18,sq40,sq52〜sq72は、それぞれのゲーム装置において、上述したように本体側の機能でありシステムプログラム保存領域86に格納されたシステムプログラムにより実現されるものである。一方、シーケンスsq8,sq20〜sq38,sq42〜sq50は、上述したように、それぞれのゲーム装置において、無線通信モジュール38におけるメモリ制御部64に格納されているROM72から読出されたプログラムにより実現されるものである。
【0358】
この実施例によれば、無線通信により、所定のアプリケーションで利用される交換データを、当該アプリケーションを実行していない時でも、通信接続が確立するゲーム装置との間で自動で交換することができるので、知人との間で交換データの交渉をする機会が増す。
【0359】
また、この実施例によれば、無線通信により、本体側のCPU31で実行されるアプリケーションの有無に関わらず、所定のアプリケーションで利用される交換データを、当該アプリケーションを実行していない時でも、通信接続が確立するゲーム装置との間で自動で交換することができるので、当該アプリケーションを格納しているメモリカード26を装着している必要は無く、利便性が高く、また、何が交換されるかが分からないため興趣性が増す。
【0360】
また、交換する相手が知人に限定されないため、人が集まる場所に出かければ、交換データを交換することができる可能性が高くなり、交換の楽しさを増大させることができる。つまり、交換データを利用するアプリケーションの興趣性を向上させることができる。
【0361】
また、まず、無線通信モジュール間のみでの通信処理を実行して交換可能であると判断した場合に、初めて本体側のCPUに通知して交換データの授受処理を実行するためCPUの処理負荷を軽減することが可能であるとともに消費電量を低減することが可能である。
【0362】
次に、携帯固定端末間通信について説明する。
図29を用いて本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5との通信
処理の概略について説明する。
【0363】
図29を参照して、固定端末機器5は、無線アクセスポイント装置100と、信号発生装置102とを含む。無線アクセスポイント装置100は、ネットワーク110を介して配信サーバ115と接続される。信号発生装置102は、無線アクセスポイント装置100と接続するために必要な接続情報を含む後述する配信無線フレームを宛先を特定せずに送信する。
【0364】
アクセスポイント装置100は、ゲーム装置1からの配信データの要求に対してネットワーク110を介して配信サーバ115から取得した配信データを送信する。
【0365】
図30を用いて、本発明の実施の形態に従う携帯固定端末間通信について説明する。当該処理は、無線通信モジュール38において、配信データを提供する通信相手を探索する配信相手探索処理であり、CPU60が、ROM72に格納されている携帯固定端末間処理を実行するためのアプリケーションを実行することにより実現される。
【0366】
図30を参照して、まず、CPU60は、所定期間が経過したかどうかを判断する(ステップS100)。そして、ステップS100において、CPU60は、所定期間が経過していないと判断した場合(ステップS100においてNO)には、通信相手(固定端末機器)を探索する通信相手サーチ処理を実行する(ステップS102)。通信相手サーチ処理については後述する。
【0367】
そして、次に、CPU60は、通信相手サーチ処理により通信相手が発見されたかどうかを判断する(ステップS104)。
【0368】
ステップS104において、CPU60は、通信相手が発見された場合(ステップS104においてYES)には、データ内容を確認する(ステップS106)。
【0369】
図31を用いて、本発明の実施の形態に従う携帯固定端末間通信においてゲーム装置において受信される配信無線フレームの構成について説明する。当該データは、固定端末機器5の信号発生装置102から接続要求信号として送信されるものである。
【0370】
図31を参照して、まず、先頭部分にヘッダ情報D1が設けられる。この部分にデータ長およびMACアドレス等が含まれている。
【0371】
そして、次に、当該データを提供する企業等を識別するためのベンダ情報D3が設けられる。
【0372】
そして、次に、受信データに含まれる通信データの種別を示す通信データ種別情報D4が設けられる。なお、携帯固定端末間通信の場合には、携帯固定端末間通信の通信データを示す情報が格納される。
【0373】
そして、以降にアプリケーション識別情報(ID)D7が設けられる。アプリケーション式識別情報(ID)D7は、アプリケーションIDデータの長さを示す長さ情報Dfと、プリケーションIDデータDgとが含まれている。
【0374】
そして、「その他」情報D8が設けられる。「その他」情報としては、上述したように無線通信で用いられる識別コード、SSID(Service Set Identifier)や、電波干渉を避けるために設定される無線チャンネル(周波数)等のデータが格納されている。
【0375】
当該配信無線フレームは、後述するが固定端末機器5から不特定の相手(ゲーム装置)に対して送信されたものであり、不特定の相手(ゲーム装置)が受信するものである。親機側の固定端末機器5は、宛先を特定せずに子機側の通信相手に対して当該送信を繰り返し実行する。
【0376】
なお、本例における配信無線フレームについては、一例として、1つのIE(Information Element)データ(ベンダ情報、通信データの種別を示す通信データ種別情報、アプ
リケーション識別情報等)が含まれた無線フレームについて説明したが、特にこれに限られず、無線通信で用いられるその他のIEデータが複数含められた配信無線フレームとすることも可能である。その場合には、複数のIEデータに対して配信無線フレームのヘッダ情報が付加されることになる。
【0377】
再び、図30を参照して、次に、CPU60は、受信したデータに含まれる識別情報が一致しているかどうかを判断する(ステップS108)。具体的には、図31で説明した当該データを提供する企業等を識別するためのベンダ情報が一致するかどうかを判断する。ベンダ情報が一致する場合とは、送信されたデータの発信源が互いに通信接続が可能な同種の装置であることを意味し、異なる場合には、送信されたデータの発信源が互いに通信接続が不可能である全く種類の異なる装置であることを意味する。
【0378】
また、通信データの種別を示す通信データ種別情報が一致するかどうかを判断する。通信データ種別情報が一致する場合とは、携帯固定端末間通信における通信データであることを意味する。上述した、携帯端末間通信におけるゲーム装置3から出力されるデータに含まれる通信データ種別情報とは異なるため仮にゲーム装置3から出力されたデータを受信した場合であっても通信データ種別情報が異なるため当該データを受信せず固定端末機器5とのみ通信することが可能である。ゲーム装置1側の比較の対象であるベンダ情報は予めROM72に登録されているものとする。また、ゲーム装置1側の比較の対象である通信データ種別情報についても予めROM72に登録されているものとする。CPU60は、携帯端末間通信か携帯固定端末間通信かによって通信データ種別情報を切り替えて、受信したデータに含まれている通信データ種別情報と一致するか否か判断する。
【0379】
すなわち、ステップS108において、CPU60は、識別情報が一致していないと判断した場合(ステップS108においてNO)には、再びステップS100に戻る。
【0380】
したがって、互いに通信接続が不可能である装置とは、以降の処理を実行することなく通信を終了する。
【0381】
次に、ステップS108において、CPU60は、識別情報が一致していると判断した場合(ステップS108においてYES)には、次に、配信データを有する固定端末機器5が発見された旨を本体側に通知する(ステップS110)。そして処理を終了する(エンド)。
【0382】
以降の、通信相手である固定端末機器5と接続を確立して、配信データを取得するデータ取得処理については、無線通信モジュール38を用いた本体側のCPU31のアプリケーションとして実行されることになる。
【0383】
したがって、本体側に、配信データを有する固定端末機器5が発見された旨を通知することにより無線通信モジュール38のCPU60のみが独立して実行するデータ通信すなわち、無線通信モジュール38において配信データを取得する通信相手を探索する配信相手探索処理は終了する。
【0384】
図32を用いて、配信データを取得するデータ取得処理のフローについて説明する。
図32を参照して、まず、CPU31は、無線通信モジュール38からの通知があるかどうかを判断する(ステップS112)。
【0385】
ステップS112において、CPU31は、無線通信モジュール38からの通知があったと判断した場合(ステップS112においてYES)には、無線通信モジュール38からの配信データを有する固定端末機器が発見された旨の通知に含まれている通信相手の接続情報に基づいて通信相手との間で通信接続を確立する(ステップS44)。本例においては、固定端末機器5の無線アクセスポイント装置100との間で通信接続を確立する。
【0386】
そして、次に、CPU31は、配信データの要求を送信する(ステップS114)。
そして、次に、CPU31は、配信データを受信したかどうかを判断する(ステップS116)。
【0387】
そして、ステップS114において、CPU31は、配信データを受信したと判断した場合(ステップS116においてYES)には、受信データ保存領域82に配信データを格納する(ステップS118)。
【0388】
そして、次に、CPU31は、通信相手(固定端末機器5)との通信を切断する(ステップS120)。
【0389】
そして、CPU31は、取得データ通知処理を実行する(ステップS122)。そして、処理を終了する(エンド)。なお、取得データ通知処理については、図22で説明したのと同様に配信データを取得した場合には、効果音あるいは内容を表示することによりユーザに通知する。
【0390】
図33を用いて通信相手サーチ処理(3)を示すフロー図について説明する。
この処理では、ゲーム装置1は、子機として親機である固定端末機器5との間でデータ通信を実行し、ゲーム装置1は、親機である固定端末機器5からの接続要求信号の受信があるまで待機する。この通信相手サーチ処理では、ゲーム装置1は、常に子機として動作して親機をサーチする処理を実行する。なお、本例においては、固定端末機器5からのみ接続要求信号が送信され、ゲーム装置1は当該信号の受信を待つ方式について説明しているが、固定端末機器5は、備え付けの機器であるため、携帯型の移動可能なゲーム装置から接続要求信号を出力するよりも固定端末機器5からのみ接続要求信号を送信した方が効率よくデータ通信を実行することができるからである。
【0391】
図33を参照して、通信相手サーチ処理(3)を開始すると、ステップS300では、固定端末サーチを開始する。図示は省略するが、このときタイマ回路をスタートする。
【0392】
そして、ステップS302で、親機である固定端末機器5の接続要求信号を受信したかどうかを判断する。
【0393】
固定端末機器5からの接続要求信号を受信した場合(ステップS302においてYES)には、ステップS310で、接続フラグをオンして、通信相手サーチ処理(3)をリターンする。つまり、子機として、親機である固定端末機器5との間で通信接続が可能であることが判明する。
【0394】
なお、図33においては省略したが、通信相手サーチ処理(3)が開始されたとき、接続フラグはオフ(リセット)される。
【0395】
一方、親機からの接続要求信号を全く受信しない場合(ステップS302においてNO)には、ステップS304で、子機として固定端末機器5に接続を試みる期間がTsd秒経過したかどうかを判断する。
【0396】
ステップS304において、親機サーチ時間がTsd秒経過していなければ(ステップS304においてNO)、そのままステップS302に戻る。
【0397】
一方、親機サーチ時間がTsd秒経過すれば(ステップS304においてYES)通信相手サーチ処理(3)をリターンする。
【0398】
図34を用いて本発明の実施の形態に従う配信データ取得のデータの遣り取りについて説明する。
【0399】
図34を参照して、シーケンスsq2〜sq8までは、図28で説明したのと同様であり、本体側のCPU31においてアプリケーションプログラムの実行による交換データが設定される(シーケンスsq2)。そして、本体側のCPU31は、無線通信モジュール38に対して通信初期設定のためのデータを出力する(シーケンスsq4)。そして、本体側のCPU31は、データ通信開始指示を無線通信モジュール38に出力する(シーケンスsq6)。
【0400】
これに伴いデータ通信開始指示に応答して無線通信モジュール38によるデータ通信処理が開始される(シーケンスsq8)。
【0401】
そして、まず、無線通信モジュール38において交換データを交換する通信相手を探索する携帯端末間通信が開始され(シーケンスsq100)、所定期間内に通信相手を発見することができなかったものとする。
【0402】
そして、さらに、携帯端末間通信が開始される(シーケンスsq102)この場合においても所定期間内に通信相手を発見することができなかったものとする。
【0403】
そして、次に、携帯固定端末間通信が開始される(シーケンスsq103)。
固定端末機器5は、上述したように、信号発生装置102から接続要求信号を繰り返し発信(送信)する。
【0404】
そして、ゲーム装置1の無線通信モジュール38は、固定端末機器5から送信された接続要求信号の入力を受け付ける(シーケンスsq104)。
【0405】
これにより、上述したように自機であるゲーム装置1について接続フラグがオンする。
ゲーム装置1の無線通信モジュール38においては、接続フラグがオンとなることに伴い通信相手である固定端末機器と通信接続が可能であるすなわち通信相手を発見したと判断する(シーケンスsq108)。
【0406】
そして、ゲーム装置1の無線通信モジュール38においては、識別情報を比較する(シーケンスsq110)。
【0407】
そして、識別情報が一致したと判断した場合には、無線通信モジュール38は、本体側のCPUに対して配信データの提供を受けることが可能な固定端末機器5が発見された旨を通知する(シーケンスsq112)。
【0408】
これにより、本体側のCPUは、無線通信モジュール38からの通知によって、配信デ
ータを配信する固定端末機器5と通信接続が可能であることを認識し、データ取得処理を開始する(sq114)。
【0409】
そして、次に、ゲーム装置1の本体側のCPU31は、データ取得処理が開始された後、配信データ要求を送信する(シーケンスsq116)。
【0410】
固定端末機器5の無線アクセスポイント装置100は、ゲーム装置1からの配信データ要求を受け付けて、当該配信データ要求をネットワーク110を介して配信サーバ115に送信する(シーケンスsq117)。
【0411】
そして、配信サーバ115は、無線アクセスポイント装置100からの配信データ要求に従って、配信データを送信する(シーケンスsq118)。
【0412】
無線アクセスポイント装置100は、ネットワーク110を介する配信サーバ115からの配信データを受け付けた後、当該配信データをゲーム装置1に対して送信する(シーケンスsq119)。
【0413】
そして、ゲーム装置1は、固定端末機器5の無線アクセスポイント装置100から送信された配信データを受け付けて、受信した配信データを格納する(シーケンスsq120)。
【0414】
そして、通信を切断する(シーケンスsq122)。
そして、取得データを通知する(シーケンスsq124)。
【0415】
この実施例によれば、無線通信により、通信接続が確立する固定端末機器5との間で配信データを自動で取得することができる。
【0416】
例えば、配信データが店頭で使用することが可能なクーポンを表示するようなものである場合、ゲーム装置1を携帯しているだけで固定端末機器5と無線通信した場合に当該クーポンを表示する配信データを取得することが可能であり、配信データの取得の楽しさを増大させることができる。
【0417】
また、たとえば、取得したクーポンを表示する配信データを交換データとして上述した交換データ保存領域80のスロットに格納させるようにしても良い。たとえば、当該配信データに上述した交換データとして交換データ保存領域に格納させるアプリケーションを含ませるようにすれば良い。当該処理により、携帯端末間通信において交換データとして他の人に当該配信データを提供することが可能となる。
【0418】
すなわち、固定端末機器5からのみしか取得できない配信データについても携帯端末間通信を利用して他のユーザに提供することが可能となり、配信データの興趣性をさらに増大させることが可能である。
【0419】
なお、図29に示す固定端末機器5においては、無線アクセスポイント装置100と、信号発生装置102とをそれぞれ別々のものとして設けた場合について説明したが両者をまとめて1つの装置とすることも可能である。すなわち、無線アクセスポイント装置100が信号発生装置102の機能を含み接続要求信号を出力するようにしても良い。
【0420】
一方で、図29に示される構成の如く、信号発生装置102を接続要求信号のみを送信する専用の装置として設けることにより、無線アクセスポイント装置100の処理負荷を軽減することにより、例えば、複数のゲーム装置との間での配信データのデータ通信を効
率的に実行させるようにしても良い。
【0421】
また、信号発生装置102として、固定端末機器5と通信するゲーム装置を接続要求信号のみを送信する専用の信号発生装置として用いるようにしても良い。ベンダ情報等、通信相手であるゲーム装置と同様の情報を有しているため簡易に信号発生装置を実現することが可能である。
【0422】
図35を用いて本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5#との通信処理の概略について説明する。
【0423】
図35を参照して、固定端末機器5#は、図29で説明した固定端末機器5と比較して、通信モジュール104、CPU106、HDD108をさらに含む点で異なる。その他の構成については、図29で説明したのと同様でるのでその詳細な説明は繰り返さない。
【0424】
通信モジュール104は、ネットワーク110と接続されるものとする。CPU106は、通信モジュール104、HDD(Hard Disk Drive)108、信号発生装置102と
それぞれ接続され、これらを制御するものとする。本例においては、一例としてCPU106がHDD108に格納されている配信データを通信モジュール104と接続されているネットワーク110を介して他の装置に出力可能であるものとする。
【0425】
当該構成とすることにより、上記と同様の処理を実行することにより、無線アクセスポイント装置100は、配信サーバ115から配信データを取得することができるとともに、ネットワーク110を介して接続されている通信モジュール104と接続して、例えば、HDD108に格納されている配信データを取得して、無線アクセスポイント装置100からゲーム装置に送信することも可能である。
【0426】
例えば、固定端末機器5#が複数の店舗等にそれぞれ設けられた場合に、各店舗毎に、HDD108に格納されている配信データをカスタマイズすることにより、カスタマイズされた配信データをゲーム装置に送信することが可能であり、ゲーム装置における配信データの取得の楽しさを増大させることができる。
【0427】
<その他の形態>
上述の実施の形態においては、本発明に係る情報処理装置の代表例として、ゲーム装置1について例示したが、これに限定されることはない。すなわち、本発明に係るプログラムとして、パーソナルコンピュータで実行可能なアプリケーションを提供してもよい。このとき、本発明に係るプログラムは、パーソナルコンピュータ上で実行される各種アプリケーションの一部の機能として組み込まれてもよい。
【0428】
なお、この実施例では、携帯型のゲーム装置を用いた情報処理システムについてのみ説明したが、当該携帯型のゲーム装置に変えて、携帯電話機やPDA等の携帯端末でも同様に適用可能である。
【0429】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0430】
1,2,3 携帯型ゲーム装置、5,5# 固定端末機器、10 通信可能範囲、12
LCD、14 操作ボタン、23 カメラ、26 メモリカード、27 ROM、28
バックアップRAM、31,60,106 CPU、32 メインメモリ、33 メモリ制御回路、34 保存用データメモリ、35 プリセットデータ用メモリ、38 無線通信モジュール、40 RTC、41 電源回路、42 I/F回路、43 マイク、44 アンプ、45 スピーカ、61 アンテナ、62 RF−IC、64 メモリ制御部、66 RAM、68 アプリケーションID保存領域、70 MACアドレスリスト保存領域、72 ROM、80 交換データ保存領域、82 受信データ保存領域、84 内蔵アプリ保存領域、86 システムプログラム保存領域、88 MACアドレスリスト保存領域、100 無線アクセスポイント装置、102 信号発生装置、104 通信モジュール、108 HDD、110 ネットワーク、115 配信サーバ。
【技術分野】
【0001】
この発明は、情報処理システムおよび情報処理装置に関し、特に、例えば、互いに無線通信可能な複数の携帯型の情報処理装置等を備える、情報処理システムおよび情報処理装置に関する。
【背景技術】
【0002】
従来より、情報処理装置が近接した場合に、自動的に通信を実行するシステムが存在する。例えば、特開2005−28103号公報においては、通信するゲーム装置同士で交換条件を確認し合い、交換条件が合致する場合には、交換用に指定されたゲームデータをゲーム装置同士で交換するシステムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−28103号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方で、上記システムにおいては、交換処理は、携帯ゲーム装置同士でゲームのアプリケーションプログラム(以下、単にアプリケーションあるいはアプリとも称することとする)が実行されている場合にのみ、交換用に指定されたゲームデータを交換することが可能である。異なるゲームアプリケーションを実行中のゲーム装置同士は、当該交換を実行することはできなかった。
【0005】
本発明の目的は、上記のような問題を解決するためになされたものであって、アプリケーションの実行の有無に関わらず、当該アプリケーションで利用可能なデータを他の情報処理装置に提供することが可能な情報処理システムおよび情報処理装置を提供することである。
【課題を解決するための手段】
【0006】
この本発明の第1の局面に従う情報処理システムは、複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置を複数含む、情報処理システムであって、情報処理装置は、それぞれ、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、他の情報処理装置と無線通信するための通信手段と、アプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む。
【0007】
第1の局面によれば、携帯型ゲーム装置情報処理装置によるアプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。すなわち、無線通信モジュール38は、アプリケーションプログラムの実行の有無に関わらず、他のゲーム装置と通信し、交換データ保存領域80のスロットSLに格納されている交換データを他のゲーム装置に送信し、他のゲーム装置からの交換データを受信する。したがって、アプリケーションプログラムの実行の有無に関わらず、交換データを交換することができ、交換データを手軽に交換することができる。
【0008】
好ましい第2の局面によれば、情報処理装置は、データ送受信制御手段により受信した、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能な他の情報処理装置において記憶された提供データを記憶する受信データ記憶手段をさらに含む。
【0009】
第2の局面によれば、受信データ記憶手段は、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能な他の情報処理装置において記憶された提供データを記憶する。したがって、他のゲーム装置から受信した交換データが受信データ保存領域82に記憶され、当該交換データを、ゲーム装置自身が有する対応するアプリケーションで利用することが可能であるため交換データを利用するアプリケーションの興趣性を向上させることができる。
【0010】
好ましい第3の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、当該アプリケーションプログラムで利用可能なデータを、提供データとして提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。
【0011】
好ましい第4の局面によれば、提供データ記憶手段は、提供データを、提供データに係るアプリケーションプログラムを識別可能に記憶する。
【0012】
好ましい第5の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、当該アプリケーションプログラムで利用可能なデータを、提供データとして、自己のアプリケーションプログラムを識別可能に提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。
【0013】
第3〜第5の局面によれば、処理手段を、アプリケーションプログラムで利用可能なデータを、提供データとして提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。したがって、ゲーム装置のアプリケーションプログラムの実行中に交換データを交換データ保存領域80に記憶させることが可能であり、例えば、ゲーム上のイベントと関連づけて交換データを記憶させることも可能であり、交換データの記憶に興趣性を持たせることが可能である。
【0014】
好ましい第6の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、複数のアプリケーションプログラムのうちの第1のアプリケーションプログラムは、処理手段を、当該第1のアプリケーションプログラムで利用可能なデータを、第1の提供データとして、提供データ記憶手段に記憶させる第1提供データ記憶制御手段として機能させ、複数のアプリケーションプログラムのうちの第2のアプリケーションプログラムは、処理手段を、当該第2のアプリケーションプログラムで利用可能なデータを、第2の提供データとして、提供データ記憶手段に記憶させる第2提供データ記憶制御手段として機能させる。
【0015】
第6の局面によれば、処理手段を、第1および第2のアプリケーションプログラムで利用可能なデータを、それぞれ第1および第2の提供データとして提供データ記憶手段に記憶させる第1および第2提供データ記憶制御手段として機能させる。したがって、複数のアプリケーションプログラムの交換データを交換データ保存領域80に記憶させることが可能であり、交換データの記憶に興趣性を持たせることが可能である。
【0016】
好ましい第7の局面によれば、情報処理装置は、複数のアプリケーションプログラムが
それぞれ使用する複数のアプリケーション用記憶手段をさらに含み、提供データ記憶手段は、複数のアプリケーション用記憶手段に記憶されるアプリケーションデータに基づく提供データが記憶される、共用の記憶手段である。
【0017】
第7の局面によれば、複数のアプリケーション用記憶手段と、提供データ記憶手段とは共用の記憶手段である。したがって、1つの保存用データメモリ34にそれぞれ記憶領域を設けて内蔵アプリ保存領域と、交換データ保存領域とを設けることが可能であるため別々のメモリとするよりも1つのメモリとすることによりメモリのレイアウト面積を縮小することが可能である。
【0018】
好ましい第8の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、アプリケーション用記憶手段に記憶されるアプリケーションデータに基づく提供データを、提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。
【0019】
第8の局面によれば、処理手段を、アプリケーション用記憶手段に記憶されるアプリケーションデータに基づく提供データを提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる。したがって、アプリケーションデータとして、ユーザがゲーム内で手に入れたアイテムや、キャラクタのデータ等を交換データとすることが可能であり、交換データの記憶に興趣性を持たせることが可能である。
【0020】
好ましい第9の局面によれば、情報処理装置は、情報処理装置によるアプリケーションプログラムの実行時に、対応するアプリケーションプログラムの提供データが受信されているか否かを判断する提供データ格納判断手段と、提供データ格納判断手段により対応するアプリケーションプログラムの提供データが受信されていると判断した場合には、対応するアプリケーションプログラムの提供データを読み出す提供データ取得手段とをさらに含む。
【0021】
好ましい第10の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、提供データ格納判断手段および提供データ取得手段として機能させる。
【0022】
第9および第10の局面によれば、情報処理装置は、アプリケーションプログラムの実行時に、対応するアプリケーションプログラムの提供データが受信されているか否かを判断し、提供データ格納判断手段により対応するアプリケーションプログラムの提供データが受信されていると判断した場合には、対応するアプリケーションプログラムの提供データを読み出す。したがって、アプリケーションプログラムの実行時に受信データ保存領域82に対応するアプリケーションプログラムで利用可能な交換データが受信されているかどうかを判断し、受信されている場合には、当該交換データを読み出して利用することが可能であるため交換データを利用したアプリケーションプログラムの興趣性を増すことが可能である。
【0023】
好ましい第11の局面によれば、データ送受信制御手段は、他の情報処理装置と通信可能になったときに、当該他の情報処理装置との間で無線通信による接続を確立するための処理を実行する接続確立手段を含む。
【0024】
好ましい第12の局面によれば、提供データ記憶手段は、複数の提供データを記憶可能であり、データ送受信制御手段は、接続確立手段によって他の情報処理装置との間の接続が確立されたときに、複数の提供データのそれぞれについて、送信する。
【0025】
第11および第12の局面によれば、データ送受信制御手段は、接続確立手段によって他の情報処理装置との間の接続が確立されたときに、複数の提供データのそれぞれについて、送信する。したがって、交換データ保存領域80に格納されている複数のスロットSLに格納されている交換データについて、接続が確立されたときに、それぞれ送信することが可能であるため、一括して交換データを交換することが可能であり、交換データの交換を容易に実行することが可能である。
【0026】
好ましい第13の局面によれば、データ送受信制御手段は、通信手段を用いて提供データ記憶手段に記憶されている提供データの属性情報と、他の情報処理装置の提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。
【0027】
好ましい第14の局面によれば、提供データごとに、各アプリケーションプログラムを識別する識別データが設定され、データ送受信制御手段は、提供データ記憶手段に記憶されている提供データの識別データと、他の情報処理装置の提供データ記憶手段に記憶されている識別データとの比較に基づいて一致した場合には、提供データ記憶手段に記憶された一致した識別データに対応する提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された一致した識別データに対応する提供データを受信する。
【0028】
第13および第14の局面によれば、提供データの属性情報(識別データ)と、他の情報処理装置の提供データ記憶手段に記憶されている提供データの属性情報(識別データ)との比較に基づいて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。したがって、交換データに対応付けられているアプリケーション識別情報の比較に基づいて一致した場合には、同一のアプリケーションに対応する交換データであることを認識することが可能であり、同一のアプリケーションに対応する交換データを交換して、交換データの交換の興趣性を増すことができる。
【0029】
好ましい第15の局面によれば、データ送受信制御手段は、提供データ記憶手段に記憶されている提供データの識別データと、他の情報処理装置の提供データ記憶手段に記憶されている提供データの識別データとについて、予め設けられている複数の比較方式のうち、提供データの識別データについて指定された比較方式に従う比較処理を実行する。
【0030】
第15の局面によれば、データ送受信制御手段は、識別データの比較について、予め設けられている複数の比較方式のうち、指定された比較方式に従う比較処理を実行する。したがって、アプリケーション識別データの全体を比較する場合だけでなく、一部のデータのみを比較したりすることが可能となり、交換データの交換処理を早期に実行して交換データの交換の興趣性を増すことができる。また、アプリケーション識別データの中に交換条件を設定して交換条件の一致を比較することが可能となり、より高度な交換処理が可能となり交換データの交換の興趣性を増すことができる。
【0031】
好ましい第16の局面によれば、情報処理装置は、無線モジュールを含み、無線モジュールは、通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、提供データ記憶手段に記憶されている提供データの属性情報と、他の情報処理装置の提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、一致した場合には、他の情報処理装置との間でデータ通信を実行するようにデータ送受信制御手段に指示する。
【0032】
第16の局面によれば、無線モジュールは、通信可能な他の情報処理装置を繰り返して
探索し、他の情報処理装置と通信可能になったときに、提供データの属性情報と、他の情報処理装置の提供データの属性情報との比較に基づいて、一致した場合には、データ通信を実行するようにデータ送受信制御手段に指示する。したがって、無線通信モジュール38は、通信相手を探索して、自己が有している交換データのアプリケーション識別データと、通信相手が有している交換データのアプリケーション識別データとが一致する場合に本体部であるCPU31に通知するため、一致しない場合には、CPU31がスリープ状態の場合に起動させることはなく、ゲーム装置本体の省電力を図ることができる。
【0033】
好ましい第17の局面によれば、各情報処理装置ごとに、各情報処理装置を識別することが可能な装置識別情報が設定され、情報処理装置は、通信した他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段をさらに含み、データ送受信制御手段は、通信手段を用いて、装置識別情報記憶手段に記憶されている装置識別情報と、他の情報処理装置の装置識別情報との比較に基づいて、装置識別情報記憶手段に記憶されている装置識別情報に対応する他の情報処理装置には提供データ記憶手段に記憶された提供データを送信しない。
【0034】
第17の局面によれば、情報処理装置は、以前に通信した他の情報処理装置の装置識別情報を記憶し、記憶している装置識別情報と、今回通信する他の情報処理装置の装置識別情報との比較に基づいて、記憶している装置識別情報に対応する他の情報処理装置には提供データを送信しない。したがって、MSCアドレス保存領域88に格納されているMACアドレスリストに含まれているMACアドレスに対応するゲーム装置に対しては、交換データは送信されないため交換データの交換処理を同じゲーム装置と複数回繰り返すことはなく、効率的な交換データの交換が可能となる。
【0035】
好ましい第18の局面によれば、各情報処理装置ごとに、各情報処理装置を識別することが可能な装置識別情報が設定され、情報処理装置は、通信した他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段と、無線モジュールとをさらに含み、無線モジュールは、通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、装置識別情報記憶手段に記憶されている装置識別情報と、他の情報処理装置の装置識別情報との比較に基づいて、一致した場合には、他の情報処理装置との間でデータ通信を実行するようにデータ送受信制御手段に指示しない。
【0036】
第18の局面によれば、無線モジュールは、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、以前に通信した他の情報処理装置の装置識別情報と、今回通信する他の情報処理装置の装置識別情報との比較に基づいて、一致した場合には、データ通信を実行するようにデータ送受信制御手段に指示しない。したがって、無線通信モジュール38は、通信相手を探索して、MSCアドレス保存領域88に格納されているMACアドレスリストに含まれているMACアドレスに対応するゲーム装置に対しては、以前に通信した通信相手であるため本体部であるCPU31に通知しないことにより、同じゲーム装置と交換データの交換処理を繰り返すことはなく効率的な交換が可能となるとともに、CPU31がスリープ状態の場合に起動させることはないため、ゲーム装置本体の省電力を図ることができる。
【0037】
好ましい第19の局面によれば、装置識別情報記憶手段に記憶された装置識別情報は、所定条件の場合に消去される。
【0038】
好ましい第20の局面によれば、装置識別情報記憶手段に記憶された装置識別情報は、一定時間経過後に消去される。
【0039】
第19および第20の局面によれば、装置識別情報記憶手段に記憶された装置識別情報
は、一定時間経過後に消去される。したがって、MACアドレスリスト保存領域88に格納されているMACアドレスはリセットされるため、再度、以前に通信処理が実行された装置ともデータ通信を実行することが可能である。例えば、以前に交換データの授受が実行された装置についても一定期間内に状況が変わり(新たな交換データが設定されているなど)、交換データの授受が可能な状況となっている可能性もあるため再度、交換データの交換が可能か否かを判断して、可能であるならば交換データの授受を実行するようにすることにより交換データの興趣性を増すことができる。
【0040】
好ましい第21の局面によれば、配信データを送信することが可能な配信用端末をさらに備え、通信手段は、他の情報処理装置あるいは配信用端末との無線通信の切り替えが可能であり、データ送受信制御手段は、アプリケーションの実行の有無に関わらず、通信手段が配信用端末との無線通信に切り替えられた場合には、通信手段を用いて配信用端末から送信された配信データを受信する。
【0041】
第21の局面によれば、配信用端末との無線通信に切り替えられた場合には、配信用端末から配信された配信データを受信する。したがって、固定端末機器5から送信された配信データを受信することが可能であるため、交換データの交換とともに配信データ取得の興趣性が増す。
【0042】
好ましい第22の局面によれば、通信手段は、他の情報処理装置との無線通信を実行する場合に、他の情報処理装置を探索するための第1の探索信号を出力し、配信用端末との無線通信を実行する場合には、配信用端末からの情報処理装置を探索する第2の探索信号の入力があるまで待機する。
【0043】
好ましい第23の局面によれば、通信手段は、他の情報処理装置との無線通信を実行する第1の期間において、他の情報処理装置を探索するための第1の探索信号を不特定の相手に繰り返し送信し、第2の期間において、他の情報処理装置から繰り返し送信される第1の探索信号の入力があるまで待機し、配信用端末との無線通信を実行する第3の期間において、配信用端末から繰り返し送信される第2の探索信号の入力があるまで待機する。
【0044】
第22および第23の局面によれば、他の情報処理装置との無線通信を実行する第1の期間において、他の情報処理装置を探索するための第1の探索信号を不特定の相手に繰り返し送信する。また、配信用端末との無線通信を実行する第3の期間において、配信用端末から繰り返し送信される第2の探索信号の入力があるまで待機する。したがって、固定端末機器5からの配信データを取得する場合には、ゲーム装置間のデータ通信と異なり、固定端末機器5からの接続要求があるまで待機する。すなわち、備え付けの機器である固定端末機器5からのみ接続要求信号を送信することにより、効率的なデータ通信を実行することができる。
【0045】
好ましい第24の局面によれば、複数のアプリケーションプログラムのうちの少なくとも1つは、情報処理装置と装着されて実行される、着脱可能な外部記憶装置に記憶された外部アプリケーションプログラムであり、提供データ記憶手段は、外部アプリケーションプログラムで利用可能なデータを、提供データとして記憶し、データ送受信制御手段は、外部記憶装置の装着状態の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。
【0046】
第24の局面によれば、データ送受信制御手段は、外部記憶装置の装着状態の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。したがって
、メモリカード26の装着の有無に関わらず、交換データを他のゲーム装置と交換することが可能であるためメモリカード26を装着している必要は無く、利便性が高く、また、何が交換されるかが分からないため興趣性が増す。
【0047】
好ましい第25の局面によれば、データ送受信制御手段は、他の情報処理装置において記憶された提供データを受信した場合には、提供データ記憶手段に記憶された提供データを消去する。
【0048】
第25の局面によれば、他の情報処理装置において記憶された提供データを受信した場合には、提供データ記憶手段に記憶された提供データを消去する。したがって、受信データ保存領域82に交換データが格納された場合には、交換データ保存領域80のスロットSLに格納されている交換データは削除されるため交換が成立し、交換データの交換の興趣性を増すことができる。
【0049】
好ましい第26の局面によれば、情報処理装置は、複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、アプリケーションプログラムは、処理手段を、当該アプリケーションプログラムで利用可能な、提供データ記憶手段に記憶された提供データを消去する提供データ消去手段として機能させる。
【0050】
第26の局面によれば、処理手段を、アプリケーションプログラムで利用可能な提供データ記憶制御手段に記憶された提供データを消去する提供データ消去手段として機能させる。したがって、ゲーム装置のアプリケーションプログラムの実行により、交換データ保存領域80のスロットSLに格納された提供データを消去することが可能であり、それにより交換が成立し、交換データの交換の興趣性を増すことができる。
【0051】
好ましい第27の局面によれば、複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置であって、複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、他の情報処理装置と無線通信するための通信手段と、アプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む。
【0052】
第27の局面によれば、携帯型ゲーム装置情報処理装置によるアプリケーションプログラムの実行の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。すなわち、無線通信モジュール38は、アプリケーションプログラムの実行の有無に関わらず、他のゲーム装置と通信し、交換データ保存領域80のスロットSLに格納されている交換データを他のゲーム装置に送信し、他のゲーム装置からの交換データを受信する。したがって、アプリケーションプログラムの実行の有無に関わらず、交換データを交換することができ、交換データを手軽に交換することができる。
【0053】
好ましい第28の局面によれば、着脱可能な記憶媒体に記憶された所定のアプリケーションプログラムを実行可能な携帯型の情報処理装置であって、記憶媒体の装着時に、所定のアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、他の情報処理装置と無線通信するための通信手段と、記憶媒体の装着の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを備える。
【0054】
第28の局面によれば、携帯型ゲーム装置情報処理装置による記憶媒体の装着の有無に関わらず、通信手段を用いて、提供データ記憶手段に記憶された提供データを他の情報処理装置に送信し、他の情報処理装置において記憶された提供データを受信する。すなわち、無線通信モジュール38は、記憶媒体の装着の有無に関わらず、他のゲーム装置と通信し、交換データ保存領域80のスロットSLに格納されている交換データを他のゲーム装置に送信し、他のゲーム装置からの交換データを受信する。したがって、アプリケーションプログラムの実行の有無に関わらず、交換データを交換することができ、交換データを手軽に交換することができる。
【0055】
上述の記載においては、本発明の理解を助けるために後述の実施形態との対応関係を示すための参照符号および補足説明等を付したが、これらは本発明を何ら限定するものではない。
【発明の効果】
【0056】
本発明に従えば情報処理システムおよび情報処理装置アプリケーションの実行の有無に関わらず、当該アプリケーションで利用可能なデータを他の情報処理装置に提供することが可能である。
【図面の簡単な説明】
【0057】
【図1】本発明に係る情報処理システムの典型例について説明する図である。
【図2】本発明の実施の形態に従うゲーム装置1の構成の概略ブロック図について説明する図である。
【図3】本実施の形態に従う無線通信モジュール38の構成について説明する図である。
【図4】本実施の形態に従う保存用データメモリ34のメモリマップについて説明する図である。
【図5】交換データ保存領域80への交換データの格納処理について説明する図である。
【図6】アプリケーションにより交換データ保存領域80に交換データを格納する場合について説明する図である。
【図7】本発明の実施の形態に従う無線通信モジュール38で実行するデータ通信処理のフローについて説明する図である。
【図8】本発明の実施の形態に従う通信初期設定の処理について説明する図である。
【図9】通信初期設定処理によりRAM66に格納されたデータについて説明する図である。
【図10】本発明の実施の形態に従う携帯端末間通信について説明する図である。
【図11】本発明の実施の形態に従うMACアドレスを比較する場合の概念図について説明する図である。
【図12】本発明の実施の形態に従うMACアドレスを比較する場合の別の概念図について説明する図である。
【図13】本発明の実施の形態に従う携帯端末間通信においてゲーム装置において受信される無線フレームの構成について説明する図である。
【図14】本発明の実施の形態に従うアプリケーション識別情報(ID)を比較する場合の概念図について説明する図である。
【図15】本発明の実施の形態に従うアプリケーション識別情報(ID)の比較について説明する図である。
【図16】本発明の実施の形態に従うアプリケーション識別情報(ID)のさらに別の比較について説明する図である。
【図17】本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する図(その1)である。
【図18】本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する図(その2)である。
【図19】本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する図(その3)である。
【図20】交換データの授受処理のフロー(その1)について説明する図である。
【図21】交換データの授受処理のフロー(その2)について説明する図である。
【図22】本発明の実施の形態に従う交換データ通知処理について説明する図である。
【図23】図5で説明した交換データ追加および消去処理について説明する図である。
【図24】通信相手サーチ処理について説明する図である。
【図25】通信相手サーチ処理(1)を示すフロー図である。
【図26】通信相手サーチ処理(2)を示すフロー図(その1)である。
【図27】通信相手サーチ処理(2)を示すフロー図(その2)である。
【図28】本発明の実施の形態に従う交換データの授受のデータの遣り取りについて説明する図である。
【図29】本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5との通信処理の概略について説明する図である。
【図30】本発明の実施の形態に従う携帯固定端末間通信について説明する図である。
【図31】本発明の実施の形態に従う携帯固定端末間通信においてゲーム装置において受信される配信無線フレームの構成について説明する図である。
【図32】配信データを取得するデータ取得処理のフローについて説明する図である。
【図33】通信相手サーチ処理(3)を示すフロー図である。
【図34】本発明の実施の形態に従う配信データ取得のデータの遣り取りについて説明する図である。
【図35】本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5#との通信処理の概略について説明する図である。
【発明を実施するための形態】
【0058】
この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0059】
<全体構成>
まず、図1を用いて本発明に係る情報処理システムの典型例について説明する。
【0060】
図1を参照して、この発明の実施の形態に従う本発明に係る情報処理システムは、複数の携帯型の情報処理装置を含む。本例においては、複数の携帯型の情報処理装置の一例として携帯ゲーム装置(以下、単にゲーム装置とも称する)1〜3が示されている。なお、ここでは、3台の携帯ゲーム装置が示されているが少なくとも2台有ればよい。また、さらに複数台の携帯ゲーム装置を設けた構成とすることも可能である。
【0061】
なお、本例においては、本発明の実施の形態における情報処理システムにおいて、必須の構成物ではないが、携帯型の情報処理装置であるゲーム装置と無線通信可能な固定端末機器5を設ける。
【0062】
ゲーム装置1〜3は、互いに無線通信を実行してデータの授受が可能であり、本例においては、ゲーム装置1(以下、単に、自機とも称する)と、他のゲーム装置および固定端
末機器5と通信する場合について説明する。
【0063】
また、図1においては、ゲーム装置1(自機)において、無線通信を実行する場合の通信可能範囲10が点線で示されている。すなわち、図1の例においては、ゲーム装置1(自機)は、ゲーム装置2,3と、固定端末機器5とそれぞれ通信が可能な状態であることが示されている。なお、図1においては、自機のゲーム装置1の通信可能範囲10に、ユーザ名「一郎」および「次郎」のゲーム装置2,3がそれぞれ存在し、ゲーム装置1は、ユーザ名「次郎」のゲーム装置3と無線通信している様子が示されている。
【0064】
詳細については後述するが、ゲーム装置1とゲーム装置3とは、互いに無線通信を実行して、互いに有しているデータを交換する。
【0065】
また、後述するが、固定端末機器5は、周辺のゲーム装置に対して所定の配信データを配信する。そして、ゲーム装置は、固定端末機器5から配信された配信データを取得した場合には、取得した配信データを利用することが可能であるものとする。
【0066】
<ゲーム装置の構成>
図2を用いて、本発明の実施の形態に従うゲーム装置1の構成の概略ブロック図について説明する。なお、ゲーム装置2,3についても同様の構成であるためその詳細な説明は省略する。
【0067】
図2を参照して、ゲーム装置1は、CPU31と、メインメモリ32と、メモリ制御回路33と、保存用データメモリ34と、プリセットデータ用メモリ35と、メモリカードインターフェース(メモリカードI/F)36と、無線通信モジュール38と、リアルタイムクロック(RTC)40と、電源回路41とを備えている。
【0068】
CPU31は、プログラムを実行するための演算処理手段である。本実施の形態では、当該プログラムは、ゲーム装置1内のメモリ(たとえば、保存用データメモリ34)やメモリカード26等に記録されている。なお、CPU31によって実行されるプログラムは、ゲーム装置1内のメモリに予め記録されていてもよいし、メモリカード26から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。また、CPU31は、マルチプロセス処理が可能である。具体的には、ゲーム処理を実行しつつ、バックグラウンドで、後述するゲーム交換処理を実行することができる。
【0069】
CPU31には、メインメモリ32、メモリ制御回路33、およびプリセットデータ用メモリ35が接続される。また、メモリ制御回路33には、保存用データメモリ34が接続される。
【0070】
メインメモリ32は、CPU31のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ32は、上記情報処理に用いられる各種データを記憶したり、外部(メモリカード26や他の機器等)から取得されるプログラムを記憶したりする。本実施の形態では、メインメモリ32として、たとえばPSRAM(Pseudo-SRAM
)を用いる。
【0071】
保存用データメモリ34については、さらに、後述するが、CPU31によって実行されるプログラムやカメラ23によって撮影された画像のデータ等を記憶するための記憶手段である。
【0072】
保存用データメモリ34は、不揮発性の記憶媒体によって構成されており、たとえば本実施例ではNAND型フラッシュメモリで構成される。メモリ制御回路33は、CPU3
1の指示に従って、保存用データメモリ34に対するデータの読み出しおよび書き込みを制御する回路である。
【0073】
プリセットデータ用メモリ35は、ゲーム装置1において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ35としては、SPI(Serial Peripheral Interface)バスによってCPU3
1と接続されるフラッシュメモリを用いることができる。
【0074】
メモリカードI/F36は、CPU31に接続される。メモリカードI/F36は、コネクタに装着されたメモリカード26に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行なう。
【0075】
本実施の形態に従う無線通信モジュール38は、後述するが同種のゲーム装置等との間で無線通信を行なう機能を有する。
【0076】
さらに、CPU31には、RTC40および電源回路41が接続される。RTC40は、時間をカウントしてCPU31に出力する。たとえば、CPU31は、RTC40によって計時された時間に基づいて、現在時刻(日付)等を計算することもできる。電源回路41は、ゲーム装置1が有する電源から供給される電力を制御し、ゲーム装置1の各部品に電力を供給する。
【0077】
さらに、ゲーム装置1は、マイク43およびアンプ44を備えている。マイク43およびアンプ44は、それぞれI/F回路42に接続される。マイク43は、ゲーム装置1に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をI/F回路42に出力する。アンプ44は、I/F回路42からの音声信号を増幅してスピーカ45から出力させる。I/F回路42は、CPU31に接続される。
【0078】
I/F回路42は、マイク43からの音声信号の入力を受ける音声入力制御回路54と、アンプ44に対する音声信号の出力の制御を行なう音声出力制御回路56とを含む。
【0079】
音声入力制御回路54は、マイク43からの音声信号の入力レベルを検知して、音声信号に対するA/D変換を行なったり、音声信号を所定の形式の音声データに変換したりする。
【0080】
音声出力制御回路56は、出力信号がステレオ設定あるいはモノラル設定に従って、アンプ44に出力する音声信号を調整する。
【0081】
操作ボタン14は、図示しないが複数の操作ボタンで構成され、CPU31に接続される。操作ボタン14からCPU31へは、各操作ボタンに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
【0082】
カメラ23は、CPU31に接続される。カメラ23は、CPU31の指示に応じて画像を撮影し、撮影した画像データをCPU31に出力する。たとえば、CPU31は、カメラ23に対して撮影指示を行ない、撮影指示を受けたカメラが画像を撮影して画像データをCPU31に送る。
【0083】
また、LCD12は、CPU31に接続される。LCD12は、CPU31の指示に従って図示しないが操作画面等を表示する。
【0084】
メモリカード26は、図示しないコネクタと着脱可能であり、コネクタと接続された場合にはメモリカードI/F36と接続される。メモリカード26は、ROM27と、バックアップRAM28とが内蔵され、ROM27には、ゲーム装置1で実行するためのアプリケーション等が予め設定(記憶)されている。なお、ROM27には、ROM27に記憶されるアプリケーションを識別するアプリケーション識別情報(ID)が記憶されている。また、バックアップRAM28には、アプリケーションの途中のデータや結果データが記憶(セーブ)される。また、バックアップRAM28は、後述するが、当該アプリケーションを実行した場合に他のゲーム装置に提供するデータ(交換データ)をゲーム装置に保存した場合には交換フラグデータを記憶する。
【0085】
図3を用いて、本実施の形態に従う無線通信モジュール38の構成について説明する。
図3を参照して、本発明の実施の形態に従う無線通信モジュール38は、CPU60と、RF(Radio Frequency)−IC62と、メモリ制御部64と、モジュールI/F76
と、各部と接続されている内部バス74とを含む。
【0086】
メモリ制御部64は、RAM66と、ROM72とを含む。後述するが、RAM66には、アプリケーションID保存領域68と、MACアドレスリスト保存領域70とが設けられている。
【0087】
CPU60は、無線通信に関するプログラムを実行するための演算処理手段である。
CPU60は、メモリ制御部64に格納されているROM72から読出されたプログラムによって無線通信の所定の機能を実現することが可能である。具体的には、後述する携帯端末間通信を実行するためのアプリケーションおよび携帯固定端末間通信を実行するためのアプリケーションが格納されている。
【0088】
CPU60が当該携帯端末間処理を実行するためのアプリケーションを実行することにより、無線通信モジュール38において交換データを交換する通信相手を探索する処理(以下、交換相手探索処理とも称する)が実行される。そして、無線通信モジュール38における交換相手探索処理により交換データを交換する通信相手が見つかった場合には、後述するがゲーム装置1の本体部であるCPU31に通知されて、交換データの授受処理が実行される。具体的には、本体部であるCPU31の指示に従って通信相手との接続を確立する処理が実行されて、接続が確立された後、交換データの授受処理が実行される。
【0089】
同様に、CPU60が携帯固定端末間通信を実行するためのアプリケーションを実行することにより、無線通信モジュール38において、配信データを提供する通信相手を探索する処理(以下、配信相手探索処理とも称する)が実行される。そして、無線通信モジュール38における配信相手探索処理により配信データを提供する通信相手が見つかった場合には、後述するがゲーム装置1の本体部であるCPU31に通知されて、配信データを取得する処理が実行される。具体的には、本体部であるCPU31の指示に従って通信相手である固定端末機器との接続を確立する処理が実行されて、接続が確立された後、配信データを取得する処理が実行される。
【0090】
RF−IC62は、例えば、他のゲーム装置に対してCPU60の指示により送信されるデータを変調して、アンテナ61から電波を送信する。ただし、電波強度は、非常に微弱で、電波法においてユーザが無免許で利用できる程度の小さい値に設定されている。また、無線通信モジュール38は、例えば、他のゲーム装置から送信された電波をアンテナ61で受信して、RF−IC62において受信データが復調される。復調された受信データは、メモリ制御部64のRAM66に格納される。
【0091】
モジュールI/F76は、無線通信モジュール38とゲーム装置1のCPU31等の本
体部とのインタフェースであり、モジュールI/F76を介して無線通信モジュールのアンテナ61で受信し、RAM66に格納された受信データがゲーム装置1の本体部であるCPU31等に出力される。また、CPU31からの指示に従って、保存用データメモリ34に格納されている後述する提供データ(以下、交換データとも称する)がモジュールI/F76を介して無線通信モジュール38に入力され、上述したように送信データとしてアンテナ61から例えば外部の他のゲーム装置に出力することが可能である。
【0092】
なお、外部の他のゲーム装置に送信するデータとしては、モジュールI/F76を介してゲーム装置1の本体部であるCPU31の指示により入力されたデータに限られず、無線通信モジュール38内でCPU60の指示によりメモリ制御部64に設けられたRAM66等に格納されているデータに基づいて生成した交換判定データ(図13の無線フレーム)を送信データとして出力する。後述するが当該交換判定データ(図13の無線フレーム)は、子機側からの接続要求信号として出力される。
【0093】
図4を用いて、本実施の形態に従う保存用データメモリ34のメモリマップについて説明する。
【0094】
図4を参照して、保存用データメモリ34は、交換データ保存領域80と、受信データ保存領域82と、内蔵アプリ保存領域84と、システムプログラム保存領域86と、MACアドレスリスト保存領域88とを含む。
【0095】
交換データ保存領域80は、他のゲーム装置との間でのデータの交換を実行する際に用いられる交換データが保存される領域である。
【0096】
この交換データ保存領域80には、複数の記憶領域である複数のスロットSL1〜SL10が設けられている。この各スロットSLは、アプリケーションで利用可能なデータを他のゲーム装置に提供する交換データとして格納する領域であり、実際にアプリケーションで利用されるデータは、当該アプリケーションを識別するアプリケーション識別データ(ID)に対応付けられた状態で格納される。
【0097】
また、受信データ保存領域82は、他のゲーム装置との間でのデータの交換の際に、他のゲーム装置から送信された交換データを保存する領域である。
【0098】
また、内蔵アプリ保存領域84は、予めゲーム装置1で格納されている、当該ゲーム装置1の種々の機能を実現するために必要な複数のアプリケーション等が保存されている領域である。なお、内蔵アプリ保存領域84には、アプリケーション本体用の保存領域と、各アプリケーション毎に設けられた、当該アプリケーションが占有的に使用するセーブデータを保存するための保存領域(アプリケーション用記憶領域)とが設けられる。
【0099】
したがって、内蔵アプリ保存領域84に複数のアプリケーションが保存されている場合には、それぞれのアプリケーションに対応して設けられた複数の保存領域が設けられる。
【0100】
また、システムプログラム保存領域86は、情報処理装置の本体機能を実現するための本体機能プログラム、例えば、起動するアプリケーションを選択するためのメニュープログラムや、交換データを有する通信相手と互いに交換データの授受を実行するデータ授受処理および配信データを通信相手から取得するデータ取得処理を実行するためのプログラム等が保存されている領域である。
【0101】
また、MACアドレスリスト保存領域88は、無線通信モジュール38において、以前に通信した相手のゲーム装置を識別することが可能なMACアドレスを保存する領域であ
る。当該MACアドレスリスト保存領域88に保存されたMACアドレスは、後述するデータ通信処理を実行する際の通信初期設定処理において用いられる。
【0102】
なお、MACアドレスリスト保存領域88のデータは、ユーザからの所定の操作指示に従ってCPU31の指示により消去することが可能である。また、一定期間後に消去することが可能であるものとする。なお、MACアドレスリスト保存領域88のデータを消去する際には、RAM66のMACアドレスリスト保存領域70に格納されているMACアドレスリストについても、本体部であるCPU31からの指示により消去されるものとする。
【0103】
なお、本例においては、CPU31の指示により、MACアドレスリスト保存領域70に格納されているMACアドレスリストを消去する場合について説明するが、当該CPU31の指示によらず、無線通信モジュール38内で一定期間経過後、CPU60の指示によりRAM66のMACアドレスリスト保存領域70に格納されているMACアドレスリストをリセットして消去するようにすることも可能である。
【0104】
<交換データ保存領域80への格納>
図5を用いて交換データ保存領域80への交換データの格納処理について説明する。
【0105】
本例においては、交換データは、ユーザがゲーム装置1においてアプリケーションを実行中に、当該アプリケーションで利用可能なデータを交換データとして外部のゲーム装置に対して提供する目的で操作することにより、指定した交換データが交換データ保存領域80に格納される。一例として、メモリカード26のROMに格納されたアプリケーションを実行する場合について説明する。
【0106】
ゲーム装置1の主電源がオンし、ユーザが所定の操作を実行することにより、ゲーム装置1のCPU31は、メモリカード26に格納されたデータをロードする(ステップST0)。すなわち、メモリカード26のROM27に格納されているアプリケーションのデータの一部およびバックアップRAM28に格納されている例えば次回のアプリケーションに利用可能な途中データや結果データであるセーブデータ等をメインメモリ32に展開する。なお、メモリカード26に格納されたデータをロードする処理までが、上述したシステムプログラム保存領域86に保存されている本体機能プログラムにより実行される機能であり、それ以降の処理、後述する交換データを格納する機能あるいは追加および消去する機能等についてはメモリカード26のROM27に格納されているアプリケーションにより実行される機能である。
【0107】
そして、次に、メインメモリ32に展開されたデータに基づいてアプリケーションが実行される(ステップST1)。
【0108】
そして、CPU31は、当該アプリケーションの実行により、まず、バックアップRAM28に格納されていたデータに交換データを交換データ保存領域80に格納したことを示す交換フラグデータが含まれていたかどうかを判断する(ステップST2)。
【0109】
ステップST2において、CPU31は、バックアップRAM28に格納されていたデータに交換データを交換データ保存領域80に格納したことを示す交換フラグデータが含まれていたと判断した場合(ステップST1においてYES)には、交換データの追加処理および消去処理を実行する(ステップST22)。当該処理については後述する。そして、当該追加処理および消去処理を実行した後、ステップST4に進む。
【0110】
ステップST2において、CPU31は、バックアップRAM28に格納されていたデ
ータに交換データを交換データ保存領域80に格納したことを示す交換フラグデータが含まれていないと判断した場合(ステップST2においてNO)には、次に、ステップST4に進む。
【0111】
そして、CPU31は、アプリケーションの実行により、交換データの登録イベント(以下、交換データ登録イベントとも称する)が発生したかどうかを判断する(ステップST4)。つまりアプリケーションの実行中に実行しているアプリケーションで利用可能なデータを交換データとして、交換データ保存領域80に格納するかどうかを促すシーンに移行されたかどうかを判断する。
【0112】
ここで、交換データとは、アプリケーションプログラムにおいて利用されるデータであり、より好ましくは、アプリケーションプログラムを実行することによりユーザが獲得または作成したデータである。
【0113】
図示は省略するが、たとえば、交換データ登録イベントとしては、アプリケーションの実行により、バックアップRAMに記憶されているゲーム内で獲得または作成したデータ等、当該アプリケーションで利用可能なデータの一覧をLCD12に表示し、その中からユーザが他人にあげても良いデータを選択するような場合が挙げられる。
【0114】
交換データの格納については、以下に説明するが、例えば、ユーザがゲーム内で手に入れたアイテムや、ゲームを進行することによって成長させたキャラクタのデータを交換データとしてもよい。また、アイテムにはユーザのメッセージを付加してもよい。より具体的には、「手紙」のアイテムにユーザがメッセージを書いて、当該メッセージを交換データとして格納するようにしてもよい。このように、ゲームの実行状況に応じたアイテムやキャラクタを交換データとすることで、データにユーザごとの個性が生じることになり、交換した場合の興趣が高まる。
【0115】
さらに、交換データ登録イベントを、ゲーム上のイベントとして表現しても良い。例えば、ユーザが、ゲーム内で所定の場所にアイテムやキャラクタを置いたり預けたりする操作をした場合に、当該アイテムやキャラクタのデータを交換データとして交換データ保存領域80に格納する処理を実行しても良い。また、ゲーム内で「手紙」のアイテムをボトルに入れて海に流すような演出をして、海に流した「手紙」のアイテムのデータを交換データとして交換データ保存領域80に格納する処理を実行しても良い。
【0116】
CPU31は、交換イベントが発生したと判断された場合(ステップST4においてYES)には、交換データの指定入力があったかどうかを判断する(ステップST6)。
【0117】
一方、CPU31は、交換イベントが発生していないと判断した場合(ステップST4においてNO)には、再び、ステップST2に戻り通常のアプリケーションを実行する。例えば、ユーザの操作に基づいて仮想空間内でオブジェクトを動作させる等のゲーム処理を実行する。
【0118】
次に、ステップST6において、CPU31は、交換の指定入力があったと判断した場合(ステップST6においてYES)には、交換データ保存領域80を確認する(ステップST8)。
【0119】
一方、ステップST6において、CPU31は、交換の指定入力が無いと判断した場合(ステップST6においてNO)には、ユーザが交換を希望しないため、再び、ステップST2に戻り通常のアプリケーションを実行する。
【0120】
次に、CPU31は、交換データ保存領域80を確認した後、交換データ保存領域80に空きスロットがあるどうかを判断する(ステップST10)。
【0121】
ステップST10において、CPU31は、交換データ保存領域80に空きスロットがあると判断した場合(ステップST10においてYES)には、空きスロットに交換データを格納する(ステップST12)。
【0122】
一方、ステップST10において、CPU31は、空きスロットがないと判断した場合(ステップST10においてNO)には、スロットのデータを削除したかどうかを判断する(ステップST11)。図示は省略するが、たとえば空きスロットが無い旨をユーザに通知し、ユーザにいずれかのスロットのデータを削除するように指定させることが可能である。そして、指定があった場合には、当該スロットのデータが削除されるものとする。
【0123】
ステップST11において、CPU31は、スロットのデータが削除されたと判断した場合には、再びステップST10に戻る。そして、空きスロットに交換データを格納する。
【0124】
一方、ステップST11において、CPU31は、スロットのデータが削除されていないと判断した場合には、再び、ステップST2に戻り、通常のアプリケーションを実行する。
【0125】
そして、次に、CPU31は、ユーザからアプリケーションの終了指示が有るかどうかを判断する(ステップST14)。
【0126】
ステップST14において、ユーザからアプリケーションの終了指示が有ると判断した場合には、次のステップST16に進む。一方、ステップST14において、ユーザからアプリケーションの終了指示が有ると判断した場合(ステップST14においてNO)には、再び、ステップST2に戻り、通常のアプリケーションを実行する。
【0127】
次に、ステップST16において、交換データが交換データ保存領域80に格納されたかどうかを判断する。そして、CPU31は、交換データ保存領域80に交換データが格納されたと判断した場合(ステップST16においてYES)には、バックアップRAM28に交換データを交換データ保存領域80に格納したことを示す交換フラグデータをセーブデータ(例えば、獲得したアイテム、キャラクタ、文章や絵などの作成データなどアプリケーションで利用するデータ)とともに保存する(ステップST18)。そして、処理を終了する(エンド)。一方、CPU31は、交換データ保存領域80に交換データが格納されていないと判断した場合(ステップST16においてNO)には、バックアップRAM28にセーブデータのみを保存する(ステップST20)。そして、処理を終了する(エンド)。
【0128】
当該処理により、バックアップRAM28に交換フラグデータを保存することにより、上述したようにステップST2における判断処理において、交換フラグデータが含まれている場合には、交換データの追加処理および消去処理を実行することが可能である。
【0129】
なお、本例においては、一例として、メモリカード26のROMに格納されたアプリケーションを実行した場合における交換データ保存領域80への交換データの格納処理について説明したが、特にメモリカード26に格納されたアプリケーションに限られず、内蔵アプリ保存領域84に格納されているアプリケーションを実行した場合における交換データの格納処理についても、内蔵アプリ保存領域84に各アプリケーション毎に設けられた、当該アプリケーションのセーブデータを保存するための保存領域を上記したバックアッ
プRAMと対応付けて用いることにより実現可能である。
【0130】
また、本例においては、交換データを追加および消去する機能等についてはメモリカード26のROM27に格納されているアプリケーションにより実行される機能として説明したが、システムプログラム保存領域86に保存されている本体機能プログラムにより実行される機能としても良い。具体的には、メモリカード26に格納されたデータをロードした後、展開されているデータ中に、交換フラグデータが有るか否かを判断して、交換データを追加および消去する処理を実行した後、アプリケーションを実行するようにすれば良い。
【0131】
図6を用いて、アプリケーションにより交換データ保存領域80に交換データを格納する場合について説明する。
【0132】
図6(A)においては、たとえば、上述したメモリカードに記憶されたアプリケーション名Aを実行することによって、交換データ保存領域80のスロットSL1にアプリケーション識別情報(ID)であるアプリケーション名Aに対応して交換データが格納されている場合が示されている。なお、本例においては、説明を簡易にするためにアプリケーション名とアプリケーション識別情報とを同一のものとして説明するが、特に同じである必要は無く異なるものとすることも可能である。
【0133】
また、1つのアプリケーションに対して1つの交換データが格納される必要は無く、図6(B)においては、上述したメモリカードに記憶されたアプリケーションCを実行することによって、交換データ保存領域80の2つのスロットSL3,SL4にアプリケーション識別情報(ID)であるアプリケーション名Cに対応付けられた交換データがそれぞれ格納されている場合が示されている。なお、後述するが、アプリケーション識別情報(ID)としてアプリケーション名Cのみではなく、付属情報を追加したデータをスロットSL3,SL4に登録することによって、より、高度な交換条件として用いることができる(図16(C)を参照)。なお、ここで表記されている数字は、1つ目のデータ、2つ目のデータを指し示すものとし、同一のアプリケーション名をアプリケーション識別情報とすることも可能である。
【0134】
また、特にメモリカードのアプリケーションに限られず、図6(C)に示されるように、ゲーム装置1の内蔵アプリ保存領域84に格納されている内蔵アプリDを実行することによって、交換データ保存領域80のスロットSL5にアプリケーション識別情報(ID)であるアプリケーション名Dに対応付けられた交換データが格納されている場合が示されている。
【0135】
そして、本例における交換データ保存領域80の各スロットに格納された交換データは、所定の通信条件が満たされた場合に他のゲーム装置に送信される。
【0136】
<無線通信モジュール38によるデータ通信処理>
図7を用いて、本発明の実施の形態に従う無線通信モジュール38で実行するデータ通信処理のフローについて説明する。本例におけるデータ通信処理は、本体側のCPU31で実行されるアプリケーションの有無に関わらず、実行することが可能である。すなわち、無線通信モジュール38は、本体側のCPU31と並列的に動作することが可能である。
【0137】
なお、本例においては、一例として、本体側のCPU31がアプリケーションを実行している場合において、本体側のCPU31が無線通信モジュール38を利用したアプリケーションを実行する場合には、当該データ通信を実行せず、それ以外の場合に、当該デー
タ通信を実行する場合について説明するが、特にこれに限られず、無線通信モジュール38を利用したアプリケーションを実行する場合において当該データ通信を実行するようにすることも可能である。
【0138】
なお、無線通信モジュール38を利用したアプリケーションを実行する場合とは、たとえば、他のゲーム装置と無線通信モジュール38を利用して通信対戦ゲーム等を実行するような場合であり、それ以外の場合とは、本体側のCPU31が無線通信モジュール38を利用しないアプリケーションを実行する場合や、アプリケーションを実行しない場合、例えば、本体側のCPU31がスリープ状態等の省電力状態である場合等が挙げられる。
【0139】
図7を参照して、まず、本発明の実施の形態に従うデータ通信を実行するために必要な通信初期設定処理を実行する(ステップS0)。通信初期設定処理(図8)については後述するが、当該処理は、上述したシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現されるものである。以降の後述する携帯端末間通信(図10)および携帯固定端末間通信(図30)については、無線通信モジュール38のCPU60がROM72に格納されているアプリケーションを実行することにより実現されるものである。
【0140】
なお、本フローについては、例えば、電源投入時、無線通信が有効に設定された場合に自動的に開始される。
【0141】
次に、無線通信モジュール38のCPU60は、CPU31からデータ通信開始指示があったかどうかを判断する(ステップS2)。たとえば、CPU31は、無線通信モジュール38を利用したアプリケーションが実行されていないと判断した場合に無線モジュール38にデータ通信開始指示を出力する。具体的には、一例として電源投入時に、当該データ通信開始指示を出力する。CPU60は、CPU31からのデータ通信開始指示が有ったと判断した場合には、携帯端末間通信を実行する(ステップS4)。そして、再び、携帯端末間通信を実行する(ステップS6)。そして、次に、携帯固定端末間通信を実行する(ステップS8)。そして、再び、ステップS4に戻って携帯端末間通信を実行する。
【0142】
したがって、無線通信モジュール38は、本体側のCPU31のアプリケーションの実行の有無に関わらず、例えば、アプリケーションを実行していないとき、さらには、省電力状態にあるときでも、上記の携帯端末間通信および携帯固定端末間通信を実行し続ける。
【0143】
なお、本体側のCPU31は、無線通信モジュール38を利用するアプリケーションを実行する場合には、無線通信モジュール38に対して、当該データ通信の中止を指示し、当該データ通信を終了させて、当該アプリケーションに基づく別のデータ通信を実行することも可能である。
【0144】
そして、CPU31は、当該別のデータ通信が終了した場合には、上記で説明した通信初期設定後、データ通信開始指示を出力し、再び携帯端末間通信および携帯固定端末間通信であるデータ通信を再開することが可能である。
【0145】
図8を用いて、本発明の実施の形態に従う通信初期設定の処理について説明する。なお、当該通信初期設定処理は、上述したようにシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現され、無線通信モジュール38側に対する処理についても本体側の機能としてCPU31からの指示により実行、処理される。
【0146】
図8を参照して、まず、本体側のCPU31は、保存用データメモリ34の交換データ保存領域80を確認する(ステップS10)。そして、次に、CPU31は、保存用データメモリ34の交換データ保存領域80に交換データがあるかどうかを判断する(ステップS12)。
【0147】
そして、ステップS12において、CPU31は、交換データ保存領域80のスロットに交換データがあると判断した場合(ステップS12においてYES)には、スロットに格納されている各交換データと対応付けられている各アプリケーション識別情報(ID)すなわちアプリケーション識別情報(ID)のリストおよび保存用データメモリ34のMACアドレスリスト保存領域88に格納されているMACアドレスリストを無線通信モジュール38に出力する。
【0148】
無線通信モジュール側において、無線通信モジュール38のCPU60は、本体側のCPU31から出力されたアプリケーション識別情報(ID)のリストおよびMACアドレスリストをそれぞれRAM66のアプリケーションID保存領域68およびMACアドレスリスト保存領域70にそれぞれ格納する(ステップS16)。そして、処理を終了する(リターン)。
【0149】
当該処理によりデータ通信の準備が完了する。すなわち、無線通信モジュール38のCPU60は、データ通信処理のための交換判定データを生成して他のゲーム装置に送信することが可能となる。
【0150】
具体的には、CPU60は、アプリケーションID保存領域68に格納されている交換データ保存領域80のスロットに格納されている実際の交換データと対応付けられているアプリケーション識別情報(ID)を含めた交換判定データを他のゲーム装置に送信することが可能となる。なお、交換データ保存領域80のスロットに複数の交換データが格納されている場合には、それぞれに対応付けられているアプリケーション識別情報(ID)が交換判定データに含められる。
【0151】
したがって、交換判定データを受信した他のゲーム装置は、その内容であるアプリケーション識別情報(ID)を確認することにより、他のゲーム装置自身が有している交換データに対応付けられているアプリケーション識別情報(ID)と比較して、一致するならば、交換データの交換が可能であり、不一致であるならば交換データの交換が不可能であると判断することが可能となる。
【0152】
また、MACアドレスリスト保存領域70に本体側のCPU31から出力されたMACアドレスリストを格納することにより、後述するMACアドレスフィルタリング処理を実現することが可能となる。
【0153】
一方、ステップS12において、CPU31は、交換データ保存領域80のスロットに交換データがないと判断した場合(ステップS12においてNO)には、上記の処理を実行することなく処理を終了する(リターン)。この場合には、スロットに交換データが無いため後述する携帯端末間通信に従う他のゲーム装置との間での交換データの授受処理は実行されないが、後述する携帯固定端末間通信に従う配信データを受信することが可能である。
【0154】
なお、本例においては、データ通信の準備として、通信処理開始前に、通信初期設定処理として、アプリケーション識別情報(ID)のリストおよびMACアドレスリストをそれぞれRAM66のアプリケーションID保存領域68およびMACアドレスリスト保存
領域70にそれぞれ格納する場合について説明しているがそのタイミングとして例えば、アプリケーションプログラムが交換データ保存領域80に交換データを格納したことに応答して当該通信初期設定処理を実行するようにすることも可能である。
【0155】
図9を用いて、通信初期設定処理によりRAM66に格納されたデータについて説明する。
【0156】
図9(A)を参照して、ここでは、RAM66のアプリケーションID保存領域68にアプリケーション識別情報(ID)A,B,C1,C2,Dがそれぞれ格納されている場合が示されている。
【0157】
なお、図9(A)は、MACアドレスリストには何も格納されていない状態である。
図9(B)においては、図9(A)で説明したアプリケーション識別情報(ID)がアプリケーションID保存領域68に格納されるとともに、MACアドレスリストとして、MACアドレスAD1,AD2,AD3がMACアドレスリスト保存領域70に格納されている場合が示されている。当該MACアドレスリストのデータは、後述する携帯端末間通信におけるMACアドレスの比較によるMACアドレスフィルタリング処理の際に用いられる。
【0158】
図10を用いて、本発明の実施の形態に従う携帯端末間通信について説明する。当該処理は、無線通信モジュール38において交換データを交換する通信相手を探索する交換相手探索処理であり、CPU60が、ROM72に格納されている携帯端末間処理を実行するためのアプリケーションを実行することにより実現される。
【0159】
図10を参照して、まず、CPU60は、所定期間が経過したかどうかを判断する(ステップS20)。そして、ステップS20において、CPU60は、所定期間が経過していないと判断した場合(ステップS20においてNO)には、通信相手(他のゲーム装置)を探索する通信相手サーチ処理を実行する(ステップS22)。通信相手サーチ処理については後述する。
【0160】
そして、次に、CPU60は、通信相手サーチ処理により通信相手が発見されたかどうかを判断する(ステップS24)。
【0161】
ステップS24において、CPU60は、通信相手が発見された場合(ステップS24においてYES)には、MACアドレスを比較する(ステップS26)。具体的には、後述するが受信したデータに含まれるMACアドレスと、上述したMACアドレスリスト保存領域70に格納されているMACアドレスとを比較する。上述したようにMACアドレスは、通信対象を識別する識別情報であり、各ゲーム装置にそれぞれ固有のMACアドレスが割り当てられている。
【0162】
そして、次に、CPU60は、受信したデータに含まれる他のゲーム装置のMACアドレスが、MACアドレスリストに格納されているMACアドレスと一致するかどうかを判断する(ステップS28)。
【0163】
そして、ステップS28において、CPU60は、MACアドレスが一致したと判断した場合(ステップS28においてYES)には、再びステップS20に戻る。すなわち、以降の処理を実行することなく当該MACアドレスに対応する他のゲーム装置との通信を終了する。
【0164】
図11を用いて、本発明の実施の形態に従うMACアドレスを比較する場合の概念図に
ついて説明する。
【0165】
本例においては、ゲーム装置1と、通信相手である他のゲーム装置としてゲーム装置3との通信接続について説明する。
【0166】
図11を参照して、ここでは、ゲーム装置1側において、交換データ保存領域80のスロットSL1〜SL5にそれぞれ交換データが格納されている場合が示されている。
【0167】
そして、無線通信モジュール38のRAM66のアプリケーションID保存領域68には、図9(A)で説明したのと同様にアプリケーション識別情報(ID)A,B,C1,C2,Dがそれぞれ格納されている場合が示されている。
【0168】
なお、MACアドレスリストには何も格納されていない。
次に、ゲーム装置3側について説明する。ゲーム装置3側の対応する同一の構成要素については、「P」の記号をさらに付加している。具体的には、ゲーム装置1の交換データ保存領域80と、ゲーム装置3側の交換データ保存領域80Pとが対応している。
【0169】
また、ゲーム装置1の無線通信モジュール38と、ゲーム装置3側の無線通信モジュール38Pとが対応している。他の場合についても同様である。
【0170】
そして、ゲーム装置3の交換データ保存領域80PのスロットSL1,SL2にそれぞれ交換データが格納されている場合が示されている。
【0171】
ゲーム装置3側においても同様の方式に従って、無線通信モジュール38PのアプリケーションID保存領域68Pにアプリケーション識別情報(ID)B,Eがそれぞれ格納されている場合が示されている。
【0172】
なお、MACアドレスリストには何も格納されていない。当該場合において、ゲーム装置1である自機のMACアドレスはAD0に設定されているものとする。
【0173】
また、ゲーム装置3のMACアドレスはAD1に設定されているものとする。
この場合には、ゲーム装置3のMACアドレスAD1は、ゲーム装置1のMACアドレスリストには登録されていないためMACアドレスは一致しないと判断される。そして、次の処理に進む。
【0174】
なお、本例においては、ゲーム装置1において、MACアドレスリストに登録されているかどうかが判断される場合について説明しているが、ゲーム装置3側においても同様の処理が実行される。
【0175】
図12を用いて、本発明の実施の形態に従うMACアドレスを比較する場合の別の概念図について説明する。
【0176】
図12を参照して、ここでは、図11の構成と比較して、MACアドレスリストに登録されている内容が異なる。具体的には、無線通信モジュール38のMACアドレスリスト保存領域70には、MACアドレスAD1が登録されている場合が示されている。
【0177】
また、同様に、ゲーム装置3側のMACアドレスリスト保存領域70PにMACアドレスAD0が登録されている場合が示されている。
【0178】
この場合には、ゲーム装置3のMACアドレスAD1は、ゲーム装置1のMACアドレ
スリストに登録されておりMACアドレスが一致すると判断される。
【0179】
したがって、当該場合には、以降の処理を実行することなく当該MACアドレスに対応する他のゲーム装置であるゲーム装置3とは通信接続の確立処理を行わない。すなわち、MACアドレスリストに登録されているゲーム装置との間では実質的な通信は実行されない。
【0180】
すなわち、MACアドレスが一致するような、以前に通信処理が実行された装置については、交換データの授受が実行されたかあるいは交換データが無いため通信が終了したか否かのいずれかであるため再度、通信処理する必要がない。
【0181】
したがって、本実施の形態に従うゲーム装置においては、通信範囲のゲーム装置を自動的に繰り返して探知し、見つかったゲーム装置を通信候補に設定する。この場合、同じゲーム装置を何度も探知して見つけてしまう可能性があるが、上述のようなMACアドレスフィルタリング処理により、同じゲーム装置との間で何度も通信することを防止することができ、効率的かつ効果的なデータ通信を実行することが可能である。
【0182】
なお、上述したようにRAM66のMACアドレスリスト保存領域70に格納されているMACアドレスリストは一定期間経過後リセットして消去することも可能であり、消去された場合には、再度、以前に通信処理が実行された装置ともデータ通信を実行することが可能である。すなわち、以前に交換データの授受が実行された装置についても一定期間内に状況が変わり(新たな交換データが設定されているなど)、交換データの授受が可能な状況となっている可能性もあるため再度、交換データの交換が可能か否かを判断して、可能であるならば交換データの授受を実行するようにしても良い。
【0183】
再び図10を参照して、CPU60は、ステップS28において、CPU60は、MACアドレスが一致しないと判断した場合(ステップS28においてNO)には、受信したデータ内容を確認する(ステップS30)。
【0184】
図13を用いて、本発明の実施の形態に従う携帯端末間通信においてゲーム装置において受信される無線フレームの構成について説明する。
【0185】
図13を参照して、まず、先頭部分にヘッダ情報D1が設けられる。この部分にデータ長および上述したMACアドレス等が含まれている。
【0186】
そして、次に、当該データを提供する企業等を識別するためのベンダ情報D3が設けられる。
【0187】
そして、次に、受信データに含まれる通信データの種別を示す通信データ種別情報D4が設けられる。なお、携帯端末間通信の場合には、携帯端末間通信の通信データを示す情報が格納される。
【0188】
そして、以降に設けられたアプリケーション識別情報(ID)の個数を示すアプリケーションID個数情報D5が設けられる。
【0189】
そして、N個のアプリケーション識別情報(ID)6−1〜6−Nが設けられる。
なお、本例においては、N個のアプリケーション識別情報(ID)が設けられている場合が示されているが少なくとも一個以上であれば良い。
【0190】
アプリケーション識別情報(ID)に関して、たとえば、アプリケーション識別情報(
ID)6−1は、アプリケーション識別情報(ID)6−1のヘッダ情報Da1と、データ本体部であるアプリケーションIDデータDc1とに分けられる。なお、ヘッダ情報Da1には、アプリケーションIDデータの長さを示す長さ情報Db1が格納されている。
【0191】
同様に、アプリケーション識別情報(ID)6−2は、アプリケーション識別情報(ID)6−2のヘッダ情報Da2と、データ本体部であるアプリケーションIDデータDc2とに分けられる。なお、ヘッダ情報Da2には、アプリケーションIDデータの長さを示す長さ情報Db2が格納されている。他のアプリケーション識別情報(ID)についても同様であるのでその詳細については繰り返さない。
【0192】
当該アプリケーション識別情報(ID)を無線フレーム中にデータとして含めることにより、当該無線フレームを受信した側において、当該アプリケーション識別情報(ID)に基づいて同じアプリケーションの交換データを有しているかを判断することが可能である。なお、一致するか否かを判断できさえすれば良く、例えば、当該アプリケーション識別情報(ID)そのものを送信するのではなく、ハッシュ関数に基づくハッシュ値を送信して、受信した側においてデータ比較するようにしても良い。他の情報等についても同様にすることも可能である。
【0193】
そして、「その他」情報D7が設けられる。「その他」情報としては、無線通信で用いられる識別コード、SSID(Service Set Identifier)や、電波干渉を避けるために設定される無線チャンネル(周波数)等のデータが格納されている。
【0194】
当該無線フレームは、不特定の相手(ゲーム装置)に対して送信されたものであり、不特定の相手(ゲーム装置)が受信するものである。後述するが親機側のゲーム装置は、宛先を特定せずに当該送信を繰り返し実行する。そして、当該無線フレームを受信したゲーム装置(子機側)は、無線フレームを発信したゲーム装置(親機側)に対して、自己が有するデータに基づく無線フレームを送信し、データの授受に従って不特定のゲーム装置同士が通信処理を実行する。
【0195】
なお、本例における無線フレームについては、一例として、1つのIE(Information Element)データ(ベンダ情報、通信データの種別を示す通信データ種別情報、アプリケ
ーション識別情報等)が含まれた無線フレームについて説明したが、特にこれに限られず、無線通信で用いられるその他のIEデータが複数含められた無線フレームとすることも可能である。その場合には、複数のIEデータに対して無線フレームのヘッダ情報が付加されることになる。
【0196】
再び、図10を参照して、次に、CPU60は、受信したデータに含まれる識別情報が一致しているかどうかを判断する(ステップS32)。具体的には、図13で説明した当該データを提供する企業等を識別するためのベンダ情報が一致するかどうかを判断する。ベンダ情報が一致する場合とは、送信されたデータの発信源が互いに通信接続が可能な同種の装置であることを意味し、異なる場合には、送信されたデータの発信源が互いに通信接続が不可能である全く種類の異なる装置であることを意味する。
【0197】
また、通信データの種別を示す通信データ種別情報が一致するかどうかを判断する。通信データ種別情報が一致する場合とは、携帯端末間通信における通信データであることを意味する。一方、後述するが携帯固定端末間通信における固定端末機器5から出力されるデータに含まれる通信データ種別情報とは異なるため仮に携帯端末間通信において固定端末機器5から出力されたデータを受信した場合であっても通信データ種別情報が異なるため当該データを受信せず同種のゲーム装置とのみ通信することが可能である。ゲーム装置1側の比較の対象であるベンダ情報は予めROM72に登録されているものとする。また
、ゲーム装置1側の比較の対象である通信データ種別情報についても予めROM72に登録されているものとする。CPU60は、携帯端末間通信か携帯固定端末間通信かによって通信データ種別情報を切り替えて、受信したデータに含まれている通信データ種別情報と一致するか否か判断する。
【0198】
すなわち、ステップS32において、CPU60は、識別情報が一致していないと判断した場合(ステップS32においてNO)には、再びステップS20に戻る。したがって、互いに通信接続が不可能である装置とは、以降の処理を実行することなく通信を終了する。
【0199】
次に、ステップS32において、CPU60は、識別情報が一致していると判断した場合(ステップS32においてYES)には、次に、アプリケーション識別情報(ID)を比較する(ステップS33)。
【0200】
そして、CPU60は、アプリケーション識別情報(ID)が一致するかどうかを判断する(ステップS34)。具体的には、自己のアプリケーションID保存領域68に格納されているアプリケーション識別情報(ID)のリストと、受信したデータに含まれるアプリケーション識別情報(ID)のリストを参照して、一致するIDが少なくとも1つ存在するかどうかを判断する。すなわち、ここでは、通信接続により交換可能な交換データを互いに有しているかどうかが判断される。同一のアプリケーション識別情報(ID)であれば、データを交換した場合に同じアプリケーションを実行することにより互いにデータを利用可能である。なお、アプリケーション識別情報(ID)が同じでなくても、データの互換性のあるアプリケーションであることが判定して、そのような関係にあるアプリケーション識別情報(ID)であれば、ステップS34でYesと判断してもよい。
【0201】
図14を用いて、本発明の実施の形態に従うアプリケーション識別情報(ID)を比較する場合の概念図について説明する。
【0202】
図14を参照して、ここでは、図11で説明したゲーム装置1およびゲーム装置3と同様の状況が示されており、無線通信モジュール38のRAM66のアプリケーションID保存領域68には、アプリケーション識別情報(ID)A,B,C1,C2,Dがそれぞれ格納されている場合が示されている。そして、ゲーム装置3側の無線通信モジュール38PのアプリケーションID保存領域68Pにアプリケーション識別情報(ID)B,Eがそれぞれ格納されている場合が示されている。
【0203】
そして、上述したように受信したデータに含まれるアプリケーション識別情報(ID)と、アプリケーションID保存領域68に格納されているアプリケーション識別情報(ID)とが一致するかどうかが判断される。本例においては、アプリケーション識別情報(ID)Bに関して、一致する場合が示されている。
【0204】
再び、図10を参照して、次に、CPU60は、アプリケーション識別情報(ID)が一致すると判断した場合(ステップS34においてYES)には、一致したアプリケーション識別情報(ID)に対応する交換データを有する他のゲーム装置が発見された旨を本体側に通知する(ステップS36)。そして処理を終了する(エンド)。
【0205】
以降、他のゲーム装置である通信相手と接続を確立して、他のゲーム装置との間での一致したアプリケーション識別情報(ID)に対応する交換データの授受を実行するデータ授受処理については、無線通信モジュール38を用いた本体側のCPU31のアプリケーションとして実行されることになる。
【0206】
したがって、本体側に、交換データを有する他のゲーム装置が発見された旨を通知することにより無線通信モジュール38のCPU60のみが独立して実行するデータ通信、すなわち、無線通信モジュール38において交換データを交換する通信相手を探索する交換相手探索処理は終了する。
【0207】
一方、ステップS34において、CPU60は、アプリケーションIDが一致しないと判断した場合(ステップS34においてNO)には、ステップS20に戻る。
【0208】
当該処理により、本例においては、無線通信モジュール38における配信相手探索処理により交換可能な通信相手が見つかった場合にのみ、本体部であるCPU31に通知されて、通信相手との接続が確立されて、交換データの授受が実行される。したがって、例えば、本体部であるCPU31がスリープ状態である場合に、無線通信モジュール38における配信相手探索処理により通信相手が見つかった場合であっても交換が可能でなければ本体部であるCPU31に通知されて通信接続が確立されることはないため、ゲーム装置1全体における省電力を図ることが可能である。
【0209】
ここで、上記で説明したアプリケーション識別情報(ID)の比較について説明する。
図15を用いて、本発明の実施の形態に従うアプリケーション識別情報(ID)の比較について説明する。
【0210】
図15に示されるようにゲーム装置1である自機のアプリケーション識別情報(ID)と、ゲーム装置3からの受信データに含まれているであるアプリケーション識別情報(ID)との比較において、同じ長さのアプリケーションIDデータを比較する。
【0211】
具体的には、アプリケーション識別情報(ID)に含まれている上述したアプリケーションIDデータの長さを示す長さ情報を用いて当該長さ情報が一致するアプリケーションIDとのみデータの比較を実行する。
【0212】
すなわち、データの長さが同じであるため長さが異なるアプリケーションIDデータとの比較を実行する必要が無く高速にアプリケーション識別情報(ID)の一致を判断することが可能である。
【0213】
図16を用いて、本発明の実施の形態に従うアプリケーション識別情報(ID)のさらに別の比較について説明する。
【0214】
図16(A)を参照して、ここでは、アプリケーション識別情報(ID)6−1に関して、アプリケーション識別情報(ID)6−1のヘッダ情報Da1をヘッダ情報Da1#に変更した場合が示されている。具体的には、ヘッダ情報の中にアプリケーションID種別情報がさらに含まれている点が異なる。その他の点については同様である。
【0215】
図16(B)を参照して、ここでは、アプリケーションID種別情報に格納される値と、対応する比較方式とを説明するテーブルが示されている。
【0216】
具体的には、アプリケーションID種別情報が「0」の場合には、同じ長さのアプリケーションIDデータの全体を比較するものとする。
【0217】
ここで、アプリケーションID種別情報が「1」の場合には、同じ長さのアプリケーションIDデータに対してその一部のデータのみ(例えば、予め定められたビット数)を比
較するものとする。
【0218】
また、アプリケーションID種別情報が「2」の場合には、同じ長さのアプリケーションIDデータに対してアプリケーションID識別情報が「0」の場合とは異なる所定の方式によるビット比較を実行するものとする。
【0219】
また、アプリケーションID種別情報が「0」の場合は、図15で説明したのと同様の方式である。一方、アプリケーションID種別情報が「1」の場合には、同じ長さのアプリケーションIDデータに対して所定長ビットを比較して、所定長ビットが一致すればアプリケーションIDデータが一致したと判断するものである。長さが同一で所定長ビットのデータも一致していれば同じアプリケーションIDデータである可能性が高いためより高速にアプリケーション識別情報(ID)の一致を判断することが可能である。
【0220】
図16(C)は、アプリケーションID種別情報が「2」の場合におけるビット比較を説明する図である。
【0221】
図16(C)を参照して、この場合には、アプリケーションIDデータに、アプリケーション名等のアプリケーションを特定する情報(アプリケーション名情報)だけでなく、付属情報が含まれている場合が示されている。
【0222】
そして、付属情報として、自機のアプリケーションIDデータの少なくとも一部を用いて自分が欲しいキャラクタ情報と、自分が相手に渡すキャラクタ情報とを格納する。
【0223】
一方、他のゲーム装置側においても、同様に、アプリケーション名情報だけでなく、付属情報として、アプリケーションIDデータの少なくとも一部を用いて自分が欲しいキャラクタ情報と、自分が相手に渡すキャラクタ情報とを格納する。
【0224】
そして、アプリケーション名情報が一致するか否かを判断するとともに、さらに、自機のアプリケーションIDデータに含まれる自分が欲しいキャラクタ情報と、他のゲーム装置のアプリケーションIDデータに含まれる自分が相手に渡すキャラクタ情報とが一致するか否かを判断し、自機のアプリケーションIDデータに含まれる自分が相手に渡すキャラクタ情報と、他のゲーム装置のアプリケーションIDデータに含まれる自分が欲しいキャラクタ情報とが一致するか否かも判断する。アプリケーション名情報の一致のみならず、さらに、交換条件であるキャラクタ情報が一致する場合にアプリケーション識別情報(ID)の一致と判断する。
【0225】
当該比較方式により、ゲーム装置1である自機と他のゲーム装置3とで実際に交換データを交換する前に、互いに交換する交換データの内容に基づいて互いが希望する交換データであれば交換条件が成立したとして本体側に通知し、いずれか一方でも希望しない場合には交換条件が不成立であるとして通信を終了するためユーザが望む交換データのみを交換することが可能となる。すなわち、高度な交換条件を設定してユーザにとって不本意なデータ授受処理を回避することができ、情報処理装置であるゲーム装置に対する興趣性を増すことができる。
【0226】
図17〜図19を用いて、本発明の実施の形態に従うゲーム装置間における交換データの交換処理について説明する。
【0227】
本例においては、ゲーム装置1と、通信相手である他のゲーム装置としてゲーム装置3との間で交換データの授受処理を実行する場合について説明する。
【0228】
上記したように、CPU31は、無線通信モジュール38から一致したアプリケーション識別情報(ID)に対応する交換データを有する他のゲーム装置が発見された旨の通知
を受けた場合には、データ授受処理を実行する。
【0229】
図17を参照して、まず、一致したアプリケーション識別情報(ID)に対応する交換データが格納されたスロット(交換データ保存領域80)からデータを読み出してデータをコピーする。例えば、メインメモリ32にコピーデータを作成する。そして、当該コピーデータが無線通信モジュール38を介してゲーム装置3に送信される。
【0230】
ゲーム装置3においても、ゲーム装置1と同様に無線通信モジュール38Pから一致したアプリケーション識別情報(ID)に対応する交換データを有するゲーム装置が発見された旨の通知が本体側に出力される。
【0231】
そして、本体側において、一致したアプリケーション識別情報(ID)に対応する交換データが格納されたスロット(効果データ保存領域80)からデータが読み出されてデータがコピーされる。そして、当該コピーデータが無線通信モジュール38Pを介してゲーム装置1に送信される。
【0232】
図18を参照して、ゲーム装置1の本体側であるCPU31は、無線通信モジュール38を介してゲーム装置3から送信された交換データを取得してアプリケーション識別情報(ID)と共に受信データ保存領域82に格納する。
【0233】
同様に、ゲーム装置3の本体側であるCPUは、無線通信モジュール38Pを介してゲーム装置1から送信された交換データを取得してアプリケーション識別情報(ID)と共に受信データ保存領域82Pに格納する。
【0234】
そして、図19を参照して、ゲーム装置1について交換データ保存領域80の交換データが格納されていたスロットのデータを消去する。本例においては、交換データ保存領域80のスロットSL2に対応する領域のデータを消去する。
【0235】
同様に、ゲーム装置3について交換データ保存領域80Pの交換データが格納されていたスロットのデータを消去する。本例においては、交換データ保存領域80PのスロットSL1に対応する領域のデータを消去する。
【0236】
当該処理により、通信相手に送信した交換データを消去することにより交換データの交換処理が完了する。
【0237】
なお、後述するが交換データの消去は、スロットに格納されていた交換データを利用するアプリケーションを起動することにより当該アプリケーションの実行によって交換データ保存領域のスロットのデータが消去されるものとする。
【0238】
なお、本例においては、交換データを消去する場合について説明するが、消去せずにそのまま維持するようにすることも可能である。その場合には、交換データの交換処理ではなく複製データの授受となる。
【0239】
なお、本例においては、一例として、一致したアプリケーション識別情報(ID)に対応する1つの交換データについて、交換処理を行う場合について説明しているが、特に1つの交換データに限られず、一致したアプリケーション識別情報(ID)に対応する交換データが複数個有る場合においてもそれぞれの交換データについて同様の処理が実行される。
【0240】
図20および図21を用いて、上記で説明したデータ授受処理のフローについて説明す
る。当該データ授受処理は、上述したシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現されるものである。当該データ授受処理は、例えば、本体の起動時に開始して、バックグラウンドで継続的に実行される。
【0241】
図20を参照して、まず、CPU31は、無線通信モジュール38からの通知があるかどうかを判断する(ステップS40)。
【0242】
ステップS40において、CPU31は、無線通信モジュール38からの通知があったと判断した場合(ステップS40においてYES)には、次に、スロットに格納された、一致したアプリケーション識別情報(ID)に対応する交換データを交換データ保存領域80からコピーする(ステップS42)。具体的には、CPU31は、図17で説明したようにメインメモリ32にコピーデータを作成する。
【0243】
そして、次に、CPU31は、無線通信モジュール38からの交換データを有するゲーム装置が発見された旨の通知に含まれている通信相手のMACアドレス等の接続情報に基づいて通信相手との間で通信接続を確立する(ステップS44)。なお、本例においては、ゲーム装置が発見された旨の通知後、通信相手との接続を確立する場合、すなわち、CPU31が実行する場合について説明するが、ゲーム装置が発見された旨の通知前、例えば、無線通信モジュール38において図10のステップS34とステップS36との間で通信相手との接続を確立する処理を実行するようにしても良い。
【0244】
互いに交換データの授受を実行する2つのゲーム装置のうち一方が親機となり他方が子機となるが、本例においては、接続要求信号を出力した子機側のゲーム装置から親機側のゲーム装置に交換データを出力するものとする。なお、本例においては、ゲーム装置1が子機となった場合の処理について説明する。
【0245】
次に、CPU31は、自機が親機か子機かを判断するため子機としての接続フラグがオンであるかどうかを判断する(ステップS46)。接続フラグの設定に関しては、後述する。
【0246】
そして、子機としての接続フラグがオンである場合、すなわち、自機が子機であると判断した場合(ステップS46においてYES)には、通信相手(親機)に交換データを送信する(ステップS50)。
【0247】
一方、子機としての接続フラグがオンでない場合、すなわち、自機が親機であると判断した場合(ステップS46においてNO)には、「AA」に進む。「AA」以降の処理は、親機側の処理であり後述する。
【0248】
そして、次に、CPU31は、通信相手(親機)から交換データを一定期間内に受信したかどうかを判断する(ステップS52)。
【0249】
ステップS52において、CPU31は、通信相手(親機)から交換データを一定期間内に受信したと判断した場合には(ステップS52においてYES)には、受信データ保存領域82に交換データを格納する(ステップS54)。具体的には、図18で説明したように無線通信モジュール38を介して受信した交換データをアプリケーション識別情報(ID)と共に受信データ保存領域82に格納する。
【0250】
そして、次に、CPU31は、保存用データメモリ34に設けられているMACアドレスリスト保存領域88に、通信相手を識別するMACアドレスを保存する(ステップS5
8)。当該MACアドレスリスト保存領域88に保存されたMACアドレスがMACアドレスリストの一部に含められ上述した通信初期設定処理で用いられることになる。
【0251】
そして、通信初期設定処理により、MACアドレスリスト保存領域70にMACアドレスリストが保存されるため、上述したMACアドレスフィルタリング処理により、同じゲーム装置との間で何度も通信することを防止することができ、効率的かつ効果的なデータ通信を実行することが可能である。
【0252】
なお、本例においては、本体側の保存用メモリ34に設けられているMACアドレス保存領域88に保存されたMACアドレスリストと、無線通信モジュール38のMACアドレスリスト保存領域70に格納されているMACアドレスリストは同じであり、MACアドレスリスト保存領域70のみを用いて上記で説明した方式を実現しても良い。
【0253】
一方で、本体側の保存用メモリ34にMACアドレス保存領域88を設けて、当該MACアドレス保存領域88にMACアドレスを保存することにより、無線通信モジュール35にアクセスしてMACアドレス保存領域70のデータを編集するよりも、MACアドレスのデータの追加あるいは削除等の編集を容易かつ高速に実行することが可能である。
【0254】
そして、次に、CPU31は、通信相手(親機)との通信を切断する(ステップS60)。すなわち、上記処理により通信相手との間での交換データのデータ授受処理が終了することになる。
【0255】
そして、次に、CPU31は、交換データ通知処理を実行する(ステップS64)。交換データ通知処理については後述する。そして処理を終了する(エンド)
一方、ステップS52において、CPU31は、通信相手(親機)から交換データを一定期間内に受信していないと判断した場合(ステップS52においてNO)には、ステップS60に進む。この場合には、交換データを適切に取得することができなかったためMACアドレスリスト保存領域70にMACアドレスを保存することなく通信を切断する。したがって、再度、携帯端末間通信に従って上述した処理を実行して、交換データのデータ授受処理を再開することが可能である。
【0256】
次に、親機側の処理について説明する。
なお、本例においては、ゲーム装置3が親機となった場合の処理について説明する。
【0257】
親機側の処理についても、図20で説明したステップS40〜S44までは子機側の処理と同様である。
【0258】
図21を参照して、子機としての接続フラグがオンでない場合、すなわち、親機としての接続フラグがオンであり自機が親機であると判断した場合(ステップS46においてNO)には、CPU31は、通信相手(子機)から交換データを一定期間内に受信したかどうかを判断する(ステップS72)。
【0259】
次に、ステップS72において、通信相手(子機)から一定期間内に交換データを受信したと判断した場合(ステップS72においてYES)には、受信データ保存領域82に交換データをアプリケーション識別情報(ID)と共に格納する(ステップS78)。
【0260】
そして、次に、CPU31は、通信相手(親機)に交換データを送信する(ステップS80)。
【0261】
そして、次に「BB」に進む。すなわち、図20のステップS58に進む。以降の処理
については上述したのと同様である。
【0262】
また、ステップS72において、CPU31は、通信相手(親機)から一定期間内に交換データを受信していないと判断した場合(ステップS72においてNO)には、次に、「CC」に進む。すなわち、図20のステップS60に進む。
【0263】
図22を用いて、本発明の実施の形態に従う交換データ通知処理について説明する。当該交換データ通知処理は、上述したシステムプログラム保存領域86に格納されているシステムプログラムをCPU31が実行することにより実現されるものである。
【0264】
図22を参照して、CPU31は、受信データ保存領域82に交換データが格納されたかどうかを判断する(ステップS90)。
【0265】
そして、CPU31は、受信データ保存領域82に交換データが格納されたと判断した場合(ステップS90においてYES)には、効果音を出力する(ステップS92)。具体的には、CPU31は、図2で説明したスピーカ45から予め用意されている効果音を出力するように指示する。そして、次に、CPU31は、交換データの内容を表示する(ステップS94)。具体的には、CPU31は、交換データが有った旨の表示をLCD12に出力するように指示する。そして、処理を終了する(エンド)。
【0266】
当該効果音のスピーカ45からの出力およびLCD12への表示によりユーザは、交換データが格納されたことを認知することが可能である。
【0267】
なお、本例においては、一例としてスピーカ45からの効果音およびLCD12への表示による聴覚および視覚による交換データが授受されたことをユーザに通知する場合について説明したが、いずれか一方でも良い。また、例えば、バイブレーション機能を実行してゲーム装置を振動させて触覚により交換データが授受されたことをユーザに通知するようにしても良い。
【0268】
そして、当該交換データの格納に伴いユーザは、当該交換データを利用可能なアプリケーションを起動するものとする。そして、当該アプリケーションの起動により交換データ保存領域に格納された交換データが消去されるものとする。
【0269】
図23を用いて図5で説明した交換データ追加および消去処理について説明する。
なお、上述したように、交換データ追加および消去処理は、上述したようにメモリカード26のROM27に格納されているアプリケーションプログラムをCPU31が実行することにより実現される。
【0270】
図23を参照して、まず、CPU31は、受信データ保存領域82を確認する(ステップST30)。
【0271】
そして、CPU31は、データをロードした実行中のアプリケーションのアプリケーションIDに対応する交換データが受信データ保存領域82に有るかどうかを判断する(ステップST32)。
【0272】
そして、次に、CPU31は、受信データ保存領域82に当該アプリケーションIDに対応する交換データが有ると判断した場合には、交換データを取得する(ステップST34)。
【0273】
当該処理により取得した交換データを用いたアプリケーションを実行することが可能と
なる。
【0274】
このとき、取得した交換データをセーブデータとして、自己のセーブ領域(バックアップRAM)に転送保存しても良い。また、それに伴い受信データ保存領域82に有る交換データを削除することも可能である。
【0275】
なお、本例においては、交換データが受信データ保存領域82に有るかどうかを判断して、受信データ保存領域82に有る場合には、交換データを取得するとして説明したが、このとき、ユーザに交換データを取得した旨(より好ましくは、取得した交換データの内容)を提示するようにしても良い。さらには、当該交換データを利用するかどうか、ユーザに選択させるようにすることも可能である。
【0276】
そして、次に、CPU31は、スロットに格納されたアプリケーションIDに対応する交換データを削除する(ステップST36)。
【0277】
このとき、自己のセーブ領域(バックアップRAM)にあるセーブデータとして格納されている交換データを削除することも可能である。
【0278】
当該処理により交換データ保存領域80のスロットに格納されたアプリケーションIDに対応する交換データが削除されることにより交換データの交換処理が完了することになる。
【0279】
そして、次に、CPU31は、交換データ保存領域80に格納された交換データを削除したためバックアップRAM28に格納されていた交換フラグデータを消去する(ステップST38)。
【0280】
そして、処理を終了する(リターン)。
そして、図5で説明したようにステップST4に進むことになる。
【0281】
なお、本例においては、アプリケーションを起動した際に、交換フラグデータの有無に基づいて受信データ保存領域82を確認して交換データが有る場合には、当該受信データ保存領域82に記憶された交換データを取得して、交換データ保存領域80に記憶された交換データを削除する方式について説明したが、当該アプリケーションを起動しない場合においても交換データ保存領域80に記憶された交換データを削除するようにしても良い。たとえば、CPU31が受信データ保存領域82に他のゲーム装置からの交換データを格納することに応答して、交換データ保存領域80に記憶された交換データを削除するように指示することにより実現可能である。
【0282】
<通信相手のサーチ処理>
次に、図24〜図27を参照して、前述のステップS22(図10)の通信相手サーチ処理について説明する。
【0283】
この処理では、ゲーム装置1は、親機または子機として他のゲーム装置との間で通信可能な相手を探索するデータ通信を実行する。
【0284】
データ通信を試みる場合には、ゲーム装置1は、通信可能範囲10に存在する他のゲーム装置をサーチすべく、交換判定データを含む接続要求信号を宛先を特定せずに送信する(本実施例においては、交換判定データを含む接続要求信号を定期的に繰り返し送信する方式について説明するが、いわゆるプローブリクエストによる方式等を採用することも可能である)。当該交換判定データは、図13で説明したアプリケーション識別情報等を含
む無線フレームである。
【0285】
本例においては、子機側のゲーム装置からこの交換判定データを含む接続要求信号を送信するものとする。そして、親機側のゲーム装置は、この交換判定データを含む接続要求信号を受信するまで待機し、受信した場合には、これに応答して、子機側のゲーム装置に親機側のゲーム装置の交換判定データを含む接続応答信号を送信する。
【0286】
この接続要求信号および接続応答信号の送受信により、親機および子機としてのゲーム装置間においてデータ通信が可能となる。なお、本例においては、子機側のゲーム装置から接続要求信号を送信し、親機側のゲーム装置は、接続応答信号を送信する場合について説明するが、親機と子機との関係を入れ替えるようにしても良い。
【0287】
このような通信相手サーチ処理では、各ゲーム装置1は、親機として動作して子機からのサーチを受ける処理と、子機として動作して親機をサーチする処理とを交互に繰り返す。
【0288】
具体的には、所定の期間(図24のTcycle)を1周期として、各周期の一部を子機として動作する期間(図24のTsp)とし、残りを親機として動作する期間(Tsc)とする。ここで、子機として動作中のゲーム装置と親機として動作中のゲーム装置との間で接続可能であり、子機として動作中のゲーム装置と子機として動作中のゲーム装置、および、親機として動作中のゲーム装置と親機として動作中のゲーム装置は、接続不可能である。
【0289】
ゆえに、子機として動作する期間と親機として動作する期間を固定的にした場合、偶然にそれらの期間が一致している2つのゲーム装置においてデータ通信が不可能になる。
【0290】
このようなことを防ぐため、1周期における子機として動作する期間と親機として動作する期間の配分または配置をランダムに変えるようにしてある。
【0291】
配分をランダムに変える方式が図24(A)に示すような「通信相手サーチ処理(1)」であり、配置をランダムに変える方式が図24(B)に示すような「通信相手サーチ処理(2)」である。
【0292】
図24(A)を参照して、通信相手サーチ処理(1)は、上述したように、TspおよびTscの配分がランダムに決定される。この処理(1サイクル)の期間を固定値のTcycle(たとえば、4秒)とし、Tscの長さは0からTcycleの間のランダム値に決定され、Tspの長さはTcycleの残りの期間(Tcycle−Tsc)に決まる。また、TscおよびTspが、この順番でTcycleに設定される。Tscの長さは毎回ランダムに決定されるため、Tspの長さもランダムに決定される。これにより、通信可能範囲10に存在する他のゲーム装置との間でデータ通信を実行することができない状態を回避するようにしてある。ただし、Tspが短くなり過ぎると、他のゲーム装置を正確にサーチすることができず、他のゲーム装置との間でデータ通信を実行することができない場合があるため、Tspについての必要最小限の期間を決定しておき、これを確保できない場合には、再度Tscを決定し直すようにしてもよい。
【0293】
なお、この実施例では、Tsc、Tspの順でTcycleを設定するようにしてあるが、逆の順番で設定するようにしてもよい。
【0294】
図24(B)を参照して、通信相手サーチ処理(2)は、上述したように、TspやTscの配置がランダムに決定される。言い換えると、Tspの長さを固定値として、Tc
ycle内におけるTspの開始位置をランダムに設定する。具体的に説明すると、図24(B)に示すように、通信相手サーチ処理(2)では、Tcycle(この実施例では、固定値であり、4秒に設定される。)には、固定値で決定されるTspおよびこのTspを間に挟むようにランダムに決定されるTsc1およびTsc2が設けられる。つまり、Tcycleには、Tsc1、TspおよびTsc2がこの順で設けられる。また、Tsc1の長さは0から(Tcycle−Tsp)の間でランダムに決定され、Tsc2の長さは、Tcycleからランダムに決定されたTsc1およびTspを減算して決定される。
【0295】
なお、本実施例では、Tsc、Tspの順でTcycleが設定されるのでTspの開始位置をランダムにしたが、Tsp、Tscの順でTcycleが設定される場合には、Tscの開始時期をランダムに決定すればよい。
【0296】
通信相手サーチ処理(1)または(2)においては、Tspの期間において、ゲーム装置1は、交換判定データを含む接続要求信号を宛先を特定せずに送信した後、他のゲーム装置3から送信される交換判定データを含む接続応答信号の受信を試みるという処理を繰り返す。また、Tscの期間において、ゲーム装置1は、他のゲーム装置から送信される交換判定データを含む接続要求信号の受信を試みて、受信に成功した場合には、交換判定データを含む接続応答信号を送信するという処理を繰り返す。
【0297】
また、ゲーム装置1は、消費電力の浪費を防止するために、子機として働く期間においては、所定期間(この実施例では、64ms)毎に交換判定データを含む接続要求信号を送信するようにしてある。つまり、間欠的にデータ送信が実行されるのである。
【0298】
以下、通信相手サーチ処理(1)および通信相手サーチ処理(2)について、フロー図を用いて、それぞれ、具体的に説明することにする。
【0299】
図25は通信相手サーチ処理(1)を示すフロー図である。
この図25を参照して、通信相手サーチ処理(1)を開始すると、ステップS151で、Tscを0からTcycleの範囲内でランダムに決定する。図示は省略するが、Tcycleは固定値であるため、Tscが決定されると、Tspも決定される。
【0300】
続くステップS153〜S163が上述のTscにおいて実行される処理であり、親機として動作して子機をサーチする処理がされる。ステップS165〜S177が上述のTspにおいて実行される処理であり、子機として動作して親機をサーチする処理がされる。
【0301】
ステップS153では、子機のサーチを開始する。図示は省略するが、このときタイマ回路をスタートする。次にステップS155で、子機からの交換判定データを含む接続要求信号を受信したかどうかを判断する。
【0302】
子機からの交換判定データを含む接続要求信号を受信した場合(ステップS155においてYES)には、ステップS157で、子機に交換判定データを含む接続応答信号を送信し、その後、ステップS161において、親機としての接続フラグをオンして、通信相手サーチ処理(1)をリターンする。つまり、親機として、他のゲーム装置との間で通信接続が可能であることが判明する。
【0303】
なお、図25においては省略したが、通信相手サーチ処理(1)が開始されたとき、子機としての接続フラグ(後述する親機としての接続フラグも同じ。)はオフ(リセット)される。
【0304】
一方、子機からの交換判定データを含む接続要求信号を全く受信しない場合(ステップS155においてNO)には、ステップS163で、子機サーチ時間すなわち親機として他のゲーム装置からの接続が試みられる期間がTsc秒経過したかどうかを判断する。
【0305】
ステップS163において、子機サーチ時間がTsc秒経過していなければ(ステップS163においてNO)、そのままステップS155に戻る。
【0306】
一方、子機サーチ時間がTsc秒経過すれば(ステップS163においてYES)、ステップS165で、親機のサーチを開始し、つまりタイマ回路をリセットおよびスタートし、ステップS167で、交換判定データを含む接続要求信号を宛先を特定せずに送信する。
【0307】
続くステップS169では、親機からの交換判定データを含む接続応答信号を受信したかどうかを判断する。親機からの交換判定データを含む接続応答信号を受信すれば(ステップS169においてYES)であれば、、ステップS173で、子機としての接続フラグをオンして、通信相手サーチ処理(1)をリターンする。つまり、子機として他のゲーム装置との間で通信接続が可能であることが判明する。
【0308】
一方、親機からの交換判定データを含む接続応答信号を受信しなければ(ステップS169においてNO)、ステップS175で、64ms待機し、続くステップS177で、親機サーチ時間すなわち子機として他のゲーム装置との接続を試みる期間がTsp秒経過したかどうかを判断する。
【0309】
親機サーチ時間がTsp秒経過していなければ(ステップS177においてNO)、そのままステップS167に戻る。
【0310】
一方、親機サーチ時間がTsp秒経過すれば(ステップS177においてYES)、Tcycleの期間が経過したと判断して、通信相手サーチ処理(1)をリターンする。
【0311】
ステップS175で64ms待機することにより、ステップS167において、交換判定データを含む接続要求信号を宛先を特定せずに送信を繰り返す処理が間欠的に行われることになり、消費電力を抑えることができる。
【0312】
図26および図27は、通信相手サーチ処理(2)を示すフロー図である。
図26を参照して、通信相手サーチ処理(2)を開始すると、ステップS181で、Tsc1を0から(Tcycle−Tsp)の範囲内でランダムに決定する。上述したように、通信相手サーチ処理(2)では、TcycleおよびTspは固定値であるため、Tsc1が決定されると、Tsc2も決定される。
【0313】
続くステップS183〜S193が上述のTsc1において実行される処理であり、親機として動作して子機をサーチする処理がされる。ステップS195〜S207が上述のTspにおいて実行される処理であり、子機として動作して親機をサーチする処理がされる。さらに、ステップS209〜S219が上述のTsc2において実行される処理であり、子機として動作して親機をサーチする処理がされる。
【0314】
ステップS183では、子機のサーチを開始する。図示は省略するが、このときタイマ回路をスタートする。次にステップS185で、子機からの交換判定データを含む接続要求信号を受信したかどうかを判断する。
【0315】
子機からの交換判定データを含む接続要求信号を受信すれば(ステップS185においてYES)、ステップS187で、子機に親機の交換判定データを含む接続応答信号を送信し、その後、ステップS191において、親機としての接続フラグをオンして、通信相手サーチ処理(2)をリターンする。つまり、親機として他のゲーム装置との間で通信接続が可能であることが判明する。
【0316】
なお、図26においては省略したが、通信相手サーチ処理(2)が開始されたとき、子機としての接続フラグおよび親機としての接続フラグがオフされるのは、通信相手サーチ処理(1)の場合と同じである。
【0317】
一方、子機からの交換判定データを含む接続要求信号を全く受信しない場合(ステップS185においてNO)には、ステップS193で、子機サーチ時間すなわち親機として他のゲーム装置から接続を試みられる期間がTsc1秒経過したかどうかを判断する。
【0318】
子機サーチ時間がTsc1秒経過していなければ(ステップS193においてNO)、そのままステップS185に戻る。
【0319】
一方、子機サーチ時間がTsc1秒経過すれば(ステップS193においてYES)、ステップS195で、親機のサーチを開始し、つまりタイマ回路をリセットおよびスタートし、ステップS197で、交換判定データを含む接続要求信号を宛先を特定せずに送信する。
【0320】
続くステップS199では、親機から接続応答信号を受信したかどうかを判断する。親機から接続応答信号を受信すれば(ステップS199においてYES)、ステップS203で、子機としての接続フラグをオンして、通信相手サーチ処理(2)をリターンする。つまり、子機として他のゲーム装置との間で通信接続が可能であることが判明する。
【0321】
一方、親機からの交換判定データを含む接続応答信号を受信しなければ(ステップS199においてNO)、ステップS205で、64ms待機し、続くステップS207で、親機サーチ時間すなわち子機として他のゲーム装置との接続を試みる期間がTsp秒経過したかどうかを判断する。
【0322】
親機サーチ時間がTsp秒経過していなければ(ステップS207においてNO)、そのままステップS197に戻る。
【0323】
一方、親機サーチ時間がTsp秒経過すれば(ステップS207においてYES)、図27に示すステップ209で、子機のサーチを開始する。このとき、タイマ回路をリセットおよびスタートする。
【0324】
次のステップS211では、子機からの交換判定データを含む接続要求信号を受信したかどうかを判断する。
【0325】
子機からの交換判定データを含む接続要求信号を受信すれば(ステップS211においてYES)、ステップS213で、子機に交換判定データを含む接続応答信号を送信し、その後、ステップS217において、親機としての接続フラグをオンして、通信相手サーチ処理(2)をリターンする。
【0326】
一方、子機からの交換判定データを含む接続要求信号を全く受信しない場合(ステップS211においてNO)には、ステップS219で、子機サーチ時間がTsc2秒経過したかどうかを判断する。
【0327】
子機サーチ時間がTsc2秒経過していなければ(ステップS219においてNO)、そのままステップS211に戻る。
【0328】
一方、子機サーチ時間がTsc2秒経過すれば(ステップS219においてYES)、Tcycleの期間が経過したと判断して、通信相手サーチ処理(2)をリターンする。
【0329】
図28を用いて本発明の実施の形態に従う交換データの授受のデータの遣り取りについて説明する。
【0330】
図28を参照して、本体側のCPU31においてアプリケーションプログラムの実行による交換データが設定される(シーケンスsq2)。そして、本体側のCPU31は、無線通信モジュール38に対して通信初期設定のためのデータを出力する(シーケンスsq4)。具体的には、交換データのアプリケーションIDのリストおよびMACアドレスリストに関するデータを出力する。そして、当該交換データのアプリケーションIDのリストは、アプリケーションID保存領域68に格納され、MACアドレスリストは、MACアドレスリスト保存領域70に格納される。
【0331】
そして、本体側のCPU31は、データ通信開始指示を無線通信モジュール38に出力する(シーケンスsq6)。
【0332】
これに伴いデータ通信開始指示に応答して無線通信モジュール38によるデータ通信処理が開始される(シーケンスsq8)。そして、まず、無線通信モジュール38において交換データを交換する通信相手を探索する交換相手探索処理である携帯端末間通信が開始される。
【0333】
一方、ゲーム装置3においても、本体側のCPUにおいてアプリケーションプログラムの実行による交換データが設定される(シーケンスsq14)。そして、本体側のCPUは、無線通信モジュール38Pに対して通信初期設定のためのデータを出力する(シーケンスsq16)。具体的には、交換データのアプリケーションIDのリストおよびMACアドレスリストに関するデータを出力する。そして、当該交換データのアプリケーションIDのリストは、アプリケーションID保存領域68Pに格納され、MACアドレスリストは、MACアドレスリスト保存領域70Pに格納される。
【0334】
そして、本体側のCPU31は、データ通信開始指示を無線通信モジュール38Pに出力する(シーケンスsq18)。
【0335】
これに伴いデータ通信開始指示に応答して無線通信モジュール38Pによるデータ通信処理が開始される(シーケンスsq18)。そして、上述したのと同様に、携帯端末間通信が開始される。
【0336】
再び、ゲーム装置1に関して、次に、上述したように携帯端末間通信において、子機サーチが実行される(シーケンスsq21)。そして、次に、親機サーチが実行される(シーケンスsq22)。
【0337】
そして、親機サーチにおいて、ゲーム装置1の無線通信モジュール38からゲーム装置3の無線通信モジュール38Pに対して交換判定データを含む接続要求信号が送信されると(シーケンスsq26)、ゲーム装置3の無線通信モジュール38Pは、ゲーム装置1からの交換判定データを受け付けて、ゲーム装置1の無線通信モジュール38にゲーム装置3の交換判定データを含む接続応答信号を送信する(シーケンスsq28)。
【0338】
そして、無線通信モジュール38は、無線通信モジュール38Pからの交換判定データを含む接続応答信号の入力を受け付ける。
【0339】
当該処理により、上述したように自機であるゲーム装置1については子機としての接続フラグがオンする。また、ゲーム装置3については親機としての接続フラグがオンする。
【0340】
ゲーム装置1においては、子機としての接続フラグがオンとなることに伴い通信相手である親機と通信接続が可能であるすなわち通信相手を発見したと判断する(シーケンスsq30)。また、ゲーム装置3においても親機としての接続フラグがオンとなることに伴い通信相手である子機と通信接続が可能であるすなわち通信相手を発見したと判断する(スケールsq42)。
【0341】
そして、ゲーム装置1においては、通信相手を発見した後、次に、MACアドレスを比較する(シーケンスsq32)。
【0342】
そして、不一致である場合、すなわち、未だ通信していない相手である場合には、次に識別情報を比較する(シーケンスsq34)。
【0343】
そして、識別情報が一致した場合には、アプリケーションIDを比較する(シーケンスsq36)。
【0344】
そして、アプリケーションIDが一致したと判断した場合には、無線通信モジュール38は、本体側のCPUに対して一致したアプリケーション識別情報(ID)に対応する交換データについて、交換が可能なゲーム装置3が発見された旨を通知する(シーケンスsq38)。
【0345】
これにより本体側のCPUは、無線通信モジュール38からの通知によって通信接続が可能な交換相手が発見されたことを認識し、データ授受処理を開始する(シーケンスsq40)。
【0346】
一方、同様の処理に従ってゲーム装置3側においても、通信相手を発見した(シーケンスsq42)後、MACアドレスを比較し(シーケンスsq44)、不一致である場合、すなわち、未だ通信していない相手である場合には識別情報を比較し(シーケンスsq46)、そして、一致した場合にはアプリケーションIDを比較し(シーケンスsq48)、そして、一致した場合には本体側のCPUに交換が可能なゲーム装置1が発見された旨を通知する(スケールsq50)。
【0347】
これにより、ゲーム装置3においてもデータ授受処理が開始される(シーケンスsq52)。
【0348】
そして、次に、ゲーム装置1の本体側のCPU31は、データ授受処理が開始された後、ゲーム装置3との間で通信接続を確立する(シーケンスsq54)。
【0349】
同様に、ゲーム装置3の本体側のCPUにおいてもデータ授受処理が開始された後、ゲーム装置1との間で通信接続を確立する(シーケンスsq56)。
【0350】
そして、ゲーム装置1は、交換データを送信する(シーケンスsq58)。当該交換データは、スロットに格納されている交換データをコピーしたコピーデータである。
【0351】
そして、ゲーム装置3においてゲーム装置1から送信された交換データを受信して、当該交換データを格納する(シーケンスsq60)。
【0352】
そして、ゲーム装置3において、交換データを送信する(シーケンスsq62)。当該交換データは、スロットに格納されている交換データをコピーしたコピーデータである。
【0353】
そして、ゲーム装置1においては、ゲーム装置3から送信された交換データを受信して、当該交換データを格納する(シーケンスsq64)。
【0354】
そして、通信を切断する(シーケンスsq66)。
そして、交換データ通知処理を実行する(シーケンスsq68)。
【0355】
同様に、ゲーム装置3においても、交換データを格納した後、通信を切断する(シーケンスsq70)。そして、交換データ通知処理を実行する(シーケンスsq72)。
【0356】
そして、上述したように交換データの通知を受けて、ユーザが当該交換データを利用するアプリケーションを実行することにより上記で説明したスロットに格納されている交換データの消去処理が実行されて交換データの交換処理が完了する。
【0357】
なお、上記シーケンスにおいて、シーケンスsq4,sq6,sq16,sq18,sq40,sq52〜sq72は、それぞれのゲーム装置において、上述したように本体側の機能でありシステムプログラム保存領域86に格納されたシステムプログラムにより実現されるものである。一方、シーケンスsq8,sq20〜sq38,sq42〜sq50は、上述したように、それぞれのゲーム装置において、無線通信モジュール38におけるメモリ制御部64に格納されているROM72から読出されたプログラムにより実現されるものである。
【0358】
この実施例によれば、無線通信により、所定のアプリケーションで利用される交換データを、当該アプリケーションを実行していない時でも、通信接続が確立するゲーム装置との間で自動で交換することができるので、知人との間で交換データの交渉をする機会が増す。
【0359】
また、この実施例によれば、無線通信により、本体側のCPU31で実行されるアプリケーションの有無に関わらず、所定のアプリケーションで利用される交換データを、当該アプリケーションを実行していない時でも、通信接続が確立するゲーム装置との間で自動で交換することができるので、当該アプリケーションを格納しているメモリカード26を装着している必要は無く、利便性が高く、また、何が交換されるかが分からないため興趣性が増す。
【0360】
また、交換する相手が知人に限定されないため、人が集まる場所に出かければ、交換データを交換することができる可能性が高くなり、交換の楽しさを増大させることができる。つまり、交換データを利用するアプリケーションの興趣性を向上させることができる。
【0361】
また、まず、無線通信モジュール間のみでの通信処理を実行して交換可能であると判断した場合に、初めて本体側のCPUに通知して交換データの授受処理を実行するためCPUの処理負荷を軽減することが可能であるとともに消費電量を低減することが可能である。
【0362】
次に、携帯固定端末間通信について説明する。
図29を用いて本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5との通信
処理の概略について説明する。
【0363】
図29を参照して、固定端末機器5は、無線アクセスポイント装置100と、信号発生装置102とを含む。無線アクセスポイント装置100は、ネットワーク110を介して配信サーバ115と接続される。信号発生装置102は、無線アクセスポイント装置100と接続するために必要な接続情報を含む後述する配信無線フレームを宛先を特定せずに送信する。
【0364】
アクセスポイント装置100は、ゲーム装置1からの配信データの要求に対してネットワーク110を介して配信サーバ115から取得した配信データを送信する。
【0365】
図30を用いて、本発明の実施の形態に従う携帯固定端末間通信について説明する。当該処理は、無線通信モジュール38において、配信データを提供する通信相手を探索する配信相手探索処理であり、CPU60が、ROM72に格納されている携帯固定端末間処理を実行するためのアプリケーションを実行することにより実現される。
【0366】
図30を参照して、まず、CPU60は、所定期間が経過したかどうかを判断する(ステップS100)。そして、ステップS100において、CPU60は、所定期間が経過していないと判断した場合(ステップS100においてNO)には、通信相手(固定端末機器)を探索する通信相手サーチ処理を実行する(ステップS102)。通信相手サーチ処理については後述する。
【0367】
そして、次に、CPU60は、通信相手サーチ処理により通信相手が発見されたかどうかを判断する(ステップS104)。
【0368】
ステップS104において、CPU60は、通信相手が発見された場合(ステップS104においてYES)には、データ内容を確認する(ステップS106)。
【0369】
図31を用いて、本発明の実施の形態に従う携帯固定端末間通信においてゲーム装置において受信される配信無線フレームの構成について説明する。当該データは、固定端末機器5の信号発生装置102から接続要求信号として送信されるものである。
【0370】
図31を参照して、まず、先頭部分にヘッダ情報D1が設けられる。この部分にデータ長およびMACアドレス等が含まれている。
【0371】
そして、次に、当該データを提供する企業等を識別するためのベンダ情報D3が設けられる。
【0372】
そして、次に、受信データに含まれる通信データの種別を示す通信データ種別情報D4が設けられる。なお、携帯固定端末間通信の場合には、携帯固定端末間通信の通信データを示す情報が格納される。
【0373】
そして、以降にアプリケーション識別情報(ID)D7が設けられる。アプリケーション式識別情報(ID)D7は、アプリケーションIDデータの長さを示す長さ情報Dfと、プリケーションIDデータDgとが含まれている。
【0374】
そして、「その他」情報D8が設けられる。「その他」情報としては、上述したように無線通信で用いられる識別コード、SSID(Service Set Identifier)や、電波干渉を避けるために設定される無線チャンネル(周波数)等のデータが格納されている。
【0375】
当該配信無線フレームは、後述するが固定端末機器5から不特定の相手(ゲーム装置)に対して送信されたものであり、不特定の相手(ゲーム装置)が受信するものである。親機側の固定端末機器5は、宛先を特定せずに子機側の通信相手に対して当該送信を繰り返し実行する。
【0376】
なお、本例における配信無線フレームについては、一例として、1つのIE(Information Element)データ(ベンダ情報、通信データの種別を示す通信データ種別情報、アプ
リケーション識別情報等)が含まれた無線フレームについて説明したが、特にこれに限られず、無線通信で用いられるその他のIEデータが複数含められた配信無線フレームとすることも可能である。その場合には、複数のIEデータに対して配信無線フレームのヘッダ情報が付加されることになる。
【0377】
再び、図30を参照して、次に、CPU60は、受信したデータに含まれる識別情報が一致しているかどうかを判断する(ステップS108)。具体的には、図31で説明した当該データを提供する企業等を識別するためのベンダ情報が一致するかどうかを判断する。ベンダ情報が一致する場合とは、送信されたデータの発信源が互いに通信接続が可能な同種の装置であることを意味し、異なる場合には、送信されたデータの発信源が互いに通信接続が不可能である全く種類の異なる装置であることを意味する。
【0378】
また、通信データの種別を示す通信データ種別情報が一致するかどうかを判断する。通信データ種別情報が一致する場合とは、携帯固定端末間通信における通信データであることを意味する。上述した、携帯端末間通信におけるゲーム装置3から出力されるデータに含まれる通信データ種別情報とは異なるため仮にゲーム装置3から出力されたデータを受信した場合であっても通信データ種別情報が異なるため当該データを受信せず固定端末機器5とのみ通信することが可能である。ゲーム装置1側の比較の対象であるベンダ情報は予めROM72に登録されているものとする。また、ゲーム装置1側の比較の対象である通信データ種別情報についても予めROM72に登録されているものとする。CPU60は、携帯端末間通信か携帯固定端末間通信かによって通信データ種別情報を切り替えて、受信したデータに含まれている通信データ種別情報と一致するか否か判断する。
【0379】
すなわち、ステップS108において、CPU60は、識別情報が一致していないと判断した場合(ステップS108においてNO)には、再びステップS100に戻る。
【0380】
したがって、互いに通信接続が不可能である装置とは、以降の処理を実行することなく通信を終了する。
【0381】
次に、ステップS108において、CPU60は、識別情報が一致していると判断した場合(ステップS108においてYES)には、次に、配信データを有する固定端末機器5が発見された旨を本体側に通知する(ステップS110)。そして処理を終了する(エンド)。
【0382】
以降の、通信相手である固定端末機器5と接続を確立して、配信データを取得するデータ取得処理については、無線通信モジュール38を用いた本体側のCPU31のアプリケーションとして実行されることになる。
【0383】
したがって、本体側に、配信データを有する固定端末機器5が発見された旨を通知することにより無線通信モジュール38のCPU60のみが独立して実行するデータ通信すなわち、無線通信モジュール38において配信データを取得する通信相手を探索する配信相手探索処理は終了する。
【0384】
図32を用いて、配信データを取得するデータ取得処理のフローについて説明する。
図32を参照して、まず、CPU31は、無線通信モジュール38からの通知があるかどうかを判断する(ステップS112)。
【0385】
ステップS112において、CPU31は、無線通信モジュール38からの通知があったと判断した場合(ステップS112においてYES)には、無線通信モジュール38からの配信データを有する固定端末機器が発見された旨の通知に含まれている通信相手の接続情報に基づいて通信相手との間で通信接続を確立する(ステップS44)。本例においては、固定端末機器5の無線アクセスポイント装置100との間で通信接続を確立する。
【0386】
そして、次に、CPU31は、配信データの要求を送信する(ステップS114)。
そして、次に、CPU31は、配信データを受信したかどうかを判断する(ステップS116)。
【0387】
そして、ステップS114において、CPU31は、配信データを受信したと判断した場合(ステップS116においてYES)には、受信データ保存領域82に配信データを格納する(ステップS118)。
【0388】
そして、次に、CPU31は、通信相手(固定端末機器5)との通信を切断する(ステップS120)。
【0389】
そして、CPU31は、取得データ通知処理を実行する(ステップS122)。そして、処理を終了する(エンド)。なお、取得データ通知処理については、図22で説明したのと同様に配信データを取得した場合には、効果音あるいは内容を表示することによりユーザに通知する。
【0390】
図33を用いて通信相手サーチ処理(3)を示すフロー図について説明する。
この処理では、ゲーム装置1は、子機として親機である固定端末機器5との間でデータ通信を実行し、ゲーム装置1は、親機である固定端末機器5からの接続要求信号の受信があるまで待機する。この通信相手サーチ処理では、ゲーム装置1は、常に子機として動作して親機をサーチする処理を実行する。なお、本例においては、固定端末機器5からのみ接続要求信号が送信され、ゲーム装置1は当該信号の受信を待つ方式について説明しているが、固定端末機器5は、備え付けの機器であるため、携帯型の移動可能なゲーム装置から接続要求信号を出力するよりも固定端末機器5からのみ接続要求信号を送信した方が効率よくデータ通信を実行することができるからである。
【0391】
図33を参照して、通信相手サーチ処理(3)を開始すると、ステップS300では、固定端末サーチを開始する。図示は省略するが、このときタイマ回路をスタートする。
【0392】
そして、ステップS302で、親機である固定端末機器5の接続要求信号を受信したかどうかを判断する。
【0393】
固定端末機器5からの接続要求信号を受信した場合(ステップS302においてYES)には、ステップS310で、接続フラグをオンして、通信相手サーチ処理(3)をリターンする。つまり、子機として、親機である固定端末機器5との間で通信接続が可能であることが判明する。
【0394】
なお、図33においては省略したが、通信相手サーチ処理(3)が開始されたとき、接続フラグはオフ(リセット)される。
【0395】
一方、親機からの接続要求信号を全く受信しない場合(ステップS302においてNO)には、ステップS304で、子機として固定端末機器5に接続を試みる期間がTsd秒経過したかどうかを判断する。
【0396】
ステップS304において、親機サーチ時間がTsd秒経過していなければ(ステップS304においてNO)、そのままステップS302に戻る。
【0397】
一方、親機サーチ時間がTsd秒経過すれば(ステップS304においてYES)通信相手サーチ処理(3)をリターンする。
【0398】
図34を用いて本発明の実施の形態に従う配信データ取得のデータの遣り取りについて説明する。
【0399】
図34を参照して、シーケンスsq2〜sq8までは、図28で説明したのと同様であり、本体側のCPU31においてアプリケーションプログラムの実行による交換データが設定される(シーケンスsq2)。そして、本体側のCPU31は、無線通信モジュール38に対して通信初期設定のためのデータを出力する(シーケンスsq4)。そして、本体側のCPU31は、データ通信開始指示を無線通信モジュール38に出力する(シーケンスsq6)。
【0400】
これに伴いデータ通信開始指示に応答して無線通信モジュール38によるデータ通信処理が開始される(シーケンスsq8)。
【0401】
そして、まず、無線通信モジュール38において交換データを交換する通信相手を探索する携帯端末間通信が開始され(シーケンスsq100)、所定期間内に通信相手を発見することができなかったものとする。
【0402】
そして、さらに、携帯端末間通信が開始される(シーケンスsq102)この場合においても所定期間内に通信相手を発見することができなかったものとする。
【0403】
そして、次に、携帯固定端末間通信が開始される(シーケンスsq103)。
固定端末機器5は、上述したように、信号発生装置102から接続要求信号を繰り返し発信(送信)する。
【0404】
そして、ゲーム装置1の無線通信モジュール38は、固定端末機器5から送信された接続要求信号の入力を受け付ける(シーケンスsq104)。
【0405】
これにより、上述したように自機であるゲーム装置1について接続フラグがオンする。
ゲーム装置1の無線通信モジュール38においては、接続フラグがオンとなることに伴い通信相手である固定端末機器と通信接続が可能であるすなわち通信相手を発見したと判断する(シーケンスsq108)。
【0406】
そして、ゲーム装置1の無線通信モジュール38においては、識別情報を比較する(シーケンスsq110)。
【0407】
そして、識別情報が一致したと判断した場合には、無線通信モジュール38は、本体側のCPUに対して配信データの提供を受けることが可能な固定端末機器5が発見された旨を通知する(シーケンスsq112)。
【0408】
これにより、本体側のCPUは、無線通信モジュール38からの通知によって、配信デ
ータを配信する固定端末機器5と通信接続が可能であることを認識し、データ取得処理を開始する(sq114)。
【0409】
そして、次に、ゲーム装置1の本体側のCPU31は、データ取得処理が開始された後、配信データ要求を送信する(シーケンスsq116)。
【0410】
固定端末機器5の無線アクセスポイント装置100は、ゲーム装置1からの配信データ要求を受け付けて、当該配信データ要求をネットワーク110を介して配信サーバ115に送信する(シーケンスsq117)。
【0411】
そして、配信サーバ115は、無線アクセスポイント装置100からの配信データ要求に従って、配信データを送信する(シーケンスsq118)。
【0412】
無線アクセスポイント装置100は、ネットワーク110を介する配信サーバ115からの配信データを受け付けた後、当該配信データをゲーム装置1に対して送信する(シーケンスsq119)。
【0413】
そして、ゲーム装置1は、固定端末機器5の無線アクセスポイント装置100から送信された配信データを受け付けて、受信した配信データを格納する(シーケンスsq120)。
【0414】
そして、通信を切断する(シーケンスsq122)。
そして、取得データを通知する(シーケンスsq124)。
【0415】
この実施例によれば、無線通信により、通信接続が確立する固定端末機器5との間で配信データを自動で取得することができる。
【0416】
例えば、配信データが店頭で使用することが可能なクーポンを表示するようなものである場合、ゲーム装置1を携帯しているだけで固定端末機器5と無線通信した場合に当該クーポンを表示する配信データを取得することが可能であり、配信データの取得の楽しさを増大させることができる。
【0417】
また、たとえば、取得したクーポンを表示する配信データを交換データとして上述した交換データ保存領域80のスロットに格納させるようにしても良い。たとえば、当該配信データに上述した交換データとして交換データ保存領域に格納させるアプリケーションを含ませるようにすれば良い。当該処理により、携帯端末間通信において交換データとして他の人に当該配信データを提供することが可能となる。
【0418】
すなわち、固定端末機器5からのみしか取得できない配信データについても携帯端末間通信を利用して他のユーザに提供することが可能となり、配信データの興趣性をさらに増大させることが可能である。
【0419】
なお、図29に示す固定端末機器5においては、無線アクセスポイント装置100と、信号発生装置102とをそれぞれ別々のものとして設けた場合について説明したが両者をまとめて1つの装置とすることも可能である。すなわち、無線アクセスポイント装置100が信号発生装置102の機能を含み接続要求信号を出力するようにしても良い。
【0420】
一方で、図29に示される構成の如く、信号発生装置102を接続要求信号のみを送信する専用の装置として設けることにより、無線アクセスポイント装置100の処理負荷を軽減することにより、例えば、複数のゲーム装置との間での配信データのデータ通信を効
率的に実行させるようにしても良い。
【0421】
また、信号発生装置102として、固定端末機器5と通信するゲーム装置を接続要求信号のみを送信する専用の信号発生装置として用いるようにしても良い。ベンダ情報等、通信相手であるゲーム装置と同様の情報を有しているため簡易に信号発生装置を実現することが可能である。
【0422】
図35を用いて本発明の実施の形態に従う携帯ゲーム装置1と固定端末機器5#との通信処理の概略について説明する。
【0423】
図35を参照して、固定端末機器5#は、図29で説明した固定端末機器5と比較して、通信モジュール104、CPU106、HDD108をさらに含む点で異なる。その他の構成については、図29で説明したのと同様でるのでその詳細な説明は繰り返さない。
【0424】
通信モジュール104は、ネットワーク110と接続されるものとする。CPU106は、通信モジュール104、HDD(Hard Disk Drive)108、信号発生装置102と
それぞれ接続され、これらを制御するものとする。本例においては、一例としてCPU106がHDD108に格納されている配信データを通信モジュール104と接続されているネットワーク110を介して他の装置に出力可能であるものとする。
【0425】
当該構成とすることにより、上記と同様の処理を実行することにより、無線アクセスポイント装置100は、配信サーバ115から配信データを取得することができるとともに、ネットワーク110を介して接続されている通信モジュール104と接続して、例えば、HDD108に格納されている配信データを取得して、無線アクセスポイント装置100からゲーム装置に送信することも可能である。
【0426】
例えば、固定端末機器5#が複数の店舗等にそれぞれ設けられた場合に、各店舗毎に、HDD108に格納されている配信データをカスタマイズすることにより、カスタマイズされた配信データをゲーム装置に送信することが可能であり、ゲーム装置における配信データの取得の楽しさを増大させることができる。
【0427】
<その他の形態>
上述の実施の形態においては、本発明に係る情報処理装置の代表例として、ゲーム装置1について例示したが、これに限定されることはない。すなわち、本発明に係るプログラムとして、パーソナルコンピュータで実行可能なアプリケーションを提供してもよい。このとき、本発明に係るプログラムは、パーソナルコンピュータ上で実行される各種アプリケーションの一部の機能として組み込まれてもよい。
【0428】
なお、この実施例では、携帯型のゲーム装置を用いた情報処理システムについてのみ説明したが、当該携帯型のゲーム装置に変えて、携帯電話機やPDA等の携帯端末でも同様に適用可能である。
【0429】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0430】
1,2,3 携帯型ゲーム装置、5,5# 固定端末機器、10 通信可能範囲、12
LCD、14 操作ボタン、23 カメラ、26 メモリカード、27 ROM、28
バックアップRAM、31,60,106 CPU、32 メインメモリ、33 メモリ制御回路、34 保存用データメモリ、35 プリセットデータ用メモリ、38 無線通信モジュール、40 RTC、41 電源回路、42 I/F回路、43 マイク、44 アンプ、45 スピーカ、61 アンテナ、62 RF−IC、64 メモリ制御部、66 RAM、68 アプリケーションID保存領域、70 MACアドレスリスト保存領域、72 ROM、80 交換データ保存領域、82 受信データ保存領域、84 内蔵アプリ保存領域、86 システムプログラム保存領域、88 MACアドレスリスト保存領域、100 無線アクセスポイント装置、102 信号発生装置、104 通信モジュール、108 HDD、110 ネットワーク、115 配信サーバ。
【特許請求の範囲】
【請求項1】
複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置を複数含む、情報処理システムであって、
前記情報処理装置は、それぞれ、
前記複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、
前記他の情報処理装置と無線通信するための通信手段と、
前記アプリケーションプログラムの実行の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む、情報処理システム。
【請求項2】
前記情報処理装置は、前記データ送受信制御手段により受信した、前記複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能な前記他の情報処理装置において記憶された提供データを記憶する受信データ記憶手段をさらに含む、請求項1記載の情報処理システム。
【請求項3】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、当該アプリケーションプログラムで利用可能なデータを、前記提供データとして前記提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる、請求項1記載の情報処理システム。
【請求項4】
前記提供データ記憶手段は、前記提供データを、当該提供データに係るアプリケーションプログラムを識別可能に記憶する、請求項1記載の情報処理システム。
【請求項5】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、当該アプリケーションプログラムで利用可能なデータを、前記提供データとして、自己のアプリケーションプログラムを識別可能に前記提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる、請求項4記載の情報処理システム。
【請求項6】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記複数のアプリケーションプログラムのうちの第1のアプリケーションプログラムは、前記処理手段を、当該第1のアプリケーションプログラムで利用可能なデータを、第1の提供データとして、前記提供データ記憶手段に記憶させる第1提供データ記憶制御手段として機能させ、
前記複数のアプリケーションプログラムのうちの第2のアプリケーションプログラムは、前記処理手段を、当該第2のアプリケーションプログラムで利用可能なデータを、第2の提供データとして、前記提供データ記憶手段に記憶させる第2提供データ記憶制御手段として機能させる、請求項1記載の情報処理システム。
【請求項7】
前記情報処理装置は、
前記複数のアプリケーションプログラムがそれぞれ使用する複数のアプリケーション用記憶手段をさらに含み、
前記提供データ記憶手段は、前記複数のアプリケーション用記憶手段に記憶されるアプ
リケーションデータに基づく前記提供データが記憶される、共用の記憶手段である、請求項1記載の情報処理システム。
【請求項8】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、前記アプリケーション用記憶手段に記憶されるアプリケーションデータに基づく前記提供データを、前記提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる、請求項7記載の情報処理システム。
【請求項9】
前記情報処理装置は、
前記情報処理装置によるアプリケーションプログラムの実行時に、対応するアプリケーションプログラムの提供データが受信されているか否かを判断する提供データ格納判断手段と、
前記提供データ格納判断手段により前記対応するアプリケーションプログラムの提供データが受信されていると判断した場合には、前記対応するアプリケーションプログラムの提供データを読み出す提供データ取得手段とをさらに含む、請求項1記載の情報処理システム。
【請求項10】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、前記提供データ格納判断手段および前記提供データ取得手段として機能させる、請求項9記載の情報処理システム。
【請求項11】
前記データ送受信制御手段は、他の前記情報処理装置と通信可能になったときに、当該他の情報処理装置との間で無線通信による接続を確立するための処理を実行する接続確立手段を含む、請求項1記載の情報処理システム。
【請求項12】
前記提供データ記憶手段は、複数の提供データを記憶可能であり、
前記データ送受信制御手段は、前記接続確立手段によって前記他の情報処理装置との間の接続が確立されたときに、前記複数の提供データのそれぞれについて、送信する、請求項11記載の情報処理システム。
【請求項13】
前記データ送受信制御手段は、前記通信手段を用いて前記提供データ記憶手段に記憶されている提供データの属性情報と、前記他の情報処理装置の前記提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、前記提供データ記憶手段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信する、請求項1記載の情報処理システム。
【請求項14】
前記提供データごとに、各アプリケーションプログラムを識別する識別データが設定され、
前記データ送受信制御手段は、前記提供データ記憶手段に記憶されている提供データの識別データと、前記他の情報処理装置の前記提供データ記憶手段に記憶されている前記識別データとの比較に基づいて一致した場合には、前記提供データ記憶手段に記憶された前記一致した識別データに対応する提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された前記一致した識別データに対応する提供データを受信する、請求項1記載の情報処理システム。
【請求項15】
前記データ送受信制御手段は、前記提供データ記憶手段に記憶されている提供データの識別データと、前記他の情報処理装置の前記提供データ記憶手段に記憶されている提供デ
ータの識別データとについて、予め設けられている複数の比較方式のうち、前記提供データの識別データについて指定された比較方式に従う比較処理を実行する、請求項14記載の情報処理システム。
【請求項16】
前記情報処理装置は、無線モジュールを含み、
前記無線モジュールは、前記通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の前記情報処理装置と通信可能になったときに、前記提供データ記憶手段に記憶されている提供データの属性情報と、前記他の情報処理装置の前記提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、一致した場合には、前記他の情報処理装置との間でデータ通信を実行するように前記データ送受信制御手段に指示する、請求項1記載の情報処理システム。
【請求項17】
各前記情報処理装置ごとに、各前記情報処理装置を識別することが可能な装置識別情報が設定され、
前記情報処理装置は、通信した前記他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段をさらに含み、
前記データ送受信制御手段は、前記通信手段を用いて、前記装置識別情報記憶手段に記憶されている装置識別情報と、前記他の情報処理装置の装置識別情報との比較に基づいて、前記装置識別情報記憶手段に記憶されている装置識別情報に対応する他の情報処理装置には前記提供データ記憶手段に記憶された提供データを送信しない、請求項1記載の情報処理システム。
【請求項18】
各前記情報処理装置ごとに、各前記情報処理装置を識別することが可能な装置識別情報が設定され、
前記情報処理装置は、
通信した前記他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段と、
無線モジュールとをさらに含み、
前記無線モジュールは、前記通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、前記装置識別情報記憶手段に記憶されている装置識別情報と、前記他の情報処理装置の装置識別情報との比較に基づいて、一致した場合には、前記他の情報処理装置との間でデータ通信を実行するように前記データ送受信制御手段に指示しない、請求項1記載の情報処理システム。
【請求項19】
前記装置識別情報記憶手段に記憶された装置識別情報は、所定条件の場合に消去される、請求項17または18に記載の情報処理システム。
【請求項20】
前記装置識別情報記憶手段に記憶された装置識別情報は、一定時間経過後に消去される、請求項19記載の情報処理システム。
【請求項21】
配信データを送信することが可能な配信用端末をさらに備え、
前記通信手段は、前記他の情報処理装置あるいは前記配信用端末との無線通信の切り替えが可能であり、
前記データ送受信制御手段は、前記アプリケーションの実行の有無に関わらず、前記通信手段が前記配信用端末との無線通信に切り替えられた場合には、前記通信手段を用いて前記配信用端末から送信された配信データを受信する、請求項1記載の情報処理システム。
【請求項22】
前記通信手段は、
前記他の情報処理装置との無線通信を実行する場合に、前記他の情報処理装置を探索するための第1の探索信号を出力し、
前記配信用端末との無線通信を実行する場合には、前記配信用端末からの前記情報処理装置を探索する第2の探索信号の入力があるまで待機する、請求項21記載の情報処理システム。
【請求項23】
前記通信手段は、
前記他の情報処理装置との無線通信を実行する第1の期間において、前記他の情報処理装置を探索するための前記第1の探索信号を不特定の相手に繰り返し送信し、第2の期間において、前記他の情報処理装置から繰り返し送信される前記第1の探索信号の入力があるまで待機し、
前記配信用端末との無線通信を実行する第3の期間において、前記配信用端末から繰り返し送信される前記第2の探索信号の入力があるまで待機する、請求項22記載の情報処理システム。
【請求項24】
前記複数のアプリケーションプログラムのうちの少なくとも1つは、前記情報処理装置と装着されて実行される、着脱可能な外部記憶装置に記憶された外部アプリケーションプログラムであり、
前記提供データ記憶手段は、前記外部アプリケーションプログラムで利用可能なデータを、前記提供データとして記憶し、
前記データ送受信制御手段は、前記外部記憶装置の装着状態の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手段に記憶された前記提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信する、請求項1記載の情報処理システム。
【請求項25】
前記データ送受信制御手段は、前記他の情報処理装置において記憶された提供データを受信した場合には、前記提供データ記憶手段に記憶された提供データを消去する、請求項1記載の情報処理システム。
【請求項26】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、当該アプリケーションプログラムで利用可能な、前記提供データ記憶手段に記憶された前記提供データを消去する提供データ消去手段として機能させる、請求項1記載の情報処理システム。
【請求項27】
複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置であって、
前記複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、
前記他の情報処理装置と無線通信するための通信手段と、
前記アプリケーションプログラムの実行の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む、情報処理装置。
【請求項28】
着脱可能な記憶媒体に記憶された所定のアプリケーションプログラムを実行可能な携帯型の情報処理装置であって、
前記記憶媒体の装着時に、前記所定のアプリケーションプログラムで利用可能なデータを、他の前記情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、
他の前記情報処理装置と無線通信するための通信手段と、
前記記憶媒体の装着の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手
段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを備える、情報処理装置。
【請求項1】
複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置を複数含む、情報処理システムであって、
前記情報処理装置は、それぞれ、
前記複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、
前記他の情報処理装置と無線通信するための通信手段と、
前記アプリケーションプログラムの実行の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む、情報処理システム。
【請求項2】
前記情報処理装置は、前記データ送受信制御手段により受信した、前記複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能な前記他の情報処理装置において記憶された提供データを記憶する受信データ記憶手段をさらに含む、請求項1記載の情報処理システム。
【請求項3】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、当該アプリケーションプログラムで利用可能なデータを、前記提供データとして前記提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる、請求項1記載の情報処理システム。
【請求項4】
前記提供データ記憶手段は、前記提供データを、当該提供データに係るアプリケーションプログラムを識別可能に記憶する、請求項1記載の情報処理システム。
【請求項5】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、当該アプリケーションプログラムで利用可能なデータを、前記提供データとして、自己のアプリケーションプログラムを識別可能に前記提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる、請求項4記載の情報処理システム。
【請求項6】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記複数のアプリケーションプログラムのうちの第1のアプリケーションプログラムは、前記処理手段を、当該第1のアプリケーションプログラムで利用可能なデータを、第1の提供データとして、前記提供データ記憶手段に記憶させる第1提供データ記憶制御手段として機能させ、
前記複数のアプリケーションプログラムのうちの第2のアプリケーションプログラムは、前記処理手段を、当該第2のアプリケーションプログラムで利用可能なデータを、第2の提供データとして、前記提供データ記憶手段に記憶させる第2提供データ記憶制御手段として機能させる、請求項1記載の情報処理システム。
【請求項7】
前記情報処理装置は、
前記複数のアプリケーションプログラムがそれぞれ使用する複数のアプリケーション用記憶手段をさらに含み、
前記提供データ記憶手段は、前記複数のアプリケーション用記憶手段に記憶されるアプ
リケーションデータに基づく前記提供データが記憶される、共用の記憶手段である、請求項1記載の情報処理システム。
【請求項8】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、前記アプリケーション用記憶手段に記憶されるアプリケーションデータに基づく前記提供データを、前記提供データ記憶手段に記憶させる提供データ記憶制御手段として機能させる、請求項7記載の情報処理システム。
【請求項9】
前記情報処理装置は、
前記情報処理装置によるアプリケーションプログラムの実行時に、対応するアプリケーションプログラムの提供データが受信されているか否かを判断する提供データ格納判断手段と、
前記提供データ格納判断手段により前記対応するアプリケーションプログラムの提供データが受信されていると判断した場合には、前記対応するアプリケーションプログラムの提供データを読み出す提供データ取得手段とをさらに含む、請求項1記載の情報処理システム。
【請求項10】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、前記提供データ格納判断手段および前記提供データ取得手段として機能させる、請求項9記載の情報処理システム。
【請求項11】
前記データ送受信制御手段は、他の前記情報処理装置と通信可能になったときに、当該他の情報処理装置との間で無線通信による接続を確立するための処理を実行する接続確立手段を含む、請求項1記載の情報処理システム。
【請求項12】
前記提供データ記憶手段は、複数の提供データを記憶可能であり、
前記データ送受信制御手段は、前記接続確立手段によって前記他の情報処理装置との間の接続が確立されたときに、前記複数の提供データのそれぞれについて、送信する、請求項11記載の情報処理システム。
【請求項13】
前記データ送受信制御手段は、前記通信手段を用いて前記提供データ記憶手段に記憶されている提供データの属性情報と、前記他の情報処理装置の前記提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、前記提供データ記憶手段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信する、請求項1記載の情報処理システム。
【請求項14】
前記提供データごとに、各アプリケーションプログラムを識別する識別データが設定され、
前記データ送受信制御手段は、前記提供データ記憶手段に記憶されている提供データの識別データと、前記他の情報処理装置の前記提供データ記憶手段に記憶されている前記識別データとの比較に基づいて一致した場合には、前記提供データ記憶手段に記憶された前記一致した識別データに対応する提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された前記一致した識別データに対応する提供データを受信する、請求項1記載の情報処理システム。
【請求項15】
前記データ送受信制御手段は、前記提供データ記憶手段に記憶されている提供データの識別データと、前記他の情報処理装置の前記提供データ記憶手段に記憶されている提供デ
ータの識別データとについて、予め設けられている複数の比較方式のうち、前記提供データの識別データについて指定された比較方式に従う比較処理を実行する、請求項14記載の情報処理システム。
【請求項16】
前記情報処理装置は、無線モジュールを含み、
前記無線モジュールは、前記通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の前記情報処理装置と通信可能になったときに、前記提供データ記憶手段に記憶されている提供データの属性情報と、前記他の情報処理装置の前記提供データ記憶手段に記憶されている提供データの属性情報との比較に基づいて、一致した場合には、前記他の情報処理装置との間でデータ通信を実行するように前記データ送受信制御手段に指示する、請求項1記載の情報処理システム。
【請求項17】
各前記情報処理装置ごとに、各前記情報処理装置を識別することが可能な装置識別情報が設定され、
前記情報処理装置は、通信した前記他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段をさらに含み、
前記データ送受信制御手段は、前記通信手段を用いて、前記装置識別情報記憶手段に記憶されている装置識別情報と、前記他の情報処理装置の装置識別情報との比較に基づいて、前記装置識別情報記憶手段に記憶されている装置識別情報に対応する他の情報処理装置には前記提供データ記憶手段に記憶された提供データを送信しない、請求項1記載の情報処理システム。
【請求項18】
各前記情報処理装置ごとに、各前記情報処理装置を識別することが可能な装置識別情報が設定され、
前記情報処理装置は、
通信した前記他の情報処理装置の装置識別情報を記憶する装置識別情報記憶手段と、
無線モジュールとをさらに含み、
前記無線モジュールは、前記通信手段を用いて、通信可能な他の情報処理装置を繰り返して探索し、他の情報処理装置と通信可能になったときに、前記装置識別情報記憶手段に記憶されている装置識別情報と、前記他の情報処理装置の装置識別情報との比較に基づいて、一致した場合には、前記他の情報処理装置との間でデータ通信を実行するように前記データ送受信制御手段に指示しない、請求項1記載の情報処理システム。
【請求項19】
前記装置識別情報記憶手段に記憶された装置識別情報は、所定条件の場合に消去される、請求項17または18に記載の情報処理システム。
【請求項20】
前記装置識別情報記憶手段に記憶された装置識別情報は、一定時間経過後に消去される、請求項19記載の情報処理システム。
【請求項21】
配信データを送信することが可能な配信用端末をさらに備え、
前記通信手段は、前記他の情報処理装置あるいは前記配信用端末との無線通信の切り替えが可能であり、
前記データ送受信制御手段は、前記アプリケーションの実行の有無に関わらず、前記通信手段が前記配信用端末との無線通信に切り替えられた場合には、前記通信手段を用いて前記配信用端末から送信された配信データを受信する、請求項1記載の情報処理システム。
【請求項22】
前記通信手段は、
前記他の情報処理装置との無線通信を実行する場合に、前記他の情報処理装置を探索するための第1の探索信号を出力し、
前記配信用端末との無線通信を実行する場合には、前記配信用端末からの前記情報処理装置を探索する第2の探索信号の入力があるまで待機する、請求項21記載の情報処理システム。
【請求項23】
前記通信手段は、
前記他の情報処理装置との無線通信を実行する第1の期間において、前記他の情報処理装置を探索するための前記第1の探索信号を不特定の相手に繰り返し送信し、第2の期間において、前記他の情報処理装置から繰り返し送信される前記第1の探索信号の入力があるまで待機し、
前記配信用端末との無線通信を実行する第3の期間において、前記配信用端末から繰り返し送信される前記第2の探索信号の入力があるまで待機する、請求項22記載の情報処理システム。
【請求項24】
前記複数のアプリケーションプログラムのうちの少なくとも1つは、前記情報処理装置と装着されて実行される、着脱可能な外部記憶装置に記憶された外部アプリケーションプログラムであり、
前記提供データ記憶手段は、前記外部アプリケーションプログラムで利用可能なデータを、前記提供データとして記憶し、
前記データ送受信制御手段は、前記外部記憶装置の装着状態の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手段に記憶された前記提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信する、請求項1記載の情報処理システム。
【請求項25】
前記データ送受信制御手段は、前記他の情報処理装置において記憶された提供データを受信した場合には、前記提供データ記憶手段に記憶された提供データを消去する、請求項1記載の情報処理システム。
【請求項26】
前記情報処理装置は、前記複数のアプリケーションプログラムを選択的に実行する処理手段をさらに含み、
前記アプリケーションプログラムは、前記処理手段を、当該アプリケーションプログラムで利用可能な、前記提供データ記憶手段に記憶された前記提供データを消去する提供データ消去手段として機能させる、請求項1記載の情報処理システム。
【請求項27】
複数のアプリケーションプログラムと、当該アプリケーションプログラムを選択的に実行可能な携帯型の情報処理装置であって、
前記複数のアプリケーションプログラムのうちの少なくとも1つのアプリケーションプログラムで利用可能なデータを、他の情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、
前記他の情報処理装置と無線通信するための通信手段と、
前記アプリケーションプログラムの実行の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを含む、情報処理装置。
【請求項28】
着脱可能な記憶媒体に記憶された所定のアプリケーションプログラムを実行可能な携帯型の情報処理装置であって、
前記記憶媒体の装着時に、前記所定のアプリケーションプログラムで利用可能なデータを、他の前記情報処理装置に提供する提供データとして記憶する提供データ記憶手段と、
他の前記情報処理装置と無線通信するための通信手段と、
前記記憶媒体の装着の有無に関わらず、前記通信手段を用いて、前記提供データ記憶手
段に記憶された提供データを前記他の情報処理装置に送信し、前記他の情報処理装置において記憶された提供データを受信するデータ送受信制御手段とを備える、情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【公開番号】特開2011−115610(P2011−115610A)
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願番号】特願2011−49986(P2011−49986)
【出願日】平成23年3月8日(2011.3.8)
【分割の表示】特願2009−146449(P2009−146449)の分割
【原出願日】平成21年6月19日(2009.6.19)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願日】平成23年3月8日(2011.3.8)
【分割の表示】特願2009−146449(P2009−146449)の分割
【原出願日】平成21年6月19日(2009.6.19)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
[ Back to top ]