"互いに無線通信可能な親機または子機となる複数の携帯ゲーム装置を用いる無線通信ゲームシステムであって、前記親機は、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストするブロードキャスト手段を備え、前記子機は、通信可能範囲に存在する親機から前記親機パケットを受信する受信手段、前記受信手段で受信した前記親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示する表示手段、前記親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させるための選択手段、および前記選択手段によって選択された親機に対して接続要求を送信する接続要求送信手段を備える、無線通信ゲームシステム。前記ブロードキャスト手段は他の子機と通信ゲームを実行中においても前記親機パケットをブロードキャストする、請求項1記載の無線通信ゲームシステム。前記親機および子機は、所定の通信周期で無線通信するものであり、前記通信周期は、前記親機によって使用される第1タイムスロットと、前記子機によって使用される第2タイムスロットとを含み、前記ブロードキャスト手段は、前記第1タイムスロットでゲームデータを含む前記親機パケットを送信する、請求項1または2記載の無線通信ゲームシステム。前記表示手段は、前記受信手段で受信した前記ゲーム識別情報に基づいて、自機で実行するゲームと通信可能なゲームを実行する親機に限り前記親機リスト表示する、請求項1記載の無線通信ゲームシステム。前記子機は、ゲームプログラムが記憶されたゲームカートリッジを着脱自在に装着可能なものであり、前記表示手段は、現在装着されているゲームカートリッジのゲームと通信不可能なゲームを実行する親機も前記親機リストで表示する、請求項1記載の無線通信ゲームシステム。前記親機パケットは、新たな子機のエントリを受け付けるか否かを示すエントリ受付データをさらに含み、前記表示手段は、前記受信手段で受信した前記エントリ受付データに基づいて、新たな子機のエントリを受け付ける親機に限り前記親機リストで表示する、請求項1記載の無線通信ゲームシステム。前記親機は、子機用プログラムを記憶する子機用プログラム記憶手段、および前記子機からの接続要求に応じて、前記子機用プログラムを前記子機に送信する子機用プログラム送信手段をさらに備え、前記親機パケットは、前記子機用プログラム記憶手段を備えるか否かを示す子機用プログラム保持データをさらに含み、前記表示手段は、前記受信手段で受信した前記子機用プログラム保持データに基づいて、前記子機用プログラム保持データが前記子機用プログラムを備えることを示す場合には、自機で実行するゲームに関係なくその親機を前記親機リストで表示する、請求項1記載の無線通信ゲームシステム。前記親機は、子機が子機用プログラムの送信を必要としない第1プログラムと、子機が子機用プログラムの送信を必要とする第2プログラムとの両方を記憶するものであり、前記親機パケットは、前記親機が前記第1プログラムおよび前記第2プログラムのいずれを実行しているかを示す実行種類データをさらに含み、前記表示手段は、前記受信手段で受信した前記実行種類データに基づいて、前記第1プログラムを実行している親機については、自機で実行するゲームと通信可能なゲームを実行する親機に限り前記親機リストで表示し、前記第2プログラムを実行している親機については、自機で実行するゲームに関係なく、前記親機リストで表示する、請求項1記載の無線通信ゲームシステム。前記子機は、ゲームプログラムが記憶されたゲームカートリッジを着脱自在に装着するものであり、前記表示手段は、前記ゲームカートリッジが装着されていない場合には、前記受信手段で受信した前記子機用プログラム保持データに基づいて、前記子機用プログラム記憶手段を備える親機に限り前記親機リストで表示する、請求項1記載の無線通信ゲームシステム。前記受信手段で受信した前記親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを記憶する親機リスト記憶手段、および前記親機リスト記憶手段に記憶された親機リストを定期的にクリアする親キリストクリア手段をさらに備え、前記表示手段は、前記親機リスト記憶手段に記憶された親機リストに基づいて表示する、請求項1記載の無線通信ゲームシステム。互いに無線通信可能な親機または子機となる複数の携帯ゲーム装置を用いる無線通信ゲームシステムにおける子機接続方法であって、次のステップを含む:親機から、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストするステップ、子機において、通信可能範囲に存在する親機から前記親機パケットを受信するステップ、子機において、前記受信ステップで受信した前記親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示するステップ、子機において、前記親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させるステップ、および子機において、前記選択された親機に対して接続要求を送信させるステップ。互いに無線通信可能な親機または子機となる複数の携帯ゲーム装置を用いる無線通信ゲームシステムのプログラムであって、携帯ゲーム機のプロセサに次のステップを実行させる:親機のプロセサに、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストさせ、子機のプロセサに、通信可能範囲に存在する親機から前記親機パケットを受信させ、子機のプロセサに、前記ステップで受信した前記親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示させ、子機のプロセサに、前記親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させ、そして子機のプロセサに、前記選択された親機に対して接続要求を送信させる。複数の携帯ゲーム装置を用い、一方が親機となり他方が子機となり、無線通信ゲームをプレイする、携帯ゲーム装置であって、親機のために、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストするブロードキャスト手段、子機のために、通信可能範囲に存在する親機から前記親機パケットを受信する受信手段、子機のために、前記受信手段で受信した前記親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示する表示手段、子機のために、前記親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させる手段、および子機のために、前記選択された親機に対して接続要求を送信する送信手段を備える、携帯ゲーム装置。この先行技術では、たとえば、友人などの間で約束をして、同一のゲームを実行するゲーム装置を持ち寄って、それらのゲーム装置で通信を確立した後無線通信ゲームを実行していた。先行技術では、他人のゲーム装置の識別情報やゲーム名などの情報を知るためにはユーザ同士でそれらの情報を口頭で確認するほかなかった。それゆえ、見知らぬ他人のゲーム装置が通信可能範囲にある場合に、その人と無線通信ゲームをおこなうことは現実的に困難である。すなわち、先行技術では、ユーザは通信相手のゲーム装置を自由に、動的に、選択することができなかった。無線通信の利点は自由に持ち運べることであり、また、無線通信可能な範囲にあるゲーム装置と自由に通信できることである。しかしながら、先行技術では、これらの利点を生かせているとはいえない。それゆえに、この発明の主たる目的は、新規な、無線通信ゲームシステム、携帯ゲーム装置、無線通信ゲームシステムにおける子機接続方法およびゲームプログラムを提供することである。この発明の他の目的は、子機が希望する親機を任意に選択できる、無線通信ゲームシステム、携帯ゲーム装置、無線通信ゲームシステムにおける子機接続方法およびゲームプログラムを提供することである。この発明のさらに他の目的は、通信可能範囲にあるゲーム装置と自由に無線通信ゲームをすることを可能にする、無線通信ゲームシステム、携帯ゲーム装置、無線通信ゲームシステムにおける子機接続方法およびゲームプログラムを提供することである。この発明は、互いに無線通信可能な親機または子機となる複数の携帯ゲーム装置を用いる無線通信ゲームシステムである。親機は、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストするブロードキャスト手段を備える。子機は、受信手段と、表示手段と、選択手段と、接続要求送信手段とを備える。受信手段は、通信可能範囲に存在する親機から親機パケットを受信する。表示手段は、受信手段で受信した親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示する。選択手段は、親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させる。接続要求送信手段は、選択手段によって選択された親機に対して接続要求を送信する。請求項2は、請求項1に従属し、ブロードキャスト手段は他の子機と通信ゲームを実行中においても親機パケットをブロードキャストする、無線通信ゲームシステムである。請求項3は、請求項1または2に従属し、親機および子機は、所定の通信周期で無線通信するものである。通信周期は、親機によって使用される第1タイムスロットと、子機によって使用される第2タイムスロットとを含む。ブロードキャスト手段は、第1タイムスロットでゲームデータを含む親機パケットを送信する。請求項4は、請求項1に従属し、表示手段は、受信手段で受信したゲーム識別情報に基づいて、自機で実行するゲームと通信可能なゲームを実行する親機に限り親機リスト表示する、無線通信ゲームシステムである。例えば、ゲーム装置がゲームプログラムが記憶されたゲームカートリッジを着脱自在に装着可能なものである場合には、表示手段は、親機に装着されているゲームカートリッジのゲームと子機に装着されているゲームカートリッジのゲームが通信可能な場合に限りその親機を親機リストに表示する。請求項5は、請求項1に従属し、子機は、ゲームプログラムが記憶されたゲームカートリッジを着脱自在に装着可能なものである。表示手段は、現在装着されているゲームカートリッジのゲームと通信不可能なゲームを実行する親機も親機リストで表示する。請求項6は、請求項1に従属し、親機パケットは、新たな子機のエントリを受け付けるか否かを示すエントリ受付データをさらに含む。表示手段は、受信手段で受信したエントリ受付データに基づいて、新たな子機のエントリを受け付ける親機に限り親機リストで表示する。請求項7は、請求項1に従属し、親機は、子機用プログラムを記憶する子機用プログラム記憶手段、および子機からの接続要求に応じてたとえば、子機はゲームカートリッジを着脱自在に装着可能なものであり、ゲームカートリッジが装着されていない子機からの要求に応じて、子機用プログラムを子機に送信する子機用プログラム送信手段とをさらに備える。親機パケットは、子機用プログラム記憶手段を備えるか否かを示す子機用プログラム保持データをさらに含む。表示手段は、受信手段で受信した子機用プログラム保持データに基づいて、子機用プログラム保持データが子機用プログラムを備えることを示す場合には、自機で実行するゲームに関係なくその親機を親機リストで表示する。請求項8は、請求項1に従属し、親機は、子機が子機用プログラムの送信を必要としない第1プログラムと、子機が子機用プログラムの送信を必要とする第2プログラムとの両方を記憶する。親機パケットは、親機が第1プログラムおよび第2プログラムのいずれを実行しているかを示す実行種類データをさらに含む。表示手段は、受信手段で受信した実行種類データに基づいて、第1プログラムを実行している親機については、自機で実行するゲームと通信可能なゲームを実行する親機に限り親機リストで表示し、第2プログラムを実行している親機については、自機で実行するゲームに関係なく、親機リストで表示する。請求項9は、請求項1に従属し、子機は、ゲームプログラムが記憶されたゲームカートリッジを着脱自在に装着するものである。表示手段は、ゲームカートリッジが装着されていない場合には、受信手段で受信した子機用プログラム保持データに基づいて、子機用プログラム記憶手段を備える親機に限り親機リストで表示する。請求項10は、請求項1に従属し、受信手段で受信した親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを記憶する親機リスト記憶手段、および親機リスト記憶手段に記憶された親機リストを定期的にクリアする親キリストクリア手段をさらに備え、表示手段は、親機リスト記憶手段に記憶された親機リストに基づいて表示する。請求項11は、互いに無線通信可能な親機または子機となる複数の携帯ゲーム装置を用いる無線通信ゲームシステムにおける子機接続方法であって、以下のabcd,およびeのステップを含む。a親機から、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストするステップb子機において、通信可能範囲に存在する親機から親機パケットを受信するステップc子機において、受信ステップで受信した親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示するステップd子機において、親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させるステップe子機において、選択された親機に対して接続要求を送信させるステップ請求項12は、互いに無線通信可能な親機または子機となる複数の携帯ゲーム装置を用いる無線通信ゲームシステムのプログラムであって、携帯ゲーム機のプロセサに次のステップを実行させる:a親機のプロセサに、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストさせ、b子機のプロセサに、通信可能範囲に存在する親機から親機パケットを受信させ、c子機のプロセサに、ステップbで受信した親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示させ、d子機のプロセサに、親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させ、そしてe子機のプロセサに、選択された親機に対して接続要求を送信させる。請求項13は、複数の携帯ゲーム装置を用い、一方が親機となり他方が子機となり、無線通信ゲームをプレイする、携帯ゲーム装置である。親機のために親機として機能するために、自機を識別させるための自機識別情報および自機で実行するゲームを識別させるためのゲーム識別情報を含む親機パケットをブロードキャストするブロードキャスト手段を備える。子機のために子機として機能するために、受信手段と表示手段と選択させる手段と送信手段とを備える。受信手段は、通信可能範囲に存在する親機から親機パケットを受信する。表示手段は、受信手段で受信した親機パケットに基づいて、通信可能範囲に存在する親機の親機リストを表示する。選択させる手段は、親機リストに含まれる親機のうちいずれか1つをプレイヤに選択させる。送信手段は、選択された親機に対して接続要求を送信する。無線通信ゲームシステムは、実施例では、少なくとも2台の携帯ゲーム装置10:実施例で相当する参照符号。以下同じ。を用いて構成される。実施例の携帯ゲーム装置10は、携帯ゲーム機12と、その携帯ゲーム機に装着された無線通信ユニット14とを含む。携帯ゲーム装置は、この無線通信ユニット14を用いて、親機の場合には、第1タイムスロットで親機パケットをブロードキャストし、第2タイムスロットで子機パケットを受信する。子機の場合には、第1タイムスロットで親機パケットを受信し、第2タイムスロットで子機パケットを親機に向けて送信する。このブロードキャスト手段は、実施例では、図29に示す親機の送受信処理のステップS2003およびS2009に相当し、自機識別情報としての親機番号PIDと、ゲーム識別情報としてのゲーム名GameNameとを含む親機パケットをブロードキャストする。子機は、また、実施例の図32のステップS4001で示す受信手段によって、上述の親機パケットを受信する。この親機パケットに基づいて、たとえば図20のステップS15において、親機リストを作成し、図20のステップS23またはステップS25で、その親機リストをLCD18上に表示する。子機のユーザは、その親機リストのたとえばゲーム名を見て、図21のステップS79およびS151で、選択手段を構成する操作キー38の十字キーを操作することによって、親機リストの中から所望の親機を1つ選択する。そして、図24のステップS83すなわち図30および図31の子機の接続処理を実行する。たとえばステップS3023図31に相当する接続要求送信手段が、Eスロットに自機の子機番号CIDを送信することによって、接続要求を親機に対して送信する。したがって、子機は、親機パケットから作成した親機リストに表示されているいずれの親機と接続するか、任意に決定することができる。請求項2は、実施例でいえば図29に相当する。この請求項2の発明によれば、子機は、無線通信ゲームを実行中の親機についても情報PIDやゲーム名等を得ることができる。このため、子機は、たとえば、新たな子機の参加を希望している親機の存在を知ることができるので、途中参加が可能になる。請求項3の第1タイムスロットは実施例でいえば親機スロットであり、第2タイムスロットは子機スロットである。そして、ブロードキャスト手段は、図11に示すペイロードデータを含む親機パケットをブロードキャストするステップS2003。したがって、請求項3の発明によれば、親機は常時親機パケットをブロードキャストするため、子機は、通信可能範囲に存在するすべての親機に関する最新情報を知ることができる。請求項4では、図4に示すように、自機と通信可能なゲームを実行できる親機だけを親機リストで表示する。したがって、請求項4の発明によれば、自機と通信不可能なゲームを実行する親機の表示を省略することにより、子機のプレイヤが親機を選択し易くなる。請求項5のゲームカートリッジは図1で示すカートリッジ16に相当し、そのカートリッジ16はROM42内にゲームプログラムを記憶している。したがって、子機は基本的にはそのゲームプログラムを実行できるだけである。しかしながら、現在装着されているカートリッジが親機と通信不可能なものである場合であっても、他のカートリッジに交換すれば通信可能になるので、請求項5の発明によれば、現在通信できない親機も表示して、カートリッジの交換を促すことができる。請求項6のエントリ受付データは、実施例でいうところのEスロットのffh以外のデータに相当し、したがって、子機は、親機パケットのEスロットにffh以外のデータを設定している親機を、図3に示すよう、ステップS23またはS25図20で表示する。したがって、請求項6の発明によれば、新たな子機のエントリを受け付ける親機のみを表示することにより、無駄な親機情報接続できない親機の情報が省略され、子機のプレイヤが親機を選択し易くなる。請求項7の子機用プログラム記憶手段は実施例でいえば図16の領域76に相当し、この子機用プログラムは図19のステップS77子機の受信処理は図26のステップS145で親機から子機へ転送される。したがって、子機はその子機用プログラムを起動して、そのOCモードでのゲームをプレイすることができる。そこで、請求項7の発明では、子機用プログラム保持データ実施例でいえば、OCフラグが1の親機を図5に示すように表示する。この請求項7の発明によれば、親機は自機用親機用プログラムだけでなく子機用プログラムを記憶し、子機にそのプログラムを送信して、子機はそのプログラムを受信して実行するので、子機側にはゲームプログラムが必要ない。そして、子機は、そのようなOCモード対応ゲームをプレイできる親機を知ることができるので、カートリッジを装着していなくても、手軽にゲームをブレイすることができる。請求項8では、親機には図16に示すカートリッジ16が装着されていて、このカートリッジには第1プログラム通常モードゲームプログラムと、第2プログラムOCモード用ゲームプログラムとの両方を記憶していて、親機パケットには、第1プログラムおよび第2プログラムのいずれを実行しているかを示す実行種類データ、実施例でいえばOCフラグが1または0で送信される。したがって、子機は、そのOCフラグが1の親機は自機と通信できるものだけを表示し、OCフラグが0の親機は自機のゲームに関係なくすべて表示する。請求項8の発明によれば、自機と通信可能であるか、または子機用プログラムを送信可能な状態第2プログラムを実行中である親機の情報だけを表示するので、無駄な親機情報通信不可能な親機の情報などが省略され、子機のプレイヤが親機を選択し易い。請求項9も請求項8と同様に、OCモード対応のゲームプログラムを保持している親機だけを表示する。したがって、請求項9の発明によれば、子機はゲームカートリッジが装着されていない場合には、子機用プログラムを送信することが可能な親機の情報のみ表示するので、子機のプレイヤが親機を選択し易い。請求項10では、親機リストが親機リスト記憶手段実施例でいえば、図18の親機リスト領域80に相当する。に基づいて表示される。そして、実施例のたとえば親機リストクリアタイマ82図18を用いて、その親機リストを定期的にクリアする。そのことによって、通信範囲外のものとなった親機を除外し、そのときの子機の通信可能範囲に存在する親機だけを確実にユーザないしプレイヤに知らせることができる。請求項11-請求項13も、請求項1と同様に、子機がそれの通信可能範囲に存在する親機を知ることができ、容易に、所望の親機を選択して接続することができるという利点がある。この発明によれば、親機が親機情報をブロードキャストしているため、子機は通信可能範囲にどのような親機が存在するのかを知ることができるすなわち、通信ゲームをすることが可能な親機を知ることができる。そして、子機は、いずれの親機と接続するか任意に決定することができる。無線通信ゲームの場合、携帯ゲーム装置を自由に持ち運ぶことができるので、無線通信可能な範囲にある携帯ゲーム装置は刻々と変化するが、この発明によれば、通信可能な範囲にある携帯ゲーム装置の情報を知ることができるので、無線通信ゲームをしたい相手を自由に決定することができる。また、見知らぬ他人の装置が通信可能範囲に入ってくることもあるが、その場合にも情報を得ることができるので、見知らぬ他人と無線通信ゲームを楽しむことも可能である。この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。この発明が適用される無線通信ゲームシステムは、一例として、図1に示すような携帯ゲーム装置10を利用する。携帯ゲーム装置10は、この実施例では、たとえばゲームボーイアドバンスGAMEBOYADVANCE:商品名のような携帯ゲーム機12と、その携帯ゲーム機12の通信コネクタ46に接続された無線通信ユニット14およびカートリッジコネクタ40に接続されたカートリッジ16を含む。つまり、この実施例においては、携帯ゲーム装置10は、携帯ゲーム機12,無線通信ユニット14およびカートリッジ16によって構成される。図1に示す携帯ゲーム機12は、プロセサ20を含み、このプロセサ20は、CPUコア22とそれに関連するブートROM24,LCDコントローラ26,WRAMワーキングRAM:以下同様28,VRAM30および周辺回路32とを含む。ただし、周辺回路32は、音声サウンド回路、DMADirectMemoryAccess回路、タイマ回路、入出力インタフェースIOなどを含む。携帯ゲーム機12の前面に設けられたLCD18には、プロセサ20から表示信号、この実施例ではRGB信号が与えられ、したがって、LCD18ではゲーム画像がカラー表示される。そして、プロセサ20からは、サウンド回路34にオーディオ信号が与えられ、そのオーディオ信号によって、スピーカ36からゲーム音楽や効果音などの音声が出力される。また、携帯ゲーム機12の前面にLCD18を挟んで設けられる十字キーやスタートキー,セレクトキーおよびAボタンならびにBボタンがまとめて操作スイッチ38として示され、この操作スイッチ38からの操作信号がプロセサ20に入力される。したがって、プロセサ20は操作スイッチ38を通して与えられたユーザの指示に従った処理を実行する。携帯ゲーム機16はカートリッジコネクタ40を有し、このカートリッジコネクタ40には、カートリッジ16が接続または挿入される。カートリッジ16にはROM42およびバックアップRAM44が内蔵され、ROM42には携帯ゲーム機12で実行すべきゲームのためのゲームプログラムが、そのゲーム名とともに、予め設定されている。バックアップRAM44は、そのゲームの途中データやゲームの結果データを記憶する。携帯ゲーム機16にはさらに通信コネクタ46が設けられ、この通信コネクタ46には無線通信ユニット14のコネクタ48が接続される。なお、実施例で用いる携帯ゲーム機12は、一例としてゲームボーイアドバンス商品名であり、その場合、上述のカートリッジコネクタ40は、LCD18を前面正面としたときの上面奥側に設けられる32ピンコネクタであり、通信コネクタ46は上面手前側に設けられる6ピンコネクタである。無線通信ユニット14は、ベースバンドIC50を含み、このベースバンドIC50はROM52を含む。ROM52にはたとえばOCDOne-CartridgeDownloadプログラムやその他のプログラムが内蔵され、ベースバンドIC50は、それらのプログラムに従って動作する。なお、ワンカートリッジダウンロードプログラムとは、OCモードワンカートリッジモード:親機にだけゲームカートリッジが装着されていて、子機はその親機カートリッジからの子機用プログラムのダウンロードを受けて動作するモードにおいて、子機へプログラムをダウンロードするためのプログラムである。無線通信ユニット14にはさらにEEPROM54が設けられ、このEEPROM54には、たとえば、ユーザ名が固有に設定される。ベースバンドBaseBandIC50は、そのユーザ名を含んだデータを、RFRadioFrequency-IC56に送出し、RF-IC56は、そのデータを変調して、アンテナ58から電波を送信する。ただし、その電波強度は、非常に微弱で、電波法の規制の対象とならない程度の小さい値に設定されている。また、この無線通信ユニット14には電源回路60が設けられている。この電源回路60は典型的には電池であり、無線通信ユニット14の各コンポーネントに直流電源を供給する。無線通信ユニット14では、また、他の携帯ゲーム装置から送信された電波をアンテナ58で受信してRF-IC56によって復調し、復調信号がベースバンドIC50に入力される。したがって、ベースバンドIC50は、復調信号をデコードして、データを復元し、そのデータをコネクタ48および46を介して携帯ゲーム機12すなわちWRAM28に転送する。この発明に従った実施例の無線通信ゲームシステムでは、複数台の図1に示すような携帯ゲーム装置10を利用する。図2の点線64は自機携帯ゲーム装置62の通信可能範囲を示している。そして、携帯ゲーム装置62は、通信可能範囲64に存在する携帯ゲーム装置に対してエントリできる可能性がある。この通信可能範囲64が上述の微弱電波によって親機と子機との間のデータ通信が可能な範囲であり、この通信可能範囲64の中に存在する複数の携帯ゲーム装置は、どれでもが、任意に、親機となりまたは子機となることができる。図示の例では、その範囲64の内に、4台の親機と3台の子機と、1台の自機62とが存在する。そして、自機62がゲームに参加する場合、親機か子機になる必要がある。自機が子機になる場合には、参加可能な親機を探す必要がある。親機を探すときに、自機がカートリッジを持っているかどうかによって、異なる親機を探す必要がある。まず、自機62が図1に示すカートリッジ16を装着した携帯ゲーム装置である場合であって、かつ自機62の周囲のすべての親機を表示することを示す全表示フラグ後述を1に設定しているときには、図1に示す携帯ゲーム機12のLCD18上に、図3で示すような親機リスト18Aが表示される。この図3の親機リスト18Aには、通信可能範囲64図2内に存在するすべての親機、すなわち、ユーザ名がそれぞれ太郎,一郎および二郎の3台の親機が表示される。したがって、自機のユーザは、自機を子機として動作または機能させたいとき、その自機を接続したい親機を、操作キー38図1に含まれる十字キーでカーソルを動かして指定した後同じく操作キー38に含まれるAボタンを押すことによって、選択することができる。ただし、自機を親機として使いたい場合には、ユーザは、操作キー38に含まれるBボタンを押せばよい。図2では範囲64内に4台の親機が存在するにも拘わらず、図3の親機リスト18Aでは3台の親機だけが表示されるのは、次の理由による。ユーザ名が三郎の親機はエントリスロットESlotがffhに設定されている。このエントリスロットESlotは、新しい子機を希望するかどうかを示すフラグであり、このエントリスロットESlotがffhに設定されているときは、その親機は子機の新規参加を拒否しているので、そのような親機は表示されないのである。ユーザ名三郎の親機は、エントリ可能な最大子機数に達しているため、新しい子機を希望していない。また、図3の親機リスト18Aでは、ユーザ名二郎の親機に丸印Oが付加されている。この丸印Oは、OCモードでのゲームがプレイ可能なことを示す。さらに、全表示フラグがオフの場合には、LCD18には図4に示す親機リスト18Aが表示される。この場合には、自機のゲームカートリッジ、たとえばマリオカート-1MarioKart-1と通信できる親機、この例ではユーザ名が太郎である親機だけが表示される。なぜなら、ユーザ名太郎の親機にはマリオカート-2MarioKart-2のカートリッジが装着されていて、MarioKart-1とMarioKart-2とは相互に通信可能であるからである。なお、通信可能範囲64内に、マリオカート-1のカートリッジが装着されている親機があれば、その親機も当然表示される。上の例では自機子機にMarioKart-1のカートリッジが装着されているが、自機にカートリッジを装着せず、OCモードでゲームをプレイしたい場合には、LCD18には、たとえば図5に示す親機リスト18Aが表示される。この図5の親機リスト18Aでは、OCモードに対応できる親機、この例ではユーザ名二郎の親機だけが表示されるF-ZEROはOCモード対応のゲームである。ただし、この場合には自機にはカートリッジが装着されていないので、自機は親機になれない。したがって、自分が親機になりたいときはBボタンを押してくださいという図3や図4に示すメッセージは表示されない。次に図6-図8を参照して、ユーザ名四郎の親機が図2に示す通信可能範囲64に入り、その後、ユーザ名一郎の親機がその範囲64の外へ出た場合の自機62の表示の変化について説明する。ユーザ名四郎の親機が範囲外にある場合には、図6に示すように、自機62のLCD18上には図3と同じ親機リスト18Aが表示される。その後、ユーザ名四郎の親機が範囲内に進入してきたときには、図7で示す親機リスト18Aが表示される。ただし、自機62の全表示フラグがオンされているものとする。つまり、ユーザ名四郎の親機が、ユーザ名がそれぞれ太郎,一郎および二郎である親機に加えて表示される。そして、さらにユーザ名一郎の親機が範囲64外へ脱したときには、図8の親機リスト18Aが表示される。この親機リストにはユーザ名一郎の親機は表示されない。さらに、自機が親機であってかつ新たな子機の参加を待っているときには、LCD18には、図9に示す子機リスト18Bが表示される。この子機リスト18Bをみると、現在、ユーザ名がそれぞれ五郎,六郎および七郎の子機が自機に接続していることがわかる。ここで、本実施例は親機と子機とが微弱電波によって無線通信をしながらゲームを進行させる無線通信ゲームシステムであるので、本来的には接続の用語を用いるべきではない。しかしながら、親機となる携帯ゲーム装置と子機となる携帯ゲーム装置との間での通信可能な連係状態を表す用語として、有線通信の場合の用語を借りて、便宜上接続と表現することとする。次に、接続状態にある親機と子機とが無線通信する場合のデータパケットフォーマットについて、図10-図14を参照して説明する。図10で示すように、1つのデータサイクルが2ミリ秒で、そのデータサイクルは、1つの親機スロットと複数この実施例では4つの子機スロットとを含む。親機スロットでは図11に具体的に示す親機パケットがブロードキャストBroadcast:放送され、4つの子機スロットでは、それぞれ、図13に具体的に示す子機パケットの親機への送信が行われる。親機パケットは、図11に示すように、同期データを格納しておくためのフィールドsyncをその先頭に有し、その同期データフィールドsyncに後続してその親機の番号識別コードPID格納するためのフィールドPIDを有する。そのフィールドPIDに続いて、ユーザ名フィールドUserNameおよびゲーム名フィールドGameNameが形成される。ユーザ名フィールドUserNameには、EEPROM54図1から読み出されたユーザ名、上の例でいえば太郎,一郎などが登録され、ゲーム名フィールドGameNameにはゲーム名、上の例でいえばMarioKart-1,MarioKart-2,F-Zero,Golf,が登録される。ただし、カートリッジ16図1を装着すれば、このゲーム名フィールドGameNameにはROM42図1から読み出されたゲーム名図16の68が自動的に登録され得る。親機パケットはさらに、フラグOCを含み、このフラグOCは、先に述べたワンカートリッジOCモードに対応できるかどうかを示すフラグである。具体的には、このフラグOCがリセットされているとき、すなわちOC=0のときには、そのときの親機のゲームカートリッジはOCモードに非対応であること、あるいは、OCモードに対応できるが現在は通常モードでプレイしていることを示す。フラグOCがセットされているとき、すなわち、OC=1のとき、OCモードに対応できかつ現在そのOCモードでプレイしていることを示す。したがって、カートリッジを持たないユーザは、このフラグOCが1である親機を探す必要がある。フラグOCに続いて、親機パケットは、フィールドESlot,USlotおよびPayloadを順次含む。EスロットフィールドESlotは、エントリ参加可能な子機スロットの番号が格納される。つまり、新規参加子機が使用できるスロット番号が格納される。UスロットフィールドUSlotには、子機スロットの使用状況が格納される。具体的には、図12に示す。すなわち、UスロットフィールドUSlotは、4つの領域を含み、この4つの領域の各々が子機スロット0,子機スロット1,子機スロット2および子機スロット3に対応する。そして、それぞれの領域には、該当する子機スロットが割り当てられた子機の番号識別コードCIDが格納される。該当する領域に対応する子機番号CIDが登録されているときには、その子機スロットが使用されていることがわかる。ペイロードフィールドPayloadは、ゲーム処理において必要となるゲームデータを送信するためのフィールドであり、親機から子機へ送信されるゲームデータを格納するためのフィールドである。子機から、その子機に割り当てられた子機スロットに送出される子機パケットが図13に示される。すなわち、子機パケットは、子機番号CIDを格納または登録する先頭のフィールドCIDとそれに後続するペイロードフィールドPayloadとを含む。ペイロードフィールドPayloadは子機から親機へ送信されるゲームデータを格納するためのフィールドである。図14が具体例を示す。この図14の例では、親機番号フィールドPIDに58が格納されていて、したがって、親機番号PIDが58であることがわかる。そして、この親機のユーザ名は太郎であり、ゲーム名はMarioKartであり、フラグOCが0で、EスロットフィールドESlotには2が登録されていて、UスロットフィールドUslotを参照することにより子機スロット0には16の子機番号CIDを持った子機が、子機スロット1には130を持った子機がそれぞれ接続されているが、子機スロット2および3はともに0hであるので空きスロットであることがわかる。このような状態の親機に対して新たな子機が接続Entryを試みる場合には、親機のUスロットフィールドUSlotを参照すると子機番号CIDとして16および130が使用されているので、それ以外の子機番号CIDをたとえば乱数を発生させることによって決定する。一例として86が当該子機のCIDとして決定されたとする。したがって、その子機は、ESlotで指定される子機スロット子機スロット2にCID=86を送信する。そして、親機では、子機スロット2で86を受信することにより、子機番号CIDとして86を持つ子機がエントリしたい、ということを知る。そして、そのエントリを許可するかどうかを決定するわけであるが、許可する場合には、親機は、Uslotの子機スロット2に対応する領域に86を設定した図14の最下段に示す親機パケットをブロードキャストし、新たに86の子機番号CIDを持つ子機の参加を許可したことを知らしめる。同時に、新規参加した子機は、Uslotの子機スロット2に対応する領域に自己の子機番号としてCID=86があることを確認し、エントリが成功したことを判断できる。図15はOCモードに対応していないカートリッジのメモリマップを示し、図16はOCモードに対応できるカートリッジのメモリマップを示す。図15の実施例では、カートリッジ16に含まれるROM42図1は、ゲームプログラム領域62およびゲーム名領域64を含む。ゲームプログラム領域62には、共通プログラム66,親機プログラム68および子機プログラム70が予め格納される。共通プログラム66は、自機が親機であると子機であるとに拘わらず使用するプログラムである。すなわち、自機が親機の場合は共通プログラムと後述の親機プログラムが実行され、自機が子機の場合は共通プログラムと後述の子機プログラムが実行される。親機プログラム68は、自機が親機として機能するときにのみ作動するプログラムであり、変数MおよびNを含むとともに、0に設定されたつまりオフされたフラグOCを含む。ただし、変数Mは、その親機に同時に接続可能な子機の最大数を示し、変数Nは1台の子機が使用できる最大スロット数を示す。これらの変数MおよびNは、ともに、ゲームに応じて変化することに留意されたい。子機プログラム70は、自機が子機として機能するときにのみ作動するプログラムであり、上述の変数Nを含む。ゲーム名領域64には、上記ゲームプログラムの名称、たとえばMarioKart-1,Golf,などが予め格納される。図16の実施例でも、カートリッジ16のROM44は、ゲームプログラム領域62およびゲーム名領域64を含む。ゲームプログラム領域62には、図15と同じ共通プログラム66,親機プログラム68および子機プログラム70が設定されるとともに、OCモードに対応するためにOCモード用ゲームプログラム72が設定される。OCモード用ゲームプログラム72は親機プログラム74と転送用子機プログラム76とを含む。親機プログラム74は、フラグOCが1に設定されていることを除いて、先の親機プログラム68と同じである。転送用子機プログラム76は、OCモードでゲームプレイする子機へ転送するためのプログラムであり、変数Nを含む。OCモードでエントリする子機は、親機から転送ダウンロードされるこの転送用子機プログラム76を受けることによって、ゲームに参加できる。図17には図1に示す無線通信ユニット14のEEPROM54のメモリマップが示され、この図17に示すように、EEPROM54は、ユーザ名領域78を含み、このユーザ名領域78にユーザ名、上の例でいえば太郎,一郎などが登録される。図18に示すメモリマップを参照すると、ゲーム機12のWRAM28図1は、親機リスト領域80,親機リストクリアタイマ82,子機リスト領域84,変数領域86および88,ゲーム変数領域90,送信バッファ領域92および受信バッファ領域94を含む。親機リスト領域80は、先に図3等で説明した親機リスト18Aを表示するためのデータ、たとえば親機番号PID,ユーザ名UserName,ゲーム名GameName,フラグOC,EスロットフィールドESlotを一時的に記憶保持しておくための領域である。親機リストクリアタイマ82は、この親機リスト領域80のデータをクリアするまでの時間を計測するためのタイマであり、後述のように、このタイマ82がタイムアップすれば、親機リスト領域80は自動的にクリアされる。子機リスト領域84は、先に図9等で説明した子機リスト18Bを表示するためのデータ、たとえば子機番号CID,ユーザ名UserNameおよびゲーム名GameNameを一時的に記憶保持しておくための領域である。WRAM28はさらに、自機が親機として動作する振舞うときに使用する変数をストアしておくための親機変数領域86および自機が子機として動作する振舞うときに使用する変数をストアしておくための子機変数領域88を含む。親機変数領域86には、たとえば図11に示す各フィールドPID,USlotおよびESlotのためのデータや接続対象の子機の子機番号CIDさらには、変数nおよびmが設定される。ここで、変数nは、1台の子機に現に実際に割り当てられているスロット数を示し、その最大数が先に説明した変数Nで与えられる。また、変数mは、1台の親機に現に実際に同時に接続されている子機数を示し、その最大数が上述の変数Mで与えられる。子機変数領域88には、たとえば図12に示すフィールドCIDのためのデータが設定されるとともに、接続結果を示す変数、復帰結果を示す変数、接続先の親機の親機番号PID、獲得したスロット番号1つまたは複数、同期タイマ、変数n、さらには、全表示フラグが設定される。ゲーム変数領域90はゲーム実行中のゲーム変数、たとえばクリアしたステージ数や獲得したアイテム等を示す変数をストアするための領域である。そして、送信バッファ92および受信バッファ94は、それぞれ、送信データおよび受信データを一時的にストアしておくための領域である。それぞれがこのような構成を有する2台以上の携帯ゲーム装置10がゲームシステムを構築するが、以下に、そのゲームシステムにおける各携帯ゲーム装置10の動作をフロー図を参照して説明する。詳細な説明に先立って、OCモードに対応できないカートリッジが自機に装着されている場合で、かつ、自機が親機になるときには、後述のステップS29図21-ステップS69図23の一連のステップを実行する。また、OCモードに対応できないカートリッジが自機に装着されている場合で、かつ、自機が子機となるときには、後述のステップS83-ステップS109図24の一連のステップを実行することになる。また、自機にOCモード対応可能なカートリッジが装着されてはいるが通常モードOCモードではないでゲームをプレイする場合には、自機を親機とするときには、ステップS29図21-ステップS69図23の一連のステップを実行し、自機を子機とするときには、上と同様に、ステップS83-ステップS109図24の一連のステップを実行することになる。さらに、自機にOCモード対応可能なカートリッジが装着されていて、OCモードでゲームをプレイする場合には、自機は親機としてしか機能できず、この場合には、ステップS75およびS77図19を経て、上述の親機の場合と同様に、図21に示すステップS29から図23に示すステップS69の一連のステップを実行する。そして、自機にカートリッジが装着されていない場合には、自機はOCモードでの子機にしかなれず、したがって、この場合には、ステップS111図19-ステップS147図26の一連のステップを実行することになる。図19は携帯ゲーム機12の動作を示す。携帯ゲーム機12の電源図示せずを投入すると図19の動作が開始され、最初は、ブートBootROM24内に設定された動作を実行する。つまり、最初のステップS1で、プロセサ20は、たとえばコネクタ40図1からの信号に基づいて、カートリッジ16が装着されているかどうかを検出する。そして、ステップS3でカートリッジがあると判断した場合には、カートリッジ16のROM42のプログラムに移行し、続くステップS5で、そのカートリッジがOCモードに対応可能なカートリッジかどうか判断する。このステップS5では、図15のカートリッジOCモードに対応不可能なカートリッジが装着されているか、図16のカートリッジOCモードに対応可能なカートリッジが装着されているかを判断する。ステップS5でNOが判断されたとき、すなわち自機にカートリッジは装着されているがそのカートリッジがOCモード対応カートリッジではないとき、図20のステップS7に進み、図18に示す親機リスト領域80をクリアするとともに、同じく図18に示す親機リストクリアタイマ82をリセットし、さらには図18の子機変数領域88に設定されている全表示フラグをオン1を設定する。なお、親機リストクリアタイマ82はリセット後自動的にタイマのカウントを開始する。その後、ステップS9において、図11で示すような親機パケットの受信を試みる。ステップS11で、親機パケットを成功裏に受信したかどうか判断する。そして、ステップS11でYESを判断したとき、続くステップS13において、その親機パケットをブロードキャストした親機は、親機リストに存在しない親機かどうか判断する。具体的には、このステップS13では、受信した親機パケットのデータ図18に示すWRAM28の受信バッファ94に一時的にストアされているデータのうちの親機PIDやユーザ名が、親機リスト80図18に登録されている親機かどうか判断する。このステップS13でYESが判断されると、つまり、新規な親機の場合には、続くステップS15において、プロセサ20は、親機リスト80に、親機パケットに含まれた親機IDPID,ユーザ名UserName,ゲーム名GameName,OCフラグOCおよびエントリスロットESlotを新たに登録する。先のステップS11でNOを判断したとき、またはステップS15での登録を終えたとき、次のステップS17で、先のステップS7でリセットした親機リストクリアタイマ82図18の値が2秒以上になったかどうか判断する。YESなら、ステップS19で親機リスト80をクリアするとともに、親機リストクリアタイマ82をリセットする。ここで、親機リストクリアタイマ82をリセットするのは次の理由による。すなわち、図8を参照して前述したようにある親機図8の一郎が通信可能範囲から外れた場合に、その親機を親機リスト80から削除しなければならない。そのため、定期的にこの実施例では2秒ごとに、親機リスト80をクリアして通信可能範囲の親機のリストへの登録を最初からおこなうことによって、通信可能範囲から外れた親機が親機リストに残らないようにしているのである。ステップS17でNOを判断したとき、またはステップS19を経た後、次のステップS21において、プロセサ20は、上述の全表示フラグがオン1かどうか判断する。なお、実施例では、この全表示フラグは、デフォルトとして、1またはオンに設定されている。全表示フラグがオンのとき、ステップS23で、親機リストに登録されている親機のうち、エントリスロットESlotがffhでない親機、つまり、新たな子機のエントリを許容するすべて親機の情報具体的には、ユーザ名UserNameおよびゲーム名GameNameを図3に示すように表示する。全表示フラグがオフ0のときには、ステップS25において、親機リストに登録されている親機のうち、エントリスロットESlotがffhでなくしかも通信可能なすなわち、親機のカートリッジのゲームと子機のカートリッジのゲームが所定の関係にあり通信可能な親機の情報ユーザ名UserNameおよびゲーム名GameNameを図4に示すように表示する。その後、図21のステップS27に進み、プロセサ20は、操作キー38からの信号を参照して、Bボタン図示せずが押されたかどうか判断する。Bボタンが押されたということは、その携帯ゲーム装置のユーザが、自機を親機として振舞わせることを決めたことを意味し、その場合には、変数MおよびNの範囲内で子機を募集するために、ステップS29の親機接続処理を実行する。ただし、1台の子機に与えられる最大スロット数を示す変数Nおよび最大参加可能子機数を示す変数Mは、それぞれ、ゲームによって変更可能である。たとえば、最大参加子機数Mを大きくするためには最大スロット数Nを小さくし、データレートを重視するなら最大スロット数Nを大きくし最大参加子機数Mを小さくすればよい。ここで、図27および図28を参照して、子機募集のためのステップS29における親機の接続処理について、詳細に説明する。図27の最初のステップS1001では、プロセサ20は、図18に示す子機リスト領域84をクリアするとともに、初期画面を表示させる。このステップS1001は初期設定ステップであり、上の処理に加えて、さらに、1つの子機の対して割り当てるサブタイムスロットの最大数Nを設定するとともに、エントリを許可する子機の最大数Mを設定する。ただし、これら最大数NおよびMは、それぞれ、実行すべきゲームプログラムに応じて決定できる。このように、1つの子機に対して割り当てるサブタイムスロットの最大数Nや同時参加可能な子機の最大数Mをゲームに応じて決定するようにすれば、一定のサブタイムスロット数の中で、1つの子機に対して割り当てる個数を少なくして参加可能な子機の数を多くするか、または、1つの子機に対して割り当てる個数を多くしてデータレートを大きくするかのいずれかをゲームの内容に応じて決定することができる。たとえば、多くのプレイヤが参加する方が面白いゲームの場合にはスロット数Nを小さくし参加子機数Mを大きくし、通信量が多いゲームの場合はスロット数Nを大きくし参加子機数Mを小さくすればよい。続くステップS1003では、プロセサ20は、親機変数領域86図18の親機PIDを設定するための領域PIDに擬似ランダム値を書き込む。そして、次のステップS1005において、領域86内の、親機自機に実際に接続している子機の数を示す変数mをゼロ0とし、続くステップS1007で、接続対象子機の番号を示す接続対象CIDの領域にNullを設定するとともに、領域86内の、現在接続処理中の子機に実際に付与しているスロット数を示す変数nにゼロ0を書き込む。なお、接続対象CIDとは、現在接続処理中の子機のCIDのことであり、エントリ処理において1つの子機に複数のスロットを付与する場合に、ある子機に対するスロットの付与を複数回連続しておこなうために、ある子機に対するスロットの付与が開始されたら、接続対象CID以外のCIDの子機からのエントリ要求を無視するためのものである。次のステップS1009において、領域86内の、エントリスロット領域ESlotに、空いているスロット番号のうちの1つを割り当てる。その後、ステップS1011において、プロセサ20は、操作キー38図1からの信号を検証して、Aボタン図示せずが押されたかどうか判断する。ステップS1011でYESなら、そのとき自機親機のユーザがその子機のエントリを拒否したことを意味するので図9参照、続くステップS1013において、プロセサ20は、図18の子機リスト領域84から、その選択された子機のデータ、USlotおよびCIDを削除する。その後、ステップS1015で、図9に示すように新たな子機リスト18Bを表示させる。そして、ステップS1011でNOが判断されたときには、すなわち親機のユーザがAボタンを押さなかったとき、またはステップS1015を実行した後には、ステップS1017において、プロセサ20は、操作キー38からの信号に基づいて、スタートキー図示せずが操作されたかどうか判断する。YESなら、そのままリターンする。しかしながら、NOなら、続くステップS1021において、図29に詳細に示す親機の送受信処理を実行する。図27のステップS1019で示す親機の送受信処理が、図29に詳細に示される。図29のステップS2001では、プロセサ20は、送信バッファ92図18に未送信データがあるかどうか判断する。YESなら、次のステップS2003において、図14の親機スロットに必要なデータ、たとえばPID,ユーザ名,ゲーム名,OCフラグ,Eスロット,Uスロットおよび、上記未送信データであるペイロードを送信する。そして、次のステップS2005で子機パケットを受信した後、リターンする。先のステップS2001でNOが判断されたときには、次のステップS2007で、プロセサ20は、過去64ミリ秒の間データ送信をしなかったかどうか判断する。なお、この64ミリ秒という時間は、タイマずれを解消できる数値の一例であり、当然この数値に限られるものではない。ステップS2007でYESを判断したときには、ステップS2009で、親機スロットを用いて、ペイロードを除く各データ、たとえばPID,ユーザ名,ゲーム名,OCフラグ,EスロットおよびUスロットを送信する。このステップS2009は子機からのエントリを可能にするために必要なステップであり、ペイロード送信すべきデータがなくても、エントリ処理に必要なデータPID,ユーザー名,ゲーム名,OCフラグ,Eスロット,Uスロットを定期的に送信しているため、子機は常にエントリ処理できるのである。このステップS2009では、ペイロードデータは送信しない。そして、ステップS2009の終了後、またはステップS2007でNOが判断されたとき、先のステップS2005を経てリターンする。図27に戻って、ステップS1019に続くステップS1021で、プロセサ20は、図11に示す親機パケットのフィールドESlotで指定したスロットで、子機番号CIDを受信できたかどうか判断するすなわち、子機がエントリスロットを使用してエントリ要求をしてきたかどうかを判断する。このステップS1021でNOの場合、先のステップS1011に戻り、YESの場合、次のステップS1023で、図18の子機変数領域86の接続対象子機CIDがNullかどうか判断するすなわち、現在エントリ処理中の他の子機があるか否かを判断する。YESなら、つまり、接続対象子機番号CIDが登録されていなければ、ステップS1025で、ステップS1019で受信した子機CIDを接続対象子機番号CIDとして、図18の領域86内の接続対象子機CIDに登録する。先のステップS1023でNOのとき、またはステップS1025を終えたとき、ステップS1027において、プロセサ20は、受信したCIDが接続対象CIDと同じかどうか判断するすなわち、受信したCIDが現在エントリ処理中の子機のCIDか否かを判断する。NOなら先のステップS1011に戻るが、YESなら次のステップS1029で、図18の領域86内のUスロット領域USlotのエントリスロットを示す部分に、そのCIDを格納する。そして、ステップS1031で、実接続スロット数nをインクリメント1し、ステップS1033で、n=Nかどうか、すなわち、実接続スロット数nが1台の子機に与える最大スロット数Nゲーム毎に異なるに達したかどうかを判断する。YESなら、その子機に対してそれ以上のスロットの付与は許容できないので、図28で示す次のステップS1035に進む。しかしながら、NOなら、その子機に対してさらにスロットを付与することが可能なので、ステップS1009に戻る。実付与スロット数nが最大付与可能スロット数Nに達したときには、その子機に対するエントリ処理を終了して、図28のステップS1035に進むが、このステップS1035では、親機となった携帯ゲーム機のプロセサ20は、エントリ処理が終了した子機のユーザ名、およびゲーム名等を受信する。この子機のユーザ名およびゲーム名がステップS1037において、子機リストに追加され、ステップS1039において、子機リスト18Bが、図9に示すように表示される。その後、親機のプロセサ20は、ステップS1041において、実接続子機数mをインクリメント1し、ステップS1043において、その実接続子機数mが最大接続可能子機数Mゲーム毎に異なると等しくなったかどうかを判断する。このステップS1043でYESが判断されると、つまり、それ以上子機を接続できないと判断したときには、そのままリターンする。逆に、1台以上の子機が未だ接続可能な場合、すなわちステップS1043でNOが判断された場合には、図27のステップS1007に戻る。このようにして、図21のステップS29での接続処理が実行され、さらに、図22のステップS31において、子機の募集を一旦打ち切り、他の子機の参加を禁止するために、エントリスロットESlotにffhを書き込む。そして、ゲーム中に必要に応じて、子機を追加募集できるように、図18の領域86内の接続対象CIDをNull,実接続スロット数n=0としておく。その後、ステップS33においてゲームスタートかどうか、つまり、操作キー38に含まれるスタートボタン図示せずが押されたかどうか判断する。スタートボタンが押されると、次のステップS35において、プロセサ20は、図18に示す親機変数領域86のUスロット領域USlotを参照して、現に接続中の子機の数mを検出する。Uスロットの各領域のうち0hでない領域の数が現に接続中の子機の数mである。そして、ステップS37で、接続中の子機数mが最大接続可能数Mより小さいかどうか判断する。このステップS37でYESが判断されるということは、新規子機のエントリを許容できることを意味していて、したがって、この場合には、次のステップS39において、親機変数領域86のEスロット領域ESlotに、空いているスロット番号Uスロットのうち0hである領域に対応するスロット番号の1つを設定する。これによって、領域ESlotのffhの状態設定が解除される。そして、ステップS41において、先に図29を参照して説明した親機の送受信処理を実行することによって、図11に示す親機パケットをブロードキャスト送信するとともに、各子機からの図13に示す子機データパケットを受信する。その後、ステップS43において、プロセサ20は、一定時間t1以上、或る子機のデータを受信できなかったかどうか判断する。このステップS43でYESが判断されるということは、該当の子機が既に通信可能範囲64図2を離脱した可能性があることを意味し、その場合には、ステップS45において、プロセサ20は、該当の子機の子機番号CIDを親機変数領域86図18のUスロット領域USlotから削除する。この処理によって、離脱した子機が使用していた子機スロットが空きスロットになるので、離脱した子機の代わりに新たな子機のエントリが可能になる。ステップS43でNOが判断されたとき、またはステップS45を終えたとき、次のステップS47において、プロセサ20は、親機変数領域86のEスロット領域ESlotにffhが設定されているかどうか判断する。YESなら、次のステップS49で、プロセサ20は、カートリッジ16のゲームプログラム62図15に従って、ゲーム処理を実行する。図22のステップS47でNOが判断されたときには、子機の途中参加を許容するために、プロセスは図23のステップS51に進む。このステップS51では、親機のプロセサ20は、EスロットフィールドESlotで指定したスロットで子機CIDを受信できたかどうか判断する。YESなら、次のステップS53において、図18の領域86内の接続対象CIDの領域にNullが書き込まれているかかどうか判断する。YESなら、つまり、接続対象子機のCIDが登録されていなければ、ステップS55で、Eスロットで指定したスロットで受信した子機CIDを接続対象CIDの領域に登録する。先のステップS53でNOのとき、またはステップS55を終えたとき、ステップS57において、プロセサ20は、受信した子機番号CIDが接続対象CIDと同じかどうか判断する。YESなら次のステップS59で、図18の領域86のUスロット領域USlotのエントリスロットを示す部分に、その子機番号CIDを格納する。そして、ステップS61で、実接続スロット数nをインクリメント1し、ステップS63で、n=Nかどうか、すなわち、実接続スロット数nが1台の子機に与える最大スロット数Nに達したかどうかを判断する。YESなら、その子機にそれ以上のスロット付与は許容できないのでその子機に対するスロット付与を終了し、ステップS65で、領域86内の、接続対象CIDの領域にNullを設定するとともに、変数nにゼロ0を書き込む。その後、親機のプロセサ20は、ステップS67において、実接続子機数mが最大接続可能子機数Mと等しくなったかどうかを判断する。このステップS67でYESが判断されると、つまり、それ以上子機を接続できないと判断したときには、ステップS69において、Eスロット領域ESlotにffhを書き込む。なお、ステップS69の後、または、ステップS51,S57,S63もしくはS67においてそれぞれNOが判断されたときには、いずれの場合にも子機の途中参加処理をやめてゲーム処理に戻る図22のステップS49に戻る。以上が、自機にOCモード対応でないカートリッジが装着されている場合で、かつ自機が親機になる場合の携帯ゲーム装置の処理である。次に、自機にOCモード対応のカートリッジが装着されている場合の携帯ゲーム装置の処理を説明する。図19のステップS5においてYESが判断されたとき、すなわち、自機に図16に示すOCモード対応のカートリッジを装着している場合には、次のステップS71で、プロセサ20は、モード選択画面図示せずを表示する。そして、ステップS73において、通常モードが選択されたかどうか判断する。YESなら、先のステップS5でNOを判断したときと同様に、図20のステップS7に進む。すなわち、OCモード対応でないカートリッジを装着している場合の処理と、OCモード対応のカートリッジを装着しているが通常モードを選択した場合の処理は同じである。自機にOCモード対応のカートリッジが装着されていてかつOCモードのゲームをプレイする場合には、自機は親機にしかなれない。詳しく述べると、ステップS73でNOなら、すなわち、OCモードが選択された場合には、次のステップS75において、先のステップS29図21と同様に、図27,図28を参照して詳しく説明した親機の接続処理を実行する。ただし、このときには、1台の子機の使用可能スロット数Nは1としN=1、最大接続可能台数Mとしては、ゲームで許容されている数を設定する。その後、ステップS77で、プロセサ20は、図16に示す転送用子機プログラム76を子機に転送ダウンロードする。その後、図22のステップS31に進み、前述と同様にそれぞれ以降の各ステップを実行する。以上が、自機にOCモード対応のカートリッジが装着されている場合の携帯ゲーム装置の処理である。次に、自機にOCモード対応でないカートリッジが装着されている場合で、かつ自機が子機になる場合の携帯ゲーム装置の処理を説明する。図21のステップS27でNOが判断されたときには、つまり自機が親機になるという選択をしなかったときには、続くステップS79において、携帯ゲーム機12のプロセサ20は、操作キー38からの操作信号を検証して、Aボタン図示せずが操作されたかどうか、つまり、接続を希望する親機を選択したかどうかを判断する。このステップS79でYESを判断ときには、プロセサ20は、続いて、ステップS81において、当該選択した親機との間で通信可能かどうかを判断する。すなわち、親機のカートリッジと自機のカートリッジが所定の関係にあって通信可能かどうかを判断する。通信可能なときには、その後、図24のステップS83に進み、子機の接続処理を実行する。この子機の接続処理は、詳しくは、図30および図31に示される。図30の最初のステップS3001では、子機となった携帯ゲーム機のプロセサ20が、親機パケット図11の受信を試みる。そして、次のステップS3003において、メニュー画面図3等で選択した親機の、フレーム同期データsyncを受信できたかどうか判断する。具体的には、メニュー画面で選択した親機のPIDを含む親機パケットの同期データsyncを受信できたかどうか判断する。ステップS3003でNOが判断されたとき、つまり、選択した親機の親機パケットが受信できなかった場合には、ステップS3005において、タイムアウト時間切れかどうか判断し、このステップS3005でNOなら先のステップS3001に戻るが、YESなら、ステップS3007で接続結果変数図18の領域88内のに失敗を書き込んでリターンする。ステップS3003でYESが判断されたとき、つまり、対象としている親機の同期信号を受信できたときには、ステップS3009で、子機のプロセサ20は、同期タイマ領域88をリセットし、次のステップS3011に進む。このステップS3011では、プロセサ20は、擬似ランダム値を子機のID番号CIDとする。そして、ステップS3013において、このときのCIDを持った子機が既に存在するかどうか判断する。すなわち、受信した親機パケットのUスロットを参照して、同一のCIDが既に存在するかどうか、判断する。ステップS3013でYESの場合には一旦付与した番号を変更する必要があり、したがって、この場合には、ステップS3011を再度実行し、新たな番号CIDを付与して、ステップS3013での検証を再度実行する。ステップS3013でNOが得られるまでこれらステップS3011およびS3013が繰り返され、NOが得られたとき、次のステップS3015に進む。ステップS3015では、実付与スロット数nをゼロ0とし、さらに、次のステップS3017で、親機パケットを受信するとともに、ステップS3019において、同期タイマを再度リセットする。そして、ステップS3021において、プロセサ20は、受信した親機パケットのEスロットESlot図11参照がffhであるかどうか判断する。このステップS3021でYESが判断されると、子機のエントリは禁止されているので、先のステップS3007を経て、失敗としてリターンする。ステップS3021でNOが判断されたときには、子機のエントリは禁止されてはいないので、図31のステップS3023に進む。ステップS3023では、子機のCPUコアは、そのときの親機パケットのEスロットフィールドESlotで示されるスロットにステップS3011で得た番号CIDを送信する。そして、次のステップS3025において親機パケットを受信するとともに、ステップS3027において同期タイマを再度リセットする。そして、続くステップS3029において、子機のプロセサ20は、受信した親機パケットのUスロットフィールドのエントリスロット位置に自身の番号CIDがあるかどうか確認する。そして、このステップS3029でNOを判断すると、次のステップS3031で、プロセサ20は、タイムアウトかどうか判断する。タイムアウトではない場合には、先のステップS3017図30に戻るが、タイムアウトを生じた場合には、図30のステップS3007において失敗を接続結果変数に書き込んだ後にリターンする。ステップS3029でYESが判断されたとき、つまり、受信した親機パケットのUスロットのエントリスロット位置に自身の番号CIDがあったときには、続くステップS3033において実付与スロット数nをインクリメント1した後、ステップS3035において、実付与スロット数nが1台の子機に付与できる最大スロット数Nただし、このNは、ゲームによって変化し、たとえば1-4の値である。と等しくなったかどうか判断する。このステップS3035でNOが判断されるときには、つまり、スロットが未だ付与できるときには、先のステップS3025に戻って親機パケットを受信する。しかしながら、ステップS3035でYESが判断されると、可能な数のスロットがすべて割り付けられたものとして、次のステップS3037において、接続結果変数に成功を登録し、次のステップS3039に進む。このステップS3039では、接続した親機の親機番号PIDおよび獲得したスロット番号を自身の内部RAM28図18の領域88に格納する。ただし、スロット数は複数の場合もあり、この実施例では0-3のいずれかの数値である。そして、その後図24のステップS85にリターンする。そのステップS85では、領域88の接続結果変数を参照して、接続結果が成功かどうか判断する。そして、NOの場合には、次のステップS87において、メッセージたとえば接続できませんでしたを子機のLCD18図1に表示して図20のステップS7に戻る。親機への接続成功の場合には、次のステップS89において、子機のプロセサ20は、親機に対して、自身に付与された子機スロットを利用して、自身のユーザ名およびゲーム名を送信する。そして、ステップS91において、ゲームスタートかどうか、すなわち、操作キー38に含まれるスタートボタンが押されたかどうか判断する。このステップS91でスタートボタンのオンが検出されると、次のステップS93において、子機の送受信処理を実行する。図24のステップS93で示す子機の送受信処理が、図32に詳細に示される。図32のステップS4001で親機パケットを受信し、次のステップS4003で同期タイマ図18をリセットする。そして、ステップS4005では、子機のプロセサ20は、送信バッファ92図18に未送信データがあるかどうか判断する。YESなら、次のステップS4007において、既に割り付けられている子機スロットを用いて、必要なデータ、たとえばCIDおよびペイロードを送信する。そして、未送信データがない場合、またはステップS4007の後、プロセスは、図24のステップS95にリターンする。再び図24に戻って、ステップS95では、子機のプロセサ20は、時間t2以上の間にわたって親機からのデータを受信できなかったかどうか判断する。この時間t2は、先の図22のステップS43での時間t1より短い。すなわち、t1>t2である。なぜなら、t1は親機が通信異常の子機を切断する時間であり、t2は子機が復帰処理を開始する時間であるので、親機は子機の復帰処理を待ってから切断する必要があるためである。NOの場合には、さらに次のステップS97で、受信した親機パケットのUスロットフィールドに自身の番号CIDが含まれているかどうか判断する。ステップS97でYESの場合には、ステップS99において、図22のゲーム処理を実行する。ただし、ステップS97でNOが判断されたときは、すなわち、親機パケットのUスロットフィールドに自機の番号がない場合には、ステップS101において、メッセージたとえば親機から切断されましたをLCDに表示し、図20のステップS7に戻る。先のステップS95でYESが判断されたときには、つまり、一定時間t2以上にわたって親機からのデータを受信できなかったときには、ステップS103においてメッセージたとえば親機と通信できなくなりました。復帰を試みますを表示した後、ステップS105で、復帰処理を実行する。この復帰処理の詳細が図33に示されていて、この図33の最初のステップS5001では、子機のプロセサ20は、復帰すべき親機パケットの受信を試みる。そして、ステップS5003では、その親機からのブロードキャストデータを受信できたかどうか判断する。ただし、自分が復帰すべき親機かどうかは、図18の領域88に登録されている接続先のPIDをみればわかる。ステップS5003でNOが判断されたとき、つまり、復帰すべき親機パケットのデータを受信できなかったとき、次のステップS5005で、タイムアウトになったかどうか判断する。そして、NOなら、先のステップS5003に戻るが、タイムアウトになってしまったら、次のステップS5007で、図18に示す領域88に含まれる復帰結果変数に失敗を書き込み、リターンする。先のステップS5003でYESが判断されたとき、すなわち、対象としている親機からの親機パケットを受信できたときには、次のステップS5009で同期タイマをリセットし、さらに、ステップS5011で親機パケットを受信する。そして、ステップS5013において、その親機パケットのUスロットフィールドに自身の番号CIDがあるかどうか判断する。受信した親機パケットに自機の番号があるということは、時間t2以上にわたる通信不能状態の原因は、親機による意図的な切断ではないということであり、したがって、次のステップS5015において、領域88図18の復帰結果変数に成功を登録してリターンする。このように復帰処理をすることによって、例えば、親機と子機が誤って通信可能範囲を外れた場合や、通信状態が悪くて通信ができなかった場合、または、子機を操作しているプレイヤに用事ができて、その子機プレイヤが少しの間通信可能範囲を外れる必要がある場合等に、それらの要因が解消されて通信が可能になった後に、以前の通信状態に復帰することが可能になる。ただし、ステップS5003でYESになってもステップS5013でNOが判断されたときには、通信不能が親機の意思による切断が原因であったものとして、先のステップS5007を経て、リターンする。図33のサブルーチンから図24のステップS107にリターンすると、このステップS107では、領域88の復帰結果変数を参照して、復帰が成功したかどうか判断する。YESなら、ステップS99に進んでゲーム処理を実行する。しかしながら、NOなら、ステップS109でメッセージたとえば復帰できませんでしたを表示した後、図20のステップS7に戻る。以上が、自機にOCモード対応でないカートリッジが装着されている場合で、かつ自機が子機になる場合の携帯ゲーム装置の処理である。次に、自機にカートリッジが装着されていない場合の携帯ゲーム装置の処理を説明する。ただし、この場合には、自機は、OCモード対応のゲームの子機として動作できるだけである。図19に戻って、ステップS3でNOが判断されたとき、すなわちその子機にカートリッジがないことを検出した場合は、ブートROM図1の24のプログラムであるステップS111において、無線通信ユニット14図1のROM52に設定されているOCDプログラム親機から子機用プログラムをダウンロードするためのプログラムを携帯ゲーム機12のプロセサ20に含まれるWRAM28に展開し、その後ステップS113において、子機のプロセサ20は、そのWRAM28上に展開されたOCDプログラムを起動する。その後、図25のステップS115において、子機のプロセサ20は、図18に示すような親機リスト領域80をクリアするとともに、親機リストクリアタイマ82をリセットする。ついで、ステップS117において、親機パケットの受信を試みる。そして、ステップS119において、親機パケットの受信が成功したかどうか判断し、NOならステップS125に進み、YESなら、ステップS121に進む。ステップS121では、受信した親機パケットに含まれる親機番号PIDと図18に示す親機リスト領域80に登録されている番号PIDとを比較して、その親機パケットを送信した親機が親機リスト内に存在しないかどうか判断する。このステップS121でYESが判断されると、ステップS123において、親機リストに新たな親機を登録するように、親機パケットから読み出された、親機番号PID,ユーザ名,ゲーム名,OCフラグおよびEスロットを親機リスト領域80に追加する。その後ステップS125に進む。ステップS125では、ステップS115でリセットした親機リストクリアタイマ82の値が2秒以上になったかどうか判断する。YESなら、ステップS127で親機リストすなわち親機リスト領域80をクリアするとともに、親機リストクリアタイマ82をリセットする。その後、ステップS125でNOを判断した場合と同様に、ステップS127に進む。ステップS127では、親機リストの内、EスロットがffhでなくかつOCフラグが1である親機、つまり、OCモードでのゲームがプレイできかつ子機の参加エントリを拒否していない親機の情報ユーザ名,ゲーム名を表示する。それによって、当該子機のユーザに対して図5に示すような親機リスト18Aを作成し、自機が接続したい親機を選択させる。そして、ステップS131で、Aボタン図示せずが操作されたかどうか判断する。つまり、どれか1つの親機が選択されたかどうか判断する。ステップS127でNOなら、つまり親機を選択しなかったら、次のステップS133で、操作キー38に含まれる十字キー図示せずが操作されたかどうか判断する。十字キーの操作は、エントリを希望する親機の選択のためにカーソルを移動させるためであり、したがって、このステップS133でYESなら、次のステップS135でカーソルを移動させ、ステップS113に戻る。ステップS131でYESが判断されると、ステップS139に進んで子機の接続処理図30,図31を実行する。ステップS137で、既に詳細に説明した方法に従って、子機の接続処理を実行し、次のステップS139で、図18の領域88の接続結果変数を参照して、接続が成功したかどうか判断する。NOなら、ステップS141でメッセージたとえば接続できませんでしたを表示して、ステップS111に戻る。ステップS139でYESが判断されると、プロセサ20は、当該子機と成功裏に接続された親機に対して、自機のユーザ名,ゲーム名を送信する。その後、図26のステップS145に進み、OCモードでゲームをプレイするために、転送用子機プログラムを親機から受信して自機のRAM28図1内に展開するとともに、そのプログラムを起動させる。そして、その後は、ステップS147において、先に説明した図24ステップS91-S109と同様の各ステップを実行する。以上が、自機にカートリッジが装着されていない場合の携帯ゲーム装置の処理である。なお、図21のステップS81でNOが判断されたとき、すなわち、親機の選択を試みたが通信できなかったときには、ステップS149において、メッセージたとえばその親機は選択できませんを表示して図20のステップS9に戻る。また、図21のステップS79でNOが判断されたとき、つまり、BボタンもAボタンも操作されなかったときには、次のステップS151において、十字キー図示せずが操作されたかどうか、判断する。NOなら、次のステップS153で、さらにスタートキー図示せずが操作されたかどうか判断する。セレクトキーが操作されていないときは、図20のステップS9に戻る。ステップS153でYESが判断されたときには、ステップS153で、全表示フラグのオン/オフを切替えた後、同様にステップS9に戻るすなわち、セレクトキーは全表示フラグのオン/オフの制御に使用される。ただし、ステップS151でYESが判断されたときには、その十字キーの指示に従ってカーソルを移動させた後、ステップS9に戻る。なお、上述の実施例では、プログラムの進行に合わせて自機を親機とするか子機とするかを選択するようにした。しかしながら、直ちにこのような選択をするようにしてもよい。この場合には、図34に示すように、スタート直後の最初のステップS201で親機または子機の選択画面図示せずを表示し、その表示に従ってユーザが親機または子機を選択する。したがって、プロセサ20は、次のステップS203で、ユーザが親機を選択したかどうか判断する。ステップS203でYESの場合には、それ以後、先の図21のステップS29以降のステップを実行する。NOの場合、すなわち子機を選択したときには、図21に示すステップS7-S25,S79,S151-S157,およびS81-S109を実行する。"